@charset "utf-8";
/*
Template Name: Colossus
Author: <a href="https://www.os-templates.com/">OS Templates</a>
Author URI: https://www.os-templates.com/
Licence: Free to use under our free template licence terms
Licence URI: https://www.os-templates.com/template-terms
File: Layout CSS
*/

@import url("fontawesome.css");
@import url("brands.css");
@import url("solid.css");
@import url("v4-shims.css");

@import url("custom.flexslider.css");
@import url("framework.css");

/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row1, .row1 a{}
.row2, .row2 a{}
.row3{border-top:1px solid;}
.row4{border-top:1px solid;}
.row5, .row5 a{}


/* Header
--------------------------------------------------------------------------------------------------------------- */
#header{}

#header #logo{}
#header #logo h1{margin:8px 0 0 0; padding:0; font-size:22px; text-transform:uppercase;}


/* Basic Slider
--------------------------------------------------------------------------------------------------------------- */
.txtoverlay{display:block; position:absolute; bottom:0; left:0; width:100%; height:100%; margin:0; padding:0; white-space:normal;}
.centralise{display:block; max-width:1950px; height:100%; margin:0 auto; padding:0;}
.verticalwrap{display:table; width:100%; height:100%; border:none; text-align:center;}
.txtoverlay article{display:table-cell; padding:0px 0px 20px 0px; border:none; vertical-align:bottom;}
.txtoverlay .heading{font-size:60px; line-height:60px; margin-bottom:20px;}
.txtoverlay .btn, .txtoverlay .clearbtn{display:inline-block; padding:15px 30px; border-radius:8px; text-transform:uppercase; font-weight:bold;}
.txtoverlay .pushright{margin-right:25px;}


/* Services
--------------------------------------------------------------------------------------------------------------- */
#services{padding:50px 0;}


/* CTA - Call To Action
--------------------------------------------------------------------------------------------------------------- */
#cta{padding:30px 0;}
#cta div *{margin:0; padding:0;}

#cta .heading, #cta .btn, #cta .clearbtn{text-transform:uppercase;}
#cta .heading{margin-bottom:10px;}
#cta .btn, #cta .clearbtn{display:block; padding:15px; border-radius:8px; text-align:center; font-weight:bold;}


/* Latest
---------------------------------------------------------------------------------------------------------------*/
.latest{display:block; width:100%; max-width:2000px; margin:0 auto;}
.latest ul{}
.latest ul li{display:block; float:left; width:25%; min-height:100%;}
.latest ul li:first-child, .latest ul li:nth-child(7n+1){margin-left:-1px; clear:left;}

.latest ul li figure{display:block; max-width:100%; border:solid; border-width:0 0 0 1px;}
.latest ul li figure img{width:100%;}
.latest ul li figure figcaption *{margin:0; padding:0;}

.latest a.overlay{display:block; position:relative;}
.latest a.overlay::before{display:block; position:absolute; top:0; left:0; width:100%; height:100%; content:"";}
.latest a.overlay::after{display:block; position:absolute; top:50%; left:50%; width:40px; height:40px; line-height:40px; margin:-18px 0 0 -18px; padding:0; border-radius:50%; font-family:"Font Awesome 6 Free"; content:"\f0c1"; font-size:18px; text-align:center;}
.latest a.overlay::before, .latest a.overlay::after{opacity:0;}
.latest a.overlay:hover::before, .latest a.overlay:hover::after{opacity:1;}

/* Productions
---------------------------------------------------------------------------------------------------------------*/
.productions{display:block; width:100%; max-width:2000px; margin:0 auto;}
.productions ul{}
.productions ul li{display:block; float:left; width:16.66%; min-height:100%;}
.productions ul li:first-child, .productions ul li:nth-child(7n+1){margin-left:-1px; clear:left;}

.productions ul li figure{display:block; max-width:100%; border:solid; border-width:0 0 0 1px;}
.productions ul li figure img{width:100%; aspect-ratio: 3/4; object-fit: contain;}
.productions ul li figure figcaption *{margin:0; padding:0;}

.productions a.overlay{display:block; position:relative;}
.productions a.overlay::before{display:block; position:absolute; top:0; left:0; width:100%; height:100%; content:"";}
.productions a.overlay::after{display:block; position:absolute; top:50%; left:50%; width:40px; height:40px; line-height:40px; margin:-18px 0 0 -18px; padding:0; border-radius:50%; font-family:"Font Awesome 6 Free"; content:"\f0c1"; font-size:18px; text-align:center;}
.productions a.overlay::before, .productions a.overlay::after{opacity:0;}
.productions a.overlay:hover::before, .productions a.overlay:hover::after{opacity:1;}


/* Content Area
--------------------------------------------------------------------------------------------------------------- */
.container{padding:40px 0;}
.container.nospace{padding-bottom:0}

/* Content */
.container .content{}

/* News */
#news ul{margin:0 0 40px 0; padding:0; list-style:none;}
#news li{margin:0 0 10px 0; padding:15px;}
#news .published{float:right; margin:0px; padding:0px; border:0px solid;}
#news address{font-weight:bold;}
#news time{font-size:smaller;}
#news .newscont{display:block; margin:0; padding:0;}
#news .newscont p{margin:10px 5px 10px 0; padding:0;}
#news .more{float:right; margin:0px 0px 10px 10px; padding:3px 5px 3px 5px; border:1px solid;}
#news .button{float:left; margin:0px 10px 10px 0px; padding:3px 5px 3px 5px; border:1px solid;}

/* YouTube videos */
.youtube{position: relative; width: 100%; padding-bottom: 56.25%; height: 0;}
.youtube iframe{position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

/* Comments */
#comments ul{margin:0 0 40px 0; padding:0; list-style:none;}
#comments li{margin:0 0 10px 0; padding:15px;}
#comments .avatar{float:right; margin:0px 0px 10px 10px; padding:3px; border:1px solid;}
#comments address{font-weight:bold;}
#comments time{font-size:smaller;}
#comments .comcont{display:block; margin:0; padding:0;}
#comments .comcont p{margin:10px 5px 10px 0; padding:0;}

#comments form{display:block; width:100%;}
#comments input, #comments textarea, #comments select{width:100%; padding:10px; border:1px solid;}
#comments textarea{overflow:auto;}
#comments div{margin-bottom:15px;}
#comments input[type="submit"], #comments input[type="reset"]{display:inline-block; width:auto; min-width:150px; margin:0; padding:8px 5px; cursor:pointer;}

/* Sidebar */
.container .sidebar{}

.sidebar .sdb_holder{margin-bottom:50px;}
.sidebar .sdb_holder:last-child{margin-bottom:0;}


/* Footer
--------------------------------------------------------------------------------------------------------------- */
#footer{padding:50px 0;}

#footer .title{margin:0 0 30px 0; padding:0 0 8px 0; border-bottom:1px solid; font-size:16px;}

#footer .linklist li{margin-bottom:0;}
#footer .linklist li:last-child{margin-bottom:0;}

#footer .smallfont{font-size:.8em; margin:0;}

#footer input, #footer button{border:none; border-radius:5px;}
#footer input{display:block; width:100%; padding:8px;}
#footer button{padding:6px 12px; font-weight:bold; text-transform:uppercase; cursor:pointer;}


/* Copyright
--------------------------------------------------------------------------------------------------------------- */
#copyright{padding:30px 0;}
#copyright *{margin:0; padding:0;}


/* Transition Fade
--------------------------------------------------------------------------------------------------------------- */
.faico a, #mainav *, .latest ::before, .latest ::after, .productions ::before, .productions ::after, #backtotop{transition:all .3s ease-in-out;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Navigation
--------------------------------------------------------------------------------------------------------------- */
nav ul, nav ol{margin:0; padding:0; list-style:none;}

#mainav, #breadcrumb, .sidebar nav{line-height:normal;}
#mainav .drop::after, #mainav li li .drop::after, #breadcrumb li a::after, .sidebar nav a::after{position:absolute; font-family:"Font Awesome 6 Free"; font-size:10px; line-height:10px;}



/* Breadcrumb */
#breadcrumb{padding:15px 0; border-top:1px solid;}
#breadcrumb ul{margin:0; padding:0; list-style:none; text-align:right;}
#breadcrumb li{display:inline-block; margin:0 6px 0 0; padding:0;}
#breadcrumb li a{display:block; position:relative; margin:0; padding:0 12px 0 0; font-size:12px;}
#breadcrumb li a::after{top:3px; right:0; content:"\f101";}
#breadcrumb li:last-child a{margin:0; padding:0;}
#breadcrumb li:last-child a::after{display:none;}

/* Sidebar Navigation */
.sidebar nav{display:block; width:100%;}
.sidebar nav li{margin:0 0 3px 0; padding:0;}
.sidebar nav a{display:block; position:relative; margin:0; padding:5px 10px 5px 15px; text-decoration:none; border:solid; border-width:0 0 1px 0;}
.sidebar nav a::after{top:9px; left:5px; content:"\f101";}
.sidebar nav ul ul a{padding-left:35px;}
.sidebar nav ul ul a::after{left:25px;}
.sidebar nav ul ul ul a{padding-left:55px;}
.sidebar nav ul ul ul a::after{left:45px;}

/* Pagination */
.pagination{display:block; width:100%; text-align:center; clear:both;}
.pagination li{display:inline-block; margin:0 2px 0 0;}
.pagination li:last-child{margin-right:0;}
.pagination a, .pagination strong{display:block; padding:8px 11px; border:1px solid; font-weight:normal;}

/* Back to Top */
#backtotop{z-index:999; display:inline-block; position:fixed; visibility:hidden; bottom:20px; right:20px; width:36px; height:36px; line-height:36px; border-radius:5px; font-size:16px; text-align:center; opacity:.2;}
#backtotop i{display:block; width:100%; height:100%; line-height:inherit;}
#backtotop.visible{visibility:visible; opacity:.5;}
#backtotop:hover{opacity:1;}


/* -------------------------------------------------------
   Modern Responsive Navigation
------------------------------------------------------- */

#mobile-menu-toggle{
    display:none;
    background:none;
    border:0;
    color:#ffffff;
    font-size:18px;
    cursor:pointer;
    padding:12px 0;
}

#mobile-menu-toggle i{
    margin-right:8px;
}

#mainav{
    position:relative;
}

#mainav .main-menu{
    margin:0;
    padding:0;
    list-style:none;
    text-transform:uppercase;
}

#mainav .main-menu > li{
    display:inline-block;
    position:relative;
    margin-right:24px;
}

#mainav .main-menu > li:last-child{
    margin-right:0;
}

#mainav .main-menu a{
    display:block;
    padding:20px 0;
    color:#ffffff;
    text-decoration:none;
}

#mainav .main-menu a:hover{
    color:#000;
}

#mainav .submenu{
    position:absolute;
    top:100%;
    left:0;
    min-width:220px;
    background:rgba(0,0,0,0.92);
    display:none;
    z-index:9999;
    text-transform:none;
}

#mainav .submenu li{
    display:block;
}

#mainav .submenu a{
    padding:12px 16px;
    border-bottom:1px solid rgba(255,255,255,0.1);
}

#mainav .has-submenu:hover > .submenu{
    display:block;
}

.submenu-toggle{
    display:none;
}

/* -------------------------------------------------------
   Mobile Navigation
------------------------------------------------------- */

@media screen and (max-width:900px){

    #mobile-menu-toggle{
        display:block;
        width:100%;
        text-align:left;
        color:#ffffff;
    }

    #mainav{
        width:100%;
        text-align:left;
        margin-top:10px;
    }

    #mainav .main-menu{
        display:none;
        background:#AA0000;
        padding-bottom:15px;
    }

    #mainav .main-menu.open{
        display:block;
    }

    #mainav .main-menu > li{
        display:block;
        width:100%;
        margin:0;
        border-top:1px solid rgba(255,255,255,0.15);
    }

    #mainav .main-menu a{
        padding:14px 12px;
    }

    .submenu-toggle{
        display:block;
        position:absolute;
        right:10px;
        top:8px;
        width:36px;
        height:36px;
        border:0;
        background:rgba(255,255,255,0.15);
        color:#ffffff;
        cursor:pointer;
        border-radius:4px;
    }

#mainav .has-submenu{
    position:relative;
}

#mainav ul.submenu{
    display:none;
    position:relative;
    width:100%;
    margin:0;
    padding:0;
    background:rgba(0,0,0,0.20);
}

#mainav ul.submenu.open{
    display:block;
}

#mainav ul.submenu li{
    display:block;
    border-top:1px solid rgba(255,255,255,0.10);
}

#mainav ul.submenu a{
    display:block;
    padding:12px 12px 12px 40px;
    font-size:0.95em;
}


}


/* Tables
--------------------------------------------------------------------------------------------------------------- */
table, th, td{border:1px solid; border-collapse:collapse; vertical-align:top;}
table, th{table-layout:auto;}
table{width:100%; margin-bottom:15px;}
th, td{padding:5px 8px;}
td{border-width:0 1px;}


/* Gallery
--------------------------------------------------------------------------------------------------------------- */
#gallery{display:block; width:100%; margin-bottom:0px;}
#gallery figure figcaption{display:block; width:100%; clear:both;}
#gallery li{margin-bottom:30px;}
#gallery img{width: 100%; height: 200px; object-fit: cover; display: block;}


/* Font Awesome Social Icons
--------------------------------------------------------------------------------------------------------------- */
.faico{margin:0; padding:0; list-style:none;}
.faico li{display:inline-block; margin:0 2px 0 0; padding:0; line-height:normal;}
.faico li:last-child{margin-right:0;}
.faico a{display:inline-block; width:30px; height:30px; line-height:30px; border-radius:5px; font-size:16px; text-align:center;}

.faico a{color:inherit; background-color:#EBEBEB;}
.faico a:hover{color:#FFFFFF;}

.faicon-facebook:hover{background-color:#3B5998;}
.faicon-google-plus:hover{background-color:#DB4A39;}
.faicon-instagram:hover{background-color:#3F729B;}
.faicon-threads:hover{background-color:#000000;}
.faicon-linkedin:hover{background-color:#0E76A8;}
.faicon-tumblr:hover{background-color:#34526F;}
.faicon-x-twitter:hover{background-color:#00ACEE;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Colours
--------------------------------------------------------------------------------------------------------------- */
body{color:#888888; background-color:#FFFFFF;}
a{color:#96AFAA;}
hr, .borderedbox{border-color:#D7D7D7;}
label span{color:#FF0000; background-color:inherit;}

.icon{color:#FFFFFF; background-color:#000000;}
.icon.nobg{color:inherit; background-color:inherit; border-color:#D7D7D7;}
.red{background-color:#DC8B8A;}
.orange{background-color:#EC9700;}
.green{background-color:#A7DFC4;}
.blue{background-color:#A7C4DF;}
.clearred{background:rgba(220, 139, 138, 0.8);}
.clearorange{background:rgba(236, 151, 0, 0.8);}
.cleargreen{background:rgba(167, 223, 196, 0.8);}
.clearblue{background:rgba(167, 196, 223, 0.8);}
.flexslider .heading, .subtitle, .flexslider .btn{color:#FFFFFF;}
.flexslider .clearbtn{color:#000000;}
.flexslider .heading, .subtitle, .flexslider .pagetitle{background:rgba(0, 0, 0, 0.5);}

h1, h2, h3, h4, h5, h6, .heading{color:#242424; border-color:inherit;}


/* Rows */
.row1, .row1 a{color:#FFFFFF; background-color:#AA0000;}
.row2{color:#888888; background-color:#FFFFFF;}
.row3{color:#888888; background-color:#EBEBEB; border-color:#EBEBEB;}
.row4{color:#888888; background-color:#F7F7F7; border-color:#EBEBEB;}
.row5, .row5 a{color:#888888; background-color:#EBEBEB;}
.row6{color:#FFFFFF; background-color:#96AFAA;}
.row6 a{color:#96AFAA; background-color:#FFFFFF;}


/* CTA - Call To Action */
#cta .heading{color:inherit;}


/* Latest */
.latest ul li figure{border-color:#EBEBEB;}
.latest a.overlay::before{background-color:rgba(0,0,0,.5);}
.latest a.overlay::after{color:#FFFFFF; background-color:#96AFAA;}

/* Productions */
.productions ul li figure{border-color:#EBEBEB;}
.productions a.overlay::before{background-color:rgba(0,0,0,.5);}
.productions a.overlay::after{color:#FFFFFF; background-color:#96AFAA;}


/* Footer */
#footer .title{border-color:#EBEBEB;}
#footer input{color:#888888; background-color:#EBEBEB;}
#footer button{color:#FFFFFF; background-color:#96AFAA;}


/* Navigation */
#mainav li a{color:inherit;}
#mainav .active a, #mainav a:hover, #mainav li:hover > a{color:#96AFAA; background-color:inherit;}
#mainav li li a, #mainav .active li a{color:#FFFFFF; background-color:rgba(0,0,0,.8); border-color:rgba(0,0,0,.8);}
#mainav li li:hover > a, #mainav .active .active > a{color:#FFFFFF; background-color:#96AFAA;}
#mainav form select{border-color:#D7D7D7;}

#breadcrumb{border-color:#EBEBEB;}
#breadcrumb a{color:inherit; background-color:inherit;}
#breadcrumb li:last-child a{color:#96AFAA;}

.container .sidebar nav a{color:inherit; border-color:#D7D7D7;}
.container .sidebar nav a:hover{color:#96AFAA;}

.pagination a, .pagination strong{border-color:#D7D7D7;}
.pagination .current{color:#FFFFFF; background-color:#96AFAA;}

#backtotop{color:#FFFFFF; background-color:#96AFAA;}


/* Tables + Comments */
table, th, td, #news .more, #news .button, #comments .avatar, #comments input, #comments textarea, #comments select{border-color:#D7D7D7;}
th{color:#FFFFFF; background-color:#373737;}
tr, #news li, #comments li, #comments input[type="submit"], #comments input[type="reset"]{color:inherit; background-color:#FBFBFB;}
tr:nth-child(even), #comments li:nth-child(even){color:inherit; background-color:#F7F7F7;}
table a, #comments a{background-color:inherit;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Media Queries
--------------------------------------------------------------------------------------------------------------- */
@-ms-viewport{width:device-width;}


/* Smartphone + Tablet
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:180px) and (max-width:750px) {
	.imgl, .imgr{display:inline-block; float:none; margin:0 0 10px 0;}
	.fl_left, .fl_right{display:block; float:none;}
	.one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter{display:block; float:none; width:auto; margin:0 0 30px 0; padding:0;}

	#header{text-align:center;}
	#header #logo h1{margin:0 0 15px 0;}

	#cta{padding-bottom:0;}
	#footer{padding-bottom:20px;}
}

@media screen and (min-width:180px) and (max-width:900px) {
	#header, #services, #cta, #breadcrumb, .container, #footer, #copyright{max-width:90%;}

	#header{padding:15px 0;}
	#header #logo h1{margin-top:5px;}

	.row1, .row1 a{color:#000000; background-color:#AA0000;}

	.basicslider .heading{font-size:36px; line-height:36px; margin-bottom:15px;}
	.basicslider .heading{font-size:30px; line-height:30px; margin-bottom:15px;}
	.basicslider .btn, .basicslider .clearbtn{padding:10px 25px;}

	#services{padding-bottom:20px;}

	#cta{}

	#mainav{}

	#breadcrumb{}

	.container{}
	#comments input[type="reset"]{margin-top:10px;}
	.pagination li{display:inline-block; margin:0 5px 5px 0;}

	#footer{}

	#copyright{}
	#copyright p:first-of-type{margin-bottom:10px;}
}


/* Max Wrapper Width - Laptop, Desktop etc.
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:978px) {
	#header, #slider, #services, #cta, #breadcrumb, .container, #footer, #copyright{max-width:978px; margin: 0 auto;}

	#header #logo h1{margin-bottom:10px;}
}


/* Other
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:650px) {
	.scrollable{display:block; width:100%; margin:0 0 30px 0; padding:0 0 15px 0; overflow:auto; overflow-x:scroll;}
	.scrollable table{margin:0; padding:0; white-space:nowrap;}

/*	.basicslider .txtoverlay{display:none} */

	.basicslider .heading{font-size:28px; line-height:28px; margin-bottom:10px;} 
	.basicslider .subtitle{font-size:20px; line-height:20px; margin-bottom:10px;} 
	.basicslider .btn, .basicslider .clearbtn{font-size:10px; padding:5px 12px;}

	.latest{width:90%; max-width:none; padding:30px 0;}
	.latest ul li{float:none; width:auto; margin:0 0 30px 0;}
	.latest ul li:last-child{margin:0;}
	.latest ul li figure{display:inline-block; border-width:0 1px 1px 1px;}
	.latest ul li figure img{width:100%;}
	.latest ul li figure figcaption{padding:15px 30px;}

	.productions{width:90%; max-width:none; padding:30px 0;}
	.productions ul li{float:none; width:auto; margin:0 0 30px 0;}
	.productions ul li:last-child{margin:0;}
	.productions ul li figure{display:inline-block; border-width:0 1px 1px 1px;}
	.productions ul li figure img{width:100%; max-height:100%;}
	.productions ul li figure figcaption{padding:15px 30px;}
}



/* Target the slider on this page using a wrapper */
.responsive-slider-page .responsive-slider {
  height: 30vh;
  overflow: hidden;
}

.responsive-slider-page .responsive-slider .slides li {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  height: 30vh;
}

@media screen and (max-width: 768px) {
  .responsive-slider-page .responsive-slider {
  height: 60vh;
}
  .responsive-slider-page .responsive-slider .slides li {
    height: 60vh;
  }
}

.programme-frame {
  display: block;
  width: 100%;     /* avoids 100vw horizontal overflow */
  height: 100vh;   /* fallback for older browsers */
}
@supports (height: 100dvh) {
  .programme-frame { height: 100dvh; }  /* correct on iOS Safari */
}


