/* ----------------------------------
        SHOWCASE STYLES
---------------------------------- */

:root {
    --default-width: calc(100% - 10vw);
    --default-block-padding: min(110px, 10vw);
    --default-inline-padding: min(50px, 5vw);
    --bs: 6px 8px 20px 0px rgba(0, 0, 0, 0.35);
}

* {
    margin: 0px;
    padding: 0px;
}

html {
    background: #fff;
}

body {
    overflow-x: hidden;
    color: #000;
    width: 100%;
}

.section {
	position: relative;
    box-sizing: border-box;
	overflow-x: clip;
}

.wrapper {
    margin-inline: auto;
    position: relative;
}


/* ----------------------------------
        MARK: Default Styles
---------------------------------- */
.nomargin { margin: 0 !important; }
.notopmargin, .nomargintop {margin-top: 0 !important;}
.nobottommargin, .nomarginbottom {margin-bottom: 0 !important;}

.left {text-align: left;}
.center {text-align: center;}
.right {text-align: right;}

.vhc {
	display: flex;
	align-items: center;
	justify-content: center;
}
.vc {
	display: flex;
	align-items: center;
}
.hc {
	display: flex;
	justify-content: center;
}



.full_img {
    width: 100%;
    height: auto;
    position: relative;
    display: block;
}


/* ----------------------------------
        	MARK: COLORS
---------------------------------- */

.blue {color: #0048d0;}
.purple {color: #5400c0;}

.white_bg {background: #fff;}


/* ----------------------------------
        MARK: CUSTOM CODE
---------------------------------- */

.fixed_bg {
	width: 100vw;
	height: 100dvh;
	position: fixed;
	top: 0;
	left: 0;
	display: block;
}

.balance {text-wrap: balance;}

.textbox {
	width: 100%;
	position: relative;
	margin-inline: auto;
}

.box_style {
	background-color: #fff;
	padding: min(70px, 6vw) min(70px, 6vw);
    box-sizing: border-box;
    box-shadow: var(--bs);
}


/* ----------------------------------
        	MARK: Box #1
---------------------------------- */
#box_1 {
	padding-block: var(--default-block-padding);
    padding-inline: var(--default-inline-padding);
}

#box_1 .wrapper {
	width: min(900px, 100%);
}


/* ----------------------------------
        	MARK: Box #2
---------------------------------- */
#box_2 {
	background: url(../images/2_bg_HD.jpg) 47% 50% / cover no-repeat;
	min-height: min(889px, 100dvh);
	box-shadow: var(--bs);
}


#box_2 .wrapper {
	width: var(--default-width);
	display: grid;
	grid-template-columns: 20% 1fr;
}

#textbox_2 {
	width: min(940px, 100%);
}


/* ----------------------------------
        	MARK: Box #3
---------------------------------- */
#box_3 {
	padding-block: var(--default-block-padding);
    padding-inline: var(--default-inline-padding);
}

#box_3 .wrapper {
	width: min(1740px, 100%);
	display: grid;
	grid-template-columns: 1fr 1.4fr;
	gap: min(90px, 5vw) min(50px, 3vw);
	align-items: center;
}

#textbox_3 {
	width: min(560px, 100%);
	margin-left: auto;
}

#images_3 {
	position: relative;
	aspect-ratio: 1.8;
}

#desktop_3 {
	position: absolute;
	top: 0%;
	left: 5.9%;
	width: 70.8%;
}

#laptop_3 {
	position: absolute;
	bottom: 0%;
	left: 41.1%;
	width: 55.3%;
}

#phone_3 {
	position: absolute;
	bottom: 0%;
	left: 0%;
	width: 26.2%;
}




/* ----------------------------------
        	MARK: Box #4
---------------------------------- */
#box_4 {
	min-height: min(849px, 92dvh);
	background: url(../images/4_bg_HD.jpg) 50% 50% / cover no-repeat;
	overflow: hidden;
}
#box_4 .wrapper {
	width: min(970px, var(--default-width));
	perspective: 1000px;
}


/* ----------------------------------
        	MARK: Box #5
---------------------------------- */
#box_5 {
	padding-block: var(--default-block-padding);
    padding-inline: var(--default-inline-padding);
}

#box_5 .wrapper {
	width: min(1490px, 100%);
	min-height: min(1221px, 114dvh);
	background: url(../images/5_bg_HD.jpg) 50% 50% / cover no-repeat;
	box-shadow: var(--bs);
	padding: var(--default-inline-padding);
	box-sizing: border-box;
	perspective: 1000px;
	overflow: hidden;
}
#textbox_5 {
	width: min(860px, 100%);
}



/* ----------------------------------
        	MARK: Box #6
---------------------------------- */
#box_6 {
	background: linear-gradient(58deg, #3c3686 40%, #655ebe 60%);
	padding-block: var(--default-block-padding);
    padding-inline: var(--default-inline-padding);
}

.chat_layout .wrapper {
	width: min(1170px, 100%);
}
.chat_layout .textbox {
	width: 100%;
	position: relative;
	margin: auto;
	color:#fff;
	gap: 20px min(50px, 5vw);
}
.closing {
	max-width: 70%;
	flex-shrink: 0;
}


/* Keep these near the bottom to make sure your custom code doesn't accidentally overwrite these classes */
.show_on_HD {display: block;}
.show_on_4K, .show_on_MOB {display: none;}



/* ----------------------------------
        MARK: Media Queries
---------------------------------- */

/* TABLET */
@media only screen and (max-width: 1024px) {
	#box_2 {
		background: url(../images/2_bg_HD.jpg) 38% 50% / cover no-repeat;
	}

}

/* MARK: 768 */
/* MOBILE */
@media only screen and (max-width: 768px) {
	#box_2 {
		background: url(../images/2_bg_MOB.jpg) 50% 0% / cover no-repeat;
	}
	#box_2 .wrapper {
		grid-template-columns: 1fr;
	}
	.empty {display: none;}
	#box_3 .wrapper {
		grid-template-columns: 1fr;
	}
	#textbox_3 {
		width: 100%;
		order: 2;
	}
	#images_3 {
		order: 1;
	}
	#box_4 {
		background: url(../images/4_bg_MOB.jpg) 50% 10% / cover no-repeat;
	}
	#box_5 .wrapper {
        min-height: 78dvh;
    }
	#box_5 .wrapper {
		background: url(../images/5_bg_HD.jpg) 50% 50% / cover no-repeat;
	}
}

/* MARK: 600 */
@media only screen and (max-width: 600px) {
	#box_2, #box_4, #box_5 .wrapper {
        min-height: unset;
        padding-block: calc(var(--default-block-padding) * 2.5);
    }
	#box_2 {
        padding-top: 50vw;
    }
	.box_style {text-align: start;}
	.chat_layout {padding-bottom: calc(var(--default-block-padding) + 4vw);}
	.chat_layout .textbox {
		flex-direction: column;
		text-align: center;
	}
	.closing {max-width: 100%;}
}
