.btn {
  border-width: 2px;
}
/** INTO THE CSS FUNCTION **/
.display-1 > .mbr-iconfont {
  font-size: 5rem;
}
/** INTO THE CSS FUNCTION **/
.display-4 > .mbr-iconfont {
  font-size: 1.375rem;
}
/** INTO THE CSS FUNCTION **/
/* ---- Fluid typography for mobile devices ---- */
/* 1.4 - font scale ratio ( bootstrap == 1.42857 ) */
/* 100vw - current viewport width */
/* (48 - 20)  48 == 48rem == 768px, 20 == 20rem == 320px(minimal supported viewport) */
/* 0.65 - min scale variable, may vary */
@media (max-width: 992px) {
  .display-1 {
    font-size: 3.2rem;
  }
}
@media (max-width: 768px) {
  .display-1 {
    font-size: 2.8rem;
    font-size: calc( 2.05rem + (4 - 2.05) * ((100vw - 20rem) / (48 - 20)));
    line-height: calc( 1.1 * (2.05rem + (4 - 2.05) * ((100vw - 20rem) / (48 - 20))));
  }
  .display-2 {
    font-size: 2.4rem;
    font-size: calc( 1.7rem + (3 - 1.7) * ((100vw - 20rem) / (48 - 20)));
    line-height: calc( 1.3 * (1.7rem + (3 - 1.7) * ((100vw - 20rem) / (48 - 20))));
  }
  .display-4 {
    font-size: 0.88rem;
    font-size: calc( 1.0350000000000001rem + (1.1 - 1.0350000000000001) * ((100vw - 20rem) / (48 - 20)));
    line-height: calc( 1.4 * (1.0350000000000001rem + (1.1 - 1.0350000000000001) * ((100vw - 20rem) / (48 - 20))));
  }
  .display-5 {
    font-size: 1.6rem;
    font-size: calc( 1.35rem + (2 - 1.35) * ((100vw - 20rem) / (48 - 20)));
    line-height: calc( 1.4 * (1.35rem + (2 - 1.35) * ((100vw - 20rem) / (48 - 20))));
  }
  .display-7 {
    font-size: 0.96rem;
    font-size: calc( 1.07rem + (1.2 - 1.07) * ((100vw - 20rem) / (48 - 20)));
    line-height: calc( 1.4 * (1.07rem + (1.2 - 1.07) * ((100vw - 20rem) / (48 - 20))));
  }
}
/* Buttons */
.btn {
  padding: 0.6rem 1.2rem;
  border-radius: 4px;
}
.btn-sm {
  padding: 0.6rem 1.2rem;
  border-radius: 4px;
}
.btn-md {
  padding: 0.6rem 1.2rem;
  border-radius: 4px;
}
.btn-lg {
  padding: 1rem 2.6rem;
  border-radius: 4px;
}
.bg-primary {
  background-color: #025497 !important;
}
.bg-success {
  background-color: #2fb709 !important;
}
.bg-info {
  background-color: #036983 !important;
}
.bg-warning {
  background-color: #da7212 !important;
}
.bg-danger {
  background-color: #e90404 !important;
}
.bg-dark {
  background-color: #000000 !important;
}
.btn-primary,
.btn-primary:active {
  background-color: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary.active {
  color: #ffffff !important;
  background-color: #000000 !important;
  border-color: #000000 !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.btn-primary.disabled,
.btn-primary:disabled {
  color: #ffffff !important;
  background-color: #000000 !important;
  border-color: #000000 !important;
}
.btn-secondary,
.btn-secondary:active {
  background-color: #ff6666 !important;
  border-color: #ff6666 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary.focus,
.btn-secondary.active {
  color: #ffffff !important;
  background-color: #ff0f0f !important;
  border-color: #ff0f0f !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.btn-secondary.disabled,
.btn-secondary:disabled {
  color: #ffffff !important;
  background-color: #ff0f0f !important;
  border-color: #ff0f0f !important;
}
.btn-info,
.btn-info:active {
  background-color: #47b5ed !important;
  border-color: #47b5ed !important;
  color: #ffffff !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.btn-info:hover,
.btn-info:focus,
.btn-info.focus,
.btn-info.active {
  color: #ffffff !important;
  background-color: #148cca !important;
  border-color: #148cca !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.btn-info.disabled,
.btn-info:disabled {
  color: #ffffff !important;
  background-color: #148cca !important;
  border-color: #148cca !important;
}
/* MSP CUSTOMIZED BUTTON */
.btn-success,
.btn-success:active {
  background-color: #1e5714 !important;
  border-color: #1e5714 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.btn-success:hover,
.btn-success:focus,
.btn-success.focus,
.btn-success.active {
  color: #ffffff !important;
  background-color: #11380b !important;
  border-color: #11380b !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.btn-success.disabled,
.btn-success:disabled {
  color: #ffffff !important;
  background-color: #162b13 !important;
  border-color: #162b13 !important;
}
.btn-warning,
.btn-warning:active {
  background-color: #ffe161 !important;
  border-color: #ffe161 !important;
  color: #614f00 !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning.focus,
.btn-warning.active {
  color: #0a0800 !important;
  background-color: #ffd10a !important;
  border-color: #ffd10a !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.btn-warning.disabled,
.btn-warning:disabled {
  color: #614f00 !important;
  background-color: #ffd10a !important;
  border-color: #ffd10a !important;
}
.btn-danger,
.btn-danger:active {
  background-color: #ff0000 !important;
  border-color: #ff0000 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger.focus,
.btn-danger.active {
  color: #ffffff !important;
  background-color: #b30000 !important;
  border-color: #b30000  !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.btn-danger.disabled,
.btn-danger:disabled {
  color: #ffffff !important;
  background-color: #ff5f0f !important;
  border-color: #ff5f0f !important;
}
.btn-white,
.btn-white:active {
  background-color: #fafafa !important;
  border-color: #fafafa !important;
  color: #7a7a7a !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.btn-white:hover,
.btn-white:focus,
.btn-white.focus,
.btn-white.active {
  color: #4f4f4f !important;
  background-color: #cfcfcf !important;
  border-color: #cfcfcf !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.btn-white.disabled,
.btn-white:disabled {
  color: #7a7a7a !important;
  background-color: #cfcfcf !important;
  border-color: #cfcfcf !important;
}
.btn-black,
.btn-black:active {
  background-color: #232323 !important;
  border-color: #232323 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.btn-black:hover,
.btn-black:focus,
.btn-black.focus,
.btn-black.active {
  color: #ffffff !important;
  background-color: #000000 !important;
  border-color: #000000 !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
}
.btn-black.disabled,
.btn-black:disabled {
  color: #ffffff !important;
  background-color: #000000 !important;
  border-color: #000000 !important;
}
.btn-primary-outline,
.btn-primary-outline:active {
  background-color: transparent !important;
  border-color: #000000;
  color: #000000;
}
.btn-primary-outline:hover,
.btn-primary-outline:focus,
.btn-primary-outline.focus,
.btn-primary-outline.active {
  color: #000000 !important;
  background-color: transparent!important;
  border-color: #000000 !important;
  box-shadow: none!important;
}
.btn-primary-outline.disabled,
.btn-primary-outline:disabled {
  color: #ffffff !important;
  background-color: #000000 !important;
  border-color: #000000 !important;
}
.btn-secondary-outline,
.btn-secondary-outline:active {
  background-color: transparent !important;
  border-color: #ff6666;
  color: #ff6666;
}
.btn-secondary-outline:hover,
.btn-secondary-outline:focus,
.btn-secondary-outline.focus,
.btn-secondary-outline.active {
  color: #ff0f0f !important;
  background-color: transparent!important;
  border-color: #ff0f0f !important;
  box-shadow: none!important;
}
.btn-secondary-outline.disabled,
.btn-secondary-outline:disabled {
  color: #ffffff !important;
  background-color: #ff6666 !important;
  border-color: #ff6666 !important;
}
.btn-info-outline,
.btn-info-outline:active {
  background-color: transparent !important;
  border-color: #47b5ed;
  color: #47b5ed;
}
.btn-info-outline:hover,
.btn-info-outline:focus,
.btn-info-outline.focus,
.btn-info-outline.active {
  color: #148cca !important;
  background-color: transparent!important;
  border-color: #148cca !important;
  box-shadow: none!important;
}
.btn-info-outline.disabled,
.btn-info-outline:disabled {
  color: #ffffff !important;
  background-color: #47b5ed !important;
  border-color: #47b5ed !important;
}
.btn-success-outline,
.btn-success-outline:active {
  background-color: transparent !important;
  border-color: #40b0bf;
  color: #40b0bf;
}
.btn-success-outline:hover,
.btn-success-outline:focus,
.btn-success-outline.focus,
.btn-success-outline.active {
  color: #2a747e !important;
  background-color: transparent!important;
  border-color: #2a747e !important;
  box-shadow: none!important;
}
.btn-success-outline.disabled,
.btn-success-outline:disabled {
  color: #ffffff !important;
  background-color: #40b0bf !important;
  border-color: #40b0bf !important;
}
.btn-warning-outline,
.btn-warning-outline:active {
  background-color: transparent !important;
  border-color: #ffe161;
  color: #ffe161;
}
.btn-warning-outline:hover,
.btn-warning-outline:focus,
.btn-warning-outline.focus,
.btn-warning-outline.active {
  color: #ffd10a !important;
  background-color: transparent!important;
  border-color: #ffd10a !important;
  box-shadow: none!important;
}
.btn-warning-outline.disabled,
.btn-warning-outline:disabled {
  color: #614f00 !important;
  background-color: #ffe161 !important;
  border-color: #ffe161 !important;
}
.btn-danger-outline,
.btn-danger-outline:active {
  background-color: transparent !important;
  border-color: #ff9966;
  color: #ff9966;
}
.btn-danger-outline:hover,
.btn-danger-outline:focus,
.btn-danger-outline.focus,
.btn-danger-outline.active {
  color: #ff5f0f !important;
  background-color: transparent!important;
  border-color: #ff5f0f !important;
  box-shadow: none!important;
}
.btn-danger-outline.disabled,
.btn-danger-outline:disabled {
  color: #ffffff !important;
  background-color: #ff9966 !important;
  border-color: #ff9966 !important;
}
.btn-black-outline,
.btn-black-outline:active {
  background-color: transparent !important;
  border-color: #232323;
  color: #232323;
}
.btn-black-outline:hover,
.btn-black-outline:focus,
.btn-black-outline.focus,
.btn-black-outline.active {
  color: #000000 !important;
  background-color: transparent!important;
  border-color: #000000 !important;
  box-shadow: none!important;
}
.btn-black-outline.disabled,
.btn-black-outline:disabled {
  color: #ffffff !important;
  background-color: #232323 !important;
  border-color: #232323 !important;
}
.btn-white-outline,
.btn-white-outline:active {
  background-color: transparent !important;
  border-color: #fafafa;
  color: #fafafa;
}
.btn-white-outline:hover,
.btn-white-outline:focus,
.btn-white-outline.focus,
.btn-white-outline.active {
  color: #cfcfcf !important;
  background-color: transparent!important;
  border-color: #cfcfcf !important;
  box-shadow: none!important;
}
.btn-white-outline.disabled,
.btn-white-outline:disabled {
  color: #7a7a7a !important;
  background-color: #fafafa !important;
  border-color: #fafafa !important;
}
.text-primary {
  color: #000000 !important;
}
.text-secondary {
  color: #ff6666 !important;
}
.text-success {
  color: #40b0bf !important;
}
.text-info {
  color: #47b5ed !important;
}
.text-warning {
  color: #ffe161 !important;
}
.text-danger {
  color: #ff9966 !important;
}
.text-white {
  color: #fafafa !important;
}
.text-black {
  color: #232323 !important;
}
.text-dark {
  color: #000000 !important;
}
a.text-primary:hover,
a.text-primary:focus,
a.text-primary.active {
  color: #000000 !important;
}
a.text-secondary:hover,
a.text-secondary:focus,
a.text-secondary.active {
  color: #ff0000 !important;
}
a.text-success:hover,
a.text-success:focus,
a.text-success.active {
  color: #266a73 !important;
}
a.text-info:hover,
a.text-info:focus,
a.text-info.active {
  color: #1283bc !important;
}
a.text-warning:hover,
a.text-warning:focus,
a.text-warning.active {
  color: #facb00 !important;
}
a.text-danger:hover,
a.text-danger:focus,
a.text-danger.active {
  color: #ff5500 !important;
}
a.text-white:hover,
a.text-white:focus,
a.text-white.active {
  color: #c7c7c7 !important;
}
a.text-black:hover,
a.text-black:focus,
a.text-black.active {
  color: #000000 !important;
}
a[class*="text-"]:not(.nav-link):not(.dropdown-item):not([role]):not(.navbar-caption) {
  position: relative;
  background-image: transparent;
  background-size: 10000px 2px;
  background-repeat: no-repeat;
  background-position: 0px 1.2em;
  background-position: -10000px 1.2em;
}
a[class*="text-"]:not(.nav-link):not(.dropdown-item):not([role]):not(.navbar-caption):hover {
  transition: background-position 2s ease-in-out;
  background-image: linear-gradient(currentColor 50%, currentColor 50%);
  background-position: 0px 1.2em;
}
.nav-tabs .nav-link.active {
  color: #000000;
}
.nav-tabs .nav-link:not(.active) {
  color: #232323;
}
.alert-success {
  background-color: #70c770;
}
.alert-info {
  background-color: #47b5ed;
}
.alert-warning {
  background-color: #ffe161;
}
.alert-danger {
  background-color: #ff9966;
}
.alert-dark {
  background-color: #000000;
}
.mbr-section-btn a.btn:not(.btn-form) {
  border-radius: 100px;
}
.mbr-gallery-filter li a {
  border-radius: 100px !important;
}
.mbr-gallery-filter li.active .btn {
  background-color: #000000;
  border-color: #000000;
  color: #ffffff;
}
.mbr-gallery-filter li.active .btn:focus {
  box-shadow: none;
}
.nav-tabs .nav-link {
  border-radius: 100px !important;
}
a,
a:hover {
  color: #000000;
}
.mbr-plan-header.bg-primary .mbr-plan-subtitle,
.mbr-plan-header.bg-primary .mbr-plan-price-desc {
  color: #b3b3b3;
}
.mbr-plan-header.bg-success .mbr-plan-subtitle,
.mbr-plan-header.bg-success .mbr-plan-price-desc {
  color: #a0d8df;
}
.mbr-plan-header.bg-info .mbr-plan-subtitle,
.mbr-plan-header.bg-info .mbr-plan-price-desc {
  color: #ffffff;
}
.mbr-plan-header.bg-warning .mbr-plan-subtitle,
.mbr-plan-header.bg-warning .mbr-plan-price-desc {
  color: #ffffff;
}
.mbr-plan-header.bg-danger .mbr-plan-subtitle,
.mbr-plan-header.bg-danger .mbr-plan-price-desc {
  color: #ffffff;
}
/* Scroll to top button*/
#scrollToTop a {
  border-radius: 100px;
}
/** INTO THE CSS FUNCTION **/
.form-control > .mbr-iconfont {
  font-size: 1.375rem;
}
.form-control:hover,
.form-control:focus {
  box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 1px 0px, rgba(0, 0, 0, 0.07) 0px 1px 3px 0px, rgba(0, 0, 0, 0.03) 0px 0px 0px 1px;
  border-color: #000000 !important;
}
/** INTO THE CSS FUNCTION **/
.form-control:-webkit-input-placeholder > .mbr-iconfont {
  font-size: 1.375rem;
}
blockquote {
  border-color: #000000;
}
/* Forms */
.mbr-form .input-group-btn a.btn {
  border-radius: 100px !important;
}
.mbr-form .input-group-btn a.btn:hover {
  box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.2);
}
.mbr-form .input-group-btn button[type="submit"] {
  border-radius: 100px !important;
  padding: 1rem 3rem;
}
.mbr-form .input-group-btn button[type="submit"]:hover {
  box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.2);
}
.jq-selectbox li:hover,
.jq-selectbox li.selected {
  background-color: #000000;
  color: #ffffff;
}
.jq-number__spin {
  transition: 0.25s ease;
}
.jq-number__spin:hover {
  border-color: #000000;
}
.jq-selectbox .jq-selectbox__trigger-arrow,
.jq-number__spin.minus:after,
.jq-number__spin.plus:after {
  transition: 0.4s;
  border-top-color: #353535;
  border-bottom-color: #353535;
}
.jq-selectbox:hover .jq-selectbox__trigger-arrow,
.jq-number__spin.minus:hover:after,
.jq-number__spin.plus:hover:after {
  border-top-color: #000000;
  border-bottom-color: #000000;
}
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div.xdsoft_current {
  color: #ffffff !important;
  background-color: #000000 !important;
  box-shadow: none !important;
}
.xdsoft_datetimepicker .xdsoft_calendar td:hover,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div:hover {
  color: #000000 !important;
  background: #ff6666 !important;
  box-shadow: none !important;
}
.lazy-bg {
  background-image: none !important;
}
.lazy-placeholder:not(section),
.lazy-none {
  display: block;
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
  height: auto;
}
iframe.lazy-placeholder,
.lazy-placeholder:after {
  content: '';
  position: absolute;
  width: 200px;
  height: 200px;
  background: transparent no-repeat center;
  background-size: contain;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='32' height='32' viewBox='0 0 64 64' xmlns='http://www.w3.org/2000/svg' stroke='%23000000' %3e%3cg fill='none' fill-rule='evenodd'%3e%3cg transform='translate(16 16)' stroke-width='2'%3e%3ccircle stroke-opacity='.5' cx='16' cy='16' r='16'/%3e%3cpath d='M32 16c0-9.94-8.06-16-16-16'%3e%3canimateTransform attributeName='transform' type='rotate' from='0 16 16' to='360 16 16' dur='1s' repeatCount='indefinite'/%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e");
}
section.lazy-placeholder:after {
  opacity: 0.5;
}
body {
  overflow-x: hidden;
}
a {
  transition: color 0.6s;
}
*:focus-visible {
  outline: red solid 2px !important;
  outline-offset: 2px !important;
  transition: outline 0.2s ease-in-out;
}
.cid-sFzxmVl7J6 {
  padding-top: 10rem;
  padding-bottom: 10rem;
  background-color: #ffffff;
}
.cid-sFzxmVl7J6 .row {
  flex-direction: row-reverse;
}
@media (max-width: 991px) {
  .cid-sFzxmVl7J6 .image-wrapper {
    margin-bottom: 2rem;
  }
}
.cid-sFzxmVl7J6 .image-wrapper img {
  width: 100%;
  object-fit: cover;
}
@media (min-width: 992px) {
  .cid-sFzxmVl7J6 .text-wrapper {
    padding: 0 2rem;
  }
}
@media (max-width: 768px) {
  .cid-sFzxmVl7J6 .text-wrapper {
    margin-bottom: 2rem;
  }
}
.cid-sFzxmVl7J6 .mbr-text,
.cid-sFzxmVl7J6 .mbr-section-btn {
  color: #353535;
}
.cid-sFzyUE9AaP {
  padding-top: 8rem;
  padding-bottom: 9rem;
  background-color: #ffffff;
}
@media (min-width: 1500px) {
  .cid-sFzyUE9AaP .container {
    max-width: 1400px;
  }
}
.cid-sFzyUE9AaP .mbr-iconfont {
  display: block;
  font-size: 5rem;
  color: #4479d9;
  margin-bottom: 2rem;
}
.cid-sFzyUE9AaP .card-wrapper {
  margin-top: 3rem;
}
.cid-sFzyUE9AaP .row {
  justify-content: center;
}
.cid-sFzyUE9AaP .card-title,
.cid-sFzyUE9AaP .iconfont-wrapper {
  color: #000000;
}
.cid-sFzyUE9AaP .card-text {
  color: #000000;
}
.cid-sFzyUE9AaP .mbr-section-title {
  color: #000000;
}
.cid-sFzz5E692j {
  padding-top: 8rem;
  padding-bottom: 8rem;
  background-color: #ffffff;
}
@media (max-width: 991px) {
  .cid-sFzz5E692j .image-wrapper {
    margin-bottom: 2rem;
  }
}
.cid-sFzz5E692j .image-wrapper img {
  width: 100%;
  object-fit: cover;
}
@media (min-width: 992px) {
  .cid-sFzz5E692j .text-wrapper {
    padding: 0 2rem;
  }
}
@media (max-width: 768px) {
  .cid-sFzz5E692j .text-wrapper {
    margin-bottom: 2rem;
  }
}
.cid-sFzFvgBfc0 {
  padding-top: 6rem;
  padding-bottom: 4rem;
  background-color: #ffffff;
}
.cid-sFzFvgBfc0 img,
.cid-sFzFvgBfc0 .item-img {
  width: 100%;
}
.cid-sFzFvgBfc0 .item:focus,
.cid-sFzFvgBfc0 span:focus {
  outline: none;
}
.cid-sFzFvgBfc0 .item {
  cursor: pointer;
  margin-bottom: 2rem;
}
.cid-sFzFvgBfc0 .item-wrapper {
  position: relative;
  border-radius: 4px;
  background: #ffffff;
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
}
@media (min-width: 992px) {
  .cid-sFzFvgBfc0 .item-wrapper .item-content {
    padding: 2rem 2rem 0;
  }
  .cid-sFzFvgBfc0 .item-wrapper .item-footer {
    padding: 0 2rem 2rem;
  }
}
@media (max-width: 991px) {
  .cid-sFzFvgBfc0 .item-wrapper .item-content {
    padding: 1rem 1rem 0;
  }
  .cid-sFzFvgBfc0 .item-wrapper .item-footer {
    padding: 0 1rem 1rem;
  }
}
.cid-sFzFvgBfc0 .mbr-section-btn {
  margin-top: auto !important;
}
.cid-sFzFvgBfc0 .mbr-section-title {
  color: #000000;
}
.cid-sFzFvgBfc0 .mbr-text,
.cid-sFzFvgBfc0 .mbr-section-btn {
  text-align: left;
}
.cid-sFzFvgBfc0 .item-title {
  text-align: left;
}
.cid-sFzFvgBfc0 .item-subtitle {
  text-align: left;
}
.cid-vbC1SwmKP1 {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbC1SwmKP1 .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC1SwmKP1 .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC1SwmKP1 .row {
  margin-left: 0;
  margin-right: 0;
}
.cid-vbC1SwmKP1 .item {
  padding-left: 0;
  padding-right: 0;
}
.cid-vbC1SwmKP1 .item-wrapper {
  height: 100%;
  position: relative;
}
.cid-vbC1SwmKP1 .item-wrapper img {
  height: 100%;
  object-fit: cover;
}
.cid-vbC1SwmKP1 .item-wrapper .icon-wrapper {
  pointer-events: none;
  position: absolute;
  width: 60px;
  height: 60px;
  font-size: 22px;
  left: 50%;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #ffffff;
  border-radius: 50%;
  opacity: 0;
  color: #ffffff;
  transform: translateX(-50%) translateY(-50%);
  background-color: #1b1b1b;
  transition: 0.2s;
}
.cid-vbC1SwmKP1 .item-wrapper:hover .icon-wrapper {
  opacity: 0.7;
}
.cid-vbC1SwmKP1 .carousel-control,
.cid-vbC1SwmKP1 .close {
  background: #1b1b1b;
}
.cid-vbC1SwmKP1 .carousel-control-prev {
  margin-left: 2.5rem;
}
.cid-vbC1SwmKP1 .carousel-control-prev span {
  margin-right: 5px;
}
.cid-vbC1SwmKP1 .carousel-control-next {
  margin-right: 2.5rem;
}
.cid-vbC1SwmKP1 .carousel-control-next span {
  margin-left: 5px;
}
.cid-vbC1SwmKP1 .close {
  position: fixed;
  opacity: 0.5;
  font-size: 22px;
  font-weight: 300;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  color: #fff;
  top: 2.5rem;
  right: 2.5rem;
  border: 2px solid #fff;
  text-shadow: none;
  z-index: 5;
  transition: opacity 0.3s ease;
  font-family: 'Moririse2';
  align-items: center;
  justify-content: center;
  display: flex;
}
.cid-vbC1SwmKP1 .close::before {
  content: '\e91a';
}
.cid-vbC1SwmKP1 .close:hover {
  opacity: 1;
  background: #000;
  color: #fff;
}
.cid-vbC1SwmKP1 .carousel-control {
  display: flex;
  top: 50%;
  width: 60px;
  height: 60px;
  margin-top: -1.5rem;
  font-size: 22px;
  background-color: rgba(0, 0, 0, 0.5);
  border: 2px solid #fff;
  border-radius: 50%;
  transition: all 0.3s;
}
.cid-vbC1SwmKP1 .carousel-control.carousel-control-prev {
  left: 0;
  margin-left: 2.5rem;
}
.cid-vbC1SwmKP1 .carousel-control.carousel-control-next {
  right: 0;
  margin-right: 2.5rem;
}
@media (max-width: 767px) {
  .cid-vbC1SwmKP1 .carousel-control {
    top: auto;
    bottom: 1rem;
  }
}
.cid-vbC1SwmKP1 .carousel-indicators {
  position: absolute;
  bottom: 0;
  margin-bottom: 3px;
}
.cid-vbC1SwmKP1 .carousel-indicators li {
  max-width: 15px;
  height: 15px;
  width: 15px;
  max-height: 15px;
  margin: 3px;
  background-color: rgba(0, 0, 0, 0.5);
  border: 2px solid #fff;
  border-radius: 50%;
  opacity: 0.5;
  transition: all 0.3s;
}
.cid-vbC1SwmKP1 .carousel-indicators li.active,
.cid-vbC1SwmKP1 .carousel-indicators li:hover {
  opacity: 0.9;
}
.cid-vbC1SwmKP1 .carousel-indicators li::after,
.cid-vbC1SwmKP1 .carousel-indicators li::before {
  content: none;
}
.cid-vbC1SwmKP1 .carousel-indicators.ie-fix {
  left: 50%;
  display: block;
  width: 60%;
  margin-left: -30%;
  text-align: center;
}
@media (max-width: 768px) {
  .cid-vbC1SwmKP1 .carousel-indicators {
    display: none !important;
  }
}
@media (max-width: 991px) {
  .cid-vbC1SwmKP1 .carousel-indicators {
    margin-bottom: 3.625rem !important;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
@media (max-width: 767px) {
  .cid-vbC1SwmKP1 .carousel-indicators {
    display: none;
  }
}
.cid-vbC1SwmKP1 .carousel-inner {
  display: flex;
  align-items: center;
}
.cid-vbC1SwmKP1 .carousel-inner > .active {
  display: block;
}
.cid-vbC1SwmKP1 .carousel-control.left {
  left: 0;
  margin-left: 2.5rem;
}
.cid-vbC1SwmKP1 .carousel-control.right {
  right: 0;
  margin-right: 2.5rem;
}
.cid-vbC1SwmKP1 .carousel-control:hover {
  background: #1b1b1b;
  color: #fff;
  opacity: 1;
}
@media (max-width: 768px) {
  .cid-vbC1SwmKP1 .carousel-control,
  .cid-vbC1SwmKP1 .carousel-indicators,
  .cid-vbC1SwmKP1 .modal .close {
    position: fixed;
  }
}
@media (max-width: 767px) {
  .cid-vbC1SwmKP1 .mbr-slider .carousel-control {
    top: auto;
    bottom: 20px;
  }
  .cid-vbC1SwmKP1 .mbr-slider > .container .carousel-control {
    margin-bottom: 0;
  }
}
.cid-vbC1SwmKP1 .carousel-indicators .active,
.cid-vbC1SwmKP1 .carousel-indicators li {
  width: 7px;
  height: 7px;
  margin: 3px;
  background: #000000;
  opacity: 0.5;
  border: 4px solid #000000;
}
.cid-vbC1SwmKP1 .carousel-indicators .active {
  background: #fff;
}
.cid-vbC1SwmKP1 .carousel-indicators li {
  max-width: 15px;
  max-height: 15px;
  border-radius: 50%;
}
.cid-vbC1SwmKP1 .modal {
  padding-left: 0 !important;
  position: fixed;
  overflow: hidden;
  padding-right: 0 !important;
}
.cid-vbC1SwmKP1 .modal-dialog {
  margin: 0 auto;
  max-width: 100%;
  padding-left: 1rem;
  padding-right: 1rem;
}
.cid-vbC1SwmKP1 .modal-content {
  border-radius: 0;
  border: none;
  background: transparent;
}
.cid-vbC1SwmKP1 .modal-body {
  padding: 0;
  display: flex;
  align-items: center;
}
.cid-vbC1SwmKP1 .modal-body img {
  width: 100%;
  object-fit: contain;
  max-height: calc(100vh - 1.75rem);
}
.cid-vbC1SwmKP1 .carousel {
  width: 100%;
}
.cid-vbC1SwmKP1 .modal-backdrop.in {
  opacity: 0.8;
}
.cid-vbC1SwmKP1 .modal.fade .modal-dialog {
  transition: margin-top 0.3s ease-out;
}
.cid-vbC1SwmKP1 .modal.fade .modal-dialog,
.cid-vbC1SwmKP1 .modal.in .modal-dialog {
  transform: none;
}
.cid-vbC1SwmKP1 .mbr-gallery .item-wrapper {
  cursor: pointer;
}
.cid-vbC1SwmKP1 H6 {
  text-align: center;
}
.cid-vbC0IcTwaj {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbC0IcTwaj .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC0IcTwaj .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
@media (max-width: 991px) {
  .cid-vbC0IcTwaj .image-wrapper {
    margin-bottom: 1rem;
  }
}
.cid-vbC0IcTwaj .row {
  flex-direction: row-reverse;
}
.cid-vbC0IcTwaj img {
  width: 100%;
}
.cid-vbC1gR2B16 {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
}
.cid-vbC1gR2B16 .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC1gR2B16 .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC1wU96ez {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
}
.cid-vbC1AA5b6h {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
}
.cid-vbC2CMHZFa {
  padding-top: 0rem;
  padding-bottom: 0rem;
  background-color: #ffe161;
}
@media (min-width: 991px) {
  .cid-vbC2CMHZFa .container-fluid {
    padding-left: 0;
  }
}
.cid-vbC2CMHZFa .mbr-text,
.cid-vbC2CMHZFa .mbr-section-btn {
  color: #232323;
}
@media (max-width: 991px) {
  .cid-vbC2CMHZFa .mbr-text,
  .cid-vbC2CMHZFa .mbr-section-btn {
    text-align: center;
  }
}
@media (max-width: 991px) {
  .cid-vbC2CMHZFa .mbr-text,
  .cid-vbC2CMHZFa .mbr-section-title {
    text-align: center;
  }
}
.cid-vbC2CMHZFa a.btn {
  height: 100%;
  margin: 0;
}
.cid-vbC2CMHZFa .mbr-section-btn {
  display: flex;
  margin-bottom: 1rem;
  width: 100%;
}
.cid-vbC2CMHZFa .mbr-section-btn .btn {
  width: 100%;
}
@media (max-width: 991px) {
  .cid-vbC2CMHZFa .image-wrapper {
    margin-bottom: 2rem;
  }
}
.cid-vbC2CMHZFa .justify-content-center {
  align-items: center;
}
.cid-sFAZRnJnnI {
  padding-top: 7rem;
  padding-bottom: 7rem;
  background-color: #ffffff;
}
.cid-sFzIdnt1ra {
  padding-top: 8rem;
  padding-bottom: 1rem;
  background-color: #ffffff;
}
.cid-sFzDdjoEIw {
  padding-top: 0rem;
  padding-bottom: 10rem;
  background: #ffffff;
}
.cid-sFzDdjoEIw .list-group-item {
  background-color: transparent;
  padding: .5rem 3.25rem;
}
.cid-sFzDdjoEIw .plan-body {
  padding-bottom: 2rem;
}
.cid-sFzDdjoEIw .plan-header {
  padding-top: 2rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
.cid-sFzDdjoEIw .price {
  color: #4479d9;
}
.cid-sFzDdjoEIw .plan {
  word-break: break-word;
  background-color: #ffffff;
}
.cid-sFzDdjoEIw .plan .list-group-item {
  position: relative;
  justify-content: center;
  border: 0;
}
.cid-sFzDdjoEIw .plan .list-group-item::after {
  position: absolute;
  bottom: 1px;
  left: 25%;
  width: 50%;
  height: 1px;
  content: "";
  background-color: rgba(0, 0, 0, 0.1);
}
.cid-sFzDdjoEIw .plan .list-group-item:last-child::after {
  display: none;
}
@media (max-width: 991px) {
  .cid-sFzDdjoEIw .plan {
    margin-bottom: 2rem;
  }
}
.cid-sFzErVWEaH {
  padding-top: 6rem;
  padding-bottom: 8rem;
  background: #ffffff;
}
.cid-sFzErVWEaH .team-card {
  margin-bottom: 2rem;
  transition: all 0.3s;
}
.cid-sFzErVWEaH .team-card:hover {
  transform: translateY(-10px);
}
.cid-sFzErVWEaH .card-wrap {
  background: #fafafa;
  border-radius: 4px;
}
@media (max-width: 991px) {
  .cid-sFzErVWEaH .card-wrap {
    margin-bottom: 2rem;
  }
}
.cid-sFzErVWEaH .card-wrap .image-wrap img {
  width: 100%;
}
@media (min-width: 768px) {
  .cid-sFzErVWEaH .card-wrap .content-wrap {
    padding: 2rem;
  }
}
@media (max-width: 767px) {
  .cid-sFzErVWEaH .card-wrap .content-wrap {
    padding: 1rem;
  }
}
.cid-sFzErVWEaH .social-row {
  text-align: center;
}
.cid-sFzErVWEaH .social-row .soc-item {
  display: inline-block;
  text-align: center;
  border-radius: 50%;
  margin-right: 0.6rem;
  margin-bottom: 1rem;
  padding: 0.5rem;
  border: 2px solid #6592e6;
  transition: all 0.3s;
}
.cid-sFzErVWEaH .social-row .soc-item .mbr-iconfont {
  transition: all 0.3s;
  display: flex;
  justify-content: center;
  align-content: center;
  color: #6592e6;
  font-size: 1.5rem;
}
.cid-sFzErVWEaH .social-row .soc-item:hover {
  background-color: #6592e6;
}
.cid-sFzErVWEaH .social-row .soc-item:hover .mbr-iconfont {
  color: #ffffff;
}
.cid-sFzErVWEaH .mbr-section-title {
  color: #000000;
}
.cid-sFzErVWEaH .mbr-section-title1 {
  color: #000000;
}
.cid-sFAw7z51L3 {
  padding-top: 10rem;
  padding-bottom: 10rem;
  background-color: #ffffff;
}
.cid-sFAw7z51L3 img {
  width: 120px;
  margin: auto;
}
.cid-sFAw7z51L3 .card {
  transition: all 0.3s;
  height: fit-content;
  padding: 1rem 0;
  opacity: 0.7;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .cid-sFAw7z51L3 .card {
    max-width: 12.5%;
  }
}
.cid-sFAw7z51L3 .mbr-section-subtitle {
  color: #353535;
}
.cid-sFAyMcKwph {
  padding-top: 120px;
  padding-bottom: 120px;
  background-color: #ffffff;
}
.cid-sFAyMcKwph .media-container-row {
  justify-content: space-between;
}
.cid-sFAyMcKwph .text-content {
  max-width: 50%;
}
@media (max-width: 768px) {
  .cid-sFAyMcKwph .text-content {
    max-width: none;
  }
}
.cid-sFAyMcKwph .mbr-iconfont-social {
  margin: 0.5rem;
  font-size: 32px;
  display: flex;
  border-radius: 50%;
  text-align: center;
  color: #4479d9;
  border: 2px solid #4479d9;
  justify-content: center;
  align-content: center;
  transition: all 0.3s;
}
.cid-sFAyMcKwph .mbr-iconfont-social:before {
  padding: 0.6rem;
}
.cid-sFAyMcKwph .mbr-iconfont-social:hover {
  background-color: #4479d9;
  color: #ffffff;
}
@media (max-width: 768px) {
  .cid-sFAyMcKwph .icons {
    justify-content: center !important;
  }
  .cid-sFAyMcKwph .text-content * {
    text-align: center;
  }
}
.cid-sFAyMcKwph .mbr-section-title {
  color: #353535;
}
.cid-sFAyMcKwph P {
  color: #000000;
}
.cid-vbC34UUibu {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbC34UUibu .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC34UUibu .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC34UUibu .video-wrapper iframe {
  width: 100%;
}
.cid-vbC34UUibu .mbr-section-title,
.cid-vbC34UUibu .mbr-section-subtitle,
.cid-vbC34UUibu .mbr-text {
  text-align: center;
}
.cid-vbC39NSv1E {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbC39NSv1E .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC39NSv1E .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC39NSv1E .video-wrapper iframe {
  width: 100%;
}
.cid-vbC39NSv1E .mbr-section-title,
.cid-vbC39NSv1E .mbr-section-subtitle,
.cid-vbC39NSv1E .mbr-text {
  text-align: center;
}
.cid-sFAyHxWQ1N {
  padding-top: 9rem;
  padding-bottom: 9rem;
  background-color: #ffffff;
}
.cid-sFAyHxWQ1N .item {
  display: flex;
  align-items: center;
  flex-direction: column;
}
.cid-sFAyHxWQ1N .item .icon-wrap {
  text-align: center;
}
.cid-sFAyHxWQ1N .item span {
  font-size: 2rem;
  color: #ffffff;
  line-height: 60px;
}
.cid-sFAyHxWQ1N .item::before {
  content: "\e96b";
  font-family: Moririse2 !important;
  position: absolute;
  font-size: 32px;
  left: -15px;
  top: 12%;
  color: #4479d9;
}
.cid-sFAyHxWQ1N .item.first:before {
  display: none;
}
.cid-sFAyHxWQ1N .item.five:before {
  display: none;
}
.cid-sFAyHxWQ1N .icon-box {
  background: #4479d9;
  width: 60px;
  min-width: 60px;
  height: 60px;
  border-radius: 50%;
  text-align: center;
  display: inline-block;
}
.cid-sFAyHxWQ1N .text-box {
  margin-top: 1rem;
  text-align: center;
}
.cid-sFAyHxWQ1N .mbr-iconfont {
  color: #000000 !important;
  position: absolute;
  top: 50%;
  left: 100%;
}
@media (max-width: 991px) {
  .cid-sFAyHxWQ1N .item:before {
    display: none;
  }
  .cid-sFAyHxWQ1N .card-wrapper {
    margin-bottom: 2rem;
  }
}
.cid-vbC3nzjh82 {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
}
.cid-vbC3nzjh82 .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC3nzjh82 .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC3nzjh82 .mbr-iconfont {
  display: block;
  font-size: 4rem;
  color: #000000;
  margin-bottom: 2rem;
}
.cid-vbC3nzjh82 .item-wrapper {
  min-height: 220px;
  transition: all 0.3s;
  border-radius: 4px;
  padding: 1rem;
  background: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.cid-vbCc70iGGs {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbCc70iGGs .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbCc70iGGs .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbCc70iGGs .card-box {
  padding: 2rem;
  width: 58.33%;
}
.cid-vbCc70iGGs .img-wrapper {
  width: 41.66%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.cid-vbCc70iGGs .img1 {
  background: #ffe161;
}
.cid-vbCc70iGGs .img2 {
  background: #6592e6;
}
.cid-vbCc70iGGs .mbr-iconfont {
  display: block;
  font-size: 8rem;
  color: #ffffff;
  margin-bottom: 2rem;
}
.cid-vbCc70iGGs .card {
  margin: auto;
  min-height: 280px;
  transition: all 0.3s;
}
.cid-vbCc70iGGs .card-wrapper {
  background: #fafafa;
  border-radius: 4px;
  display: flex;
  overflow: hidden;
  justify-content: space-between;
}
@media (max-width: 992px) {
  .cid-vbCc70iGGs .card-wrapper {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767px) {
  .cid-vbCc70iGGs .card-wrapper {
    flex-direction: column;
  }
  .cid-vbCc70iGGs .card-box {
    padding: 1rem;
  }
  .cid-vbCc70iGGs .card-box,
  .cid-vbCc70iGGs .img-wrapper {
    width: 100%;
  }
  .cid-vbCc70iGGs .img-wrapper {
    padding: 4rem 1rem;
  }
  .cid-vbCc70iGGs .mbr-flex {
    flex-direction: column-reverse;
  }
}
.cid-vbCc70iGGs .card-subtitle {
  color: #0077ff;
}
.cid-vbCc70iGGs .mbr-text,
.cid-vbCc70iGGs .link-wrap {
  color: #555555;
}
.cid-vbCcaKKSd4 {
  padding-top: 6rem;
  padding-bottom: 6rem;
  /* v2.9.3: was a 2.4 MB PNG photo under an 85% dark overlay -> WebP 118 KB (JPG 214 KB fallback) */
  background-image: url("../../../assets/images/404.jpg");
  background-image: image-set(url("../../../assets/images/404.webp") type("image/webp"), url("../../../assets/images/404.jpg") type("image/jpeg"));
}
.cid-vbCcaKKSd4 .mbr-overlay {
  background: #020202;
  opacity: 0.85;
}
.cid-vbCcaKKSd4 img,
.cid-vbCcaKKSd4 .item-img {
  width: 100%;
  height: 100%;
  height: 300px;
  object-fit: cover;
}
.cid-vbCcaKKSd4 .item:focus,
.cid-vbCcaKKSd4 span:focus {
  outline: none;
}
.cid-vbCcaKKSd4 .item {
  cursor: pointer;
  margin-bottom: 2rem;
}
.cid-vbCcaKKSd4 .item-wrapper {
  position: relative;
  border-radius: 4px;
  background: #ffffff;
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
}
@media (min-width: 992px) {
  .cid-vbCcaKKSd4 .item-wrapper .item-content {
    padding: 2rem 2rem 0;
  }
  .cid-vbCcaKKSd4 .item-wrapper .item-footer {
    padding: 0 2rem 2rem;
  }
}
@media (max-width: 991px) {
  .cid-vbCcaKKSd4 .item-wrapper .item-content {
    padding: 1rem 1rem 0;
  }
  .cid-vbCcaKKSd4 .item-wrapper .item-footer {
    padding: 0 1rem 1rem;
  }
}
.cid-vbCcaKKSd4 .mbr-section-btn {
  margin-top: auto !important;
}
.cid-vbCcaKKSd4 .mbr-section-title {
  color: #232323;
}
.cid-vbCcaKKSd4 .mbr-text,
.cid-vbCcaKKSd4 .mbr-section-btn {
  text-align: left;
}
.cid-vbCcaKKSd4 .item-title {
  text-align: left;
}
.cid-vbCcaKKSd4 .item-subtitle {
  text-align: left;
  color: #bbbbbb;
}
.cid-vbCcbDngnc {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbCcbDngnc img,
.cid-vbCcbDngnc .item-img {
  width: 100%;
}
.cid-vbCcbDngnc .item:focus,
.cid-vbCcbDngnc span:focus {
  outline: none;
}
.cid-vbCcbDngnc .item {
  cursor: pointer;
  margin-bottom: 2rem;
}
.cid-vbCcbDngnc .item-wrapper {
  position: relative;
  border-radius: 4px;
  background: #fafafa;
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
}
@media (min-width: 992px) {
  .cid-vbCcbDngnc .item-wrapper .item-content {
    padding: 2rem 2rem 0;
  }
  .cid-vbCcbDngnc .item-wrapper .item-footer {
    padding: 0 2rem 2rem;
  }
}
@media (max-width: 991px) {
  .cid-vbCcbDngnc .item-wrapper .item-content {
    padding: 1rem 1rem 0;
  }
  .cid-vbCcbDngnc .item-wrapper .item-footer {
    padding: 0 1rem 1rem;
  }
}
.cid-vbCcbDngnc .mbr-section-btn {
  margin-top: auto !important;
}
.cid-vbCcbDngnc .mbr-section-title {
  color: #232323;
}
.cid-vbCcbDngnc .mbr-text,
.cid-vbCcbDngnc .mbr-section-btn {
  text-align: left;
}
.cid-vbCcbDngnc .item-title {
  text-align: left;
}
.cid-vbCcbDngnc .item-subtitle {
  text-align: left;
}
.cid-sFzDs3t9EG {
  padding-top: 8rem;
  padding-bottom: 8rem;
  background-color: #ffffff;
}
.cid-sFzDs3t9EG .mbr-overlay {
  background-color: #ffffff;
  opacity: 0.4;
}
.cid-sFzDs3t9EG form .mbr-section-btn {
  text-align: center;
  width: 100%;
}
.cid-sFzDs3t9EG form .mbr-section-btn .btn {
  display: inline-flex;
}
@media (max-width: 991px) {
  .cid-sFzDs3t9EG form .mbr-section-btn .btn {
    width: 100%;
  }
}
.cid-sFzDs3t9EG .mbr-section-title {
  color: #000000;
}
.cid-sFzDs3t9EG .mbr-section-subtitle {
  color: #000000;
}
.cid-vbCclcihTO {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background: #fafafa;
}
.cid-vbCclcihTO .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbCclcihTO .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbCclcihTO .team-card {
  margin-bottom: 2rem;
  transition: all 0.3s;
}
.cid-vbCclcihTO .team-card:hover {
  transform: translateY(-10px);
}
.cid-vbCclcihTO .card-wrap {
  background: #ffffff;
  border-radius: 4px;
}
@media (max-width: 991px) {
  .cid-vbCclcihTO .card-wrap {
    margin-bottom: 2rem;
  }
}
.cid-vbCclcihTO .card-wrap .image-wrap img {
  width: 100%;
}
@media (min-width: 768px) {
  .cid-vbCclcihTO .card-wrap .content-wrap {
    padding: 2rem;
  }
}
@media (max-width: 767px) {
  .cid-vbCclcihTO .card-wrap .content-wrap {
    padding: 1rem;
  }
}
.cid-vbCclcihTO .social-row {
  text-align: center;
}
.cid-vbCclcihTO .social-row .soc-item {
  display: inline-block;
  text-align: center;
  border-radius: 50%;
  margin-right: 0.6rem;
  margin-bottom: 1rem;
  padding: 0.5rem;
  border: 2px solid #6592e6;
  transition: all 0.3s;
}
.cid-vbCclcihTO .social-row .soc-item .mbr-iconfont {
  transition: all 0.3s;
  display: flex;
  justify-content: center;
  align-content: center;
  color: #6592e6;
  font-size: 1.5rem;
}
.cid-vbCclcihTO .social-row .soc-item:hover {
  background-color: #6592e6;
}
.cid-vbCclcihTO .social-row .soc-item:hover .mbr-iconfont {
  color: #ffffff;
}
.cid-vbCclcihTO .embla__slide {
  display: flex;
  justify-content: center;
  position: relative;
  min-width: 410px;
  max-width: 410px;
}
@media (max-width: 768px) {
  .cid-vbCclcihTO .embla__slide {
    min-width: 70%;
    max-width: initial;
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }
}
.cid-vbCclcihTO .embla__button--next,
.cid-vbCclcihTO .embla__button--prev {
  display: flex;
}
.cid-vbCclcihTO .embla__button {
  top: 50%;
  width: 60px;
  height: 60px;
  margin-top: -1.5rem;
  font-size: 22px;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  border: 2px solid #fff;
  border-radius: 50%;
  transition: all 0.3s;
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 768px) {
  .cid-vbCclcihTO .embla__button {
    display: none;
  }
}
.cid-vbCclcihTO .embla__button:disabled {
  cursor: default;
  display: none;
}
.cid-vbCclcihTO .embla__button:hover {
  background: #000;
  color: rgba(255, 255, 255, 0.5);
}
.cid-vbCclcihTO .embla__button.embla__button--prev {
  left: 0;
  margin-left: 2.5rem;
}
.cid-vbCclcihTO .embla__button.embla__button--next {
  right: 0;
  margin-right: 2.5rem;
}
@media (max-width: 767px) {
  .cid-vbCclcihTO .embla__button {
    top: auto;
  }
}
.cid-vbCclcihTO .embla {
  position: relative;
  width: 100%;
}
.cid-vbCclcihTO .embla__viewport {
  overflow: hidden;
  width: 100%;
}
.cid-vbCclcihTO .embla__viewport.is-draggable {
  cursor: grab;
}
.cid-vbCclcihTO .embla__viewport.is-dragging {
  cursor: grabbing;
}
.cid-vbCclcihTO .embla__container {
  display: flex;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.cid-vbC2KMRM2t {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background: #ffffff;
}
.cid-vbC2KMRM2t .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC2KMRM2t .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
@media (max-width: 767px) {
  .cid-vbC2KMRM2t .row {
    flex-direction: column-reverse;
  }
  .cid-vbC2KMRM2t .row .map-wrapper {
    margin-bottom: 2rem;
  }
}
.cid-vbC2KMRM2t .google-map {
  height: 100%;
  position: relative;
}
.cid-vbC2KMRM2t .google-map iframe {
  height: 100%;
  width: 100%;
}
.cid-vbC2KMRM2t .google-map [data-state-details] {
  color: #6b6763;
  height: 1.5em;
  margin-top: -0.75em;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 100%;
}
.cid-vbC2KMRM2t .google-map[data-state] {
  background: #e9e5dc;
}
.cid-vbC2KMRM2t .google-map[data-state="loading"] [data-state-details] {
  display: none;
}
.cid-vbC2KMRM2t .image-wrapper {
  display: flex;
  align-items: center;
}
.cid-vbC2KMRM2t .card-wrapper {
  display: flex;
  border-radius: 4px;
  background: #fafafa;
}
.cid-vbC2KMRM2t .card-wrapper:not(:nth-last-child(1)) {
  margin-bottom: 2rem;
}
@media (max-width: 991px) {
  .cid-vbC2KMRM2t .card-wrapper {
    padding: 1rem 2rem;
  }
}
@media (min-width: 992px) {
  .cid-vbC2KMRM2t .card-wrapper {
    padding: 2rem 4rem;
  }
}
.cid-vbC2KMRM2t .mbr-iconfont {
  font-size: 2rem;
  padding-right: 1.5rem;
  color: #000000;
}
.cid-vbC3C4BcNO {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbC3C4BcNO .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC3C4BcNO .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC3C4BcNO .content-wrapper {
  background: #ffffff;
}
@media (max-width: 991px) {
  .cid-vbC3C4BcNO .content-wrapper .image-wrapper {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767px) {
  .cid-vbC3C4BcNO .content-wrapper {
    padding: 1rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .cid-vbC3C4BcNO .content-wrapper {
    padding: 2rem;
  }
}
@media (min-width: 992px) {
  .cid-vbC3C4BcNO .content-wrapper {
    padding: 5rem 3rem;
  }
  .cid-vbC3C4BcNO .content-wrapper .text-wrapper {
    padding-left: 2rem;
  }
}
.cid-vbC3C4BcNO .image-wrapper img {
  width: 100%;
  object-fit: cover;
}
.cid-vbC6nd53MK {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #000000;
}
.cid-vbC6nd53MK .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC6nd53MK .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC6nd53MK .mbr-iconfont {
  font-size: 1.4rem !important;
  font-family: 'Moririse2' !important;
  color: #000000;
  margin-left: 1rem;
}
.cid-vbC6nd53MK .panel-group {
  border: none;
}
.cid-vbC6nd53MK .panel-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.cid-vbC6nd53MK .panel-body,
.cid-vbC6nd53MK .card-header {
  padding: 1rem 0;
}
.cid-vbC6nd53MK .panel-title-edit {
  color: #000000;
}
.cid-vbC6nd53MK .card .card-header {
  background-color: transparent;
  margin-bottom: 0;
}
.cid-vbC6yTvLQe {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbC6yTvLQe img,
.cid-vbC6yTvLQe .item-img {
  width: 100%;
}
.cid-vbC6yTvLQe .item:focus,
.cid-vbC6yTvLQe span:focus {
  outline: none;
}
.cid-vbC6yTvLQe .item {
  cursor: pointer;
  margin-bottom: 2rem;
  position: relative;
}
.cid-vbC6yTvLQe .item-wrapper {
  position: unset;
  border-radius: 4px;
  background: #ffffff;
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
}
@media (min-width: 992px) {
  .cid-vbC6yTvLQe .item-wrapper .item-content {
    padding: 2rem 2rem 0;
  }
  .cid-vbC6yTvLQe .item-wrapper .item-footer {
    padding: 0 2rem 2rem;
  }
}
@media (max-width: 991px) {
  .cid-vbC6yTvLQe .item-wrapper .item-content {
    padding: 1rem 1rem 0;
  }
  .cid-vbC6yTvLQe .item-wrapper .item-footer {
    padding: 0 1rem 1rem;
  }
}
.cid-vbC6yTvLQe .mbr-section-btn {
  margin-top: auto !important;
}
.cid-vbC6yTvLQe .mbr-section-title {
  color: #ffffff;
}
.cid-vbC6yTvLQe .mbr-text,
.cid-vbC6yTvLQe .mbr-section-btn {
  text-align: center;
}
.cid-vbC6yTvLQe .item-title {
  text-align: center;
}
.cid-vbC6yTvLQe .item-subtitle {
  text-align: left;
}
.cid-vbC6MuOdV1 {
  background-image: url("../../../assets/images/background3.jpg");
}
.cid-vbC6MuOdV1 .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC6MuOdV1 .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC6MuOdV1 .number-wrap {
  color: #ffffff;
  text-align: center;
}
.cid-vbC6MuOdV1 .number {
  color: #ffffff;
}
.cid-vbC6MuOdV1 .period {
  display: block;
}
.cid-vbC6MuOdV1 .dot {
  display: none;
}
@media (max-width: 767px) {
  .cid-vbC6MuOdV1 .period {
    font-size: 0.8rem;
  }
}
.cid-vbC6MuOdV1 .btn {
  height: 100%;
  margin: 0;
}
.cid-vbC6MuOdV1 .mbr-section-btn {
  margin-bottom: 1.2rem;
}
.cid-vbC6MuOdV1 .mbr-section-title {
  color: #ffffff;
}
.cid-vbC6MuOdV1 .mbr-text {
  color: #ffffff;
}
.cid-vbC6MuOdV1 .icons-menu .soc-item {
  padding-left: 8px;
  padding-right: 8px;
}
.cid-vbC6MuOdV1 .icons-menu .soc-item .mbr-iconfont {
  font-size: 2rem;
  display: flex;
  border-radius: 50%;
  text-align: center;
  color: #ffffff;
  border: 2px solid #ffffff;
  justify-content: center;
  align-content: center;
  transition: all 0.3s;
}
.cid-vbC6MuOdV1 .icons-menu .soc-item .mbr-iconfont:before {
  padding: 0.6rem;
}
.cid-vbC6MuOdV1 .icons-menu .soc-item .mbr-iconfont:hover {
  background-color: #ffffff;
  color: #000000;
}
.cid-vbC3DkP5Je {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #ffffff;
}
.cid-vbC3DkP5Je .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC3DkP5Je .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC3DkP5Je .content-wrapper {
  background: #ffffff;
}
@media (max-width: 991px) {
  .cid-vbC3DkP5Je .content-wrapper .row {
    flex-direction: column-reverse;
  }
  .cid-vbC3DkP5Je .content-wrapper .image-wrapper {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767px) {
  .cid-vbC3DkP5Je .content-wrapper {
    padding: 1rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .cid-vbC3DkP5Je .content-wrapper {
    padding: 2rem;
  }
}
@media (min-width: 992px) {
  .cid-vbC3DkP5Je .content-wrapper {
    padding: 5rem 3rem;
  }
  .cid-vbC3DkP5Je .content-wrapper .text-wrapper {
    padding-right: 2rem;
  }
}
.cid-vbC3DkP5Je .image-wrapper img {
  width: 100%;
  object-fit: cover;
}
.cid-vbCaC6Gen1 {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
}
@media (min-width: 992px) {
  .cid-vbCaC6Gen1 .carousel {
    min-height: 800px;
  }
  .cid-vbCaC6Gen1 .carousel img {
    max-height: 800px;
    object-fit: contain;
  }
}
@media (max-width: 991px) and (min-width: 768px) {
  .cid-vbCaC6Gen1 .carousel {
    min-height: 520px;
  }
  .cid-vbCaC6Gen1 .carousel img {
    max-height: 520px;
    object-fit: contain;
  }
}
@media (max-width: 767px) {
  .cid-vbCaC6Gen1 .carousel {
    min-height: 440px;
  }
  .cid-vbCaC6Gen1 .carousel img {
    max-height: 440px;
    object-fit: contain;
  }
  .cid-vbCaC6Gen1 .container .carousel-control {
    margin-bottom: 0;
  }
  .cid-vbCaC6Gen1 .content-slider-wrap {
    width: 100% !important;
  }
}
.cid-vbCaC6Gen1 .carousel,
.cid-vbCaC6Gen1 .carousel-inner {
  display: flex;
  align-items: center;
}
.cid-vbCaC6Gen1 .item-wrapper {
  width: 100%;
}
.cid-vbCaC6Gen1 .carousel-caption {
  bottom: 40px;
  z-index: 1;
}
.cid-vbCaC6Gen1 .carousel-control:hover {
  background: #1b1b1b;
  color: #fff;
  opacity: 1;
}
.cid-vbCaC6Gen1 .mobi-mbri-arrow-next {
  margin-left: 5px;
}
.cid-vbCaC6Gen1 .mobi-mbri-arrow-prev {
  margin-right: 5px;
}
.cid-vbCaC6Gen1 .container .carousel-indicators {
  margin-bottom: 3px;
}
.cid-vbCaC6Gen1 .carousel-control {
  top: 50%;
  width: 60px;
  height: 60px;
  margin-top: -1.5rem;
  font-size: 22px;
  background-color: rgba(0, 0, 0, 0.5);
  border: 2px solid #fff;
  border-radius: 50%;
  transition: all 0.3s;
}
.cid-vbCaC6Gen1 .carousel-control.carousel-control-prev {
  left: 0;
  margin-left: 2.5rem;
}
.cid-vbCaC6Gen1 .carousel-control.carousel-control-next {
  right: 0;
  margin-right: 2.5rem;
}
@media (max-width: 767px) {
  .cid-vbCaC6Gen1 .carousel-control {
    top: auto;
    bottom: 1rem;
  }
}
.cid-vbCaC6Gen1 .carousel-indicators {
  position: absolute;
  bottom: 0;
  margin-bottom: 1.5rem !important;
}
.cid-vbCaC6Gen1 .carousel-indicators li {
  max-width: 15px;
  height: 15px;
  width: 15px;
  max-height: 15px;
  margin: 3px;
  background-color: rgba(0, 0, 0, 0.5);
  border: 2px solid #fff;
  border-radius: 50%;
  opacity: 0.5;
  transition: all 0.3s;
}
.cid-vbCaC6Gen1 .carousel-indicators li.active,
.cid-vbCaC6Gen1 .carousel-indicators li:hover {
  opacity: 0.9;
}
.cid-vbCaC6Gen1 .carousel-indicators li::after,
.cid-vbCaC6Gen1 .carousel-indicators li::before {
  content: none;
}
.cid-vbCaC6Gen1 .carousel-indicators.ie-fix {
  left: 50%;
  display: block;
  width: 60%;
  margin-left: -30%;
  text-align: center;
}
@media (max-width: 768px) {
  .cid-vbCaC6Gen1 .carousel-indicators {
    display: none !important;
  }
}
.cid-vbC3EZXlTD {
  padding-top: 6rem;
  padding-bottom: 6rem;
  background-color: #4479d9;
}
.cid-vbC3EZXlTD .mbr-fallback-image.disabled {
  display: none;
}
.cid-vbC3EZXlTD .mbr-fallback-image {
  display: block;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.cid-vbC3EZXlTD .mbr-section-title {
  color: #ffffff;
}
.cid-vbC3OabZuk {
  background-color: #ffffff;
}
.cid-vbC3OabZuk .icon-wrapper {
  margin: auto;
  background-color: #6592e6;
  color: #fafafa;
  border-radius: 50%;
  font-size: 48px;
  cursor: pointer;
  width: 6rem;
  height: 6rem;
  transition: all 0.25s;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
.cid-vbC3OabZuk .icon-wrapper span {
  margin-left: 10px;
}
.cid-vbC3OabZuk .modalWindow {
  position: fixed;
  z-index: 5000;
  left: 0;
  top: 0;
  background-color: rgba(61, 61, 61, 0.65);
  width: 100%;
  height: 100%;
}
.cid-vbC3OabZuk .modalWindow .modalWindow-container {
  display: table-cell;
  vertical-align: middle;
}
.cid-vbC3OabZuk .modalWindow .modalWindow-video {
  height: calc(44.9943757vw);
  width: 80vw;
  margin: 0 auto;
}
.cid-vbC3OabZuk .close {
  position: fixed;
  opacity: 0.5;
  font-size: 22px;
  font-weight: 300;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  color: #fff;
  top: 2.5rem;
  right: 2.5rem;
  border: 2px solid #fff;
  text-shadow: none;
  z-index: 5;
  transition: opacity 0.3s ease;
  align-items: center;
  justify-content: center;
  display: flex;
}
.cid-vbC3OabZuk .close:hover {
  opacity: 1;
  background: #000;
  color: #fff;
}
.cid-sFCygHrmNf {
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-color: #000000;
}
.cid-sFCygHrmNf .row-links {
  width: 100%;
  justify-content: center;
}
.cid-sFCygHrmNf .social-row {
  width: 100%;
  justify-content: center;
}
.cid-sFCygHrmNf .row {
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.cid-sFCygHrmNf .row .foot-menu {
  list-style: none;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0;
  margin-bottom: 0;
}
.cid-sFCygHrmNf .row .foot-menu li {
  padding: 0 1rem 1rem 1rem;
}
.cid-sFCygHrmNf .row .foot-menu li p {
  margin: 0;
}
.cid-sFCygHrmNf .row .social-list {
  width: auto;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.cid-sFCygHrmNf .row .social-list .mbr-iconfont-social {
  font-size: 1.5rem;
  color: #ffffff;
}
.cid-sFCygHrmNf .row .social-list .soc-item {
  margin: 0 .5rem;
}
.cid-sFCygHrmNf .row .social-list a {
  margin: 0;
  opacity: .5;
  transition: .2s linear;
}
.cid-sFCygHrmNf .row .social-list a:hover {
  opacity: 1;
}
@media (max-width: 767px) {
  .cid-sFCygHrmNf .row .social-list {
    -webkit-justify-content: center;
    justify-content: center;
  }
}
.cid-sFCygHrmNf .row .row-copirayt {
  word-break: break-word;
  width: 100%;
}
.cid-sFCygHrmNf .row .row-copirayt p {
  width: 100%;
}

/* =========================================================================
 * MSP AUTH PAGES (recovery / reset) - v2.1.0
 * ========================================================================= */
.msp-auth-section {
  background: linear-gradient(to top, #000, #333, #000);
  padding: 200px 20px 120px;
}
.msp-auth-section .msp-auth-card {
  padding-left: 50px;
  padding-right: 50px;
}
.msp-auth-section .msp-auth-submit {
  width: 100%;
  padding: 20px;
}
.msp-auth-section .msp-auth-help {
  color: rgba(255, 255, 255, 0.65);
}
.msp-auth-section .msp-auth-links a {
  color: #ffffff;
  text-decoration: underline;
  margin: 0 6px;
}
.msp-auth-alert {
  margin-bottom: 20px;
  text-shadow: none;
}
/* Honeypot: hidden from people and screen readers, visible to bots. */
.msp-auth-hp {
  position: absolute !important;
  left: -10000px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
@media (max-width: 767.98px) {
  .msp-auth-section {
    padding: 110px 12px 60px;
  }
  .msp-auth-section .msp-auth-card {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media (max-width: 575.98px) {
  .msp-auth-section {
    padding: 90px 10px 40px;
  }
  .msp-auth-section .display-2 {
    font-size: 1.7rem !important;
    line-height: 1.25 !important;
  }
  .msp-auth-section .msp-auth-submit {
    padding: 16px;
  }
}

/* MSP ERROR PAGES - v2.2.0 */
.msp-error-section {
  padding-top: 200px;
  padding-bottom: 160px;
}
.msp-error-section .msp-error-code {
  font-size: 5rem;
  font-weight: 800;
  line-height: 1;
  opacity: 0.35;
  color: #ffffff;
}
@media (max-width: 575.98px) {
  .msp-error-section {
    padding-top: 110px;
    padding-bottom: 80px;
  }
  .msp-error-section .msp-error-code {
    font-size: 3.5rem;
  }
}

/* MSP INSTITUTIONAL PAGES (cookies / social) - v2.2.0 */
.msp-page-text,
.msp-page-text p,
.msp-page-text h2 {
  color: #ffffff;
}
.msp-social-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 28px 16px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
  color: #ffffff;
  text-decoration: none;
  transition: transform 0.18s ease, background 0.18s ease;
}
.msp-social-card:hover,
.msp-social-card:focus {
  transform: translateY(-3px);
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
}
.msp-social-card .iconify {
  width: 42px;
  height: 42px;
}
.msp-social-card small {
  opacity: 0.7;
  word-break: break-all;
}

/* MSP MY SUBSCRIPTIONS - v2.2.1 */
.msp-subs-section {
  background-color: #000000;
  padding: 200px 0 240px;
}
.msp-subs-section .breadcrumb a,
.msp-subs-section .breadcrumb-item.active {
  color: #ffffff;
}
.msp-subs-card {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  padding: 20px 22px;
  margin-bottom: 16px;
  color: #ffffff;
}
.msp-subs-muted {
  color: rgba(255, 255, 255, 0.6);
}
.msp-subs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 12px;
  margin: 16px 0;
}
.msp-subs-grid dt {
  font-size: 0.75rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.6);
}
.msp-subs-grid dd {
  margin: 0;
  font-weight: 600;
}
@media (max-width: 575.98px) {
  .msp-subs-section {
    padding: 100px 0 80px;
  }
}

/* =========================================================================
 * MSP STANDARD PAGE TITLE - v2.2.2
 * Fixed scale instead of the fluid .display-2, so titles never grow past the
 * screen or hide behind the fixed navbar on phones.
 * ========================================================================= */
.msp-page-title.display-2 {
  font-size: 2.2rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
@media (max-width: 767.98px) {
  .msp-page-title.display-2 {
    font-size: 1.6rem;
  }
  .msp-auth-section,
  .msp-subs-section {
    padding-top: 130px;
  }
  .msp-error-section {
    padding-top: 140px;
  }
}
@media (max-width: 575.98px) {
  .msp-page-title.display-2 {
    font-size: 1.35rem;
  }
}

/* =========================================================================
 * MSP AFFILIATE SHOWCASE (/ofertas) - v2.3.0
 * ========================================================================= */
.msp-showcase {
  background: #0b0f17;
  color: #ffffff;
  padding: 170px 0 120px;
}
.msp-showcase-head {
  text-align: center;
  margin-bottom: 24px;
}
.msp-showcase-head .msp-page-title {
  color: #ffffff;
}
.msp-showcase-sub {
  color: rgba(255, 255, 255, 0.7);
  max-width: 720px;
  margin: 8px auto 0;
}
.msp-showcase-cats {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-bottom: 20px;
}
.msp-showcase-cats a {
  padding: 8px 16px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  color: #ffffff;
  text-decoration: none;
  font-size: 0.9rem;
}
.msp-showcase-cats a.active,
.msp-showcase-cats a:hover {
  background: #ffffff;
  color: #0b0f17;
}
.msp-showcase-filters {
  display: grid;
  grid-template-columns: 1fr 200px 180px auto;
  gap: 8px;
  margin-bottom: 12px;
}
.msp-showcase-count {
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.85rem;
}
.msp-showcase-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 18px;
}
.msp-offer {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  color: #111827;
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.msp-offer:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35);
}
.msp-offer-media {
  position: relative;
  display: block;
  aspect-ratio: 1 / 1;
  background: #ffffff;
  padding: 14px;
}
.msp-offer-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.msp-offer-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  background: #15803d;  /* v3.0.2: white text >= 4.5:1 */
  color: #ffffff;
  font-weight: 700;
  font-size: 0.8rem;
  padding: 3px 8px;
  border-radius: 6px;
}
.msp-offer-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 12px 14px 16px;
  flex: 1;
  border-top: 1px solid #f1f1f1;
}
.msp-offer-store {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #6b7280;
}
.msp-offer-title {
  font-size: 0.92rem;
  line-height: 1.35;
  font-weight: 600;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.msp-offer-price {
  margin-top: auto;
  display: flex;
  flex-direction: column;
}
.msp-offer-price del {
  color: #9ca3af;
  font-size: 0.8rem;
}
.msp-offer-price strong {
  font-size: 1.25rem;
  color: #111827;
}
.msp-offer-price small,
.msp-offer-noprice {
  color: #6b7280;
  font-size: 0.72rem;
}
.msp-offer-btn {
  background: var(--msp-accent, #ffe161);
  color: #111827;
  font-weight: 700;
  border-radius: 8px;
  padding: 10px;
}
.msp-offer-btn:hover,
.msp-offer-btn:focus {
  background: color-mix(in srgb, var(--msp-accent, #ffe161) 82%, #000000);
  color: #111827;
}
.msp-showcase-empty {
  text-align: center;
  padding: 60px 0;
  color: rgba(255, 255, 255, 0.7);
}
.msp-showcase-pages {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-top: 28px;
}
.msp-showcase-pages a {
  min-width: 38px;
  padding: 7px 10px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 8px;
  color: #ffffff;
  text-decoration: none;
}
.msp-showcase-pages a.active {
  background: #ffffff;
  color: #0b0f17;
}
.msp-showcase-disclosure {
  margin-top: 36px;
  font-size: 0.78rem;
  color: rgba(255, 255, 255, 0.55);
  text-align: center;
}
@media (max-width: 767.98px) {
  .msp-showcase {
    padding: 130px 0 70px;
  }
  .msp-showcase-filters {
    grid-template-columns: 1fr 1fr;
  }
  .msp-showcase-filters input[type="search"] {
    grid-column: 1 / -1;
  }
  .msp-showcase-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .msp-offer-title {
    font-size: 0.82rem;
  }
  .msp-offer-price strong {
    font-size: 1.05rem;
  }
}


/* =========================================================================
 * MSP BUDGET PLANNER (/budget-planner) - v2.4.0
 * ========================================================================= */
.msp-budget {
  background: linear-gradient(to top, #000, #1b1f2a, #000);
  color: #ffffff;
  padding: 170px 0 120px;
}
.msp-budget-head {
  text-align: center;
  margin-bottom: 28px;
}
.msp-budget-head .msp-page-title {
  color: #ffffff;
}
.msp-budget-sub {
  color: rgba(255, 255, 255, 0.72);
  max-width: 720px;
  margin: 8px auto 0;
}
.msp-budget-form .form-label {
  color: rgba(255, 255, 255, 0.85);
  font-weight: 600;
}
.msp-budget-btn {
  background: var(--msp-accent, #ffe161);
  color: #111827;
  font-weight: 700;
}
.msp-budget-btn:hover,
.msp-budget-btn:focus {
  background: color-mix(in srgb, var(--msp-accent, #ffe161) 82%, #000000);
  color: #111827;
}
.msp-budget-chips {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 18px 0 0;
}
.msp-budget-chip {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
  border-left: 4px solid var(--msp-budget-tone, #9ca3af);
  font-size: 0.85rem;
}
.msp-budget-results {
  margin-top: 44px;
}
.msp-budget-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: rgba(255, 255, 255, 0.8);
}
.msp-budget-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
}
.msp-budget-col {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  color: #111827;
  border-radius: 12px;
  overflow: hidden;
}
.msp-budget-col-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 6px;
  padding: 10px 12px;
  background: var(--msp-budget-tone, #6b7280);
  color: #ffffff;
  font-weight: 700;
  font-size: 0.9rem;
}
.msp-budget-pct {
  background: #ffffff;
  color: #111827;
  border-radius: 999px;
  padding: 1px 8px;
  font-size: 0.75rem;
}
.msp-budget-list {
  list-style: none;
  margin: 0;
  padding: 0;
  flex: 1;
}
.msp-budget-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 6px;
  padding: 9px 12px;
  border-bottom: 1px solid #f1f1f1;
}
.msp-budget-list strong {
  display: block;
  font-size: 0.95rem;
}
.msp-budget-list small {
  color: #6b7280;
  font-size: 0.7rem;
}
.msp-budget-del {
  border: 1px solid #fca5a5;
  background: transparent;
  color: #dc2626;
  border-radius: 6px;
  width: 28px;
  height: 28px;
  line-height: 1;
  font-size: 1.1rem;
  flex-shrink: 0;
}
.msp-budget-del:hover,
.msp-budget-del:focus {
  background: #dc2626;
  color: #ffffff;
}
.msp-budget-total {
  display: flex;
  justify-content: space-between;
  padding: 10px 12px;
  background: #f3f4f6;
  font-size: 0.9rem;
}
.msp-budget-empty {
  text-align: center;
  color: rgba(255, 255, 255, 0.65);
  padding: 30px 0;
}
.msp-budget-note {
  margin-top: 28px;
  text-align: center;
  font-size: 0.78rem;
  color: rgba(255, 255, 255, 0.55);
}
.msp-budget-col--blue   { --msp-budget-tone: #2563eb; }
.msp-budget-col--cyan   { --msp-budget-tone: #0891b2; }
.msp-budget-col--red    { --msp-budget-tone: #dc2626; }
.msp-budget-col--green  { --msp-budget-tone: #16a34a; }
.msp-budget-col--amber  { --msp-budget-tone: #d97706; }
.msp-budget-col--violet { --msp-budget-tone: #7c3aed; }
@media (max-width: 1199.98px) {
  .msp-budget-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 767.98px) {
  .msp-budget {
    padding: 130px 0 70px;
  }
  .msp-budget-grid {
    grid-template-columns: 1fr;
  }
  .msp-budget-chips {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* =========================================================================
 * MSP MEMBER - PARTNER BANNERS (/user/{code}/banners) - v2.6.0
 * ========================================================================= */
.msp-banners-sub {
  text-align: center;
  color: rgba(255, 255, 255, 0.75);
  max-width: 760px;
  margin: 0 auto 22px;
}
.msp-banners-period {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-bottom: 12px;
}
.msp-banners-period a {
  padding: 5px 12px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 999px;
  color: #ffffff;
  text-decoration: none;
  font-size: 0.85rem;
}
.msp-banners-period a.active {
  background: #ffffff;
  color: #000000;
}
.msp-banners-stats {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  margin-bottom: 10px;
}
.msp-banners-stats div {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  padding: 12px;
  text-align: center;
  color: #ffffff;
}
.msp-banners-stats span {
  display: block;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.6);
}
.msp-banners-stats strong {
  font-size: 1.15rem;
}
.msp-banners-help {
  text-align: center;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.55);
  margin-bottom: 24px;
}
.msp-banners-code {
  font-family: Consolas, Menlo, monospace;
  font-size: 0.78rem;
  background: #0b0f17;
  color: #a7f3d0;
  border-color: rgba(255, 255, 255, 0.15);
}
@media (max-width: 767.98px) {
  .msp-banners-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* MSP MEMBER - PARTNER BANNERS: color customization - v2.6.2 */
.msp-banners-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 14px;
}
.msp-banners-presets .btn {
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #ffffff;
  background: transparent;
}
.msp-banners-presets .btn:hover,
.msp-banners-presets .btn:focus {
  background: #ffffff;
  color: #000000;
}
.msp-banners-colors {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.msp-banners-colors label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.75);
}
.msp-banners-colors input[type="color"] {
  width: 100%;
  height: 38px;
  padding: 2px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
}
.msp-banners-style {
  margin-bottom: 16px;
}
@media (max-width: 575.98px) {
  .msp-banners-colors {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* =========================================================================
 * MSP MEMBER - MARKETPLACE (/user/{code}/marketplace) - v2.7.0
 * ========================================================================= */
.msp-mk .form-label {
  color: rgba(255, 255, 255, 0.85);
}
.msp-mk-plan--premium {
  color: var(--msp-accent, #ffe161);
}
.msp-mk-price {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 10px 14px;
  border: 1px dashed rgba(255, 255, 255, 0.25);
  border-radius: 10px;
  color: #ffffff;
}
.msp-mk-price small {
  color: rgba(255, 255, 255, 0.65);
}
.msp-mk-block {
  border-color: rgba(220, 38, 38, 0.6);
}
.msp-mk-upsell {
  border-color: rgba(245, 158, 11, 0.6);
}
.msp-mk-scores {
  display: grid;
  gap: 8px;
}
.msp-mk-scores > div {
  display: grid;
  grid-template-columns: 180px 1fr 50px;
  align-items: center;
  gap: 10px;
  font-size: 0.85rem;
}
.msp-mk-bar {
  height: 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  overflow: hidden;
}
.msp-mk-bar i {
  display: block;
  height: 100%;
  background: var(--msp-accent, #ffe161);
}
@media (max-width: 575.98px) {
  .msp-mk-scores > div {
    grid-template-columns: 1fr 50px;
  }
  .msp-mk-scores .msp-mk-bar {
    grid-column: 1 / -1;
  }
}

/* =========================================================================
 * MSP MARKETPLACE - PUBLIC LANDING PAGE - v2.7.3
 * ========================================================================= */
.msp-mkl {
  background: #0b0f17;
  color: #e5e7eb;
}
.msp-mkl-hero {
  padding: 180px 0 80px;
  text-align: center;
  background: radial-gradient(circle at 50% 0%, rgba(245, 158, 11, 0.18), transparent 60%), linear-gradient(to bottom, #000000, #0b0f17);
}
.msp-mkl-kicker {
  display: inline-block;
  font-size: 0.75rem;
  letter-spacing: 0.16em;
  color: var(--msp-accent, #ffe161);
  margin-bottom: 14px;
}
.msp-mkl-title {
  font-size: 2.6rem;
  font-weight: 800;
  line-height: 1.15;
  color: #ffffff;
  max-width: 860px;
  margin: 0 auto 18px;
}
.msp-mkl-lead {
  font-size: 1.1rem;
  max-width: 720px;
  margin: 0 auto 28px;
  color: rgba(255, 255, 255, 0.75);
}
.msp-mkl-cta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}
.msp-mkl-note {
  margin-top: 16px;
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.6);
}
.msp-mkl-note a,
.msp-mkl-small a {
  color: var(--msp-accent, #ffe161);
}
.msp-mkl-stats {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px;
  list-style: none;
  padding: 0;
  margin: 44px 0 0;
}
.msp-mkl-stats li {
  display: flex;
  flex-direction: column;
  min-width: 120px;
}
.msp-mkl-stats strong {
  font-size: 1.8rem;
  color: #ffffff;
}
.msp-mkl-stats span {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.6);
}
.msp-mkl-block {
  padding-top: 64px;
  padding-bottom: 64px;
}
.msp-mkl-alt {
  background: #111827;
}
.msp-mkl-h2 {
  font-size: 1.8rem;
  font-weight: 700;
  color: #ffffff;
  text-align: center;
  margin-bottom: 32px;
}
.msp-mkl-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.msp-mkl-steps li,
.msp-mkl-card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  padding: 22px;
}
.msp-mkl-steps span {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--msp-accent, #ffe161);
  color: #111827;
  font-weight: 800;
  margin-bottom: 12px;
}
.msp-mkl-steps h3,
.msp-mkl-card h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: #ffffff;
}
.msp-mkl-steps p,
.msp-mkl-card p {
  font-size: 0.92rem;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
}
.msp-mkl-cats {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.msp-mkl-cats li {
  padding: 10px 18px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  color: #ffffff;
}
.msp-mkl-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}
.msp-mkl-plans {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 420px));
  justify-content: center;
  gap: 22px;
}
.msp-mkl-plan {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #0b0f17;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  padding: 28px;
}
.msp-mkl-plan--featured {
  border-color: var(--msp-accent, #ffe161);
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.35), 0 18px 40px rgba(0, 0, 0, 0.35);
}
.msp-mkl-plan h3 {
  font-size: 1.3rem;
  font-weight: 800;
  color: #ffffff;
}
.msp-mkl-plan ul {
  flex: 1;
  padding-left: 18px;
  margin: 12px 0 22px;
  color: rgba(255, 255, 255, 0.78);
}
.msp-mkl-plan li {
  margin-bottom: 8px;
}
.msp-mkl-price {
  font-size: 2rem;
  font-weight: 800;
  color: var(--msp-accent, #ffe161);
  margin: 0;
}
.msp-mkl-price small {
  font-size: 0.85rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.6);
}
.msp-mkl-badge {
  position: absolute;
  top: -12px;
  right: 20px;
  background: var(--msp-accent, #ffe161);
  color: #111827;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 999px;
}
.msp-mkl-small {
  text-align: center;
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.55);
  margin: 22px 0 0;
}
.msp-mkl-buyers {
  text-align: center;
}
.msp-mkl-faq details {
  max-width: 820px;
  margin: 0 auto 10px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  padding: 14px 18px;
}
.msp-mkl-faq summary {
  cursor: pointer;
  font-weight: 600;
  color: #ffffff;
}
.msp-mkl-faq details p {
  margin: 10px 0 0;
  color: rgba(255, 255, 255, 0.7);
}
@media (max-width: 991.98px) {
  .msp-mkl-steps {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767.98px) {
  .msp-mkl-hero {
    padding: 130px 0 56px;
  }
  .msp-mkl-title {
    font-size: 1.75rem;
  }
  .msp-mkl-steps,
  .msp-mkl-grid,
  .msp-mkl-plans {
    grid-template-columns: 1fr;
  }
  .msp-mkl-block {
    padding-top: 44px;
    padding-bottom: 44px;
  }
}

/* ===== v2.8.0 - TECINFOSP systems page (/systems) ===== */
.msp-sysp-hero { background: #0f172a; color: #fff; padding: 150px 0 60px; }
.msp-sysp-kicker { display: block; font-size: .8rem; font-weight: 800; letter-spacing: .18em; color: #93c5fd; margin-bottom: 10px; }
.msp-sysp-title { font-size: 2.6rem; font-weight: 800; line-height: 1.1; margin: 0 0 14px; color: #fff; }
.msp-sysp-lead { font-size: 1.15rem; color: #cbd5e1; max-width: 680px; margin: 0 0 22px; }
.msp-sysp-jump { display: flex; flex-wrap: wrap; gap: 10px; }
.msp-sysp-body { padding: 48px 12px 64px; display: grid; gap: 40px; }
.msp-sys { --sys-color: #2563eb; border: 1px solid #e5e7eb; border-radius: 18px; padding: 32px; background: #fff; scroll-margin-top: 90px; }
.msp-sys-who { display: block; font-size: .8rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #6b7280; }
.msp-sys-name { font-size: 2.2rem; font-weight: 800; margin: 6px 0 8px; color: #0f172a; }
.msp-sys-name span { color: var(--sys-color); }
.msp-sys-tagline { color: #4b5563; font-size: 1.05rem; margin: 0 0 22px; max-width: 760px; }
.msp-sys-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; }
.msp-sys-plan { border: 1px solid #e5e7eb; border-radius: 14px; padding: 24px; display: flex; flex-direction: column; gap: 10px; }
.msp-sys-plan--pro { border: 2px solid var(--sys-color); }
.msp-sys-plan-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.msp-sys-plan h3 { margin: 0; font-size: 1.4rem; font-weight: 800; color: #0f172a; }
.msp-sys-tag { font-size: .72rem; font-weight: 800; padding: 3px 10px; border-radius: 999px; background: var(--sys-color); color: #fff; }
.msp-sys-price { font-size: 2rem; font-weight: 800; margin: 0; color: #0f172a; }
.msp-sys-price small { font-size: .95rem; font-weight: 600; color: #6b7280; }
.msp-sys-price--ask { font-size: 1.3rem; color: #4b5563; }
.msp-sys-year { margin: 0; font-size: .92rem; color: #4b5563; }
.msp-sys-plan ul { margin: 6px 0 8px; padding-left: 18px; color: #374151; flex: 1; }
.msp-sys-plan li { margin: 4px 0; }
.msp-sys-btn { border: 2px solid var(--sys-color); color: #0f172a; font-weight: 700; border-radius: 999px; padding: 10px 18px; background: #fff; }
.msp-sys-btn:hover { background: var(--sys-color); color: #fff; }
.msp-sys-btn--solid { background: var(--sys-color); color: #fff; }
.msp-sys-btn--solid:hover { filter: brightness(.92); color: #fff; }
.msp-sys-note { margin: 18px 0 0; color: #4b5563; font-size: .95rem; }
.msp-sys-note a { color: #1d4ed8; font-weight: 700; }
.msp-sys-off { padding: 18px 0 0; }
@media (max-width: 575px) { .msp-sysp-title { font-size: 1.9rem; } .msp-sys { padding: 22px; } .msp-sys-name { font-size: 1.8rem; } }

/* ===== v2.8.0 - Sponsor page (/advertise) ===== */
.msp-adv-hero { background: #0f172a; color: #fff; padding: 150px 0 60px; }
.msp-adv-kicker { display: block; font-size: .8rem; font-weight: 800; letter-spacing: .18em; color: #93c5fd; margin-bottom: 10px; }
.msp-adv-title { font-size: 2.6rem; font-weight: 800; line-height: 1.1; margin: 0 0 14px; color: #fff; }
.msp-adv-lead { font-size: 1.15rem; color: #cbd5e1; max-width: 700px; margin: 0 0 22px; }
.msp-adv-body { padding: 44px 12px 64px; display: grid; gap: 28px; }
.msp-adv-card { border: 1px solid #e5e7eb; border-radius: 16px; padding: 26px; background: #fff; scroll-margin-top: 100px; }
.msp-adv-card h2, .msp-adv-h2 { font-size: 1.5rem; font-weight: 800; margin: 0 0 12px; color: #0f172a; }
.msp-adv-card h3, .msp-adv-card .msp-adv-h3 { font-size: 1.15rem; font-weight: 800; margin: 0 0 6px; color: #0f172a; }
.msp-adv-card p { color: #4b5563; margin: 0 0 8px; }
.msp-adv-grid3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.msp-adv-packages { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
.msp-adv-pkg { border: 1px solid #e5e7eb; border-radius: 14px; padding: 18px; display: grid; gap: 4px; background: #fff; color: #374151; }
.msp-adv-pkg strong { color: #0f172a; }
.msp-adv-pkg-price { font-size: 1.4rem; font-weight: 800; color: #1d4ed8; }
.msp-adv-formgrid { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 24px; align-items: start; }
.msp-adv-form { display: grid; gap: 12px; }
.msp-adv-form label { display: grid; gap: 4px; font-weight: 700; color: #1f2937; }
.msp-adv-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
.msp-adv-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.msp-adv-preview { position: sticky; top: 110px; }
.msp-adv-preview-label { display: block; font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #6b7280; margin-bottom: 8px; }
.msp-adv-ad { border: 1px solid #e5e7eb; border-top: 4px solid #1d4ed8; border-radius: 10px; padding: 16px; display: grid; gap: 6px; background: #f8fafc; overflow-wrap: anywhere; }
.msp-adv-ad strong { font-size: 1.1rem; color: #0f172a; }
.msp-adv-ad span { color: #374151; }
.msp-adv-ad small { color: #15803d; }
.msp-adv-pay { border: 2px solid #1d4ed8; }
.msp-adv-price { font-size: 2rem; font-weight: 800; color: #0f172a; }
.msp-adv-hint { font-size: .92rem; }
.msp-adv-ok { color: #15803d !important; font-weight: 700; }
.msp-adv-no { color: #b91c1c !important; font-weight: 700; }
@media (max-width: 767px) { .msp-adv-formgrid { grid-template-columns: 1fr; } .msp-adv-preview { position: static; } .msp-adv-title { font-size: 1.9rem; } }
.msp-sys-btn--buy { background: #0f172a; border-color: #0f172a; color: #fff; }
.msp-sys-btn--buy:hover { background: #1e293b; border-color: #1e293b; color: #fff; }
.msp-sys-yearlink { text-align: center; font-size: .9rem; font-weight: 700; color: #1d4ed8; }

/* ===== v2.8.3 - Login, create account and affiliate register (/login, /register, /affiliate-register) ===== */
.msp-auth { background: #0b1120; padding: 140px 20px 72px; min-height: 100vh; box-sizing: border-box; }
.msp-auth .msp-auth-wrap { max-width: 1120px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 48px; align-items: center; }
.msp-auth .msp-auth-aside { color: #e2e8f0; }
.msp-auth .msp-auth-kicker { display: block; font-size: .78rem; font-weight: 800; letter-spacing: .18em; color: var(--msp-accent, #ffe161); margin-bottom: 12px; }
.msp-auth .msp-auth-title { font-size: 2.6rem; font-weight: 800; line-height: 1.1; margin: 0 0 14px; color: #ffffff; }
.msp-auth .msp-auth-lead { font-size: 1.12rem; line-height: 1.55; color: #cbd5e1; margin: 0 0 26px; max-width: 520px; }
.msp-auth .msp-auth-points { list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 16px; }
.msp-auth .msp-auth-points li { display: flex; gap: 14px; align-items: flex-start; }
.msp-auth .msp-auth-points svg { flex: none; color: #0b1120; background: var(--msp-accent, #ffe161); border-radius: 50%; padding: 4px; box-sizing: content-box; }
.msp-auth .msp-auth-points strong { display: block; color: #ffffff; font-size: 1.02rem; }
.msp-auth .msp-auth-points span { display: block; color: #94a3b8; font-size: .95rem; line-height: 1.45; }
.msp-auth .msp-auth-aside-note { color: #94a3b8; font-size: .95rem; margin: 0; }
.msp-auth .msp-auth-aside-note a { color: var(--msp-accent, #ffe161); font-weight: 700; }
.msp-auth .msp-auth-card { background: #ffffff; color: #1f2937; border-radius: 18px; padding: 34px; box-shadow: 0 24px 60px rgba(0, 0, 0, .45); }
.msp-auth .msp-auth-card-title { font-size: 1.7rem; font-weight: 800; margin: 0 0 4px; color: #0f172a; }
.msp-auth .msp-auth-card-sub { margin: 0 0 22px; color: #64748b; font-size: .98rem; }
.msp-auth .msp-auth-feedback, .msp-auth .msp-auth-feedback-slot:not(:empty) { margin: 0 0 16px; }
.msp-auth .msp-auth-form { display: grid; gap: 16px; margin: 0; }
.msp-auth .msp-auth-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.msp-auth .msp-auth-field { display: grid; gap: 6px; min-width: 0; }
.msp-auth .msp-auth-field label { font-weight: 700; font-size: .92rem; color: #1f2937; margin: 0; }
.msp-auth .msp-auth-label-row { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.msp-auth .msp-auth-label-row a { font-size: .88rem; font-weight: 700; color: #1d4ed8; }
.msp-auth .msp-auth-field input { width: 100%; height: 48px; box-sizing: border-box; padding: 0 14px; border: 1.5px solid #cbd5e1; border-radius: 10px; background: #ffffff; color: #0f172a; font-size: 1rem; text-align: left; box-shadow: none; }
.msp-auth .msp-auth-field input::placeholder { color: #94a3b8; }
.msp-auth .msp-auth-field input:focus { outline: none; border-color: var(--msp-accent, #ffe161); box-shadow: 0 0 0 3px color-mix(in srgb, var(--msp-accent, #ffe161) 2500%, transparent); }
.msp-auth .msp-auth-pass { position: relative; }
.msp-auth .msp-auth-pass input { padding-right: 86px; }
.msp-auth .msp-auth-eye { position: absolute; top: 4px; right: 4px; height: 40px; min-width: 72px; border: 0; border-radius: 8px; background: #f1f5f9; color: #334155; font-weight: 700; font-size: .85rem; cursor: pointer; }
.msp-auth .msp-auth-eye:hover { background: #e2e8f0; }
.msp-auth .msp-auth-eye:focus-visible, .msp-auth .msp-auth-submit:focus-visible, .msp-auth .msp-auth-ghost:focus-visible, .msp-auth .msp-auth-linkbtn:focus-visible { outline: 3px solid var(--msp-accent, #ffe161); outline-offset: 2px; }
.msp-auth .msp-auth-error { margin: -6px 0 0; color: #b91c1c; font-weight: 700; font-size: .92rem; }
.msp-auth .msp-auth-terms { margin: 0; font-size: .86rem; line-height: 1.5; color: #64748b; }
.msp-auth .msp-auth-linkbtn { border: 0; background: none; padding: 0; color: #1d4ed8; font-weight: 700; text-decoration: underline; cursor: pointer; font-size: inherit; }
.msp-auth .msp-auth-submit { width: 100%; min-height: 52px; border: 0; border-radius: 12px; background: var(--msp-accent, #ffe161); color: #111827; font-weight: 800; font-size: 1.05rem; cursor: pointer; transition: filter .15s ease; }
.msp-auth .msp-auth-submit:hover { filter: brightness(.95); }
.msp-auth .msp-auth-divider { display: flex; align-items: center; gap: 12px; margin: 22px 0 16px; color: #64748b; font-size: .85rem; }
.msp-auth .msp-auth-divider::before, .msp-auth .msp-auth-divider::after { content: ""; flex: 1; height: 1px; background: #e2e8f0; }
.msp-auth .msp-auth-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.msp-auth .msp-auth-ghost { display: flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 12px; border: 1.5px solid #cbd5e1; border-radius: 10px; color: #0f172a; font-weight: 700; text-align: center; text-decoration: none; }
.msp-auth .msp-auth-ghost:hover { border-color: #0f172a; color: #0f172a; text-decoration: none; }
.msp-auth .msp-auth-alt { margin: 18px 0 0; text-align: center; color: #64748b; font-size: .95rem; }
.msp-auth .msp-auth-alt a { color: #1d4ed8; font-weight: 700; }
@media (max-width: 991.98px) {
    .msp-auth { padding: 110px 16px 48px; }
    .msp-auth .msp-auth-wrap { grid-template-columns: 1fr; gap: 28px; max-width: 560px; }
    .msp-auth .msp-auth-card { order: -1; }
    .msp-auth .msp-auth-title { font-size: 2rem; }
    .msp-auth.msp-auth--login .msp-auth-points { display: none; }
}
@media (max-width: 575.98px) {
    .msp-auth { padding: 96px 12px 36px; }
    .msp-auth .msp-auth-card { padding: 24px 18px; border-radius: 14px; }
    .msp-auth .msp-auth-row, .msp-auth .msp-auth-links { grid-template-columns: 1fr; }
    .msp-auth .msp-auth-title { font-size: 1.7rem; }
}
/* v2.8.4 - recovery / new password pages (same .msp-auth layout) */
.msp-auth .msp-auth-notice { padding: 14px 16px; border-radius: 10px; font-size: .95rem; line-height: 1.5; margin: 0 0 16px; }
.msp-auth .msp-auth-notice--warn { background: #fef3c7; color: #78350f; border: 1px solid #fcd34d; }
.msp-auth .msp-auth-hint { color: #64748b; font-size: .85rem; }
.msp-auth .msp-auth-submit--link { display: flex; align-items: center; justify-content: center; text-decoration: none; }
.msp-auth .msp-auth-submit--link:hover { color: #111827; text-decoration: none; }

/* ===== v2.8.8 - Home testimonials text slider (#testimonials) ===== */
.msp-ts { background: transparent; padding: 76px 0; color: #e2e8f0; }  /* transparent: the page background shows through (v2.8.9) */
.msp-ts .msp-ts-kicker { display: block; text-align: center; font-size: .8rem; font-weight: 800; letter-spacing: .18em; color: var(--msp-accent, #ffe161); margin-bottom: 10px; }
.msp-ts .msp-ts-title { text-align: center; font-size: 2.2rem; font-weight: 800; color: #ffffff; margin: 0 0 34px; }
.msp-ts .msp-ts-carousel { position: relative; max-width: 860px; margin: 0 auto; padding: 0 64px; }
.msp-ts .msp-ts-slide { margin: 0; text-align: center; padding: 4px 0 8px; }
/* v2.8.10 - FADE IN PLACE. The theme breaks Bootstrap's side-by-side slide layout (the next slide
   appeared BELOW and rose into place). All slides now share one grid cell and only cross-fade:
   nothing slides, rises or falls, and the box keeps the height of the tallest testimonial. */
.msp-ts .msp-ts-carousel .carousel-inner { display: grid !important; overflow: hidden; }
.msp-ts .msp-ts-carousel .carousel-item { grid-area: 1 / 1 !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important;
    float: none !important; margin: 0 !important; position: relative !important; transform: none !important; opacity: 0; visibility: hidden; transition: opacity .7s ease, visibility 0s linear .7s !important; }
.msp-ts .msp-ts-carousel .carousel-item.active,
.msp-ts .msp-ts-carousel .carousel-item-next.carousel-item-start,
.msp-ts .msp-ts-carousel .carousel-item-prev.carousel-item-end { opacity: 1; visibility: visible; z-index: 1; transition: opacity .7s ease, visibility 0s !important; }
.msp-ts .msp-ts-carousel .active.carousel-item-start,
.msp-ts .msp-ts-carousel .active.carousel-item-end { opacity: 0; visibility: visible; z-index: 0; }
.msp-ts .msp-ts-quote { color: var(--msp-accent, #ffe161); margin: 0 auto 14px; display: block; }
.msp-ts .msp-ts-text { margin: 0 auto 26px !important; padding: 0 !important; border: 0 !important; font-style: normal !important; max-width: 720px; font-size: 1.55rem; line-height: 1.5; font-weight: 600; color: #ffffff; }  /* the theme styles blockquote with a thick left bar */
.msp-ts .msp-ts-author { display: inline-flex; align-items: center; gap: 14px; text-align: left; }
.msp-ts .msp-ts-author img, .msp-ts .msp-ts-avatar { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; flex: none; border: 2px solid var(--msp-accent, #ffe161); }
.msp-ts .msp-ts-avatar { display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, .08); color: var(--msp-accent, #ffe161); font-weight: 800; }
.msp-ts .msp-ts-author strong { display: block; color: #ffffff; font-size: 1.05rem; }
.msp-ts .msp-ts-author small { display: block; color: #94a3b8; }
.msp-ts .msp-ts-arrow { position: absolute; top: 42%; transform: translateY(-50%); width: 46px; height: 46px; border-radius: 50%; border: 1.5px solid rgba(255, 255, 255, .35); background: transparent; color: #ffffff; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: background .15s ease, border-color .15s ease; z-index: 2; }
.msp-ts .msp-ts-arrow:hover { background: var(--msp-accent, #ffe161); border-color: var(--msp-accent, #ffe161); color: #0f172a; }
.msp-ts .msp-ts-arrow:focus-visible, .msp-ts .msp-ts-dots button:focus-visible { outline: 3px solid var(--msp-accent, #ffe161); outline-offset: 3px; }
.msp-ts .msp-ts-arrow--prev { left: 0; }
.msp-ts .msp-ts-arrow--next { right: 0; }
.msp-ts .msp-ts-dots { display: flex; justify-content: center; gap: 8px; margin-top: 30px; }
/* 24px touch target with the small visual dot drawn inside (accessibility: target size) */
.msp-ts .msp-ts-dots { gap: 2px; }
.msp-ts .msp-ts-dots button { width: 24px; height: 24px; padding: 0; border: 0; background: transparent; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.msp-ts .msp-ts-dots button::after { content: ""; width: 10px; height: 10px; border-radius: 999px; background: #64748b; transition: width .2s ease, background .2s ease; }
.msp-ts .msp-ts-dots button.active { width: 34px; }
.msp-ts .msp-ts-dots button.active::after { width: 28px; background: var(--msp-accent, #ffe161); }
@media (max-width: 767.98px) {
    .msp-ts { padding: 56px 0; }
    .msp-ts .msp-ts-title { font-size: 1.7rem; margin-bottom: 24px; }
    .msp-ts .msp-ts-carousel { padding: 0 6px; }
    .msp-ts .msp-ts-text { font-size: 1.2rem; }
    .msp-ts .msp-ts-arrow { display: none; }  /* swipe on phones; dots below */
}
/* The theme's scroll script adds "animate__fadeInUp" (rise from below) to titles and texts as they
   appear. Inside the slider every new testimonial got it, so the text rose and fell on each change.
   Switch the theme animation off in this section only; the slider itself just cross-fades. */
.msp-ts .animate__animated { animation: none !important; }
.msp-ts .hidden:not(.carousel-item) { visibility: visible !important; opacity: 1 !important; }
@media (prefers-reduced-motion: reduce) { .msp-ts .msp-ts-carousel .carousel-item { transition: none !important; } }

/* ===== v2.8.7 - Courses (/courses) ===== */
.msp-crs { background: #f8fafc; color: #1f2937; min-height: 60vh; }
.msp-crs .msp-crs-hero { background: #0f172a; color: #e2e8f0; padding: 140px 0 48px; }
.msp-crs .msp-crs-kicker { display: block; font-size: .8rem; font-weight: 800; letter-spacing: .18em; color: var(--msp-accent, #ffe161); margin-bottom: 10px; }
.msp-crs .msp-crs-title { font-size: 2.4rem; font-weight: 800; line-height: 1.12; margin: 0 0 12px; color: #ffffff; }
.msp-crs .msp-crs-lead { font-size: 1.1rem; line-height: 1.55; color: #cbd5e1; margin: 0 0 14px; max-width: 720px; }
.msp-crs .msp-crs-body { padding: 40px 12px 64px; }
.msp-crs .msp-crs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; }
.msp-crs .msp-crs-card { display: flex; flex-direction: column; background: #ffffff; border: 1px solid #e5e7eb; border-radius: 16px; overflow: hidden; color: inherit; text-decoration: none; transition: transform .15s ease, box-shadow .15s ease; }
.msp-crs .msp-crs-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(15, 23, 42, .12); text-decoration: none; color: inherit; }
.msp-crs .msp-crs-thumb { aspect-ratio: 16 / 9; background: #0f172a; display: flex; align-items: center; justify-content: center; }
.msp-crs .msp-crs-thumb img { width: 100%; height: 100%; object-fit: cover; }
.msp-crs .msp-crs-thumb span { font-size: 3rem; font-weight: 800; color: var(--msp-accent, #ffe161); }
.msp-crs .msp-crs-card-body { padding: 18px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.msp-crs .msp-crs-card-top { display: flex; gap: 6px; flex-wrap: wrap; }
.msp-crs .msp-crs-card h2 { font-size: 1.2rem; font-weight: 800; margin: 0; color: #0f172a; }
.msp-crs .msp-crs-card p { margin: 0; color: #4b5563; font-size: .95rem; }
.msp-crs .msp-crs-meta { margin-top: auto; color: #64748b; font-size: .88rem; font-weight: 700; }
.msp-crs .msp-crs-badge { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: .78rem; font-weight: 800; }
.msp-crs .msp-crs-badge--free { background: #dcfce7; color: #166534; }
.msp-crs .msp-crs-badge--paid { background: #fef3c7; color: #92400e; }
.msp-crs .msp-crs-badge--plan { background: #e0e7ff; color: #3730a3; }
.msp-crs .msp-crs-badge--ok { background: #0f172a; color: var(--msp-accent, #ffe161); }
.msp-crs .msp-crs-head { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 32px; align-items: start; }
.msp-crs .msp-crs-back { display: inline-block; color: #93c5fd; font-weight: 700; margin-bottom: 12px; text-decoration: none; }
.msp-crs--lesson .msp-crs-back { color: #1d4ed8; }
.msp-crs .msp-crs-meta-light { color: #cbd5e1; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.msp-crs .msp-crs-congrats { background: #dcfce7; color: #166534; padding: 10px 14px; border-radius: 10px; font-weight: 700; display: inline-block; }
.msp-crs .msp-crs-cta { background: #ffffff; color: #1f2937; border-radius: 16px; padding: 22px; display: grid; gap: 12px; box-shadow: 0 18px 40px rgba(0, 0, 0, .35); }
.msp-crs .msp-crs-cta img { width: 100%; border-radius: 10px; aspect-ratio: 16 / 9; object-fit: cover; }
.msp-crs .msp-crs-cta p { margin: 0; color: #374151; }
.msp-crs .msp-crs-price { font-size: 2rem; font-weight: 800; color: #0f172a !important; }
.msp-crs .msp-crs-hint { font-size: .88rem; color: #64748b !important; }
.msp-crs .msp-crs-btn { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 50px; padding: 0 18px; border: 0; border-radius: 12px; background: var(--msp-accent, #ffe161); color: #111827; font-weight: 800; text-decoration: none; cursor: pointer; }
.msp-crs .msp-crs-btn:hover { filter: brightness(.95); color: #111827; text-decoration: none; }
.msp-crs .msp-crs-btn--ghost { background: transparent; border: 1.5px solid #cbd5e1; color: #0f172a; }
.msp-crs .msp-crs-h2 { font-size: 1.4rem; font-weight: 800; margin: 0 0 14px; color: #0f172a; }
.msp-crs .msp-crs-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.msp-crs .msp-crs-list li { display: flex; align-items: center; gap: 12px; background: #ffffff; border: 1px solid #e5e7eb; border-radius: 12px; padding: 12px 14px; }
.msp-crs .msp-crs-list li a, .msp-crs .msp-crs-list li > span:not(.msp-crs-num) { flex: 1; color: #0f172a; font-weight: 700; text-decoration: none; }
.msp-crs .msp-crs-list small { color: #64748b; }
.msp-crs .msp-crs-num { flex: none; width: 30px; height: 30px; border-radius: 50%; background: #e2e8f0; color: #0f172a; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: .85rem; }
.msp-crs .msp-crs-list li.is-done .msp-crs-num { background: #16a34a; color: #ffffff; }
.msp-crs .msp-crs-list li.is-current { border-color: var(--msp-accent, #ffe161); box-shadow: 0 0 0 2px color-mix(in srgb, var(--msp-accent, #ffe161) 3500%, transparent); }
.msp-crs--lesson { padding-top: 120px; }
.msp-crs .msp-crs-lesson { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); gap: 24px; padding-bottom: 56px; }
.msp-crs .msp-crs-player { position: relative; aspect-ratio: 16 / 9; background: #000000; border-radius: 14px; overflow: hidden; }
.msp-crs .msp-crs-player iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.msp-crs .msp-crs-novideo { color: #e2e8f0; padding: 24px; margin: 0; }
.msp-crs .msp-crs-lesson-title { font-size: 1.5rem; font-weight: 800; margin: 18px 0 10px; color: #0f172a; }
.msp-crs .msp-crs-desc { color: #374151; line-height: 1.6; margin-bottom: 18px; }
.msp-crs .msp-crs-nav { display: flex; gap: 12px; flex-wrap: wrap; }
.msp-crs .msp-crs-nav > a, .msp-crs .msp-crs-nav form { flex: 1 1 220px; }
.msp-crs .msp-crs-side { background: #ffffff; border: 1px solid #e5e7eb; border-radius: 14px; padding: 16px; align-self: start; position: sticky; top: 110px; max-height: calc(100vh - 130px); overflow: auto; }
.msp-crs .msp-crs-side strong { display: block; margin-bottom: 10px; color: #0f172a; }
.msp-crs .msp-crs-list--side li { padding: 8px 10px; font-size: .92rem; }
.msp-crs--closed { background: #0f172a; }
.msp-crs .msp-crs-closed { padding: 170px 12px 120px; text-align: center; color: #e2e8f0; }
.msp-crs .msp-crs-closed .msp-crs-lead { margin: 0 auto 26px; }
.msp-crs .msp-crs-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.msp-crs .msp-crs-actions .msp-crs-btn { width: auto; min-width: 220px; }
.msp-crs--closed .msp-crs-btn--ghost { color: #ffffff; border-color: #475569; }
@media (max-width: 991.98px) {
    .msp-crs .msp-crs-head, .msp-crs .msp-crs-lesson { grid-template-columns: 1fr; }
    .msp-crs .msp-crs-side { position: static; max-height: none; }
    .msp-crs .msp-crs-hero { padding: 110px 0 36px; }
    .msp-crs .msp-crs-title { font-size: 1.9rem; }
}

/* ===== v2.9.0 - Accessibility / SEO polish ===== */
/* FitPro orange with white text was below 4.5:1: dark text on the orange solid button and tag */
#system-fitpro .msp-sys-btn--solid, #system-fitpro .msp-sys-btn:hover, #system-fitpro .msp-sys-tag { color: #111827; }
/* Shop product buttons: comfortable touch size */
.item-wrapper .mbr-section-btn .btn-group > a, .item-wrapper .mbr-section-btn > a { min-height: 44px; min-width: 44px; display: inline-flex; align-items: center; justify-content: center; }
/* Card buttons never wider than their card (one was cut at the screen edge on phones) */
.item-btn, .mbr-section-btn > .btn { max-width: calc(100% - .5rem); box-sizing: border-box; }
img, iframe, video { max-width: 100%; }

/* ===== v2.9.1 - ONE LOOK FOR THE WHOLE SITE =====
   The pages added in 2.8.x (systems, advertise, courses, login/register, recovery) used a navy
   header, left-aligned titles and white content areas, while the theme pages are black with centered
   titles. Same identity everywhere now: black background with the navbar's soft gradient on top,
   centered page headers, white cards on black, amber accents. Theme pages are untouched. */
.msp-sysp-hero, .msp-adv-hero, .msp-crs .msp-crs-hero, .msp-crs--closed { background: linear-gradient(180deg, #161616 0%, #000000 100%); }
.msp-sysp-hero, .msp-adv-hero, .msp-crs .msp-crs-hero:not(:has(.msp-crs-head)) { text-align: center; }
.msp-sysp-lead, .msp-adv-lead, .msp-crs .msp-crs-hero:not(:has(.msp-crs-head)) .msp-crs-lead { margin-left: auto; margin-right: auto; }
.msp-sysp-jump { justify-content: center; }
.msp-sysp-kicker, .msp-adv-kicker, .msp-crs .msp-crs-kicker, .msp-auth .msp-auth-kicker { color: var(--msp-accent, #ffe161); }
.msp-sysp, .msp-adv, .msp-crs, .msp-auth { background: #000000; }
.msp-adv-h2, .msp-crs .msp-crs-h2 { color: #ffffff; }
.msp-crs--lesson .msp-crs-lesson-title { color: #ffffff; }
.msp-crs--lesson .msp-crs-desc { color: #cbd5e1; }
.msp-crs--lesson .msp-crs-back { color: var(--msp-accent, #ffe161); }
.msp-sysp-body > .msp-sys-note { color: #cbd5e1; }

/* ===== v2.9.5 - ARTICLES PAGE — colors follow the platform skin (backoffice > Skin) =====
   header-articles.php sets these variables from tispcms_skin_theme (backgrounds, texts) and from the
   real color of the skin's button classes (accent), checking contrast. Below: safe defaults. */
body:has(.msp-art), .msp-art { --art-bg: #070b1d; --art-card: #0c1230; --art-text: #ffffff; --art-muted: #a7b1cf;
    --art-accent: #4f46e5; --art-accent2: #22d3ee; --art-on-accent: #ffffff; --art-link: #7aa7ff;
    --art-line: #1f2b5e; --art-line2: #2f3b78; --art-glow: rgba(79, 70, 229, .22); --art-glow2: rgba(34, 211, 238, .14); }
/* v2.9.9: the page background is painted on <body> (whole page, behind the footer too); the article
   sections and the article footer are TRANSPARENT. Only on pages that contain .msp-art. */
body:has(.msp-art) { background: linear-gradient(180deg, #000000 0%, var(--art-bg) 45%, #000000 100%) !important; }  /* v3.0.0: the theme's own section gradient (black <-> skin dark), no colored glows */
.msp-art { background: transparent !important; color: var(--art-text); }
.msp-art .breadcrumb { background: transparent; margin-bottom: 8px; }
.msp-art .breadcrumb a { color: var(--art-link) !important; text-decoration: none; }
.msp-art .breadcrumb-item.active { color: var(--art-muted) !important; }
.msp-art .msp-art-h1 strong { color: var(--art-text); letter-spacing: .01em; }
.msp-art .msp-art-accent { color: var(--art-accent); }  /* v3.0.0: solid theme highlight, like the home headline */
.msp-art .msp-art-underline { display: block; width: 96px; height: 4px; margin: 16px auto 0; border-radius: 4px; background: var(--art-accent); }
/* search */
.msp-art .msp-art-header { padding: 28px 0 8px; background: transparent; }
.msp-art .msp-art-search { display: flex; max-width: 620px; margin: 0 auto 26px; border: 1.5px solid var(--art-line2); border-radius: 14px; background: var(--art-card); overflow: hidden; transition: border-color .15s ease, box-shadow .15s ease; }
.msp-art .msp-art-search:focus-within { border-color: var(--art-accent); box-shadow: 0 0 0 3px var(--art-glow); }
.msp-art .msp-art-search input { flex: 1; min-width: 0; height: 52px; border: 0; background: transparent; color: var(--art-text); padding: 0 18px; font-size: 1rem; outline: none; }
.msp-art .msp-art-search input::placeholder { color: var(--art-muted); opacity: .85; }
.msp-art .msp-art-search button { flex: none; width: 58px; border: 0; background: var(--art-fill, var(--art-accent)); color: var(--art-on-accent); display: flex; align-items: center; justify-content: center; cursor: pointer; }
.msp-art .msp-art-search button:hover { filter: brightness(1.1); }
/* category pills */
.msp-art .msp-art-pills { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 8px; }
.msp-art .msp-art-pill { display: inline-flex; align-items: center; min-height: 40px; padding: 0 20px; border-radius: 999px; border: 1.5px solid var(--art-line2); color: var(--art-text); font-weight: 600; font-size: .95rem; text-decoration: none; background: var(--art-card); transition: border-color .15s ease, background .15s ease; white-space: nowrap; }
.msp-art .msp-art-pill:hover { border-color: var(--art-accent); color: var(--art-text); text-decoration: none; }
.msp-art .msp-art-pill.is-active { background: var(--art-fill, var(--art-accent)); border-color: transparent; color: var(--art-on-accent); }
.msp-art .msp-art-pill:focus-visible, .msp-art .msp-art-search button:focus-visible, .msp-art .msp-art-more:focus-visible, .msp-art .msp-art-title a:focus-visible { outline: 3px solid var(--art-accent2); outline-offset: 2px; }
/* sponsored line */
.msp-art .msp-art-ad { margin: 26px auto 6px; max-width: 520px; text-align: center; }
.msp-art .msp-art-ad-label { display: flex; align-items: center; gap: 14px; color: var(--art-muted); font-size: .72rem; font-weight: 700; letter-spacing: .24em; margin-bottom: 6px; }
.msp-art .msp-art-ad-label::before, .msp-art .msp-art-ad-label::after { content: ""; flex: 1; height: 1px; background: var(--art-line); }
/* cards */
.msp-art .msp-art-grid { row-gap: 26px; }
.msp-art .msp-art-card { height: 100%; display: flex; flex-direction: column; background: var(--art-card); border: 1px solid var(--art-line); border-radius: 16px; overflow: hidden; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.msp-art .msp-art-card:hover { transform: translateY(-3px); border-color: var(--art-accent); box-shadow: 0 18px 40px var(--art-glow); }
.msp-art .msp-art-thumb { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--art-bg); }
.msp-art .msp-art-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0 !important; transition: transform .4s ease; }
.msp-art .msp-art-card:hover .msp-art-thumb img { transform: scale(1.03); }
.msp-art .msp-art-body { display: flex; flex-direction: column; gap: 10px; padding: 22px 26px; flex: 1; }
.msp-art .msp-art-badge { align-self: flex-start; padding: 4px 12px; border-radius: 999px; background: var(--art-fill, var(--art-accent)); color: var(--art-on-accent); font-size: .72rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.msp-art .msp-art-title { margin: 0; font-size: 1.45rem; line-height: 1.25; font-weight: 800; }
.msp-art .msp-art-title a { color: var(--art-text); text-decoration: none; }
.msp-art .msp-art-title a:hover { color: var(--art-link); }
.msp-art .msp-art-excerpt { margin: 0; color: var(--art-muted); font-size: 1rem; line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.msp-art .msp-art-meta { margin-top: auto; padding-top: 10px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--art-muted); font-size: .9rem; }
.msp-art .msp-art-time { display: inline-flex; align-items: center; gap: 6px; }
.msp-art .msp-art-more { display: inline-flex; align-items: center; gap: 6px; color: var(--art-link); font-weight: 700; text-decoration: none; }
.msp-art .msp-art-more:hover { color: var(--art-text); text-decoration: none; }
.msp-art .msp-art-more svg { transition: transform .15s ease; }
.msp-art .msp-art-more:hover svg { transform: translateX(3px); }
/* bottom: categories + pager */
.msp-art .msp-art-footer { margin-top: 30px; }
.msp-art .msp-art-footer .btn, .msp-art .msp-art-footer .page-link, .msp-art .msp-art-footer a { border-radius: 999px !important; }
@media (max-width: 767.98px) {
    .msp-art .msp-art-pills { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; scroll-snap-type: x proximity; padding-bottom: 6px; margin: 0 -12px 8px; padding-left: 12px; padding-right: 12px; scrollbar-width: none; }
    .msp-art .msp-art-pills::-webkit-scrollbar { display: none; }
    .msp-art .msp-art-pill { scroll-snap-align: start; }
    .msp-art .msp-art-title { font-size: 1.25rem; }
    .msp-art .msp-art-body { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) { .msp-art .msp-art-card, .msp-art .msp-art-thumb img, .msp-art .msp-art-more svg { transition: none; } .msp-art .msp-art-card:hover { transform: none; } }
/* ===== v2.9.6 - ARTICLE PAGE (reading view) — same skin variables as the list ===== */
.msp-art-read { padding: 130px 16px 70px; }
.msp-art .msp-art-read-wrap { max-width: 760px; margin: 0 auto; }
.msp-art .msp-art-crumbs { background: transparent; padding: 0; margin: 0 0 18px; font-size: .9rem; }
.msp-art .msp-art-crumbs a { color: var(--art-link); text-decoration: none; }
.msp-art .msp-art-crumbs .breadcrumb-item.active, .msp-art .msp-art-crumbs .breadcrumb-item + .breadcrumb-item::before { color: var(--art-muted); }
.msp-art .msp-art-read-meta { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 14px; color: var(--art-muted); font-size: .9rem; }
.msp-art .msp-art-read-meta .msp-art-badge { text-decoration: none; }
.msp-art .msp-art-read-title { margin: 0 0 14px; color: var(--art-text); font-size: 2.6rem; line-height: 1.15; font-weight: 800; letter-spacing: -.01em; }
.msp-art .msp-art-read-lead { margin: 0 0 26px; color: var(--art-muted); font-size: 1.2rem; line-height: 1.6; }
.msp-art .msp-art-read-figure { margin: 0 0 8px; border-radius: 16px; overflow: hidden; border: 1px solid var(--art-line); background: var(--art-card); }
.msp-art .msp-art-read-figure img { display: block; width: 100%; height: auto; }
/* article body (HTML from the backoffice editor) */
.msp-art .msp-art-content { color: var(--art-muted); font-size: 1.125rem; line-height: 1.8; margin-top: 18px; overflow-wrap: break-word; }
.msp-art .msp-art-content p { margin: 0 0 1.2em; }
.msp-art .msp-art-content h2, .msp-art .msp-art-content h3, .msp-art .msp-art-content h4 { color: var(--art-text); font-weight: 800; line-height: 1.3; margin: 1.6em 0 .6em; }
.msp-art .msp-art-content h2 { font-size: 1.7rem; } .msp-art .msp-art-content h3 { font-size: 1.4rem; } .msp-art .msp-art-content h4 { font-size: 1.2rem; }
.msp-art .msp-art-content strong, .msp-art .msp-art-content b { color: var(--art-text); }
.msp-art .msp-art-content a { color: var(--art-link); text-decoration: underline; text-underline-offset: 3px; }
.msp-art .msp-art-content ul, .msp-art .msp-art-content ol { margin: 0 0 1.2em; padding-left: 1.4em; }
.msp-art .msp-art-content li { margin: .35em 0; }
.msp-art .msp-art-content li::marker { color: var(--art-accent); }
.msp-art .msp-art-content blockquote { margin: 1.4em 0; padding: 14px 20px; border-left: 4px solid var(--art-accent) !important; background: var(--art-card); border-radius: 0 12px 12px 0; color: var(--art-text); font-style: normal; }
.msp-art .msp-art-content img { max-width: 100%; height: auto; border-radius: 12px; margin: 1em 0; }
.msp-art .msp-art-content table { width: 100%; border-collapse: collapse; margin: 1.2em 0; display: block; overflow-x: auto; }
.msp-art .msp-art-content th, .msp-art .msp-art-content td { border: 1px solid var(--art-line); padding: 8px 12px; }
.msp-art .msp-art-content hr { border: 0; height: 1px; background: var(--art-line); margin: 2em 0; }
/* tags, CTA, bottom nav */
.msp-art .msp-art-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 26px 0; }
.msp-art .msp-art-tag { padding: 5px 12px; border-radius: 999px; border: 1px solid var(--art-line2); color: var(--art-muted); font-size: .85rem; background: var(--art-card); }
.msp-art .msp-art-cta { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 54px; margin: 10px 0 20px; border-radius: 14px; background: var(--art-fill, var(--art-accent)); color: var(--art-on-accent); font-weight: 800; text-decoration: none; }
.msp-art .msp-art-cta:hover { filter: brightness(1.08); color: var(--art-on-accent); text-decoration: none; }
.msp-art .msp-art-read-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 34px; padding-top: 26px; border-top: 1px solid var(--art-line); }
@media (max-width: 767.98px) {
    .msp-art-read { padding: 100px 14px 50px; }
    .msp-art .msp-art-read-title { font-size: 1.85rem; }
    .msp-art .msp-art-read-lead { font-size: 1.05rem; }
    .msp-art .msp-art-content { font-size: 1.05rem; line-height: 1.75; }
}
/* The backoffice editor wraps the text in theme classes (e.g. <div class="display-7">) and the theme's
   scroll script makes every paragraph "rise" on scroll: reading typography wins, no per-paragraph animation */
.msp-art .msp-art-content [class*="display-"], .msp-art .msp-art-content .mbr-fonts-style { font-size: inherit !important; line-height: inherit !important; }
.msp-art .msp-art-content .animate__animated, .msp-art .msp-art-read-head .animate__animated { animation: none !important; }
.msp-art .msp-art-content .hidden, .msp-art .msp-art-read-head .hidden { visibility: visible !important; opacity: 1 !important; }
.msp-art .msp-art-content p, .msp-art .msp-art-content li { line-height: inherit !important; font-size: inherit !important; }
/* ===== v2.9.7 - Footer of the article pages (footer-article.php): page background + skin colors ===== */
/* v2.9.9: no background at all (transparent); neutral skin text color, no accent colors */
.msp-art.msp-art-foot, .msp-art.msp-art-foot .container, .msp-art.msp-art-foot .row, .msp-art.msp-art-foot [class*="col-"] { background: transparent !important; }
.msp-art.msp-art-foot, .msp-art.msp-art-foot .text-white, .msp-art.msp-art-foot small, .msp-art.msp-art-foot .mbr-white,
.msp-art.msp-art-foot a, .msp-art.msp-art-foot a.text-white, .msp-art.msp-art-foot .socicon, .msp-art.msp-art-foot .mbr-iconfont { color: var(--art-muted) !important; }
.msp-art.msp-art-foot a:hover { text-decoration: underline; }
/* ===== v2.9.8 - Articles: bottom bar (categories + pagination) with the skin colors ===== */
.msp-art .msp-art-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin: 36px 0 10px; padding-top: 24px; border-top: 1px solid var(--art-line); }
.msp-art .msp-art-footer .paginator { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; background: transparent !important; }
.msp-art .msp-art-footer .paginator_item { min-width: 42px; height: 42px; padding: 0 12px; margin: 0 !important; display: inline-flex; align-items: center; justify-content: center;
    border-radius: 12px !important; border: 1.5px solid var(--art-line2) !important; background: var(--art-card) !important; color: var(--art-text) !important;
    font-weight: 700; font-size: .95rem; line-height: 1; text-decoration: none !important; transition: border-color .15s ease, background .15s ease; }
.msp-art .msp-art-footer a.paginator_item:hover { border-color: var(--art-accent) !important; color: var(--art-text) !important; }
.msp-art .msp-art-footer .paginator_active { background: var(--art-fill, var(--art-accent)) !important; border-color: transparent !important; color: var(--art-on-accent) !important; }
.msp-art .msp-art-footer a.paginator_item:focus-visible { outline: 3px solid var(--art-accent2); outline-offset: 2px; }
@media (max-width: 575.98px) { .msp-art .msp-art-footer { flex-direction: column; justify-content: center; } }
/* the theme animated the page links ("rise" from below) but not the current page: all static now */
.msp-art .msp-art-footer .animate__animated { animation: none !important; }
.msp-art .msp-art-footer .hidden { visibility: visible !important; opacity: 1 !important; }
/* ===== v3.0.2 - Offers showcase (/new-offers): platform paginator, theme accent ===== */
.msp-showcase-pager { display: flex; justify-content: center; margin: 28px 0 8px; }
.msp-showcase-pager .paginator { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; background: transparent !important; }
.msp-showcase-pager .paginator_item { min-width: 42px; height: 42px; padding: 0 12px; margin: 0 !important; display: inline-flex; align-items: center; justify-content: center;
    border-radius: 12px !important; border: 1.5px solid rgba(255, 255, 255, .22) !important; background: rgba(255, 255, 255, .04) !important; color: #ffffff !important;
    font-weight: 700; line-height: 1; text-decoration: none !important; transition: border-color .15s ease; }
.msp-showcase-pager a.paginator_item:hover { border-color: var(--msp-accent, #ffe161) !important; }
.msp-showcase-pager .paginator_active { background: var(--msp-accent, #ffe161) !important; border-color: transparent !important; color: #111827 !important; }
.msp-showcase-pager a.paginator_item:focus-visible { outline: 3px solid var(--msp-accent, #ffe161); outline-offset: 2px; }
.msp-showcase-pager .animate__animated { animation: none !important; }
.msp-showcase-pager .hidden { visibility: visible !important; opacity: 1 !important; }

/* ===== v3.2.0 - Software landing pages (/software/{name}) — theme look + each system's color ===== */
.msp-sw { background: #000000; color: #e5e7eb; padding-bottom: 40px; }
.msp-sw .msp-sw-hero { background: radial-gradient(700px 380px at 85% 0%, color-mix(in srgb, var(--sw-color) 30%, transparent), transparent 65%), linear-gradient(180deg, #161616 0%, #000000 100%); padding: 130px 0 56px; }
.msp-sw .msp-sw-hero-grid { display: grid; gap: 32px; align-items: center; grid-template-columns: 1fr; }
@media (min-width: 992px) { .msp-sw .msp-sw-hero-grid { grid-template-columns: 1.05fr 1fr; } }
.msp-sw .msp-sw-kicker { display: inline-block; color: color-mix(in srgb, var(--sw-color) 55%, #ffffff); font-weight: 800; letter-spacing: .14em; font-size: .8rem; text-transform: uppercase; margin-bottom: 10px; }
.msp-sw .msp-sw-hero .msp-sw-kicker { color: #ffffff; background: color-mix(in srgb, var(--sw-color) 60%, #000); padding: 4px 12px; border-radius: 999px; letter-spacing: .08em; }
.msp-sw .msp-sw-title { color: #ffffff; font-size: clamp(2rem, 4.6vw, 3.4rem); font-weight: 800; line-height: 1.08; margin: 0 0 16px; }
.msp-sw .msp-sw-accent { color: var(--msp-accent, #ffe161); }
.msp-sw .msp-sw-lead { color: #cbd5e1; font-size: 1.15rem; line-height: 1.6; max-width: 620px; }
.msp-sw .msp-sw-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.msp-sw .msp-sw-btn { min-height: 48px; padding: 0 24px; border-radius: 12px; font-weight: 800; display: inline-flex; align-items: center; }
.msp-sw .msp-sw-btn--solid { background: var(--msp-accent, #ffe161); color: #111827; border: 0; }
.msp-sw .msp-sw-btn--ghost { background: transparent; color: #ffffff; border: 1.5px solid rgba(255, 255, 255, .45); }
.msp-sw .msp-sw-btn:hover { filter: brightness(1.06); }
.msp-sw .msp-sw-hero-img img { width: 100%; height: auto; max-width: 560px; margin: 0 auto; display: block; }
.msp-sw .msp-sw-section { padding-top: 56px; }
.msp-sw .msp-sw-h2 { color: #ffffff; font-weight: 800; font-size: clamp(1.5rem, 3vw, 2.1rem); margin: 0 0 18px; }
.msp-sw .msp-sw-center { text-align: center; } .msp-sw .msp-sw-muted { color: #cbd5e1; }
.msp-sw .msp-sw-features { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.msp-sw .msp-sw-feature { display: flex; gap: 12px; align-items: flex-start; background: #ffffff; color: #0f172a; border-radius: 14px; padding: 16px 18px; font-weight: 600; }
.msp-sw .msp-sw-check { flex: none; width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--sw-color) 14%, #fff); color: color-mix(in srgb, var(--sw-color) 80%, #000); }
.msp-sw .msp-sw-why { display: grid; gap: 28px; align-items: center; grid-template-columns: 1fr; }
@media (min-width: 992px) { .msp-sw .msp-sw-why { grid-template-columns: 1fr 1.1fr; } }
.msp-sw .msp-sw-why img { width: 100%; height: auto; border-radius: 18px; }
.msp-sw .msp-sw-why p { color: #cbd5e1; font-size: 1.05rem; line-height: 1.7; }
.msp-sw .msp-sw-plans { display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); max-width: 980px; margin: 24px auto 0; }
.msp-sw .msp-sw-plan { background: #ffffff; color: #0f172a; border-radius: 18px; padding: 24px; display: flex; flex-direction: column; border: 2px solid transparent; }
.msp-sw .msp-sw-plan--top { border-color: var(--sw-color); box-shadow: 0 18px 44px color-mix(in srgb, var(--sw-color) 28%, transparent); }
.msp-sw .msp-sw-plan-top { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.msp-sw .msp-sw-plan h3 { margin: 0; font-weight: 800; color: #0f172a; }
.msp-sw .msp-sw-tag { background: color-mix(in srgb, var(--sw-color) 60%, #000); color: #ffffff; font-size: .75rem; font-weight: 800; padding: 3px 10px; border-radius: 999px; }
.msp-sw .msp-sw-price { font-size: 1.9rem; font-weight: 800; color: #0f172a; margin: 10px 0 12px; }
.msp-sw .msp-sw-plan ul { list-style: none; padding: 0; margin: 0 0 18px; display: grid; gap: 8px; color: #334155; }
.msp-sw .msp-sw-plan li { display: flex; gap: 8px; align-items: flex-start; } .msp-sw .msp-sw-plan li svg { flex: none; color: color-mix(in srgb, var(--sw-color) 80%, #000); margin-top: 2px; }
.msp-sw .msp-sw-pay { margin-top: auto; display: grid; gap: 8px; }
.msp-sw .msp-sw-pay-btn { min-height: 46px; border-radius: 12px; font-weight: 800; background: #ffffff; color: #0f172a; border: 1.5px solid #cbd5e1; border-left-width: 8px; justify-content: flex-start; padding: 0 16px; display: flex; align-items: center; }
.msp-sw .msp-sw-pay-btn--mercadopago { border-left-color: #009ee3; } .msp-sw .msp-sw-pay-btn--pagbank { border-left-color: #00a868; }
.msp-sw .msp-sw-pay-btn--paypal { border-left-color: #003087; } .msp-sw .msp-sw-pay-btn--team { border-left-color: #15803d; }
.msp-sw .msp-sw-pay-btn:hover { background: #f8fafc; color: #0f172a; }
.msp-sw .msp-sw-note { text-align: center; color: #94a3b8; font-size: .9rem; margin-top: 16px; }
.msp-sw .msp-sw-final { text-align: center; background: radial-gradient(600px 260px at 50% 0%, color-mix(in srgb, var(--sw-color) 26%, transparent), transparent 70%), #0b0b0b; border: 1px solid #1f2937; border-radius: 22px; padding: 42px 22px; }
.msp-sw .msp-sw-final p { color: #cbd5e1; max-width: 680px; margin-left: auto; margin-right: auto; }
.msp-sw .animate__animated { animation: none !important; } .msp-sw .hidden { visibility: visible !important; opacity: 1 !important; }
.msp-sw .msp-sw-ref { display: inline-block; margin: 0 0 12px 10px; color: #e5e7eb; font-size: .9rem; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .18); border-radius: 999px; padding: 4px 12px; }
