/* montserrat-alternates-regular - latin */
@font-face {
font-display: swap;
font-family: 'Montserrat Alternates';
font-style: normal;
font-weight: 400;
src: url('../f/montserrat-alternates-v17-latin-regular.woff2') format('woff2'),
       url('../f/montserrat-alternates-v17-latin-regular.woff') format('woff');
}
/* montserrat-alternates-600 - latin */
@font-face {
font-display: swap;
font-family: 'Montserrat Alternates';
font-style: normal;
font-weight: 600;
src: url('../f/montserrat-alternates-v17-latin-600.woff2') format('woff2'),
       url('../f/montserrat-alternates-v17-latin-600.woff') format('woff');
}

:root {
--base:#fff;
--accent:#474587;
--accent-2:#D80E94;
}

body {
background: var(--base);
font-family: -apple-system,BlinkMacSystemFont,segoe ui,Roboto,Helvetica,Arial,sans-serif,apple color emoji,segoe ui emoji,segoe ui symbol;
font-size: 130%;
margin: 0;
padding: 0;
line-height: 1.2;
}

a { 
text-decoration: underline;
color: var(--accent);
}

a:visited, a:hover, a:focus { 
color: var(--accent-2);
text-decoration: underline;
}

a:active { 
color: #000;
text-decoration: underline;
}

header, footer, .content {
max-width: 840px;
margin-left: auto;
margin-right: auto;
}

body.page .banner {
height: 3em;
}

body.headerbanner .banner {
min-height: 10em;
}

body.topbanner .banner {
min-height: 6em;
}

.banner {
background-color: var(--accent);
background-image: linear-gradient(112.5deg, rgb(250, 109, 130) 0%, rgb(250, 109, 130) 3%,rgb(219, 107, 130) 3%, rgb(219, 107, 130) 34%,rgb(187, 104, 131) 34%, rgb(187, 104, 131) 46%,rgb(156, 102, 131) 46%, rgb(156, 102, 131) 51%,rgb(124, 99, 132) 51%, rgb(124, 99, 132) 52%,rgb(93, 97, 132) 52%, rgb(93, 97, 132) 76%,rgb(61, 94, 133) 76%, rgb(61, 94, 133) 84%,rgb(30, 92, 133) 84%, rgb(30, 92, 133) 100%),linear-gradient(157.5deg, rgb(250, 109, 130) 0%, rgb(250, 109, 130) 3%,rgb(219, 107, 130) 3%, rgb(219, 107, 130) 34%,rgb(187, 104, 131) 34%, rgb(187, 104, 131) 46%,rgb(156, 102, 131) 46%, rgb(156, 102, 131) 51%,rgb(124, 99, 132) 51%, rgb(124, 99, 132) 52%,rgb(93, 97, 132) 52%, rgb(93, 97, 132) 76%,rgb(61, 94, 133) 76%, rgb(61, 94, 133) 84%,rgb(30, 92, 133) 84%, rgb(30, 92, 133) 100%),linear-gradient(45deg, rgb(250, 109, 130) 0%, rgb(250, 109, 130) 3%,rgb(219, 107, 130) 3%, rgb(219, 107, 130) 34%,rgb(187, 104, 131) 34%, rgb(187, 104, 131) 46%,rgb(156, 102, 131) 46%, rgb(156, 102, 131) 51%,rgb(124, 99, 132) 51%, rgb(124, 99, 132) 52%,rgb(93, 97, 132) 52%, rgb(93, 97, 132) 76%,rgb(61, 94, 133) 76%, rgb(61, 94, 133) 84%,rgb(30, 92, 133) 84%, rgb(30, 92, 133) 100%),linear-gradient(90deg, rgb(71, 69, 135),rgb(241, 26, 171)); 
background-blend-mode:overlay,overlay,overlay,normal;
box-shadow: 0 0 20px rgb(0 0 0 / 80%) inset;
}

header {
text-align: center;
margin-top: 4em;
margin-bottom: 2em;
}

.banner header {
margin-top: 0;
padding-top: 3em;
padding-bottom: 3em;
}

body.page header {
max-width: 90%;
margin-top: 1.5em;
margin-bottom: -1em;
display: flex;
justify-content: space-between;
}

body.page nav {
margin: .2em 0 0 0;
}

body.page nav ul {
margin: 0;
}

body.page nav ul li {
text-align: left;
display: inline;
background: none;
vertical-align: middle;
margin: 0 0 .5em 1em;
padding: 0;
}

body.page nav ul li a {
font-family: 'Montserrat Alternates', sans-serif;
font-weight: 600;
text-transform: uppercase;
font-size: 90%;
text-decoration: none;
}

footer {
text-align: center;
margin-top: 6em;
margin-bottom: 6em;
font-size: 70%;
}

h1, h2, h3 {
font-family: 'Montserrat Alternates', sans-serif;
font-weight: 600;
text-align: center;
text-transform: uppercase;
}

h1 {
font-size: 300%;
color: var(--accent);
margin-bottom: -.2em;
margin-top: 0;
}

h1 span {
color: var(--accent-2);
}

h1 img {
margin-right: .2em;
height: 1.2em;
width: auto;
vertical-align: top;
}

body.page h1 {
font-size: 150%;
text-align: left;
margin: 0;
}

h2 {
margin-top: 2em;
font-size: 200%;
color: var(--accent);
}

h2.lead {
font-size: 175%;
}

h3 {
margin-top: 1.5em;
font-size: 150%;
color: var(--accent);
}

p {
margin: 1.2em 0;
}

.lead {
font-family: 'Montserrat Alternates', sans-serif;
font-weight: 600;
font-size: 100%;
}

/* header in banner */

.banner header h1, .banner header h1 span, .banner header p {
color: var(--base);
}

.banner header h1 {
text-shadow: 0.05em 0.05em 0 rgba(0,0,0,.5);
}

.banner header h1 img {
filter: drop-shadow(0.05em 0.05em 0 rgb(0 0 0 / .5));
}

.banner header .lead {
text-shadow: 0.1em 0.1em 0 rgba(0,0,0,.5);
}

ul {
padding-left: 0;
}

li {
margin-bottom: 1em; 
list-style: none;
background: url(../images/icon-pink.svg) no-repeat 0 0;
background-size: 2em auto;
background-position: 0 .3em;
padding: .5em 0 .5em 2.5em;
}

p strong, li strong {
color: var(--accent-2);
}

main img {
max-width: 100%;
height: auto;
border-radius: 20px;
box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}


/* Features */

.features {
display: flex;
flex-wrap: wrap;
justify-content: center;
width: calc(100% + 2em);
margin: 3em 0 3em -2em;
padding: 0;
list-style: none;
}

.features li {
width: calc(33.33333% - 2em);
margin-left: 2em;
margin-top: 3em;
padding: 0;
background: none;
text-align: center;
}

.features li:nth-child(1), .features li:nth-child(2), .features li:nth-child(3) {
margin-top: 0;
}

.features li > :last-child {
margin-bottom: 0;
}

.features li img {
width: 65%;
border-radius: 0;
box-shadow: none;
}

.features li h3 {
margin: 0.5em 0 -.5em 0;
}

.features li p {
font-size: 90%;
}

.gallery {
display: flex;
flex-wrap: wrap;
margin: 2em 0 0 -1.25rem;
width: calc(100% + 1.25rem);
}

.gallery img {
display: block;
margin: 1.25rem 0 0 1.25rem;
width: calc(50% - 1.25rem);
}




/* media queries */

@media only screen and (max-width: 900px) {

header, footer, .content {
max-width: 85%;
}

}

@media only screen and (max-width: 800px) {

body.headerbanner .banner {
min-height: 8em;
}

header {
margin-top: 3em;
margin-bottom: 1.5em;
}

.banner header {
margin-top: 0;
padding-top: 2.5em;
padding-bottom: 2.5em;
}

body.page header {
display: block;
}

body.page h1 {
text-align: center;
}

footer {
margin-top: 4em;
margin-bottom: 4em;
}

h1 {
font-size: 250%;
}

h2 {
font-size: 150%;
}

h3 {
font-size: 120%;
}

.features {
width: 100%;
margin: 2em 0;
}

.features li {
width: 100%;
margin-left: 0;
margin-top: 2em;
}

.features img {
max-width: 50%;
}


.features li:nth-child(2), .features li:nth-child(3) {
margin-top: 2em;
}

.gallery img {
display: block;
margin: 1.25rem 0 0 1.25rem;
width: 100%;
margin-left: 0;
margin-top: 2em;
}

}


@media only screen and (max-width: 450px) {

.banner {
min-height: 2.5em;
}

body.headerbanner .banner {
min-height: 6em;
}

header {
margin-top: 2.5em;
margin-bottom: 1.25em;
}

.banner header {
margin-top: 0;
padding-top: 2em;
padding-bottom: 2em;
}

h1 {
font-size: 180%;
}

h2 {
font-size: 120%;
}

h3 {
font-size: 110%;
}

.lead {
font-size: 105%;
}

}