:root {
	--font-size-h2-normal: 1.5rem;
	--font-size-h3-normal: 1.25rem;
	--font-size-p-normal: 1rem;
	--font-size-p-footer: 0.75rem;
	--letter-spacing-p-normal: 0.005rem;
	--letter-spacing-p-loose: 0.02rem;
	--line-height-h2-normal: 1.875rem;
	--line-height-h2-banner: 2rem;
	--line-height-h3-normal: 1.5625rem;
	--line-height-p-normal: 1.5rem;
	--line-height-p-footer: 0.9375rem;
	--padding-vertical-section: calc(40rem/16);
	--color-background-bright: #fff;
	--color-background-light-purple: #faeaf5;
	--color-text-h2: #404;
	--color-text-h3-onHeader: #868;
	--color-text-p: #656;
	--color-text-p-onBanner: #626;
	--color-text-a-onFooter: #606;
	--size-of-icon: 3rem;
}
@font-face {
    font-family: 'robotoregular';
    src: url('roboto-regular-webfont.woff2') format('woff2'),
         url('roboto-regular-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'robotomedium';
    src: url('roboto-medium-webfont.woff2') format('woff2'),
         url('roboto-medium-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;

}
html {
	margin: 0;
	padding: 0;
	font-family: 'robotoregular', 'Roboto', sans-serif;
	font-size: 100%;
}
body {
	margin: 0;
	padding: 0;
	font-size: var(--font-size-p-normal);
	line-height: var(--line-height-p-normal);
	letter-spacing: var(--letter-spacing-p-normal);
	color: var(--color-text-p);
}

section {
	background: var(--color-background-bright);
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
section.header {
	border-bottom: 1px solid #e0e0e0;
	letter-spacing: var(--letter-spacing-p-loose);
}
section.banner {
	background-image: url('consultation.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: var(--padding-vertical-section) 0;
	letter-spacing: var(--letter-spacing-p-loose);
}
section.main {
	padding: var(--padding-vertical-section) 0;
}
section.footer {
	background: var(--color-background-light-purple);
	padding: var(--padding-vertical-section) 0;
}

div.content {
	box-sizing: border-box;
	margin: auto;
	width: 85%;
	max-width: 40rem;
}
div.content.onHeader {
	display: flex;
	align-items: center;
}
div.content.onFooter {
	display: flex;
	justify-content: space-between;
	font-size: var(--font-size-p-footer);
	line-height: var(--line-height-p-footer);
}

h2 {
	margin: 3rem 0 1.5rem 0;
	font-family: 'robotomedium', 'Roboto', sans-serif;
	font-size: var(--font-size-h2-normal);
	font-weight: 500;
	line-height: var(--line-height-h2-normal);
	color: var(--color-text-h2);
}
h2.onBanner {
	line-height: var(--line-height-h2-banner);
}
h3 {
	margin: 3rem 0 1.5rem 0;
	font-family: 'robotomedium', 'Roboto', sans-serif;
	font-size: var(--font-size-h3-normal);
	font-weight: 500;
	line-height: var(--line-height-h3-normal);
	color: var(--color-text-h2);
}
h3.onHeader {
	margin: 2rem 0;
	color: var(--color-text-h3-onHeader);
}
a.onHeader3 {
	color: inherit;
}
a.onFooter {
	color: var(--color-text-a-onFooter);
	text-decoration: none;
}
p {
	margin: 1.5rem 0 1rem;
}
p.onBanner {
	font-family: 'robotomedium', 'Roboto', sans-serif;
	font-weight: 500;
	color: var(--color-text-p-onBanner);
}
p strong {
	font-family: 'robotomedium', 'Roboto', sans-serif;
	font-weight: 500;
	color: var(--color-text-h2);
}
ul.onFooter {
	width: 50%;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
ul li.padded {
	margin-bottom: 0.5rem;
}
ol li {
	margin: 0.75rem 0;
}
img.icon.onHeader {
	width: var(--size-of-icon);
	height: var(--size-of-icon);
	margin-right: calc(var(--size-of-icon)/5);
}
.hiddenVisibility {
	visibility: hidden;
}