/* ============ HUA ZHUANG VIETNAM — custom styles ============ */
:root{
  --hz-blue:#004ea2;
  --hz-blue-dark:#003a7a;
  --hz-orange:#ee7700;
  --hz-orange-dark:#d96a00;
  --hz-gray:#f5f7fa;
  --hz-text:#2b2f36;
  --hz-muted:#5c6672;
}

/* ---- Astra header/footer overrides ---- */
.ast-primary-header-bar{ background:#ffffff; border-bottom:3px solid var(--hz-blue); }
/* header logo (globe icon from en site) */
.site-header .custom-logo-link img.custom-logo{ max-height:60px; width:auto; }
/* EN-style logo (globe icon + two-line wordmark, mirrors en site) */
.hz-en-logo-link{ display:inline-flex; align-items:center; }
.hz-en-logo-img{ height:54px !important; width:auto !important; max-height:none !important; }
.hz-en-word{ margin-left:10px; line-height:1.2; text-align:left; }
.hz-en-word b{ display:block; font-size:20px; color:#0E77EA; font-weight:700; letter-spacing:.3px; font-family:Arial; }
.hz-en-word span{ display:block; font-size:11px; color:#777; letter-spacing:.2px; font-family:Arial; white-space:nowrap; }
.ast-site-title-wrap{ display:none !important; }
@media (max-width:991px){
  .hz-en-logo-img{ height:30px !important; }
  .hz-en-word{ margin-left:6px; }
  .hz-en-word b{ font-size:13px; line-height:1.2; }
  .hz-en-word span{ font-size:8.5px; letter-spacing:0; }
}
.site-header .site-title a{ font-size:22px; line-height:1.2; white-space:normal; }
.main-header-menu .menu-link{ color:#22303f !important; font-weight:600; }
.main-header-menu .menu-link:hover,
.main-header-menu .current-menu-item > .menu-link{ color:var(--hz-orange) !important; }
.ast-site-title-wrap .site-title a{ color:var(--hz-blue) !important; font-weight:800; }
.ast-site-title-wrap .site-description{ color:var(--hz-muted); }
#ast-footer{ background:#0a2a4e; color:#c8d6e8; }
#ast-footer a{ color:#ffffff; }
#ast-footer .widget-title{ color:#ffffff; }

/* ---- general layout ---- */
.hz-container{ max-width:1200px; margin:0 auto; padding:0 24px; }
.hz-section{ padding:72px 0; }
.hz-bg-gray{ background:var(--hz-gray); }
.hz-bg-blue{ background:var(--hz-blue); color:#ffffff; }
.hz-center{ text-align:center; }
.hz-section h2{ font-size:32px; font-weight:800; color:#123050; margin:0 0 12px; }
.hz-bg-blue h2{ color:#ffffff; }
.hz-section .hz-sub{ color:var(--hz-muted); font-size:16px; margin:0 0 36px; }
.hz-bg-blue .hz-sub{ color:#cfe0f5; }

/* ---- buttons ---- */
.hz-btn{ display:inline-block; padding:13px 30px; font-size:15px; font-weight:700;
  border-radius:4px; text-decoration:none; transition:.2s; border:2px solid transparent; }
.hz-btn-orange{ background:var(--hz-orange); color:#fff !important; }
.hz-btn-orange:hover{ background:var(--hz-orange-dark); color:#fff !important; }
.hz-btn-blue{ background:var(--hz-blue); color:#fff !important; }
.hz-btn-blue:hover{ background:var(--hz-blue-dark); color:#fff !important; }
.hz-btn-outline{ border-color:#ffffff; color:#fff !important; }
.hz-btn-outline:hover{ background:#ffffff; color:var(--hz-blue) !important; }
.hz-btn-outline-blue{ border-color:var(--hz-blue); color:var(--hz-blue) !important; }
.hz-btn-outline-blue:hover{ background:var(--hz-blue); color:#fff !important; }

/* ---- hero ---- */
.hz-hero{ position:relative; background-size:cover; background-position:center; min-height:560px;
  display:flex; align-items:center; }
.hz-hero::before{ content:""; position:absolute; inset:0;
  background:linear-gradient(100deg, rgba(0,45,95,.92) 0%, rgba(0,60,120,.72) 45%, rgba(0,60,120,.25) 100%); }
.hz-hero-inner{ position:relative; max-width:1200px; margin:0 auto; padding:0 24px; width:100%; color:#fff; }
.hz-hero-badge{ display:inline-block; background:var(--hz-orange); color:#fff; font-size:13px; font-weight:700;
  padding:7px 16px; border-radius:3px; letter-spacing:.4px; margin-bottom:20px; }
.hz-hero h1{ font-size:44px; line-height:1.2; font-weight:800; max-width:640px; margin:0 0 16px; }
.hz-hero p{ font-size:18px; color:#e2ecf9; max-width:560px; margin:0 0 30px; }
.hz-hero-btns{ display:flex; gap:14px; flex-wrap:wrap; }

/* ---- stats ---- */
.hz-stats{ background:var(--hz-blue); color:#fff; padding:40px 0; }
.hz-stats-inner{ max-width:1200px; margin:0 auto; padding:0 24px; display:grid;
  grid-template-columns:repeat(4,1fr); gap:24px; }
.hz-stat{ text-align:center; border-right:1px solid rgba(255,255,255,.18); }
.hz-stat:last-child{ border-right:none; }
.hz-stat-num{ font-size:34px; font-weight:800; color:#ffb25e; }
.hz-stat-label{ font-size:14px; color:#d6e4f6; margin-top:4px; }
@media (max-width:768px){ .hz-stats-inner{ grid-template-columns:repeat(2,1fr); } .hz-stat{border-right:none;} }

/* ---- two col ---- */
.hz-two-col{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.hz-text h2{ margin-bottom:16px; }
.hz-text p{ color:var(--hz-muted); line-height:1.9; margin:0 0 16px; }
.hz-img img{ width:100%; border-radius:6px; box-shadow:0 10px 30px rgba(0,0,0,.12); }
.hz-img.small img{ max-width:420px; }
@media (max-width:860px){ .hz-two-col{ grid-template-columns:1fr; } }

/* ---- category tiles ---- */
.hz-cat-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:20px; }
.hz-cat{ display:block; background:#fff; border-radius:6px; overflow:hidden; text-decoration:none !important;
  box-shadow:0 4px 16px rgba(0,0,0,.08); transition:.25s; border-top:4px solid var(--hz-blue); }
.hz-cat:hover{ transform:translateY(-4px); box-shadow:0 12px 28px rgba(0,0,0,.14); }
.hz-cat img{ width:100%; height:150px; object-fit:cover; }
.hz-cat-title{ display:block; padding:14px 14px 18px; }
.hz-cat-title b{ color:#123050; font-size:16px; display:block; margin-bottom:4px; }
.hz-cat-title span{ color:var(--hz-muted); font-size:13px; }
@media (max-width:1024px){ .hz-cat-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:640px){ .hz-cat-grid{ grid-template-columns:repeat(2,1fr); } }

/* ---- gallery ---- */
.hz-gallery{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.hz-gallery.three{ grid-template-columns:repeat(3,1fr); }
.hz-gallery.five{ grid-template-columns:repeat(5,1fr); }
.hz-gallery-item{ position:relative; border-radius:5px; overflow:hidden; background:#fff;
  box-shadow:0 3px 12px rgba(0,0,0,.08); }
.hz-gallery-item img{ width:100%; height:180px; object-fit:cover; display:block; transition:.3s; }
.hz-gallery-item:hover img{ transform:scale(1.05); }
.hz-gallery-item figcaption{ position:absolute; left:0; right:0; bottom:0; padding:18px 10px 8px;
  background:linear-gradient(transparent, rgba(0,0,0,.72)); color:#fff; font-size:12px; }
@media (max-width:900px){ .hz-gallery{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:600px){ .hz-gallery{ grid-template-columns:repeat(2,1fr); } }

/* ---- badges / certs ---- */
.hz-badge-row{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; margin-top:8px; }
.hz-badge{ background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.35); color:#fff;
  padding:10px 22px; border-radius:30px; font-weight:700; font-size:15px; }
.hz-cert-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.hz-cert{ background:#fff; border-radius:6px; padding:22px 16px; text-align:center;
  box-shadow:0 4px 16px rgba(0,0,0,.08); border-top:4px solid var(--hz-orange); }
.hz-cert b{ display:block; color:#123050; font-size:17px; margin-bottom:6px; }
.hz-cert span{ color:var(--hz-muted); font-size:13px; display:block; margin-bottom:12px; }
.hz-cert a{ color:var(--hz-blue); font-weight:700; font-size:14px; text-decoration:none; }
.hz-cert a:hover{ color:var(--hz-orange); }
@media (max-width:800px){ .hz-cert-grid{ grid-template-columns:repeat(2,1fr); } }

/* ---- CTA ---- */
.hz-cta{ background:linear-gradient(120deg, var(--hz-orange), #ff9330); color:#fff; padding:64px 0; text-align:center; }
.hz-cta h2{ color:#fff; font-size:32px; margin:0 0 10px; }
.hz-cta p{ font-size:17px; margin:0 0 26px; color:#fff5ea; }
.hz-cta .hz-btn-blue{ background:#fff; color:var(--hz-orange) !important; }
.hz-cta .hz-btn-blue:hover{ background:#f0f0f0; }

/* ---- contact page ---- */
.hz-contact-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.hz-contact-card{ background:#fff; border-radius:8px; padding:30px 26px; box-shadow:0 6px 22px rgba(0,0,0,.08);
  border-top:4px solid var(--hz-blue); text-align:center; }
.hz-contact-icon{ width:52px; height:52px; margin:0 auto 16px; background:var(--hz-gray); border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:22px; }
.hz-contact-card b{ display:block; color:var(--hz-blue); font-size:13px; letter-spacing:.4px; text-transform:uppercase; margin-bottom:8px; }
.hz-contact-card p{ color:#2b2f36; font-size:16px; line-height:1.6; margin:0; font-weight:600; }
.hz-map{ border-radius:8px; overflow:hidden; box-shadow:0 6px 22px rgba(0,0,0,.1); }
.hz-map iframe{ display:block; width:100%; height:100%; min-height:420px; border:0; }
@media (max-width:900px){ .hz-contact-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .hz-contact-grid{ grid-template-columns:1fr; } .hz-map iframe{ min-height:320px; } }

/* ---- page title area (Astra) ---- */
.page-title .entry-title{ color:#123050; font-weight:800; }

/* ---- WooCommerce catalog tweaks ---- */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product a.button.add_to_cart_button,
.woocommerce ul.products li.product a.added_to_cart,
.woocommerce div.product form.cart{ display:none !important; }
.woocommerce ul.products li.product a.woocommerce-loop-product__link .woocommerce-loop-product__title{
  color:#123050; font-weight:700; }
.woocommerce ul.products li.product{ text-align:center; }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering{ display:none !important; }
.woocommerce span.onsale{ background:var(--hz-orange) !important; }

/* ---- Astra full-width pages (no sidebar, no title bar) ---- */
.page .ast-container{ max-width:100% !important; padding:0 !important; }
.page #primary{ width:100% !important; float:none; }
.page #secondary{ display:none !important; }
.page .entry-header{ display:none !important; }
.page .entry-content{ margin:0; }
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post{ padding:0; background:transparent; }
body.ast-plain-container #page > .ast-container > .ast-row > .ast-article-single{ padding:0; }

/* ---- lightbox ---- */
.hz-lightbox{ position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center; }
.hz-lightbox-bg{ position:absolute; inset:0; background:rgba(8,14,28,.9); }
.hz-lightbox-img{ position:relative; max-width:94vw; max-height:92vh; object-fit:contain;
  border-radius:4px; box-shadow:0 24px 70px rgba(0,0,0,.55); }
.hz-lightbox-close{ position:absolute; top:16px; right:20px; z-index:2; width:44px; height:44px;
  border:none; border-radius:50%; background:rgba(255,255,255,.16); color:#fff; font-size:28px;
  line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.hz-lightbox-close:hover{ background:rgba(255,255,255,.32); }
body.hz-lightbox-open{ overflow:hidden; }
.hz-lightbox{ animation:hz-lb-in .18s ease; }
.hz-lightbox.hz-lightbox-out{ opacity:0; transition:opacity .18s ease; }
@keyframes hz-lb-in{ from{ opacity:0; } to{ opacity:1; } }

/* ---- certificate thumbnail gallery ---- */
.hz-cert-gallery{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.hz-cert-thumb{ background:#fff; border-radius:6px; overflow:hidden; text-align:center;
  box-shadow:0 3px 12px rgba(0,0,0,.08); border-top:3px solid var(--hz-orange); }
.hz-cert-thumb img{ width:100%; height:190px; object-fit:contain; display:block;
  background:#f8fafc; padding:8px; cursor:zoom-in; }
.hz-cert-thumb figcaption{ padding:8px 6px; font-size:12px; font-weight:600; color:#123050;
  border-top:1px solid #eef1f6; }
@media (max-width:900px){ .hz-cert-gallery{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:600px){ .hz-cert-gallery{ grid-template-columns:repeat(2,1fr); } .hz-cert-thumb img{ height:150px; } }

/* ---- certificate wall (images) ---- */
.hz-cert-wall{ max-width:1000px; margin:0 auto; display:flex; flex-direction:column; gap:32px; }
.hz-cert-block{ background:#fff; border-radius:8px; box-shadow:0 6px 22px rgba(0,0,0,.08);
  border-top:4px solid var(--hz-orange); overflow:hidden; }
.hz-cert-block-head{ display:flex; justify-content:space-between; align-items:center; gap:16px;
  padding:18px 26px; background:#f8fafc; border-bottom:1px solid #e6ebf2; }
.hz-cert-block-titles b{ display:block; color:#123050; font-size:20px; }
.hz-cert-block-titles span{ color:var(--hz-muted); font-size:13px; }
.hz-btn-sm{ padding:9px 18px; font-size:13px; }
.hz-cert-block-pages{ padding:20px 26px 26px; display:flex; flex-direction:column; gap:18px; }
.hz-cert-page{ margin:0; text-align:center; }
.hz-cert-page-label{ display:block; font-size:12px; color:var(--hz-muted); margin-bottom:8px; letter-spacing:.3px; }
.hz-cert-page img{ max-width:100%; height:auto; max-height:1000px; border:1px solid #dde3ec;
  border-radius:4px; box-shadow:0 4px 14px rgba(0,0,0,.10); }
.hz-cert-page img:hover{ box-shadow:0 8px 24px rgba(0,0,0,.16); }
@media (max-width:640px){
  .hz-cert-block-head{ flex-direction:column; align-items:flex-start; }
  .hz-cert-block-pages{ padding:14px 14px 18px; }
}

/* ---- responsive ---- */
@media (max-width:768px){
  .hz-hero{ min-height:420px; }
  .hz-hero h1{ font-size:30px; }
  .hz-section{ padding:48px 0; }
}

/* ---- language switcher (EN <-> VN) ---- */
/* inline layout (NOT flex) so children keep inline-block flow; fixed 80px height matches Astra nav items */
.hz-lang-switch{ display:inline-block !important; flex:0 0 auto !important; white-space:nowrap !important;
  height:80px !important; line-height:80px !important; padding-left:14px; margin-left:14px;
  border-left:1px solid #e3e9f1; vertical-align:middle; }
.hz-lang-ico{ display:inline-block !important; width:16px !important; height:16px !important;
  margin-right:2px !important; vertical-align:middle;
  background:url("data:image/png;base64,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") no-repeat center/contain; }
.hz-lang-switch .menu-link{ display:inline-block !important; height:auto !important; line-height:80px !important;
  padding:0 !important; font-weight:700; font-size:13px; letter-spacing:.3px; vertical-align:middle; }
.hz-lang-en{ color:#22303f !important; }
.hz-lang-en:hover{ color:var(--hz-orange) !important; }
.hz-lang-current{ color:var(--hz-orange) !important; cursor:default; }
.hz-lang-sep{ display:inline-block !important; line-height:80px !important; padding:0 !important;
  color:#b8c2cf; font-size:11px !important; font-weight:600; vertical-align:middle; }
/* make room for the switcher at far-right: tighten desktop menu-link padding */
.ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link{ padding-left:.72em; padding-right:.72em; }
@media (max-width:1024px){ .hz-lang-switch{ margin-left:8px; padding-left:8px; } }
@media (max-width:544px){ .hz-lang-switch{ height:auto !important; line-height:1.6 !important; padding:12px 0; margin:0 20px; border-left:0; }
  .hz-lang-ico{ display:none !important; } }

/* ---- nav position mirrors EN site (desktop): logo pinned at left~11vw, nav right-aligned ending at right~12vw;
        no justify-between, no centering — natural gap between logo and menu, exactly like en.gdhuazhuang.online ---- */
@media (min-width:922px){
  .ast-primary-header-bar{ position:relative !important; }
  .ast-builder-grid-row{ display:block !important; }
  .site-header-primary-section-left{ position:absolute !important; left:11vw !important; top:50% !important;
    transform:translateY(-50%) !important; width:auto !important; }
  .site-header-primary-section-right{ position:absolute !important; right:12vw !important; top:50% !important;
    transform:translateY(-50%) !important; width:auto !important; display:block !important; }
  .ast-builder-menu-1 .main-header-menu{ position:static !important; justify-content:flex-end !important;
    margin:0 !important; }
  .hz-lang-switch{ position:static !important; top:auto !important; right:auto !important; transform:none !important;
    height:80px !important; line-height:80px !important; margin-left:2.2vw !important; padding-left:14px !important;
    border-left:1px solid #e3e9f1; }
}
/* narrow desktop: collapse logo to globe-only, tighten nav-item padding + switcher gap so nothing overlaps */
@media (min-width:922px) and (max-width:1100px){
  .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link{ padding-left:.42em !important; padding-right:.42em !important; }
  .hz-en-word{ display:none !important; }
  .hz-en-logo-img{ height:44px !important; }
  .hz-lang-switch{ margin-left:1.5vw !important; padding-left:10px !important; }
}
/* ---- home page certificate thumbnails (blue section) ---- */
.hz-home-cert-gallery{ display:grid; grid-template-columns:repeat(7,1fr); gap:14px; margin-top:26px; }
.hz-home-cert{ background:#fff; border-radius:6px; padding:10px 8px 0; display:flex; flex-direction:column;
  justify-content:flex-end; transition:transform .2s, box-shadow .2s; }
.hz-home-cert:hover{ transform:translateY(-3px); box-shadow:0 10px 24px rgba(0,0,0,.22); }
.hz-home-cert img{ width:100%; height:120px; object-fit:contain; display:block; }
.hz-home-cert span{ display:block; padding:9px 4px; font-size:12px; font-weight:700; color:#123050; }
@media (max-width:1024px){ .hz-home-cert-gallery{ grid-template-columns:repeat(4,1fr); } }
@media (max-width:600px){ .hz-home-cert-gallery{ grid-template-columns:repeat(2,1fr); } .hz-home-cert img{ height:150px; } }

/* ---- static contact map image (replaces Google Maps iframe) ---- */
.hz-map-img{ display:block; width:100%; height:auto; border:0; }
