* { box-sizing: border-box; margin: 0; padding: 0; }

html,body { font-size: 16px; font-family: "Poppins", sans-serif; background: #000; color: #fff; line-height: 1.4em; }

a { text-decoration: none; color: unset; }
ul { list-style: none; }
img { vertical-align: middle; }

p {  }

h1,h2,h3,h4,h5,h6 { color: ; line-height: 1.4; }
section { overflow: hidden; }
 
.container { max-width: 1140px; margin: auto; }
.widget-section { display: block; padding: 60px 16px; position: relative; }

button { border: 0; outline: 0; font-family: var(--ff); letter-spacing: 1px; }


:root {

	--c1 : #ffea00;
	--c2 : #0fbed8;
	--c3 : #27eea0;

	--bs: 0 3px 15px 0 #0000001a;
	--bs2 : 0 3.4px 2.7px -30px #0000000f, 0 8.2px 8.9px -30px #00000012, 0 25px 40px -30px #00000033;
	--ts : all 0.5s ease-in-out;
	--ff : "Font Awesome 6 Pro";
	--fs : 40px;

	--rg: radial-gradient(#dc1707, #551303);

	--lg : linear-gradient(130deg, #0FBED8 0%, #27EEA0 100%)
}


/* CALL TO ACTION BUTTON */

.CTAB { position: relative; display: inline-block; padding: 25px 30px; margin: 40px 0; color: #03e9f4;
	text-decoration: none; text-transform: uppercase; transition: 0.5s; letter-spacing: 4px; overflow: hidden; }

.CTAB:hover { background: #03e9f4; color: #050801; box-shadow: 0 0 5px #03e9f4, 0 0 25px #03e9f4, 0 0 50px #03e9f4, 0 0 200px #03e9f4;
	-webkit-box-reflect: below 1px linear-gradient(transparent, #0005); }

.CTAB:nth-child(1) { filter: hue-rotate(270deg); }
.CTAB:nth-child(2) { filter: hue-rotate(110deg); }
.CTAB span { position: absolute; display: block; }

.CTAB span:nth-child(1) { top: 0; left: 0; width: 100%; height: 2px;
	background: linear-gradient(90deg, transparent, #03e9f4); animation: animate1 1s linear infinite; }

.CTAB span:nth-child(2) { top: -100%; right: 0; width: 2px; height: 100%;
	background: linear-gradient(180deg, transparent, #03e9f4); animation: animate2 1s linear infinite; animation-delay: 0.25s; }

.CTAB span:nth-child(3) { bottom: 0; right: 0; width: 100%; height: 2px;
	background: linear-gradient(270deg, transparent, #03e9f4); animation: animate3 1s linear infinite; animation-delay: 0.5s; }

.CTAB span:nth-child(4) { bottom: -100%; left: 0; width: 2px; height: 100%;
	background: linear-gradient(360deg, transparent, #03e9f4); animation: animate4 1s linear infinite; animation-delay: 0.75s; }

@keyframes animate1 { 0% { left: -100%; } 50%, 100% { left: 100%; } }
@keyframes animate2 { 0% { top: -100%; } 50%, 100% { top: 100%; } }
@keyframes animate3 { 0% { right: -100%; } 50%, 100% { right: 100%; } }
@keyframes animate4 { 0% { bottom: -100%; } 50%, 100% { bottom: 100%; } }



.call_to_action { display: block; width: 100%; text-align: center; }
.action_btn { display: inline-block; padding: 16px 32px; margin-top: 32px; font-size: 24px; border-radius: 4px;
	background-image: linear-gradient(130deg, #0FBED8 0%, #27EEA0 100%);  }

@media all and (max-width: 480px) {
	.action_btn { display: block; width: 100%; padding: 16px 24px; font-size: 18px; }
}


.section_head { display: block; margin: auto; text-align: center; margin-bottom: 42px; }
.section_head h2 { font-size: 42px; color: var(--c2); }

@media all and (max-width: 480px) {
	.section_head { margin-bottom: 32px; }
	.section_head h2 { font-size: 34px; }
}


/* ---------- ----- BANNER ----- ---------- */
.section_banner { padding: 160px 16px; background: #000; color: #fff; }

.banner_ { text-align: center; }
.banner_ h1 { font-size: 52px; }
.banner_ h1 span { display: block; }
.banner_ p { width: 70%; font-size: 18px; margin: 32px auto auto auto; }

@media all and (max-width: 480px) {
	.section_banner { padding: 100px 16px; }
	.banner_ h1 { font-size: 40px; }
	.banner_ p { width: 100%; }
	
}


/* ---------- ----- ABOUT ----- ---------- */
.about { background: #0e0e0e; }
.about_row { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 24px; }
.about_col { display: block; }
.about_col img { width: 100%; height: auto; }
.about_col h3 {  }
.about_col p  { margin-top: 24px; }
.about_col h4 { margin-top: 32px; font-style: italic; font-size: 18px; color: var(--c3); }

@media all and (max-width: 480px) {
	.about_row { grid-template-columns: repeat(1, 1fr); }
	.about_col h4 { font-size: 17px; }
}


/* ---------- ----- TESTIMONIALS ----- ---------- */
.testimonial_row { display: grid; grid-template-columns: repeat(4, 1fr); grid-gap: 24px; }
.testimonial_col { display: block; }
.testimonial_col video { width: 100%; vertical-align: middle; }

@media all and (max-width: 480px) {
	.testimonial_row { grid-template-columns: repeat(1, 1fr); }
}


/* ---------- ----- OUR GALLERY ----- ---------- */
.services { background: #0e0e0e; }
.service_row { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 16px; }
.service_col { display: block; background: #282828; padding: 24px; border-radius: 4px; }

.service_text { margin-top: 24px; }
.service_text h3 { font-size: 24px; color: var(--c2); }
.service_text p  { margin-top: 16px; text-align: justify; }

.service_icon { width: 98px; height: 98px; display: block; padding: 16px; background: var(--lg); border-radius: 50px; }
.service_icon img { width: 100%; height: auto; filter: invert(100%) sepia(3%) saturate(0%) hue-rotate(201deg) brightness(105%) contrast(102%); }

@media all and (max-width: 480px) {
	.service_row { grid-template-columns: repeat(1, 1fr); }
	.service_text h3 { font-size: 20px; }
	.service_icon { width: 88px; height: 88px; }
}


/* ---------- ----- OUR GALLERY ----- ---------- */
.choose_row { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 52px; }

.choose_col { display: block; width: 100%; }
.choose_col img { width: 100%; height: auto; }

.choose_head { display: block; }
.choose_head h2 { font-size: 40px; color: var(--c2); }
.choose_head h2 span { display: block; }

.choose_row_ { display: flex; flex-direction: column; gap: 24px; margin-top: 24px; }
.choose_col_ h3 { color: var(--c3); font-size: 18px; }
.choose_col_ p  { margin-top: 16px; text-align: justify; }

@media all and (max-width: 480px) {
	.choose_row { grid-template-columns: repeat(1, 1fr); }
	.choose_head h2 { font-size: 34px; }
}

/* ----- COUNTER ----- */
.counter { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 16px; margin-top: 32px; }
.counter_col { width: 100%; padding: 40px 16px; display: block; background: #282828; border-radius: 8px; box-shadow: var(--bs); text-align: center; }
.counter_col span { font-size: 32px; font-weight: 600; color: var(--c2); }
.counter_col h3 { margin-top: 16px; font-weight: 400; }

.count::after { content: "+"; }

@media all and (max-width: 480px) {
	.counter { grid-template-columns: repeat(1, 1fr); }
}


/* ---------- ----- OUR GALLERY ----- ---------- */
.gallery { background: #282828; }
.gallery_ { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 16px; }
.gallery_image_ { display: block; width: 100%; border-radius: 4px; overflow: hidden; }
.gallery_image_ img { width: 100%; height: auto; }

@media all and (max-width: 480px) {
	.gallery_ { grid-template-columns: repeat(1, 1fr); }
}


/* ---------- ----- OUR GALLERY ----- ---------- */
.footer {  }
.copyright { padding: 24px 16px; text-align: center; }
.copyright p a { color: var(--c2); }