/*! HTML5 Boilerplate v9.0.0-RC1 | MIT License | https://html5boilerplate.com/ */

/* main.css 3.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
@font-face {
    font-family: 'BlissBold';
    src: url('../fonts/BlissBold.eot');
    src: url('../fonts/BlissBold.eot?#iefix') format('embedded-opentype'), url('../fonts/BlissBold.woff2') format('woff2'), url('../fonts/BlissBold.woff') format('woff'), url('../fonts/BlissBold.ttf') format('truetype'), url('../fonts/BlissBold.svg#BlissBold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'BlissExtraBold';
    src: url('../fonts/BlissExtraBold.eot');
    src: url('../fonts/BlissExtraBold.eot?#iefix') format('embedded-opentype'), url('../fonts/BlissExtraBold.woff2') format('woff2'), url('../fonts/BlissExtraBold.woff') format('woff'), url('../fonts/BlissExtraBold.ttf') format('truetype'), url('../fonts/BlissExtraBold.svg#BlissExtraBold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Matiz';
    src: url('../fonts/Matiz.eot');
    src: url('../fonts/Matiz.eot?#iefix') format('embedded-opentype'), url('../fonts/Matiz.woff2') format('woff2'), url('../fonts/Matiz.woff') format('woff'), url('../fonts/Matiz.ttf') format('truetype'), url('../fonts/Matiz.svg#Matiz') format('svg');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Good Mood';
    src: url('../fonts/GoodMoodRegular.eot');
    src: url('../fonts/GoodMoodRegular.eot?#iefix') format('embedded-opentype'), url('../fonts/GoodMoodRegular.woff2') format('woff2'), url('../fonts/GoodMoodRegular.woff') format('woff'), url('../fonts/GoodMoodRegular.ttf') format('truetype'), url('../fonts/GoodMoodRegular.svg#GoodMoodRegular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
    scroll-behavior: smooth;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden,
[hidden] {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.visually-hidden {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
    /* 1 */
}

    /*
 * Extends the .visually-hidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

    .visually-hidden.focusable:active,
    .visually-hidden.focusable:focus {
        clip: auto;
        height: auto;
        margin: 0;
        overflow: visible;
        position: static;
        white-space: inherit;
        width: auto;
    }

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * The use of `table` rather than `block` is only necessary if using
 * `::before` to contain the top-margins of child elements.
 */

.clearfix::before,
.clearfix::after {
    content: "";
    display: table;
}

.clearfix::after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

/* Goodday */
:root {
    --darkblue: #2a69af;
    --orange: #df643b;
    --yellow: #f8d349;
    --white: #ffffff;
}

a {
    text-decoration: none;
}

p {
    font-family: 'BlissBold';
    font-size: 18px;
    color: #000;
    letter-spacing: 0.3px;
}

img {
    max-width: 100%;
}

.w-1600 {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 24px;
}

.w-1400 {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 24px;
}

.w-1000 {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 24px;
}

.g-button {
    font-family: 'Matiz';
    border-radius: 200px;
    padding: 12px 40px;
    display: inline-block;
    text-align: center;
    font-size: 24px;
}

    .g-button.is-orange {
        background-color: var(--orange);
        color: var(--white);
    }

    .g-button.is-white {
        background-color: var(--white);
        color: var(--darkblue);
    }

    .g-button.is-blue {
        background-color: var(--darkblue);
        color: var(--white);
    }

.g-flex {
    display: flex;
}

.g-flex-col.is-flex {
    display: flex;
    flex: 1;
}

.is-justify-spacebetween {
    justify-content: space-between;
}

.is-justify-center {
    justify-content: center;
}

.is-align-center {
    align-items: center;
}

.is-align-top {
    align-items: flex-start;
}

.g-scroll-top {
}

h3 {
    font-family: 'Matiz';
    font-size: 36px;
    margin-bottom: 24px;
}

.is-font-yellow {
    color: var(--yellow);
}

.is-font-darkblue {
    color: var(--darkblue);
}

.is-font-white {
    color: var(--white);
}

.is-font-center {
    text-align: center;
}

.mb-72 {
    margin-bottom: 72px;
}

.is-relative {
    position: relative;
}

/*Goodday Landing */
.g-landing-hero-section {
    background-color: #45c0eb;
    margin-bottom: -2px;
    z-index: 0;
    position: relative;
    /* background-image: url('../img/hero3-0_landing1-desktop.jpg'); */
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: auto;
}

.g-blurb {
    position: absolute;
    top: -9%;
    left: -9%;
    max-width: 32vw;
    z-index: 2;
}

.w-blurb {
    position: absolute;
    top: -5%;
    left: -6%;
    max-width: 21vw;
}

.button-wrap.for-hero {
    text-align: right;
    margin-bottom: -40px;
    z-index: 1;
    position: absolute;
    top: 20px;
    right: 20px;
}

.button-wrap.for-webinar {
    text-align: right;
    margin-bottom: -80px;
    z-index: 1;
    position: relative;
}

.button-wrap.for-hero .g-button {
    font-size: 20px;
}

.button-wrap.for-webinar .g-button {
    font-size: 20px;
    margin-top: 20px;
}

.g-hero {
    text-align: center;
}

    .g-hero.for-desktop {
        display: block;
        width: 100%;
        margin: auto;
    }

    .g-hero.for-tablet {
        display: none;
        max-width: 1600px;
    }

    .g-hero.for-mobile {
        display: none;
    }

.allianz {
    width: 15%;
    position: absolute;
    top: 85%;
    right: 0%;
}

.g-howitworks-section {
    margin-top: -4px;
    background-color: #e0f2fb;
    padding-top: 30px;
    padding-bottom: 80px;
}

.g-hiw-desc {
    font-family: 'Matiz';
    text-align: center;
    font-size: 32px;
    color: var(--darkblue);
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    line-height: 130%;
    padding-left: 24px;
    padding-right: 24px;
    margin-bottom: 48px;
}

    .g-hiw-desc .cashprize {
        position: relative;
        font-family: 'Good Mood';
        font-size: 88px;
        vertical-align: top;
        display: inline-block;
        margin-top: -10px;
    }

        .g-hiw-desc .cashprize .cashtext {
            color: var(--yellow);
            position: relative;
            top: 18px;
            z-index: 1;
        }

    .g-hiw-desc .cashtext-stroke {
        position: absolute;
        color: var(--yellow);
        -webkit-text-stroke-width: 8px;
        -webkit-text-stroke-color: var(--darkblue);
        left: 0;
        right: 0;
        top: 18px;
        bottom: 0;
        z-index: 0;
    }

/* Enhanced bordered description section */
.g-hiw-desc-bordered {
    font-family: 'Matiz';
    text-align: center;
    font-size: 32px;
    color: white;
    width: fit-content;
    max-width: calc(100% - 40px); /* Ensures 20px space on each side */
    margin: 0 auto;
    line-height: 130%;
    padding: 16px 25px;
    /* Blue border styling */
    border: 3px solid var(--darkblue);
    border-radius: 16px;
    background-color: var(--darkblue); /* Very light blue background */
}

/* Astro logo styling for consistent sizing */
.astro-logo {
    height: 50px; /* Fixed height for consistency */
    width: auto; /* Maintain aspect ratio */
    max-width: 120px; /* Prevent it from getting too large */
    vertical-align: middle;
    /* Remove default img styling that might interfere */
    margin: 0;
    display: inline-block;
}

.g-hiw-title {
    display: flex;
    align-items: center;
}

.hiw-div {
    position: relative;
    width: calc(50% - 166px);
}

    .hiw-div:before {
        content: '';
        position: absolute;
        height: 3px;
        width: 100%;
        top: 50%;
        transform: translate(-1.5px);
        background-color: var(--darkblue);
    }

.g-hiw-title-wrap {
    position: relative;
    font-family: 'Good Mood';
    font-size: 80px;
    padding-left: 24px;
    padding-right: 24px;
    width: 320px;
}

.g-hiw-title .hiw-title-text {
    color: var(--yellow);
    position: relative;
    text-align: center;
    z-index: 1;
    width: 320px;
    margin-left: -24px;
}

.g-hiw-title .hiw-title-text-stroke {
    position: absolute;
    color: var(--darkblue);
    -webkit-text-stroke-width: 8px;
    -webkit-text-stroke-color: var(--darkblue);
    z-index: 0;
    text-align: center;
    display: block;
    left: 3px;
    right: 0;
    top: 0;
    bottom: 0;
    width: 320px;
}

.g-hiw-steps {
    padding: 24px;
    width: 33%;
}

.g-howitworks-section .g-hiw-steps:first-child {
    width: 33%;
}

.g-hiw-step {
    text-align: left;
}

.g-hiw-number {
    font-family: 'Matiz';
    font-size: 112px;
    line-height: 100%;
    padding-right: 8px;
    margin-top: -8px;
}

.step-title {
    font-family: 'Matiz';
    font-size: 48px;
    margin-bottom: 8px;
    line-height: 53px;
}

.step-desc {
    font-family: 'BlissExtraBold';
    font-size: 18px;
    line-height: 24px;
}

.g-closing-date {
    font-family: 'BlissExtraBold';
    background-color: var(--yellow);
    color: var(--darkblue);
    font-size: 20px;
    padding: 2px 24px;
    text-align: center;
    border-radius: 8px;
}

.g-video {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.g-video-section {
    padding: 72px 0;
    background-color: var(--darkblue);
}

    .g-video-section .video-row.row1 {
        background-image: url('../img/icon-star1.png'), url('../img/icon-star2.png');
        background-position: 20% 80%, 80% 25%;
        background-repeat: no-repeat;
        background-size: 100px, 90px;
    }

.g-video.is-w-600 {
    width: 100%;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
}

.g-video-intros.for-desktop {
    display: block;
}

.g-video-intros.for-mobile {
    display: none;
}

.g-video-sliders.for-desktop {
    display: block;
}

.g-video-sliders.for-mobile {
    display: none;
}

.g-video-sliders.for-desktop .g-video-slider {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
    padding: 20px;
}

.g-video-intros.for-desktop .g-video-intro {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
}

.g-video-sliders.button-wrap {
    display: none;
}

.g-video-sliders .slick-dots {
    bottom: -40px;
}

    .g-video-sliders .slick-dots li {
        width: 14px;
        height: 14px;
    }

        .g-video-sliders .slick-dots li button {
            background-color: transparent;
            border: 2px solid var(--white);
            border-radius: 50%;
            width: 14px;
            height: 14px;
        }

        .g-video-sliders .slick-dots li.slick-active button {
            background-color: var(--white);
            border-radius: 50%;
        }

        .g-video-sliders .slick-dots li button:before {
            content: '';
        }

.video-thumbnail {
    cursor: pointer;
    transition: all linear 0.3s;
}

    .video-thumbnail:hover {
        opacity: 0.75;
    }

.video-modal .modal-dialog {
    margin-top: -24px;
}

.video-modal .modal-content {
    background-color: transparent;
    border: 0;
    border-radius: 0;
}

.video-modal .modal-header {
    border: 0;
}

    .video-modal .modal-header .btn-close {
        width: 24px;
        height: 24px;
        background-size: contain;
        padding: 0;
        margin: 0 0 0 auto;
    }

        .video-modal .modal-header .btn-close:focus {
            box-shadow: none;
        }

.video-modal .modal-body {
    background-color: #e0f2fb;
    border-radius: 24px;
}

.popup-video-holder {
    position: relative;
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .popup-video-holder .loader {
        position: absolute;
        width: 200px;
    }

.g-video-intros.button-wrap {
    display: none;
}

.g-video-intros .slick-dots {
    bottom: -40px;
}

    .g-video-intros .slick-dots li {
        width: 14px;
        height: 14px;
    }

        .g-video-intros .slick-dots li button {
            background-color: transparent;
            border: 2px solid var(--white);
            border-radius: 50%;
            width: 14px;
            height: 14px;
        }

        .g-video-intros .slick-dots li.slick-active button {
            background-color: var(--white);
            border-radius: 50%;
        }

        .g-video-intros .slick-dots li button:before {
            content: '';
        }

.g-nav-tabs.nav-tabs {
    border: 0;
    justify-content: center;
    margin-bottom: 24px;
    }

    .g-nav-tabs.nav-tabs li button {
        font-family: 'Matiz';
        font-size: 20px;
        line-height: 24px;
        color: var(--yellow);
        border-color: var(--yellow);
        background-color: transparent;
        border-radius: 0;
        margin-left: -0.5px;
        margin-right: -0.5px;
    }

        .g-nav-tabs.nav-tabs li button:hover {
            border-color: var(--yellow);
        }

        .g-nav-tabs.nav-tabs li button:focus {
            outline: transparent;
        }

    .g-nav-tabs.nav-tabs li:first-child button {
        border-top-left-radius: 200px;
        border-bottom-left-radius: 200px;
    }

    .g-nav-tabs.nav-tabs li:last-child button {
        border-top-right-radius: 200px;
        border-bottom-right-radius: 200px;
    }

    .g-nav-tabs.nav-tabs .nav-item.show .nav-link, .g-nav-tabs.nav-tabs .nav-link.active {
        background-color: var(--yellow);
        color: var(--darkblue);
        border-color: var(--yellow);
    }

.block-project-embed-video {
    overflow: hidden;
}

.g-overlay-video-holder {
    border-radius: 24px;
}

    .g-overlay-video-holder.is-ratio-169 {
        width: 100%;
        height: 100%;
        aspect-ratio: 16/8;
        position: relative;
    }

    .g-overlay-video-holder iframe {
        width: 100% !important;
        height: 100% !important;
    }

.button-wrap.for-video {
    text-align: center;
    margin-top: 0px;
}

    .button-wrap.for-video .g-button {
        width: 100%;
        max-width: 480px;
    }

/*Goodday Registration */
.g-reg-hero-section {
    background-color: #00d0f9;
    margin-bottom: -2px;
    z-index: 0;
    position: relative;
}

    .g-reg-hero-section .button-wrap.for-hero {
        text-align: right;
        margin-bottom: -80px;
        z-index: 1;
    }

        .g-reg-hero-section .button-wrap.for-hero .g-button {
            width: auto;
            /* padding-top:14px; */
        }

.g-reg {
    text-align: center;
}

    .g-reg.for-desktop {
        display: block;
    }

    .g-reg.for-tablet {
        display: none;
    }

    .g-reg.for-mobile {
        display: none;
    }

.g-reg-form-section {
    padding-top: 40px;
    padding-bottom: 72px;
}

.g-form-wrap {
    background-color: #ecf7fc;
    padding: 40px 64px;
    width: 100%;
    border-radius: 24px;
}

    .g-form-wrap .form-section-title {
        font-family: 'BlissExtraBold';
        color: var(--orange);
        font-size: 24px;
        margin-bottom: 8px;
    }

        .g-form-wrap .form-section-title.mt-24 {
            margin-top: 24px;
        }

    .g-form-wrap .form-row {
        display: flex;
        margin-left: -12px;
        margin-right: -12px;
    }

    .g-form-wrap .form-col {
        margin-left: 12px;
        margin-right: 12px;
        flex: 1;
        margin-bottom: 20px;
    }

    .g-form-wrap form label {
        font-family: 'BlissExtraBold';
        color: var(--darkblue);
        font-size: 18px;
        margin-bottom: 4px;
    }

    .g-form-wrap form input,
    .g-form-wrap form select {
        font-family: 'BlissBold';
        width: 100%;
        font-size: 18px;
        color: #4e5a5e;
        padding: 8px 12px;
        border: 0;
    }

    .g-form-wrap .for-button {
        text-align: center;
    }

    .g-form-wrap form input[type="submit"] {
        font-family: 'Matiz';
        padding: 12px 40px;
        font-size: 24px;
        max-width: 480px;
        margin-left: auto;
        margin-right: auto;
    }

    .g-form-wrap form input[type="button"] {
        font-family: 'Matiz';
        padding: 12px 40px;
        font-size: 24px;
        max-width: 480px;
        margin-left: auto;
        margin-right: auto;
    }

    .g-form-wrap form select {
        /* Arrow */
        appearance: none;
        background-image: url("../img/icon-form-arrow.png");
        background-repeat: no-repeat;
        background-position: right 0.7rem top 50%;
        background-size: 0.65rem auto;
    }

    .g-form-wrap form input::placeholder {
        color: #ababab;
        font-style: italic;
    }

    .g-form-wrap form input::-webkit-outer-spin-button,
    .g-form-wrap form input::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }

    .g-form-wrap form input[type="file"] {
        position: relative;
        background-color: var(--white);
        height: 42px;
    }

    .g-form-wrap form .for-image-upload input[type='file'] {
        color: transparent;
    }

        .g-form-wrap form .for-image-upload input[type="file"]::file-selector-button {
            width: 136px;
            color: transparent;
        }

        /* Faked label styles and icon */
        .g-form-wrap form .for-image-upload input[type='file']::before {
            content: attr(data-before);
            color: #4e5a5e;
            margin-right: 10px;
        }

        .g-form-wrap form .for-image-upload input[type="file"]::after {
            position: absolute;
            pointer-events: none;
            top: 9px;
            right: 34px;
            color: #4e5a5e;
            content: "Select Files...";
        }

        /* ------- From Step 1 ------- */

        /* file upload button */
        .g-form-wrap form .for-image-upload input[type="file"]::file-selector-button {
            border-radius: 4px;
            padding: 0 16px;
            height: 28px;
            cursor: pointer;
            background-color: white;
            border: 1px solid rgba(0, 0, 0, 0.16);
            box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.05);
            margin-right: 16px;
            transition: background-color 200ms;
            position: absolute;
            right: 0;
        }

            /* file upload button hover state */
            .g-form-wrap form .for-image-upload input[type="file"]::file-selector-button:hover {
                background-color: #f3f4f6;
            }

            /* file upload button active state */
            .g-form-wrap form .for-image-upload input[type="file"]::file-selector-button:active {
                background-color: #e5e7eb;
            }

    .g-form-wrap form .for-video-upload input[type="file"]::before {
        position: absolute;
        pointer-events: none;
        top: 10px;
        left: 16px;
        height: 120px;
        width: 100%;
        content: "";
        background-image: url("../img/form-upload-video.png");
    }

    .g-form-wrap form .for-video-upload label {
        border: 0;
        background-color: #FFFFFF;
        cursor: pointer;
        padding: 6px 12px;
        text-align: center;
        text-decoration: none;
        vertical-align: middle;
        border-radius: 4px;
        font-size: 14px;
        padding: 6px 12px;
        overflow: hidden;
        position: relative;
        aspect-ratio: 21/5;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

        .g-form-wrap form .for-video-upload label:focus {
            background-color: #E6E6E6;
        }

        .g-form-wrap form .for-video-upload label input {
            cursor: pointer;
            margin: 0;
            opacity: 0;
            filter: alpha(opacity=0);
            padding: 0;
            position: absolute;
            right: 0;
            top: 0;
        }

        .g-form-wrap form .for-video-upload label span {
            font-family: 'BlissExtraBold';
            color: var(--darkblue);
            font-size: 16px;
            line-height: 21px;
        }

            .g-form-wrap form .for-video-upload label span.full-upload-title {
                font-size: 24px;
                display: block;
                margin-bottom: -8px;
            }

            .g-form-wrap form .for-video-upload label span.full-upload-image {
                display: block;
                width: 80px;
                height: 80px;
                margin-left: auto;
                margin-right: auto;
                background-image: url('../img/form-upload-video.png');
                background-size: contain;
                margin-bottom: 16px;
            }

    .g-form-wrap form .for-tnc {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 24px;
        margin-bottom: 44px;
    }

        .g-form-wrap form .for-tnc input {
            padding: 0;
            height: initial;
            width: initial;
            margin-bottom: 0;
            display: none;
            cursor: pointer;
        }

        .g-form-wrap form .for-tnc label,
        .for-tnc span {
            font-family: 'BlissExtraBold';
            position: relative;
            cursor: pointer;
            font-size: 16px;
            line-height: 21px;
            color: var(--darkblue);
            margin-bottom: 0;
        }

        .g-form-wrap form .for-tnc span {
            margin-left: 4px;
            text-decoration: underline;
        }

        .g-form-wrap form .for-tnc label:before {
            content: '';
            -webkit-appearance: none;
            background-color: var(--white);
            border: 1px solid #0079bf;
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05);
            padding: 16px;
            display: inline-block;
            position: relative;
            vertical-align: middle;
            cursor: pointer;
            margin-right: 16px;
        }

        .g-form-wrap form .for-tnc input:checked + label:after {
            content: '';
            display: block;
            position: absolute;
            top: 0;
            left: 11px;
            width: 12px;
            height: 26px;
            border: solid #0079bf;
            border-width: 0 2px 2px 0;
            transform: rotate(45deg);
        }

    .g-form-wrap .optional {
        color: red;
        font-size: 16px;
        display: none;
    }

.modal.for-tnc .modal-dialog {
    max-width: 720px;
}

.modal.for-tnc .modal-content {
    background-color: transparent;
    background-image: url('../img/bg-tnc.png');
    background-size: cover;
    aspect-ratio: 1/1;
    border: 0;
    background-position: center;
}

.modal.for-tnc .modal-safearea {
    width: 80%;
    margin: auto;
    height: 70%;
}

.modal.for-tnc .modal-header {
    border: 0;
}

.modal.for-tnc .btn-close {
    background-image: url('../img/icon-close.png');
    background-size: contain;
}

.modal.for-tnc .modal-title {
    font-family: 'BlissBold';
    font-size: 18px;
    color: #000;
    letter-spacing: 0.3px;
    text-decoration: underline;
    font-family: 'BlissExtraBold';
}

.modal.for-tnc .modal-body {
    height: 90%;
    overflow-y: scroll;
}

.modal.for-tnc p {
    font-family: var(--bs-font-sans-serif);
    font-size: 18px;
    color: #000;
    letter-spacing: 0.3px;
}

.modal.for-tnc .modal-body::-webkit-scrollbar {
    width: 14px;
}

/* Track */
.modal.for-tnc .modal-body::-webkit-scrollbar-track {
    border-radius: 10px;
    background: #e1f8fe;
}

/* Handle */
.modal.for-tnc .modal-body::-webkit-scrollbar-thumb {
    background: var(--white);
    border-radius: 10px;
    border: 3px solid #e1f8fe;
}

    /* Handle on hover */
    .modal.for-tnc .modal-body::-webkit-scrollbar-thumb:hover {
        background: rgba(256, 256, 256, 0.85);
    }

/* Goodday Footer */
footer {
    background-color: #4e5a5e;
    padding: 8px 0;
}

.g-copyright,
.g-footer-link a {
    font-family: 'BlissBold';
    font-size: 16px;
    color: #fff;
}

.g-social-icons,
.g-footer-links {
    display: flex;
}

.g-social-icon {
    width: 48px;
    padding: 4px;
}

.g-footer-link {
    padding: 4px 8px;
}

    .g-footer-link.for-scroll-top a {
        width: 28px;
        height: 28px;
        display: inline-block;
    }

/* Goodday Webinar */
.g-webinar-hero-section {
    margin-bottom: -2px;
    z-index: 0;
    position: relative;
}

.g-webinar {
    text-align: center;
}

    .g-webinar.for-desktop {
        display: block;
    }

    .g-webinar.for-tablet {
        display: none;
    }

    .g-webinar.for-mobile {
        display: none;
    }

.g-webinar-hero-section .g-webinar.for-desktop .w-1600 {
    text-align: center;
    padding-left: 20%;
    padding-right: 20%;
}

.g-hiw-title.for-webinar,
.g-hiw-title.for-registration {
    margin-bottom: 32px;
}

    .g-hiw-title.for-webinar .g-hiw-title-wrap {
        width: 460px;
        line-height: 100%;
    }

        .g-hiw-title.for-webinar .g-hiw-title-wrap .hiw-title-text {
            width: 460px;
        }

        .g-hiw-title.for-webinar .g-hiw-title-wrap .hiw-title-text-stroke {
            width: 460px;
        }

.g-webinar-date-bordered {
    font-family: 'Matiz';
    text-align: center;
    font-size: 32px;
    color: white;
    width: fit-content;
    max-width: calc(100% - 40px); /* Ensures 20px space on each side */
    margin: 0 auto;
    line-height: 130%;
    padding: 16px 25px;
    /* Blue border styling */
    margin-top: 30px;
    text-shadow: -2px -2px 0 #0f6bb5, 2px -2px 0 #0f6bb5, -2px 2px 0 #0f6bb5, 5px 2px 0 #0f6bb5, 0px -2px 0 #0f6bb5, 0px 5px 0 #0f6bb5, -2px 0px 0 #0f6bb5, 4px 5px 0 #0f6bb5;
}

.g-webinar-reminder-desc {
    font-family: 'Matiz';
    text-align: center;
    font-size: 28px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    line-height: 130%;
    padding-left: 24px;
    padding-right: 24px;
}

    .g-webinar-reminder-desc.is-small {
        font-family: 'BlissExtraBold';
    }

.g-webinar-link {
    font-family: 'BlissExtraBold';
    background-color: var(--yellow);
    color: var(--darkblue);
    font-size: 28px;
    padding: 8px 24px;
    text-align: center;
    border-radius: 8px;
    line-height: 130%;
    margin: 24px auto;
    max-width: 600px;
}

.g-hiw-title.for-registration .g-hiw-title-wrap {
    width: 560px;
    line-height: 100%;
}

    .g-hiw-title.for-registration .g-hiw-title-wrap .hiw-title-text {
        width: 560px;
    }

    .g-hiw-title.for-registration .g-hiw-title-wrap .hiw-title-text-stroke {
        width: 560px;
    }

.g-session-section {
    margin-top: -4px;
    background-color: var(--white);
    padding-top: 40px;
    padding-bottom: 80px;
}

.g-session {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-left: 20px;
    padding-right: 20px;
}

.g-hiw-step.for-session {
    display: inline-flex;
    align-items: flex-end;
}

.g-session-num-wrap {
    position: relative;
    font-family: 'Matiz';
    font-size: 112px;
    line-height: 100%;
    margin-top: -8px;
    margin-left: 16px;
}

    .g-session-num-wrap .session-num-text {
        color: var(--yellow);
        position: relative;
        text-align: center;
        z-index: 1;
        margin-left: -24px;
    }

    .g-session-num-wrap .session-num-text-stroke {
        position: absolute;
        color: var(--darkblue);
        -webkit-text-stroke-width: 12px;
        -webkit-text-stroke-color: var(--darkblue);
        z-index: 0;
        text-align: center;
        display: block;
        left: -22px;
        right: 0;
        top: 2px;
        bottom: 0;
    }

.g-hiw-step.for-session .step-title {
    margin-bottom: 0;
}

.g-agenda-text {
    font-family: 'BlissExtraBold';
    text-align: center;
    font-size: 28px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    line-height: 130%;
    margin-top: 12px;
}

    .g-agenda-text.for-schedule {
        padding: 8px 24px;
        background-color: #d5ecfa;
        border-radius: 8px;
        width: 100%;
        max-width: 314px;
        margin-top: 12px;
        margin-bottom: 40px;
    }

.g-agendas {
    justify-content: center;
}

.g-agenda {
    text-align: center;
    margin-left: 8px;
    margin-right: 8px;
}

.sessions-div {
    position: absolute;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 3px;
    background-image: url("../img/div-vertical.png");
    background-repeat: repeat-y;
}

.g-webinar-form-section {
    padding-top: 72px;
    padding-bottom: 72px;
    background-color: #2a69af;
}

    .g-webinar-form-section .g-hiw-desc {
        color: var(--white);
        margin-bottom: 32px;
    }

    .g-webinar-form-section .hiw-div:before {
        background-color: var(--white);
        height: 2px;
    }

    .g-webinar-form-section .g-hiw-title {
        margin-bottom: 40px;
        max-width: 800px;
        margin-left: auto;
        margin-right: auto;
    }

    .g-webinar-form-section .hiw-div {
        width: calc(50% - 140px);
    }

    .g-webinar-form-section .g-hiw-title-wrap {
        width: 840px;
    }

        .g-webinar-form-section .g-hiw-desc,
        .g-webinar-form-section .g-hiw-title-wrap .g-webinar-reminder-desc {
            padding-left: 0;
            padding-right: 0;
        }

.g-form-wrap form input[type="date"]:before {
    position: absolute;
    content: '';
    width: 28px;
    height: 28px;
    right: 12px;
    top: 8px;
    bottom: 8px;
    pointer-events: none;
    background-color: var(--white);
    background-image: url('../img/icon-calendar.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px;
}

@media only screen and (max-width:1600px) {
    .g-webinar.for-desktop {
        display: none;
    }

    .g-webinar.for-tablet {
        display: block;
    }

    .g-webinar.for-mobile {
        display: none;
    }


    .g-hero.for-desktop {
        display: none;
    }

    .g-hero.for-tablet {
        display: block;
    }

    .g-hero.for-mobile {
        display: none;
    }


    .g-reg.for-desktop {
        display: none;
    }

    .g-reg.for-tablet {
        display: block;
    }

    .g-reg.for-mobile {
        display: none;
    }
}

@media only screen and (max-width:1400px) {
    .g-agenda {
        max-width: 200px;
    }
}

@media only screen and (max-width:1280px) {
    .g-agenda-text {
        font-size: 20px;
    }

    .g-landing-hero-section {
        background-size: cover;
    }
}

@media only screen and (max-width: 1024px) {
    .g-reg-hero-section .button-wrap.for-hero {
        text-align: right;
        margin-bottom: -60px;
        z-index: 1;
    }

        .g-reg-hero-section .button-wrap.for-hero .g-button {
            font-size: 20px;
            padding: 6px 20px;
        }

    .g-blurb {
        position: absolute;
        top: -9%;
        left: -9%;
        max-width: 37vw;
        z-index: 2;
    }

    .w-blurb {
        position: absolute;
        top: -7%;
        left: -7%;
        max-width: 25vw;
    }

    .g-session {
        width: 100%;
    }

    .g-session-section .g-sessions.g-flex {
        flex-direction: column;
        align-items: center;
    }

    .g-agenda {
        width: 33%;
        max-width: 200px;
    }

    .sessions-div {
        position: relative;
        width: 100%;
        height: 3px;
        border-left: 0;
        margin: 40px auto;
        background-image: url("../img/div-horizontal.png");
        background-repeat: repeat-x;
        background-position: center;
        max-width: 700px;
    }

    .g-howitworks-section .g-flex {
        flex-direction: column;
        align-items: center;
    }

    .g-hiw-steps {
        padding: 12px 0;
        width: 100%;
    }

    .g-howitworks-section .g-hiw-steps {
        max-width: 380px;
    }

        .g-howitworks-section .g-hiw-steps:first-child {
            width: 100%;
            max-width: 380px;
        }
}

@media only screen and (max-width: 768px) {
    .g-reg-hero-section .button-wrap.for-hero {
        text-align: right;
        margin-bottom: -60px;
        z-index: 1;
    }

        .g-reg-hero-section .button-wrap.for-hero .g-button {
            font-size: 20px;
            padding: 6px 20px;
        }

    

    .g-hiw-title-wrap {
        font-size: 62px;
    }

    .g-hiw-number {
        font-size: 65px;
        margin-top: 0;
    }

    .hiw-div {
        position: relative;
        width: calc(50% - 100px);
    }

    .g-hiw-title-wrap {
        width: 280px;
    }

    .g-hiw-title .hiw-title-text {
        width: 280px;
    }

    .g-hiw-title .hiw-title-text-stroke {
        width: 280px;
        -webkit-text-stroke-width: 1.5vw;
    }

    .g-hiw-desc {
        font-size: 18px;
    }

        .g-hiw-desc .cashprize {
            font-size: 51px;
        }

        .g-hiw-desc .cashtext-stroke {
            -webkit-text-stroke-width: 7px;
        }

    /* Responsive styles for bordered section */
    .g-hiw-desc-bordered {
        font-size: 24px;
        padding: 20px 24px;
        margin-bottom: 32px;
    }

    .g-webinar-date-bordered {
        font-size: 24px;
        padding: 20px 24px;
        margin-bottom: 32px;
    }
    
    .astro-logo {
        height: 32px;
        max-width: 100px;
    }

    .step-title {
        font-size: 30px;
    }

    .step-desc {
        font-size: 16px;
        line-height: 21px;
    }

    
}

@media only screen and (max-width: 640px) {
    h3 {
        font-size: 24px;
        line-height: 30px;
    }

    .g-button {
        padding: 8px 22px;
    }

    .g-landing-hero-section {
        background-color: #00c8f2;
        margin-bottom: -2px;
        z-index: 0;
        position: relative;
    }

    .g-blurb {
        position: absolute;
        top: -5%;
        left: -13%;
        max-width: 48vw;
    }

    .w-blurb {
        position: absolute;
        top: -4%;
        left: -13%;
        max-width: 48vw;
    }

    .button-wrap.for-hero .g-button {
        font-size: 4vw;
    }

    .button-wrap.for-hero {
        margin-bottom: -24px;
    }

    .g-hero.for-desktop {
        display: none;
    }


    .g-hero.for-tablet {
        display: none;
    }

    .g-hero.for-mobile {
        display: block;
    }

    .g-closing-date {
        margin-top: 24px;
    }

    .g-video-section .video-row.row1 {
        background-position: 0 80%, 100% 23%;
        background-size: 7vw, 10vw;
    }

    .g-video-sliders.for-desktop {
        display: none;
    }

    .g-video-sliders.for-mobile {
        display: block;
    }

    .g-overlay-video-holder {
        border-radius: 16px;
    }

    .g-video-sliders.for-mobile .g-video-slider {
        grid-row-gap: 24px;
        grid-template-columns: 1fr;
        grid-auto-columns: 1fr;
        display: grid;
        padding-left: 8px;
        padding-right: 8px;
    }

    .video-modal .modal-body {
        padding: 8px;
    }

    .g-nav-tabs.nav-tabs li button {
        font-size: 16px;
        line-height: 20px;
    }
    
    /* Mobile responsive styles for bordered section */
    .g-hiw-desc-bordered {
        font-size: 18px;
        padding: 16px 20px;
        margin-bottom: 24px;
        /* On very small screens, allow text to stack */
        flex-direction: column;
        gap: 12px;
    }

    .g-webinar-date-bordered {
        padding: 16px 20px;
        margin-bottom: 24px;
        /* On very small screens, allow text to stack */
        flex-direction: column;
        gap: 12px;
    }
    
    .astro-logo {
        height: 28px;
        max-width: 90px;
    }
    
    /*Gooday Registration */
    .g-webinar.for-desktop {
        display: none;
    }

    .g-webinar.for-tablet {
        display: none;
    }

    .g-webinar.for-mobile {
        display: block;
    }

    .g-reg-hero-section .button-wrap.for-hero {
        text-align: right;
        margin-bottom: -40px;
        z-index: 1;
    }

    .button-wrap.for-webinar {
        text-align: right;
        margin-bottom: -63px;
        z-index: 1;
        position: relative;
    }

    .g-reg-hero-section .button-wrap.for-hero .g-button {
        font-size: 4vw;
    }

    .button-wrap.for-webinar .g-button {
        font-size: 4vw;
        margin-top: 10px;
    }

    .g-reg-hero-section {
        background-color: #7ce4ff;
        margin-bottom: -2px;
        z-index: 0;
        position: relative;
    }

    .g-reg.for-desktop {
        display: none;
    }

    .g-reg.for-tablet {
        display: none;
    }

    .g-reg.for-mobile {
        display: block;
    }

    .g-form-wrap {
        background-color: #ecf7fc;
        padding: 16px 20px;
        width: 100%;
        border-radius: 24px;
    }

        .g-form-wrap .form-row {
            flex-direction: column;
        }

    .reverse-button {
        flex-direction: column-reverse !important;
    }

    .g-form-wrap form .for-image-upload input[type="file"]::after {
        font-size: 16px;
        top: 10px;
    }

    .g-form-wrap form .for-image-upload input[type="file"]::file-selector-button {
        width: 120px;
        color: transparent;
    }

    .g-form-wrap form .for-video-upload label {
        aspect-ratio: 1/1;
    }

        .g-form-wrap form .for-video-upload label span {
        }

            .g-form-wrap form .for-video-upload label span.full-upload-image {
                width: 64px;
                height: 64px;
            }

    .modal.for-tnc .modal-content {
        aspect-ratio: 1/2;
    }

    .modal.for-tnc .modal-safearea {
        width: 90%;
        margin: auto;
        height: 84%;
    }

    /* Goodday Footer */
    footer {
        padding: 24px 0;
    }

        footer .g-flex {
            flex-direction: column;
        }

    .g-social-icons {
        margin-top: 12px;
        margin-bottom: 12px;
    }

    /* Goodday Webinar */
    .g-hiw-title.for-webinar .g-hiw-title-wrap {
        width: 220px;
    }

        .g-hiw-title.for-webinar .g-hiw-title-wrap .hiw-title-text {
            width: 220px;
        }

        .g-hiw-title.for-webinar .g-hiw-title-wrap .hiw-title-text-stroke {
            width: 220px;
        }

    .g-webinar-reminder-desc {
        font-size: 24px;
    }

        .g-webinar-reminder-desc.is-small {
            font-size: 20px;
        }

    .g-webinar-link {
        font-size: 20px;
    }

    .g-hiw-title.for-registration .g-hiw-title-wrap {
        width: 280px;
    }

        .g-hiw-title.for-registration .g-hiw-title-wrap .hiw-title-text {
            width: 280px;
        }

        .g-hiw-title.for-registration .g-hiw-title-wrap .hiw-title-text-stroke {
            width: 280px;
        }

    .g-session-num-wrap {
        font-size: 65px;
        margin-top: 0;
        margin-left: 24px;
    }

        .g-session-num-wrap .session-num-text-stroke {
            -webkit-text-stroke-width: 10px;
        }

    .g-session-section .w-1600 {
        padding-left: 12px;
        padding-right: 12px;
    }

    .g-agenda-text.for-schedule {
        font-size: 20px;
    }

    .sessions-div {
        max-width: 320px;
    }

    .g-agenda-text {
        font-size: 16px;
    }

    .g-webinar-form-section .hiw-div {
        width: calc(50% - 140px);
    }

        .g-webinar-form-section .hiw-div:before {
            background-color: var(--white);
            height: px;
        }

    .g-webinar-form-section .g-hiw-title-wrap {
        width: 280px;
    }

    .g-webinar-form-section .g-hiw-desc,
    .g-webinar-form-section .g-hiw-title {
        margin-bottom: 24px;
    }
}

@media only screen and (max-width:420px) {
    .g-nav-tabs.nav-tabs li button {
        font-size: 3.5vw;
        line-height: 4.2vw;
        padding-left: 12px;
        padding-right: 12px;
    }
}

@media only screen and (min-width:640px) {
    .g-nav-tabs.nav-tabs li button br {
        display: none;
    }
}

@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {

    *,
    *::before,
    *::after {
        background: #fff !important;
        color: #000 !important;
        /* Black prints faster */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

        a[href]::after {
            content: " (" attr(href) ")";
        }

    abbr[title]::after {
        content: " (" attr(title) ")";
    }

    /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
    a[href^="#"]::after,
    a[href^="javascript:"]::after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
