div[class*="grid-"]:not([class*="flex"]) {
	display: grid;
	grid-gap: 20px;
}
div[class*="grid-"][class*="-g0"] {
    grid-gap: 0px;
}
div[class*="grid-"][class*="-g5"] {
    grid-gap: 5px;
}
div[class*="grid-"][class*="-g10"] {
    grid-gap: 10px;
}
div[class*="grid-"][class*="-g15"] {
    grid-gap: 15px;
}
div[class*="grid-"][class*="-g20"] {
    grid-gap: 20px;
}
.grid-2, div[class*="grid-2"] {
    display: grid;
	grid-template-columns: 1fr 1fr;
}
div[class*="grid-"][class*="-3"], .grid-6, .grid-7, .grid-9 {
    display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}
.grid-4, .grid-8 {
	grid-template-columns: 1fr 1fr 1fr 1fr;
	/*grid-template-columns: calc(25% - 15px) calc(25% - 15px) calc(25% - 15px) calc(25% - 15px);*/
}
.grid-2-32 {
	grid-template-columns: 3fr 2fr!important;
}
.grid-2-23 {
	grid-template-columns: 2fr 3fr;
}
.grid-2-21, div[class*="grid-2-21"] {
	grid-template-columns: 2fr 1fr;
}
.grid-2-12, div[class*="grid-2-12"] {
	grid-template-columns: 1fr 2fr;
}
.grid-3, div[class*="grid-3"] {
	grid-template-columns: 1fr 1fr 1fr;
}
.grid-4, div[class*="grid-4"] {
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.grid-5, div[class*="grid-5"] {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

.grid-6, div[class*="grid-6"] {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}




div[class*="grid-"] > * {
	margin: auto;
	margin-top: 0px;
	width: 100%;
}
div[class*="grid-"]  *[style*="background-image"] {
	min-height: 20px;
	
	margin: 0px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
div[class*="grid-"] *[style*="background-image"][style*=".svg"] {
    background-size: contain;
}
.flex-grid {
	display: flex; 
	justify-content:space-between;
	
}

.flex-grid > * {
	margin: 0 10px!important;
	display: block;
	flex-grow: 1;
}
.flex-grid > *:first-child { 
	margin-left:0px!important;
}
.flex-grid > *:last-child { 
	margin-right: 0px!important;
}
.square, *[class*="rect-"] {
	position: relative;
}
img.square, img[class*="rect-"] {
    object-fit: cover;
    object-position: center;
}
.rect-2-1 {
	padding-top: 50%!important;
}
.rect-3-2 {
	padding-top: 66.66%!important;
}
.rect-4-3 {
	padding-top: 75%!important;
}
.rect-3-4 {
	padding-top: 125%!important;
}
.square:not(img) {
	padding-top: 100%!important;
}
img.square {
	object-fit: cover;
	object-position: center;
}
.square.circle {
    border-radius: 50%;
}
.square > *, *[class*="rect-"] > * {
	position: absolute;
    top: 0px;
    max-width: 100%;
}
.square[style*="background-image"], *[class*="rect-"][style*="background-image"]   {
    background-position: center;
    background-size:contain;
}
.square[style*="background-image"][style*=".png"], *[class*="rect-"][style*="background-image"][style*=".png"]  {
    background-size:contain;
}
.square[style*="background-image"][style*=".jp"], *[class*="rect-"][style*="background-image"][style*=".jp"]  {
    background-position: center;
    background-size: cover;
}
.square[style*="background-image"] > img, *[class*="rect-"][style*="background-image"] > img {
    opacity: 0;
}


div[class*="grid-"]  .square[style*="background-image"], 
div[class*="grid-"]   *[class*="rect-"][style*="background-image"] {
	margin-bottom: auto;	
}

.float-grid {
	display: flex;
	align-content: flex-start;
}

/*.justify-grid, .justify-grid * {
	background-color: #ffcc0010;
}*/
.justify-grid {
	
	display: flex;
	
	justify-content: space-between;
}
.justify-grid > * {
	margin: auto;
}
.justify-grid > *:first-child {
	margin-left: 0px;
}
.justify-grid > *:last-child {
	margin-right: 0px;
}

@media only screen and (max-width: 720px) {
	div[class*="grid-"][class*="p1"] {
		grid-template-columns: 1fr;
	}
    div[class*="grid-"][class*="p2"] {
		grid-template-columns: 1fr 1fr;
	}
    div[class*="grid-"][class*="p3"] {
		grid-template-columns: 1fr 1fr 1fr;
	}
	div[class*="grid-2"][class*="preverse"] {
		grid-template-columns: 1fr;
		grid-template-rows: auto auto;
		grid-template-areas: " b " " a ";
		
	}
	div[class*="grid-2"][class*="preverse"] > * {
	
		position: relative!important;
		display: block!important;
	}
	div[class*="grid-2"][class*="preverse"] > *:first-child {
		grid-area: a;
	}
	div[class*="grid-2"][class*="preverse"] > *:last-child {
		grid-area: b;
	}
	
	.phone-rect-2-1 { 
		padding-top: 50%!important;
	}
    div[class*="grid-"][class*="-pg0"] {
        grid-gap: 0px;
    }
    div[class*="grid-"][class*="-pg5"] {
        grid-gap: 5px;
    }
    div[class*="grid-"][class*="-pg10"] {
        grid-gap: 10px;
    }
    div[class*="grid-"][class*="-pg15"] {
        grid-gap: 15px;
    }
    div[class*="grid-"][class*="-pg20"] {
        grid-gap: 20px;
    }
    
}
@media only screen and (max-width: 1025px) {
	div[class*="grid-"][class*="t1"] {
		grid-template-columns: 1fr;
	} 
}

@media only screen and (min-width: 1440px) {
	.bigscreen-rect-2-1 phone-rect-2-1 { 
		padding-top: 50%!important;
	}
}
*[style*="background-image"][style*="url('')"] {
    background-color:rgba(0,0,255,0.1);
}


iframe[src*="youtube"] { 
	width: 100%!important;
	aspect-ratio:16/9!important;
}

