/*
Theme Name: NGON.com.vn Theme
Theme URI: https://ngon.com.vn/
Author: dot vn Studio
Description: Theme chuyển đổi theo homepage NGON.com.vn luxury. Homepage dùng WordPress Posts + category settings, logo ảnh chuẩn 268px desktop.
Version: 1.2.0.1-ban-x
Text Domain: edustory-ngon-com-vn-theme
*/
/*
Theme Name: CoffeeBike Magazine
Theme URI: https://coffeebike.vn/
Author: dot vn Studio
Description: CoffeeBike.vn magazine theme converted from EduStory base. Bright coffee magazine platform for coffee places, cafés, reviews, brewing, beans, equipment and coffee community.
Version: 1.0.11
Text Domain: edustory-coffeebike-theme
*/
:root{
      --blue:#9a5a32;
      --blue-2:#b87342;
      --blue-dark:#6f3f24;
      --navy:#2f8f7b;
      --navy-2:#55b7a5;
      --gold:#d9903d;
      --gold-2:#f2c97d;
      --cream:#fff4e8;
      --paper:#fffbf5;
      --white:#fff;
      --text:#172033;
      --muted:#6e7480;
      --line:#e5eaf1;
      --green:#00a86b;
      --pink:#ff4d6d;
      --orange:#d9903d;
      --shadow:0 12px 30px rgba(154,90,50,.10);
      --radius:8px;
      --container:1250px;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      font-size:14px;
      line-height:1.5;
      color:var(--text);
      background:var(--paper);
      font-weight:400;
    }
    img{display:block;max-width:100%}
    a{text-decoration:none;color:inherit}
    .container{width:min(var(--container),calc(100% - 52px));margin:0 auto}

    .mini-bar{
      height:42px;
      background:#fff;
      border-bottom:1px solid var(--line);
      color:#24334b;
      font-size:12px;
    }
    .mini-bar .inner{
      height:42px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
    }
    .story-tag{
      display:flex;
      align-items:center;
      gap:8px;
      color:#6f3f24;
      font-family:Georgia,serif;
      font-size:15px;
    }
    .story-tag i{color:#9a5a32}
    .mini-links{
      display:flex;
      align-items:center;
      gap:18px;
      color:#172033;
    }
    .mini-links .sep{color:#bec7d3}
    .mini-links .social{display:flex;gap:15px;color:#9a5a32}

    .header{
      background:#fff;
      border-bottom:1px solid var(--line);
    }
    .header-main{
      min-height:96px;
      display:grid;
      grid-template-columns:235px 1fr 360px;
      gap:28px;
      align-items:center;
    }
    .logo{
      display:flex;
      align-items:center;
      gap:12px;
      color:var(--blue);
    }
    .logo-mark{
      width:48px;
      height:48px;
      border:3px solid var(--blue);
      border-radius:10px 10px 12px 12px;
      display:flex;
      align-items:center;
      justify-content:center;
      position:relative;
      color:var(--blue);
      font-size:24px;
    }
    .logo-mark:before,.logo-mark:after{
      content:"";
      position:absolute;
      width:18px;
      height:28px;
      border:2px solid var(--blue);
      border-radius:4px 4px 2px 2px;
      bottom:8px;
      background:#fff;
    }
    .logo-mark:before{left:8px;transform:skewY(-12deg)}
    .logo-mark:after{right:8px;transform:skewY(12deg)}
    .logo-mark i{position:relative;z-index:2;font-size:15px;margin-top:-3px}
    .logo-text strong{
      display:block;
      font-size:31px;
      line-height:1;
      letter-spacing:-1.3px;
      font-weight:600;
      color:var(--blue);
    }
    .logo-text small{
      display:block;
      margin-top:5px;
      font-size:11px;
      color:#5b6472;
      font-weight:600;
    }
    .search{
      height:48px;
      border:1px solid #cbd6e5;
      border-radius:7px;
      display:flex;
      overflow:hidden;
      background:#fff;
    }
    .search input{
      flex:1;
      border:0;
      outline:0;
      padding:0 18px;
      color:#6c7481;
      font-family:Inter,sans-serif;
      background:#fff;
    }
    .search button{
      width:54px;
      border:0;
      color:#fff;
      background:var(--blue);
      font-size:18px;
      cursor:pointer;
    }
    .quick-actions{
      display:flex;
      align-items:center;
      justify-content:flex-end;
      gap:28px;
      color:var(--blue);
    }
    .quick-actions a{
      display:flex;
      flex-direction:column;
      align-items:center;
      gap:6px;
      min-width:54px;
      font-size:12px;
      font-weight:600;
      position:relative;
    }
    .quick-actions i{font-size:23px}
    .badge{
      position:absolute;
      top:-7px;
      right:10px;
      width:18px;
      height:18px;
      border-radius:50%;
      background:#d9903d;
      color:#fff;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:10px;
      font-weight:600;
    }
    .nav{
      height:52px;
      display:flex;
      align-items:center;
      gap:39px;
      overflow:auto;
      white-space:nowrap;
    }
    .nav a{
      height:52px;
      display:flex;
      align-items:center;
      color:#111827;
      font-size:14px;
      font-weight:500;
      border-bottom:3px solid transparent;
    }
    .nav a.active{
      color:var(--blue);
      border-bottom-color:var(--blue);
      font-weight:600;
    }

    main{padding:18px 0 0}
    .top-grid{
      display:grid;
      grid-template-columns:minmax(0,1fr) 285px;
      gap:22px;
      align-items:start;
    }
    .hero-area{
      display:grid;
      grid-template-columns:1.52fr .98fr;
      gap:12px;
      align-items:stretch;
    }
    .hero{
      position:relative;
      min-height:430px;
      border-radius:8px;
      overflow:hidden;
      background:#111;
      box-shadow:var(--shadow);
    }
    .hero img{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .hero::after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.23) 65%,rgba(0,0,0,.03));
    }
    .hero-copy{
      position:absolute;
      z-index:2;
      left:30px;
      right:30px;
      bottom:28px;
      color:#fff;
    }
    .label{
      display:inline-flex;
      align-items:center;
      padding:7px 11px;
      border-radius:5px;
      background:#f4d377;
      color:#10233e;
      text-transform:uppercase;
      font-size:11px;
      font-weight:600;
      margin-bottom:18px;
    }
    .hero h1{
      margin:0 0 16px;
      max-width:480px;
      font-size:31px;
      line-height:1.25;
      letter-spacing:-.8px;
      font-weight:600;
    }
    .hero p{
      margin:0 0 24px;
      max-width:180px;
      color:rgba(255,255,255,.9);
      font-size:15px;
      line-height:1.65;
    }
    .read-more{
      display:inline-flex;
      align-items:center;
      gap:14px;
      color:#fff;
      font-size:13px;
      font-weight:600;
    }
    .hero-dots{
      position:absolute;
      right:18px;
      bottom:23px;
      display:flex;
      align-items:center;
      gap:10px;
      z-index:3;
    }
    .hero-dots span{
      width:8px;
      height:8px;
      border-radius:50%;
      background:rgba(255,255,255,.85);
    }
    .hero-dots span:last-child{
      background:transparent;
      border:1px solid rgba(255,255,255,.7);
    }
    .hero-dots i{
      color:rgba(255,255,255,.9);
      font-size:11px;
      margin-left:2px;
    }

    .story-stack{
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    .stack-card{
      min-height:132px;
      display:grid;
      grid-template-columns:1fr 150px;
      gap:14px;
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      padding:12px;
      overflow:hidden;
      box-shadow:0 8px 22px rgba(17,49,90,.04);
    }
    .stack-card img{
      width:150px;
      height:108px;
      object-fit:cover;
      border-radius:6px;
    }
    .tag{
      display:inline-flex;
      padding:4px 7px;
      border-radius:4px;
      color:#fff;
      text-transform:uppercase;
      font-size:10px;
      font-weight:600;
      margin-bottom:7px;
    }
    .tag.blue{background:#2d82ce}
    .tag.gold{background:#ca943a}
    .tag.gray{background:#6b7280}
    .tag.green{background:#17a76f}
    .tag.pink{background:#e86084}
    .stack-card h3{
      margin:0 0 7px;
      font-size:17px;
      line-height:1.35;
      font-weight:600;
    }
    .stack-card p{
      margin:0;
      color:#596274;
      font-size:12px;
      line-height:1.45;
    }
    .arrow-circle{
      margin-top:7px;
      width:24px;
      height:24px;
      border-radius:50%;
      border:1px solid #cfd7e2;
      display:flex;
      align-items:center;
      justify-content:center;
      color:var(--blue);
      font-size:11px;
    }

    .right-sidebar{display:flex;flex-direction:column;gap:18px}
    .side-box{
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      padding:18px;
      box-shadow:0 9px 24px rgba(17,49,90,.045);
    }
    .side-title{
      margin:0 0 15px;
      color:#17355d;
      font-size:18px;
      font-weight:600;
    }
    .featured-list{display:flex;flex-direction:column;gap:15px}
    .featured-item{
      display:grid;
      grid-template-columns:86px 1fr;
      gap:12px;
      align-items:center;
    }
    .featured-item img{
      width:86px;
      height:62px;
      object-fit:cover;
      border-radius:4px;
    }
    .featured-item h4{
      margin:0 0 5px;
      font-size:13px;
      line-height:1.36;
      font-weight:600;
    }
    .meta{
      color:#7c8490;
      font-size:11px;
      font-weight:500;
    }
    .ad-blue{
      position:relative;
      overflow:hidden;
      min-height:164px;
      border-radius:8px;
      padding:22px;
      background:
        linear-gradient(110deg,rgba(0,63,125,.96),rgba(9,84,157,.76)),
        url("https://images.unsplash.com/photo-1497633762265-9d179a990aa6?auto=format&fit=crop&w=500&q=85");
      background-size:cover;
      color:#fff;
    }
    .ad-blue h3{
      margin:0 0 8px;
      max-width:190px;
      color:#f2c97d;
      font-size:22px;
      line-height:1.12;
      text-transform:uppercase;
      font-weight:600;
    }
    .ad-blue p{
      margin:0 0 18px;
      max-width:210px;
      color:rgba(255,255,255,.9);
      font-size:13px;
      font-weight:500;
    }
    .ad-blue a{
      display:inline-flex;
      padding:9px 14px;
      border-radius:999px;
      background:#ffd37b;
      color:#103359;
      font-size:12px;
      font-weight:600;
    }

    .category-row{
      margin-top:14px;
      display:grid;
      grid-template-columns:repeat(8,1fr);
      background:#fff;
      border:1px solid var(--line);
      border-radius:9px;
      overflow:hidden;
      box-shadow:0 10px 24px rgba(17,49,90,.045);
    }
    .cat-icon{
      min-height:88px;
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:9px;
      border-right:1px solid var(--line);
      color:var(--blue);
      font-size:12px;
      font-weight:600;
    }
    .cat-icon:last-child{border-right:0}
    .cat-icon i{
      font-size:24px;
      color:var(--blue);
    }

    .content-grid{
      margin-top:22px;
      display:grid;
      grid-template-columns:minmax(0,1fr) 285px;
      gap:22px;
      align-items:start;
    }
    .section{margin-bottom:26px}
    .section-head{
      display:flex;
      justify-content:space-between;
      align-items:center;
      margin-bottom:14px;
      gap:18px;
    }
    .section-title{
      margin:0;
      font-size:18px;
      font-weight:600;
      line-height:1;
    }
    .view-more{
      font-size:12px;
      font-weight:500;
      color:var(--blue);
    }
    .view-more i{margin-left:10px}
    .card-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
    }
    .post-card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      overflow:hidden;
      box-shadow:0 9px 24px rgba(17,49,90,.04);
    }
    .post-img{
      height:150px;
      position:relative;
      overflow:hidden;
    }
    .post-img img{
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .post-img .tag{
      position:absolute;
      left:10px;
      bottom:10px;
      margin:0;
      border-radius:3px;
    }
    .post-body{padding:14px}
    .post-body h3{
      margin:0 0 10px;
      font-size:16px;
      line-height:1.35;
      font-weight:600;
    }

    .two-col{
      display:grid;
      grid-template-columns:.86fr 1.25fr;
      gap:22px;
    }
    .list-box{
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      padding:18px;
      box-shadow:0 9px 24px rgba(17,49,90,.04);
    }
    .number-list{
      list-style:none;
      margin:0;
      padding:0;
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    .number-list li{
      display:grid;
      grid-template-columns:26px 1fr 68px;
      gap:12px;
      align-items:center;
      color:#303949;
      font-size:12px;
    }
    .number-list b{
      color:var(--blue);
      font-weight:600;
    }
    .number-list span:last-child{
      color:#637084;
      text-align:right;
      font-size:11px;
    }
    .topic-scroll{
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      padding:18px;
      box-shadow:0 9px 24px rgba(17,49,90,.04);
    }
    .topic-row{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:12px;
    }
    .topic-card img{
      width:100%;
      height:86px;
      object-fit:cover;
      border-radius:6px;
      margin-bottom:9px;
    }
    .topic-card h4{
      margin:0 0 5px;
      color:var(--blue);
      font-size:13px;
      line-height:1.3;
      font-weight:600;
    }
    .topic-card p{
      margin:0 0 4px;
      color:#5e6878;
      font-size:11px;
      line-height:1.4;
    }

    .authors-video{
      display:grid;
      grid-template-columns:.86fr 1.25fr;
      gap:22px;
    }
    .author-list{
      display:flex;
      flex-direction:column;
      gap:13px;
    }
    .author{
      display:grid;
      grid-template-columns:48px 1fr 76px;
      gap:12px;
      align-items:center;
    }
    .author img{
      width:48px;
      height:48px;
      border-radius:50%;
      object-fit:cover;
    }
    .author h4{
      margin:0 0 3px;
      font-size:13px;
      font-weight:600;
    }
    .author p{
      margin:0;
      color:#616b7c;
      font-size:11px;
      line-height:1.35;
    }
    .follow{
      height:30px;
      border:1px solid #b8c9e3;
      border-radius:4px;
      display:flex;
      align-items:center;
      justify-content:center;
      color:var(--blue);
      font-size:11px;
      font-weight:600;
    }
    .video-podcast{
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      padding:18px;
      box-shadow:0 9px 24px rgba(17,49,90,.04);
    }
    .video-layout{
      display:grid;
      grid-template-columns:1.55fr .8fr;
      gap:16px;
    }
    .video-main{
      position:relative;
      min-height:212px;
      border-radius:7px;
      overflow:hidden;
      background:#111;
    }
    .video-main img{
      width:100%;
      height:212px;
      object-fit:cover;
      filter:brightness(.64);
    }
    .video-main .caption{
      position:absolute;
      left:18px;
      top:18px;
      z-index:2;
      color:#fff;
      max-width:300px;
    }
    .video-main h3{
      margin:0 0 8px;
      font-size:24px;
      line-height:1.25;
      font-weight:600;
    }
    .video-main p{
      margin:0;
      color:rgba(255,255,255,.82);
      font-size:12px;
    }
    .play-red{
      position:absolute;
      left:50%;
      bottom:18px;
      width:36px;
      height:36px;
      transform:translateX(-50%);
      background:#e8422b;
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#fff;
      z-index:2;
    }
    .video-time{
      position:absolute;
      left:15px;
      bottom:16px;
      color:#fff;
      font-size:12px;
      z-index:2;
    }
    .small-videos{
      display:flex;
      flex-direction:column;
      gap:11px;
    }
    .small-video{
      display:grid;
      grid-template-columns:82px 1fr;
      gap:11px;
      align-items:center;
    }
    .small-thumb{
      position:relative;
      width:82px;
      height:54px;
      overflow:hidden;
      border-radius:5px;
      background:#111;
    }
    .small-thumb img{
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .small-thumb span{
      position:absolute;
      right:4px;
      bottom:4px;
      background:rgba(0,0,0,.72);
      color:#fff;
      padding:2px 4px;
      border-radius:2px;
      font-size:9px;
    }
    .small-video h4{
      margin:0;
      font-size:12px;
      line-height:1.35;
      font-weight:600;
    }

    .trending-tags{
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      padding:18px;
      box-shadow:0 9px 24px rgba(17,49,90,.04);
    }
    .tag-list{
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .tag-row{
      display:grid;
      grid-template-columns:1fr 54px;
      gap:12px;
      align-items:center;
      background:#f4f7fb;
      border-radius:6px;
      padding:8px 10px;
      font-size:12px;
      color:var(--blue);
      font-weight:600;
    }
    .tag-row span:last-child{
      color:#e04343;
      text-align:right;
    }
    .tag-row:nth-child(n+2) span:last-child{color:#1ca66a}
    .newsletter{
      background:#fff8ec;
      border-color:#f1dec1;
      position:relative;
      overflow:hidden;
    }
    .newsletter h3{
      color:#24426d;
      margin:0 0 10px;
      font-size:18px;
      font-weight:600;
    }
    .newsletter p{
      margin:0 0 14px;
      color:#626b78;
      font-size:13px;
      line-height:1.55;
    }
    .newsletter input{
      width:100%;
      height:38px;
      border:1px solid #e3cfad;
      border-radius:4px;
      padding:0 12px;
      font-family:Inter,sans-serif;
      margin-bottom:10px;
      background:#fff;
    }
    .newsletter button{
      width:100%;
      height:39px;
      border:0;
      background:var(--blue);
      color:#fff;
      border-radius:4px;
      font-family:Inter,sans-serif;
      font-size:12px;
      font-weight:600;
      text-transform:uppercase;
    }

    .cta-row{
      margin:28px 0 20px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:20px;
    }
    .cta{
      min-height:132px;
      border-radius:8px;
      overflow:hidden;
      position:relative;
      display:grid;
      grid-template-columns:1fr 220px;
      align-items:center;
      padding:24px 28px;
      box-shadow:var(--shadow);
    }
    .cta.community{
      background:
        linear-gradient(90deg,rgba(0,55,101,.98),rgba(0,68,119,.84)),
        url("https://images.unsplash.com/photo-1522202176988-66273c2fd55f?auto=format&fit=crop&w=800&q=85");
      background-size:cover;
      color:#fff;
    }
    .cta.ad{
      background:
        linear-gradient(90deg,rgba(255,247,236,.96),rgba(255,247,236,.62)),
        url("https://images.unsplash.com/photo-1551817958-d9d86fb29431?auto=format&fit=crop&w=800&q=85");
      background-size:cover;
      color:#9a5b1d;
    }
    .cta h3{
      margin:0 0 8px;
      font-size:26px;
      line-height:1.12;
      font-weight:600;
    }
    .cta p{
      margin:0 0 18px;
      max-width:390px;
      font-size:13px;
      color:rgba(255,255,255,.86);
    }
    .cta.ad p{color:#744d31}
    .cta a{
      display:inline-flex;
      padding:12px 18px;
      border-radius:4px;
      background:#ffe0a3;
      color:#082d58;
      font-size:12px;
      font-weight:600;
      text-transform:uppercase;
    }
    .cta.ad a{
      background:#b96e25;
      color:#fff;
    }

    footer{
      background:linear-gradient(90deg,#00365f,#003b6f);
      color:#fff;
      padding:34px 0 20px;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.55fr repeat(3,1fr) 1.35fr;
      gap:44px;
      align-items:start;
    }
    .footer-logo{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:12px;
    }
    .footer-logo .mark{
      width:38px;
      height:38px;
      border:2px solid #fff;
      border-radius:7px;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .footer-logo strong{
      font-size:26px;
      line-height:1;
      font-weight:600;
    }
    .footer-tag{
      color:#fff;
      font-size:12px;
      font-weight:500;
      margin-bottom:14px;
    }
    .footer-about{
      color:rgba(255,255,255,.72);
      font-size:13px;
      line-height:1.65;
      max-width:320px;
      margin:0 0 18px;
    }
    .footer-social{
      display:flex;
      gap:20px;
      font-size:16px;
    }
    footer h4{
      margin:0 0 14px;
      font-size:13px;
      text-transform:uppercase;
      font-weight:600;
    }
    footer ul{
      list-style:none;
      margin:0;
      padding:0;
      display:flex;
      flex-direction:column;
      gap:7px;
      color:rgba(255,255,255,.72);
      font-size:12px;
    }
    .store-row{
      display:flex;
      gap:9px;
      margin-top:14px;
    }
    .store{
      display:flex;
      align-items:center;
      gap:8px;
      background:#0b0f16;
      border-radius:5px;
      padding:7px 10px;
      color:#fff;
      min-width:112px;
      font-size:10px;
      line-height:1.1;
    }
    .store i{font-size:20px}
    .store b{display:block;font-size:13px;font-weight:600}
    .copyright{
      border-top:1px solid rgba(255,255,255,.12);
      margin-top:24px;
      padding-top:14px;
      text-align:center;
      color:rgba(255,255,255,.64);
      font-size:12px;
    }

    @media(max-width:1120px){
      .header-main{grid-template-columns:1fr;gap:16px;padding:18px 0}
      .quick-actions{justify-content:flex-start}
      .top-grid,.content-grid,.hero-area,.two-col,.authors-video{grid-template-columns:1fr}
      .right-sidebar{display:grid;grid-template-columns:repeat(2,1fr)}
      .category-row{grid-template-columns:repeat(4,1fr)}
      .card-grid{grid-template-columns:repeat(2,1fr)}
      .footer-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:760px){
      .container{width:calc(100% - 28px)}
      .mini-bar .inner{height:auto;min-height:42px;flex-direction:column;align-items:flex-start;padding:10px 0}
      .header-main{padding:16px 0}
      .quick-actions{gap:12px;flex-wrap:wrap}
      .nav{gap:24px}
      .hero{min-height:430px}
      .hero h1{font-size:26px}
      .stack-card,.featured-item,.popular-item,.small-video{grid-template-columns:1fr}
      .stack-card img,.featured-item img{width:100%;height:160px}
      .right-sidebar{grid-template-columns:1fr}
      .category-row,.card-grid,.topic-row,.video-layout,.cta-row{grid-template-columns:1fr}
      .post-img{height:190px}
      .cta{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1fr}
    }

/* WordPress normalization */
html,body{margin:0;padding:0;overflow-x:hidden}body,button,input,select,textarea{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}b,strong,h1,h2,h3,h4,h5,h6,.fw{font-weight:600!important}.container{width:min(var(--container),calc(100% - 52px));margin:0 auto}.page{width:auto!important;height:auto!important;min-height:0!important;overflow:visible!important;box-shadow:none!important;background:transparent!important}.custom-logo{max-height:64px;width:auto}.nav{overflow:visible!important;white-space:normal!important;flex-wrap:wrap;gap:28px;min-height:52px;height:auto}.nav a{min-height:48px;height:auto}.header{position:sticky;top:0;z-index:50}.hero h1,.section-title,.cta h3,.video-main h3{font-size:clamp(22px,2vw,24px)!important;line-height:1.26!important}.logo-text strong{font-weight:600!important}.hero p,.post-body p,.news-card p,.entry-content p{font-size:15px}.post-card h3 a,.stack-card h3 a,.featured-item h4 a,.number-list a,.news-card h3 a,.topic-card a{transition:.18s}.post-card h3 a:hover,.stack-card h3 a:hover,.featured-item h4 a:hover,.number-list a:hover,.news-card h3 a:hover,.topic-card a:hover{color:var(--blue)}.wp-block-image img{height:auto}.screen-reader-text{position:absolute;left:-9999px}.pagination{margin-top:24px}.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}.pagination a,.pagination span{padding:8px 11px;border:1px solid var(--line);background:#fff;border-radius:4px}.pagination .current{background:var(--blue);color:#fff}.tgc-wrap{width:min(var(--container),calc(100% - 52px));margin:28px auto 42px}.tgc-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px;align-items:start}.tgc-card{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:28px}.tgc-title{font-size:clamp(22px,2vw,24px)!important;line-height:1.3;margin:8px 0 20px;color:#17355d}.tgc-thumb{width:100%;height:390px;object-fit:cover;border-radius:8px;margin:0 0 24px}.entry-content{font-size:16px;line-height:1.8;color:#273349}.entry-content img{height:auto;border-radius:8px}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.rank-item{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.rank-no{font-size:22px;color:var(--blue);font-weight:600;line-height:1}.rank-item h4{margin:0 0 4px;font-size:13px;line-height:1.4}.newsletter-box p{font-size:14px;color:var(--muted);line-height:1.6}.side-box .section-head{margin-bottom:14px}@media(max-width:1120px){.header-main{grid-template-columns:1fr;gap:16px;padding:18px 0}.quick-actions{justify-content:flex-start}.top-grid,.content-grid,.hero-area,.two-col,.authors-video,.tgc-grid{grid-template-columns:1fr}.right-sidebar{display:grid;grid-template-columns:repeat(2,1fr)}.category-row{grid-template-columns:repeat(4,1fr)}.card-grid,.archive-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.container,.tgc-wrap{width:calc(100% - 28px)}.mini-bar .inner{height:auto;min-height:42px;flex-direction:column;align-items:flex-start;padding:10px 0}.header-main{padding:16px 0}.quick-actions{gap:12px;flex-wrap:wrap}.nav{gap:20px}.hero{min-height:430px}.hero h1{font-size:24px!important}.stack-card,.featured-item,.small-video{grid-template-columns:1fr}.stack-card img,.featured-item img{width:100%;height:160px}.right-sidebar{grid-template-columns:1fr}.category-row,.card-grid,.topic-row,.video-layout,.cta-row,.archive-grid{grid-template-columns:1fr}.post-img{height:190px}.cta{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.tgc-card{padding:20px}.tgc-thumb{height:240px}}


/* CoffeeBike.vn bright coffee overrides */
.logo-mark{border-color:var(--blue);border-radius:16px;background:linear-gradient(135deg,#fff 0%,#fff4e8 48%,#fff1d8 100%);box-shadow:0 10px 26px rgba(154,90,50,.14)}
.logo-mark:before,.logo-mark:after{display:none!important}
.logo-mark i{font-size:22px;margin-top:0;color:var(--blue)}
.footer-logo .mark{background:linear-gradient(135deg,var(--blue),var(--orange));color:#fff;border:0}
.category-row{background:linear-gradient(90deg,#fff,#fff7ef)}
.cat-icon:hover{background:#fff0df;color:var(--blue)}
.ad-blue{background:linear-gradient(135deg,#9a5a32,#d9903d)!important;color:#fff}
.newsletter,.newsletter-box{background:linear-gradient(135deg,#fff4e8,#ffffff)}
.play-red{background:var(--blue)}

/* === dot vn Studio FIX 2026-07-01: menu cấp 2/3, card tin tức, scale heading trang chủ === */
.header{position:sticky;top:0;z-index:500;}
.nav{
  overflow:visible!important;
  white-space:normal!important;
  min-height:52px!important;
  height:auto!important;
  display:block!important;
  position:relative;
  z-index:600;
}
.primary-menu{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:0 28px;
}
.primary-menu li{list-style:none;margin:0;padding:0;position:relative;}
.primary-menu > li > a,
.nav > a{
  min-height:52px;
  height:auto!important;
  display:flex;
  align-items:center;
  gap:7px;
  color:#0f172a;
  font-size:13px!important;
  font-weight:500!important;
  border-bottom:3px solid transparent;
  padding:0;
}
.primary-menu > li.current-menu-item > a,
.primary-menu > li.current-menu-ancestor > a,
.primary-menu > li > a:hover,
.nav > a.active,
.nav > a:hover{color:var(--blue);border-bottom-color:var(--blue);}
.primary-menu .menu-item-has-children > a::after{
  content:"\f107";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  font-size:10px;
  line-height:1;
  color:currentColor;
  opacity:.72;
}
.primary-menu .sub-menu{
  display:none;
  position:absolute;
  top:100%;
  left:0;
  z-index:9999;
  min-width:230px;
  margin:0;
  padding:8px;
  list-style:none;
  background:#fff;
  border:1px solid var(--line);
  border-radius:8px;
  box-shadow:0 18px 42px rgba(15,23,42,.13);
  white-space:normal;
}
.primary-menu li:hover > .sub-menu,
.primary-menu li:focus-within > .sub-menu{display:block;}
.primary-menu .sub-menu .sub-menu{top:-8px;left:100%;}
.primary-menu .sub-menu li{display:block;width:100%;}
.primary-menu .sub-menu a{
  min-height:0!important;
  height:auto!important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 10px;
  border:0!important;
  border-radius:6px;
  color:#172033;
  font-size:13px!important;
  line-height:1.35;
  font-weight:500!important;
}
.primary-menu .sub-menu a:hover{background:#f8fbff;color:var(--blue);}
.primary-menu .sub-menu .menu-item-has-children > a::after{content:"\f105";margin-left:auto;}

.post-img{display:block!important;width:100%;height:126px!important;position:relative;overflow:hidden;background:#eef6ff;}
.post-img img{width:100%!important;height:100%!important;object-fit:cover!important;}
.post-img .tag{position:absolute!important;left:8px!important;bottom:8px!important;margin:0!important;max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.post-body p{margin:0 0 7px;color:#5f6b7a;font-size:12px!important;line-height:1.45;}
.news-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
.news-card-grid .post-card{
  display:grid!important;
  grid-template-columns:118px minmax(0,1fr);
  align-items:start;
  min-height:96px;
  border-radius:8px;
  overflow:hidden;
}
.news-card-grid .post-img{height:96px!important;min-height:96px;}
.news-card-grid .post-body{padding:9px 11px!important;min-width:0;}
.news-card-grid .post-body h3{margin:0 0 5px!important;font-size:13px!important;line-height:1.35!important;font-weight:600!important;}
.news-card-grid .post-body h3 a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.news-card-grid .post-body p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 5px!important;font-size:12px!important;line-height:1.4!important;}
.news-card-grid .meta{font-size:11px!important;line-height:1.35;color:#748094;}

body.home .hero h1{font-size:18px!important;line-height:1.25!important;letter-spacing:-.2px!important;}
body.home .hero p{font-size:13px!important;line-height:1.5!important;}
body.home .section-title{font-size:13px!important;line-height:1.2!important;}
body.home .stack-card h3{font-size:12px!important;line-height:1.32!important;}
body.home .featured-item h4{font-size:12px!important;line-height:1.32!important;}
body.home .post-body h3{font-size:13px!important;line-height:1.35!important;}
body.home .topic-card h4{font-size:12px!important;line-height:1.32!important;}
body.home .video-main h3{font-size:15px!important;line-height:1.35!important;}
body.home .small-video h4{font-size:12px!important;line-height:1.35!important;}
body.home .cta h3{font-size:15px!important;line-height:1.35!important;}
body.home .logo-text strong{font-size:26px!important;}

@media(max-width:1120px){
  .primary-menu{gap:0 20px;}
  .news-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .nav{padding:4px 0 10px;}
  .primary-menu{display:block!important;}
  .primary-menu > li{border-bottom:1px solid var(--line);}
  .primary-menu > li > a{min-height:42px;justify-content:space-between;}
  .primary-menu .sub-menu{display:block;position:static;min-width:0;padding:0 0 8px 14px;border:0;box-shadow:none;background:transparent;border-radius:0;}
  .primary-menu .sub-menu .sub-menu{position:static;left:auto;top:auto;padding-left:14px;}
  .primary-menu .sub-menu a{padding:7px 0;background:transparent!important;}
  .news-card-grid{grid-template-columns:1fr!important;}
  .news-card-grid .post-card{grid-template-columns:96px minmax(0,1fr);}
  .news-card-grid .post-img{height:78px!important;min-height:78px;}
  body.home .hero h1{font-size:18px!important;}
}


/* === dot vn Studio FIX 2026-07-01 CoffeeBike: desktop menu ngang + dropdown ổn định === */
@media(min-width:761px){
  .nav{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:0 28px!important;
    overflow:visible!important;
    white-space:normal!important;
    min-height:52px!important;
    height:auto!important;
  }
  .nav > a{display:flex!important;width:auto!important;margin:0!important;}
  .primary-menu{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:0 28px!important;
    width:100%;
  }
}
.logo-mark{background:linear-gradient(135deg,#fff 0%,#fff4e8 48%,#fff1d8 100%)!important;}
.footer-logo .mark{background:linear-gradient(135deg,var(--blue),var(--gold))!important;}
.category-row{background:linear-gradient(90deg,#fff,#fff7ef)!important;}
.cat-icon:hover{background:#fff0df!important;color:var(--blue)!important;}
.ad-blue{background:linear-gradient(135deg,#9a5a32,#d9903d)!important;color:#fff!important;}
.newsletter,.newsletter-box{background:linear-gradient(135deg,#fff4e8,#ffffff)!important;}

/* === dot vn Studio MOBILE MENU FINAL FIX 2026-07-01 ===
   Desktop: menu ngang + dropdown hover.
   Mobile: menu đóng mặc định, chỉ xổ khi bấm nút Menu.
*/
.menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:44px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--text);
  font-weight:600;
  font-size:14px;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(15,23,42,.06);
}
.menu-toggle i{font-size:16px;color:var(--blue);}

@media (min-width:761px){
  .menu-toggle{display:none!important;}
  .header .nav{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:0 22px!important;
    min-height:52px!important;
    height:auto!important;
    overflow:visible!important;
    white-space:normal!important;
    padding:0!important;
  }
  .header .nav > a{
    display:inline-flex!important;
    align-items:center!important;
    width:auto!important;
    min-height:48px!important;
    margin:0!important;
    padding:0!important;
  }
  .header .primary-menu{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:0 22px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  .header .primary-menu > li{
    display:block!important;
    position:relative!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  .header .primary-menu > li > a{
    display:flex!important;
    align-items:center!important;
    width:auto!important;
    min-height:48px!important;
    margin:0!important;
    padding:0!important;
    white-space:nowrap!important;
  }
  .header .primary-menu .sub-menu{
    display:none!important;
    position:absolute!important;
    top:100%!important;
    left:0!important;
    z-index:9999!important;
    min-width:220px!important;
    width:max-content!important;
    max-width:280px!important;
    margin:0!important;
    padding:8px!important;
    list-style:none!important;
    background:#fff!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    box-shadow:0 18px 45px rgba(15,23,42,.14)!important;
  }
  .header .primary-menu li:hover > .sub-menu,
  .header .primary-menu li:focus-within > .sub-menu{
    display:block!important;
  }
  .header .primary-menu .sub-menu .sub-menu{
    top:-8px!important;
    left:100%!important;
  }
  .header .primary-menu .sub-menu li,
  .header .primary-menu .sub-menu a{
    display:block!important;
    width:100%!important;
  }
  .header .primary-menu .sub-menu a{
    min-height:0!important;
    padding:10px 12px!important;
    white-space:normal!important;
    border-radius:8px!important;
  }
}

@media (max-width:760px){
  .header-main{padding-bottom:10px!important;}
  .menu-toggle{
    display:flex!important;
    width:calc(100% - 28px)!important;
    margin:0 auto 10px!important;
  }
  .menu-toggle[aria-expanded="true"]{border-color:var(--blue);color:var(--blue);}
  .header .nav{
    display:none!important;
    width:calc(100% - 28px)!important;
    margin:0 auto 12px!important;
    padding:8px 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
    background:#fff!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    box-shadow:0 14px 34px rgba(15,23,42,.10)!important;
  }
  .header .nav.is-open{
    display:block!important;
  }
  .header .nav > a{
    display:flex!important;
    width:100%!important;
    min-height:42px!important;
    padding:10px 14px!important;
    margin:0!important;
    border-bottom:1px solid var(--line)!important;
    justify-content:flex-start!important;
  }
  .header .nav > a:last-child{border-bottom:0!important;}
  .header .primary-menu{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  .header .primary-menu li{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border-bottom:1px solid var(--line)!important;
  }
  .header .primary-menu li:last-child{border-bottom:0!important;}
  .header .primary-menu a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:42px!important;
    padding:10px 14px!important;
    margin:0!important;
    white-space:normal!important;
  }
  .header .primary-menu .sub-menu{
    display:block!important;
    position:static!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0 0 8px 16px!important;
    background:#fff!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .header .primary-menu .sub-menu li{border-bottom:0!important;}
  .header .primary-menu .sub-menu a{
    min-height:36px!important;
    padding:7px 14px!important;
    color:var(--muted)!important;
    font-size:13px!important;
    background:transparent!important;
  }
}

/* === dot vn Studio FINAL MOBILE HEADER + FOOTER MENU v4 ===
   Mobile header chỉ còn: logo + ô tìm kiếm + icon menu.
   Các thành phần phụ như mini bar, quick actions, social, link phụ được ẩn trên mobile.
*/
.footer-menu-nav{
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.18);
}
.footer-menu-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  align-items:center;
}
.footer-menu-list li{margin:0;padding:0;list-style:none;}
.footer-menu-list a{
  color:#dbe7f6;
  text-decoration:none;
  font-size:13px;
  line-height:1.4;
}
.footer-menu-list a:hover{color:#fff;}

@media (min-width:761px){
  .header .menu-toggle{display:none!important;}
}

@media (max-width:760px){
  body{padding-top:0!important;}
  .mini-bar,
  .quick-actions,
  .header .story-tag,
  .header .mini-links,
  .header .social{
    display:none!important;
  }
  .header{
    position:sticky!important;
    top:0!important;
    z-index:9999!important;
    background:#fff!important;
    border-bottom:1px solid var(--line)!important;
    box-shadow:0 10px 24px rgba(15,23,42,.08)!important;
  }
  .header-main.container,
  .header .header-main{
    width:100%!important;
    max-width:none!important;
    min-height:58px!important;
    margin:0!important;
    padding:8px 58px 8px 12px!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
  }
  .header .logo{
    min-width:0!important;
    width:auto!important;
    max-width:132px!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }
  .header .logo-mark{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    border-radius:10px!important;
    font-size:14px!important;
  }
  .header .logo-text{
    min-width:0!important;
    overflow:hidden!important;
  }
  .header .logo-text strong{
    display:block!important;
    max-width:86px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:16px!important;
    line-height:1.1!important;
  }
  .header .logo-text small{display:none!important;}
  .header .custom-logo,
  .header .logo img{
    max-height:36px!important;
    max-width:128px!important;
    width:auto!important;
    object-fit:contain!important;
  }
  .header .search{
    width:100%!important;
    min-width:0!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 38px!important;
    border-radius:12px!important;
    overflow:hidden!important;
    border:1px solid var(--line)!important;
    background:#f8fafc!important;
    box-shadow:none!important;
  }
  .header .search input{
    width:100%!important;
    min-width:0!important;
    height:38px!important;
    padding:0 10px!important;
    border:0!important;
    background:transparent!important;
    font-size:12px!important;
    line-height:38px!important;
  }
  .header .search button{
    width:38px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .header .menu-toggle{
    display:flex!important;
    position:absolute!important;
    top:9px!important;
    right:10px!important;
    z-index:10000!important;
    width:42px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:none!important;
    color:var(--blue)!important;
  }
  .header .menu-toggle span{display:none!important;}
  .header .menu-toggle i{font-size:18px!important;margin:0!important;color:var(--blue)!important;}
  .header .menu-toggle[aria-expanded="true"]{
    border-color:var(--blue)!important;
    background:#f8fbff!important;
  }
  .header .nav{
    display:none!important;
    width:calc(100% - 24px)!important;
    max-width:none!important;
    margin:0 12px 10px!important;
    padding:8px 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    background:#fff!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    box-shadow:0 16px 36px rgba(15,23,42,.12)!important;
  }
  .header .nav.is-open{display:block!important;}
  .header .nav > a,
  .header .primary-menu a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:40px!important;
    padding:10px 14px!important;
    margin:0!important;
    border-bottom:1px solid var(--line)!important;
    white-space:normal!important;
    font-size:13px!important;
    line-height:1.35!important;
  }
  .header .nav > a:last-child{border-bottom:0!important;}
  .header .primary-menu,
  .header .primary-menu li{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  .header .primary-menu .sub-menu{
    display:block!important;
    position:static!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0 0 6px 16px!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
  }
  .header .primary-menu .sub-menu a{
    min-height:34px!important;
    padding:7px 14px!important;
    border-bottom:0!important;
    color:var(--muted)!important;
    font-size:12px!important;
  }
  .footer-menu-nav{
    margin-top:18px!important;
    padding-top:16px!important;
  }
  .footer-menu-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px 12px!important;
  }
  .footer-menu-list a{
    display:block!important;
    padding:6px 0!important;
    font-size:13px!important;
  }
}


/* === dot vn Studio v6: archive card đẹp + breadcrumb đẹp + mobile 2 cột có chọn lọc === */
.tgc-breadcrumb{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:7px!important;
  margin:0 0 16px!important;padding:10px 12px!important;
  border:1px solid var(--line)!important;border-radius:999px!important;background:linear-gradient(180deg,#fff,#f8fbff)!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;color:#64748b!important;font-size:12px!important;line-height:1.35!important;
}
.tgc-breadcrumb a{display:inline-flex!important;align-items:center!important;gap:6px!important;color:var(--blue)!important;text-decoration:none!important;font-weight:600!important;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tgc-breadcrumb a:hover{text-decoration:none!important;color:#0f172a!important;}
.tgc-breadcrumb .bc-home{padding:4px 8px!important;border-radius:999px!important;background:#eef6ff!important;}
.tgc-breadcrumb .bc-sep{display:inline-flex!important;align-items:center!important;color:#94a3b8!important;font-size:9px!important;}
.tgc-breadcrumb .current{display:inline-block!important;max-width:360px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:#475569!important;font-weight:500!important;}
.tgc-archive-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:24px!important;align-items:start!important;}
.archive-main{min-width:0!important;}
.archive-sidebar{position:sticky;top:92px;}
.archive-header .tgc-title{margin-top:0!important;margin-bottom:14px!important;}
.archive-desc{margin:-4px 0 18px!important;color:var(--muted)!important;font-size:14px!important;line-height:1.65!important;}
.archive-card-grid,.archive-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
.archive-card{display:block!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:13px!important;overflow:hidden!important;box-shadow:0 10px 26px rgba(15,23,42,.075)!important;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;color:var(--text)!important;text-decoration:none!important;}
.archive-card:hover{transform:translateY(-2px)!important;box-shadow:0 14px 34px rgba(15,23,42,.10)!important;border-color:rgba(37,99,235,.22)!important;}
.archive-thumb{display:block!important;height:156px!important;background:#eef6ff!important;overflow:hidden!important;}
.archive-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .25s ease!important;}
.archive-card:hover .archive-thumb img{transform:scale(1.035)!important;}
.archive-body{padding:13px!important;min-width:0!important;}
.archive-tag{display:inline-flex!important;align-items:center!important;max-width:100%!important;margin:0 0 8px!important;padding:4px 8px!important;border-radius:999px!important;background:#eef6ff!important;color:var(--blue)!important;font-size:10px!important;line-height:1.1!important;font-weight:600!important;text-decoration:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.archive-body h2{margin:0 0 7px!important;font-size:15px!important;line-height:1.35!important;font-weight:600!important;}
.archive-body h2 a{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;color:var(--text)!important;text-decoration:none!important;}
.archive-body h2 a:hover{color:var(--blue)!important;}
.archive-body p{margin:0 0 9px!important;color:#64748b!important;font-size:12px!important;line-height:1.45!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.archive-meta{font-size:11px!important;color:#7c8490!important;font-weight:500!important;}
.archive-cat-list{display:flex!important;flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important;list-style:none!important;}
.archive-cat-list li{margin:0!important;padding:0!important;list-style:none!important;}
.archive-cat-list a{display:flex!important;justify-content:space-between!important;gap:12px!important;padding:10px 0!important;border-bottom:1px solid var(--line)!important;color:var(--text)!important;text-decoration:none!important;font-size:13px!important;}
.archive-cat-list a:hover{color:var(--blue)!important;}
.archive-cat-list em{font-style:normal!important;color:#94a3b8!important;}

@media(max-width:1120px){
  .tgc-archive-layout{grid-template-columns:1fr!important;}
  .archive-sidebar{position:static!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
}
@media(max-width:760px){
  .container,.tgc-wrap{width:calc(100% - 24px)!important;}
  .tgc-archive-layout{grid-template-columns:1fr!important;gap:16px!important;}
  .archive-card-grid,.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  .archive-thumb{height:96px!important;}
  .archive-body{padding:8px!important;}
  .archive-tag{font-size:9px!important;padding:3px 6px!important;margin-bottom:6px!important;}
  .archive-body h2{font-size:12px!important;line-height:1.28!important;margin-bottom:5px!important;}
  .archive-body p{font-size:10.5px!important;line-height:1.34!important;margin-bottom:6px!important;-webkit-line-clamp:2!important;}
  .archive-meta{font-size:10px!important;line-height:1.25!important;}
  .archive-sidebar{display:block!important;}
  .archive-sidebar .side-box{margin-bottom:14px!important;}
  .tgc-breadcrumb{border-radius:12px!important;padding:8px 9px!important;gap:5px!important;font-size:11px!important;}
  .tgc-breadcrumb a{max-width:118px!important;}
  .tgc-breadcrumb .current{max-width:150px!important;}

  /* Trang chủ: chỉ ép các cụm card/tin nhỏ thành 2 cột; KHÔNG ép hero, CTA, video lớn, sidebar lớn */
  body.home .card-grid,
  body.home .news-card-grid,
  body.home .topic-row{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;
  }
  body.home .news-card-grid .post-card,
  body.home .card-grid .post-card{
    display:block!important;grid-template-columns:none!important;min-height:0!important;border-radius:10px!important;overflow:hidden!important;
  }
  body.home .news-card-grid .post-img,
  body.home .card-grid .post-img{display:block!important;height:92px!important;min-height:92px!important;width:100%!important;}
  body.home .news-card-grid .post-img img,
  body.home .card-grid .post-img img{width:100%!important;height:100%!important;object-fit:cover!important;}
  body.home .news-card-grid .post-body,
  body.home .card-grid .post-body{padding:8px!important;}
  body.home .news-card-grid .post-body h3,
  body.home .card-grid .post-body h3{font-size:12px!important;line-height:1.28!important;margin:0 0 4px!important;}
  body.home .news-card-grid .post-body h3 a,
  body.home .card-grid .post-body h3 a{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  body.home .news-card-grid .post-body p,
  body.home .card-grid .post-body p{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;font-size:10.5px!important;line-height:1.35!important;margin:0 0 5px!important;}
  body.home .news-card-grid .meta,
  body.home .card-grid .meta{font-size:10px!important;line-height:1.25!important;}
  body.home .post-img .tag{font-size:9px!important;left:6px!important;bottom:6px!important;padding:3px 6px!important;}

  body.home .top-grid,
  body.home .content-grid,
  body.home .hero-area,
  body.home .two-col,
  body.home .authors-video,
  body.home .video-layout,
  body.home .cta-row,
  body.home .right-sidebar{grid-template-columns:1fr!important;}
  body.home .category-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  body.home .cat-icon{min-height:68px!important;font-size:10px!important;gap:6px!important;padding:6px 4px!important;}
  body.home .cat-icon i{font-size:18px!important;}
  .footer-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 14px!important;align-items:start!important;}
  .footer-grid > div:first-child{grid-column:1 / -1!important;}
  footer h4{font-size:12px!important;margin-bottom:9px!important;}
  footer ul{font-size:11px!important;gap:6px!important;}
  .footer-about{font-size:11px!important;line-height:1.5!important;}
  .footer-menu-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px 10px!important;}
}
@media(max-width:390px){
  .archive-card-grid,.archive-grid{gap:8px!important;}
  .archive-thumb{height:86px!important;}
  body.home .news-card-grid .post-img,body.home .card-grid .post-img{height:86px!important;min-height:86px!important;}
}


/* === dot vn Studio v7: MOBILE 2-COLUMN HARD FIX (safe selectors) ===
   - Archive/category: always 2-column article cards on mobile.
   - Homepage: only small icon grids + post/news/topic thumbnail grids are 2 columns.
   - Structural blocks (hero, banner, video layout, sidebar wrappers) stay 1 column.
*/
@media (max-width:760px){
  /* 1) Trang danh mục/archive: chắc chắn 2 cột */
  body.archive .archive-card-grid,
  body.archive .archive-grid,
  body.category .archive-card-grid,
  body.category .archive-grid,
  .tgc-archive-page .archive-card-grid,
  .tgc-archive-page .archive-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    align-items:stretch!important;
  }
  body.archive .archive-card,
  body.category .archive-card,
  .tgc-archive-page .archive-card{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    width:auto!important;
    margin:0!important;
    border-radius:12px!important;
    background:#fff!important;
    border:1px solid var(--line)!important;
    box-shadow:0 8px 22px rgba(15,23,42,.075)!important;
    overflow:hidden!important;
  }
  body.archive .archive-thumb,
  body.category .archive-thumb,
  .tgc-archive-page .archive-thumb{
    display:block!important;
    width:100%!important;
    height:88px!important;
    min-height:88px!important;
    overflow:hidden!important;
    background:#eef6ff!important;
  }
  body.archive .archive-thumb img,
  body.category .archive-thumb img,
  .tgc-archive-page .archive-thumb img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  body.archive .archive-body,
  body.category .archive-body,
  .tgc-archive-page .archive-body{
    padding:8px!important;
    min-width:0!important;
    flex:1 1 auto!important;
  }
  body.archive .archive-tag,
  body.category .archive-tag,
  .tgc-archive-page .archive-tag{
    max-width:100%!important;
    font-size:9px!important;
    line-height:1!important;
    padding:3px 6px!important;
    margin:0 0 5px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.archive .archive-body h2,
  body.category .archive-body h2,
  .tgc-archive-page .archive-body h2{
    font-size:12px!important;
    line-height:1.28!important;
    margin:0 0 5px!important;
    font-weight:600!important;
  }
  body.archive .archive-body h2 a,
  body.category .archive-body h2 a,
  .tgc-archive-page .archive-body h2 a{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  body.archive .archive-body p,
  body.category .archive-body p,
  .tgc-archive-page .archive-body p{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    font-size:10.5px!important;
    line-height:1.34!important;
    margin:0 0 6px!important;
  }
  body.archive .archive-meta,
  body.category .archive-meta,
  .tgc-archive-page .archive-meta{
    font-size:9.5px!important;
    line-height:1.25!important;
  }

  /* 2) Trang chủ: icon/category grid ép 2 cột, không 4 cột */
  .edustory-front-home .category-row,
  body.front-page .category-row,
  body.home .category-row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .edustory-front-home .cat-icon,
  body.front-page .cat-icon,
  body.home .cat-icon{
    min-height:66px!important;
    padding:8px 6px!important;
    border-radius:10px!important;
    font-size:11px!important;
  }
  .edustory-front-home .cat-icon i,
  body.front-page .cat-icon i,
  body.home .cat-icon i{
    font-size:18px!important;
  }

  /* 3) Trang chủ: chỉ các grid bài viết/thumbnail nhỏ chia 2 cột */
  .edustory-front-home .card-grid,
  .edustory-front-home .news-card-grid,
  .edustory-front-home .topic-row,
  body.front-page .card-grid,
  body.front-page .news-card-grid,
  body.front-page .topic-row,
  body.home .card-grid,
  body.home .news-card-grid,
  body.home .topic-row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    align-items:stretch!important;
  }
  .edustory-front-home .card-grid > .post-card,
  .edustory-front-home .news-card-grid > .post-card,
  body.front-page .card-grid > .post-card,
  body.front-page .news-card-grid > .post-card,
  body.home .card-grid > .post-card,
  body.home .news-card-grid > .post-card{
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:none!important;
    min-height:0!important;
    width:auto!important;
    margin:0!important;
    border-radius:11px!important;
    overflow:hidden!important;
    box-shadow:0 8px 20px rgba(15,23,42,.065)!important;
  }
  .edustory-front-home .card-grid > .post-card .post-img,
  .edustory-front-home .news-card-grid > .post-card .post-img,
  body.front-page .card-grid > .post-card .post-img,
  body.front-page .news-card-grid > .post-card .post-img,
  body.home .card-grid > .post-card .post-img,
  body.home .news-card-grid > .post-card .post-img{
    display:block!important;
    width:100%!important;
    height:88px!important;
    min-height:88px!important;
  }
  .edustory-front-home .card-grid > .post-card .post-img img,
  .edustory-front-home .news-card-grid > .post-card .post-img img,
  body.front-page .card-grid > .post-card .post-img img,
  body.front-page .news-card-grid > .post-card .post-img img,
  body.home .card-grid > .post-card .post-img img,
  body.home .news-card-grid > .post-card .post-img img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  .edustory-front-home .card-grid > .post-card .post-body,
  .edustory-front-home .news-card-grid > .post-card .post-body,
  body.front-page .card-grid > .post-card .post-body,
  body.front-page .news-card-grid > .post-card .post-body,
  body.home .card-grid > .post-card .post-body,
  body.home .news-card-grid > .post-card .post-body{
    padding:8px!important;
    min-width:0!important;
  }
  .edustory-front-home .card-grid > .post-card h3,
  .edustory-front-home .news-card-grid > .post-card h3,
  body.front-page .card-grid > .post-card h3,
  body.front-page .news-card-grid > .post-card h3,
  body.home .card-grid > .post-card h3,
  body.home .news-card-grid > .post-card h3{
    font-size:12px!important;
    line-height:1.28!important;
    margin:0 0 5px!important;
  }
  .edustory-front-home .card-grid > .post-card h3 a,
  .edustory-front-home .news-card-grid > .post-card h3 a,
  body.front-page .card-grid > .post-card h3 a,
  body.front-page .news-card-grid > .post-card h3 a,
  body.home .card-grid > .post-card h3 a,
  body.home .news-card-grid > .post-card h3 a{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .edustory-front-home .card-grid > .post-card p,
  .edustory-front-home .news-card-grid > .post-card p,
  body.front-page .card-grid > .post-card p,
  body.front-page .news-card-grid > .post-card p,
  body.home .card-grid > .post-card p,
  body.home .news-card-grid > .post-card p{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    font-size:10.5px!important;
    line-height:1.34!important;
    margin:0 0 5px!important;
  }
  .edustory-front-home .card-grid > .post-card .meta,
  .edustory-front-home .news-card-grid > .post-card .meta,
  body.front-page .card-grid > .post-card .meta,
  body.front-page .news-card-grid > .post-card .meta,
  body.home .card-grid > .post-card .meta,
  body.home .news-card-grid > .post-card .meta{
    font-size:9.5px!important;
    line-height:1.25!important;
  }
  .edustory-front-home .topic-card,
  body.front-page .topic-card,
  body.home .topic-card{
    min-width:0!important;
    width:auto!important;
    border-radius:11px!important;
    overflow:hidden!important;
  }
  .edustory-front-home .topic-card img,
  body.front-page .topic-card img,
  body.home .topic-card img{
    height:86px!important;
    object-fit:cover!important;
  }
  .edustory-front-home .topic-card h4,
  body.front-page .topic-card h4,
  body.home .topic-card h4{
    font-size:12px!important;
    line-height:1.28!important;
  }
  .edustory-front-home .topic-card p,
  body.front-page .topic-card p,
  body.home .topic-card p{
    font-size:10.5px!important;
    line-height:1.34!important;
  }

  /* Structural wrappers giữ 1 cột để không phá layout lớn */
  .edustory-front-home .top-grid,
  .edustory-front-home .content-grid,
  .edustory-front-home .hero-area,
  .edustory-front-home .two-col,
  .edustory-front-home .authors-video,
  .edustory-front-home .video-layout,
  .edustory-front-home .cta-row,
  .edustory-front-home .right-sidebar,
  body.front-page .top-grid,
  body.front-page .content-grid,
  body.front-page .hero-area,
  body.front-page .two-col,
  body.front-page .authors-video,
  body.front-page .video-layout,
  body.front-page .cta-row,
  body.front-page .right-sidebar,
  body.home .top-grid,
  body.home .content-grid,
  body.home .hero-area,
  body.home .two-col,
  body.home .authors-video,
  body.home .video-layout,
  body.home .cta-row,
  body.home .right-sidebar{
    grid-template-columns:1fr!important;
  }
}
@media (max-width:390px){
  body.archive .archive-card-grid,
  body.archive .archive-grid,
  body.category .archive-card-grid,
  body.category .archive-grid,
  .tgc-archive-page .archive-card-grid,
  .tgc-archive-page .archive-grid,
  .edustory-front-home .card-grid,
  .edustory-front-home .news-card-grid,
  .edustory-front-home .topic-row,
  .edustory-front-home .category-row{
    gap:8px!important;
  }
}

/* === dot vn Studio v8: footer menu chỉ dành cho mobile, không lòi ở desktop === */
@media (min-width: 761px){
  footer .footer-menu-nav,
  .footer-menu-nav{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
  }
}
@media (max-width: 760px){
  footer .footer-menu-nav,
  .footer-menu-nav{
    display:block!important;
    visibility:visible!important;
    height:auto!important;
    margin-top:18px!important;
    padding-top:16px!important;
    border-top:1px solid rgba(255,255,255,.18)!important;
    overflow:visible!important;
  }
  footer .footer-menu-list,
  .footer-menu-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px 10px!important;
  }
}


/* === dot vn Studio v9: settings, real video, profile CPT, sidebar navigation === */
.tgc-video-embed{position:relative;width:100%;aspect-ratio:16/9;background:#0f172a;border-radius:12px;overflow:hidden}
.tgc-video-embed iframe,.tgc-video-embed video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}
.real-video-card .tgc-video-embed{height:auto;min-height:260px}
.real-video-card .caption{pointer-events:none}
.video-link-fallback{display:flex;min-height:260px;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--blue),var(--gold));color:#fff;border-radius:12px;overflow:hidden;position:relative}
.sidebar-nav-box .side-title,.side-box .side-title{font-weight:600}
.sidebar-links-grid{display:grid;grid-template-columns:1fr;gap:8px}
.sidebar-link-pill{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);font-size:13px;font-weight:600;box-shadow:0 8px 18px rgba(15,23,42,.035)}
.sidebar-link-pill i{color:var(--blue);font-size:11px}.sidebar-link-pill:hover{color:var(--blue);border-color:rgba(37,99,235,.25)}
.rich-rank h4{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rich-home-sidebar .newsletter-box input,.sidebar .newsletter-box input{width:100%;height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;margin:8px 0;background:#fff}.rich-home-sidebar .newsletter-box button,.sidebar .newsletter-box button{width:100%;height:42px;border:0;border-radius:8px;background:var(--blue);color:#fff;font-weight:600;cursor:pointer}
.author-list .author{min-width:0}.author-list .author img{flex:0 0 54px;width:54px;height:54px;object-fit:cover;border-radius:50%}.author-list .author h4,.author-list .author p{overflow:hidden;text-overflow:ellipsis}.author-list .author p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
@media(max-width:760px){.real-video-card .tgc-video-embed{min-height:190px}.sidebar-links-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sidebar-link-pill{font-size:11px;line-height:1.25;padding:8px}.rich-home-sidebar{display:block!important}.rich-home-sidebar .side-box{margin-bottom:14px!important}}


/* === dot vn Studio v10: footer menu only mobile + video link only === */
@media (min-width:761px){
  footer .footer-menu-nav, .footer-menu-nav{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
}
@media (max-width:760px){
  footer .footer-menu-nav, .footer-menu-nav{
    display:block!important;
    visibility:visible!important;
    height:auto!important;
    overflow:visible!important;
    margin:14px auto 0!important;
    padding:12px 0 0!important;
    border-top:1px solid rgba(255,255,255,.14)!important;
  }
  footer .footer-menu-list, .footer-menu-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px 10px!important;
    margin:0!important;
    padding:0!important;
  }
  footer .footer-menu-list li, .footer-menu-list li{list-style:none!important;margin:0!important;padding:0!important;}
}
.tgc-video-empty{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  gap:10px!important;
  min-height:260px!important;
  background:linear-gradient(135deg,var(--blue),var(--gold))!important;
  color:#fff!important;
  text-align:center!important;
  padding:22px!important;
}
.tgc-video-empty p{margin:0!important;color:#fff!important;font-size:14px!important;}
.tgc-video-empty .play-red{position:static!important;transform:none!important;}

/* === dot vn Studio v11: mobile homepage stable layout repair ===
   Mục tiêu: mobile gọn, không xộc xệch; chỉ 2 cột ở icon/card tin/topic/thumbnail nhỏ.
*/
@media (max-width:760px){
  html,body{overflow-x:hidden!important;}
  .container{width:calc(100% - 24px)!important;max-width:100%!important;}
  .edustory-front-home{padding-top:10px!important;}
  .edustory-front-home *,
  .edustory-front-home *::before,
  .edustory-front-home *::after{box-sizing:border-box!important;}

  /* Khối lớn giữ 1 cột sạch */
  .edustory-front-home .top-grid,
  .edustory-front-home .content-grid,
  .edustory-front-home .hero-area,
  .edustory-front-home .two-col,
  .edustory-front-home .authors-video,
  .edustory-front-home .video-layout,
  .edustory-front-home .cta-row,
  body.home .top-grid,
  body.home .content-grid,
  body.home .hero-area,
  body.home .two-col,
  body.home .authors-video,
  body.home .video-layout,
  body.home .cta-row,
  body.front-page .top-grid,
  body.front-page .content-grid,
  body.front-page .hero-area,
  body.front-page .two-col,
  body.front-page .authors-video,
  body.front-page .video-layout,
  body.front-page .cta-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    align-items:start!important;
  }

  .edustory-front-home .section{margin-bottom:20px!important;}
  .edustory-front-home .section-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    margin-bottom:10px!important;
  }
  .edustory-front-home .section-title{
    font-size:15px!important;
    line-height:1.25!important;
    letter-spacing:0!important;
  }
  .edustory-front-home .view-more{font-size:11px!important;white-space:nowrap!important;}
  .edustory-front-home .view-more i{margin-left:5px!important;}

  /* Hero gọn, không cao quá */
  .edustory-front-home .hero{
    min-height:258px!important;
    height:258px!important;
    border-radius:12px!important;
  }
  .edustory-front-home .hero-copy{left:16px!important;right:16px!important;bottom:16px!important;}
  .edustory-front-home .hero-copy .label{font-size:9px!important;padding:4px 7px!important;margin-bottom:7px!important;}
  .edustory-front-home .hero h1{
    font-size:20px!important;
    line-height:1.22!important;
    margin:0 0 7px!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .edustory-front-home .hero p{
    font-size:12px!important;
    line-height:1.42!important;
    margin:0 0 9px!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .edustory-front-home .hero-dots{display:none!important;}
  .edustory-front-home .read-more{font-size:11px!important;padding:7px 10px!important;}

  /* Tin phụ ngay cạnh hero: 2 cột dạng card nhỏ */
  .edustory-front-home .story-stack{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .edustory-front-home .stack-card{
    display:flex!important;
    flex-direction:column-reverse!important;
    gap:0!important;
    min-height:0!important;
    padding:0!important;
    border-radius:11px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:0 8px 20px rgba(15,23,42,.06)!important;
  }
  .edustory-front-home .stack-card > div{padding:8px!important;min-width:0!important;}
  .edustory-front-home .stack-card img{
    width:100%!important;
    height:88px!important;
    border-radius:0!important;
    object-fit:cover!important;
  }
  .edustory-front-home .stack-card .tag{font-size:8.5px!important;padding:3px 5px!important;margin-bottom:5px!important;}
  .edustory-front-home .stack-card h3{
    font-size:12px!important;
    line-height:1.28!important;
    margin:0!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .edustory-front-home .stack-card p,
  .edustory-front-home .stack-card .arrow-circle{display:none!important;}

  /* Sidebar/top featured nếu xuất hiện trên mobile: 2 cột gọn */
  .edustory-front-home .right-sidebar{
    display:block!important;
    min-width:0!important;
  }
  .edustory-front-home .right-sidebar .side-box{
    padding:12px!important;
    border-radius:12px!important;
    margin-bottom:14px!important;
  }
  .edustory-front-home .right-sidebar .side-title{font-size:14px!important;margin-bottom:10px!important;}
  .edustory-front-home .featured-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .edustory-front-home .featured-item{
    display:flex!important;
    flex-direction:column!important;
    gap:7px!important;
    align-items:stretch!important;
    min-width:0!important;
    padding:0!important;
  }
  .edustory-front-home .featured-item img{
    width:100%!important;
    height:82px!important;
    border-radius:8px!important;
    object-fit:cover!important;
  }
  .edustory-front-home .featured-item h4{
    font-size:11.5px!important;
    line-height:1.28!important;
    margin:0 0 3px!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .edustory-front-home .featured-item .meta{font-size:9.5px!important;}

  /* Icon/category homepage: luôn 2 cột */
  .edustory-front-home .category-row,
  body.home .category-row,
  body.front-page .category-row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    padding:8px!important;
    border-radius:12px!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    margin-top:14px!important;
  }
  .edustory-front-home .cat-icon,
  body.home .cat-icon,
  body.front-page .cat-icon{
    min-height:64px!important;
    border:1px solid var(--line)!important;
    border-radius:11px!important;
    background:#fff!important;
    box-shadow:0 7px 18px rgba(15,23,42,.045)!important;
    font-size:11px!important;
    line-height:1.2!important;
    padding:8px 6px!important;
    gap:6px!important;
  }
  .edustory-front-home .cat-icon i{font-size:18px!important;}

  /* Các grid tin thumbnail/card: 2 cột nhưng card gọn, đều */
  .edustory-front-home .card-grid,
  .edustory-front-home .news-card-grid,
  body.home .card-grid,
  body.home .news-card-grid,
  body.front-page .card-grid,
  body.front-page .news-card-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    align-items:stretch!important;
  }
  .edustory-front-home .card-grid > .post-card,
  .edustory-front-home .news-card-grid > .post-card,
  body.home .card-grid > .post-card,
  body.home .news-card-grid > .post-card,
  body.front-page .card-grid > .post-card,
  body.front-page .news-card-grid > .post-card{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    width:auto!important;
    min-height:0!important;
    border-radius:12px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:0 8px 20px rgba(15,23,42,.06)!important;
  }
  .edustory-front-home .card-grid > .post-card .post-img,
  .edustory-front-home .news-card-grid > .post-card .post-img,
  body.home .card-grid > .post-card .post-img,
  body.home .news-card-grid > .post-card .post-img,
  body.front-page .card-grid > .post-card .post-img,
  body.front-page .news-card-grid > .post-card .post-img{
    display:block!important;
    width:100%!important;
    height:92px!important;
    min-height:92px!important;
    flex:0 0 auto!important;
  }
  .edustory-front-home .post-img img{width:100%!important;height:100%!important;object-fit:cover!important;}
  .edustory-front-home .post-img .tag{
    left:6px!important;
    bottom:6px!important;
    max-width:calc(100% - 12px)!important;
    font-size:8.5px!important;
    padding:3px 5px!important;
  }
  .edustory-front-home .post-body{padding:8px!important;min-width:0!important;}
  .edustory-front-home .post-body h3{
    font-size:12px!important;
    line-height:1.28!important;
    margin:0 0 5px!important;
  }
  .edustory-front-home .post-body h3 a{
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .edustory-front-home .post-body p{
    font-size:10.5px!important;
    line-height:1.35!important;
    margin:0 0 5px!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .edustory-front-home .post-body .meta{font-size:9.5px!important;line-height:1.25!important;}

  /* Topic/icon ảnh nhỏ: 2 cột */
  .edustory-front-home .topic-row,
  body.home .topic-row,
  body.front-page .topic-row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .edustory-front-home .topic-card{
    min-width:0!important;
    background:#fff!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    padding:8px!important;
    box-shadow:0 8px 20px rgba(15,23,42,.045)!important;
  }
  .edustory-front-home .topic-card img{height:82px!important;border-radius:9px!important;margin-bottom:7px!important;}
  .edustory-front-home .topic-card h4{font-size:12px!important;line-height:1.28!important;margin:0 0 4px!important;}
  .edustory-front-home .topic-card p{font-size:10.5px!important;line-height:1.35!important;margin:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}

  /* Box danh sách / tác giả / video sạch lại */
  .edustory-front-home .list-box,
  .edustory-front-home .topic-scroll,
  .edustory-front-home .video-podcast{
    padding:12px!important;
    border-radius:12px!important;
  }
  .edustory-front-home .number-list li{
    grid-template-columns:22px minmax(0,1fr) 48px!important;
    gap:8px!important;
    font-size:11px!important;
  }
  .edustory-front-home .author{
    grid-template-columns:42px minmax(0,1fr) 62px!important;
    gap:8px!important;
  }
  .edustory-front-home .author img{width:42px!important;height:42px!important;}
  .edustory-front-home .author h4{font-size:12px!important;line-height:1.25!important;}
  .edustory-front-home .author p{font-size:10.5px!important;-webkit-line-clamp:2!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  .edustory-front-home .follow{height:28px!important;font-size:10px!important;}
  .edustory-front-home .video-main{min-height:0!important;border-radius:12px!important;}
  .edustory-front-home .real-video-card .tgc-video-embed{min-height:0!important;aspect-ratio:16/9!important;border-radius:12px!important;}
  .edustory-front-home .video-main .caption{
    position:static!important;
    max-width:none!important;
    padding:9px!important;
    background:#fff!important;
    color:var(--text)!important;
  }
  .edustory-front-home .video-main h3{font-size:13px!important;line-height:1.3!important;margin:0 0 4px!important;}
  .edustory-front-home .video-main p{font-size:11px!important;line-height:1.35!important;color:var(--muted)!important;}
  .edustory-front-home .video-time{display:none!important;}
  .edustory-front-home .small-videos{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;}
  .edustory-front-home .small-video{display:grid!important;grid-template-columns:82px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;}

  /* CTA và footer sạch */
  .edustory-front-home .cta{grid-template-columns:1fr!important;min-height:0!important;padding:16px!important;border-radius:12px!important;}
  .edustory-front-home .cta h3{font-size:16px!important;line-height:1.25!important;}
  footer .footer-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 14px!important;}
  footer .footer-grid > div:first-child{grid-column:1 / -1!important;}
}
@media (max-width:390px){
  .edustory-front-home .card-grid,
  .edustory-front-home .news-card-grid,
  .edustory-front-home .topic-row,
  .edustory-front-home .story-stack,
  .edustory-front-home .featured-list,
  .edustory-front-home .category-row{gap:8px!important;}
  .edustory-front-home .card-grid > .post-card .post-img,
  .edustory-front-home .news-card-grid > .post-card .post-img{height:86px!important;min-height:86px!important;}
}

/* === Logo natural aspect ratio fix v12 ===
   Desktop: custom/uploaded logo is 368px wide and keeps natural height.
   Mobile: logo scales down by width and keeps natural height. */
@media (min-width:1121px){
  .header-main{
    grid-template-columns:368px minmax(0,1fr) 360px!important;
  }
  .header .logo{
    width:180px!important;
    max-width:180px!important;
    min-width:0!important;
    flex:0 0 368px!important;
    display:flex!important;
    align-items:center!important;
  }
  .header .custom-logo,
  .header .logo > img{
    width:180px!important;
    max-width:180px!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    display:block!important;
  }
}
@media (max-width:1120px){
  .header .custom-logo,
  .header .logo > img{
    width:min(368px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    display:block!important;
  }
}
@media (max-width:760px){
  .header .logo{
    width:auto!important;
    max-width:132px!important;
    flex:0 1 132px!important;
  }
  .header .custom-logo,
  .header .logo > img{
    width:min(128px,28vw)!important;
    max-width:128px!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
  }
}



/* NGON.com.vn imported homepage CSS */

    :root{
      --gold:#b17a31;
      --gold2:#d7a351;
      --gold3:#f4e4c8;
      --dark:#0c1115;
      --black:#07090b;
      --text:#142033;
      --muted:#667287;
      --line:#e8e1d8;
      --paper:#faf8f4;
      --white:#fff;
      --red:#b92a22;
      --green:#2b8c57;
      --shadow:0 14px 34px rgba(40,30,18,.08);
      --container:1250px;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      background:var(--paper);
      color:var(--text);
      font-size:14px;
      line-height:1.5;
      font-weight:400;
    }
    a{text-decoration:none;color:inherit}
    img{display:block;max-width:100%}
    input,button{font-family:Inter,sans-serif}
    h1,h2,h3,h4,b,strong{font-weight:600}
    .container{width:min(var(--container),calc(100% - 52px));margin:0 auto}

    .topbar{
      height:34px;
      background:linear-gradient(90deg,#060708,#141719);
      color:#d9d2c8;
      font-size:11px;
    }
    .topbar .container{
      height:34px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
    }
    .top-left,.top-right{display:flex;align-items:center;gap:22px;white-space:nowrap}
    .topbar a{display:flex;align-items:center;gap:7px}
    .topbar i{color:#fff}
    .top-login{
      height:24px;
      padding:0 12px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.18);
      color:#fff;
      font-weight:600;
    }
    .top-sign{
      height:24px;
      padding:0 13px;
      border-radius:999px;
      background:linear-gradient(135deg,#c89143,#ebc176);
      color:#17100a;
      font-weight:600;
    }

    .header{
      background:#fff;
      border-bottom:1px solid var(--line);
    }
    .header-inner{
      min-height:92px;
      display:grid;
      grid-template-columns:300px 1fr 330px;
      gap:28px;
      align-items:center;
    }
    .logo{
      display:flex;
      flex-direction:column;
      align-items:flex-start;
      line-height:1;
    }
    .logo strong{
      display:block;
      color:#c29347;
      font-size:38px;
      letter-spacing:-1.5px;
      text-transform:uppercase;
      line-height:.95;
    }
    .logo strong span{
      color:#1b1d21;
      font-size:18px;
      text-transform:none;
      letter-spacing:-.5px;
    }
    .logo small{
      display:block;
      margin-top:8px;
      color:#4d4a45;
      font-size:10.5px;
      text-transform:uppercase;
      font-weight:600;
      letter-spacing:.45px;
    }
    .search{
      justify-self:center;
      width:min(510px,100%);
      height:46px;
      border:1px solid #e5d9cb;
      border-radius:6px;
      display:grid;
      grid-template-columns:1fr 48px;
      overflow:hidden;
      background:#fff;
      box-shadow:0 8px 18px rgba(40,30,18,.035);
    }
    .search input{
      border:0;
      outline:0;
      padding:0 18px;
      color:#706f6f;
      font-size:12px;
    }
    .search button{
      border:0;
      color:#fff;
      background:linear-gradient(135deg,#8c5b22,#b47c34);
      font-size:17px;
      cursor:pointer;
    }
    .head-actions{
      display:flex;
      justify-content:flex-end;
      align-items:center;
      gap:26px;
    }
    .head-action{
      display:grid;
      grid-template-columns:38px 1fr;
      gap:10px;
      align-items:center;
      min-width:132px;
    }
    .head-action i{
      width:38px;height:38px;border-radius:50%;
      display:flex;align-items:center;justify-content:center;
      color:#b27b32;
      background:#fff6e7;
      font-size:18px;
      border:1px solid #f0dfc1;
    }
    .head-action b{display:block;color:#142033;font-size:12.5px}
    .head-action span{display:block;color:#7b736b;font-size:10.5px}

    .nav-wrap{
      background:#fff;
      border-bottom:1px solid var(--line);
      box-shadow:0 8px 22px rgba(40,30,18,.035);
      position:sticky;
      top:0;
      z-index:40;
    }
    .nav{
      min-height:52px;
      display:flex;
      align-items:center;
      flex-wrap:wrap;
      gap:0;
      overflow:visible;
      white-space:normal;
    }
    .nav a{
      min-height:52px;
      padding:0 18px;
      display:flex;
      align-items:center;
      color:#141820;
      font-size:11.5px;
      text-transform:uppercase;
      font-weight:600;
      border-right:1px solid #efe9e1;
      flex:0 0 auto;
    }
    .nav a.active{color:#b17a31}
    .nav a.menu{
      margin-left:auto;
      border-right:0;
      font-size:18px;
      padding-right:4px;
    }

    main{padding-top:16px}
    .hero-grid{
      display:grid;
      grid-template-columns:1.32fr .95fr;
      gap:16px;
      margin-bottom:20px;
    }
    .hero-main{
      min-height:392px;
      position:relative;
      overflow:hidden;
      border-radius:8px;
      color:#fff;
      background:#111;
      box-shadow:var(--shadow);
    }
    .hero-main img{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .hero-main:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.22) 62%,rgba(0,0,0,.18));
      z-index:1;
    }
    .hero-copy{
      position:absolute;
      left:28px;
      bottom:30px;
      z-index:2;
      max-width:560px;
    }
    .eyebrow{
      display:inline-flex;
      height:22px;
      align-items:center;
      color:#fff;
      font-size:10px;
      text-transform:uppercase;
      font-weight:600;
      margin-bottom:12px;
    }
    .hero-copy h1{
      margin:0 0 13px;
      color:#fff;
      font-size:34px;
      line-height:1.22;
      letter-spacing:-.7px;
    }
    .hero-copy p{
      margin:0 0 18px;
      color:#efe9e1;
      max-width:510px;
      font-size:12.5px;
      line-height:1.65;
    }
    .btn{
      height:38px;
      padding:0 18px;
      border-radius:5px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      background:linear-gradient(135deg,#9f6c2a,#c69144);
      color:#fff;
      font-size:12px;
      font-weight:600;
    }
    .dots{
      position:absolute;
      right:28px;
      bottom:24px;
      display:flex;
      gap:8px;
      z-index:3;
    }
    .dots span{
      width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);
    }
    .dots span.active{width:24px;border-radius:99px;background:#fff}

    .side-stack{
      display:grid;
      grid-template-rows:repeat(3,1fr);
      gap:12px;
    }
    .side-news{
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      box-shadow:0 9px 20px rgba(40,30,18,.035);
      display:grid;
      grid-template-columns:152px 1fr;
      overflow:hidden;
      min-height:122px;
    }
    .side-news img{
      width:152px;
      height:100%;
      object-fit:cover;
    }
    .side-body{padding:15px}
    .tag{
      height:21px;
      display:inline-flex;
      align-items:center;
      padding:0 8px;
      border-radius:4px;
      background:#fff3df;
      color:#a56e28;
      font-size:9px;
      text-transform:uppercase;
      font-weight:600;
      margin-bottom:7px;
    }
    .side-body h3{
      margin:0 0 9px;
      color:#142033;
      font-size:14.5px;
      line-height:1.35;
    }
    .meta{
      color:#7d7b79;
      font-size:10px;
      display:flex;
      gap:15px;
      align-items:center;
    }

    .cat-row{
      display:grid;
      grid-template-columns:repeat(8,1fr);
      gap:0;
      background:#fff;
      border:1px solid var(--line);
      border-radius:8px;
      box-shadow:0 9px 22px rgba(40,30,18,.04);
      overflow:hidden;
      margin-bottom:30px;
    }
    .cat{
      min-height:92px;
      border-right:1px solid var(--line);
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:10px;
      color:#1f2b3b;
      font-size:10.5px;
      font-weight:600;
      text-align:center;
    }
    .cat:last-child{border-right:0}
    .cat i{
      width:42px;height:42px;border-radius:50%;
      display:flex;align-items:center;justify-content:center;
      color:#ad772d;
      font-size:20px;
      border:1px solid #ead6b8;
      background:#fffaf2;
    }

    .layout{
      display:grid;
      grid-template-columns:minmax(0,1fr) 350px;
      gap:22px;
      align-items:start;
    }
    .section{margin-bottom:30px}
    .section-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      margin-bottom:16px;
    }
    .section-title{
      margin:0;
      color:#a06b26;
      font-size:22px;
      line-height:1.25;
      text-transform:uppercase;
      letter-spacing:-.25px;
    }
    .view-more{
      color:#a56e28;
      font-size:12px;
      font-weight:600;
      display:flex;
      align-items:center;
      gap:7px;
    }

    .featured-grid{
      display:grid;
      grid-template-columns:1.13fr .87fr;
      gap:18px;
      background:#fff;
      border:1px solid var(--line);
      border-radius:10px;
      box-shadow:0 10px 24px rgba(40,30,18,.035);
      padding:16px;
    }
    .big-post{
      border-radius:8px;
      overflow:hidden;
      position:relative;
      min-height:340px;
      color:#fff;
      background:#111;
    }
    .big-post img{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .big-post:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,.86));
      z-index:1;
    }
    .big-post-content{
      position:absolute;
      left:18px;
      right:18px;
      bottom:18px;
      z-index:2;
    }
    .big-post h3{
      margin:0 0 10px;
      color:#fff;
      font-size:22px;
      line-height:1.35;
    }
    .big-post p{
      margin:0 0 12px;
      color:#efe9e1;
      font-size:12.5px;
      line-height:1.6;
    }
    .vertical-list{
      display:grid;
      gap:10px;
    }
    .mini-news{
      display:grid;
      grid-template-columns:112px 1fr;
      gap:12px;
      align-items:center;
      padding-bottom:10px;
      border-bottom:1px solid var(--line);
    }
    .mini-news:last-child{border-bottom:0;padding-bottom:0}
    .mini-news img{
      width:112px;
      height:76px;
      object-fit:cover;
      border-radius:7px;
    }
    .mini-news h4{
      margin:0 0 7px;
      color:#142033;
      font-size:12.5px;
      line-height:1.35;
    }
    .mini-news p{
      margin:0;
      color:#7d7b79;
      font-size:10px;
      display:flex;
      gap:12px;
    }

    .sidebar-card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:10px;
      box-shadow:0 10px 24px rgba(40,30,18,.035);
      padding:18px;
      margin-bottom:18px;
    }
    .sidebar-card h3{
      margin:0 0 12px;
      color:#a06b26;
      font-size:18px;
      line-height:1.3;
      text-transform:uppercase;
    }
    .newsletter-card{
      min-height:310px;
      background:
        linear-gradient(180deg,#fff,#fff7eb);
      overflow:hidden;
      position:relative;
    }
    .newsletter-card p{
      margin:0 0 14px;
      color:#6a625a;
      font-size:12px;
      line-height:1.55;
    }
    .newsletter-form{
      height:40px;
      display:grid;
      grid-template-columns:1fr 92px;
      border:1px solid #e3d5c5;
      border-radius:5px;
      overflow:hidden;
      margin-bottom:14px;
      background:#fff;
    }
    .newsletter-form input{
      border:0;outline:0;padding:0 12px;color:#706f6f;font-size:11px;
    }
    .newsletter-form button{
      border:0;background:#9f6c2a;color:#fff;font-size:11px;font-weight:600;
    }
    .newsletter-card img{
      width:100%;
      height:140px;
      object-fit:cover;
      border-radius:8px;
    }

    .popular-item{
      display:grid;
      grid-template-columns:28px 54px 1fr;
      gap:10px;
      align-items:center;
      padding:10px 0;
      border-bottom:1px solid var(--line);
    }
    .popular-item:last-child{border-bottom:0}
    .popular-item b{
      width:23px;height:23px;border-radius:50%;
      background:#b17a31;color:#fff;
      display:flex;align-items:center;justify-content:center;
      font-size:11px;
    }
    .popular-item img{
      width:54px;height:42px;border-radius:5px;object-fit:cover;
    }
    .popular-item h4{
      margin:0 0 4px;
      font-size:11.5px;
      line-height:1.35;
      color:#142033;
    }
    .popular-item p{margin:0;color:#7d7b79;font-size:10px}

    .brand-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:10px;
    }
    .brand{
      height:70px;
      border:1px solid var(--line);
      border-radius:8px;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#181818;
      background:#fff;
      font-family:Georgia,serif;
      font-size:24px;
      font-weight:600;
      text-align:center;
    }
    .brand:nth-child(2){font-size:34px}
    .brand:nth-child(4){font-size:28px}
    .brand:nth-child(5){color:#d26c2b}

    .deal{
      min-height:102px;
      border-radius:8px;
      padding:16px;
      display:flex;
      flex-direction:column;
      justify-content:center;
      color:#fff;
      background:
        linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.18)),
        url("https://images.unsplash.com/photo-1607083206869-4c7672e72a8a?auto=format&fit=crop&w=420&q=85");
      background-size:cover;
      background-position:center;
      margin-bottom:12px;
    }
    .deal:nth-child(2){
      background:
        linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.2)),
        url("https://images.unsplash.com/photo-1524592094714-0f0654e20314?auto=format&fit=crop&w=420&q=85");
      background-size:cover;background-position:center;
    }
    .deal h4{
      margin:0 0 8px;
      color:#fff;
      font-size:15px;
      line-height:1.3;
    }
    .deal span{
      width:max-content;
      height:24px;
      padding:0 10px;
      display:flex;align-items:center;
      border-radius:999px;
      background:#b17a31;
      color:#fff;
      font-size:10px;
      font-weight:600;
    }

    .category-cards{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
    }
    .category-card{
      min-height:210px;
      border-radius:9px;
      overflow:hidden;
      position:relative;
      background:#111;
      color:#fff;
      box-shadow:0 10px 24px rgba(40,30,18,.06);
    }
    .category-card img{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .category-card:after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.8));
    }
    .category-card div{
      position:absolute;
      left:16px;
      right:16px;
      bottom:16px;
      z-index:2;
    }
    .category-card h3{
      margin:0 0 5px;
      color:#fff;
      font-size:15px;
      line-height:1.3;
    }
    .category-card p{
      margin:0 0 12px;
      color:#eadccd;
      font-size:11px;
    }
    .small-btn{
      height:28px;
      padding:0 11px;
      display:inline-flex;
      align-items:center;
      border:1px solid rgba(215,163,81,.75);
      color:#ffd895;
      border-radius:4px;
      font-size:10px;
      font-weight:600;
    }

    .latest-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
    }
    .post-card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:10px;
      overflow:hidden;
      box-shadow:0 10px 24px rgba(40,30,18,.035);
    }
    .post-card img{
      width:100%;
      height:135px;
      object-fit:cover;
    }
    .post-card .body{padding:12px}
    .post-card h3{
      margin:0 0 10px;
      color:#142033;
      font-size:12.5px;
      line-height:1.38;
    }
    .filters{display:flex;gap:8px;flex-wrap:wrap}
    .filters span{
      height:28px;
      padding:0 13px;
      display:flex;align-items:center;
      border-radius:999px;
      background:#fff;
      border:1px solid var(--line);
      color:#6f675e;
      font-size:11px;
      font-weight:500;
    }
    .filters span.active{background:#141414;color:#fff;border-color:#141414}

    .video-grid{
      display:grid;
      grid-template-columns:repeat(5,1fr);
      gap:16px;
      background:#fff;
      border:1px solid var(--line);
      border-radius:10px;
      box-shadow:0 10px 24px rgba(40,30,18,.035);
      padding:16px;
    }
    .video-card .thumb{
      height:130px;
      border-radius:8px;
      overflow:hidden;
      position:relative;
      background:#111;
    }
    .video-card img{
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .play{
      position:absolute;
      left:50%;
      top:50%;
      transform:translate(-50%,-50%);
      width:48px;height:48px;border-radius:50%;
      background:rgba(255,255,255,.88);
      color:#9f6c2a;
      display:flex;align-items:center;justify-content:center;
      font-size:17px;
    }
    .duration{
      position:absolute;
      right:6px;bottom:6px;
      height:20px;padding:0 6px;border-radius:4px;
      display:flex;align-items:center;
      background:rgba(0,0,0,.68);color:#fff;font-size:9px;
    }
    .video-card h3{
      margin:10px 0 0;
      color:#142033;
      font-size:12px;
      line-height:1.35;
    }

    footer{
      background:#fff;
      border-top:1px solid var(--line);
      padding:34px 0 18px;
      color:#615c55;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.65fr 1fr 1fr 1fr 1.2fr;
      gap:42px;
      align-items:start;
    }
    .footer-logo strong{
      display:block;
      color:#c29347;
      font-size:30px;
      letter-spacing:-1px;
      text-transform:uppercase;
      line-height:1;
    }
    .footer-logo strong span{
      color:#1b1d21;
      font-size:15px;
      text-transform:none;
    }
    .footer-logo small{
      display:block;
      margin-top:6px;
      color:#4d4a45;
      font-size:10px;
      text-transform:uppercase;
      font-weight:600;
    }
    .footer-about{
      margin:14px 0 18px;
      color:#635c55;
      font-size:12px;
      line-height:1.7;
      max-width:310px;
    }
    .socials{display:flex;gap:10px}
    .socials a{
      width:30px;height:30px;border-radius:50%;
      background:#f1ece5;color:#4c3c2a;
      display:flex;align-items:center;justify-content:center;font-size:12px;
    }
    footer h4{
      margin:0 0 14px;
      color:#201d1a;
      font-size:12px;
      text-transform:uppercase;
    }
    footer ul{
      list-style:none;
      margin:0;
      padding:0;
      display:flex;
      flex-direction:column;
      gap:8px;
      font-size:12px;
    }
    .contact li{display:flex;gap:8px;align-items:flex-start}
    .qr{
      width:86px;height:86px;
      background:
        linear-gradient(90deg,#111 6px,transparent 6px) 0 0/18px 18px,
        linear-gradient(#111 6px,transparent 6px) 0 0/18px 18px,#fff;
      border:6px solid #fff;
      outline:1px solid var(--line);
      border-radius:4px;
      margin-left:auto;
    }
    .copyright{
      margin-top:26px;
      padding-top:16px;
      border-top:1px solid var(--line);
      text-align:center;
      color:#8a837d;
      font-size:11px;
    }

    @media(max-width:1120px){
      .header-inner{grid-template-columns:1fr;gap:16px;padding:16px 0}
      .search{justify-self:center}
      .head-actions{justify-content:center}
      .hero-grid,.layout,.featured-grid{grid-template-columns:1fr}
      .cat-row{grid-template-columns:repeat(4,1fr)}
      .latest-grid,.category-cards,.video-grid{grid-template-columns:repeat(2,1fr)}
      .footer-grid{grid-template-columns:repeat(2,1fr)}
      .nav a.menu{margin-left:0}
    }
    @media(max-width:760px){
      .container{width:calc(100% - 28px)}
      .topbar{display:none}
      .logo strong{font-size:30px}
      .nav{justify-content:flex-start}
      .nav a{min-height:42px;padding:0 10px;font-size:10px}
      .hero-main{min-height:380px}
      .hero-copy{left:20px;right:20px;bottom:24px}
      .hero-copy h1{font-size:26px}
      .side-news,.mini-news,.footer-grid{grid-template-columns:1fr}
      .side-news img,.mini-news img{width:100%;height:180px}
      .cat-row,.latest-grid,.category-cards,.video-grid{grid-template-columns:1fr}
      .post-card img,.video-card .thumb{height:190px}
      .brand-grid{grid-template-columns:repeat(2,1fr)}
      .newsletter-form{grid-template-columns:1fr}
      .newsletter-form button{height:38px}
      .qr{margin-left:0}
    }
  

/* dot vn Studio overrides - NGON.com.vn WordPress */
html{scroll-behavior:smooth}.topbar .top-left,.topbar .top-right{overflow:hidden}.primary-menu{display:flex;align-items:center;flex-wrap:wrap;margin:0;padding:0;list-style:none}.primary-menu li{display:flex}.primary-menu a{min-height:52px;padding:0 18px;display:flex;align-items:center;color:#141820;font-size:11.5px;text-transform:uppercase;font-weight:600;border-right:1px solid #efe9e1}.primary-menu li.current-menu-item>a,.nav>a.active{color:#b17a31}.footer-menu{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin:18px 0 0;padding:0;list-style:none;font-size:12px}.store-row{display:grid;gap:8px}.store{height:36px;border-radius:7px;background:#111;color:#fff;display:flex;align-items:center;gap:8px;padding:0 12px;font-size:10px;width:max-content}.store b{display:block;font-size:11px}.footer-logo-wrap{margin-bottom:14px}.footer-logo-image-link{display:inline-flex!important;align-items:center!important}.site-logo-link{display:inline-flex!important;align-items:center!important}.text-logo-fallback{display:flex!important;flex-direction:column!important;align-items:flex-start!important}.custom-logo,.image-logo,.site-logo img,.site-branding img,.header .logo img,.header-inner .logo img,.footer-logo img,.footer-logo-wrap img,footer .custom-logo,footer .image-logo,.logo.site-logo-link,.site-logo-link,.footer-logo-image-link{width:180px!important;max-width:180px!important;height:auto!important;max-height:none!important;object-fit:contain!important}.header-inner .logo{min-width:0}.footer-logo strong,.text-logo-fallback strong{font-weight:600}.layout a h3,.layout a h4,.video-grid a h3{transition:color .18s}.layout a:hover h3,.layout a:hover h4,.video-grid a:hover h3{color:#a06b26}.newsletter-form button{cursor:pointer}.ngon-home .footer-grid{margin-top:0}@media(max-width:1120px){.header-inner{grid-template-columns:1fr!important}.header-inner .logo,.search{justify-self:center!important}.head-actions{justify-content:center!important;flex-wrap:wrap}.cat-row{grid-template-columns:repeat(4,1fr)!important}.latest-grid,.category-cards,.video-grid{grid-template-columns:repeat(2,1fr)!important}.side-stack{grid-template-rows:none!important}.footer-grid{grid-template-columns:repeat(2,1fr)!important}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}}@media(max-width:760px){.container{width:calc(100% - 28px)!important}.custom-logo,.image-logo,.site-logo img,.site-branding img,.header .logo img,.header-inner .logo img,.footer-logo img,.footer-logo-wrap img,footer .custom-logo,footer .image-logo,.logo.site-logo-link,.site-logo-link,.footer-logo-image-link{width:min(188px,56vw)!important;max-width:min(188px,56vw)!important;height:auto!important}.header-inner{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;padding:14px 0!important}.head-actions{display:none!important}.search{width:100%!important}.nav{overflow-x:auto;flex-wrap:nowrap!important}.nav a,.primary-menu a{white-space:nowrap}.hero-grid{grid-template-columns:1fr!important}.hero-main{min-height:360px!important}.side-stack{grid-template-columns:repeat(2,1fr)!important;display:grid!important}.side-news{grid-template-columns:1fr!important}.side-news img{width:100%!important;height:132px!important}.cat-row{grid-template-columns:repeat(2,1fr)!important}.featured-grid{grid-template-columns:1fr!important}.mini-news{grid-template-columns:92px 1fr!important}.mini-news img{width:92px!important;height:68px!important}.latest-grid,.category-cards,.video-grid,.brand-grid{grid-template-columns:repeat(2,1fr)!important}.post-card img,.video-card .thumb{height:138px!important}.layout{grid-template-columns:1fr!important}.filters{display:none}.footer-grid{grid-template-columns:repeat(2,1fr)!important;gap:22px!important}.store{width:100%;max-width:180px}.topbar{display:none!important}}@media(max-width:390px){.custom-logo,.image-logo,.site-logo img,.site-branding img,.header .logo img,.header-inner .logo img,.footer-logo img,.footer-logo-wrap img,footer .custom-logo,footer .image-logo,.logo.site-logo-link,.site-logo-link,.footer-logo-image-link{width:160px!important;max-width:160px!important;height:auto!important}.side-stack,.latest-grid,.category-cards,.video-grid,.footer-grid{grid-template-columns:1fr!important}.mini-news{grid-template-columns:1fr!important}.mini-news img{width:100%!important;height:150px!important}}


/* === dot vn Studio hard mobile header/logo + collapsed nav + 2-column compact cards v20260702 === */
.tgc-mobile-menu-toggle{display:none!important;}
.tgc-related-posts{margin-top:34px;padding-top:22px;border-top:1px solid var(--line,#e5e7eb)}
.tgc-related-title{margin:0 0 16px;color:var(--text,#111827);font-size:20px;line-height:1.25;font-weight:600;text-transform:uppercase;letter-spacing:-.2px}
.tgc-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tgc-related-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;align-items:center;padding:10px;border:1px solid var(--line,#e5e7eb);border-radius:10px;background:#fff;box-shadow:0 8px 18px rgba(17,24,39,.035)}
.tgc-related-thumb{display:block;width:132px;height:86px;border-radius:8px;overflow:hidden;background:#f3f4f6}.tgc-related-thumb img{width:100%;height:100%;object-fit:cover;display:block}.tgc-related-card h3{margin:0 0 7px;font-size:13px;line-height:1.35;color:var(--text,#111827);font-weight:600}.tgc-related-card h3 a{color:inherit}.tgc-related-meta{font-size:10px;color:var(--muted,#6b7280)}
@media(max-width:760px){
  body .mini-bar, body .topbar{display:none!important;}
  body .header, body .head{position:relative!important;background:#fff!important;z-index:60!important;}
  body .header .container.header-main, body .header .container.header-inner, body .head .container.head-inner{
    width:calc(100% - 18px)!important;margin:0 auto!important;min-height:58px!important;padding:8px 0!important;
    display:grid!important;grid-template-columns:clamp(82px,24vw,108px) minmax(0,1fr) 40px!important;gap:8px!important;align-items:center!important;
  }
  body .header .logo, body .head .logo, body .header a.logo, body .head a.logo,
  body .header .custom-logo-link, body .head .custom-logo-link,
  body .header .logo-image-link, body .head .logo-image-link{
    grid-column:1!important;width:clamp(82px,24vw,108px)!important;max-width:108px!important;min-width:0!important;overflow:hidden!important;
    flex:0 0 auto!important;display:flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;
  }
  body .header .logo img, body .head .logo img,
  body .header img.custom-logo, body .head img.custom-logo,
  body .header img.image-logo, body .head img.image-logo,
  body .header img.header-image-logo, body .head img.header-image-logo,
  body .header .custom-logo-link img, body .head .custom-logo-link img,
  body .header .logo-image-link img, body .head .logo-image-link img{
    width:100%!important;max-width:108px!important;height:auto!important;max-height:44px!important;object-fit:contain!important;display:block!important;
  }
  body .header .logo small, body .head .logo small{display:none!important;}
  body .header .logo strong, body .head .logo strong{font-size:clamp(14px,4.4vw,20px)!important;line-height:1!important;letter-spacing:-.4px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important;}
  body .header .logo strong span, body .head .logo strong span{font-size:.78em!important;}
  body .header .search, body .head .search, body .header form.search, body .head form.search{
    grid-column:2!important;width:100%!important;min-width:0!important;max-width:none!important;height:38px!important;justify-self:stretch!important;margin:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) 38px!important;border-radius:7px!important;overflow:hidden!important;
  }
  body .header .search input, body .head .search input{min-width:0!important;width:100%!important;padding:0 9px!important;font-size:11px!important;}
  body .header .search button, body .head .search button{width:38px!important;min-width:38px!important;padding:0!important;font-size:14px!important;}
  body .header .quick-actions, body .head .quick-actions, body .header .head-actions, body .head .head-actions, body .header .social-head, body .header .weather, body .head .social-head, body .head .weather{display:none!important;}
  body .tgc-mobile-menu-toggle{
    grid-column:3!important;width:40px!important;height:38px!important;min-width:40px!important;border:1px solid var(--line,#e5e7eb)!important;border-radius:8px!important;background:#fff!important;color:var(--text,#111827)!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;font-size:18px!important;margin:0!important;
  }
  body .tgc-mobile-menu-toggle span{display:none!important;}
  body .nav .menu-toggle:not(.tgc-mobile-menu-toggle), body .nav a.menu, body .nav .menu-btn, body .header>.menu-toggle:not(.tgc-mobile-menu-toggle), body .head>.menu-toggle:not(.tgc-mobile-menu-toggle){display:none!important;}
  body .nav-wrap{display:block!important;background:#fff!important;border-bottom:1px solid var(--line,#e5e7eb)!important;box-shadow:none!important;position:relative!important;top:auto!important;z-index:55!important;}
  body .nav-wrap .nav:not(.is-open), body .header>nav.nav:not(.is-open), body .head>nav.nav:not(.is-open){display:none!important;}
  body .nav-wrap .nav.is-open, body .header>nav.nav.is-open, body .head>nav.nav.is-open{
    width:calc(100% - 18px)!important;margin:0 auto 8px!important;padding:8px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;max-height:72vh!important;overflow:auto!important;border:1px solid var(--line,#e5e7eb)!important;border-radius:10px!important;background:#fff!important;
  }
  body .nav-wrap .nav.is-open .nav-links{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;overflow:visible!important;white-space:normal!important;}
  body .nav-wrap .nav.is-open a, body .header>nav.nav.is-open a, body .head>nav.nav.is-open a,
  body .nav-wrap .nav.is-open .primary-menu>li>a{min-height:38px!important;height:auto!important;width:100%!important;padding:9px 10px!important;border-right:0!important;border-bottom:1px solid var(--line,#e5e7eb)!important;border-radius:0!important;justify-content:flex-start!important;}
  body .quick-row, body .quick-cats, body .cat-row, body .dest-row, body .inspire-row, body .topic-row, body .topic-grid, body .mini-panels, body .service-grid, body .brand-row, body .partner-grid, body .city-grid, body .product-grid, body .cat-grid, body .category-cards, body .latest-grid, body .video-grid, body .card-grid, body .price-grid, body .guide-grid, body .grid-4, body .grid-3, body .grid-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  body .hero-side, body .side-stack, body .mini-list, body .lead-list, body .feed-list, body .list-section, body .deal-list, body .vertical-list, body .ranking{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  body .side-news, body .mini-news, body .list-row, body .feed-item, body .rank-item, body .deal, body .topic-news, body .classified, body .job, body .popular-item, body .community-item{display:block!important;padding:8px!important;border:1px solid var(--line,#e5e7eb)!important;border-radius:9px!important;background:#fff!important;min-height:0!important;}
  body .side-news img, body .mini-news img, body .list-row img, body .feed-item img, body .rank-item img, body .deal img, body .topic-news img, body .classified img, body .popular-item img{width:100%!important;height:86px!important;object-fit:cover!important;border-radius:7px!important;margin:0 0 7px!important;}
  body .side-news h3, body .mini-news h4, body .list-row h4, body .feed-item h4, body .rank-item h4, body .deal h4, body .topic-news h4{font-size:11px!important;line-height:1.32!important;margin:0 0 5px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  body .meta, body .side-news .cat-name{font-size:9px!important;gap:6px!important;}
  body .hero-grid, body .three-grid, body .top-news-grid, body .featured-layout, body .bottom-grid, body .knowledge-layout, body .media-grid, body .newsletter, body .newsletter-inner, body .lead-card, body .video-block, body .calc, body .tgc-grid{grid-template-columns:1fr!important;}
  body .tgc-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
  body .tgc-related-card{display:block!important;padding:8px!important;}
  body .tgc-related-thumb{width:100%!important;height:82px!important;margin-bottom:7px!important;}
  body .tgc-related-card h3{font-size:11px!important;line-height:1.32!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
}
@media(max-width:390px){
  body .header .container.header-main, body .header .container.header-inner, body .head .container.head-inner{grid-template-columns:82px minmax(0,1fr) 38px!important;gap:6px!important;}
  body .header .logo, body .head .logo, body .header a.logo, body .head a.logo, body .header .custom-logo-link, body .head .custom-logo-link, body .header .logo-image-link, body .head .logo-image-link{width:82px!important;max-width:82px!important;}
  body .header .logo img, body .head .logo img, body .header img.custom-logo, body .head img.custom-logo, body .header img.image-logo, body .head img.image-logo, body .header img.header-image-logo, body .head img.header-image-logo{max-width:82px!important;max-height:40px!important;}
  body .tgc-mobile-menu-toggle{width:38px!important;min-width:38px!important;}
}

/* === dot vn Studio FINAL mobile logo/search hard-fix 2026-07-02 ===
   Rule: mobile header = logo / search / menu. Logo must be tiny and never overlap search.
*/
.tgc-mobile-menu-toggle{display:none!important;}
@media (max-width:760px){
  html,body{overflow-x:hidden!important;}
  body .topbar, body .mini-bar{display:none!important;}
  body .header, body .head{position:relative!important;z-index:90!important;background:#fff!important;overflow:visible!important;}
  body .header .container.header-inner,
  body .header .container.header-main,
  body .head .container.head-inner,
  body .header-inner,
  body .header-main,
  body .head-inner{
    width:calc(100% - 16px)!important;
    margin-left:auto!important;margin-right:auto!important;
    min-height:50px!important;
    padding:6px 0!important;
    display:grid!important;
    grid-template-columns:clamp(58px,18vw,76px) minmax(0,1fr) 38px!important;
    gap:6px!important;
    align-items:center!important;
    overflow:visible!important;
  }
  body .header .head-actions, body .head .head-actions,
  body .header .header-actions, body .head .header-actions,
  body .header .social-head, body .weather,
  body .top-left, body .top-right{display:none!important;}

  body .header .logo, body .head .logo,
  body .header a.logo, body .head a.logo,
  body .header .site-logo-link, body .head .site-logo-link,
  body .header .custom-logo-link, body .head .custom-logo-link,
  body .header .logo-image-link, body .head .logo-image-link{
    grid-column:1!important;
    width:clamp(58px,18vw,76px)!important;
    max-width:76px!important;
    min-width:0!important;
    height:auto!important;
    max-height:40px!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
    white-space:nowrap!important;
    flex:0 0 auto!important;
  }
  body .header .logo img, body .head .logo img,
  body .header img.custom-logo, body .head img.custom-logo,
  body .header img.image-logo, body .head img.image-logo,
  body .header img.header-image-logo, body .head img.header-image-logo,
  body .header .site-logo-link img, body .head .site-logo-link img,
  body .header .custom-logo-link img, body .head .custom-logo-link img,
  body .header .logo-image-link img, body .head .logo-image-link img{
    width:100%!important;
    max-width:76px!important;
    height:auto!important;
    max-height:36px!important;
    object-fit:contain!important;
    object-position:left center!important;
    display:block!important;
    flex:0 0 auto!important;
  }
  body .header .logo > span:not(:has(img)), body .head .logo > span:not(:has(img)){
    min-width:0!important;max-width:76px!important;overflow:hidden!important;
  }
  body .header .logo small, body .head .logo small,
  body .header .text-logo-fallback small, body .head .text-logo-fallback small{display:none!important;}
  body .header .logo strong, body .head .logo strong,
  body .header .text-logo-fallback strong, body .head .text-logo-fallback strong{
    font-size:clamp(12px,3.4vw,15px)!important;
    line-height:1!important;
    letter-spacing:-.25px!important;
    max-width:76px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    display:block!important;
  }

  body .header form.search, body .head form.search,
  body .header .search, body .head .search,
  body .header .site-search, body .head .site-search{
    grid-column:2!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:36px!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 36px!important;
    align-self:center!important;
    overflow:hidden!important;
    justify-self:stretch!important;
    border-radius:7px!important;
  }
  body .header .search input, body .head .search input,
  body .header .site-search input, body .head .site-search input{
    min-width:0!important;width:100%!important;height:36px!important;padding:0 9px!important;font-size:11px!important;
  }
  body .header .search button, body .head .search button,
  body .header .site-search button, body .head .site-search button{
    width:36px!important;height:36px!important;min-width:36px!important;padding:0!important;font-size:14px!important;
  }

  body .header .menu-toggle, body .head .menu-toggle,
  body .header .tgc-mobile-menu-toggle, body .head .tgc-mobile-menu-toggle,
  body .header .menu-btn, body .head .menu-btn{
    grid-column:3!important;
    display:flex!important;
    width:38px!important;height:36px!important;min-width:38px!important;
    margin:0!important;padding:0!important;
    align-items:center!important;justify-content:center!important;
    border-radius:7px!important;border:0!important;
    background:var(--red,var(--blue,var(--green,var(--teal,#111827))))!important;
    color:#fff!important;box-shadow:none!important;cursor:pointer!important;
  }
  body .header .menu-toggle i, body .head .menu-toggle i,
  body .header .tgc-mobile-menu-toggle i, body .head .tgc-mobile-menu-toggle i,
  body .header .menu-btn i, body .head .menu-btn i{color:#fff!important;font-size:16px!important;margin:0!important;}
  body .header .menu-toggle span, body .head .menu-toggle span,
  body .header .tgc-mobile-menu-toggle span, body .head .tgc-mobile-menu-toggle span{display:none!important;}

  body .nav-wrap{display:none!important;position:relative!important;top:auto!important;z-index:80!important;}
  body.mobile-menu-open .nav-wrap,
  body.nav-open .nav-wrap,
  body.menu-open .nav-wrap{display:block!important;}
  body .nav-wrap .nav, body .nav-wrap nav{
    width:calc(100% - 16px)!important;margin:0 auto!important;
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;padding:8px 0!important;min-height:0!important;
  }
  body .nav-wrap .nav a, body .nav-wrap nav a,
  body .nav-wrap .primary-menu a{
    min-height:34px!important;border:0!important;border-radius:7px!important;background:#fff!important;
    color:var(--text,#111827)!important;box-shadow:0 0 0 1px var(--line,#e5e7eb) inset!important;
    padding:0 8px!important;font-size:10px!important;justify-content:flex-start!important;overflow:hidden!important;
  }
}
@media (max-width:390px){
  body .header .container.header-inner,
  body .header .container.header-main,
  body .head .container.head-inner,
  body .header-inner,
  body .header-main,
  body .head-inner{
    width:calc(100% - 12px)!important;
    grid-template-columns:58px minmax(0,1fr) 36px!important;
    gap:5px!important;
  }
  body .header .logo, body .head .logo,
  body .header a.logo, body .head a.logo,
  body .header .site-logo-link, body .head .site-logo-link,
  body .header .custom-logo-link, body .head .custom-logo-link,
  body .header .logo-image-link, body .head .logo-image-link,
  body .header .logo img, body .head .logo img,
  body .header img.custom-logo, body .head img.custom-logo,
  body .header img.image-logo, body .head img.image-logo,
  body .header .site-logo-link img, body .head .site-logo-link img,
  body .header .custom-logo-link img, body .head .custom-logo-link img,
  body .header .logo-image-link img, body .head .logo-image-link img{
    width:58px!important;max-width:58px!important;max-height:32px!important;
  }
  body .header .logo strong, body .head .logo strong,
  body .header .text-logo-fallback strong, body .head .text-logo-fallback strong{font-size:12px!important;max-width:58px!important;}
  body .header form.search, body .head form.search,
  body .header .search, body .head .search{height:34px!important;grid-template-columns:minmax(0,1fr) 34px!important;}
  body .header .search input, body .head .search input{height:34px!important;font-size:10.5px!important;padding:0 8px!important;}
  body .header .search button, body .head .search button{width:34px!important;height:34px!important;min-width:34px!important;}
  body .header .menu-toggle, body .head .menu-toggle,
  body .header .tgc-mobile-menu-toggle, body .head .tgc-mobile-menu-toggle,
  body .header .menu-btn, body .head .menu-btn{width:36px!important;min-width:36px!important;height:34px!important;}
}



/* === dot vn Studio ABSOLUTE mobile logo/search/menu fix v4 2026-07-02 ===
   Mobile header ratio is fixed: logo column = 1 part, search column = 3 parts, menu = fixed.
   Logo is therefore at most 1/3 of the search box and can never sit behind/overlap search.
*/
.tgc-mobile-menu-toggle{display:none!important;}
@media (max-width:760px){
  html,body{overflow-x:hidden!important;}
  body .topbar, body .mini-bar{display:none!important;}
  body .header, body .head{position:relative!important;z-index:99!important;background:#fff!important;overflow:visible!important;}

  body .header .container.header-inner,
  body .header .container.header-main,
  body .head .container.head-inner,
  body .header-inner,
  body .header-main,
  body .head-inner{
    width:calc(100% - 12px)!important;
    max-width:calc(100% - 12px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    min-height:48px!important;
    padding:5px 0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,3fr) 38px!important;
    grid-template-areas:"brand search menu"!important;
    gap:6px!important;
    align-items:center!important;
    overflow:visible!important;
  }

  body .header .head-actions, body .head .head-actions,
  body .header .header-actions, body .head .header-actions,
  body .header .quick-actions, body .head .quick-actions,
  body .header .social-head, body .head .social-head,
  body .header .weather, body .head .weather,
  body .top-left, body .top-right{display:none!important;}

  body .header .menu-toggle:not(.tgc-mobile-menu-toggle),
  body .head .menu-toggle:not(.tgc-mobile-menu-toggle){display:none!important;}

  body .header .logo, body .head .logo,
  body .header a.logo, body .head a.logo,
  body .header .site-logo-link, body .head .site-logo-link,
  body .header .custom-logo-link, body .head .custom-logo-link,
  body .header .logo-image-link, body .head .logo-image-link,
  body .header .site-branding, body .head .site-branding{
    grid-area:brand!important;
    grid-column:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
    white-space:nowrap!important;
    flex:0 1 auto!important;
    box-sizing:border-box!important;
  }

  body .header .logo img, body .head .logo img,
  body .header img.custom-logo, body .head img.custom-logo,
  body .header img.image-logo, body .head img.image-logo,
  body .header img.header-image-logo, body .head img.header-image-logo,
  body .header .site-logo-link img, body .head .site-logo-link img,
  body .header .custom-logo-link img, body .head .custom-logo-link img,
  body .header .logo-image-link img, body .head .logo-image-link img,
  body .header .site-branding img, body .head .site-branding img{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    max-height:30px!important;
    object-fit:contain!important;
    object-position:left center!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
    flex:0 1 auto!important;
    box-sizing:border-box!important;
  }

  body .header .logo .mark, body .head .logo .mark,
  body .header .logo .pinmark, body .head .logo .pinmark,
  body .header .logo .leaf-mark, body .head .logo .leaf-mark,
  body .header .logo .vmark, body .head .logo .vmark,
  body .header .logo .logo-mark, body .head .logo .logo-mark{display:none!important;}

  body .header .logo > span, body .head .logo > span,
  body .header .site-branding > span, body .head .site-branding > span{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    display:block!important;
  }
  body .header .logo small, body .head .logo small,
  body .header .text-logo-fallback small, body .head .text-logo-fallback small{display:none!important;}
  body .header .logo strong, body .head .logo strong,
  body .header .text-logo-fallback strong, body .head .text-logo-fallback strong{
    font-size:clamp(11px,3.1vw,14px)!important;
    line-height:1!important;
    letter-spacing:-.2px!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    display:block!important;
  }
  body .header .logo strong span, body .head .logo strong span{font-size:.76em!important;}

  body .header form.search, body .head form.search,
  body .header .search, body .head .search,
  body .header .site-search, body .head .site-search{
    grid-area:search!important;
    grid-column:2!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:36px!important;
    margin:0!important;
    padding:0!important;
    align-self:center!important;
    justify-self:stretch!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 34px!important;
    overflow:hidden!important;
    border-radius:7px!important;
    box-sizing:border-box!important;
  }
  body .header .search input, body .head .search input,
  body .header .site-search input, body .head .site-search input{
    min-width:0!important;
    width:100%!important;
    height:34px!important;
    padding:0 8px!important;
    font-size:10.5px!important;
    box-sizing:border-box!important;
  }
  body .header .search button, body .head .search button,
  body .header .site-search button, body .head .site-search button{
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
    padding:0!important;
    font-size:13px!important;
    box-sizing:border-box!important;
  }

  body .header .tgc-mobile-menu-toggle, body .head .tgc-mobile-menu-toggle,
  body .header .menu-btn, body .head .menu-btn{
    grid-area:menu!important;
    grid-column:3!important;
    display:flex!important;
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:36px!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:7px!important;
    border:0!important;
    background:var(--red,var(--blue,var(--green,var(--teal,#111827))))!important;
    color:#fff!important;
    box-shadow:none!important;
    cursor:pointer!important;
    box-sizing:border-box!important;
  }
  body .header .tgc-mobile-menu-toggle i, body .head .tgc-mobile-menu-toggle i,
  body .header .menu-btn i, body .head .menu-btn i{color:#fff!important;font-size:16px!important;margin:0!important;}
  body .header .tgc-mobile-menu-toggle span, body .head .tgc-mobile-menu-toggle span{display:none!important;}

  body .nav-wrap{display:none!important;position:relative!important;top:auto!important;z-index:90!important;}
  body.mobile-menu-open .nav-wrap,
  body.nav-open .nav-wrap,
  body.menu-open .nav-wrap,
  body .nav-wrap.is-open{display:block!important;}
  body .nav-wrap .nav, body .nav-wrap nav{
    width:calc(100% - 12px)!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    padding:8px 0!important;
    min-height:0!important;
  }
  body .nav-wrap .nav a, body .nav-wrap nav a,
  body .nav-wrap .primary-menu a{
    min-height:34px!important;
    border:0!important;
    border-radius:7px!important;
    background:#fff!important;
    color:var(--text,#111827)!important;
    box-shadow:0 0 0 1px var(--line,#e5e7eb) inset!important;
    padding:0 8px!important;
    font-size:10px!important;
    justify-content:flex-start!important;
    overflow:hidden!important;
  }

  /* Compact homepage blocks: 2 columns on mobile when they can fit. */
  body.home .quick-row,
  body.home .quick-cats,
  body.home .cat-row,
  body.home .category-row,
  body.home .dest-row,
  body.home .inspire-row,
  body.home .topic-row,
  body.home .topic-grid,
  body.home .category-cards,
  body.home .latest-grid,
  body.home .price-grid,
  body.home .card-grid,
  body.home .product-grid,
  body.home .service-grid,
  body.home .mini-panels,
  body.home .brand-row,
  body.home .partner-grid,
  body.home .city-grid,
  body.home .guide-grid,
  body.home .grid-4,
  body.home .grid-3,
  body.home .grid-2,
  body.home .hero-side,
  body.home .side-stack,
  body.home .rank-side{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.home .hero-grid,
  body.home .three-grid,
  body.home .bottom-grid,
  body.home .featured-layout,
  body.home .top-news-grid,
  body.home .knowledge-layout,
  body.home .media-grid,
  body.home .newsletter,
  body.home .lead-card,
  body.home .video-block,
  body.home .calc,
  body.home .layout{
    grid-template-columns:1fr!important;
  }
  body.home .side-news,
  body.home .mini-news,
  body.home .list-item,
  body.home .feed-item,
  body.home .rank-news,
  body.home .rank-item,
  body.home .deal,
  body.home .classified,
  body.home .job,
  body.home .popular-item,
  body.home .topic-news{
    display:block!important;
  }
  body.home .side-news img,
  body.home .mini-news img,
  body.home .list-item img,
  body.home .feed-item img,
  body.home .rank-news img,
  body.home .rank-item img,
  body.home .deal img,
  body.home .classified img,
  body.home .popular-item img,
  body.home .topic-news img{
    width:100%!important;
    height:92px!important;
    object-fit:cover!important;
    border-radius:7px!important;
    margin-bottom:6px!important;
  }
  body.home .hero-main{min-height:360px!important;}
  body.home .hero-copy{left:18px!important;right:18px!important;top:auto!important;bottom:26px!important;}
  body.home .hero-copy h1{font-size:24px!important;line-height:1.2!important;}

  body .tgc-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
  body .tgc-related-card{display:block!important;padding:8px!important;}
  body .tgc-related-thumb{width:100%!important;height:82px!important;margin-bottom:7px!important;}
  body .tgc-related-card h3{font-size:11px!important;line-height:1.32!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
}
@media (max-width:390px){
  body .header .container.header-inner,
  body .header .container.header-main,
  body .head .container.head-inner,
  body .header-inner,
  body .header-main,
  body .head-inner{
    width:calc(100% - 10px)!important;
    max-width:calc(100% - 10px)!important;
    grid-template-columns:minmax(0,1fr) minmax(0,3fr) 36px!important;
    gap:5px!important;
  }
  body .header .logo, body .head .logo,
  body .header a.logo, body .head a.logo,
  body .header .site-logo-link, body .head .site-logo-link,
  body .header .custom-logo-link, body .head .custom-logo-link,
  body .header .logo-image-link, body .head .logo-image-link{height:34px!important;max-height:34px!important;}
  body .header .logo img, body .head .logo img,
  body .header img.custom-logo, body .head img.custom-logo,
  body .header img.image-logo, body .head img.image-logo,
  body .header .site-logo-link img, body .head .site-logo-link img,
  body .header .custom-logo-link img, body .head .custom-logo-link img,
  body .header .logo-image-link img, body .head .logo-image-link img{max-height:27px!important;}
  body .header form.search, body .head form.search,
  body .header .search, body .head .search{height:34px!important;grid-template-columns:minmax(0,1fr) 32px!important;}
  body .header .search input, body .head .search input{height:32px!important;font-size:10px!important;padding:0 7px!important;}
  body .header .search button, body .head .search button{width:32px!important;min-width:32px!important;height:32px!important;}
  body .header .tgc-mobile-menu-toggle, body .head .tgc-mobile-menu-toggle,
  body .header .menu-btn, body .head .menu-btn{width:36px!important;min-width:36px!important;max-width:36px!important;height:34px!important;}
}


/* TGC UNIVERSAL SUBMENU DROPDOWN FIX */
@media (min-width: 769px){
  .nav-wrap,
  .nav,
  .nav-links,
  .image-nav-wrap,
  .image-nav-inner{
    overflow: visible !important;
  }
  .nav .primary-menu,
  .nav-links .primary-menu,
  .primary-menu,
  .image-primary-menu{
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    overflow: visible !important;
  }
  .primary-menu > li,
  .image-primary-menu > li{
    position: relative !important;
    display: block !important;
    flex: 0 0 auto !important;
    list-style: none !important;
  }
  .primary-menu > li > a,
  .image-primary-menu > li > a{
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    white-space: nowrap !important;
  }
  .primary-menu > li.menu-item-has-children > a::after,
  .image-primary-menu > li.menu-item-has-children > a::after{
    content: "▾" !important;
    font-size: 10px !important;
    line-height: 1 !important;
    margin-left: 2px !important;
    opacity: .85 !important;
  }
  .primary-menu ul.sub-menu,
  .image-primary-menu ul.sub-menu{
    display: none !important;
    position: absolute !important;
    top: calc(100% + 0px) !important;
    left: 0 !important;
    z-index: 99999 !important;
    min-width: 225px !important;
    max-width: 300px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 8px !important;
    background: #fff !important;
    border: 1px solid rgba(15,23,42,.08) !important;
    border-radius: 12px !important;
    box-shadow: 0 18px 42px rgba(15,23,42,.16) !important;
    white-space: normal !important;
    overflow: visible !important;
  }
  .primary-menu li:hover > ul.sub-menu,
  .primary-menu li:focus-within > ul.sub-menu,
  .image-primary-menu li:hover > ul.sub-menu,
  .image-primary-menu li:focus-within > ul.sub-menu{
    display: block !important;
  }
  .primary-menu ul.sub-menu li,
  .image-primary-menu ul.sub-menu li{
    position: relative !important;
    display: block !important;
    width: 100% !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .nav .primary-menu ul.sub-menu a,
  .nav-links .primary-menu ul.sub-menu a,
  .primary-menu ul.sub-menu a,
  .image-primary-menu ul.sub-menu a{
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 38px !important;
    height: auto !important;
    padding: 9px 12px !important;
    margin: 0 !important;
    color: #111827 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    line-height: 1.35 !important;
    white-space: normal !important;
  }
  .nav .primary-menu ul.sub-menu a:hover,
  .nav-links .primary-menu ul.sub-menu a:hover,
  .primary-menu ul.sub-menu a:hover,
  .image-primary-menu ul.sub-menu a:hover{
    color: #db168d !important;
    background: #fff1fa !important;
  }
  .primary-menu ul.sub-menu li.menu-item-has-children > a::after,
  .image-primary-menu ul.sub-menu li.menu-item-has-children > a::after{
    content: "›" !important;
    margin-left: auto !important;
    font-size: 14px !important;
  }
  .primary-menu ul.sub-menu ul.sub-menu,
  .image-primary-menu ul.sub-menu ul.sub-menu{
    top: 0 !important;
    left: calc(100% + 8px) !important;
    margin-top: -8px !important;
  }
}
@media (max-width: 768px){
  .nav-wrap,
  .nav,
  .nav-links,
  .image-nav-wrap,
  .image-nav-inner{
    overflow: visible !important;
  }
  .primary-menu,
  .image-primary-menu{
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }
  .primary-menu li,
  .image-primary-menu li{
    list-style: none !important;
    width: 100% !important;
    position: relative !important;
  }
  .primary-menu li.menu-item-has-children > a::after,
  .image-primary-menu li.menu-item-has-children > a::after{
    content: "▾" !important;
    margin-left: auto !important;
    font-size: 11px !important;
    opacity: .9 !important;
  }
  .primary-menu ul.sub-menu,
  .image-primary-menu ul.sub-menu{
    display: none !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 4px 0 8px 0 !important;
    padding: 4px 0 4px 12px !important;
    border: 0 !important;
    border-left: 2px solid rgba(255,255,255,.22) !important;
    box-shadow: none !important;
    background: rgba(255,255,255,.06) !important;
    border-radius: 8px !important;
  }
  .primary-menu li.tgc-submenu-open > ul.sub-menu,
  .image-primary-menu li.tgc-submenu-open > ul.sub-menu{
    display: block !important;
  }
  .primary-menu ul.sub-menu a,
  .image-primary-menu ul.sub-menu a{
    display: flex !important;
    align-items: center !important;
    min-height: 34px !important;
    height: auto !important;
    padding: 8px 10px !important;
    border: 0 !important;
    border-radius: 7px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    text-transform: none !important;
    font-size: 12px !important;
  }
  .primary-menu ul.sub-menu ul.sub-menu,
  .image-primary-menu ul.sub-menu ul.sub-menu{
    padding-left: 16px !important;
    background: rgba(0,0,0,.08) !important;
  }
}

/* === DOTVN FINAL PATCH: desktop menu spacing + desktop logo 2/3 === */
@media (min-width: 761px) {
  /* Desktop logo: reduce to about 2/3 of previous 268px size. */
  .site-branding img,
  .site-logo img,
  .custom-logo,
  img.custom-logo,
  .image-logo-img,
  .logo img,
  .footer-logo img,
  .image-footer-logo img,
  header .custom-logo,
  header img.custom-logo {
    width:auto!important;
    max-width:180px!important;
    height:auto!important;
    max-height:72px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  .site-branding,
  .site-logo,
  .logo,
  .image-logo {
    min-width:0!important;
    overflow:visible!important;
  }

  /* Top-level desktop menu only: wider spacing and stronger readable text. */
  .nav-wrap .nav > a,
  .nav-wrap .nav > li > a,
  .nav-wrap .primary-menu > li > a,
  .nav .primary-menu > li > a,
  .primary-menu > li > a,
  .menu-primary-container > ul > li > a,
  .main-navigation ul.menu > li > a,
  .main-navigation .menu > li > a,
  .site-navigation ul.menu > li > a,
  .image-primary-menu > li > a {
    padding-left:26px!important;
    padding-right:26px!important;
    font-weight:600!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
  }

  /* Keep submenu separate from top level; don't let it inherit huge top-level layout. */
  .nav-wrap .nav ul.sub-menu a,
  .nav-wrap .primary-menu ul.sub-menu a,
  .nav .primary-menu ul.sub-menu a,
  .primary-menu ul.sub-menu a,
  .menu-primary-container ul.sub-menu a,
  .main-navigation ul.menu ul.sub-menu a,
  .site-navigation ul.menu ul.sub-menu a,
  .image-primary-menu ul.sub-menu a {
    padding:12px 16px!important;
    font-weight:600!important;
    letter-spacing:0!important;
    white-space:normal!important;
    min-height:0!important;
    line-height:1.35!important;
  }
}

@media (max-width: 760px) {
  /* Mobile logo must stay in its own small column: logo = 1 part, search = 3 parts. */
  .header-inner,
  .image-header-inner {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,3fr) 38px!important;
    gap:8px!important;
    align-items:center!important;
  }
  .site-branding,
  .site-logo,
  .logo,
  .image-logo {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .site-branding img,
  .site-logo img,
  .custom-logo,
  img.custom-logo,
  .image-logo-img,
  .logo img,
  header .custom-logo,
  header img.custom-logo {
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:34px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  .search,
  .image-search,
  .header-search {
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
  }

  .nav-wrap .nav > a,
  .nav-wrap .nav > li > a,
  .nav-wrap .primary-menu > li > a,
  .nav .primary-menu > li > a,
  .primary-menu > li > a,
  .menu-primary-container > ul > li > a,
  .main-navigation ul.menu > li > a,
  .image-primary-menu > li > a {
    padding:12px 16px!important;
    font-weight:600!important;
    line-height:1.35!important;
  }
}
/* === END DOTVN FINAL PATCH === */

/* === TGC GLOBAL MOBILE HEADER MENU LOCK FIX 2026-07-02 === */
@media (max-width: 760px){
  html body .topbar,
  html body .au-topbar,
  html body .head-actions,
  html body .au-head-actions,
  html body .header-actions,
  html body .site-actions,
  html body .main-header-actions,
  html body .top-actions:not(.tgc-keep-mobile-actions){display:none!important;}

  html body .header,
  html body .au-header,
  html body .site-header,
  html body .main-header{overflow:visible!important;position:relative!important;z-index:120!important;}

  html body .header-in,
  html body .header-inner,
  html body .site-header-inner,
  html body .main-header-inner,
  html body .tgc-header-inner,
  html body .au-header-inner,
  html body header.header > .container,
  html body .header > .container.header-in,
  html body .header > .container.header-inner,
  html body .site-header > .container,
  html body .au-header > .au-container{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,3fr) 38px!important;
    gap:8px!important;
    align-items:center!important;
    min-height:68px!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
  }

  html body .logo,
  html body .site-logo,
  html body .brand,
  html body .header-logo,
  html body .au-logo,
  html body .custom-logo-link,
  html body .site-branding{
    grid-column:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:5px!important;
  }

  html body .header .logo img,
  html body .header .site-logo img,
  html body .header .header-logo img,
  html body .header .custom-logo,
  html body .header .custom-logo-link img,
  html body .site-header .logo img,
  html body .site-header .custom-logo,
  html body .site-header .custom-logo-link img,
  html body .au-header .au-logo img,
  html body .au-header .custom-logo,
  html body .au-header .custom-logo-link img,
  html body img.custom-logo{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    max-height:42px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  html body .logo strong,
  html body .site-logo strong,
  html body .brand strong,
  html body .header-logo strong,
  html body .au-text-logo strong,
  html body .logo .text-logo,
  html body .site-title{
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:clamp(13px,4vw,18px)!important;
    line-height:1.05!important;
    letter-spacing:-.4px!important;
  }
  html body .logo small,
  html body .site-description,
  html body .au-text-logo small{display:none!important;}
  html body .logo-mark,
  html body .au-logo-mark{flex:0 0 26px!important;width:26px!important;height:26px!important;min-width:26px!important;}

  html body .search,
  html body .site-search,
  html body .header-search,
  html body .main-search,
  html body .au-search,
  html body form[role="search"]{
    grid-column:2!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:40px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 40px!important;
    overflow:hidden!important;
    margin:0!important;
  }
  html body .search input,
  html body .site-search input,
  html body .header-search input,
  html body .main-search input,
  html body .au-search input,
  html body form[role="search"] input[type="search"],
  html body form[role="search"] input[name="s"]{
    min-width:0!important;
    width:100%!important;
    padding-left:9px!important;
    padding-right:8px!important;
    font-size:11px!important;
  }
  html body .search button,
  html body .site-search button,
  html body .header-search button,
  html body .main-search button,
  html body .au-search button,
  html body form[role="search"] button{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    padding:0!important;
  }

  html body header .menu-toggle,
  html body header .mobile-toggle,
  html body header .nav-toggle,
  html body header .hamburger,
  html body header .site-menu-toggle,
  html body header .tgc-mobile-menu-toggle,
  html body header .au-menu-toggle,
  html body .header .menu-toggle,
  html body .header .mobile-toggle,
  html body .header .nav-toggle,
  html body .header .hamburger,
  html body .header .site-menu-toggle,
  html body .header .tgc-mobile-menu-toggle,
  html body .au-header .au-menu-toggle,
  html body .site-header .menu-toggle,
  html body .site-header .mobile-toggle{
    grid-column:3!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0!important;
    border-radius:10px!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    z-index:160!important;
  }
  html body header .menu-toggle span,
  html body header .tgc-mobile-menu-toggle span,
  html body header .mobile-toggle span,
  html body .header .menu-toggle span,
  html body .header .tgc-mobile-menu-toggle span{display:none!important;}
  html body header .menu-toggle i,
  html body header .mobile-toggle i,
  html body header .tgc-mobile-menu-toggle i,
  html body header .au-menu-toggle i{display:block!important;font-size:18px!important;line-height:1!important;}

  html body .nav-wrap,
  html body .au-nav-wrap,
  html body .primary-nav-wrap,
  html body .site-nav-wrap{position:relative!important;z-index:115!important;overflow:visible!important;}

  html body .nav-wrap nav,
  html body .nav-wrap .nav,
  html body .nav-wrap .primary-menu,
  html body .au-nav-wrap .au-primary-menu,
  html body .primary-nav-wrap .primary-menu,
  html body .site-nav-wrap .primary-menu,
  html body .main-navigation .primary-menu{
    display:none!important;
    min-height:0!important;
  }
  html body .nav-wrap.is-open nav,
  html body .nav-wrap.nav-open nav,
  html body .nav-wrap.is-open .nav,
  html body .nav-wrap.nav-open .nav,
  html body .nav-wrap.is-open .primary-menu,
  html body .nav-wrap.nav-open .primary-menu,
  html body .nav-wrap nav.open,
  html body .nav-wrap .nav.open,
  html body .nav-wrap .primary-menu.open,
  html body .nav-wrap nav.is-open,
  html body .nav-wrap .nav.is-open,
  html body .nav-wrap .primary-menu.is-open,
  html body .au-nav-wrap.is-open .au-primary-menu,
  html body .au-nav-wrap.nav-open .au-primary-menu,
  html body .au-primary-menu.open,
  html body .au-primary-menu.is-open,
  html body .primary-nav-wrap.is-open .primary-menu,
  html body .primary-nav-wrap.nav-open .primary-menu,
  html body .site-nav-wrap.is-open .primary-menu,
  html body .site-nav-wrap.nav-open .primary-menu{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    padding:9px 0!important;
    list-style:none!important;
    overflow:visible!important;
  }
  html body .nav-wrap .nav a,
  html body .nav-wrap .primary-menu>li>a,
  html body .au-primary-menu>li>a,
  html body .primary-menu>li>a{
    min-height:38px!important;
    height:auto!important;
    padding:9px 10px!important;
    border:0!important;
    border-radius:8px!important;
    font-size:10.5px!important;
    line-height:1.25!important;
    white-space:normal!important;
    font-weight:600!important;
  }
  html body .nav-wrap .nav a.menu,
  html body .nav-wrap .menu-btn{display:none!important;}
  html body .primary-menu li,
  html body .au-primary-menu li{position:relative!important;}
  html body .primary-menu ul.sub-menu,
  html body .au-primary-menu ul.sub-menu{
    display:none!important;
    position:static!important;
    min-width:0!important;
    box-shadow:none!important;
    border:0!important;
    margin:6px 0 0 10px!important;
    padding:6px!important;
    border-radius:8px!important;
    width:auto!important;
  }
  html body .primary-menu li.submenu-open>ul.sub-menu,
  html body .au-primary-menu li.submenu-open>ul.sub-menu{display:grid!important;gap:5px!important;}
  html body .primary-menu ul.sub-menu a,
  html body .au-primary-menu ul.sub-menu a{font-size:10.5px!important;padding:8px 9px!important;}
}

/* === GLOBAL SEARCH FIELD: NO ICONS/BUTTONS PATCH START === */
/* Search box must be a plain input only: no magnifier icon, no search button, desktop and mobile. */
header form[class*="search"],
header .search,
header .search-box,
header .site-search,
header .header-search,
header .mobile-search,
header .search-form,
.topnav form[class*="search"],
.topnav .search,
.topnav .search-box,
.topnav .site-search,
.topnav .header-search,
.topnav .search-form,
.navbar form[class*="search"],
.navbar .search,
.navbar .search-box,
.navbar .site-search,
.navbar .header-search,
.navbar .search-form,
.site-header form[class*="search"],
.site-header .search,
.site-header .search-box,
.site-header .site-search,
.site-header .header-search,
.site-header .mobile-search,
.site-header .search-form,
.header-in form[class*="search"],
.header-in .search,
.header-in .search-box,
.header-in .site-search,
.header-in .header-search,
.header-in .mobile-search,
.header-in .search-form {
  display:block !important;
  grid-template-columns:1fr !important;
  position:relative !important;
  min-width:0 !important;
  overflow:hidden !important;
}
header form[class*="search"] input,
header .search input,
header .search-box input,
header .site-search input,
header .header-search input,
header .mobile-search input,
header .search-form input,
.topnav form[class*="search"] input,
.topnav .search input,
.topnav .search-box input,
.topnav .site-search input,
.topnav .header-search input,
.topnav .search-form input,
.navbar form[class*="search"] input,
.navbar .search input,
.navbar .search-box input,
.navbar .site-search input,
.navbar .header-search input,
.navbar .search-form input,
.site-header form[class*="search"] input,
.site-header .search input,
.site-header .search-box input,
.site-header .site-search input,
.site-header .header-search input,
.site-header .mobile-search input,
.site-header .search-form input,
.header-in form[class*="search"] input,
.header-in .search input,
.header-in .search-box input,
.header-in .site-search input,
.header-in .header-search input,
.header-in .mobile-search input,
.header-in .search-form input {
  width:100% !important;
  min-width:0 !important;
  height:100% !important;
  padding-left:14px !important;
  padding-right:14px !important;
  box-sizing:border-box !important;
  background-image:none !important;
}
header form[class*="search"] button,
header form[class*="search"] i,
header form[class*="search"] svg,
header .search button,
header .search i,
header .search svg,
header .search-box > i,
header .search-box button,
header .search-box svg,
header .site-search button,
header .site-search i,
header .site-search svg,
header .header-search button,
header .header-search i,
header .header-search svg,
header .mobile-search button,
header .mobile-search i,
header .mobile-search svg,
header .search-form button,
header .search-form i,
header .search-form svg,
.topnav form[class*="search"] button,
.topnav form[class*="search"] i,
.topnav form[class*="search"] svg,
.topnav .search button,
.topnav .search i,
.topnav .search svg,
.topnav .search-box > i,
.topnav .search-box button,
.topnav .search-box svg,
.topnav .site-search button,
.topnav .site-search i,
.topnav .site-search svg,
.topnav .header-search button,
.topnav .header-search i,
.topnav .header-search svg,
.topnav .search-form button,
.topnav .search-form i,
.topnav .search-form svg,
.navbar form[class*="search"] button,
.navbar form[class*="search"] i,
.navbar form[class*="search"] svg,
.navbar .search button,
.navbar .search i,
.navbar .search svg,
.navbar .search-box > i,
.navbar .search-box button,
.navbar .search-box svg,
.navbar .site-search button,
.navbar .site-search i,
.navbar .site-search svg,
.navbar .header-search button,
.navbar .header-search i,
.navbar .header-search svg,
.navbar .search-form button,
.navbar .search-form i,
.navbar .search-form svg,
.site-header form[class*="search"] button,
.site-header form[class*="search"] i,
.site-header form[class*="search"] svg,
.site-header .search button,
.site-header .search i,
.site-header .search svg,
.site-header .search-box > i,
.site-header .search-box button,
.site-header .search-box svg,
.site-header .site-search button,
.site-header .site-search i,
.site-header .site-search svg,
.site-header .header-search button,
.site-header .header-search i,
.site-header .header-search svg,
.site-header .mobile-search button,
.site-header .mobile-search i,
.site-header .mobile-search svg,
.site-header .search-form button,
.site-header .search-form i,
.site-header .search-form svg,
.header-in form[class*="search"] button,
.header-in form[class*="search"] i,
.header-in form[class*="search"] svg,
.header-in .search button,
.header-in .search i,
.header-in .search svg,
.header-in .search-box > i,
.header-in .search-box button,
.header-in .search-box svg,
.header-in .site-search button,
.header-in .site-search i,
.header-in .site-search svg,
.header-in .header-search button,
.header-in .header-search i,
.header-in .header-search svg,
.header-in .mobile-search button,
.header-in .mobile-search i,
.header-in .mobile-search svg,
.header-in .search-form button,
.header-in .search-form i,
.header-in .search-form svg,
.wp-block-search__button {
  display:none !important;
  visibility:hidden !important;
  width:0 !important;
  min-width:0 !important;
  height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  opacity:0 !important;
  pointer-events:none !important;
}
header .search::before,
header .search::after,
header .search-box::before,
header .search-box::after,
header .site-search::before,
header .site-search::after,
header .header-search::before,
header .header-search::after,
header .mobile-search::before,
header .mobile-search::after,
header .search-form::before,
header .search-form::after,
.topnav .search::before,
.topnav .search::after,
.topnav .search-box::before,
.topnav .search-box::after,
.topnav .site-search::before,
.topnav .site-search::after,
.topnav .header-search::before,
.topnav .header-search::after,
.topnav .search-form::before,
.topnav .search-form::after,
.navbar .search::before,
.navbar .search::after,
.navbar .search-box::before,
.navbar .search-box::after,
.navbar .site-search::before,
.navbar .site-search::after,
.navbar .header-search::before,
.navbar .header-search::after,
.navbar .search-form::before,
.navbar .search-form::after,
.site-header .search::before,
.site-header .search::after,
.site-header .search-box::before,
.site-header .search-box::after,
.site-header .site-search::before,
.site-header .site-search::after,
.site-header .header-search::before,
.site-header .header-search::after,
.site-header .mobile-search::before,
.site-header .mobile-search::after,
.site-header .search-form::before,
.site-header .search-form::after,
.header-in .search::before,
.header-in .search::after,
.header-in .search-box::before,
.header-in .search-box::after,
.header-in .site-search::before,
.header-in .site-search::after,
.header-in .header-search::before,
.header-in .header-search::after,
.header-in .mobile-search::before,
.header-in .mobile-search::after,
.header-in .search-form::before,
.header-in .search-form::after {
  content:none !important;
  display:none !important;
}
/* Hide standalone header search icon triggers; the visible search UI is the input field only. */
header .icon-btn[href*="search"],
header .icon-btn.search,
header .search-toggle,
header .search-icon,
header .btn-search,
.site-header .icon-btn[href*="search"],
.site-header .icon-btn.search,
.site-header .search-toggle,
.site-header .search-icon,
.site-header .btn-search,
.topnav .icon-btn,
.topnav .search-toggle,
.topnav .search-icon,
.topnav .btn-search {
  display:none !important;
}
@media (max-width: 760px) {
  header form[class*="search"], header .search, header .search-box, header .site-search, header .header-search, header .mobile-search, header .search-form,
  .site-header form[class*="search"], .site-header .search, .site-header .search-box, .site-header .site-search, .site-header .header-search, .site-header .mobile-search, .site-header .search-form,
  .header-in form[class*="search"], .header-in .search, .header-in .search-box, .header-in .site-search, .header-in .header-search, .header-in .mobile-search, .header-in .search-form {
    display:block !important;
    grid-template-columns:1fr !important;
  }
}
/* === GLOBAL SEARCH FIELD: NO ICONS/BUTTONS PATCH END === */


/* === GLOBAL MOBILE LOGO CONTAINMENT FIX v5 === */
@media (max-width: 760px){
  /* Hide fake header clutter that can push logo/search around */
  body .topbar, body .mini-bar, body .top-line, body .header-top, body .top-nav, body .site-topbar{
    display:none!important;
  }

  /* The mobile header must be: logo = 1 part, search = 3 parts, menu = 38px. */
  body header .header-main,
  body header .header-in,
  body header .header-inner,
  body header .head-inner,
  body header .site-header-inner,
  body header .nav-inner,
  body header > .container,
  body .header .container.header-main,
  body .header .container.header-in,
  body .header .container.header-inner,
  body .topnav > .container,
  body .site-header > .container{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,3fr) 38px!important;
    align-items:center!important;
    column-gap:10px!important;
    row-gap:0!important;
    min-height:58px!important;
    height:auto!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    overflow:visible!important;
  }

  /* Logo column: it cannot grow beyond its own grid cell. Anything too wide is clipped inside the logo cell. */
  body header a.logo,
  body header .logo,
  body header .site-logo,
  body header .site-branding,
  body header .brand,
  body header .navbar-brand,
  body header .custom-logo-link,
  body header .logo-image-link,
  body header [class*="brand-logo"]{
    grid-column:1!important;
    justify-self:stretch!important;
    align-self:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 1 auto!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:4px!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    z-index:1!important;
  }

  /* Logo image: never wider than the logo cell; never floats behind the search box. */
  body header a.logo img,
  body header .logo img,
  body header .site-logo img,
  body header .site-branding img,
  body header .brand img,
  body header .navbar-brand img,
  body header .custom-logo,
  body header .custom-logo-link img,
  body header .logo-image-link img,
  body header .header-image-logo,
  body header img.image-logo,
  body header img[class*="logo"]{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    max-height:30px!important;
    object-fit:contain!important;
    object-position:left center!important;
    flex:0 1 auto!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    z-index:1!important;
  }

  /* Text logo fallback: keep it inside the 1fr cell. */
  body header a.logo strong,
  body header .logo strong,
  body header .site-logo strong,
  body header .site-branding strong,
  body header .brand strong,
  body header .navbar-brand strong{
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-size:clamp(11px,3.2vw,16px)!important;
    line-height:1!important;
  }
  body header a.logo small,
  body header .logo small,
  body header .site-logo small,
  body header .site-branding small,
  body header .brand small,
  body header .navbar-brand small{
    display:none!important;
  }
  body header .logo-mark{
    flex:0 0 auto!important;
    width:28px!important;
    max-width:28px!important;
    height:28px!important;
    max-height:28px!important;
    overflow:hidden!important;
  }

  /* Search column: it owns the 3fr cell, must not be overlapped by the logo. */
  body header form[role="search"],
  body header form.search,
  body header .search,
  body header .search-form,
  body header .header-search,
  body header .site-search,
  body header .mobile-search,
  body header .search-box,
  body header [class$="-search"]{
    grid-column:2!important;
    justify-self:stretch!important;
    align-self:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    display:block!important;
    position:relative!important;
    z-index:2!important;
    border-radius:10px!important;
  }
  body header form[role="search"] input,
  body header form.search input,
  body header .search input,
  body header .search-form input,
  body header .header-search input,
  body header .site-search input,
  body header .mobile-search input,
  body header .search-box input,
  body header [class$="-search"] input{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
    box-sizing:border-box!important;
    display:block!important;
    padding:0 10px!important;
    border-radius:10px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  /* No search icons/buttons in header, desktop/mobile inherited. */
  body header form[role="search"] button,
  body header form.search button,
  body header .search button,
  body header .search-form button,
  body header .header-search button,
  body header .site-search button,
  body header .mobile-search button,
  body header .search-box button,
  body header [class$="-search"] button,
  body header form[role="search"] i,
  body header form.search i,
  body header .search i,
  body header .search-form i,
  body header .header-search i,
  body header .site-search i,
  body header .mobile-search i,
  body header .search-box i,
  body header [class$="-search"] i,
  body header form[role="search"] svg,
  body header form.search svg,
  body header .search svg,
  body header .search-form svg,
  body header .header-search svg,
  body header .site-search svg,
  body header .mobile-search svg,
  body header .search-box svg,
  body header [class$="-search"] svg{
    display:none!important;
  }
  body header form[role="search"]:before,
  body header form[role="search"]:after,
  body header form.search:before,
  body header form.search:after,
  body header .search:before,
  body header .search:after,
  body header .search-form:before,
  body header .search-form:after,
  body header .header-search:before,
  body header .header-search:after,
  body header .site-search:before,
  body header .site-search:after,
  body header .mobile-search:before,
  body header .mobile-search:after,
  body header .search-box:before,
  body header .search-box:after,
  body header [class$="-search"]:before,
  body header [class$="-search"]:after{
    content:none!important;
    display:none!important;
  }

  /* Menu button column. */
  body header .menu-toggle,
  body header .mobile-toggle,
  body header .nav-toggle,
  body header .hamburger,
  body header .menu-button,
  body header button[class*="menu"]{
    grid-column:3!important;
    justify-self:end!important;
    align-self:center!important;
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    position:relative!important;
    z-index:4!important;
  }

  /* Hide unused header actions/login so they cannot force wrapping. */
  body header .head-actions,
  body header .quick-actions,
  body header .top-actions,
  body header .header-actions,
  body header .account,
  body header .login,
  body header .login-link,
  body header .user-link,
  body header .small-btn.login,
  body header a[href*="login"]{
    display:none!important;
  }
}
/* === END GLOBAL MOBILE LOGO CONTAINMENT FIX v5 === */



/* ===== BẢN X V2: distinct homepage CPT sections ===== */
.tgcx-home{--tgcx-primary:#0f7897;--tgcx-accent:#c38a31;--tgcx-soft:#f8fbfc;margin:28px 0 34px}.tgcx-section{margin:30px auto}.tgcx-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.tgcx-section-head h2{margin:0;color:var(--tgcx-primary);font-size:22px;letter-spacing:-.3px;line-height:1.15}.tgcx-eyebrow{display:inline-flex;margin-bottom:5px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--tgcx-accent)}.tgcx-section-head a{font-size:12px;font-weight:600;color:var(--tgcx-primary);white-space:nowrap;text-decoration:underline;text-underline-offset:4px}.tgcx-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.tgcx-card{background:#fff;border:1px solid rgba(15,120,151,.12);border-radius:16px;overflow:hidden;box-shadow:0 14px 34px rgba(15,35,50,.06);min-width:0;transition:.2s ease;position:relative}.tgcx-card:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(15,35,50,.1)}.tgcx-thumb{display:block;aspect-ratio:1/1;background:linear-gradient(135deg,var(--tgcx-soft),#fff);overflow:hidden}.tgcx-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}.tgcx-body{padding:12px}.tgcx-kicker{display:inline-flex;align-items:center;gap:6px;font-size:10px;line-height:1;font-weight:600;color:var(--tgcx-accent);margin-bottom:7px}.tgcx-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#172033;font-size:13.5px;font-weight:600;line-height:1.35;min-height:37px}.tgcx-body p{margin:7px 0 10px;color:#5f6f7c;font-size:11.5px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:33px}.tgcx-body em{display:block;color:#6b7280;font-style:normal;font-size:10.8px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tgcx-expert .tgcx-card{border-radius:22px;text-align:center}.tgcx-expert .tgcx-thumb{width:78%;margin:12px auto 0;border-radius:50%;box-shadow:0 0 0 6px color-mix(in srgb,var(--tgcx-primary) 8%,#fff)}.tgcx-expert .tgcx-kicker{justify-content:center;color:var(--tgcx-primary)}.tgcx-product .tgcx-card{border-radius:14px;border-bottom:3px solid var(--tgcx-accent)}.tgcx-product .tgcx-body{background:linear-gradient(180deg,#fff,var(--tgcx-soft))}.tgcx-product .tgcx-kicker{position:absolute;left:10px;top:10px;background:var(--tgcx-primary);color:#fff;padding:7px 9px;border-radius:999px;z-index:2}.tgcx-service .tgcx-card{display:grid;grid-template-rows:auto 1fr;border-left:4px solid var(--tgcx-primary)}.tgcx-service .tgcx-thumb{border-radius:0 0 22px 0}.tgcx-service .tgcx-kicker{color:#fff;background:var(--tgcx-accent);padding:6px 9px;border-radius:8px}.tgcx-brand .tgcx-card{border-radius:18px;text-align:center;background:linear-gradient(180deg,#fff,var(--tgcx-soft))}.tgcx-brand .tgcx-thumb{margin:12px 12px 0;border-radius:18px;border:1px solid rgba(15,35,50,.08)}.tgcx-brand .tgcx-body{padding:13px 12px 15px}.tgcx-brand .tgcx-kicker{color:var(--tgcx-primary);justify-content:center}.tgcx-cta-duo{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:32px auto}.tgcx-cta{min-height:132px;padding:24px;border-radius:18px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;color:#fff;box-shadow:0 18px 42px rgba(15,35,50,.12)}.tgcx-cta:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 18%,rgba(255,255,255,.25),transparent 28%),linear-gradient(135deg,rgba(255,255,255,.08),transparent);pointer-events:none}.tgcx-cta-left{background:linear-gradient(135deg,var(--tgcx-primary),color-mix(in srgb,var(--tgcx-primary) 72%,#000))}.tgcx-cta-right{background:linear-gradient(135deg,var(--tgcx-accent),color-mix(in srgb,var(--tgcx-accent) 70%,#7c4a00))}.tgcx-cta span{font-size:13px;font-weight:600;opacity:.9;margin-bottom:8px}.tgcx-cta b{font-size:24px;line-height:1.15;max-width:520px}.tgcx-cta i{position:absolute;right:22px;bottom:20px;font-size:26px;opacity:.75}@media(max-width:1024px){.tgcx-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.tgcx-section{margin:22px auto}.tgcx-section-head{align-items:center}.tgcx-section-head h2{font-size:19px}.tgcx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tgcx-body{padding:10px}.tgcx-title{font-size:12.5px}.tgcx-expert .tgcx-thumb{width:74%;margin-top:10px}.tgcx-cta-duo{grid-template-columns:1fr;gap:12px}.tgcx-cta{min-height:112px;padding:18px}.tgcx-cta b{font-size:19px}}


/* === dot vn Studio BẢN X v3 HEADER/MENU CONTRAST PATCH === */
:root{
  --dvx-menu-bg:#9a3412;
  --dvx-menu-fg:#fff7ed;
  --dvx-menu-accent:#f59e0b;
  --dvx-submenu-bg:#ffffff;
  --dvx-submenu-fg:#111827;
}
/* Header/nav: bảo đảm không trùng màu và active chỉ gạch chân */
html body .nav-wrap,
html body header .nav-wrap,
html body .site-nav-wrap,
html body .main-nav-wrap,
html body .menu-bar,
html body .header-nav,
html body .primary-nav-wrap{
  background:var(--dvx-menu-bg)!important;
  color:var(--dvx-menu-fg)!important;
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:0 10px 26px rgba(15,23,42,.08)!important;
  overflow:visible!important;
}
html body header .nav,
html body .nav-wrap .nav,
html body .header .nav,
html body .main-navigation,
html body .primary-navigation{
  background:transparent!important;
  color:var(--dvx-menu-fg)!important;
  overflow:visible!important;
  position:relative!important;
  z-index:40!important;
}
@media(min-width:761px){
  html body .nav,
  html body .primary-menu{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    overflow:visible!important;
    min-height:48px!important;
  }
  html body .primary-menu,
  html body .primary-menu ul{list-style:none!important;margin:0!important;padding:0!important;}
  html body .primary-menu > li{position:relative!important;list-style:none!important;margin:0!important;padding:0!important;}
  html body .nav > a,
  html body .primary-menu > li > a{
    min-height:34px!important;
    height:34px!important;
    padding:0 13px!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.08)!important;
    color:var(--dvx-menu-fg)!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    font-size:12px!important;
    font-weight:600!important;
    line-height:1!important;
    text-transform:none!important;
    text-decoration:none!important;
    box-shadow:none!important;
    white-space:nowrap!important;
  }
  html body .nav > a:hover,
  html body .primary-menu > li > a:hover{
    color:var(--dvx-menu-fg)!important;
    background:rgba(255,255,255,.14)!important;
    border-color:rgba(255,255,255,.32)!important;
    box-shadow:inset 0 -2px 0 var(--dvx-menu-accent)!important;
    text-decoration:none!important;
  }
  html body .nav > a.active,
  html body .nav > a.current,
  html body .primary-menu > li.current-menu-item > a,
  html body .primary-menu > li.current-menu-ancestor > a,
  html body .primary-menu > li.current_page_item > a,
  html body .current-menu-item > a{
    color:var(--dvx-menu-fg)!important;
    background:rgba(255,255,255,.08)!important;
    border-color:rgba(255,255,255,.2)!important;
    box-shadow:inset 0 -2px 0 var(--dvx-menu-accent)!important;
    text-decoration:none!important;
  }
  /* Dropdown ổn định: không hở hover, không biến mất khi rê chuột */
  html body .primary-menu .sub-menu{
    display:none!important;
    position:absolute!important;
    top:calc(100% - 1px)!important;
    left:0!important;
    min-width:238px!important;
    margin:0!important;
    padding:8px!important;
    background:var(--dvx-submenu-bg)!important;
    color:var(--dvx-submenu-fg)!important;
    border:1px solid #e5e7eb!important;
    border-radius:12px!important;
    box-shadow:0 18px 42px rgba(15,23,42,.15)!important;
    z-index:9999!important;
    list-style:none!important;
  }
  html body .primary-menu .sub-menu:before{
    content:""!important;
    position:absolute!important;
    left:0!important;right:0!important;top:-10px!important;height:10px!important;
    background:transparent!important;
  }
  html body .primary-menu li:hover > .sub-menu,
  html body .primary-menu li:focus-within > .sub-menu{display:block!important;}
  html body .primary-menu .sub-menu .sub-menu{
    top:0!important;
    left:calc(100% - 1px)!important;
    margin:0!important;
  }
  html body .primary-menu .sub-menu li{
    display:block!important;
    width:100%!important;
    list-style:none!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
  }
  html body .primary-menu .sub-menu a{
    min-height:36px!important;
    height:auto!important;
    padding:9px 11px!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    color:var(--dvx-submenu-fg)!important;
    box-shadow:none!important;
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:0!important;
    text-align:left!important;
    font-size:12.5px!important;
    line-height:1.35!important;
    font-weight:500!important;
    white-space:normal!important;
  }
  html body .primary-menu .sub-menu a:hover{
    background:#f3f4f6!important;
    color:#111827!important;
    box-shadow:none!important;
  }
  /* Cấp 2/3 không dùng icon như menu chính */
  html body .primary-menu .sub-menu a > i,
  html body .primary-menu .sub-menu a > svg,
  html body .primary-menu .sub-menu a:before,
  html body .primary-menu .sub-menu a:after{
    display:none!important;
    content:none!important;
  }
}
@media(max-width:760px){
  html body .nav-wrap,
  html body header .nav-wrap,
  html body .site-nav-wrap,
  html body .main-nav-wrap,
  html body .menu-bar,
  html body .header-nav,
  html body .primary-nav-wrap{
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
  }
  html body .header .nav,
  html body header .nav,
  html body .nav-wrap .nav,
  html body .nav{
    display:none!important;
    position:relative!important;
    width:100%!important;
    margin:8px 0 0!important;
    padding:10px!important;
    background:var(--dvx-menu-bg)!important;
    color:var(--dvx-menu-fg)!important;
    border-radius:14px!important;
    border:1px solid rgba(255,255,255,.16)!important;
    box-shadow:0 16px 34px rgba(15,23,42,.14)!important;
    z-index:9999!important;
    overflow:visible!important;
  }
  html body .header .nav.is-open,
  html body header .nav.is-open,
  html body .nav-wrap .nav.is-open,
  html body .nav.is-open,
  html body .nav.open{display:block!important;}
  html body .primary-menu{display:block!important;width:100%!important;margin:0!important;padding:0!important;list-style:none!important;}
  html body .primary-menu li{list-style:none!important;margin:0!important;padding:0!important;}
  html body .nav > a,
  html body .primary-menu > li > a{
    min-height:36px!important;
    height:auto!important;
    padding:9px 11px!important;
    margin:0 0 7px!important;
    border-radius:9px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.1)!important;
    color:var(--dvx-menu-fg)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    font-weight:600!important;
    font-size:12px!important;
    line-height:1.25!important;
    text-decoration:none!important;
    box-shadow:none!important;
  }
  html body .nav > a.active,
  html body .primary-menu > li.current-menu-item > a,
  html body .primary-menu > li.current-menu-ancestor > a{
    color:var(--dvx-menu-fg)!important;
    background:rgba(255,255,255,.1)!important;
    box-shadow:inset 0 -2px 0 var(--dvx-menu-accent)!important;
  }
  html body .primary-menu .sub-menu{
    display:none!important;
    position:static!important;
    width:100%!important;
    min-width:0!important;
    margin:0 0 7px!important;
    padding:5px 0 5px 12px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  html body .primary-menu li.submenu-open > .sub-menu,
  html body .primary-menu li.is-open > .sub-menu,
  html body .primary-menu li:focus-within > .sub-menu{display:block!important;}
  html body .primary-menu .sub-menu a{
    min-height:32px!important;
    padding:7px 9px!important;
    margin:0 0 4px!important;
    border-radius:8px!important;
    border:0!important;
    background:rgba(255,255,255,.92)!important;
    color:#111827!important;
    font-size:12px!important;
    font-weight:500!important;
    text-align:left!important;
    justify-content:flex-start!important;
  }
  html body .primary-menu .sub-menu a > i,
  html body .primary-menu .sub-menu a > svg,
  html body .primary-menu .sub-menu a:before,
  html body .primary-menu .sub-menu a:after{display:none!important;content:none!important;}
}

/* === END BẢN X v3 HEADER/MENU CONTRAST PATCH === */


/* === BẢN X V4 TYPEPOST UI + CTA PATCH START === */
.tgcx-meta-panel{margin:0 0 24px;padding:18px;border:1px solid var(--line,#e5e7eb);border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,250,252,.92));box-shadow:0 14px 32px rgba(15,23,42,.06)}
.tgcx-meta-head{display:flex;align-items:center;gap:12px;margin-bottom:13px}.tgcx-meta-head>span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--tgcx-primary,var(--blue,#0b66d8));color:#fff}.tgcx-meta-head b{display:block;font-size:16px;color:var(--text,#111827)}.tgcx-meta-head p{margin:2px 0 0;color:var(--muted,#64748b);font-size:12px}
.tgcx-tax-line{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 13px}.tgcx-tax-line a{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(15,23,42,.06);color:var(--text,#111827);font-size:11px;font-weight:600;text-decoration:none}.tgcx-tax-line a:hover{box-shadow:inset 0 -2px 0 var(--tgcx-accent,var(--blue,#0b66d8))}
.tgcx-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tgcx-field{padding:10px 12px;border:1px solid rgba(15,23,42,.08);border-radius:12px;background:#fff}.tgcx-field span{display:block;font-size:11px;color:var(--muted,#64748b);margin-bottom:4px}.tgcx-field b{display:block;font-size:13px;line-height:1.35;color:var(--text,#111827)}
.tgcx-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.tgcx-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 15px;border-radius:999px;background:var(--tgcx-primary,var(--blue,#0b66d8));color:#fff!important;font-weight:600;font-size:12px;text-decoration:none!important}.tgcx-action-btn:hover{filter:brightness(.96);transform:translateY(-1px)}
.tgcx-archive-fields{margin:8px 0 0;color:var(--tgcx-primary,var(--blue,#0b66d8));font-size:12px;font-weight:600;line-height:1.35}.tgcx-type-filter .tag-list{display:grid;gap:8px}.tgcx-type-filter .tag-row{text-decoration:none;color:inherit}
.tgcx-cta-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:26px;margin-bottom:34px}.tgcx-cta{min-height:300px!important;padding:32px!important;border-radius:22px!important;background:var(--tgcx-primary,var(--blue,#0b66d8))!important;color:#fff!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;text-decoration:none!important;box-shadow:0 20px 46px rgba(15,23,42,.13)!important;position:relative!important;overflow:hidden!important}.tgcx-cta:before{content:"";position:absolute;right:-70px;top:-70px;width:190px;height:190px;border-radius:50%;background:rgba(255,255,255,.12)}.tgcx-cta-right{background:var(--tgcx-accent,#111827)!important;color:#111827!important}.tgcx-cta-left{background:var(--tgcx-primary,var(--blue,#0b66d8))!important}.tgcx-cta span,.tgcx-cta b,.tgcx-cta i,.tgcx-cta .tgcx-cta-button{position:relative;z-index:2}.tgcx-cta span{font-size:15px!important;opacity:.9!important;margin-bottom:8px!important}.tgcx-cta b{font-size:clamp(24px,2.3vw,34px)!important;line-height:1.15!important;max-width:520px!important}.tgcx-cta .tgcx-cta-button{margin-top:24px;display:inline-flex;align-items:center;gap:9px;padding:12px 18px;border-radius:999px;background:#fff;color:#111827;font-size:13px;font-weight:600}.tgcx-cta-right .tgcx-cta-button{background:#111827;color:#fff}.tgcx-cta>i{display:none!important}
@media(max-width:760px){.tgcx-field-grid{grid-template-columns:1fr}.tgcx-actions{display:grid;grid-template-columns:1fr}.tgcx-cta-duo{grid-template-columns:1fr;gap:14px}.tgcx-cta{min-height:230px!important;padding:24px!important}.tgcx-cta b{font-size:24px!important}}
/* === BẢN X V4 TYPEPOST UI + CTA PATCH END === */


/* === BẢN X V4.1 INTERLEAVED HOME PATCH === */
.tgcx-home{display:block!important}.tgcx-section{margin-top:30px!important;margin-bottom:30px!important}.tgcx-section+.tgcx-section{margin-top:30px!important}.tgcx-cta-duo{clear:both!important}.tgcx-cta{min-height:300px!important;background-image:none!important}.tgcx-cta-left,.tgcx-cta-right{background-image:none!important}.tgcx-cta-button{font-style:normal!important}.tgcx-section .tgcx-grid{align-items:stretch!important}.tgcx-section .tgcx-thumb{aspect-ratio:1/1!important;overflow:hidden!important}.tgcx-section .tgcx-thumb img{width:100%!important;height:100%!important;object-fit:cover!important}


/* BẢN X v4.2: sidebar 'Dành cho bạn' important info cards */
.sidebar-nav-box .side-title span{letter-spacing:.01em}
.sidebar-links-grid{display:grid;grid-template-columns:1fr;gap:10px}
.sidebar-link-pill{position:relative;display:grid!important;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-height:46px;padding:9px 12px!important;border-radius:13px!important;font-weight:600!important;line-height:1.25;text-align:left!important}
.sidebar-link-pill i{width:34px;height:34px;border-radius:50%;display:grid!important;place-items:center;font-size:13px!important;background:rgba(15,120,151,.10);color:var(--red,var(--blue,#0f7897))!important;flex:0 0 34px}
.sidebar-link-pill span{display:block;white-space:normal;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){.sidebar-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sidebar-link-pill{min-height:58px;grid-template-columns:30px minmax(0,1fr);padding:8px!important;font-size:11.5px!important}.sidebar-link-pill i{width:30px;height:30px;font-size:12px!important}}
