@charset "utf-8";
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css");

/* =====================================================
  _         _____   ______   _____  _____  _____  _   _ 
 (_)       |  __ \ |  ____| / ____||_   _|/ ____|| \ | |
  _ __   __| |  | || |__   | (___    | | | |  __ |  \| |
 | |\ \ / /| |  | ||  __|   \___ \   | | | | |_ || . ` |
 | | \ V / | |__| || |____  ____) | _| |_| |__| || |\  |
 |_|  \_/  |_____/ |______||_____/ |_____|\_____||_| \_|

===================================================== */

/* ====================
|| MOBILE BREAKS
======================*/

/*
Small           576px
Medium          768px
Large           992px
Extra Large     1200px
*/


/* ====================
|| THEMES AND COLORS
======================*/

/*
Sky 			#2E4559
Salmon			#FF6557
LightBlue		#2D99B3
*/


/* SCROLL-BAR */
::selection { background: #C8FBFF; }
::-moz-selection { background: #C8FBFF; /* Gecko Browsers */ }

html {scroll-behavior:smooth; overflow-x: hidden; height: 100%;}

body {line-height: normal; height: 100%;}

.bg-light-blue {background-color: #2D99B3;}



/* ====================
|| BOOTSTRAP RELACES
======================*/
.accordion {
    margin-bottom: 10px;
}

.accordion-header {
	font-family: 'Roboto Slab', serif;
    font-weight: bold;
    border: 2px solid #2E4559;
}

.accordion button:focus {box-shadow: none;}
.accordion button {
    background: #FF6557; 
    color: #2E4559;
    font-size: 24px; 
    font-weight: bolder; 
    border-top-left-radius: 0px; 
    border-top-right-radius: 0px;
}
.accordion-button:not(.collapsed)::after {
    font-size: 16px;
    transition: 0.25s linear;
    transform: rotate(90deg);
    background-image: none;
    font-family: 'Bootstrap-icons';
    content: "\F229";
}

.accordion-button::after {
    font-size: 16px;
    transition: 0.25s linear;
    font-family: 'Bootstrap-icons';
    content: "\F229";
    background-image: none;
}

.accordion-body {
    box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset;
    animation: zoomInDown;
    animation-duration: 1.1s;
    
}

.accordion-item {
	border-radius: 0px;
	border-bottom: 15px solid #FFF;
	border-right: 0px;
}
.accordion-item:last-child {border-bottom: none;}

.accordion-item:first-of-type .accordion-button { border-radius: 0px;}
.accordion-item:first-of-type .accordion-button.collapsed { border-radius: 0px;}
.accordion-item:last-of-type .accordion-button.collapsed { border-radius: 0px;}

.accordion-button:not(.collapsed) {
    box-shadow: none;
    color: #FF6557;
    background-color: #2E4559;
}


.accordion-button {transition: .25s cubic-bezier(0.08, 0.73, 0.85, 0.18);}
.accordion-button:hover { background-color: #2E4559; color: #FF6557;}



.form-control {
    border: 1px solid #333;
    border-radius: 0;
}

.form-control:focus {
    border: 1px solid #333;
}

.row {margin: 0 auto;
}

.badge {line-height: normal; margin-left: 5px;}
.container {}



/* ====================
|| FONTS | H1,2,3,4,5,6
======================*/
.txt-jstf {text-align: justify;}
.txt-bld {font-weight: bold;}
.txt-salm {color: #FF6557; font-weight: bold;}
.txt-ivblue {color: #2D99B3;}
.list-fnt {color: #FF6557; font-size: 18px; font-weight: bold; text-shadow: 2px 1px 0px #fff, 2px 5px 2px rgba(0,0,0,0.1); line-height: 24px; text-transform: uppercase;}

/* iv H1 */
#iv-logo { 
	font-family: 'Lobster', cursive;
	font-size: 84px; 
	letter-spacing: normal; 
	line-height: normal; 
	color: #2D99B3;
	z-index: 10; 
	position: relative;
	text-shadow: 6px 6px 0px rgba(0,0,0,0.75);
	
}

/* DESIGN H1 */
#design-logo { 
	font-family: 'Lilita One', cursive;
	font-size: 124px; 
	letter-spacing: -5px; 
	line-height: normal;
	color: #FFFFFF;
	margin-left: -20px; 
	z-index: 0; 
	position: relative;
	text-shadow: 0 1px 0 #ccc, 0 3px 0 #bbb, 0 4px 0 #aaa, 0 5px 0 #999, 0 6px 0 #888, 0 6px 1px rgba(0,0,0,.1), 0 0 1px rgba(0,0,0,.1), 0 6px 2px rgba(0,0,0,.3), 0 7px 3px rgba(0,0,0,.2), 
				 0 8px 5px rgba(0,0,0,.25), 0 9px 5px rgba(0,0,0,.2), 0 10px 5px rgba(0,0,0,.15);
}



h2, h3, h4, h5 { font-family: 'Oleo Script', cursive; color: #2E4559;}

.iv-h3 {font-family: 'Lobster', cursive; font-size: 18px; transform: rotate(-90deg); display: inline-block; letter-spacing: 1px; position: relative; top: -10px;}

h2 {
	font-size: 36px;
    font-weight: bold;
}

.h2-title-shadow {
    text-shadow: 1px 3px 2px rgba(0,0,0,0.25);
}

h3 {
	font-size: 32px;
    font-weight: bold;
    text-shadow: 0px 3px 2px rgba(23,53,64,0.25);
}

h4 {
    font-size: 24px;
    font-weight: bold;
}

h5 {
	font-size: 28px;
    font-weight: bold;
}

.media-content h3 {
    color: #FF6557;
    
}

.col-right h4 {
    font-size: 18px;
    padding-bottom: 10px;
}

p, .p-txt {
	font-family: 'Roboto Slab', serif;
	color: #000000;
	font-weight: normal;
	font-size: 16px;
	line-height: normal;
}


/* =============
|| BODY | a | hr
==============*/

body::-webkit-scrollbar {
  width: 12px;
  background-color: #F5F5F5;
}
 
body::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    background-color: #F5F5F5;
}
 
body::-webkit-scrollbar-thumb {
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    box-shadow: inset 0 0 6px rgba(0,0,0,.3);
	background-color: #FF6557;
}

a {
	color: #2D99B3;
	outline: 0;
    font-family: 'Roboto Slab', serif;
    transition: color .3s ease-in-out, box-shadow .3s ease-in-out;
}

a:hover, a:focus {
	color: #FFFFFF;
	box-shadow: inset 250px 0 0 0 #2D99B3;
}

a:visited {
	
}


.body-bg {
	background-image: url("../img/bg-full.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-attachment: fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
	background-size: cover !important;
    
}

hr.style-one {
	font-family: 'Lobster', cursive; 
    overflow: visible; /* For IE */
    padding: 0;
	margin: 25px 0px 5px 0px;
	opacity: 20%;
    border: none;
    border-top: 1px solid #2E4559;
    color: #2E4559;
    text-align: center;
}

hr.style-one:after {
    content: "iv";
    display: inline-block;
    position: relative;
    top: -0.87em;
    font-size: 20px;
    padding: 0 .15em 0.15em;
	background: #FFFFFF;
}

hr.style-two {
	font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
    overflow: visible; /* For IE */
    padding: 0;
	margin: 25px 0px 0px 0px;
	opacity: 20%;
    border: none;
    border-top: 1px solid #2E4559;
    color: #2E4559;
    text-align: center;
}

hr.style-two:after {
	content: "\2237";
    display: inline-block;
    position: relative;
    top: -0.75em;
    font-size: 40px;
    padding: 0 0.15em;
	background: #FFFFFF;
}

hr.style-three {
	font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
    overflow: visible; /* For IE */
	opacity: 25%;
    border: none;
    border-top: 1px solid #2E4559;
    color: #2E4559;
    text-align: center;
    margin: 65px 100px 0px 100px;
}

hr.style-three:after {
	content: "\22DC";
    transform: rotate(270deg);
    display: inline-block;
    position: relative;
    top: -0.75em;
    font-size: 20px;
	background: #FFFFFF;
	width: 50px;
}


/* =============
|| HEADER
==============*/
.header {
	margin-top: 50px;
	padding-bottom: 5px;
}

.jitb-anim {
    animation: jackInTheBox;
    animation-duration: 3s;
}

/* =============
|| CONTENT
==============*/
.main-content {
	margin-top: 50px;
}


.acc-btn-bg {
	font-size: 24px;
}

.col-left, .col-right {
	float: left;
	width: 46%;
	padding: 45px;
	background: #FFFFFF;
	border-radius: 20px;
	box-shadow: rgba(0, 0, 0, 0.4) 0px 4px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px 2px, rgba(0, 0, 0, 0.3) 0px -4px 0px inset;
}

.col-left { 
    margin-right: 4%;
    animation: backInLeft;
    animation-duration: 1.5s;
}

.col-right { 
    margin-right: 0%; 
    animation: backInRight;
    animation-duration: 1.5s;
    max-height: 1112px; /* adjust to micro manage pixels bro */
}

.col-right p i {color: #FF6557;}
.col-right p span {color: #2E4559;}



.service-head-hr {display: inline-block; width: 10%; margin: 5px; background: #874041; height: 2px;}

.pws-col i {color: #2D99B3; padding-left: 20px;}




/* =============
|| MEDIA
==============*/

.media-content {
	margin-top: 50px;
	padding-bottom: 50px;
}

.media-content .row .col {
    width: 100%;
	padding: 25px;
	height: fit-content;
	background: #FFFFFF;
	border-radius: 20px;
	box-shadow: rgba(0, 0, 0, 0.4) 0px 4px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px 2px, rgba(0, 0, 0, 0.3) 0px -4px 0px inset;
	margin-right: 4%;
    
    animation: fadeInUp;
    animation-duration: 2s;
}



.media-content i {color: #FF6557;}

.media-content img {
	border: 5px solid #2E4559; 
    margin: 5px 0px 15px 0px;
    padding: 5px; 
	width: 100%;
    height: 100%;
	box-shadow: rgba(0, 3, 47, 0.5) 0px 20px 5px -5px;
}

/* HOVER OVER MEDIA IMGS ENABLE ONCE LINK TO FULL
.media-content img:hover {
    box-shadow: none;
    border-radius: 0px;
}
*/

.collapsing {
	transition-delay: 1000ms !important;
	transition:height 0.5s ease-in !important;
}

.web3-col {
    text-align: justify;
    margin: 50px 0px 35px 0px;
    line-height: 24px;
    padding: 0px 25px 0px 25px;
}

.project-snapshot {
    font-size: 16px; 
    text-transform: uppercase; 
    font-weight: bold;
}

/* =============
|| SERVICES
==============*/

.media-services {
	margin-top: 30px;
	font-size: 16px;
	text-align: left;
}


.bg-shadow {transition: ease-in-out .25s;}
.bg-shadow:hover {box-shadow: 8px 0px 3px 0px rgba(0, 0, 0, 0.1) ;}

.badge i {color: #FFF; font-size: 20px;}





/* =============
|| CONTACT
==============*/

input {
	font-family: 'Roboto Slab', serif;
}

input::placeholder, textarea::placeholder {
    font-size: 14px;
    color: #cccccc;
}

.contact_input_area {
	position: relative;
	font-family: 'Roboto Slab', serif;
    margin-bottom: 15%;
}

.contact_input_area .form-group .form-control {
    padding: 10px 0px 12px 10px;
    line-height: normal;
    box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.5);
    font-size: 16px;
    color: #333;
    font-weight: 300;
    transition: ease-in-out .25s;
    resize: none;
}

.contact_input_area .form-group .form-control:active,
.contact_input_area .form-group .form-control:focus {
    box-shadow: none;
    color: #2E4559;
    background-color: #FFFFFF;
    border-color: #FF6557;
}

.contact_input_area button {
    width: 100%;
    height: 100%;
	display: inline-block;
    background-color: #FF6557;
    border: 2px solid #2E4559;
    border-radius: 0px;
    margin-top: 12%;
    color: #fff;
    font-size: 14px !important;
    text-transform: uppercase;
    line-height: normal;
    letter-spacing: 2px;
    cursor: pointer;
	transition: linear 0.25s;
	overflow: hidden;
}

.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active {
    color: #fff;
    background-color: #FF6557;
    transition: .25s ease-in-out;
}

.contact_input_area button i {
    display: inline-flex;
    transition: linear 0.25s;
}

.contact_input_area button:hover i {
    transform: translate(50px, -75px);
}

.btn:hover { 
    box-shadow: rgba(50, 50, 93, 0.5) 0px 20px 30px -12px inset, rgba(0, 0, 0, 0.5) 0px 8px 25px -10px inset;
    background-color: #2E4559; 
    color: #FF6557;
    padding-left: 31px;
}

.contact-titles {
    font-size: 16px;
    font-weight: bold;
    text-transform: uppercase;
}

.form-group {
    padding-top:25px;
}



.to-top {
    visibility: hidden;
}


/* BACK TO TOP */
.button-17 {
  margin-bottom: 15px;
  align-items: center;
  background-color: #fff;
  border-style: none;
  box-sizing: border-box;
  color: #3c4043;
  cursor: pointer;
  display: inline-flex;
  fill: currentcolor;
  font-family: "Google Sans",Roboto,Arial,sans-serif;
  font-size: 24px;
  font-weight: 500;
  height: 75px;
  justify-content: center;
  max-width: 100%;
  overflow: visible;
  position: relative;
  text-align: center;
  text-transform: none;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  width: 100%;
  will-change: transform,opacity;
  z-index: 0;
}


.for-the-bees {
    visibility: hidden;
    position: absolute;
    left: -999em;
    height: 0px;
    max-height: 0px;
}



/* ==================
|| MOBILE RESPONSIVE
===================*/


/* 1024px BREAKPOINT */
@media screen and (max-width: 1024px) { 
    
    
    .to-top { visibility: visible; width: 30%;}
}
    
    
/* 991px-668px BREAKPOINT CATCH iPAD MINI 10GEN */
@media screen and (max-width: 991px) { 
    .col-left, .col-right {
        padding: 20px;
        
    }
    
    .to-top { visibility: visible; width: 30%;}
}



/* 768px BREAKPOINT */
@media screen and (max-width: 768px) { 
    
    *, ::after, ::before { box-sizing: border-box !important; }
    
    .body-bg { 
        background-image: url("../img/bg-mobile.jpg");
        width: auto;
        background-position: center;
        overflow-x: scroll;
}
    
    .col-right {max-height: 1050px;}
    
    .accordion button { font-size: 20px; }
    

    .container { width: 100%; }
    
    .row { display: grid; }
    
    .col { flex: none; }
    
    .col-md-6 { width: 100%;}
    
    .pws-col i { padding-left: 10px;}
    
    .header { margin-top: 25px; padding-bottom: 0px; }
    
    #iv-logo {font-size: 60px; text-shadow: 2px 4px 0px rgba(0,0,0,0.75);}
	
    #design-logo {font-size: 96px; margin-left: -12px; letter-spacing: -3px;}
    
    h2 {font-size: 32px;}
    
    hr.style-one { margin: 25px 0px -5px 0px; }
    
    .web3-col {text-align: justify;}
    
    
    .main-content { margin-top: 25px;}
    
    .col-left, .col-right { width: 85%; margin: 0px auto 45px auto; max-height: 100%; padding: 25px; border-radius: 10px;}
    
    .col-right {max-height: 1300px;}
    
    
    .media-content { margin-top: 0px; }
    
    .media-content .row .col { width: 85%; margin: 0 auto; border-radius: 10px;}
    
    .media-content .row .col:last-child { margin-top: 45px; }

    .media-content img { max-height: 100%;}
    
}
/* END BREAKPOINT */



/* 576px BREAKPOINT */
@media screen and (max-width: 576px) {
    
    .body-bg { background-image: url("../img/bg-mobile.jpg"); }
    
    hr.style-one:after { top: -0.8em;}
    
    .pws-col i { padding-left: 0px;}
    
    .media-content img { padding: 5px; }
    
    .accordion button { font-size: 16px; }
    .accordion-button::after { font-size: 14px; }
    
    p, p-txt { text-align: justify; }
    
    .web3-col {text-align: left;}
    
    .project-snapshot { font-size: 14px; }

    
    h2 {font-size: 24px; text-shadow: 1px 1px 1px rgba(0,0,0,0);}
    
    h4 { font-size: 18px; font-weight: bolder; text-shadow: 1px 1px 1px rgba(0,0,0,0); }
    
    h5 h5 { font-size: 20px; font-weight: bolder; text-shadow: 1px 1px 1px rgba(0,0,0,0); }
    
    .list-fnt {font-size: 16px; font-weight: bolder; line-height: normal;}
    
    .iv-h3 { font-size: 14px; }
    
    .col-left, .col-right { max-height: 100%; padding: 20px; border-radius: 0px;}
    
    .media-services { font-size: 14px; text-align: justify;}
    
    .badge i {font-size: 14px;}
    
    .media-content .row .col {border-radius: 0px;}
    
    
    .to-top { visibility: visible; width: 30%;}
    
    
}
