/* ==========================================================
   THANH GIANG HOME V4 — OPTIMIZED CLEAN CSS
   Generated from the current working CSS. Duplicate legacy overrides removed.
   Scope: body.tg-home-v2-page
========================================================== */
body.tg-home-v2-page {

    --tg-blue: var(--tg-v2-primary, #0757c7);

    --tg-blue-2: #0b68e8;

    --tg-red: var(--tg-v2-secondary, #ef233c);

    --tg-yellow: var(--tg-v2-accent, #ffb703);

    --tg-green: var(--tg-v2-success, #10b981);

    --tg-purple: var(--tg-v2-purple, #7c3aed);

    --tg-orange: var(--tg-v2-orange, #f97316);

    --tg-navy: var(--tg-v2-navy, #062b52);

    --tg-text: #14213d;

    --tg-muted: #667085;

    --tg-line: #e4eaf2;

    --tg-soft: var(--tg-v2-soft, #f5f9ff);

    --tg-white: #ffffff;

    --tg-radius: 14px;

    overflow-x: hidden;

}

body.tg-home-v2-page *, body.tg-home-v2-page *::before, body.tg-home-v2-page *::after {

    box-sizing: border-box;

}

body.tg-home-v2-page #content > .container, body.tg-home-v2-page .tg-v2-page-shell, body.tg-home-v2-page .tg-v2-page-shell .site-main, body.tg-home-v2-page .tg-v2-page-shell #main, body.tg-home-v2-page .tg-v2-page-shell #primary, body.tg-home-v2-page .tg-v2-page-shell.content-sidebar-wrap {

    width: 100% !important;

    max-width: none !important;

    min-width: 0 !important;

    float: none !important;

    margin-left: 0 !important;

    margin-right: 0 !important;

    padding-left: 0 !important;

    padding-right: 0 !important;

}

body.tg-home-v2-page .tg-v2-home {

    width: 100%;

    color: var(--tg-text);

    font-family: var(--tg-font-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif);

}

body.tg-home-v2-page .tg-v2-home a {

    text-decoration: none;

}

body.tg-home-v2-page .tg-v2-container {

    width: min(1240px, calc(100% - 40px));

    margin: 0 auto;

}

body.tg-home-v2-page .tg-v2-slider-wrap {

    width: 100%;

    background: #fff;

    overflow: hidden;

}

body.tg-home-v2-page .tg-v2-slider-wrap .metaslider, body.tg-home-v2-page .tg-v2-slider-wrap .ml-slider {

    width: 100%;

    max-width: none;

    margin: 0 auto;

}

body.tg-home-v2-page .tg-v2-hero {

    padding: 34px 0 30px;

}

body.tg-home-v2-page .tg-v2-hero-copy {

    text-align: center;

    margin: 0 auto 22px;

}

body.tg-home-v2-page .tg-v2-eyebrow, body.tg-home-v2-page .tg-v2-section-kicker {

    display: inline-block;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-hero h1 {

    margin: 8px 0 9px;

    color: var(--tg-navy);

}

body.tg-home-v2-page .tg-v2-hero-copy p {

    margin: 0 auto;

    max-width: 690px;

    color: var(--tg-muted);

}

body.tg-home-v2-page .tg-v2-search-card {

    padding: 18px;

    border-radius: 18px;

}

body.tg-home-v2-page .tg-v2-filter-grid {

    display: grid;

    grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(155px, 1fr)) auto;

    gap: 10px;

    align-items: end;

}

body.tg-home-v2-page .tg-v2-field {

    display: block;

    min-width: 0;

    margin: 0;

}

body.tg-home-v2-page .tg-v2-field > span, body.tg-home-v2-page .tg-v2-sort > span {

    display: block;

    margin: 0 0 6px;

    color: #53627a;

}

body.tg-home-v2-page .tg-v2-field input, body.tg-home-v2-page .tg-v2-field select, body.tg-home-v2-page .tg-v2-sort select {

    width: 100%;

    height: 46px;

    margin: 0;

    padding: 0 12px;

    color: #1f2937;

    background: #fff;

    border: 1px solid #d9e2ee;

    border-radius: 10px;

    outline: 0;

    box-shadow: none;

}

body.tg-home-v2-page .tg-v2-field input:focus, body.tg-home-v2-page .tg-v2-field select:focus, body.tg-home-v2-page .tg-v2-sort select:focus {

    border-color: #76a8ea;

    box-shadow: 0 0 0 3px rgba(7, 87, 199, .08);

}

body.tg-home-v2-page .tg-v2-input-wrap {

    position: relative;

}

body.tg-home-v2-page .tg-v2-input-wrap input {

    padding-right: 38px;

}

body.tg-home-v2-page .tg-v2-search-icon {

    position: absolute;

    right: 13px;

    top: 50%;

    transform: translateY(-50%);

    color: #6e7d92;

    font-size: 21px;

    pointer-events: none;

}

body.tg-home-v2-page .tg-v2-search-button {

    height: 46px;

    padding: 0 19px;

    border: 0;

    border-radius: 10px;

    color: #fff;

    white-space: nowrap;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-search-button:hover {

    filter: brightness(.97);

}

body.tg-home-v2-page .tg-v2-quick-row {

    display: flex;

    gap: 10px;

    align-items: center;

    margin-top: 14px;

    padding-top: 14px;

    border-top: 1px solid #edf1f6;

}

body.tg-home-v2-page .tg-v2-quick-label {

    color: #6b7789;

    font-size: 12px;

    font-weight: 700;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-quick-chips {

    display: flex;

    flex: 1;

}

body.tg-home-v2-page .tg-v2-chip, body.tg-home-v2-page .tg-v2-advanced-toggle, body.tg-home-v2-page .tg-v2-clear-button {

    border: 1px solid #dce5f0;

    background: #f8fafc;

    color: #41516a;

    border-radius: 9px;

    padding: 7px 11px;

    font-size: 11px;

    line-height: 1.1;

    font-weight: 700;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-chip.is-active {

    border-color: #b9d3f5;

    background: #eaf3ff;

    color: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-dot {

    display: inline-block;

    width: 6px;

    height: 6px;

    margin-right: 5px;

    background: #19a66a;

    border-radius: 50%;

    vertical-align: middle;

}

body.tg-home-v2-page .tg-v2-advanced-toggle {

    margin-left: auto;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-advanced-filters {

    display: grid;

    margin-top: 14px;

    padding-top: 14px;

    border-top: 1px solid #edf1f6;

}

body.tg-home-v2-page .tg-v2-advanced-filters[hidden] {

    display: none !important;

}

body.tg-home-v2-page .tg-v2-search-card.is-loading {

    opacity: .82;

}

body.tg-home-v2-page .tg-v2-jobs-section {

    padding: 44px 0 52px;

}

body.tg-home-v2-page .tg-v2-jobs-layout {

    display: grid;

    grid-template-columns: minmax(0, 1fr) 270px;

    gap: 22px;

    align-items: start;

}

body.tg-home-v2-page .tg-v2-results-panel {

    min-width: 0;

}

body.tg-home-v2-page .tg-v2-results-toolbar {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 18px;

    margin-bottom: 14px;

}

body.tg-home-v2-page .tg-v2-results-toolbar h2, body.tg-home-v2-page .tg-v2-section-heading h2, body.tg-home-v2-page .tg-v2-about-copy h2 {

    margin: 5px 0 6px;

    color: var(--tg-navy);

}

body.tg-home-v2-page .tg-v2-results-toolbar p, body.tg-home-v2-page .tg-v2-section-heading p {

    margin: 0;

    color: var(--tg-muted);

}

body.tg-home-v2-page .tg-v2-sort {

    width: 145px;

    flex: 0 0 auto;

}

body.tg-home-v2-page .tg-v2-sort select {

    height: 40px;

}

body.tg-home-v2-page .tg-v2-job-head, body.tg-home-v2-page .tg-v2-job-card {

    display: grid;

    align-items: center;

}

body.tg-home-v2-page .tg-v2-job-head {

    padding: 9px 13px;

    border: 1px solid #e5ebf2;

    border-radius: 10px 10px 0 0;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-job-results {

    border-left: 1px solid #e4eaf2;

    border-right: 1px solid #e4eaf2;

}

body.tg-home-v2-page .tg-v2-job-card {

    padding: 13px;

    border-bottom: 1px solid #e7edf4;

}

body.tg-home-v2-page .tg-v2-job-card:hover {

    position: relative;

    z-index: 2;

    background: #fbfdff;

    box-shadow: 0 8px 24px rgba(31, 66, 109, .08);

}

body.tg-home-v2-page .tg-v2-job-main, body.tg-home-v2-page .tg-v2-job-cell, body.tg-home-v2-page .tg-v2-job-actions {

    min-width: 0;

}

body.tg-home-v2-page .tg-v2-job-code-line {

    display: flex;

    align-items: center;

    gap: 7px;

    margin-bottom: 4px;

}

body.tg-home-v2-page .tg-v2-job-code {

    color: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-new-badge {

    display: inline-flex;

    align-items: center;

    min-height: 17px;

    padding: 2px 5px;

    border-radius: 5px;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-job-title {

    margin: 0;

}

body.tg-home-v2-page .tg-v2-job-title a {

    color: #1c2940;

}

body.tg-home-v2-page .tg-v2-job-exam {

    margin: 4px 0 0;

    color: #7b8798;

}

body.tg-home-v2-page .tg-v2-cell-label {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-cell strong {

    display: block;

    color: #27364d;

    overflow-wrap: anywhere;

}

body.tg-home-v2-page .tg-v2-job-cell small {

    display: block;

    margin-top: 3px;

    color: #252525;

    overflow-wrap: anywhere;

}

body.tg-home-v2-page .tg-v2-job-salary strong {

    color: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-job-actions {

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 5px;

}

body.tg-home-v2-page .tg-v2-status {

    display: inline-flex;

    padding: 4px 7px;

    border-radius: 6px;

    line-height: 1;

    white-space: nowrap;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-status.is-paused {

    color: #9a6700;

    background: #fff6dc;

}

body.tg-home-v2-page .tg-v2-status.is-closed {

    color: #667085;

    background: #f1f3f5;

}

body.tg-home-v2-page .tg-v2-detail-button {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-height: 28px;

    padding: 4px 7px;

    border-radius: 6px;

    color: #fff;

    font-size: 9px;

    font-weight: 800;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-load-more {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    width: 100%;

    min-height: 44px;

    margin: 14px 0 0;

    border: 1px solid #cbd9e9;

    border-radius: 10px;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-load-more[hidden], body.tg-home-v2-page .tg-v2-empty-state[hidden] {

    display: none !important;

}

body.tg-home-v2-page .tg-v2-empty-state, body.tg-home-v2-page .tg-v2-request-error {

    padding: 28px 18px;

    border: 1px solid #e3e9f1;

    border-radius: 10px;

    text-align: center;

    color: #5e6c80;

    background: #fbfcfe;

}

body.tg-home-v2-page .tg-v2-empty-state strong {

    color: #23324a;

    font-size: 16px;

}

body.tg-home-v2-page .tg-v2-empty-state p {

    margin: 6px 0 12px;

}

body.tg-home-v2-page .tg-v2-empty-state button {

    border: 0;

    color: var(--tg-blue);

    background: transparent;

    font-weight: 800;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-sidebar {

    position: sticky;

    top: 92px;

    display: grid;

    gap: 12px;

    align-self: start;

}

body.tg-home-v2-page .tg-v2-side-card {

    padding: 16px;

    border: 1px solid #e0e7f0;

    border-radius: 13px;

    background: #fff;

    box-shadow: 0 8px 24px rgba(19, 48, 83, .06);

}

body.tg-home-v2-page .tg-v2-side-card h2 {

    margin: 0 0 10px;

    color: var(--tg-navy);

}

body.tg-home-v2-page .tg-v2-side-links button {

    display: flex;

    justify-content: space-between;

    gap: 10px;

    width: 100%;

    padding: 9px 9px;

    color: #40516a;

    background: none;

    border: 0;

    border-bottom: 1px solid #edf1f5;

    text-align: left;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-side-links button:last-child {

    border-bottom: 0;

}

body.tg-home-v2-page .tg-v2-consult-card {

    color: #fff;

    border-color: transparent;

}

body.tg-home-v2-page .tg-v2-consult-card > span {

    color: #bcd8ff;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-consult-card h2 {

    margin-top: 5px;

    color: #fff;

}

body.tg-home-v2-page .tg-v2-consult-card p {

    margin: 0 0 12px;

    color: #d8e8ff;

}

body.tg-home-v2-page .tg-v2-side-primary, body.tg-home-v2-page .tg-v2-side-phone {

    display: flex;

    align-items: center;

    justify-content: center;

    min-height: 36px;

    border-radius: 8px;

}

body.tg-home-v2-page .tg-v2-side-phone {

    margin-top: 7px;

    color: #fff;

    border: 1px solid rgba(255,255,255,.28);

}

body.tg-home-v2-page .tg-v2-about-section {

    padding: 66px 0;

    border-top: 1px solid #ffefc2;

}

body.tg-home-v2-page .tg-v2-about-grid {

    display: grid;

    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);

    gap: 42px;

    align-items: center;

}

body.tg-home-v2-page .tg-v2-about-visual {

    min-height: 330px;

    border-radius: 18px;

    overflow: hidden;

    background: #dfeaf7;

    box-shadow: 0 18px 44px rgba(19, 53, 92, .13);

}

body.tg-home-v2-page .tg-v2-about-visual img {

    display: block;

    width: 100%;

    height: 100%;

    min-height: 330px;

    object-fit: cover;

}

body.tg-home-v2-page .tg-v2-about-placeholder {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    min-height: 330px;

    padding: 30px;

    color: #fff;

    background: linear-gradient(145deg, #0b5cc9, #082e60);

    text-align: center;

}

body.tg-home-v2-page .tg-v2-about-placeholder span {

    font-size: 13px;

    font-weight: 900;

    letter-spacing: .12em;

}

body.tg-home-v2-page .tg-v2-about-placeholder strong {

    margin-top: 10px;

    font-size: 28px;

    line-height: 1.2;

}

body.tg-home-v2-page .tg-v2-about-copy h2 {

    font-size: clamp(28px, 3vw, 40px);

}

body.tg-home-v2-page .tg-v2-about-text {

    color: #526178;

}

body.tg-home-v2-page .tg-v2-about-text p {

    margin: 0 0 11px;

}

body.tg-home-v2-page .tg-v2-text-link {

    display: inline-flex;

    gap: 7px;

    margin-top: 4px;

    color: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-benefit-grid {

    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 12px;

    margin-top: 34px;

}

body.tg-home-v2-page .tg-v2-benefit {

    min-height: 150px;

    padding: 18px;

    border-radius: 13px;

}

body.tg-home-v2-page .tg-v2-benefit > span {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    border-radius: 8px;

}

body.tg-home-v2-page .tg-v2-benefit h3 {

    margin: 11px 0 5px;

    color: #19283f;

}

body.tg-home-v2-page .tg-v2-benefit p {

    margin: 0;

    color: #687589;

}

body.tg-home-v2-page .tg-v2-media-section {

    padding: 66px 0;

}

body.tg-home-v2-page .tg-v2-section-heading {

    max-width: 720px;

}

body.tg-home-v2-page .tg-v2-section-heading-center {

    margin: 0 auto 30px;

    text-align: center;

}

body.tg-home-v2-page .tg-v2-media-grid {

    display: grid;

    grid-template-columns: minmax(0, 1.45fr) minmax(320px, 1fr);

    gap: 24px;

    align-items: stretch;

}

body.tg-home-v2-page .tg-v2-album-card, body.tg-home-v2-page .tg-v2-video-card {

    border: 1px solid #e0e7f0;

    border-radius: 18px;

    background: #f9fbfe;

    overflow: hidden;

}

body.tg-home-v2-page .tg-v2-album-card {

    min-height: 430px;

    padding: 20px;

}

body.tg-home-v2-page .tg-v2-book {

    display: flex;

    flex-direction: column;

    height: 100%;

}

body.tg-home-v2-page .tg-v2-book-pages {

    position: relative;

    flex: 1;

    min-height: 350px;

    perspective: 1800px;

    border-radius: 14px;

}

body.tg-home-v2-page .tg-v2-book-page {

    position: absolute;

    inset: 0;

    margin: 0;

    overflow: hidden;

    border-radius: 12px;

    background: #dbe6f3;

    transform-origin: left center;

    transform-style: preserve-3d;

    transition: transform .7s cubic-bezier(.2,.7,.2,1), filter .35s ease;

    box-shadow: 0 12px 30px rgba(13, 48, 86, .14);

    backface-visibility: hidden;

}

body.tg-home-v2-page .tg-v2-book-page::after {

    content: "";

    position: absolute;

    inset: 0;

    background: linear-gradient(90deg, rgba(255,255,255,.7), rgba(236,242,249,.96));

    transform: rotateY(180deg);

    backface-visibility: hidden;

}

body.tg-home-v2-page .tg-v2-book-page.is-flipped {

    transform: rotateY(-178deg);

    filter: brightness(.96);

}

body.tg-home-v2-page .tg-v2-book-page img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

}

body.tg-home-v2-page .tg-v2-book-page figcaption {

    position: absolute;

    left: 12px;

    right: 12px;

    bottom: 12px;

    padding: 8px 10px;

    color: #fff;

    background: rgba(7, 31, 61, .78);

    border-radius: 8px;

}

body.tg-home-v2-page .tg-v2-book-controls {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 13px;

    padding-top: 15px;

}

body.tg-home-v2-page .tg-v2-book-controls button {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    width: 34px;

    height: 34px;

    padding: 0;

    border: 1px solid #d2deec;

    border-radius: 50%;

    color: var(--tg-blue);

    background: #fff;

    font-size: 15px;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-book-controls button:disabled {

    opacity: .35;

    cursor: default;

}

body.tg-home-v2-page .tg-v2-book-counter {

    color: #627188;

}

body.tg-home-v2-page .tg-v2-video-card {

    display: flex;

    flex-direction: column;

    padding: 20px;

}

body.tg-home-v2-page .tg-v2-video-label {

    margin-bottom: 12px;

    color: #fff;

}

body.tg-home-v2-page .tg-v2-video-shell {

    position: relative;

    aspect-ratio: 16 / 10;

    overflow: hidden;

    border-radius: 12px;

    background: #000;

}

body.tg-home-v2-page .tg-v2-video-shell img, body.tg-home-v2-page .tg-v2-video-shell iframe {

    display: block;

    width: 100%;

    height: 100%;

    border: 0;

    object-fit: cover;

}

body.tg-home-v2-page .tg-v2-video-shell::after {

    content: "";

    position: absolute;

    inset: 0;

    background: linear-gradient(180deg, transparent, rgba(0,0,0,.28));

    pointer-events: none;

}

body.tg-home-v2-page .tg-v2-video-shell.is-playing::after {

    display: none;

}

body.tg-home-v2-page .tg-v2-video-play {

    position: absolute;

    z-index: 3;

    left: 50%;

    top: 50%;

    transform: translate(-50%, -50%);

    display: flex;

    align-items: center;

    justify-content: center;

    width: 58px;

    height: 58px;

    padding: 0;

    color: #fff;

    border: 3px solid rgba(255,255,255,.85);

    border-radius: 50%;

    cursor: pointer;

    box-shadow: 0 8px 22px rgba(0,0,0,.24);

}

body.tg-home-v2-page .tg-v2-video-play span {

    margin-left: 3px;

    font-size: 21px;

}

body.tg-home-v2-page .tg-v2-video-card > p {

    margin: 13px 0 0;

    color: #aebfd4;

}

body.tg-home-v2-page .tg-v2-video-fallback, body.tg-home-v2-page .tg-v2-video-empty {

    display: flex;

    flex: 1;

    align-items: center;

    justify-content: center;

    min-height: 280px;

    padding: 20px;

    color: #fff;

    border: 1px dashed rgba(255,255,255,.3);

    border-radius: 12px;

    text-align: center;

}

body.tg-home-v2-page .tg-v2-process-section {

    padding: 64px 0;

}

body.tg-home-v2-page .tg-v2-process-list {

    display: grid;

    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 12px;

    margin: 28px 0 0;

    padding: 0;

    list-style: none;

}

body.tg-home-v2-page .tg-v2-process-list li {

    display: flex;

    gap: 12px;

    min-height: 145px;

    padding: 18px;

    border: 1px solid #e1e7ef;

    border-radius: 13px;

}

body.tg-home-v2-page .tg-v2-process-list li > span {

    display: flex;

    flex: 0 0 32px;

    align-items: center;

    justify-content: center;

    width: 32px;

    height: 32px;

    border-radius: 50%;

}

body.tg-home-v2-page .tg-v2-process-list h3 {

    margin: 3px 0 6px;

    color: #1b2a42;

}

body.tg-home-v2-page .tg-v2-process-list p {

    margin: 0;

    color: #68758a;

}

body.tg-home-v2-page .tg-v2-bottom-cta {

    padding: 34px 0;

    color: #fff;

}

body.tg-home-v2-page .tg-v2-bottom-cta-inner {

    display: grid;

    grid-template-columns: minmax(0, 1.3fr) minmax(340px, .7fr);

    gap: 36px;

}

body.tg-home-v2-page .tg-v2-bottom-cta-copy > span {

    color: #bcd9ff;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-bottom-cta h2 {

    margin: 6px 0 7px;

    color: #fff;

}

body.tg-home-v2-page .tg-v2-bottom-cta p {

    margin: 0;

    color: #d4e5fb;

}

body.tg-home-v2-page .tg-v2-bottom-form {

    display: grid;

    grid-template-columns: 1fr auto;

    gap: 8px;

}

body.tg-home-v2-page .tg-v2-bottom-form input, body.tg-home-v2-page .tg-v2-bottom-form button, body.tg-home-v2-page .tg-v2-bottom-form a {

    min-height: 44px;

    border-radius: 9px;

}

body.tg-home-v2-page .tg-v2-bottom-form input {

    width: 100%;

    padding: 0 12px;

    border: 1px solid rgba(255,255,255,.4);

    background: #fff;

    color: #1f2937;

}

body.tg-home-v2-page .tg-v2-bottom-form button {

    padding: 0 16px;

    border: 0;

    font-size: 11px;

    font-weight: 900;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-bottom-form .is-outline {

    grid-column: 1 / -1;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #fff;

    border: 1px solid rgba(255,255,255,.35);

    font-size: 11px;

    font-weight: 800;

}

body.tg-home-v2-page .tg-v2-footer {

    color: #c7d3e2;

    background: var(--tg-navy);

}

body.tg-home-v2-page .tg-v2-footer-container {

    width: min(1240px, calc(100% - 40px));

    margin: 0 auto;

}

body.tg-home-v2-page .tg-v2-footer-main {

    padding: 46px 0 28px;

}

body.tg-home-v2-page .tg-v2-footer-grid {

    display: grid;

    grid-template-columns: 1.7fr repeat(3, 1fr);

    gap: 36px;

}

body.tg-home-v2-page .tg-v2-footer-logo img {

    display: block;

    width: auto;

    max-width: 150px;

    max-height: 70px;

    margin-bottom: 13px;

}

body.tg-home-v2-page .tg-v2-footer-brand h2 {

    margin: 0 0 8px;

    color: #fff;

}

body.tg-home-v2-page .tg-v2-footer-brand p {

    margin: 0 0 10px;

    max-width: 310px;

    color: #aebdd0;

}

body.tg-home-v2-page .tg-v2-footer-col h3 {

    margin: 6px 0 12px;

    color: #fff;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-footer-col ul {

    margin: 0;

    padding: 0;

    list-style: none;

}

body.tg-home-v2-page .tg-v2-footer-col li {

    margin: 0 0 8px;

}

body.tg-home-v2-page .tg-v2-footer-col a, body.tg-home-v2-page .tg-v2-footer-social a {

    color: #b5c4d6;

}

body.tg-home-v2-page .tg-v2-footer-col a:hover, body.tg-home-v2-page .tg-v2-footer-social a:hover {

    color: #fff;

}

body.tg-home-v2-page .tg-v2-footer-branch-row {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    margin-top: 28px;

    padding-top: 22px;

    border-top: 1px solid rgba(255,255,255,.1);

}

body.tg-home-v2-page .tg-v2-footer-branch-row strong, body.tg-home-v2-page .tg-v2-footer-branch-row span {

    display: block;

}

body.tg-home-v2-page .tg-v2-footer-branch-row strong {

    color: #fff;

}

body.tg-home-v2-page .tg-v2-footer-branch-row span {

    margin-top: 3px;

    color: #91a4bb;

}

body.tg-home-v2-page .tg-v2-footer-branch-row > a {

    color: #fff;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-footer-bottom {

    padding: 14px 0;

    border-top: 1px solid rgba(255,255,255,.08);

}

body.tg-home-v2-page .tg-v2-footer-bottom-inner {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 15px;

    color: #8296ae;

}

body.tg-home-v2-page .tg-v2-footer-social {

    display: flex;

    gap: 14px;

}

body.tg-home-v2-page .tg-v2-mobile-contact {

    display: none;

}

@media (max-width: 1100px) {

body.tg-home-v2-page .tg-v2-filter-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

}

body.tg-home-v2-page .tg-v2-field-keyword {

    grid-column: 1 / -1;

}

body.tg-home-v2-page .tg-v2-search-button {

    grid-column: 1 / -1;

}

body.tg-home-v2-page .tg-v2-job-head, body.tg-home-v2-page .tg-v2-job-card {

    grid-template-columns: minmax(175px, 1.5fr) minmax(125px, 1fr) minmax(100px, .8fr) minmax(105px, .9fr) minmax(100px, .8fr);

}

body.tg-home-v2-page .tg-v2-job-head span:nth-child(4), body.tg-home-v2-page .tg-v2-job-local {

    display: none;

}

body.tg-home-v2-page .tg-v2-media-grid {

    grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);

}

}

@media (max-width: 1024px) {

body.tg-home-v2-page .tg-v2-jobs-layout {

    grid-template-columns: 1fr;

}

body.tg-home-v2-page .tg-v2-sidebar {

    position: static;

    grid-template-columns: 1fr 1fr;

}

body.tg-home-v2-page .tg-v2-about-grid, body.tg-home-v2-page .tg-v2-media-grid, body.tg-home-v2-page .tg-v2-bottom-cta-inner {

    grid-template-columns: 1fr;

}

body.tg-home-v2-page .tg-v2-process-list {

    grid-template-columns: repeat(2, minmax(0, 1fr));

}

body.tg-home-v2-page .tg-v2-footer-grid {

    grid-template-columns: 1.4fr 1fr 1fr;

}

body.tg-home-v2-page .tg-v2-footer-col:last-child {

    grid-column: 2 / 4;

}

}

@media (max-width: 767px) {

body.tg-home-v2-page {

    padding-bottom: 64px;

}

body.tg-home-v2-page .tg-v2-slider-wrap .metaslider, body.tg-home-v2-page .tg-v2-slider-wrap .ml-slider {

    overflow: hidden;

}

body.tg-home-v2-page .tg-v2-hero {

    padding: 24px 0 22px;

}

body.tg-home-v2-page .tg-v2-hero-copy {

    margin-bottom: 15px;

    text-align: left;

}

body.tg-home-v2-page .tg-v2-hero h1 {

    margin: 6px 0 7px;

}

body.tg-home-v2-page .tg-v2-hero-copy p {

    font-size: 13px;

    line-height: 1.55;

}

body.tg-home-v2-page .tg-v2-search-card {

    padding: 11px;

    border-radius: 13px;

    box-shadow: 0 9px 24px rgba(18, 55, 99, .08);

}

body.tg-home-v2-page .tg-v2-filter-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 8px;

}

body.tg-home-v2-page .tg-v2-field-keyword, body.tg-home-v2-page .tg-v2-search-button {

    grid-column: 1 / -1;

}

body.tg-home-v2-page .tg-v2-field > span {

    margin-bottom: 4px;

}

body.tg-home-v2-page .tg-v2-field input, body.tg-home-v2-page .tg-v2-field select {

    height: 40px;

    padding: 0 8px;

    border-radius: 8px;

}

body.tg-home-v2-page .tg-v2-search-button {

    height: 41px;

    border-radius: 8px;

}

body.tg-home-v2-page .tg-v2-advanced-filters {

    grid-template-columns: repeat(2, minmax(0, 1fr));

    margin-top: 10px;

    padding-top: 10px;

}

body.tg-home-v2-page .tg-v2-jobs-section {

    padding: 28px 0 34px;

}

body.tg-home-v2-page .tg-v2-results-toolbar {

    align-items: center;

    margin-bottom: 10px;

}

body.tg-home-v2-page .tg-v2-results-toolbar p {

    font-size: 10px;

}

body.tg-home-v2-page .tg-v2-sort {

    width: 105px;

}

body.tg-home-v2-page .tg-v2-sort > span {

    font-size: 8px;

}

body.tg-home-v2-page .tg-v2-sort select {

    height: 34px;

    padding: 0 6px;

    font-size: 9px;

}

body.tg-home-v2-page .tg-v2-job-head {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-card {

    background: #fff;

    box-shadow: 0 4px 13px rgba(16, 49, 86, .055);

}

body.tg-home-v2-page .tg-v2-job-card:hover {

    box-shadow: 0 4px 13px rgba(16, 49, 86, .055);

}

body.tg-home-v2-page .tg-v2-job-exam, body.tg-home-v2-page .tg-v2-job-country, body.tg-home-v2-page .tg-v2-job-local, body.tg-home-v2-page .tg-v2-job-quantity, body.tg-home-v2-page .tg-v2-consult-link {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-salary .tg-v2-cell-label {

    color: #7b8798;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-job-salary strong {

    min-height: 16px;

}

body.tg-home-v2-page .tg-v2-job-actions {

    flex-wrap: wrap;

    margin: 0;

    padding: 6px 0 0;

}

body.tg-home-v2-page .tg-v2-load-more {

    min-height: 40px;

    margin-top: 10px;

    font-size: 10px;

}

body.tg-home-v2-page .tg-v2-sidebar {

    display: block;

    margin-top: 6px;

}

body.tg-home-v2-page .tg-v2-side-links {

    display: none;

}

body.tg-home-v2-page .tg-v2-consult-card {

    padding: 14px;

}

body.tg-home-v2-page .tg-v2-about-section, body.tg-home-v2-page .tg-v2-media-section, body.tg-home-v2-page .tg-v2-process-section {

    padding: 42px 0;

}

body.tg-home-v2-page .tg-v2-about-grid {

    gap: 20px;

}

body.tg-home-v2-page .tg-v2-about-visual, body.tg-home-v2-page .tg-v2-about-visual img, body.tg-home-v2-page .tg-v2-about-placeholder {

    min-height: 220px;

}

body.tg-home-v2-page .tg-v2-about-copy h2 {

    margin-top: 5px;

}

body.tg-home-v2-page .tg-v2-about-text {

    font-size: 12px;

    line-height: 1.6;

}

body.tg-home-v2-page .tg-v2-benefit-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 8px;

    margin-top: 22px;

}

body.tg-home-v2-page .tg-v2-benefit {

    min-height: 0;

    padding: 12px;

    border-radius: 10px;

}

body.tg-home-v2-page .tg-v2-benefit > span {

    width: 24px;

    height: 24px;

    font-size: 8px;

}

body.tg-home-v2-page .tg-v2-benefit h3 {

    margin: 8px 0 4px;

    font-size: 12px;

}

body.tg-home-v2-page .tg-v2-benefit p {

    font-size: 10px;

    line-height: 1.45;

}

body.tg-home-v2-page .tg-v2-section-heading-center {

    margin-bottom: 20px;

    text-align: left;

}

body.tg-home-v2-page .tg-v2-album-card, body.tg-home-v2-page .tg-v2-video-card {

    border-radius: 13px;

}

body.tg-home-v2-page .tg-v2-album-card {

    min-height: 0;

    padding: 10px;

}

body.tg-home-v2-page .tg-v2-book-pages {

    display: flex;

    gap: 8px;

    min-height: 0;

    overflow-x: auto;

    overflow-y: hidden;

    perspective: none;

    scroll-snap-type: x mandatory;

    scrollbar-width: none;

}

body.tg-home-v2-page .tg-v2-book-pages::-webkit-scrollbar {

    display: none;

}

body.tg-home-v2-page .tg-v2-book-page, body.tg-home-v2-page .tg-v2-book-page.is-flipped {

    position: relative;

    inset: auto;

    flex: 0 0 88%;

    aspect-ratio: 4 / 3;

    transform: none;

    transition: none;

    scroll-snap-align: center;

    box-shadow: none;

}

body.tg-home-v2-page .tg-v2-book-page::after {

    display: none;

}

body.tg-home-v2-page .tg-v2-book-controls {

    padding-top: 9px;

}

body.tg-home-v2-page .tg-v2-book-controls button {

    width: 30px;

    height: 30px;

}

body.tg-home-v2-page .tg-v2-video-card {

    padding: 12px;

}

body.tg-home-v2-page .tg-v2-video-label {

    margin-bottom: 8px;

}

body.tg-home-v2-page .tg-v2-video-shell {

    aspect-ratio: 16 / 9;

    border-radius: 9px;

}

body.tg-home-v2-page .tg-v2-video-play {

    width: 48px;

    height: 48px;

}

body.tg-home-v2-page .tg-v2-video-card > p {

    margin-top: 8px;

    font-size: 9px;

}

body.tg-home-v2-page .tg-v2-process-list {

    grid-template-columns: 1fr;

    gap: 8px;

    margin-top: 19px;

}

body.tg-home-v2-page .tg-v2-process-list li {

    min-height: 0;

    padding: 12px;

}

body.tg-home-v2-page .tg-v2-bottom-cta {

    padding: 28px 0;

}

body.tg-home-v2-page .tg-v2-bottom-cta-inner {

    gap: 18px;

}

body.tg-home-v2-page .tg-v2-bottom-form {

    grid-template-columns: 1fr;

}

body.tg-home-v2-page .tg-v2-bottom-form button, body.tg-home-v2-page .tg-v2-bottom-form .is-outline {

    grid-column: 1;

}

body.tg-home-v2-page .tg-v2-footer-main {

    padding: 34px 0 20px;

}

body.tg-home-v2-page .tg-v2-footer-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 24px 18px;

}

body.tg-home-v2-page .tg-v2-footer-brand {

    grid-column: 1 / -1;

}

body.tg-home-v2-page .tg-v2-footer-col:last-child {

    grid-column: auto;

}

body.tg-home-v2-page .tg-v2-footer-branch-row, body.tg-home-v2-page .tg-v2-footer-bottom-inner {

    align-items: flex-start;

    flex-direction: column;

}

body.tg-home-v2-page .tg-v2-footer-branch-row {

    gap: 10px;

}

body.tg-home-v2-page .tg-v2-mobile-contact {

    position: fixed;

    z-index: 9998;

    left: 0;

    right: 0;

    bottom: 0;

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    min-height: 58px;

    padding: 4px 6px 3px;

    background: rgba(255,255,255,.97);

    border-top: 1px solid #dce4ee;

    box-shadow: 0 -5px 20px rgba(15, 45, 80, .12);

    backdrop-filter: blur(8px);

}

body.tg-home-v2-page .tg-v2-mobile-contact > a {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    gap: 2px;

    color: #48576d;

    font-size: 9px;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-mobile-contact-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 27px;

    height: 27px;

    border-radius: 50%;

    color: #fff;

    background: var(--tg-blue);

    font-size: 12px;

    font-weight: 900;

}

body.tg-home-v2-page .tg-v2-mobile-contact .is-call .tg-v2-mobile-contact-icon {

    width: 36px;

    height: 36px;

    margin-top: -13px;

    background: #e3342f;

    border: 3px solid #fff;

    box-shadow: 0 4px 12px rgba(227, 52, 47, .26);

}

}

@media (max-width: 370px) {

body.tg-home-v2-page .tg-v2-filter-grid, body.tg-home-v2-page .tg-v2-advanced-filters {

    grid-template-columns: 1fr;

}

body.tg-home-v2-page .tg-v2-field-keyword, body.tg-home-v2-page .tg-v2-search-button, body.tg-home-v2-page .tg-v2-clear-button {

    grid-column: 1;

}

body.tg-home-v2-page .tg-v2-job-results {

    grid-template-columns: 1fr;

}

body.tg-home-v2-page .tg-v2-benefit-grid, body.tg-home-v2-page .tg-v2-footer-grid {

    grid-template-columns: 1fr;

}

body.tg-home-v2-page .tg-v2-footer-brand {

    grid-column: 1;

}

}

body.tg-home-v2-page .tg-v2-home, body.tg-home-v2-page .tg-v2-home input, body.tg-home-v2-page .tg-v2-home select, body.tg-home-v2-page .tg-v2-home button, body.tg-home-v2-page .tg-v2-home textarea, body.tg-home-v2-page .tg-v2-home h1, body.tg-home-v2-page .tg-v2-home h2, body.tg-home-v2-page .tg-v2-home h3 {

    font-family: var(--tg-font-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;

}

body.tg-home-v2-page .tg-v2-hero h1, body.tg-home-v2-page .tg-v2-results-toolbar h2, body.tg-home-v2-page .tg-v2-section-heading h2, body.tg-home-v2-page .tg-v2-about-copy h2 {

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-field > span, body.tg-home-v2-page .tg-v2-sort > span {

    letter-spacing: 0;

}

body.tg-home-v2-page .tg-v2-quick-label, body.tg-home-v2-page .tg-v2-chip, body.tg-home-v2-page .tg-v2-advanced-toggle, body.tg-home-v2-page .tg-v2-clear-button {

    font-size: 13px;

    font-weight: 500;

}

body.tg-home-v2-page .tg-v2-results-toolbar p {

    font-size: 14px;

}

body.tg-home-v2-page .tg-v2-detail-button, body.tg-home-v2-page .tg-v2-consult-link, body.tg-home-v2-page .tg-v2-load-more {

    font-size: 11px;

    font-weight: 600;

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v2-field > span {

    font-size: 10.5px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-field input, body.tg-home-v2-page .tg-v2-field select {

    font-size: 12px;

}

body.tg-home-v2-page .tg-v2-search-button {

    font-size: 12px;

}

body.tg-home-v2-page .tg-v2-chip, body.tg-home-v2-page .tg-v2-advanced-toggle {

    font-size: 10.5px;

}

body.tg-home-v2-page .tg-v2-job-salary strong {

    font-weight: 600;

}

}

body.tg-home-v2-page .tg-v2-clear-button {

    border: 1px solid #f4a6a6;

    border-radius: 8px;

    line-height: 1;

}

body.tg-home-v2-page .tg-v2-clear-button:hover {

    color: #fff;

    background: #c62828;

    border-color: #c62828;

}

body.tg-home-v2-page #tg-v2-province:disabled {

    color: #98a2b3;

    background: #f6f8fb;

    cursor: not-allowed;

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v2-job-results {

    align-items: stretch;

}

body.tg-home-v2-page .tg-v2-job-card {

    flex-direction: column;

    align-items: stretch;

    justify-content: flex-start;

    border: 1px solid #dfe7f0;

    border-radius: 11px;

}

body.tg-home-v2-page .tg-v2-job-title {

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 2;

}

body.tg-home-v2-page .tg-v2-job-country {

    border-top: 1px solid #edf1f5;

    font-size: 10px;

    line-height: 1.3;

}

body.tg-home-v2-page .tg-v2-job-local {

    font-size: 9px;

    line-height: 1.3;

}

body.tg-home-v2-page .tg-v2-job-quantity {

    font-size: 10px;

    line-height: 1.3;

}

body.tg-home-v2-page .tg-v2-job-salary .tg-v2-cell-label {

    margin-bottom: 2px;

}

body.tg-home-v2-page .tg-v2-job-actions {

    flex-direction: row;

    align-items: center;

    justify-content: space-between;

    gap: 4px;

    margin-top: auto;

    padding-top: 6px;

    border-top: 1px solid #edf1f5;

}

body.tg-home-v2-page .tg-v2-status {

    padding: 3px 5px;

    white-space: nowrap;

}

}

@media (max-width: 319px) {

body.tg-home-v2-page .tg-v2-job-results {

    grid-template-columns: 1fr;

}

}

body.tg-home-v2-page .tg-v2-home, body.tg-home-v2-page .tg-v2-home h1, body.tg-home-v2-page .tg-v2-home h2, body.tg-home-v2-page .tg-v2-home h3, body.tg-home-v2-page .tg-v2-home h4, body.tg-home-v2-page .tg-v2-home h5, body.tg-home-v2-page .tg-v2-home h6, body.tg-home-v2-page .tg-v2-home p, body.tg-home-v2-page .tg-v2-home a, body.tg-home-v2-page .tg-v2-home span, body.tg-home-v2-page .tg-v2-home strong, body.tg-home-v2-page .tg-v2-home small, body.tg-home-v2-page .tg-v2-home label, body.tg-home-v2-page .tg-v2-home li, body.tg-home-v2-page .tg-v2-home button, body.tg-home-v2-page .tg-v2-home input, body.tg-home-v2-page .tg-v2-home select, body.tg-home-v2-page .tg-v2-home textarea {

    font-family: var(--tg-font-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;

}

body.tg-home-v2-page .tg-v2-home {

    font-size: 16px;

    line-height: 1.6;

    font-weight: 400;

    -webkit-font-smoothing: antialiased;

    text-rendering: optimizeLegibility;

}

body.tg-home-v2-page .tg-v2-eyebrow, body.tg-home-v2-page .tg-v2-section-kicker {

    font-size: 14px;

    line-height: 1.35;

    font-weight: 600;

    letter-spacing: .055em;

}

body.tg-home-v2-page .tg-v2-hero h1 {

    font-size: clamp(36px, 4vw, 50px);

    line-height: 1.12;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-hero-copy p {

    font-size: 17px;

    line-height: 1.65;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-results-toolbar h2, body.tg-home-v2-page .tg-v2-section-heading h2, body.tg-home-v2-page .tg-v2-about-copy h2 {

    font-size: clamp(30px, 2.7vw, 38px);

    line-height: 1.2;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-results-toolbar p, body.tg-home-v2-page .tg-v2-section-heading p {

    font-size: 16px;

    line-height: 1.6;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-field > span, body.tg-home-v2-page .tg-v2-sort > span {

    font-size: 13px;

    line-height: 1.3;

    font-weight: 600;

    text-transform: none;

}

body.tg-home-v2-page .tg-v2-field input, body.tg-home-v2-page .tg-v2-field select, body.tg-home-v2-page .tg-v2-sort select {

    font-size: 15px;

    line-height: 1.4;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-search-button {

    font-size: 15px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-quick-label, body.tg-home-v2-page .tg-v2-chip, body.tg-home-v2-page .tg-v2-advanced-toggle {

    font-size: 14px;

    line-height: 1.25;

    font-weight: 500;

}

body.tg-home-v2-page .tg-v2-clear-button {

    font-size: 13px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-job-head {

    font-size: 12px;

    line-height: 1.3;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-job-code {

    font-size: 15px;

    line-height: 1.3;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-new-badge {

    font-size: 10px;

    line-height: 1;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-job-title {

    font-size: 16px;

    line-height: 1.42;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-job-exam {

    font-size: 12.5px;

    line-height: 1.45;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-job-cell strong {

    font-size: 14px;

    line-height: 1.45;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-job-cell small {

    font-size: 14px;

    line-height: 1.45;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-status {

    font-size: 11px;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-detail-button, body.tg-home-v2-page .tg-v2-consult-link {

    font-size: 13px;

    line-height: 1.2;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-load-more {

    font-size: 14px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-side-card h2 {

    font-size: 20px;

    line-height: 1.3;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-side-links button {

    font-size: 14px;

    line-height: 1.45;

    font-weight: 500;

}

body.tg-home-v2-page .tg-v2-consult-card > span {

    font-size: 12px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-consult-card p {

    font-size: 14px;

    line-height: 1.6;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-side-primary, body.tg-home-v2-page .tg-v2-side-phone {

    font-size: 14px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-about-text {

    font-size: 16px;

    line-height: 1.72;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-text-link {

    font-size: 14px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-benefit > span {

    width: 32px;

    height: 32px;

    font-size: 11px;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-benefit h3 {

    font-size: 17px;

    line-height: 1.4;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-benefit p {

    font-size: 15px;

    line-height: 1.6;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-book-page figcaption {

    font-size: 13px;

    line-height: 1.45;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-book-counter {

    font-size: 13px;

    font-weight: 500;

}

body.tg-home-v2-page .tg-v2-video-label {

    font-size: 17px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-video-card > p {

    font-size: 14px;

    line-height: 1.6;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-process-list li > span {

    font-size: 12px;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-process-list h3 {

    font-size: 17px;

    line-height: 1.4;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-process-list p {

    font-size: 14.5px;

    line-height: 1.6;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-bottom-cta-copy > span {

    font-size: 13px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-bottom-cta h2 {

    font-size: clamp(28px, 2.5vw, 36px);

    line-height: 1.22;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-bottom-cta p {

    font-size: 16px;

    line-height: 1.6;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-bottom-form input, body.tg-home-v2-page .tg-v2-bottom-form button, body.tg-home-v2-page .tg-v2-bottom-form a {

    font-size: 14px;

    font-weight: 500;

}

body.tg-home-v2-page .tg-v2-footer-brand h2 {

    font-size: 19px;

    line-height: 1.35;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-footer-brand p {

    font-size: 14px;

    line-height: 1.65;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-footer-hotline {

    font-size: 15px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-footer-col h3 {

    font-size: 15px;

    line-height: 1.35;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-footer-col a, body.tg-home-v2-page .tg-v2-footer-social a {

    font-size: 14px;

    line-height: 1.5;

    font-weight: 400;

}

body.tg-home-v2-page .tg-v2-footer-branch-row strong {

    font-size: 14px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-footer-branch-row span {

    font-size: 13px;

    line-height: 1.5;

}

body.tg-home-v2-page .tg-v2-footer-branch-row > a {

    font-size: 14px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-footer-bottom-inner {

    font-size: 13px;

    line-height: 1.5;

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v2-home {

    font-size: 15px;

    line-height: 1.58;

}

body.tg-home-v2-page .tg-v2-container, body.tg-home-v2-page .tg-v2-footer-container {

    width: min(100% - 24px, 1240px);

}

body.tg-home-v2-page .tg-v2-eyebrow, body.tg-home-v2-page .tg-v2-section-kicker {

    font-size: 12.5px;

}

body.tg-home-v2-page .tg-v2-hero h1 {

    font-size: 30px;

    line-height: 1.18;

}

body.tg-home-v2-page .tg-v2-hero-copy p, body.tg-home-v2-page .tg-v2-results-toolbar p, body.tg-home-v2-page .tg-v2-section-heading p, body.tg-home-v2-page .tg-v2-about-text, body.tg-home-v2-page .tg-v2-bottom-cta p {

    font-size: 15px;

}

body.tg-home-v2-page .tg-v2-results-toolbar h2, body.tg-home-v2-page .tg-v2-section-heading h2, body.tg-home-v2-page .tg-v2-about-copy h2 {

    font-size: 27px;

    line-height: 1.22;

}

body.tg-home-v2-page .tg-v2-field > span, body.tg-home-v2-page .tg-v2-sort > span {

    font-size: 12px;

}

body.tg-home-v2-page .tg-v2-field input, body.tg-home-v2-page .tg-v2-field select, body.tg-home-v2-page .tg-v2-sort select, body.tg-home-v2-page .tg-v2-search-button {

    font-size: 14px;

}

body.tg-home-v2-page .tg-v2-quick-label, body.tg-home-v2-page .tg-v2-chip, body.tg-home-v2-page .tg-v2-advanced-toggle, body.tg-home-v2-page .tg-v2-clear-button {

    font-size: 12px;

}

body.tg-home-v2-page .tg-v2-job-title {

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-job-salary .tg-v2-cell-label {

    font-weight: 500;

}

body.tg-home-v2-page .tg-v2-status {

    font-size: 8px;

}

body.tg-home-v2-page .tg-v2-detail-button {

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-benefit h3, body.tg-home-v2-page .tg-v2-process-list h3 {

    font-size: 16px;

}

body.tg-home-v2-page .tg-v2-benefit p, body.tg-home-v2-page .tg-v2-process-list p, body.tg-home-v2-page .tg-v2-video-card > p {

    font-size: 14px;

}

body.tg-home-v2-page .tg-v2-video-label {

    font-size: 16px;

}

body.tg-home-v2-page .tg-v2-bottom-cta h2 {

    font-size: 27px;

}

body.tg-home-v2-page .tg-v2-footer-brand h2 {

    font-size: 18px;

}

body.tg-home-v2-page .tg-v2-footer-brand p, body.tg-home-v2-page .tg-v2-footer-col a, body.tg-home-v2-page .tg-v2-footer-social a {

    font-size: 14px;

}

body.tg-home-v2-page .tg-v2-footer-col h3 {

    font-size: 15px;

}

body.tg-home-v2-page .tg-v2-footer-bottom-inner {

    font-size: 12.5px;

}

}

body.tg-home-v2-page {

    background: linear-gradient(180deg, #ffffff 0%, var(--tg-soft) 38%, #ffffff 100%);

}

body.tg-home-v2-page .tg-v2-hero {

    position: relative;

    overflow: hidden;

    padding-top: 38px;

    background: radial-gradient(circle at 8% 25%, color-mix(in srgb, var(--tg-yellow) 24%, transparent), transparent 24%), radial-gradient(circle at 92% 18%, color-mix(in srgb, var(--tg-purple) 18%, transparent), transparent 26%), linear-gradient(135deg, #ffffff 0%, color-mix(in srgb, var(--tg-blue) 8%, #ffffff) 50%, color-mix(in srgb, var(--tg-red) 6%, #ffffff) 100%);

    border-bottom: 0;

}

body.tg-home-v2-page .tg-v2-hero::before, body.tg-home-v2-page .tg-v2-hero::after {

    content: "";

    position: absolute;

    pointer-events: none;

    border-radius: 9px;

    opacity: .8;

}

body.tg-home-v2-page .tg-v2-hero::before {

    width: 180px;

    height: 12px;

    left: -38px;

    bottom: 20px;

    background: linear-gradient(90deg, var(--tg-red), var(--tg-yellow));

    transform: rotate(-7deg);

}

body.tg-home-v2-page .tg-v2-hero::after {

    width: 120px;

    height: 12px;

    right: -20px;

    top: 24px;

    background: linear-gradient(90deg, var(--tg-purple), var(--tg-blue));

    transform: rotate(8deg);

}

body.tg-home-v2-page .tg-v2-eyebrow, body.tg-home-v2-page .tg-v2-section-kicker {

    color: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-search-card {

    position: relative;

    border: 1px solid color-mix(in srgb, var(--tg-blue) 18%, #dfe7f2);

    border-top: 4px solid transparent;

    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(90deg, var(--tg-blue), var(--tg-purple), var(--tg-red), var(--tg-yellow)) border-box;

    box-shadow: 0 18px 48px rgba(18,55,99,.13);

}

body.tg-home-v2-page .tg-v2-search-button {

    background: linear-gradient(135deg, var(--tg-red), color-mix(in srgb, var(--tg-red) 70%, var(--tg-orange)));

    box-shadow: 0 10px 24px color-mix(in srgb, var(--tg-red) 28%, transparent);

    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;

}

body.tg-home-v2-page .tg-v2-search-button:hover {

    transform: translateY(-1px);

    box-shadow: 0 13px 28px color-mix(in srgb, var(--tg-red) 34%, transparent);

}

body.tg-home-v2-page .tg-v2-chip {

    display: inline-flex;

    align-items: center;

    background: #fff;

    border-width: 1px;

    box-shadow: 0 2px 8px rgba(15,45,78,.04);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(1) {

    color: var(--tg-red);

    border-color: color-mix(in srgb, var(--tg-red) 34%, #fff);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(2) {

    color: #087f5b;

    border-color: color-mix(in srgb, var(--tg-green) 40%, #fff);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(3) {

    color: #d81b36;

    border-color: #ffd0d8;

}

body.tg-home-v2-page .tg-v2-chip:nth-child(4) {

    color: #d89a00;

    border-color: #ffe3a0;

}

body.tg-home-v2-page .tg-v2-chip:nth-child(5) {

    color: var(--tg-blue);

    border-color: #bfd9ff;

}

body.tg-home-v2-page .tg-v2-chip:nth-child(6) {

    color: var(--tg-purple);

    border-color: #ddd0ff;

}

body.tg-home-v2-page .tg-v2-chip:nth-child(7) {

    color: var(--tg-orange);

    border-color: #ffd5bd;

}

body.tg-home-v2-page .tg-v2-chip:nth-child(8) {

    color: #0f8f91;

    border-color: #bce8e9;

}

body.tg-home-v2-page .tg-v2-chip:hover, body.tg-home-v2-page .tg-v2-chip.is-active {

    color: #fff;

    border-color: transparent;

    transform: translateY(-1px);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(1):hover, body.tg-home-v2-page .tg-v2-chip:nth-child(1).is-active {

    background: var(--tg-red);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(2):hover, body.tg-home-v2-page .tg-v2-chip:nth-child(2).is-active {

    background: var(--tg-green);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(3):hover, body.tg-home-v2-page .tg-v2-chip:nth-child(3).is-active {

    background: #e4364f;

}

body.tg-home-v2-page .tg-v2-chip:nth-child(4):hover, body.tg-home-v2-page .tg-v2-chip:nth-child(4).is-active {

    background: #e0a000;

}

body.tg-home-v2-page .tg-v2-chip:nth-child(5):hover, body.tg-home-v2-page .tg-v2-chip:nth-child(5).is-active {

    background: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(6):hover, body.tg-home-v2-page .tg-v2-chip:nth-child(6).is-active {

    background: var(--tg-purple);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(7):hover, body.tg-home-v2-page .tg-v2-chip:nth-child(7).is-active {

    background: var(--tg-orange);

}

body.tg-home-v2-page .tg-v2-chip:nth-child(8):hover, body.tg-home-v2-page .tg-v2-chip:nth-child(8).is-active {

    background: #0f8f91;

}

body.tg-home-v2-page .tg-v2-advanced-toggle {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 9px;

    color: var(--tg-blue);

    background: color-mix(in srgb, var(--tg-blue) 5%, #fff);

    border-color: color-mix(in srgb, var(--tg-blue) 24%, #fff);

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-advanced-toggle::after {

    content: "";

    width: 8px;

    height: 8px;

    margin-top: -4px;

    border-right: 2px solid currentColor;

    border-bottom: 2px solid currentColor;

    transform: rotate(45deg);

    transition: transform .2s ease, margin .2s ease;

}

body.tg-home-v2-page .tg-v2-advanced-toggle[aria-expanded="true"]::after {

    margin-top: 4px;

    transform: rotate(225deg);

}

body.tg-home-v2-page .tg-v2-advanced-filters {

    margin: 16px -4px -4px;

    padding: 18px;

    border: 1px solid color-mix(in srgb, var(--tg-blue) 14%, #e8edf5);

    border-radius: 14px;

    background: linear-gradient(135deg, color-mix(in srgb, var(--tg-blue) 4%, #fff), color-mix(in srgb, var(--tg-purple) 4%, #fff), color-mix(in srgb, var(--tg-yellow) 5%, #fff));

}

body.tg-home-v2-page .tg-v2-clear-button {

    width: max-content;

    min-width: 112px;

    justify-self: start;

    height: 40px;

    padding: 0 15px;

    color: #5a4100;

    background: linear-gradient(135deg, #ffd84a, var(--tg-yellow));

    border-color: color-mix(in srgb, var(--tg-yellow) 65%, #d9a600);

    box-shadow: 0 7px 16px color-mix(in srgb, var(--tg-yellow) 22%, transparent);

}

body.tg-home-v2-page .tg-v2-jobs-section {

    background: linear-gradient(180deg, #ffffff 0%, color-mix(in srgb, var(--tg-blue) 3%, #ffffff) 100%);

}

body.tg-home-v2-page .tg-v2-job-head {

    color: #fff;

    background: linear-gradient(90deg, var(--tg-blue), color-mix(in srgb, var(--tg-blue) 76%, var(--tg-purple)));

    border-color: transparent;

}

body.tg-home-v2-page .tg-v2-job-card {

    background: #fff;

    border-left: 3px solid transparent;

    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;

}

body.tg-home-v2-page .tg-v2-job-card:nth-child(4n/**/+1) {

    border-left-color: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-job-card:nth-child(4n/**/+2) {

    border-left-color: var(--tg-red);

}

body.tg-home-v2-page .tg-v2-job-card:nth-child(4n/**/+3) {

    border-left-color: var(--tg-green);

}

body.tg-home-v2-page .tg-v2-job-card:nth-child(4n/**/+4) {

    border-left-color: var(--tg-purple);

}

body.tg-home-v2-page .tg-v2-new-badge {

    color: #fff;

    background: var(--tg-red);

}

body.tg-home-v2-page .tg-v2-status.is-open {

    color: #06734e;

    background: color-mix(in srgb, var(--tg-green) 14%, #fff);

    border-color: color-mix(in srgb, var(--tg-green) 28%, #fff);

}

body.tg-home-v2-page .tg-v2-detail-button {

    background: linear-gradient(135deg, var(--tg-blue), #0c77ec);

}

body.tg-home-v2-page .tg-v2-load-more {

    color: #fff;

    background: linear-gradient(135deg, var(--tg-purple), color-mix(in srgb, var(--tg-purple) 74%, var(--tg-blue)));

    border-color: transparent;

    box-shadow: 0 10px 24px color-mix(in srgb, var(--tg-purple) 24%, transparent);

}

body.tg-home-v2-page .tg-v2-side-links {

    border-top: 4px solid var(--tg-yellow);

}

body.tg-home-v2-page .tg-v2-side-links button:nth-of-type(1) {

    color: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-side-links button:nth-of-type(2) {

    color: #087f5b;

}

body.tg-home-v2-page .tg-v2-side-links button:nth-of-type(3) {

    color: var(--tg-red);

}

body.tg-home-v2-page .tg-v2-side-links button:nth-of-type(4) {

    color: var(--tg-purple);

}

body.tg-home-v2-page .tg-v2-side-links button:nth-of-type(5) {

    color: var(--tg-orange);

}

body.tg-home-v2-page .tg-v2-consult-card {

    background: radial-gradient(circle at 88% 12%, rgba(255,255,255,.15), transparent 26%), linear-gradient(145deg, var(--tg-blue), var(--tg-purple));

    box-shadow: 0 16px 34px color-mix(in srgb, var(--tg-blue) 20%, transparent);

}

body.tg-home-v2-page .tg-v2-side-primary {

    color: #fff;

    background: var(--tg-red);

    border-color: var(--tg-red);

}

body.tg-home-v2-page .tg-v2-about-section {

    background: radial-gradient(circle at 12% 15%, color-mix(in srgb, var(--tg-yellow) 15%, transparent), transparent 22%), linear-gradient(180deg, var(--tg-soft), #fff);

}

body.tg-home-v2-page .tg-v2-benefit {

    position: relative;

    overflow: hidden;

    background: #fff;

    border: 1px solid #e3eaf3;

    box-shadow: 0 8px 22px rgba(15,45,78,.05);

}

body.tg-home-v2-page .tg-v2-benefit::before {

    content: "";

    position: absolute;

    inset: 0 auto 0 0;

    width: 4px;

    background: var(--card-accent, var(--tg-blue));

}

body.tg-home-v2-page .tg-v2-benefit:nth-child(1) {

    --card-accent: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-benefit:nth-child(2) {

    --card-accent: var(--tg-red);

}

body.tg-home-v2-page .tg-v2-benefit:nth-child(3) {

    --card-accent: var(--tg-green);

}

body.tg-home-v2-page .tg-v2-benefit:nth-child(4) {

    --card-accent: var(--tg-purple);

}

body.tg-home-v2-page .tg-v2-benefit:nth-child(5) {

    --card-accent: var(--tg-orange);

}

body.tg-home-v2-page .tg-v2-benefit:nth-child(6) {

    --card-accent: #0f9ea8;

}

body.tg-home-v2-page .tg-v2-benefit > span {

    color: #fff;

    background: var(--card-accent, var(--tg-blue));

}

body.tg-home-v2-page .tg-v2-media-section {

    background: radial-gradient(circle at 96% 14%, color-mix(in srgb, var(--tg-red) 9%, transparent), transparent 28%), #fff;

}

body.tg-home-v2-page .tg-v2-album-card {

    border-top: 4px solid var(--tg-purple);

    box-shadow: 0 16px 34px color-mix(in srgb, var(--tg-purple) 10%, rgba(15,45,78,.05));

}

body.tg-home-v2-page .tg-v2-book-prev, body.tg-home-v2-page .tg-v2-book-next {

    color: #fff;

    background: var(--tg-purple);

    border-color: var(--tg-purple);

}

body.tg-home-v2-page .tg-v2-video-card {

    background: radial-gradient(circle at 90% 8%, rgba(255,255,255,.12), transparent 28%), linear-gradient(145deg, var(--tg-navy), color-mix(in srgb, var(--tg-navy) 68%, var(--tg-purple)));

}

body.tg-home-v2-page .tg-v2-video-play {

    background: var(--tg-red);

}

body.tg-home-v2-page .tg-v2-album-empty {

    min-height: 350px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    gap: 8px;

    padding: 30px;

    text-align: center;

    color: var(--tg-muted);

    background: linear-gradient(135deg, color-mix(in srgb, var(--tg-purple) 7%, #fff), color-mix(in srgb, var(--tg-blue) 5%, #fff));

    border: 2px dashed color-mix(in srgb, var(--tg-purple) 28%, #dce5ef);

    border-radius: 14px;

}

body.tg-home-v2-page .tg-v2-album-empty strong {

    color: var(--tg-navy);

    font-size: 18px;

}

body.tg-home-v2-page .tg-v2-process-section {

    background: linear-gradient(135deg, color-mix(in srgb, var(--tg-blue) 5%, #fff), color-mix(in srgb, var(--tg-yellow) 5%, #fff));

}

body.tg-home-v2-page .tg-v2-process-list li {

    --step-color: var(--tg-blue);

    border-top: 3px solid var(--step-color);

    background: #fff;

}

body.tg-home-v2-page .tg-v2-process-list li:nth-child(1) {

    --step-color: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-process-list li:nth-child(2) {

    --step-color: var(--tg-green);

}

body.tg-home-v2-page .tg-v2-process-list li:nth-child(3) {

    --step-color: var(--tg-orange);

}

body.tg-home-v2-page .tg-v2-process-list li:nth-child(4) {

    --step-color: var(--tg-purple);

}

body.tg-home-v2-page .tg-v2-process-list li > span {

    color: #fff;

    background: var(--step-color);

}

body.tg-home-v2-page .tg-v2-bottom-cta {

    background: radial-gradient(circle at 10% 20%, rgba(255,255,255,.13), transparent 26%), radial-gradient(circle at 92% 70%, color-mix(in srgb, var(--tg-yellow) 40%, transparent), transparent 22%), linear-gradient(120deg, var(--tg-blue), var(--tg-purple) 58%, var(--tg-red));

}

body.tg-home-v2-page .tg-v2-bottom-form button {

    background: var(--tg-yellow);

    color: #3b2a00;

}

body.tg-home-v2-page .tg-v2-bottom-form .is-outline {

    border-color: rgba(255,255,255,.75);

}

body.tg-home-v2-page .tg-v2-footer-main {

    background: radial-gradient(circle at 85% 8%, color-mix(in srgb, var(--tg-purple) 22%, transparent), transparent 25%), linear-gradient(145deg, var(--tg-navy), #04182f);

    border-top: 5px solid transparent;

    border-image: linear-gradient(90deg, var(--tg-blue), var(--tg-green), var(--tg-yellow), var(--tg-red), var(--tg-purple)) 1;

}

body.tg-home-v2-page .tg-v2-footer-col:nth-child(2) h3 {

    color: #61a8ff;

}

body.tg-home-v2-page .tg-v2-footer-col:nth-child(3) h3 {

    color: #5ee0af;

}

body.tg-home-v2-page .tg-v2-footer-col:nth-child(4) h3 {

    color: #ffd45c;

}

body.tg-home-v2-page .tg-v2-footer-hotline {

    display: inline-flex;

    color: #fff;

    background: var(--tg-red);

    border-color: var(--tg-red);

    border-radius: 9px;

    padding: 8px 12px;

}

@media (max-width: 991px) {

body.tg-home-v2-page .tg-v2-advanced-filters {

    grid-template-columns: repeat(2, minmax(0, 1fr));

}

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v2-hero {

    padding-top: 26px;

}

body.tg-home-v2-page .tg-v2-search-card {

    border-top-width: 3px;

}

body.tg-home-v2-page .tg-v2-advanced-filters {

    margin-left: 0;

    margin-right: 0;

    padding: 12px;

    gap: 9px;

}

body.tg-home-v2-page .tg-v2-clear-button {

    min-width: 104px;

    justify-self: start;

}

body.tg-home-v2-page .tg-v2-job-card {

    border-left-width: 2px;

}

}

@media (max-width: 370px) {

body.tg-home-v2-page .tg-v2-advanced-filters {

    grid-template-columns: 1fr;

}

}

@media (max-width: 850px) {

body.tg-home-v2-page .tg-v2-mobile-contact > a:nth-child(1) .tg-v2-mobile-contact-icon {

    background: var(--tg-blue);

}

body.tg-home-v2-page .tg-v2-mobile-contact > a:nth-child(2) .tg-v2-mobile-contact-icon {

    background: var(--tg-green);

}

body.tg-home-v2-page .tg-v2-mobile-contact > a:nth-child(3) .tg-v2-mobile-contact-icon {

    background: var(--tg-red);

}

body.tg-home-v2-page .tg-v2-mobile-contact > a:nth-child(4) .tg-v2-mobile-contact-icon {

    background: var(--tg-purple);

}

}

body.tg-home-v2-page .tg-v2-consult-link {

    appearance: none;

    -webkit-appearance: none;

    border: 0;

    padding: 4px 7px;

    margin: 0;

    background: transparent;

    color: var(--tg-secondary, #ef233c);

    font: inherit;

    font-size: 13px;

    font-weight: 600;

    line-height: 1.2;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-consult-link:hover, body.tg-home-v2-page .tg-v2-consult-link:focus-visible {

    color: #c9142c;

    text-decoration: underline;

}

body.tg-home-v2-page .tg-v2-cf7-quick .tg-v2-quick-hide, body.tg-home-v2-page .tg-v2-cf7-quick .tg-v2-quick-hide-control, body.tg-home-v2-page .tg-v2-cf7-quick .email-face, body.tg-home-v2-page .tg-v2-cf7-quick .wpcf7-form img {

    display: none !important;

}

body.tg-home-v2-page .tg-v2-cf7-wrap .wpcf7, body.tg-home-v2-page .tg-v2-cf7-wrap form.wpcf7-form, body.tg-home-v2-page .tg-v2-cf7-wrap form.wpcf7-form p {

    margin: 0 !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick .wpcf7-form-control-wrap {

    display: block;

    width: 100%;

    margin: 0 !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick input[type="text"], body.tg-home-v2-page .tg-v2-cf7-quick input[type="tel"] {

    width: 100% !important;

    height: 42px !important;

    margin: 0 !important;

    padding: 0 12px !important;

    border: 1px solid rgba(255,255,255,.34) !important;

    border-radius: 8px !important;

    outline: 0 !important;

    background: #fff !important;

    color: #12233d !important;

    font-size: 14px !important;

    font-weight: 400 !important;

    box-sizing: border-box !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick input[type="text"]::placeholder, body.tg-home-v2-page .tg-v2-cf7-quick input[type="tel"]::placeholder {

    color: #7c8ba0 !important;

    opacity: 1;

}

body.tg-home-v2-page .tg-v2-cf7-quick .wpcf7-submit, body.tg-home-v2-page .tg-v2-cf7-quick .tg-v2-quick-submit {

    width: 100% !important;

    min-height: 42px !important;

    margin: 0 !important;

    padding: 8px 14px !important;

    border: 0 !important;

    border-radius: 8px !important;

    background: var(--tg-secondary, #ef233c) !important;

    color: #fff !important;

    font-size: 14px !important;

    font-weight: 700 !important;

    line-height: 1.2 !important;

    text-transform: none !important;

    cursor: pointer !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick .wpcf7-spinner {

    position: absolute;

    margin: 9px 0 0 -34px !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick .wpcf7-not-valid-tip {

    margin: 4px 0 0 !important;

    color: #ffe0e4 !important;

    font-size: 11px !important;

    line-height: 1.35 !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick .wpcf7-response-output {

    margin: 7px 0 0 !important;

    padding: 7px 9px !important;

    border-radius: 7px !important;

    border-color: rgba(255,255,255,.45) !important;

    color: #fff !important;

    font-size: 11px !important;

    line-height: 1.4 !important;

}

body.tg-home-v2-page .tg-v2-consult-card .tg-v2-cf7-quick {

    margin-top: 12px;

}

body.tg-home-v2-page .tg-v2-consult-card .tg-v2-side-phone {

    margin-top: 8px;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 {

    display: grid !important;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-cf7-quick .wpcf7-submit {

    min-width: 150px !important;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-cf7-quick .wpcf7-response-output {

    grid-column: 1 / -1;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .is-outline {

    width: 100%;

}

html.tg-v2-modal-open, html.tg-v2-modal-open body {

    overflow: hidden !important;

}

body.tg-home-v2-page .tg-v2-consult-modal[hidden] {

    display: none !important;

}

body.tg-home-v2-page .tg-v2-consult-modal {

    position: fixed;

    inset: 0;

    z-index: 999999;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 18px;

}

body.tg-home-v2-page .tg-v2-consult-modal-backdrop {

    position: absolute;

    inset: 0;

    background: rgba(3, 20, 43, .68);

    backdrop-filter: blur(4px);

}

body.tg-home-v2-page .tg-v2-consult-modal-dialog {

    position: relative;

    z-index: 1;

    width: min(560px, 100%);

    max-height: calc(100vh - 36px);

    overflow: auto;

    padding: 26px;

    border-radius: 18px;

    background: #fff;

    box-shadow: 0 24px 70px rgba(0, 32, 76, .28);

}

body.tg-home-v2-page .tg-v2-consult-modal-close {

    position: absolute;

    top: 11px;

    right: 11px;

    width: 36px;

    height: 36px;

    border: 0;

    border-radius: 50%;

    background: #eef5ff;

    color: var(--tg-navy, #062b52);

    font-size: 25px;

    line-height: 1;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-consult-modal-kicker {

    display: inline-block;

    margin-bottom: 5px;

    color: var(--tg-primary, #0757c7);

    font-size: 12px;

    font-weight: 700;

    text-transform: uppercase;

}

body.tg-home-v2-page .tg-v2-consult-modal-dialog h2 {

    margin: 0 40px 8px 0;

    color: var(--tg-navy, #062b52);

    font-size: 26px;

    line-height: 1.25;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v2-consult-job-label {

    margin: 0 0 16px;

    padding: 9px 11px;

    border-radius: 9px;

    background: #eef6ff;

    color: #28527d;

    font-size: 13px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-cf7-popup input:not([type="submit"]):not([type="hidden"]), body.tg-home-v2-page .tg-v2-cf7-popup textarea, body.tg-home-v2-page .tg-v2-cf7-popup select {

    width: 100% !important;

    box-sizing: border-box !important;

}

body.tg-home-v2-page .tg-v2-cf7-popup .wpcf7-submit {

    min-height: 44px;

    padding: 9px 18px;

    border: 0;

    border-radius: 9px;

    background: var(--tg-secondary, #ef233c);

    color: #fff;

    font-weight: 700;

    cursor: pointer;

}

body.tg-home-v2-page .tg-v2-form-fallback {

    margin: 8px 0 0;

    font-size: 13px;

    line-height: 1.5;

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-cf7-quick form.wpcf7-form {

    grid-template-columns: 1fr;

}

body.tg-home-v2-page .tg-v2-consult-modal {

    align-items: flex-end;

    padding: 10px;

}

body.tg-home-v2-page .tg-v2-consult-modal-dialog {

    width: 100%;

    max-height: 88vh;

    padding: 22px 16px 18px;

    border-radius: 18px 18px 12px 12px;

}

body.tg-home-v2-page .tg-v2-consult-modal-dialog h2 {

    font-size: 21px;

}

}

body.tg-home-v2-page .tg-v2-hero-copy {

    max-width: 1040px;

}

body.tg-home-v2-page .tg-v4-hero-text {

    width: 100%;

    max-width: 980px;

    white-space: normal;

}

@media (min-width: 1100px) {

body.tg-home-v2-page .tg-v4-hero-text {

    white-space: nowrap;

}

}

body.tg-home-v2-page .tg-v2-quick-chips {

    gap: 8px;

    flex-wrap: wrap;

}

body.tg-home-v2-page .tg-v2-chip {

    gap: 7px;

}

body.tg-home-v2-page .tg-v2-chip-flag {

    font-size: 20px;

    line-height: 1;

    transform: translateY(-1px);

}

body.tg-home-v2-page .tg-v4-hot-chip {

    color: #fff;

    border-color: transparent;

    background: linear-gradient(135deg, #ff8a00, #ff275b);

}

body.tg-home-v2-page .tg-v4-hot-chip:hover, body.tg-home-v2-page .tg-v4-hot-chip.is-active {

    color: #fff;

    background: linear-gradient(135deg, #ff6a00, #e90046);

    box-shadow: 0 8px 20px rgba(233,0,70,.22);

}

body.tg-home-v2-page .tg-v2-advanced-filters {

    grid-template-columns: repeat(5, minmax(0, 1fr));

    gap: 12px;

}

body.tg-home-v2-page .tg-v2-advanced-filters .tg-v2-field, body.tg-home-v2-page .tg-v2-advanced-filters .tg-v2-field select {

    min-width: 0;

}

body.tg-home-v2-page .tg-v2-clear-button {

    align-self: end;

}

body.tg-home-v2-page .tg-v2-job-head, body.tg-home-v2-page .tg-v2-job-card {

    grid-template-columns: minmax(180px,1.5fr) minmax(145px,1.12fr) minmax(105px,.78fr) minmax(130px,.92fr) minmax(120px,.92fr) minmax(105px,.75fr);

    gap: 11px;

}

body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row:hover {

    background: var(--tg-v4-visa-bg, #fff);

}

body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row .tg-v2-job-salary strong {

    color: var(--tg-v4-visa-color, var(--tg-blue));

}

body.tg-home-v2-page .tg-v4-visa-badge {

    display: inline-flex;

    align-items: center;

    width: fit-content;

    max-width: 100%;

    border: 1px solid color-mix(in srgb, var(--tg-v4-visa-color) 28%, transparent);

    border-radius: 9px;

    background: color-mix(in srgb, var(--tg-v4-visa-color) 12%, #fff);

    color: var(--tg-v4-visa-color);

    font-size: 11px;

    font-weight: 600;

    line-height: 1.25;

    white-space: normal;

}

body.tg-home-v2-page .tg-v2-job-country > strong {

    letter-spacing: .015em;

}



body.tg-home-v2-page .tg-v4-hot-badge {
    display: inline-block !important;

    width: 42px !important;
    height: 24px !important;

    margin-left: 4px !important;
    padding: 0 !important;

    background-image: url('https://xkld.thanhgiang.com.vn/wp-content/uploads/2026/09/hot.png') !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: contain !important;

    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
    filter: none !important;
    box-shadow: none !important;
}

body.tg-home-v2-page .tg-v4-hot-badge strong {
    display: none !important;
}




body.tg-home-v2-page .tg-v2-job-card:nth-child(4n/**/+1), body.tg-home-v2-page .tg-v2-job-card:nth-child(4n/**/+2), body.tg-home-v2-page .tg-v2-job-card:nth-child(4n/**/+3), body.tg-home-v2-page .tg-v2-job-card:nth-child(4n/**/+4) {

    border-left-color: transparent;

}

body.tg-home-v2-page .tg-v2-cf7-quick form.wpcf7-form {

    display: grid !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick textarea {

    width: 100% !important;

    margin: 0 !important;

    border: 1px solid rgba(255,255,255,.34) !important;

    border-radius: 8px !important;

    background: #fff !important;

    color: #12233d !important;

    font: inherit !important;

    line-height: 1.35 !important;

    resize: vertical !important;

    box-sizing: border-box !important;

}

body.tg-home-v2-page .tg-v2-consult-card .tg-v2-cf7-quick textarea {

    height: 58px !important;

    min-height: 58px !important;

}

body.tg-home-v2-page .tg-v2-bottom-cta {

    padding-top: 24px;

    padding-bottom: 24px;

}

body.tg-home-v2-page .tg-v2-bottom-cta-inner {

    align-items: center;

}

body.tg-home-v2-page .tg-v2-bottom-cta-copy h2 {

    margin-bottom: 4px;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 {

    gap: 7px !important;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-cf7-quick form.wpcf7-form {

    display: grid !important;

    grid-template-columns: minmax(150px,1fr) minmax(150px,1fr) minmax(130px,.72fr) !important;

    gap: 7px !important;

    align-items: start !important;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-name {

    grid-column: 1;

    grid-row: 1;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-phone {

    grid-column: 2;

    grid-row: 1;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-message {

    grid-column: 1 / 3;

    grid-row: 2;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-submit, body.tg-home-v2-page .tg-v2-bottom-cf7 .wpcf7-submit {

    grid-column: 3;

    grid-row: 1 / span 2;

    height: 100% !important;

    min-height: 88px !important;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 textarea {

    height: 46px !important;

    min-height: 46px !important;

    max-height: 58px !important;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .is-outline {

    min-height: 34px !important;

    padding: 6px 12px !important;

    font-size: 12px !important;

}

body.tg-home-v2-page .tg-v4-benefit-grid {

    grid-template-columns: repeat(6, minmax(0,1fr));

    gap: 12px;

}

body.tg-home-v2-page .tg-v4-benefit {

    --card-color: #0757c7;

    min-height: 184px;

    padding: 18px 14px;

    text-align: center;

    border: 1px solid color-mix(in srgb, var(--card-color) 26%, #e7eef7);

    border-radius: 14px;

    box-shadow: 0 8px 22px rgba(15,45,78,.06);

}

body.tg-home-v2-page .tg-v4-benefit::before {

    display: none;

}

body.tg-home-v2-page .tg-v4-benefit-1 {

    --card-color: #1877d2;

    background: linear-gradient(180deg,#e8f4ff,#f8fbff);

}

body.tg-home-v2-page .tg-v4-benefit-2 {

    --card-color: #14a968;

    background: linear-gradient(180deg,#e8faef,#f9fffb);

}

body.tg-home-v2-page .tg-v4-benefit-3 {

    --card-color: #f47b20;

    background: linear-gradient(180deg,#fff0e4,#fffaf6);

}

body.tg-home-v2-page .tg-v4-benefit-4 {

    --card-color: #7c43d6;

    background: linear-gradient(180deg,#f0e9ff,#fbf9ff);

}

body.tg-home-v2-page .tg-v4-benefit-5 {

    --card-color: #ec337b;

    background: linear-gradient(180deg,#ffe7f0,#fff9fb);

}

body.tg-home-v2-page .tg-v4-benefit-6 {

    --card-color: #0e9eaa;

    background: linear-gradient(180deg,#e3f9fa,#f9ffff);

}

body.tg-home-v2-page .tg-v4-benefit-icon {

    width: 58px;

    height: 58px;

    margin: 0 auto 11px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: var(--card-color);

}

body.tg-home-v2-page .tg-v4-benefit-icon svg {

    fill: none;

    stroke: currentColor;

    stroke-width: 4;

    stroke-linecap: round;

    stroke-linejoin: round;

}

body.tg-home-v2-page .tg-v4-benefit h3 {

    margin: 0 0 8px;

    color: var(--card-color);

    font-size: 15px;

    line-height: 1.3;

    font-weight: 800;

}

body.tg-home-v2-page .tg-v4-benefit p {

    margin: 0;

    color: #4b5d72;

    font-size: 12.5px;

    line-height: 1.55;

}

.tg-v4-branch-hub {

    padding: 46px 0;

    background: linear-gradient(180deg,#f7fbff 0%,#eef6ff 100%);

    border-top: 1px solid #e2ebf6;

}

.tg-v4-branch-head {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 24px;

    margin-bottom: 22px;

}

.tg-v4-branch-kicker {

    display: block;

    margin-bottom: 5px;

    color: #0757c7;

    font-size: 11px;

    font-weight: 900;

    letter-spacing: .11em;

    text-transform: uppercase;

}

.tg-v4-branch-head h2 {

    margin: 0 0 6px;

    color: #062b52;

    font-size: 30px;

    line-height: 1.18;

    font-weight: 800;

}

.tg-v4-branch-head p {

    margin: 0;

    color: #607089;

    font-size: 14px;

}

.tg-v4-branch-tabs {

    display: flex;

    gap: 8px;

    flex-wrap: wrap;

    justify-content: flex-end;

}

.tg-v4-branch-tabs button {

    min-height: 38px;

    padding: 8px 15px;

    border: 1px solid #d9e5f3;

    border-radius: 9px;

    background: #fff;

    color: #38516f;

    font-size: 12px;

    font-weight: 700;

    cursor: pointer;

}

.tg-v4-branch-tabs button.is-active {

    background: #0757c7;

    border-color: #0757c7;

    color: #fff;

    box-shadow: 0 7px 16px rgba(7,87,199,.18);

}

.tg-v4-branch-layout {

    display: grid;

    grid-template-columns: minmax(260px,.72fr) minmax(0,1.65fr);

    gap: 22px;

    align-items: stretch;

}

.tg-v4-branch-map {

    position: relative;

    min-height: 390px;

    overflow: hidden;

    border-radius: 20px;

    background: radial-gradient(circle at 50% 40%,#fff 0%,#e8f4ff 78%);

    border: 1px solid #dbe8f6;

    box-shadow: 0 14px 34px rgba(16,67,117,.08);

}

.tg-v4-vietnam-map {

    position: absolute;

    inset: 22px 24%;

    width: 52%;

    height: calc(100% - 44px);

    overflow: visible;

}

.tg-v4-vietnam-map path {

    fill: #cfe7ff;

    stroke: #1474d4;

    stroke-width: 3;

    filter: drop-shadow(0 5px 12px rgba(20,116,212,.15));

}

.tg-v4-branch-point {

    position: absolute;

    width: 18px;

    height: 18px;

    margin: -9px 0 0 -9px;

    padding: 0;

    border: 3px solid #fff;

    border-radius: 50%;

    background: #ef233c;

    box-shadow: 0 0 0 4px rgba(239,35,60,.16),0 5px 12px rgba(9,65,120,.16);

    cursor: pointer;

    transform: scale(1);

    transition: .18s ease;

}

.tg-v4-branch-point span {

    position: absolute;

    inset: 50% auto auto 50%;

    width: 8px;

    height: 8px;

    border-radius: 50%;

    transform: translate(-50%,-50%);

    background: #fff;

}

.tg-v4-branch-point.is-active,.tg-v4-branch-point.is-hovered {

    transform: scale(1.28);

    background: #ff9f0a;

    box-shadow: 0 0 0 7px rgba(255,159,10,.20),0 8px 18px rgba(9,65,120,.20);

}

.tg-v4-branch-directory {

    display: grid;

    grid-template-columns: minmax(0,1.1fr) minmax(280px,.9fr);

    gap: 16px;

}

.tg-v4-branch-chips {

    display: grid;

    grid-template-columns: repeat(3,minmax(0,1fr));

    gap: 9px;

    align-content: start;

}

.tg-v4-branch-chip {

    min-height: 44px;

    padding: 9px 11px;

    border: 1px solid #dce7f3;

    border-radius: 11px;

    background: #fff;

    color: #213956;

    font-size: 12px;

    font-weight: 700;

    text-align: left;

    cursor: pointer;

    transition: .18s ease;

}

.tg-v4-branch-chip:hover,.tg-v4-branch-chip.is-active {

    border-color: #3b8ff0;

    background: #edf6ff;

    color: #0757c7;

    transform: translateY(-1px);

    box-shadow: 0 7px 16px rgba(7,87,199,.09);

}

.tg-v4-branch-detail {

    position: relative;

    min-height: 210px;

    padding: 22px;

    border-radius: 18px;

    background: linear-gradient(145deg,#073c82,#0a6ccf);

    color: #fff;

    box-shadow: 0 16px 36px rgba(6,43,82,.20);

}

.tg-v4-branch-detail-close {

    display: none;

}

.tg-v4-branch-detail-label {

    display: block;

    margin-bottom: 6px;

    color: #a9d2ff;

    font-size: 10px;

    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .08em;

}

.tg-v4-branch-detail h3 {

    margin: 0 0 12px;

    color: #fff;

    font-size: 22px;

    line-height: 1.2;

}

.tg-v4-branch-detail p {

    margin: 0 0 10px;

    color: #e9f5ff;

    font-size: 13px;

    line-height: 1.55;

}

.tg-v4-branch-phone {

    font-weight: 800;

    color: #fff;

}

.tg-v4-branch-actions {

    display: flex;

    gap: 8px;

    margin-top: 16px;

}

.tg-v4-branch-actions a {

    flex: 1;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-height: 40px;

    padding: 8px 12px;

    border-radius: 9px;

    font-size: 12px;

    font-weight: 800;

    text-decoration: none;

}

.tg-v4-branch-actions a:first-child {

    background: #fff;

    color: #0757c7;

}

.tg-v4-branch-actions a:last-child {

    background: #ef233c;

    color: #fff;

}

@media (max-width:1199px) {

body.tg-home-v2-page .tg-v4-benefit-grid {

    grid-template-columns: repeat(3,minmax(0,1fr));

}

.tg-v4-branch-layout {

    grid-template-columns: 240px minmax(0,1fr);

}

.tg-v4-branch-directory {

    grid-template-columns: 1fr;

}

.tg-v4-branch-chips {

    grid-template-columns: repeat(3,minmax(0,1fr));

}

}

@media (max-width:991px) {

body.tg-home-v2-page .tg-v2-advanced-filters {

    grid-template-columns: repeat(2,minmax(0,1fr));

}

.tg-v4-branch-head {

    align-items: flex-start;

    flex-direction: column;

}

.tg-v4-branch-tabs {

    justify-content: flex-start;

}

.tg-v4-branch-layout {

    grid-template-columns: 220px minmax(0,1fr);

}

.tg-v4-branch-chips {

    grid-template-columns: repeat(2,minmax(0,1fr));

}

}

@media (max-width:767px) {

body.tg-home-v2-page .tg-v2-advanced-filters {

    grid-template-columns: 1fr;

}

body.tg-home-v2-page .tg-v2-quick-chips {

    flex-wrap: nowrap;

    overflow-x: auto;

    padding-bottom: 4px;

    scrollbar-width: none;

}

body.tg-home-v2-page .tg-v2-quick-chips::-webkit-scrollbar {

    display: none;

}

body.tg-home-v2-page .tg-v2-chip {

    flex: 0 0 auto;

}

body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row {

    background: var(--tg-v4-visa-bg,#fff);

}

body.tg-home-v2-page .tg-v2-bottom-cta {

    padding-top: 20px;

    padding-bottom: 20px;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-cf7-quick form.wpcf7-form {

    grid-template-columns: 1fr 1fr !important;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-name {

    grid-column: 1;

    grid-row: 1;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-phone {

    grid-column: 2;

    grid-row: 1;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-message {

    grid-column: 1 / -1;

    grid-row: 2;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-submit, body.tg-home-v2-page .tg-v2-bottom-cf7 .wpcf7-submit {

    grid-column: 1 / -1;

    grid-row: 3;

    height: 42px !important;

    min-height: 42px !important;

}

body.tg-home-v2-page .tg-v4-benefit-grid {

    grid-template-columns: repeat(2,minmax(0,1fr));

    gap: 9px;

}

body.tg-home-v2-page .tg-v4-benefit {

    min-height: 168px;

    padding: 15px 11px;

}

body.tg-home-v2-page .tg-v4-benefit-icon,body.tg-home-v2-page .tg-v4-benefit-icon svg {

    width: 48px;

    height: 48px;

}

.tg-v4-branch-hub {

    padding: 32px 0;

}

.tg-v4-branch-head h2 {

    font-size: 25px;

}

.tg-v4-branch-map {

    display: none;

}

.tg-v4-branch-layout {

    display: block;

}

.tg-v4-branch-directory {

    display: block;

}

.tg-v4-branch-chips {

    grid-template-columns: repeat(2,minmax(0,1fr));

    gap: 8px;

}

.tg-v4-branch-detail {

    position: fixed;

    left: 10px;

    right: 10px;

    bottom: 10px;

    z-index: 99998;

    min-height: 0;

    max-height: 72vh;

    padding: 22px 18px 18px;

    border-radius: 20px;

    transform: translateY(calc(100% + 30px));

    opacity: 0;

    pointer-events: none;

    transition: transform .22s ease,opacity .22s ease;

}

.tg-v4-branch-detail.is-open {

    transform: translateY(0);

    opacity: 1;

    pointer-events: auto;

}

.tg-v4-branch-detail-close {

    display: flex;

    position: absolute;

    right: 10px;

    top: 10px;

    width: 34px;

    height: 34px;

    align-items: center;

    justify-content: center;

    border: 0;

    border-radius: 50%;

    background: rgba(255,255,255,.14);

    color: #fff;

    font-size: 22px;

    cursor: pointer;

}

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-submit-wrap {

    grid-column: 3;

    grid-row: 1 / span 2;

    margin: 0 !important;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-submit-wrap .wpcf7-submit {

    width: 100% !important;

    height: 100% !important;

    min-height: 88px !important;

}

@media (max-width:767px) {

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-submit-wrap {

    grid-column: 1 / -1;

    grid-row: 3;

}

body.tg-home-v2-page .tg-v2-bottom-cf7 .tg-v2-quick-submit-wrap .wpcf7-submit {

    min-height: 42px !important;

    height: 42px !important;

}

}

body.tg-home-v2-page .tg-v2-cf7-popup .tg-v2-quick-hide, body.tg-home-v2-page .tg-v2-cf7-popup .tg-v2-quick-hide-control {

    display: none !important;

}

body.tg-home-v2-page .tg-v2-cf7-popup form.wpcf7-form {

    display: grid;

    gap: 11px;

}

body.tg-home-v2-page .tg-v2-cf7-popup input[type="text"], body.tg-home-v2-page .tg-v2-cf7-popup input[type="tel"], body.tg-home-v2-page .tg-v2-cf7-popup textarea {

    width: 100% !important;

    box-sizing: border-box !important;

    border: 1px solid #d7e1ed !important;

    border-radius: 9px !important;

    background: #fff !important;

    color: #12233d !important;

    font: inherit !important;

}

body.tg-home-v2-page .tg-v2-cf7-popup input[type="text"], body.tg-home-v2-page .tg-v2-cf7-popup input[type="tel"] {

    height: 44px !important;

    padding: 0 13px !important;

}

body.tg-home-v2-page .tg-v2-cf7-popup textarea {

    height: 116px !important;

    min-height: 116px !important;

    padding: 11px 13px !important;

    resize: vertical !important;

}

@media (max-width:850px) {

.tg-v4-branch-detail {

    bottom: 78px;

}

}

body.tg-home-v2-page .tg-v2-cf7-quick form.wpcf7-form > p {

    font-size: 0 !important;

    line-height: 1 !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick .wpcf7-form-control-wrap {

    font-size: 14px !important;

    line-height: 1.3 !important;

}

body.tg-home-v2-page .tg-v4-benefit-icon {

    border-radius: 16px;

    background: color-mix(in srgb, var(--card-color) 12%, #fff);

    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--card-color) 18%, transparent);

}

body.tg-home-v2-page .tg-v4-benefit-icon svg {

    width: 38px;

    height: 38px;

}

@media (max-width:767px) {

body.tg-home-v2-page .tg-v4-benefit-icon svg {

    width: 32px;

    height: 32px;

}

}

body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row {

    padding: 10px 13px;

    min-height: 0;

}

body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row .tg-v2-job-main, body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row .tg-v2-job-cell, body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row .tg-v2-job-actions {

    padding-top: 0;

    padding-bottom: 0;

}

body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row .tg-v2-job-exam {

    margin-top: 4px;

    margin-bottom: 0;

}

body.tg-home-v2-page .tg-v4-visa-badge {

    margin-top: 4px;

    padding: 3px 7px;

}

body.tg-home-v2-page .tg-v2-cf7-quick form.wpcf7-form {

    gap: 7px !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick input:not([type="submit"]), body.tg-home-v2-page .tg-v2-cf7-quick select {

    min-height: 42px !important;

    height: 42px !important;

    padding: 8px 11px !important;

    font-size: 14px !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick textarea {

    height: 58px !important;

    min-height: 58px !important;

    max-height: 70px !important;

    padding: 8px 11px !important;

    font-size: 14px !important;

}

body.tg-home-v2-page .tg-v2-cf7-quick input[type="submit"], body.tg-home-v2-page .tg-v2-cf7-quick button[type="submit"] {

    min-height: 42px !important;

    height: 42px !important;

}

.tg-v4-branch-hub, .tg-v4-branch-map, .tg-v4-vietnam-map, .tg-v4-branch-point, .tg-v4-branch-tabs, .tg-v4-branch-detail {

    display: none !important;

}

.tg-v4-branch-contact {

    padding: 34px 0;

    background: #f4f8fd;

    font-family: inherit;

}

.tg-v4-branch-contact-grid {

    display: grid;

    grid-template-columns: minmax(0, 1.7fr) minmax(320px, .85fr);

    gap: 22px;

    align-items: stretch;

}

.tg-v4-branch-directory-card, .tg-v4-branch-consult-card {

    border: 1px solid #dbe5f1;

    border-radius: 18px;

    background: #fff;

    box-shadow: 0 10px 28px rgba(24, 52, 92, .07);

}

.tg-v4-branch-directory-card {

    padding: 20px 22px;

}

.tg-v4-branch-simple-head > span, .tg-v4-branch-consult-kicker {

    display: block;

    margin-bottom: 5px;

    color: #0757c7;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: .06em;

    text-transform: uppercase;

}

.tg-v4-branch-simple-head h2, .tg-v4-branch-consult-card h2 {

    margin: 0 0 6px;

    color: #082458;

    font-size: 24px;

    line-height: 1.25;

    font-weight: 800;

}

.tg-v4-branch-simple-head p, .tg-v4-branch-consult-card > p {

    margin: 0;

    color: #65758b;

    font-size: 14px;

    line-height: 1.55;

}

.tg-v4-branch-original-list {

    margin-top: 16px;

    max-height: 310px;

    overflow-y: auto;

    padding: 4px 12px 4px 2px;

    scrollbar-width: thin;

    scrollbar-color: #b6c6dc transparent;

}

.tg-v4-branch-original-list::-webkit-scrollbar {

    width: 6px;

}

.tg-v4-branch-original-list::-webkit-scrollbar-thumb {

    background: #b6c6dc;

    border-radius: 10px;

}

.tg-v4-branch-original-list .widget, .tg-v4-branch-original-list .textwidget, .tg-v4-branch-original-list ul, .tg-v4-branch-original-list p {

    font-family: inherit;

}

.tg-v4-branch-original-list .widget {

    margin: 0;

}

.tg-v4-branch-original-list h2, .tg-v4-branch-original-list h3, .tg-v4-branch-original-list h4, .tg-v4-branch-original-list strong {

    color: #082458;

    font-family: inherit;

}

.tg-v4-branch-original-list h2, .tg-v4-branch-original-list h3, .tg-v4-branch-original-list h4 {

    margin: 12px 0 5px;

    font-size: 16px;

    line-height: 1.35;

    font-weight: 800;

}

.tg-v4-branch-original-list p, .tg-v4-branch-original-list li, .tg-v4-branch-original-list a {

    color: #4b5f78;

    font-size: 14px;

    line-height: 1.55;

}

.tg-v4-branch-original-list p {

    margin: 0 0 5px;

}

.tg-v4-branch-original-list ul {

    margin: 0;

    padding-left: 18px;

}

.tg-v4-branch-fallback-item {

    padding: 12px 0;

    border-bottom: 1px solid #e6edf5;

}

.tg-v4-branch-fallback-item:last-child {

    border-bottom: 0;

}

.tg-v4-branch-fallback-item h3 {

    margin: 0 0 5px;

    font-size: 16px;

}

.tg-v4-branch-fallback-item p {

    margin: 0 0 5px;

    color: #5c6d82;

    font-size: 14px;

}

.tg-v4-branch-fallback-item a {

    color: #0757c7;

    font-weight: 700;

}

.tg-v4-branch-consult-card {

    padding: 20px;

    background: linear-gradient(155deg, #0757c7 0%, #173f9e 100%);

    color: #fff;

}

.tg-v4-branch-consult-card .tg-v4-branch-consult-kicker, .tg-v4-branch-consult-card h2, .tg-v4-branch-consult-card > p {

    color: #fff;

}

.tg-v4-branch-consult-card > p {

    opacity: .88;

    margin-bottom: 14px;

}

.tg-v4-branch-consult-card .tg-v2-cf7-quick input:not([type="submit"]), .tg-v4-branch-consult-card .tg-v2-cf7-quick textarea {

    border: 1px solid rgba(255,255,255,.24) !important;

    background: #fff !important;

    color: #17233a !important;

}

.tg-v4-branch-consult-card .tg-v2-cf7-quick input[type="submit"], .tg-v4-branch-consult-card .tg-v2-cf7-quick button[type="submit"] {

    width: 100% !important;

    border: 0 !important;

    border-radius: 9px !important;

    background: #ff334f !important;

    color: #fff !important;

    font-weight: 700 !important;

}

.tg-v4-branch-consult-phone {

    display: block;

    margin-top: 9px;

    padding: 10px 12px;

    border: 1px solid rgba(255,255,255,.28);

    border-radius: 9px;

    color: #fff;

    text-align: center;

    font-size: 14px;

    font-weight: 700;

}

@media (max-width: 991px) {

.tg-v4-branch-contact-grid {

    grid-template-columns: 1fr;

}

.tg-v4-branch-original-list {

    max-height: 280px;

}

}

@media (max-width: 767px) {

.tg-v4-branch-contact {

    padding: 24px 0;

}

.tg-v4-branch-directory-card, .tg-v4-branch-consult-card {

    padding: 16px;

    border-radius: 14px;

}

.tg-v4-branch-simple-head h2, .tg-v4-branch-consult-card h2 {

    font-size: 21px;

}

.tg-v4-branch-original-list {

    max-height: 250px;

}

}

@media (min-width: 992px) {

body.tg-home-v2-page .tg-v2-quick-row {

    align-items: center;

}

body.tg-home-v2-page .tg-v2-quick-chips {

    flex: 1 1 auto;

    flex-wrap: nowrap;

    overflow: hidden;

    gap: 8px;

}

body.tg-home-v2-page .tg-v2-chip {

    flex: 0 0 auto;

    white-space: nowrap;

    padding-left: 13px;

    padding-right: 13px;

}

}

body.tg-home-v2-page .tg-v4-news-section {

    padding: 56px 0 62px;

    background: linear-gradient(180deg, #ebfaf7 0%, #f7faff 100%);

    border-top: 1px solid #e8eef8;

}

body.tg-home-v2-page .tg-v4-news-heading {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 24px;

    margin-bottom: 24px;

}

body.tg-home-v2-page .tg-v4-news-heading h2 {

    margin: 5px 0 0;

    color: #062b52;

    font-size: 31px;

    line-height: 1.18;

    font-weight: 800;

}

body.tg-home-v2-page .tg-v4-news-heading > a {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #0757c7;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

}

body.tg-home-v2-page .tg-v4-news-grid {

    display: grid;

    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 18px;

}

body.tg-home-v2-page .tg-v4-news-card {

    min-width: 0;

    overflow: hidden;

    border: 1px solid #dce6f3;

    border-radius: 16px;

    background: #fff;

    box-shadow: 0 10px 26px rgba(8, 36, 88, .07);

    transition: transform .2s ease, box-shadow .2s ease;

}

body.tg-home-v2-page .tg-v4-news-card:hover {

    transform: translateY(-3px);

    box-shadow: 0 16px 34px rgba(8, 36, 88, .11);

}

body.tg-home-v2-page .tg-v4-news-thumb {

    display: block;

    aspect-ratio: 16 / 9;

    overflow: hidden;

    background: #eaf2ff;

}

body.tg-home-v2-page .tg-v4-news-thumb img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform .3s ease;

}

body.tg-home-v2-page .tg-v4-news-card:hover .tg-v4-news-thumb img {

    transform: scale(1.035);

}

body.tg-home-v2-page .tg-v4-news-placeholder {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 100%;

    height: 100%;

    color: #0757c7;

    font-weight: 800;

}

body.tg-home-v2-page .tg-v4-news-content {

    padding: 16px 17px 18px;

}

body.tg-home-v2-page .tg-v4-news-content time {

    display: block;

    margin-bottom: 7px;

    color: #7b8aa3;

    font-size: 12px;

}

body.tg-home-v2-page .tg-v4-news-content h3 {

    margin: 0 0 12px;

    font-size: 17px;

    line-height: 1.42;

    font-weight: 700;

}

body.tg-home-v2-page .tg-v4-news-content h3 a {

    color: #0a2548;

    text-decoration: none;

}

body.tg-home-v2-page .tg-v4-news-more {

    color: #0757c7;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;

}

body.tg-home-v2-page .tg-v4-news-empty {

    grid-column: 1 / -1;

    padding: 24px;

    border: 1px dashed #cbd8ea;

    border-radius: 14px;

    color: #607089;

    text-align: center;

    background: #fff;

}

body.tg-home-v2-page .tg-v2-job-card[style*="--tg-v4-visa-color:#0f766e"] .tg-v4-visa-badge {

    border-color: rgba(15,118,110,.26);

    background: #ecfdf5;

}

@media (max-width: 1100px) {

body.tg-home-v2-page .tg-v4-news-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

}

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v4-news-section {

    padding: 38px 0 44px;

}

body.tg-home-v2-page .tg-v4-news-heading {

    align-items: flex-start;

    margin-bottom: 18px;

}

body.tg-home-v2-page .tg-v4-news-heading h2 {

    font-size: 25px;

}

body.tg-home-v2-page .tg-v4-news-grid {

    grid-template-columns: 1fr 1fr;

    gap: 10px;

}

body.tg-home-v2-page .tg-v4-news-content {

    padding: 12px;

}

body.tg-home-v2-page .tg-v4-news-content h3 {

    font-size: 14px;

    line-height: 1.35;

    margin-bottom: 8px;

}

body.tg-home-v2-page .tg-v4-news-content time, body.tg-home-v2-page .tg-v4-news-more {

    font-size: 11px;

}

}

.tg-v2-job-card.tg-v4-visa-row {

    position: relative;

    background: linear-gradient( 90deg, var(--tg-v4-visa-bg) 0%, rgba(255,255,255,.85) 100% );

    border-left: 4px solid var(--tg-v4-visa-color);

    transition: all .25s ease;

}

.tg-v2-job-card.tg-v4-visa-row:hover {

    transform: translateX(3px);

    box-shadow: 0 8px 22px rgba(0,0,0,.08);

    z-index: 2;

}

.tg-v2-job-card .job-code, .tg-v2-job-card .tg-job-code {

    color: #0066cc;

    font-weight: 700;

}

.tg-v2-job-card .income, .tg-v2-job-card .tg-job-income {

    color: var(--tg-v4-visa-color);

    font-weight: 800;

}

.tg-v2-job-card .tg-v4-visa-badge {

    color: var(--tg-v4-visa-color);

    background: rgba(255,255,255,.65);

    border: 1px solid var(--tg-v4-visa-color);

    border-radius: 20px;

    padding: 3px 10px;

    font-weight: 600;

}

body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row {

    background: linear-gradient( 90deg, var(--tg-v4-visa-bg) 0%, #ffffff 120% );

    border-left: 5px solid var(--tg-v4-visa-color);

    box-shadow: 0 4px 15px rgba(0,0,0,.05);

    transition: all .25s ease;

}

body.tg-home-v2-page .tg-v2-job-card.tg-v4-visa-row:hover {

    transform: translateX(4px);

    box-shadow: 0 10px 25px rgba(0,0,0,.10);

}

.tg-v2-clear-button {

    background: #fff;

    color: #ff3154;

    border: 1px solid #ff3154;

    padding: 10px 18px;

    border-radius: 25px;

    font-weight: 700;

}

.tg-v2-advanced-toggle {

    background: linear-gradient(135deg,#005bea,#6a11cb);

    color: white;

    border: none;

    padding: 10px 22px;

    border-radius: 9px;

    font-weight: 700;

}

.tg-v2-job-head span {

    cursor: pointer;

    display: flex;

    gap: 6px;

    align-items: center;

}

.tg-v2-job-head i {

    font-size: 10px;

    opacity: .5;

}

.tg-v2-job-head span.active i {

    color: #ff3154;

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v2-quick-row {

    display: grid;

    grid-template-columns: minmax(0, 1fr) 86px;

    column-gap: 7px;

    row-gap: 7px;

    align-items: center;

    margin-top: 10px;

    padding-top: 10px;

}

body.tg-home-v2-page .tg-v2-quick-label {

    display: none;

}

body.tg-home-v2-page .tg-v2-quick-chips {

    grid-column: 1 / -1;

    grid-row: 1;

    display: flex;

    width: 100%;

    min-width: 0;

    gap: 5px;

    flex-wrap: nowrap;

    overflow-x: auto;

    padding-bottom: 4px;

    scrollbar-width: none;

}

body.tg-home-v2-page .tg-v2-quick-chips::-webkit-scrollbar {

    display: none;

}

body.tg-home-v2-page .tg-v2-chip {

    flex: 0 0 auto;

    padding: 6px 9px;

    font-size: 9px;

}

body.tg-home-v2-page .tg-v2-advanced-toggle {

    grid-column: 1;

    grid-row: 2;

    width: 90%;

    height: 34px;

    min-height: 34px;

    margin: 0;

    padding: 8px 10px;

    border-radius: 9px;

    font-size: 10px;

    display: flex;

    align-items: center;

    justify-content: center;

    box-sizing: border-box;

}

body.tg-home-v2-page .tg-v2-clear-button {

    grid-column: 2;

    grid-row: 2;

    width: 86px;

    height: 34px;

    min-height: 34px;

    margin: 0;

    padding: 6px 5px;

    border-radius: 8px;

    font-size: 10px;

    display: flex;

    align-items: center;

    justify-content: center;

    box-sizing: border-box;

}

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v2-job-results {

    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 8px;

    border: 0;

}

body.tg-home-v2-page .tg-v2-job-card {

    display: grid;

    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);

    width: 100%;

    min-width: 0;

    height: auto;

    min-height: 0;

    margin: 0;

    padding: 10px 8px;

    gap: 0 7px;

    box-sizing: border-box;

}

body.tg-home-v2-page .tg-v2-job-main {

    grid-column: 1 / -1;

    grid-row: 1;

    display: block;

    margin: 0;

    padding: 0;

    min-width: 0;

}

body.tg-home-v2-page .tg-v2-job-code-line {

    display: flex;

    align-items: center;

    flex-wrap: nowrap;

    gap: 4px;

    margin: 0 0 3px;

}

body.tg-home-v2-page .tg-v2-job-code {

    font-size: 12px;

    line-height: 1.2;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-new-badge {

    font-size: 7px;

    padding: 2px 4px;

    min-height: 14px;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v4-hot-badge {

    display: inline-flex;

    width: auto;

    transform: scale(.82);

    transform-origin: left center;

    margin-right: -5px;

}

body.tg-home-v2-page .tg-v2-job-title {

    display: block;

    min-height: 0;

    max-height: 35px;

    margin: 0;

    padding: 0;

    overflow: hidden;

    font-size: 14px;

    line-height: 1.35;

}

body.tg-home-v2-page .tg-v2-job-exam {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-salary {

    grid-column: 1 / -1;

    grid-row: 2;

    display: flex;

    align-items: baseline;

    gap: 5px;

    margin: 6px 0 0;

    padding: 5px 0;

    border-top: 1px solid #edf1f5;

    border-bottom: 1px solid #edf1f5;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-job-salary .tg-v2-cell-label {

    display: inline;

    margin: 0;

    font-size: 12px;

    line-height: 1;

}

body.tg-home-v2-page .tg-v2-job-salary strong {

    font-size: 12px;

    line-height: 1.2;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-job-country {

    grid-column: 1;

    grid-row: 3;

    display: block;

    min-width: 0;

    margin: 6px 0 0;

    padding: 0;

    border: 0;

    white-space: nowrap;

    overflow: hidden;

}

body.tg-home-v2-page .tg-v2-job-country .tg-v2-cell-label {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-country strong {

    display: inline;

    margin: 0;

    padding: 0;

    font-size: 13px;

    line-height: 1.5;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-job-country small {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-quantity {

    grid-column: 2;

    grid-row: 3;

    display: block;

    min-width: 0;

    margin: 6px 0 0;

    padding: 0;

    border: 0;

    white-space: nowrap;

    overflow: hidden;

}

body.tg-home-v2-page .tg-v2-job-quantity .tg-v2-cell-label {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-quantity strong {

    display: inline;

    font-size: 12px;

    line-height: 1.5;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-job-local {

    grid-column: 1;

    grid-row: 4;

}

body.tg-home-v2-page .tg-v2-job-local .tg-v2-cell-label {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-local .tg-v4-visa-badge {

    max-width: 110%;

    padding: 3px 3px;

    font-size: 8px;

    line-height: 1.1;

    white-space: nowrap;

    overflow: hidden;

    text-overflow: ellipsis;

}

body.tg-home-v2-page .tg-v2-job-actions {

    display: contents;

}

body.tg-home-v2-page .tg-v2-job-actions .tg-v2-status {

    grid-column: 2;

    grid-row: 4;

    justify-self: end;

    align-self: center;

    margin: 5px 0 0;

    padding: 4px 6px;

    font-size: 7px;

    line-height: 1;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-consult-link {

    grid-column: 1;

    grid-row: 5;

    display: flex;

    align-items: center;

    min-width: 0;

    margin: 6px 0 0;

    padding: 0;

    font-size: 12px;

    line-height: 1;

    white-space: nowrap;

}

body.tg-home-v2-page .tg-v2-detail-button {

    grid-column: 2;

    grid-row: 5;

    justify-self: end;

    align-self: center;

    min-height: 30px;

    margin: 6px 0 0;

    padding: 6px 9px;

    border-radius: 6px;

    font-size: 9px;

    line-height: 1;

    white-space: nowrap;

}

}

@media (min-width: 560px) and (max-width: 767px) {

body.tg-home-v2-page .tg-v2-job-results {

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 9px;

}

}

@media (max-width: 767px) {

body.tg-home-v2-page .tg-v2-job-local > strong {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-local > .tg-v2-cell-label {

    display: none;

}

body.tg-home-v2-page .tg-v2-job-local {

    display: flex;

    align-items: center;

    min-width: 0;

    margin: 5px 0 0;

    padding: 0;

    border: 0;

}

body.tg-home-v2-page .tg-v2-job-local .tg-v4-visa-badge {

    display: inline-flex;

}

}


/* Hiện đầy đủ tất cả quốc gia trong phần Tìm nhanh */
@media (min-width: 768px) {

    body.tg-home-v2-page .tg-v2-quick-row {
        flex-wrap: wrap !important;
        align-items: flex-start !important;
    }

    body.tg-home-v2-page .tg-v2-quick-chips {
        flex: 1 1 100% !important;
        flex-wrap: wrap !important;
        overflow: visible !important;
        white-space: normal !important;
    }

    body.tg-home-v2-page .tg-v2-chip {
        flex: 0 0 auto !important;
    }

}



/* Tìm nhanh: hover dễ đọc hơn */
body.tg-home-v2-page .tg-v2-chip:hover {
    color: var(--tg-blue) !important;
    background: #eef6ff !important;
    border-color: #9cc8ff !important;
    box-shadow: 0 5px 14px rgba(7, 87, 199, .12) !important;
}

/* Chip đang active vẫn nổi bật nhưng chữ rõ */
body.tg-home-v2-page .tg-v2-chip.is-active {
    color: #fff !important;
    background: var(--tg-blue) !important;
    border-color: var(--tg-blue) !important;
}

/* Riêng Đang tuyển giữ màu xanh lá */
body.tg-home-v2-page .tg-v2-chip.is-active[data-filter-field="status"] {
    color: #fff !important;
    background: var(--tg-green) !important;
    border-color: var(--tg-green) !important;
}

/* Icon cờ không bị mờ khi hover */
body.tg-home-v2-page .tg-v2-chip:hover .tg-v2-chip-flag,
body.tg-home-v2-page .tg-v2-chip.is-active .tg-v2-chip-flag {
    opacity: 1 !important;
}



body.tg-home-v2-page .tg-v2-job-quantity strong {
    overflow-wrap: anywhere;
}

@media (max-width: 767px) {
    body.tg-home-v2-page .tg-v2-quantity-nationality,
    body.tg-home-v2-page .tg-v2-quantity-separator {
        display: none !important;
    }

    body.tg-home-v2-page .tg-v2-quantity-number {
        display: inline !important;
        white-space: nowrap !important;
    }
}


/* Mobile: đưa cờ quốc gia lên ngang mã đơn */
body.tg-home-v2-page .tg-v2-country-flag-mobile {
    display: none;
}

@media (max-width: 767px) {
    body.tg-home-v2-page .tg-v2-country-flag-mobile {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        margin-left: auto !important;

        font-size: 16px !important;
        line-height: 1 !important;
		  transform: scale(2) !important;
    }

    /* Ẩn cờ ở dòng quốc gia để khỏi ăn mất chữ NHẬT BẢN / ĐỨC */
    body.tg-home-v2-page .tg-v2-job-country .tg-v2-country-flag {
        display: none !important;
    }
}










/* ==========================================================
   HOME V4 — Đồng bộ nút Bộ lọc nâng cao + Đặt lại trên desktop
========================================================== */

@media (min-width: 768px) {

    body.tg-home-v2-page .tg-v2-home .tg-v2-quick-row {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) auto auto !important;
        grid-template-rows: auto auto !important;
        column-gap: 10px !important;
        row-gap: 12px !important;
        align-items: center !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-quick-label {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-quick-chips {
        grid-column: 2 / 5 !important;
        grid-row: 1 !important;

        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        overflow: visible !important;
        white-space: normal !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-advanced-toggle {
        grid-column: 3 !important;
        grid-row: 2 !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-clear-button {
        grid-column: 4 !important;
        grid-row: 2 !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-advanced-toggle,
    body.tg-home-v2-page .tg-v2-home .tg-v2-clear-button {
        width: auto !important;
        min-width: 128px !important;
        max-width: none !important;

        height: 40px !important;
        min-height: 40px !important;

        margin: 0 !important;
        padding: 0 18px !important;

        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;

        border-radius: 9px !important;

        font-size: 13px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        white-space: nowrap !important;

        box-shadow: 0 7px 16px rgba(15, 45, 78, .08) !important;
        transform: none !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-advanced-toggle {
        color: var(--tg-blue) !important;
        background: #eef6ff !important;
        border: 1px solid #9cc8ff !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-clear-button {
        color: #7a4b00 !important;
        background: linear-gradient(135deg, #ffd75a, #ffb703) !important;
        border: 1px solid #e0a100 !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-advanced-toggle:hover {
        color: var(--tg-blue) !important;
        background: #e2f0ff !important;
        border-color: #75b3ff !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-clear-button:hover {
        color: #7a4b00 !important;
        background: linear-gradient(135deg, #ffe082, #ffc233) !important;
        border-color: #d99a00 !important;
    }
}


/* ==========================================================
   CHỐT FIX DUY NHẤT: Mobile trang chủ - nút Đặt lại không thò ra ngoài
========================================================== */

@media (max-width: 767px) {

    body.tg-home-v2-page .tg-v2-home .tg-v2-quick-row {
        grid-template-columns: minmax(0, 1fr) 104px !important;
        column-gap: 8px !important;
        overflow: hidden !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-advanced-toggle {
        grid-column: 1 !important;
        grid-row: 2 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.tg-home-v2-page .tg-v2-home .tg-v2-clear-button {
        grid-column: 2 !important;
        grid-row: 2 !important;

        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;

        justify-self: end !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
   JOB CARD MOBILE — thêm thành phố dưới quốc gia
   Chỉ thêm 1 dòng riêng, không đổi width card
========================================================== */

body.tg-home-v2-page .tg-v2-job-province-mobile {
    display: none;
}

@media (max-width: 767px) {

    body.tg-home-v2-page .tg-v2-job-province-mobile {
        grid-column: 1 / -1 !important;
        grid-row: 4 !important;

        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin: 3px 0 0 !important;
        padding: 0 !important;

        color: #222222 !important;
        font-size: 12px !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;

        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        overflow-wrap: anywhere !important;
    }

    body.tg-home-v2-page .tg-v2-job-country {
        grid-column: 1 !important;
        grid-row: 3 !important;
    }

    body.tg-home-v2-page .tg-v2-job-quantity {
        grid-column: 2 !important;
        grid-row: 3 !important;
    }

    body.tg-home-v2-page .tg-v2-job-local {
        grid-column: 1 !important;
        grid-row: 5 !important;
    }

    body.tg-home-v2-page .tg-v2-job-actions .tg-v2-status {
        grid-column: 2 !important;
        grid-row: 5 !important;
    }

    body.tg-home-v2-page .tg-v2-consult-link {
        grid-column: 1 !important;
        grid-row: 6 !important;
    }

    body.tg-home-v2-page .tg-v2-detail-button {
        grid-column: 2 !important;
        grid-row: 6 !important;
    }

    body.tg-home-v2-page .tg-v2-job-card {
        height: auto !important;
        min-height: 0 !important;
        grid-auto-rows: auto !important;
    }
}
























/* ==========================================================
   MOBILE PERFORMANCE: defer layout/paint of below-fold V4 sections.
   ========================================================== */
@media (max-width: 767px) {
    body.tg-home-v2-page .tg-v2-about-section,
    body.tg-home-v2-page .tg-v2-media-section,
    body.tg-home-v2-page .tg-v2-process-section,
    body.tg-home-v2-page .tg-v4-news-section,
    body.tg-home-v2-page .tg-v4-branch-contact,
    body.tg-home-v2-page #footer-v4 {
        content-visibility: auto;
        contain-intrinsic-size: auto 760px;
    }
}


/* ==========================================================
   TG MOBILE CLEAN V2 — stable above-the-fold slider geometry
   1900 x 543 is the current MetaSlider banner ratio.
   ========================================================== */
@media (max-width: 767px) {
    body.tg-home-v2-page .tg-header-slider,
    body.tg-home-v2-page .tg-header-slider .metaslider,
    body.tg-home-v2-page .tg-header-slider .ml-slider,
    body.tg-home-v2-page .tg-header-slider .flexslider,
    body.tg-home-v2-page .tg-header-slider .slides,
    body.tg-home-v2-page .tg-v2-slider-wrap,
    body.tg-home-v2-page .tg-v2-slider-wrap .metaslider,
    body.tg-home-v2-page .tg-v2-slider-wrap .ml-slider {
        min-height: calc(100vw * 543 / 1900);
    }

    body.tg-home-v2-page .tg-header-slider img,
    body.tg-home-v2-page .tg-v2-slider-wrap img {
        aspect-ratio: 1900 / 543;
        object-fit: cover;
    }
}
