/* reset ------------------------------ */
html, body, button, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite,
code, del, dfn, em, input, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b,
u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody,
textarea, tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
    font: inherit;
    box-sizing: border-box;
}

/* root spacing ----------------------------------------- */
:root {
    /* base space */
    --base-space: 24px;

    /* space scale */
    --space-scale-2xl: 6;
    --space-scale-xl: 4;
    --space-scale-lg: 3;
    --space-scale-m: 2;
    --space-scale-sm: 1;
    --space-scale-xs: 0.5;
    --space-scale-2xs: 0.25;

/* other spacing ----------------------------------------- */
    --heading-gap: calc(var(--space-sm) * 0.75);
    --paragraph-gap: calc(var(--space-sm) * 0.75);
    --list-indent: var(--space-m);
    --hr-margin: var(--space-sm);
    --row-gap: var(--space-sm);
    --scroll-anchor-offset: var(--space-m);

    --container-lrg-width: 1900px;
    --container-width: 1400px;
    --container-sml-width: 1100px;
    --container-padding: clamp(16px, 3vw, 48px);
    
    --content-med-width: calc(((var(--container-width) - (var(--container-padding) * 2)) / 1.65));
    --content-sml-width: calc(((var(--container-width) - (var(--container-padding) * 2)) / 2.75));
}

/* utility spacing variables --------------------------------- */
:root {
    /* new */
    --space-2xl: calc(var(--base-space) * var(--space-scale-2xl));
    --space-xl: calc(var(--base-space) * var(--space-scale-xl));
    --space-lg: calc(var(--base-space) * var(--space-scale-lg));
    --space-m: calc(var(--base-space) * var(--space-scale-m));
    --space-sm: calc(var(--base-space) * var(--space-scale-sm));
    --space-xs: calc(var(--base-space) * var(--space-scale-xs));
    --space-2xs: calc(var(--base-space) * var(--space-scale-2xs));
}

/* text layout --------------------------------- */
.left {
    text-align: left;
}
.right {
    text-align: right;
}
.center {
    text-align: center;
}
.justify {
    text-align: justify;
}
.upper {
    text-transform: uppercase;
}
.lower {
    text-transform: lowercase;
}
.capital {
    text-transform: capitalize;
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5 {
    margin-bottom: var(--heading-gap);
}
p, .p {
    margin-top: 0;
    margin-bottom: var(--paragraph-gap);
}
ol, ul, dl {
    margin-top: 0;
    margin-bottom: var(--paragraph-gap);
}
ol ol, ul ul, ol ul, ul ol {
    margin-bottom: 0;
}
ol, ul {
    padding-left: var(--list-indent);
}

/* layout & position --------------------------------- */
hr {
    margin: var(--hr-margin) 0;
}
.row {
    display: block;
}
.row-gap {
    display: block;
    margin-bottom: var(--row-gap);
}
.w-100 {
    width: 100%;
}
.w-100a {
    width: 100%;
    height: auto;
}
.w-75 {
    width: 75%;
}
.w-75a {    
    width: 75%;
    height: auto;
}
.w-50 {
    width: 50%;
}
.w-50a {
    width: 50%;
    height: auto;
}
.w-33 {
    width: 33.333%;
}
.w-33a {
    width: 33.333%;
    height: auto;
}
.w-25 {
    width: 25%;
}
.w-25a {
    width: 25%;
    height: auto;
}
.h-100 {
    height: 100%;
}
.h-100a {
    height: 100%;
    width: auto;
}
.h-75 {
    height: 75%;
}
.h-75a {
    height: 75%;
    width: auto;
}
.h-50 {
    height: 50%;
}
.h-50a {
    height: 50%;
    width: auto;
}
.h-33 {
    height: 33.333%;
}
.h-33a {
    height: 33.333%;
    width: auto;
}
.h-25 {
    height: 25%;
}
.h-25a {
    height: 25%;
    width: auto;
}
.block {
    display: block;
}
.inline {
    display: inline-block;
}
.relative {
    position: relative;
}
.fixed {
    position: fixed;
}
.sticky {
    position: sticky;
}
.absolute {
    position: absolute;
}
.aspect-1-1 {
    padding-top: 100%;
}
.aspect-21-9 {
    padding-top: 42.85%;
}
.aspect-16-9 {
    padding-top: 56.25%;
}
.aspect-9-16 {
    padding-top: 1.777777%
}
.aspect-4-3 {
    padding-top: 0.75%;
}
.aspect-3-4 {
    padding-top: 1.333333%
}
.hide {
    display: none;
}

/* containers ----------------------------------------- */
.container-lg {
    max-width: var(--container-lrg-width);
    margin-left: auto;
    margin-right: auto;
    padding: 0 var(--container-padding);
}
.container {
    max-width: var(--container-width);
    margin-left: auto;
    margin-right: auto;
    padding: 0 var(--container-padding);
}
.container-sm {
    max-width: var(--container-sml-width);
    margin-left: auto;
    margin-right: auto;
    padding: 0 var(--container-padding);
}

/* content box --------------------------------------- */
.content-med {
    max-width: var(--content-med-width);
    margin-left: auto;
    margin-right: auto;
}
.content-med-left {
    max-width: var(--content-med-width);
    margin-right: auto;
}
.content-med-right {
    max-width: var(--content-med-width);
    margin-left: auto;
}
.content-sml {
    max-width: var(--content-sml-width);
    margin-left: auto;
    margin-right: auto;
}
.content-sml-left {
    max-width: var(--content-sml-width);
    margin-right: auto;
}
.content-sml-right {
    max-width: var(--content-sml-width);
    margin-left: auto;
}
.full-width {
    max-width: 100%;
}
.lean {
    padding-left: 0;
    padding-right: 0;
}

/* margins ----------------------------------------- */
.m-2xl {
    margin: var(--space-2xl);
}
.my-2xl {
    margin-top: var(--space-2xl);
    margin-bottom: var(--space-2xl);
}
.mt-2xl {
    margin-top: var(--space-2xl);
}
.mb-2xl {
    margin-bottom: var(--space-2xl);
}
.mx-2xl {
    margin-top: var(--space-2xl);
}
.ml-2xl {
    margin-left: var(--space-2xl);
}
.mr-2xl {
    margin-right: var(--space-2xl);
}
.m-xl {
    margin: var(--space-xl);
}
.my-xl {
	margin-top: var(--space-xl);
    margin-bottom: var(--space-xl);
}
.mt-xl {
	margin-top: var(--space-xl);
}
.mb-xl {
	margin-bottom: var(--space-xl);
}
.mx-xl {
    margin-left: var(--space-xl);
	margin-right: var(--space-xl);
}
.ml-xl {
	margin-left: var(--space-xl);
}
.mr-xl {
	margin-right: var(--space-xl);
}
.m-lg {
    margin: var(--space-lg);
}
.my-lg {
	margin-top: var(--space-lg);
    margin-bottom: var(--space-lg);
}
.mt-lg {
	margin-top: var(--space-lg);
}
.mb-lg {
	margin-bottom: var(--space-lg);
}
.mx-lg {
    margin-left: var(--space-lg);
	margin-right: var(--space-lg);
}
.ml-lg {
	margin-left: var(--space-lg);
}
.mr-lg {
	margin-right: var(--space-lg);
}
.m-m {
    margin: var(--space-m);
}
.my-m {
	margin-top: var(--space-m);
    margin-bottom: var(--space-m);
}
.mt-m {
	margin-top: var(--space-m);
}
.mb-m {
	margin-bottom: var(--space-m);
}
.mx-m {
    margin-left: var(--space-m);
	margin-right: var(--space-m);
}
.ml-m {
	margin-left: var(--space-m);
}
.mr-m {
	margin-right: var(--space-m);
}
.m-sm {
    margin: var(--space-sm);
}
.my-sm {
	margin-top: var(--space-sm);
    margin-bottom: var(--space-sm);
}
.mt-sm {
	margin-top: var(--space-sm);
}
.mb-sm {
	margin-bottom: var(--space-sm);
}
.mx-sm {
    margin-left: var(--space-sm);
	margin-right: var(--space-sm);
}
.ml-sm {
	margin-left: var(--space-sm);
}
.mr-sm {
	margin-right: var(--space-sm);
}
.m-xs {
    margin: var(--space-xs);
}
.my-xs {
	margin-top: var(--space-xs);
    margin-bottom: var(--space-xs);
}
.mt-xs {
	margin-top: var(--space-xs);
}
.mb-xs {
	margin-bottom: var(--space-xs);
}
.mx-xs {
    margin-left: var(--space-xs);
	margin-right: var(--space-xs);
}
.ml-xs {
	margin-left: var(--space-xs);
}
.mr-xs {
	margin-right: var(--space-xs);
}
.m-2xs {
    margin: var(--space-2xs);
}
.my-2xs {
    margin-top: var(--space-2xs);
    margin-bottom: var(--space-2xs);
}
.mt-2xs {
    margin-top: var(--space-2xs);
}
.mb-2xs {
    margin-bottom: var(--space-2xs);
}
.mx-2xs {
    margin-top: var(--space-2xs);
}
.ml-2xs {
    margin-left: var(--space-2xs);
}
.mr-2xs {
    margin-right: var(--space-2xs);
}
.m-container {
    margin: var(--container-padding);
}
.my-container {
	margin-top: var(--container-padding);
    margin-bottom: var(--container-padding);
}
.mt-container {
	margin-top: var(--container-padding);
}
.mb-container {
	margin-bottom: var(--container-padding);
}
.mx-container {
    margin-left: var(--container-padding);
	margin-right: var(--container-padding);
}
.ml-container {
	margin-left: var(--container-padding);
}
.mr-container {
	margin-right: var(--container-padding);
}
.m-0 {
    margin: 0;
}
.my-0 {
	margin-top: 0;
    margin-bottom: 0;
}
.mt-0 {
	margin-top: 0;
}
.mb-0 {
	margin-bottom: 0;
}
.mx-0 {
    margin-left: 0;
	margin-right: 0;
}
.ml-0 {
	margin-left: 0;
}
.mr-0 {
	margin-right: 0;
}
.m-auto {
    margin: auto;
}
.my-auto {
	margin-top: auto;
    margin-bottom: auto;
}
.mt-auto {
	margin-top: auto;
}
.mb-auto {
	margin-bottom: auto;
}
.mx-auto {
    margin-left: auto;
	margin-right: auto;
}
.ml-auto {
	margin-left: auto;
}
.mr-auto {
	margin-right: auto;
}

/* padding ----------------------------------------- */
.p-2xl {
    padding: var(--space-2xl);
}
.py-2xl {
    padding-top: var(--space-2xl);
    padding-bottom: var(--space-2xl);
}
.pt-2xl {
    padding-top: var(--space-2xl);
}
.pb-2xl {
    padding-bottom: var(--space-2xl);
}
.px-2xl {
    padding-left: var(--space-2xl);
    padding-right: var(--space-2xl);
}
.pl-2xl {
    padding-left: var(--space-2xl);
}
.pr-2xl {
    padding-right: var(--space-2xl);
}
.p-xl {
    padding: var(--space-xl);
}
.py-xl {
	padding-top: var(--space-xl);
    padding-bottom: var(--space-xl);
}
.pt-xl {
	padding-top: var(--space-xl);
}
.pb-xl {
	padding-bottom: var(--space-xl);
}
.px-xl {
    padding-left: var(--space-xl);
	padding-right: var(--space-xl);
}
.pl-xl {
	padding-left: var(--space-xl);
}
.pr-xl {
	padding-right: var(--space-xl);
}
.p-lg {
    padding: var(--space-lg);
}
.py-lg {
	padding-top: var(--space-lg);
    padding-bottom: var(--space-lg);
}
.pt-lg {
	padding-top: var(--space-lg);
}
.pb-lg {
	padding-bottom: var(--space-lg);
}
.px-lg {
    padding-left: var(--space-lg);
	padding-right: var(--space-lg);
}
.pl-lg {
	padding-left: var(--space-lg);
}
.pr-lg {
	padding-right: var(--space-lg);
}
.p-m {
    padding: var(--space-m);
}
.py-m {
	padding-top: var(--space-m);
    padding-bottom: var(--space-m);
}
.pt-m {
	padding-top: var(--space-m);
}
.pb-m {
	padding-bottom: var(--space-m);
}
.px-m {
    padding-left: var(--space-m);
	padding-right: var(--space-m);
}
.pl-m {
	padding-left: var(--space-m);
}
.pr-m {
	padding-right: var(--space-m);
}
.p-sm {
    padding: var(--space-sm);
}
.py-sm {
	padding-top: var(--space-sm);
    padding-bottom: var(--space-sm);
}
.pt-sm {
	padding-top: var(--space-sm);
}
.pb-sm {
	padding-bottom: var(--space-sm);
}
.px-sm {
    padding-left: var(--space-sm);
	padding-right: var(--space-sm);
}
.pl-sm {
	padding-left: var(--space-sm);
}
.pr-sm {
	padding-right: var(--space-sm);
}
.p-xs {
    padding: var(--space-xs);
}
.py-xs {
	padding-top: var(--space-xs);
    padding-bottom: var(--space-xs);
}
.pt-xs {
	padding-top: var(--space-xs);
}
.pb-xs {
	padding-bottom: var(--space-xs);
}
.px-xs {
    padding-left: var(--space-xs);
	padding-right: var(--space-xs);
}
.pl-xs {
	padding-left: var(--space-xs);
}
.pr-xs {
	padding-right: var(--space-xs);
}
.p-2xs {
    padding: var(--space-2xs);
}
.py-2xs {
    padding-top: var(--space-2xs);
    padding-bottom: var(--space-2xs);
}
.pt-2xsml,
.pt-2xs {
    padding-top: var(--space-2xs);
}
.pb-2xs {
    padding-bottom: var(--space-2xs);
}
.px-2xs {
    padding-left: var(--space-2xs);
    padding-right: var(--space-2xs);
}
.pl-2xs {
    padding-left: var(--space-2xs);
}
.pr-2xs {
    padding-right: var(--space-2xs);
}
.p-container {
    padding: var(--container-padding);
}
.py-container {
	padding-top: var(--container-padding);
    padding-bottom: var(--container-padding);
}
.pt-container {
	padding-top: var(--container-padding);
}
.pb-container {
	padding-bottom: var(--container-padding);
}
.px-container {
    padding-left: var(--container-padding);
	padding-right: var(--container-padding);
}
.pl-container {
	padding-left: var(--container-padding);
}
.pr-container {
	padding-right: var(--container-padding);
}
.p-0 {
    padding: 0;
}
.py-0 {
	padding-top: 0;
    padding-bottom: 0;
}
.pt-0 {
	padding-top: 0;
}
.pb-0 {
	padding-bottom: 0;
}
.px-0 {
    padding-left: 0;
	padding-right: 0;
}
.pl-0 {
	padding-left: 0;
}
.pr-0 {
	padding-right: 0;
}

/* top -------------------------------------- */
.top-xs {
    top: var(--space-xs);
}
.top-sm {
    top: var(--space-sm);
}
.top-m {
    top: var(--space-m);
}
.top-lg {
    top: var(--space-lg);
}
.top-xl {
    top: var(--space-xl);
}
.top-2xl {
    top: var(--space-2xl);
}
.top-container {
    top: var(--container-padding);
}
.top-0 {
    top: 0;
}

/* bottom -------------------------------------- */
.bottom-xs {
    bottom: var(--space-xs);
}
.bottom-sm {
    bottom: var(--space-sm);
}
.bottom-m {
    bottom: var(--space-m);
}
.bottom-lg {
    bottom: var(--space-lg);
}
.bottom-xl {
    bottom: var(--space-xl);
}
.bottom-2xl {
    bottom: var(--space-2xl);
}
.bottom-container {
    bottom: var(--container-padding);
}
.bottom-0 {
    bottom: 0;
}

/* left -------------------------------------- */
.left-xs {
    left: var(--space-xs);
}
.left-sm {
    left: var(--space-sm);
}
.left-m {
    left: var(--space-m);
}
.left-lg {
    left: var(--space-lg);
}
.left-xl {
    left: var(--space-xl);
}
.left-2xl {
    left: var(--space-2xl);
}
.left-container {
    left: var(--container-padding);
}
.left-0 {
    left: 0;
}

/* right -------------------------------------- */
.right-xs {
    right: var(--space-xs);
}
.right-sm {
    right: var(--space-sm);
}
.right-m {
    right: var(--space-m);
}
.right-lg {
    right: var(--space-lg);
}
.right-xl {
    right: var(--space-xl);
}
.right-2xl {
    right: var(--space-2xl);
}
.right-container {
    right: var(--container-padding);
}
.right-0 {
    right: 0;
}

/* grids ----------------------------------------- */
.grid-1 {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: var(--space-sm); 
}
.grid-2 {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-sm); 
}
.grid-2a {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: var(--space-sm); 
}
.grid-2b {
    width: 100%;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: var(--space-sm); 
}
.grid-3 {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-sm); 
}
.grid-3a {
    width: 100%;
    display: grid;
    grid-template-columns: 2fr 3fr 2fr;
    gap: var(--space-sm); 
}
.grid-4 {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--space-sm); 
}
.grid-5 {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: var(--space-sm); 
}
@media only screen and (max-width: 1100px) {
    .grid-4 {
        grid-template-columns: repeat(2, 1fr);
    }
    .grid-5 {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media only screen and (max-width: 768px) {
    .grid-2,
    .grid-2a,
    .grid-2b,
    .grid-3,
    .grid-3a {
        grid-template-columns: repeat(1, 1fr);
    }
    .grid-5 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media only screen and (max-width: 501px) {
    .grid-4,
    .grid-5 {
        grid-template-columns: repeat(1, 1fr);
    }
}

/* flex ----------------------------------------- */
.flex {
    display: flex;
}
.f-wrap {
    flex-wrap: wrap;
}
.f-grow {
    flex-grow: 1;
}
.f-row {
    flex-direction: row;
}
.f-row-rev {
    flex-direction: row-reverse;
}
.f-col {
    flex-direction: column;
}
.f-col-rev {
    flex-direction: column-reverse;
}
.f-start {
    align-items: flex-start;
    justify-content: flex-start;
}
.f-end {
    align-items: flex-end;
    justify-content: flex-end;
}
.f-center {
    align-items: center;
    justify-content: center;
}
.f-around {
    align-items: space-around;
    justify-content: space-around;
}
.f-between {
    align-items: space-between;
    justify-content: space-between;
}
.fa-start {
    align-items: flex-start;
}
.fa-end {
    align-items: flex-end;
}
.fa-center {
    align-items: center;
}
.fa-around {
    align-items: space-around;
}
.fa-between {
    align-items: space-between;
}
.fj-start {
    justify-content: flex-start;
}
.fj-end {
    justify-content: flex-end;
}
.fj-center {
    justify-content: center;
}
.fj-around {
    justify-content: space-around;
}
.fj-between {
    justify-content: space-between;
}

/* gaps ----------------------------------------- */
.gap-2xl {
    gap: var(--space-2xl);
}
.gapx-2xl {
    column-gap: var(--space-2xl);
}
.gapy-2xl {
    row-gap: var(--space-2xl);
}
.gap-xl {
    gap: var(--space-xl);
}
.gapx-xl {
    column-gap: var(--space-xl);
}
.gapy-xl {
    row-gap: var(--space-xl);
}
.gap-lg {
    gap: var(--space-lg);
}
.gapx-lg {
    column-gap: var(--space-lg);
}
.gapy-lg {
    row-gap: var(--space-lg);
}
.gap-m {
    gap: var(--space-m);
}
.gapx-m {
    column-gap: var(--space-m);
}
.gapy-m {
    row-gap: var(--space-m);
}
.gap-sm {
    gap: var(--space-sm);
}
.gapx-sm {
    column-gap: var(--space-sm);
}
.gapy-sm {
    row-gap: var(--space-sm);
}
.gap-xs {
    gap: var(--space-xs);
}
.gapx-xs {
    column-gap: var(--space-xs);
}
.gapy-xs {
    row-gap: var(--space-xs);
}
.gap-2xs {
    gap: var(--space-2xs);
}
.gapx-2xs {
    column-gap: var(--space-2xs);
}
.gapy-2xs {
    row-gap: var(--space-2xs);
}
.gap-container {
    gap: var(--container-padding);
}
.gapx-container {
    column-gap: var(--container-padding);
}
.gapy-container {
    row-gap: var(--container-padding);
}
.gap-0 {
    gap: 0;
}
.gapx-0 {
    column-gap: 0;
}
.gapy-0 {
    row-gap: 0;
}

/* spacers --------------------------------------- */
.spacey-2xl {
    height: var(--space-2xl);
}
.spacex-2xl {
    width: var(--space-2xl);
}
.spacey-xl {
    height: var(--space-xl);
}
.spacex-xl {
    width: var(--space-xl);
}
.spacey-lg {
    height: var(--space-lg);
}
.spacex-lg {
    width: var(--space-lg);
}
.spacey-m {
    height: var(--space-m);
}
.spacex-m {
    width: var(--space-m);
}
.spacey-sm {
    height: var(--space-sm);
}
.spacex-sm {
    width: var(--space-sm);
}
.spacex-xs {
    width: var(--space-xs);
}
.spacey-xs {
    height: var(--space-xs);
}
.spacey-2xs {
    height: var(--space-2xs);
}
.spacex-2xs {
    width: var(--space-2xs);
}
.spacey-container {
    height: var(--container-padding);
}
.spacex-container {
    width: var(--container-padding);
}

/* order ----------------------------------------- */
.order-1 {
    order: 1;
}
.order-2 {
    order: 2;
}
.order-3 {
    order: 3;
}
.order-4 {
    order: 4;
}
.order-5 {
    order: 5;
}
.order-6 {
    order: 6;
}
.order-first {
    order: -9999;
}
.order-last	{
    order: 9999;
}
.order-none	{
    order: 0;
}

/* overflow */
.overflow-hide {
    overflow: hidden;
}
.overflow-x {
    overflow-x: hidden;
}
.overflow-y {
    overflow-y: hidden;
}
.overflow-auto {
    overflow: auto;
}

/* z-index */
.z-0 {
    z-index: 0;
}
.z-1 {
    z-index: 1;
}
.z-2 {
    z-index: 2;
}
.z-3 {
    z-index: 3;
}
.z-4 {
    z-index: 4;
}
.z-5 {
    z-index: 5;
}
.z-6 {
    z-index: 6;
}
.z-7 {
    z-index: 7;
}
.z-8 {
    z-index: 8;
}
.z-9 {
    z-index: 9;
}
.z-10 {
    z-index: 10;
}
.z-20 {
    z-index: 20;
}
.z-30 {
    z-index: 30;
}
.z-40 {
    z-index: 40;
}
.z-50 {
    z-index: 50;
}
.z-60 {
    z-index: 60;
}
.z-70 {
    z-index: 70;
}
.z-80 {
    z-index: 80;
}
.z-90 {
    z-index: 90;
}
.z-100 {
    z-index: 100;
}
.z-1000 {
    z-index: 1000;
}
.z-10000 {
    z-index: 10000;
}

/* object-fit */
.object-cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.object-contain {
    object-fit: contain;
}
.object-fill {
    object-fit: fill;
}
.object-none {
    object-fit: none;
}

/* constrain */
.constrain-100 {
    max-width: 100vw;
    max-height: 100vh;
}
.constrain-90 {
    max-width: 90vw;
    max-height: 90vh;
}
.constrain-80 {
    max-width: 80vw;
    max-height: 80vh;
}
.constrain-70 {
    max-width: 70vw;
    max-height: 70vh;
}
.constrain-60 {
    max-width: 60vw;
    max-height: 60vh;
}
.constrain-50 {
    max-width: 50vw;
    max-height: 50vh;
}
.constrain-40 {
    max-width: 40vw;
    max-height: 40vh;
}
.constrain-30 {
    max-width: 30vw;
    max-height: 30vh;
}
.constrain-20 {
    max-width: 20vw;
    max-height: 20vh;
}
.constrain-10 {
    max-width: 10vw;
    max-height: 10vh;
}
