@charset "UTF-8";

    :root{
      --purple:#720ec2;
      --purple-2:#5f0ea5;
      --purple-3:#8d35dd;
      --yellow:#fff9b2;
      --yellow-2:#ffe66a;
      --text:#1e1230;
      --muted:#6f657a;
      --bg:#ffffff;
      --soft:#faf7ff;
      --red:#e60012;
      --border:#eee8f6;
      --shadow:0 16px 42px rgba(74, 20, 120, .12);
      --radius:24px;
    }
    *{box-sizing:border-box}
    html,body{margin:0;padding:0;font-family:Arial, Helvetica, sans-serif;color:var(--text);background:#fff;line-height:1.45}
    a{text-decoration:none;color:inherit}
    .container{width:1280px;max-width:calc(100% - 48px);margin:0 auto}
    .topbar{height:38px;background:var(--yellow);border-bottom:1px solid #f0e68a;font-size:14px;color:var(--purple)}
    .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
    .top-left{font-weight:400;white-space:nowrap;color:var(--purple)}
    .top-right{display:flex;align-items:center;gap:16px;white-space:nowrap;font-size:13px;color:var(--purple);font-weight:400}
    .top-right span{display:inline-flex;align-items:center;gap:6px}.down-arrow{font-size:24px;line-height:1;margin-left:2px;font-weight:800}
    .social{display:flex;gap:8px}
    .social i{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;color:var(--purple);font-style:normal;font-weight:700;font-size:12px}
    .header{height:86px;background:linear-gradient(90deg,var(--purple),#5d079e 70%,#6f0fc0);color:white;box-shadow:0 8px 28px rgba(80,12,141,.18);position:relative;z-index:5}
    .header .container{height:100%;display:flex;align-items:center;gap:24px}
    .logo-wrap{width:255px;display:flex;align-items:center;flex:0 0 255px}
    .logo-wrap img{width:225px;max-height:62px;object-fit:contain;display:block}
    .nav{display:flex;align-items:center;gap:22px;flex:1;justify-content:center;font-weight:700;font-size:15px}
    .nav a{opacity:.97;white-space:nowrap}
    .nav a:hover{color:var(--yellow)}
    .home-menu{width:28px;height:28px;border-radius:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;margin-right:0;flex:0 0 28px}
    .home-menu svg{width:20px;height:20px;stroke:#fff;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round}
    .zalo-btn{background:linear-gradient(135deg,#ffffff 0%,#fff9b2 100%);color:var(--purple);font-weight:800;padding:11px 28px;border-radius:999px;box-shadow:0 8px 20px rgba(0,0,0,.14);white-space:nowrap;display:inline-flex;align-items:center;gap:9px;font-size:14px;min-width:132px;justify-content:center}
    .zalo-icon{width:22px;height:22px;object-fit:contain;display:inline-block;vertical-align:middle;flex:0 0 22px;margin-right:0}
    .mini-solid .zalo-icon{width:18px;height:18px;flex-basis:18px;margin-right:0}
    .section{padding:56px 0}
    .section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px;gap:20px}
    .kicker{font-weight:800;color:var(--purple);text-transform:uppercase;font-size:13px;letter-spacing:.8px;margin-bottom:6px}
    h1,h2,h3,p{margin-top:0}
    h2{font-size:28px;line-height:1.18;margin-bottom:8px;letter-spacing:-.3px}.tour-section-title{font-size:30px;color:var(--purple);margin-bottom:24px}
    .section-head p{color:var(--muted);font-size:16px;margin:0;max-width:660px}
    .view-all{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(114,14,194,.25);color:var(--purple);font-weight:800;border-radius:999px;padding:11px 18px;background:#fff;white-space:nowrap}

    /* Hero */
    .hero{position:relative;min-height:430px;overflow:hidden;background:#e9f8ff url("../images/hero-havi-beach.png") center/cover no-repeat}
    .hero:before{content:"";position:absolute;inset:0;background:transparent;z-index:0}
    .hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:86px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff);z-index:1}
    .beach-art{display:none}
    .sun{display:none;position:absolute;right:90px;top:58px;width:104px;height:104px;border-radius:50%;background:linear-gradient(135deg,#fff7aa,#ffdc55);box-shadow:0 0 60px rgba(255,220,85,.65)}
    .island{display:none;position:absolute;right:0;bottom:150px;width:58%;height:245px;background:linear-gradient(180deg,#72bf74,#2c8f58);clip-path:polygon(7% 70%,18% 45%,32% 58%,45% 28%,58% 54%,72% 38%,88% 64%,100% 48%,100% 100%,0 100%);opacity:.9;filter:saturate(1.1)}
    .palm{display:none;position:absolute;right:45px;top:44px;width:180px;height:330px;border-radius:80px;transform:rotate(15deg);border-left:18px solid #8c5c27}
    .palm:before{content:"";position:absolute;right:-80px;top:-10px;width:230px;height:150px;background:radial-gradient(ellipse at bottom,#2b9a54 0 38%,transparent 39%);clip-path:polygon(50% 100%,0 0,30% 18%,48% 0,66% 17%,100% 0);transform:rotate(-25deg)}
    .plane{display:none;position:absolute;left:45%;top:80px;font-size:34px;opacity:.75;transform:rotate(-12deg)}
    .boat{display:none;position:absolute;right:360px;bottom:190px;font-size:34px;opacity:.8}
    .hero .container{position:relative;z-index:2;min-height:430px;padding-top:0}
    .hero-copy{display:none}
    .hero-copy h1{font-size:66px;line-height:.95;margin-bottom:8px;color:var(--purple);letter-spacing:-1.5px}
    .hero-copy .slogan{font-size:34px;font-weight:700;color:#6c18b6;margin-bottom:22px;font-style:italic}
    .hero-copy p{font-size:18px;max-width:610px;color:#2b2040;margin-bottom:26px}
    .hero-actions{display:flex;gap:14px;align-items:center}
    .btn{height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:0 22px;font-weight:800;font-size:15px;border:1px solid transparent;white-space:nowrap;font-family:Arial, Helvetica, sans-serif}
    .btn-primary{background:var(--purple);color:#fff;box-shadow:0 12px 28px rgba(114,14,194,.24)}
    .btn-yellow{background:var(--yellow);color:#372748;box-shadow:none;border-color:#f2e98e}
    .hero-mascot{display:none}
    .hero-mascot:before{content:"";position:absolute;width:420px;height:270px;border-radius:50%;background:rgba(255,249,178,.28);box-shadow:0 30px 80px rgba(114,14,194,.12);bottom:18px;right:8px;filter:blur(2px)}
    .hero-mascot img{position:relative;z-index:2;height:455px;width:auto;object-fit:contain;filter:drop-shadow(0 24px 35px rgba(50,20,80,.22))}

    /* Service */
    .service-wrap{margin-top:-62px;position:relative;z-index:6}
    .services{background:#fff;border:1px solid var(--border);border-radius:26px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(6,1fr);overflow:hidden}
    .service-card{padding:28px 18px;text-align:center;min-height:150px;border-right:1px solid var(--border);transition:.2s;background:linear-gradient(180deg,#fff,#fff)}
    .service-card:last-child{border-right:0}
    .service-card:hover{transform:translateY(-3px);background:#fffdf6}
    .icon3d{width:70px;height:70px;margin:0 auto 12px;border-radius:20px;background:linear-gradient(145deg,#fff,#f2e9ff);box-shadow:inset -7px -7px 14px rgba(114,14,194,.08), inset 7px 7px 14px rgba(255,255,255,.9), 0 12px 22px rgba(114,14,194,.13);display:flex;align-items:center;justify-content:center;font-size:34px}
    .service-card h3{font-size:16px;margin-bottom:6px;color:var(--purple)}
    .service-card p{font-size:13px;color:var(--muted);margin:0}

    /* Tour cards */
    .tour-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
    .tour-card{background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:0 10px 25px rgba(42,18,72,.08)}
    .thumb{aspect-ratio:1280/628;background:linear-gradient(135deg,#3bc6e0,#8edc7d);position:relative;overflow:hidden}
    .thumb:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0 52%,rgba(0,0,0,.26) 100%)}
    .thumb:after{content:"";position:absolute;left:0;right:0;bottom:0;height:36%;background:linear-gradient(160deg,transparent 0 45%,rgba(255,255,255,.92) 46%)}
    .thumb .label{position:absolute;left:12px;bottom:10px;color:#fff;font-weight:800;font-size:12px;text-shadow:0 1px 5px rgba(0,0,0,.45)}
    .t1{background:linear-gradient(135deg,#9ed8ff,#f7a24f)}.t2{background:linear-gradient(135deg,#63b9ff,#9f7ef0)}.t3{background:linear-gradient(135deg,#ffb36b,#4b8dd8)}.t4{background:linear-gradient(135deg,#89d2ff,#6e9a46)}.t5{background:linear-gradient(135deg,#58cff0,#cbb17c)}.t6{background:linear-gradient(135deg,#4cb8c4,#3cd3ad)}.t7{background:linear-gradient(135deg,#77a1d3,#e684ae)}.t8{background:linear-gradient(135deg,#74ebd5,#acb6e5)}
    .tour-body{padding:14px 15px 16px}
    .tour-title{font-size:16px;line-height:1.35;font-weight:800;margin-bottom:10px;min-height:43px;color:#20142e}
    .price{color:var(--red);font-size:18px;font-weight:900;margin-bottom:14px}.price .from{font-size:11px;text-transform:none;font-weight:700;margin-right:5px;color:var(--red)}
    .tour-actions{display:flex;gap:8px;align-items:center}
    .mini-btn{height:34px;border-radius:999px;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 12px;flex:1;white-space:nowrap;font-family:Arial, Helvetica, sans-serif}
    .mini-outline{border:1px solid rgba(114,14,194,.35);color:var(--purple);background:#fff}
    .mini-solid{background:var(--purple);color:#fff}

    /* promo */
    .promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
    .promo{border-radius:26px;overflow:hidden;min-height:275px;position:relative;box-shadow:var(--shadow);padding:32px;border:1px solid rgba(114,14,194,.08)}
    .promo h2{font-size:28px;color:#fff;max-width:400px;margin-bottom:14px}
    .promo p,.promo li{font-size:15px;color:rgba(255,255,255,.93)}
    .promo ul{padding-left:18px;margin:0 0 20px}
    .passport{background:linear-gradient(135deg,var(--purple),#8f2ee0)}.passport .btn-yellow{box-shadow:none;border:none}
    .passport img{position:absolute;right:12px;bottom:-16px;height:250px;filter:drop-shadow(0 20px 20px rgba(0,0,0,.18))}
    .visa{background:linear-gradient(135deg,#fff,var(--soft));padding:30px}
    .visa h2{color:var(--purple);margin-bottom:10px}
    .visa p{color:var(--muted)}.visa .visa-actions{margin-top:20px;display:flex;gap:10px;flex-wrap:wrap}.visa .btn{height:44px}
    .visa-flags{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
    .flag{height:54px;border-radius:15px;background:#fff;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:13px;box-shadow:0 8px 18px rgba(74,20,120,.08);border:1px solid var(--border)}
    .flag span{font-size:22px}
    .promo-section{padding-bottom:24px}.info-section{background:#fff;padding:0 0 56px;margin-top:0}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
    .info-card{border-radius:26px;padding:32px;min-height:260px;position:relative;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border)}
    .flight{background:linear-gradient(135deg,#eef8ff,#ccecff)}
    .hotel{background:linear-gradient(135deg,#fff9b2,#fffdf0)}
    .info-card h2{color:var(--purple);max-width:390px}.info-card p{color:var(--muted);max-width:420px}
    .info-tags{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 22px}
    .tag{background:#fff;border:1px solid rgba(114,14,194,.12);border-radius:999px;padding:8px 12px;font-weight:800;font-size:13px;color:#4b3360}
    .big-emoji{position:absolute;right:32px;bottom:26px;font-size:120px;opacity:.24;transform:rotate(-8deg)}

    /* News */
    .news-section{background:#faf7ff;padding-top:64px;padding-bottom:64px}.news-head h2{font-size:32px;color:var(--purple);margin-bottom:0}.news-layout{display:grid;grid-template-columns:1.16fr 1fr;gap:28px}
    .news-main{background:#fff;border-radius:24px;box-shadow:var(--shadow);border:1px solid var(--border);overflow:hidden}
    .news-main .thumb{aspect-ratio:1280/628}.news-main-body{padding:24px 26px 26px}.cat{font-size:12px;color:var(--purple);font-weight:900;text-transform:uppercase;margin-bottom:8px}.news-main h3{font-size:26px;line-height:1.25;margin-bottom:18px;font-family:Arial, Helvetica, sans-serif}.news-main p{display:none}
    .news-side{display:grid;grid-template-columns:1fr 1fr;gap:16px}
    .news-small{display:grid;grid-template-columns:104px 1fr;gap:12px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:10px;box-shadow:0 8px 20px rgba(42,18,72,.06)}
    .news-small .small-thumb{width:104px;aspect-ratio:1280/628;border-radius:12px;background:linear-gradient(135deg,#97d4f0,#ffa87d)}
    .news-small h3{font-size:16px;line-height:1.35;margin:0;font-weight:800;font-family:Arial, Helvetica, sans-serif}

    /* Contacts */
    .contacts-section{background:#fff;padding:64px 0}
    .contacts-title{font-size:30px;color:var(--purple);margin-bottom:30px}.contacts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
    .contact-card{background:#fff;border:1px solid #ece2fb;border-radius:24px;padding:26px 22px;text-align:center;box-shadow:0 14px 30px rgba(114,14,194,.10);min-height:235px;position:relative;overflow:hidden}
    .contact-card:after{content:"";position:absolute;right:-28px;top:-28px;width:100px;height:100px;border-radius:50%;background:#faf0ff}
    .avatar{width:86px;height:86px;border-radius:50%;margin:0 auto 14px;background:linear-gradient(145deg,#fff,#f1e3ff);border:3px solid #fff;box-shadow:0 12px 24px rgba(114,14,194,.16);display:flex;align-items:center;justify-content:center;color:var(--purple);font-size:25px;font-weight:900;position:relative;z-index:2}.contact-icon{display:none}
    .contact-card h3{font-size:18px;color:var(--purple);margin-bottom:14px;position:relative;z-index:2}.contact-card .name{font-weight:900;margin-bottom:6px;position:relative;z-index:2}.contact-card .phone{font-size:17px;font-weight:400;margin-bottom:16px;color:#29153d;position:relative;z-index:2}
    .contact-card .mini-solid{width:128px;margin:0 auto}

    /* About */
    .about{background:var(--yellow);border-radius:30px;border:1px solid #f0e79c;display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:center;padding:40px 50px;position:relative;overflow:hidden;box-shadow:var(--shadow)}
    .about:after{display:none}
    .about h2{font-size:34px;color:var(--purple);margin-bottom:18px}.about p{font-size:16px;color:#59466c;margin-bottom:18px}.about-more{margin-top:8px}.about-more summary{list-style:none;cursor:pointer;width:max-content;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:0 24px;background:var(--purple);color:#fff;font-weight:900}.about-more summary::-webkit-details-marker{display:none}.about-more-content{margin-top:20px;padding-top:18px;border-top:1px solid rgba(114,14,194,.15)}
    .about img{height:310px;justify-self:center;position:relative;z-index:2;filter:drop-shadow(0 20px 24px rgba(50,20,80,.18))}

    /* Footer */
    .footer{background:linear-gradient(180deg,var(--purple),#4a087f);color:#fff;margin-top:60px;padding:58px 0 22px}
    .footer-main{display:grid;grid-template-columns:1.25fr .8fr .9fr 1.1fr 1.1fr;gap:34px;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.15)}
    .footer-logo{width:190px;margin-bottom:16px}.footer p{color:rgba(255,255,255,.82);font-size:14px}.footer h3{font-size:17px;color:var(--yellow);margin-bottom:16px}.footer a,.footer li{color:rgba(255,255,255,.86);font-size:14px;margin-bottom:8px;display:block}.footer ul{list-style:none;margin:0;padding:0}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:18px;color:rgba(255,255,255,.7);font-size:13px}

    @media(max-width:900px){.container{max-width:calc(100% - 32px)}.topbar{height:auto;padding:8px 0}.topbar .container,.header .container{flex-wrap:wrap}.nav{display:none}.header{height:76px}.hero .container{grid-template-columns:1fr}.hero-copy h1{font-size:44px}.hero-mascot{display:none}.services,.tour-grid,.promo-grid,.info-grid,.contacts-grid,.footer-main,.about{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--border)}.news-layout,.news-side{grid-template-columns:1fr}.about-more{grid-template-columns:1fr 1fr}.about img{height:240px}.section{padding:38px 0}}
  

body{font-family:Arial, Helvetica, sans-serif!important}.site-main{background:#fff}.section.promo-section{padding-top:48px!important}.section.news-section{background:#faf7ff}.section.contact-section{background:#fff}.section.about-section{background:#fff}.zalo-icon{margin-right:4px}.mini-solid .zalo-icon{margin-right:3px}.btn .zalo-icon{margin-right:5px}.section-title{font-size:28px;color:var(--purple);line-height:1.2;margin-bottom:24px}.page-hero{padding:56px 0;background:#faf7ff}.page-hero h1{font-size:42px;color:var(--purple);margin-bottom:12px}.breadcrumb{font-size:14px;color:var(--muted);margin-bottom:16px}.archive-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.content-wrap{padding:48px 0}.entry-card{background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:0 10px 24px rgba(42,18,72,.06)}.entry-card-body{padding:18px}.entry-card h3{font-size:18px;line-height:1.35;margin:0 0 10px}.entry-card p{color:var(--muted);font-size:14px}.single-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px}.entry-content{font-size:17px;line-height:1.75}.entry-content img{max-width:100%;height:auto;border-radius:16px}.entry-content h2{color:var(--purple);font-size:28px;margin-top:34px}.entry-content h3{font-size:22px;margin-top:26px}.toc-box{background:var(--yellow);border:1px solid #f2e98e;border-radius:18px;padding:18px 22px;margin:24px 0}.toc-box strong{display:block;color:var(--purple);font-size:18px;margin-bottom:10px}.toc-box a{display:block;color:#40204f;font-weight:700;margin:7px 0}.sidebar-box{background:#faf7ff;border:1px solid var(--border);border-radius:18px;padding:20px;margin-bottom:20px}.sidebar-box h3{font-size:20px;color:var(--purple)}.contact-grid-page{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.contact-card-page{background:#fff;border:1px solid var(--border);border-radius:18px;padding:22px;text-align:center;box-shadow:0 10px 24px rgba(42,18,72,.06)}.avatar-circle{width:78px;height:78px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff,#f3e6ff);margin:12px auto;color:var(--purple);font-size:28px;font-weight:900;border:1px solid #eadcf8}.about-text-collapsed{max-height:132px;overflow:hidden;position:relative}.about-text-collapsed.is-open{max-height:none}.contact-name{font-weight:800;color:var(--purple);margin-bottom:8px}.contact-person{font-weight:800}.contact-phone{font-weight:400;color:var(--text);margin-bottom:14px}.mobile-menu-btn{display:none;background:#fff;color:var(--purple);border:0;border-radius:999px;padding:9px 13px;font-weight:800}.post-thumb img,.tour-image img{width:100%;height:100%;object-fit:cover;display:block}.tour-detail-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:start}.tour-image{aspect-ratio:1280/628;border-radius:24px;overflow:hidden;background:#faf7ff}.tour-info-box{background:#fff;border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.tour-info-box h1{font-size:34px;color:var(--purple);line-height:1.2}.tour-price{font-size:28px;font-weight:900;color:var(--red);margin:18px 0}.department-strip{background:#fff}.footer a:hover{color:var(--yellow)}
@media(max-width:1100px){.nav{gap:14px;font-size:14px}.tour-grid,.archive-grid{grid-template-columns:repeat(3,1fr)}.contact-grid-page{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.container{max-width:calc(100% - 32px)}.topbar{height:auto;padding:8px 0}.topbar .container{display:block}.top-left,.top-right{white-space:normal}.header{height:auto;padding:12px 0}.header .container{gap:12px;flex-wrap:wrap}.logo-wrap{width:auto;flex:1}.logo-wrap img{width:185px}.mobile-menu-btn{display:inline-flex}.site-nav{display:none;width:100%;order:5;flex-direction:column;align-items:flex-start;background:rgba(255,255,255,.08);border-radius:16px;padding:12px}.site-nav.is-open{display:flex}.zalo-btn{padding:9px 18px}.hero{min-height:300px}.service-wrap{margin-top:0}.services{grid-template-columns:repeat(2,1fr)}.tour-grid,.archive-grid{grid-template-columns:1fr}.promo-grid,.small-service-grid,.news-layout,.single-layout,.tour-detail-hero{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.contact-grid-page{grid-template-columns:1fr}h2,.tour-section-title,.section-title{font-size:24px}.page-hero h1{font-size:32px}.section{padding:38px 0}}
.nav li{list-style:none;margin:0;padding:0;display:inline-flex;align-items:center}.nav li a{color:inherit}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;overflow:hidden;word-wrap:normal!important}.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;border:1px solid var(--border);border-radius:999px;margin-right:6px;color:var(--purple);font-weight:800}.page-numbers.current{background:var(--purple);color:#fff}

/* v3: tour card layout and two-level friendly styling */
.tour-grid{align-items:stretch!important;}
.tour-card{display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;background:#fff!important;border-radius:18px!important;overflow:hidden!important;}
.tour-card .thumb{display:block!important;width:100%!important;height:150px!important;aspect-ratio:auto!important;min-height:0!important;flex:0 0 150px!important;position:relative!important;background-size:cover!important;background-position:center!important;}
.tour-card .thumb img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;z-index:0!important;}
.tour-card .thumb:before{z-index:1!important;pointer-events:none!important;}
.tour-card .thumb:after{z-index:1!important;pointer-events:none!important;}
.tour-card .thumb .label{z-index:2!important;}
.tour-card .tour-body{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;background:#fff!important;padding:14px 15px 16px!important;position:relative!important;z-index:3!important;}
.tour-card .tour-title{font-family:Arial, Helvetica, sans-serif!important;font-size:16px!important;line-height:1.35!important;font-weight:800!important;color:#20142e!important;margin:0 0 10px!important;min-height:44px!important;display:block!important;}
.tour-card .tour-title a{color:#20142e!important;}
.tour-card .price{font-family:Arial, Helvetica, sans-serif!important;color:var(--red)!important;font-size:18px!important;font-weight:900!important;margin:0 0 14px!important;}
.tour-card .price .from{font-size:11px!important;font-weight:700!important;color:var(--red)!important;text-transform:none!important;margin-right:5px!important;}
.tour-actions{margin-top:auto!important;}
.mini-btn{font-family:Arial, Helvetica, sans-serif!important;}
@media(max-width:1100px){.tour-card .thumb{height:145px!important;flex-basis:145px!important;}}
@media(max-width:860px){.tour-card .thumb{height:180px!important;flex-basis:180px!important;}.tour-card .tour-title{min-height:auto!important;}}


/* v4 refinements */
html, body, button, input, textarea, select, a, h1, h2, h3, h4, p, span, div {font-family: Arial, Helvetica, sans-serif !important;}
.logo-wrap{width:255px!important;flex:0 0 255px!important;justify-content:flex-start!important;margin-right:18px!important;}
.logo-wrap img{width:238px!important;height:auto!important;object-position:left center!important;}
.down-arrow{font-size:15px!important;line-height:1!important;margin-left:3px!important;font-weight:800!important;}
.home-menu{background:transparent!important;box-shadow:none!important;border:none!important;outline:none!important;}
.home-menu:hover{background:transparent!important;}
.tour-card .thumb:after{display:none!important;}
.tour-card .thumb:before{background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.22) 100%)!important;z-index:1!important;}
.tour-card .thumb .label{font-family:Arial, Helvetica, sans-serif!important;font-size:12px!important;font-weight:800!important;bottom:10px!important;left:12px!important;z-index:2!important;}
.tour-card .tour-title, .tour-card .tour-title a, .news-small h3, .news-main h3, .mini-btn, .btn{font-family:Arial, Helvetica, sans-serif!important;letter-spacing:0!important;}
.tour-card .price .from{text-transform:none!important;}
.mini-solid, .btn-primary, .zalo-btn{gap:6px!important;}
.mini-solid .zalo-icon{margin-right:1px!important;width:17px!important;height:17px!important;flex:0 0 17px!important;}
.btn .zalo-icon{margin-right:2px!important;width:21px!important;height:21px!important;flex:0 0 21px!important;}
.zalo-btn .zalo-icon{margin-right:2px!important;width:22px!important;height:22px!important;flex:0 0 22px!important;}
.news-small h3{font-size:17px!important;line-height:1.35!important;font-weight:800!important;}
.tour-list-hero{padding:54px 0 34px;background:linear-gradient(180deg,#faf7ff,#fff);}
.tour-list-hero h1{font-size:42px;line-height:1.15;color:var(--purple);margin:0 0 10px;}
.tour-list-hero p{font-size:17px;color:var(--muted);max-width:760px;margin:0;}
.tour-list-wrap{padding:28px 0 60px;background:#fff;}
.tour-filter-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px;}
.tour-filter-chips a{height:38px;display:inline-flex;align-items:center;border:1px solid var(--border);background:#fff;border-radius:999px;padding:0 16px;color:var(--purple);font-size:14px;font-weight:800;box-shadow:0 8px 18px rgba(42,18,72,.04);}
.tour-filter-chips a:hover{background:var(--yellow);border-color:#efe58c;}
.archive-tour-grid{margin-top:8px;}
.pagination-wrap{margin-top:30px;text-align:center;}
@media(max-width:860px){.logo-wrap{width:auto!important;flex:1!important;margin-right:0!important}.logo-wrap img{width:190px!important}.tour-list-hero h1{font-size:32px}.tour-filter-chips{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}.tour-filter-chips a{flex:0 0 auto}}


/* v5: Vietnamese font hardening + category/post URL friendly layout refinements */
html, body {
  font-family: Arial, Helvetica, sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
body, button, input, textarea, select, a, p, span, div, li,
h1, h2, h3, h4, h5, h6,
.nav, .topbar, .btn, .mini-btn, .view-all,
.tour-title, .tour-title a, .price, .from,
.news-small h3, .news-main h3,
.flag, .tag, .contact-card, .contact-card * {
  font-family: Arial, Helvetica, sans-serif !important;
  letter-spacing: 0 !important;
  font-synthesis-weight: none;
}
/* Giảm độ đậm quá cao để dấu tiếng Việt không bị méo/nén */
.nav, .zalo-btn, .btn, .mini-btn, .view-all,
.tour-card .tour-title, .tour-card .tour-title a,
.news-small h3, .news-main h3,
.flag, .tag, .contact-card h3, .contact-card .name,
.service-card h3, .promo h2, .info-card h2, .tour-section-title {
  font-weight: 700 !important;
}
.tour-card .tour-title{font-size:16px!important;line-height:1.42!important;min-height:46px!important;}
.tour-card .price{font-weight:800!important;line-height:1.25!important;}
.tour-card .price .from{font-size:11px!important;font-weight:400!important;text-transform:none!important;}
.mini-btn{font-size:12px!important;line-height:1!important;gap:6px!important;}
.btn{font-size:15px!important;line-height:1!important;gap:7px!important;}
.zalo-btn{font-size:15px!important;gap:8px!important;}
.zalo-icon{display:inline-block!important;object-fit:contain!important;vertical-align:middle!important;}
.mini-solid .zalo-icon{width:17px!important;height:17px!important;flex:0 0 17px!important;margin-right:0!important;}
.btn .zalo-icon{width:21px!important;height:21px!important;flex:0 0 21px!important;margin-right:0!important;}
.zalo-btn .zalo-icon{width:22px!important;height:22px!important;flex:0 0 22px!important;margin-right:0!important;}
.down-arrow{font-size:14px!important;transform:translateY(1px);display:inline-block;}
.logo-wrap{margin-left:0!important;padding-left:0!important;}
.header .container{padding-left:0!important;}
.news-small h3{font-size:17px!important;line-height:1.42!important;}
.news-small .cat{font-weight:700!important;}
.contact-card{display:flex!important;flex-direction:column!important;align-items:center!important;gap:7px!important;}
.contact-card h3{order:1;font-size:15px!important;line-height:1.25!important;margin:0!important;color:var(--purple)!important;}
.contact-card .avatar{order:2;width:82px!important;height:82px!important;font-size:28px!important;margin:4px auto!important;}
.contact-card .name{order:3;font-size:16px!important;line-height:1.25!important;color:#1e1230!important;}
.contact-card .phone{order:4;font-size:15px!important;font-weight:400!important;line-height:1.25!important;color:#1e1230!important;margin:0 0 4px!important;}
.contact-card .mini-btn{order:5;flex:0 0 auto!important;min-width:112px!important;}
@media(max-width:860px){.tour-card .tour-title{min-height:auto!important}.header .container{padding-left:16px!important}}

/* v6: editable options + final Vietnamese font refinements */
html, body, body * {
  font-family: Arial, Helvetica, Tahoma, sans-serif !important;
}
.tour-card .thumb .label{
  font-family: Arial, Helvetica, Tahoma, sans-serif !important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  text-shadow:0 1px 4px rgba(0,0,0,.42)!important;
}
.tour-card .price,
.tour-card .price .from{
  font-family: Arial, Helvetica, Tahoma, sans-serif !important;
  letter-spacing:0!important;
}
.tour-card .price .from{
  font-size:13px!important;
  font-weight:500!important;
  margin-right:6px!important;
  line-height:1!important;
}
.tour-card .price{
  font-size:19px!important;
  font-weight:800!important;
}
.btn, .mini-btn, .zalo-btn, .view-all, .flag, .tag,
.news-small h3, .news-main h3, .service-card h3, .contact-card *{
  font-family: Arial, Helvetica, Tahoma, sans-serif !important;
}
.contact-card .avatar img{
  width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;
}
.contact-card .avatar{
  overflow:hidden;
  background:linear-gradient(135deg,#fff,#f4e9ff)!important;
}
.hero{
  background-color:#e9f8ff!important;
  background-position:center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
.services .service-card:nth-child(n+7){display:none;}

/* v7: typography, prices, news redesign, admin-managed content refinements */
html, body, body * { font-family: Arial, Helvetica, sans-serif !important; }
.top-right{gap:10px!important;align-items:center!important;}
.top-dept{display:inline-flex!important;align-items:center!important;gap:5px!important;line-height:1!important;}
.down-arrow{font-size:12px!important;line-height:1!important;margin-left:2px!important;transform:translateY(0)!important;color:var(--purple)!important;}
.social{align-items:center!important;}
.social a,.social i{font-size:12px!important;line-height:1!important;}

.tour-card .price{font-family:Arial, Helvetica, sans-serif!important;color:var(--red)!important;display:flex!important;align-items:baseline!important;gap:5px!important;white-space:nowrap!important;font-size:0!important;}
.tour-card .price .from{font-family:Arial, Helvetica, sans-serif!important;color:var(--purple)!important;font-size:13px!important;font-weight:600!important;margin-right:2px!important;text-transform:none!important;line-height:1!important;}
.tour-card .price .price-text{font-family:Arial, Helvetica, sans-serif!important;color:var(--red)!important;font-size:19px!important;font-weight:800!important;line-height:1!important;letter-spacing:0!important;}
.tour-card .price .currency{font-family:Arial, Helvetica, sans-serif!important;color:var(--red)!important;font-size:11px!important;font-weight:700!important;line-height:1!important;position:relative!important;top:-.45em!important;margin-left:1px!important;}
.tour-price{font-family:Arial, Helvetica, sans-serif!important;}

.flag{font-size:15px!important;font-weight:700!important;gap:10px!important;}
.flag span{font-size:24px!important;}

/* News section redesign */
.news-section{background:#faf7ff!important;padding:64px 0!important;}
.news-section .section-head{margin-bottom:24px!important;}
.news-layout{display:grid!important;grid-template-columns:1.05fr 1fr!important;gap:26px!important;align-items:stretch!important;}
.news-main{display:grid!important;grid-template-columns:1fr!important;background:#fff!important;border:1px solid var(--border)!important;border-radius:24px!important;overflow:hidden!important;box-shadow:0 12px 32px rgba(42,18,72,.08)!important;min-height:470px!important;}
.news-main .thumb{display:block!important;aspect-ratio:1280/628!important;height:auto!important;min-height:250px!important;background:#e9f8ff!important;}
.news-main .thumb:before,.news-main .thumb:after{display:none!important;}
.news-main .thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.news-main-body{padding:24px 26px 28px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;}
.news-main .cat,.news-small .cat{font-family:Arial, Helvetica, sans-serif!important;color:var(--purple)!important;font-size:13px!important;font-weight:700!important;line-height:1.2!important;letter-spacing:0!important;text-transform:uppercase!important;margin-bottom:9px!important;}
.news-main h3{font-family:Arial, Helvetica, sans-serif!important;font-size:25px!important;line-height:1.32!important;font-weight:700!important;color:#1e1230!important;margin:0 0 18px!important;}
.news-side{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;}
.news-small{display:grid!important;grid-template-columns:140px 1fr!important;align-items:center!important;gap:14px!important;background:#fff!important;border:1px solid var(--border)!important;border-radius:18px!important;padding:12px!important;min-height:112px!important;box-shadow:0 8px 20px rgba(42,18,72,.06)!important;}
.news-small .small-thumb{display:block!important;width:140px!important;height:86px!important;aspect-ratio:auto!important;border-radius:13px!important;overflow:hidden!important;background:#e9f8ff!important;}
.news-small .small-thumb:before,.news-small .small-thumb:after{display:none!important;}
.news-small .small-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.news-small h3{font-family:Arial, Helvetica, sans-serif!important;font-size:17px!important;line-height:1.35!important;font-weight:700!important;color:#1e1230!important;margin:0!important;}
.news-small h3 a{color:#1e1230!important;}

/* About block */
.about-section{background:#fff!important;padding-top:54px!important;}
.about{background:#fff9b2!important;background-image:none!important;border-color:#eee28c!important;padding:36px 50px 46px!important;align-items:start!important;}
.about h2{font-size:32px!important;line-height:1.15!important;margin:0 0 16px!important;color:var(--purple)!important;}
.about-content{padding-top:0!important;align-self:start!important;}
.about p{color:#291d3a!important;line-height:1.55!important;}
.about .btn{margin-top:14px!important;}
.about-text-collapsed{max-height:118px!important;}
.about-text-collapsed.is-open{max-height:none!important;}
.about img{align-self:start!important;margin-top:8px!important;}

.contact-card .avatar img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:50%!important;display:block!important;}

@media(max-width:860px){
  .news-layout{grid-template-columns:1fr!important;}
  .news-main{min-height:0!important;}
  .news-small{grid-template-columns:112px 1fr!important;}
  .news-small .small-thumb{width:112px!important;height:74px!important;}
  .about{grid-template-columns:1fr!important;padding:28px 24px 34px!important;}
  .about img{height:220px!important;}
}

/* v8: service pages, news pages, price typography and about block refinements */
.tour-card .price,
.tour-card .price .from,
.tour-card .price .price-text,
.tour-card .price .currency,
.tour-price,
.tour-price *{
  font-family: Arial, Helvetica, Tahoma, sans-serif !important;
  letter-spacing: 0 !important;
  font-style: normal !important;
}
.tour-card .price{align-items:baseline!important;gap:6px!important;line-height:1!important}
.tour-card .price .from{color:var(--purple)!important;font-size:13px!important;font-weight:600!important;line-height:1!important}
.tour-card .price .price-text{font-size:20px!important;font-weight:800!important;line-height:1!important;color:var(--red)!important}
.tour-card .price .currency{font-size:10px!important;font-weight:700!important;top:-.55em!important;margin-left:1px!important;color:var(--red)!important}
.about-section{background:#fff!important}
.about{background:#fff9b2!important;background-image:none!important;box-shadow:none!important;border:1px solid #eee28c!important;padding-top:34px!important;padding-bottom:50px!important}
.about h2{font-size:31px!important;margin-top:0!important;margin-bottom:14px!important}
.about-content{padding-top:0!important}
.about .btn{margin-top:20px!important}
.about-text-collapsed{max-height:112px!important}
.about-text-collapsed.is-open{max-height:none!important}

.news-section .section-head{align-items:center!important}
.news-section .tour-section-title{font-size:29px!important}
.news-layout{grid-template-columns:1fr 1fr!important;gap:28px!important}
.news-main{min-height:430px!important;border-radius:24px!important}
.news-main .thumb{min-height:235px!important}
.news-main h3{font-size:24px!important;font-weight:700!important}
.news-side{grid-template-columns:1fr 1fr!important;gap:16px!important}
.news-small{grid-template-columns:116px 1fr!important;min-height:116px!important;padding:12px!important}
.news-small .small-thumb{width:116px!important;height:76px!important}
.news-small h3{font-size:16px!important;line-height:1.36!important;font-weight:700!important}
@media(max-width:1000px){.news-layout,.news-side{grid-template-columns:1fr!important}.news-small{grid-template-columns:112px 1fr!important}}

.service-hero-page{background:linear-gradient(180deg,#faf7ff,#fff);padding:54px 0 42px}
.service-hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}
.service-kicker{display:inline-flex;background:#fff9b2;color:var(--purple);font-weight:800;border-radius:999px;padding:8px 16px;margin-bottom:14px;border:1px solid #efe48e}
.service-hero-page h1{font-size:44px;line-height:1.12;color:var(--purple);margin:0 0 14px;font-weight:800}
.service-hero-page p{font-size:17px;color:#4d3b5f;margin-bottom:24px;max-width:760px}
.service-hero-media{border-radius:26px;overflow:hidden;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);aspect-ratio:1280/628;display:flex;align-items:center;justify-content:center}
.service-hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.service-page-content{padding:46px 0;background:#fff}
.service-grid-main{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}
.service-main-card,.service-side-card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:0 10px 26px rgba(42,18,72,.06)}
.service-side-card{background:#faf7ff;position:sticky;top:20px}
.service-side-card h2{font-size:24px;color:var(--purple);margin-top:0}
.service-feature-section{padding:50px 0;background:#faf7ff}
.service-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-feature-card{background:#fff;border:1px solid var(--border);border-radius:20px;padding:24px;box-shadow:0 10px 24px rgba(42,18,72,.06)}
.service-feature-card h3{font-size:20px;color:#1f1230;margin:0 0 8px}
.service-feature-card p{color:#5d4d68;margin:0}.service-dot{width:34px;height:34px;border-radius:50%;background:var(--purple);color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-weight:900}
.service-steps-section{padding:50px 0;background:#fff}.service-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-step{background:#fff9b2;border:1px solid #efe48e;border-radius:18px;padding:20px}.service-step span{color:var(--purple);font-weight:900;font-size:24px}.service-step p{margin:10px 0 0;color:#352442;font-weight:600}
.service-related-news{padding:50px 0;background:#faf7ff}

.news-category-hero{background:#faf7ff;padding:56px 0 42px}.news-category-hero h1{font-size:42px;color:var(--purple);line-height:1.15;margin:0 0 12px}.news-category-hero p{max-width:850px;color:#59466c}
.news-category-wrap{padding:48px 0;background:#fff}.news-category-grid{display:grid;grid-template-columns:1.08fr 1fr 1fr;gap:22px;align-items:stretch}.category-featured-post{grid-row:span 2;background:#fff;border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.category-featured-post .thumb{aspect-ratio:1280/628}.category-post-card{background:#fff;border:1px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:0 8px 22px rgba(42,18,72,.06)}.category-post-card .thumb{aspect-ratio:1280/628}.category-post-body{padding:20px}.category-post-body h2{font-size:19px;line-height:1.35;margin:0 0 10px}.category-featured-post .category-post-body h2{font-size:28px}.category-post-body p{color:#5d4d68;font-size:14px}
@media(max-width:900px){.service-hero-inner,.service-grid-main,.service-feature-grid,.service-steps,.news-category-grid{grid-template-columns:1fr}.service-hero-page h1,.news-category-hero h1{font-size:32px}.service-side-card{position:static}.category-featured-post{grid-row:auto}}

/* v9 refinements */
:root{--yellow:#fff9b2;}
.about-section{background:#ffffff!important;}
.about{background:#fff9b2!important;background-image:none!important;}
.about:before,.about:after{display:none!important;}
.info-tags a.tag{color:#2c173c;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;}
.info-card h2 a{color:inherit;text-decoration:none;}
.visa-flags a.flag{color:#13051f;text-decoration:none;}
.visa-flags .flag{font-size:16px!important;font-family:Arial,Helvetica,Tahoma,sans-serif!important;font-weight:700!important;}
.tour-card .price,.tour-card .price *{font-family:Arial,Helvetica,Tahoma,sans-serif!important;}
.tour-card .price .from{font-size:14px!important;color:#720ec2!important;font-weight:700!important;margin-right:6px!important;}
.tour-card .price .price-text{font-size:22px!important;letter-spacing:-.2px!important;font-weight:800!important;color:#ed0000!important;}
.tour-card .price .currency{font-size:11px!important;top:-.52em!important;position:relative;color:#ed0000!important;margin-left:2px!important;font-weight:700!important;}
.service-link-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px;}
.service-link-list a{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px 18px;color:var(--purple);font-weight:800;text-decoration:none;box-shadow:0 8px 20px rgba(42,18,72,.05)}
.service-link-list a:hover{border-color:var(--purple);transform:translateY(-1px)}
@media(max-width:700px){.service-link-list{grid-template-columns:1fr}.visa-flags .flag{font-size:15px!important}}
