@charset "utf-8";
/* CSS Document */

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

	.data-table:not(.vertical-table)  {
        width: 100%;
    }
    .data-table:not(.vertical-table)  thead {
        display: none;
    }
    .data-table:not(.vertical-table)  tr:nth-of-type(2n) {
        background-color: inherit;
    }
    .data-table:not(.vertical-table)  tr td:first-child {
        /*font-size: 1.3em;*/
    }
    .data-table:not(.vertical-table) tbody td {
        display: block;
        text-align: center;
		font-size:1.1em;
    }
	.data-table:not(.vertical-table) tbody tr:first-child td:first-child {
        padding-top: 15px;
		/*padding-bottom:5px;*/
    }
	
    .data-table:not(.vertical-table) tbody tr:not(:first-child) td:first-child {
        border-top: 1px dashed #ccc;
        margin-top: 0px;
        padding:15px 10px 5px 10px;
		
    }
	
	.data-table:not(.vertical-table) tbody tr:first-child td:last-child {
        padding-bottom:10px !important;
    }
	
	.data-table:not(.vertical-table) tbody tr td:not(:first-child) {
        padding:0px 15px 10px 15px;
    }
	
	.data-table:not(.vertical-table) tbody tr:first-child:not(:last-child) td:last-child {
        padding-bottom:0px;
    }

    .data-table:not(.vertical-table) tbody td:before {
        content: attr(data-th);
        display: block;
        text-align: center;
        font-weight: bold;
        color: var(--colour-1) !important;
        padding-bottom: 5px;
        font-size: 18px;
		padding-top:10px;
    }
    .vertical-table td:first-child {
        padding-top: 10px;
        padding-bottom: 5px;
    }

}

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

	.logo-container {

		position:relative;
		margin:0 auto;
		width:250px;
		left:0;

	}

	.header-container-2 {

		position:relative; text-align:center; top:0; right:0;
	
	}
	
	.header-container-3 {
	
		position:relative; text-align:center; top:0; right:0;
	
	}

	.header-container-2-inner {

		padding:0 0 15px 0 !important;
	
	}

	.info-container {

		padding:20px 0 20px 0;
	
	}

	.info-column {

		padding-bottom:20px !important; border-bottom:1px solid rgba(255,255,255,0.1); margin-bottom:20px; font-size: 1.1em; text-align:left !important;

	}

	.info-column-icon {

		text-align:center;
	
	}

	.socials {

		display:none;

	}

	footer {

		font-size:0.8em;

	}

}

@media only screen and (max-width: 480px) {
		
	.hero-banner {
		
		text-align: center;
		
	}
	
	.large-heading {
		
		font-size: 2em;
		
	}

	.logo {
		
		margin:0 auto;
		
	}
	
	.logo-inner {
	
		text-align:center;

	}
	
	.nav-inner {
		
		padding-top:0px;
		
	}
	
	.full-width-nav-inner {
		
		padding:0px;
		
	}
	
	header {
		
		padding-top:70px;
		
	}

	.menu {
		
		position:fixed;
		top:15px;
		right:15px;
		padding:5px 5px 0px 5px;
		background-color:#fff;
		border-radius:5px;
		display:block;
		z-index:10;
		
	}
	
	.nav {

		display:none;
		margin-top: 0px;
		
	}
	
	.nav li {
		
		margin-right: 0px;
		padding-right: 0px;
		border-right: 0px;
		width:100%;
		padding-bottom:10px;
		border-bottom:1px dotted rgba(100,100,100,0.3);
		margin-bottom:10px;
		text-align: center;
		
	}
	
	.nav li:last-child {
	
		padding-bottom:0px;
		border-bottom:0px;

	}
	
	.socials {
		
		margin-bottom: 0px;
		text-align: center;
		margin-top:0px;
		
	}
	
	.socials li {
		
		margin-bottom:0px;
		display:inline-block !important;
		padding-bottom: 0px;
		border-bottom: 0px;
		width:auto;

	}
	
	.hide-on-desktop {
		
		display:block;
		
	}
	
	.hide-on-mobile {
		
		display:none;
		
	}
	
	.flex {
		
		display: block;
		
	}
	
	.flex-1, .flex-2, .flex-3, .flex-4, .flex-5 {
		
		width:auto;
		padding:0px;
		
	}
	
	.flex-border-bottom:not(.box):not(.card){
		
		border-bottom:1px dotted rgba(100,100,100,0.5);
		margin-bottom: 20px;
		
	}
	
	.flex-margin-right {

		margin-right:0px;

	}

	.flex-margin-left {

		margin-left:0px;

	}
	
	.flex-border-right {
	
		padding-right:0px;
		border-right:0px;
		margin-right:0px;

	}

	.flex-border-left {

		padding-left:0px;
		border-left:0px;
		margin-left:0px;

	}
	
	.box {
		
		padding:20px 20px 25px 20px !important;
		
	}
	
	.flex-margin {

		margin-left:0px;
		margin-right:0px;

	}

	.flex-padding {

		padding-left:0px;
		padding-right:0px;

	}

}