/* --------------------------- Slider Structure -------------------------- */

.slick-slider
{
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.slick-list:focus
{
    outline: none;
}

.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}

.slick-track:after
{
    clear: both;
}

.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}

[dir='rtl'] .slick-slide
{
    float: right;
}

.slick-slide img
{
    display: block;
}

.slick-slide.slick-loading img
{
    display: none;
}

.slick-slide.dragging img
{
    pointer-events: none;
}

.slick-initialized .slick-slide
{
    display: block;
}

.slick-loading .slick-slide
{
    visibility: hidden;
}

.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}

.slick-arrow.slick-hidden
{
    display: none;
}

/* --------------------------- Slider General -------------------------- */

#slider
{
    position: relative;
    overflow: hidden;
}

#slider .slider-item
{
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

#slider .slider-item .container
{
    display: grid;
    justify-items: center;
    align-items: center;
    padding: 0 90px;
}

#slider.slider-single .slider-item .container
{
    padding: 0 20px;
}

#slider .slider-item.horizontal-align-left .container
{
    justify-items: start;
}

#slider .slider-item.horizontal-align-center .container
{
    justify-items: center;
}

#slider .slider-item.horizontal-align-right .container
{
    justify-items: end;
}

#slider .slider-item.vertical-align-top .container
{
    align-items: start;
}

#slider .slider-item.vertical-align-center .container
{
    align-items: center;
}

#slider .slider-item.vertical-align-bottom .container
{
    align-items: end;
}

#slider .colour-scheme-light
{
    background: #000;
}

#slider .bg-darken
{
    position: relative;
}

#slider .bg-darken::before
{
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);
    z-index: 2;
}

#slider .bg-darken .slider-caption
{
    position: relative;
    z-index: 3;
}

@media (max-width: 1400px) {

    #slider .slider-item, #slider .slider-item .container
    {
        height: auto !important;
    }
    
    #slider .slider-item
    {
        padding: 100px 0;
    }
    
}

@media (max-width: 1000px) {

    #slider .slider-item
    {
        padding: 100px 0;
    }

    #slider .slider-item .container
    {
        padding: 0 70px;
    }

}

@media (max-width: 500px) {

    #slider .slider-item
    {
        padding: 60px 0;
    }

    #slider .slider-item .container
    {
        padding: 0 20px;
    }
    
}

/* --------------------------- Slider Caption -------------------------- */

#slider .slider-caption h1
{
    text-transform: uppercase;
    font-size: var(--slider_caption_heading_font_size);
    line-height: var(--slider_caption_heading_line_height);
    color: #FFF;
}

#slider .colour-scheme-dark .slider-caption h1
{
    color: var(--theme_color_primary);
}

#slider .slider-caption p
{
    margin-bottom: var(--gap_spacing_default);
}

#slider .slider-btns
{
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
}

#slider .slider-btns .slider-btn:first-child
{
    margin-right: var(--gap_spacing_default);
}

#slider .slider-btns .slider-btn:last-child
{
    margin-right: 0;
}

#slider .dr-scientist
{
    position: absolute;
    left: -10%;
    bottom: 0;
    z-index: 2;
}

#slider .dr-scientist img
{
    display: block;
}

@media (max-width: 1400px) {

    #slider .slider-caption
    {
        padding-top: 80px;
    }

    #slider .slider-caption h1
    {
        font-size: var(--heading_tag_size);
        line-height: var(--heading_tag_line_height);
    }

    #slider .dr-scientist
    {
        bottom: -100px;
        max-width: 570px;
    }

}

@media (max-width: 1100px) {

    #slider .slider-caption
    {
        max-width: 500px !important;
    }

    .home #slider .slider-caption h1 span
    {
        font-size: inherit !important;
        line-height: inherit !important;
    }

    #slider .dr-scientist
    {
        left: 15%;
        max-width: 300px;
    }

}

@media (max-width: 1000px) {

    #slider .dr-scientist
    {
        left: 0;
    }

}

@media (max-width: 768px) {
    
    #slider .slider-caption h1
    {
        font-size: var(--heading_tag_size_medium);
        line-height: var(--heading_tag_line_height_medium);
    }

    #slider .slider-caption h1
    {
        text-shadow: 0 0 10px #000;
    }

    #slider .colour-scheme-dark .slider-caption h1
    {
        text-shadow: 0 0 10px #FFF;
    }

    .home #slider .slider-caption
    {
        max-width: none !important;
        text-align: center !important;
    }

    .home #slider .slider-btns
    {
        justify-content: center;
    }
    
    #slider .dr-scientist
    {
        display: none;
    }

}

@media (max-width: 500px) {

    #slider .slider-caption h1
    {
        font-size: var(--heading_tag_size_medium_alt);
        line-height: var(--heading_tag_line_height_medium_alt);
    }

}

/* --------------------------- Slider Controls -------------------------- */

.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent !important;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: -25px;
}

[dir='rtl'] .slick-prev
{
    right: -25px;
    left: auto;
}

.slick-prev:before
{
    content: '←';
}

[dir='rtl'] .slick-prev:before
{
    content: '→';
}

.slick-next
{
    right: -25px;
}

[dir='rtl'] .slick-next
{
    right: auto;
    left: -25px;
}

.slick-next:before
{
    content: '→';
}

[dir='rtl'] .slick-next:before
{
    content: '←';
}

.slick-dots
{
    position: absolute;
    bottom: 10px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    z-index: 7;
}

.slick-dots li
{
    position: relative;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button
{
    font-size: 0;
    line-height: 0;
    display: block;
    width: 30px;
    height: 30px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}

.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 50px;
    line-height: 30px;
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    content: '•';
    text-align: center;
    opacity: .75;
    color: #FFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-shadow: 0px 0px 2px rgba(0, 0, 0, 1);
}

.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: var(--theme_color_secondary);
}

#slider .slick-next, #slider .slick-prev
{
    font-weight: bold;
    z-index: 2;
    width: 30px;
    height: 30px;
}


#slider .slick-prev::before, #slider .slick-next::before
{
    font-size: 30px;
    line-height: 30px;
    opacity: 1;
}

#slider .slick-next::before
{
    font-family: "Font Awesome 5 Free";
    content: '\f30b';
}

#slider .slick-prev::before
{
    font-family: "Font Awesome 5 Free";
    content: '\f30a';
}

#slider .slick-next
{
    right: 40px;
}

#slider .slick-prev
{
    left: 40px;
}

@media (max-width: 1000px) {

    #slider .slick-next
    {
        right: 20px;
    }

    #slider .slick-prev
    {
        left: 20px;
    }    

}

@media (max-width: 500px) {

    #slider .slick-next, #slider .slick-prev
    {
        display: none !important;
    }

    #slider .slick-dots
    {
        display: block !important;
    }

}