@charset "UTF-8";
/**
 * _base.scss
 * 
 * 1/ biến màu săc
 * 2/ biến kích thước font chữ
 * 3/ Cấu hình border
 * 4/ Mixin
 * 5/ Responsive
*/
.mbws_mb-0 {
  margin-bottom: 0 !important;
}
.mbws_mb-0 * {
  margin-bottom: 0 !important;
}

.product-small {
  background-color: #fff;
  padding: 30px;
}
.product-small .box-text {
  padding: 30px 0px;
}
.product-small .box-text .title-wrapper {
  font-weight: 700;
  font-size: 1.2em;
}
.product-small .box-text .box-excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.product-small .box-text .add-to-cart-button a {
  border-radius: 99px;
}

body .post-item .col-inner {
  padding: 30px;
  border: solid 1px rgb(230, 230, 230);
}
body .post-item .box .box-text {
  padding: 30px 0px;
}
body .post-item .box .box-text .post-title {
  font-weight: 700;
  font-size: 1.4em;
}
body .post-item .box .box-text .is-divider {
  max-width: 70px;
  height: 2px;
  margin-bottom: 2em;
  margin-top: 2em;
}
body .post-item .box .box-text .from_the_blog_excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 30px;
  font-size: 1.2em;
}
body .post-item .box .box-text a.button {
  border-radius: 99px;
}

.mbws_box p {
  padding: 30px;
  background: #fff;
  border: solid 2px var(--fs-color-primary);
}
.mbws_box p i {
  color: var(--fs-color-primary);
}

body .wpcf7 button, body .wpcf7 input, body .wpcf7 select, body .wpcf7 textarea {
  box-shadow: unset;
  margin-bottom: 0;
}
body .wpcf7 button, body .wpcf7 input, body .wpcf7 select {
  height: 50px;
}
body .wpcf7 label {
  font-size: 1em;
  font-weight: 500;
}
body .wpcf7 .wpcf7-submit {
  border-radius: 99px;
}

body .mbws_related-post .box .box-text .cat-label, body .mbws_related-post .box .box-text .post-meta {
  display: none;
}
body .mbws_related-post .box .box-text .post-title {
  font-size: 1.2em;
}

.nav .menu-item .sub-menu {
  padding: 0 !important;
}
.nav .menu-item .sub-menu li {
  position: relative;
  display: inline-block !important;
  width: 100%;
  border-right: 0;
}
.nav .menu-item .sub-menu li a {
  color: var(--text-color);
  font-weight: 500;
  text-transform: none;
  font-size: 1em;
  padding: 10px 5px;
}
.nav .menu-item .sub-menu li .sub-menu {
  top: 0;
  box-shadow: 2px 2px 5px #828282;
  display: none !important;
  position: absolute;
  left: 100%;
  z-index: 9;
  background: white;
  min-width: 240px;
}
.nav .menu-item .sub-menu li:hover > a {
  color: var(--fs-color-primary);
}
.nav .menu-item .sub-menu li:hover > .sub-menu {
  display: grid !important;
}

body.home .mbws_header-before {
  display: none;
}

.single-post .mbws_header-before .page-title .page-title-inner {
  padding-bottom: 30px;
}

.woocommerce-shop .shop-page-title {
  display: none;
}
@media (min-width: 850px) {
  .woocommerce-shop .products .product .box .box-image {
    width: 50% !important;
  }
}
.woocommerce-shop .products .product .box .box-text {
  background: #F9F9F9;
}
@media (min-width: 850px) {
  .woocommerce-shop .products .product .box .box-text {
    padding: 8%;
  }
}
.woocommerce-shop .products .product .box .box-text .title-wrapper {
  font-size: 1.8em;
}
.woocommerce-shop .products .product:nth-child(odd) .box {
  direction: rtl;
}

.single-product .mbws_dich-vu-single .woocommerce-tabs .tabs {
  display: none;
}

#footer .absolute-footer {
  display: none;
}

/* ==========================================================================
   CẦM ĐỒ 360 BRAND STYLING & FLOATING WIDGETS (EXACT LOGO GREEN & GOLD)
   ========================================================================== */
:root {
  --fs-color-primary: #03501a;
  --fs-color-secondary: #f5c00e;
}

/* HEADER MAIN & TOP BAR - EXACT LOGO GREEN & NO YELLOW BORDER */
.header-wrapper, #header, .header-main, #masthead, .header-bottom, .header-top {
  background-color: #03501a !important;
  border: none !important;
  border-bottom: 0 !important;
  border-top: 0 !important;
  box-shadow: none !important;
}

.header-wrapper *, #header * {
  border-bottom-color: transparent !important;
}

.header-main .nav > li > a,
.header-nav a,
#header a,
.header-main a {
  color: #ffffff !important;
  font-weight: 600 !important;
}

.header-main .nav > li > a:hover,
.header-nav a:hover,
#header a:hover,
.header-main a:hover {
  color: #f5c00e !important;
}

/* PRODUCT & POST CARD TITLES - ALWAYS VISIBLE */
.product-small .product-title a,
.product-small .title-wrapper a,
.product-small .name a,
.product-title a,
.box-text .product-title a,
.box-text .title-wrapper a,
.box-text .name a,
.post-title a,
.box-blog-post .post-title a,
.woocommerce-loop-product__title a,
body .product-small .box-text .title-wrapper a {
  color: #03501a !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.product-small:hover .product-title a,
.product-small:hover .title-wrapper a,
.product-small:hover .name a,
.product-title a:hover,
.box-text:hover .product-title a,
.box-text:hover .title-wrapper a,
.post-title a:hover,
.box-blog-post:hover .post-title a,
.woocommerce-loop-product__title a:hover,
body .product-small:hover .box-text .title-wrapper a {
  color: #f5c00e !important;
}

/* FOOTER STRUCTURE - DISTINCT SECTIONS WITH CRISP WHITE TEXT */
#footer, .footer-wrapper {
  background-color: #03501a;
  color: #ffffff;
}

#footer a, .footer-wrapper a, #footer .ux-menu-link a, .footer-wrapper .ux-menu-link a {
  color: #ffffff !important;
  transition: color 0.2s ease;
}

#footer a:hover, .footer-wrapper a:hover, #footer .ux-menu-link a:hover, .footer-wrapper .ux-menu-link a:hover {
  color: #f5c00e !important;
}



/* Buttons Styling & Perfect Centering */
.button, button, input[type='submit'] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle !important;
  text-align: center !important;
  line-height: 1.2 !important;
  padding: 10px 24px !important;
  min-height: 42px !important;
}

.button i, .button span, .button svg {
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: middle !important;
  line-height: 1 !important;
}

.button i {
  margin-right: 6px !important;
}

.bg-primary, .button.primary, button.primary {
  background-color: #03501a !important;
}

.button.secondary, button.secondary, input[type='submit'].secondary {
  background-color: #f5c00e !important;
  border-color: #f5c00e !important;
  color: #03501a !important;
  font-weight: 700 !important;
}

.button.secondary:hover, button.secondary:hover {
  background-color: #d9a807 !important;
  border-color: #d9a807 !important;
  color: #03501a !important;
}


/* Hide overlapping Flatsome back-to-top button */
#top-link.back-to-top, .back-to-top {
  display: none !important;
}

/* Floating Quick Contact Widget - Premium UX */
.camdo360-floating-buttons {
  position: fixed;
  bottom: 25px;
  right: 25px;
  z-index: 999999 !important;
  display: flex;
  flex-direction: column;
  gap: 12px;
  pointer-events: auto !important;
}

.camdo360-float-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px;
  padding: 12px 20px !important;
  border-radius: 50px !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  line-height: 1 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.25) !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden;
  user-select: none;
}

.camdo360-float-btn:hover {
  transform: translateY(-3px) scale(1.03) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35) !important;
  color: #ffffff !important;
}

.camdo360-float-btn.float-zalo {
  background: linear-gradient(135deg, #0088FF, #0055FF) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.camdo360-float-btn.float-phone {
  background: linear-gradient(135deg, #03501a, #046e24) !important;
  border: 2px solid #f5c00e !important;
}

.float-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.float-icon svg {
  display: block;
  fill: currentColor;
}

/* Toast Copy Notification */
.camdo360-toast {
  position: fixed;
  bottom: 90px;
  right: 25px;
  background-color: #03501a;
  color: #f5c00e;
  border: 1px solid #f5c00e;
  padding: 10px 18px;
  border-radius: 30px;
  font-size: 13px;
  font-weight: 600;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
  z-index: 1000000;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.3s ease;
  pointer-events: none;
}

.camdo360-toast.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Mobile UI Optimization */
.text-center-small {
  text-align: left;
}

@media (max-width: 768px) {
  .text-center-small {
    text-align: center !important;
  }
  
  /* Floating Buttons - Compact & Non-intrusive on Mobile */
  .camdo360-floating-buttons {
    bottom: 12px !important;
    right: 12px !important;
    gap: 6px !important;
  }
  
  .camdo360-float-btn {
    padding: 7px 12px !important;
    font-size: 12px !important;
    border-radius: 30px !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25) !important;
  }
  
  .float-icon svg {
    width: 16px !important;
    height: 16px !important;
  }
  
  .camdo360-toast {
    bottom: 75px !important;
    right: 12px !important;
    font-size: 11px !important;
    padding: 7px 12px !important;
  }

  /* Services Cards 100% Width on Mobile */
  .mbws_home-dich-vu .col,
  .mbws_product .col,
  .products .product.col {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  
  .mbws_product .product-small {
    padding: 20px 15px !important;
  }
  
  .mbws_product .box-text .title-wrapper {
    font-size: 1.1em !important;
    line-height: 1.3 !important;
  }
  
  .mbws_product .button {
    min-height: 36px !important;
    padding: 6px 18px !important;
    font-size: 12px !important;
  }

  /* Footer Mobile Styling */
  #footer .col {
    margin-bottom: 15px;
  }
  
  #footer h4 {
    font-size: 15px !important;
    margin-bottom: 12px !important;
  }
  
  #footer .ux-menu-link a {
    font-size: 13.5px !important;
    padding: 4px 0 !important;
  }
}