/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: 
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags:
*/

/* =========== GENERAL =========== */

html,body {
	max-width:100%;
	overflow-x:hidden;
}

.e-gallery-container {
	overflow-x: hidden!important;
	overflow: hidden!important;
}
.comments-area a, .page-content a {
    text-decoration: none!important;
}
.elementor-widget-image a {
  width: 100%;
}
.elementor-slideshow__title {
    display: none;
}
.elementor-widget-html iframe {
    display: block;
    margin: 0 !important;
    padding: 0 !important;
}
.e-svg-base,
.e-svg-base svg,
.elementor-widget-container {
  overflow: hidden;
}
.elementor-widget-container {
  overflow: hidden;
}

br.mbreak {}

@media screen and (min-width: 2400px)  {
   /* br.mbreak {display:none!important;}*/
}
@media screen and (max-width: 1024px)  {
    br.mbreak {display:none!important;}
}

/* 
Fix Gutenberg empty paragraphs not showing line breaks in Post Content
- Issue: <p></p> has no height, Enter key spacing disappears
*/

body .elementor-widget-theme-post-content p {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  line-height: 1.7 !important;
}

body .elementor-widget-theme-post-content p:empty {
  display: block !important;
  min-height: 0px !important;
  margin-bottom: 20px !important;
}

body .elementor-widget-theme-post-content p:empty::before {
  content: "\00a0" !important;
  display: block !important;
}

body .elementor-widget-theme-post-content ul,
body .elementor-widget-theme-post-content ol,
body .elementor-widget-text-editor ul,
body .elementor-widget-text-editor ol {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  margin-block-start: 0 !important;
  margin-block-end: 20px !important;
}

body .elementor-widget-theme-post-content ul + p:empty,
body .elementor-widget-theme-post-content ol + p:empty,
body .elementor-widget-text-editor ul + p:empty,
body .elementor-widget-text-editor ol + p:empty {
  display: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  margin-block: 0 !important;
}

body .elementor-widget-theme-post-content ul + p:empty::before,
body .elementor-widget-theme-post-content ol + p:empty::before,
body .elementor-widget-text-editor ul + p:empty::before,
body .elementor-widget-text-editor ol + p:empty::before {
  content: none !important;
  display: none !important;
}

/*
Fix empty paragraphs and paragraph spacing in Elementor Text Editor
- Elementor Kit sets global paragraph spacing to 0 on this site
*/

body .elementor-widget-text-editor p {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  margin-block-start: 0 !important;
  margin-block-end: 20px !important;
  line-height: 1.7 !important;
}

body .elementor-widget-text-editor p:empty {
  display: block !important;
  min-height: 0px !important;
  margin-bottom: 20px !important;
  margin-block-end: 20px !important;
}

body .elementor-widget-text-editor p:empty::before {
  content: "\00a0" !important;
  display: block !important;
}

body .elementor-widget-text-editor p:last-child {
  margin-bottom: 0 !important;
  margin-block-end: 0 !important;
}

.elementor-counter .elementor-counter-title {
  line-height: 1.5;
}


/* Disable lightbox*/
@media screen and (max-width: 767px)  {
   
    a.e-gallery-item, a.elementor-gallery-item, a.pg-open-lightbox {
    pointer-events: none !important;
    }
}
a:focus-visible {
    outline: -webkit-focus-ring-color auto 0px!important;
}

/* IMAGE CAROUSEL*/
.elementor-widget-image-carousel .swiper .swiper-slide figure {
    line-height: 0!important;
}

/*============ YT ============== */

.elementor-widget-container p iframe {
  margin: 0 auto!important;
  display: block;
}

.elementor iframe, .elementor video {
  width: 75%;
  height: 500px;

}
@media screen and (max-width: 1024px)  {
  .elementor iframe, .elementor video {
      width: 85%;
      height: 450px;
    }
  }
  
@media screen and (max-width: 767px)  {
.elementor iframe, .elementor video {
    width: 95%;
    height: 300px;
  }
}

/*=========== YT SHORT Gutenberg =========== */

.wp-block-embed-youtube {
    margin: 25px auto !important;
}

.wp-block-embed-youtube .wp-block-embed__wrapper {
    width: 340px;
    max-width: 100%;
    margin: 0 auto;
    height: auto !important;
    padding: 0 !important;
}

.wp-block-embed-youtube .wp-block-embed__wrapper::before {
    display: none !important;
    content: none !important;
    padding-top: 0 !important;
}

.wp-block-embed-youtube iframe {
    position: static !important;
    display: block;
    width: 340px !important;
    max-width: 100%;
    height: auto !important;
    aspect-ratio: 9 / 16;
    margin: 0 auto !important;
}

/* Mobile */
@media (max-width: 767px) {
    .wp-block-embed-youtube .wp-block-embed__wrapper,
    .wp-block-embed-youtube iframe {
        width: 100% !important;
        max-width: 100%;
    }
}


/* =========== WOO ============ */

.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .button,
.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .button {
  display: none;
}

.woocommerce .woocommerce-result-count, .woocommerce-page .woocommerce-result-count {
  font-size: 0.8rem;
}

.woocommerce .woocommerce-ordering select {
    padding: .2rem .2rem;
    font-size: 0.9rem;
}



/*====== FX TEXT ====== */

.ehw-reveal{
  overflow: hidden;
  padding-top: 0.5em;    
  padding-bottom: 0.5em; 
  line-height: 1.5 !important; 
}

.ehw-reveal .ehw-reveal__inner{
  display: block;
  width: 100%;
  will-change: transform, opacity;
}

/* ======= GOOGLE MAP ====== */

.map-wrap {
  width: 100%;
  height: 300px;
  overflow: hidden;
}

.map-wrap iframe {
  width: 100% !important;
  height: 100% !important;
  border: 0;
  display: block;
}

.map-wrap2 {
  width: 100%;
  height: 200px;
  overflow: hidden;
}

.map-wrap2 iframe {
  width: 100% !important;
  height: 100% !important;
  border: 0;
  display: block;
}

/*============== FLUENT FORM =============*/

.ff-default .ff-el-form-control {
    font-family: "NotoSansThai", Sans-serif!important;
    border-radius: 25px!important;
}

.ff-default .ff-el-form-control:focus {
	color: #101010!important;
    border-color: #2C7EF4!important;    
	background-color: rgb(255, 255, 255);
	border: 1px solid #ccc;
	outline: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.frm-fluent-form .choices[data-type*=select-multiple] .choices__input {
    padding: 10px 0!important;
}
.frm-fluent-form .choices__list--dropdown {
    border: 1px solid #d1e4ff!important;
}
.frm-fluent-form .choices__inner {
    border: solid 1 px #e7e7e7;
    border-radius: 25px!important;
}
.fluentform .ff-el-group {
    margin-bottom: 15px;
}
.ff-default .ff-el-input--label label {
  font-size: 1rem;
  color:#ffffff;
  font-family: "NotoSansThai", Sans-serif!important;
}
.ff-el-section-break .ff-el-section-title {
    font-weight: 500!important;
    font-size: 1.2rem;
    margin-top: 30px;
}

.wpf_has_custom_css.ff-btn-submit {
  padding: 10px 30px 10px 30px;
  margin-top: 20px;
}

.ff-default .ff_btn_style {
    padding: 8px 30px!important;
}
.ff-default .ff_btn_style:focus, .ff-default .ff_btn_style:hover {
    opacity : 1.0!important;
    }
    
@media screen and (min-width: 2400px) {
  .ff-default .ff-el-input--label label {
    font-size: 1.6rem;
  }
  .wpf_has_custom_css.ff-btn-submit {
    font-size: 1.6rem;
  }
}

/*  =========== PAGINATION  =========== */

.ehw-pagination-dot .page-numbers  {
    height: 30px;
    width: 30px;
    background-color: #494949!important;
    border-radius: 50%;
    display: inline-block;
    color: #F6F6F6!important;
    padding-top: 5px;
    text-align: center;
    transition: all 0.3s ease;
    
}
.ehw-pagination-dot .page-numbers:hover {
    background-color: #04518F !important;
    transform: scale(1.1);
}
.ehw-pagination-dot .page-numbers.current {
    background-color: #04518F!important;
    color: #F6F6F6!important;
}
.ehw-pagination-dot > .elementor-widget-container {
  overflow: visible;
}

@media screen and (min-width: 2400px)  {
    .ehw-pagination-dot .page-numbers  {
    height: 40px;
    width: 40px;
    padding-top: 5px;
    }
}

/* JetSmartFilters Pagination */
.ehw-pagination-dot .jet-filters-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
}

.ehw-pagination-dot .jet-filters-pagination__item {
  width: 30px;
  height: 30px;
  margin: 0 !important;
  padding: 0 !important;
  background-color: #494949 !important;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #F6F6F6 !important;
  line-height: 1;
  text-align: center;
  text-decoration: none !important;
  transition: transform .3s ease, background-color .3s ease;
}

.ehw-pagination-dot .jet-filters-pagination__link {
  color: inherit !important;
  line-height: 1;
}

.ehw-pagination-dot .jet-filters-pagination__item:hover {
  background-color: #04518F !important;
  transform: scale(1.1);
}

.ehw-pagination-dot .jet-filters-pagination__item.jet-filters-pagination__current {
  background-color: #04518F !important;
  color: #F6F6F6 !important;
}

@media screen and (min-width: 2400px) {
  .ehw-pagination-dot .jet-filters-pagination__item {
    width: 40px;
    height: 40px;
  }
}


/* ======== JOB LISTING ========= */
/*
.job-table-header,
.job-row > .e-con-inner {
    display: grid;
    grid-template-columns: 160px minmax(0, 1fr) 140px;
    align-items: center;
    column-gap: 24px;
    width: 100%;
}
*/
.job-table-header {
    padding: 14px 0;
    border-bottom: 1px solid #bfcbd5;
}
.job-row .elementor-widget {
    width: 100%;
    min-width: 0;
    margin: 0;
}
/*
.job-date {
    white-space: nowrap;
}
.job-title {
    min-width: 0;
}
.job-detail {
    justify-self: end;
    text-align: right;
    white-space: nowrap;
}
    */

.jet-listing-grid__item .job-row{
    border-bottom: 1px solid #e2e7eb;
    padding-bottom: 15px;
}
/*
.job-row .elementor-heading-title,
.job-table-header .elementor-heading-title {
    margin: 0;
}
*/


@media (max-width: 767px) {

    .job-table-header {
        display: none;
    }

    /*
    .job-row > .e-con-inner {
        grid-template-columns: 1fr;
        row-gap: 8px;
        column-gap: 0;
    }
    .job-title {
        grid-column: 1;
        grid-row: 1;
    }
    .job-date {
        grid-column: 1;
        grid-row: 2;
    }
    .job-detail {
        grid-column: 1;
        grid-row: 3;
        justify-self: start;
        text-align: left;
        margin-top: 4px;
    }
    .jet-listing-grid__item {
        padding: 18px 0;
    }
    .job-title .elementor-heading-title {
        font-size: 18px;
        font-weight: 600;
        line-height: 1.4;
    }
    .job-date .elementor-heading-title {
        font-size: 14px;
    }*/
}


/* ====== WPML ====== */

.otgs-development-site-front-end {display:none!important;}
.wpml-ls-legacy-list-horizontal {padding: 0px;}

@media (max-width: 767px) {
  .wpml-ls-legacy-list-horizontal a {
    padding: 5px 5px 6px;;
  }
}