body{
	font-family: 'Open Sans', sans-serif;
}

h2{
	font-size: 22px !important;
	color: #b00020;
	font-weight: bold;
}


.sub_border_top{
	border-top: 1px dotted #CCC;
	padding-top: 30px;
	margin-top: 30px;
}


.email-link{
	color: #b00020;
}

.soc_bg_1{
	background-image: url('data:image/svg+xml,<svg width="9px" height="16px" viewBox="0 0 9 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="grengds_homepage_v1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="GRENADIER_GUARDS_HOME_1" transform="translate(-453.000000, -2730.000000)" fill="%23FFFFFF" fill-rule="nonzero"><g id="Group-7" transform="translate(-56.000000, 2542.000000)"><g id="Group-6" transform="translate(498.000000, 82.000000)"><g id="Group-11" transform="translate(0.000000, 99.000000)"><g id="facebook-f-(2)" transform="translate(11.301370, 7.619048)"><path d="M1.91778474,8.9077381 L1.91778474,15.2380952 L5.2884367,15.2380952 L5.2884367,8.9077381 L7.801897,8.9077381 L8.32492921,5.99702381 L5.2884367,5.99702381 L5.2884367,4.9672619 C5.2884367,3.42857143 5.8783008,2.83928571 7.40090565,2.83928571 C7.87454037,2.83928571 8.25519158,2.85119048 8.4760274,2.875 L8.4760274,0.235119048 C8.06050737,0.119047619 7.04350031,0 6.45654195,0 C3.35031182,0 1.91778474,1.50297619 1.91778474,4.74404762 L1.91778474,5.99702381 L0,5.99702381 L0,8.9077381 L1.91778474,8.9077381 Z" id="Path"></path></g></g></g></g></g></g></svg>');
	background-repeat: no-repeat;
	background-size: 10px;
	background-position: center;
	border: 1px solid #FFF;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: inline-block;
	margin-right: 3px;
}

.soc_bg_1:hover{
	opacity: .5;
}

.soc_bg_2{
	background-image: url('data:image/svg+xml,<svg width="14px" height="15px" viewBox="0 0 14 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="grengds_homepage_v1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="GRENADIER_GUARDS_HOME_1" transform="translate(-491.000000, -2731.000000)" fill="%23FFFFFF" fill-rule="nonzero"><g id="Group-7" transform="translate(-56.000000, 2542.000000)"><g id="Group-6" transform="translate(498.000000, 82.000000)"><g id="Group-11" transform="translate(0.000000, 99.000000)"><g id="Group-5" transform="translate(40.356164, 0.000000)"><g id="linkedin-in-(1)" transform="translate(9.041096, 8.380952)"><path d="M3.0362341,13.7142857 L0.224009295,13.7142857 L0.224009295,4.55816327 L3.0362341,4.55816327 L3.0362341,13.7142857 Z M1.62860812,3.30918367 C0.729543787,3.30918367 0,2.55612245 0,1.64693878 C0,0.737359606 0.729152692,0 1.62860812,0 C2.52806355,0 3.25721624,0.737359606 3.25721624,1.64693878 C3.25721624,2.55612245 2.52767246,3.30918367 1.62860812,3.30918367 Z M13.5586167,13.7142857 L10.7524462,13.7142857 L10.7524462,9.25714286 C10.7524462,8.19489796 10.7312561,6.83265306 9.29033146,6.83265306 C7.82821673,6.83265306 7.60420744,7.98673469 7.60420744,9.18061224 L7.60420744,13.7142857 L4.79500978,13.7142857 L4.79500978,4.55816327 L7.49220279,4.55816327 L7.49220279,5.80714286 L7.53155577,5.80714286 C7.9069227,5.0877551 8.82414995,4.32857143 10.1924229,4.32857143 C13.0379464,4.32857143 13.5616438,6.22346939 13.5616438,8.68469388 L13.5616438,13.7142857 L13.5586167,13.7142857 Z" id="Shape"></path></g></g></g></g></g></g></g></svg>');
	background-repeat: no-repeat;
	background-size: 15px;
	background-position: center;
	border: 1px solid #FFF;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: inline-block;
	margin-right: 3px;
}

.mar_top_20{
	margin-top: 20px;
}

.mar_bot_20{
	margin-bottom: 20px;
}

.mar_bot_40{
	margin-bottom: 40px;
}

.rem-search-form {
    width: 100%;
    margin-bottom: 30px;
}

.rem-search-row {
    display: flex;
    width: 100%;
}

.rem-search-row input {
    flex: 1;
    box-sizing: border-box;
    padding: 14px;
    /* font-size: 14px; */
    border: 1px solid #ccc;
}

.rem-search-row button {
    padding: 0 24px;
    font-size: 16px;
    cursor: pointer;
	border: none;
}

.rem-alpha {
    margin-top: 15px;
    display: grid;
    grid-template-columns: repeat(13, 1fr);
    gap: 8px;
    width: 100%;
}

.rem-alpha a {
    text-align: center;
    padding: 8px 0;
    border: 1px solid #ccc;
    text-decoration: none;
    box-sizing: border-box;
}

.rem-alpha a:hover{
	background-color: #ccc;
}

.rem-alpha a.active {
    background: #CC0717;
    color: #fff;
}

@media (max-width: 900px) {
    .rem-alpha {
        grid-template-columns: repeat(9, 1fr);
    }
}

@media (max-width: 600px) {
    .rem-alpha {
        grid-template-columns: repeat(6, 1fr);
    }
}


.rem-results {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.rem-row {
    background: #ECECEC;
    border-radius: 4px;
}

.rem-row-link {
    display: flex;
    gap: 16px;
    padding: 12px;
    text-decoration: none;
    color: #000;
    align-items: center;
}

.rem-row-link:hover {
    background: #e0e0e0;
}

.rem-image {
    width: 70px;
    height: 70px;
    flex-shrink: 0;
}

.rem-image img,
.rem-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #ccc;
    border-radius: 3px;
}

.rem-details {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.rem-name {
    font-weight: 700;
    color: #b30000; /* red name */
}

.rem-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 14px;
}

.rem-no-results {
    padding: 20px;
    background: #f5f5f5;
    text-align: centre;
}


.rem-pagination {
    margin-top: 30px;
    display: flex;
    justify-content: center;
}

.rem-pagination ul {
    display: flex;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.rem-pagination li {
    background: #ECECEC;
    border-radius: 3px;
}

.rem-pagination a,
.rem-pagination span {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: #000;
    font-weight: 600;
}

.rem-pagination a:hover {
    background: #e0e0e0;
}

.rem-pagination .current {
    background: #CC0717;
    color: #fff;
}



.ContactFormStyles{

	
}

.ContactFormStyles button{
	border: none;
}


.ContactFormStyles h3{
	font-size: 16px;
	color: #444444;
	font-weight: bold;
}


.ContactFormStyles label.error{
	color: red;
	font-size: 10px;
	position: absolute;
	top: 0px;
	right: 10px;
}

.ContactFormStyles label{
	display: table;
	font-size: 14px;
	font-family: var(--font-two);
	margin-bottom: 5px;
	letter-spacing: 0.05em;

}

.ContactFormStyles input{
	width: 100%;
	border: 1px solid #CCC;
	height: 40px;
	padding: 10px;
	box-sizing: border-box;
	font-size: 14px;
}

.ContactFormStyles .in_con{
	width: 100%;
	margin-bottom: 10px;
	display: table;
	position: relative;

}

.ContactFormStyles hr{
	margin-top: 30px;
	margin-bottom: 30px;
}

.ContactFormStyles .small_sub_note{
	font-size: 12px;
	margin-bottom: 25px;

}

.ContactFormStyles textarea{
	width: 100%;
	border: 1px solid #CCC;
	padding: 10px;
	box-sizing: border-box;
	font-size: 14px;
 height: 200px; 
}

.ContactFormStyles .tick_box_accept{
	padding: 10px;
	border: 1px solid #CCC;
	border-radius: 5px;
	background-color: #F1F1F1;
	box-sizing: border-box;

}

.tick_box_accept label {
    display: flex;
    align-items: center;
    gap: 8px; /* space between checkbox and text */
    cursor: pointer; /* makes the whole label clickable */
    font-size: 14px; /* adjust text size if needed */
    user-select: none; /* prevents accidental text selection */
}

.tick_box_accept input[type="checkbox"] {
    width: 18px;  /* size of checkbox */
    height: 18px;
    accent-color: #0073e6; /* colour of the tick (modern browsers) */
}


.blog_styles ul{
	margin-bottom: 10px;
	padding-bottom: 10px !important;
}

.blog_styles ul li > ul{
	margin-top: 10px;
}
.blog_styles li{
	margin-bottom: 10px;
}

.in_con.human_check {

	padding: 10px;
	border: 1px solid #CCC;
	border-radius: 5px;
	background-color: #F1F1F1;
	box-sizing: border-box;
    display: flex;
    flex-wrap: wrap; /* allows wrapping on smaller screens */
    align-items: center; /* vertically aligns label, question, and input */
    gap: 10px; /* space between elements */
}

.in_con.human_check label {
    margin: 0;
    font-weight: bold;
}

.in_con.human_check p {
    margin: 0;
    font-weight: bold;
}

.in_con.human_check input[type="text"] {
    width: 80px; /* adjust width for the answer box */
    padding: 5px 8px;
    font-size: 14px;
    box-sizing: border-box;
}

.in_con select {
    width: 100%;
	max-width: 350px;
	border: 1px solid #CCC;
    height: 40px;
    padding: 10px;
    box-sizing: border-box;
    font-size: 14px;
}



.form-error {
    color: #b00020;
    background: #fdeaea;
    border: 1px solid #f5c2c2;
    padding: 12px 15px;
    margin-bottom: 20px;
    border-radius: 4px;

}


/* Success / Good */
.form-success {
    color: #155724;
    background: #d4edda;
    border: 1px solid #c3e6cb;
    padding: 12px 15px;
    margin-bottom: 20px;
    border-radius: 4px;

}

blockquote {
    color: #856404;
    background: #fff3cd;
    border: 1px solid #ffeeba;
    padding: 12px 15px;
    margin-bottom: 20px;
    border-radius: 4px;
	padding: 20px !important;

}



/* Warning / Pending */
.form-pending{
    color: #856404;
    background: #fff3cd;
    border: 1px solid #ffeeba;
    padding: 12px 15px;
    margin-bottom: 20px;
    border-radius: 4px;

}

/* Info / General notice */
.form-info {
    color: #0c5460;
    background: #d1ecf1;
    border: 1px solid #bee5eb;
    padding: 12px 15px;
    margin-bottom: 20px;
    border-radius: 4px;
}

.contact_con_info p{
	margin-bottom: 10px;
	margin-top: 10px;
	font-size: 14px;

}



.soc_bg_2:hover{
	opacity: .5;
}

.soc_con{
	margin-top: 20px;
}

.section_grey{
	background-color: #ECECF3;
}

.breadcrumbs{
    font-size: 12px;
	margin-top: 5px;
	margin-bottom: 10px;
}

.breadcrumbs a{
    text-decoration: none;
	color: #444444;
}

.breadcrumbs .sep{
    margin: 0 3px;
}

.breadcrumbs .current{
    opacity: 0.4;
}

.section .copy{
	margin-top: 30px;
}

.copy p{
    margin-bottom: 1em;
}


h1 a{
	font-size: clamp(24px, 3vw, 40px);
	text-decoration: none;
	color: #CC0717;

}

.mar_bot_20{
	margin-bottom: 20px;
}

.header_gen{
	display: table;
	width: 100%;
	height:650px;
	background-image: url(../assets/gg/header_1.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.section_mar_up .container{
	margin-top: -200px !important;
	background-color: #FFF;
	margin-bottom: 100px !important;
	min-height: 350px;

}

.section_grey .container{
	padding-top: 20px !important;
	box-sizing: border-box !important;
}


.sub_box_image {
    width: 100%;
}

.sub_box_image img.responsive-image {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px; /* optional */
}


/* Sidebar Layout Wrapper */
.section_sidebar .container{
    display: flex !important;
    gap: 40px !important;
    /* align-items: flex-start !important; */
	padding-top: 30px !important;

	align-items: stretch !important;
	
}

.sub_box_fields .rem_row{
	border-bottom: 1px dotted #CCC;
	margin-bottom: 5px;
	margin-top: 5px;
	padding-bottom: 5px;
}

.sub_box_fields .rem_name_title{
	font-size: 12px;
	font-weight: bold;
}

.sub_box_image{
	margin-bottom: 30px;
}


.sub_box_cta a{
	width: 100% !important;
	display: table !important;
	text-align: center;
	margin-bottom: 10px;

}

/* Main Content Area */
.section_sidebar .main {
    flex: 1;
    min-width: 0;
	
}

/* Optional: if you want to use a class to push sidebar right */
.section_sidebar.right-sidebar .container {
    flex-direction: row-reverse !important; /* main first, sidebar second */
}


.section_sidebar.right-sidebar .container .sidebar{
border-left: none;

border-right: 1px solid #CCC;
}

/* Sidebar Area */
.section_sidebar .sidebar{
    width: 320px;
    flex-shrink: 0;
	border-left: 1px solid #CCC;
	padding: 20px;
	box-sizing: border-box;
}

.section_sidebar .sidebar .sub_box{
	margin-bottom: 30px;
}


.section_sidebar .sidebar .sub_box .heading{
	font-size: 18px;
	color:#CC0717;
	text-transform: uppercase;
	font-weight: 600;
	margin-bottom: 10px;
}

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

ul.sub_pages li{
	/* list-style: none; */
	font-size: 14px;
	color: #444444;
	list-style: none;
	margin-left: 0px;
	padding-left: 0px;
	margin-bottom: 3px;

	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-corner-down-right-icon lucide-corner-down-right"><path d="m15 10 5 5-5 5"/><path d="M4 4v7a4 4 0 0 0 4 4h12"/></svg>');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 13px;
	padding-left: 25px;

}

ul.sub_pages li a{
	/* list-style: none; */
	font-size: 14px;
	color: #444444;
	list-style: none;
	margin-left: 0px;
	padding-left: 0px;
	text-decoration: none;

	


}

ul.sub_pages li a:hover{
	color: #CC0717;
}


/* Responsive Behaviour */
@media (max-width: 900px){
    .section_sidebar .container{
        flex-direction: column !important;
    }

	 .section_sidebar.right-sidebar .container{
        flex-direction: column-reverse !important;
		border-right: none !important;
    }

    .section_sidebar .sidebar{
        width: 100%;
		border-right:none !important;
		border-bottom: 1px solid #CCC;
    }
}

.class_box_simple{
	background-color: #FFF;
	padding: 20px;
	border-radius: 5px;
	box-sizing: border-box;
}

/*Tribties */

.sub_box_tributes {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.tribute_item {
    display: flex;
    gap: 15px;
    padding: 15px;
    background: #ECECF3;
    border-radius: 6px;
}

.tribute_image img {
    width: 80px; /* or adjust as needed */
    height: 80px;
    object-fit: cover;
    border-radius: 4px;
}

.sub_box_image_tribute{
	width: 150px;
	display: table;
}

.sub_box_image_tribute img{
	width: 100%;
	height: 100%;
}

.tribute_content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0px;
}

.tribute_name {
    font-weight: bold;
    font-size: 14px;
	text-transform: uppercase;
}

.tribute_user{
  font-size: 12px;
    color: #666;
	margin-bottom: 0px;
	text-transform: uppercase;
}


.tribute_date {
    font-size: 12px;
    color: #666;
}

.tribute_copy {
    font-size: 14px;
	margin-top: 10px;
}




.section{
	width: 100%;
	display: table;
	
}
.section .container{
	width: 100%;
	max-width: 1200px;
	padding-top: 60px;
	padding-bottom: 60px;
	padding-left: 30px;
	padding-right: 30px;
	margin: 0 auto;
	display: table;
	box-sizing: border-box;
}


.boxes_con_1{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.boxes_con_1 .box{
	width: calc(33.333% - 13.333px);
	background-image: url(../assets/gg/box_bg_head.png);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% 20px;
	padding: 30px;
	box-sizing: border-box;
	text-align: center;
	background-color: #FFF;
	display: table;
	

box-shadow: 0px -1px 22px -11px rgba(0,0,0,0.14);
-webkit-box-shadow: 0px -1px 22px -11px rgba(0,0,0,0.14);
-moz-box-shadow: 0px -1px 22px -11px rgba(0,0,0,0.14);
}

.boxes_con_1 .box a.box_image{
	height: 145px;
	width: 100%;
	display: table;

	background-image: url(../assets/gg/box_bg_head.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	opacity:1;
	transition: all .25s ease-in-out;
}

.boxes_con_1 .box a.box_image:hover{
	opacity: .5;
}

.boxes_con_1 .box .box_heading{
	font-size: 16px;
	text-transform: uppercase;

	margin-bottom: 20px;
	margin-top: 10px;
	display: table;
	width: 100%;
	text-align: center;
	text-decoration: none;
	color: #444444;

}

.boxes_con_1 .box .box_heading:hover{
	text-decoration: underline;
}

#header{
	width: 100%;
	height: 90vh;
	min-height: 850px;
	overflow: hidden;
	position: relative;
}

 #royalSlider {
	display: none;
}

#header #royalSlider{
	width: 100%;
	height: 90vh;
	box-sizing: border-box;
	min-height: 850px;
	background-position: bottom;
}


.section_boxes_1{
	background-color: #ECECEC;

}

.rsMinW .rsBullets {
    position: absolute;
    left: 0!important;
    right: 0!important;

}

.arrow_new{
	position: absolute;
	bottom:40px;
	
	
	
	z-index: 10;
	width: 60px;
	height: 30px;
	

	background-position: center;
	background-size: 20px;
	background-repeat: no-repeat;
	left: 0 !important;
	right: 0 !important;
	width: 100%;
}


.header_box{
	width: 100%;
	max-width: 1050px;
	padding: 20px;
	margin: 0 auto;
	box-sizing: border-box;
	left: 0;
	right: 0;
	top: 250px !important;
}

.main_header_1{
	font-size: clamp(2.5rem, 6vw, 5rem);
	color: #FFF;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, .75);
	margin-bottom: 10px;
	
}


.main_header_2{
font-size: clamp(1rem, 3vw, 2rem);
text-align: center;
	text-transform: uppercase;
	text-shadow: 1px 1px 0 rgba(0, 0, 0, .75);
}



@media only screen and (max-width:768px) {
	#header #royalSlider, #header{
		
		min-height: 750px;
	
	}

	@media (max-width: 768px){
	.boxes_con_1 .box{
		width: 100%;
		flex: 0 0 100%;
	}
}


}

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

#header #royalSlider, #header{
		height: 450px;
	}
}
