@import url('https://fonts.googleapis.com/css2?family=Fugaz+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;600;700;800&display=swap');

:root {
	--blue: #368CE7;
	--blue-dark: #1666BA;
	--blue-light: #004527;

	--red: #FF0000;
	--red-dark: #A70000;
	--red-light: #FF5252;

	--green: #76BA1B;
	--green-dark: #004527;
	--green-light: #ACDF87;

	--orange: #ff7400;
	--orange-dark: #ff4d00;
	--orange-light: #ff9a00;

	--black: #000;
	--dark: #333;
	--light: #666;

	--white: #fff;
	--white-dark: #ccc;
	--white-light: #eee;
}

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

p {
	margin: 0;
}

a,
button,
input,
textarea {
	outline: 0;
	transition: all .5s ease;
}

a {
	text-decoration: none !important;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: "Rubik", serif;
	font-weight: 400;
	font-style: normal;

}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Fugaz One", serif;
	font-weight: 800;
}


header,
.banner,
.section,
.h2,
.para,
.flexbox,
footer {
	width: 100%;
	float: left;
}


header {
	padding: 10px 0;
	background-color: #004527;
	position: fixed;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .1);
	z-index: 3;
	color: #fff;
}

header .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

nav {
	background: #687586;
	color: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 1000;
	width: 100%;
	padding: 0px 0;
	position: fixed;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .3);
}

nav .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.logo {
	font-size: 35px;
	font-weight: bold;
	font-family: "Fugaz One", serif;
	color: #ffffff;
	padding: 5px 0;
}

.menu {
	display: flex;
	gap: 10px;
}

.menu a,
.menu a *,
.menu a :after,
.menu a :before,
.menu a:after,
.menu a:before {
  border: 0 solid;
  box-sizing: border-box;
}

.menu a:disabled {
  cursor: default;
}

.menu a:-moz-focusring {
  outline: auto;
}
.menu a [hidden] {
  display: none;
}

.menu a {
  box-sizing: border-box;
  display: block;
  font-weight: 900;
  padding: 1.5rem 7rem;
  perspective: 800px;
  position: relative;
  transform-style: preserve-3d;
    display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.menu a span {
  background: #596575;
  color: #ffffff;
  display: grid;
  inset: 0;
  place-items: center;
  position: absolute;
  transform: rotateX(0deg);
  transform-origin: top center;
  transition: 0.2s;
}

.menu a:hover span {
  transform: rotateX(35deg);
}

.menu a:after,
.menu a:before {
  background: #4c5765;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: rotateX(0deg);
  width: 100%;
  z-index: -1;
}

.menu a:after {
  background: #444e5c;
  width: 0;
}

.menu a:hover:after {
  -webkit-animation: progress-bar 1.2s;
  animation: progress-bar 1.2s;
}

@-webkit-keyframes progress-bar {
  0% {
    opacity: 1;
    width: 0;
  }

  10% {
    opacity: 1;
    width: 15%;
  }

  25% {
    opacity: 1;
    width: 25%;
  }

  40% {
    opacity: 1;
    width: 35%;
  }

  55% {
    opacity: 1;
    width: 75%;
  }

  60% {
    opacity: 1;
    width: 100%;
  }

  to {
    opacity: 0;
    width: 100%;
  }
}

@keyframes progress-bar {
  0% {
    opacity: 1;
    width: 0;
  }

  10% {
    opacity: 1;
    width: 15%;
  }

  25% {
    opacity: 1;
    width: 25%;
  }

  40% {
    opacity: 1;
    width: 35%;
  }

  55% {
    opacity: 1;
    width: 75%;
  }

  60% {
    opacity: 1;
    width: 100%;
  }

  to {
    opacity: 0;
    width: 100%;
  }
}

.menu-btn {
	display: none;
	flex-direction: column;
	justify-content: space-between;
	width: 30px;
	height: 22px;
	cursor: pointer;
	z-index: 3;
}

.menu-btn span {
	height: 3px;
	width: 100%;
	background: #ffffff;
	border-radius: 2px;
	transition: 0.4s;
}

/* Cross Icon Animation */
.menu-btn.open span:nth-child(1) {
	transform: rotate(45deg) translate(6px, 6px);
}

.menu-btn.open span:nth-child(2) {
	opacity: 0;
}

.menu-btn.open span:nth-child(3) {
	transform: rotate(-45deg) translate(6px, -6px);
}

/* Mobile */
@media (max-width: 768px) {
	.menu {
		position: fixed;
		top: 0;
		right: -100%;
		width: 220px;
		height: 100%;
		background: #687586;
		flex-direction: column;
		padding-top: 70px;
		transition: 0.3s;
		margin-right: 0;
		padding-right: 0;
		padding-left: 0;
		align-items: flex-start;
	}

	.menu a {
		
		font-size: 14px;

	}

	.menu.active {
		right: 0;
	}

	.logo {
		font-size: 25px;
		margin: 10px 0;
	}

	.menu-btn {
		display: flex;
	}
}

.para-cu {
	font-size: 14px;
	font-weight: 400;
}
.container {
	width: 100%;
	max-width: 1350px;
	padding: 0 15px;
}
.banner {
	background: url(../img/banner-img.jpg) center;
	background-size: cover;
	padding: 20px 0;
	position: relative;
}

.banner .container {
	min-height: 350px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	color: #fff;
	text-align: center;
}

.inner-banner {
	padding: 20px 0 20px 0;
}

.inner-banner .container {
	min-height: 200px;
}
.content{
	background-color: rgba(0, 0, 0, 0.7);
	padding: 20px;
	float: left;
}
.banner h1 {
	font-size: 40px;
	margin: 0 0 10px;
}


.banner p {
	font-size: 15px;
	line-height: 24px;
	margin: 0 0 20px;
}

.section {
	padding: 20px 0;
	position: relative;
}

.section .container {
	position: relative;
	z-index: 2;
}

.inner-banner .flexbox img {
	width: 30%;
}
.h2 {
	font-size: 30px;
	margin: 0 0 15px;
}

.para {
	font-size: 14px;
	line-height: 23px;
	margin: 0 0 20px;
}

.para:last-child {
	margin: 0;
}
.c-1{
	color: #687586;
}
ol,
ol::before,
ol::after,
ol *,
ol *::before,
ol *::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box
}

ol {
	display: flex;
	grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
	margin-inline: auto;
	list-style: none;
	counter-reset: count;
	justify-content: space-between;
	flex-wrap: wrap;
}

/* card layout/styling */
ol>li {
	--card-background-color: #f0f0f0;
	--card-text-color: #0F0F0F;
	--card-border-radius: 0.5rem;
	--card-padding-block: 1.5rem;
	--card-padding-inline: 1rem;

	--outset-size: 0.75rem;
	--outset-background-color: #e5e5e5;

	--number-font-size: 3rem;
	--number-overlap: 0.5rem;
	--number-font-family: 'Oswald', sans-serif;
	--number-font-weight: 500;

	margin: var(--outset-size);
	margin-top: calc(var(--number-font-size) - var(--number-overlap));
	border-radius: var(--card-border-radius);
	padding-block: var(--card-padding-block);
	padding-inline: var(--card-padding-inline);

	color: var(--card-text-color);
	background-color: var(--card-background-color);
	box-shadow:
		inset 1px 1px 0px rgb(255 255 255 / .5),
		inset -1px -1px 0px rgb(0 0 0 / .25),
		calc(var(--outset-size) * .25) calc(var(--outset-size) * .25) calc(var(--outset-size) * .5) rgb(0 0 0 / .25);
	position: relative;
	counter-increment: count;
	width: 30%;
}

ol>li::after {
	content: counter(count, decimal-leading-zero);
	position: absolute;

	bottom: calc(100% - var(--number-overlap));
	left: 50%;
	transform: translateX(-50%);

	color: var(--accent-color);
	font-family: var(--number-font-family);
	font-weight: var(--number-font-weight);
	font-size: var(--number-font-size);
	line-height: 1;
	z-index: -1;
}

ol>li::before {
	content: "";
	position: absolute;
	width: calc(100% + (var(--outset-size) * 2));
	height: 100%;
	bottom: calc(var(--outset-size) * -1);
	left: calc(var(--outset-size) * -1);
	z-index: -1;

	border-bottom-left-radius: calc(var(--card-border-radius) + var(--outset-size));
	border-bottom-right-radius: calc(var(--card-border-radius) + var(--outset-size));

	background-color: var(--outset-background-color);

	background-image:
		linear-gradient(to left, var(--outset-background-color) calc(var(--outset-size) * 2), transparent 0),
		linear-gradient(135deg, var(--accent-color) 80%, var(--outset-background-color) 0);
}
.section1{
	background-color: #687586;
	color: #fff;
}
.flexbox {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 20px;
}

.flexbox:last-child {
	margin: 0;
}

.flexbox>p,
.flexbody {
	flex: 1;
}

.flexbox>p:first-child,
.flexbody:first-child {
	padding: 0 30px 0 0;
}

.flexbox>p:last-child,
.flexbody:last-child {
	padding: 0 0 0 30px;
}

.flexbox>img {
	width: 100%;
	max-width: 46%;
}

.center {
	width: 100%;
	float: left;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex-direction: column;
	margin: 0 0 20px;
}

.center:last-child {
	margin: 0 !important;
}

.container>img {
	width: 100%;
	float: left;
	margin: 0 0 20px;
}

.flexgroup {
	width: 100%;
	float: left;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 0 20px;
	gap: 10px;
}

.flexgroup:last-child {
	margin: 0;
}

.group {
	gap: 40px;
}

.flexgroupbox {
	width: 30%;
	padding: 30px;
	display: flex;
	justify-content: flex-start;
	flex-direction: column;
	color: #000000;
	background-color: #ffffff;
	border-right: 4px solid #363636;
	border-bottom: 4px solid #363636;
	box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
}

.center>img {
	width: auto;
	max-width: 100%;
}

.formsection {
	background: url(../img/img7.jpg) no-repeat center;
	background-size: cover;
	color: #fff;
	text-align: center;
	font-size: 16px;
	font-weight: 400;
}

.formsection:before {
	content: '';
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .2);
	backdrop-filter: blur(10px);
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}

.formsection .container {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 3;
}

.formsection .para {
	text-align: center;
	font-size: 28px;
	line-height: 1.5;
}

.formbox {
	width: 100%;
	float: left;
	max-width: 800px;
	background: #fff;
	padding: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.formfield {
	width: 49%;
	height: 50px;
	margin: 0 0 10px;
	padding: 0 10px;
	border: none;
	background: #f3f3f3;
	border: solid 1px #333;
	color: #000;
	font-size: 15px;
}

.formfield2 {
	width: 100%;
}

.textarea-cu {
	width: 100%;
	height: 100px;
	margin: 0 0 10px;
	padding: 10px;
	border: none;
	background: #f3f3f3;
	border: solid 1px #333;
	color: #000;
	font-size: 15px;
}

.formfield::placeholder,
.textarea-cu::placeholder {
	color: #333;
}

.formbutton {
	width: 100%;
	float: left;
	height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: none;
	background: #004527;
	color: #fff;
	cursor: pointer;
	outline: 0 !important;
}

footer {
	background-color: #687586;
	text-align: center;
	padding: 16px 0;
	color: #fff;
}

footer .para {
	font-weight: 100;
	font-size: 14px;
}

.footer-flex {
	width: 100%;
	align-items: center;
	justify-content: center;
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	float: left;
	margin: 0 0 20px;
}

.footer-flex img {
	height: 30px;
}

footer .container {
	display: flex;
	flex-direction: column;
}

.footerlinks {
	display: flex;
	justify-content: center;
	width: 100%;
	align-items: center;
	margin: 0 0 20px;
}
.f-logo{
	background-color: #ffffff;
	width: 120px;
	height: 60px;
	padding: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-bottom: 3px solid #363636;
}
.f-logo img{
	width: 100%;
}
.social-icon {
	display: flex;
	gap: 5px;
	margin-left: 20px;
}

.social-icon img {
	width: 100%;
	max-width: 30px;
}

.footerlinks a {
	font-size: 14px;
	color: #fff;
	margin: 0 6px;
}

.footerlinks a:hover {
	text-decoration: underline !important;
}

.copyrights {
	font-size: 14px;
}


.text-white {
	font-size: 14px;
}

.alert {
	background: rgba(0, 0, 0, 0.7) !important;
	color: #ffffff !important;
	position: fixed !important;
	bottom: 0px;
	margin-bottom: 0 !important;
	left: 0;
	border-radius: 0;
	text-align: center;
	width: 25%;
	margin: auto;
	padding: 10px 10px !important;
	display: flex;
	justify-content: center;
	border-radius: 0 !important;
	flex-wrap: wrap;
	align-items: center;
}

.alert-dismissible {
	z-index: +3;
}

.alert-close {
	border: 1px solid transparent;
	border-radius: 4px;
	background: #862041;
	color: white;
	padding: 0px !important;
	width: 3rem;
	height: 2rem;
	font-size: 14px;
}

.hide {
	display: none;
}

span {
	font-weight: bold;
}

.alert p {
	font-size: 14px;
}

.hide {
	display: none;
}

.alert-close {
	padding: 0px 9px;
	border: 1px solid transparent;
	border-radius: 4px;
	background: #862041;
	color: white;
	margin: 0 !important;
	font-size: 14px;
}
.accordion {
      width: 100%;
    }

    .accordion-item {
      margin-bottom: 18px;
      border-radius: 16px;
      overflow: hidden;
      background: #687586;
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      border: 1px solid rgba(134, 134, 134, 0.18);
      box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
      transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
    }

    .accordion-item:hover {
      transform: translateY(-4px);
      box-shadow: 0 16px 48px rgba(84, 96, 111, 0.28);
      border-color: rgba(84, 96, 111, 0.4);
    }

    .accordion-header {
      padding: 20px 28px;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: space-between;
      background: linear-gradient(90deg, rgba(84, 96, 111, 0.15), rgba(84, 96, 111, 0.08));
      transition: background 0.4s ease;
    }

    .accordion-title {
      font-size: 1.22rem;
      font-weight: 600;
      letter-spacing: -0.3px;
      color: #ffffff;
    }

    .accordion-icon {
      width: 32px;
      height: 32px;
      position: relative;
      transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .accordion-icon::before,
    .accordion-icon::after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      width: 18px;
      height: 3px;
      background: linear-gradient(90deg, #cfdced, #ced2d7);
      border-radius: 2px;
      transform: translate(-50%, -50%);
      transition: all 0.45s ease;
    }

    .accordion-icon::before {
      transform: translate(-50%, -50%) rotate(90deg);
    }

    .accordion-item.active .accordion-icon {
      transform: rotate(180deg);
    }

    .accordion-item.active .accordion-icon::before {
      opacity: 0;
    }

    .accordion-content {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.55s cubic-bezier(0.23, 1, 0.32, 1.2),
                  padding 0.55s ease;
      background: rgba(84, 96, 111, 0.25);
    }

    .accordion-item.active .accordion-content {
      max-height: 600px; /* adjust according to your max content */
      padding: 0 28px 28px;
    }

    .accordion-text {
      padding-top: 24px;
      font-size: 1rem;
      line-height: 1.7;
      color: #ffffff;
      opacity: 0.92;
    }

    /* Optional: subtle line glow on open */
    .accordion-item.active .accordion-header {
      background: linear-gradient(90deg, rgba(41, 48, 56, 0.22), rgba(23, 28, 35, 0.12));
    }

.banner1 {
      width: 60%;
      background: linear-gradient(90deg, #687586 0%, #a0b8d6 50%, #96a9c2 100%); /* blue gradient match */
      border-radius: 16px;
      position: relative;
      box-shadow: 0 10px 30px rgba(0,0,0,0.15);
      display: flex;
      align-items: center;
      padding: 0 30px 20px 30px;
      color: white;
    }
	.banner1::after{
		position: absolute;
		content: '';
		background-color: #687586;
		width: 140%;
    height: 57%;
    top: 21%;
    left: -20%;
    z-index: -2;
    border-radius: 10px;

	}
    .left {
      flex: 1;
    }

    .right {
      text-align: center;
      min-width: 220px;
    }
	.num{
		font-size: 30px;
		font-family: "Fugaz One", serif;
		position: absolute;
		left: -30px;
		top: 40%;
	}
    h2 {
      margin: 0 0 12px;
      font-size: 28px;
      font-weight: bold;
    }
    .left ul {
      padding: 0;
      margin: 0;

    }
.left li {
    width: auto;
    font-size: 14px;
    display: flex;
    align-items: center;
    color: #ffffff;
    background: url(../img/tick.png) no-repeat 0 5px;
    background-size: auto;
    background-size: 14px auto;
	margin: 5px 0;
}

.left li:before {
    content: '';
    min-width: 12px;
    height: 22px;
    border-radius: 12px;
    /*background:#000c2f;
    border:solid 1px #000;*/
    margin: 0 10px 0 0;
}
    .rating {
      font-size: 30px;
      font-weight: bold;
      margin: 0;
	  background-color: #fff;
	  color: #687586;
	  margin-top: 15px;
    }

    .stars {
      color: #ffd700; /* gold stars */
      font-size: 28px;
      margin: 8px 0;
    }

    .votos {
      font-size: 14px;
      opacity: 0.9;
	  margin: 0 0 10px;
    }

    .btn {
  padding: 20px 30px;
  position: relative;
  display: block;
  text-decoration: none;
  overflow: hidden;
  border: 0;
  cursor: pointer;
  border-radius: 2rem;
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.5);
}

.btn:hover .wave {
  top: -120px;
}

.text {
  position: relative;
  z-index: 1;
  color: white;
  font-size: 15px;
  letter-spacing: 3px;
  font-weight: 600;
}

.wave {
  width: 250px;
  height: 200px;
  background-color: #9bacc3;
  box-shadow: inset 0 0 50px rgba(0, 0, 0, 0.5);
  position: absolute;
  left: 0;
  top: -70px;
  transition: 0.4s;
}

.wave::before, a .wave::after {
  width: 200%;
  height: 200%;
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -75%);
}

.wave::before {
  border-radius: 45%;
  background-color: #adc9d4;
  animation: wave 5s linear infinite;
}

.wave::after {
  border-radius: 40%;
  background-color: rgba(20, 20, 20, 0.5);
  animation: wave 10s linear infinite;
}

@keyframes wave {
  0% {
    transform: translate(-50%, -75%) rotate(0deg);
  }

  100% {
    transform: translate(-50%, -75%) rotate(300deg);
  }
}
@media (max-width:800px) {
	.h2 {
		font-size: 20px;
	}

	.para {
		font-size: 14px;
	}

	.flexbox {
		flex-direction: column;
	}

	.alert {
		width: 100%;
	}

	.alert p {
		font-size: 12px;
	}

	.flexbox>img {
		max-width: 80%;
		order: 1;
		margin: 0 0 15px;
	}
	.banner {
		padding-top: 70px;
	}

	.inner-banner {
		padding: 20px 0;
	}

	.flexgroupbox {
		flex-direction: column;
	}

	.flexbody,
	.flexbox>.para {
		padding: 0 !important;
		order: 2;
	}

	footer .container {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.flexgroupbox {
		width: 100%;
	}

	.formfield {
		width: 100%;
	}

	.formbutton {
		width: 100%;
	}
	.flex-cus::before {
		left: -10px;
		width: 104%;
	}

	.footerlinks {
		justify-content: center;
		flex-wrap: wrap;
		gap: 10px;
	}

	footer .bottom {
		display: flex;
		align-items: center;
		justify-content: space-between;
		float: left;
		width: 100%;
		flex-direction: column;
		gap: 13px;
	}

	.w-tg {
		width: auto !important;
	}
	.banner1{
		flex-direction: column;
		width: 100%;
	}
	.left{
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}
	.num{
		display: none;
	}
	ol>li{
		width: 100%;
	}
	.accordion-title{
		font-size: 15px;
	}

}

