:root{
    --black: #000000;

    --white: #ffffff;

    --blue: #0081FF;
    --cyan: #14FCEF;
    --green: #0EB042;
    --orange: #FCAA03;
    --purple: #9140F0;
    --red: #FB252C;
    --yellow: #ECFB07;

    --container-padding: 1.5rem; 
    --container-gutter: 1.5rem;

    --font-weight-bold: 700;
    --font-weight-semi-bold: 600;
    --font-weight-medium: 400;
    --font-weight-regular: 200;

    --line-height-title: 100%;
    --line-height-text: 150%;

    --letter-spacing: 0.02rem;

    --heading-1: 5rem;
    --heading-2: 4rem;
    --heading-3: 3rem;
    --heading-4: 2.25rem;
    --heading-5: 1.5rem;
    --text-28: 1.75rem;
    --text-24: 1.5rem;
    --text-20: 1.25rem;
    --text-18: 1.125rem;
    --text-16: 1rem;
    --text-14: 0.875rem;
    --text-12: 0.75rem;

    --spacing-128: 8rem;
    --spacing-80: 5rem;
    --spacing-64: 4rem;
    --spacing-40: 2.5rem;
    --spacing-28: 1.75rem;
    --spacing-24: 1.5rem;
    --spacing-18: 1.125rem;
    --spacing-16: 1rem;
    --spacing-12: 0.75rem;
    --spacing-8: 0.5rem;

    --border-radius: 6249.9375rem;
    --border-radius-24: 1.5rem;
    --border-radius-16: 1rem;

}

@font-face {
    font-family: 'Obviously Narrow';
    src: 
    url(/assets/font/Obviously-Bold.otf),
}

@font-face {
    font-family: 'Etna';
    src: 
    url(/assets/font/Etna-Italic.otf),
}


@font-face {
    font-family: 'Radio Canada';
    src: 
    url(/assets/font/RadioCanada.ttf),
}

html{
    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;
    background-color: var(--black);
}

img {
    -webkit-user-drag: none;
    -webkit-user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

.container-fluid{
    padding-right: 0 !important;
    padding-left: 0 !important;
}


.etna{
    font-family: 'Etna';
    text-transform: uppercase;
}
/* Colors */

.bg-white{
    background-color: var(--white);
}

.bg-black{
    background-color: var(--black);
}

.bg-yellow{
    background-color: var(--yellow);
}

.bg-purple{
    background-color: var(--purple);
}

.bg-blue{
    background-color: var(--blue);
}

.text-blue{
    color: var(--blue);
}

.text-black{
    color: var(--black-100);
}

.text-black-p{
    color: var(--black-100);
    opacity: 0.8;
}

.text-white{
    color: var(--white-100);
}

.opacity-8{
    opacity: 0.8;
}

.opacity-5{
    opacity: 0.5;
}

/* Colors */

a{
    text-decoration: none;
    font-family: 'Radio Canada';
    font-weight: var(--font-weight-medium);
    font-size: var(--text-16);
    color: var(--black);
}

.a-socmed{
    text-decoration: none;
    font-family: 'Radio Canada';
    font-weight: var(--font-weight-medium);
    font-size: var(--text-16);
    color: var(--white);
}


a:hover {
    color: inherit;
}

.nav-link{
    color: var(--white) !important;
}

.nav-link:hover{
    color: var(--blue) !important;
}

/* Gap */
.gap-80{
    gap: var(--spacing-80);
}

.gap-64{
    gap: var(--spacing-64);
}

.gap-40{
    gap: var(--spacing-40);
}

.gap-28{
    gap: var(--spacing-28);
}

.gap-24{
    gap: var(--spacing-24);
}

.gap-16{
    gap: var(--spacing-16);
}

.gap-12{
    gap: var(--spacing-12);
}


.gap-8{
    gap: var(--spacing-8);
}
/* Gap */

/* Padding */
.p-40{
    padding-right: var(--spacing-40);
    padding-left: var(--spacing-40);
    padding-top: var(--spacing-40);
    padding-bottom: var(--spacing-40);
}
.p-24{
    padding-right: var(--container-padding);
    padding-left: var(--container-padding);
    padding-top: var(--container-padding);
    padding-bottom: var(--container-padding);
}
.px-24{
    padding-right: var(--container-padding);
    padding-left: var(--container-padding);
}

.px-40{
    padding-right: var(--spacing-40);
    padding-left: var(--spacing-40);
    padding-top: var(--spacing-40);
    padding-bottom: var(--spacing-40);
}

.pt-24{
    padding-top: var(--spacing-24);
}

.pr-8{
    padding-right: var(--spacing-8);
}

.pr-64{
    padding-right: var(--spacing-64);
}


.py-16{
    padding-top: var(--spacing-16);
    padding-bottom: var(--spacing-16);
}

.py-24{
    padding-top: var(--spacing-24);
    padding-bottom: var(--spacing-24);
}

.py-40{
    padding-top: var(--spacing-40);
    padding-bottom: var(--spacing-40);
}

.py-80{
    padding-top: var(--spacing-80);
    padding-bottom: var(--spacing-80);
}

.pb-80{
    padding-bottom: var(--spacing-80);
}

.py-128{
    padding-top: var(--spacing-128);
    padding-bottom: var(--spacing-128);
}

.px-80{
    padding-left: var(--spacing-80);
    padding-right: var(--spacing-80);
}

.px-128{
    padding-left: var(--spacing-128);
    padding-right: var(--spacing-128);
}
/* Padding */

/* Margin */
.mt-16{
    margin-top: var(--spacing-16);
}

.mt-24{
    margin-top: var(--spacing-24);
}
.my-40{
    margin-top: var(--spacing-40);
    margin-bottom: var(--spacing-40);
}
/* Margin */



/* Font */

.font-bold{
    font-weight: var(--font-weight-bold);
}

.font-semi-bold{
    font-weight: var(--font-weight-semi-bold);
}

.font-semi-medium{
    font-weight: var(--font-weight-medium);
}

.font-regular{
    font-weight: var(--font-weight-regular);
}

h1{
    margin-bottom: 0 !important;
    font-family: 'Obviously Narrow';
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-title);
    letter-spacing: var(--letter-spacing);
    font-size: var(--heading-1);
    text-transform: uppercase;
}

h2{
    margin-bottom: 0 !important;
    font-family: 'Obviously Narrow';
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-title);
    letter-spacing: var(--letter-spacing);
    font-size: var(--heading-2);
    text-transform: uppercase;
}

h3{
    margin-bottom: 0 !important;
    font-family: 'Obviously Narrow';
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-title);
    letter-spacing: var(--letter-spacing);
    font-size: var(--heading-3);
    text-transform: uppercase;
}


h4{
    margin-bottom: 0 !important;
    font-family: 'Obviously Narrow';
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-title);
    letter-spacing: var(--letter-spacing);
    font-size: var(--heading-4);
    text-transform: uppercase;
}

h5{
    margin-bottom: 0 !important;
    font-family: 'Obviously Narrow';
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-title);
    letter-spacing: var(--letter-spacing);
    font-size: var(--heading-5);
    text-transform: uppercase;
}

p{
    margin-bottom: 0 !important;
    font-family: 'Radio Canada';
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-text);
    letter-spacing: var(--letter-spacing);
    font-size: var(--text-16);
}

.text-regular-28{
    font-size: var(--text-28);
    letter-spacing: var(--letter-spacing);
    font-weight: var(--font-weight-regular);
}

.text-regular-24{
    font-size: var(--text-24);
    letter-spacing: var(--letter-spacing);
    font-weight: var(--font-weight-regular);
}

.text-regular-18{
    font-size: var(--text-18);
    letter-spacing: var(--letter-spacing);
    font-weight: var(--font-weight-regular);
}

/* Font */


.border-radius-24{
    border-radius: var(--spacing-24);
}

/* Buttons */

.btn-primary-lg {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 5rem;
    padding-left: var(--spacing-24);
    padding-right: var(--spacing-24);
    border-radius: var(--border-radius-24);
    background: var(--blue);
    color: var(--white);
    border: none;
    font-size: var(--text-24);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-text);
    
}

.btn-disabled-lg {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 5rem;
    padding-left: var(--spacing-24);
    padding-right: var(--spacing-24);
    border-radius: var(--border-radius-24);
    background: #B2B2B2;
    color: #595959;
    border: none;
    font-size: var(--text-24);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-text);
    
}

.btn-disabled-lg:hover {
    color: #595959;
}


.btn-primary-lg:hover {
    background-color: var(--purple);
    color: white !important;
}

.btn-primary {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 3rem;
    padding-left: var(--spacing-24);
    padding-right: var(--spacing-24);
    border-radius: var(--border-radius-16);
    background: var(--blue);
    color: var(--white);
    border: none;
    font-size: var(--text-16);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-text);
    
}

.btn-primary:hover{
    background-color: var(--purple);
    color: white !important;
}

  .btn-primary:hover,
  .btn-primary:focus {
    background-color: none; /* Optional: Keep the same background color */
    box-shadow: none; /* Remove the focus shadow */
    outline: none; /* Remove the focus outline */
  }

.navbar-toggler{
    color: var(--black-100);
}

.dropdown-menu{
    border: none !important;
    min-width: 0 !important;
}

.keynotes-bloc-bar-title{
    background-image: url(/assets/img/bg/bloc_bar_bg.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    height: 15vh;
    color: var(--white);
}

.keynotes-bloc-bar{
    background-image: url(/assets/img/bg/bloc_bar_bg.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    height: 22rem;
    color: var(--white);
}

.keynotes-creative-hall-title{
    background-image: url(/assets/img/bg/creative_hall_bg.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    height: 15vh;
    color: var(--black);
}

.keynotes-creative-hall{
    background-image: url(/assets/img/bg/creative_hall_bg.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    height: 18rem;
    color: var(--black);
}

.hero-banner{
    height: 88vh;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.socmed-icon{
    height: 3rem;
}

.card-overview{
    height: 14rem;
}

.dropdown-toggle::after{
    display: none;
}


.dropdown-menu[data-bs-popper] {
    border-radius: var(--border-radius-16);
    border: 4px solid var(--blue) !important;
    top: 100%;
    left: 0;
    margin-top: 1rem;
    margin-left: -14rem;
    width: 18rem;
}

/* marquee */
#marquee {
    overflow: hidden;
  }
  .marquee-content {
    display: flex;
    animation: marquee 20s linear infinite; /* Adjust the duration as needed */
  }
  @keyframes marquee {
    0% { transform: translateX(50%); }
    100% { transform: translateX(-150%); }
  }

  .headline{
    padding-top: var(--spacing-8);
    padding-bottom: var(--spacing-8);
    padding-right: var(--spacing-16);
    padding-left: var(--spacing-16);
    border-radius: var(--border-radius-16);
    border: 1px solid var(--yellow);
    color: yellow;
    font-weight: var(--font-weight-medium);
    text-transform: none;
    border-style: dotted;
  }

    .footer-logo{
        height: 15rem;
    }

    .promoted-logo{
        height: 10rem;
    }

    .logo-kemendikbud{
        height: 3rem;
    }

/* X-Small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) { 

    .gap-80{
        gap: var(--spacing-64);
    }

    .gap-24{
        gap: var(--spacing-16);
    }
    

    .p-40{
        padding-right: var(--spacing-24);
        padding-left: var(--spacing-24);
        padding-top: var(--spacing-24);
        padding-bottom: var(--spacing-24);
    }

    .py-40{
        padding-top: var(--spacing-24);
        padding-bottom: var(--spacing-24);
    }

    .py-80{
        padding-top: var(--spacing-40);
        padding-bottom: var(--spacing-40);
    }

    .border-radius-24{
        border-radius: var(--spacing-16);
    }

    .px-24{
        padding-right: var(--spacing-8);
        padding-left: var(--spacing-8);
    }

    h2{
        font-family: 'Obviously Narrow';
        font-weight: var(--font-weight-bold);
        line-height: var(--line-height-title);
        letter-spacing: var(--letter-spacing);
        font-size: var(--heading-3);
        text-transform: uppercase;
    }

    h3{
        font-family: 'Obviously Narrow';
        font-weight: var(--font-weight-bold);
        line-height: var(--line-height-title);
        letter-spacing: var(--letter-spacing);
        font-size: var(--heading-4);
        text-transform: uppercase;
    }

    h4{
        margin-bottom: 0 !important;
        font-family: 'Obviously Narrow';
        font-weight: var(--font-weight-bold);
        line-height: var(--line-height-title);
        letter-spacing: var(--letter-spacing);
        font-size: var(--text-20);
        text-transform: uppercase;
    }

    h5{
        margin-bottom: 0 !important;
        font-family: 'Obviously Narrow';
        font-weight: var(--font-weight-bold);
        line-height: var(--line-height-title);
        letter-spacing: var(--letter-spacing);
        font-size: var(--text-12);
        text-transform: uppercase;
    }

    p{
        margin-bottom: 0 !important;
        font-family: 'Radio Canada';
        font-weight: var(--font-weight-regular);
        line-height: var(--line-height-text);
        letter-spacing: var(--letter-spacing);
        font-size: var(--text-12);
    }

    .hero-banner{
        height: 86vh;
    }

    .keynotes-bloc-bar {
        background-image: url(/assets/img/bg/bloc_bar_bg.png);
        background-repeat: no-repeat;
        background-position: left center;
        background-size: cover;
        height: 16rem;
        color: var(--white);
    }
    .keynotes-bloc-bar-auto {
        height: auto !important;
    }
    
    
    .keynotes-creative-hall{
        background-image: url(/assets/img/bg/creative_hall_bg.png);
        background-repeat: no-repeat;
        background-position: left center;
        background-size: cover;
        height: 12rem !important;
        color: var(--black);
    }

    
    .socmed-icon{
        height: 1.5rem;
    }
    .card-overview{
        height: auto;
    }

    .performers-title{
        font-size: var(--heading-4);
    }

    .headline{
        padding-top: var(--spacing-8);
        padding-bottom: var(--spacing-8);
        padding-right: var(--spacing-16);
        padding-left: var(--spacing-16);
        border-radius: 12px;
        border: 1px solid var(--yellow) ;
        color: yellow;
        font-weight: var(--font-weight-medium);
        text-transform: none;
        border-style: dotted;
      }

      .footer-logo{
        height: 10rem;
    }

    .promoted-logo{
        height: 6rem;
    }
    
    .logo-kemendikbud{
        height: 1.75rem;
    }
    

}


/* // X-Large devices (large desktops, 1200px and up) */
@media (min-width: 576px) and (max-width: 820px) {
    .card-overview{
        height: auto;
    } 
    .keynotes-bloc-bar{
        background-image: url(/assets/img/bg/bloc_bar_bg.png);
        background-repeat: no-repeat;
        background-position: left center;
        background-size: cover;
        height: 26rem !important;
        color: var(--white);
    }
    
    .keynotes-creative-hall{
        background-image: url(/assets/img/bg/creative_hall_bg.png);
        background-repeat: no-repeat;
        background-position: left center;
        background-size: cover;
        height: 15rem !important;
        color: var(--black);
    }
}

@media (min-width: 821px) and (max-width: 1280px) {
    .card-overview{
        height: 14rem;
    } 
    .keynotes-bloc-bar{
        background-image: url(/assets/img/bg/bloc_bar_bg.png);
        background-repeat: no-repeat;
        background-position: left center;
        background-size: cover;
        height: 18rem !important;
        color: var(--white);
    }
    
    .keynotes-creative-hall{
        background-image: url(/assets/img/bg/creative_hall_bg.png);
        background-repeat: no-repeat;
        background-position: left center;
        background-size: cover;
        height: 15rem !important;
        color: var(--black);
    }

    h4{
        margin-bottom: 0 !important;
        font-family: 'Obviously Narrow';
        font-weight: var(--font-weight-bold);
        line-height: var(--line-height-title);
        letter-spacing: var(--letter-spacing);
        font-size: var(--text-24);
        text-transform: uppercase;
    }

    h5{
        margin-bottom: 0 !important;
        font-family: 'Obviously Narrow';
        font-weight: var(--font-weight-bold);
        line-height: var(--line-height-title);
        letter-spacing: var(--letter-spacing);
        font-size: var(--text-16);
        text-transform: uppercase;
    }

    .headline{
        padding-top: var(--spacing-8);
        padding-bottom: var(--spacing-8);
        padding-right: var(--spacing-16);
        padding-left: var(--spacing-16);
        border-radius: 12px;
        border: 1px solid var(--yellow) ;
        color: yellow;
        font-weight: var(--font-weight-medium);
        text-transform: none;
        border-style: dotted;
      }

    p{
        margin-bottom: 0 !important;
        font-size: var(--text-14) !important;
    }

    .keynotes-bloc-bar-auto{
        height: 22rem !important;
    }
    
}

@media (min-width: 1280px) and (max-width: 1439px) { 
    h4{
        font-size: var(--text-24) !important;
    }

    h5{
        font-size: var(--text-16) !important;
    }

    .keynotes-bloc-bar{
        height: 18rem !important;
    }

    .keynotes-bloc-bar-auto{
        min-height: 22rem !important;
    }
}

@media (min-width: 1440px) { 
    .keynotes-bloc-bar-auto{
        min-height: 28rem;
    }
}


