@charset "UTF-8";

/* Site Master */

/* JockStrap 7.5  */

/* 23/1/2020 */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/

@import 'min.site.core.css';



/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/* >>  B A S E  C O N F I G U R E */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/* >>  J O C K S T R A P */

/* ..................................................................................................*/

/* @group Set Me Up */

html {
	-webkit-overflow-scrolling: touch;
	-webkit-text-size-adjust: 100%;
	box-sizing: border-box;
	min-height: 100%;
	overflow-y: scroll;
	   scroll-behavior: smooth;
	/*background-image: -webkit-gradient(linear,left bottom,left top,from(hsla(341, 88%, 91%, 1)),to(hsla(177, 64%, 79%, 1)));*/

}

body {
	/*height: auto;*/
	/*height: 100%;*/
	min-height: 100%;
	font: 16px/1.5;
	font-weight: 400;
	font-style: normal;
	color: hsla(210,30%, 30%, 1);
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans",
	"Droid Sans", "Helvetica Neue", sans-serif;
	vertical-align: baseline;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;
}

/*body {
	    margin: 0 5% 10%;
	}
	
	@media (min-width:100em) {
	    body {
	        height: auto;
			margin: 0 12.5% 10%;  
	    }
	}
	
	@media (min-width:120em) {
	    body {
	        height: auto;
			margin: 0 16.25% 10%;  
	    }
}*/

* {
	font-family: inherit;
	line-height: inherit;
	color: inherit;
}

*, *:before, *:after {
	box-sizing: inherit;
}

@media (min-width: 40em) and (orientation: portrait) {
   body {
        /*background: orange;*/
	}
}

@media (min-width: 48em) and (orientation: landscape) {
   body {
        /*background: red;*/
    }
}

/* @end */

/* @group Wrappers */

.wrapperMain > *:not(footer), footer > * {
	margin-left: auto;
	margin-right: auto;
	max-width: 95%;
	/*word-wrap: break-word;
	overflow-wrap: break-word;*/
}

.wrapperMainLM > * {
	margin-left: 15%;
	margin-right: auto;
	max-width: 100%;
	/*word-wrap: break-word;
	overflow-wrap: break-word;*/
}

.wrapper {
	margin-left: auto;
	margin-right: auto;
	min-height: 1px;
	max-width: 92.5%;
}

.wrapperMain.fixedMin {
	position: relative;
	top: 3rem;
}

.wrapperMain .fW {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
}

@media (min-width: 30em) {
	.wrapperMain > *:not(footer), footer > * {
		max-width: 90%;
	}
	
	.wrapper {
		max-width: 90%;
	}
}

@media (min-width: 48.25em) and (min-height: 48em) {
	.wrapperMain.fixedMin {
		top: 3.75rem;
	}
}

@media (min-width: 64em) and (min-height: 48em) {
	.wrapperMain > *:not(footer), footer > * {
		max-width: 80%;
	}
	
	/*.wrapperMain.scroll {
		padding-bottom: 12em;
	}*/
	
	.wrapper {
		max-width: 80%;
	}
}

@media (min-width: 82.5em) and (min-height: 60em) {
	.wrapperMain.fixedMin {
		top: 4.25rem;
	}
}

@media (min-width: 100em) {
	.wrapperMain > *:not(footer), footer > * {
		margin-left: auto;
		margin-right: auto;
		max-width: 75%;
	}
	
	.wrapper {
		max-width: 75%;
	}
}

@media (min-width: 120em) {
	.wrapperMain > *:not(footer), footer > * {
		margin-left: auto;
		margin-right: auto;
		max-width: 67.5%;
	}
	
	.wrapper {
		max-width: 67.5%;
	}
}

/* @end */

/* @group Headers */

header {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-color: hsla(0, 100%, 100%, 0.9);
}

header.fixedMin {
	z-index: 100;
	position: fixed;
}

/* @end */

/* @group Content + Flow */

.flowS {
	/*padding-bottom: 5%;*/
	--flow-space: 3.5em;	
}

.flowS > * + * {
    /*margin-top: 1.75em;*/
    margin-top: var(--flow-space);
}

.flowSA {
	padding-bottom: 2.5%;
	--flow-space: 0.5rem;	
}

.flowSA * + * {
    margin-top: 0.75em;
    margin-top: var(--flow-space);
}

.flowS * + .nM1, .flowSA * + .nM1  {
    margin-top: 0;
}

.flowS * + .nMS, .flowSA * + .nM5  {
    margin-top: -5em;
}

.fSX * + * {
    margin-top: 0;
}

/*.flowSA * + .dpContent  {
    margin-top: 0;
}*/

.content {
	/*padding-bottom: 5%;
	--flow-space: 0.75rem;*/	
	word-wrap: break-word;
	   overflow-wrap: break-word;

}

.content > * + * {
    margin-top: 0.75rem;
    margin-top: var(--flow-space);
}


.content p {
	--flow-space: 0.5rem;
	   padding-bottom: 0.5rem;	
	   /*word-wrap: break-word;
	   overflow-wrap: break-word;*/
}

.content h1, .content h2, .content h3, .content h4, .content h5 {
	--flow-space: 1rem;
	   /*padding-top: 1rem;*/
}


.fullBleed {
	width: 100vw;
	margin-left: 50%;
	transform: translateX(-50%);
}

.randomContent {
	display: none;
}

/* @end */

/* @group Object Fit & Images */

img {
  max-width: 100%;
  display: block;
}

img[data-object-fit="cover"] {
	object-fit: cover;
	height: 100%;
}

img[data-object-fit="contain"] {
	object-fit: contain;
	height: 100%;
}

.imgContain {
			object-fit: contain;
			object-position: center;
		}
		
		.imgCover {
			object-fit: cover;
			object-position: top right;	
		}     

/*img[src*="jpg"] {
	padding-bottom: 0.5em;
}*/

/*img[src*="png"] {
	margin-bottom: 0.5em;
}*/

/* @end */

/* @group Stylistics */

.bg {
	background-color: whitesmoke;
}

.bg1 {
	background-color: linen;
}

.bg2 {
	background-color: palegoldenrod;
}

.bg3 {
	background-color: paleturquoise;
}

.bg4 {
	background-color: tan;
}

.bg5 {
	background-color: chocolate;
}

.bgImage {
	background: url(https://picsum.photos/1200/800.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-size: cover;
}

.bgVector {
	background: url(../images-extras/parallax-map.png) no-repeat center center;
}

.bgSolid {
	background-color: lightsteelblue;
}

.bgTint {
	background-color: hsla(195, 55%, 90%, 0.7);
}

.bgTintDark {
	background-color: hsla(198, 40%, 40%, 0.3);
}

.bgLight {
	background-color: gold;
}

.bgMid {
	background-color: darkgray;
}

.bgDark {
	background-color: lightslategrey;
}

.bgWhite {
	background-color: white;
}

.bgTrans {
	background-color: transparent;
}

.bgGrad {
	background-color: darkblue;
	background-image: linear-gradient(0deg,hsla(300, 10%, 40%, 1) 0,hsla(200, 50%, 40%, 1));
}

.bgGradTint {
	background-color: seashell;
	background: linear-gradient(0deg,hsla(320, 10%, 70%, 0.4) 0,hsla(180, 20%, 90%, 0.5));
}

.bgDotgrid {
	background: url(../images-extras/dots-grid-5.png) repeat center center;
}

.bgDrop {
	box-shadow: 0 0.5em 0.75em hsla(210, 15%, 50%, 0.3);
	margin-bottom: 1em;
}

.bgDropX {
	box-shadow: 0 1em 1.5em hsla(210, 13%, 50%, 0.3);
	margin-bottom: 1em;
}

.bgArrow:after {
	position: absolute;
	bottom: 0.5em;
	right: 0.5em;
content: '';
	display: inline;
	background: url(../icons-svg/arrow_01-next.svg) no-repeat center center;
	height: 1.75rem;
	width: 1.75rem;
	background-size: 1.75rem 1.75rem;
	border-radius: 1.75rem;
	opacity: 0.3;
	transition: opacity 0.25s ease-in;

}

.bgArrow:hover:after {
	opacity: 0.1;

}

.bgAlt > *:nth-of-type(even) {
	background-color: hotpink;
}

.barGrad:before {
	content: '';
	position: relative;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 0.25rem;
	background-color: plum;
	background: linear-gradient(to right, plum 9%, hsla(44, 99%, 44%, 1) 100%);
}

.r50 {
	border-radius: 50%;
}

.op25 {
	opacity: 0.25;
}

.op50 {
	opacity: 0.5;
}

.borderA {
	border: thin solid gainsboro;
}

.borderAW {
	border: thin solid white;
}

.borderAG {
	border: thin solid silver;
}

.borderAB {
	border: thin solid black;
}

.borderA2 {
	border: medium solid gainsboro;
}

.borderA3 {
	border: thick solid gainsboro;
}

.borderA4 {
	border: 0.5em solid white;
}

.borderA5 {
	border: 0.75em solid white;
}

.borderA6 {
	border: 0.875em solid white;
}

.borderT {
	border-top: thin solid gainsboro;
}

.borderB {
	border-bottom: thin solid gainsboro;
}

.borderB2 {
	border-bottom: medium solid gainsboro;
}

.borderB3 {
	border-bottom: thick solid gainsboro;
}

.borderLS {
	border-left: thin solid gainsboro;
}

.borderRS {
	border-right: thin solid gainsboro;
}

.borderTL {
	border-top: thin solid gainsboro;
}

.borderTL2 {
	border-top: medium solid gainsboro;
}

.borderL50, .borderR50, .border100 {
	border-bottom: 0.375em solid white;
	/*padding-bottom: 0.5em;*/
	}
	


.borderV25 {
	border-top: 0.25em solid white;
}

.borderV50 {
    border-top: 0.5em solid white;
}

.borderV75 {
    border-top: 0.75em solid white;
}

@media (min-width:40em) {
	
	.border100 {
    	border: 1em solid white;
   		border-bottom-style: none;
	}
	
.borderL50 {
	border: 1em solid white;
	border-right-width: 0.5em;
}

.borderR50 {
    border: 1em solid white;
	border-left-width: 0.5em;
}

.borderV25 {
		border-top: none;
		border-left: 0.25em solid white;
		position: relative;
    	left: -0.125rem;
	}
	
	.borderV50 {
		border-top: none;
	    border-left: 0.5em solid white;
    	position: relative;
    	left: -0.25em;
    		  	margin-right: -0.25em;
}
	
	.borderV75 {
		border-top: none;
	    border-left: 0.75rem solid white;
	    position: relative;
    	left: -0.325rem;
    	  	margin-right: -0.325rem;
	}
}

@media (min-width:48.25em) {
	.borderT48 {
		border-top: thin solid orange;
	}
	
	.borderB48 {
		border-bottom: thin solid orange;
	}
	
	.borderL48 {
		border-left: thin solid orange;
	}
	
	.borderR48 {
		border-right: thin solid orange;
	}
	
	.borderL2 {
		border-left: 0.2em solid white;
	}
	
	.borderR2 {
		border-right: 0.2em solid white;
	}
	
	.borderTL {
		border-top: none;
		border-left: thin solid gainsboro;
	}
	
	.borderTL2 {
		border-top: none;
		border-left: medium solid gainsboro;
	}
	
	.borderTL:first-of-type, .borderTL2:first-of-type {
		border-top: none;
		border-left: none;
	}
	
	
}

/* @end */

/* @group Type Scale */

@media (min-width: 20rem) {
	:root {
		font-size: calc(0.95rem + ((1vw - 0.275rem) * 0.5265));
	}
}

@media (min-width: 120rem) {
	:root {
		font-size: 1.275rem;
	}
}

/* @end */

/* @group Utilities */

.scSnap {
  overflow-y: scroll;
  scroll-snap-type: x mandatory;
}

.scSnap .scT {
  scroll-snap-align: start;
    font-weight: bold;
    font-style: italic;
}

/* @end */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >> F L E X B O X  */
/* ..................................................................................................*/



/* @group FlexBox */

.flexContainer {
	flex-wrap: wrap;
}

.flexContainer > div, .flexContainer > article {
	flex: 1 1 100%;
	margin-bottom: 2px;;
}

.flexContainer > li {
	display: flex;
	flex: 1;
}

.flexContainer > a {
	display: flex;
	flex: 1 1 100%;
}

.flexF0, .flexContainer .flexF0 {
	flex: 0;
}

.flexF1, .flexContainer .flexF1 {
	flex: 1;
}

.flexF2, .flexContainer .flexF2 {
	flex: 2;
}

.flexF3, .flexContainer .flexF3 {
	flex: 3;
}

.flexF4, .flexContainer .flexF4 {
	flex: 4;
}

.flexContainer img, .flexContainerCC img {
	flex-shrink: 0;
}

.flexF1M {
	flex: 1;
	margin: 0.25rem;
}

.flexF2M {
	flex: 2;
	margin: 0.25rem;
}

.flexF3M {
	flex: 3;
	margin: 0.25rem;
}

.flexF4M {
	flex: 4;
	margin: 0.25rem;
}

.flexF5M {
	flex: 5;
	margin: 0.25rem;
}

.rO > div:nth-of-type(1) {
	order: 1;
}

.rO > div:nth-of-type(2) {
	order: 0;
}

.rO > div:nth-of-type(3) {
	order: 2;
}

.flexContainer.rO > div:nth-of-type(1) {
	order: 1;
}

.flexContainer.rO > div:nth-of-type(2) {
	order: 0;
}

.flexContainer.rO > div:nth-of-type(3) {
	order: 2;
}


/*.displayPanel.rO > div:nth-of-type(1) {
	order: 1;
}

.displayPanel.rO > div:nth-of-type(2) {
	order: 0;
}

.displayPanel.rO > div:nth-of-type(3) {
	order: 2;
}*/

.flexContainerCC {
	display: flex;
	/*flex: 1;*/
	align-items: center;
	justify-content: center;
}

.flexContainerCC p {
	margin-bottom: 0;
}

@media (min-width: 40em) {
	.flexContainer {
		display: flex;
		flex-wrap: nowrap;
	}
	
	

.flexContainer > div, .flexContainer > article {
	flex: 1 1 100%;
	margin-bottom: 0;
}
	
		.rO > div:nth-of-type(1), .displayPanel > div:nth-of-type(2) {
		order: 0;
	}
	
		.flexContainer.rO > div:nth-of-type(1), .flexContainer > div:nth-of-type(2) {
		/*order: 0;*/
	}
	
	.flexContainer > div {
		flex: 1 1 25%;
	}
}

/* @end */

/* @group Flex Content */

.flexContent {
	display: flex;
	flex-direction: column;
}

.flexContent > * {
	display: flex;
	flex-direction: column;
}

.flexContent img {
	height: 100%;
}

.flexContent p {
	flex: 1 0 auto;
}

.flexContent .button {
	margin-top: 1em;
}

/* @end */

/* @group Flex Columns */

.flexColumns {
		display: flex;
		flex-direction: column;
	}
	   
	
	.flexC20, .flexC20M, .flexC25, .flexC25M, .flexC33, .flexC33M .flexC50, .flexC50M, .flexC66, .flexC66M, .flexC75, .flexC75M, .flexC80, .flexC80M {
		width: 100%;
	    margin-bottom: 2.5%;
	    }
	
	

@media (min-width: 40em) {
		     
	.flexColumns {
		flex-direction: row;
		justify-content: space-between;
	}

	.flexColumns.flexspE {
		justify-content: space-around;
	}
	
	.flexColumns.flexJC {
		justify-content: center;
	}
	
	.flexC20 {
		width: 20%;
	}
	
	.flexC20M {
		width: calc(20% - 0.5%);
		margin: 0.25%;
	}
	
	.flexC25 {
		width: 25%;
	}
	
	.flexC25M {
		width: calc(25% - 0.5%);
		margin: 0.25%;
	}
	
	.flexC33 {
		width: 33.3333%;
	}
	
	.flexC33M {
		width: calc(33.3333% - 0.75%);
		margin: 0.375%;
	}
	
	.flexC50 {
		width: 50%;
	}
	
	.flexC50M {
		width: calc(50% - 0.75%);
		margin: 0.375%;
	}
	
	.flexC66 {
		width: 66.6667%;
	}
	
	.flexC66M {
		width: calc(66.6667% - 0.75%);
		margin: 0.375%;
	}
	
	.flexC75 {
		width: 75%;
	}
	
	.flexC75M {
		width: calc(75% - 0.75%);
		margin: 0.375%;
	}
	
	.flexC80  {
		width: 80%;
	}
	
	.flexC80M {
		width: calc(80% - 0.75%);
		margin: 0.375%;
	}
	
/*
	.flexColumns > div:first-of-type {
		margin-left: 0; 	
	} 
	
	.flexColumns > div:last-of-type {
		margin-right: 0; 
	}
*/ 
	
	.flexC20M:first-of-type {
		margin-left: 0;
		}
		
		.flexC20M:last-of-type {
			margin-right: 0;
		}
	
		.flexC25M:first-of-type {
		margin-left: 0;
	}
	
	.flexC25M:last-of-type {
		margin-right: 0;
	}

	.flexC33M:first-of-type {
		margin-left: 0;
	}
	
	.flexC33M:last-of-type {
		margin-right: 0;
	}
	
	.flexC50M:first-of-type {
		margin-left: 0;
	}
	
	.flexC50M:last-of-type {
		margin-right: 0;
	}
	
	.flexC66M:first-of-type {
		margin-left: 0;
	}
	
	.flexC66M:last-of-type {
		margin-right: 0;
	}
	
	.flexC75M:first-of-type {
		margin-left: 0;
	}
	
	.flexC75M:last-of-type {
		margin-right: 0;
	}
	
	.flexColumns .flexCol {
		width: 33.3333%; 	
	}
	
	.flexColumns .flexColM {
		width: calc(32% - 0.75%);
		margin: 0.375%;
	}
	
	 .flexColumns .flexColM:first-of-type {
		margin-left: 0;
	}
	
	.flexColumns .flexColM:last-of-type {
		margin-right: 0;
	}

}

/* @end */		     

/* @group Flex Grid  */

.flexGrid {
	display: flex;
	flex-wrap: wrap;
	font-size: 0.9rem;
}

.flexCell {
	flex: 0 0 100%;
	border-top: thin solid gainsboro;
}

.flexCell h2 {
	/*margin-top: 0.5em;*/
}

.flexCell img {
    display: inline;
}

.flexCell:nth-of-type(1) {
	border-top: 0;
	border-left: 0;
}

.flexCell:nth-of-type(2) {
	/*border-top: 0;
	border-left: 0;*/
}

@media (min-width:48.25em) {
	.flexCell {
		flex: 1;
		border-top: none;
		border-left: thin solid gainsboro;
	}
}

/* @end */

/* @group Flex Image */

.flexImage, .flexImage > * {
	width: auto;
		/*height: 100%;*/
}

.flexImage img {
	object-position: center;
	width: 100%;
	/*background-size: 100%;*/
	background-position: center;
	/* for IE */
	   min-height: 15em;
}





.flexImage, .flexImage > * {
	width: auto;
	height: 100%;
}

.flexImage img {
	object-position: center;
	width: 100%;
	background-size: 100%;
	background-position: center;
	min-height: 100px;
}

/* @end */


/* @group Flex Wrap */

.flexWrap {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	font-size: 0.9rem;
}

.flexWrap > div {
		font-weight: 200;
	}

	.flexWrap > a {
		flex: 1;
		color: inherit;
}

	.flexWrap > a:hover {
	    background-color: whitesmoke;
}

@media (min-width: 40em) {
		.flexWrap {
			flex-direction: row;
		}
}

/* @end */

/* ..................................................................................................*/

/* @group Flex Centre Panels */

.flexPanel {
	position: relative;
	transition: all .25s ease-in;
}

.flexPanelBG {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	z-index: -1;
	overflow: hidden;
}

.flexPanelBG img {
	object-fit: cover;
	width: 100%;
	height: 100%;
	transition: all .25s ease-in-out;
}

a .flexPanel {
	opacity: 1;
	transition: all .25s ease-in-out;
}

a .flexPanel:hover {
	opacity: 0.5;
}

a .flexPanelBG img:hover {
	transform: scale(1.25);
}

.flexPanel .imageOverlay {
	position: absolute;
	right: 0;
	height: 55vh;
}

/* @end */

/* ..................................................................................................*/

/* @group Flex Margin */

	.flexM > div { }

@media (min-width: 40em) {
		
	.flexM > div {
		margin: 0.25rem;
	}
	
	.flexM > div:first-of-type {
		margin-left: 0;
	}
	
	.flexM > div:last-of-type {
		margin-right: 0;
	}

	
	.flexM25 > div {
		width: calc(25% - 0.75%);
		margin: 0.375%;
	}

	
	.flexM33 > div {
		width: calc(33.3333% - 0.6667%);
		margin: 0.3333%;
	}
		
.flexM > a{
	margin: 0.75%;
	}

}

/* @end */

/* @group Flex Utilities */

/*@media (min-width: 40em) and (orientation: landscape) {
   .flexRC40 {
        background: orange;
    }
}*/

/*@media (min-width: 48em) and (orientation: landscape) {
   .flexRC48 {
        background: red;
    }
}*/

.flexCC {
	display: flex;
	flex: 1;
	align-items: center;
	justify-content: center;
}

.flexDR {
	display: flex;
	flex-direction: row;
}

.flexRC, .flexRC40, .flexRC48 {
	display: flex;
	flex-direction: column;
}

.flexDC {
	/*display: flex;*/
	flex-direction: column;
}

.flexAC {
	display: flex;
	align-items: center;
}

.flexAS {
	display: flex;
	align-items: flex-start;
}

.flexAE {
	display: flex;
	align-items: flex-end;
}

.flexASC {
	display: flex;
	align-self: center;
}

.flexASS {
	display: flex;
	align-self: flex-start;
}

.flexASE {
	display: flex;
	align-self: flex-end;
}

.flexJS {
	display: flex;
	justify-content: flex-start;
}

.flexJC {
	display: flex;
	justify-content: center;
}

.flexJE {
	display: flex;
	justify-content: flex-end;
}

.flexspA {
	justify-content: space-around;
}

.flexspB {
	justify-content: space-between;
}

.flexspE {
	justify-content: space-evenly;
}

.flexFix {
	display: flex;
	flex-wrap: wrap;
}

.flexFix .button {
margin-top: auto;
    font-weight: normal;
    font-style: normal;
     height: 1.75rem;
}

.flexFix, .flexFix > * {
	max-width: 100%;
}

.flexGrow {
	flex-grow: 1;
}

.flexShrink {
	flex-shrink: 0;
}

.flexOrder {
	  order: -1;
}

.fGContent {
min-height: 50%;
flex-grow: 1;
}

.fGBase {
	align-items: flex-end;
	margin-top: auto;	
}



@media (min-width: 40em ) {
	.flexRC, .flexRC40{
		display: flex;
		flex-direction: row;
	}
}
	
@media (min-width: 48em ) {
	.flexRC, .flexRC48 {
		display: flex;
		flex-direction: row;
	}
}

@media (min-width: 48.25em) {

	.flexJS48 {
		display: flex;
		justify-content: flex-start;
	}
	
	.flexJC48 {
		display: flex;
		justify-content: center;
	}
	
	.flexJE48 {
		display: flex;
		justify-content: flex-end;
	}

}

/* @end */
 
/* –––––––––––––––––––––––––––––––––––––––––––––––––*/

/*  >>  N A V I G A T I O N  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */





/* –––––––––––––––––––––––––––––––––––––––––––––––––*/

/*  >>  L I N K S  */
/* ..................................................................................................*/

/* @group Default Links */

a {
	text-decoration: none;
	color: hsla(186, 86%, 38%, 1);
	transition: all .35s ease-in;
}

a:hover {
color: hsla(211, 30%, 30%, 1);
	/*filter: brightness(0.7);*/
}
    
a:active {
	outline: thin dotted yellowgreen;
}

a:focus {
	/*background-color: yellowgreen;*/
	filter: brightness(0.7);
	outline: 0;
}

.swipe a:hover {
	color: white;
	/*background-color: transparent;*/
	box-shadow: inset 15em 0 darkslategrey;
}

.swipe2 a:hover {
	color: inherit;
	/*background-color: transparent;*/
	box-shadow: inset 0 3em gold;
    padding: 0.25em 0;
}

/* @end */

/* @group Animated Links > > > */

/* @group animLink */

@media (min-width: 48.25em) and (min-height: 48em) {
	.animLink a {
		position: relative;
		border-bottom: 1px solid hsla(200, 21%, 80%, 1);
		padding-bottom: 0.125em;
	}
	
	.animLink a:after {
		content: '';
		position: absolute;
		top: 100%;
		left: 0;
		display: block;
		width: 0;
		height: 1px;
		background-color: cadetblue;
		transition: all 0.3s;
	}
	
	.animLink a:hover:after {
		width: 100%;
	}
	
	.animLink li a:after {
		display: none;
	}
}

/* @end */

/* @group animLinkC */

.animLinkC a:hover:after {
	display: none;
}

@media (min-width: 48.25em) {
	.animLinkC a {
		position: relative;
	}
	
	.animLinkC a:after {
		content: '';
		position: absolute;
		width: 0;
		top: 110%;
		left: 50%;
		display: block;
		height: 2px;
		background-color: cadetblue;
		transition: all 0.3s;
	}
	
	.animLinkC a:hover:after {
		position: absolute;
		top: 110%;
		left: 0;
		width: 100%;
		display: block;
	}
}

/* @end */

/* @group animLinkH */

.animLinkH a:after {
	display: none;
}

@media (min-width: 48.25em) {
	.animLinkH a {
		position: relative;
		padding-bottom: 0.125em;
		padding-left: 0.125em;
		padding-right: 0.2em;
	}
	
	.animLinkH a:after {
		content: '';
		position: absolute;
		top: 100%;
		left: 0;
		width: 100%;
		display: block;
		height: 1px;
		background-color: cadetblue;
		transition: all 0.3s;
	}
	
	.animLinkH a:hover:after {
		top: -30%;
		height: 30px;
		background-color: aliceblue;
		z-index: -1;
	}
}

/* @end */

/* @group AnimLinkS */

.animLinkS a {
	position: relative;
	display: inline-block;
	transition: color ease 0.3s;
}

.animLinkS a:before, .animLinkS a:after {
	content: '';
	position: absolute;
	background-color: cadetblue;
	z-index: -1;
	height: 5%;
}

.animLinkS a:before {
	width: 0;
	left: 0;
	bottom: 0;
	transition: width ease 0.2s;
}

.animLinkS a:after {
	width: 100%;
	left: 0;
	bottom: 0;
	transition: all ease 0.2s;
}

.animLinkS > a:hover:before {
	width: 100%;
}

.animLinkS a:hover:after {
	height: 4%;
	bottom: 99%;
	transition: all ease 0.2s;
}

footer .animLinkS a {
	position: absolute;
}

/* @end */

/* @group animLink by Class */

a.animLink {
	position: relative;
	margin: 0.2%;
}

a.animLink:before {
	content: '';
	position: absolute;
	top: -1%;
	left: -2%;
	z-index: -1;
	display: block;
	width: 105%;
	height: 1.25em;
	background-color: aliceblue;
}

a.animLink:after {
	content: '';
	position: absolute;
	top: -1%;
	left: -2%;
	z-index: -1;
	display: block;
	width: 0;
	height: 1.25em;
	background-color: darkcyan;
	transition: all 0.2s;
}

a.animLink:hover {
	color: white;
}

a.animLink:hover:after {
	width: 105%;
}

/* @end */

/* @group animLinkR by Span */

.animLinkR {
	display: block;
	overflow: hidden;
	text-transform: uppercase;
	transition: border-bottom 0.3s ease-out-quad;
}

.animLinkR span {
	position: relative;
	display: inline-block;
	padding-right: 0.2em;
	padding-left: 0.2em;
	transition: -webkit-transform 0.3s;
}

.animLinkR span:before {
	position: absolute;
	top: 100%;
	content: attr(data-hover);
	transform: translate3d(0, 0, 0);
}

.animLinkR:hover span {
	transform: translateY(-100%);
}

/* @end */

/* /// End Animated Link SubFolders /// */

/* @end */

/* @group Utility Links */

a[href^="http"]:empty::before {
	content: attr(href);
}

li a:hover[href]:not([class]) {
	background-color: transparent;
}

/* @end */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  T Y P O G R A P H Y  */
/* ..................................................................................................*/

/* @group Text Format */

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3 {
	font-kerning: normal;
	font-variant-ligatures: normal;
	text-rendering: optimizeLegibility;
	font-weight: 400;
	font-style: normal;
	color: hsla(210, 25%, 53%, 1);
    line-height: inherit;
}

h1, .h1 {
	font-size: 1.875em;
	--flow-space: 2rem;
}

h2, .h2 {
	font-size: 1.675em;
	--flow-space: 2rem;
}

h3, .h3 {
	font-size: 1.425em;
	--flow-space: 1.75rem;
}

h4 {
	font-size: 1.275em;
	--flow-space: 1.5rem;
}

h5 {
	font-size: 1.125em;
	--flow-space: 1.25rem;
}

h6 {
	font-size: 1.075rem;
}

p {
    line-height: 1.45;
}

b, strong {
	font-style: normal;
}

em, i {
	font-style: italic;
}

del {
	color: silver;
	text-decoration: line-through;
}

/* @end */

/* @group Text Font Weights */

.thin {
	font-weight: 100;
}

.light {
	font-weight: 200;
}

.lighter {
	font-weight: 300;
}

.bolder {
	font-weight: 500;
}

/* @end */

/* @group Text Classes */

.textSmall {
	font-size: 0.85em;
}

.textDescriptor {
	order: -1;
}

.textLead {
	font-size: 1.25em;
}

.textHero {
	font-size: 5vw;
}

.textBig {
	font-size: 6.5vw;
	letter-spacing: -0.025em;
}

.textMax {
	font-size: 8vw;
	letter-spacing: -0.035em;
	text-indent: -0.025em;
}

.textMega {
	font-size: 9vw;
	letter-spacing: -0.045em;
	text-indent: -0.03em;
}

.textTint {
		color: hsla(210, 25%, 68%, 1);
}

.textH {
	color: goldenrod;
}

.textM {
	color: fuchsia;
}

.textIL {
    display: inline;
}

.textLeft {
	text-align: left;
}

.textRight {
	text-align: right;
}

.textCentre {
	text-align: center;
}

.textCaps {
	text-transform: uppercase;
}

.textSp15 {
	letter-spacing: 0.075em;
}

.textSp25 {
	letter-spacing: 0.125em;
}

.textSpN025 {
	letter-spacing: -0.025em;
}

.textSpN05 {
	letter-spacing: -0.05em;
}

.textCC {
	position: absolute;
	top: 50%;
	left: 50%;
	text-align: center;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
}

.indent p {
		text-indent: 1.875em;
		column-break-inside: avoid;
		break-inside: avoid;
		margin-top: 0;
		margin-bottom: 0;
    	padding-top: 0;
		padding-bottom: 0;  	
		line-height: 1.625;    	
}
	
	.indent p:first-of-type {
		text-indent: 0;
	}

.sans {
	font-family: HelveticaNeue, sans-serif;
}

.serif {
	font-family: Georgia, serif;
}

.hangP {
	text-indent: -0.35em;
}

p.hangP {
	text-indent: -0.2em;
}


.pseudoP {
    font-size: 1rem;
    line-height: 1.5;
    font-weight: bold;
}

.smallCaps {
	text-transform: uppercase;
	font-size: 0.75em;
	text-indent: -0.05em;
	letter-spacing: 0.1em;
}

.textWhite {
	color: white;
}

.textDrop {
	text-shadow: 0 0.1em 0.075em hsla(240, 20%, 20%, 0.7);
}

.textDropS {
	text-shadow: 0 0.05em 0.05em hsla(240, 20%, 50%, 0.5);
}

.textDropW {
	text-shadow: 0 0.05em 0.25em hsla(109, 100%, 100%, 0.7);
}


.underline {
	display: inline-block;
	box-shadow: inset 0 -0.05em orange;
	padding-bottom: 0.25rem;
}

.textBlock {
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	background: darkmagenta;
	color: white;
	padding: 0.15em;
	line-height: 1.625;
}

.lH0 {
	line-height: 0;
}

.lH025 {
	line-height: 0.25rem;
}

.lH05 {
	line-height: 0.5rem;
}

.lH1 {
	line-height: 1rem;
}

.lH125 {
	line-height: 1.25rem;
}

.lH15 {
	line-height: 1.5rem;
}

.lH175 {
	line-height: 1.75rem;
}

.lH200 {
	line-height: 2rem;
}

.chC * {
	max-width: 35ch;
}

.chC55 {
	max-width: 55ch;
}

.chC60 {
	max-width: 60ch;
}

.chC65 {
	max-width: 65ch;
}

.chC70 {
	max-width: 70ch;
}

.chC75 {
	max-width: 75ch;
}

@media (min-width: 40em) {
	.textHero {
		font-size: 2.5vw;
	}
	
	.textBig {
		font-size: 3.25vw;
	}
	
	.textMax {
		font-size: 4vw;
	}
	
	.textMega {
		font-size: 5.75vw;
	}
	
	.textSp05 {
		letter-spacing: 0.05em;
		margin-right: -0.05em;
	}
	
	.textSp15 {
		letter-spacing: 0.15em;
		margin-right: -0.15em;
	}
	
	.textSp25 {
		letter-spacing: 0.25em;
		margin-right: -0.05em;
	}
}



@media (min-width: 82.5em) {
	.textHero {
		font-size: 2.25vw;
	}
	
	.textBig {
		font-size: 2.75vw;
	}
	
	.textMax {
		font-size: 3.5vw;
	}
	
	.textMega {
		font-size: 4.75vw;
	}
}


/* ..................................................................................................*/

.verticalT {
	/*writing-mode: vertical-rl;*/
	position: relative;
	top: 5rem;
	left: -0.5em;
	font-size: 9vw;
	line-height: 0.5;
	writing-mode: tb-rl;
	white-space: nowrap;
}

@media (min-width: 48.25em) {
	.verticalT {
		writing-mode: vertical-rl;
		/*transform: rotate(180deg);*/
		position: absolute;
		top: 10rem;
		left: 0;
		font-size: 9vw;
		line-height: 1;
	}
}

@media (min-width: 64em) {
	.verticalT {
		font-size: 8vw;
		line-height: 1;
	}
}

@media (min-width: 100em) {
	.verticalT {
		font-size: 7vw;
		line-height: 0.75;
	}
}

/* @end */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  F O N T S  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/

/*  >>  B R A N D I N G  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  E S S E N T I A L S  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  P A N E L S  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  S T Y L E S  &  O P T I O N S  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  O N E  O F  A  K I N D  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  E X T R A S  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  S I T E  S P E C I F I C  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/

/*  >>  S L I D E S H O W S  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  C S S  F X  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  F O O T E R  */
/* ..................................................................................................*/

/* @group Flex Footer */

footer {
	font-size: 0.95em;
}

footer .flexContainer, footer .flexGrid {
	display: flex;
	flex-wrap: wrap;
}

footer .flexContainer img {
	/*width: 100%;*/
	max-width: 100%;
	flex-shrink: 0;
}

footer .flexContainer > div {
	display: flex;
	flex: 1 1 48em;
}

footer .flexContainer p {
	margin-bottom: 0;
}

footer .logo {
	width: 100%;
	max-width: 80px;
	padding-bottom: 1em;
}

footer .iconBox {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	box-shadow: none;
}

footer .iconBox img {
	margin-right: 0.5em;
}

footer .flexWrap .logo {
	/*margin-left: -1em;*/
}

@media (min-width: 48em) {
	footer .flexContainer, footer .flexGrid {
		font-size: 0.825em;
	}
	
	footer .flexContainer {
		display: flex;
		flex-wrap: nowrap;
	}
	
	footer .flexContainer > div {
		flex: 1;
	}
	
	footer .flexWrap > div {
		padding-left: 0;
	}
	
	footer .logo {
		max-width: 100px;
		padding-bottom: 0;
	}
	
	footer .logo img {
		flex-shrink: 0;
	}
	
	footer .iconBox {
		padding-left: 0.5em;
	}
}

.siteInfo.fW {
	/*background-color: aliceblue;*/
}

.siteGC {
	display: flex;
	flex: 1 1 48em;
}

.siteGC .button {
	margin-top: 0.35em;
	margin-right: 0.5em;
	padding: 0.25em 0.5em;
}

.siteBuild {
	display: flex;
	flex: 1 1 48em;
	justify-content: flex-end;
}

.siteDesign {
	background: url(../miles-a/mac-credit-trans.png) no-repeat right bottom;
	height: 50px;
}

.siteDesign p {
	font-size: 0.75rem;
	line-height: 3.25rem;
	color: slategray;
	padding-right: 5.25rem;
}

.siteDesign p:before {
	content: 'website designed by';
}

@media (min-width: 48.25em) {
	.siteGC p {
		font-size: 0.85rem;
	}
	
	.siteBuild p {
		font-size: 0.7rem;
		line-height: 2.75rem;
		padding-right: 4.5rem;
	}
	
	.siteDesign p:before {
		content: 'Website designed in Scotland by ';
	}
}

@media (min-width: 82.25em) {
	.siteDesign {
		background: url(../miles-a/mac-credit-trans.png) no-repeat right center;
		height: 60px;
	}
}

/* @end */

/* @group Flex Social Media */

.socialMedia {
	display: flex;
	align-items: center;
}

.socialMedia li {
	display: inline-block;
	transition: all 0.3s;
	padding: 0.35em;
}

.socialMedia li a {
	opacity: 1;
	display: block;
	cursor: pointer;
	width: 30px;
	height: 30px;
}

.socialMedia li a:hover {
	opacity: 0.5;
}

.socialMedia img {
		flex-shrink: 0;
}


/* @end */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  L I T T L E  H E L P E R S  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/
/*  >>  F E A T U R E  S U P P O R T */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* ––––––––––––––––––––––––––––––––––––––––––––––––– */
/*  >>  P R I N T  */
/* ..................................................................................................*/

/* /////////////////////////////////////////// */

/* –––––––––––––––––––––––––––––––––––––––––––––––––*/

/* •••••••••••••••••••••••••••••••••••••–*/