@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;700;900&display=swap');
:root {
 --primry-color: #0859a5;
 --secondery-color: #60c7da;
}
.pColor {
 color: var(--primry-color);
}
.sColor {
 color: var(--secondery-color);
}
html {
 scroll-behavior: smooth;
 font-size: 100%;
}
*,
::after,
::before {
 margin: 0;
 box-sizing: border-box;
}
body {
 width: 100%;
 margin: 0;
 padding: 0;
 background-color: #f7f7f7;
 overflow-x: hidden; /* Hide horizontal scrollbar */
 overflow-y: auto; /* Add vertical scrollbar */
}
body {
 font-family: 'Open Sans', sans-serif;
 font-weight: 400;
 line-height: 20px;
}
.clearfix {
 overflow: auto;
}
h1,
h2,
h3,
h4,
h5,
h6 {
 font-family: 'Roboto', sans-serif;
 font-weight: 700;
 line-height: 24px;
 padding-bottom: 1.2rem;
}

a {
 color: #b7b7b7;
 text-decoration: none;
 font-weight: normal;
}
p {
 font-family: 'Roboto', sans-serif;
 color: #4d4643;
 line-height: 1.6rem;
 font-weight: 400;
}
.main-header {
 position: relative;
 width: 100%;
 height: 100vh;
 color: #fff;
}
.hero {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 width: 100%;
 background-color: #333;
 z-index: 2;
}
.overlay {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 width: 100%;
 /* background: rgb(2, 0, 36);
 background: linear-gradient(159deg, rgba(2, 0, 36, 1) 0%, rgba(4, 4, 54, 1) 35%, rgba(0, 212, 255, 1) 100%); */
 background-color: rgba(0, 0, 0, 0.5); /* Black background with opacity */
 opacity: 6;
 z-index: 3;
}
#head-container {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 display: flex;
 flex-direction: column;
 justify-content: space-between;
 width: 100%;
 color: #fff;
 z-index: 5;
}
.withe {
 color: #fff;
}
.opc {
 background-color: rgba(255, 255, 255, 0.66);
}
/*---------------- Top Navigation Bar ----------------*/
nav {
 display: flex;
 justify-content: space-between;
 width: 100%;
 margin-top: 0;
}
nav .nav-logo {
 width: 260px;
 margin: 1rem 1rem;
}
nav .nav-list {
 display: none;
 margin-top: 0;
 margin-right: 4rem;
}
nav .nav-list .social-nav {
 margin-top: 0px;
 margin-right: 4rem;
}
nav .nav-list .social-nav ul {
 display: flex;
}

nav .nav-list .social-nav ul {
 margin: 0;
 padding: 0;
}
nav .nav-list .social-nav ul li {
 list-style: none;
 display: inline-block;
 background: #08325d;
 padding: 100px 10px 5px 10px;
 margin: 2px;
 opacity: 0.5;
}
nav .nav-list .social-nav ul li:hover {
 opacity: 1;
}

/*---------------- Hero Container ----------------*/
.hero-containter {
 width: 100%;
 background-color: #ccc;
 height: 25rem;
}
.welcome {
 padding: 1.2rem;
 width: 100%;
 -webkit-font-smoothing: antialiased;
 color: #fff;
}
.welcome h1 {
 font-size: 20px;
 line-height: 22px;
 padding: 0;
 margin: 0;
 color: #b7b7b7;
 margin-bottom: 16px;
}
.welcome h2 {
 font-size: 28px;
 line-height: 30px;
 padding: 0;
 margin-bottom: 16px;
}

.welcome p {
 font-size: 1.4rem;
 line-height: 2rem;
 font-weight: 300;
 color: #fff;
}
/*----------------- Hero Bottom ---------------------*/
.hero-bottom {
 display: flex;
 align-items: center;
 padding-left: 0.5rem;
 width: 100%;
}
.bottom-logo {
 margin-right: 5px;
 padding-bottom: 5px;
 width: 120px;
}
.hero-bottom a {
 display: inline-block;
 margin-left: 10px;
 padding-left: 5px;
 padding-bottom: 5px;
 border-left: #b7b7b7 solid 1px;
}

.hero-bottom a.active {
 color: #ffa800;
}
/* ------------------------ Hero Slide Show -------------------*/

#all_slides {
 position: relative;
 height: 100vh;
 padding: 0px;
 margin: 0px;
 list-style-type: none;
}

.slide {
 position: absolute;
 left: 0px;
 top: 0px;
 width: 100%;
 height: 100%;
 opacity: 0;
 z-index: 1;
 -webkit-transition: opacity 1s;
 -moz-transition: opacity 1s;
 -o-transition: opacity 1s;
 transition: opacity 2.5s;
}

.active {
 opacity: 1;
 z-index: 2;
}

.slide {
 box-sizing: border-box;
 background: #333;
 color: #fff;
 background-size: cover;
}

.slide:nth-of-type(1) {
 background-image: url('../../images/bg/slide-5.jpg');
 background-size: cover;
 background-position: 50% 50%;
 background-repeat: no-repeat;
}

.slide:nth-of-type(2) {
 background-image: url('../../images/bg/slide-2.jpg');
 background-size: cover;
 background-position: 50% 50%;
 background-repeat: no-repeat;
}

.slide:nth-of-type(3) {
 background-image: url('../../images/bg/slide-3.jpg');
 background-size: cover;
 background-position: 50% 50%;
 background-repeat: no-repeat;
}

.slide:nth-of-type(4) {
 background-image: url('../../images/bg/slide-4.jpg');
 background-size: cover;
 background-position: 50% 50%;
 background-repeat: no-repeat;
}

/*--------------- Responsive ------------------------*/
main {
 margin: 0;
 padding: 0;
 width: 100%;
 height: 100%;
 background-color: #f7f7f7;
}
section {
 box-sizing: border-box;
 width: 100%;
 margin: 1.6rem 0;
 padding-bottom: 0.7rem;
}
.section-info {
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: center;
 max-width: 800px;
 margin-top: 1.8rem;
 padding: 1.2rem;
 background-color: rgba(255, 255, 255, 0.66);
 color: var(--primry-color);
}
#about {
 background-repeat: no-repeat;
 background-position: 0 0;
}
.svgbg {
 fill-opacity: 0.9;
}
.container {
 max-width: 1400px;
 margin: auto;
}
.row {
 display: flex;
 flex-direction: column;
 justify-content: center;

 gap: 0.4rem;
 padding-top: 20px;
}
.row::after {
 content: '';
 clear: both;
 display: table;
}
#services {
 background-image: url(../../images/bg/slide-4.jpg);
 background-attachment: fixed;
 background-position: center;
 background-repeat: no-repeat;
 -webkit-background-size: cover;
 -moz-background-size: cover;
 -o-background-size: cover;
 background-size: cover;
 padding-bottom: 1.5rem;
}
/*------------------ Cards Styles -----------------*/
.flex-col {
 flex-direction: column;
}
.flex-row {
 flex-direction: row;
}
.card {
 display: flex;
 flex-direction: column;
 flex-shrink: inherit;
 margin-top: 1rem;
 width: 100%;
 height: 100%;
 background-color: #fff;
 border-radius: 0.8rem;
 box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}
.card > div {
 padding: 1rem;
}
.card .card-header {
 display: flex;
 flex-direction: column;
 align-items: start;
 justify-content: end;
 height: 200px;
 width: 100%;
 overflow: hidden;
 border-top-left-radius: 10px;
 border-top-right-radius: 10px;
 background-repeat: no-repeat;
 background-size: cover;
 background-position: center;
 background-color: rgba(0, 0, 0, 0.09);
 background-blend-mode: overlay;
}

.card h2 {
 font-size: 1.8rem;
 font-weight: 900;
}

.card-header h3,
.story-img h3 {
 font-size: 1.8rem;
 font-weight: 700;
 color: #fff;
 text-shadow: 2px 4px 4px #000;
}
.card-body {
 flex-direction: column;
 flex: 1;
 justify-content: space-between;
}
.card-footer {
 border-bottom-right-radius: 10px;
 border-bottom-left-radius: 10px;
 border-top: #f5f5f5 solid 1px;
}

.card-link {
 display: inline-flex;
 align-items: center;
 color: var(--primry-color);
}
.card-title {
 display: flex;
 align-items: center;
 background-color: #f5f5f5;
 border-radius: 0.6rem;
 color: var(--primry-color);
 font-size: 1.6rem;
 margin-bottom: 1rem;
 padding-bottom: 0.6rem;
}
.card-title span {
 display: block;
 margin-right: 0.6rem;
 width: 100px;
}
.story-img {
 display: flex;
 flex-direction: column;
 align-items: start;
 justify-content: end;
 width: 100%;
 min-height: 200px;
 background-repeat: no-repeat;
 background-size: cover;
 background-position: center;
 background-blend-mode: overlay;
 border-radius: 10px;
}

.story-info h3 {
 margin-top: 0.8rem;
 padding-bottom: 1.2rem;
 color: var(--primry-color);
}
.card-info {
 padding: 0.4rem;
 padding-inline: 1rem;
}
.xCrd-header {
 display: flex;
 align-items: center;
}
.xCrd-header-img {
 width: 150px;
 height: 150px;
}
.xCrd-header-img img {
 border: 1px solid #ddd; /* Gray border */
 border-radius: 4px; /* Rounded border */
 padding: 5px; /* Some padding */
 width: 150px; /* Set a small width */
}
.xcard-title {
 display: flex;
 align-items: center;
 width: 100%;
 height: 150px;
 margin-left: 0.9rem;
}
.text-center {
 text-align: center;
}
/*-------------------------------------------------*/
.menu ul {
 list-style-type: none;
 margin: 0;
 padding: 0;
}

.menu li {
 padding: 8px;
 margin-bottom: 7px;
 background-color: #33b5e5;
 color: #ffffff;
 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

.menu li:hover {
 background-color: #0099cc;
}

.aside {
 background-color: #33b5e5;
 padding: 15px;
 color: #ffffff;
 text-align: center;
 font-size: 14px;
 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

.footer {
 background-color: #0099cc;
 color: #ffffff;
 text-align: center;
 font-size: 12px;
 padding: 15px;
}
/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
 position: fixed;
 display: flex;
 align-items: center;
 justify-content: center;
 visibility: hidden;
 opacity: 0;
 right: 15px;
 bottom: 15px;
 z-index: 996;
 background: var(--primry-color);
 width: 40px;
 height: 40px;
 border-radius: 4px;
 transition: all 0.4s;
}

.back-to-top span {
 font-size: 28px;
 font-weight: 900;
 color: #fff;
 line-height: 0;
}

.back-to-top:hover {
 background: var(--secondery-color);
 color: #fff;
}

.back-to-top.active {
 visibility: visible;
 opacity: 1;
}

.opc {
 background-color: rgba(255, 255, 255, 0.75);
}

/* For mobile phones: */
[class*='col-'] {
 padding: 15px;
}
[class*='col-'] {
 width: 100%;
}
[class*='col-'] {
 padding: 0.4rem;
}

@media only screen and (min-width: 768px) {
 .row {
  flex-direction: row;
 }
 /* For desktop: */
 .col-100 {
  width: 100%;
 }
 .col-50 {
  width: 50%;
 }
 .col-33 {
  width: 33%;
 }
 .col-25 {
  width: 25%;
 }
}

@media only screen and (min-width: 912px) {
 html {
  font-size: 100%;
 }
 /* For tablets: */
 .col-100 {
  width: 100%;
 }

 .col-75 {
  width: 75%;
 }
 .col-66 {
  width: 66%;
 }
 .col-50 {
  width: 50%;
 }
 .col-33 {
  width: 33%;
 }
 .col-25 {
  width: 25%;
 }
 .nav-list {
  display: block;
 }
 .welcome {
  margin-left: 12rem;
  max-width: 45rem;
 }
 nav .nav-logo {
  width: 24rem;
 }
 .welcome h1 {
  font-size: 28px;
  line-height: 35px;
 }
 .welcome h2 {
  font-size: 60px;
  line-height: 66px;
 }
}
