
	* {
		margin-top:0px; 
		margin-bottom:0px; 
		padding:0px;
	}
	
	body {
		display:flex; 
		display:-webkit-flex; 
		flex-direction:column; 
		-webkit-flex-direction:column; 
		background-color:var(--white);
		color:#44403b; 
		font-family:Hind, Lato, Roboto, arial, helvetica;
		font-size: 16px;
		margin:0;
		position:relative;
	}
							 
	body, html {
		min-height: 100vh;
		overflow-x:hidden;
		width:100%;
	}
	
	body > *,
	section,
	footer {
		float:left;
		width:100%;
	}

	header #navbar-top .container > *, 
	footer,
	footer ul li > span {
		font-size:0.8em;
		letter-spacing:0.5px;
	}
	


/*	ADJUSTMENTS -------------------------------- */
	
	.margin0 {
		margin:0 !important;
	}

	.gutter0 {
		padding-left:0px !important; 
		padding-right:0px !important;
	}
	.pad0 {
		padding:0px !important;
	}


	picture {				
		height:100%;
		width: 100%;
	}
				
	body > picture.bg {
		height:100%;
		margin:0;
		overflow:hidden;
		position:absolute;
		width:100%;
		z-index:-1;
	}
	
	body > picture img,
	.bnr > picture img {
		height:100%;
		object-fit:cover !important;
		width:100%;
	}
		
	
		
	
	svg { 
		fill: currentColor; 
		vertical-align: sub; 
	}

	.social svg {
		width:3.5em; 
	}






/*	5. Links .................................................................................................................. */
	A						{color:inherit; text-decoration:none;}
	A:hover, A:focus		{color:inherit; text-decoration:underline;}
	
	
	A.brand_logo			{font-size:11pt; font-weight:normal; line-height:17px;}
	A.brand_logo:link,
	A.brand_logo:active,
	A.brand_logo:visited	{color:#302010;}
	A.brand_logo:hover		{color:#254400; text-decoration:underline;}
	


	.btn {
		/*border-radius:3px;
		padding:1vw 2vw;*/
		background-color:var(--white);
		box-shadow:0px 0px 0px rgb(0 0 0 / 0%);
		border-radius: 5px;
		font-family: Lato, arial, helvetica;
		font-size: calc(15px + 0.3vw);
  		font-weight: 600;
		margin: calc(30px + 2vw) auto 1vw auto;
		padding: calc(15px + 0.4vw) 15px;
		width: auto;
		transition:.3s all;
		-webkit-transition:.3s all;
	}
	
	.btn:hover {
		/*border-color:#fff7;*/
		transform:translateY(-5px);
	}
	
	
	#top_banner .btn:hover {
		color:var(--white);
	}
		


/*	6. Text .................................................................................................................. */
	a:focus {
		outline:1px dotted invert
	}
	
		
	/*h1, h2, h3, h4 {
		line-height:normal;
	}*/
	
	li {
		margin-left:30px
	}
	
	p,dl,hr,ol,ul,pre,table,address,fieldset{
		margin-bottom:4px;
	}
	
	.nw {		
  	  white-space: nowrap;
	}
	
	
	.mny.pounds:before,
	.mny.pence {
		font-size:0.7em;
	}
	
	.mny.pounds:before {
		content:'£';
	}

	.no_break {
		white-space:nowrap;
	}

	.ita {		
		font-style:italic;
	}







	.flex_center,
	.banner_promo,
	.proposition picture,
	.img_bg,
	.img_bg .frost,
	#figures.proposition .stats,
	#portfolio .carousel,
	.testimonials,
	.testimonial_breakout,
	#enquire,
	#contact-ways,
	#contact-ways a,
	#wrapper,
	#wrapper > div {
		display:flex;
		display:-webkit-flex;
	}
	
	
	.banner_promo,
	#wrapper,
	#wrapper > div,
	.testimonials,
	.testimonial_breakout,
	.testimonials blockquote,	
	#contact-ways,	
	#contact-ways a {
		flex-direction:column;
		-webkit-flex-direction:column;
	}
	
	
	.flex_center,
	.banner_promo,
	#wrapper,
	#wrapper > div,
	.proposition picture,
	.testimonials,
	.testimonial_breakout,
	#contact-ways a {
		align-items: center;
		-webkit-align-items: center;
	}

	
	#figures.proposition .stats,
	#figures.proposition picture {
		-webkit-justify-content: space-evenly;
		justify-content: space-evenly;
	}




	#top_banner {	
		display:flex;
		display:-webkit-flex;
		flex-direction:column;
		-webkit-flex-direction:column;
		border-radius:5px;
		height: 80vh;
		margin-top: 30px;
		max-height: 800px;
		z-index:0;
	}

		
	.bnr,
	#top_banner {
		overflow-y: hidden;
	}


	.bnr {
		position: relative;
		overflow-x:hidden;
		width:100%;
	}

	.vt video,
	.vt picture,
	.vt picture img {
		border-radius:5px;
		height:100%;  
		object-fit: cover;
		position:absolute;
		/*top:30px;*/
		width:calc(100% - 60px);  
		z-index: -1 !important;
	}

	.vt picture,
	.vt video {	
		left:30px;
	}

	.vt picture {	
		z-index:1; 
	}

	.vt video {
		-webkit-filter:brightness(0.6);
		filter:brightness(0.6);
		z-index:-2 !important;	
	}

	.vt picture img {
		-webkit-filter:brightness(0.6);
		filter:brightness(0.6);
		width: 100%;
	}



	video.in,
	picture.out img {
		animation-iteration-count: 1;
		animation-duration:2s;
		-webkit-animation-duration:2s;
		animation-timing-function: ease;
		-webkit-animation-timing-function: ease;
		animation-fill-mode: forwards;
		-webkit-animation-fill-mode: forwards;
	}

	video.in {
		animation-name: fadeInAnimation;
	}

	picture.out {
		pointer-events: none;
	}

	picture.out img {
		animation-name: fadeOutAnimation;
	}



	.vt.nofilter video {
		filter:none !important;
	}
	
	
	#top_banner h1 {
		margin:30px 10px 10px 0px;
		text-align:center;
	}
	
	#top_banner .cdf_emblem {
		bottom:20px;
		height:30px;
		right:50px;
		position:absolute;
	}
		

	#svgh-cdf-emblem {
		margin-left:auto;
		margin-right:45px;
		width:auto;
	}
	
	/*#svg-cdf-emblem .she_yellow { fill:var(--indigo); }
	#svg-cdf-emblem .she_navy { fill:#EDB54C; }*/
	
	#svg-cdf-emblem .she_yellow,
	#svg-cdf-emblem .she_navy { fill:var(--white); filter:opacity(0.4); }




	#primary-nav .sel a {
		background-color: #402e46;
		color: #fcf4ff;
	}



	#wrapper,
	#intro,
	#reasons,
	.img_bg,
	.img_bg .frost {
		justify-content: center;
		-webkit-justify-content: center;
	}




	#wrapper {
		float:left;
		margin:auto 0px;
		max-height: 100vh;
		padding-top: 1vw;
		width:100%;
		z-index:1;	
	}

	#intro {
		color:#f8f8f8;
	}

	#intro h1 {
		font-size:calc(3em + 1vw);
		letter-spacing:0px;
		margin:0px auto;
	}

	#intro p {
		margin:auto;
		padding: 20px;
		text-align: center;
	}


	.frost .btn {
		background-color: transparent !important;
		border-color: #eee1;
		box-shadow: 0px 0px 30px #0004;
		border-width: 1px;
		backdrop-filter: blur(8px) brightness(1.2);
		-webkit-backdrop-filter: blur(8px) brightness(1.2);
	}
	
	.frost .btn:hover {
		backdrop-filter: blur(8px) brightness(0.9);
		-webkit-backdrop-filter: blur(8px) brightness(0.9);
		box-shadow: 0px 0px 60px #fff9;
		-webkit-box-shadow: 0px 0px 60px #fff9;
	}
	
	
	
	.img_bg {
		position:relative;
	}
	
	.img_bg,
	.img_bg picture,
	.img_bg picture img {
		width:100%;
	}
	
	.img_bg picture {
		position:absolute;
	}
	
	.img_bg picture img {
		filter:brightness(0.6);
		-webkit-filter:brightness(0.6);
		object-fit: cover;
	}

	.img_bg .btn {
		color:var(--white);
		margin: calc(20px + 2vw) auto auto auto;
	}
	
	





	.banner_promo a.btn {
		width:75%;
	}



	
	h1 {
		font-size:calc(1.8em + 0.3vw);
		font-weight: 700;
	}

	
	h2,
	h3 {
		color: var(--indigo);
		font-weight:600;
	}
	
	h3.enquiry {
		color:#761348;
	}
	
		
	h2 {
		flex: unset !important;
		-webkit-flex: unset !important;
		font-size:4rem;
		font-weight: 700;
		margin-bottom:20px;
		width: 100%;
	}
	
	

	
	h1,
	h2,
	#intro p,
	#figures.proposition .stats label,
	#contact-ways a *,
	.testimonials blockquote,
	.emphasis {
		font-family:'Hind', Arial, 'MS Sans Serif', 'Helvetica';
	}
	
	
	
	.emphasis {
		font-size:calc(4em + 1vw);
	}
	
	
	
	.proposition p,
	.cms p {
		font-size: calc(16px + 0.3vw);
	}
	
	.proposition p:not(:last-of-type),
	.cmsx > div > div > *:not(:last-of-type) {
		margin-bottom:15px;
	}
	
	

	#content p,
	#content.cms ul,
	#content.cms ol,
	.policy-page #menu li {
		font-size: calc(12px + 0.3vw);
	}
	
	#content.cms ul,
	#content.cms ol {
		margin-bottom:1em;
	}




	.proposition picture,
	.proposition picture img {
		max-width:100%;
	}
	
	
	.proposition .btn {
		background-color:var(--cs-red);
		margin-bottom:calc(20px + 1vw);
	}		
		
	.proposition .btn,
	.frost .btn {
		color:var(--white);
		max-width: 350px;
		width:100%;
	}


	.proposition .btn:hover {
		background-color:var(--white);
		color:var(--indigo);
	}
	
	
	
	
	#top_banner,
	.intro_panel,
	.intro_panel .col_a {
		background-color:var(--white);
	}

	.intro_panel {
		padding-top:calc(20px + 2vw) !important;
	}

	.intro_panel .col_a {
		border-radius:4px;
		padding:15px 45px calc(15px + 5vw) 30px;
	}

	.intro_panel .btn {
		margin:auto;
	}

	.intro_panel + picture {
		object-fit:contain;
		overflow-y:hidden;
		max-height:600px;
	}






	#testimonials {
		margin:calc(30px + 2vw) auto 0px auto;
	}


	.testimonial_breakout,
	.testimonials blockquote {
		justify-content: center;
		-webkit-justify-content: center;
	}

	.testimonials blockquote {
		border-left: none;
		margin:auto;
		min-height: calc(70px + 7vw);
		text-align: center;
	}

	.testimonial blockquote label {
		color: var(--blue-dark);
		font-size: calc(1.5rem + 0.3vw);
		font-weight: 500;
		margin-top: 5px;
	}


	.testimonial svg.svgh-quote-a {
		margin-right: 12%;
		margin-top: calc(-150px - 1vw);		
	}

	.testimonial svg.svgh-quote-b {
		margin-left: 12%;
		margin-top: calc(120px + 1vw);
	}

	/*.testimonial svg {
		fill: #111;
		height: 120px;
	}*/


	.asset_button,
	.asset_button label {
		cursor:pointer;
	}
	
	
	

	#figures.proposition {
		-webkit-flex-wrap:wrap;
		flex-wrap:wrap;
		background-color:var(--white);
		padding-bottom: 3vw;
		padding-top: 1vw;
	}
	
	#figures.proposition .stats/*,
	#figures.proposition picture*/ {
		text-align:center;
		width:100%;
	}
	
	#figures.proposition .mny:before {
		content: '£';
		display:inline-block;
		font-size: 0.8em;
	}
	

	#figures.proposition .stats label {
		color: #583264;
		font-size: calc(3.4em + 0.5vw);
		margin-bottom:0px;
	}
	
	#figures.proposition .stats {
		/*border:1px solid #fc6;*/
		margin-bottom:calc(20px + 2vw);
		padding:5px 0px 15px 0px;
	}

	#figures.proposition label + p {
		color: #999;
		font-size: 1em;
		font-weight: 600;
		letter-spacing:0.5px;
		padding: 0px;
		text-transform: uppercase;
	}
	
	#figures.proposition .img_bg {		
		height:40vh;
		margin:calc(10px + 2vw) auto 0px auto;
		max-height:500px;
		padding:0px;
		width:100%;
	}	
	
	#figures.proposition .btn:hover {
		background-color:#d9a330;
		color:var(--white);
	}
	
	#figures.proposition + .img_bg {
		height:45vw;
		max-height: 540px;
		overflow:hidden;
	}

	#figures.proposition + .img_bg .frost .btn {
		backdrop-filter: blur(15px) brightness(1.3);
	}	
	








	.cmsx > div,
	.cmsx > div.pic.pic_align_2 > div,
	.cmsx > div.pic.pic_align_3 > div {
		display: flex;
		display: -webkit-flex;
	}	


	.cmsx > div {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		padding: 2vw 8vw;
		position: relative;
	}

	.cmsx > div > * {
		flex: 1;
		-webkit-flex: 1;
	}


	.cmsx > div picture img {
		border-radius:4px;
		max-width:100%;
	}

	.cmsx > div picture.pos_1 {
		margin-bottom:15px;
		margin-top:15px;
		width:100%;
	}

	.cmsx > div picture.pos_2 {
		margin:5px 30px 15px 0px;
	}

	.cmsx > div picture.pos_3 {
		margin:5px 15px 15px 15px;
	}

	.cmsx > div picture.pos_3,
	.cmsx > div picture.pos_2 {
		overflow:hidden;
		width:45%;
	}

	.cmsx > div.pic.pic_align_1 {
		flex-direction: column;
		-webkit-flex-direction: column;
		padding:2vw 0px;
	}

	.cmsx > div.pic.pic_align_1 > *:not(picture) {
		margin-left: 8vw;
		margin-right: 8vw;
		width: auto;
	}

	.cmsx > div.pic.pic_align_1 picture {
		max-height:700px;
		margin-top:20px;
		object-fit:contain;
		overflow-y: hidden;
		width: 100%;
	}

	.cmsx > div.pic.pic_align_1 picture img {
		border-radius:0px;
		width: 100%;
	}

	.cmsx > div.pic.pic_align_2 {
		flex-direction: row-reverse;
		-webkit-flex-direction: row-reverse;
	}
	
	.cmsx > div.pic.pic_align_2 > div,
	.cmsx > div.pic.pic_align_3 > div {
		flex-direction: column;
		-webkit-flex-direction: column;
		justify-content: center;
		-webkit-justify-content: center;
		padding-bottom: 4vw;
	}
		

	.cmsx > div.pic.pic_align_-1 h2,
	.cmsx > div.pic.pic_align_-1 p {
		color:var(--white);
	}


	.cmsx > div.pic.pic_align_-1 picture,
	.cmsx > div.pic.pic_align_-1 picture img {
		border-radius: 4px;
		height:100%;
		left:0px;
		object-fit:cover;
		position:absolute;
		top:0px;
		width:100%;
	}

	.cmsx > div.pic.pic_align_-1 picture img {
		filter: brightness(0.7);
		-webkit-filter: brightness(0.7);
		z-index:-1;
	}


	.cmsx > div.pic picture {
		display: block;
		position:relative;
	}



	.cmsx > div:last-of-type {
	}

	.cmsx > div:last-of-type,
	.cmsx > div.pic:last-of-type picture {
		padding-bottom:0px;
	}

	label.flat input[type=checkbox],
	label.flat input[type=radio] {
		display: none;
	}

	label.flat input + span::after, 
	label.flat input + span::before {
		font-family: "Glyphicons Halflings";
	}



@media (max-width:1440px) {
	.cmsx > div {
		padding: 2vw 8vw;
	}
	
	.cmsx > div.pic.pic_align_1 > *:not(picture) {
		margin-left: 8vw;
		margin-right: 8vw;
	}
}



@media (max-width:1600px) {
	.cmsx > div {
		padding: 2vw 10vw;
	}
	
	.cmsx > div.pic.pic_align_1 > *:not(picture) {
		margin-left: 10vw;
		margin-right: 10vw;
	}
}


@media (min-width:1601px) {
	.cmsx > div {
		padding: 2vw 20vw;
	}
	
	.cmsx > div.pic.pic_align_1 > *:not(picture) {
		margin-left: 20vw;
		margin-right: 20vw;
	}
	
	.btn {
		padding-left:30px;
		padding-right:30px;
	}
}





	#enquire .ico_buttons > * {
		margin:0px 0px 15px 0px;
	}
	

	#enquire .ico_buttons > a {
		transition: 0.3s all;
	}

	
	#enquire .ico_buttons > a {
		display: flex;
		display: -webkit-flex;
	}

	#enquire .ico_buttons > a {
		align-items: center;
		-webkit-align-items: center;
		transition: transform .2s ease-in-out;

		/*background-color: #f0f0f0;*/
		border-radius: 3px;
		color: #005472;
		margin-top:3vw;
		padding: 5px 0px 10px 0px;
	}
	
	#enquire .ico_buttons > a h3 {
		color: #4e4d4a;
	}
	
	#enquire .ico_buttons > a + div {
		margin-bottom:30px;
		padding-left:85px;
	}

	#enquire .ico_buttons > a div * {
		margin-bottom: 5px;
	}

	#enquire .ico_buttons > a div p {
		font-size:2em;
		font-weight:300;
	}

	#enquire img.icon {
		height: 45px;
		margin: 15px 10px;
		transition: transform .3s ease-in-out;
		width:50px;
	}

	#enquire a:hover img.icon {
		-webkit-transform: rotate(-30deg);
		-moz-transform: rotate(-30deg);
		-o-transform: rotate(-30deg);
	}

	#enquire .ico_buttons > a:hover,
	.testimonial_highlight .asset_button:hover {
		background-color:#eaf2f5;
		text-decoration:none;
	}



	

	#contact-ways {
		justify-content: center;
		-webkit-justify-content: center;
	}

	#contact-ways a {
		background-color: #f3eff5;
		margin-bottom:auto;
	}


	#contact-ways a {
		color: #5e3e6b;
		font-size:calc(22px + 0.3vw);
	}


	#contact-ways a.call_us {
		border-radius: 4px 4px 0px 0px;
	}

	#contact-ways a.contact_direct {
		border-radius: 0px 0px 4px 4px;
	}
	

	#subscriber-added {
		background-color:var(--white);
		color: #333 !important;
		display:none;
		float:left;
		padding:10px;
		width:100%; 
	}






	
	footer {
		background-color: var(--indigo);
        color: var(--white);
        font-family: Hind, Lato, 'MS Sans Serif', sans-serif, helvetica;
		font-size: 1em;
		margin-top:calc(20px + 2vw);
		padding: 3vw 0 2vw 0;
		z-index: 1;
	}

		
	
	footer * {
		color: inherit;
	}
	
		
	footer a {
		white-space: nowrap;
	}

	footer #footer-social svg {
		fill: var(--white);
	}
	
	footer #footer-social svg {
		height:calc(30px + 0.5vw);
		margin:0px 20px;
	}
	
	
	footer > *,
	footer #logo-container {
		display: flex;
		display: -webkit-flex;
		-webkit-flex-direction: column;
		flex-direction: column;
		line-height: 200%;
		padding-bottom: 1em;
	}
	
	footer h3 {
		margin-bottom: 15px;
		margin-top: 10px;
	}


	footer p {
		line-height:2em;
		margin: 2px 0px; 
	}

	footer #footer-credit {
		-webkit-flex-direction: row;
		flex-direction: row;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		margin-top: 3vw;
		width: 100%;
	}
	
	/*footer #footer-credit .lbm {
		text-align: center;
	}*/
	
	footer #footer-credit > * {
		width: auto;
	}
	
	
	footer #logo-container svg#svgf-cdf-cardiffstays {
		margin-top: 20px;
		width: calc(100% - 20px);
	}
	
	footer #logo-container svg {
		margin: auto;
		width: 100%;
	}
	

	#info-message {
		color:#fff;
		display:none;
		float:left;
		padding: 0.75em 0px 1em 0px;
		position:fixed;
		width:100%;
		bottom: 0;
		z-index: 9999;
	}
	
	
	

	@keyframes fadeInAnimation {
		0% {	opacity: 0; }
		100% {	opacity: 1; }
	}

	@keyframes fadeOutAnimation {
		0% {	opacity: 1; }
		100% {	opacity: 0; }
	}
		
	



@media screen and (min-width:992px) {

	main {
		padding: 20px;
	}
	
	body > section.proposition {			
		display:flex;
		display:-webkit-flex;
		padding-left: 8vw;
		padding-right: 8vw;
	}
	


	#intro p {
		font-size:calc(2em + 1.5vw);
		max-width: 50vw;
	}



	.testimonial_breakout {
		width: 70%;
	}
	

	#figures.proposition .xs_only {
		display: none;
	}


	#figures.proposition .stats {
		background-color: #fcf4ff;
	}
	


	.intro_panel .col_a {
		border-radius:4px;
		box-shadow: 0px 0px 80px rgba(150, 150, 150, 0.15);
		padding:15px 45px calc(15px + 5vw) 30px;
	}

	.intro_panel + picture {
		margin-top: calc(-50px - 5vw);
	}


	.testimonial blockquote p {
		font-size: 1em;
		padding: 0px 35px;
	}




    #enquire {
		background-color: #ebe8e2;
		padding: 2vw 8vw;
    }
	
	
	

	#contact-ways {
		transition: 0.3s all;
	}

	#contact-ways a {
		box-shadow: 0px 0px 60px #8882;
		padding: 30px;
		transition: 0.3s background-color;
	}
	
	
	#contact-ways a:hover {
		background-color: #f7e6ff;
		text-decoration:none;
	}

	#contact-ways a h3 {
		font-size: 4rem;
	}
		


	#enquire.testimonials {
		flex-direction: row;
		-webkit-flex-direction: row;
		padding: 4vw 8vw;
	}

	#enquire.testimonials .testimonial_breakout {
		width: 50%;
	}


	#enquire.testimonials #contact-ways {
		justify-content: center;
		-webkit-justify-content: center;
		padding:0px 5%;
	}

	#enquire.testimonials #contact-ways a {
		margin-bottom:auto;
		margin-top:auto;
	}




	footer {
		padding-left: 7vw;
		padding-right: 7vw;
	}
}





@media (min-width:2048px) {
	body > section.proposition {
		margin-left: auto;
		margin-right: auto;
		max-width: 2048px;
		padding-left: 2vw;
		padding-right: 2vw;
	}

	#enquire.testimonials {
		padding-left: 20vw;
		padding-right: 20vw;
	}
}


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

	#portfolio .proposition {
		display:flex;
		display:-webkit-flex;
	}

	#portfolio .proposition,
	#figures.proposition,
	#figures.proposition > picture + div,
	#enquire,
	#contact-enquiry .send_captcha {
		flex-direction:column;
		-webkit-flex-direction:column; 
	}


	#figures.proposition,
	#figures.proposition > picture + div {
		justify-content:center;
		-webkit-justify-content:center;
	}
	
	
	#top_banner {
		margin-top:20px;
	}	
	
	#top_banner video,
	#top_banner picture {
		left: 20px;
		width: calc(100% - 40px);
	}	
		
	#top_banner #intro {
		width: 100%;
	}	
		
	#top_banner #intro > * {
		margin-left:20px;
		margin-right:20px;		
	}	
	
	#top_banner h1,
	#enquiry h2 {
		font-size:3.5rem
	}
	
	#top_banner #intro p {
		font-size:2rem;
	}
	

	#wrapper {
		font-size:1.2em;
	}
	
	#wrapper svg {
		padding-bottom:2vw;
		width:80vw;
	}
	
	
	

	.proposition h2 {
		margin: 25px auto 10px auto;
	}



	.proposition .btn {
		margin-left:auto;
		margin-right:auto;
		max-width:100%;
		width:300px;
	}

		

	#content p,
	#content.cms ul,
	#content.cms ol,
	.policy-page #menu li {
		font-size: 1.5rem;
	}
	
	

	#figures.proposition {
		flex-direction: column-reverse;
		-webkit-flex-direction: column-reverse;
		padding:20px;
	}		

	#figures.proposition .stats {
		padding: 10px 10px 0px 0px;
	}	

	#figures.proposition .stats label {
		font-size:3rem;
	}

	#figures.proposition .stats label + p {
		font-size:1rem;
	}

	#figures.proposition picture {
		margin: 0px auto 20px auto;
		order: -1;
	}


	#figures.proposition + .img_bg {
		height:45vh;
	}

	#figures.proposition .xs_only {
		display: block;
		order: 0;
	}




	.intro_panel .col_a {
		background-color:#ebe8e2;
		padding-bottom:60px;
	}


	.intro_panel .btn {
		margin-bottom:30px;
		margin-top:-30px;
	}


	#location h2 + p {
		padding-right: 30px;
	}


	
	.cmsx > div.pic_align_1 {
		padding:35px;
	}


	.cmsx > div.pic.pic_align_2 > *:not(h2),
	.cmsx > div.pic.pic_align_3 > *:not(h2) {
		flex: none;
		-webkit-flex: none;
		width: 60%;
	}
	
	.cmsx > div.pic.pic_align_2 {
		padding-right:0vw;
	}
	
	.cmsx > div.pic.pic_align_2 h2 {
		margin-left: -40vw;
	}
	
	.cmsx > div.pic.pic_align_2 p {
		padding-right:5vw;
	}
	
	.cmsx > div.pic.pic_align_2 > picture {
		left: -20%;
	}
	
	.cmsx > div.pic.pic_align_-1 > div {
		margin-bottom: 20px;
	}
	
	.cmsx > div.pic.pic_align_-1 picture,
	.cmsx > div.pic.pic_align_-1 picture img {
		border-radius: 0px;
	}
	
	.cmsx > div picture.pos_2,
	.cmsx > div picture.pos_3 {
		display: flex;
		display: -webkit-flex;
		flex-direction: column;
		-webkit-flex-direction: column;
		justify-content: flex-end;
		-webkit-justify-content: flex-end;
		bottom: 0px;
		position: absolute;
		width: 55%;
	}
	
	.cmsx > div picture.pos_3 {
		left: 55%;
	}
	
	.cmsx > div picture.pos_2 {
		left: 0px;
	}

	.cmsx > div h2 {
		font-size: 3.4rem;
    }
	
	.cmsx > div.pic h2 {
		width: 330px;
	}


	.cmsx > div.pic picture {
		padding-bottom: 50px;
	}

	.cmsx > div.pic picture source {
		position: absolute;
	}
	
	
	#testimonials {
		background-color:#e5f5ff;
		margin-top: 0px;
		padding: 10px 20px 0px 20px;
	}

	#testimonials .testimonials {
		padding-bottom: 30px;
		padding-top: 10px;
	}
	
	#testimonials .testimonials .testimonial {
		margin-top: 15px;
		padding: 15px;
		position: relative;
	}

	#testimonials .testimonials blockquote {
		background-color: var(--white);
		border-radius: 5px;
		padding: 15px 20px 5px 20px;
	}

	#testimonials .testimonials .testimonial svg {
		fill: #75bce9;
		left: 45%;
		margin-top: -25px;
		position: absolute;
		top: 20px;
	}




	#enquire {
		flex-direction:column-reverse;
		-webkit-flex-direction:column-reverse;
		margin: 0px;
	}

	#enquire #contact-ways img.icon {
		height: auto;
		margin: 10px 0px 10px 0px;
		width: 80px;
	}

	#enquire .ico_buttons > a {
		margin:30px 0px;
		padding:15px;
	}

	#enquire .ico_buttons > a + div {
		font-size:1.6em;
	}

	#enquire .ico_buttons > a + div .emphasise {
		font-size:1.2em;
	}


	#contact-ways {
		margin: 40px 0px 0px 0px;
	}

	#contact-ways .testimonial_breakout {
		display:none;
	}

	#contact-ways a {
		border-radius: 5px !important;
		margin: 0px auto 40px auto;
		padding: 20px;
		width: 300px;
	}

	#contact-ways a * {
		font-size:3rem;
	}
	
	
	



	.banner_promo a.btn {
		width: auto;
	}		




	footer {
		padding: 10px;
	}
	
	
	footer #footer-credit,
	.social {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
												
	footer #footer-logo {
		-webkit-align-items: center;
		align-items: center;
		margin: 0px auto 20px auto;
	}
												
	footer #footer-logo #logo-container {
		background-color: var(--cs-red);
		border-radius: 5px;
		margin: 20px 30px 0px 30px;
		padding: 20px 30px;
	}
												
	footer #footer-logo svg {
		fill: var(--white);
	}
												
	footer #footer-credit {
		-webkit-flex-direction: column-reverse;
		flex-direction: column-reverse;
		margin: 20px 0px 10px 0px;
		padding: 0px 15px;
		text-align: center;
	}

	footer #footer-credit > * {
		width: 100%;
		text-align: center;
	}

	.social {
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
		align-items:center;
		-webkit-align-items:center;
		justify-content: center;
		-webkit-justify-content: center; 
	}

	.social a {
		margin:15px;
		width:30%; 
	}


	#info-message .asset_button {
		margin-top:10px;
		width:100%;
	}	
}

