html body {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.7;
  letter-spacing: 0;
}
html body :is(p, li, a, button, input, textarea, select, option, label, summary, small, dt, dd, figcaption) {
  font-family: Inter, Arial, sans-serif !important;
  letter-spacing: normal;
}
html body :is(h1, h2, h3),
html body .brand > span,
html body .tbc-menu-brand span,
html body .footer-wordmark,
html body .menu-dialog nav a,
html body .ticket-header strong,
html body .group-types strong,
html body .tp-note strong,
html body .tp-cover-shot figcaption span,
html body .trip-photo figcaption strong,
html body .flight-ledger-row h3,
html body .tp-item h3,
html body .tp-details-body h2 {
  font-family: Cinzel, Georgia, serif !important;
}


html body :is(.about-page, .contact-page, .ft-page, .tp-page) > p,
html body .tbc-page-content p { font-size: 15px; }
html body .pill,
html body .text-link,
html body .header-enquiry { font-size: 13px; }
html body :is(.desktop-nav, .footer-middle nav, .flight-navigation) a { font-size: 13px; }
html body :is(input, select, textarea) { font-size: 15px; }
html body .footer-middle nav a { font-size: 16px; }
html body .footer-email { font-size: clamp(19px, 2.45vw, 33px); }
html body .footer-opening h2 { font-size: clamp(44px, 5.6vw, 82px); }
html body .footer-wordmark { font-size: clamp(32px, 5.2vw, 78px); }
html body .menu-dialog nav a { font-size: clamp(28px, 4.3vw, 53px); }


html body .intro h2 { font-size: clamp(32px, 3.7vw, 52px); }
html body .section-heading h2 { font-size: clamp(37px, 4.5vw, 62px); }
html body .animated-copy { font-family: Inter, Arial, sans-serif; font-size: clamp(19px, 2vw, 28px); letter-spacing: -.025em; }
html body .destination-copy h3 { font-size: clamp(29px, 2.7vw, 36px); }
html body .journey-step h3 { font-size: clamp(27px, 2.5vw, 36px); }
html body .service-item h3 { font-size: clamp(27px, 2.55vw, 36px); }


html body .visa-hero h1 { font-size: clamp(40px, 5vw, 75px); }
html body .visa-page :is(.visa-intro, .services-top, .approach-copy, .process-heading, .places-heading, .notice, .visa-faq) h2 { font-size: clamp(37px, 4.5vw, 66px); }
html body .visa-page .service-main h3 { font-size: clamp(31px, 3.5vw, 50px); }
html body .visa-page .scroll-ink { font-family: Inter, Arial, sans-serif; font-size: clamp(20px, 2.2vw, 29px); }


html body .ft-page h1 { font-size: clamp(65px, 7.6vw, 119px); }
html body .ft-page h2 { font-size: clamp(45px, 5.2vw, 82px); }
html body .ft-page h3 { font-size: clamp(29px, 3.1vw, 45px); }
html body .ft-page .flight-ledger-row h3 { font-size: clamp(32px, 3.5vw, 55px); }
html body .ft-page .group-chapter h2 { font-size: clamp(55px, 7.8vw, 119px); }
html body .ft-page .trip-details > p { font-size: 20px; }


html body .tp-page .tp-cover h1 { font-size: clamp(61px, 8.3vw, 126px); }
html body .tp-page :is(.tp-collection, .tp-notes, .tp-custom) h2 { font-size: clamp(43px, 5.7vw, 82px); }
html body .tp-page .tp-item h3 { font-size: clamp(37px, 4.1vw, 63px); }
html body .tp-page .tp-item.featured h3 { font-size: clamp(42px, 4.6vw, 68px); }
html body .tp-page .tp-note strong { font-size: 27px; }


html body .about-page h1 { font-size: clamp(58px, 6.6vw, 96px); }
html body .about-page h2 { font-size: clamp(47px, 5.7vw, 87px); }
html body .about-page h3 { font-size: clamp(29px, 3.7vw, 58px); }
html body .about-page .ab-belief h2 { font-size: clamp(45px, 5.9vw, 92px); }
html body .about-page .ab-wide h2 { font-size: clamp(48px, 7vw, 108px); }
html body .about-page .ab-story-content .story-statement { font-size: 18px; }


html body .contact-page h1 { font-size: clamp(62px, 8vw, 120px); }
html body .contact-page h2 { font-size: clamp(45px, 5.6vw, 85px); }
html body .contact-page h3 { font-size: clamp(27px, 3.1vw, 47px); }
html body .contact-page .co-direct h2 { font-size: clamp(26px, 2.6vw, 38px); }


html body .legal-document h1 { font-size: clamp(54px, 7.8vw, 105px); }
html body .legal-document h2 { font-size: clamp(34px, 4.1vw, 60px); }
html body .legal-document h3 { font-size: clamp(24px, 2.7vw, 38px); }
html body .legal-article :is(p, li) { font-size: 15px; line-height: 1.85; }

@media (max-width: 700px) {
  html body .footer-opening h2 { font-size: clamp(42px, 10vw, 56px); }
  html body .footer-wordmark { font-size: clamp(25px, 6vw, 42px); }
  html body .footer-middle nav a { font-size: 17px; }
  html body .section-heading h2 { font-size: clamp(34px, 9vw, 45px); }
  html body .animated-copy { font-size: clamp(19px, 5.4vw, 24px); }
  html body .visa-hero h1 { font-size: clamp(35px, 9vw, 49px); }
  html body .visa-page :is(.visa-intro, .services-top, .approach-copy, .process-heading, .places-heading, .notice, .visa-faq) h2 { font-size: clamp(34px, 8.6vw, 48px); }
  html body .ft-page h1 { font-size: clamp(47px, 11vw, 74px); }
  html body .ft-page h2 { font-size: clamp(40px, 9.4vw, 57px); }
  html body .ft-page .flight-ledger-row h3 { font-size: clamp(30px, 8vw, 42px); }
  html body .ft-page .group-chapter h2 { font-size: clamp(50px, 11vw, 77px); }
  html body .tp-page .tp-cover h1 { font-size: clamp(48px, 10.5vw, 65px); }
  html body .tp-page :is(.tp-collection, .tp-notes, .tp-custom) h2 { font-size: clamp(42px, 9.6vw, 59px); }
  html body .tp-page .tp-item h3,
  html body .tp-page .tp-item.featured h3 { font-size: clamp(38px, 9.7vw, 51px); }
  html body .about-page h1 { font-size: clamp(45px, 10vw, 63px); }
  html body .about-page h2 { font-size: clamp(39px, 9vw, 56px); }
  html body .about-page h3 { font-size: clamp(28px, 7.4vw, 43px); }
  html body .about-page .ab-belief h2,
  html body .about-page .ab-wide h2 { font-size: clamp(43px, 10vw, 62px); }
  html body .contact-page h1 { font-size: clamp(51px, 11vw, 70px); }
  html body .contact-page h2 { font-size: clamp(40px, 9vw, 55px); }
  html body .contact-page .co-direct h2 { font-size: clamp(25px, 6vw, 35px); }
  html body .legal-document h1 { font-size: clamp(45px, 10.5vw, 71px); }
  html body .legal-document h2 { font-size: clamp(32px, 8vw, 45px); }
}



html body .animated-copy,
html body .visa-page .scroll-ink,
html body .about-page .ab-story-content .story-statement {
  font-weight: 400 !important;
}
html body .animated-copy {
  font-size: clamp(19px, 1.9vw, 26px);
  line-height: 1.65;
  letter-spacing: -.018em;
}


@media (max-width: 700px) {
  html body { font-size: 16px; line-height: 1.75; }
  html body .animated-copy { font-size: clamp(19px, 5.2vw, 22px); line-height: 1.7; }
  html body .intro-location { font-size: 14px; line-height: 1.6; }
  html body .hero-details p,
  html body .visa-hero-bottom p,
  html body .visa-page .approach-points > div,
  html body .visa-page .process-note,
  html body .visa-enquiry .modal-lead,
  html body .ft-modal .modal-lead,
  html body .tp-page .tp-enquiry-desc,
  html body .section-heading > p,
  html body .service-item p,
  html body .destination-copy p,
  html body .step-copy p,
  html body .faq details p,
  html body .visa-page .services-top > p,
  html body .visa-page .service-description p,
  html body .visa-page .approach-copy > p,
  html body .visa-page .process-heading > p,
  html body .visa-page .process-item p,
  html body .visa-page .places-heading > p,
  html body .visa-page .place-caption p,
  html body .visa-page .notice-copy p,
  html body .visa-page .intro-tail,
  html body .ft-page .flight-services-top p,
  html body .ft-page .flight-ledger-row p,
  html body .ft-page .trip-chapter-title p,
  html body .ft-page .group-copy > p,
  html body .ft-page .closing-note-content > p,
  html body .tp-page .tp-cover-copy p,
  html body .tp-page .tp-collection-title p,
  html body .tp-page .tp-item-copy > p,
  html body .tp-page .tp-notes-intro p,
  html body .tp-page .tp-note p,
  html body .tp-page .tp-custom-copy p,
  html body .tp-page .tp-details-columns p,
  html body .about-page .ab-belief-footer p,
  html body .about-page .ab-for-item p,
  html body .about-page .ab-office p,
  html body .about-page .ab-story-content .ab-visa-note,
  html body .contact-page .co-direct p,
  html body .contact-page .co-form-descr,
  html body .legal-article p,
  html body .legal-article li,
  html body .legal-document .highlight-grid p {
    font-size: 16px;
    line-height: 1.78;
  }
  html body .photo-caption { font-size: 14px; line-height: 1.55; }
  html body .ft-page .flight-scene-caption p { font-size: 15px; line-height: 1.6; }
  html body .tp-page .tp-details-columns p { line-height: 1.7; }
}


html body .faq summary {
  font-size: 17px;
  font-weight: 500;
  line-height: 1.6;
}
html body .faq details p {
  font-size: 16px;
  line-height: 1.8;
}
html body footer .footer-bottom {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.7;
}
html body footer .footer-bottom > span,
html body footer .footer-bottom a {
  font-family: Inter, Arial, sans-serif;
  font-size: inherit;
  line-height: inherit;
}
html body footer .footer-policies {
  font-size: 14px;
  line-height: 1.65;
}
html body footer .footer-opening p {
  font-size: 16px;
  line-height: 1.7;
}
html body footer .footer-contact p {
  font-size: 15px;
  line-height: 1.8;
}
html body footer .social-link {
  font-size: 14px;
}

@media (max-width: 700px) {
  html body .faq summary {
    font-size: 17px;
    line-height: 1.6;
    gap: 14px;
  }
  html body .faq details p {
    font-size: 16px;
    line-height: 1.8;
  }
  html body footer .footer-bottom {
    font-size: 14px;
    line-height: 1.65;
  }
  html body footer .footer-bottom > span {
    overflow-wrap:break-word;
  }
  html body footer .footer-policies {
    font-size: 14px;
  }
  html body footer .footer-opening p,
  html body footer .footer-contact p {
    font-size: 16px;
    line-height: 1.75;
  }
  html body footer .social-link {
    font-size: 14px;
  }
  html body :is(.about-page .ab-hero-lead p,
                .about-page .ab-story-content > p,
                .about-page .ab-way-top > p,
                .about-page .ab-principle p,
                .about-page .ab-for-top p,
                .contact-page .co-hero-aside p,
                .contact-page .co-workspace-head p,
                .contact-page .co-side-copy > p,
                .contact-page .co-form-area > .co-form-descr,
                .contact-page .co-offices-top p,
                .contact-page .co-location p,
                .ft-page .flight-ticket .ticket-actions p,
                .ft-page .trip-photo figcaption span,
                .tp-page .tp-enquiry-desc) {
    font-size: 16px;
    line-height: 1.75;
  }
  html body .visa-page :is(.visa-kicker, .visa-hero-foot, .process-note, .places-bottom p, .notice-copy small) {
    font-size: 14px;
    line-height: 1.6;
  }
  html body .visa-page .place-caption p {
    font-size: 15px;
    line-height: 1.7;
  }
  html body :is(.contact-page .co-field label,
                .contact-page .co-consent span,
                .visa-enquiry label,
                .ft-page .ticket-fields label,
                .ft-modal .modal-fields label,
                .tp-page .tp-enquiry-grid label,
                .tp-page .tp-consent) {
    font-size: 14px;
    line-height: 1.6;
  }
  html body .legal-document :is(.legal-toc nav a, .policy-switch a) {
    font-size: 14px;
    line-height: 1.6;
  }
}


@media (max-width: 700px) {
  html body .globe-hint,
  html body .intro-location,
  html body .tp-enquiry .tp-enquiry-note,
  html body .ft-modal .modal-mini,
  html body .about-page + .ab-enquiry .ab-note,
  html body .co-side-bottom p,
  html body .co-form-actions p,
  html body .co-office-foot p,
  html body .co-result-note,
  html body .legal-document .toc-help {
    font-size: 14px;
    line-height: 1.65;
  }
  html body .tp-enquiry .tp-enquiry-desc {
    font-size: 16px;
    line-height: 1.75;
  }
  html body .ft-page .group-pano-inner p {
    font-size: 16px;
    line-height: 1.75;
  }
  html body .tp-page .tp-details-columns p {
    font-size: 16px;
  }
}

html body {
  font-size: 16px;
  line-height: 1.72;
}
html body :is(h1, h2, h3) {
  font-weight: 400;
}
html body .brand > span,
html body .tbc-menu-brand span { font-weight: 500; }
html body :is(.pill, .text-link, .header-enquiry) {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
}
html body :is(.desktop-nav, .flight-navigation) a { font-size: 15px; font-weight: 500; }
html body .menu-email { font-size: 15px; }
html body :is(.footer-middle nav a, .footer-contact > a:first-child) { font-weight: 400; }
html body :is(p, li, label, summary, a, button, input, select, textarea) strong,
html body .tp-item-meta span:first-child,
html body .tp-item-features strong,
html body .co-topic-grid legend,
html body .legal-toc-title { font-weight: 500; }
html body :is(.service-item h3, .service-main h3, .flight-ledger-row h3) { font-weight: 400; }
html body :is(.faq summary, .visa-faq summary) { font-size: 17px; font-weight: 400; }
html body :is(.faq details p, .visa-faq details p) { font-size: 16px; line-height: 1.8; }
html body :is(.footer-policies, .footer-bottom, .footer-policies a, .footer-bottom > span, .footer-bottom a) {
  font-size: 14px;
  line-height: 1.7;
  font-weight: 400;
}
html body :is(.footer-opening p, .footer-contact p) { font-size: 16px; line-height: 1.75; }
html body .social-link { font-size: 15px; }
html body :is(.enquiry-dialog label, .dialog-top, .enquiry-dialog p, .enquiry-summary > div, .enquiry-options > button, .dialog-actions, .back-button) {
  font-size: 15px;
  line-height: 1.65;
  font-weight: 400;
}
html body :is(.enquiry-dialog input, .enquiry-dialog select, .enquiry-dialog textarea) { font-size: 16px; }
html body :is(.intro-location, .globe-hint, .globe-caption, .photo-caption, .place-label, .place-tabs button, .step-count, .service-number, .service-item small, .hero-baseline) {
  font-size: 14px;
  line-height: 1.65;
}
html body :is(.service-item p, .destination-copy p, .step-copy p, .section-heading > p, .service-item li, .journey-step p) {
  font-size: 16px;
  line-height: 1.8;
  font-weight: 400;
}
html body .animated-copy { font-weight: 400; }


html body .visa-page :is(.visa-hero-bottom p, .intro-tail, .services-top > p, .service-description p, .approach-copy > p, .process-heading > p, .process-item p, .places-heading > p, .place-caption p, .notice-copy p) {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
html body .visa-page :is(.approach-points > div, .approach-caption, .process-note, .places-bottom p, .notice-copy small, .visa-hero-foot) {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.75;
}
html body .visa-page :is(.approach-points > div, .service-keywords span) { font-weight: 400; }
html body .visa-page :is(.service-keywords span, .small-index, .service-num, .approach-points span, .visa-hero-visual figcaption small) {
  font-size: 14px;
  line-height: 1.55;
}
html body .visa-page :is(.service-description .text-link, .place-link, .places-bottom .text-link, .visa-hero-foot a) {
  font-size: 15px;
  font-weight: 500;
}
html body .visa-enquiry :is(label, .consent-label, .modal-top, .modal-lead, .form-disclaimer, .required-note, .back-step) {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}
html body .visa-enquiry :is(input, select, textarea) { font-size: 16px; }
html body .visa-enquiry :is(.modal-actions .pill, .back-step) { font-size: 15px; font-weight: 500; }


html body .ft-page :is(.flight-hero-intro p, .flight-services-top p, .flight-ledger-row p, .trip-chapter-title p, .group-copy > p, .closing-note-content p, .flight-scene-caption p, .trip-details > p) {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
html body .ft-page :is(.ticket-header span, .ticket-fields label, .ticket-actions p, .ticket-choice span, .trip-photo figcaption span, .trip-detail-list > div, .group-pano-inner p, .group-pano-inner span, .group-types div, .closing-note-content .small-note) {
  font-size: 15px;
  line-height: 1.65;
  font-weight: 400;
}
html body .ft-page .ticket-fields label { font-weight: 500; }
html body .ft-page .ticket-choice span { font-weight: 500; }
html body .ft-page :is(.ticket-fields input, .ticket-fields select) { font-size: 16px; }
html body .ft-page .trip-detail-list > div { font-weight: 400; }
html body .ft-modal :is(.ft-modal-top, .modal-lead, .modal-fields label, .modal-consent, .modal-mini, .modal-controls > button) {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}
html body .ft-modal .modal-fields label { font-weight: 500; }
html body .ft-modal :is(input, select, textarea) { font-size: 16px; }


html body .tp-page :is(.tp-cover-copy p, .tp-collection-title p, .tp-item-copy > p, .tp-notes-intro p, .tp-note p, .tp-custom-copy p, .tp-details-intro, .tp-details-columns p, .tp-enquiry-desc) {
  font-size: 16px;
  line-height: 1.8;
  font-weight: 400;
}
html body .tp-page :is(.tp-field label, .tp-result-count, .tp-item-meta, .tp-item-features, .tp-item-features small, .tp-details-head, .tp-details-subhead, .tp-details-disclaimer, .tp-cover-shot figcaption small, .tp-enquiry-head, .tp-enquiry-grid label, .tp-consent, .tp-enquiry-note) {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}
html body .tp-page :is(.tp-field label, .tp-enquiry-grid label) { font-weight: 500; }
html body .tp-page :is(.tp-field select, .tp-enquiry-grid input, .tp-enquiry-grid select, .tp-enquiry-grid textarea) { font-size: 16px; }


html body .about-page :is(.ab-hero-lead p, .ab-story-content > p, .ab-way-top > p, .ab-principle p, .ab-for-top p, .ab-for-item p, .ab-office p, .ab-belief-footer p, .ab-story-content .ab-visa-note) {
  font-size: 16px;
  line-height: 1.8;
  font-weight: 400;
}
html body .about-page :is(.ab-photo-caption, .ab-story-content .story-statement) { font-weight: 400; }
html body .about-page .ab-photo-caption { font-size: 14px; line-height: 1.65; }
html body .about-page .ab-story-content .story-statement { font-size: 19px; }
html body :is(.ab-fields label, .ab-consent, .ab-note, .ab-dialog-top span, .ab-enquiry .explain) { font-size: 15px; font-weight: 400; line-height: 1.65; }
html body .ab-fields label { font-weight: 500; }
html body .ab-fields :is(input, select, textarea) { font-size: 16px; }


html body .contact-page :is(.co-hero-aside p, .co-direct p, .co-workspace-head p, .co-side-copy > p, .co-form-descr, .co-offices-top p, .co-location p, .co-side-bottom p, .co-form-actions p, .co-office-foot p, .co-result-note) {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
html body .contact-page :is(.co-topic-grid legend, .co-topic span, .co-field label, .co-consent span, .co-preview-content, .co-review-actions button, .co-side-bottom a) {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}
html body .contact-page :is(.co-topic-grid legend, .co-field label) { font-weight: 500; }
html body .contact-page .co-location p.co-area { font-weight: 500; }
html body .contact-page :is(.co-field input, .co-field select, .co-field textarea) { font-size: 16px; }


html body .legal-document :is(.legal-hero-summary p, .highlight-grid p, .legal-article p, .legal-article li, .legal-end p) {
  font-size: 16px;
  line-height: 1.85;
  font-weight: 400;
}
html body .legal-document :is(.policy-switch a, .legal-hero-summary time, .legal-toc-title, .legal-toc nav a, .legal-toc nav a span, .legal-toc .toc-help p, .legal-toc .toc-help a, .legal-next a span) {
  font-size: 15px;
  line-height: 1.65;
  font-weight: 400;
}
html body .legal-document :is(.legal-toc-title, .legal-toc .toc-help a) { font-weight: 500; }
html body .legal-article strong { font-weight: 500; }

@media (max-width: 700px) {
  html body { font-size: 16px; }
  html body :is(.pill, .text-link, .header-enquiry, .service-item .text-link, .destination-copy .text-link) { font-size: 15px; }
  html body :is(.service-item li, .service-item small, .place-tabs button, .place-label, .hero-baseline) { font-size: 14px; }
  html body .faq summary { font-size: 17px; }
  html body .visa-page :is(.place-caption p, .approach-points > div, .service-description p, .places-bottom p) { font-size: 16px; }
  html body .visa-page :is(.service-description .text-link, .place-link, .visa-hero-foot a) { font-size: 15px; }
  html body :is(.visa-enquiry .modal-actions .pill, .ft-modal .modal-controls .pill) { font-size: 15px; }
  html body .tp-page .tp-cover-shot figcaption small { font-size: 14px; }
  html body .legal-document :is(.legal-toc nav a, .policy-switch a) { font-size: 15px; }
}


html body .visa-page .approach-points strong {
  font-size: inherit;
  font-weight: 500;
}


html body footer :is(.footer-policies, .footer-policies a, .footer-bottom, .footer-bottom > span, .footer-bottom a) {
  font-size: 13px;
}


html body .header-enquiry { font-size: 15px; }
@media (max-width: 700px) { html body .header-enquiry { font-size: 11px; } }