/*

Styles for Page Blocks

Only add styles for generic blocks here, individual styles for specific websites to go into the mian site.css

*/

/* Page Blocks */

section.odd, section.even {
	padding: 40px 0px;
}

@media (max-width:991px) {
	section.odd.imageBackgroundRow, section.even.imageBackgroundRow {
		// padding-top:0px;
	}
	
	section.odd, section.even {
		margin-bottom:0px;
	}
}

@media (max-width:767px) {
	.leftPageBlock .pageBlockText, .centrePageBlock .pageBlockText {
		padding-bottom:40px;
	}
	.leftPageBlock img, .centrePageBlock img {
		margin-bottom:40px;
	}
}

section.odd.noPadSec, section.even.noPadSec {
	padding: 0px;
}

.pageBlock img {
	border-radius: 7px;
	border:1px solid var(--ukcma-gold);
}

section.fullWidthSection {
	padding-left: 0px;
	padding-right: 0px
}

section.fullWidthSection .leftPageBlock img, section.fullWidthSection .rightPageBlock img, section.fullWidthSection .centrePageBlock img {
	border: 0px !important;
}

h2.pageBlockHeading {
	margin-bottom: 35px;
	font-size: 36px;
	font-weight: 700;
}

p.pageBlockSubHeading {
	font-size: 22px;
	font-weight: 500;
	color: #191a1f;
}

.bg-blue p.pageBlockSubHeading {
	color: #ccc;
}

.noPadSec .pageBlockHeading {
	margin-top: 40px;
}

@media (min-width:768px) {
	
	section.fullWidthSection .leftPageBlock, section.fullWidthSection .rightPageBlock, section.fullWidthSection .centrePageBlock {
		padding-left: 0px;
		padding-right: 0px;
	}
	
	section.fullWidthSection .container-fluid .blocksTextBlock {
		padding: 50px;
	}

	section.fullWidthSection .container-fluid .pageBlockText {
		max-width:551px;
		margin: 0px auto;
	}
	
}

@media (max-width:1220px) {
	section.fullWidthSection .container-fluid .pageBlockText {
		padding:0px 20px;
	}
}

section.fullWidthSection .container-fluid h3 {
	margin-top: 24px;
}

@media (max-width:767px) {
	.homeBlocks section {
		padding-bottom:  20px;
	}
}

.headingBlock {
	margin-top: 0px;
	margin-bottom: 0px;
}

.pageBlockRow p:last-child {
	margin-bottom: 0px;
}

.leftPageBlock img, .rightPageBlock img, .centrePageBlock img {
    max-width: 100% !important;
}

@media (min-width:768px) {
	.vertical-align {
		display: flex;
		align-items: center;
	}
}

@media (max-width:575px) {
	.vertical-align, .pageBlockHeading {
		padding-left: 15px;
		padding-right: 15px;
	}
}

@media (max-width:767px) {
	.vertical-align {
		display: block;
	}
}

/* Background Image Section */
.whiteText {
	color:  var(--ukcma-nearly-white);
}

/* Accordion */
.accordion-style .single-accordion {
	border:1px solid var(--ukcma-gold) !important;
}

.accordion .panel-heading {
	padding:10px
}

.accordion .panel-heading h5 {
	margin-bottom:0px;
}

.accordion .panel-heading h5 a {
	padding:10px;
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
}

.accordion .panel-heading h5 a {
	color: rgb(51, 51, 51);
}

.accordion .panel-body {padding: 15px;}

.accordion .panel-body p, .accordion .panel-body li {
	font-size: 14px;
	font-weight: 400;
}

.accordion .accordionArrow i {
	display: inline-block;
	margin-right: 15px;
	color: rgb(51, 51, 51);
}

.accordion h5 a .accordionClosed {display: none;}
.accordion h5 a .accordionOpen {display: inline-block;}
.accordion h5 a.collapsed .accordionClosed {display: inline-block;}
.accordion h5 a.collapsed .accordionOpen {display: none;}

.bg-blue .accordion-style .single-accordion .accordion-btn button {
	background-color: #376BB4;
	color: #ede6dd;
}
.bg-blue .accordion-style .single-accordion {
	border:1px solid #ede6dd !important;
}

/* Action Blocks */

.actionBlocks .whiteBackBlock {
	background-color:var(--ukcma-nearly-white);
}

.actionBlocks .blockImage {
	padding-bottom:0px;
}

/* Parallax Treatment for sections (must have background image set) */
.parallax {

    /* Set a specific height */
    min-height: 500px;

    /* Create the parallax scrolling effect */
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* Videos */

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	border:0px;
	width: 100%;
	height: 100%;
}

video {max-width:100% !important;}

@media (max-width:767px) {
	video {
		margin-bottom:30px;
	}
}

/* pb slider */
.pb_slider ul {
	list-style-type: none;
}

div[class*='col-'] .pb_slider ul {
	list-style-type: none !important;
	list-style-position: inside !important;
	margin-left: 0px !important;
}

ul.slick-dots {
	display: none !important;
}

.slick-slider {
	padding-left:0px;
}

.slick-dotted.slick-slider {
	margin-bottom:0px;
}

ul.slides {
	margin-left: 0px !important;
}

.slick-prev:before, .slick-next:before {font-family: FontAwesome;}

.slick-prev:before {content: "\f190";}
.slick-next:before {content: "\f18e";}


.flex-control-nav {
	bottom:  -40px;
}

.flex-direction-nav {
	display:  none !important;
}

.flex-caption {
    bottom:0px;
    color: white;
    font-size: 16px;
    line-height: 20px;
    left:0;
    padding:20px 20px;
    position:absolute;
    right:0;
    z-index:1;
	background-color:  rgba(0,0,0,0.4);
}

.imageBackgroundRow {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.imageBackgroundRow h1, .imageBackgroundRow h2, .imageBackgroundRow h3, .imageBackgroundRow h4, .imageBackgroundRow h5, .imageBackgroundRow h6, .imageBackgroundRow p {
	color: var(--ukcma-nearly-black);
}

.imageBackgroundRow.whiteText h1, .imageBackgroundRow.whiteText h2, .imageBackgroundRow.whiteText h3, .imageBackgroundRow.whiteText h4, .imageBackgroundRow.whiteText h5, .imageBackgroundRow.whiteText h6, .imageBackgroundRow.whiteText p {
	color: var(--ukcma-nearly-white);
}

.imageBackgroundRow .fadeFromLeft {
	background-image: linear-gradient(to right, rgba(40,40,40,1), rgba(40,40,40,0) 60%);
}

.imageBackgroundRow .fadeFromRight {
	background-image: linear-gradient(to left, rgba(40,40,40,1), rgba(40,40,40,0) 60%);	
}

/* Tabs */
.nav-tabs {
	border-bottom:1px solid rgba(118, 129, 142, 0.54);
	margin-bottom: 40px;
}

.nav-tabs .nav-link {
	color: rgb(63, 73, 88);
	font-size:14px;
	font-weight:600;
	border: 1px solid rgba(118, 129, 142, 0.54);
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	padding: 10px 20px;
	margin-right:5px;
}

.nav-tabs .nav-item {
	position:relative;
	left:-1px;
}

.nav-tabs .nav-item:first-of-type {
	left:0px;
}


.nav-tabs .nav-link.active, .nav-tabs .nav-link:hover {
	background-color: var(--ukcma-redgrey);
	border:1px solid var(--ukcma-redgrey);
	color:var(--ukcma-nearly-white)
}

/* Page Block Text Styles */
.pageBlockText h2 {margin-top:40px; margin-bottom:20px;}

.pageBlockText ul, .pageBlockText ol {margin: 20px;}

.pageBlockText ul {list-style-type: circle;}
.pageBlockText ol {list-style-type: decimal;}

.pageBlockText li {
	line-height:24px;
	margin-bottom:10px;
	color: var(--ukcma-redgrey);
}

.pageBlockText ul a, .pageBlockText ol a {
	color: var(--ukcma-red);
}

.pageBlockText h3 {
	padding-bottom: 15px;
	margin-bottom:20px;
	border-bottom: 1px solid var(--ukcma-red);
	color: var(--ukcma-nearly-black);
}

.bg-red .pageBlockText h3 {
	border-bottom-color: var(--ukcma-gold);
}

/* Numbered Steps Block (pb_text_text_text_numbers) */

/* Equal height cards, stretched to fill the row regardless of the block's vertical-align setting */
.stepsRow {
	align-items: stretch !important;
}

.stepsRow .pageBlock {
	display: flex;
}

.stepTextBlock {
	position: relative;
	overflow: hidden;
	flex: 1 1 auto;
	width: 100%;
	display: flex;
	flex-direction: column;
	text-align: center;
	border-color: var(--ukcma-gold);
}

.bg-red .stepTextBlock {
	border-color: var(--ukcma-nearly-white);
}

.stepTextBlock .stepNumber {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--ukcma-heading-font);
	font-size: clamp(90px, 14vw, 200px);
	line-height: 1;
	font-weight: 700;
	color: var(--ukcma-gold);
	opacity: 0.12;
	pointer-events: none;
	user-select: none;
}

.bg-red .stepTextBlock .stepNumber {
	color: var(--ukcma-red);
	opacity: 0.15;
}

.stepTextBlock .stepTextInner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	width: 100%;
}

.stepTextBlock .stepNumberBadge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: 0 auto 18px;
	border-radius: 50%;
	background: var(--ukcma-gold);
	color: var(--ukcma-nearly-white);
	font-family: var(--ukcma-heading-font);
	font-size: 20px;
	font-weight: 700;
	flex-shrink: 0;
}

.stepTextBlock .stepTextInner h2:first-of-type,
.stepTextBlock .stepTextInner h3:first-of-type,
.stepTextBlock .stepTextInner h4:first-of-type {
	margin-top: 0;
}

.stepTextBlock .stepTextInner h4 {
	font-size: 24px;
}

/* Push the final element (the CTA link) to the bottom of the card so buttons line up across all three columns */
.stepTextBlock .stepTextInner > *:last-child {
	margin-top: auto;
	padding-top: 20px;
}

/* Style any link in the card as a small pill button, matching the site's theme-btn-small style */
.stepTextBlock .stepTextInner a {
	display: inline-block;
	background-color: var(--ukcma-gold);
	border: 2px solid var(--ukcma-gold);
	padding: 8px 24px;
	border-radius: 50px;
	color: var(--ukcma-nearly-white) !important;
	text-decoration: none !important;
	font-weight: 600;
	transition: all 0.3s ease;
}

.stepTextBlock .stepTextInner a:hover {
	background-color: var(--ukcma-red);
	border-color: var(--ukcma-red);
	color: var(--ukcma-nearly-white) !important;
}

.bg-red .stepTextBlock .stepTextInner a:hover {
	background-color: var(--ukcma-nearly-white);
	border-color: var(--ukcma-nearly-white);
	color: var(--ukcma-gold) !important;
}

@media (max-width:767px) {
	.stepTextBlock .stepNumber {
		font-size: clamp(70px, 26vw, 110px);
	}
}

@media (max-width:991px) {
	// .rightPageBlock .pageBlockText, .rightPageBlock img, .pageBlockRow:last-of-type .leftPageBlock {margin-bottom:50px;}
}

/* Features List */
.box-style .box-icon-style {
	color:var(--ukcma-nearly-white);
	background-color: var(--ukcma-gold);
}

.box-style .box-icon-style.centered {
	display:inline-block;
	margin-left:auto;
	margin-right:auto;
}

.box-style .box-icon-style.centered i {
	margin-top: 17px;
}

.bg-blue .box-style:hover .box-icon-style {
	background-color: transparent !important;
}

