/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.2
*/

/*************** ADD CUSTOM CSS HERE.   ***************/


@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}

/* 1. Khung chứa tổng thể */
.footer-social-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: 15px !important;
  flex-wrap: wrap !important;
}

/* 2. Nút tròn (Mail, Phone, FB, Zalo) - icon đã tự bo tròn sẵn, chỉ show ảnh */
.footer-social-wrapper .social-btn {
  width: 42px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

/* Ảnh icon - hiện full, không thu nhỏ */
.footer-social-wrapper .social-btn img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  display: block !important;
}

/* Riêng Zalo dùng chữ, không phải ảnh -> giữ style cũ nếu còn dùng span */
.footer-social-wrapper .zalo-btn span {
  font-size: 9px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
}

/* 3. Nút Hotline - icon đã có sẵn số điện thoại trong hình, chỉ show ảnh như các icon khác */
/* Áp dụng chung toàn site (không phụ thuộc footer-social-wrapper) để đặt được ở bất kỳ đâu (header, footer...) */
.hotline-btn {
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.hotline-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.hotline-icon img {
  height: 42px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* Ẩn chữ số hotline vì ảnh đã có sẵn số rồi, tránh hiện lặp */
.hotline-text {
  display: none !important;
}

/* 4. Hover */
.footer-social-wrapper .social-btn:hover {
  opacity: 0.8;
}
.hotline-btn:hover {
  background-color: rgba(255,255,255,0.1) !important;
}

/* 5. Responsive - trên mobile thu nhỏ lại chút */
@media (max-width: 480px) {
  .footer-social-wrapper .social-btn {
    width: 34px !important;
    height: 34px !important;
  }
  .hotline-icon img {
    height: 34px !important;
  }
}
/* Tra Cứu */
/* Khung tổng thể Tra cứu */
.eurovit-search-box {
  max-width: 1200px;
  margin: 30px auto;
  text-align: center;
  font-family: Arial, sans-serif;
}

.search-title {
  color: #002b80;
  font-size: 25px;
  font-weight: 800;
  margin-bottom: 25px;
  text-transform: uppercase;
}

/* Form tra cứu */
.search-form .form-row,
.search-form .form-row-3col {
  display: flex !important;
  justify-content: center;
  align-items: flex-end !important;
  gap: 12px;
  flex-wrap: wrap;
}

.search-form .form-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.search-form label {
  font-size: 20px;
  color: #002b80;
  margin-bottom: 5px;
  font-weight: 600;
}

.search-form .form-row-3col select {
  min-width: 260px !important;
}

.search-form select {
  height: 46px;
  min-width: 300px;
  border-radius: 25px !important;
  border: 1px solid #d0d7de !important;
  padding: 0 30px 0 15px !important;
  font-size: 18px;
  outline: none;
  background-color: #fff;
  box-sizing: border-box;
  text-align: center;
  text-align-last: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='4'%3E%3Cpath d='M1 1l2 2 2-2' stroke='%23333333' stroke-width='0.6' fill='none'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
}

/* Nút Tra cứu màu Xanh Đậm */
.btn-tracuu {
  background-color: #002b80 !important;
  color: #fff !important;
  border: none !important;
  height: 46px !important;
  margin: 24px !important;
  padding: 0 22px !important;
  border-radius: 25px !important;
  font-weight: bold;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s ease;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-end !important;
  gap: 6px;
  line-height: 1;
}
.btn-tracuu::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

.btn-tracuu:hover {
  background-color: #001f5c !important;
}

.search-note {
  font-size: 12px;
  color: #666;
  margin-top: 10px;
  font-style: italic;
}

/* Bảng kết quả tra cứu */
.search-result-container {
  margin-top: 35px;
  border-top: 1px solid #002b80;
  padding-top: 25px;
}

.result-heading {
  color: #002b80;
  font-size: 18px;
  font-weight: 800;
  text-align: left;
  margin-bottom: 15px;
}

.result-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #002b80;
  margin-bottom: 25px;
}

.result-table td {
  padding: 12px 20px;
  border: 1px solid #d0d7de;
  text-align: left;
  font-size: 14px;
}

.result-table .tb-label {
  background-color: #002b80;
  color: #fff;
  font-weight: bold;
  width: 25%;
}

.result-table .tb-value {
  background-color: #fff;
  color: #002b80;
  font-weight: bold;
  font-size: 20pt;
}

/* Khung hiển thị PDF */
.pdf-preview-box {
  border: 1px solid #ccc;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

/* Nút TẢI FILE màu đỏ */
.download-btn-wrapper {
  text-align: center;
  margin-top: 25px;
}

.btn-download-red {
  display: inline-block;
  background-color: #ff0000;
  color: #ffffff !important;
  font-weight: 700;
  font-size: 18px;
  padding: 12px 50px;
  border-radius: 30px;
  text-decoration: none !important;
  box-shadow: 0 4px 10px rgba(255, 0, 0, 0.3);
  transition: all 0.2s ease;
}

.btn-download-red:hover {
  background-color: #cc0000;
  transform: translateY(-2px);
}

/* Riêng h1, h2, h3 giữ đậm */
h1, h2, h3 {
    font-weight: 700 !important;
}

/* Nếu strong/b nằm trong đoạn văn cũng muốn giữ đậm thì thêm dòng này */
strong, b {
    font-weight: 700 !important;
}
/* Riêng menu chính header vẫn in đậm */
.header-nav.nav a,
.header-nav > li > a,
#header .header-nav a {
    font-weight: 700 !important;
}
body .icon-box .icon-box-img img {
filter: none !important;
}

.single-product div.product .summary{
    padding-left:60px;
}

.single-product .product_title{
    font-size:56px;
    font-weight:800;
    color:#0b3b9e;
    text-transform:uppercase;
}

.single-product .price{
    display:inline-block;
    background:#0b3b9e;
    color:#fff;
    padding:12px 40px;
    border-radius:999px;
    font-size:34px;
    font-weight:700;
}
.single_add_to_cart_button{
    background:#ff1f1f !important;
    border-radius:999px !important;
    font-size:28px !important;
    padding:16px 45px !important;
}
/* Bo tròn từng card blog post (không phải cả khung ngoài) */
.blogpost .box-blog-post {
  border-radius: 16px !important;
  overflow: hidden !important;
}
/* Tăng chiều rộng khung chứa nội dung + sidebar cho trang blog single */
.blog-wrapper.blog-single .row.row-large.row-divided {
  max-width: 1400px !important; /* chỉnh số này theo ý muốn */
  width: 100% !important;
}
/* Bo tròn các ô trong Form CF7 */
.custom-cf7-form .wpcf7-form-control {
  border-radius: 10px !important;
  border: 1px solid #d0d7de !important;
  padding: 10px 16px !important;
  color: #000 !important;
}

.custom-cf7-form .wpcf7-form-control::placeholder {
  color: #000 !important;
  opacity: 1 !important;
}

.custom-cf7-form .cf7-checkbox-field label,
.custom-cf7-form .cf7-checkbox-field span {
  color: #000 !important;
}

.custom-cf7-form select.wpcf7-form-control {
  border-radius: 10px !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23333' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
  padding: 10px 34px 10px 16px !important;
  height: auto !important;
  line-height: 1.4 !important;
}

/* Giãn cách giữa ô "Chọn loại sản phẩm" và checkbox đồng ý */
.custom-cf7-form .cf7-field {
  margin-bottom: 16px !important;
}
.custom-cf7-form .cf7-checkbox-field {
  margin-top: 24px !important;
  margin-bottom: 16px !important;
}

/* Nút Đăng ký - rộng hơn, thấp lại, chữ trắng */
.custom-cf7-form input[type="submit"] {
  border-radius: 30px !important;
  padding: 10px 40px !important;
  color: #fff !important;
}
/* ============================== */
/* Card sản phẩm - Sản phẩm nhập khẩu / trong nước (trang chủ) */
/* ============================== */
.sp-grid .product-small.box {
  border: 1px solid #cfe0f5 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  height: 304px !important;
  display: flex !important;
  flex-direction: column !important;
}

.sp-grid .box-image {
  padding: 10px !important;
  flex-shrink: 0 !important;
}

.sp-grid .box-text-products {
  padding: 0 15px 15px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

.sp-grid .title-wrapper {
  flex: 1 !important;
}

.sp-grid .name.product-title {
  font-weight: 700 !important;
  font-size: 15px !important;
  text-transform: uppercase;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.sp-grid .name.product-title a {
  color: #002b80 !important;
  font-weight: 700 !important;
}

.sp-grid .price-wrapper {
  margin-top: auto !important;
}

.sp-grid .price-wrapper .price {
  display: inline-block !important;
  background: #002b80 !important;
  border-radius: 30px !important;
  padding: 8px 20px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
}

.sp-grid .price-wrapper .price .amount,
.sp-grid .price-wrapper .price .woocommerce-Price-currencySymbol {
  color: #fff !important;
}

/* ============================== */
/* Bố cục ảnh: cột 1 = 1 ảnh cao, cột 2 = 2 ảnh xếp chồng, cột 3 = 1 ảnh cao */
/* Dùng Flexbox: 3 cột kéo dãn bằng nhau chiều cao, cột giữa tự chia 2 phần bằng nhau */
/* ============================== */
.img-collage {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 15px !important;
}
.img-collage > .col {
  display: flex !important;
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: none !important;
}
.img-collage .col-inner {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  gap: 15px !important;
}
.img-collage .img {
  flex: 1 !important;
  margin: 0 !important;
}
.img-collage .img > [data-animate] {
  width: 100% !important;
  height: 100% !important;
}
.img-collage .img-inner {
  width: 100% !important;
  height: 100% !important;
}
.img-collage .img-inner img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 10px !important;
}

/* Mobile: gộp lại xếp chồng bình thường cho dễ nhìn */
@media (max-width: 768px) {
  .img-collage {
    display: block !important;
  }
  .img-collage .col-inner {
    display: block !important;
  }
  .img-collage .img {
    margin-bottom: 15px !important;
  }
  .img-collage .img-inner,
  .img-collage .img-inner img {
    height: auto !important;
  }
}
.contact-box {
  color: #fff;
}

.contact-title {
  font-weight: 700;
  font-style: italic;
  font-size: 24px;
  margin-bottom: 16px;
}

.contact-item {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.contact-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
}

.contact-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.contact-text {
  color: #fff;
  text-decoration: none;
  font-size: 15px;
}

.contact-text:hover {
  text-decoration: underline;
}
/* cf7 ứng tuyển ngay */
.cf7-file-wrapper {
  position: relative;
  width: 100%;
}

.cf7-file-wrapper input[type="file"] {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  z-index: 2;
}

.cf7-file-label {
  display: block;
  width: 100%;
  height: 42px;
  line-height: 42px;
  border: 1px solid #ddd;
  border-radius: 30px;
  padding: 0 16px;
  font-size: 14px;
  color: #999;
  background: #fff;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ============================== */
/* Widget "Bài viết mới" - ảnh đại diện to lên, hình chữ nhật thay vì tròn */
/* ============================== */
.flatsome_recent_posts .badge.badge-circle {
  width: 70px !important;
  height: 70px !important;
  border-radius: 8px !important;
}
.flatsome_recent_posts .badge-inner.bg-fill {
  border-radius: 8px !important;
}

/* ============================== */
/* Menu chính - chữ to lên */
/* ============================== */
.header-nav .nav-top-link {
  font-size: 90% !important;
}

/* ============================== */
/* Nền toàn site - chỉ phần nội dung (không header/footer) */
/* ============================== */
#main {
  background-color: rgb(239, 248, 255) !important;
}
/* ============================== */
/* Cf7 ứng tuyển */
/* ============================== */
/* Khung chung cho toàn bộ field trong form ứng tuyển */
.job-apply-form select.job-select,
.job-apply-form input[type="text"],
.job-apply-form input[type="tel"],
.job-apply-form input[type="email"] {
    border: 1.5px dashed #b9c2cc !important;
    border-radius: 30px !important;
    padding: 12px 20px !important;
    background: #fafbfc;
    transition: border-color .2s, background .2s;
}

.job-apply-form select.job-select:hover,
.job-apply-form input[type="text"]:hover,
.job-apply-form input[type="tel"]:hover,
.job-apply-form input[type="email"]:hover,
.job-apply-form select.job-select:focus,
.job-apply-form input[type="text"]:focus,
.job-apply-form input[type="tel"]:focus {
    border-color: #1a3d8f !important;
    background: #f0f4fb;
}

/* Textarea: bo góc vừa phải, không bo tròn hẳn vì nhiều dòng */
.job-apply-form textarea {
    border: 1.5px dashed #b9c2cc !important;
    border-radius: 16px !important;
    padding: 12px 20px !important;
    background: #fafbfc;
    transition: border-color .2s, background .2s;
}
.job-apply-form textarea:hover,
.job-apply-form textarea:focus {
    border-color: #1a3d8f !important;
    background: #f0f4fb;
}

/* Ô Hồ sơ (file) */
.cf7-file-wrapper {
    position: relative;
}
.cf7-file-label {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    cursor: pointer;
    position: relative;
    z-index: 1;
    padding: 12px 20px;
    border: 1.5px dashed #b9c2cc;
    border-radius: 30px;
    background: #fafbfc;
    transition: border-color .2s, background .2s;
    height: auto;
    box-sizing: border-box;
    line-height: normal;
}
.cf7-file-label:hover {
    border-color: #1a3d8f;
    background: #f0f4fb;
}
.cf7-file-text {
    color: #6b7280;
    font-size: 15px;
}
.cf7-file-wrapper input[type="file"] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
}
.cf7-file-icon {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

/* Fix chữ bị cắt trong select */
.job-apply-form select.job-select {
    height: auto !important;
    line-height: normal !important;
    box-sizing: border-box !important;
}
.job-apply-submit input[type="submit"],
.job-apply-submit button[type="submit"] {
    margin: 0 auto;
}
.job-apply-submit {
    display: flex;
    justify-content: center;
}