/* base */

body,
html {
	height: 100%;
}
body {
	background-color: #ffffff;
    font-family: 'Lato', sans-serif;
    font-weight: 400;
	font-size: 16px;
	line-height: 26px;
    color: #0a0a0a;
	-webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased; 
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #2a2a2a;
    font-family: 'Marcellus', serif;
    font-weight: 400;
    line-height: 1.2em;
    margin-bottom: 10px;
}
h1 {
    font-size: 32px;
	margin-bottom: 20px;
}
h2 {
    margin-bottom: 15px;
	font-size: 26px;
}
.home h1,
.home h2 {
    font-size: 32px;
}
.home h1 {
	margin-bottom: 10px;
}
.home h2 {
	margin-bottom: 20px;
}
h1 span,
h2 span,
h3 span {
    font-size: 18px;
    line-height: 1.3em;
    padding-top: 5px;
}
h1 span,
h2 span {
	font-size: 22px;
}
h3 {
    font-size: 22px;
    margin-bottom: 15px;
    padding-top: 10px;
}
h4 {
    font-size: 20px;
}
h5,
h6 {
    font-size: 18px;
}
@media only screen and (max-width: 480px) {
    h1 {
        font-size: 30px;
    }
    h2 {
        font-size: 26px;
    }
    article h2 {
        font-size: 26px;
    }
    h3 {
        font-size: 22px;
    }
}
p,
ul,
ol,
table,
address {
    margin-bottom: 30px;
}

a,
a:focus,
.text-anchor  {
    font-weight: 700;
    color: #9e012e;
    text-decoration: none;
    border-bottom: 1px solid #9e012e;
}
@media only screen and (min-width: 991px) {
    a:hover {
		color: #0a0a0a;
    }
    a:hover,
    a:hover .text-anchor {
        border-color: transparent;
    }
}
a.no-border {
	border: none;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    border: none;
}
h1 a,
h2 a,
h3 a {
    font-weight: 400;
}
.heading-subtitle {
	font-size: 18px;
}
.home .heading-subtitle {
	margin-bottom: 30px;
	font-size: 20px;
}

i,
.material-icons,
.material-icons-outlined,
.material-icons-round {
    color: #9e012e;
}
.material-icons,
.material-icons-outlined,
.material-icons-round {
    line-height: inherit;
}

.main-content i,
.main-content .material-icons,
.main-content .material-icons-outlined,
.main-content .material-icons-round {
    font-size: 30px;
    position: relative;
    top: 2px;
}
.main-content .content-area i {
    width: 22px;
    text-align: center;
}
abbr,
time,
small {
    font-size: 14px;
}
strong {
    color: #0a0a0a;
    font-weight: 900;
}
hr,
.main-content .wp-block-separator {
	border: 0;
    border-bottom: 2px solid #ddd;
    background: #ddd;
	margin-bottom: 60px;
	position: relative;
	top: 20px;
}
legend {
	display: none;
}
table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}
th,
td {
	border-bottom: 1px solid #ddd;
	padding: 4px 0 4px 5px;
	vertical-align: middle;
}
th {
	text-align: left;
	font-weight: 700;
}
small {
    font-size: 80%;
    font-size: 13px;
}
iframe {
    margin-bottom: -7px;
}
figcaption {
    line-height: 1.4em;
}

.block {
    display: block;
}
.cf:before,
.cf:after {
    display: block;
    clear: both;
    content: " ";
    position: relative;
}
.clear {
	clear: both;
}
.hide {
    display: none !important;
}
@media all and (min-width: 992px) {
    .desktop-hide {
        display: none !important;
    }
}
@media all and (min-width: 768px) {
	.phone-only,
    .mobile-only {
		display: none !important;
	}
}
@media all and (max-width: 767px) {
	.mobile-hide {
		display: none !important;
	}
}
.text-center {
    text-align: center;   
}
.text-left {
    text-align: left;   
}
.text-right {
    text-align: right;   
}
.align-left {
    float: left;
}
.align-right {
    float: right;
}
.no-margin {
    margin: 0;
}
.no-padding {
    padding: 0;
}

a.no-styling {
    color: inherit;
    border: none;
}

.content .reset {
    margin: 0 0 30px;
}
.content .reset>li {
    margin: 0;
}
.content .reset>li:before {
    display: none;
}

.image-caption {
    text-align: center;
    font-size: 13px;
    font-style: italic;
}

.table-wrapper {
    display: table;
}
.table-wrapper .table-cell {
    display: table-cell;
    vertical-align: middle;
}

.padding-top-10 {
    padding-top: 10px;
}
.padding-top-20 {
    padding-top: 20px;
}
.padding-top-30 {
    padding-top: 30px;
}
.padding-top-40 {
    padding-top: 40px;
}
.padding-top-50 {
    padding-top: 50px;
}
.padding-top-60 {
    padding-top: 60px;
}
.padding-bottom-10 {
    padding-bottom: 10px;
}
.padding-bottom-20 {
    padding-bottom: 20px;
}
.padding-bottom-30 {
    padding-bottom: 30px;
}
.padding-bottom-40 {
    padding-bottom: 40px;
}
.padding-bottom-50 {
    padding-bottom: 50px;
}
.padding-bottom-60 {
    padding-bottom: 60px;
}
.margin-top-10 {
    margin-top: 10px;
}
.margin-top-20 {
    margin-top: 20px;
}
.margin-top-30 {
    margin-top: 30px;
}
.margin-top-40 {
    margin-top: 40px;
}
.margin-top-50 {
    margin-top: 50px;
}
.margin-top-60 {
    margin-top: 60px;
}
.margin-bottom-10 {
    margin-bottom: 10px;
}
.margin-bottom-20 {
    margin-bottom: 20px;
}
.margin-bottom-30 {
    margin-bottom: 30px;
}
.margin-bottom-40 {
    margin-bottom: 40px;
}
.margin-bottom-50 {
    margin-bottom: 50px;
}
.margin-bottom-60 {
    margin-bottom: 60px;
}
.margin-top-minus-40 {
    margin-top: -40px;
}

.main-content ul,
.main-content ol {
	margin: 0 0 30px 50px;
}
.main-content ul>li,
.main-content ol>li {
	position: relative;
	margin-bottom: 10px;
}
.main-content ul>li:before {
	content: "\f111";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	font-size: 8px;
	color: #9e012e;
	position: absolute;
	top: 1px;
	left: -20px;
	display: block;
	width: 10px;
}
.main-content ul>li ul>li:before {
	color: #2a2a2a;
	font-size: 6px;
}
.main-content ul.no-styling,
.main-content ol.no-styling,
.main-content ul.reset,
.main-content ol.reset {
	margin-left: 0;
}
.main-content ul.no-styling>li,
.main-content ol.no-styling>li,
.main-content ul.reset>li,
.main-content ol.reset>li{
	margin-bottom: 0;
}
.main-content ul.no-styling>li:before,
.main-content ul.reset>li:before {
	display: none;
}
.main-content ol>li {
	list-style: decimal;
	padding-left: 5px;
}
.main-content ol>li::marker {
	color: #9e012e;
	font-family: 'Marcellus', serif;
	font-weight: 700;
	font-size: 18px;
}
.main-content ol.no-styling>li {
	padding-left: 0;
	list-style: none;
}

.list-hor,
.content .list-hor,
.main-content .list-hor {
    position: relative;
    display: inline-block;
	margin-left: 0;
}
.list-hor>li,
.content .list-hor>li {
    float: left; 
    margin-left: 10px;
}
.list-hor>li:first-child,
.content .list-hor>li:first-child {
    margin-left: 0;
}
.main-content ul.list-hor>li:before {
	display: none;
}
.spacing-dot>li,
.content .spacing-dot>li {
    padding-left: 20px;
    position: relative;
}
.spacing-dot>li:first-child, 
.content .spacing-dot>li:first-child {
    padding-left: 0;
}
.spacing-dot>li:after,
.content .spacing-dot>li:after {
    content: '•';
    color: #9e012e;
    position: absolute;
    left: 0;
    display: inline-block;
}
.spacing-dot>li:first-child:after,
.content .spacing-dot>li:first-child:after {
    display: none;
}

.dlist-hor {
    margin-bottom: 30px;
}
.dlist-hor>dt,
.dlist-hor>dd {
    line-height: 20px;
    padding: 5px 0;
}
.dlist-hor>dt {
    clear: left;
    float: left;
    width: 140px;
    font-size: 13px;
}
.dlist-hor>dd {
    position: relative;
    margin-left: 150px;
}
@media only screen and (min-width: 1200px) {
    .dlist-hor>dt {
        width: 170px;
    }
    .dlist-hor>dd {
        margin-left: 180px;
    }
}

@media only screen and (min-width: 768px) {
    .list-two-columns {
        /*
		-webkit-columns: 60px 2;
        -moz-columns: 60px 2;
        columns: 60px 2;
        -moz-column-fill: auto;
        column-fill: balance;
        column-gap: 40px;
		*/
		
		display: grid;
		grid-template-columns: repeat(2,1fr);
		grid-gap: 0 20px;
    }
}
.list-two-columns>li {
    line-height: 20px;
    padding: 5px 0;
}
@media only screen and (max-width: 480px) {
    .list-two-columns>li {
        font-size: 14px;
    }
}

.list-border {
    border-top: 1px solid #ddd;
}
.list-border>li {
    line-height: 16px;
    font-size: 14px;
    padding: 9px 0;
    border-bottom: 1px solid #ddd;
}

.check li {
    line-height: 20px;
    padding: 10px 0;
    position: relative;
    padding-left: 45px;
}
.check i,
.check .material-icons-round {
    font-size: 28px;
    position: absolute;
    top: 50%;
    left: 0;
    height: 28px;
    -webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.check .material-icons-round {
	font-size: 30px;
	height: 20px;
}

.list-icons>li {
	padding: 4px 0;
	padding-left: 35px;
}
.list-icons.list-icon-btn>li {
	padding-left: 0;
}
.list-icons i {
	font-size: 24px;
	width: 30px;
	text-align: left;
	position: absolute;
	left: 2px;
}
.list-icons.list-icon-btn i {
	text-align: center;
	left: 0;
}

/* columns */
.column-wrapper {
	margin: 0 -20px
}
.column {
	float: left;
	padding: 0 20px
}
.column.full {
	float: none;
    clear: both;
	width: 100%
}
.half {
	width: 50%
}
.half:nth-child(odd) {
	clear: left
}
.one-third {
	width: 33.333%
}
.two-third {
	width: 66.666%
}
.quarter {
	width: 25%
}
.three-quarter {
	width: 75%
}
.column-right {
    float: right;
}
@media only screen and (max-width: 991px) {
    .column-wrapper {
        margin: 0 -10px;
    }
    .column {
        padding: 0 10px;
    }
	
}
@media only screen and (max-width: 767px) {
    .one-third, 
    .two-third {
		width:  50%
	}
	.one-third:nth-child(odd), 
    .two-third:nth-child(odd) {
		clear: left
	}
	.half,
	.two-third, 
    .three-quarter {
		width:  100%
	}
    .quarter, 
    .three-quarter {
		width: 50%
	}
	.quarter:nth-child(odd), 
    .three-quarter:nth-child(odd) {
		clear: left
	}
}
@media only screen and (max-width: 480px) {
	.column {
		float: none;
		clear: both
	}
	.one-third {
		width:  100%
	}
    .quarter, 
    .three-quarter {
        clear: inherit;
        float: left;
		width: 50%
	}
    .column-sc-full {
        margin: 0 -20px;
    }
    .column-sc-full .column {
        padding: 1px;
    }
}

/* grid */
.grid-container, 
.grid-container.threeblocks,
.grid-blocks{
    display: grid;
    grid-template-columns: repeat(2,1fr);
    grid-gap: 60px;
}
.grid-blocks {
    grid-template-columns: repeat(3,1fr);
    grid-gap: 20px;
}
.grid-container.twoblocks,
.grid-blocks.twoblocks {
    grid-template-columns: repeat(2,1fr);
}
.grid-container.fourblocks,
.grid-blocks.fourblocks {
    grid-template-columns: repeat(4,1fr);
	grid-gap: 20px;
}
.grid-container.sideblock-right-onethird {
	grid-template-columns: auto 33%;
}
.grid-container.sideblock-left-onethird {
	grid-template-columns: 33% auto;
}
@media only screen and (min-width: 1241px) {
    .grid-container, 
    .grid-container.threeblocks {
        grid-template-columns: repeat(3,1fr);
    }
}
@media only screen and (max-width: 991px) {
	.grid-container.sideblock-right-onethird,
	.grid-container.sideblock-left-onethird {
		grid-template-columns: inherit;
		grid-gap: 30px;
	}
}
@media only screen and (max-width: 767px) {
    .grid-container.twoblocks {
        grid-template-columns: repeat(1,1fr);
    }
	.grid-blocks.fourblocks,
	.grid-container.fourblocks {
		grid-template-columns: repeat(2,1fr);
	}
}
@media only screen and (max-width: 640px) {
    .grid-container, 
    .grid-container.threeblocks,
	.grid-blocks {
        grid-template-columns: repeat(1,1fr);
    }
}

.grid-list {
	grid-gap: 0 10px;
}

.grid-layout {
    display: grid;
    grid-column-gap: 30px;
    margin-bottom: 30px;
}
@media only screen and (min-width: 768px) {
    .twoblocks .grid-layout,
    .fourblocks .grid-layout {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media only screen and (min-width: 991px) { 
    .threeblocks .grid-layout {
        grid-template-columns: repeat(3,1fr);
    }
}
@media only screen and (min-width: 1300px) { 
    .fourblocks .grid-layout {
        grid-template-columns: repeat(4,1fr);
    }
}

/* ratio correction */
.ratio-wrapper {
    position: relative;
    margin-bottom: 0;
    overflow: hidden;
    height: auto;
}
/* 1:1 aspect ratio */
.ratio-corrector-1-1 {
    padding-top: 100%;
} 
/* 4:3 aspect ratio */
.ratio-corrector-4-3 {
    padding-top: 75%;
}
/* 3:2 aspect ratio */
.ratio-corrector-3-2 {
    padding-top: 66.667%;
}
/* 16:9 aspect ratio */
.ratio-corrector-16-9 {
    padding-top: 56.25%;
}
/* YouTube 16:9 aspect ratio */
.ratio-corrector-video {
    padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
}
@media all and (max-width: 500px) {
    .ratio-corrector-video {
        padding-top: 36px;
    }
}

.ratio-wrapper img, 
.ratio-wrapper iframe, 
.ratio-wrapper object, 
.ratio-wrapper embed, 
.ratio-wrapper .no-image {
    position: absolute;
    width: 100%;
    height: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}
.ratio-wrapper img {
    height: auto
}
.youtube-wrapper {
    margin-bottom: 30px
}
