/*
Theme Name: Oleafertility Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/
@font-face { font-family: 'UTM Aptima'; src: url("assets/fonts/UTMAptimaBold.woff2") format("woff2"), url("assets/fonts/UTMAptimaBold.woff") format("woff"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'UTM Aptima'; src: url("assets/fonts/UTMAptima.woff2") format("woff2"), url("assets/fonts/UTMAptima.woff") format("woff"); font-weight: 400; font-style: normal; font-display: swap; }
body, h1, h2, h3, h4, h5, h6 { font-family: "UTM Aptima", sans-serif !important; font-weight: 400 !important; }

.button:not(.icon) { text-transform: none !important; font-weight: 400 !important; }
.button:not(.icon).is-larger { font-size: 24px; padding: 3px 20px 5px; }
.button:not(.icon).is-large { font-size: 1.1em; padding: 3px 15px 5px; }
.button:not(.icon).white { color: var(--fs-color-primary); }
.button:not(.icon) .icon-angle-down:before { content: ''; width: 26px; height: 26px; background: url("assets/images/download.png") no-repeat center center; background-size: contain; display: block; }

.scroll-down { display: flex; flex-direction: column; align-content: center; justify-content: center; align-items: center; }
.scroll-down span { font-style: italic; }

.section img.size-full.alignnone { margin-bottom: 0em; }

@media screen and (min-width: 850px) { .row-divided > .col + .col:not(.large-12), .col.col-divided:not(.col-first):last-child { border-left: 1px solid #1E2828; }
  .dark .row-divided > .col + .col:not(.large-12), .dark .col.col-divided:not(.col-first):last-child { border-left: 1px solid #fff; } }
.section-title { border-bottom: none; }
.section-title b { opacity: 0; }
.section-title .section-title-main { border-bottom: none; color: var(--fs-color-primary); font-family: "UTM Aptima"; font-size: 64px; font-style: normal; font-weight: 400; line-height: 60px; }
.section-title.section-title-bold .section-title-main { border-radius: 8px; background: #294023; color: #FFF; font-size: 20px; line-height: 1.2; padding: 10px 15px; text-transform: none; }

.multiply { mix-blend-mode: multiply; }

.hero-banner .section-content { min-height: inherit; display: flex; align-items: center; }
.hero-banner h1 { letter-spacing: -3.36px; margin-bottom: 0; }
.hero-banner:before { content: ''; width: 49px; height: 49px; background: url(assets/images/scrolldown.svg) no-repeat center center; background-size: contain; display: block; position: absolute; z-index: 1; bottom: 70px; left: 50%; transform: translateX(-50%); }
.hero-banner:after { content: 'Scroll down to explore'; width: 199px; height: 29px; display: block; position: absolute; z-index: 1; bottom: 35px; left: 50%; transform: translateX(-50%); text-align: center; }

.shine { position: relative; overflow: hidden; }
.shine::before { background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%); content: ""; display: block; height: 100%; left: -75%; position: absolute; top: 0; transform: skewX(-25deg); width: 50%; z-index: 2; animation: shine 2s ease-in-out infinite; }
@keyframes shine { 0% { left: -75%; }
  50% { left: 125%; }
  100% { left: 125%; } }
.section2 .ux-menu { flex-direction: row; gap: 30px; position: absolute; bottom: -100px; right: 100px; }
.section2 .ux-menu .ux-menu-link { position: relative; }
.section2 .ux-menu .ux-menu-link__link { position: relative; font-size: 20px; color: #1E2828; }
.section2 .ux-menu .ux-menu-link__link:hover { color: var(--fs-color-primary); font-weight: 700; }
.section2 .ux-menu .ux-menu-link:not(:last-child)::before { content: ''; width: 1px; height: 20px; background: #1E2828; position: absolute; top: 50%; right: -16px; transform: translateY(-50%); }

.section3 .row.row-collapse > .col:nth-child(1) > .col-inner { background: #658B29 url("assets/images/section3-bg1.png") no-repeat center center; background-size: cover; min-height: 583px; display: flex; flex-direction: column; justify-content: center; }
.section3 .row.row-collapse > .col:nth-child(2) > .col-inner { background: #C9C5AC url("assets/images/section3-bg2.png") no-repeat center center; background-size: cover; min-height: 583px; display: flex; flex-direction: column; justify-content: flex-end; font-size: 24px; }
.section3 .row.row-collapse > .col:nth-child(2) .row { top: 0; max-width: 650px; }
.section3 .row-dashed { max-width: 420px; margin: 0 auto !important; }
.section3 .row-dashed .col:after { border-bottom: 1px solid #1E2828; }
.section3 .row-dashed .col:before { border-left: 1px solid #1E2828; height: 86%; }
.section3 .row-dashed .col:last-child:before { top: auto; bottom: 0; }
.section3 .row-divided > .col + .col:not(.large-12) { border-left: 1px solid #1E2828; }
.section3 .ux-menu .ux-menu-link__link { font-size: 24px; border-bottom-color: #fff; }
.section3 .ux-menu .ux-menu-link__link:hover { font-weight: 700; }
.section3 .ux-menu .ux-menu-link.active .ux-menu-link__link { font-weight: 700; }

html:not([data-ng-app="uxBuilder"]) .row.treament-1, html:not([data-ng-app="uxBuilder"]) .row.treament-2 { display: none; }

.btn-treament { margin-bottom: 0; transition: all 0.3s ease; }
.btn-treament.active { font-weight: 700; color: var(--fs-color-primary); }

.slide-testimonials > .col-inner:before { content: ''; width: 384px; height: 179px; background: url("assets/images/text-2.png") no-repeat center center; background-size: contain; display: block; position: absolute; z-index: 1; top: -60px; left: -70px; }
.slide-testimonials > .col-inner::after { content: ''; width: 522px; height: 220px; background: url("assets/images/text-3.png") no-repeat center center; background-size: contain; display: block; position: absolute; left: 50%; top: 0; z-index: -1; }
.slide-testimonials .row { top: 0; }
.slide-testimonials p { color: #000; font-size: 20px; font-style: italic; font-weight: 400; line-height: normal; }
.slide-testimonials .quote { padding-left: 80px; }
.slide-testimonials .quote:before { content: ''; width: 74.609px; height: 41.211px; background: url("assets/images/quote.png") no-repeat center center; background-size: cover; display: block; position: absolute; left: 0; top: 0; }

.flickity-page-dots { bottom: 0; }
.flickity-page-dots .dot { border: none; height: 12px; width: 12px; border-width: 1px; opacity: 1; background-color: transparent; position: relative; margin: 0 10px; }
.flickity-page-dots .dot:before { content: ""; border: 1px solid #1E1E1E; position: absolute; top: -2px; left: -2px; height: 16px; width: 16px; border-radius: 100px; }
.flickity-page-dots .dot.is-selected { background-color: var(--fs-color-primary) !important; }

.full-width-img img { width: 100%; height: 100%; }

.icon-messenger:before { content: ''; width: 30px; height: 30px; background: url("assets/images/mess.png") no-repeat center center; background-size: contain; display: block; }

.icon-zalo:before { content: ''; width: 30px; height: 30px; background: url("assets/images/zalo.png") no-repeat center center; background-size: contain; display: block; }

.icon-viber:before { content: ''; width: 30px; height: 30px; background: url("assets/images/viber.png") no-repeat center center; background-size: contain; display: block; }

.social-icons { display: flex; gap: 16px; }

.icon-hotspot { height: 12px; width: 12px; border-radius: 100px; background-color: #fff; }
.icon-hotspot:before { content: ""; border: 1px solid #fff; position: absolute; top: -2px; left: -2px; height: 16px; width: 16px; border-radius: 100px; animation: hotspot-pulse 2s ease-in-out infinite; }

@keyframes hotspot-pulse { 0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.5); opacity: 0.5; } }
.map-image img { width: 100%; }

.back-to-top { border: none !important; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); height: 50px; width: 50px; bottom: 60px; background: var(--secondary-color) !important; color: #000 !important; font-size: 19px; line-height: 47px !important; }

.white-popup-block { background: #FFF; padding: 0px 0px; text-align: left; max-width: 500px; margin: 40px auto; position: relative; border-radius: 15px; overflow: hidden; }
.white-popup-block .mfp-close { color: #000 !important; mix-blend-mode: normal; opacity: 1; }
.white-popup-block .modal-body { padding: 15px 25px 22px; }
.white-popup-block .modal-body h3 { font-size: 24px; }
.white-popup-block .modal-body ul, .white-popup-block .modal-body ol { margin-left: 30px; }

.icon-box.pulse .icon-box-img { margin-top: 10px; }
.icon-box.pulse img { animation: pulse 2s ease-in-out infinite; }

@keyframes pulse { 0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.5); opacity: 0.5; } }
.featured-box.icon-box-left a { color: #294023; }
.featured-box.icon-box-left a:hover { color: var(--fs-color-primary); }
.featured-box.icon-box-left p { margin-bottom: 0; }

@media screen and (max-width: 850px) { .section2 .ux-menu { flex-direction: row; gap: 30px; position: relative; bottom: -50px; right: 0; }
  .section2 .ux-menu .ux-menu-link__link { font-size: 15px; }
  .section3 .row.row-collapse > .col:nth-child(1) > .col-inner { min-height: 483px; }
  .section-title .section-title-main { font-size: 30px; line-height: 25px; font-weight: 600; }
  .button:not(.icon).is-larger { font-size: 14px; padding: 3px 14px; }
  .section3 .ux-menu .ux-menu-link__link { font-size: 20px; }
  .section3 .row.row-collapse > .col:nth-child(2) > .col-inner { min-height: 383px; font-size: 18px; }
  .btn-treament { margin-bottom: 10px; }
  .slide-testimonials > .col-inner:before { content: ''; width: 230px; height: 128px; top: -36px; left: -11px; }
  .slide-testimonials { padding-top: 60px; }
  .slide-testimonials > .col-inner::after { content: ''; width: 231px; height: 100px; background: url(assets/images/text-3.png) no-repeat center center; background-size: contain; display: block; position: absolute; left: 0px; top: -120px; z-index: -1; }
  .slide-testimonials .quote { padding-left: 0; }
  .slide-testimonials p { font-size: 18px; line-height: 1.3; }
  .slide-testimonials .quote:before { position: relative; height: 22px; width: 39px; margin-bottom: 6px; }
  .featured-box.icon-box-left { align-items: center; }
  .featured-box.icon-box-left .icon-box-img { max-width: 88px !important; }
  .featured-box.icon-box-left.pulse { display: flex !important; flex-direction: row !important; gap: 10px; }
  .scroll-down svg { max-width: 30px; }
  .scroll-down span { font-size: 13px; }
  .section3 .row.row-collapse > .col > .col-inner .text p { text-align: justify !important; }
  .small-pb-half { padding-bottom: 10px !important; }
  .button:not(.icon).is-large { font-size: 14px; padding: 3px 7px 5px; }
  .section4 p { margin-bottom: 10px; }
  .section5 strong { font-weight: 500; }
  .icon-hotspot { width: 10px; height: 10px; border-radius: 100px; background-color: #fff; }
  .icon-hotspot:before { content: ""; border: 1px solid #fff; position: absolute; top: -2px; left: -2px; height: 14px; width: 14px; border-radius: 100px; animation: hotspot-pulse 2s ease-in-out infinite; }
  .contact .is-divider { margin-top: 1em !important; margin-bottom: 1em !important; }
  .contact .icon-messenger:before { width: 20px; height: 20px; }
  .contact .icon-zalo:before { width: 20px; height: 20px; }
  .contact .icon-viber:before { width: 20px; height: 20px; }
  .contact .icon-box-left .icon-box-img + .icon-box-text { padding-left: 8px; }
  .section-title.section-title-bold .section-title-main { font-size: 16px; } }
.z-index-3 { z-index: 3; }
