/* ============================================================
   FONT DECLARATIONS - VISIT
   ============================================================
   This file contains ALL font-size and font-family declarations
   extracted from visit.css.
   
   DO NOT modify font sizes here without updating the source.
   All values are the EXACT original values from the source file.
   ============================================================ */



body {

    font-family: var(--font-body);
}

.app-promo-title {
    font-family: "Allomira Black", "Allomira", serif;
}

.text-blue {
    font-family: "Allomira Black", "Allomira", serif;
}


.visit-hero-content h1 {

    font-family: var(--font-head);
}



.visit-hero-content p {

    font-family: var(--font-body);
}



.invite-title {

    font-family: var(--font-head);
}



.alert {

    font-family: var(--font-body);
}



.exp-title {

    font-family: var(--font-head);
}



.exp-content h3 {

    font-family: var(--font-head);
}


@media (max-width: 480px) {


    .visit-hero-content h1 {

        font-size: 32px;
    }




    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .timing-title,
    .contact-title {

        font-size: 24px;
    }



    .guidelines-header h3 {

        font-size: 16px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 14px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .timing-desc,
    .contact-desc,
    .contact-footer,
    .list-intro,
    .trust-msg,
    .form-group label,
    .form-group input,
    .submit-btn {

        font-size: 14px;
    }



    .form-group label {

        font-size: 14px;
    }



    .form-group input {

        font-size: 14px;
    }



    .submit-btn {

        font-size: 16px;
    }



    .contact-footer {

        font-size: 14px;
    }
}


@media (min-width: 481px) and (max-width: 767px) {


    .visit-hero-content h1 {

        font-size: 42px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .timing-title,
    .contact-title {

        font-size: 32px;
    }



    .guidelines-header h3 {

        font-size: 20px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 16px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .timing-desc,
    .contact-desc,
    .contact-footer,
    .list-intro,
    .trust-msg,
    .form-group label,
    .form-group input,
    .submit-btn {

        font-size: 16px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 16px;
    }
}


@media (min-width: 768px) and (max-width: 819px) {


    .visit-hero-content h1 {

        font-size: 48px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .timing-title,
    .contact-title {

        font-size: 36px;
    }



    .guidelines-header h3 {

        font-size: 22px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 18px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .timing-desc,
    .contact-desc,
    .contact-footer,
    .list-intro,
    .trust-msg,
    .form-group label,
    .form-group input,
    .submit-btn {

        font-size: 17px;
    }



    .invite-title {

        font-size: 28px;
    }



    .invite-desc p,
    .invite-yellow-card p,
    .invite-list li {

        font-size: 16px;
    }



    .booking-title {

        font-size: 28px;
    }



    .booking-desc {

        font-size: 16px;
    }



    .guidelines-header h3 {

        font-size: 28px;
    }



    .guidelines-list li {

        font-size: 16px;
    }



    .timing-title,
    .contact-title {

        font-size: 28px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 16px;
    }
}


@media (min-width: 820px) and (max-width: 1023px) {


    .visit-hero-content h1 {

        font-size: 54px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .timing-title,
    .contact-title {

        font-size: 40px;
    }



    .guidelines-header h3 {

        font-size: 24px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 20px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .timing-desc,
    .contact-desc,
    .contact-footer,
    .list-intro,
    .trust-msg,
    .form-group label,
    .form-group input,
    .submit-btn {

        font-size: 18px;
    }



    .invite-title {

        font-size: 28px;
    }



    .invite-desc p,
    .invite-yellow-card p,
    .invite-list li {

        font-size: 16px;
    }



    .booking-title {

        font-size: 28px;
    }



    .booking-desc {

        font-size: 16px;
    }



    .guidelines-header h3 {

        font-size: 28px;
    }



    .guidelines-list li {

        font-size: 16px;
    }



    .timing-title,
    .contact-title {

        font-size: 28px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 16px;
    }
}


@media (min-width: 1024px) and (max-width: 1279px) {


    .visit-hero-content h1 {

        font-size: 58px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .timing-title,
    .contact-title {

        font-size: 38px;
    }



    .guidelines-header h3 {

        font-size: 26px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 21px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer {

        font-size: 19px;
    }



    .invite-title {

        font-size: 28px;
    }



    .invite-desc p,
    .invite-yellow-card p,
    .invite-list li {

        font-size: 16px;
    }



    .booking-title {

        font-size: 28px;
    }



    .booking-desc {

        font-size: 16px;
    }



    .guidelines-header h3 {

        font-size: 28px;
    }



    .guidelines-list li {

        font-size: 16px;
    }



    .timing-title,
    .contact-title {

        font-size: 28px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 16px;
    }
}


@media (min-width: 1280px) and (max-width: 1439px) {


    .visit-hero-content h1 {

        font-size: 50px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    #exp-title1,
    #exp-title2,
    #exp-title3,
    #exp-title4,
    .booking-title,
    .guidelines-header h3,
    .timing-title,
    .contact-title {

        font-size: 38px;
    }



    .guidelines-header h3 {

        font-size: 28px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 21px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer {

        font-size: 17px;
    }



    .invite-desc p,
    .invite-yellow-card p,
    .invite-list li {

        font-size: 14px;
    }



    .booking-title {

        font-size: 28px;
    }



    .booking-desc {

        font-size: 16px;
    }



    .guidelines-header h3 {

        font-size: 16px;
    }



    .guidelines-list li {

        font-size: 14px;
    }



    .timing-title,
    .contact-title {

        font-size: 28px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 14px;
    }
}


@media (min-width: 1440px) and (max-width: 1919px) {


    .visit-hero-content h1 {

        font-size: 72px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .guidelines-header h3,
    .timing-title,
    .contact-title {

        font-size: 50px;
    }



    .guidelines-header h3 {

        font-size: 29px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 22px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer {

        font-size: 18px;
    }



    .invite-title {

        font-size: 28px;
    }



    .invite-desc p,
    .invite-yellow-card p,
    .invite-list li {

        font-size: 14px;
    }



    .booking-title {

        font-size: 28px;
    }



    .booking-desc {

        font-size: 14px;
    }



    .guidelines-header h3 {

        font-size: 28px;
    }



    .guidelines-list li {

        font-size: 14px;
    }



    .timing-title,
    .contact-title {

        font-size: 28px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 14px;
    }
}


@media (min-width: 1920px) and (max-width: 2559px) {


    .visit-hero-content h1 {

        font-size: 78px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .timing-title,
    .contact-title {

        font-size: 52px;
    }



    .guidelines-header h3 {

        font-size: 30px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 22px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer {

        font-size: 20px;
    }



    .invite-title {

        font-size: 32px;
    }



    .invite-desc p,
    .invite-yellow-card p,
    .invite-list li {

        font-size: 16px;
    }



    .booking-title {

        font-size: 32px;
    }



    .booking-desc {

        font-size: 16px;
    }



    .guidelines-header h3 {

        font-size: 32px;
    }



    .guidelines-list li {

        font-size: 16px;
    }



    .timing-title,
    .contact-title {

        font-size: 32px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 16px;
    }
}


@media (min-width: 2560px) and (max-width: 3839px) {


    .visit-hero-content h1 {

        font-size: 96px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .guidelines-header h3,
    .timing-title,
    .contact-title {

        font-size: 64px;
    }



    .guidelines-header h3 {

        font-size: 36px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 28px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer {

        font-size: 24px;
    }



    .invite-title {

        font-size: 42px;
    }



    .invite-desc p,
    .invite-yellow-card p,
    .invite-list li {

        font-size: 21px;
    }



    .booking-title {

        font-size: 42px;
    }



    .booking-desc {

        font-size: 21px;
    }



    .guidelines-header h3 {

        font-size: 42px;
    }



    .guidelines-list li {

        font-size: 21px;
    }



    .timing-title,
    .contact-title {

        font-size: 42px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 21px;
    }



    .form-group label {

        font-size: 21px;
    }



    .form-group input {

        font-size: 18px;
    }



    .submit-btn {

        font-size: 21px;
    }



    .contact-footer {

        font-size: 18px;
    }
}


@media (min-width: 3840px) {


    .visit-hero-content h1 {

        font-size: 120px;
    }



    .invite-title,
    .exp-title,
    .exp-content h3,
    .booking-title,
    .guidelines-header h3,
    .timing-title,
    .contact-title {

        font-size: 84px;
    }



    .guidelines-header h3 {

        font-size: 48px;
    }



    .invite-list li,
    .guidelines-list li {

        font-size: 36px;
    }



    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer {

        font-size: 32px;
    }



    .invite-title {

        font-size: 64px;
    }



    .invite-desc p,
    .invite-yellow-card p,
    .invite-list li {

        font-size: 32px;
    }



    .guidelines-header h3 {

        font-size: 60px;
    }



    .timing-title,
    .contact-title {

        font-size: 64px;
    }



    .timing-desc,
    .contact-desc {

        font-size: 32px;
    }



    .form-group label {

        font-size: 32px;
    }



    .form-group input {

        font-size: 28px;
    }



    .submit-btn {

        font-size: 32px;
    }



    .contact-footer {

        font-size: 28px;
    }
}



.booking-title {

    font-family: var(--font-head);
}



.guidelines-header h3 {

    font-family: var(--font-body);
}



.timing-title {

    font-family: var(--font-head);
}



.timing-desc {

    font-family: var(--font-body);
}



.contact-title {

    font-family: var(--font-head);
}



.contact-desc {

    font-family: var(--font-body);
    font-size: 18px;
}



.form-group label {

    font-family: var(--font-body);
    font-size: 16px;
}



.form-group input {

    font-family: var(--font-body);
    font-size: 16px;
}



.submit-btn {

    font-family: var(--font-body);
    font-size: 18px;
}



.contact-footer {

    font-family: var(--font-body);
    font-size: 16px;
}

/* ============================================================
   CONSOLIDATED HIGH-RESOLUTION TYPOGRAPHY OVERRIDES
   ============================================================ */

/* 1. LAPTOP BASELINE (1280px Viewports) */
@media screen and (min-width: 1200px) and (max-width: 1366px) {

    /* Group 1: PARAGRAPH SIZES -> 15px */
    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer,
    .app-promo-desc,
    .text-dark-grey {
        font-size: 15px !important;
    }

    /* Group 2: SECTION HEADINGS -> 38px */
    .invite-title,
    .exp-title,
    .exp-content h3,
    #exp-title1,
    #exp-title2,
    #exp-title3,
    #exp-title4,
    .booking-title,
    .timing-title,
    .contact-title,
    .text-blue {
        font-size: 38px !important;
    }

    /* Group 3: RESPONSIBILITY -> 28px */
    .res-pre-title {
        font-size: 28px !important;
    }

    /* Group 4: PRE-TITLE -> 18px */
    .pre-title,
    #pre-title,
    .app-pre-title {
        font-size: 18px !important;
    }

    /* Group 5: HERO MAIN TITLE -> 58px */
    .visit-hero-content h1 {
        font-size: 58px !important;
    }
}

/* 2. LAPTOP LARGE (1440px Viewports) */
@media screen and (min-width: 1367px) and (max-width: 1599px) {

    /* Group 1: PARAGRAPH SIZES -> 17px */
    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer,
    .app-promo-desc,
    .text-dark-grey {
        font-size: 17px !important;
    }

    /* Group 2: SECTION HEADINGS -> 44px */
    .invite-title,
    .exp-title,
    .exp-content h3,
    #exp-title1,
    #exp-title2,
    #exp-title3,
    #exp-title4,
    .booking-title,
    .timing-title,
    .contact-title,
    .text-blue {
        font-size: 44px !important;
    }

    /* Group 3: RESPONSIBILITY -> 34px */
    .res-pre-title {
        font-size: 34px !important;
    }

    /* Group 4: PRE-TITLE -> 24px */
    .pre-title,
    #pre-title,
    .app-pre-title {
        font-size: 24px !important;
    }

    /* Group 5: HERO MAIN TITLE -> 66px */
    .visit-hero-content h1 {
        font-size: 66px !important;
    }
}

/* 3. DESKTOP STANDARD (1920px Viewports) */
@media screen and (min-width: 1600px) and (max-width: 1999px) {

    /* Group 1: PARAGRAPH SIZES -> 20px */
    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer,
    .app-promo-desc,
    .text-dark-grey {
        font-size: 20px !important;
    }

    /* Group 2: SECTION HEADINGS -> 52px */
    .invite-title,
    .exp-title,
    .exp-content h3,
    #exp-title1,
    #exp-title2,
    #exp-title3,
    #exp-title4,
    .booking-title,
    .timing-title,
    .contact-title,
    .text-blue {
        font-size: 52px !important;
    }

    /* Group 3: RESPONSIBILITY -> 42px */
    .res-pre-title {
        font-size: 42px !important;
    }

    /* Group 4: PRE-TITLE -> 34px */
    .pre-title,
    #pre-title,
    .app-pre-title {
        font-size: 34px !important;
    }

    /* Group 5: HERO MAIN TITLE -> 78px */
    .visit-hero-content h1 {
        font-size: 78px !important;
    }
}

/* 4. DESKTOP LARGE (2860px Viewports) */
@media screen and (min-width: 2000px) and (max-width: 3000px) {

    /* Group 1: PARAGRAPH SIZES -> 26px */
    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer,
    .app-promo-desc,
    .text-dark-grey {
        font-size: 26px !important;
    }

    /* Group 2: SECTION HEADINGS -> 68px */
    .invite-title,
    .exp-title,
    .exp-content h3,
    #exp-title1,
    #exp-title2,
    #exp-title3,
    #exp-title4,
    .booking-title,
    .timing-title,
    .contact-title,
    .text-blue {
        font-size: 68px !important;
    }

    /* Group 3: RESPONSIBILITY -> 58px */
    .res-pre-title {
        font-size: 58px !important;
    }

    /* Group 4: PRE-TITLE -> 48px */
    .pre-title,
    #pre-title,
    .app-pre-title {
        font-size: 48px !important;
    }

    /* Group 5: HERO MAIN TITLE -> 102px */
    .visit-hero-content h1 {
        font-size: 102px !important;
    }
}

/* 5. DESKTOP 4K (3840px/3860px Viewports) */
@media screen and (min-width: 3001px) {

    /* Group 1: PARAGRAPH SIZES -> 36px */
    .visit-hero-content p,
    .invite-desc p,
    .list-intro,
    .invite-list li,
    .trust-msg,
    .exp-subtitle,
    .exp-content p,
    .booking-desc,
    .guidelines-list li,
    .timing-desc,
    .contact-desc,
    .form-group label,
    .form-group input,
    .submit-btn,
    .contact-footer,
    .app-promo-desc,
    .text-dark-grey {
        font-size: 36px !important;
    }

    /* Group 2: SECTION HEADINGS -> 96px */
    .invite-title,
    .exp-title,
    .exp-content h3,
    #exp-title1,
    #exp-title2,
    #exp-title3,
    #exp-title4,
    .booking-title,
    .timing-title,
    .contact-title,
    .text-blue {
        font-size: 96px !important;
    }

    /* Group 3: RESPONSIBILITY -> 76px */
    .res-pre-title {
        font-size: 76px !important;
    }

    /* Group 4: PRE-TITLE -> 66px */
    .pre-title,
    #pre-title,
    .app-pre-title {
        font-size: 66px !important;
    }

    /* Group 5: HERO MAIN TITLE -> 144px */
    .visit-hero-content h1 {
        font-size: 144px !important;
    }
}