/*
 Theme Name: Flatsome Child
 Template: flatsome
 Description: Child theme cho Công ty CP Tư Vấn Thiết Kế Xây Dựng Và Nội Thất 3D
 Version: 1.0
 Text Domain: flatsome-child-xaydungvanoithat3d
*/

/* ===== BRAND TOKENS ===== */
:root {
  --brand-primary: #fbae3c;
  --brand-secondary: #e31616;
  --brand-accent: #ff8d00;
  --brand-dark: #1a0000;
  --brand-text: #595959;
  --brand-heading: #0a0a0a;
  --brand-radius: 4px;
}

/* ===== GLOBAL ===== */
body { font-family: 'Roboto', sans-serif; color: var(--brand-text); font-size: 95%; }
a { color: #f87858; }
a:hover { color: var(--brand-primary); }
h1, h2, h3, h4, h5, h6, .heading-font { color: var(--brand-heading); font-weight: 500; }
b, strong { font-weight: 500; }

/* ===== HEADER ===== */
.header-main { height: 80px; }
#logo img { max-height: 80px !important; padding: 2px 0; }
#logo { width: 276px; }
.stuck #logo img { max-height: 50px !important; padding: 1px 0; }
.header.show-on-scroll, .stuck .header-main { height: 50px !important; }
.header-bottom { background-color: #f1f1f1; min-height: 55px; }
.header-top { min-height: 35px; }

/* ===== NAV ===== */
.header:not(.transparent) .header-nav-main.nav > li > a { color: var(--brand-heading); }
.header:not(.transparent) .header-nav-main.nav > li > a:hover,
.header:not(.transparent) .header-nav-main.nav > li.active > a,
.header:not(.transparent) .header-nav-main.nav > li.current > a { color: var(--brand-secondary); }
.header-nav-main.nav-line-bottom > li > a:before,
.header-nav-main.nav-line-grow > li > a:before,
.header-nav-main.nav-line > li > a:before,
.header-nav-main.nav-box > li > a:hover,
.header-nav-main.nav-box > li.active > a,
.header-nav-main.nav-pills > li > a:hover,
.header-nav-main.nav-pills > li.active > a { color: #FFF !important; background-color: var(--brand-secondary); }
.header-nav.nav-box > li.active > a,
.header-nav.nav-box > li > a:hover,
.header-nav.nav-line-bottom > li > a:before,
.header-nav.nav-line-grow > li > a:before,
.header-nav.nav-line > li > a:before,
.header-nav.nav-pills > li.active > a,
.header-nav.nav-pills > li > a:hover { background-color: var(--brand-primary); }
.nav-line-bottom > li > a:before,
.nav-line-grow > li > a:before,
.nav-line > li > a:before { height: 2px; }
.nav > li > a { font-family: 'Roboto', sans-serif; font-weight: 500; }

/* ===== TOPBAR ===== */
#topbar .nav-small .nav > li > a,
.nav-small.nav > li.html,
.nav.nav-small > li > a { font-size: 14px; font-weight: 400; }

/* ===== BUTTONS ===== */
.button.primary:not(.is-outline), button[type="submit"],
.button.submit-button, input[type='submit']:not(.is-form) {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  text-transform: none; font-weight: 400; border-radius: 3px; margin-bottom: 0;
}
.button.secondary:not(.is-outline), .button.alt:not(.is-outline),
.badge-inner.on-sale, .button.checkout,
.single_add_to_cart_button { background-color: var(--brand-secondary) !important; }
.button span { font-weight: 400; font-size: 15px; }
.button, .mb { margin-bottom: 0; }

/* ===== SLIDER ===== */
.slider-nav-circle .flickity-prev-next-button .arrow,
.slider-nav-circle .flickity-prev-next-button svg { border-radius: 100%; border: 0; background: var(--brand-primary); }
.slider-nav-circle .flickity-prev-next-button:hover svg,
.slider-nav-circle .flickity-prev-next-button:hover .arrow { fill: var(--brand-primary); }

/* ===== SECTION TITLES ===== */
.section-title-container { margin-bottom: 0; }
.section-title-normal span { padding-bottom: 3.5px; border-bottom: 2px solid var(--brand-primary); }

/* ===== BLOG POSTS ===== */
.box-blog-post .is-divider { display: none; }
.is-divider { height: 1px; max-width: 100%; }
.post-item .post-title:hover { color: #c50a09; }

/* -- News slider row -- */
.row-tin-tuc-slider { margin-top: 20px !important; }
.row-tin-tuc-slider .cot2 .post-item { padding-bottom: 0 !important; padding-left: 0; padding-right: 0; }
.row-tin-tuc-slider .cot2 .post-item .col-inner { padding: 0 10px; }
.row-tin-tuc-slider .cot2 .post-item .box-text { padding-bottom: 8px; padding-left: 10px; padding-right: 0; }
.row-tin-tuc-slider .cot2 .post-item .box-text .post-title:hover { color: var(--brand-secondary); }
.row-tin-tuc-slider .cot2 .post-item .box-text .post-title { font-size: 15.5px; }
.row-tin-tuc-slider .cot2 .col-inner .col-inner { border: 0; }
.row-tin-tuc-slider .cot2 .col-inner { padding: 10px 10px 5px; border: 1px dashed orange; border-radius: 4px; background: #fffaf3; }
.row-tin-tuc-slider .cot1 { border: 1px solid #e4e4e4; border-radius: 4px; padding-top: 10px; padding-bottom: 5px; }
.row-tin-tuc-slider .cot1 .section-title-container { padding-bottom: 8px; padding-top: 10px; }
.row-tin-tuc-slider .cot1 .post-item,
.row-tin-tuc-slider .cot1 .post-item .box-text { padding-bottom: 0 !important; }
.row-tin-tuc-slider .col { padding-bottom: 0; }

/* -- Intro section -- */
.gioi-thieu-section .section-title-container { margin-bottom: 10px; }
.gioi-thieu-section .cot1 .col-inner .gioi-thieu { background: #fff; padding: 10px 10px 0; border-radius: 3px; border: 1px solid #e4e4e4; margin-bottom: 14px; }
.gioi-thieu-section .cot2 .col-inner .post-item { padding-bottom: 0 !important; }
.gioi-thieu-section .cot1, .vi-sao1 .col { padding-bottom: 0; }
.gioi-thieu-section .cot2 { border: 1px solid #e4e4e4; background: #fff; border-radius: 3px; padding-top: 15px; padding-bottom: 0; }

/* -- Why choose us -- */
.vi-sao2 .section-title-normal { margin-bottom: 15px; }

/* -- Blog archive -- */
.bai-viet-tin-tuc .cot1 .post-item { padding-bottom: 0; }
.bai-viet-tin-tuc .cot1 .post-item .post-title:hover { color: #cd0e0e; }
.bai-viet-tin-tuc .cot2 { background: #fff; padding-top: 10px; border-radius: 3px; border: 1px solid #e4e4e4; }
.bai-viet-tin-tuc .cot1 .col-inner { background: #fff; padding: 10px; border: 1px solid #e4e4e4; border-radius: 3px; }
.bai-viet-tin-tuc .cot1 .col-inner .col-inner { border: 0; padding: 0; }
.bai-viet-tin-tuc .cot1 { padding-bottom: 0; }

/* -- Single post -- */
.blog-single { background: #fffbf1; }
#comments, .post { background: #fff; }
.post { margin: 0 0 20px; padding: 20px 10px 10px; border-radius: 4px; border: 1px solid #e6e6e6; }
.blog-single .large-9 { padding-right: 0; }
.entry-content { padding-top: 0; }
.blog-single .entry-category a { text-transform: none; font-size: 14px; font-weight: 400; }
.entry-meta { text-transform: none; font-size: 15px; letter-spacing: 0; color: gray; }
#comments { border-radius: 3px; padding: 10px; border: 1px solid #e6e6e6; }
footer.entry-meta { font-size: 15px; border-top: 0; border-bottom: 0; }

/* -- Chi phi du kien overlay -- */
.chi-phi-du-kien { display: flex; color: var(--brand-primary); font-size: 15px; position: absolute; z-index: 9; margin-top: -130px; width: 100%; padding-left: 10px; padding-right: 10px; background: #00000094; line-height: 32px; }
.chi-phi-du-kien .left { padding-top: 2px; width: 75%; float: left; }
.chi-phi-du-kien .right { width: 25%; float: right; color: #a0a0a0; text-align: right; font-size: 15px; padding-top: 2px; }

/* -- Sidebar widgets -- */
.blog-archive .page-title, span.widget-title { margin-bottom: 15px; letter-spacing: 0; text-transform: none; font-size: 18px; }
span.widget-title { font-weight: 500; display: block; }
.blog-archive .absolute, .home .chi-phi-du-kien, .widget .is-divider { display: none; }
.recent-blog-posts a { color: #000; }
.recent-blog-posts a:hover { color: var(--brand-secondary); }
.blog-archive .page-title { position: relative; text-align: left; color: var(--brand-secondary); }
.taxonomy-description { background: #f1f1f1; padding: 10px; border-radius: 3px; text-align: left; margin-bottom: 10px; }
.archive-page-header .col { padding-bottom: 10px; }
.blog-archive .post-sidebar #secondary { border: 1px solid #e6e6e6; padding: 10px; border-radius: 3px; }
.blog-archive .large-3 { padding-left: 0; }
.blog-archive .large-9 .post-item { padding-bottom: 0; }

/* -- Bao gia form -- */
form .sub-title { margin-bottom: 10px; }
.tai-bao-gia { border: 1px solid #e6e6e6; border-radius: 3px; width: 100%; background: #fff; padding: 10px; display: block; }
.title-bao-gia { display: block; text-align: center; margin-bottom: 15px; font-size: 18px; font-weight: 500; color: #de0b0c; margin-top: 10px; }
.tai-bao-gia .left { width: 40%; float: left; }
.tai-bao-gia .right { width: 60%; float: right; padding-left: 10px; }
.tai-bao-gia .clearboth { clear: both; }

/* -- Thong tin bai viet -- */
.blog-single .mo-ta-bv h2 { font-size: 16px; line-height: 25px; }
.blog-single .thong-tin-bv { background: #fffbf1; border-radius: 4px; border: 1px dashed orange; padding: 10px; margin-bottom: 10px; margin-top: 15px; }
.blog-single .thong-tin-bv .title-filed .key { font-weight: 500; color: #000; }
.blog-single .thong-tin-bv .title-filed { margin-bottom: 5px; }
.blog-single .thong-tin-bv .chi_phi { color: red; font-size: 20px; }

/* -- HTML before comments -- */
.html-before-comments { background: #fff; border-radius: 3px; border: 1px solid #e6e6e6; padding: 10px; margin-bottom: 20px; }
.html-before-comments .post-item { padding-bottom: 0; }

/* ===== SERVICE / SECTIONS ===== */
.dich-vu-cua-chung-toi .col,
.lien-he-tu-van-section .col,
.uu-dai .col { padding-bottom: 0; }

/* ===== BACK TO TOP ===== */
.back-to-top { border: 0 solid currentColor !important; background-color: var(--brand-accent) !important; color: #fff !important; }

/* ===== ABSOLUTE FOOTER ===== */
.absolute-footer, html { background-color: #db0000; }

/* ===== FLOATING CTA ===== */
.ptbl-float-cta {
  position: fixed; bottom: 20px; right: 20px;
  z-index: 9999;
  display: flex; flex-direction: column; gap: 10px;
}
.ptbl-float-cta a {
  width: 55px; height: 55px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  color: white; font-size: 22px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
  transition: transform 0.3s ease;
  text-decoration: none;
}
.ptbl-float-cta a:hover { transform: scale(1.1); }
.ptbl-float-cta .cta-phone { background: linear-gradient(135deg, #8cd15f, #66b036); animation: cta-pulse 2s infinite; }
.ptbl-float-cta .cta-zalo { background: linear-gradient(135deg, #0068ff, #0052cc); }
.ptbl-float-cta .cta-fb { background: linear-gradient(135deg, #4267B2, #2c5aa0); }

@keyframes cta-pulse {
  0%, 100% { box-shadow: 0 0 8px 6px rgba(140,209,95,0), 0 0 0 0 transparent; }
  10% { box-shadow: 0 0 8px 6px #8cd15f, 0 0 12px 14px rgba(140,209,95,0.3); }
  100% { box-shadow: 0 0 8px 6px rgba(140,209,95,0), 0 0 0 40px transparent; }
}

/* ===== RESPONSIVE ===== */
@media (max-width: 549px) {
  body { font-size: 100%; }
  .header-main { height: 70px; }
  #logo img { max-height: 70px; }
  .row-tin-tuc-slider .cot2 { margin-top: 20px; }
  .row-tin-tuc-slider .cot2 .post-item,
  .gioi-thieu-section .cot2 .post-item,
  .bai-viet-tin-tuc .cot1 .post-item,
  .html-before-comments .post-item { flex-basis: 50% !important; max-width: 100% !important; }
  .row-tin-tuc-slider .cot2 .section-title-normal,
  .bai-viet-tin-tuc .cot1 .section-title-normal { margin-bottom: 15px; }
  .chi-phi-du-kien { position: inherit; margin-top: 10px; display: inline-block; font-size: 15px; }
  .chi-phi-du-kien .left, .chi-phi-du-kien .right { width: 100% !important; display: block; float: none; text-align: left; }
}
