
/* Anchor tags - scroll 71px above to accomodate fixed nav */

#about, #training_solutions, #our_people, #contact_us {
scroll-margin-top: 70px;
}









@font-face {
font-family: 'MyFont';
src: url('../website/fonts/Poppins-Regular.woff2') format('woff2'),
url('../website/fonts/Poppins-Regular.woff') format('woff'),
url('../website/fonts/Poppins-Regular.ttf') format('truetype');
}

 html {
scroll-behavior: smooth;

}

*{
padding:0px;
margin:0px;	
}


body {
font-family: 'poppins', sans-serif;
font-weight:300;
color:#222;
margin: 0;
padding: 0;
xbackground:#001f49;
}


/* Paragraphs and Lists */
p, li, ul li, a {
font-size: clamp(1.125rem, 1rem + 0.5vw, 1.25rem); /* Larger body font size */
line-height: clamp(1.5, 1.5vw + 1rem, 1.8); /* Matches body line-height */
text-decoration:none;
list-style-type:none;
color:#222;
padding-bottom:0.5em;

}

button {
border: none; 
background: none; 
padding: 0;
cursor: pointer;
}


/* Headers */
h1 {
font-weight:600;
font-size: clamp(2rem, 1.5rem + 2vw, 3rem); /* Header font size scales */
line-height: clamp(1.2, 2vw + 1rem , 1.3); /* Header line-height scales */
margin-bottom: 0.5em;
}

h2 {
font-weight:600;
font-size: clamp(1.5rem, 1.2rem + 1.5vw, 2.25rem);
line-height: clamp(1.2, 1.5vw + 1rem, 1.4);
margin-bottom: 0.5em;
}

h3 {
font-weight:600;
font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem);
line-height: clamp(1.2, 1.25vw + 1rem, 1.4);
margin-bottom: 0.5em;
}

img {
width: 100%;
height: 100%;
object-fit: cover;
display:block;
}



/* content css */


#content{
display: grid;
grid-template-columns: repeat(6, 1fr);
margin: 0 auto;
}


/* background */

.background_fixed{
position:fixed;
top:0px;
left:0px;
z-index: -2;
width:100%;
height:100%;
background-repeat: no-repeat;
}

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

/* Footer */

footer{
grid-column: 1 / 7;
}

.footer_background {
background-color: rgba(0, 31, 73, 0.95);
padding:30px;
}


.footer_box_padding{
padding:20px;

}

.footer_grid{
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-gap: 30px;
justify-items: center;
}

.footer_grid p, li, ul li, a{
color:#fff;
font-size: clamp(1rem, 0.9rem + 0.5vw, 1.125rem); /* Slightly smaller body font size */
line-height: clamp(1.4, 1.4vw + 1rem, 1.6); /* Adjusted for proportionate spacing */
text-decoration: none;
list-style-type: none;
word-wrap: break-word;
padding-bottom:0;

}

.footer_grid_1, .footer_grid_2, .footer_grid_3{
width:100%;
border:1px solid grey;
}

.footer_h3 {
color:#fff;
font-weight: 600;
font-size: clamp(1rem, 0.9rem + 1vw, 1.5rem); /* Slightly smaller scale */
line-height: clamp(1.1, 1.15vw + 1rem, 1.3); /* Adjusted for proportionate spacing */
}

.footer_image {
height:auto;
}

.footer_logo img {
height:80px;
width:80px;
display:block;
padding-bottom:20px;
}

.footer_logo_grid {
display:grid;
justify-items: center;
width:100%;
}

.footer_list li {
margin-bottom:0;
}

.footer_padding{
padding:0 5%;

}

.padding_footer{
padding:0px 5%;
}

/* Footer end */



.full_width{
background:#fff;
}


/* Jumbo image */



.jumbo {
width: 100%;
min-height: 35vh;
}

.jumbo_inner{
display:grid;
min-height: 35vh;
width:100%;
grid-template-columns: auto 50% auto;
}

/* jumbo gridlines

.jumbo_inner > div {
text-align: center;
min-width:0px;
border:1px solid #fff;
}
*/


.jumbo h1{
text-align:center;
font-weight:700;
margin:0 auto;
color: #fff;
height:auto;
text-wrap: wrap;
line-height:100%;
font-size: 5vw; 
}

.jumbo_heading {
width:auto;
height:100%;
}

.jumbo_logo_heading{
display:grid;
width:100%;
place-self: center;
}

.jumbo_logo {
display:grid;
width:100%;
height:auto;
align-self: end;
justify-items: center;
}



.jumbo_logo img{
height:auto;
width:22%;
padding:3%;
}

.jumbo_outer{
padding-top:70px;
}

/* Main content */

main{
grid-column: 1 / 7;
}


/* Main content - client grid */


.main_clients {
background:#eceff3;
}

.main_client {
border:1px solid #bbb;
padding:30px;
}

.main_client img {
width:100%;
display:block;
}

.main_client_grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap:20px;
}

.main_clients_title {
width:100%;	
}

.main_clients_padding{
padding:0px 15% 10px 15%;
}

/* Main content block - image on left hand side  */


.main_image_left, .full_width_grey {
margin: 0 auto;
background:#eceff3;
}

.main_image_left_grid {
display:grid;
grid-template-columns: repeat(2, 1fr);
}

.main_image_left_text{
padding-left:20px;
}

.main_image_left_title {
grid-column: 1 / 3;
}


/* Main content block - image on right hand side  */


.main_image_right_grid{
display:grid;
grid-template-columns: repeat(2, 1fr);
margin: 0 auto;
gap:40px;
}


.main_image_right_title {
grid-column: 1 / 3;
text-align:right;
}



/* Menu - mobile version  */


.menu_mobile{
width:100%;
left:0px;
display:inline;
}

.menu_mobile_1{
position:absolute;
background-color: rgba(0, 31, 73, 0.9);
left:0px;
width:100%;
min-height: 100vh;
}	

.menu_mobile h1{
color:#fff;
}

.menu_mobile h3{
width:100%;
}

.menu_mobile_list li{
width:100%;
border-bottom:1px solid #bbb;
padding:15px 0px;
}

.menu_mobile_list a{
color:#fff;
}







/* Methods grid*/

.methods_grid {
display:grid;
grid-template-columns: repeat(5, 1fr);
width:100%;
padding-top:20px;
}

#methods_grid_1{
gap:40px;
}

#methods_grid_2{
gap:60px;
}

.methods_image_logo img{
height:110px;
width:110px;
margin:0 auto;
padding-bottom:10px;
}

.methods_image_photo img {
padding-bottom:10px;
margin:0 auto;
}

.methods_text{
text-align:center;
}


/* Nav  */

.nav_main, .nav_mobile {
position:fixed;
border-bottom: 1px solid #bbb;
z-index: 4;
width:100%;
background-color: rgba(0, 31, 73, 0.9);
transition: all 1s;
}

/* Nav additional class javascript - do not delete */



#nav_mobile_close {
display:none;
}

#nav_mobile_close, #nav_mobile_open {
justify-self: end;
width:50px;
height:50px;
}

.nav_grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
margin: 0 auto;
align-items: center;
text-align:center;
gap:20px;
}

.nav_grid_mobile {
display: grid;
grid-template-columns: repeat(2, 1fr);
}

.nav_item{
display:grid;
align-items: center;
}


.nav_item a {
color:#fff;
line-height:20px;
}



.nav_logo img {
width:50px;
height:50px;
xdisplay:block;
}

.nav_padding{
padding:10px;
}

/* Nav - mobile version  */

.nav_mobile {
display:none;
}

/* Our people */

.ourpeople{
padding-bottom:40px;
}


.ourpeople1{
xxbackground:#fff;
}

.ourpeople2{
padding:40px;
}

.ourpeople_grid{
display:grid;
grid-template-columns: auto 1fr;
gap: 40px;
}

.ourpeople_image {
display:grid;
margin: 0 auto;
}


.ourpeople_image img{
width:auto;
height:250px;
}


.our_people_job p{
color:#359de4;
font-weight:500;
}

.our_people_jobrole p{
font-weight:500;
}

.our_people_name {
font-weight:600;
}



/* Global padding */




.padding_global{
padding:0px 10%;
}

.padding_global_top_bottom{
padding:40px 0px 50px 0px;
}

.padding_main_image{
padding:40px 0px;	
}
	
	
	
/* Media queries */	
	
	

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

.methods_grid {
display:grid;
grid-template-columns: repeat(3, 1fr);
gap:120px;
}




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


.columns_x2 {
grid-template-columns: 1fr;
gap:0px;
}

.footer_grid{
grid-template-columns: 1fr 1fr 1fr 1fr;
grid-gap: 20px;
}

.footer_padding{
padding:0 2%;
}
	
.footer_grid_1{
grid-column: 1/5;
}

.footer_grid_2{
grid-column: 1/3;
}

.footer_grid_3{
grid-column: 3/5;
}

.footer_grid_1 iframe {
width:100%;
height:100%;
}

.jumbo_logo img{
width:16%;
}


.jumbo_inner{
grid-template-columns: auto 100% auto;
}

.jumbo h1{
font-size: 7vw; 
}



.main_client_grid {
grid-template-columns: repeat(2, 1fr);
}

.main_clients_padding{
padding:0px 20% 10px 20%;
}

.main_image_left_image {
grid-column: 1 / 3;
padding-bottom:0px;
}

.main_image_left_text {
grid-column: 1 / 3;
padding-left:0px;
padding-top:20px;
}

.main_image_right_title{
text-align:left;	
}

.main_image_right_image {
grid-column: 1 / 3;
}

.main_image_right_text {
grid-column: 1 / 3;
}

.main_image_right_grid{
gap:20px;
}

.methods_grid {
display:grid;
grid-template-columns: repeat(3, 1fr);
}

.ourpeople_grid{
grid-template-columns:1fr;
}

.ourpeople_image img{
height:200px;
}

.padding_global_top_bottom{
padding:30px 0px;
}

.padding_main_image{
padding:30px 0px;
}


}


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


.footer_grid{
grid-template-columns: 1fr;
}

.footer_grid_1, .footer_grid_2, .footer_grid_3{
grid-column: 1/5;
}


nav {
display:none;
}

#nav_mobile {
display:inline;
}

.padding_global{
padding:0px 5%;
}


}

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


.jumbo_logo img{
width:20%;
}

.jumbo h1{
font-size: 10vw; 
}


.methods_grid {
grid-template-columns: repeat(2, 1fr);
}


.methods_grid_media_query {
padding:0px 10%;
}



}

