
/*M RAHMAN, TO, ON CA
October 05,  Twenty24
mobile first-hamburger menu 
local font-Roboto
-----*/


*, 
*::before, 
*::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	font-family: inherit;
	font-weight: inherit;
    -webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}

::selection {
	background: var(--clr-yellow);
	color: var(--clr-black);
}

::-moz-selection {
	background: var(--clr-yellow);
	color: var(--clr-black);
}




@font-face {
	font-family: "canfont";
	src: local('canfont'), url("../canfont/fonts/canfont.woff") format("woff");     
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}




/*--My local Font Set
created on Oct 05, Twenty24, TO CA----
Regualr, Bold, medium & Black*/

@font-face {
    font-family: 'lato';
	src: local('lato'), url('../latofont/lato-regular-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
	font-display: swap;
}

@font-face {
    font-family: 'Roboto';
	src: local('Roboto'), url('../robotofont/Roboto-Regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
	font-display: swap;
}

@font-face {
    font-family: 'poppins';
    src: local('poppins'), url('../poppins/poppins-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
	font-display: swap;
}



:root {	
	--ff-primary: 'Lato', Arial, Sans-serif;
	--ff-iconic: 'canfont';
	--fw-1: 400;
	--fw-2: 500;
	--fw-3: 600;
	--fw-4: 700;
	--clr-primary: #585555;
	--clr-light: #74707A;
	--clr-black: #444444;
	--clr-white: #ffffff;
	--clr-red: #fa4d18;
    --clr-orange: #fa7b13;
	--clr-maroon: #5c185c;	
	--clr-blue: #1b57fd;
	--clr-green:#104cf3;
	--clr-yellow: #FFFF09;
	--clr-turquoise: #09bfc5;
	--clr-nav: #ececec;
	--clr-bg: #fdfdfd;
	--clr-footer: #f5fbfc;
	
}

html,
body { 
	font-size:1.0125em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-wrap: break-word;
	word-break: break-word;
	word-wrap: break-word;
	scroll-behavior: smooth;
}

body {
	margin: 0;
	padding: 0;
	font-family: var(--ff-primary);
	font-weight: var(--fw-1);
	background: var(--clr-bg);
	background-image: url(../img/bg.jpg) repeat;
	text-rendering: optimizeSpeed;
	min-height: 100vh;
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
}





/* Main body SECTIONS  begin bellow twenty24--*/



/* THE MOST BASIC PRIMARY OUTLINE--------------------- */
.the-page-wrapper {
    width: auto;
    margin: 0 0;
    padding: 0 0;
    background: var(--clr-bg);
}



.the-page-wrapper-intro {
    width: auto;
    margin: 0 0;
    padding-block-end: min(10.25rem, 7.5rem);
    background: var(--clr-bg);
    }
    
     
.the-page-wrapper-main {
        width: auto;
        margin: 0 0;
        padding-block: 10.5rem;
        background: var(--clr-yellow);
     }
            


.the-page-wrapper-yellow {
        width: auto;
        margin: 0 0;
        padding-block: min(7.5rem, 10.5rem);
        background: var(--clr-bg);
    }


.the-page-wrapper-footer {
        width: auto;
        margin: 0 0;
        padding-block: min(15.125vh, 20.125vh);
        background: var(--clr-footer);
        }






.the-page-container {
	width: min(65rem, 100vw - 10.5vw);
	margin-inline: auto;
	padding: 0 0;
	}


    /*--header wrapper oct 05, 2024--*/

	.the-header-wrapper {
		height: auto;
		position: -webkit-sticky; /* Safari */
		position: sticky;
		z-index: +555;
		top: 0;
		margin: 0 0;
		padding-block: 1.125rem;
		background: var(--clr-bg);
		display: flow-root;
		
	}
	
	
	
		
	.the-header-container {	
		margin: 0 0;
		padding: clamp(1.125rem, 1.25rem + 1.125vh, 2.125rem) 0;
		display: grid;
		grid-auto-flow: column;
		justify-content: space-between;
		place-items: start;
		grid-gap: 2.5em;
		-webkit-transition: all 0.5s ease-in-out;
		-o-transition: all 0.5s ease-in-out;
		transition: all 0.5s ease-in-out;
		}

	
		.the-header-container > * {
			width: auto;
		}



	/*--custom navbar menu-------may 2023------*/
	.the-header-container .navbar-items {
		display: grid;
		grid-auto-flow: column;
		justify-content: space-between;
		width: 100%;
	}

	.the-header-container .navbar-items ul li {
		list-style: none;
		outline: 0;	
	}
	
	.the-header-container .navbar-items ul {
	
		display: grid;
		grid-auto-flow: column;
		grid-gap: 1.45rem;
		display: -moz-inline-stack;	
		justify-content: space-between;
		place-items: center;
		
		}
	
	.the-header-container .navbar-items li {
		padding: 0 0;
		border: 0;
		list-style: none;
		display: -moz-inline-stack;
		color: var(--clr-lighter);
	}
	
	.the-header-container .navbar-items li:hover {
	  transform: scale(1.0);
	  transition: all 0.3s ease-in-out;
	}
	
	 .the-header-container .navbar-items a {
		font-size: clamp(0.95rem, 0.20rem + 0.75vw, 1.08rem);
		color: var(--clr-light);
		text-decoration: none;
	}
	
	
	
	
	.the-header-container .navbar-items a:hover,
	.the-header-container .navbar-items a:focus {
		text-decoration: none;
		font-weight: var(--fw-1);
		color: var(--clr-red);
		}
	
	
	.navbar-items li:nth-child(3)::after {
			content: '';
			display: block;
			width: 100%;
			position: relative;
			height: 0.25rem;
			margin: 0;
			bottom: 1.75rem;
			background-color: var(--clr-light);
			transition: background ease-in-out 250ms linear;
			}
			
		.navbar-items li:nth-child(3):hover::after {
			background-color: var(--clr-red);
			}
	
	
/*---header-wrapper-ended-above------*/
	

#the-brand {
	font-weight: var(--fw-1);
	font-size: clamp(1.0275rem, 0.25rem + 1.010vw, 1.25rem);	
	margin: 0 0;
	padding: 0 0;
	display: grid;
	grid-auto-flow: column;
	grid-gap: clamp(0.0125rem, 0.255rem + 1.125vw, 1.125rem);
}

#the-brand a {
	color: var(--clr-light);
	text-decoration: none;
	text-transform: capitalize;
	}
	
#the-brand :is(i) {
	color: var(--clr-red);
	text-decoration: none;
	font-size: clamp(1.145rem, 0.35rem + 1.75vw, 1.345rem);
	border-right: 0.0035rem solid var(--clr-light);
	padding: 0.145rem 0;
	align-content: end;
	display: inline-block;
	transform: translateY(-5.75%);
	transition: transform 500ms ease;
}

#the-brand :is(i:hover, a:hover) {
	color: var(--clr-light);
	
	}


#contact,
#question {
  padding-block: 1.10rem;
}


#question {
  border-bottom: 0.01rem dotted var(--clr-green);    
}

#contact a,
#question a {
  color: var(--clr-green);
  text-decoration: none;
  font-weight: var(--fw-2);
}

#contact a:hover,
#question a:hover {
  color: var(--clr-light);
  }








/*basic Setup above April 22, 2022, TO CA*/

.the-intro-container {
	width: 100%;
	max-width: 100%;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(35.5rem, 100%), 1fr));
	grid-column-gap: 1.125rem;
	
	align-items: start;
	margin-block-end: min(7.5vh, 5.5vh);
	padding: 0 0;
		
}


	
		
.the-main-container  {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(12.5rem, 100%), 1fr));
	grid-column-gap: 2.125rem;
	margin-block: min(25.5vh, 17.5vh);
	width: 100%;
	padding: 0 0;
	}

.the-main-container > div:nth-child(1) {
	grid-column: 1/3;
	grid-row: 1/2;
	margin: 0 0;
	padding: 0 0;
	}



	.the-main-container-yellow  {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(min(17.5rem, 100%), 1fr));
		grid-column-gap: 2.125rem;
		margin-block: min(12.5vh, 7.5vh);
		width: 100%;
		}
	
	.child-container {
	display: grid;
		grid-template-columns: repeat(auto-fit, minmax(min(8.5rem, 100%), 1fr));
		grid-column-gap: 2.125rem;
		margin: 0 0;
		width: 100%;
		}	
	
	
	










/*-the side-navbar--overlay screen-------*/
.the-sidenav {
	display: grid;
	grid: auto-flow / minmax(7.5vw, 1fr) minmax(35vw, 100%) minmax(7.5vw, 1fr);
	min-height: 85%;
	min-height: 85dvh;
	width: 0%;
	position: fixed;
	top: 0;
	right: 0;
	background: var(--clr-nav);
	overflow: hidden;
	transition: 0.5s ease-in-out;
	padding: 2.125rem 0;
	z-index: 999;
	justify-content: space-between;
	place-items: start;
	}

.the-sidenav > * {
	grid-column: 2 / 3;
	}
	
	

.the-sidenav .the-sidenav-header :is(h2) {
	font-size: clamp(1.25em, 2.125vw + .65rem, 2.65em);
	padding-block: 1.25rem;
	margin: 0 0 ;
	color: var(--clr-light);
    text-decoration: none;
}




.the-sidenav-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(12.5rem, 100%), 1fr));
	grid-gap: 2.5125rem;
	position: relative;
	width: 100%;	
	padding: 0 0;
	min-height: 55vh;
	min-height: 55dvh;
	place-content: center;
	justify-content: end;
	}

.the-sidenav-container :is(ul,li) {
	list-style: none;
	text-decoration: none;	
	margin: 0 0;
	width: 100%;
	border:0 0;
	outline: 0 0;
	text-align: right;
		
}




/*icons -navabr-menu & footer-------------------*/
.the-sidenav-container :is(a > i) {
	display: inline; 
	display: -moz-inline-stack;
	zoom: 1;
	font-family: var(--ff-iconic);
	text-decoration: none;
	font-size: clamp(1.525rem, 0.55rem + 1.65vw, 2.7125rem);
	color: var(--clr-green);
	padding: 0.525em 0;
	margin: 1.125rem 0.75rem 1.125rem 0;
	border-right: 0.005em solid var(--clr-light);
}


.the-sidenav-container :is(a > i:hover) {
	color: var(--clr-light);
	transform: translateY(-6.75%);
	transition: transform 500ms ease;
}

/*--icons-navbar-& footer---------end--*/





.the-sidenav  .closebtn {
  position: absolute;/*absolute/relative can be used*/  
  font-size: clamp(2.75rem, 2.25rem + 2.75vw, 5.5rem);
  font-weight: var(--fw-2);
  line-height: 1;
  padding: 2.25rem 0;
  text-decoration: none;
  color: var(--clr-black);
  top: 0;
  right: 0;
  z-index: 999;  
  }
  
  .the-sidenav  .closebtn::after {
  position: relative;/*absolute/relative can be used*/  
  font-size: clamp(2.75rem, 2.25rem + 2.75vw, 5.5rem);
  font-weight: var(--fw-2);
  content: " ";
  display: block;
  width: 3.99rem;
  height: 0.165rem;
  background-color: var(--clr-green); 
  transform: rotate(180deg);
	margin-block: 1.85rem;
  }
  
	

	
/*--card scripts below--April 2024, TO--*/	
.card {
	position: relative;
	width: 100%;
	margin-block: clamp(1.725rem, 1.25rem + 2.125vh, 2.425rem);
	 }
  
  .card-image {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
  }
  
  .card-container {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 100%;
	height: 100%;
	width: 0;
	transition: .4s ease;
	background-color: var(--clr-yellow);
	overflow: hidden;
  }
  
  .card:hover .card-container {
	right: 0;
	width: 100%;
	opacity: 0.9525;
	transition: 0.5s ease;
  }
  
  .card-info {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	
  }
  .card-info h1{
	  font-size: clamp(1.85rem, 1.125vw + 1.125rem, 2.85rem);
	  color: var(--clr-light);
	  line-height: 0.9;
	  font-weight: var(--fw-1);
  }
  
  
  .card-info :is(a > i) {
	  text-decoration: none;
	  display: -moz-inline-stack;
	  display: inline-block;
	  font-size: clamp(2.75rem, 1.25rem + 2.5vw, 3.125rem);	
	  padding: 0.5125rem 0;
	  border-right: 0.0010rem solid var(--clr-lighter);
	  color: var(--clr-white);
	  text-transform: none;
	  }
	  
	  .card-info :is(a > i:hover) {
	  color: var(--clr-light);
	  border-right: 0.0010rem solid var(--clr-lighter);
	  }
  
  
/*--card-ended above---------*/	



/*--long arrow icon-----*/
.long-arrow-right {
	display: inline-block;
	position: relative;
	width: 25px;
	height: 25px;
	border-top: 3px solid var(--clr-green);
	border-left: 3px solid var(--clr-green);
	transform: rotate(+180deg); 
}



.long-arrow-right::before {
  content: "";
  display: block;
  width: 2.5px;
  height: 45px;
  background-color: var(--clr-light);
  transform: rotate(-45deg) translate(15px, 3px);  
}

.long-arrow-right:hover {
	transform: translateY(-6.75%);
	transition: transform 500ms ease;
	}
/*--long-arrow-right--*/



body :where(a, a:active) {
	color: var(--clr-green);
	text-decoration: none;
	}
	
body :where(a:hover) {
	text-decoration: none;
	color: var(--clr-black);
}
	

body :where(ul, li) {
	width: 100%;
	list-style: none;
	border: 0 0;
	margin: 0 0;
}

body :where(li) {
	width: 100%;
	font-size: clamp(0.98rem, 0.75vw + 0.25rem, 1.6rem);
	font-weight: var(--fw-1);
	line-height: 1.5;
	padding: 0.6em 0;
	color: var(--clr-light);
	border-top: 0.010em dotted #858486;
}

* :is(body, section, footer) p {
	color: var(--clr-light);
	font-family: var(--ff-primary);
	font-size: clamp(1.05rem, 0.15rem + 0.65vw, 1.08rem);
	line-height: 1.5;
	padding-bottom: 2.25rem;
	word-spacing: 0.01em;
	letter-spacing: 0.01em;
	text-rendering: optimizeLegibility;
	}
	

	
* :where(section, .the-page-wrapper) a> i {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	text-decoration: none;
	font-size: clamp(1.525rem, 0.5rem + 1.75vw, 2.65rem);
	margin: 0 1.10rem 1.25rem 0;
	padding: 0.75rem 0;
	border-right: 0.015rem dotted var(--clr-light);
	color: var(--clr-green)
}

* :where(section, .the-page-wrapper) a > i:hover {
	color: var(--clr-light);
	-webkit-transform: translateY(-2.75rem);
	transform: translateY(-2.75rem);
	transition: transform 0.5s ease-out;
	}
	
.iconic :is(a) {
	text-decoration: none;
	font-size: clamp(2.75rem, 1.5rem + 3.75vw, 4.785rem);
	color: var(--clr-green);
	font-weight: var(--fw-1);	
}
		
.iconic :is(i) {
	color: var(--clr-red);
	text-decoration: none;
	font-size: clamp(2.110rem, 1.5rem + 3.625vw, 3.425rem);
	border-right: 0.0035rem dotted var(--clr-light);
	padding: 1.525rem 0;
	margin: 0 0;
	
	display: inline-block;
	transform: translateY(6.75%);
	transition: transform 500ms ease;
}

.iconic :is(i:hover, a:hover) {
	color: var(--clr-light);
	
	}

h1, h2, h3, h4 {
	text-align: left;
	line-height: 1.112;
	margin-bottom: 1.25rem;
	text-transform: normal;
	display: block;
	text-rendering: optimizeLegibility;
	color: var(--clr-light);
  }
  
  h1 {
	
	font-size: clamp(2.125rem, 1.125rem + 3.25vw, 3.725rem);
	font-weight: var(--fw-1);	
	}
	
	span {
	font-weight: var(--fw-1);
	color: var(--clr-green);
	
	}
	
	h2 {
	font-size: clamp(1.625rem, 1.10rem + 2.75vw, 2.825rem);
	}
	
	h3 {
	font-size: clamp(1.10rem, 1.05rem + 1.5vw, 2.5rem);
	font-weight: var(--fw-1);
	}
	
	h4 {
	font-size: clamp(1.07rem, 0.95rem + 1.5vw, 1.25rem);
	font-weight: var(--fw-2);
	letter-spacing: 0.01rem;
	}
	

img,
iframe,
picture,
video {
	width: 100%;
	max-width: 100%;
	margin-bottom: 1.25rem;
	display: block;
	object-fit: cover;
	}
	
	img:hover,
    picture:hover,
    video:hover {
	transform: translateY(-6.75%);
	transition: transform 500ms ease;
	opacity: 0.7;
	}



/*--footer-----*/
.the-footer-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(15.75rem, 100%), 1fr));
	width: 100%;
	grid-column-gap: 2.5rem;
	grid-row-gap: min(10.5vh, 15.5vh);
	margin: 0 0;
}

.the-footer-container :is(a > i) {
	color: var(--clr-green);
	margin-right: 0.5em;
	font-size: clamp(1.45rem, 0.5rem + 1.5vw, 2.5rem);
	padding-block: 0.75em;
	text-decoration: none;
	border-right: 0.005em dotted rgb(139, 149, 158);
}


.the-footer-container :is(a > i:hover) {
	color: var(--clr-black);
}

/*--footer css ended here --- */








@media only screen and (max-width: 48rem) {

.the-header-container .navbar-items ul li {
	display: none;
	}

	
	
.the-main-container > div:nth-child(2n + 2) {
	display: none;
	}

.the-main-container-yellow > div:nth-child(2n + 2) {
		display: none;
		} 
   



/*-------hamburger icons---APR TWENTY 24----TO CA--*/
#hamburger-icon {
	display: inline-block;
	cursor: pointer;
	justify-content: center;
	place-content: center;  
	}

.bar1, .bar2, .bar3 {
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;	
	height: 0.19rem;
	margin: 0.35rem 0;
	}

.bar1 {
	width: 2.75rem;
	background-color: var(--clr-light);
	}
	
.bar2 {
	width: 1.85rem; 
	background: var(--clr-green);
	}	

.bar3 {
	width: 2.75rem;
	background-color: var(--clr-light);
	}

.open .bar1 {
	-webkit-transform: rotate(-45deg) translate(-0.45em, 0.45em);
	transform: rotate(-45deg) translate(-0.45em, 0.45em);
	width: 2.35rem;
	height: 0.19rem;
	}

.open .bar2 {
	opacity: 0;
}
.open .bar3 {
	-webkit-transform: rotate(45deg) translate(-0.45em, -0.45em);
	transform: rotate(45deg) translate(-0.45em, -0.45em);
	width: 2.35rem;
	height: 0.19rem;	
	}

/*------hamburger icons end here-------------*/
		
}





/*contact form-------------begin here May 24, 2022*/

.form-container {
	min-width: 70%;
	max-width: 100%;
	padding: 0 0;
	margin: 0 0;
	
	}
	
.form-wrapper .form-container :is(h2, h3, p) {
	color: var(--clr-light);
	font-size: clamp(1.015rem, 0.5rem + 0.75vw, 1.35rem);
	font-weight: var(--fw-2);
}

.form-wrapper {
	width: 100%;
	max-width: 100%;
	display: grid;
	grid-auto-flow: row;
	margin: 0 0;
	padding: 0 0;
	
	/*off today -grid-template-columns: repeat(auto-fit, minmax(min(12.5rem, 100%), 1fr));
	grid-column-gap: clamp(1.5rem, 1.5rem + 1.75vw, 3.75rem);
	justify-content: center;
	place-content: center;
	--*/
	
	}
	
.form-wrapper .form-input {
	width: 100%;	
	padding: 1.25rem 0;
	justify-content: center;
	place-items: start;
}

.form-input input {
	width: 100%;
	font-size: clamp(1.010rem, 0.45rem + 0.75vw, 1.25rem);
	background: var(--clr-yellow);
	border: none;
	outline: none;
	border: 0.0010rem solid #d8ccd8;
	transition: 0.5s linear;
	overflow: hidden;
	background: #F0F0F0;
	padding: 0.35rem;
}

.form-wrapper  .form-input input:focus,
.form-wrapper  .form-input input:valid {
	padding: 1.135rem;
	background: var(--clr-yellow); 
	outline: none;
	border: none;
	margin-top: 0.5rem;
}

.form-wrapper  .form-input label {
	
	top: 0;
	left: 0;
	font-size: clamp(1.015rem, 0.25rem + 0.85vw, 1.125rem);
	color: var(--clr-light);
	transition: 0.5s linear;
	
	} 


.form-input textarea {
	width: 100%;
	font-size: clamp(1.0rem, 0.25rem + 0.5vw, 1.15rem);
	color: var(--clr-blue);
	line-height: 1.4;	
	outline: none;
	border: none;
	background: #F0F0F0;
	transition: 0.5s linear;
	overflow: hidden;
	margin-top: 0.85rem;
    padding: 0.75rem;
}

.form-wrapper  .form-input textarea:focus,
.form-wrapper  .form-input textarea:valid { 
	padding: 1.135rem;
	background: var(--clr-yellow); 
	outline: none;
	border: none;
	margin-top: 0.5rem;
}


.form-container input[type="submit"]{
	background: var(--clr-light);
	display: inline-flex;
	justify-content: center;
	justify-items: center;
	width: 70%;
	margin-block: 4.5vh;
	padding: 2.15vh 2.15vw;
	font-size: clamp(1.250rem, 0.35rem + 1.45vw, 1.7125rem);
	color: var(--clr-white);
	font-weight: var(--fw-2);
	letter-spacing: none;
	border: none;
	outline: none;
	cursor: pointer;
}

.form-container input[type="submit"]:hover{
background: var(--clr-yellow);
color: var(--clr-blue);
}
/* form-container*/




/*--custom-button-begin below---*/
.btn {
	background: var(--clr-blue);
	width: 15.75rem;
	display: inline-flex;
	justify-content: center;
	justify-items: center;
	padding: 1.125rem;
	font-size: clamp(1.15rem, 0.20rem + 1.6vw, 1.55rem);
	color: var(--clr-white);
	font-weight: var(--fw-2);
	border: none;
	outline: none;
	cursor: pointer;
}

.btn:hover{
background: var(--clr-light);
color: var(--clr-white);
}