/* GoldenKey v9.2 — balanced Vietnamese typography and contact footer. */
:root{--gk-sans:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;--gk-display:"Lora","Times New Roman",serif}
html body{font-family:var(--gk-sans);font-size:16px;font-weight:400;letter-spacing:0;line-height:1.72;text-rendering:optimizeLegibility}
body button,body input,body select,body textarea{font-family:var(--gk-sans)!important;letter-spacing:0}
body .gk-header-label,body .gk-header-cta,body .gk-menu-toggle,body .gk-eyebrow,body .gk-button,body .gk-footer-main h3{font-family:var(--gk-sans)!important;font-size:11px!important;letter-spacing:.1em!important;line-height:1.45}
body .gk-home-v9 h1,body .gk-home-v9 h2,body .gk-home-v9 h3,body .gk-hero h1,body .gk-section-heading h2,body .gk-statement h2,body .gk-split-feature h2,body .gk-footer-cta h2,body .gk-legal h1,body .gk-article h1,body .gk-tile-body h3,body .gk-map-grid h3,body .gk-latest-row h3,body .gk-reading-list h3,body .gk-governance h3,body .gk-menu-group-title{font-family:var(--gk-display)!important;font-style:normal;font-weight:600!important;letter-spacing:-.018em!important;line-height:1.18!important}
body .gk-hero h1{font-size:clamp(44px,5vw,78px)!important;max-width:820px}
body .gk-home-v9-hero h1{font-size:clamp(46px,5.25vw,80px)!important;max-width:850px}
body .gk-section-heading h2,body .gk-statement h2,body .gk-split-feature h2{font-size:clamp(36px,3.8vw,60px)!important}
body .gk-home-v9-principle h2,body .gk-home-v9-depth h2,body .gk-home-v9-research h2,body .gk-home-v9-booking h2{font-size:clamp(38px,4vw,62px)!important}
body .gk-signal-band h2,body .gk-footer-cta h2{font-size:clamp(34px,3.4vw,52px)!important}
body .gk-legal h1,body .gk-article h1{font-size:clamp(42px,4.7vw,68px)!important}
body .gk-tile-body h3,body .gk-map-grid h3,body .gk-governance h3{font-size:clamp(23px,2vw,30px)!important;line-height:1.24!important}
body .gk-latest-row h3,body .gk-reading-list h3{font-size:clamp(22px,1.8vw,27px)!important;line-height:1.28!important}
body .gk-menu-group-title{font-size:28px!important;line-height:1.22!important}
body .gk-home-v9-principle p,body .gk-home-v9-research-heading p,body .gk-rich-copy p,body .gk-reading-aside p{font-family:var(--gk-sans)!important;font-size:clamp(18px,1.55vw,22px)!important;font-weight:400!important;letter-spacing:0!important;line-height:1.66!important}
body .gk-hero p,body .gk-home-v9-hero p,body .gk-home-v9-depth p,body .gk-home-v9-booking p{font-size:17px!important;line-height:1.75!important}
body .gk-section-heading p,body .gk-tile-body p,body .gk-map-grid p,body .gk-governance p,body .gk-split-feature p,body .gk-contact>div>p,body .gk-legal article,body .gk-article-content{font-size:16px!important;letter-spacing:0!important;line-height:1.78!important}
body .gk-home-v9-audience-card h3{font-size:clamp(27px,2.6vw,37px)!important;line-height:1.2!important}
body .gk-home-v9-research-grid h3{font-size:clamp(24px,2.2vw,32px)!important;line-height:1.25!important}
body .gk-home-v9 .gk-eyebrow{font-size:11px!important;letter-spacing:.12em!important}
body .gk-tile-body>span,body .gk-map-grid span,body .gk-governance span,body .gk-home-v9-audience-card span{font-size:11px!important;letter-spacing:.1em!important}
body .gk-tile-body b,body .gk-home-v9-booking-card>b{font-size:11px!important;letter-spacing:.08em!important;line-height:1.45!important}
body .gk-section{padding-bottom:108px!important;padding-top:108px!important}
body .gk-home-v9-hero .gk-home-v9-shell{padding-bottom:9vh!important}
body .gk-home-v9-principle .gk-home-v9-shell,body .gk-home-v9-research .gk-home-v9-shell{padding-bottom:10vh!important;padding-top:10vh!important}
body .gk-home-v9-booking .gk-home-v9-shell{padding-bottom:9vh!important;padding-top:9vh!important}

/* Footer uses the exact organisation details supplied by GoldenKey. */
body .gk-footer-main{align-items:start;gap:38px;grid-template-columns:minmax(180px,.95fr) minmax(360px,1.7fr) minmax(130px,.62fr) minmax(130px,.62fr);padding-bottom:58px;padding-top:62px}
body .gk-footer-brand img{display:block;filter:none!important;height:auto;max-width:310px;width:100%}
body .gk-footer-company h3{color:#fff!important;font-size:22px!important;font-weight:700!important;letter-spacing:0!important;line-height:1.35!important;margin:0 0 16px!important;text-transform:uppercase}
body .gk-footer-contact-card{border:1px solid rgba(255,255,255,.56);border-radius:22px;padding:19px 22px}
body .gk-footer-contact-card p{color:rgba(255,255,255,.92);font-size:15px;line-height:1.67;margin:0 0 7px}
body .gk-footer-contact-card p:last-child{margin-bottom:0}
body .gk-footer-contact-card strong{color:#fff;font-weight:700}
body .gk-footer-contact-card a{color:#fff!important;display:inline!important;font-size:15px!important;margin:0!important;text-decoration:none}
body .gk-footer-hours{color:#fff;font-size:15px;line-height:1.5;margin:15px 0 11px}
body .gk-footer-socials{display:flex;gap:10px}
body .gk-footer-socials span{align-items:center;background:#4267a9;border-radius:7px;color:#fff;display:inline-flex;font-family:Arial,sans-serif;font-size:24px;font-weight:700;height:48px;justify-content:center;line-height:1;width:48px}
body .gk-footer-socials span:last-child{background:#d11d22;font-size:19px;padding-left:2px}
body .gk-footer-main>div:not(.gk-footer-brand):not(.gk-footer-company)>h3{color:#d7bf9c!important;font-size:11px!important;letter-spacing:.1em!important;margin:5px 0 16px!important}
body .gk-footer-main>div:not(.gk-footer-brand):not(.gk-footer-company)>a{font-size:14px!important;line-height:1.55;margin:9px 0!important}
body .gk-footer-bottom{font-size:11px!important;letter-spacing:.05em!important;text-transform:none}

@media(max-width:800px){
  html body{font-size:16px;line-height:1.7}
  body .gk-hero h1,body .gk-home-v9-hero h1{font-size:clamp(38px,10.5vw,52px)!important;line-height:1.17!important}
  body .gk-section-heading h2,body .gk-statement h2,body .gk-split-feature h2,body .gk-home-v9-principle h2,body .gk-home-v9-depth h2,body .gk-home-v9-research h2,body .gk-home-v9-booking h2{font-size:clamp(33px,8.4vw,45px)!important;line-height:1.2!important}
  body .gk-hero p,body .gk-home-v9-hero p,body .gk-home-v9-depth p,body .gk-home-v9-booking p{font-size:16px!important}
  body .gk-home-v9-principle p,body .gk-home-v9-research-heading p,body .gk-rich-copy p,body .gk-reading-aside p{font-size:18px!important;line-height:1.65!important}
  body .gk-section{padding-bottom:76px!important;padding-top:76px!important}
  body .gk-home-v9-principle .gk-home-v9-shell,body .gk-home-v9-research .gk-home-v9-shell,body .gk-home-v9-booking .gk-home-v9-shell{padding-bottom:10vh!important;padding-top:10vh!important}
  body .gk-footer-main{display:grid;gap:32px;grid-template-columns:1fr;padding:52px 26px}
  body .gk-footer-brand,body .gk-footer-company{grid-column:auto!important}
  body .gk-footer-brand img{max-width:260px}
  body .gk-footer-company h3{font-size:19px!important}
  body .gk-footer-contact-card{border-radius:18px;padding:17px}
  body .gk-footer-contact-card p,body .gk-footer-contact-card a,body .gk-footer-hours{font-size:14px!important}
}

/* The legacy stylesheet hides Elementor locations on the public site while
 * the v9.2 footer remains live.  Expose them only in Elementor's editing
 * canvas so a new global footer can be created without a blank preview. */
body.elementor-editor-active .elementor-location-header,
body.elementor-editor-active .elementor-location-footer,
body.e-preview--show-hidden-elements .elementor-location-header,
body.e-preview--show-hidden-elements .elementor-location-footer{display:block!important}
