:root {
	--space-unit: 1em;
	--space-xxxxs: calc(0.125*var(--space-unit));
	--space-xxxs: calc(0.25*var(--space-unit));
	--space-xxs: calc(0.375*var(--space-unit));
	--space-xs: calc(0.5*var(--space-unit));
	--space-sm: calc(0.75*var(--space-unit));
	--space-md: calc(1.25*var(--space-unit));
	--space-lg: calc(2*var(--space-unit));
	--space-xl: calc(3.25*var(--space-unit));
	--space-xxl: calc(5.25*var(--space-unit));
	--space-xxxl: calc(8.5*var(--space-unit));
	--space-xxxxl: calc(13.75*var(--space-unit));
	--component-padding: var(--space-md)
	}
	
	:root {
	--max-width-xxs: 32rem;
	--max-width-xs: 38rem;
	--max-width-sm: 48rem;
	--max-width-md: 64rem;
	--max-width-lg: 80rem;
	--max-width-xl: 90rem;
	--max-width-xxl: 120rem
	}
	:root {
	--radius-sm: calc(var(--radius, 0.25em)/2);
	--radius-md: var(--radius, 0.25em);
	--radius-lg: calc(var(--radius, 0.25em)*2);
	--shadow-sm: 0 1px 2px rgba(0, 0, 0, .085), 0 1px 8px rgba(0, 0, 0, .1);
	--shadow-md: 0 1px 8px rgba(0, 0, 0, .1), 0 8px 24px rgba(0, 0, 0, .15);
	--shadow-lg: 0 1px 8px rgba(0, 0, 0, .1), 0 16px 48px rgba(0, 0, 0, .1), 0 24px 60px rgba(0, 0, 0, .1);
	--bounce: cubic-bezier(0.175, 0.885, 0.32, 1.275);
	--ease-in-out: cubic-bezier(0.645, 0.045, 0.355, 1);
	--ease-in: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	--ease-out: cubic-bezier(0.215, 0.61, 0.355, 1)
	}
	
	:root {
	--body-line-height: 1.4;
	--heading-line-height: 1.2
	}
	:root {
	--icon-xxs: 12px;
	--icon-xs: 16px;
	--icon-sm: 24px;
	--icon-md: 32px;
	--icon-lg: 48px;
	--icon-xl: 64px;
	--icon-xxl: 128px
	}
	:root {
		--zindex-header: 2;
		--zindex-popover: 5;
		--zindex-fixed-element: 10;
		--zindex-overlay: 15
	}
	
	
	:root {
		--display: block
	}
	
	:root,
	[data-theme="default"] {
		--color-primary-darker: hsl(220, 90%, 36%);
		--color-primary-darker-h: 220;
		--color-primary-darker-s: 90%;
		--color-primary-darker-l: 36%;
		--color-primary-dark: hsl(220, 90%, 46%);
		--color-primary-dark-h: 220;
		--color-primary-dark-s: 90%;
		--color-primary-dark-l: 46%;
		--color-primary: hsl(220, 90%, 56%);
		--color-primary-h: 220;
		--color-primary-s: 90%;
		--color-primary-l: 56%;
		--color-primary-light: hsl(220, 90%, 66%);
		--color-primary-light-h: 220;
		--color-primary-light-s: 90%;
		--color-primary-light-l: 66%;
		--color-primary-lighter: hsl(220, 90%, 76%);
		--color-primary-lighter-h: 220;
		--color-primary-lighter-s: 90%;
		--color-primary-lighter-l: 76%;
		--color-accent-darker: hsl(355, 90%, 41%);
		--color-accent-darker-h: 355;
		--color-accent-darker-s: 90%;
		--color-accent-darker-l: 41%;
		--color-accent-dark: hsl(355, 90%, 51%);
		--color-accent-dark-h: 355;
		--color-accent-dark-s: 90%;
		--color-accent-dark-l: 51%;
		--color-accent: hsl(355, 90%, 61%);
		--color-accent-h: 355;
		--color-accent-s: 90%;
		--color-accent-l: 61%;
		--color-accent-light: hsl(355, 90%, 71%);
		--color-accent-light-h: 355;
		--color-accent-light-s: 90%;
		--color-accent-light-l: 71%;
		--color-accent-lighter: hsl(355, 90%, 81%);
		--color-accent-lighter-h: 355;
		--color-accent-lighter-s: 90%;
		--color-accent-lighter-l: 81%;
		--color-black: hsl(240, 8%, 12%);
		--color-black-h: 240;
		--color-black-s: 8%;
		--color-black-l: 12%;
		--color-white: hsl(0, 0%, 100%);
		--color-white-h: 0;
		--color-white-s: 0%;
		--color-white-l: 100%;
		--color-success-darker: hsl(94, 48%, 36%);
		--color-success-darker-h: 94;
		--color-success-darker-s: 48%;
		--color-success-darker-l: 36%;
		--color-success-dark: hsl(94, 48%, 46%);
		--color-success-dark-h: 94;
		--color-success-dark-s: 48%;
		--color-success-dark-l: 46%;
		--color-success: hsl(94, 48%, 56%);
		--color-success-h: 94;
		--color-success-s: 48%;
		--color-success-l: 56%;
		--color-success-light: hsl(94, 48%, 66%);
		--color-success-light-h: 94;
		--color-success-light-s: 48%;
		--color-success-light-l: 66%;
		--color-success-lighter: hsl(94, 48%, 76%);
		--color-success-lighter-h: 94;
		--color-success-lighter-s: 48%;
		--color-success-lighter-l: 76%;
		--color-error-darker: hsl(355, 90%, 41%);
		--color-error-darker-h: 355;
		--color-error-darker-s: 90%;
		--color-error-darker-l: 41%;
		--color-error-dark: hsl(355, 90%, 51%);
		--color-error-dark-h: 355;
		--color-error-dark-s: 90%;
		--color-error-dark-l: 51%;
		--color-error: hsl(355, 90%, 61%);
		--color-error-h: 355;
		--color-error-s: 90%;
		--color-error-l: 61%;
		--color-error-light: hsl(355, 90%, 71%);
		--color-error-light-h: 355;
		--color-error-light-s: 90%;
		--color-error-light-l: 71%;
		--color-error-lighter: hsl(355, 90%, 81%);
		--color-error-lighter-h: 355;
		--color-error-lighter-s: 90%;
		--color-error-lighter-l: 81%;
		--color-warning-darker: hsl(46, 100%, 41%);
		--color-warning-darker-h: 46;
		--color-warning-darker-s: 100%;
		--color-warning-darker-l: 41%;
		--color-warning-dark: hsl(46, 100%, 51%);
		--color-warning-dark-h: 46;
		--color-warning-dark-s: 100%;
		--color-warning-dark-l: 51%;
		--color-warning: hsl(46, 100%, 61%);
		--color-warning-h: 46;
		--color-warning-s: 100%;
		--color-warning-l: 61%;
		--color-warning-light: hsl(46, 100%, 71%);
		--color-warning-light-h: 46;
		--color-warning-light-s: 100%;
		--color-warning-light-l: 71%;
		--color-warning-lighter: hsl(46, 100%, 81%);
		--color-warning-lighter-h: 46;
		--color-warning-lighter-s: 100%;
		--color-warning-lighter-l: 81%;
		--color-bg: hsl(0, 0%, 100%);
		--color-bg-h: 0;
		--color-bg-s: 0%;
		--color-bg-l: 100%;
		--color-contrast-lower: hsl(0, 0%, 95%);
		--color-contrast-lower-h: 0;
		--color-contrast-lower-s: 0%;
		--color-contrast-lower-l: 95%;
		--color-contrast-low: hsl(240, 1%, 83%);
		--color-contrast-low-h: 240;
		--color-contrast-low-s: 1%;
		--color-contrast-low-l: 83%;
		--color-contrast-medium: hsl(240, 1%, 48%);
		--color-contrast-medium-h: 240;
		--color-contrast-medium-s: 1%;
		--color-contrast-medium-l: 48%;
		--color-contrast-high: hsl(240, 4%, 20%);
		--color-contrast-high-h: 240;
		--color-contrast-high-s: 4%;
		--color-contrast-high-l: 20%;
		--color-contrast-higher: hsl(240, 8%, 12%);
		--color-contrast-higher-h: 240;
		--color-contrast-higher-s: 8%;
		--color-contrast-higher-l: 12%
	}
	
	@supports (--css: variables) {
		@media (min-width: 64rem) {
			:root {
				--space-unit: 1.25em
			}
		}
	}
	
	:root {
		--radius: 0.25em
	}
	
	:root {
		--font-primary: sans-serif;
		--text-base-size: 1em;
		--text-scale-ratio: 1.2;
		--text-xs: calc(1em/var(--text-scale-ratio)/var(--text-scale-ratio));
		--text-sm: calc(var(--text-xs)*var(--text-scale-ratio));
		--text-md: calc(var(--text-sm)*var(--text-scale-ratio)*var(--text-scale-ratio));
		--text-lg: calc(var(--text-md)*var(--text-scale-ratio));
		--text-xl: calc(var(--text-lg)*var(--text-scale-ratio));
		--text-xxl: calc(var(--text-xl)*var(--text-scale-ratio));
		--text-xxxl: calc(var(--text-xxl)*var(--text-scale-ratio));
		--body-line-height: 1.4;
		--heading-line-height: 1.2;
		--font-primary-capital-letter: 1
	}
	
	@supports (--css: variables) {
		@media (min-width: 64rem) {
			:root {
				--text-base-size: 1.25em;
				--text-scale-ratio: 1.25
			}
		}
	}
	
	
	:root {
		--btn-font-size: 1em;
		--btn-font-size-sm: calc(var(--btn-font-size) - 0.2em);
		--btn-font-size-md: calc(var(--btn-font-size) + 0.2em);
		--btn-font-size-lg: calc(var(--btn-font-size) + 0.4em);
		--btn-radius: 0.25em;
		--btn-padding-x: var(--space-sm);
		--btn-padding-y: var(--space-xs)
	}
	
	
	:root {
		--form-control-padding-x: var(--space-sm);
		--form-control-padding-y: var(--space-xs);
		--form-control-radius: 0.25em
	}
	
	
	:root {
		--cd-color-event-1: hsl(199, 25%, 46%);
		--cd-color-event-1-h: 199;
		--cd-color-event-1-s: 25%;
		--cd-color-event-1-l: 46%;
		--cd-color-event-2: hsl(271, 23%, 26%);
		--cd-color-event-2-h: 271;
		--cd-color-event-2-s: 23%;
		--cd-color-event-2-l: 26%;
		--cd-color-event-3: hsl(162, 14%, 68%);
		--cd-color-event-3-h: 162;
		--cd-color-event-3-s: 14%;
		--cd-color-event-3-l: 68%;
		--cd-color-event-4: hsl(31, 89%, 68%);
		--cd-color-event-4-h: 31;
		--cd-color-event-4-s: 89%;
		--cd-color-event-4-l: 68%;
		--cd-color-text: hsl(0, 0%, 13%);
		--cd-color-text-h: 0;
		--cd-color-text-s: 0%;
		--cd-color-text-l: 13%;
		--cd-color-border: hsl(0, 0%, 92%);
		--cd-color-border-h: 0;
		--cd-color-border-s: 0%;
		--cd-color-border-l: 92%;
		--font-primary: 'Source Sans Pro', sans-serif; 
		--schedule-rows-height: 50px
	}
	


ol,
ul {
	list-style: none
}

.cd-schedule {
	position: relative
}

.cd-schedule::before {
	content: 'mobile';
	display: none
}

@media (min-width: 64rem) {
	.js .cd-schedule {
		width: calc(100% - 1.25em);
		width: calc(100% - 2*var(--component-padding));
		margin-left: auto;
		margin-right: auto;
		max-width: 90rem;
		max-width: var(--max-width-xl)
	}
	.js .cd-schedule::before {
		content: 'desktop'
	}
}

.cd-schedule__timeline {
	display: none
}

@media (min-width: 64rem) {
	.js .cd-schedule__timeline {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		padding-top: 50px;
		padding-top: var(--schedule-rows-height)
	}
	.js .cd-schedule__timeline li {
		position: relative;
		height: 50px;
		height: var(--schedule-rows-height)
	}
	.js .cd-schedule__timeline li::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: hsl(0, 0%, 92%);
		background: var(--cd-color-border)
	}
	.js .cd-schedule__timeline li:last-of-type::after {
		display: none
	}
	.js .cd-schedule__timeline li span {
		display: none
	}
}

@media (min-width: 80rem) {
	.js .cd-schedule__timeline li::after {
		width: calc(100% - 60px);
		left: 60px
	}
	.js .cd-schedule__timeline li span {
		display: inline-block;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
		font-size: 0.83333em;
		font-size: var(--text-sm)
	}
	.js .cd-schedule__timeline li:nth-of-type(2n) span {
		display: none
	}
}

.cd-schedule__events {
	position: relative;
	z-index: 1
}

@media (min-width: 64rem) {
	.js .cd-schedule__events {
		width: 100%
	}
	.js .cd-schedule__events>ul {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap
	}
}

@media (min-width: 80rem) {
	.js .cd-schedule__events {
		width: calc(100% - 60px);
		margin-left: 60px
	}
}

.cd-schedule__group {
	margin-bottom: 2em;
	margin-bottom: var(--space-lg)
}

@media (min-width: 64rem) {
	.js .cd-schedule__group {
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		-ms-flex-positive: 1;
		flex-grow: 1;
		border: 1px solid hsl(0, 0%, 92%);
		border: 1px solid var(--cd-color-border);
		margin-bottom: 0
	}
	.js .cd-schedule__group:not(:first-of-type) {
		border-left-width: 0
	}
}

.cd-schedule__group>ul {
	position: relative;
	padding: 0 1.25em;
	padding: 0 var(--component-padding);
	display: -ms-flexbox;
	display: flex;
	overflow-x: scroll;
	-webkit-overflow-scrolling: touch
}

.cd-schedule__group>ul::after {
	display: inline-block;
	content: '-';
	width: 1px;
	height: 100%;
	opacity: 0;
	color: transparent
}

@media (min-width: 64rem) {
	.js .cd-schedule__group>ul {
		height: 950px;
		height: calc(var(--schedule-rows-height)*var(--schedule-rows-number));
		overflow: visible;
		padding: 0
	}
	.js .cd-schedule__group>ul::after {
		display: none
	}
}

.cd-schedule__top-info {
	width: 100%;
	padding: 0 1.25em;
	padding: 0 var(--component-padding)
}

.cd-schedule__top-info>span {
	display: inline-block;
	margin-bottom: 0.75em;
	margin-bottom: var(--space-sm);
	font-weight: bold
}

@media (min-width: 64rem) {
	.js .cd-schedule__top-info {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-align: center;
		align-items: center;
		-ms-flex-pack: center;
		justify-content: center;
		height: 50px;
		height: var(--schedule-rows-height);
		border-bottom: 1px solid hsl(0, 0%, 92%);
		border-bottom: 1px solid var(--cd-color-border);
		padding: 0
	}
	.js .cd-schedule__top-info>span {
		font-weight: normal;
		font-size: 0.83333em;
		font-size: var(--text-sm);
		margin-bottom: 0
	}
}

.cd-schedule__event {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	float: left;
	height: 150px;
	width: 70%;
	max-width: 300px;
	margin-right: 1.25em;
	margin-right: var(--space-md);
	transition: opacity .2s, background .2s
}

.cd-schedule__event a {
	display: block;
	height: 100%;
	padding: 0.75em;
	padding: var(--space-sm);
	box-shadow: inset 0 -3px 0 rgba(0, 0, 0, 0.2);
	text-decoration: none
}

.cd-schedule__event a::before {
	content: attr(data-start) " - " attr(data-end)
}

@media (min-width: 48rem) {
	.js .cd-schedule__event {
		width: 40%
	}
}

@media (min-width: 64rem) {
	.js .cd-schedule__event {
		position: absolute;
		z-index: 3;
		width: calc(100% + 2px);
		left: -1px;
		max-width: none;
		margin-right: 0
	}
	.js .cd-schedule__event a {
		padding: 0.75em;
		padding: var(--space-sm);
		box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1), inset 0 -3px 0 rgba(0, 0, 0, 0.2)
	}
}

@media (min-width: 64rem) {
	.js .cd-schedule__event--selected {
		visibility: hidden
	}
	.js .cd-schedule--loading .cd-schedule__event {
		opacity: 0
	}
}

.cd-schedule__name,
.cd-schedule__event a::before,
.cd-schedule-modal__name,
.cd-schedule-modal__date {
	display: block;
	color: hsl(0, 0%, 100%);
	color: var(--color-white);
	font-weight: bold;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}

.cd-schedule__name,
.cd-schedule-modal__name {
	font-size: 1.44em;
	font-size: var(--text-lg)
}

@media (min-width: 64rem) {
	.cd-schedule__name,
	.cd-schedule-modal__name {
		font-size: 1em;
		font-size: calc(var(--text-sm)*1.2)
	}
}

.cd-schedule-modal__date,
.cd-schedule__event a::before {
	opacity: .7;
	margin-bottom: 0.25em;
	margin-bottom: var(--space-xxxs)
}

@media (min-width: 64rem) {
	.cd-schedule-modal__date,
	.cd-schedule__event a::before {
		font-size: 0.72916em;
		font-size: calc(var(--text-xs)*1.05);
		margin-bottom: 0.125em;
		margin-bottom: var(--space-xxxxs)
	}
}

.cd-schedule__event [data-event="event-1"],
.cd-schedule-modal[data-event="event-1"] .cd-schedule-modal__header-bg {
	background: hsl(199, 25%, 46%);
	background: var(--cd-color-event-1)
}

.cd-schedule__event [data-event="event-2"],
.cd-schedule-modal[data-event="event-2"] .cd-schedule-modal__header-bg {
	background: hsl(271, 23%, 26%);
	background: var(--cd-color-event-2)
}

.cd-schedule__event [data-event="event-3"],
.cd-schedule-modal[data-event="event-3"] .cd-schedule-modal__header-bg {
	background: hsl(162, 14%, 68%);
	background: var(--cd-color-event-3)
}

.cd-schedule__event [data-event="event-4"],
.cd-schedule-modal[data-event="event-4"] .cd-schedule-modal__header-bg {
	background: hsl(31, 89%, 68%);
	background: var(--cd-color-event-4)
}

.cd-schedule-modal {
	position: fixed;
	z-index: 3;
	top: 0;
	right: 0;
	height: 100%;
	width: 100%;
	visibility: hidden;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-transform: translateX(100%);
	-ms-transform: translateX(100%);
	transform: translateX(100%);
	transition: visibility .4s, -webkit-transform .4s;
	transition: transform .4s, visibility .4s;
	transition: transform .4s, visibility .4s, -webkit-transform .4s;
	transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1)
}

@media (min-width: 64rem) {
	.cd-schedule-modal {
		right: auto;
		width: auto;
		height: auto;
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
		will-change: transform, width, height;
		transition: height .4s, width .4s, visibility .4s, -webkit-transform .4s;
		transition: height .4s, width .4s, transform .4s, visibility .4s;
		transition: height .4s, width .4s, transform .4s, visibility .4s, -webkit-transform .4s;
		transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1)
	}
}

.cd-schedule-modal__header {
	position: relative;
	height: 70px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-line-pack: center;
	align-content: center;
	width: 100%
}

@media (min-width: 64rem) {
	.cd-schedule-modal__header {
		position: absolute;
		display: block;
		top: 0;
		left: 0;
		height: 100%
	}
}

.cd-schedule-modal__content {
	position: relative;
	z-index: 3;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	padding: 0.75em 1.25em;
	padding: var(--space-sm) var(--component-padding)
}

@media (min-width: 64rem) {
	.cd-schedule-modal__content {
		display: block;
		padding: 0.75em;
		padding: var(--space-sm)
	}
}

.cd-schedule-modal__body {
	position: relative;
	width: 100%;
	height: calc(100% - 70px)
}

@media (min-width: 64rem) {
	.cd-schedule-modal__body {
		height: 100%;
		width: auto
	}
}

.cd-schedule-modal__event-info {
	position: relative;
	z-index: 2;
	line-height: 1.4;
	line-height: var(--body-line-height);
	height: 100%;
	overflow: hidden;
	font-size: 1em;
	font-size: calc(var(--text-sm)*1.2)
}

.cd-schedule-modal__event-info>div {
	overflow: auto;
	height: 100%;
	padding: 1.25em 1.25em;
	padding: var(--space-md) var(--component-padding)
}

@media (min-width: 64rem) {
	.cd-schedule-modal__event-info {
		opacity: 0;
		font-size: 0.83333em;
		font-size: var(--text-sm)
	}
	.cd-schedule-modal__event-info>div {
		padding: 1.625em 2.4em 1.625em 1.625em;
		padding: calc(var(--space-md)*1.3) calc(var(--space-lg)*1.2) calc(var(--space-md)*1.3) calc(var(--space-md)*1.3)
	}
}

.cd-schedule-modal__header-bg,
.cd-schedule-modal__body-bg {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%
}

@media (min-width: 64rem) {
	.cd-schedule-modal__header-bg,
	.cd-schedule-modal__body-bg {
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		will-change: transform;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden
	}
}

.cd-schedule-modal__header-bg {
	z-index: 2;
	-webkit-transform-origin: top center;
	-ms-transform-origin: top center;
	transform-origin: top center
}

@media (min-width: 64rem) {
	.cd-schedule-modal__header-bg {
		transition: -webkit-transform .4s;
		transition: transform .4s;
		transition: transform .4s, -webkit-transform .4s;
		transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1)
	}
}

.cd-schedule-modal__body-bg {
	z-index: 1;
	background: hsl(0, 0%, 100%);
	background: var(--color-white);
	-webkit-transform-origin: top left;
	-ms-transform-origin: top left;
	transform-origin: top left
}

@media (min-width: 64rem) {
	.cd-schedule-modal__body-bg {
		opacity: 0;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none
	}
}

.cd-schedule-modal--no-transition {
	transition: none
}

.cd-schedule-modal--no-transition .cd-schedule-modal__header-bg,
.cd-schedule-modal--no-transition .cd-schedule-modal__body-bg {
	transition: none !important
}

.cd-schedule-modal__date {
	display: none
}

@media (min-width: 64rem) {
	.cd-schedule-modal__date {
		display: block
	}
}

.cd-schedule-modal__close {
	position: absolute;
	z-index: 3;
	top: 0;
	right: 0;
	height: 70px;
	width: 70px;
	background: hsla(240, 8%, 12%, 0.1);
	background: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.1)
}

.cd-schedule-modal__close::before,
.cd-schedule-modal__close::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2px;
	height: 22px;
	background: hsl(0, 0%, 100%);
	background: var(--color-white);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden
}

.cd-schedule-modal__close::before {
	-webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
	-ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
	transform: translateX(-50%) translateY(-50%) rotate(45deg)
}

.cd-schedule-modal__close::after {
	-webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
	-ms-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
	transform: translateX(-50%) translateY(-50%) rotate(-45deg)
}

@media (min-width: 64rem) {
	.cd-schedule-modal__close {
		width: 40px;
		height: 40px;
		background: transparent;
		opacity: 0
	}
	.cd-schedule-modal__close::after,
	.cd-schedule-modal__close::before {
		background: hsl(0, 0%, 13%);
		background: var(--cd-color-text);
		height: 16px
	}
}

.cd-schedule-modal--open {
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
	visibility: visible
}

.cd-schedule-modal--open .cd-schedule-modal__event-info>div {
	-webkit-overflow-scrolling: touch
}

@media (min-width: 64rem) {
	.cd-schedule-modal--animation-completed .cd-schedule-modal__close,
	.cd-schedule-modal--content-loaded.cd-schedule-modal--animation-completed .cd-schedule-modal__event-info {
		opacity: 1;
		transition: opacity .2s
	}
	.cd-schedule-modal--open .cd-schedule-modal__body-bg {
		opacity: 1;
		transition: -webkit-transform .4s;
		transition: transform .4s;
		transition: transform .4s, -webkit-transform .4s;
		transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1)
	}
}

.cd-schedule__cover-layer {
	position: fixed;
	z-index: 2;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background: hsla(240, 8%, 12%, 0.8);
	background: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.8);
	opacity: 0;
	visibility: hidden;
	transition: opacity .4s, visibility .4s
}

.cd-schedule-modal--open+.cd-schedule__cover-layer {
	opacity: 1;
	visibility: visible
}

.cd-main-header h1 {
	color: hsl(0, 0%, 13%);
	color: var(--cd-color-text);
	font-weight: 700
}

.cd-article-link {
	font-size: 0.83333em;
	font-size: var(--text-sm);
	transition: opacity .2s
}

.cd-article-link:hover {
	opacity: 0.8
}