/*
Theme Name: Lan Kwai Fong Group
Author: Lan Kwai Fong Group
Author URI: https://www.lkfgroup.com/
Description: Re-rendering of Lan Kwai Fong Group website in 2022
Requires at least: 5.9
Tested up to: 6.0
Requires PHP: 5.6
Version: 1.0
Text Domain: lkf
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, sticky-post, threaded-comments

Lan Kwai Fong Group WordPress Theme, (C) 2022 Lan Kwai Fong Group
*/

@import url("https://use.typekit.net/qgh8amy.css");
@import url("https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;700&display=swap');

html {
  height: 100%;
}

body {
  font-family: "sofia-pro", sans-serif;
  position: relative;
}

p {
  margin: 0;
}

a {
  text-decoration: none;
  color: initial;
}

a:hover {
  color: initial;
}

.nf-form-cont {
  max-width: 797px;
  width: 100%;
}

.nf-before-form-content {
  display: none;
}

.nf-form-content .list-select-wrap .nf-field-element > div,
.nf-form-content input:not([type="button"]) {
  background: white;
  border: 0px solid #2d2a26;
  border-bottom-width: 1px;
  padding: 0 0 8px 0;
  color: black;
}

.nf-form-content input:not([type="button"]):focus {
  color: black;
  border-bottom-color: #2d2a26;
}

.nf-form-content input:not([type="button"])::placeholder {
  text-transform: uppercase;
  color: black;
}

.nf-form-content .ninja-forms-field {
  padding: 0;
}

.nf-form-content select.ninja-forms-field {
  color: black;
}

.nf-pass.field-wrap .nf-field-element:after,
.nf-error.field-wrap .nf-field-element:after {
  display: none;
}

.nf-form-content .list-select-wrap > div div:after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.562' height='7.567' viewBox='0 0 13.562 7.567'%3E%3Cg id='Group_99' data-name='Group 99' transform='translate(0 0)'%3E%3Crect id='Rectangle_51' data-name='Rectangle 51' width='1.112' height='9.59' rx='0.556' transform='translate(12.775 0) rotate(45)' fill='%232d2a26'/%3E%3Crect id='Rectangle_52' data-name='Rectangle 52' width='1.112' height='9.59' rx='0.556' transform='translate(0 0.786) rotate(-45)' fill='%232d2a26'/%3E%3C/g%3E%3C/svg%3E%0A");
}

.nf-form-content .nf-message-title {
  line-height: 50px;
  text-transform: uppercase;
}

.nf-form-content .submit-container {
  margin-top: 34px;
}

.nf-form-content .submit-wrap .nf-field-element {
  display: flex;
  justify-content: center;
}

.nf-form-content .submit-wrap input {
  text-transform: uppercase;
  height: auto;
  line-height: 18px;
  padding: 7px;
  background-color: transparent;
  border: 1px solid #000000;
  color: black;
}

.nf-form-content .submit-wrap input:hover {
  background-color: #0dfe92;
  color: black;
  border-color: #0dfe92;
}

@media (min-width: 992px) {
  .nf-form-content .nf-message-title {
    border-bottom: 1px solid #2d2a26;
  }

  .nf-form-content .submit-container {
    margin-top: 74px;
  }

  .nf-form-content .submit-wrap input {
    border: none;
    background-color: transparent;
  }
}

.wp-site-blocks {
  position: relative;
}

.wp-block-post-content {
  padding: 0 20px;
}

.wp-block-themepunch-revslider {
  width: 100%;
}

@media (min-width: 992px) {
  .wp-block-post-content {
    padding: 0 30px;
  }
}

.site-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  height: 71px;
}

.site-header .site-logo {
  margin-bottom: 0;
}

.site-header .site-logo img {
  width: auto;
  height: 30px;
}

.site-header .language-switcher {
  display: none;
}

.site-header .wpml-ls-item {
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
}

.site-header .wpml-ls-item + .wpml-ls-item {
  border-left: 1px solid #000;
}

.site-header .wpml-ls-item a {
  padding: 0;
  display: flex;
}

@media (min-width: 992px) {
  .site-header {
    padding: 0 30px;
    height: 116px;
  }

  .site-header .site-logo img {
    height: 50px;
  }

  .site-header .language-switcher {
    display: block;
  }
}

.site-footer {
  padding: 57px 66px 30px;
}

.site-footer .footer-logo {
  display: none;
}

.site-footer .footer-title {
  font-family: "bee", sans-serif;
  text-align: center;
  font-size: 35px;
  text-transform: uppercase;
}

.footer-subscribe .nf-form-cont {
  max-width: 100%;
}

.footer-subscribe nf-fields-wrap {
  display: flex;
  width: 100%;
}

.footer-subscribe nf-field:first-child {
  flex: 1;
}

.footer-subscribe .nf-field-container {
  margin: 0;
}

.footer-subscribe .ninja-forms-field:not([type="button"]) {
  font-size: 10px;
  padding: 8px 12px;
  height: auto;
  border: none;
}

.footer-subscribe .ninja-forms-field:not([type="button"])::placeholder {
  text-transform: none;
  text-align: center;
}

.footer-subscribe .ninja-forms-field[type="button"] {
  font-size: 10px;
  text-transform: capitalize;
  padding: 8px 12px;
  background-color: #0dfe92;
  line-height: 16px;
}

.site-footer .is-search-form {
  border-bottom: 1px solid #0dfe92;
  margin-bottom: 5px;
}

.site-footer .is-form-style input.is-search-input {
  background: transparent;
  border: none !important;
  padding-left: 0;
  color: black;
  font-family: "sofia-pro", sans-serif;
}

.site-footer .is-form-style input.is-search-input::placeholder {
  color: black;
}

.site-footer .is-search-icon {
  background: transparent;
  border: none;
}

.site-footer .is-form-style .is-search-submit path {
  fill: black;
}

.site-footer .footer-navigation {
  white-space: nowrap;
  margin-top: 30px;
  font-size: 12px;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.site-footer .footer-navigation > .wp-block-column {
  display: flex;
  flex-direction: column;
  gap: 17px;
}

.site-footer .footer-social-media {
  justify-content: center;
  gap: 16px;
}

.site-footer .order-5 {
  text-align: center;
  font-size: 10px;
  margin-top: 53px;
}

@media (min-width: 992px) {
  .site-footer {
    padding: 105px 90px;
  }

  .site-footer .footer-logo {
    display: block;
  }

  .site-footer .footer-title {
    display: none;
  }

  .site-footer .footer-navigation {
    font-size: 15px;
  }

  .footer-subscribe .ninja-forms-field:not([type="button"]) {
    font-size: 12px;
  }

  .footer-subscribe .ninja-forms-field:not([type="button"])::placeholder {
    text-align: left;
  }

  .footer-subscribe .ninja-forms-field[type="button"] {
    font-size: 15px;
    line-height: 18px;
  }

  .site-footer .footer-social-media {
    justify-content: flex-end;
    gap: 0.5em;
  }

  .site-footer .order-5 {
    display: none;
  }
}

.acf-hamburger-menu {
  display: none;
}

.acf-hamburger-menu .acf-menu-icon,
.acf-hamburger-menu .acf-cross-icon {
  height: 25px;
  width: 25px;
}

.acf-hamburger-menu .acf-cross-icon {
  display: none;
}

.acf-hamburger-menu .acf-menu-container {
  padding-top: 45px;
  position: absolute;
  left: 0;
  width: 100%;
  max-width: 274px;
  height: calc(100vh - 70px);
  z-index: 50;
  transition: all ease-in-out 0.15s;
  transform: translateX(-274px);
}

.acf-hamburger-menu:hover .acf-menu-container {
  transform: translateX(0);
}

.acf-hamburger-menu:hover .acf-menu-icon {
  display: none;
}

.acf-hamburger-menu:hover .acf-cross-icon {
  display: block;
}

.admin-bar .acf-hamburger-menu .acf-menu-container {
  height: calc(100vh - 71px - 32px);
}

.acf-menu-container-inner {
  height: 100%;
  background-color: white;
  padding: 66px 31px 10px;
  overflow: scroll;
}

@media (min-width: 992px) {
  .acf-menu-container-inner {
    padding: 18px 30px;
  }

  .acf-menu-container-inner .wp-block-navigation-item__content:hover::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    border-bottom: 1px solid #0dfe92;
  }
}

.acf-menu-container-inner .wp-block-navigation {
  gap: 28px;
}

.acf-menu-container-inner .wp-block-navigation-item {
  display: block;
  text-transform: uppercase;
}

.acf-menu-container-inner .wp-block-navigation-item__content {
  display: inline-block;
  position: relative;
}

.acf-menu-container-inner
  .wp-block-navigation__submenu-container
  .wp-block-navigation-item__content:hover::after {
  content: none;
}

.acf-menu-container-inner .wp-block-navigation__submenu-icon {
  width: 10px;
  display: inline-flex;
  margin-left: 10px;
  color: #0dfe92;
}

.acf-menu-container-inner .wp-block-navigation__submenu-container {
  position: relative;
  border: none;
  gap: 16px;
}

.acf-menu-container-inner
  .wp-block-navigation:not(.has-background)
  .wp-block-navigation__submenu-container {
  border: none;
  background: transparent;
  gap: 16px;
}

.acf-menu-container-inner
  .wp-block-navigation
  .has-child:where(:not(.open-on-click)):hover
  > .wp-block-navigation__submenu-icon
  svg {
  transform: rotate(180deg);
}

.acf-menu-container-inner
  .wp-block-navigation
  .has-child
  .wp-block-navigation-submenu__toggle[aria-expanded="true"]
  ~ .wp-block-navigation__submenu-container,
.acf-menu-container-inner
  .wp-block-navigation
  .has-child:where(:not(.open-on-click)):hover
  > .wp-block-navigation__submenu-container {
  padding-top: 16px;
}

.acf-menu-container-inner
  .wp-block-navigation
  :where(.wp-block-navigation__submenu-container)
  .wp-block-navigation-item__content {
  padding: 0;
  font-size: 12px;
  text-transform: uppercase;
}

@media (min-width: 992px) {
  .acf-hamburger-menu {
    display: block;
  }
}

.acf-mobile-menu .acf-menu-container {
  position: absolute;
  width: 0;
  left: 100%;
  z-index: 999;
  padding-top: 23px;
  height: calc(100vh - 48px);
  display: flex;
  flex-direction: column;
  transition: all ease-in-out 0.15s;
  overflow: hidden;
}

.acf-mobile-menu.show .acf-menu-container {
  left: 0;
  width: 100%;
}

.acf-mobile-menu .wpml-ls-legacy-list-horizontal {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  padding: 0 31px 32px;
  background-color: white;
}

.acf-mobile-menu .wpml-ls-current-language .wpml-ls-link {
  position: relative;
}

.acf-mobile-menu .wpml-ls-current-language .wpml-ls-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  border-bottom: 1px solid #0dfe92;
}

@media (min-width: 992px) {
  .acf-mobile-menu {
    display: none;
  }
}

.admin-bar .acf-mobile-menu .acf-menu-container {
  height: calc(100vh - 48px - 46px);
}

.acf-section {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.acf-section-heading {
  font-family: "bee", sans-serif;
  text-transform: uppercase;
  text-align: center;
  font-size: 50px;
  height: 60px;
}

html[lang="zh-hant"] .acf-section-heading {
  font-family: "Noto Sans SC", sans-serif;
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  height: 60px;
}

.acf-section-description {
  font-family: "sofia-pro", sans-serif;
  font-size: 16px;
  line-height: 21px;
}

html[lang="zh-hant"] .acf-section-description {
  font-family: "Noto Sans SC", sans-serif;
  font-size: 16px;
  line-height: 21px;
}

.acf-section-link {
  display: block;
  text-align: center;
  font-family: "sofia-pro", sans-serif;
  text-transform: uppercase;
  font-size: 12px;
  line-height: 16px;
  border-bottom: 1px solid #0dfe92;
}

.acf-carousel {
  max-width: 100%;
}

.acf-carousel .swiper {
  width: 100%;
}

.acf-carousel .swiper-wrapper {
  align-items: center;
}

.acf-carousel .swiper-slide {
  width: auto;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  row-gap: 10px;
}

.acf-carousel .swiper-slide:last-child {
  margin-right: 0 !important;
}

.acf-carousel .swiper-slide img {
  object-fit: cover;
}

.acf-carousel .swiper-slide .description {
  width: 100%;
  text-align: left;
}

.acf-carousel .swiper-slide .link {
  position: absolute;
  inset: 0;
}

.acf-carousel .acf-carousel-navigation {
  display: flex;
  justify-content: space-between;
  margin-top: 12px;
}

.acf-cover {
  width: 100%;
}

.acf-cover img {
  width: 100%;
  height: auto;
}

.acf-post-tabs {
  max-width: 100%;
}

.acf-post-tabs .acf-posts-terms {
  margin: 0 -20px;
  padding: 20px;
  box-shadow: 0 3px 10px rgb(0 0 0 / 16%);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.acf-post-tabs .swiper {
  max-width: 100%;
}

.acf-post-tabs .acf-posts-term {
  width: auto;
  padding: 0;
  background: transparent;
  border: 2px solid transparent;
  font-family: "bee", sans-serif;
  font-size: 29px;
  text-transform: uppercase;
  line-height: 30px;
  color: black;
}

.acf-post-tabs .acf-posts-term:last-child {
  margin-right: 0 !important;
}

.acf-post-tabs .acf-posts {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.acf-post-tabs .acf-posts-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.acf-post-tabs .acf-posts-section.hide {
  display: none;
}

.acf-post-tabs .acf-posts-section-heading {
  margin-bottom: 36px;
}

.acf-post-tabs .acf-posts-wrapper {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 82px;
}

.acf-post-tabs .acf-section {
  width: 100%;
}

.acf-post-tabs .acf-section-heading {
  margin-bottom: 23px;
}

.acf-post-tabs .acf-section-description {
  margin-top: 30px;
}

.acf-post-tabs .acf-section-link {
  margin-top: 21px;
}

@media (min-width: 992px) {
  .acf-section-heading {
    font-size: 80px;
    height: 98px;
  }
	
  .acf-section-description {
    text-align: center;
    max-width: 798px;
  }

  .acf-section-link {
    border-bottom-color: transparent;
  }

  .acf-section-link:hover {
    border-bottom-color: #0dfe92;
  }

  .acf-carousel .swiper-slide {
    row-gap: 17px;
  }

  .acf-carousel .swiper-slide .description {
    text-align: center;
  }

  .acf-carousel .acf-carousel-navigation {
    margin-top: 24px;
  }

  .acf-post-tabs {
    max-width: 1170px;
  }

  .acf-post-tabs .acf-posts-terms {
    margin: 0;
    padding: 0;
    box-shadow: none;
  }

  .acf-post-tabs .acf-posts-term {
    font-size: 40px;
    line-height: 48px;
  }

  .acf-post-tabs .acf-posts-term.active {
    padding: 0 16px;
    background-color: #0dfe92;
  }

  .acf-post-tabs .acf-posts-term:hover {
    border-bottom-color: #0dfe92;
  }

  .acf-post-tabs .acf-posts-section-heading {
    margin-bottom: 62px;
  }

  .acf-post-tabs .acf-posts-wrapper {
    row-gap: 153px;
  }

  .acf-post-tabs .acf-section-heading {
    margin-bottom: 38px;
  }

  .acf-post-tabs .acf-section-description {
    margin-top: 50px;
  }

  .acf-post-tabs .acf-section-link {
    margin-top: 35px;
  }
}

.editor-styles-wrapper .acf-hamburger-menu .acf-menu-container {
  width: 274px;
}

.editor-styles-wrapper .acf-mobile-menu.show .acf-menu-container {
  width: 274px;
  left: -250px;
}
