@charset "UTF-8";

/*******************************************************************/
@font-face {
	font-family: 'montserrat';
	src: url('../font/Montserrat-VariableFont_wght.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'montserrat';
	src: url('../font/Montserrat-VariableFont_wght.ttf') format('truetype');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'montserrat';
	src: url('../font/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'montserrat';
	src: url('../font/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
	font-weight: bold;
	font-style: italic;
	font-display: swap;
}

.font_montserrat {
    font-family: 'montserrat';
}

:root {
    --Phlux: #D90AF2;
    --Light-Pink: #FEF7FF;
    --Navy: #3E428C;
    --Lime: #17D103;
    --Yellow: #FFDB00;
    --Grey: #D9D9D9;
    --Light-Blue: #00F6F5;
}

html {
	box-sizing: border-box;
	width: 100%;
	background-color: #fff;
}

*, *:before, *:after {
	box-sizing: inherit;
	outline: none;
}

body {
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    font-family: 'montserrat';
}

h1 {
    font-size: 4.6875vw;
    font-weight: bold;
}

h2 {
    font-size: 3.125vw;
}

h3 {
    font-size: 1.667vw;
    font-weight: normal;
}

h4 {
    font-size: 1.458vw;
    font-weight: normal;
}

#navigation {
    width: 100vw;
    height: 10vh;
    padding: 0 5vw;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    background-color: var(--Phlux);
}

#navigation .page-title {
    color: #FFF;
    font-size: 2.29vw;
    font-weight: bold;
}

#preview, #page-content {
    height: 86vh;
}

#preview {
    order: 2;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    align-items: center;
    position: relative;
    margin-right: 6.458vw;
}

#preview::before {
    content: '';
    top: calc(50% - 4vh);
    left: -4vw;
    position: absolute;
    transform: translateY(-50%);
    width: 2px;
    height: 32.25vh;
    background-color: #B0B0B0;
}

#page-content {
    order: 1;
    width: 63.3vw;
    padding: 4vw 4vw 0;
}

.background {
    height: 32.6%;
    display: flex;
    overflow: hidden;
    position: relative;
    align-items: center;
    align-content: center;
    justify-content: center;
    background: -webkit-linear-gradient(#00f6f5 0%, #3d57d9 100%);
    background: -o-linear-gradient(#00f6f5 0%, #3d57d9 100%);
    background: linear-gradient(#00f6f5 0%, #3d57d9 100%);
}

.t1 .background {
    border-bottom: 1px solid var(--Grey);
}

.background .bg-image {
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    position: absolute;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center center;
}

.b1 .bg-image {
    background-image: url('../images/b1.jpg');
}
.b2 .bg-image {
    background-image: url('../images/b2.jpg');
}
.b3 .bg-image {
    background-image: url('../images/b3.jpg');
}

.t2 .background,
#t2 .background {
    height: 40.2%;
}

.logo {
    width: 100%;
    height: 100%;
}

.template {
    width: 26.25vw;
    height: 64.5vh;
    display: flex;
    flex-direction: column;
    border-radius: 1vw;
    overflow: hidden;
    margin-bottom: 8vh;
    background-color: var(--Navy);
    border: 1px solid var(--Grey);
}

.t3 {
    border-radius: 0;
}

.t3.template,
#t3.template {
    background-color: #FFF;
}

#preview .logo i {
    color: #FFF;
}

.card-info {
    color: #FFF;
    padding: 1vw;
    display: flex;
    flex-grow: 1;
    align-items: stretch;
    flex-direction: column;
}

#t1 h3 {
    font-size: 1.458vw;
}

.fullname, .title,
.c_fullname, .c_title {
    min-height: 1em;
    line-height: 1.25;
    margin-bottom: 0.5em;
}

#t2 .fullname, #t2 .title,
.t2 .c_fullname, .t2 .c_title {
    text-align: right;
}

.contact-info {
    color: var(--Navy);
    font-size: 2.2vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    margin: 1vw 0;
    padding: 0.25em 0.35em;
    border: 1px solid #CCC;
    border-radius: 0.35em;
    background-color: #FFF;
}

#t2 .contact-info,
.t2 .contact-info {
    border-radius: 0;
}

.n_t {
    margin: 1.25vw 0;
}

#t3 .n_t,
.t3 .n_t {
    color: var(--Navy);
}

#t3 .contact-info,
.t3 .contact-info {
    color: #FFF;
    text-align: right;
    justify-content: flex-end;
    background-color: var(--Grey);
}

#t3 .contact-info i,
.t3 .contact-info i {
    order: 2;
    margin-left: 0.5em;
    margin-right: 0.5em;
}

.contact-info span {
    font-size: 1.5vw;
    line-height: 1.25;
}

.contact-info i {
    line-height: 1;
    margin-right: 0.5em;
}

#go_back {
    background-color: var(--Navy);
    border: 1px solid var(--Navy);
}

#restart,
#continue {
    background-color: var(--Lime);
    border: 1px solid var(--Lime);
}

#restart {
    display: none;
}

.button {
    color: #FFF;
    font-size: 1.458vw;
    line-height: 1.43;
    padding: 0.5em 1.75em;
    display: flex;
    align-items: center;
    border-radius: 2em;
}

.button.disable:active {
    transform: scale(1);
}
.button:hover {
    opacity: 1;
}

#go_back:not(.disable):active {
    color: var(--Navy);
    background-color: var(--Phlux);
}
#continue:not(.disable):active {
    color: var(--Lime);
    background-color: var(--Phlux);
}

#go_back i {
    font-size: 120%;
    margin-right: 1vw;
}
#continue i {
    font-size: 120%;
    margin-left: 1vw;
}

.button.disable {
    opacity: 0.75;
    cursor: default;
}

.button.large {
    font-size: 150%;
    padding: 1.5rem 3rem;
}