/* NGOC PROPERTY V5.8.246 — Vietnamese typography fix.
   Scope: dedicated Vinhomes Global Gate Hạ Long landing only.
   Loaded after V245. Fixes decomposed Vietnamese marks, title scale and section-heading centering. */
body.np-dedicated-landing-shell{
  --np246-gold:#f2cf76;
  --np246-white:#f7fbfa;
  --np246-copy:#e3efeb;
  --np246-copy-muted:#c9dcd6;
}

/* Vietnamese headings: never spread combining marks with tracking. */
body.np-dedicated-landing-shell :is(h1,h2,h3,h4,h5,h6){
  font-kerning:normal!important;
  font-variant-ligatures:common-ligatures!important;
  text-rendering:optimizeLegibility!important;
  word-spacing:normal!important;
}
body.np-dedicated-landing-shell :is(
  .np-v242-overview-head h2,
  .np-v242-overview-head h3,
  .np-v243-location-head h2,
  .np-v241-tour-copy h2,
  .np-v236-heading h2,
  .np-v236-intro h2,
  .np-v236-developer h2
){
  letter-spacing:0!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

/* Eyebrows are uppercase and may keep measured tracking. */
body.np-dedicated-landing-shell :is(
  .np-v236-heading>span,
  .np-v242-overview-head>span,
  .np-v243-location-head>span,
  .np-v241-eyebrow
){
  font-family:"Segoe UI",Arial,sans-serif!important;
  font-size:12px!important;
  line-height:1.35!important;
  letter-spacing:.20em!important;
  font-weight:800!important;
  color:var(--np246-gold)!important;
}

/* One logical centered section-title system. */
body.np-dedicated-landing-shell :is(
  .np-v242-overview-head,
  .np-v243-location-head,
  .np-v236-heading.center
){
  width:min(100%,1040px)!important;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
body.np-dedicated-landing-shell :is(
  .np-v242-overview-head h2,
  .np-v243-location-head h2,
  .np-v236-heading h2,
  .np-v241-tour-copy h2
){
  width:min(100%,1000px)!important;
  max-width:1000px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
  text-wrap:balance!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(40px,3.25vw,48px)!important;
  line-height:1.12!important;
  font-weight:700!important;
  color:var(--np246-gold)!important;
}
body.np-dedicated-landing-shell .np-v242-overview-head h2{margin-top:8px!important;margin-bottom:4px!important}
body.np-dedicated-landing-shell .np-v243-location-head h2{margin-top:10px!important;margin-bottom:0!important}

body.np-dedicated-landing-shell .np-v242-overview-head h3{
  width:min(100%,920px)!important;
  margin:8px auto 0!important;
  text-align:center!important;
  text-wrap:balance!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(23px,1.8vw,28px)!important;
  line-height:1.22!important;
  font-weight:600!important;
  color:var(--np246-white)!important;
}
body.np-dedicated-landing-shell :is(
  .np-v242-overview-head p,
  .np-v243-location-head p,
  .np-v236-heading p,
  .np-v241-tour-copy>p
){
  width:min(100%,900px)!important;
  max-width:900px!important;
  margin:14px auto 0!important;
  text-align:center!important;
  text-wrap:pretty!important;
  font-family:"Segoe UI",Arial,sans-serif!important;
  font-size:16.5px!important;
  line-height:1.68!important;
  font-weight:450!important;
  color:var(--np246-copy)!important;
}

/* Location cards: keep hierarchy readable without competing with section title. */
body.np-dedicated-landing-shell .np-v243-location-copy h3{
  font-family:"Segoe UI",Arial,sans-serif!important;
  font-size:18px!important;
  line-height:1.36!important;
  letter-spacing:0!important;
  color:var(--np246-white)!important;
}
body.np-dedicated-landing-shell .np-v243-location-copy p{
  font-family:"Segoe UI",Arial,sans-serif!important;
  font-size:15.5px!important;
  line-height:1.66!important;
  color:var(--np246-copy-muted)!important;
}

/* Overview fact cards match location card typography. */
body.np-dedicated-landing-shell .np-v242-fact-grid b{
  font-family:"Segoe UI",Arial,sans-serif!important;
  font-size:16px!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  color:var(--np246-white)!important;
}
body.np-dedicated-landing-shell .np-v242-fact-grid small{
  font-family:"Segoe UI",Arial,sans-serif!important;
  letter-spacing:.08em!important;
  color:var(--np246-gold)!important;
}

/* Large desktop/laptop: preserve full-screen sections but avoid oversized typography. */
@media(min-width:1181px){
  body.np-dedicated-landing-shell .np-v242-overview-head,
  body.np-dedicated-landing-shell .np-v243-location-head{
    padding-left:24px!important;
    padding-right:24px!important;
    box-sizing:border-box!important;
  }
}

/* Laptop widths similar to the user's screenshots. */
@media(min-width:900px) and (max-width:1440px){
  body.np-dedicated-landing-shell :is(
    .np-v242-overview-head h2,
    .np-v243-location-head h2,
    .np-v236-heading h2,
    .np-v241-tour-copy h2
  ){
    font-size:clamp(38px,3.1vw,44px)!important;
    max-width:920px!important;
  }
  body.np-dedicated-landing-shell .np-v242-overview-head h3{
    font-size:24px!important;
  }
  body.np-dedicated-landing-shell :is(
    .np-v242-overview-head p,
    .np-v243-location-head p,
    .np-v236-heading p,
    .np-v241-tour-copy>p
  ){
    font-size:16px!important;
    max-width:860px!important;
  }
}

@media(max-width:760px){
  body.np-dedicated-landing-shell :is(
    .np-v242-overview-head h2,
    .np-v243-location-head h2,
    .np-v236-heading h2,
    .np-v241-tour-copy h2
  ){
    font-size:30px!important;
    line-height:1.15!important;
    max-width:100%!important;
  }
  body.np-dedicated-landing-shell .np-v242-overview-head h3{
    font-size:21px!important;
    line-height:1.28!important;
  }
  body.np-dedicated-landing-shell :is(
    .np-v242-overview-head p,
    .np-v243-location-head p,
    .np-v236-heading p,
    .np-v241-tour-copy>p
  ){
    font-size:15px!important;
    line-height:1.62!important;
    max-width:100%!important;
  }
  body.np-dedicated-landing-shell .np-v243-location-copy h3{font-size:16px!important}
  body.np-dedicated-landing-shell .np-v243-location-copy p{font-size:14px!important}
}

@media(max-width:430px){
  body.np-dedicated-landing-shell :is(
    .np-v242-overview-head h2,
    .np-v243-location-head h2,
    .np-v236-heading h2,
    .np-v241-tour-copy h2
  ){
    font-size:28px!important;
  }
  body.np-dedicated-landing-shell .np-v242-overview-head h3{font-size:20px!important}
}
