/*
	Theme Name: Base
	Theme URI: https://www.mypreview.com
	Description: Base
	Version: 1.0
	Author: Filippo Montanari
	Author URI: https://www.linkedin.com/in/filippomontanari/
	Text Domain: base
	Domain Path: /languages
*/
:root {
    --blue: #224A81;
    --lightblue: #0086CB;
    --roc-regular: "roc-grotesk", sans-serif;
    --roc-condensed: "roc-grotesk-condensed", sans-serif;
    --fw-extrabold: 700;
    --fw-black: 800;
}
:focus {
    outline: none;
}
html {
	font-size: 62.5%;
	scroll-behavior: smooth;
}
body {
    background: url("images/bg-body.svg") no-repeat center top/170rem;
    font: 2.4rem var(--roc-regular);
}
a {
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	color: #999998;
}
a:hover {
	color: #003361;
}
h1, .h1 {
	font: 800 5.6rem var(--roc-condensed);
    color: var(--blue);
	margin-bottom:0;
    text-transform: uppercase;
    text-align: center;
}
h2, .h2 {
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 1.5rem;
}
h3, .h3 {
	font-size: 2rem;
	font-weight: 700;
}
h4, .h4 {
	font-size: 1.8rem;
	font-weight: 700;
}
p {
	margin-bottom: 1.5rem;
}
iframe, embed, object, video {
	max-width: 100%;
}
.logo {
    padding-top: 3.3rem;
    padding-bottom: 2rem;
}
.logo img {
    width: 60%;
}
body:not(.home) .logo img {
    width: 14.6rem;
}
section {
	position: relative;
}
main {
    flex: 1;
    color: #fff;
}
/* FOOTER */
footer {
	background: #fff;
    color: var(--blue);
    font-size: 1.8rem;
    border-top: .5rem solid var(--blue);
}
footer a {
	font-weight: bold;
    text-decoration: none;
    color: var(--blue);
}
footer a:hover {
    text-decoration: underline;
    color: var(--lightblue);
}
.title-main {
    height: 13rem;
}
.grecaptcha-badge {
    display: none !important;
}
.cta-download {
    font-weight: var(--fw-extrabold);
    color: #fff;
    text-decoration: none;
}
dl {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    border-bottom: .2rem solid #fff;
    font-size: 2rem;
}
dt {
    font-weight: normal;
    width: 70%;
    text-align: left;
    border: .2rem solid #fff;
    border-width: .2rem .2rem 0 0;
    margin: 0;
    padding: 1rem;
}
dd {
    width: 30%;
    border: .2rem solid #fff;
    border-width: .2rem 0 0 0;
    margin: 0;
    padding: 1rem;
    display: flex;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}
dt p:last-child {
    margin: 0;
}
dt strong {
    font-weight: 500;
}
.btn {
    font-size: 3rem;
    font-weight: 700;
    color: #fff;
    padding: 1rem 5rem;
    border: 0;
    text-decoration: none;
}
.btn.btn-primary {
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='227' height='59' viewBox='0 0 227 59' fill='none'%3E%3Cpath d='M208.085 3.30185C200.22 0.823562 192.106 0.813488 184.082 0.833637C140.945 0.833637 97.8021 0.974677 54.6653 1.0452C37.5524 1.07542 19.6832 -2.86364 5.35349 16.4085C3.0371 19.5215 0.809353 23.3598 0.177074 28.2761C-0.55566 33.9681 1.09299 39.9824 3.62211 43.9114C6.15122 47.8404 9.43671 50.0165 12.7163 51.6989C26.2069 58.6401 40.5425 58.6099 54.6299 58.5293C91.9048 58.2976 129.186 58.0658 166.461 57.8341C181.375 57.7435 196.444 57.6226 210.968 51.8097C214.626 50.3489 218.307 48.465 221.38 44.7778C224.453 41.0906 226.858 35.308 226.994 28.9007C227.266 16.5093 219.554 8.16774 212.528 4.99433C211.057 4.32943 209.58 3.77534 208.091 3.30185H208.085Z' fill='%23224A81'/%3E%3C/svg%3E") no-repeat center center/100% 100%;
}
:hover.btn.btn-primary {
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='227' height='59' viewBox='0 0 227 59' fill='none'%3E%3Cpath d='M208.085 3.30185C200.22 0.823562 192.106 0.813488 184.082 0.833637C140.945 0.833637 97.8021 0.974677 54.6653 1.0452C37.5524 1.07542 19.6832 -2.86364 5.35349 16.4085C3.0371 19.5215 0.809353 23.3598 0.177074 28.2761C-0.55566 33.9681 1.09299 39.9824 3.62211 43.9114C6.15122 47.8404 9.43671 50.0165 12.7163 51.6989C26.2069 58.6401 40.5425 58.6099 54.6299 58.5293C91.9048 58.2976 129.186 58.0658 166.461 57.8341C181.375 57.7435 196.444 57.6226 210.968 51.8097C214.626 50.3489 218.307 48.465 221.38 44.7778C224.453 41.0906 226.858 35.308 226.994 28.9007C227.266 16.5093 219.554 8.16774 212.528 4.99433C211.057 4.32943 209.58 3.77534 208.091 3.30185H208.085Z' fill='%23ffffff'/%3E%3C/svg%3E") no-repeat center center/100% 100%;
    color: var(--blue);
}
.btn.btn-secondary {
	
}
:hover.btn.btn-secondary {
	
}


.bg-b { background-color: #003361; }
.w { color: #fff; }

@media (min-width: 576px) {
	
} /* end min-width: 576px */

@media (min-width: 768px) {
    body {
        background: url("images/bg-body.svg") no-repeat center top/auto;
    }
    h1 {
        font: 800 9.6rem/7.6rem var(--roc-condensed);
    }
    .logo {
        padding-top: 6rem;
        padding-bottom: 6rem
    }
    body.home .logo {
        padding-top: 9.3rem;
        padding-bottom: 8rem
    }
    .logo img {
        width: inherit;
    }
    body:not(.home) .logo img {
        width: 22.6rem;
    }
    .title-main {
        height: 22rem;
    }

} /* end min-width: 768px */

@media (min-width: 992px) {
    dl {
        font-size: 2.6rem;
    }
    dt, dd {
        padding: 2rem;
    }
} /* end min-width: 992px */

@media (min-width: 1200px) {
	
} /* end min-width: 1200px */

@media (min-width: 1400px) {
	
} /* end min-width: 1200px */

/* WP STANDARD */
.aligncenter,
div.aligncenter {
    display: block;
	margin: 0 auto;
}
@media (min-width: 768px) {
	.alignright {
		float:right;
	}
	.alignleft {
		float: left;
	}

	a img.alignright {
		float: right;
	}

	a img.alignleft {
		float: left;
	}
}
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.wp-caption {
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}
.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

blockquote:not(.tiktok-embed) {
	position: relative;
    background: #fff;
    border-left: 2px solid #e41d24;
    padding: 2rem 1rem 2rem 3rem;
    margin: 0 0 2rem 1rem;
}
blockquote:not(.instagram-media):not(.twitter-tweet):not(.tiktok-embed):after {
    font: 900 2.3rem/4rem 'Font Awesome 5 Free';
	content: "\f10e";
    background-color: #fff;
    opacity: 1;
    z-index: 0;
    position: absolute;
    top: calc(50% - 20px);
    left: -20px;
    width: 40px;
    height: 40px;
	text-align: center;
	transform: scaleX(-1);
	color: #e41d24;
}
blockquote p:last-child {
    margin: 0;
}
/* embed center alignment */
.twitter-tweet { margin:auto !important; display: block; }
.iframe-container { text-align: center; }
.embed-responsive {
	position: relative;
	display: block;
	height: 0;
	padding: 0;
	overflow: hidden;
	margin-bottom: 2.5rem;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
.embed-responsive-16by9 {
	padding-bottom: 56.25%;
}
