

body .side-pp h2:first-child,
body .side-pp h3:first-child,
body .side-pp h4:first-child,
body .side-pp ul:first-child,
body .side-pp ol:first-child {
	margin-top: 0;
}

body .side-pp h2:last-child,
body .side-pp h3:last-child,
body .side-pp h4:last-child,
body .side-pp p:last-child,
body .side-pp ul:last-child,
body .side-pp ol:last-child {
	margin-bottom: 0;
}

.template hr {
    background-color: #ebe9e9;
    height: 1px;
    border: none;
}



/***************************/
/*******  Template *********/
/***************************/

.template {

    /* width: 100%; */
    margin-inline: auto;
}
.template h2,
.template .h2,
.template h4,
.template .h4,
.template h3,
.template .h3,
.template ul, 
.template ol,
.template p {
    font-size: 20px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
    color: var(--third);
    margin: 0;
    margin-block: 24px;
}


.template h3 + h2, 
.template h4 + h3, 
.template h3 + h4, 
.template h2 + h3, 
.template h4 + h2,
.template h2 + h4{
    margin: 0;
} 

.template .table-wrapper + h2,
.template .table-wrapper + h3, 
.template .table-wrapper + h4,
.template ol + h2,
.template ol + h3,
.template ul + h2,
.template ul + h3,
.template p + h2,
.template p + h3, 
.template ol + h4,
.template ul + h4,
.template p + h4 {
    margin: 50px 0 0;
}

.template h2,
.template .h2 {
    font-size: 40px;
    font-weight: 600;
    line-height: 1.12;
    letter-spacing: normal;
    margin: 0.8em 0;
}

.template h3,
.template .h3 {
    font-size: 26px;
    font-weight: 500;
    color: var(--primary);
    margin: 1em 0;
    line-height: 1.2;
}

.template h4,
.template .h4 {
    font-size: 22px;
    font-weight: 600;
    margin: 1em 0;
    line-height: 1.18;
    color: var(--secondary);
}

.template h2 b,
.template .h2 b,
.template h3 b,
.template .h3 b,
.template h4 b,
.template .h4 b,
.template h2 strong,
.template .h2 strong,
.template h3 strong,
.template .h3 strong,
.template h4 strong,
.template .h4 strong {
    color: 	var(--secondary);
}

.template b,
.template strong {
    font-weight: bold;
}

.template small a,
.template ul a,
.template p a {
    display: inline-flex;
    font-weight: bold;
    transition: var(--transition);
    color: var(--primary);
    position: relative;
}


.template p a {
    display: inline;
    border-bottom: 1px solid transparent;
}

.template small a,
.template ul a {
    border-bottom: 1px solid transparent;
}


.template small a:hover,
.template ul a:hover,
.template p a:hover {
    color: var(--primary);
}


.template small, 
p small {
    font-size: 14px;
    display: inline-block;
     
}

.template strong small,
p b small {
    font-weight: bold;
}

/* .template small {
    margin: 0.8em 0;
}  */

.template small.text-center {
    width: 100%;
} 

.template blockquote > *,
.template p:has(big) {
    position: relative;
    display: block;
    font-size: 26px;
    font-weight: 500;
    line-height: 1.38;
    color: var(--secondary);
    letter-spacing: normal;
    text-align: left;
}
.template p big {
    position: relative;
    display: block;
    font-size: 26px;
    font-weight: 500;
    line-height: 1.38;
    color: var(--secondary);
    letter-spacing: normal;
    text-align: left;
}


.template p:has(big) ,
.template blockquote {
    position: relative;
    margin-block: 47px;
    border-radius: 20px;
    padding-left: 55px;
}
.template blockquote {
    margin-inline: 0;
}

big::before {
    content: ' ';
    background-color: var(--primary);
    width: 5px;
    height: calc(100% - 10px);
    display: block;
    position: absolute;
    top: 5px;
    left: -42px;
    border-radius: 5px;
}


blockquote::before {
    content: '';
    -webkit-mask-image: url(/landing-page/assets/img/template/quote.svg);
    mask-image: url(/landing-page/assets/img/template/quote.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    display: block;
    width: 31px;
    height: 25px;
    position: absolute;
    top: 0px;
    left: 0px;
}

.template blockquote p {
    padding-top: 0;
    margin: 0;
}

.template blockquote small {
    color: var(--primary);
    font-size: 14px;
}


.template ul, .template ol {
    list-style-type: none;
    margin: 0;
    padding-block: 0px;
    margin-block: 26px;
    counter-reset: item;
    padding-left: 26px;
}

.template ul li::before {
    content: "";
    display: inline-block;
    height: 6px;
    display: inline-flex;
    width: 6px;
    border-radius: 100%;
    margin-left: -25px;
    margin-right: 20px;
    background-color: var(--primary);
    vertical-align: super;
    align-items: center;
}


.template ul li ul, 
.template ol li ol,
.template ul li ol,
.template ol li ul{
    padding-left: 30px;
}


.template ol li::before {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
    color: var(--primary);
    counter-increment: item;
    content: counter(item) ".";
    display: inline-block;
    margin-left: -25px;
    margin-right: 8px;
    width: 16px;
}


/***************************************************/
/***************** MODULE TABLE ********************/
/**************************************************/


.template table th {
	background-color: #fef8f4;
}


.template table {
	padding: 0;
}

.template table th {
	color: white;
	font-weight: bold;

}

.template table td {
	font-weight: 300;
}

.template table tr > td:first-of-type {
	padding-right:20px;
}

.template table td b,
.template table td strong {
	font-weight: 600;
	text-align: left;
}

.template .table-wrapper .swipeIcon{
    display: none;
}

.template .table-wrapper.swipe {
    overflow: auto;
}

.template .table-wrapper.swipe {
    overflow: auto;
    margin-inline: -20px;
    padding-inline: 20px;
    padding-bottom: 20px;
}


.template .table-wrapper.swipe .swipeIcon {
    display: flex;
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: var(--secondary);
    margin-bottom: 20px;
    width: 100%;
    justify-content: center;
    align-items: center;
    gap: 13px;
}

.template .table-wrapper.swipe .swipeIcon::before {
    position: relative;
    display: inline-flex;
    width: 25px;
    height: 27px;
    content: "";
    -webkit-mask-image: url("/assets/img/template/swipe.svg");
    mask-image: url("/assets/img/template/swipe.svg");
    background-color: var(--secondary);
}

.template table img {
    display: inline;
}

.template table,
.template table td,
.template table tr,
.template table th {
    font-size: 16px;
    line-height: 1.63;
    letter-spacing: normal;
    text-align: left;
    padding: 11px 20px;
    position: relative;
    color: var(--secondary);
    border: solid 1px #e9e8e8;
    border-collapse: collapse;
}

.template table th {
    font-weight: bold;
    color: var(--primary);
}

.template table td  {
    font-weight: 300;
    color: var(--secondary);
}

.template table td b {
    font-weight: bold;
    text-align: left;
}




@media(max-width: 768px) {

    .template h2, .template .h2 {
        font-size: 26px;
        line-height: 1.16;
    }

    .template h3, .template .h3 {
        font-size: 24px;

    }
    .template h4, .template .h4 {
        font-size: 20px;
        font-weight: bold;
        line-height: normal;
    }

    .template ul,
    .template ol,
    .template p {
        font-size: 18px;
        line-height: 1.61;
        margin-block: 11px;
    }

    .template blockquote small,
    .template small, 
    p small {
        font-size: 13px;
        line-height: 1.45;
    }

    .template blockquote p, .template p big {
        font-size: 22px;
        line-height: 1.33;
    }

    .template p:has(big), .template blockquote {
        padding: 30px 39px 30px 38px;
        border-radius: 0px;
        margin-inline: -20px;
        margin-block: 24px;
    }

    big::before {
        content: ' ';
        background-color: var(--primary);
        width: 3px;
        height: calc(100% - -5px);
        display: block;
        position: absolute;
        top: -4px;
        left: -20px;
        border-radius: 5px;
    }

    .template table, 
    .template table td, 
    .template table tr, 
    .template table th {
        font-size: 18px;
        line-height: 1.66;
        padding: 13px 17px;
    }

    blockquote::before {
        left: 11px;
        width: 17px;
        height: 14px;
        top: 35px;
    }
    




    .template ol li::before {
        font-size: 18px;
        font-weight: 600;
    }


    .template ol + h2, 
    .template ol + h3, 
    .template ul + h2, 
    .template ul + h3, 
    .template p + h2, 
    .template p + h3, 
    .template ol + h4, 
    .template ul + h4, 
    .template p + h4 {
        margin: 24px 0 0;
    }
}