
    .bday {
        font-size: 18px;
        margin-bottom: 20px;
        font-size: 24px;
        color: #db2727;
        font-weight: bold;
    }

    /* db2727 */
    .underline {
        text-decoration: underline;
        cursor: pointer;
    }

    .uppercase {
        text-transform: uppercase;
    }

    .bannerCal {
        justify-content: center;
        flex-direction: column;
        width: 100%;
        text-align: center;
    }

    .flex {
        display: flex;
    }

    .flex-01 {
        flex: 1;
    }

    .flex-column {
        flex-direction: column;
    }

    .form {
        width: 100%;
        height: 100%;
        align-items: center;
        justify-content: center;
    }

    .size-sm,
    .size-md,
    .size-lg,
    .size-xl,
    .size-xxl,
    .btn-action {
        height: 65px;
        margin: 8px;
        padding: 8px;
    }

    .size-sm {
        width: 70px;
    }

    .size-md {
        margin-top: 30px;
        width: 150px;
        outline: none;
    }

    .size-lg {
        width: 200px;
    }

    .size-xl {
        width: 250px;
    }

    .size-xxl {
        width: 300px;
    }

    .birthday-inputs {
        display: flex;
        justify-content: center;
    }

    .field {
        position: relative;
        text-align: center;
        border: solid 2px rgb(200, 200, 200);
        font-weight: bolder;
        outline: none;
        font-size: 30px;
        width: 100px;
    }

    .btn-action {
        background-color: #db2727;
        position: relative;
        border: none;
        color: #fff;
        font-size: 18px;
        cursor: pointer;
    }

    .terms,
    .underline {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        position: relative;
        display: block;
    }

    .red {
        font-size: 22px;
        color: red;
        margin: 20px;
        font-weight: 100;
    }
    /* ===============================
   DESKTOP – GLASS EFFECT
================================ */

    /* =========================
   TOPBAR RESPONSIVE FIX
========================= */



    /* Mobile layout */
    @media (max-width: 991px) {
        .topbar {
            border-radius: 0;
            text-align: center;
        }

        /* Buttons stay in one row */
        .top-link {
            white-space: nowrap;
        }

        .topbar .top-info {
            width: 100%;
            text-align: center;
        }

        .topbar .top-link {
            width: 120%;
            justify-content: center;
        }

        .topbar .btn {
            font-size: 12px;
            padding: 2px 4px;
        }
    }
    /* ===============================
   HEADER BASE
================================ */
    .main-header {
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1050;
        transition: all 0.4s ease;
    }

    /* ===============================
   TOPBAR
================================ */

    
    /* ===============================
   DESKTOP HOVER → WHITE NAVBAR
================================ */
    @media (min-width: 992px) {
        .main-header:hover .main-navbar {
            background: #ffffff;
        }

        .main-header:hover {
            background-color: #ffffff;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);

        }

        .main-header:hover .nav-link {
            color: #000000;
        }
    }

    /* ===============================
   STICKY STATE (ON SCROLL)
================================ */
    .main-header.sticky {
        position: fixed;
        background: #ffffff;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
    }

    .main-header.sticky .main-navbar {
        background: #ffffff;
    }

    .main-header.sticky .nav-link {
        color: #000000;
    }

    /* ===============================
   MOBILE BEHAVIOR
================================ */
    @media (max-width: 991px) {
    .main-header{
        position:fixed;
        top:0;
        left:0;
        width:100%;
        z-index:1050;
        background:#fff;
    }
        body{
        padding-top:140px;   /* adjust according to header height */
    }

        .topbar {
            border-radius: 0;
            width: 100%;
        }

        .main-navbar {
            background: #ffffff;
        }

        .main-navbar .nav-link {
            color: #000000;
        }
    }
    /* ============================= */
    /* NAV CALL HOVER WIDGET */
    /* ============================= */

    .nav-call-wrapper {
        margin-left: 20px;
    }

    .nav-call {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 10px 14px;
        border-radius: 50px;
        background: #fff;
        cursor: pointer;
        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
        transition: all 0.35s ease;
        overflow: hidden;
        max-width: 48px;
    }

    .nav-call i {
        color: #dc3545;
        font-size: 22px;
        min-width: 22px;
    }

    .nav-call-info {
        display: flex;
        flex-direction: column;
        white-space: nowrap;
        opacity: 0;
        transform: translateX(-10px);
        transition: all 0.35s ease;
    }

    .nav-call .small-text {
        font-size: 12px;
        color: #777;
    }

    .nav-call .phone-text {
        font-size: 14px;
        font-weight: 600;
        color: #000;
    }

    /* Hover Effect */
    .nav-call:hover {
        max-width: 240px;
    }

    .nav-call:hover .nav-call-info {
        opacity: 1;
        transform: translateX(0);
    }

    /* ============================= */
    /* MOBILE VIEW */
    /* ============================= */
    @media (max-width: 1199px) {
        .nav-call-wrapper {
            display: flex !important;
            justify-content: center;
            margin-top: 10px;
        }

        .nav-call {
            max-width: 100%;
            background: #dc3545;
        }

        .nav-call i,
        .nav-call .phone-text,
        .nav-call .small-text {
            color: #fff;
        }

        .nav-call-info {
            opacity: 1;
            transform: none;
        }
    }

    .btn-white {
        background-color: #ffffff;
    }