body.free-readings-app * {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

:root {
	--fr-gap: 1rem;
	--fr-gap-big: 2rem;
	--fr-gap-small: 0.5rem;
	--fr-gap-tiny: 0.25rem;

}

body.free-readings-app {
	background-color: #34303e;
	background-repeat: no-repeat;
	background-size: cover;
	color: #404e4d;
	font-family: 'Raleway', sans-serif;
	font-size: 100% !important;
	font-weight: 400;
	line-height: 1.5;
	min-height: 100vh;
	padding-bottom: var( --fr-gap );
	padding-top: var( --fr-gap );
}

body.free-readings-app .container {
	display: flex;
	flex-direction: column;
	margin: 0 auto;
	max-width: 112ch;
	width: calc( 100% - 2 * var( --fr-gap ) );
}

body.free-readings-app .container > * + * {
	margin-top: var( --fr-gap );
}

body.free-readings-app .inner  {
	background: rgba( 255, 255, 255, 0.9 );
	border-radius: 8px;
	padding: var( --fr-gap-small );
}

body.free-readings-app header .inner {
	background: rgba( 255, 255, 255, 0.1 );
}

body.free-readings-app .site-name {
	color: #fff;
	font-family: 'Roboto Slab', serif;
	font-size: 2.441rem;
	font-weight: 700;
	margin-bottom: 0;
	text-align: center;
}

body.free-readings-app nav ul {
	align-items: center;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
}

body.free-readings-app nav ul li {
	list-style-type: none;
}

body.free-readings-app nav ul > li + li {
	margin-left: var( --fr-gap );
}

body.free-readings-app nav a .fas {
	color: #404e4d;
	display: none;
	margin-left: 0.5em;
}

body.free-readings-app h1,
body.free-readings-app h2,
body.free-readings-app h3
{
	font-family: 'Roboto Slab', serif;
	font-weight: 700;
}

body.free-readings-app h1 {
	border-bottom: 6px solid #404e4d;
	font-size: 1.953rem;
	margin-bottom: var( --fr-gap );
}

body.free-readings-app.logged-in h1 {
	margin-bottom: 0;
}

body.free-readings-app h2 {
	border-bottom: 3px solid #404e4d;
	font-size: 1.563rem;
	margin-bottom: var( --fr-gap );
}

body.free-readings-app h3 {
	font-size: 1.25rem;
	margin-bottom: var( --fr-gap-tiny );
}

body.free-readings-app p {
	margin-bottom: var( --fr-gap-small );
}

body.free-readings-app p:not(.site-name):last-child {
	margin-bottom: 0;
}

body.free-readings-app strong {
	font-weight: 700;
}

body.free-readings-app .user-name {
	font-size: 0.8rem;
	font-weight: 700;
	padding-top: 0.2em;
	text-align: right;
}

body.free-readings-app .meta {
	font-size: 0.8rem;
	font-weight: 700;
}

body.free-readings-app .meta li {
	display: inline-block;
	list-style-type: none;
	margin-bottom: var( --fr-gap-tiny );
}

body.free-readings-app .meta li:not(:last-child) {
	margin-right: 1em;
}

body.free-readings-app a {
	color: #fb4d3d;
	font-weight: 700;
	text-decoration: none;
}

body.free-readings-app a:focus,
body.free-readings-app a:hover
{
	text-decoration: underline;
}

body.free-readings-app main ul:not([class]) {
	list-style-type: none;
	margin-bottom: var( --fr-gap );
}

body.free-readings-app main ul:not([class]) > li + li {
	margin-top: var( --fr-gap-tiny );
}

body.free-readings-app .button {
	background-color: #fb4d3d !important;
	border-radius: 4px;
	box-shadow: none !important;
	color: #fff !important;
	display: inline-block;
	font-size: 1rem;
	font-weight: 700;
	margin: 0;
	padding: 0.8em 1em !important;
	text-transform: none !important;
	transition: all 0.5s;
}

body.free-readings-app .button:focus,
body.free-readings-app .button:hover
{
	background-color: #ff6b5b;
	text-decoration: none;
}

body.free-readings-app .button.button-secondary {
	background-color: #62bec1;
}

body.free-readings-app .button.button.button-secondary:focus,
body.free-readings-app .button.button.button-secondary:hover
{
	background-color: #76d2d5;
}

body.free-readings-app .button.button-cancel,
body.free-readings-app .button.button-cancel:focus,
body.free-readings-app .button.button-cancel:hover
{
	background-color: #404e4d;
}

body.free-readings-app .button .fas {
	margin-right: 0.5em;
	opacity: 0.8;
	transition: all 0.5s;
}

body.free-readings-app .button:focus .fas,
body.free-readings-app .button:hover .fas
{
	opacity: 1;
}

body.free-readings-app button {
	background-color: #fb4d3d;
	border: none;
	border-radius: 4px;
	color: #fff;
	font-size: 0.8rem;
	letter-spacing: 0.1em;
	padding: 0.8em 1em;
	text-transform: uppercase;
}

body.free-readings-app .account-item:not(:last-of-type) {
	margin-bottom: var( --fr-gap );
}

body.free-readings-app .change-account-form-wrap {
	display: none;
}

body.free-readings-app input[type="submit"] {
	border: 0 none;
}

body.free-readings-app .exchange-emails-form_wrapper .gfield_label,
body.free-readings-app .reading-answer-form_wrapper .gfield_label,
body.free-readings-app .reading-feedback-form_wrapper .gfield_label,
body.free-readings-app .readings-form_wrapper .gfield_label,
body.free-readings-app .readers-form_wrapper .gfield_label,
body.free-readings-app .account-item .gfield_label,
body.free-readings-app .querent-reading-response-form_wrapper .gfield_label,
body.free-readings-app .reader-reading-response-form_wrapper div.gfield .gfield_label
{
	display: none !important;
}

body.free-readings-app main .gform_wrapper input,
body.free-readings-app main .gform_wrapper select,
body.free-readings-app main .gform_wrapper textarea
{
	background-color: white;
	background-image: none !important;
	border: 0 none;
	border-radius: 4px;
	color: black;
	font-size: 1rem;
}

body.free-readings-app main .gform_wrapper .gform_required_legend,
body.free-readings-app main .gform_wrapper .gfield_required
{
	display: none;
}

body.free-readings-app .gform_wrapper .gfield_checkbox > .gchoice + .gchoice, .gform_wrapper .gfield_radio > .gchoice + .gchoice {
	margin-top: var( --fr-gap-tiny );
}

body.free-readings-app .gform_wrapper .gfield_checkbox button {
	background-color: #62bec1;
}

body.free-readings-app main .gform_wrapper.gravity-theme .gfield_description {
	font-size: 1rem;
}

body.free-readings-app main .gform_wrapper .gform_validation_errors {
	background-color: rgba( 0, 0, 0, 0.1 );
	border: none;
	border-radius: 4px;
	box-shadow: none;
	margin: var( --fr-gap-tiny ) 0;
	padding: var( --fr-gap-tiny );
}

body.free-readings-app main .gform_wrapper .gform_validation_errors > p {
	font-weight: 700;
}

body.free-readings-app .gform_submission_error span {
	color: #fb4d3d;
	margin-right: 0.5em;
}

body.free-readings-app main .gform_wrapper .gfield_error [aria-invalid="true"] {
	border: 2px solid #fb4d3d;
}

body.free-readings-app main .gform_wrapper .gform_validation_message, main .gform_wrapper .validation_message {
	background-color: rgba( 0, 0, 0, 0.1 );
	border: none;
	border-radius: 4px;
	color: #404e4d;
	font-size: 1rem;
	font-weight: 700;
	margin-top: var( --fr-gap-tiny );
	padding: var( --fr-gap-tiny );
}

body.free-readings-app main .gform_confirmation_wrapper:not(:last-child) {
	margin-bottom: var( --fr-gap-small );
}

body.free-readings-app .reader-meta {
	border-radius: 4px;
	background-color: rgba( 0, 0, 0, 0.1 );
	margin-bottom: var( --fr-gap );
	padding: var( --fr-gap-tiny );
}

body.free-readings-app main .reader-meta ul {
	font-weight: 700;
	margin-bottom: 0;
}

body.free-readings-app .reader-meta .fas {
	margin-right: 0.5em;
	opacity: 0.7;
}

body.free-readings-app .reading-list:not(:last-child) {
	margin-bottom: var( --fr-gap );
}

body.free-readings-app .reading-list > * + * {
	margin-top: var( --fr-gap );
}

body.free-readings-app .reading-list .meta {
	border-radius: 4px 4px 0 0;
	background-color: rgba( 0, 0, 0, 0.1 );
	display: inline-block;
	padding: var( --fr-gap-tiny ) var( --fr-gap-tiny ) 0;
}

body.free-readings-app .reading-list .question {
	border-radius: 0 4px 4px 4px;
	background-color: #fff;
	padding: var( --fr-gap-tiny );
}

body.free-readings-app .reading-list .question.with-actions {
	border-radius: 0 4px;
}

body.free-readings-app .reading-list .meta .fas {
	margin-right: 0.5em;
	opacity: 0.7;
}

body.free-readings-app .reading-list .actions {
	text-align: right;
}

body.free-readings-app .reading-list .actions a {
	display: inline-block;
}

body.free-readings-app .reading-list .actions a:not(.button) {
	font-size: 0.8rem;
}

body.free-readings-app .reading-list .actions p > * + * {
	margin-left: 1em;
}

body.free-readings-app .reading-list .button {
	border-radius: 0 0 4px 4px;
	display: inline-block;
}

body.free-readings-app .events-table {
	border-collapse: collapse;
	width: 100%;
}

body.free-readings-app .events-table th, .events-table td {
	padding: var( --fr-gap-tiny ) var( --fr-gap-small );
}

body.free-readings-app .events-table thead th {
	background-color: #62bec1;
	color: #fff;
	font-weight: 700;
	text-align: left;
}

body.free-readings-app .events-table tbody td {
	font-size: 0.8rem;
}

body.free-readings-app .events-table tbody tr:nth-child( even ) {
	background-color: rgba( 0, 0, 0, 0.1 );
}

body.free-readings-app .grid {
	display: grid;
	grid-gap: 0.5rem;
	grid-template-columns: repeat( 3, 1fr );
	gap: 0.5rem;
}

body.free-readings-app .grid:not(:last-child) {
	margin-bottom: var( --fr-gap );
}

body.free-readings-app .grid li {
	background-color: rgba( 0, 0, 0, 0.1 );
	border-radius: 4px;
	display: block;
	text-align: center;
}

body.free-readings-app .grid li:not(.linked) {
	padding: 2rem 0.5rem;
}

body.free-readings-app .grid li a {
	background-color: #62bec1;
	border-radius: 4px;
	color: #fff;
	display: block;
	height: 100%;
	padding: 2rem 0.5rem;
	transition: all 0.5s;
}

body.free-readings-app .grid li a:focus, .grid li a:hover {
	background-color: #76d2d5;
	text-decoration: none;
}

body.free-readings-app .grid li span {
	display: block;
}

body.free-readings-app .grid li span.count {
	font-size: 2.441rem;
	font-weight: 700;
	line-height: 1;
}

body.free-readings-app .dates-grid {
	display: grid;
	grid-gap: 0.5rem;
	grid-template-columns: repeat( 7, 1fr );
	gap: 0.5rem;
	margin-bottom: var( --fr-gap );
}

body.free-readings-app .dates-grid li {
	background-color: rgba( 0, 0, 0, 0.1 );
	border-radius: 4px;
	display: block;
}

body.free-readings-app .dates-grid .dates-day {
	background-color: rgba( 0, 0, 0, 0.3 );
	color: #fff;
	font-weight: 700;
	padding: 0.2em;
	text-align: center;
}

body.free-readings-app .dates-grid .dates-gap {
	background-color: transparent;
}

body.free-readings-app .dates-grid label {
	display: block;
	line-height: 1;
	margin: 0;
	text-align: center;
}

body.free-readings-app .dates-grid label span {
	display: block;
}

body.free-readings-app .dates-grid label span:first-child {
	font-weight: 700;
	padding-top: 0.6em;
}

body.free-readings-app .dates-grid label span + span {
	padding-bottom: 0.6em;
	padding-top: 0.6em;
}

body.free-readings-app .dates-grid label span:last-child {
	background-color: rgba( 0, 0, 0, 0.1 );
}

body.free-readings-app .dates-grid .dates-choice {
	transition: all 0.5s;
}

body.free-readings-app .dates-grid .dates-choice:focus, .dates-grid .dates-choice:hover {
	background-color: #fb4d3d;
	color: #fff;
}

body.free-readings-app .dates-grid .dates-availability {
	font-weight: 700;
	line-height: 1;
	padding: 0.6em 0.2em;
	text-align: center;
}

body.free-readings-app .dates-grid .dates-availability-yes {
	background-color: #62bec1;
	color: #fff;
}

body.free-readings-app .dates-grid .dates-availability-none {
	background-color: #fb4d3d;
	color: #fff;
}

body.free-readings-app .dates-grid .dates-availability span {
	background-color: rgba( 0, 0, 0, 0.1 );
	border-radius: 0 0 4px 4px;
	display: block;
	font-weight: normal;
	margin: 0.6em -0.2em -0.6em;
	padding: 0.6em 0.2em;
}

body.free-readings-app .dates-details {
	display: grid;
	gap: .5rem;
	grid-gap: .5rem;
	grid-template-columns: 1fr 1fr;
	margin-bottom: var( --fr-gap );
}

@media only screen and ( min-width: 600px ) {

	body.free-readings-app .dates-details {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}

}

body.free-readings-app .dates-details > * {
	background-color: rgba( 0, 0, 0, .1 );
	border-radius: 4px;
	padding: .6em;
}

body.free-readings-app .dates-details > .dates-availability-none {
	background-color: rgba( 0, 0, 0, .2 );
}

body.free-readings-app main .dates-details ul {
	margin-bottom: 0;
}

body.free-readings-app main .dates-details ul li + li {
	margin-top: 0;
}

body.free-readings-app .readers-list {
	display: grid;
	gap: .5rem;
	grid-gap: .5rem;
	grid-template-columns: 1fr 1fr;
	margin-bottom: var( --fr-gap );
}

@media only screen and ( min-width: 600px ) {

	body.free-readings-app .readers-list {
		grid-template-columns: 1fr 1fr 1fr;
	}

}

body.free-readings-app .readers-list > * {
	background-color: rgba( 0, 0, 0, .1 );
	border-radius: 4px;
	padding: .6em;
}

body.free-readings-app .ajax-error,
body.free-readings-app .ajax-success
{
	background-color: rgba( 0, 0, 0, 0.1 );
	border-radius: 0 0 4px 4px;
	display: inline-block;
	font-weight: 700;
	padding: var( --fr-gap-tiny );
}

body.free-readings-app .faq {
	background-color: rgba( 0, 0, 0, 0.1 );
	border-radius: 8px;
	padding: var( --fr-gap-tiny );
}

body.free-readings-app .faq + .faq {
	margin-top: var( --fr-gap-small );
}

body.free-readings-app .faq h2 {
	margin-bottom: var( --fr-gap-tiny );
}

body.free-readings-app .export-error {
	font-weight: 700;
}

body.free-readings-app .export-error span {
	color: #fb4d3d;
}

@media only screen and ( min-width: 600px ) {

	:root {
		--fr-gap: 2rem;
		--fr-gap-big: 4rem;
		--fr-gap-small: 1rem;
		--fr-gap-tiny: 0.5rem;
	}

	body.free-readings-app nav ul > li + li {
		margin-left: var( --fr-gap-small );
	}

}

@media only screen and ( min-width: 840px ) {

	:root {
		--fr-gap: 3rem;
		--fr-gap-big: 6rem;
		--fr-gap-small: 1.5rem;
		--fr-gap-tiny: 0.75rem;
	}

	body.free-readings-app .container {
		display: grid;
		grid-gap: var( --fr-gap );
		grid-template-areas:
			"header header"
			"sidebar main";
		grid-template-columns: fit-content( 20ch ) minmax( min( 50vw, 30ch ), 1fr );
	}

	body.free-readings-app .container > * + * {
		margin-top: 0;
	}

	body.free-readings-app header {
		grid-area: header;
	}

	body.free-readings-app aside {
		grid-area: sidebar;
	}

	body.free-readings-app main {
		grid-area: main;
	}

	body.free-readings-app nav ul {
		align-items: flex-end;
		flex-direction: column;
	}

	body.free-readings-app nav ul > li + li {
		margin-left: 0;
		margin-top: var( --fr-gap-tiny );
	}

	body.free-readings-app nav a .fas {
		display: inline-block;
	}

}
