/*
Theme Name:   Meci Dental (Blocksy Child)
Theme URI:    http://localhost:8080
Description:  Child theme Blocksy cho website giới thiệu công ty & catalog vật tư nha khoa Meci Dental (WooCommerce, GreenShift). Thiết kế: VINASOFT.
Author:       Tuan Hien
Template:     blocksy
Version:      2.0.0
Requires PHP: 8.0
Text Domain:  medicare-child
*/

/* ==================================================================
   1. Token thiết kế
   ================================================================== */
:root{
  --mc-primary:#0A4F73;
  --mc-primary-dark:#073A55;
  --mc-accent:#14A3B8;
  --mc-mist:#EEF7F9;
  --mc-paper:#FFFFFF;
  --mc-ink:#13293D;
  --mc-muted:#5E7387;
  --mc-line:#D4E6EC;
  --mc-ok:#1E7A50;
  --mc-error:#B42318;
  --mc-serif:"Newsreader", Georgia, "Times New Roman", serif;
  --mc-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mc-wrap:1200px;
  --mc-gutter:clamp(16px, 4vw, 24px);
  --mc-section:clamp(48px, 8vw, 88px);
  --mc-radius:4px;

  /* Đồng bộ biến màu của Blocksy để menu, link, nút mặc định theo cùng tông */
  --theme-palette-color-1:var(--mc-primary);
  --theme-palette-color-2:var(--mc-accent);
  --theme-palette-color-3:var(--mc-muted);
  --theme-palette-color-4:var(--mc-ink);
  --theme-palette-color-5:var(--mc-line);
  --theme-palette-color-6:var(--mc-mist);
  --theme-palette-color-7:#F7FBFD;
  --theme-palette-color-8:var(--mc-paper);
  --theme-link-initial-color:var(--mc-primary);
  --theme-link-hover-color:var(--mc-accent);
  --theme-button-background-initial-color:var(--mc-primary);
  --theme-button-background-hover-color:var(--mc-primary-dark);
  --theme-font-family:var(--mc-sans);
  --theme-headings-color:var(--mc-ink);
  --theme-text-color:var(--mc-ink);
}

/* ==================================================================
   2. Nền tảng
   ================================================================== */
body{
  font-family:var(--mc-sans);
  color:var(--mc-ink);
  background:var(--mc-paper);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,
.entry-title,
.page-title,
.woocommerce-products-header__title,
.product_title{
  font-family:var(--mc-serif);
  font-weight:500;
  letter-spacing:-.01em;
  line-height:1.15;
  color:var(--mc-ink);
}
:focus-visible{
  outline:2px solid var(--mc-accent);
  outline-offset:3px;
}

/* ==================================================================
   3. Thanh thông báo trên cùng
   ================================================================== */
.mc-topbar{
  background:var(--mc-primary);
  color:#D9ECF8;
  font-size:.85rem;
}
.mc-topbar__inner{
  max-width:var(--mc-wrap);
  margin-inline:auto;
  padding:8px var(--mc-gutter);
  display:flex;
  justify-content:space-between;
  gap:8px 24px;
  flex-wrap:wrap;
}
.mc-topbar a{color:#fff;text-decoration:none}
.mc-topbar a:hover{text-decoration:underline}

/* Header Blocksy: đường kẻ mảnh thay cho đổ bóng */
#header [data-row]{box-shadow:none}
#header [data-row="middle"]{border-bottom:1px solid var(--mc-line)}
#header .site-title,
#header .site-title a{
  font-family:var(--mc-serif);
  font-weight:600;
  color:var(--mc-primary);
}

/* ==================================================================
   4. Nút: block Button, WooCommerce và form
   ================================================================== */
.wp-block-button .wp-block-button__link,
.mc-submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:12px 22px;
  border-radius:var(--mc-radius);
  border:1px solid transparent;
  background:var(--mc-primary);
  color:#fff;
  font-family:var(--mc-sans);
  font-weight:600;
  font-size:.98rem;
  line-height:1.2;
  text-decoration:none;
  cursor:pointer;
  transition:background-color .2s, color .2s, border-color .2s;
}
.wp-block-button .wp-block-button__link:hover,
.mc-submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover{
  background:var(--mc-primary-dark);
  color:#fff;
}
.wp-block-button.is-style-outline .wp-block-button__link{
  background:transparent;
  color:var(--mc-primary);
  border-color:var(--mc-primary);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover{
  background:var(--mc-mist);
  color:var(--mc-primary);
}
.wp-block-button.is-style-mc-light .wp-block-button__link{
  background:#fff;
  color:var(--mc-primary);
}
.wp-block-button.is-style-mc-light .wp-block-button__link:hover{
  background:var(--mc-mist);
  color:var(--mc-primary);
}
.mc-submit:disabled{opacity:.7;cursor:progress}
.woocommerce a.button.loading{opacity:.7;pointer-events:none}
.mc-actions{gap:12px}

/* ==================================================================
   5. Bố cục trang landing dựng bằng block
   - Trang có meta _mc_landing: ẩn tiêu đề Blocksy, bỏ khoảng trống trên/dưới,
     nhóm "Full width" tràn viền.
   - Nội dung bên trong mỗi nhóm full width giữ trong khung 1200px.
     Quy tắc này không phụ thuộc .mc-landing nên trình soạn thảo cũng hiển thị đúng.
   ================================================================== */
body.mc-landing{
  overflow-x:clip;
  --theme-content-vertical-spacing:0px;
}
.mc-landing .hero-section{display:none}
.mc-landing .entry-content > .alignfull{
  width:100vw;
  max-width:100vw;
  margin-inline:calc(50% - 50vw) !important;
  margin-block:0 !important;
}
.wp-block-group.alignfull[class*="mc-"] > *{
  width:calc(100% - 2 * var(--mc-gutter));
  max-width:calc(var(--mc-wrap) - 2 * var(--mc-gutter));
  margin-inline:auto !important;
  box-sizing:border-box;
}
.wp-block-group.alignfull[class*="mc-"] > * + *{margin-top:24px}

.mc-landing h2.wp-block-heading{font-size:clamp(1.7rem, 3vw, 2.5rem);margin:0}
.mc-lead{
  font-size:clamp(1.02rem, 1.4vw, 1.15rem);
  color:var(--mc-muted);
  max-width:60ch;
}
.mc-muted{color:var(--mc-muted)}
.mc-more{margin:0}
.mc-more a,
.mc-muted a,
.mc-lead a{
  color:var(--mc-primary);
  font-weight:600;
  text-decoration:underline;
  text-underline-offset:4px;
  text-decoration-thickness:1px;
}
.mc-more a:hover,
.mc-muted a:hover{color:var(--mc-accent)}

.mc-section{padding-block:var(--mc-section)}
.mc-section--tint{background:var(--mc-mist)}
.mc-section--flush{padding-top:0}
.mc-section__head{gap:12px 24px}
.wp-block-group.alignfull[class*="mc-"] > .mc-section__head + *{margin-top:32px}

/* Hero: hai cột, ảnh minh họa bên phải kèm thẻ nổi */
.mc-hero{
  padding-block:clamp(40px, 6vw, 80px) clamp(48px, 7vw, 88px);
  background:
    radial-gradient(60% 80% at 85% 30%, rgba(42,139,201,.12), transparent 70%),
    linear-gradient(180deg, #F4F9FD 0%, var(--mc-mist) 100%);
}
.wp-block-columns.mc-hero__grid{gap:clamp(32px, 5vw, 64px);margin-bottom:0}
.mc-hero__promo{
  display:inline-block;
  margin:0 0 20px;
  padding:7px 14px;
  font-size:.88rem;
  color:var(--mc-primary);
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:999px;
}
.mc-hero .mc-hero__title,
.mc-landing .mc-hero h2.mc-hero__title{
  font-size:clamp(2.4rem, 5vw, 4.1rem);
  max-width:15ch;
  margin:0 0 20px;
}
.mc-hero__copy .mc-lead{margin:0 0 28px}
ul.mc-hero__points{
  list-style:none;
  padding:0;
  margin:28px 0 0;
  display:flex;
  flex-wrap:wrap;
  gap:10px 24px;
  font-size:.93rem;
  font-weight:500;
}
.mc-hero__points li{position:relative;margin:0;padding-left:26px}
.mc-hero__points li::before{
  content:"";
  position:absolute;
  left:0;
  top:3px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--mc-ok);
}
.mc-hero__points li::after{
  content:"";
  position:absolute;
  left:6px;
  top:7px;
  width:6px;
  height:9px;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:rotate(45deg);
}

.mc-hero__media{position:relative}
.mc-hero__img{margin:0}
.mc-hero__img img{
  display:block;
  width:100%;
  height:auto;
  border-radius:28px;
  box-shadow:0 30px 60px -30px rgba(11,79,124,.45);
}
.mc-hero__media > .mc-hero__card{
  position:absolute;
  margin:0;
  padding:14px 18px;
  background:#fff;
  border-radius:16px;
  box-shadow:0 16px 40px -16px rgba(11,79,124,.4);
  font-size:.86rem;
  line-height:1.35;
  color:var(--mc-muted);
}
.mc-hero__card > *{margin:0}
.mc-hero__card strong{color:var(--mc-ink);font-size:1.1rem}
.mc-hero__card--rating{left:-28px;bottom:36px}
.mc-hero__card--delivery{right:-18px;top:28px;text-align:center}
.mc-hero__card--delivery strong{font-family:var(--mc-serif);font-size:1.6rem;font-weight:500;color:var(--mc-primary)}
.mc-stars{color:#F2A93B;letter-spacing:2px;font-size:.95rem}

/* Dải số liệu */
.mc-trust{border-block:1px solid var(--mc-line)}
.wp-block-columns.mc-stats{gap:0;margin-block:0}
.mc-stats > .wp-block-column{padding:22px 20px}
.mc-stats > .wp-block-column + .wp-block-column{border-left:1px solid var(--mc-line)}
.mc-stats > .wp-block-column:first-child{padding-left:0}
.mc-stat{margin:0;font-size:.9rem;line-height:1.45;color:var(--mc-muted)}
.mc-stat strong{
  display:block;
  font-family:var(--mc-serif);
  font-size:1.4rem;
  font-weight:500;
  color:var(--mc-primary);
  margin-bottom:2px;
}
.mc-stat--lg strong{font-size:clamp(2rem, 4vw, 2.8rem);line-height:1;margin-bottom:8px}

/* Danh mục */
ul.mc-cats{
  list-style:none;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  border-top:1px solid var(--mc-line);
}
.mc-cats li{margin:0;border-bottom:1px solid var(--mc-line)}
.mc-cats li:not(:nth-child(3n+1)){border-left:1px solid var(--mc-line)}
.mc-cats a{
  display:block;
  position:relative;
  min-height:96px;
  padding:24px 48px 24px 24px;
  font-size:.88rem;
  color:var(--mc-muted);
  text-decoration:none;
}
.mc-cats li:nth-child(3n+1) a{padding-left:0}
.mc-cats strong{
  display:block;
  font-family:var(--mc-serif);
  font-size:1.2rem;
  font-weight:600;
  line-height:1.25;
  color:var(--mc-ink);
  margin-bottom:2px;
  transition:color .2s;
}
.mc-cats a::after{
  content:"";
  position:absolute;
  right:20px;
  top:50%;
  width:8px;
  height:8px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  transform:translateY(-50%) rotate(45deg);
  transition:transform .2s;
}
.mc-cats a:hover strong{color:var(--mc-primary)}
.mc-cats a:hover::after{color:var(--mc-primary);transform:translate(3px, -50%) rotate(45deg)}

/* Khối đặt sỉ */
.mc-b2b{background:var(--mc-primary);color:#fff;padding-block:var(--mc-section)}
.mc-b2b h2{color:#fff}
.mc-b2b p{color:#CFE6F4}
.wp-block-columns.mc-b2b__grid{gap:clamp(32px, 6vw, 72px);margin-bottom:0}
ul.mc-checklist{
  list-style:none;
  padding:0;
  margin:0 0 28px;
  border-top:1px solid rgba(255,255,255,.22);
}
.mc-checklist li{
  position:relative;
  margin:0;
  padding:14px 0 14px 28px;
  border-bottom:1px solid rgba(255,255,255,.22);
}
.mc-checklist li::before{
  content:"";
  position:absolute;
  left:2px;
  top:21px;
  width:12px;
  height:7px;
  border-left:2px solid #9FD3F2;
  border-bottom:2px solid #9FD3F2;
  transform:rotate(-45deg);
}

/* Quy trình 3 bước: là chuỗi thật nên dùng số thứ tự */
ol.mc-flow{
  list-style:none;
  counter-reset:mc-step;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  border-top:2px solid var(--mc-primary);
}
.mc-flow li{
  counter-increment:mc-step;
  margin:0;
  padding:24px 24px 0 0;
  color:var(--mc-muted);
}
.mc-flow li + li{padding-left:24px;border-left:1px solid var(--mc-line)}
.mc-flow li::before{
  content:counter(mc-step);
  display:block;
  font-family:var(--mc-serif);
  font-size:2.4rem;
  line-height:1;
  color:var(--mc-accent);
  margin-bottom:12px;
}
.mc-flow strong{
  display:block;
  font-family:var(--mc-serif);
  font-size:1.25rem;
  font-weight:600;
  color:var(--mc-ink);
  margin-bottom:6px;
}

/* FAQ (block Details) */
.wp-block-columns.mc-faq__grid{gap:clamp(32px, 6vw, 72px);margin-bottom:0}
.mc-faq__grid h2 + p{margin-top:12px}
.mc-faq{border-top:1px solid var(--mc-line)}
.mc-faq > *{margin:0 !important}
.mc-faq .wp-block-details{border-bottom:1px solid var(--mc-line)}
.mc-faq summary{
  list-style:none;
  cursor:pointer;
  position:relative;
  padding:20px 40px 20px 0;
  font-weight:600;
  font-size:1.02rem;
}
.mc-faq summary::-webkit-details-marker{display:none}
.mc-faq summary::after{
  content:"";
  position:absolute;
  right:6px;
  top:50%;
  width:10px;
  height:10px;
  border-right:2px solid var(--mc-primary);
  border-bottom:2px solid var(--mc-primary);
  transform:translateY(-70%) rotate(45deg);
  transition:transform .2s;
}
.mc-faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.mc-faq summary:hover{color:var(--mc-primary)}
.mc-faq details p{margin:0 0 20px;color:var(--mc-muted)}

/* Kêu gọi cuối trang */
.mc-final{padding-block:var(--mc-section);border-top:1px solid var(--mc-line)}
.mc-final__inner{gap:24px 48px;align-items:center}
.mc-final__inner p{margin:10px 0 0}


/* Chọn nhóm khách hàng */
.wp-block-columns.mc-audience__grid{gap:clamp(20px, 3vw, 32px);margin-bottom:0}
.wp-block-group.alignfull[class*="mc-"] > .mc-audience__grid{margin-top:32px}
.mc-audience__card{
  position:relative;
  height:100%;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:20px;
  overflow:hidden;
  transition:box-shadow .25s, border-color .25s;
}
.mc-audience__card:hover{border-color:transparent;box-shadow:0 24px 48px -24px rgba(11,79,124,.35)}
.mc-audience__card:focus-within{outline:2px solid var(--mc-accent);outline-offset:3px}
.mc-audience__card > *{margin:0}
.mc-audience__card .wp-block-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.mc-audience__card h3{font-size:1.45rem;padding:24px 24px 8px}
.mc-audience__card h3 a{color:var(--mc-ink);text-decoration:none}
.mc-audience__card h3 a::after{content:"";position:absolute;inset:0}
.mc-audience__card h3 a:focus-visible{outline:none}
.mc-audience__card:hover h3 a{color:var(--mc-primary)}
.mc-audience__card p{padding:0 24px 28px;color:var(--mc-muted)}

/* Đánh giá khách hàng */
.wp-block-columns.mc-quotes{gap:clamp(20px, 3vw, 32px);margin-bottom:0}
.wp-block-group.alignfull[class*="mc-"] > .mc-quotes{margin-top:32px}
.mc-quote.wp-block-quote{
  height:100%;
  margin:0;
  padding:28px;
  background:#fff;
  border:0;
  border-radius:20px;
  font-style:normal;
}
.mc-quote > *{margin:0}
.mc-quote p:not(.mc-stars){font-size:1.02rem;line-height:1.6;margin-top:12px}
.mc-quote cite{
  display:block;
  margin-top:18px;
  font-style:normal;
  font-weight:600;
  font-size:.9rem;
  color:var(--mc-primary);
}

/* Bài viết mới (block Latest Posts) */
.wp-block-group.alignfull[class*="mc-"] > .mc-section__head + .mc-posts{margin-top:32px}
ul.wp-block-latest-posts.mc-posts{padding:0}
.mc-posts.is-grid{gap:clamp(20px, 3vw, 32px)}
.mc-posts.is-grid li{margin:0 !important;width:auto !important}
.mc-posts .wp-block-latest-posts__featured-image{margin-bottom:16px}
.mc-posts .wp-block-latest-posts__featured-image img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
  border-radius:16px;
}
.mc-posts .wp-block-latest-posts__post-title{
  font-family:var(--mc-serif);
  font-size:1.3rem;
  font-weight:600;
  line-height:1.3;
  color:var(--mc-ink);
  text-decoration:none;
}
.mc-posts .wp-block-latest-posts__post-title:hover{color:var(--mc-primary)}
.mc-posts .wp-block-latest-posts__post-date{display:block;margin-top:6px;font-size:.85rem;color:var(--mc-muted)}
@media (min-width:782px){
  .mc-posts.is-grid.columns-3{display:grid;grid-template-columns:repeat(3, 1fr)}
}

/* Ảnh minh họa trang Giới thiệu */
.mc-photo .wp-block-image{margin:0}
.mc-photo img{display:block;width:100%;height:auto;border-radius:24px}

/* ==================================================================
   6. Trang Giới thiệu và Liên hệ
   ================================================================== */
.mc-pagehead{padding-block:clamp(48px, 7vw, 80px) clamp(28px, 4vw, 40px)}
.mc-pagehead h1{font-size:clamp(2.2rem, 4.6vw, 3.6rem);max-width:20ch;margin:0}
.wp-block-group.alignfull.mc-pagehead > .mc-lead{margin-top:20px}

.wp-block-columns.mc-two{gap:clamp(32px, 6vw, 80px);margin-bottom:0}

ul.mc-rows{list-style:none;padding:0;margin:0;border-top:1px solid var(--mc-line)}
.mc-rows li{margin:0;padding:18px 0;border-bottom:1px solid var(--mc-line);color:var(--mc-muted)}
.mc-rows strong{display:block;color:var(--mc-ink);font-weight:600;font-size:1.05rem;margin-bottom:2px}
.mc-rows--info li{color:var(--mc-ink);font-weight:500}
.mc-rows--info strong{color:var(--mc-muted);font-size:.88rem;font-weight:500}
.mc-rows a{color:var(--mc-primary)}

/* ==================================================================
   7. Biểu mẫu và thông báo
   ================================================================== */
.mc-form{display:grid;gap:4px}
.mc-field{display:grid;gap:6px;margin-bottom:16px}
.mc-field-row{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.mc-field label{font-size:.92rem;font-weight:500}
.mc-field input,
.mc-field select,
.mc-field textarea,
.woocommerce form .form-row .input-text,
.woocommerce form .form-row select,
.woocommerce-page form .form-row .input-text{
  width:100%;
  min-height:46px;
  padding:11px 12px;
  border:1px solid var(--mc-line);
  border-radius:var(--mc-radius);
  background:#fff;
  font:inherit;
  color:var(--mc-ink);
}
.mc-field textarea{min-height:130px;resize:vertical}
.mc-field input:focus,
.mc-field select:focus,
.mc-field textarea:focus,
.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus{
  outline:2px solid var(--mc-accent);
  outline-offset:0;
  border-color:transparent;
}
.mc-field [aria-invalid="true"]{border-color:var(--mc-error)}
.mc-field__error{margin:0;font-size:.86rem;color:var(--mc-error)}
.mc-form__note{font-size:.86rem;color:var(--mc-muted);margin-top:12px}
.mc-submit{justify-self:start;margin-top:4px}
.mc-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.mc-alert{
  padding:14px 16px;
  margin-bottom:24px;
  border-left:3px solid;
  font-weight:500;
}
.mc-alert:focus{outline:none}
.mc-alert--ok{background:#E7F5EE;border-color:var(--mc-ok);color:#14532D}
.mc-alert--error{background:#FDECEA;border-color:var(--mc-error);color:#7A1A12}

/* ==================================================================
   8. WooCommerce
   ================================================================== */

/* Lưới sản phẩm: đường kẻ thay cho thẻ bo tròn */
.woocommerce ul.products,
.woocommerce-page ul.products{
  border-top:1px solid var(--mc-line);
  border-left:1px solid var(--mc-line);
  --grid-columns-gap:0px;
  gap:0 !important;
}
.woocommerce ul.products li.product{
  background:#fff;
  border-right:1px solid var(--mc-line);
  border-bottom:1px solid var(--mc-line);
  border-radius:0;
  box-shadow:none;
  padding:20px;
  margin:0 !important;
  text-align:left;
}
.woocommerce ul.products li.product .ct-media-container,
.woocommerce ul.products li.product a img{
  background:var(--mc-mist);
  border-radius:0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--mc-sans);
  font-size:1.02rem;
  font-weight:600;
  line-height:1.35;
  color:var(--mc-ink);
}
.woocommerce ul.products li.product .price{
  color:var(--mc-ink);
  font-weight:600;
  font-size:1.08rem;
}
.woocommerce ul.products li.product .button{width:100%;margin-top:12px}
.woocommerce span.onsale{
  background:var(--mc-accent);
  color:#fff;
  border-radius:2px;
  min-height:0;
  min-width:0;
  line-height:1;
  padding:6px 10px;
  font-size:.75rem;
  font-weight:600;
}

.woocommerce ul.products li.product{position:relative}
.woocommerce ul.products li.product .mc-badge{
  position:absolute;
  top:30px;
  left:30px;
  z-index:2;
  padding:5px 10px;
  font-size:.75rem;
  font-weight:600;
  color:#fff;
  background:var(--mc-primary);
  border-radius:999px;
}
.woocommerce ul.products li.product .ct-media-container{overflow:hidden}
.woocommerce ul.products li.product a img{transition:transform .35s ease}
.woocommerce ul.products li.product:hover a img{transform:scale(1.03)}
.woocommerce .star-rating span::before,
.woocommerce p.stars a{color:#F2A93B}

/* Thanh sắp xếp và đếm kết quả */
.woocommerce .woocommerce-ordering select{
  border:1px solid var(--mc-line);
  border-radius:var(--mc-radius);
  min-height:42px;
  padding:8px 12px;
}
.woocommerce .woocommerce-result-count{color:var(--mc-muted)}

/* Phân trang */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  min-width:42px;
  min-height:42px;
  display:inline-grid;
  place-items:center;
  border-radius:var(--mc-radius);
}

/* Chi tiết sản phẩm */
.woocommerce div.product .product_title{font-size:clamp(1.9rem, 3.4vw, 2.8rem)}
.woocommerce div.product p.price,
.woocommerce div.product span.price{font-size:1.6rem;color:var(--mc-ink);font-weight:600}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--mc-muted)}
.woocommerce div.product form.cart .quantity .qty{
  min-height:46px;
  border:1px solid var(--mc-line);
  border-radius:var(--mc-radius);
}
.woocommerce div.product .stock.in-stock{color:var(--mc-ok);font-weight:600}
.mc-wholesale-note{
  font-size:.9rem;
  color:var(--mc-muted);
  background:var(--mc-mist);
  padding:12px 14px;
  margin-top:16px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  border-radius:0;
  background:transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--mc-primary)}

/* Giỏ hàng và thanh toán */
.woocommerce table.shop_table{
  border:0;
  border-collapse:collapse;
  border-radius:0;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
  border-top:1px solid var(--mc-line);
  padding:16px 12px;
}
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.wc-block-components-sidebar{
  border:1px solid var(--mc-line);
  padding:24px;
}
.woocommerce-checkout h3,
.cart_totals h2{font-size:1.5rem}

/* Thông báo WooCommerce */
.woocommerce-message,
.woocommerce-info{
  border-top:0;
  border-left:3px solid var(--mc-accent);
  background:var(--mc-mist);
  border-radius:0;
  color:var(--mc-ink);
}
.woocommerce-error{
  border-top:0;
  border-left:3px solid var(--mc-error);
  background:#FDECEA;
  border-radius:0;
}

/* ==================================================================
   9. Responsive
   (block Columns tự xếp dọc dưới 782px; các lưới bên dưới tinh chỉnh thêm)
   ================================================================== */
@media (max-width:1024px){
  ul.mc-cats{grid-template-columns:repeat(2, 1fr)}
  .mc-cats li:not(:nth-child(3n+1)){border-left:0}
  .mc-cats li:nth-child(2n){border-left:1px solid var(--mc-line)}
  .mc-cats li:nth-child(3n+1) a{padding-left:24px}
  .mc-cats li:nth-child(2n+1) a{padding-left:0}
}

@media (max-width:781px){
  .mc-landing .mc-hero .mc-hero__title{max-width:none}
  .mc-hero__card--rating{left:12px;bottom:12px}
  .mc-hero__card--delivery{right:12px;top:12px}
  .mc-hero__media > .mc-hero__card{padding:10px 14px}
  .wp-block-columns.mc-stats{display:grid;grid-template-columns:1fr 1fr}
  .mc-stats > .wp-block-column,
  .mc-stats > .wp-block-column + .wp-block-column{padding:18px 16px 18px 0;border-left:0}
  .mc-stats > .wp-block-column:nth-child(2n){padding-left:16px;border-left:1px solid var(--mc-line)}
  .mc-stats > .wp-block-column:nth-child(-n+2){border-bottom:1px solid var(--mc-line)}
  .wp-block-columns.mc-stats--3{grid-template-columns:1fr}
  .mc-stats--3 > .wp-block-column:nth-child(n){padding-left:0;border-left:0;border-bottom:1px solid var(--mc-line)}
  .mc-stats--3 > .wp-block-column:last-child{border-bottom:0}
}

@media (max-width:640px){
  ul.mc-cats,
  ol.mc-flow,
  .mc-field-row{grid-template-columns:1fr}
  .mc-cats li:nth-child(n){border-left:0}
  .mc-cats li:nth-child(n) a{padding-left:0}
  .mc-flow li,
  .mc-flow li + li{padding:20px 0;border-left:0;border-bottom:1px solid var(--mc-line)}
  .mc-actions .wp-block-button{flex:1 1 100%}
  .mc-actions .wp-block-button__link{width:100%}
  .mc-topbar__inner{justify-content:center;text-align:center}
  .mc-topbar__inner span{display:none}
  .woocommerce ul.products li.product{padding:14px}
}

/* ==================================================================
   10. Giảm chuyển động theo cài đặt hệ điều hành
   ================================================================== */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    transition:none !important;
    animation:none !important;
    scroll-behavior:auto !important;
  }
}

/* ==================================================================
   11. Slider hero, hiệu ứng và tương tác
   (JS: assets/js/front.js. Khi người dùng bật "giảm chuyển động",
   mục 10 ở trên tắt toàn bộ animation/transition.)
   ================================================================== */

.screen-reader-text{
  position:absolute !important;
  width:1px;height:1px;
  overflow:hidden;
  clip:rect(1px,1px,1px,1px);
  white-space:nowrap;
}

/* ---------- Slider ---------- */
/* Chưa có JS: chỉ hiện slide đầu, tránh 3 slide xếp chồng */
.mc-landing .mc-slider:not(.is-ready) > .mc-slide:not(:first-child){display:none}

.mc-slider{position:relative;overflow:hidden;isolation:isolate}
.mc-slider.is-ready{
  display:grid;
  background:none;
  padding-bottom:calc(clamp(48px, 7vw, 88px) + 44px);
}
.wp-block-group.alignfull.mc-slider > .mc-slide{
  grid-area:1 / 1;
  margin-top:0;
}
.mc-slider.is-ready > .mc-slide{
  opacity:0;
  visibility:hidden;
  transition:opacity .8s ease, visibility 0s linear .8s;
}
.mc-slider.is-ready > .mc-slide.is-active{
  opacity:1;
  visibility:visible;
  transition:opacity .8s ease, visibility 0s;
}

/* Nền đổi màu theo slide */
.wp-block-group.alignfull.mc-slider > .mc-slider__bgs{
  position:absolute;
  inset:0;
  z-index:-1;
  width:auto;
  max-width:none;
  margin:0 !important;
}
.mc-slider__bg{position:absolute;inset:0;opacity:0;transition:opacity 1s ease;overflow:hidden}
.mc-slider__bg.is-active{opacity:1}
.mc-slider__bg--blue{
  background:
    radial-gradient(60% 80% at 85% 30%, rgba(42,139,201,.14), transparent 70%),
    linear-gradient(180deg, #F4F9FD 0%, var(--mc-mist) 100%);
}
.mc-slider__bg--teal{
  background:
    radial-gradient(60% 80% at 85% 30%, rgba(24,150,140,.16), transparent 70%),
    linear-gradient(180deg, #F2FAF9 0%, #E2F3F1 100%);
}
.mc-slider__bg--warm{
  background:
    radial-gradient(60% 80% at 85% 30%, rgba(232,140,100,.16), transparent 70%),
    linear-gradient(180deg, #FDF9F4 0%, #F6ECE2 100%);
}
/* Đốm sáng trôi chậm phía sau */
.mc-slider__bg::before,
.mc-slider__bg::after{
  content:"";
  position:absolute;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.75), rgba(255,255,255,0) 68%);
}
.mc-slider__bg::before{width:560px;height:560px;right:-140px;top:-180px;animation:mc-drift 16s ease-in-out infinite}
.mc-slider__bg::after{width:380px;height:380px;left:-120px;bottom:-160px;animation:mc-drift 20s ease-in-out infinite reverse}

/* Chữ trong slide xuất hiện so le */
.mc-slider.is-ready .mc-hero__copy > *{
  opacity:0;
  transform:translateY(20px);
  transition:opacity .6s ease, transform .7s cubic-bezier(.2,.7,.2,1);
}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__copy > *{opacity:1;transform:none}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__copy > :nth-child(1){transition-delay:.15s}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__copy > :nth-child(2){transition-delay:.25s}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__copy > :nth-child(3){transition-delay:.35s}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__copy > :nth-child(4){transition-delay:.45s}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__copy > :nth-child(5){transition-delay:.55s}

/* Ảnh: khung bo góc cố định, ảnh bên trong zoom chậm (Ken Burns) */
.mc-hero__img{
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 30px 60px -30px rgba(11,79,124,.45);
}
.mc-hero__img img{border-radius:0;box-shadow:none}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__img img{
  animation:mc-kenburns calc(var(--mc-interval, 7000ms) + 1500ms) ease-out both;
}

/* Thẻ nổi bay vào rồi lơ lửng */
.mc-slider.is-ready .mc-slide .mc-hero__card{
  opacity:0;
  transform:translateY(18px) scale(.96);
  transition:opacity .6s ease, transform .6s cubic-bezier(.2,.7,.2,1);
}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__card{opacity:1;transform:none;transition-delay:.55s}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__card--delivery{animation:mc-bob 5s ease-in-out 1.4s infinite}
.mc-slider.is-ready .mc-slide.is-active .mc-hero__card--rating{animation:mc-bob 6s ease-in-out 2s infinite reverse}

/* Thanh điều khiển */
.wp-block-group.alignfull.mc-slider > .mc-slider__controls{
  position:absolute;
  left:50%;
  bottom:clamp(16px, 3vw, 28px);
  transform:translateX(-50%);
  z-index:3;
  width:auto;
  max-width:none;
  margin:0 !important;
  display:flex;
  align-items:center;
  gap:10px;
  padding:6px;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(214,228,238,.9);
  border-radius:999px;
  box-shadow:0 12px 30px -18px rgba(11,79,124,.45);
}
.mc-slider__arrow,
.mc-slider__toggle{
  position:relative;
  width:36px;
  height:36px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#fff;
  color:var(--mc-primary);
  cursor:pointer;
  transition:background-color .2s, color .2s, transform .2s;
}
.mc-slider__arrow:hover,
.mc-slider__toggle:hover{background:var(--mc-primary);color:#fff}
.mc-slider__arrow:active{transform:scale(.92)}
.mc-slider__arrow::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:9px;
  height:9px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
}
.mc-slider__arrow--prev::before{transform:translate(-35%, -50%) rotate(-135deg)}
.mc-slider__arrow--next::before{transform:translate(-65%, -50%) rotate(45deg)}
.mc-slider__toggle::before,
.mc-slider__toggle::after{
  content:"";
  position:absolute;
  top:50%;
  width:3px;
  height:12px;
  background:currentColor;
  border-radius:2px;
  transform:translateY(-50%);
}
.mc-slider__toggle::before{left:13px}
.mc-slider__toggle::after{right:13px}
.mc-slider__toggle.is-paused::after{display:none}
.mc-slider__toggle.is-paused::before{
  left:14px;
  width:0;
  height:0;
  background:none;
  border-radius:0;
  border-left:10px solid currentColor;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
}
.mc-slider__dots{display:flex;align-items:center;gap:6px;padding-inline:4px}
.mc-slider__dot{
  position:relative;
  width:10px;
  height:10px;
  padding:0;
  border:0;
  border-radius:999px;
  background:var(--mc-line);
  overflow:hidden;
  cursor:pointer;
  transition:width .35s cubic-bezier(.2,.7,.2,1), background-color .2s;
}
.mc-slider__dot:hover{background:#bcd3e3}
.mc-slider__dot.is-active{width:44px;background:rgba(11,79,124,.16)}
.mc-slider__progress{
  position:absolute;
  inset:0;
  background:var(--mc-primary);
  border-radius:inherit;
  transform:scaleX(0);
  transform-origin:left center;
}
.mc-slider__dot.is-active .mc-slider__progress{animation:mc-progress var(--mc-interval, 7000ms) linear forwards}
.mc-slider.is-paused .mc-slider__dot.is-active .mc-slider__progress{animation-play-state:paused}
.mc-slider.is-static .mc-slider__dot.is-active .mc-slider__progress{animation:none;transform:none}

/* ---------- Dải chạy chữ ---------- */
.mc-marquee{
  background:var(--mc-primary);
  color:#fff;
  overflow:hidden;
  padding-block:14px;
}
.wp-block-group.alignfull.mc-marquee > .mc-marquee__list{
  width:auto;
  max-width:none;
  margin:0 !important;
}
ul.mc-marquee__list{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  padding:0 24px;
  font-size:.95rem;
  font-weight:500;
  white-space:nowrap;
}
.mc-marquee__list li{margin:0;padding:4px 44px 4px 0}
.mc-marquee__list li::before{content:"✚";margin-right:12px;color:#9FD3F2;font-size:.75em}
.mc-marquee.is-running ul.mc-marquee__list{
  flex-wrap:nowrap;
  justify-content:flex-start;
  width:max-content;
  padding:0;
  animation:mc-marquee 38s linear infinite;
}
.mc-marquee.is-running:hover ul.mc-marquee__list{animation-play-state:paused}

/* ---------- Đếm ngược ưu đãi ---------- */
.mc-countdown{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  margin:0;
  font-size:.85rem;
  color:var(--mc-muted);
}
.mc-countdown__label{margin-right:4px}
.mc-countdown__box{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  min-width:48px;
  padding:7px 6px 5px;
  background:var(--mc-primary);
  color:#fff;
  border-radius:10px;
  line-height:1;
}
.mc-countdown__box b{font-size:1.15rem;font-variant-numeric:tabular-nums}
.mc-countdown__box small{margin-top:3px;font-size:.62rem;opacity:.8}

/* ---------- Hiện dần khi cuộn ---------- */
.mc-reveal{
  opacity:0;
  transform:translateY(26px);
  transition:opacity .7s ease var(--mc-delay, 0s), transform .8s cubic-bezier(.2,.7,.2,1) var(--mc-delay, 0s);
}
.mc-reveal.is-visible{opacity:1;transform:none}

/* ---------- Nút: nhấc nhẹ và vệt sáng lướt qua ---------- */
.wp-block-button .wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.mc-submit{
  position:relative;
  overflow:hidden;
  transition:background-color .2s, color .2s, border-color .2s, transform .2s, box-shadow .2s;
}
.wp-block-button .wp-block-button__link::after,
.woocommerce a.button::after,
.woocommerce button.button::after,
.mc-submit::after{
  content:"";
  position:absolute;
  top:0;
  left:-60%;
  width:40%;
  height:100%;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.35), transparent);
  transform:skewX(-20deg);
  pointer-events:none;
}
.wp-block-button .wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.mc-submit:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 24px -14px rgba(11,79,124,.6);
}
.wp-block-button .wp-block-button__link:hover::after,
.woocommerce a.button:hover::after,
.woocommerce button.button:hover::after,
.mc-submit:hover::after{animation:mc-shine .8s ease}
.wp-block-button .wp-block-button__link:active,
.woocommerce a.button:active{transform:translateY(0)}

/* ---------- Thẻ sản phẩm, danh mục, thẻ nhóm khách, đánh giá, bài viết ---------- */
.woocommerce ul.products li.product{transition:box-shadow .3s, z-index 0s}
.woocommerce ul.products li.product:hover{
  z-index:2;
  box-shadow:0 22px 44px -24px rgba(11,79,124,.4);
}
.mc-cats a{
  background:linear-gradient(90deg, var(--mc-mist), var(--mc-mist)) no-repeat left center / 0% 100%;
  transition:background-size .4s cubic-bezier(.2,.7,.2,1);
}
.mc-cats a:hover{background-size:100% 100%}
.mc-audience__card{transition:box-shadow .3s, border-color .3s, transform .3s}
.mc-audience__card:hover{transform:translateY(-6px)}
.mc-audience__card .wp-block-image{overflow:hidden}
.mc-audience__card .wp-block-image img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.mc-audience__card:hover .wp-block-image img{transform:scale(1.05)}
.mc-quote.wp-block-quote{transition:transform .3s, box-shadow .3s}
.mc-quote.wp-block-quote:hover{transform:translateY(-4px);box-shadow:0 20px 40px -26px rgba(11,79,124,.4)}
.mc-posts .wp-block-latest-posts__featured-image{overflow:hidden;border-radius:16px}
.mc-posts .wp-block-latest-posts__featured-image img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.mc-posts li:hover .wp-block-latest-posts__featured-image img{transform:scale(1.05)}
.mc-hero__points li::before{animation:mc-pop .5s cubic-bezier(.2,.9,.3,1.4) both}

/* ---------- Header khi cuộn + menu dropdown danh mục ---------- */
#header [data-row="middle"]{transition:box-shadow .3s}
body.mc-scrolled #header [data-row="middle"]{box-shadow:0 10px 30px -18px rgba(11,79,124,.35)}
/* Dropdown mặc định của Blocksy là nền tối, chữ trắng. Đổi sang nền trắng thì phải
   đổi luôn các biến màu chữ của Blocksy, nếu không chữ trắng sẽ "biến mất" trên nền trắng. */
#header [data-id*="menu"] .sub-menu,
#header .sub-menu{
  --dropdown-background-color:#fff;
  --theme-link-initial-color:var(--mc-ink);
  --theme-link-hover-color:var(--mc-primary);
  --theme-link-active-color:var(--mc-primary);
  --dropdown-divider:none;
  min-width:260px;
  padding:8px;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:14px;
  box-shadow:0 24px 48px -20px rgba(11,79,124,.35);
}
#header .sub-menu .menu-item{border:0}
#header .sub-menu .menu-item > a,
#header .sub-menu .menu-item > .ct-menu-link{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--mc-ink);
  border-radius:8px;
  padding:10px 14px;
  font-size:.93rem;
  font-weight:500;
  text-transform:none;
  letter-spacing:0;
  transition:background-color .2s, color .2s, padding-left .2s;
}
#header .sub-menu .menu-item > a::before{
  content:"";
  flex:none;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--mc-line);
  transition:background-color .2s, transform .2s;
}
#header .sub-menu .menu-item > a:hover,
#header .sub-menu .menu-item > a:focus-visible,
#header .sub-menu .current-menu-item > a{
  background:var(--mc-mist);
  color:var(--mc-primary);
  padding-left:18px;
}
#header .sub-menu .menu-item > a:hover::before,
#header .sub-menu .current-menu-item > a::before{
  background:var(--mc-accent);
  transform:scale(1.4);
}

/* ---------- Nút lên đầu trang ---------- */
.mc-to-top{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:50;
  width:48px;
  height:48px;
  padding:0;
  border:0;
  border-radius:50%;
  background:var(--mc-primary);
  color:#fff;
  cursor:pointer;
  box-shadow:0 14px 30px -12px rgba(11,79,124,.6);
  opacity:0;
  transform:translateY(16px);
  pointer-events:none;
  transition:opacity .3s, transform .3s, background-color .2s;
}
.mc-to-top::before{
  content:"";
  position:absolute;
  left:50%;
  top:55%;
  width:11px;
  height:11px;
  border-top:2px solid currentColor;
  border-left:2px solid currentColor;
  transform:translate(-50%, -50%) rotate(45deg);
}
.mc-to-top.is-visible{opacity:1;transform:none;pointer-events:auto}
.mc-to-top:hover{background:var(--mc-accent)}

/* ---------- Thông báo thêm vào giỏ ---------- */
.mc-toast{
  position:fixed;
  left:50%;
  bottom:24px;
  z-index:60;
  display:flex;
  align-items:center;
  gap:14px;
  max-width:calc(100vw - 32px);
  padding:12px 14px 12px 12px;
  background:var(--mc-ink);
  color:#fff;
  border-radius:16px;
  box-shadow:0 24px 48px -16px rgba(19,41,61,.55);
  opacity:0;
  transform:translate(-50%, 140%);
  transition:opacity .35s, transform .45s cubic-bezier(.2,.9,.3,1.2);
  pointer-events:none;
}
.mc-toast.is-visible{opacity:1;transform:translate(-50%, 0);pointer-events:auto}
.mc-toast__icon{
  position:relative;
  flex:none;
  width:32px;
  height:32px;
  border-radius:50%;
  background:var(--mc-ok);
}
.mc-toast__icon::after{
  content:"";
  position:absolute;
  left:11px;
  top:7px;
  width:8px;
  height:14px;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:rotate(45deg);
}
.mc-toast__text{display:flex;flex-direction:column;font-size:.88rem;line-height:1.35;min-width:0}
.mc-toast__text span{opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}
.mc-toast__link{color:#9FD3F2;font-weight:600;white-space:nowrap;text-decoration:none}
.mc-toast__link:hover{text-decoration:underline}

/* ---------- Keyframes ---------- */
@keyframes mc-kenburns{from{transform:scale(1.08) translate(1%, 1%)}to{transform:scale(1) translate(0, 0)}}
@keyframes mc-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes mc-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes mc-drift{0%,100%{transform:translate(0, 0)}50%{transform:translate(-40px, 30px)}}
@keyframes mc-marquee{to{transform:translateX(-50%)}}
@keyframes mc-shine{to{left:130%}}
@keyframes mc-pop{from{transform:scale(0)}to{transform:scale(1)}}

@media (max-width:781px){
  .mc-slider.is-ready{padding-bottom:96px}
  .mc-countdown__box{min-width:42px}
  .mc-toast__text span{max-width:160px}
}

/* ==================================================================
   12. Logo thương hiệu (đặt bởi scripts/pages.php → custom_logo)
   ================================================================== */
#header [data-id="logo"]{--logo-max-height:54px}
#header .site-logo-container img{
  width:auto;
  height:auto;
  max-height:var(--logo-max-height, 54px);
}
/* Đã có logo chữ thì ẩn tên trang dạng văn bản để không lặp */
#header [data-id="logo"]:has(.site-logo-container img) .site-title-container{display:none}
body.mc-scrolled #header [data-id="logo"]{--logo-max-height:46px}
#header .site-logo-container img{transition:max-height .3s ease}
@media (max-width:999px){
  #header [data-id="logo"]{--logo-max-height:40px}
}

/* ==================================================================
   13. Bộ lọc danh mục dạng nút trên trang Cửa hàng / danh mục
   ================================================================== */
.mc-catfilter{
  position:relative;
  margin:0 0 28px;
  width:100%;
  flex-basis:100%;
}
.mc-catfilter__list{
  list-style:none;
  margin:0;
  padding:4px 2px 10px;
  display:flex;
  gap:10px;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  scrollbar-width:thin;
  scrollbar-color:var(--mc-line) transparent;
  -webkit-mask-image:linear-gradient(90deg, #000 calc(100% - 32px), transparent 100%);
          mask-image:linear-gradient(90deg, #000 calc(100% - 32px), transparent 100%);
}
.mc-catfilter__list li{flex:none;margin:0;scroll-snap-align:start}
.mc-chip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:6px 8px 6px 16px;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:999px;
  color:var(--mc-ink);
  font-size:.93rem;
  font-weight:500;
  line-height:1.2;
  white-space:nowrap;
  text-decoration:none;
  transition:border-color .2s, background-color .2s, color .2s, transform .2s, box-shadow .2s;
}
.mc-chip:has(.mc-chip__img){padding-left:6px}
.mc-chip__img{
  width:34px;
  height:34px;
  border-radius:50%;
  object-fit:cover;
  background:var(--mc-mist);
}
.mc-chip__count{
  min-width:26px;
  padding:3px 8px;
  border-radius:999px;
  background:var(--mc-mist);
  color:var(--mc-muted);
  font-size:.78rem;
  font-weight:600;
  text-align:center;
}
.mc-chip:hover{
  border-color:var(--mc-accent);
  color:var(--mc-primary);
  transform:translateY(-1px);
  box-shadow:0 10px 20px -14px rgba(11,79,124,.5);
}
.mc-chip.is-active{
  background:var(--mc-primary);
  border-color:var(--mc-primary);
  color:#fff;
}
.mc-chip.is-active .mc-chip__count{background:rgba(255,255,255,.18);color:#fff}
.mc-chip.is-active .mc-chip__img{box-shadow:0 0 0 2px rgba(255,255,255,.6)}
@media (max-width:640px){
  .mc-catfilter{margin-bottom:20px}
  .mc-chip{min-height:42px;font-size:.88rem}
  .mc-chip__img{width:30px;height:30px}
}

/* ==================================================================
   14. Footer (Mẫu đồng bộ "Footer MediCare", hiển thị qua functions.php)
   ================================================================== */
.mc-has-footer #footer{display:none}

.mc-site-footer{
  position:relative;
  margin-top:0;
  color:var(--mc-muted);
  font-size:.95rem;
  line-height:1.6;
}
.mc-site-footer > .alignfull{width:100%;max-width:none;margin:0}
.mc-site-footer a{color:var(--mc-ink);text-decoration:none;transition:color .2s}
.mc-site-footer a:hover{color:var(--mc-primary)}

/* Phần chính: nền xanh rất nhạt, đường sóng màu thương hiệu ở mép trên */
.mc-footer{
  position:relative;
  padding-block:clamp(48px, 7vw, 80px) clamp(36px, 5vw, 56px);
  background:
    radial-gradient(50% 120% at 100% 0%, rgba(19,168,158,.10), transparent 60%),
    radial-gradient(40% 100% at 0% 100%, rgba(42,139,201,.10), transparent 60%),
    #F3F8FC;
  border-top:1px solid var(--mc-line);
}
.mc-footer::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-1px;
  height:4px;
  background:linear-gradient(90deg, #0A466E 0%, #14A3B8 60%, #3CC6B0 100%);
}
.wp-block-columns.mc-footer__grid{gap:clamp(28px, 4vw, 56px);margin-bottom:0}

.mc-footer__logo{margin:0 0 18px}
.mc-footer__logo img{display:block;width:240px;max-width:100%;height:auto}
.mc-footer__about{margin:0 0 20px;max-width:38ch}

.mc-footer__social.wp-block-social-links{gap:10px;margin:0}
.mc-footer__social .wp-social-link{
  background:#fff !important;
  color:var(--mc-primary) !important;
  border:1px solid var(--mc-line);
  transition:transform .2s, background-color .2s, color .2s, border-color .2s;
}
.mc-footer__social .wp-social-link a{padding:9px;color:inherit}
.mc-footer__social .wp-social-link svg{width:20px;height:20px}
.mc-footer__social .wp-social-link:hover{
  transform:translateY(-3px);
  background:var(--mc-primary) !important;
  border-color:var(--mc-primary);
  color:#fff !important;
}

.mc-footer__title.wp-block-heading,
.mc-landing .mc-footer__title.wp-block-heading{
  margin:4px 0 16px;
  font-family:var(--mc-sans);
  font-size:1rem;
  font-weight:600;
  color:var(--mc-ink);
}

ul.mc-footer__links{list-style:none;margin:0;padding:0}
.mc-footer__links li{margin:0 0 10px}
.mc-footer__links a{
  display:inline-flex;
  align-items:center;
  color:var(--mc-muted);
}
.mc-footer__links a::before{
  content:"";
  width:0;
  height:2px;
  margin-right:0;
  background:var(--mc-accent);
  border-radius:2px;
  transition:width .25s ease, margin-right .25s ease;
}
.mc-footer__links a:hover{color:var(--mc-primary)}
.mc-footer__links a:hover::before{width:12px;margin-right:8px}

.mc-footer__company{margin:0 0 14px;font-weight:600;color:var(--mc-ink);line-height:1.45}
ul.mc-footer__info{list-style:none;margin:0;padding:0}
.mc-footer__info li{
  position:relative;
  margin:0 0 14px;
  padding-left:44px;
  min-height:32px;
  line-height:1.5;
}
.mc-footer__info strong{
  display:block;
  font-size:.78rem;
  font-weight:600;
  color:var(--mc-muted);
  letter-spacing:.01em;
}
.mc-footer__info br{display:none}
.mc-footer__info a{font-weight:600;color:var(--mc-primary)}
.mc-footer__info li::before{
  content:"";
  position:absolute;
  left:0;
  top:2px;
  width:32px;
  height:32px;
  border-radius:10px;
  background:#fff;
  border:1px solid var(--mc-line);
}
.mc-footer__info li::after{
  content:"";
  position:absolute;
  left:8px;
  top:10px;
  width:16px;
  height:16px;
  background:var(--mc-primary);
  -webkit-mask:var(--mc-ico) center / contain no-repeat;
          mask:var(--mc-ico) center / contain no-repeat;
}
.mc-footer__info .mc-i-pin{--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E")}
.mc-footer__info .mc-i-office{--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v4h2a2 2 0 0 1 2 2v10h-6v-4h-4v4H4zm4-14v2h2V7H8zm4 0v2h2V7h-2zm-4 4v2h2v-2H8zm4 0v2h2v-2h-2z'/%3E%3C/svg%3E")}
.mc-footer__info .mc-i-phone{--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11.4 11.4 0 0 0 3.6.57 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.25.2 2.45.57 3.57a1 1 0 0 1-.25 1L6.6 10.8z'/%3E%3C/svg%3E")}
.mc-footer__info .mc-i-mail{--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 5h18a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1zm9 7.2L4 7.3V17h16V7.3l-8 4.9zM5.2 7l6.8 4.2L18.8 7H5.2z'/%3E%3C/svg%3E")}
.mc-footer__info .mc-i-web{--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm6.9 6h-2.9a15.7 15.7 0 0 0-1.4-3.6A8 8 0 0 1 18.9 8zM12 4c.8 1.2 1.5 2.5 1.9 4h-3.8c.4-1.5 1.1-2.8 1.9-4zM4.3 14a8.2 8.2 0 0 1 0-4h3.4a16.5 16.5 0 0 0 0 4H4.3zm.8 2h2.9c.3 1.3.8 2.5 1.4 3.6A8 8 0 0 1 5.1 16zM8 8H5.1a8 8 0 0 1 4.3-3.6C8.8 5.5 8.3 6.7 8 8zm4 12c-.8-1.2-1.5-2.5-1.9-4h3.8c-.4 1.5-1.1 2.8-1.9 4zm2.3-6H9.7a14.7 14.7 0 0 1 0-4h4.6a14.7 14.7 0 0 1 0 4zm.3 5.6c.6-1.1 1.1-2.3 1.4-3.6h2.9a8 8 0 0 1-4.3 3.6zm1.7-5.6a16.5 16.5 0 0 0 0-4h3.4a8.2 8.2 0 0 1 0 4h-3.4z'/%3E%3C/svg%3E")}

/* Dòng bản quyền */
.mc-footer-bar{
  padding-block:18px;
  background:var(--mc-primary-dark);
  color:#BFD6E6;
  font-size:.86rem;
}
.mc-footer-bar__inner{gap:8px 24px;align-items:center}
.mc-footer-bar p{margin:0}
.mc-footer-bar a{color:#fff;font-weight:600}
.mc-footer-bar a:hover{color:#9FD3F2}
.mc-footer-bar__pay{opacity:.85}

@media (max-width:781px){
  .wp-block-columns.mc-footer__grid{flex-wrap:wrap}
  .mc-footer__grid > .wp-block-column{flex-basis:100% !important}
  .mc-footer__grid > .wp-block-column:nth-child(2),
  .mc-footer__grid > .wp-block-column:nth-child(3){flex-basis:calc(50% - 14px) !important}
  .mc-footer__brand{margin-bottom:8px}
  .mc-footer-bar__inner{justify-content:center !important;text-align:center}
}

/* ==================================================================
   15. Trang bài viết hai cột (functions.php → the_content)
   ================================================================== */
/* Mở rộng khung "narrow" mặc định của Blocksy cho bài viết */
/* Bề rộng khung bài viết: chỉnh một chỗ ở đây */
body.mc-post-2col{
  --mc-post-width:1200px;
  --theme-narrow-container-max-width:var(--mc-post-width);
  --theme-block-max-width:var(--mc-post-width);
}
body.mc-post-2col .ct-container-narrow{max-width:min(var(--mc-post-width), 100% - 2 * var(--mc-gutter))}
/* Ảnh đại diện được đưa vào cột trái, ẩn ảnh mặc định của Blocksy để không lặp */
body.mc-post-2col .ct-featured-image{display:none}
body.mc-post-2col .hero-section .page-title,
body.mc-post-2col .entry-header .page-title{font-size:clamp(1.9rem, 3.4vw, 2.8rem);max-width:none}

/* Khung hai cột luôn giới hạn bề rộng và căn giữa, không phụ thuộc bố cục Blocksy */
body.mc-post-2col .entry-content > .mc-post-layout,
.mc-post-layout{
  width:min(var(--mc-post-width, 1200px), 100% - 2 * var(--mc-gutter)) !important;
  max-width:none !important;
  margin-inline:auto !important;
}
/* Tiêu đề, mô tả, ngày đăng thẳng hàng với khung hai cột */
body.mc-post-2col .hero-section .entry-header,
body.mc-post-2col article > .entry-header,
body.mc-post-2col .hero-section[data-type="type-1"]{
  width:min(var(--mc-post-width), 100% - 2 * var(--mc-gutter));
  max-width:none;
  margin-inline:auto;
}
.mc-post-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 320px;
  gap:clamp(28px, 4vw, 48px);
  align-items:start;
}
.mc-post-main{min-width:0}
.mc-post-main > *{max-width:none}
.mc-post-main > :first-child{margin-top:0}
.mc-post-main p,
.mc-post-main li{font-size:1.06rem;line-height:1.75}
.mc-post-main h2{font-size:clamp(1.5rem, 2.4vw, 1.9rem);margin:1.6em 0 .6em}

.mc-post-thumb{margin:0 0 28px;border-radius:18px;overflow:hidden;box-shadow:0 24px 48px -28px rgba(11,79,124,.45)}
.mc-post-thumb img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}

/* Cột phải */
.mc-post-side__inner{
  position:sticky;
  top:calc(var(--header-sticky-height, 80px) + 24px);
  display:grid;
  gap:20px;
}
.mc-post-side .mc-side-card{
  margin:0;
  padding:22px 20px;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:16px;
  box-shadow:0 18px 40px -32px rgba(11,79,124,.4);
}
.mc-post-side .mc-side-card > *{margin-top:0}
.mc-post-side .mc-side-title,
.mc-post-side h2.mc-side-title.wp-block-heading{
  position:relative;
  margin:0 0 14px;
  padding-bottom:12px;
  font-family:var(--mc-sans);
  font-size:1.05rem;
  font-weight:600;
  color:var(--mc-ink);
  border-bottom:1px solid var(--mc-line);
}
.mc-post-side .mc-side-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:56px;
  height:2px;
  background:linear-gradient(90deg, #0A466E, #14A3B8);
}

ul.mc-recent{list-style:none;margin:0;padding:0}
.mc-recent__item{
  display:grid;
  grid-template-columns:80px minmax(0, 1fr);
  gap:14px;
  align-items:center;
  margin:0;
  padding:12px 0;
  border-bottom:1px solid var(--mc-line);
}
.mc-recent__item:first-child{padding-top:2px}
.mc-recent__item:last-child{border-bottom:0;padding-bottom:0}
.mc-recent__thumb{display:block;width:80px;height:80px;border-radius:10px;overflow:hidden;background:var(--mc-mist)}
.mc-recent__img{display:block;width:80px;height:80px;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.mc-recent__item:hover .mc-recent__img{transform:scale(1.08)}
.mc-recent__title{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:.93rem;
  font-weight:600;
  line-height:1.4;
  color:var(--mc-ink);
  text-decoration:none;
}
.mc-recent__title:hover{color:var(--mc-primary)}
.mc-recent__date{display:block;margin-top:4px;font-size:.78rem;color:var(--mc-muted)}

/* Hộp tư vấn */
.mc-post-side .mc-side-cta{
  background:linear-gradient(135deg, var(--mc-primary) 0%, #0E7896 60%, #14A3B8 140%);
  border:0;
  color:#D8EBF7;
}
.mc-post-side .mc-side-cta .mc-side-title{color:#fff;border-bottom-color:rgba(255,255,255,.2)}
.mc-post-side .mc-side-cta .mc-side-title::after{background:#9FD3F2}
.mc-post-side .mc-side-cta p{font-size:.92rem;margin:0 0 16px}

@media (max-width:999px){
  .mc-post-layout{grid-template-columns:1fr}
  .mc-post-side__inner{position:static}
}

/* ==================================================================
   16. Meci Dental: catalog, báo giá, bộ lọc, thương hiệu, nút liên hệ nhanh
   ================================================================== */

/* Giá → "Liên hệ báo giá" */
.mc-price-contact{
  display:inline-block;
  padding:3px 10px;
  border-radius:999px;
  background:var(--mc-mist);
  color:var(--mc-primary);
  font-size:.82rem;
  font-weight:600;
}
.woocommerce div.product p.price .mc-price-contact{font-size:.95rem;padding:6px 14px}

/* Nút trong danh sách sản phẩm */
.mc-loop-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.woocommerce ul.products li.product .mc-loop-actions .button{width:100%;margin:0;padding:10px 8px;min-height:42px;font-size:.88rem}
.woocommerce ul.products li.product .mc-btn-detail{background:#fff;color:var(--mc-primary);border:1px solid var(--mc-line)}
.woocommerce ul.products li.product .mc-btn-detail:hover{background:var(--mc-mist);color:var(--mc-primary)}

/* Trang chi tiết sản phẩm */
.mc-pbrand{display:inline-flex;align-items:center;gap:10px;margin-bottom:10px;color:var(--mc-muted);font-size:.85rem;text-decoration:none}
.mc-pbrand__logo{height:34px;width:auto}
.mc-pbrand:hover{color:var(--mc-primary)}
.mc-psku{margin:-4px 0 14px;color:var(--mc-muted);font-size:.92rem}
.mc-psku strong{color:var(--mc-ink);font-variant-numeric:tabular-nums}
.mc-quote-box{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:22px 0;
  padding:18px;
  background:var(--mc-mist);
  border:1px solid var(--mc-line);
  border-radius:16px;
}
.mc-quote-box .button{margin:0}
.woocommerce .mc-quote-box .mc-btn-quote--lg{flex:1 1 100%;min-height:52px;font-size:1.02rem}
.woocommerce .mc-quote-box .mc-btn-zalo{background:#0068FF}
.woocommerce .mc-quote-box .mc-btn-zalo:hover{background:#0052cc}
.woocommerce .mc-quote-box .mc-btn-call{background:#fff;color:var(--mc-primary);border:1px solid var(--mc-line)}
.woocommerce .mc-quote-box .mc-btn-call:hover{background:var(--mc-paper);color:var(--mc-primary)}
.mc-quote-box .mc-btn-zalo,
.mc-quote-box .mc-btn-call{flex:1 1 0}
.mc-quote-note{flex:1 1 100%;margin:2px 0 0;font-size:.86rem;color:var(--mc-muted)}

.woocommerce div.product .woocommerce-product-gallery__image img{border-radius:16px}
.woocommerce div.product .flex-control-thumbs li img{border-radius:10px;border:1px solid var(--mc-line)}
.woocommerce div.product .flex-control-thumbs li img.flex-active{border-color:var(--mc-accent)}

.woocommerce table.shop_attributes{border:0}
.woocommerce table.shop_attributes th,
.woocommerce table.shop_attributes td{padding:12px 14px;border-bottom:1px solid var(--mc-line);font-style:normal}
.woocommerce table.shop_attributes th{width:34%;background:var(--mc-mist);font-weight:600;color:var(--mc-ink)}
.woocommerce table.shop_attributes tr:nth-child(even) th,
.woocommerce table.shop_attributes tr:nth-child(even) td{background:transparent}

ol.mc-usage{counter-reset:mc-u;list-style:none;padding:0;margin:0 0 16px}
.mc-usage li{counter-increment:mc-u;position:relative;padding:10px 0 10px 46px;border-bottom:1px solid var(--mc-line)}
.mc-usage li::before{
  content:counter(mc-u);
  position:absolute;
  left:0;
  top:8px;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--mc-primary);
  color:#fff;
  font-weight:600;
  font-size:.86rem;
}
ul.mc-docs{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.mc-doc{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 16px;
  border:1px solid var(--mc-line);
  border-radius:12px;
  color:var(--mc-ink);
  text-decoration:none;
  transition:border-color .2s, box-shadow .2s, transform .2s;
}
.mc-doc:hover{border-color:var(--mc-accent);box-shadow:0 12px 24px -18px rgba(10,70,110,.5);transform:translateY(-1px)}
.mc-doc__icon{flex:none;width:42px;height:48px;display:grid;place-items:center;border-radius:8px;background:#E5484D;color:#fff;font-size:.72rem;font-weight:700}
.mc-doc__name{flex:1;font-weight:600}
.mc-doc__size{color:var(--mc-muted);font-size:.85rem}
.mc-doc__size::after{content:" · Tải về";color:var(--mc-primary);font-weight:600}

/* Bộ lọc tìm kiếm */
.mc-filters{
  display:grid;
  grid-template-columns:minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) auto;
  gap:12px;
  align-items:end;
  width:100%;
  flex-basis:100%;
  margin:0 0 28px;
  padding:18px;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:16px;
  box-shadow:0 18px 40px -34px rgba(10,70,110,.45);
}
.mc-filters__field{display:grid;gap:6px;min-width:0}
.mc-filters label{font-size:.82rem;font-weight:600;color:var(--mc-muted)}
.mc-filters input[type="search"],
.mc-filters select{
  width:100%;
  min-height:46px;
  padding:10px 12px;
  border:1px solid var(--mc-line);
  border-radius:10px;
  background:#fff;
  font:inherit;
}
.mc-filters input[type="search"]:focus,
.mc-filters select:focus{outline:2px solid var(--mc-accent);outline-offset:0;border-color:transparent}
.mc-filters__actions{display:flex;align-items:center;gap:12px}
.woocommerce .mc-filters .mc-btn-filter{min-height:46px;margin:0}
.mc-filters__reset{font-size:.88rem;color:var(--mc-muted);white-space:nowrap}
.mc-empty{padding:16px 18px;background:var(--mc-mist);border-radius:12px}
@media (max-width:999px){
  .mc-filters{grid-template-columns:1fr 1fr}
  .mc-filters__field--search{grid-column:1 / -1}
  .mc-filters__actions{grid-column:1 / -1}
  .woocommerce .mc-filters .mc-btn-filter{flex:1}
}
@media (max-width:560px){
  .mc-filters{grid-template-columns:1fr}
}

/* Nhóm sản phẩm (trang chủ) */
ul.mc-groups{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3, 1fr);gap:20px}
.mc-group{
  display:grid;
  grid-template-columns:120px minmax(0, 1fr);
  gap:18px;
  align-items:center;
  margin:0;
  padding:16px;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:18px;
  transition:box-shadow .3s, transform .3s, border-color .3s;
}
.mc-group:hover{transform:translateY(-4px);border-color:transparent;box-shadow:0 24px 48px -28px rgba(10,70,110,.45)}
.mc-group__media{display:block;border-radius:12px;overflow:hidden;background:var(--mc-mist)}
.mc-group__media img{display:block;width:120px;height:120px;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.mc-group:hover .mc-group__media img{transform:scale(1.06)}
.mc-group__title{margin:0 0 2px;font-family:var(--mc-sans);font-size:1.05rem;font-weight:600;line-height:1.3}
.mc-group__title a{color:var(--mc-ink);text-decoration:none}
.mc-group__title a:hover{color:var(--mc-primary)}
.mc-group__count{margin:0 0 8px;font-size:.82rem;color:var(--mc-muted)}
ul.mc-group__children{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.mc-group__children li{margin:0}
.mc-group__children a{
  display:inline-block;
  padding:3px 10px;
  border-radius:999px;
  background:var(--mc-mist);
  color:var(--mc-primary);
  font-size:.78rem;
  text-decoration:none;
}
.mc-group__children a:hover{background:var(--mc-primary);color:#fff}
@media (max-width:1024px){ul.mc-groups{grid-template-columns:repeat(2, 1fr)}}
@media (max-width:640px){
  ul.mc-groups{grid-template-columns:1fr}
  .mc-group{grid-template-columns:88px minmax(0, 1fr)}
  .mc-group__media img{width:88px;height:88px}
}

/* Thương hiệu: dải logo & thẻ */
ul.mc-brands{list-style:none;padding:0;margin:0}
ul.mc-brands--logos{display:grid;grid-template-columns:repeat(6, 1fr);gap:14px}
.mc-brands--logos li{margin:0}
.mc-brand-logo{
  display:grid;
  place-items:center;
  height:96px;
  padding:14px;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:14px;
  transition:border-color .2s, box-shadow .2s, transform .2s;
}
.mc-brand-logo img{max-height:56px;width:auto;filter:grayscale(1);opacity:.75;transition:filter .3s, opacity .3s}
.mc-brand-logo:hover{border-color:var(--mc-accent);transform:translateY(-3px);box-shadow:0 16px 30px -22px rgba(10,70,110,.5)}
.mc-brand-logo:hover img{filter:none;opacity:1}
ul.mc-brands--grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:22px}
.mc-brand-card{
  display:flex;
  flex-direction:column;
  margin:0;
  padding:22px;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:18px;
  transition:box-shadow .3s, transform .3s;
}
.mc-brand-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px -30px rgba(10,70,110,.45)}
.mc-brand-card__logo{display:grid;place-items:center;height:110px;margin-bottom:14px;background:var(--mc-mist);border-radius:12px}
.mc-brand-card__logo img{max-height:70px;width:auto}
.mc-brand-card__title{margin:0 0 4px;font-family:var(--mc-sans);font-size:1.15rem;font-weight:600}
.mc-brand-card__title a{color:var(--mc-ink);text-decoration:none}
.mc-brand-card__country{margin:0 0 8px;font-size:.84rem;color:var(--mc-accent);font-weight:600}
.mc-brand-card__desc{margin:0 0 16px;color:var(--mc-muted);font-size:.93rem;flex:1}
.mc-brand-card__more{font-weight:600;color:var(--mc-primary);text-decoration:none}
.mc-brand-card__more::after{content:"";display:inline-block;width:7px;height:7px;margin-left:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg) translateY(-2px)}
@media (max-width:1024px){
  ul.mc-brands--logos{grid-template-columns:repeat(3, 1fr)}
  ul.mc-brands--grid{grid-template-columns:repeat(2, 1fr)}
}
@media (max-width:640px){
  ul.mc-brands--logos{grid-template-columns:repeat(2, 1fr)}
  ul.mc-brands--grid{grid-template-columns:1fr}
}

/* Form báo giá: sản phẩm đang hỏi */
.mc-quote-anchor{position:relative;top:-120px}
.mc-form__product{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:18px;
  padding:12px;
  background:var(--mc-mist);
  border:1px solid var(--mc-line);
  border-radius:14px;
}
.mc-form__product img{width:72px;height:72px;border-radius:10px;object-fit:cover}
.mc-form__product div{display:grid;gap:2px;font-size:.9rem;color:var(--mc-muted)}
.mc-form__product strong{color:var(--mc-ink);font-size:1rem}
.mc-form__product-label{font-size:.78rem;font-weight:600;color:var(--mc-primary)}

/* Nút liên hệ nhanh (góc trái dưới) */
.mc-fab{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:55;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.mc-fab__btn{
  position:relative;
  width:52px;
  height:52px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  text-decoration:none;
  box-shadow:0 12px 26px -10px rgba(10,40,70,.55);
  transition:transform .2s;
}
.mc-fab__btn:hover{transform:scale(1.08)}
.mc-fab__btn::before{
  content:"";
  width:24px;
  height:24px;
  background:#fff;
  -webkit-mask:var(--mc-ico) center / contain no-repeat;
          mask:var(--mc-ico) center / contain no-repeat;
}
.mc-fab__label{
  position:absolute;
  left:62px;
  top:50%;
  transform:translate(-6px, -50%);
  padding:6px 12px;
  border-radius:8px;
  background:var(--mc-ink);
  color:#fff;
  font-size:.82rem;
  font-weight:600;
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s, transform .2s;
}
.mc-fab__btn:hover .mc-fab__label,
.mc-fab__btn:focus-visible .mc-fab__label{opacity:1;transform:translate(0, -50%)}
.mc-fab__btn--call{background:#E5484D;--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11.4 11.4 0 0 0 3.6.57 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.25.2 2.45.57 3.57a1 1 0 0 1-.25 1L6.6 10.8z'/%3E%3C/svg%3E")}
.mc-fab__btn--call::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  border:2px solid #E5484D;
  animation:mc-ring 1.8s ease-out infinite;
}
.mc-fab__btn--zalo{background:#0068FF;--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.5 3 2 6.7 2 11.3c0 2.5 1.3 4.7 3.4 6.2L4.6 21l3.9-2.1c1.1.3 2.3.5 3.5.5 5.5 0 10-3.7 10-8.2S17.5 3 12 3zm-4.4 10.6H5.2l2.4-3.4H5.3V9.3h3.6v.8l-2.4 3.4h2.1zm2.3 0h-1V9.3h1zm4.2 0h-1v-.3a1.8 1.8 0 1 1 0-2.8V10h1zm-1.8-.8a1 1 0 1 0 0-1.9 1 1 0 0 0 0 1.9zm6.3-.6a1.8 1.8 0 1 1-1.8-1.8 1.8 1.8 0 0 1 1.8 1.8zm-1.8.9a.9.9 0 1 0-.9-.9.9.9 0 0 0 .9.9z'/%3E%3C/svg%3E")}
.mc-fab__btn--msg{background:linear-gradient(135deg, #00B2FF, #7A5CFF);--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.4 2 2 6.1 2 11.6c0 2.9 1.2 5.4 3.2 7.1v3.3l3-1.7c1.2.3 2.5.5 3.8.5 5.6 0 10-4.1 10-9.6S17.6 2 12 2zm1 12.9-2.6-2.7-5 2.7 5.5-5.8 2.6 2.7 5-2.7-5.5 5.8z'/%3E%3C/svg%3E")}
.mc-fab__btn--quote{background:var(--mc-primary);--mc-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h9l5 5v13a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2zm8 1.5V8h4.5L14 3.5zM8 12v2h8v-2H8zm0 4v2h5v-2H8z'/%3E%3C/svg%3E")}
@keyframes mc-ring{from{transform:scale(1);opacity:.8}to{transform:scale(1.6);opacity:0}}
@media (max-width:640px){
  .mc-fab{left:12px;bottom:12px;gap:8px}
  .mc-fab__btn{width:46px;height:46px}
  .mc-fab__label{display:none}
}

/* Dòng thời gian (Giới thiệu) */
ol.mc-timeline{list-style:none;margin:0;padding:0;position:relative}
ol.mc-timeline::before{content:"";position:absolute;left:11px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--mc-accent), var(--mc-line))}
.mc-timeline li{position:relative;margin:0;padding:0 0 26px 44px;color:var(--mc-muted)}
.mc-timeline li::before{content:"";position:absolute;left:3px;top:4px;width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--mc-accent)}
.mc-timeline strong{display:block;font-family:var(--mc-serif);font-size:1.4rem;font-weight:600;color:var(--mc-primary);line-height:1.2}
.mc-timeline em{display:block;font-style:normal;font-weight:600;color:var(--mc-ink);margin:2px 0 4px}

/* Thẻ nội dung (tầm nhìn, sứ mệnh, chứng nhận, thế mạnh) */
.wp-block-columns.mc-cards{gap:20px;margin-bottom:0}
.mc-card{
  height:100%;
  margin:0;
  padding:26px;
  background:#fff;
  border:1px solid var(--mc-line);
  border-radius:18px;
  transition:transform .3s, box-shadow .3s;
}
.mc-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px -30px rgba(10,70,110,.45)}
.mc-card > *{margin:0}
.mc-card > * + *{margin-top:10px}
.mc-card h3{font-family:var(--mc-sans);font-size:1.12rem;font-weight:600}
.mc-card p{color:var(--mc-muted);font-size:.95rem}
.mc-card__icon{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg, var(--mc-primary), var(--mc-accent));
  color:#fff;
  font-weight:700;
  font-size:1.1rem;
}
.mc-section--tint .mc-card{border-color:transparent}

/* Đội ngũ */
.wp-block-columns.mc-team{gap:20px;margin-bottom:0}
.mc-person{text-align:center}
.mc-person .wp-block-image{margin:0 auto 12px;max-width:180px;border-radius:50%;overflow:hidden}
.mc-person .wp-block-image img{display:block;width:100%;height:auto;border-radius:50%}
.mc-person h3{margin:0;font-family:var(--mc-sans);font-size:1.05rem;font-weight:600}
.mc-person p{margin:4px 0 0;color:var(--mc-muted);font-size:.9rem}

/* Thư viện ảnh showroom */
.mc-gallery.wp-block-gallery{gap:14px}
.mc-gallery .wp-block-image img{border-radius:14px}
.mc-map{border-radius:16px;overflow:hidden;border:1px solid var(--mc-line);margin-top:18px}
.mc-map iframe{display:block;width:100%;height:280px;border:0}
.woocommerce ul.products li.product .mc-btn-quote,
.woocommerce .mc-quote-box .mc-btn-quote{color:#fff}
.mc-card p.mc-card__icon{color:#fff;font-size:1.35rem;line-height:1;margin:0}

/* FAQ gọn hơn: Blocksy thêm padding/margin cho thẻ details trong nội dung */
.mc-faq .wp-block-details,
.mc-faq details{padding:0 !important;margin:0 !important;border-radius:0;background:none}
.mc-faq summary{padding:14px 36px 14px 0 !important;margin:0 !important;line-height:1.45}
.mc-faq details > :not(summary){margin:0 0 14px !important}
.mc-faq details[open] summary{padding-bottom:8px !important}
