/*-----------------------------------------------------------------------------------

    Template Name: EdCare - Online Education LMS HTML5 Template
    Author: RRDevs
    Description: EdCare - Online Education LMS HTML5 Template
    Version: 1.0

-----------------------------------------------------------------------------------


/************ TABLE OF CONTENTS ***************

	01.  Default CSS
	02. background CSS
	03. buttons css

**********************************************/
/**----------------------------------------
START: Default CSS
----------------------------------------*/

:root {
 --ed-ff-body: 'Plus Jakarta Sans', sans-serif;
  --ed-ff-heading: 'Plus Jakarta Sans', sans-serif;
  --ed-ff-p: 'Plus Jakarta Sans', sans-serif;
  --ed-fw-normal: normal;
  --ed-fw-thin: 100;
  --ed-fw-elight: 200;
  --ed-fw-light: 300;
  --ed-fw-regular: 400;
  --ed-fw-medium: 500;
  --ed-fw-sbold: 600;
  --ed-fw-bold: 700;
  --ed-fw-ebold: 800;
  --ed-fw-black: 900;
  --ed-fs-body: 16px;
  --ed-fs-p: 16px;
  --ed-fs-h1: 64px;
  --ed-fs-h2: 40px;
  --ed-fs-h3: 24px;
  --ed-fs-h4: 20px;
  --ed-fs-h5: 16px;
  --ed-fs-h6: 14px;
  --ed-color-common-white: #ffffff;
  --ed-color-common-black: #000000;
  --ed-color-heading-primary: #162726;
  --ed-color-text-body: #6C706F;
  --ed-color-theme-primary: #466a9b;
  --ed-color-grey-1: #F2F4F7;
  --ed-color-bg-1: #0E121D;
  --ed-color-bg-2: #466a9b;
  --ed-color-border-1: #E0E5EB;
}



* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/**
	Typography CSS
*/
body {
  font-family: var(--ed-ff-body);
  font-size: 16px;
  line-height: 1.625;
  font-weight: normal;
  color: var(--ed-color-text-body);
}

img {
  max-width: 100%;
}

a {
  text-decoration: none;
}

a, a:hover {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--ed-ff-heading);
  color: var(--ed-color-heading-primary);
  margin-top: 0px;
  font-weight: var(--ed-fw-sbold);
  line-height: 1.2;
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -ms-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}

h1 {
  font-size: var(--ed-fs-h1);
}

h2 {
  font-size: var(--ed-fs-h2);
}

h3 {
  font-size: var(--ed-fs-h3);
}

h4 {
  font-size: var(--ed-fs-h4);
}

h5 {
  font-size: var(--ed-fs-h5);
}

h6 {
  font-size: var(--ed-fs-h6);
}

ul {
  margin: 0px;
  padding: 0px;
}

p {
  font-family: var(--ed-ff-p);
  font-size: 16px;
  font-weight: var(--ed-fw-normal);
  color: var(--ed-color-text-body);
  margin-bottom: 15px;
  line-height: 28px;
}

a:focus {
  text-decoration: none;
  outline: none;
}

a:focus, a:hover {
  color: inherit;
  text-decoration: none;
}

a:hover {
  color: var(--ed-color-theme-primary);
}

.slick-list.draggable {
  cursor: grab;
}

a, button {
  color: inherit;
  outline: none;
  border: none;
  background: transparent;
}

button:hover {
  cursor: pointer;
}

button:focus {
  outline: 0;
  border: 0;
}

input {
  outline: none;
}

input[type=color] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background: none;
  border: 0;
  cursor: pointer;
  height: 100%;
  width: 100%;
  padding: 0;
  border-radius: 50%;
}

ul {
  display: block;
  padding: 0;
  margin: 0;
}

*::-moz-selection {
  background: var(--ed-color-common-black);
  color: var(--ed-color-common-white);
  text-shadow: none;
}

::-moz-selection {
  background: var(--ed-color-common-black);
  color: var(--ed-color-common-white);
  text-shadow: none;
}

::selection {
  background: var(--ed-color-common-black);
  color: var(--ed-color-common-white);
  text-shadow: none;
}

*::-moz-placeholder {
  color: var(--ed-color-common-black);
  font-size: var(--ed-fs-body);
  opacity: 1;
}

*::placeholder {
  color: var(--ed-color-common-black);
  font-size: var(--ed-fs-body);
  opacity: 1;
}

/**
 	Common Classes CSS
*/

.container {
  max-width: 1310px;
}

.section-heading {
  margin-bottom: 60px;
}
@media only screen and (max-width: 992px) {
  .section-heading {
    margin-bottom: 40px;
  }
}
.section-heading .sub-heading {
  background-color: var(--ed-color-common-white);
  font-family: var(--ed-ff-heading);
  color: var(--ed-color-heading-primary);
  font-size: 16px;
  font-weight: 400;
  display: inline-flex;
  align-items: center;
  column-gap: 10px;
  margin-bottom: 20px;
  position: relative;
  border: 1px solid #E0E5EB;
  padding: 5px 15px 5px 5px;
  border-radius: 100px;
}
.section-heading .sub-heading .heading-icon {
  background-color: rgba(7, 166, 152, 0.15);
  color: var(--ed-color-theme-primary);
  font-size: 14px;
  height: 28px;
  width: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.section-heading .section-title {
  font-size: 40px;
  line-height: 1.2;
  font-weight: 600;
  display: block;
  margin-bottom: 0;
  text-transform: inherit;
  position: relative;
}
@media (max-width: 1200px) {
  .section-heading .section-title {
    font-size: 40px;
  }
  .section-heading .section-title br {
    display: none;
  }
}
@media only screen and (max-width: 992px) {
  .section-heading .section-title {
    font-size: 32px;
  }
}
@media only screen and (max-width: 767px) {
  .section-heading .section-title {
    font-size: 32px;
  }
}

/* Site Preloader */

@keyframes spinner-c7wet2 {
  100% {
    transform: rotate(1turn);
  }
}
/*  Custom Cursor */
.sticky-widget {
  position: -webkit-sticky;
  position: sticky;
  top: 150px;
}

@media only screen and (max-width: 767px) {
  br {
    display: none;
  }
}

@-webkit-keyframes rippleOne {
  70% {
    box-shadow: 0 0 0 20px rgba(244, 68, 56, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(244, 68, 56, 0);
  }
}
@keyframes rippleOne {
  70% {
    box-shadow: 0 0 0 20px rgba(244, 68, 56, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(244, 68, 56, 0);
  }
}
/*-- Margin Top --*/

.mt-20 {
  margin-top: 20px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-40 {
  margin-top: 40px;
}

/*-- Margin Bottom --*/

.mb-20 {
  margin-bottom: 20px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-40 {
  margin-bottom: 40px;
}

/*-- Margin Left --*/

/*-- Margin Right --*/

/*-- Padding Top --*/

.pt-80 {
  padding-top: 80px;
}

.pt-120 {
  padding-top: 120px;
}

/*-- Padding Bottom --*/

.pb-80 {
  padding-bottom: 80px;
}

.pb-120 {
  padding-bottom: 120px;
}

/*-- Padding Left --*/

/*-- Padding Right --*/

.mt-20 {
  margin-top: 20px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-40 {
  margin-top: 40px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-40 {
  margin-bottom: 40px;
}

.pt-120 {
  padding-top: 120px;
}
@media only screen and (max-width: 992px) {
  .pt-120 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-120 {
    padding-top: 60px;
  }
}

.pt-80 {
  padding-top: 80px;
}
@media only screen and (max-width: 992px) {
  .pt-80 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pt-80 {
    padding-top: 60px;
  }
}

.pb-120 {
  padding-bottom: 120px;
}
@media only screen and (max-width: 992px) {
  .pb-120 {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pb-120 {
    padding-bottom: 60px;
  }
}

.pb-80 {
  padding-bottom: 80px;
}
@media only screen and (max-width: 992px) {
  .pb-80 {
    padding-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .pb-80 {
    padding-bottom: 60px;
  }
}

/**
    Buttons CSS
*/
.ed-primary-btn {
  background-color: var(--ed-color-theme-primary);
  font-family: var(--ed-ff-heading);
  color: var(--ed-color-common-white);
  display: inline-flex;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  padding: 17px 40px;
  border-radius: 100px;
  transition: all 0.3s ease-in-out;
  overflow: hidden;
  text-transform: capitalize;
  position: relative;
  z-index: 1;
}
.ed-primary-btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.2);
  -webkit-transform-origin: right center;
  -moz-transform-origin: right center;
  -ms-transform-origin: right center;
  transform-origin: right center;
  -webkit-transform: scale(0, 1);
  -moz-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  -o-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  -moz-transition: -moz-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  -ms-transition: -ms-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  -o-transition: -o-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: -1;
}
.ed-primary-btn:hover {
  color: var(--ed-color-common-white);
}
.ed-primary-btn:hover:before {
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -o-transform: scale(1, 1);
  transform: scale(1, 1);
}
.ed-primary-btn i {
  margin-left: 10px;
  font-size: 13px;
  margin-top: 2px;
}
.ed-primary-btn:focus {
  color: var(--ed-color-common-white);
}

/**----------------------------------------
START: Header CSS
----------------------------------------*/
.header {
  background-color: var(--ed-color-common-white);
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  overflow-x: clip;
  box-shadow: 0px 1px 3px 0px rgba(17, 17, 17, 0);
}
.header .top-bar {
  background-color: #324a9d;
}
@media (max-width: 1200px) {
  .header .top-bar {
    display: none;
  }
}
.header .top-bar .top-bar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: 30px;
  flex-wrap: wrap;
  row-gap: 15px;
}
.header .top-bar .top-bar-inner .top-bar-left .top-bar-list li {
  color: var(--ed-color-common-white);
  display: inline-flex;
  align-items: center;
  column-gap: 10px;
  padding: 12px 0;
}
.header .top-bar .top-bar-inner .top-bar-left .top-bar-list li:not(:last-of-type) {
  margin-right: 20px;
  padding-right: 20px;
  border-right: 2px solid rgba(255, 255, 255, 0.05);
}
.header .top-bar .top-bar-inner .top-bar-right {
  display: flex;
  align-items: center;
}
.header .top-bar .top-bar-inner .top-bar-right .top-social-wrap {
  display: flex;
  align-items: center;
}
@media (max-width: 1200px) {
  .header .top-bar .top-bar-inner .top-bar-right .top-social-wrap {
    display: none;
  }
}
.header .top-bar .top-bar-inner .top-bar-right .top-social-wrap span {
  color: var(--ed-color-common-white);
}
.header .top-bar .top-bar-inner .top-bar-right .top-social-wrap .social-list {
  margin-left: 20px;
}
.header .top-bar .top-bar-inner .top-bar-right .top-social-wrap .social-list li {
  display: inline-flex;
  align-items: center;
}
.header .top-bar .top-bar-inner .top-bar-right .top-social-wrap .social-list li:not(:last-of-type) {
  margin-right: 10px;
}
.header .top-bar .top-bar-inner .top-bar-right .top-social-wrap .social-list li a {
  color: var(--ed-color-common-white);
}
.header .top-bar .top-bar-inner .top-bar-right .top-social-wrap .social-list li a:hover {
  color: var(--ed-color-theme-primary);
}
.header .mid-header .mid-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 15px;
  padding: 20px 0;
}
.header .primary-header {
  position: relative;
}
@media only screen and (max-width: 992px) {
  .header {
    position: inherit;
    height: auto !important;
  }
}
.header .primary-header-inner {
  background-color: var(--ed-color-common-white);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media only screen and (max-width: 992px) {
  .header .primary-header-inner {
    padding: 20px 0;
  }
}
.header .primary-header-inner .header-left-inner {
  display: flex;
  align-items: center;
}
.header .primary-header-inner .header-logo {
  position: relative;
  z-index: 2;
}
.header .primary-header-inner .header-logo img {
  max-width: 224px;
}
@media (max-width: 1399px) {
  .header .primary-header-inner .header-logo img {
    max-width: 180px;
  }
}
@media (max-width: 1200px) {
  .header .primary-header-inner .header-logo img {
    max-width: 160px;
  }
}
.header .primary-header-inner .header-menu-wrap {
  display: flex !important;
  align-items: center;
}
.header .primary-header-inner .header-menu-wrap .sub-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}
@media only screen and (max-width: 992px) {
  .header .primary-header-inner .header-menu-wrap .sub-menu {
    display: none;
  }
}
.header .primary-header-inner .header-menu-wrap .sub-menu li {
  display: inline-block;
  position: relative;
  margin: 0 12px;
}
@media (max-width: 1399px) {
  .header .primary-header-inner .header-menu-wrap .sub-menu li {
    margin: 0 10px;
  }
}
.header .primary-header-inner .header-menu-wrap .sub-menu li a {
  font-family: var(--ed-ff-body);
  color: var(--ed-color-heading-primary);
  display: block;
  font-size: 16px;
  padding: 44.5px 0;
  letter-spacing: 0;
  font-weight: 600;
  text-transform: uppercase;
  position: relative;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 1200px) {
  .header .primary-header-inner .header-menu-wrap .sub-menu li a {
    font-size: 14px;
  }
}
.header .primary-header-inner .header-menu-wrap .sub-menu li a:hover {
  color: var(--ed-color-theme-primary);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li a i {
  font-size: 13px;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li.active a {
  color: var(--ed-color-theme-primary);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li.active ul li a {
  color: var(--ed-color-heading-primary);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li.active ul li a:hover {
  color: var(--ed-color-common-white);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li.active.menu-item-has-children:after {
  color: var(--ed-color-theme-primary);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li ul {
  background-color: var(--ed-color-common-white);
  display: block;
  width: 220px;
  padding: 0;
  -webkit-box-shadow: 0px 50px 100px 0px rgba(64, 1, 4, 0.1), 0px -6px 0px 0px rgba(248, 99, 107, 0.004);
  box-shadow: 0px 50px 100px 0px rgba(64, 1, 4, 0.1), 0px -6px 0px 0px rgba(248, 99, 107, 0.004);
  position: absolute;
  left: 0;
  top: 115px;
  opacity: 0;
  visibility: hidden;
  z-index: 0;
  -webkit-transform: rotate3d(1, 0, 0, -90deg);
  transform: rotate3d(1, 0, 0, -90deg);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  transition: all 0.6s ease;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li:hover > ul {
  visibility: visible;
  transition: all 0.6s ease;
  opacity: 1;
  transform: none;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li {
  display: flex;
  justify-content: space-between;
  text-align: left;
  position: relative;
  transition: all 0.3s ease-in-out;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li:not(:last-of-type) {
  border-bottom: 1px dashed var(--ed-color-border-1);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li:last-child {
  margin: 0;
  border-bottom: none;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li:hover {
  background-color: var(--ed-color-theme-primary);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li:hover a {
  color: var(--ed-color-common-black);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li a {
  display: block;
  height: auto;
  line-height: inherit;
  color: var(--ed-color-common-black);
  font-weight: 600;
  font-size: 15px;
  padding: 15px 0;
  letter-spacing: 0;
  width: 100%;
  -webkit-font-smoothing: antialiased;
  margin: 0;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li a:hover {
  padding-left: 10px;
  color: var(--ed-color-common-white);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li a:before {
  display: none;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li.active {
  background-color: var(--ed-color-theme-primary);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li.active a {
  color: var(--ed-color-common-white) !important;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li:hover a:before {
  width: 100%;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li ul {
  top: 0;
  left: 100%;
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li:hover a {
  color: var(--ed-color-common-white);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li:hover li a {
  color: var(--ed-color-heading-primary);
}
.header .primary-header-inner .header-menu-wrap .sub-menu li li:hover li a:hover {
  color: var(--ed-color-common-white);
}
.header .primary-header-inner .header-menu-wrap .sub-menu .menu-item-has-children {
  position: relative;
  padding-right: 5px;
}
.header .primary-header-inner .header-menu-wrap .sub-menu .menu-item-has-children a {
  padding-right: 12px;
}
@media (max-width: 1200px) {
  .header .primary-header-inner .header-menu-wrap .sub-menu .menu-item-has-children a {
    padding-right: 13px;
  }
}
.header .primary-header-inner .header-menu-wrap .sub-menu .menu-item-has-children ul li {
  margin: 0;
  padding-left: 25px;
}
.header .primary-header-inner .header-menu-wrap .sub-menu .menu-item-has-children ul li a {
  padding-right: 0;
}
.header .primary-header-inner .header-menu-wrap .sub-menu .menu-item-has-children:after {
  background-image: none;
  font-family: "Font Awesome 6 Pro";
  font-size: 14px;
  font-weight: 700;
  content: "\f078";
  color: var(--ed-color-heading-primary);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
.header .primary-header-inner .header-menu-wrap .sub-menu .menu-item-has-children:hover:after {
  color: var(--ed-color-theme-primary);
}
.header .primary-header-inner .header-right {
  display: flex;
  align-items: center;
  column-gap: 20px;
}
@media only screen and (max-width: 767px) {
  .header .primary-header-inner .header-right .header-logo img {
    width: 90px;
  }
}
.header .primary-header-inner .header-right .header-right-item {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 992px) {
  .header .primary-header-inner .header-right .header-right-item {
    line-height: 1;
  }
}
.header .primary-header-inner .header-right .header-right-item .mobile-side-menu-toggle {
  color: var(--ed-color-heading-primary);
  font-size: 30px;
}
@media (min-width: 993px) {
  .header .primary-header-inner .header-right .header-right-item .mobile-side-menu-toggle {
    display: none;
  }
}
@media only screen and (max-width: 992px) {
  .header .primary-header-inner .mean-push {
    display: none;
  }
}

@media only screen and (max-width: 992px) {
  .header-1 .mid-header {
    display: none;
  }
}
.header-1 .primary-header {
  border-top: 1px solid var(--ed-color-border-1);
}
.header-1 .primary-header .primary-header-inner .header-menu-wrap {
  padding-left: 30px;
  margin-left: 30px;
  border-left: 1px solid var(--ed-color-border-1);
}
.header-1 .primary-header .primary-header-inner .header-menu-wrap ul li a {
  padding: 19px 0;
  padding-right: 12px;
}
.header-1 .primary-header .primary-header-inner .header-menu-wrap ul li ul {
  top: 63px;
}
.header-1 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li a {
  padding: 25px 0;
  padding-right: 12px;
}
.header-1 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li ul {
  top: 76px;
}
.header-1 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li ul li a {
  padding: 19px 0;
}
.header-1 .primary-header.fixed .primary-header-inner .header-menu-wrap ul li ul li:hover a {
  padding-left: 10px;
}
.header-1 .primary-header.fixed .primary-header-inner .header-right-btn {
  display: block;
}

.category-area {
  cursor: pointer;
}
@media only screen and (max-width: 992px) {
  .category-area {
    display: none;
  }
}

.category-area .category-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
}

.category-area .category-btn span {
  color: var(--ed-color-heading-primary);
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
}

.category-area .category-btn i {
  color: var(--ed-color-theme-primary);
}

.category-area:hover .category-sub-menu {
  visibility: visible;
  opacity: 1;
  transform: translateZ(0) translateY(20px);
}

.category-area .category-sub-menu {
  padding: 0;
  margin: 0;
  position: absolute;
  top: 100%;
  left: 0;
  visibility: hidden;
  opacity: 0;
  background: var(--ed-color-common-white);
  transform: translateZ(0) translateY(30px);
  border-radius: 4px;
  -webkit-transform: rotate3d(1, 0, 0, -90deg);
  transform: rotate3d(1, 0, 0, -90deg);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  transition: all 0.6s ease;
  box-shadow: 0px 7px 18px rgba(24, 16, 16, 0.0509803922);
  display: flex;
  flex-direction: column;
  min-width: 210px;
  padding: 17px 10px;
}

.category-area .category-sub-menu li {
  list-style: none;
  width: 100%;
  margin: 0;
  display: flex;
}
.category-area .category-sub-menu li:not(:last-of-type) {
  margin-bottom: 10px;
}

.category-area .category-sub-menu li ul {
  padding: 0;
  margin: 0;
}

.category-area .category-sub-menu li a {
  color: var(--ed-color-heading-primary);
  font-size: 16px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 2px 10px;
  transition: all 0.3s;
  border-radius: 4px;
  background: transparent;
}
.category-area .category-sub-menu li a:hover {
  color: var(--ed-color-theme-primary);
}

.category-area .category-sub-menu li a span {
  color: var(--ed-color-heading-primary);
}

.category-area .category-sub-menu li a:hover span {
  color: var(--ed-color-heading-primary);
}

.category-area .category-sub-menu li a img {
  width: 45px;
}

.category-area .category-sub-menu li a h4 {
  color: var(--ed-color-heading-primary);
  font-weight: 500;
  margin-bottom: 4px;
  font-size: 16px;
  line-height: 1.1;
}

.category-area .category-sub-menu li a p {
  margin-bottom: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.1;
}
.header-2 .primary-header-inner .header-logo .fixed-logo {
  display: none;
}
.header-2 .primary-header-inner .header-right-wrap .header-menu-wrap .sub-menu .menu-item-has-children.active a {
  color: var(--ed-color-theme-primary);
}
.header-2 .primary-header-inner .header-right-wrap .header-menu-wrap .sub-menu .menu-item-has-children.active ul li a {
  color: var(--ed-color-heading-primary);
}
.header-2 .primary-header-inner .header-right-wrap .header-menu-wrap .sub-menu .menu-item-has-children.active ul li:hover a {
  color: var(--ed-color-common-white);
}
.header-2 .primary-header-inner .header-right-wrap .header-right .header-right-item .mobile-side-menu-toggle {
  color: var(--ed-color-heading-primary);
}

@media only screen and (max-width: 992px) {
  .mobile-side-menu .header-right {
    display: none !important;
  }
}

.primary-header {
  width: 100%;
}
.primary-header.fixed {
  background-color: var(--ed-color-common-white);
  position: fixed;
  left: 0;
  top: 0;
  animation-name: menuSticky;
  -webkit-animation-name: menuSticky;
  animation-duration: 1s;
  -webkit-animation-duration: 1s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  box-shadow: 0px 1px 3px 0px rgba(17, 17, 17, 0.1);
  z-index: 99;
}

@-webkit-keyframes menuSticky {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0%);
  }
}
@keyframes menuSticky {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0%);
  }
}
.mobile-side-menu-overlay, .mobile-side-menu {
  display: none;
}

@media only screen and (max-width: 992px) {
  .mobile-side-menu {
    background-color: var(--ed-color-common-white);
    position: fixed;
    overflow-y: auto;
    top: 0;
    right: 0;
    width: 80%;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    height: 100%;
    display: block;
    z-index: 100;
    padding: 40px 40px 40px 40px;
    -webkit-transition: transform 0.5s ease;
    -o-transition: transform 0.5s ease;
    transition: transform 0.5s ease;
    backface-visibility: hidden;
  }
}
@media only screen and (max-width: 992px) and (max-width: 767px) {
  .mobile-side-menu {
    padding: 40px 20px;
    width: 100%;
    max-width: 320px;
  }
}
@media only screen and (max-width: 992px) {
  .mobile-side-menu.is-open {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  .mobile-side-menu .side-menu-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 60px;
  }
  .mobile-side-menu .side-menu-head a img {
    max-width: 150px;
  }
  .mobile-side-menu .side-menu-head .mobile-side-menu-close {
    position: fixed;
    top: 45px;
    right: 40px;
    color: var(--ed-color-heading-primary);
    font-size: 17px;
    height: 40px;
    width: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--ed-color-border-1);
  }
}
@media only screen and (max-width: 992px) and (max-width: 767px) {
  .mobile-side-menu .side-menu-head .mobile-side-menu-close {
    right: 16px;
  }
}
@media only screen and (max-width: 992px) {
  .mobile-side-menu .side-menu-head .mobile-side-menu-close:hover {
    background-color: var(--ed-color-theme-primary);
    color: var(--ed-color-common-white);
  }
  .mobile-side-menu .side-menu-wrap {
    overflow: hidden;
    margin-bottom: 50px;
  }
  .mobile-side-menu p {
    color: var(--ed-color-common-white);
    margin-bottom: 50px;
  }
  .mobile-side-menu .list-header {
    color: var(--ed-color-common-white);
    font-family: var(--ed-ff-body);
    font-weight: 400;
    margin-bottom: 30px;
  }
  .mobile-side-menu .side-menu-list li {
    font-family: var(--ed-ff-heading);
    font-size: 16px;
    font-weight: 500;
    color: var(--ed-color-heading-primary);
  }
  .mobile-side-menu .side-menu-list li span, .mobile-side-menu .side-menu-list li a {
    color: var(--ed-color-heading-primary);
    margin-left: 10px;
    font-size: 16px;
  }
  .mobile-side-menu .side-menu-list li i {
    margin-right: 10px;
  }
  .mobile-side-menu .mean-bar {
    background-color: transparent;
    min-height: auto;
    padding: 0;
  }
  .mobile-side-menu .mean-bar .meanmenu-reveal {
    display: none !important;
  }
  .mobile-side-menu .mean-bar .mean-nav {
    background-color: transparent;
    margin-top: 0;
    padding-top: 20px;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul {
    display: block !important;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li {
    position: relative;
    float: none;
    display: block;
    width: auto;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li:not(:last-of-type) {
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--ed-color-border-1);
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a {
    color: var(--ed-color-heading-primary);
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    border-top: none;
    padding: 0;
    float: none;
  }
}
@media only screen and (max-width: 992px) and (max-width: 767px) {
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a {
    font-size: 18px;
  }
}
@media only screen and (max-width: 992px) {
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand {
    background-color: var(--ed-color-theme-primary);
    color: var(--ed-color-common-white);
    position: absolute;
    padding: 0;
    top: -3px;
    right: 0;
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand:before, .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand:after {
    font-size: 14px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand:before {
    content: "+";
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand.mean-clicked {
    background-color: var(--ed-color-heading-primary);
    color: var(--ed-color-common-white);
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand.mean-clicked:after {
    content: "\f068";
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand.mean-clicked:before {
    display: none;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li a.mean-expand i {
    display: none;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li ul {
    padding: 0 0 0 30px;
    margin-top: 20px;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li ul li:not(:last-of-type) {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li ul li a {
    padding: 0;
    font-size: 16px;
    font-weight: 500;
    text-transform: capitalize;
  }
}
@media only screen and (max-width: 992px) and (max-width: 767px) {
  .mobile-side-menu .mean-bar .mean-nav.mean-nav > ul li ul li a {
    font-size: 14px;
  }
}
@media only screen and (max-width: 992px) {
  .mobile-side-menu-overlay {
    background-color: rgba(0, 0, 0, 0.7);
    height: 100%;
    width: 0%;
    position: fixed;
    top: 0;
    z-index: 9;
    right: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 600ms ease;
    -o-transition: all 600ms ease;
    transition: all 600ms ease;
    z-index: 10;
    display: block;
  }
  .mobile-side-menu-overlay.is-open {
    width: 100%;
    opacity: 0.5;
    visibility: visible;
    cursor: url(../img/cancel.png), auto;
  }
}
#popup-search-box {
  background-color: var(--ed-color-common-white);
  position: fixed;
  width: 100%;
  height: 20%;
  top: -100%;
  left: 0;
  right: 0;
  white-space: nowrap;
  z-index: 99;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 500ms ease all;
  -moz-transition: 500ms ease all;
  transition: 500ms ease all;
}
#popup-search-box .box-inner-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  box-shadow: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
}
#popup-search-box .box-inner-wrap form {
  position: relative;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  padding: 0 15px;
}
#popup-search-box .box-inner-wrap form input {
  width: 100%;
  padding: 20px 15px;
  padding-right: 80px;
  background: transparent;
  border: none;
  color: #ddd;
  border: 1px solid var(--ed-color-border-1);
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input::-webkit-input-placeholder {
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input:-moz-placeholder {
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input::-moz-placeholder {
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input:-ms-input-placeholder {
  color: #666;
  font-size: 16px;
}
#popup-search-box .box-inner-wrap form input:focus {
  outline: none;
}
#popup-search-box .box-inner-wrap:hover {
  cursor: url(../img/cross.png), auto;
}
#popup-search-box .box-inner-wrap .search-close {
  position: absolute;
  top: 30px;
  right: 50px;
  color: var(--ed-color-heading-primary);
  border: 1px solid var(--ed-color-border-1);
  height: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  border-radius: 50%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  #popup-search-box .box-inner-wrap .search-close {
    height: 35px;
    width: 35px;
    top: 10px;
    right: 10px;
  }
}
#popup-search-box .box-inner-wrap .search-close:hover {
  background-color: var(--ed-color-theme-primary);
  border: 1px solid var(--ed-color-theme-primary);
  color: var(--ed-color-common-white);
}
#popup-search-box.toggled {
  top: 0;
  opacity: 1;
  visibility: visible;
}

/* !END:  Header CSS */
/**----------------------------------------
START: Header CSS
----------------------------------------*/

.open-sidebar .sidebar-area {
  right: 0;
  visibility: visible;
  transform: translate(0);
}

/*Scrollbar Style*/

.sidebar-area::selection {
  background-color: #999;
  color: #fff;
}

.sidebar-area-webkit-::selection {
  background-color: #999;
  color: #fff;
}

.sidebar-area::-moz-selection {
  background-color: #999;
  color: #fff;
}

.open-sidebar #sidebar-overlay {
  opacity: 1;
  z-index: 1002;
  transition: all 0.6s ease-in-out;
  transition-delay: 0.3s;
}

.side-menu-list {
  margin: 25px 0 35px 0;
}

.side-menu-list li {
  display: flex;
  align-items: center;
}

.side-menu-list li:not(:last-of-type) {
  margin-bottom: 20px;
}

.side-menu-list li i {
  background-color: var(--ed-color-theme-primary);
  font-size: 12px;
  color: var(--ed-color-common-white);
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 5px;
  transition: all 0.2s ease-in-out;
}

.side-menu-list li:hover i {
  background-color: var(--ed-color-theme-primary);
  color: #fff;
}

.side-menu-list li p {
  padding-left: 10px;
  margin-bottom: 0;
}

.side-menu-list li a {
  font-size: 16px;
  color: var(--ed-color-text-body);
  padding-left: 10px;
}
.side-menu-list li a:hover {
  color: var(--ed-color-theme-primary);
}

/* !END:  Header CSS */
/**----------------------------------------
START: Blog CSS
----------------------------------------*/
.post-inner-2:hover .post-thumb .swiper-arrow {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  visibility: visible;
  opacity: 1;
}

.post-thumb-carousel .swiper-arrow {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.post-thumb-carousel .swiper-arrow .swiper-nav {
  background-color: var(--ed-color-theme-primary);
  color: var(--ed-color-common-white);
  height: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 5px 5px 0;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 2;
}
.post-thumb-carousel .swiper-arrow .swiper-nav.swiper-next {
  left: auto;
  right: 0;
  border-radius: 5px 0 0 5px;
}
.pagination-wrap li .active {
  background-color: var(--ed-color-theme-primary);
  color: var(--ed-color-common-white);
}

/* !END:  Blog CSS */
/**----------------------------------------
START: Page Header CSS
----------------------------------------*/
.page-header {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding: 120px 0;
}
.page-header .overlay {
  background: linear-gradient(90deg, #F3F7FB 43.21%, rgba(243, 247, 251, 0.24) 63.66%);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.page-header .bg-img {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top right;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
@media (max-width: 1399px) {
  .page-header .bg-img {
    background-size: cover;
  }
}
@media only screen and (max-width: 767px) {
  .page-header .shapes {
    display: none;
  }
}
.page-header .shapes .shape {
  position: absolute;
  z-index: -1;
}
.page-header .shapes .shape.shape-1 {
  bottom: 20px;
  left: 50px;
}
@media (max-width: 1700px) {
  .page-header .shapes .shape.shape-1 {
    left: 0;
  }
}

@media (max-width: 1700px) {
  .page-header-content {
    padding-left: 100px;
  }
}
@media (max-width: 1600px) {
  .page-header-content {
    padding-left: 150px;
  }
}
@media (max-width: 1399px) {
  .page-header-content {
    padding-left: 200px;
  }
}
@media only screen and (max-width: 767px) {
  .page-header-content {
    padding-left: 0;
  }
}
.page-header-content .title {
  font-size: 48px;
  font-weight: 600;
  margin-bottom: 15px;
  line-height: 1;
}
.page-header-content .sub-title {
  font-size: 16px;
  font-weight: 500;
}
.page-header-content .sub-title .icon {
  font-size: 16px;
  padding: 0 5px;
}
.page-header-content .sub-title .inner-page {
  color: var(--ed-color-theme-primary);
}

/* !END:  Page Header CSS */
/**----------------------------------------
START: Contact CSS
----------------------------------------*/
.blog-contact-form.contact-form .request-form .form-group .form-item .form-control.nice-select {
  height: auto;
  line-height: inherit;
  padding: 15.5px 20px;
}
.blog-contact-form.contact-form .request-form .form-group .form-item .form-control.nice-select:after {
  top: 46%;
  width: 10px;
  height: 10px;
  border-color: var(--ed-color-text-body);
  border-bottom: 1px solid var(--ed-color-text-body);
  border-right: 1px solid var(--ed-color-text-body);
  right: 35px;
}
.blog-contact-form.contact-form .request-form .form-group .form-item .form-control.nice-select .list {
  background-color: var(--ed-color-common-white);
  width: 100%;
}
.blog-contact-form.contact-form .request-form .form-group .form-item .form-control.nice-select .list li {
  padding-left: 30px;
}

/* !END:  Contact CSS */
/**----------------------------------------
START: Blog Details CSS
----------------------------------------*/
.blog-contact-form .request-form .form-item .form-control::-moz-placeholder {
  color: var(--ed-color-text-body);
  font-size: 16px;
  font-weight: 400;
}

.sticky-widget {
  position: -webkit-sticky;
  position: sticky;
  top: 150px;
}

/* !END:  Blog Details CSS */
/**----------------------------------------
START: About CSS
----------------------------------------*/
.about-img-wrap {
  max-width: 582px;
  width: 100%;
  height: 500px;
  position: relative;
}
@media (max-width: 1200px) {
  .about-img-wrap {
    margin: 0 auto;
    margin-bottom: 30px;
  }
}

@media (max-width: 1200px) {
  .about-content {
    max-width: 630px;
    width: 100%;
  }
}

/* !END:  About CSS */
/**----------------------------------------
START: Promo CSS
----------------------------------------*/

/* !END:  Promo CSS */
/**----------------------------------------
START: Course CSS
----------------------------------------*/
.course-nav .nav-item .nav-link.active {
  background-color: var(--ed-color-theme-primary);
  color: var(--ed-color-common-white);
  border: none;
}

.course-tab-content .tab-pane.active.show > div {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: fade-in-bottom;
  animation-name: fade-in-bottom;
  animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  animation-fill-mode: both;
  transition: all 0.5s ease-in-out;
  transition-duration: 1000ms;
  animation-delay: 0.1s;
}

.course-top .swiper-arrow {
  display: flex;
  align-items: center;
  column-gap: 10px;
}
.course-top .swiper-arrow .swiper-nav {
  height: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #E0E5EB;
  border-radius: 50%;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.course-top .swiper-arrow .swiper-nav:hover {
  background-color: var(--ed-color-theme-primary);
  color: var(--ed-color-common-white);
  border: 1px solid var(--ed-color-theme-primary);
}
.course-details-tab .nav-tabs .nav-item .nav-link.active {
  background-color: var(--ed-color-grey-1);
  color: var(--ed-color-theme-primary);
}
.course-details-tab .nav-tabs .nav-item .nav-link.active:before {
  width: 100%;
}
.course-details-tab .tab-content .curriculam-area .accordion-item .accordion-button:not(.collapsed) {
  background-color: var(--ed-color-grey-1);
  border-radius: 10px 10px 0 0;
}
.course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body {
  padding: 30px;
}
.course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body .curri-list {
  list-style: none;
}
.course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body .curri-list li {
  font-size: 16px;
  color: var(--ed-color-heading-primary);
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 10px;
}
@media only screen and (max-width: 767px) {
  .course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body .curri-list li {
    font-size: 14px;
  }
}
.course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body .curri-list li:not(:last-of-type) {
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  .course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body .curri-list li:not(:last-of-type) {
    padding-bottom: 15px;
    border-bottom: 1px dashed #CED4E2;
  }
}
.course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body .curri-list li span:nth-child(1) i {
  color: var(--ed-color-theme-primary);
  width: 30px;
}
@media only screen and (max-width: 767px) {
  .course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body .curri-list li span:nth-child(1) i {
    width: 25px;
  }
}
.course-details-tab .tab-content .curriculam-area .accordion-item .accordion-body .curri-list li span:nth-child(2) i {
  margin-left: 10px;
}

.course-sidebar {
  padding: 30px;
  border: 1px solid #E0E5EB;
  border-radius: 15px;
}
.course-sidebar:not(:last-of-type) {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .course-sidebar {
    padding: 30px 20px;
  }
}
.course-sidebar.price-box .ed-primary-btn {
  width: 100%;
  justify-content: center;
  border-radius: 5px;
  text-transform: uppercase;
  font-weight: 600;
}
.course-sidebar.price-box .ed-primary-btn.buy-btn {
  background-color: transparent;
  color: var(--ed-color-heading-primary);
  border: 1px solid var(--ed-color-theme-primary);
  margin-top: 10px;
}
.course-sidebar.price-box .ed-primary-btn.buy-btn:before {
  background-color: var(--ed-color-theme-primary);
}
.course-sidebar.price-box .ed-primary-btn.buy-btn:hover {
  color: var(--ed-color-common-white);
}
.course-sidebar .sidebar-title {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 25px;
  text-transform: capitalize;
}
.course-sidebar .course-sidebar-list {
  list-style: none;
}
.course-sidebar .course-sidebar-list li {
  color: #162726;
  font-size: 16px;
  font-weight: 500;
}
.course-sidebar .course-sidebar-list li span {
  color: var(--ed-color-text-body);
  margin-left: 5px;
}
.course-sidebar .course-sidebar-list li i {
  color: var(--ed-color-theme-primary);
  width: 25px;
}
.course-sidebar .course-sidebar-list li:nth-child(1) {
  padding-top: 15px;
  border-top: 1px dashed #CED4E2;
}
.course-sidebar .course-sidebar-list li:not(:last-of-type) {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px dashed #CED4E2;
}

/* !END:  Course CSS */
/**----------------------------------------
START: Counter CSS
----------------------------------------*/

/* !END:  Counter CSS */
/**----------------------------------------
START: Faq CSS
----------------------------------------*/
.faq-img-wrap {
  max-width: 515px;
  width: 100%;
  height: 542px;
  position: relative;
}
@media only screen and (max-width: 992px) {
  .faq-img-wrap {
    margin: 0 auto;
  }
}
.faq-img-wrap .faq-img {
  max-width: 435px;
  height: 542px;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
.faq-img-wrap .faq-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}
.faq-img-wrap .faq-text-box {
  background-color: var(--ed-color-common-white);
  box-shadow: 0px 4px 18px rgba(158, 165, 177, 0.23);
  border-radius: 10px;
  padding: 30px;
  position: absolute;
  bottom: 100px;
  left: 0;
}
.faq-img-wrap .faq-text-box .faq-thumb-list {
  display: flex;
  align-items: center;
  margin-top: 10px;
}
.faq-img-wrap .faq-text-box .faq-thumb-list li {
  height: 56px;
  width: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 4px solid var(--ed-color-common-white);
  border-radius: 50%;
}
.faq-img-wrap .faq-text-box .faq-thumb-list li:not(:last-of-type) {
  margin-right: -30px;
}
.faq-img-wrap .faq-text-box .faq-thumb-list li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.faq-img-wrap .faq-text-box .faq-thumb-list li.number {
  background-color: var(--ed-color-theme-primary);
  color: var(--ed-color-common-white);
  font-weight: 600;
}

@media only screen and (max-width: 992px) {
  .faq-content {
    margin-top: 40px;
  }
}
.faq-content.content-1 {
  max-width: 613px;
  width: 100%;
  padding-left: 40px;
}
@media only screen and (max-width: 992px) {
  .faq-content.content-1 {
    padding-left: 0;
  }
}
.faq-content .faq-accordion .accordion-item {
  border: none;
}
.faq-content .faq-accordion .accordion-item .accordion-button {
  padding-left: 0;
  padding-right: 0;
  background-color: transparent;
  border: none;
  box-shadow: none;
  border-bottom: 1px solid transparent;
  font-size: 18px;
  font-weight: 600;
  color: var(--ed-color-heading-primary);
}
.faq-content .faq-accordion .accordion-item .accordion-button:not(.collapsed) {
  border-bottom: 1px solid #E0E5EB;
}
.faq-content .faq-accordion .accordion-item .accordion-button span {
  color: var(--ed-color-text-body);
  margin-right: 10px;
}
.faq-content .faq-accordion .accordion-item .accordion-body {
  padding-left: 0;
  padding-right: 0;
}
.faq-content .faq-accordion .accordion-item .accordion-body p {
  color: #6C706F;
}

.faq-img-wrap-2 {
  max-width: 577px;
  width: 100%;
  height: 511px;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 992px) {
  .faq-img-wrap-2 {
    margin: 0 auto;
  }
}
.faq-img-wrap-2 .faq-img-1 {
  max-width: 281px;
  width: 100%;
  height: 402px;
  border-radius: 0 60px 0 60px;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 1;
}
.faq-img-wrap-2 .faq-img-1 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.faq-img-wrap-2 .faq-img-2 {
  max-width: 270px;
  width: 100%;
  height: 241px;
  border-radius: 60px 0 60px 0;
  position: absolute;
  top: 0;
  right: 0;
  overflow: hidden;
}
.faq-img-wrap-2 .faq-img-2 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.faq-img-wrap-2 .faq-img-3 {
  max-width: 270px;
  width: 100%;
  height: 245px;
  border-radius: 60px 0 60px 0;
  position: absolute;
  bottom: 0;
  right: 0;
  overflow: hidden;
}
.faq-img-wrap-2 .faq-img-3 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.faq-img-wrap-2 .faq-text-box {
  background-color: var(--ed-color-common-white);
  box-shadow: 0px 4px 18px rgba(158, 165, 177, 0.23);
  border-radius: 10px;
  padding: 30px;
  position: absolute;
  bottom: 50px;
  left: 60px;
  z-index: 2;
}
.faq-img-wrap-2 .faq-text-box .faq-thumb-list-wrap {
  display: flex;
  align-items: center;
  column-gap: 10px;
  margin-top: 10px;
  flex-wrap: wrap;
  row-gap: 15px;
}
.faq-img-wrap-2 .faq-text-box .faq-thumb-list-wrap .faq-thumb-list {
  display: flex;
  align-items: center;
}
.faq-img-wrap-2 .faq-text-box .faq-thumb-list-wrap .faq-thumb-list li {
  height: 56px;
  width: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 4px solid var(--ed-color-common-white);
  border-radius: 50%;
}
.faq-img-wrap-2 .faq-text-box .faq-thumb-list-wrap .faq-thumb-list li:not(:last-of-type) {
  margin-right: -20px;
}
.faq-img-wrap-2 .faq-text-box .faq-thumb-list-wrap .faq-thumb-list li.number {
  background-color: var(--ed-color-theme-primary);
  color: var(--ed-color-common-white);
  font-weight: 600;
}
.faq-img-wrap-2 .faq-text-box .faq-thumb-list-wrap p {
  color: var(--ed-color-heading-primary);
  font-size: 18px;
  font-weight: 400;
  margin-bottom: 0;
  line-height: 1;
}
.faq-img-wrap-2 .faq-text-box .faq-thumb-list-wrap p span {
  color: var(--ed-color-theme-primary);
  font-weight: 700;
}

/* !END:  Faq CSS */
/**----------------------------------------
START: Page Header CSS
----------------------------------------*/

/* !END:  Page Header CSS */
/**----------------------------------------
START: Page Header CSS
----------------------------------------*/
.hero-section {
  background-color: #EFF2F9;
  padding: 100px 0;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .hero-section {
    padding: 70px 0;
  }
}
.hero-section .shapes .shape {
  position: absolute;
  z-index: -1;
}
.hero-section .shapes .shape.shape-1 {
  bottom: 70px;
  left: 70px;
  animation: about-anim 2s infinite linear alternate-reverse;
}
.hero-content-4 .hero-btn-wrap .ed-primary-btn.active {
  background-color: var(--ed-color-common-white);
  color: var(--ed-color-heading-primary);
}
.hero-content-4 .hero-btn-wrap .ed-primary-btn.active:before {
  background-color: var(--ed-color-theme-primary);
}
.hero-content-4 .hero-btn-wrap .ed-primary-btn.active:hover {
  color: var(--ed-color-common-white);
  border: 1px solid var(--ed-color-theme-primary);
}
.hero-content-4 .hero-btn-wrap .ed-primary-btn.active:hover span {
  background-color: var(--ed-color-theme-primary);
  border-color: var(--ed-color-common-white);
  color: var(--ed-color-common-white);
}

@-webkit-keyframes hero-anim {
  0% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(15px);
    -moz-transform: translateY(15px);
    -ms-transform: translateY(15px);
    -o-transform: translateY(15px);
    transform: translateY(15px);
  }
}
@-moz-keyframes hero-anim {
  0% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(15px);
    -moz-transform: translateY(15px);
    -ms-transform: translateY(15px);
    -o-transform: translateY(15px);
    transform: translateY(15px);
  }
}
@-ms-keyframes hero-anim {
  0% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(15px);
    -moz-transform: translateY(15px);
    -ms-transform: translateY(15px);
    -o-transform: translateY(15px);
    transform: translateY(15px);
  }
}
@keyframes hero-anim {
  0% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(15px);
    -moz-transform: translateY(15px);
    -ms-transform: translateY(15px);
    -o-transform: translateY(15px);
    transform: translateY(15px);
  }
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes about-anim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
  }
}
@-moz-keyframes about-anim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
  }
}
@-ms-keyframes about-anim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
  }
}
@keyframes about-anim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
  }
}
/* !END:  Page Header CSS */
/**----------------------------------------
START: Page Header CSS
----------------------------------------*/

/* !END:  Page Header CSS */
/**----------------------------------------
START: Request CSS
----------------------------------------*/
.request-content .request-form-wrapper .form-items .form-item .form-control::-moz-placeholder {
  color: var(--ed-color-common-white);
}

/* !END: Request CSS */
/**----------------------------------------
START: Feature CSS
----------------------------------------*/

.feature-card {
  background-color: var(--ed-color-common-white);
  border: 1px solid #E0E5EB;
  box-shadow: 0px 13px 58px 4px rgba(25, 30, 29, 0.07);
  border-radius: 10px;
  padding: 60px 40px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media only screen and (max-width: 767px) {
  .feature-card {
    padding: 40px 20px;
  }
}
.feature-card .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 130px;
  width: 130px;
  margin: 0 auto;
  margin-bottom: 35px;
  border: 1px solid #E0E5EB;
  border-radius: 50%;
}
.feature-card .content p {
  margin: 20px 0 30px 0;
}
.feature-card .content .ed-primary-btn {
  background-color: transparent;
  color: var(--ed-color-text-body);
  border: 1px solid #E0E5EB;
}
.feature-card .content .ed-primary-btn:before {
  background-color: var(--ed-color-theme-primary);
}
.feature-card .content .ed-primary-btn:hover {
  color: var(--ed-color-common-white);
}
.feature-card:hover {
  transform: translateY(-10px);
}

.feature-section-5 {
  background-color: #F0F4F5;
}

.feature-card-2 .icon {
  background-color: #F2F4F7;
}

/* !END: Feature CSS */
/**----------------------------------------
START: Page Header CSS
----------------------------------------*/

/* !END:  Page Header CSS */
/**----------------------------------------
START: Page Header CSS
----------------------------------------*/

.testimonial-section-2 {
  margin-bottom: -165px;
  position: relative;
  z-index: 2;
}

.testi-carousel {
  padding-bottom: 90px;
}
.testi-carousel .swiper-pagination {
  bottom: 0;
}
.testi-carousel .swiper-pagination .swiper-pagination-bullet {
  background-color: transparent;
  height: 20px;
  width: 20px;
  border: 2px solid #E0E5EB;
  opacity: 1;
  border-radius: 50%;
  position: relative;
}
.testi-carousel .swiper-pagination .swiper-pagination-bullet:before {
  background-color: var(--ed-color-theme-primary);
  content: "";
  height: 7px;
  width: 7px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  visibility: hidden;
  opacity: 0;
}
.testi-carousel .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: 2px solid var(--ed-color-theme-primary);
}
.testi-carousel .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
  visibility: visible;
  opacity: 1;
}

.testi-item-2 {
  background-color: var(--ed-color-common-white);
  padding: 40px 40px 30px 40px;
  border: 1px solid #E0E5EB;
  border-radius: 10px;
}
@media only screen and (max-width: 767px) {
  .testi-item-2 {
    padding: 30px 20px;
  }
}
.testi-item-2 .testi-top-content {
  display: grid;
  align-items: center;
  grid-template-columns: 120px 1fr;
  grid-gap: 20px;
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #E0E5EB;
}
@media only screen and (max-width: 992px) {
  .testi-item-2 .testi-top-content {
    grid-template-columns: 1fr;
  }
}
.testi-item-2 .testi-top-content p {
  font-size: 18px;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .testi-carousel-wrap-2 .swiper-arrow {
    display: none;
  }
}
.testi-carousel-wrap-2 .swiper-arrow .swiper-nav {
  color: var(--ed-color-common-white);
  height: 60px;
  width: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--ed-color-common-white);
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  border-radius: 50%;
}
.testi-carousel-wrap-2 .swiper-arrow .swiper-nav.swiper-prev {
  left: auto;
  right: -20px;
}

/* !END:  Page Header CSS */
/**----------------------------------------
START: Sponsor CSS
----------------------------------------*/

/* !END: Sponsor CSS */
/**----------------------------------------
START: Video CSS
----------------------------------------*/

/* !END: Video CSS */
/**----------------------------------------
START: Event CSS
----------------------------------------*/
.event-carousel .swiper-pagination {
  bottom: 0;
}
.event-carousel .swiper-pagination .swiper-pagination-bullet {
  background-color: transparent;
  height: 20px;
  width: 20px;
  border: 2px solid var(--ed-color-common-white);
  opacity: 1;
  border-radius: 50%;
  position: relative;
}
.event-carousel .swiper-pagination .swiper-pagination-bullet:before {
  background-color: var(--ed-color-common-white);
  content: "";
  height: 7px;
  width: 7px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  visibility: hidden;
  opacity: 0;
}
.event-carousel .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: 2px solid var(--ed-color-common-white);
}
.event-carousel .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
  visibility: visible;
  opacity: 1;
}

.event-details-content {
  background-color: var(--ed-color-grey-1);
  padding: 30px;
  border: 1px solid #E0E5EB;
  border-radius: 15px;
}
@media only screen and (max-width: 767px) {
  .event-details-content {
    padding: 30px 20px;
  }
}
.event-details-content .event-details-img {
  height: 450px;
  margin-bottom: 30px;
}
.event-details-content .event-details-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 15px;
}
.event-details-content .title {
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 20px;
}

.event-sidebar {
  background-color: var(--ed-color-grey-1);
}

/* !END: Event CSS */
/**----------------------------------------
START: Popular CSS
----------------------------------------*/

/* !END: Popular CSS */
/**----------------------------------------
START: Page Header CSS
----------------------------------------*/

/* !END:  Page Header CSS */
/**----------------------------------------
START: Page Header CSS
----------------------------------------*/

.pricing__tab .nav .nav-item .nav-link.active {
  color: var(--ed-color-theme-primary);
  border: none;
}

.pricing__tab .nav .nav-item .nav-link.active::before {
  right: 49px;
}
.pricing-item.active .pricing-top {
  background-color: var(--ed-color-theme-primary);
}
.pricing-item.active .pricing-top .title {
  color: var(--ed-color-common-white);
}
.pricing-item.active .pricing-top .price {
  color: var(--ed-color-common-white);
}
.pricing-item.active .pricing-top .price span {
  color: var(--ed-color-common-white);
}
.pricing-item.active .pricing-top p {
  color: var(--ed-color-common-white);
}
.pricing-item.active .pricing-btn .ed-primary-btn {
  background-color: var(--ed-color-theme-primary);
  color: var(--ed-color-common-white);
}

/* !END:  Page Header CSS */
/**----------------------------------------
START: Shop CSS
----------------------------------------*/
.shop-top .select-control.open:after {
  transform: translateY(-50%);
}
.product-details-wrap .product-gallary-thumb .swiper-slide-thumb-active .thumb-item {
  border: 1px solid var(--ed-color-theme-primary);
}

.tab-navigation button.active {
  color: var(--ed-color-heading-primary);
}

/*** 7.2 - Tab Description ***/

/*** 7.3 - Tab Additional Information ***/
.product-table:not(caption) > * > * {
  border-bottom: 1px solid var(--ed-color-border-1);
}

.product-table > :not(:last-child) > :last-child > * {
  border-color: var(--ed-color-border-1);
}

.product-table tbody tr td {
  text-align: center;
}

.product-table tbody tr td:not(:last-of-type) {
  border-right: 1px solid var(--ed-color-border-1);
}

.product-table tbody tr td:not(:last-of-type) {
  border-bottom: 1px solid var(--ed-color-border-1);
}

.product-table tbody tr td {
  color: var(--ed-color-heading-primary);
  padding: 15px 0;
}

/*** 7.4 - Tab Review ***/

/* !END: Shop CSS */
/**----------------------------------------
    START: Page Header CSS
----------------------------------------*/
.checkout-top .coupon-list .verify-item .login-form .form-control::-moz-placeholder {
  color: var(--ed-color-text-body);
}
.checkout-form-wrap .form-item .form-control::-moz-placeholder {
  color: var(--ed-color-text-body);
}
.checkout-form-wrap .form-item .form-control.nice-select {
  width: 100%;
  height: auto;
  line-height: inherit;
  padding: 18px 20px;
}
.checkout-form-wrap .form-item .form-control.nice-select:after {
  top: 46%;
  width: 10px;
  height: 10px;
  border-color: var(--ed-color-text-body);
  border-bottom: 1px solid var(--ed-color-text-body);
  border-right: 1px solid var(--ed-color-text-body);
  right: 25px;
}
.checkout-form-wrap .form-item .form-control.nice-select .list {
  background-color: var(--ed-color-common-white);
  width: 100%;
  border-radius: 0;
  border: 1px solid var(--ed-color-border-1);
}
.checkout-form-wrap .form-item .form-control.nice-select .list li {
  padding-left: 20px;
}

/* !END: Page Header CSS */
/**----------------------------------------
    START: Cart CSS
----------------------------------------*/
.cart-table tbody {
  border: none;
  border-bottom: 1px solid var(--ed-color-border-1);
  padding: 30px 0;
}
.cart-table tbody tr {
  vertical-align: baseline;
}
.cart-table tbody tr td {
  background-color: var(--ed-color-grey-1);
  color: var(--ed-color-heading-primary);
  font-weight: 500;
  padding: 0;
  padding-top: 30px;
  padding-bottom: 30px;
}
.cart-table tbody tr td.product-remove {
  text-align: center;
  padding: 0 25px;
  color: var(--ed-color-heading-primary);
}
.cart-table tbody tr td.product-thumbnail {
  display: grid;
  align-items: center;
  grid-template-columns: 80px 1fr;
  grid-gap: 15px;
  column-gap: 15px;
}
@media only screen and (max-width: 992px) {
  .cart-table tbody tr td.product-thumbnail {
    padding-right: 30px;
  }
}
.cart-table tbody tr td.product-thumbnail .category {
  color: var(--ed-color-theme-primary);
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  margin-bottom: 5px;
  display: block;
}
.cart-table tbody tr td.product-thumbnail .title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 0;
}
.cart-table tbody tr td.product-price {
  font-size: 16px;
  font-weight: 600;
  padding-right: 70px;
}
.cart-table tbody tr td.product-price span {
  color: var(--ed-color-heading-primary);
}
@media only screen and (max-width: 992px) {
  .cart-table tbody tr td.product-price {
    padding-right: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .cart-table tbody tr td.product-price {
    padding-right: 40px;
  }
}
@media only screen and (max-width: 992px) {
  .cart-table tbody tr td.product-quantity {
    padding-right: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .cart-table tbody tr td.product-quantity {
    padding-right: 0;
  }
}
.cart-table tbody tr td.product-quantity input {
  background-color: transparent;
  color: var(--ed-color-heading-primary);
  border-radius: 0;
  border: 1px solid var(--ed-color-border-1);
  height: 50px;
  text-align: center;
  outline: none;
  box-shadow: none;
  padding: 0 8px;
}
.cart-table tbody tr td.product-subtotal {
  color: var(--ed-color-heading-primary);
  font-size: 16px;
  font-weight: 600;
  text-align: right;
  padding-right: 30px;
}
@media only screen and (max-width: 767px) {
  .cart-table tbody tr td.product-subtotal {
    padding-right: 20px;
  }
}
.cart-btn-wrap .left-item .form-control::-moz-placeholder {
  font-size: 14px;
  color: var(--ed-color-text-body);
}

/* !END: Cart CSS */
/**----------------------------------------
START: Course Category CSS
----------------------------------------*/
.course-category {
  background-color: var(--ed-color-grey-1);
}

/* !END: Course Category CSS */
/**----------------------------------------
START: Footer CSS
----------------------------------------*/
.footer-section {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}

.footer-top {
  background: rgba(255, 255, 255, 0.01);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(40px);
  border-radius: 10px;
  margin-bottom: 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: 20px;
  padding: 80px;
  flex-wrap: wrap;
  row-gap: 20px;
}
@media only screen and (max-width: 992px) {
  .footer-top {
    justify-content: center;
  }
}
@media only screen and (max-width: 767px) {
  .footer-top {
    padding: 40px 20px;
  }
}
.footer-top .title {
  color: var(--ed-color-common-white);
  font-size: 30px;
  font-weight: 700;
  text-align: left;
}
@media only screen and (max-width: 992px) {
  .footer-top .title {
    text-align: center;
  }
}
.footer-top .footer-form-wrap .footer-form .form-item .form-control::-moz-placeholder {
  color: var(--ed-color-common-white);
}

.footer-wrap {
  margin-bottom: 80px;
}
@media only screen and (max-width: 992px) {
  .footer-wrap {
    margin-bottom: 30px;
  }
}

@media only screen and (max-width: 992px) {
  .footer-widget {
    margin-bottom: 50px;
  }
}
.footer-widget .widget-header {
  color: var(--ed-color-common-white);
  font-size: 18px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 35px;
  padding-bottom: 15px;
  position: relative;
}
.footer-widget .widget-header:before {
  background-color: var(--ed-color-common-white);
  content: "";
  width: 60px;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.footer-widget p {
  color: rgba(255, 255, 255, 0.8);
}
.footer-widget .footer-contact .number {
  font-size: 22px;
  font-weight: 600;
}
.footer-widget .footer-contact .number i {
  color: var(--ed-color-common-white);
  margin-right: 15px;
}
.footer-widget .footer-contact .number a {
  color: var(--ed-color-common-white);
}
.footer-widget .footer-contact .number a:hover {
  color: var(--ed-color-theme-primary);
}
.footer-widget .footer-list {
  list-style: none;
}
.footer-widget .footer-list li a {
  font-family: var(--ed-ff-body);
  color: var(--ed-color-common-white);
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
}
.footer-widget .footer-list li a:hover {
  color: var(--ed-color-theme-primary);
}
.footer-widget .footer-list li:not(:last-of-type) {
  margin-bottom: 15px;
}
.footer-widget .footer-form .form-control::-moz-placeholder {
  color: rgba(255, 255, 255, 0.8);
}
.footer-widget.widget-2 {
  padding-left: 50px;
}
@media only screen and (max-width: 992px) {
  .footer-widget.widget-2 {
    padding-left: 0;
  }
}
.footer-widget.widget-2 .footer-list li a {
  position: relative;
  padding-left: 30px;
}
@media (max-width: 1200px) {
  .footer-widget.widget-2 .footer-list li a {
    font-size: 14px;
    padding-left: 17px;
  }
}
.footer-widget.widget-2 .footer-list li a:before {
  background-image: none;
  font-family: "Font Awesome 6 Pro";
  font-size: 14px;
  font-weight: 700;
  content: "\f061";
  color: var(--ed-color-common-white);
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
@media (max-width: 1200px) {
  .footer-widget.widget-2 .footer-list li a:before {
    font-size: 10px;
  }
}
.footer-widget.widget-2 .footer-list li a:hover:before {
  color: var(--ed-color-theme-primary);
}

.copyright-area {
  border-top: 1px solid #223736;
}

.copyright-content {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 20px 0;
  border-top: 2px solid var(--ed-color-common-dark);
}
@media only screen and (max-width: 992px) {
  .copyright-content {
    margin-top: 0;
    flex-direction: column-reverse;
    row-gap: 10px;
    padding: 40px 0;
  }
}
.copyright-content p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 16px;
  font-family: var(--ed-ff-body);
  margin: 0;
}
.copyright-content p span {
  color: var(--ed-color-theme-primary);
}
@media only screen and (max-width: 767px) {
  .copyright-content p {
    text-align: center;
  }
}

/*Scrool Up*/

#scrollup.show {
  opacity: 1;
}

#scrollup.show .scroll-to-top {
  transform: translateY(0);
  transition: all 0.3s ease-in-out;
}


/* BLOQUES UROLOGIA */

.uro-block{
    background:#fff;
    border:1px solid #e8edf3;
    border-radius:18px;
    padding:28px;
    height:100%;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
    transition:all .3s ease;
}

.uro-block:hover{
    transform:translateY(-6px);
    box-shadow:0 16px 38px rgba(0,0,0,.10);
    border-color:#cf5b15;
}

.uro-block-header{
    display:flex;
    align-items:flex-start;
    gap:16px;
    margin-bottom:20px;
}

.uro-icon{
    width:64px;
    height:64px;
    min-width:64px;
    border-radius:14px;
    background:#f8f9fc;
    display:flex;
    align-items:center;
    justify-content:center;
}

.uro-icon img{
    width:34px;
    height:34px;
    object-fit:contain;
}

.uro-block-header h3{
    font-size:24px;
    margin-bottom:8px;
    color:#243046;
}

.uro-block-header p{
    margin:0;
    color:#5f6b7a;
    line-height:1.6;
}

.uro-list{
    list-style:none;
    padding:0;
    margin:0 0 24px 0;
}

.uro-list li{
    margin-bottom:12px;
}

.uro-list li a{
    display:block;
    padding:12px 14px;
    border-radius:12px;
    background:#f8fafc;
    color:#243046;
    text-decoration:none;
    font-weight:600;
    transition:all .3s ease;
}

.uro-list li a:hover{
    background:#fff3eb;
    color:#cf5b15;
    transform:translateX(4px);
}

.uro-block-footer{
    margin-top:auto;
}

.about-conversion-list{
    list-style:none;
    padding:0;
    margin:18px 0 0 0;
}

.about-conversion-list li{
    position:relative;
    padding:16px 18px 16px 46px;
    margin-bottom:14px;
    background:#f8fafc;
    border:1px solid #e7edf3;
    border-radius:14px;
    color:#243046;
    line-height:1.7;
}

.about-conversion-list li::before{
    content:"✔";
    position:absolute;
    left:18px;
    top:16px;
    color:#cf5b15;
    font-weight:700;
    font-size:18px;
}

.hero-call-btn{
    background:#ffffff;
    color:#cf5b15;
    border:2px solid #cf5b15;
}

.hero-call-btn:hover{
    background:#cf5b15;
    color:#ffffff;
}

.cta-note{
    margin-top:18px;
    font-size:15px;
    color:#5f6b7a;
    line-height:1.7;
}

/* =========================
HERO MEDICO CON COLOR
========================= */

/* CAJA DEL CONTENIDO */

/* TITULO PRINCIPAL */

/* SUBTEXTO */

/* LISTA BENEFICIOS */

/* ETIQUETAS */

/* BOTONES */

.hero-btn-wrap{
    margin-top:30px;
    display:flex;
    gap:14px;
}

/* BOTON PRINCIPAL */

.hero-btn-wrap .active{
    background:#cf5b15;
    border-color:#cf5b15;
    color:#fff;
    font-weight:600;
}

.hero-btn-wrap .active:hover{
    background:#b94e12;
}

/* BOTON LLAMAR */

.hero-call-btn{
    background:#1f4e79;
    border:2px solid #1f4e79;
    color:#fff;
}

.hero-call-btn:hover{
    background:#163c5c;
}

/* IMAGEN */

/* BADGE DE IMAGEN */

/* TARJETAS HOSPITALES */

/* MOBILE */

@media(max-width:768px){

.hero-btn-wrap{
    flex-direction:column;
}

}


/* ===== CORREGIR CONTRASTE HERO ===== */

/* Caja blanca */

/* Subtitulo */

/* Icono */

/* TITULO */

/* TEXTO */

/* LISTA */

/* CHECKS */

/* BADGES */

/* BOTON WHATSAPP */
.hero-btn-wrap .active{
    background:#cf5b15 !important;
    border-color:#cf5b15 !important;
    color:#ffffff !important;
}

/* BOTON LLAMAR */
.hero-call-btn{
    background:#1f4e79 !important;
    border-color:#1f4e79 !important;
    color:#ffffff !important;
}

.hero-call-btn:hover{
    background:#163c5c !important;
}

/* TEXTO FINAL */
.cta-note{
    color:#667588 !important;
}

/* =========================
PAQUETES UROLOGICOS
========================= */

.package-section-text{
    max-width:860px;
    margin:18px auto 40px;
    color:#5f6b7a;
    line-height:1.8;
}

.package-card{
    background:#ffffff;
    border:1px solid #e6edf5;
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(0,0,0,.06);
    transition:all .3s ease;
    height:100%;
    display:flex;
    flex-direction:column;
}

.package-card:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 38px rgba(0,0,0,.10);
    border-color:#cf5b15;
}

.package-thumb{
    position:relative;
}

.package-thumb img{
    width:100%;
    height:240px;
    object-fit:cover;
    display:block;
}

.package-badge{
    position:absolute;
    top:16px;
    left:16px;
    background:#1f4e79;
    color:#fff;
    font-size:13px;
    font-weight:700;
    padding:8px 14px;
    border-radius:999px;
    box-shadow:0 8px 18px rgba(0,0,0,.10);
}

.featured-package{
    border:2px solid #cf5b15;
    box-shadow:0 18px 40px rgba(207,91,21,.14);
}

.featured-badge{
    background:#cf5b15;
}

.package-content{
    padding:26px 24px 28px;
    display:flex;
    flex-direction:column;
    height:100%;
}

.package-title{
    font-size:24px;
    line-height:1.3;
    margin-bottom:10px;
    color:#223548;
}

.package-subtitle{
    font-size:15px;
    line-height:1.7;
    color:#5f6b7a;
    margin-bottom:20px;
}

.package-list{
    list-style:none;
    padding:0;
    margin:0 0 24px 0;
}

.package-list li{
    position:relative;
    padding-left:28px;
    margin-bottom:12px;
    color:#243046;
    line-height:1.7;
}

.package-list li::before{
    content:"✔";
    position:absolute;
    left:0;
    top:0;
    color:#cf5b15;
    font-weight:700;
}

.package-btn{
    margin-top:auto;
    width:100%;
    justify-content:center;
}

.package-bottom-text{
    margin-bottom:18px;
    color:#243046;
    font-weight:600;
}

@media (max-width:768px){
    .package-thumb img{
        height:220px;
    }

    .package-title{
        font-size:21px;
    }

    .package-content{
        padding:22px 20px 24px;
    }
}

/* =========================
AUTORIDAD DEL DOCTOR
========================= */

.doctor-btn-wrap{
    margin-top:28px;
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

/* =========================
SEGUNDA OPINION
========================= */

/* =========================
PRIMERA CONSULTA
========================= */

.first-consultation-section{
    background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%);
}

.first-consultation-image{
    position:relative;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 18px 40px rgba(0,0,0,.10);
}

.first-consultation-image img{
    width:100%;
    display:block;
    object-fit:cover;
}

.consultation-image-card{
    position:absolute;
    left:24px;
    bottom:24px;
    background:rgba(255,255,255,.96);
    padding:16px 18px;
    border-radius:14px;
    box-shadow:0 12px 24px rgba(0,0,0,.10);
    border-left:4px solid #cf5b15;
    max-width:320px;
}

.consultation-image-card strong{
    display:block;
    color:#1f4e79;
    font-size:16px;
    margin-bottom:4px;
}

.consultation-image-card span{
    color:#5f6b7a;
    font-size:14px;
    line-height:1.5;
}

.consultation-content{
    background:#ffffff;
    border:1px solid #e7edf4;
    border-radius:22px;
    padding:34px;
    box-shadow:0 12px 28px rgba(0,0,0,.06);
}

.consultation-intro{
    color:#5f6b7a;
    line-height:1.8;
    max-width:700px;
}

/* FAQ más premium */
.first-consultation-section .accordion-item{
    border:1px solid #e7edf4;
    border-radius:16px !important;
    overflow:hidden;
    margin-bottom:14px;
    box-shadow:none;
}

.first-consultation-section .accordion-button{
    font-weight:700;
    color:#223548;
    background:#ffffff;
    box-shadow:none;
    padding:20px 22px;
}

.first-consultation-section .accordion-button:not(.collapsed){
    background:#f8fbff;
    color:#1f4e79;
}

.first-consultation-section .accordion-button span{
    color:#cf5b15;
    margin-right:10px;
    font-weight:800;
}

.first-consultation-section .accordion-body{
    color:#5f6b7a;
    line-height:1.8;
    padding:0 22px 22px 22px;
    background:#ffffff;
}

@media (max-width:768px){
    .consultation-content{
        padding:24px;
    }

    .consultation-image-card{
        position:static;
        max-width:none;
        margin:16px;
    }
}

/* =========================
SEGUNDA OPINION - VERSION CONVERSION
========================= */

/* =========================
TECNOLOGIA DIAGNOSTICA
========================= */

.diagnostic-section{
    background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
}

.diagnostic-image{
    position:relative;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 18px 40px rgba(0,0,0,.10);
}

.diagnostic-image img{
    width:100%;
    display:block;
    object-fit:cover;
}

.diagnostic-badge{
    position:absolute;
    left:24px;
    bottom:24px;
    background:rgba(255,255,255,.96);
    padding:16px 18px;
    border-radius:14px;
    box-shadow:0 12px 24px rgba(0,0,0,.10);
    border-left:4px solid #cf5b15;
    max-width:320px;
}

.diagnostic-badge strong{
    display:block;
    color:#1f4e79;
    font-size:16px;
    margin-bottom:4px;
}

.diagnostic-badge span{
    color:#5f6b7a;
    font-size:14px;
    line-height:1.5;
}

.diagnostic-content{
    background:#ffffff;
    border:1px solid #e7edf4;
    border-radius:22px;
    padding:34px;
    box-shadow:0 12px 28px rgba(0,0,0,.06);
}

.diagnostic-text{
    font-size:16px;
    line-height:1.85;
    color:#5f6b7a;
    margin-bottom:22px;
}

.diagnostic-feature-card{
    display:flex;
    gap:18px;
    align-items:flex-start;
    background:#f8fafc;
    border:1px solid #e4edf5;
    border-radius:18px;
    padding:22px;
}

.diagnostic-feature-icon{
    min-width:80px;
}

.diagnostic-feature-card .title{
    color:#1f4e79;
    margin-bottom:8px;
}

.diagnostic-feature-card p{
    color:#5f6b7a;
    line-height:1.8;
    margin:0;
}

.diagnostic-benefits{
    list-style:none;
    padding:0;
    margin:24px 0 0 0;
}

.diagnostic-benefits li{
    position:relative;
    padding-left:30px;
    margin-bottom:12px;
    color:#243046;
    line-height:1.7;
    font-weight:500;
}

.diagnostic-benefits li::before{
    content:"✔";
    position:absolute;
    left:0;
    top:0;
    color:#cf5b15;
    font-weight:700;
}

@media (max-width:768px){
    .diagnostic-content{
        padding:24px;
    }

    .diagnostic-badge{
        position:static;
        max-width:none;
        margin:16px;
    }

    .diagnostic-feature-card{
        flex-direction:column;
    }
}


/* HERO BADGES */


/* BOTONES HERO */

.hero-btn-wrap{
    display:flex;
    gap:16px;
    margin-top:10px;
}


/* MOBILE OPTIMIZATION */

@media (max-width:768px){

.hero-btn-wrap{
    flex-direction:column;
    gap:12px;
}

}


/* TRUST BADGES HERO */


/* BENEFICIOS HERO */


/* MOBILE FIX */

/* Reducir espacio entre testimonios y segunda opinión */

.testimonial-section-2{
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

.ed-primary-btn span{
    margin-right:10px;
}

/* Tipografía base */


/* Nombre del doctor */

.sub-heading{
font-family:'Poppins', sans-serif;
font-weight:500;
font-size:18px;
color:#0f766e;
letter-spacing:.3px;
}


/* TITULO PRINCIPAL */


/* SUBTITULO */


/* TEXTO DESCRIPTIVO */


/* PRUEBA SOCIAL */


/* LISTA DE BENEFICIOS */


/* BOTONES */

.ed-primary-btn{
font-family:'Poppins', sans-serif;
font-weight:500;
font-size:16px;
padding:14px 26px;
border-radius:8px;
background:#0ea5a4;
color:white;
transition:all .3s ease;
}

.ed-primary-btn:hover{
background:#0f766e;
transform:translateY(-2px);
}

.hero-call-btn{
background:#1e293b;
}

.hero-call-btn:hover{
background:#020617;
}


/* BADGE DE IMAGEN */


/* CAJAS DE HOSPITALES */

/* Ajuste para móviles */

@media (max-width:768px){

.about-section{
padding-top:60px;
padding-bottom:60px;
}

.about-img-wrap{
margin-bottom:20px;
}

.section-heading{
margin-bottom:20px !important;
}

.about-content h3{
margin-top:10px;
}

.about-conversion-list{
margin-top:10px;
}

.hero-btn-wrap{
margin-top:18px !important;
}

}

/* subtitulo */

/* texto */


/* =========================
   🔥 PREMIUM UPGRADE UI
========================= */

/* Tipografía fina */
body{
    font-family: 'Plus Jakarta Sans', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6{
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 700;
    letter-spacing: -0.4px;
}

/* HERO */

/* LISTAS */

/* TARJETAS */

/* BOTONES */
.ed-primary-btn{
    border-radius: 12px !important;
    padding: 14px 22px !important;
    font-weight: 600 !important;
    transition: all .3s ease;
}

.ed-primary-btn.active{
    background: linear-gradient(90deg, #1358C1, #3b82f6);
    box-shadow: 0 8px 20px rgba(19,88,193,0.3);
}

.ed-primary-btn:hover{
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0,0,0,0.2);
}

/* SECCIONES */
section{
    padding-top: 80px;
    padding-bottom: 80px;
}

/* IMAGEN HERO */

/* RESPONSIVE */

/* ===== GOOGLE REVIEWS PREMIUM ===== */

.google-style-card{
    background:#fff;
    border:1px solid #e8eef7;
    border-radius:22px;
    box-shadow:0 10px 28px rgba(0,0,0,0.06);
    transition:.3s ease;
    overflow:hidden;
    height:100%;
    display:flex;
}

.google-style-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(0,0,0,0.10);
}

.google-style-card .testi-top-content{
    padding:28px;
    display:flex;
    flex-direction:column;
    width:100%;
    height:100%;
}

/* HEADER (usuario + google) */
.google-review-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:16px;
    min-height:64px;
}

.google-review-user{
    display:flex;
    align-items:center;
    gap:12px;
}

.google-avatar{
    width:52px;
    height:52px;
    min-width:52px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    font-weight:700;
    color:#fff;
    box-shadow:0 6px 14px rgba(0,0,0,0.08);
}

/* COLORES AVATAR */
.avatar-blue{background:#4285F4;}
.avatar-green{background:#34A853;}
.avatar-orange{background:#FBBC05; color:#243046;}
.avatar-red{background:#EA4335;}
.avatar-purple{background:#7E57C2;}
.avatar-teal{background:#009688;}

.google-user-info .name{
    font-size:18px;
    line-height:1.2;
    margin-bottom:4px;
    color:#1f2937;
}

.google-user-info span{
    display:block;
    font-size:13px;
    color:#6b7280;
    line-height:1.4;
}

/* LOGO GOOGLE */
.google-mini-logo{
    width:34px;
    height:34px;
    min-width:34px;
    border-radius:50%;
    background:#fff;
    border:1px solid #e5e7eb;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 10px rgba(0,0,0,0.05);
}

.google-mini-logo img{
    width:18px;
    height:auto;
}

/* ESTRELLAS */
.google-review-stars{
    display:flex;
    align-items:center;
    gap:4px;
    flex-wrap:wrap;
    margin-bottom:16px;
    min-height:24px;
}

.google-review-stars li{
    list-style:none;
    color:#fbbc04;
    font-size:15px;
}

.google-review-stars .point{
    color:#4b5563;
    font-size:14px;
    font-weight:600;
    margin-left:6px;
}

/* TEXTO */
.google-style-card p{
    font-size:15.5px;
    line-height:1.85;
    color:#475569;
    margin-bottom:0;
}

/* ===== DESKTOP (UNIFORMIDAD REAL) ===== */
@media (min-width: 992px){

    .testi-carousel .swiper-slide{
        display:flex;
        height:auto;
    }

    .google-style-card{
        width:100%;
        min-height:420px; /* ?? AJUSTE CLAVE */
    }

    /* recorta texto para uniformidad */
    .google-style-card p{
        display:-webkit-box;
        -webkit-line-clamp:8;
        -webkit-box-orient:vertical;
        overflow:hidden;
    }
}

/* ===== MOBILE ===== */
@media (max-width:767px){

    .google-style-card .testi-top-content{
        padding:22px;
    }

    .google-avatar{
        width:46px;
        height:46px;
        min-width:46px;
        font-size:16px;
    }

    .google-user-info .name{
        font-size:16px;
    }

    .google-user-info span{
        font-size:12px;
    }

    .google-mini-logo{
        width:30px;
        height:30px;
        min-width:30px;
    }

    .google-mini-logo img{
        width:16px;
    }

    /* en mvil NO recortamos tanto */
    .google-style-card p{
        display:block;
    }
}

/* ===== CONTENEDOR IMAGEN ===== */
.about-img-wrap{
    position:relative;
}

/* ===== CARD CONTACTO PREMIUM ===== */
.about-contact-pro{
    position:absolute;
    bottom:20px;
    left:20px;
    right:20px;
    background:linear-gradient(135deg, #eaf3ff, #f5f9ff);
    border-radius:16px;
    padding:18px 20px;
    box-shadow:0 10px 30px rgba(0,0,0,0.10);
    border:1px solid #dbe9ff;
    transition:all 0.3s ease;
    overflow:hidden;
    z-index:2;
}

/* Barra lateral tipo hospital */
.about-contact-pro::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:4px;
    height:100%;
    background:#0d6efd;
    border-radius:16px 0 0 16px;
}

/* Hover elegante */
.about-contact-pro:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 35px rgba(0,0,0,0.15);
}

/* Texto superior */
.contact-top{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:14px;
    font-weight:600;
    color:#0d6efd;
    margin-bottom:8px;
}

.contact-top i{
    font-size:16px;
}

/* Nmero */
.contact-number a{
    font-size:22px;
    font-weight:700;
    color:#1a2b4c;
    text-decoration:none;
    letter-spacing:0.5px;
}

/* Botn WhatsApp */
.contact-cta{
    margin-top:12px;
}

.contact-cta a{
    display:inline-block;
    background:#25D366;
    color:#fff;
    font-size:14px;
    padding:8px 14px;
    border-radius:8px;
    text-decoration:none;
    font-weight:600;
    transition:0.3s;
}

.contact-cta a:hover{
    background:#1ebe5d;
    transform:scale(1.03);
}

/* ===== RESPONSIVE MVIL ===== */
@media (max-width:768px){

    .about-img-wrap{
        position:relative;
    }

    .about-contact-pro{
        position:absolute;
        left:12px;
        right:12px;
        bottom:14px; /* ?? ajusta aqu si quieres subirlo ms */
        padding:14px 16px;
        border-radius:14px;
    }

    .about-contact-pro::before{
        border-radius:14px 0 0 14px;
    }

    .contact-top{
        font-size:13px;
        margin-bottom:6px;
    }

    .contact-number a{
        font-size:18px;
    }

    .contact-cta{
        margin-top:10px;
    }

    .contact-cta a{
        width:100%;
        text-align:center;
        padding:10px 14px;
    }
}

.hero-luxury{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 0% 0%, rgba(19,88,193,0.08), transparent 30%),
        radial-gradient(circle at 100% 20%, rgba(19,88,193,0.05), transparent 28%),
        linear-gradient(180deg, #fbfdff 0%, #f5f9ff 38%, #ffffff 100%);
    padding: 90px 0 70px;
}

.hero-luxury:before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(255,255,255,0.65), rgba(255,255,255,0));
    pointer-events:none;
}

.hero-luxury-content{
    position:relative;
    z-index:2;
    max-width:640px;
}

.hero-luxury-chip{
    display:inline-flex;
    align-items:center;
    padding:9px 16px;
    border-radius:999px;
    border:1px solid rgba(19,88,193,0.12);
    background:rgba(255,255,255,0.85);
    color:#1358C1;
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    box-shadow:0 10px 25px rgba(16,24,40,.05);
    margin-bottom:18px;
}

.hero-luxury-kicker{
    font-size:15px;
    font-weight:600;
    color:#667085;
    margin-bottom:18px;
    line-height:1.7;
}

.hero-luxury-title{
    font-size:64px;
    line-height:0.98;
    letter-spacing:-0.04em;
    color:#0f1728;
    font-weight:700;
    margin-bottom:24px;
}

.hero-luxury-title span{
    display:block;
    margin-top:14px;
    font-size:24px;
    line-height:1.25;
    font-weight:600;
    color:#1358C1;
    letter-spacing:-0.02em;
}

.hero-luxury-text{
    font-size:18px;
    line-height:1.95;
    color:#475467;
    margin-bottom:30px;
    max-width:610px;
}

.hero-luxury-points{
    display:grid;
    gap:14px;
    margin-bottom:34px;
}

.hero-luxury-point{
    display:flex;
    align-items:flex-start;
    gap:12px;
    color:#243046;
    font-size:16px;
    line-height:1.7;
}

.hero-luxury-point i{
    color:#1358C1;
    margin-top:5px;
    font-size:15px;
}

.hero-luxury-actions{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    margin-bottom:22px;
}

.hero-luxury-btn{
    min-height:56px;
    padding:16px 28px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border-radius:999px;
    font-size:15px;
    font-weight:700;
    text-decoration:none;
    transition:.3s ease;
}

.hero-luxury-btn span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.hero-luxury-btn-primary{
    background:linear-gradient(135deg,#1358C1 0%,#0f4aa6 100%);
    color:#fff;
    box-shadow:0 16px 35px rgba(19,88,193,0.24);
}

.hero-luxury-btn-primary:hover{
    transform:translateY(-2px);
    color:#fff;
    box-shadow:0 22px 40px rgba(19,88,193,0.28);
}

.hero-luxury-btn-secondary{
    background:rgba(255,255,255,0.9);
    color:#1358C1;
    border:1px solid rgba(19,88,193,0.14);
    box-shadow:0 10px 24px rgba(16,24,40,.05);
}

.hero-luxury-btn-secondary:hover{
    background:#fff;
    color:#1358C1;
    transform:translateY(-2px);
}

.hero-luxury-locations{
    font-size:15px;
    line-height:1.8;
    color:#667085;
}

.hero-luxury-locations strong{
    color:#101828;
    font-weight:700;
}

.hero-luxury-visual{
    position:relative;
    z-index:2;
    padding-left:20px;
}

.hero-luxury-image-wrap{
    position:relative;
    border-radius:32px;
    overflow:hidden;
    background:#fff;
    border:1px solid rgba(255,255,255,0.8);
    box-shadow:
        0 30px 70px rgba(16,24,40,.12),
        0 10px 20px rgba(16,24,40,.05);
}

.hero-luxury-image-wrap img{
    width:100%;
    height:auto;
    display:block;
}

.hero-luxury-floating-card{
    position:absolute;
    left:-10px;
    bottom:34px;
    max-width:360px;
    background:rgba(255,255,255,0.92);
    backdrop-filter:blur(16px);
    border:1px solid rgba(255,255,255,0.75);
    border-radius:22px;
    padding:18px 20px;
    box-shadow:0 18px 45px rgba(16,24,40,.14);
}

.hero-luxury-floating-card small{
    display:block;
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#1358C1;
    margin-bottom:8px;
}

.hero-luxury-floating-card strong{
    display:block;
    font-size:18px;
    line-height:1.45;
    color:#0f1728;
    margin-bottom:6px;
}

.hero-luxury-floating-card span{
    display:block;
    font-size:14px;
    line-height:1.7;
    color:#667085;
}

.hero-luxury-bottom{
    margin-top:42px;
    position:relative;
    z-index:2;
}

.hero-luxury-info-card{
    height:100%;
    background:rgba(255,255,255,0.82);
    border:1px solid rgba(16,24,40,.05);
    border-radius:22px;
    padding:24px 22px;
    box-shadow:0 12px 30px rgba(16,24,40,.06);
    transition:.3s ease;
}

.hero-luxury-info-card:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 36px rgba(16,24,40,.09);
}

.hero-luxury-info-card small{
    display:block;
    font-size:12px;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#1358C1;
    font-weight:700;
    margin-bottom:10px;
}

.hero-luxury-info-card strong{
    display:block;
    font-size:20px;
    line-height:1.4;
    color:#101828;
    margin-bottom:10px;
}

.hero-luxury-info-card p{
    margin:0;
    color:#667085;
    line-height:1.8;
}

@media (max-width: 1200px){
    .hero-luxury-title{
        font-size:54px;
    }
}

@media (max-width: 991px){
    .hero-luxury{
        padding:65px 0 55px;
    }

    .hero-luxury-title{
        font-size:44px;
    }

    .hero-luxury-title span{
        font-size:22px;
    }

    .hero-luxury-text{
        font-size:17px;
    }

    .hero-luxury-visual{
        padding-left:0;
    }

    .hero-luxury-floating-card{
        position:static;
        margin-top:18px;
        max-width:100%;
    }
}

@media (max-width: 767px){
    .hero-luxury{
        padding:50px 0 40px;
    }

    .hero-luxury-title{
        font-size:36px;
        line-height:1.02;
    }

    .hero-luxury-title span{
        font-size:20px;
        margin-top:12px;
    }

    .hero-luxury-text{
        font-size:16px;
        line-height:1.85;
    }

    .hero-luxury-actions{
        gap:12px;
    }

    .hero-luxury-btn{
        width:100%;
    }

    .hero-luxury-info-card strong{
        font-size:18px;
    }
}

.hero-luxury-subtitle {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 10px;
    color: #333; /* texto base */
}

.hero-luxury-subtitle strong {
    color: #0d6efd; 
    font-weight: 800;
}

.hero-luxury-title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.1;
}  @media (max-width: 768px){
    .mobile-clean-text{
        text-align: left !important;
        text-align-last: left !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
    }
}


/* !END:  Footer CSS */

/*# sourceMappingURL=main.css.map */


/* ===== FIX DEFINITIVO PÁRRAFO TRAYECTORIA DR. RAYMUNDO ===== */

@media (max-width:768px){

    /* ?? CONTENEDOR GENERAL */

    /* ?? LISTA LIMPIA */

    /* ?? CADA ITEM PERFECTO */

    /* ?? ICONO FIJO (CLAVE) */

    /* ?? TEXTO OCUPA TODO */

}

/* =========================================================
   FIX MOBILE - ALINEACIÓN CAJA DE CREDENCIALES DR. RAYMUNDO
   ========================================================= */

.doctor-premium-section{
    background:
        radial-gradient(circle at top left, rgba(19,88,193,0.07), transparent 30%),
        linear-gradient(180deg,#fbfdff 0%,#f7fbff 45%,#ffffff 100%);
}

.doctor-premium-image{
    position:relative;
    border-radius:32px;
    overflow:hidden;
    box-shadow:0 30px 70px rgba(16,24,40,.13);
    border:1px solid rgba(255,255,255,.8);
    background:#fff;
}

.doctor-premium-image img{
    width:100%;
    display:block;
}

.doctor-premium-badge{
    position:absolute;
    left:24px;
    bottom:24px;
    max-width:360px;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(14px);
    border:1px solid rgba(255,255,255,.75);
    border-radius:22px;
    padding:18px 20px;
    box-shadow:0 18px 45px rgba(16,24,40,.14);
}

.doctor-premium-badge small{
    display:block;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#1358C1;
    margin-bottom:8px;
}

.doctor-premium-badge strong{
    display:block;
    font-size:18px;
    color:#101828;
    margin-bottom:6px;
}

.doctor-premium-badge span{
    color:#667085;
    font-size:14px;
    line-height:1.7;
}

.doctor-premium-content{
    max-width:650px;
    margin-left:auto;
}

.doctor-premium-chip{
    display:inline-flex;
    padding:9px 16px;
    border-radius:999px;
    border:1px solid rgba(19,88,193,.12);
    background:rgba(255,255,255,.9);
    color:#1358C1;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    box-shadow:0 10px 25px rgba(16,24,40,.05);
    margin-bottom:18px;
}

.doctor-premium-title{
    font-size:48px;
    line-height:1.06;
    letter-spacing:-.035em;
    color:#101828;
    margin-bottom:22px;
}

.doctor-premium-text{
    color:#475467;
    font-size:17px;
    line-height:1.9;
    margin-bottom:26px;
    text-align:justify;
}

.doctor-license-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
    margin-bottom:28px;
}

.doctor-license-card{
    background:#fff;
    border:1px solid rgba(16,24,40,.06);
    border-radius:22px;
    padding:22px 20px;
    box-shadow:0 14px 34px rgba(16,24,40,.07);
}

.doctor-license-card span{
    display:block;
    color:#667085;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    margin-bottom:8px;
}

.doctor-license-card strong{
    display:block;
    color:#1358C1;
    font-size:34px;
    line-height:1;
    letter-spacing:-.03em;
    margin-bottom:10px;
}

.doctor-license-card p{
    margin:0;
    color:#475467;
    font-size:14px;
    line-height:1.6;
}

.doctor-license-card.featured{
    background:linear-gradient(135deg,#1358C1 0%,#0f4aa6 100%);
}

.doctor-license-card.featured span, .doctor-license-card.featured p, .doctor-license-card.featured strong{
    color:#fff;
}

.doctor-premium-box{
    background:rgba(255,255,255,.9);
    border:1px solid rgba(16,24,40,.05);
    border-radius:24px;
    padding:26px;
    box-shadow:0 16px 38px rgba(16,24,40,.07);
}

.doctor-premium-box h3{
    font-size:22px;
    color:#101828;
    margin-bottom:18px;
}

.doctor-premium-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:14px;
}

.doctor-premium-list li{
    position:relative;
    padding-left:34px;
    color:#475467;
    line-height:1.75;
}

.doctor-premium-list li::before{
    content:"\2714";
    position:absolute;
    left:0;
    top:4px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#eef4ff;
    color:#1358C1;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    font-weight:800;
}

.doctor-premium-list strong{
    color:#101828;
}

.doctor-premium-actions{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-top:28px;
}

.doctor-premium-btn{
    min-height:56px;
    padding:16px 26px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    font-weight:800;
    text-decoration:none;
    transition:.3s ease;
}

.doctor-premium-btn.primary{
    background:linear-gradient(135deg,#1358C1 0%,#0f4aa6 100%);
    color:#fff;
    box-shadow:0 16px 35px rgba(19,88,193,.24);
}

.doctor-premium-btn.secondary{
    background:#fff;
    color:#1358C1;
    border:1px solid rgba(19,88,193,.16);
    box-shadow:0 10px 24px rgba(16,24,40,.05);
}

.doctor-premium-btn:hover{
    transform:translateY(-2px);
}

@media(max-width:991px){
    .doctor-premium-content{
        max-width:100%;
        margin-left:0;
    }

    .doctor-premium-badge{
        position:static;
        max-width:100%;
        margin:18px;
    }

    .doctor-premium-title{
        font-size:40px;
    }
}

@media(max-width:767px){
    .doctor-premium-title{
        font-size:34px;
    }

    .doctor-license-grid{
        grid-template-columns:1fr;
    }

    .doctor-license-card strong{
        font-size:30px;
    }

    .doctor-premium-text{
        text-align:left;
        font-size:16px;
    }

    .doctor-premium-btn{
        width:100%;
    }
}

.second-opinion-luxury{
    background:
        radial-gradient(circle at top right, rgba(19,88,193,0.07), transparent 30%),
        linear-gradient(180deg,#ffffff 0%,#f7fbff 48%,#ffffff 100%);
}

.second-opinion-luxury-image{
    position:relative;
    border-radius:32px;
    overflow:hidden;
    background:#fff;
    border:1px solid rgba(255,255,255,.8);
    box-shadow:0 30px 70px rgba(16,24,40,.13);
}

.second-opinion-luxury-image img{
    width:100%;
    display:block;
}

.second-opinion-luxury-badge{
    position:absolute;
    left:24px;
    bottom:24px;
    max-width:360px;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(14px);
    border:1px solid rgba(255,255,255,.75);
    border-radius:22px;
    padding:18px 20px;
    box-shadow:0 18px 45px rgba(16,24,40,.14);
}

.second-opinion-luxury-badge small, .second-opinion-luxury-chip{
    display:inline-flex;
    color:#1358C1;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.second-opinion-luxury-badge small{
    margin-bottom:8px;
}

.second-opinion-luxury-badge strong{
    display:block;
    font-size:18px;
    color:#101828;
    margin-bottom:6px;
}

.second-opinion-luxury-badge span{
    color:#667085;
    font-size:14px;
    line-height:1.7;
}

.second-opinion-luxury-content{
    max-width:650px;
    margin-left:auto;
}

.second-opinion-luxury-chip{
    padding:9px 16px;
    border-radius:999px;
    border:1px solid rgba(19,88,193,.12);
    background:rgba(255,255,255,.9);
    box-shadow:0 10px 25px rgba(16,24,40,.05);
    margin-bottom:18px;
}

.second-opinion-luxury-title{
    font-size:48px;
    line-height:1.06;
    letter-spacing:-.035em;
    color:#101828;
    margin-bottom:22px;
}

.second-opinion-luxury-text{
    color:#475467;
    font-size:17px;
    line-height:1.9;
    margin-bottom:18px;
    text-align:justify;
}

.second-opinion-luxury-alert{
    background:#fff;
    border:1px solid rgba(19,88,193,.12);
    border-left:4px solid #1358C1;
    border-radius:18px;
    padding:18px 20px;
    color:#101828;
    font-weight:700;
    box-shadow:0 12px 30px rgba(16,24,40,.06);
    margin:24px 0;
}

.second-opinion-luxury-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:14px;
}

.second-opinion-luxury-list li{
    position:relative;
    padding-left:34px;
    color:#475467;
    line-height:1.75;
}

.second-opinion-luxury-list li::before{
    content:"\2714";
    position:absolute;
    left:0;
    top:4px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#eef4ff;
    color:#1358C1;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    font-weight:800;
}

.second-opinion-luxury-actions{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-top:28px;
}

.second-opinion-luxury-btn{
    min-height:56px;
    padding:16px 26px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    font-weight:800;
    text-decoration:none;
    transition:.3s ease;
}

.second-opinion-luxury-btn.primary{
    background:linear-gradient(135deg,#1358C1 0%,#0f4aa6 100%);
    color:#fff;
    box-shadow:0 16px 35px rgba(19,88,193,.24);
}

.second-opinion-luxury-btn.secondary{
    background:#fff;
    color:#1358C1;
    border:1px solid rgba(19,88,193,.16);
    box-shadow:0 10px 24px rgba(16,24,40,.05);
}

.second-opinion-luxury-btn:hover{
    transform:translateY(-2px);
}

.second-opinion-luxury-note{
    margin-top:16px;
    color:#667085;
    font-size:15px;
}

@media(max-width:991px){
    .second-opinion-luxury-content{
        max-width:100%;
        margin-left:0;
    }

    .second-opinion-luxury-badge{
        position:static;
        max-width:100%;
        margin:18px;
    }

    .second-opinion-luxury-title{
        font-size:40px;
    }
}

@media(max-width:767px){
    .second-opinion-luxury-title{
        font-size:34px;
    }

    .second-opinion-luxury-text{
        text-align:left;
        font-size:16px;
    }

    .second-opinion-luxury-btn{
        width:100%;
    }
}

/* ===== CONSULTA / FAQ PREMIUM ===== */

.first-consultation-section{
    background:linear-gradient(180deg,#f7faff 0%,#ffffff 100%);
    position:relative;
}

.first-consultation-section .faq-img{
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 24px 60px rgba(19,88,193,.16);
    position:relative;
}

.first-consultation-section .faq-img img{
    width:100%;
    display:block;
    border-radius:28px;
}

.first-consultation-image{
    position:relative;
}

.consultation-image-card{
    position:absolute;
    left:24px;
    right:24px;
    bottom:24px;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(10px);
    border-radius:20px;
    padding:18px 20px;
    box-shadow:0 14px 36px rgba(0,0,0,.14);
    border:1px solid rgba(255,255,255,.7);
}

.consultation-image-card strong{
    display:block;
    color:#162726;
    font-size:18px;
    font-weight:800;
    margin-bottom:4px;
}

.consultation-image-card span{
    display:block;
    color:#5f6b7a;
    font-size:14.5px;
    line-height:1.5;
}

.consultation-content{
    background:#fff;
    border-radius:28px;
    padding:38px;
    box-shadow:0 18px 50px rgba(19,88,193,.10);
    border:1px solid rgba(19,88,193,.08);
}

.consultation-content .sub-heading{
    background:#eef5ff;
    border:1px solid rgba(19,88,193,.12);
    color:#1358C1;
}

.consultation-content .section-title{
    font-size:38px;
    line-height:1.15;
    font-weight:800;
    color:#162726;
}

.consultation-intro{
    margin-top:18px !important;
    color:#52606f;
    font-size:17px;
    line-height:1.8;
}

.faq-accordion .accordion-item{
    border:0;
    border-radius:18px;
    overflow:hidden;
    margin-bottom:12px;
    background:#f8fbff;
    box-shadow:0 8px 24px rgba(0,0,0,.045);
}

.faq-accordion .accordion-button{
    background:#f8fbff;
    color:#162726;
    font-weight:700;
    font-size:16px;
    padding:18px 20px;
    box-shadow:none;
    gap:10px;
}

.faq-accordion .accordion-button span{
    color:#1358C1;
    font-weight:800;
}

.faq-accordion .accordion-button:not(.collapsed){
    background:#1358C1;
    color:#fff;
}

.faq-accordion .accordion-button:not(.collapsed) span{
    color:#fff;
}

.faq-accordion .accordion-body{
    background:#fff;
    color:#5f6b7a;
    padding:20px;
    font-size:15.8px;
    line-height:1.75;
}

.consultation-final-cta{
    margin-top:24px;
    padding:20px 22px;
    border-radius:20px;
    background:linear-gradient(135deg,#1358C1,#0f4aa6);
    color:#fff;
    font-weight:800;
    text-align:center;
    box-shadow:0 14px 30px rgba(19,88,193,.28);
}

.consultation-final-cta a{
    color:#fff;
    text-decoration:none;
}

/* MOBILE */
@media(max-width:768px){
    .first-consultation-section{
        padding-top:70px !important;
        padding-bottom:70px !important;
    }

    .consultation-content{
        padding:26px 18px;
        border-radius:22px;
    }

    .consultation-content .section-title{
        font-size:28px;
    }

    .consultation-intro{
        font-size:15.8px;
        line-height:1.72;
        text-align:left !important;
    }

    .consultation-image-card{
        position:relative;
        left:auto;
        right:auto;
        bottom:auto;
        margin:-34px 16px 24px;
    }

    .faq-accordion .accordion-button{
        font-size:15px;
        line-height:1.45;
        padding:16px;
        align-items:flex-start;
    }

    .faq-accordion .accordion-body{
        font-size:15px;
    }
}
/* =========================================
   SECCI�N CONSULTA PREMIUM + IMAGEN DESTACADA
========================================= */

.first-consultation-section{
    background:linear-gradient(180deg,#f7faff 0%,#ffffff 100%);
    position:relative;
}

/* ===== CONTENEDOR IMAGEN ===== */
.first-consultation-image{
    position:relative;
    z-index:1;
}

/* Glow decorativo */
.first-consultation-image::before{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    background:radial-gradient(circle, rgba(19,88,193,.25) 0%, transparent 70%);
    top:-40px;
    left:-40px;
    z-index:0;
    filter:blur(10px);
}

/* Imagen principal */
.first-consultation-section .faq-img{
    position:relative;
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 30px 80px rgba(19,88,193,.22);
    transform:translateY(0);
    transition:.4s ease;
}

/* Hover efecto premium */
.first-consultation-section .faq-img:hover{
    transform:translateY(-8px) scale(1.02);
    box-shadow:0 40px 100px rgba(19,88,193,.28);
}

/* Imagen */
.first-consultation-section .faq-img img{
    width:100%;
    display:block;
    border-radius:28px;
    filter:contrast(1.05) brightness(.98) saturate(1.05);
}

/* Overlay elegante */
.first-consultation-section .faq-img::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        to bottom,
        rgba(0,0,0,0) 40%,
        rgba(0,0,0,.35) 100%
    );
}

/* Card sobre imagen */
.consultation-image-card{
    position:absolute;
    left:24px;
    right:24px;
    bottom:24px;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(12px);
    border-radius:18px;
    padding:18px 20px;
    box-shadow:0 14px 36px rgba(0,0,0,.14);
    border:1px solid rgba(255,255,255,.6);
    z-index:2;
}

.consultation-image-card strong{
    display:block;
    color:#162726;
    font-size:18px;
    font-weight:800;
    margin-bottom:4px;
}

.consultation-image-card span{
    display:block;
    color:#5f6b7a;
    font-size:14.5px;
    line-height:1.5;
}

/* ===== CONTENIDO DERECHO ===== */
.consultation-content{
    background:#fff;
    border-radius:28px;
    padding:38px;
    box-shadow:0 18px 50px rgba(19,88,193,.10);
    border:1px solid rgba(19,88,193,.08);
}

.consultation-content .sub-heading{
    background:#eef5ff;
    border:1px solid rgba(19,88,193,.12);
    color:#1358C1;
}

.consultation-content .section-title{
    font-size:38px;
    line-height:1.15;
    font-weight:800;
    color:#162726;
}

.consultation-intro{
    margin-top:18px !important;
    color:#52606f;
    font-size:17px;
    line-height:1.8;
}

/* ===== FAQ ===== */
.faq-accordion .accordion-item{
    border:0;
    border-radius:18px;
    overflow:hidden;
    margin-bottom:12px;
    background:#f8fbff;
    box-shadow:0 8px 24px rgba(0,0,0,.045);
}

.faq-accordion .accordion-button{
    background:#f8fbff;
    color:#162726;
    font-weight:700;
    font-size:16px;
    padding:18px 20px;
    box-shadow:none;
    gap:10px;
}

.faq-accordion .accordion-button span{
    color:#1358C1;
    font-weight:800;
}

.faq-accordion .accordion-button:not(.collapsed){
    background:#1358C1;
    color:#fff;
}

.faq-accordion .accordion-button:not(.collapsed) span{
    color:#fff;
}

.faq-accordion .accordion-body{
    background:#fff;
    color:#5f6b7a;
    padding:20px;
    font-size:15.8px;
    line-height:1.75;
}

/* ===== CTA FINAL ===== */
.consultation-final-cta{
    margin-top:24px;
    padding:20px 22px;
    border-radius:20px;
    background:linear-gradient(135deg,#1358C1,#0f4aa6);
    color:#fff;
    font-weight:800;
    text-align:center;
    box-shadow:0 14px 30px rgba(19,88,193,.28);
}

.consultation-final-cta a{
    color:#fff;
    text-decoration:none;
}

/* ===== MOBILE ===== */
@media(max-width:768px){

    .first-consultation-section{
        padding-top:70px !important;
        padding-bottom:70px !important;
    }

    .consultation-content{
        padding:26px 18px;
        border-radius:22px;
    }

    .consultation-content .section-title{
        font-size:28px;
    }

    .consultation-intro{
        font-size:15.8px;
        line-height:1.72;
        text-align:left !important;
    }

    .consultation-image-card{
        position:relative;
        left:auto;
        right:auto;
        bottom:auto;
        margin:-34px 16px 24px;
    }

    .first-consultation-section .faq-img{
        box-shadow:0 18px 50px rgba(0,0,0,.18);
    }

    .first-consultation-image::before{
        display:none;
    }
}
/* ===== FIX FINAL FOTO PRIMERA CONSULTA ===== */

.first-consultation-image{
    position:relative;
    z-index:1;
    border-radius:32px;
}

.first-consultation-image::before{
    content:"";
    position:absolute;
    inset:-18px;
    background:linear-gradient(135deg, rgba(19,88,193,.22), rgba(70,106,155,.08));
    border-radius:36px;
    z-index:-1;
}

.first-consultation-section .faq-img{
    position:relative;
    overflow:hidden;
    border-radius:32px;
    box-shadow:0 35px 90px rgba(19,88,193,.35);
}

.first-consultation-section .faq-img img{
    width:100%;
    display:block;
    border-radius:32px;
    filter:contrast(1.07) brightness(.98) saturate(1.08);
}

.first-consultation-section .faq-img::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        to bottom,
        rgba(0,0,0,0) 45%,
        rgba(0,0,0,.38) 100%
    );
    pointer-events:none;
}

.consultation-image-card{
    position:absolute;
    left:24px;
    right:24px;
    bottom:24px;
    z-index:3;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-radius:20px;
    padding:18px 20px;
    box-shadow:0 18px 42px rgba(0,0,0,.18);
    border:1px solid rgba(255,255,255,.7);
}

@media(max-width:768px){
    .first-consultation-image::before{
        inset:-10px;
        border-radius:28px;
    }

    .first-consultation-section .faq-img{
        border-radius:26px;
        box-shadow:0 22px 60px rgba(19,88,193,.30);
    }

    .first-consultation-section .faq-img img{
        border-radius:26px;
    }

    .consultation-image-card{
        position:relative;
        left:auto;
        right:auto;
        bottom:auto;
        margin:-34px 16px 24px;
    }
}
/* ===== FAQ RESPUESTAS MEJORADAS ===== */

.faq-accordion .accordion-body{
    padding:22px 22px 22px 22px;
}

/* p�rrafos con sangr�a visual */
.faq-accordion .accordion-body p{
    margin-bottom:12px;
    padding-left:12px;
    border-left:3px solid rgba(19,88,193,.25);
}

/* �ltima l�nea sin margen extra */
.faq-accordion .accordion-body p:last-child{
    margin-bottom:0;
}

/* texto final tipo CTA (??) */
.faq-accordion .accordion-body{
    position:relative;
}

.faq-accordion .accordion-body::after{
    content:"";
    display:block;
    margin-top:10px;
}
/* ===== FIX ESPACIADO RESPUESTAS FAQ ===== */

.faq-accordion .accordion-body{
    padding:24px 42px 28px 34px !important;
    color:#5f6b7a !important;
    line-height:1.75 !important;
    overflow:hidden !important;
}

.faq-accordion .accordion-body p{
    margin:0 0 18px !important;
    padding-left:18px !important;
    padding-right:18px !important;
    border-left:4px solid rgba(19,88,193,.22) !important;
    line-height:1.75 !important;
    max-width:100% !important;
}

.faq-accordion .accordion-body p:last-child{
    margin-bottom:0 !important;
}

.faq-accordion .accordion-body strong{
    font-weight:800 !important;
    color:#5f6b7a !important;
}

/* Para textos que no est�n dentro de <p>, como respuestas cortas */
.faq-accordion .accordion-body{
    word-break:normal !important;
    overflow-wrap:break-word !important;
}

/* ===== MOBILE ===== */
@media(max-width:768px){

    .faq-accordion .accordion-body{
        padding:20px 22px 24px 22px !important;
        font-size:15.5px !important;
        line-height:1.7 !important;
    }

    .faq-accordion .accordion-body p{
        padding-left:14px !important;
        padding-right:8px !important;
        margin-bottom:16px !important;
    }
}

@media(max-width:420px){

    .faq-accordion .accordion-body{
        padding:18px 18px 22px 18px !important;
    }

    .faq-accordion .accordion-body p{
        padding-left:12px !important;
        padding-right:6px !important;
    }
}

/* ===== FOTO M�S GRANDE ===== */

@media(min-width:992px){

    .first-consultation-section .col-lg-5{
        flex: 0 0 55% !important;
        max-width: 55% !important;
    }

    .first-consultation-section .col-lg-7{
        flex: 0 0 45% !important;
        max-width: 45% !important;
    }

}

/* ===== FIX TEXTO HERO MOBILE ===== */

@media (max-width: 768px){

    .hero-luxury-content{
        text-align:left !important;
    }

    .hero-luxury-text{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        margin:18px 0 0 !important;
        padding:0 !important;

        text-align:left !important;
        text-align-last:left !important;

        font-size:15.8px !important;
        line-height:1.72 !important;
        color:#5f6b7a !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:break-word !important;
        hyphens:none !important;
        -webkit-hyphens:none !important;

        letter-spacing:normal !important;
        word-spacing:normal !important;
    }

}

/* ===== FIX REAL HERO TEXT MOBILE ===== */

@media (max-width: 768px){

    .hero-luxury .hero-luxury-content{
        width:100% !important;
        max-width:100% !important;
        text-align:left !important;
    }

    .hero-luxury .hero-luxury-text{
        display:block !important;
        width:100% !important;
        max-width:100% !important;

        margin:14px 0 24px !important;
        padding:0 2px !important;

        font-size:15.5px !important;
        line-height:1.58 !important;

        text-align:left !important;
        text-align-last:left !important;
        text-justify:auto !important;

        color:#475467 !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;
        -webkit-hyphens:none !important;

        letter-spacing:0 !important;
        word-spacing:0 !important;
    }

    .hero-luxury .hero-luxury-text br{
        display:none !important;
    }
}/* ===== HERO TEXTO MOBILE JUSTIFICADO REAL ===== */

@media (max-width: 768px){

    .hero-luxury .hero-luxury-content{
        text-align:left !important;
        width:100% !important;
    }

    .hero-luxury p.hero-luxury-text{
        width:100% !important;
        max-width:100% !important;
        display:block !important;

        margin:16px 0 22px !important;
        padding:0 !important;

        font-size:15.7px !important;
        line-height:1.68 !important;

        text-align:justify !important;
        text-align-last:left !important;
        text-justify:inter-word !important;

        color:#4f5d6b !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:break-word !important;

        hyphens:auto !important;
        -webkit-hyphens:auto !important;

        letter-spacing:normal !important;
        word-spacing:-0.02em !important;
    }
}

@media (max-width: 420px){

    .hero-luxury p.hero-luxury-text{
        font-size:15.3px !important;
        line-height:1.64 !important;
        word-spacing:-0.04em !important;
    }
}

/* ===== SIN GUIONES EN JUSTIFICADO ===== */

@media (max-width: 768px){

    .hero-luxury p.hero-luxury-text{
        hyphens:none !important;
        -webkit-hyphens:none !important;
        -ms-hyphens:none !important;
    }

} /* ===== ABOUT TEXT PERFECTAMENTE JUSTIFICADO ===== */

.about-content .about-text{
    display:block;
    width:100%;
    max-width:100%;

    margin:18px 0;

    font-size:16.8px;
    line-height:1.75;

    color:#5f6b7a;

    text-align:justify;
    text-align-last:left;
    text-justify:inter-word;

    word-break:normal;
    overflow-wrap:break-word;

    hyphens:none;
    -webkit-hyphens:none;

    letter-spacing:0;
    word-spacing:-0.01em;
}

/* ===== MEJORA VISUAL PREMIUM ===== */

.about-content{
    max-width:540px;
}

/* ===== MOBILE ===== */

@media (max-width:768px){

    .about-content{
        max-width:100%;
    }

    .about-content .about-text{
        font-size:15.5px;
        line-height:1.68;

        text-align:justify;
        text-align-last:left;

        padding-right:2px;

        word-spacing:-0.02em;
    }

}

@media (max-width:420px){

    .about-content .about-text{
        font-size:15.2px;
        line-height:1.64;
        word-spacing:-0.03em;
    }

} /* ===== DOCTOR PREMIUM TEXTO JUSTIFICADO ===== */

.doctor-premium-content .doctor-justify-text{
    display:block;
    width:100%;
    max-width:100%;
    margin:18px 0 24px;

    font-size:16.8px;
    line-height:1.75;
    color:#5f6b7a;

    text-align:justify;
    text-align-last:left;
    text-justify:inter-word;

    word-break:normal;
    overflow-wrap:break-word;
    hyphens:none;
    -webkit-hyphens:none;

    letter-spacing:0;
    word-spacing:-0.01em;
}

.doctor-premium-content .doctor-justify-list li{
    text-align:justify;
    text-align-last:left;
    text-justify:inter-word;

    line-height:1.68;
    color:#5f6b7a;

    word-break:normal;
    overflow-wrap:break-word;
    hyphens:none;
    -webkit-hyphens:none;

    word-spacing:-0.01em;
}

/* MOBILE */
@media (max-width:768px){

    .doctor-premium-content .doctor-justify-text{
        font-size:15.5px;
        line-height:1.68;
        word-spacing:-0.02em;
    }

    .doctor-premium-content .doctor-justify-list li{
        font-size:15.2px;
        line-height:1.65;
        word-spacing:-0.02em;
    }
}

@media (max-width:420px){

    .doctor-premium-content .doctor-justify-text{
        font-size:15.2px;
        line-height:1.64;
        word-spacing:-0.03em;
    }

    .doctor-premium-content .doctor-justify-list li{
        font-size:15px;
        line-height:1.62;
        word-spacing:-0.03em;
    }
}/* ===== SECOND OPINION TEXTO JUSTIFICADO ===== */

.second-opinion-luxury-content .second-justify-text{
    display:block;
    width:100%;
    max-width:100%;

    margin:18px 0;

    font-size:16.8px;
    line-height:1.75;
    color:#5f6b7a;

    text-align:justify;
    text-align-last:left;
    text-justify:inter-word;

    word-break:normal;
    overflow-wrap:break-word;

    hyphens:none;
    -webkit-hyphens:none;

    letter-spacing:0;
    word-spacing:-0.01em;
}

/* LISTA TAMBIN JUSTIFICADA */
.second-opinion-luxury-content .second-opinion-luxury-list li{
    text-align:justify;
    text-align-last:left;

    line-height:1.68;
    color:#5f6b7a;

    word-spacing:-0.01em;
}

/* ===== MOBILE ===== */

@media (max-width:768px){

    .second-opinion-luxury-content .second-justify-text{
        font-size:15.5px;
        line-height:1.68;
        word-spacing:-0.02em;
    }

    .second-opinion-luxury-content .second-opinion-luxury-list li{
        font-size:15.2px;
        line-height:1.65;
        word-spacing:-0.02em;
    }

}

@media (max-width:420px){

    .second-opinion-luxury-content .second-justify-text{
        font-size:15.2px;
        line-height:1.64;
        word-spacing:-0.03em;
    }

    .second-opinion-luxury-content .second-opinion-luxury-list li{
        font-size:15px;
        line-height:1.62;
        word-spacing:-0.03em;
    }
}

/* ===== DIAGNOSTIC TEXT JUSTIFICADO ===== */

.diagnostic-content .diagnostic-justify-text{
    display:block;
    width:100%;
    max-width:100%;

    margin:18px 0;

    font-size:16.8px;
    line-height:1.75;
    color:#5f6b7a;

    text-align:justify;
    text-align-last:left;
    text-justify:inter-word;

    word-break:normal;
    overflow-wrap:break-word;

    hyphens:none;
    -webkit-hyphens:none;

    letter-spacing:0;
    word-spacing:-0.01em;
}

/* LISTA TAMBIN ALINEADA */
.diagnostic-content .diagnostic-benefits li{
    text-align:justify;
    text-align-last:left;

    line-height:1.68;
    color:#5f6b7a;

    word-spacing:-0.01em;
}

/* TEXTO DEL CARD TAMBIN CONSISTENTE */
.diagnostic-feature-card .content p{
    text-align:justify;
    text-align-last:left;

    line-height:1.7;
    color:#5f6b7a;

    word-spacing:-0.01em;
}

/* ===== MOBILE ===== */

@media (max-width:768px){

    .diagnostic-content .diagnostic-justify-text{
        font-size:15.5px;
        line-height:1.68;
        word-spacing:-0.02em;
    }

    .diagnostic-content .diagnostic-benefits li{
        font-size:15.2px;
        line-height:1.65;
        word-spacing:-0.02em;
    }

    .diagnostic-feature-card .content p{
        font-size:15.2px;
        line-height:1.65;
        word-spacing:-0.02em;
    }
}

@media (max-width:420px){

    .diagnostic-content .diagnostic-justify-text{
        font-size:15.2px;
        line-height:1.64;
        word-spacing:-0.03em;
    }

    .diagnostic-content .diagnostic-benefits li{
        font-size:15px;
        line-height:1.62;
        word-spacing:-0.03em;
    }

    .diagnostic-feature-card .content p{
        font-size:15px;
        line-height:1.62;
        word-spacing:-0.03em;
    }
}

/* ===== CONSULTATION INTRO JUSTIFICADO ===== */

.consultation-content .consultation-intro{
    display:block;
    width:100%;
    max-width:100%;

    margin-top:18px !important;

    font-size:16.8px;
    line-height:1.75;
    color:#5f6b7a;

    text-align:justify;
    text-align-last:left;
    text-justify:inter-word;

    word-break:normal;
    overflow-wrap:break-word;

    hyphens:none;
    -webkit-hyphens:none;

    letter-spacing:0;
    word-spacing:-0.01em;
}

/* ===== MOBILE ===== */

@media (max-width:768px){

    .consultation-content .consultation-intro{
        font-size:15.5px;
        line-height:1.68;

        padding-right:2px;

        word-spacing:-0.02em;
    }

}

@media (max-width:420px){

    .consultation-content .consultation-intro{
        font-size:15.2px;
        line-height:1.64;
        word-spacing:-0.03em;
    }

}

@media (max-width:768px){

    .consultation-content .consultation-intro{
        padding-left:16px !important;
        padding-right:12px !important;
    }

}


/* ===== TITULOS CONSULTATION SECTION ===== */

/* Ttulo principal */
.consultation-content .section-title{
    display:block;
    width:100%;

    text-align:left;
    line-height:1.2;
    letter-spacing:-0.3px;
}

/* Preguntas frecuentes */
.consultation-content .section-heading .section-title{
    margin-bottom:10px;
}

/* ===== MOBILE ===== */

@media (max-width:768px){

    .consultation-content .section-title{
        font-size:26px !important;
        line-height:1.25 !important;

        padding-left:14px;
        padding-right:10px;
    }

    /* Preguntas frecuentes */
    .consultation-content .section-heading .section-title{
        font-size:24px !important;
        margin-top:10px;
    }

}

/* ===== MOBILE PEQUEO ===== */

@media (max-width:420px){

    .consultation-content .section-title{
        font-size:24px !important;
        line-height:1.3;
    }

    .consultation-content .section-heading .section-title{
        font-size:22px !important;
    }

}

/* ===== ICONOS SIN EFECTO ===== */

.course-category .uro-icon{
    background:#eef5ff;
    width:74px;
    height:74px;
    min-width:74px;
    border-radius:20px;
    display:flex;
    align-items:center;
    justify-content:center;
}

/* Quitamos cualquier animacin o cambio */
.course-category .uro-icon img{
    max-width:44px;
    max-height:44px;
    filter:none;
    transform:none;
}

/* IMPORTANTE: eliminar efecto hover en iconos */
.course-category .uro-block:hover .uro-icon{
    background:#eef5ff;
    box-shadow:none;
}

.course-category .uro-block:hover .uro-icon img{
    transform:none;
    filter:none;
}


.uro-pill{
    display:block;
    width:100%;
    padding:14px 16px;
    border-radius:14px;
    background:#f6f9ff;
    border:1px solid rgba(19,88,193,.08);
    transition:.25s;
    font-weight:700;
}

.uro-pill:hover{
    background:#1358C1;
    color:#fff;
    transform:translateX(6px);
    box-shadow:0 12px 26px rgba(19,88,193,.25);
}