/*
Theme Name: Verkossa
Theme URI: http://7thvision.com.au
Description: A 7thVision Theme
Author: 7thVision
Version: 2.0.0
*/


/*________ VARIABLES ________*/

:root {
	--sv-color-primary: #D68E31;
	--sv-color-secondary: #00949C;
	--sv-color-secondary-light: #6dc2c6;
	--sv-color-purple: #7B2C84;
	--sv-color-light-blue: #C6E3EF;
	--sv-color-font-gray: #474747;
	--sv-color-white: #fff;
	--sv-color-gray: #ccc;
	--sv-color-light-gray: #B4B4B4;
	--sv-color-light-gray-forms: #E2E2E2;
	--sv-color-light-gray-breadcrumbs: #C5C5C5;
	--sv-color-charcoal: #343434;
	--sv-color-black: #000;
	--sv-color-positive: #26ba3b;
	--sv-color-warning: #ffa800;
	--sv-color-negative: #ee3333;
	--sv-font-primary: 'Raleway', Arial, 'Helvetica Neue', Helvetica, sans-serif;
	--sv-font-secondary: var(--sv-font-primary);
	--sv-admin-bar-height-mobile: 46px;
	--sv-admin-bar-height-desktop: 32px;
}

/*________ GLOBAL ELEMENTS ________*/

* {
	border: 0;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
abbr[title],
acronym[title] {
	text-decoration: none;
}
html {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
html:focus-within {
  scroll-behavior: smooth;
}
*,
*:before,
*:after {
	box-sizing: inherit;
}
.ie * {

}
img {
	display: block;
	max-width: 100%;
	border: 0;
	position: relative;
}
img.animate {
	/*chrome fix for animations */
	-webkit-backface-visibility: hidden;
}
svg {
	display: block;
	width: 100%;
	height: 100%;
}
a {
	outline: none;
	text-decoration-skip-ink: auto;
	color: var(--sv-color-primary);
	transition: all 0.25s ease;
}
a:hover,
a:focus {
	color: var(--sv-color-primary);
	text-decoration: none;
}
a[href*='tel:'] {
	cursor: default;
	text-decoration: none;
}
html {
	font-size: 100%;
}
body {
	min-height: 100vh;
	font-family: var(--sv-font-primary);
	font-size: 0.875rem;
	font-size: 14px;
	color: var(--sv-color-font-gray);
	line-height: 1.5rem;
	-webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape */
	-ms-text-size-adjust: 100%;
	text-rendering: optimizeSpeed;
	background: var(--sv-color-white) -webkit-linear-gradient(top, var(--sv-color-white), var(--sv-color-white)) repeat-x; /* windows chrome fixed scrolling replication issue */
  	background-attachment: fixed; /* windows chrome fixed scrolling replication issue */
  	overflow-x: hidden;
  	letter-spacing: 0.1em;
}
body.show {
    position: fixed;
    top: 0; right: 0; left: 0; bottom: 0;
    overflow: hidden;
}
strong {
	color: var(--sv-color-primary);
}
.wrapper {
	width: 100%;
	max-width: 77.5rem;
	margin: 0 auto;
	padding: 0 1.25rem;
}
.wrapper.small {
	max-width: 52.5rem;
}
.wrapper.large {
	max-width: 85rem;
}
.wrapper.xlarge {
	max-width: 92.5rem;
}
.wrapper.full {
	max-width: 100%;
}
.ie .wrapper {
	width: 1160px;
}
.font-arial {
	font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
}

/* Hide Invisible ReCaptcha blade */
.grecaptcha-badge { 
    visibility: hidden;
}

/*________ CONTENT ________*/

/*.contentContainer {
	min-height: 30rem;
}*/
.outerContent {
	padding-bottom: 2.5rem;
}
.content h1,
.content .h1,
.content h2,
.content .h2,
.content h3,
.content .h3,
.content h4,
.content .h4,
.content h5,
.content .h5,
.content h6,
.content .h6 {
	font-family: var(--sv-font-primary);
	line-height: 1.8125rem;
	padding: 1.5rem 0;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	color: var(--sv-color-charcoal);
}
.content h1 + .entryTitle,
.content .h1 + .entryTitle,
.content h2 + .entryTitle,
.content .h2 + .entryTitle,
.content h3 + .entryTitle,
.content .h3 + .entryTitle,
.content h4 + .entryTitle,
.content .h4 + .entryTitle,
.content h5 + .entryTitle,
.content .h5 + .entryTitle,
.content h6 + .entryTitle,
.content .h6 + .entryTitle {
	margin-top: -1rem;
}

.content h1,
.content .h1 {
	font-size: 24px;
	font-size: 1.5rem;
}
.content h2,
.content .h2 {
	font-size: 20px;
	font-size: 1.25rem;
}
.content h3,
.content .h3 {
	font-size: 16px;
	font-size: 1rem;
}
.content h4,
.content .h4 {
	font-size: 14px;
	font-size: 0.875rem;
}
.content h5,
.content .h5 {
	font-size: 12px;
	font-size: 0.75rem;
}
.content h6,
.content .h6 {
	font-size: 12px;
	font-size: 0.75rem;
}
.content .entryTitle {
	padding-top: 0 !important;
}
.content h1 a,
.content .h1 a,
.content h2 a,
.content .h2 a,
.content h3 a,
.content .h3 a,
.content h4 a,
.content .h4 a,
.content h5 a,
.content .h5 a,
.content h6 a,
.content .h6 a {
	color: var(--sv-color-black);
	text-decoration: none;
}
.content h1 a:hover,
.content h1 a:focus,
.content .h1 a:hover,
.content .h1 a:focus,
.content h2 a:hover,
.content h2 a:focus,
.content .h2 a:hover,
.content .h2 a:focus,
.content h3 a:hover,
.content h3 a:focus,
.content .h3 a:hover,
.content .h3 a:focus,
.content h4 a:hover,
.content h4 a:focus,
.content .h4 a:hover,
.content .h4 a:focus,
.content h5 a:hover,
.content h5 a:focus,
.content .h5 a:hover,
.content .h5 a:focus,
.content h6 a:hover,
.content h6 a:focus,
.content .h6 a:hover,
.content .h6 a:focus {
	color: var(--sv-color-black);
}
.content p,
.content .p {
	padding: 0 0 1.25rem;
	line-height: 1.5rem;
	font-size: 0.875rem;
}
.content p.has-small-font-size {
	font-size: 0.75rem;
}
.content p.has-large-font-size {
	font-size: 1.125rem;
}
.content p.has-huge-font-size {
	font-size: 1.375rem;
}
.content ul,
.content ol {
	padding: 0 0 1.25rem 2.5rem;
	line-height: 1.5;
	font-size: 0.875rem;
}
.content ul[role="list"],
.content ol[role="list"] {
	list-style: none;
	padding: 0;
}
.content ul li,
.content ol li {
	padding-bottom: 1rem;
}
.content ul li:last-child,
.content ol li:last-child {
	padding-bottom: 0;
}
.content ul ul,
.content ol ol {
	padding-bottom: 0;
}
.content blockquote {
	font-style: italic;
	padding: 0 0 0 2.5rem;
	margin: 0 0 1.25rem 1.25rem;
	border-left: 0.25rem solid var(--sv-color-charcoal);
}
.content iframe {
	padding: 0 0 1.25rem;
}
.content > table {
    /*Make table horizontally scroll*/
	display: block;
    overflow-x: auto;
    white-space: nowrap;
    min-width: 27.5rem;
}
.content table {
	margin: 0 0 1.25rem;
	width: 100%;
	text-align: left;
	line-height: 1.5;
    border-collapse: collapse;
}
.content table thead tr {
}
.content table thead tr th {
    padding: 0.25rem;
    font-weight: 700;
    font-size: 0.875rem;
}
.content table tbody tr {
	border-top: 1px dotted var(--sv-color-gray);
}
.content table tbody tr td {
    padding: 0.25rem;
    font-size: 0.75rem;
}
.content hr {
	border: none;
	margin: 0 0 1.25rem;
	display: block;
	clear: both;
	border-bottom: 1px solid var(--sv-color-gray);
}
.content .entryContent {
	overflow: hidden;
	width: 100%;
}
.content a.readMore {
	display: inline-block;
}

/*________ IMG BOX ________*/

.img-box {
	position: relative;
}
.img-box img {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
}
.img-box:after {
	content: '';
	display: block;
}
.img-box.square:after {
	padding-bottom: 100%;
}
.img-box.landscape:after {
	padding-bottom: calc(2 / 3 * 100%);
}
.img-box.cover img {
	object-fit: cover;
}
.img-box.contain img {
	object-fit: contain;
}

/*________ SIDEBAR ________*/

aside.sidebar {
	padding: 0 0 2.5rem;
}

aside.sidebar .section {
	padding: 0 0 1.5rem;
}
aside.sidebar .section:last-child {
	padding-bottom: 0;
}

aside.sidebar .section h5,
aside.sidebar .section h6 {
	line-height: 1.25;
	padding: 0 0 1.25rem;
	font-size: 1rem;
}
aside.sidebar .section ul.basicList {
	list-style: none;
	border-top: 1px dotted var(--sv-color-gray);
}
aside.sidebar .section ul.basicList li {
	list-style: none;
	border-bottom: 1px dotted var(--sv-color-gray);
}
aside.sidebar .section ul.basicList li a {
	line-height: 1.5;
	padding: 0.5rem 0;
	display: block;
	text-decoration: none;
	transition: all 0.25s ease;
	font-size: 0.875rem;
}
aside.sidebar .section ul.basicList li a:hover,
aside.sidebar .section ul.basicList li a:focus {
	padding-left: 0.25rem;
}

/*________ SWIPER ________*/

.swiper-container .swiper-pagination {
	width: 100%;
	bottom: 1.25rem !important;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	align-content: flex-start;
}
.swiper-container .swiper-pagination .swiper-pagination-bullet {
	display: block;
	opacity: 1;
	width: 0.875rem;
	height: 0.875rem;
	padding: 0;
	border-radius: 0;
	margin: 0 0.3125rem !important;
	border: 0.125rem solid var(--sv-color-white);
	background-color: transparent;
	transition: all 0.25s ease;
	box-shadow: 0 0 0.125rem 0 rgba(0,0,0,0.1);
}
.swiper-container .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-container .swiper-pagination .swiper-pagination-bullet:hover,
.swiper-container .swiper-pagination .swiper-pagination-bullet:focus {
	background-color: var(--sv-color-white);
}

/*________ FORMS ________*/

form * {
	font-family: inherit;
	font-size: 0.875rem;
}
form ::-webkit-input-placeholder { /* WebKit browsers */
	color: var(--sv-color-font-gray);
}
form :-moz-placeholder { /* Firefox 18- */
	color: var(--sv-color-font-gray);
	opacity: 1;
}
form ::-moz-placeholder {  /* Firefox 19+ */
	color: var(--sv-color-font-gray);
	opacity: 1;
}
form :-ms-input-placeholder { /* Internet Explorer 10+ */
	color: var(--sv-color-font-gray);
}
input,
button,
textarea,
select {
	font: inherit;
}

/*________ UTILITIES ________*/

.show-1540,
.show-1440,
.show-1340,
.show-1240,
.show-1140,
.show-1040,
.show-940,
.show-840,
.show-740,
.show-640,
.show-540,
.show-440,
.show-340 {
	display: none;
}
img.fittedBg {
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.ui-widget {
	font-family: inherit !important;
}
.hyphenate { /*allow really big words to wrap*/
	overflow-wrap: break-word;
	word-wrap: break-word;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;
}
.hide {
	display: none;
}
.flexibleContainer { /* Flexible iFrame */
    position: relative;
    padding-bottom: 50%;
    padding-top: 1.875rem;
    height: 0;
    overflow: hidden;
}
.flexibleContainer iframe,
.flexibleContainer object,
.flexibleContainer embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.videoContainer {
    float: none;
    clear: both;
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 0;
    height: 0;
    margin-bottom: 1.25rem;
}
.content p .videoContainer {
	margin-bottom: 0;
}
.videoContainer iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
}
.animate,
.animate:hover,
.animate:focus,
.animate:active {
	transition: all 0.25s ease;
}
.centerVertical {
	display: flex;
	justify-content: center;
	flex-direction: column;
	height: 100%;
	position: relative;
}
.absoluteWrapper {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
}

/*________ BUTTONS ________*/

button,
.button {
	display: inline-block;
	cursor: pointer;
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--sv-color-primary);
	background-color: transparent;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	line-height: 1rem;
	letter-spacing: 0.2em;
	padding: 0.625rem 2.375rem;
	border: 0.0625rem solid var(--sv-color-primary);
	transition: all 0.25s ease;
}
button:hover,
.button:hover,
button:focus,
.button:focus {
	color: var(--sv-color-white);
	background-color: var(--sv-color-primary);
}
button::-moz-focus-inner { /* Remove stupid button padding in FF */
    border:0;
    padding:0;
}
button.alt,
.button.alt {
	color: var(--sv-color-white);
	border-color: var(--sv-color-white);
}
button.alt:hover,
.button.alt:hover,
button.alt:focus,
.button.alt:focus {
	color: var(--sv-color-primary);
	background-color: var(--sv-color-white);
}
button.purple,
.button.purple {
	color: var(--sv-color-purple);
	border-color: var(--sv-color-purple);	
}
button.purple:hover,
.button.purple:hover,
button.purple:focus,
.button.purple:focus {
	color: var(--sv-color-white);
	background-color: var(--sv-color-purple);
}
button.fun,
.button.fun {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	flex-wrap: nowrap;
	align-items: center;
}
button.fun .icon,
.button.fun .icon {
	display: inline-block;
	width: 0.875rem;
	height: 0.875rem;
	margin-right: 0.625rem;
}
.navigation .wp-pagenavi span,
.navigation .wp-pagenavi a {
	border: none;
}


/*________ WP IMAGES ________*/

img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img {
	max-width: 100%; /* When images are too wide for containing element, force them to fit. */
	height: auto; /* Override height to match resized width for correct aspect ratio. */
}
.aligncenter,
img.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
img.alignleft,
img.alignright,
img.aligncenter,
img.alignnone {
	margin-bottom: 1.5rem;
}
.column .wp-caption {
	width: auto !important;
}
.wp-caption {
	background: var(--sv-color-gray);
	margin-bottom: 1.25rem;
	max-width: 100%;
	padding: 0.25rem;
	text-align: center;
}
.wp-caption img {
	padding: 0.25rem 0.25rem 0;
	max-width: 100%;
	height: auto;
}
.wp-caption p.wp-caption-text {
	color: var(--sv-color-gray);
	font-size: 0.75rem;
	padding: 0.25rem;
}
.wp-smiley {
	margin: 0;
}
.wp-video {
	width: 100% !important;
}
.wp-video .wp-video-shortcode {
	width: 100% !important;
	height: auto !important;
	padding-bottom: 56.25%;
}
.content .attachment img {/* single attachment images should be centered */
	display: block;
	margin: 0 auto;
}

/*________ RESPONSIVE ________*/

/* 340px */
@media (min-width: 21.25em) {
	.hide-340 {
		display: none !important;
	}
	.show-340 {
		display: block;
	}
	.show-340.inline {
		display: inline;
	}
	.show-340.inline-block {
		display: inline-block;
	}
}

/* 440px */
@media (min-width: 27.5em) {
	.hide-440 {
		display: none !important;
	}
	.show-440 {
		display: block;
	}
	.show-440.inline {
		display: inline;
	}
	.show-440.inline-block {
		display: inline-block;
	}

	/*________ WP IMAGES ________*/

	.alignleft,
	img.alignleft {
		display: inline;
		float: left;
		margin-right: 1.5rem;
	}
	.alignright,
	img.alignright {
		display: inline;
		float: right;
		margin-left: 1.5rem;
	}
}

/* 540px */
@media (min-width: 33.75em) {
	.hide-540 {
		display: none !important;
	}
	.show-540 {
		display: block;
	}
	.show-540.inline {
		display: inline;
	}
	.show-540.inline-block {
		display: inline-block;
	}
}

/* 640px */
@media (min-width: 40em) {
	.hide-640 {
		display: none !important;
	}
	.show-640 {
		display: block;
	}
	.show-640.inline {
		display: inline;
	}
	.show-640.inline-block {
		display: inline-block;
	}
}

/* 740px */
@media (min-width: 46.25em) {
	.mainContent .wrapper {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		align-items: stretch;
		flex-wrap: nowrap;
	}
	.mainContent .outerContent {
		width: calc(100% - 17.5rem);
		padding-right: 2.5rem;
		flex-shrink: 1;
		flex-grow: 1;
	}
	.mainContent aside.sidebar {
		width: 17.5rem;
		flex-shrink: 0;
		flex-grow: 0;
	}
	.hide-740 {
		display: none !important;
	}
	.show-740 {
		display: block;
	}
	.show-740.inline {
		display: inline;
	}
	.show-740.inline-block {
		display: inline-block;
	}
}

/* 840px */
@media (min-width: 52.5em) {
	.hide-840 {
		display: none !important;
	}
	.show-840 {
		display: block;
	}
	.show-840.inline {
		display: inline;
	}
	.show-840.inline-block {
		display: inline-block;
	}
}

/* 940px */
@media (min-width: 58.75em) {
	.hide-940 {
		display: none !important;
	}
	.show-940 {
		display: block;
	}
	.show-940.inline {
		display: inline;
	}
	.show-940.inline-block {
		display: inline-block;
	}
}

/* 1040px */
@media (min-width: 65em) {
	.hide-1040 {
		display: none !important;
	}
	.show-1040 {
		display: block;
	}
	.show-1040.inline {
		display: inline;
	}
	.show-1040.inline-block {
		display: inline-block;
	}
}

/* 1140px */
@media (min-width: 71.25em) {
	.hide-1140 {
		display: none !important;
	}
	.show-1140 {
		display: block;
	}
	.show-1140.inline {
		display: inline;
	}
	.show-1140.inline-block {
		display: inline-block;
	}
}

/* 1240px */
@media (min-width: 77.5em) {
	.mainContent .outerContent {
		width: calc(100% - 20rem);
		padding-right: 3.75rem;
	}
	.outerContent {
		padding-bottom: 3.75rem;
	}
	.content h1,
	.content .h1,
	.content h2,
	.content .h2,
	.content h3,
	.content .h3,
	.content h4,
	.content .h4,
	.content h5,
	.content .h5,
	.content h6,
	.content .h6 {
		padding: 2.5rem 0;
	}
	.content h1 + .entryTitle,
	.content .h1 + .entryTitle,
	.content h2 + .entryTitle,
	.content .h2 + .entryTitle,
	.content h3 + .entryTitle,
	.content .h3 + .entryTitle,
	.content h4 + .entryTitle,
	.content .h4 + .entryTitle,
	.content h5 + .entryTitle,
	.content .h5 + .entryTitle,
	.content h6 + .entryTitle,
	.content .h6 + .entryTitle {
		margin-top: -1.25rem;
	}
	.content h2,
	.content .h2 {
		font-size: 24px;
		font-size: 1.5rem;
	}
	.content p,
	.content .p,
	.content ul:not([class]),
	.content ol:not([class]) {
		padding-bottom: 1.25rem;
	}
	.mainContent aside.sidebar {
		width: 20rem;
	}
	aside.sidebar .section {
		padding-bottom: 2rem;
	}
	.videoContainer {
	    margin-bottom: 1.5rem;
	}
	.hide-1240 {
		display: none !important;
	}
	.show-1240 {
		display: block;
	}
}

/* 1340px */
@media (min-width: 83.75em) {
	.hide-1340 {
		display: none !important;
	}
	.show-1340 {
		display: block;
	}
}

/* 1440px */
@media (min-width: 90em) {
	.hide-1440 {
		display: none !important;
	}
	.show-1440 {
		display: block;
	}
}

/* 1540px */
@media (min-width: 96.25em) {
	.hide-1540 {
		display: none !important;
	}
	.show-1540 {
		display: block;
	}
}
