/* =========================================================
   VLX-UI · Hiệu ứng & micro-interaction dùng chung (2026)
   Giữ nguyên hệ màu navy/gold/coral. Tôn trọng prefers-reduced-motion.
   ========================================================= */
a,button,.card,.btn-book,.btn-primary,.btn-outline,.btn-zalo,.btn-zalo-sm,.hotline,.lead-call,.emini,.exp-card,.logo-ph,.mcta,.csf-card,.article-card,.tcard,.cat-card{
  transition:transform .25s cubic-bezier(.2,.7,.3,1),box-shadow .25s ease,background-color .2s ease,color .2s ease,border-color .2s ease;
}
.btn-book:hover,.btn-primary:hover,.mcta:hover,.lead-call:hover{transform:translateY(-2px)}
.btn-book:active,.btn-primary:active,.btn-zalo:active,.btn-zalo-sm:active,.mcta:active,.lead-call:active,.hotline:active{transform:translateY(0) scale(.97)}
.card:hover,.csf-card:hover,.article-card:hover,.tcard:hover{transform:translateY(-5px);box-shadow:0 18px 40px -14px rgba(10,42,74,.30)}
.card .card-img,.card .cimg,.csf-img,.article-card .art-img{transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.card:hover .card-img,.card:hover .cimg,.csf-card:hover .csf-img,.article-card:hover .art-img{transform:scale(1.06)}
.logo-ph:hover{transform:translateY(-3px)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--gold,#C9A84C);outline-offset:3px;border-radius:8px
}
::selection{background:var(--gold,#C9A84C);color:#0A2A4A}
@media(min-width:1024px){
  ::-webkit-scrollbar{width:10px;height:10px}
  ::-webkit-scrollbar-thumb{background:var(--gold,#C9A84C);border-radius:8px;border:2px solid #EFF8F7}
  ::-webkit-scrollbar-track{background:transparent}
}
@keyframes vlxFadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
img.vlx-fade{animation:vlxFadeIn .5s ease both}
@media(prefers-reduced-motion:reduce){
  a,button,.card,.btn-book,.btn-primary,.btn-zalo,.btn-zalo-sm,.hotline,.lead-call,.emini,.exp-card,.logo-ph,.mcta,.csf-card,.article-card,.tcard,
  .card .card-img,.card .cimg,.csf-img,.art-img{transition:none!important}
  .card:hover,.btn-book:hover,.btn-primary:hover,.csf-card:hover,.article-card:hover,.tcard:hover,
  .card:hover .card-img,.card:hover .cimg,.logo-ph:hover{transform:none!important}
  img.vlx-fade{animation:none!important}
}

/* CLS: ảnh không tràn khung (thẻ dùng nền cố định nên không giật layout) */
img{max-width:100%}

/* Nhãn nổi bật + lắc nhẹ định kỳ (hút mắt, không gây rối) */
.badge{box-shadow:0 4px 13px -2px rgba(10,42,74,.42);transform-origin:center;will-change:transform}
/* Lắc/nghiêng nhẹ LIÊN TỤC -> nhãn nổi bật, hút mắt (3D) */
@keyframes vlxBadgePop{0%,100%{transform:rotate(-2.5deg) scale(1)}50%{transform:rotate(2.5deg) scale(1.07)}}
.badge,.gbadge,.b-hot,.b-gold,.b-new,.b-navy,.b-teal,.b-green,.b-purple,.csf-disc,.art-cat{animation:vlxBadgePop 2.3s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.badge,.gbadge,.b-hot,.b-gold,.b-new,.b-navy,.b-teal,.b-green,.b-purple,.csf-disc,.art-cat{animation:none!important}}

/* Nút 🔍 trong header ghim + ô tìm thả xuống (dùng chung mọi trang) */
.hd-search{display:none;flex:none;align-items:center;justify-content:center;background:none;border:none;padding:8px;cursor:pointer}
.hd-search svg{width:23px;height:23px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round}
#vlxHdSearch{position:fixed;left:0;right:0;top:64px;z-index:999;background:transparent;padding:10px 16px;transform:translateY(-130%);transition:transform .26s ease;pointer-events:none}
#vlxHdSearch.open{transform:translateY(0)}
#vlxHdSearch .vhs-in{display:flex;align-items:center;gap:8px;max-width:var(--container);margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:11px;padding:8px 12px;box-shadow:0 12px 30px rgba(10,42,74,.22);pointer-events:auto}
#vlxHdSearch svg{width:20px;height:20px;flex:none;fill:none;stroke:#6B7E86;stroke-width:2;stroke-linecap:round}
#vlxHdSearch input{flex:1;min-width:0;border:none;outline:none;font-size:16px;background:none;color:#16323A}
#vlxHdSearch .vhs-x{flex:none;border:none;background:#eef2f4;width:34px;height:34px;border-radius:8px;cursor:pointer;color:#5B7178;font-size:14px}


/* Lịch sử tìm kiếm trong ô 🔍 */
.vhs-hist{pointer-events:auto;max-width:var(--container);margin:8px auto 0;background:rgba(10,42,74,.93);border-radius:12px;padding:11px 13px;box-shadow:0 10px 24px rgba(0,0,0,.22)}
.vhs-hist:empty{display:none;padding:0}
.vhs-hist .vhs-hh{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#fff;margin-bottom:8px}
.vhs-hist .vhs-clr{background:none;border:none;color:#ffd9c7;font-size:12px;cursor:pointer;text-decoration:underline}
.vhs-hist .vhs-chips{display:flex;flex-wrap:wrap;gap:7px}
.vhs-hist .vhs-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#16323A;border-radius:999px;padding:6px 11px;font-size:13px;cursor:pointer}
.vhs-hist .vhs-cx{font-style:normal;font-size:11px;color:#9aa6ad;cursor:pointer}

/* ===== CHÂN TRANG MỚI (VULUXURY) — dùng chung mọi trang du thuyền ===== */
.vf{background:var(--navy);color:#E4EFED;font-family:var(--body);line-height:1.6}
.vf a{color:#BFD6D4;text-decoration:none;transition:.15s}
.vf a:hover{color:var(--gold)}
.vf-in{max-width:var(--container);margin:0 auto;padding:0 24px}
.vf-goldline{height:2px;background:linear-gradient(90deg,transparent 1%,rgba(201,168,76,.35) 12%,#C9A84C 38%,#C9A84C 62%,rgba(201,168,76,.35) 88%,transparent 99%)}
.vf-main{background:linear-gradient(rgba(14,90,96,.72),rgba(14,90,96,.86)),url('uploads/blog/so-sanh-grand-pioneers-i-va-ii/grand-pioneers-so-sanh-2-tau-hoang-hon.webp') center 38%/cover no-repeat;background-color:#0E5A60}
.vf-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.35fr;gap:38px;padding:44px 24px 30px}
.vf-brand{font-family:var(--display);font-size:30px;font-weight:600;letter-spacing:1px;color:#F0F6F5}
.vf-logo{width:210px;max-width:100%;height:auto;display:block;margin-bottom:14px}
.vf-brand em{color:var(--gold);font-style:normal}
.vf-slogan{font-style:italic;color:#82A9A7;font-size:13px;letter-spacing:1px;margin:2px 0 16px}
.vf-co{font-size:16px;font-weight:600;color:#fff;margin:0 0 3px}
.vf-gp{font-size:13px;color:var(--gold);margin:0 0 14px}
.vf-biz{list-style:none;margin:0 0 16px;padding:0}
.vf-biz li{display:flex;gap:10px;margin:10px 0;font-size:14px;color:#C6DEDC}
.vf-biz i{color:var(--gold);font-size:17px;margin-top:2px}
.vf-biz a[href^="tel"]{color:#fff;font-weight:600}
.vf-soc{display:flex;gap:10px}
.vf-soc a{width:38px;height:38px;border:1px solid rgba(201,168,76,.4);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--gold);font-size:18px}
.vf-soc a:hover{background:var(--gold);color:#0B3A3F}
.vf-col h4{font-size:12px;letter-spacing:1.8px;text-transform:uppercase;color:var(--gold);font-weight:600;margin:4px 0 16px}
.vf-col ul{list-style:none;margin:0;padding:0}
.vf-col li{margin:12px 0;font-size:14.5px}
.vf-dir{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--gold);font-weight:600}
.vf-eco{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;max-width:var(--container);margin:0 auto;padding:14px 24px;border-top:1px solid rgba(255,255,255,.08);font-size:13.5px;color:#B4CBC9}
.vf-eco b{color:var(--gold);font-weight:600}
.vf-trust{display:flex;flex-wrap:wrap;gap:12px 34px;max-width:var(--container);margin:0 auto;padding:6px 24px 14px;font-size:13px;color:#BAD2D0}
.vf-trust i{color:var(--gold);vertical-align:-2px;margin-right:6px}
.vf-legal{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;justify-content:space-between;max-width:var(--container);margin:0 auto;padding:16px 24px;border-top:1px solid rgba(255,255,255,.07);font-size:12.5px;color:#7FA09E}
.vf-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(201,168,76,.4);border-radius:8px;padding:5px 10px;color:var(--gold)}
.vf-moit{display:inline-flex;align-items:center;gap:10px;margin-top:18px;padding:10px 15px;border:1px solid rgba(201,168,76,.5);border-radius:10px;background:rgba(201,168,76,.08);color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.5px;line-height:1.15;text-transform:uppercase}
.vf-moit i{font-size:28px}
@media(max-width:860px){.vf-grid{grid-template-columns:1fr 1fr;gap:26px;padding:32px 18px}.vf-in,.vf-eco,.vf-trust,.vf-legal{padding-left:18px;padding-right:18px}}
@media(max-width:520px){.vf-grid{grid-template-columns:1fr}}

/* ===== HEADER ĐẦY ĐỦ cho trang tiện ích/pháp lý (dùng chung) ===== */
.uhd{background:var(--navy,#0E5A60);position:sticky;top:0;z-index:200;box-shadow:0 2px 10px rgba(10,42,74,.12)}
.uhd-in{max-width:var(--container,1280px);margin:0 auto;padding:0 24px;height:62px;display:flex;align-items:center;gap:18px}
.uhd-brand img{height:34px;display:block}
.uhd-nav{display:flex;gap:20px;flex:1;margin-left:6px}
.uhd-nav a{color:#DCE8E7;text-decoration:none;font-size:14px;font-weight:500;white-space:nowrap}
.uhd-nav a:hover{color:var(--gold,#C9A84C)}
.uhd-cta{display:flex;gap:10px;align-items:center}
.uhd-tel{color:#fff;font-weight:600;font-size:14px;text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.uhd-tel:hover{color:var(--gold,#C9A84C)}
.uhd-zalo{background:var(--zalo,#06C755);color:#fff;padding:8px 14px;border-radius:9px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.uhd-burger{display:none;background:none;border:0;color:#fff;font-size:24px;cursor:pointer;line-height:1}
.uhd-mob{display:none;flex-direction:column;padding:6px 24px 12px;border-top:1px solid rgba(255,255,255,.1)}
.uhd-mob a{color:#DCE8E7;padding:11px 0;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.07);font-size:14.5px}
.uhd-mob.open{display:flex}
@media(max-width:900px){.uhd-nav{display:none}.uhd-tel span{display:none}.uhd-burger{display:block}}
