diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 4c22976..0000000 Binary files a/.DS_Store and /dev/null differ diff --git a/assets/css/style.css b/assets/css/style.css new file mode 100644 index 0000000..436dba1 --- /dev/null +++ b/assets/css/style.css @@ -0,0 +1 @@ +@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,600");*,*::after,*::before{box-sizing:inherit}*{font:inherit}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,hr{margin:0;padding:0;border:0}html{box-sizing:border-box}body{background-color:hsl(0, 0%, 100%);background-color:var(--color-bg, white)}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main,form legend{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}button,input,textarea,select{margin:0}.btn,.form-control,.link,.reset{background-color:transparent;padding:0;border:0;border-radius:0;color:inherit;line-height:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}select.form-control::-ms-expand{display:none}textarea{resize:vertical;overflow:auto;vertical-align:top}input::-ms-clear{display:none}table{border-collapse:collapse;border-spacing:0}img,video,svg{max-width:100%}[data-theme]{background-color:hsl(0, 0%, 100%);background-color:var(--color-bg, #fff);color:hsl(240, 4%, 20%);color:var(--color-contrast-high, #313135)}: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}.container{width:calc(100% - 1.25em);width:calc(100% - 2*var(--component-padding));margin-left:auto;margin-right:auto}.max-width-xxs{max-width:32rem;max-width:var(--max-width-xxs)}.max-width-xs{max-width:38rem;max-width:var(--max-width-xs)}.max-width-sm{max-width:48rem;max-width:var(--max-width-sm)}.max-width-md{max-width:64rem;max-width:var(--max-width-md)}.max-width-lg{max-width:80rem;max-width:var(--max-width-lg)}.max-width-xl{max-width:90rem;max-width:var(--max-width-xl)}.max-width-xxl{max-width:120rem;max-width:var(--max-width-xxl)}.max-width-adaptive-sm{max-width:38rem;max-width:var(--max-width-xs)}@media (min-width: 64rem){.max-width-adaptive-sm{max-width:48rem;max-width:var(--max-width-sm)}}.max-width-adaptive-md{max-width:38rem;max-width:var(--max-width-xs)}@media (min-width: 64rem){.max-width-adaptive-md{max-width:64rem;max-width:var(--max-width-md)}}.max-width-adaptive,.max-width-adaptive-lg{max-width:38rem;max-width:var(--max-width-xs)}@media (min-width: 64rem){.max-width-adaptive,.max-width-adaptive-lg{max-width:64rem;max-width:var(--max-width-md)}}@media (min-width: 90rem){.max-width-adaptive,.max-width-adaptive-lg{max-width:80rem;max-width:var(--max-width-lg)}}.max-width-adaptive-xl{max-width:38rem;max-width:var(--max-width-xs)}@media (min-width: 64rem){.max-width-adaptive-xl{max-width:64rem;max-width:var(--max-width-md)}}@media (min-width: 90rem){.max-width-adaptive-xl{max-width:90rem;max-width:var(--max-width-xl)}}.grid{--grid-gap: 0px;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.grid>*{-ms-flex-preferred-size:100%;flex-basis:100%}[class*="grid-gap"]{margin-bottom:1em * -1;margin-bottom:calc(var(--grid-gap, 1em)*-1);margin-right:1em * -1;margin-right:calc(var(--grid-gap, 1em)*-1)}[class*="grid-gap"]>*{margin-bottom:1em;margin-bottom:var(--grid-gap, 1em);margin-right:1em;margin-right:var(--grid-gap, 1em)}.grid-gap-xxxxs{--grid-gap: var(--space-xxxxs)}.grid-gap-xxxs{--grid-gap: var(--space-xxxs)}.grid-gap-xxs{--grid-gap: var(--space-xxs)}.grid-gap-xs{--grid-gap: var(--space-xs)}.grid-gap-sm{--grid-gap: var(--space-sm)}.grid-gap-md{--grid-gap: var(--space-md)}.grid-gap-lg{--grid-gap: var(--space-lg)}.grid-gap-xl{--grid-gap: var(--space-xl)}.grid-gap-xxl{--grid-gap: var(--space-xxl)}.grid-gap-xxxl{--grid-gap: var(--space-xxxl)}.grid-gap-xxxxl{--grid-gap: var(--space-xxxxl)}.col{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.col-1{-ms-flex-preferred-size:calc(8.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(8.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(8.33% - 0.01px - 1em);flex-basis:calc(8.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(8.33% - 0.01px - 1em);max-width:calc(8.33% - 0.01px - var(--grid-gap, 1em))}.col-2{-ms-flex-preferred-size:calc(16.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(16.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(16.66% - 0.01px - 1em);flex-basis:calc(16.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(16.66% - 0.01px - 1em);max-width:calc(16.66% - 0.01px - var(--grid-gap, 1em))}.col-3{-ms-flex-preferred-size:calc(25% - 0.01px - 1em);-ms-flex-preferred-size:calc(25% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(25% - 0.01px - 1em);flex-basis:calc(25% - 0.01px - var(--grid-gap, 1em));max-width:calc(25% - 0.01px - 1em);max-width:calc(25% - 0.01px - var(--grid-gap, 1em))}.col-4{-ms-flex-preferred-size:calc(33.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(33.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(33.33% - 0.01px - 1em);flex-basis:calc(33.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(33.33% - 0.01px - 1em);max-width:calc(33.33% - 0.01px - var(--grid-gap, 1em))}.col-5{-ms-flex-preferred-size:calc(41.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(41.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(41.66% - 0.01px - 1em);flex-basis:calc(41.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(41.66% - 0.01px - 1em);max-width:calc(41.66% - 0.01px - var(--grid-gap, 1em))}.col-6{-ms-flex-preferred-size:calc(50% - 0.01px - 1em);-ms-flex-preferred-size:calc(50% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(50% - 0.01px - 1em);flex-basis:calc(50% - 0.01px - var(--grid-gap, 1em));max-width:calc(50% - 0.01px - 1em);max-width:calc(50% - 0.01px - var(--grid-gap, 1em))}.col-7{-ms-flex-preferred-size:calc(58.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(58.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(58.33% - 0.01px - 1em);flex-basis:calc(58.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(58.33% - 0.01px - 1em);max-width:calc(58.33% - 0.01px - var(--grid-gap, 1em))}.col-8{-ms-flex-preferred-size:calc(66.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(66.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(66.66% - 0.01px - 1em);flex-basis:calc(66.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(66.66% - 0.01px - 1em);max-width:calc(66.66% - 0.01px - var(--grid-gap, 1em))}.col-9{-ms-flex-preferred-size:calc(75% - 0.01px - 1em);-ms-flex-preferred-size:calc(75% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(75% - 0.01px - 1em);flex-basis:calc(75% - 0.01px - var(--grid-gap, 1em));max-width:calc(75% - 0.01px - 1em);max-width:calc(75% - 0.01px - var(--grid-gap, 1em))}.col-10{-ms-flex-preferred-size:calc(83.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(83.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(83.33% - 0.01px - 1em);flex-basis:calc(83.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(83.33% - 0.01px - 1em);max-width:calc(83.33% - 0.01px - var(--grid-gap, 1em))}.col-11{-ms-flex-preferred-size:calc(91.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(91.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(91.66% - 0.01px - 1em);flex-basis:calc(91.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(91.66% - 0.01px - 1em);max-width:calc(91.66% - 0.01px - var(--grid-gap, 1em))}.col-12{-ms-flex-preferred-size:calc(100% - 0.01px - 1em);-ms-flex-preferred-size:calc(100% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(100% - 0.01px - 1em);flex-basis:calc(100% - 0.01px - var(--grid-gap, 1em));max-width:calc(100% - 0.01px - 1em);max-width:calc(100% - 0.01px - var(--grid-gap, 1em))}@media (min-width: 32rem){.col\@xs{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.col-1\@xs{-ms-flex-preferred-size:calc(8.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(8.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(8.33% - 0.01px - 1em);flex-basis:calc(8.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(8.33% - 0.01px - 1em);max-width:calc(8.33% - 0.01px - var(--grid-gap, 1em))}.col-2\@xs{-ms-flex-preferred-size:calc(16.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(16.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(16.66% - 0.01px - 1em);flex-basis:calc(16.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(16.66% - 0.01px - 1em);max-width:calc(16.66% - 0.01px - var(--grid-gap, 1em))}.col-3\@xs{-ms-flex-preferred-size:calc(25% - 0.01px - 1em);-ms-flex-preferred-size:calc(25% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(25% - 0.01px - 1em);flex-basis:calc(25% - 0.01px - var(--grid-gap, 1em));max-width:calc(25% - 0.01px - 1em);max-width:calc(25% - 0.01px - var(--grid-gap, 1em))}.col-4\@xs{-ms-flex-preferred-size:calc(33.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(33.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(33.33% - 0.01px - 1em);flex-basis:calc(33.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(33.33% - 0.01px - 1em);max-width:calc(33.33% - 0.01px - var(--grid-gap, 1em))}.col-5\@xs{-ms-flex-preferred-size:calc(41.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(41.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(41.66% - 0.01px - 1em);flex-basis:calc(41.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(41.66% - 0.01px - 1em);max-width:calc(41.66% - 0.01px - var(--grid-gap, 1em))}.col-6\@xs{-ms-flex-preferred-size:calc(50% - 0.01px - 1em);-ms-flex-preferred-size:calc(50% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(50% - 0.01px - 1em);flex-basis:calc(50% - 0.01px - var(--grid-gap, 1em));max-width:calc(50% - 0.01px - 1em);max-width:calc(50% - 0.01px - var(--grid-gap, 1em))}.col-7\@xs{-ms-flex-preferred-size:calc(58.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(58.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(58.33% - 0.01px - 1em);flex-basis:calc(58.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(58.33% - 0.01px - 1em);max-width:calc(58.33% - 0.01px - var(--grid-gap, 1em))}.col-8\@xs{-ms-flex-preferred-size:calc(66.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(66.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(66.66% - 0.01px - 1em);flex-basis:calc(66.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(66.66% - 0.01px - 1em);max-width:calc(66.66% - 0.01px - var(--grid-gap, 1em))}.col-9\@xs{-ms-flex-preferred-size:calc(75% - 0.01px - 1em);-ms-flex-preferred-size:calc(75% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(75% - 0.01px - 1em);flex-basis:calc(75% - 0.01px - var(--grid-gap, 1em));max-width:calc(75% - 0.01px - 1em);max-width:calc(75% - 0.01px - var(--grid-gap, 1em))}.col-10\@xs{-ms-flex-preferred-size:calc(83.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(83.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(83.33% - 0.01px - 1em);flex-basis:calc(83.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(83.33% - 0.01px - 1em);max-width:calc(83.33% - 0.01px - var(--grid-gap, 1em))}.col-11\@xs{-ms-flex-preferred-size:calc(91.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(91.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(91.66% - 0.01px - 1em);flex-basis:calc(91.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(91.66% - 0.01px - 1em);max-width:calc(91.66% - 0.01px - var(--grid-gap, 1em))}.col-12\@xs{-ms-flex-preferred-size:calc(100% - 0.01px - 1em);-ms-flex-preferred-size:calc(100% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(100% - 0.01px - 1em);flex-basis:calc(100% - 0.01px - var(--grid-gap, 1em));max-width:calc(100% - 0.01px - 1em);max-width:calc(100% - 0.01px - var(--grid-gap, 1em))}}@media (min-width: 48rem){.col\@sm{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.col-1\@sm{-ms-flex-preferred-size:calc(8.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(8.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(8.33% - 0.01px - 1em);flex-basis:calc(8.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(8.33% - 0.01px - 1em);max-width:calc(8.33% - 0.01px - var(--grid-gap, 1em))}.col-2\@sm{-ms-flex-preferred-size:calc(16.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(16.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(16.66% - 0.01px - 1em);flex-basis:calc(16.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(16.66% - 0.01px - 1em);max-width:calc(16.66% - 0.01px - var(--grid-gap, 1em))}.col-3\@sm{-ms-flex-preferred-size:calc(25% - 0.01px - 1em);-ms-flex-preferred-size:calc(25% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(25% - 0.01px - 1em);flex-basis:calc(25% - 0.01px - var(--grid-gap, 1em));max-width:calc(25% - 0.01px - 1em);max-width:calc(25% - 0.01px - var(--grid-gap, 1em))}.col-4\@sm{-ms-flex-preferred-size:calc(33.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(33.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(33.33% - 0.01px - 1em);flex-basis:calc(33.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(33.33% - 0.01px - 1em);max-width:calc(33.33% - 0.01px - var(--grid-gap, 1em))}.col-5\@sm{-ms-flex-preferred-size:calc(41.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(41.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(41.66% - 0.01px - 1em);flex-basis:calc(41.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(41.66% - 0.01px - 1em);max-width:calc(41.66% - 0.01px - var(--grid-gap, 1em))}.col-6\@sm{-ms-flex-preferred-size:calc(50% - 0.01px - 1em);-ms-flex-preferred-size:calc(50% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(50% - 0.01px - 1em);flex-basis:calc(50% - 0.01px - var(--grid-gap, 1em));max-width:calc(50% - 0.01px - 1em);max-width:calc(50% - 0.01px - var(--grid-gap, 1em))}.col-7\@sm{-ms-flex-preferred-size:calc(58.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(58.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(58.33% - 0.01px - 1em);flex-basis:calc(58.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(58.33% - 0.01px - 1em);max-width:calc(58.33% - 0.01px - var(--grid-gap, 1em))}.col-8\@sm{-ms-flex-preferred-size:calc(66.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(66.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(66.66% - 0.01px - 1em);flex-basis:calc(66.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(66.66% - 0.01px - 1em);max-width:calc(66.66% - 0.01px - var(--grid-gap, 1em))}.col-9\@sm{-ms-flex-preferred-size:calc(75% - 0.01px - 1em);-ms-flex-preferred-size:calc(75% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(75% - 0.01px - 1em);flex-basis:calc(75% - 0.01px - var(--grid-gap, 1em));max-width:calc(75% - 0.01px - 1em);max-width:calc(75% - 0.01px - var(--grid-gap, 1em))}.col-10\@sm{-ms-flex-preferred-size:calc(83.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(83.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(83.33% - 0.01px - 1em);flex-basis:calc(83.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(83.33% - 0.01px - 1em);max-width:calc(83.33% - 0.01px - var(--grid-gap, 1em))}.col-11\@sm{-ms-flex-preferred-size:calc(91.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(91.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(91.66% - 0.01px - 1em);flex-basis:calc(91.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(91.66% - 0.01px - 1em);max-width:calc(91.66% - 0.01px - var(--grid-gap, 1em))}.col-12\@sm{-ms-flex-preferred-size:calc(100% - 0.01px - 1em);-ms-flex-preferred-size:calc(100% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(100% - 0.01px - 1em);flex-basis:calc(100% - 0.01px - var(--grid-gap, 1em));max-width:calc(100% - 0.01px - 1em);max-width:calc(100% - 0.01px - var(--grid-gap, 1em))}}@media (min-width: 64rem){.col\@md{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.col-1\@md{-ms-flex-preferred-size:calc(8.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(8.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(8.33% - 0.01px - 1em);flex-basis:calc(8.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(8.33% - 0.01px - 1em);max-width:calc(8.33% - 0.01px - var(--grid-gap, 1em))}.col-2\@md{-ms-flex-preferred-size:calc(16.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(16.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(16.66% - 0.01px - 1em);flex-basis:calc(16.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(16.66% - 0.01px - 1em);max-width:calc(16.66% - 0.01px - var(--grid-gap, 1em))}.col-3\@md{-ms-flex-preferred-size:calc(25% - 0.01px - 1em);-ms-flex-preferred-size:calc(25% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(25% - 0.01px - 1em);flex-basis:calc(25% - 0.01px - var(--grid-gap, 1em));max-width:calc(25% - 0.01px - 1em);max-width:calc(25% - 0.01px - var(--grid-gap, 1em))}.col-4\@md{-ms-flex-preferred-size:calc(33.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(33.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(33.33% - 0.01px - 1em);flex-basis:calc(33.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(33.33% - 0.01px - 1em);max-width:calc(33.33% - 0.01px - var(--grid-gap, 1em))}.col-5\@md{-ms-flex-preferred-size:calc(41.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(41.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(41.66% - 0.01px - 1em);flex-basis:calc(41.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(41.66% - 0.01px - 1em);max-width:calc(41.66% - 0.01px - var(--grid-gap, 1em))}.col-6\@md{-ms-flex-preferred-size:calc(50% - 0.01px - 1em);-ms-flex-preferred-size:calc(50% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(50% - 0.01px - 1em);flex-basis:calc(50% - 0.01px - var(--grid-gap, 1em));max-width:calc(50% - 0.01px - 1em);max-width:calc(50% - 0.01px - var(--grid-gap, 1em))}.col-7\@md{-ms-flex-preferred-size:calc(58.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(58.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(58.33% - 0.01px - 1em);flex-basis:calc(58.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(58.33% - 0.01px - 1em);max-width:calc(58.33% - 0.01px - var(--grid-gap, 1em))}.col-8\@md{-ms-flex-preferred-size:calc(66.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(66.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(66.66% - 0.01px - 1em);flex-basis:calc(66.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(66.66% - 0.01px - 1em);max-width:calc(66.66% - 0.01px - var(--grid-gap, 1em))}.col-9\@md{-ms-flex-preferred-size:calc(75% - 0.01px - 1em);-ms-flex-preferred-size:calc(75% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(75% - 0.01px - 1em);flex-basis:calc(75% - 0.01px - var(--grid-gap, 1em));max-width:calc(75% - 0.01px - 1em);max-width:calc(75% - 0.01px - var(--grid-gap, 1em))}.col-10\@md{-ms-flex-preferred-size:calc(83.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(83.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(83.33% - 0.01px - 1em);flex-basis:calc(83.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(83.33% - 0.01px - 1em);max-width:calc(83.33% - 0.01px - var(--grid-gap, 1em))}.col-11\@md{-ms-flex-preferred-size:calc(91.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(91.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(91.66% - 0.01px - 1em);flex-basis:calc(91.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(91.66% - 0.01px - 1em);max-width:calc(91.66% - 0.01px - var(--grid-gap, 1em))}.col-12\@md{-ms-flex-preferred-size:calc(100% - 0.01px - 1em);-ms-flex-preferred-size:calc(100% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(100% - 0.01px - 1em);flex-basis:calc(100% - 0.01px - var(--grid-gap, 1em));max-width:calc(100% - 0.01px - 1em);max-width:calc(100% - 0.01px - var(--grid-gap, 1em))}}@media (min-width: 80rem){.col\@lg{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.col-1\@lg{-ms-flex-preferred-size:calc(8.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(8.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(8.33% - 0.01px - 1em);flex-basis:calc(8.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(8.33% - 0.01px - 1em);max-width:calc(8.33% - 0.01px - var(--grid-gap, 1em))}.col-2\@lg{-ms-flex-preferred-size:calc(16.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(16.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(16.66% - 0.01px - 1em);flex-basis:calc(16.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(16.66% - 0.01px - 1em);max-width:calc(16.66% - 0.01px - var(--grid-gap, 1em))}.col-3\@lg{-ms-flex-preferred-size:calc(25% - 0.01px - 1em);-ms-flex-preferred-size:calc(25% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(25% - 0.01px - 1em);flex-basis:calc(25% - 0.01px - var(--grid-gap, 1em));max-width:calc(25% - 0.01px - 1em);max-width:calc(25% - 0.01px - var(--grid-gap, 1em))}.col-4\@lg{-ms-flex-preferred-size:calc(33.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(33.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(33.33% - 0.01px - 1em);flex-basis:calc(33.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(33.33% - 0.01px - 1em);max-width:calc(33.33% - 0.01px - var(--grid-gap, 1em))}.col-5\@lg{-ms-flex-preferred-size:calc(41.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(41.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(41.66% - 0.01px - 1em);flex-basis:calc(41.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(41.66% - 0.01px - 1em);max-width:calc(41.66% - 0.01px - var(--grid-gap, 1em))}.col-6\@lg{-ms-flex-preferred-size:calc(50% - 0.01px - 1em);-ms-flex-preferred-size:calc(50% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(50% - 0.01px - 1em);flex-basis:calc(50% - 0.01px - var(--grid-gap, 1em));max-width:calc(50% - 0.01px - 1em);max-width:calc(50% - 0.01px - var(--grid-gap, 1em))}.col-7\@lg{-ms-flex-preferred-size:calc(58.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(58.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(58.33% - 0.01px - 1em);flex-basis:calc(58.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(58.33% - 0.01px - 1em);max-width:calc(58.33% - 0.01px - var(--grid-gap, 1em))}.col-8\@lg{-ms-flex-preferred-size:calc(66.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(66.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(66.66% - 0.01px - 1em);flex-basis:calc(66.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(66.66% - 0.01px - 1em);max-width:calc(66.66% - 0.01px - var(--grid-gap, 1em))}.col-9\@lg{-ms-flex-preferred-size:calc(75% - 0.01px - 1em);-ms-flex-preferred-size:calc(75% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(75% - 0.01px - 1em);flex-basis:calc(75% - 0.01px - var(--grid-gap, 1em));max-width:calc(75% - 0.01px - 1em);max-width:calc(75% - 0.01px - var(--grid-gap, 1em))}.col-10\@lg{-ms-flex-preferred-size:calc(83.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(83.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(83.33% - 0.01px - 1em);flex-basis:calc(83.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(83.33% - 0.01px - 1em);max-width:calc(83.33% - 0.01px - var(--grid-gap, 1em))}.col-11\@lg{-ms-flex-preferred-size:calc(91.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(91.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(91.66% - 0.01px - 1em);flex-basis:calc(91.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(91.66% - 0.01px - 1em);max-width:calc(91.66% - 0.01px - var(--grid-gap, 1em))}.col-12\@lg{-ms-flex-preferred-size:calc(100% - 0.01px - 1em);-ms-flex-preferred-size:calc(100% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(100% - 0.01px - 1em);flex-basis:calc(100% - 0.01px - var(--grid-gap, 1em));max-width:calc(100% - 0.01px - 1em);max-width:calc(100% - 0.01px - var(--grid-gap, 1em))}}@media (min-width: 90rem){.col\@xl{-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.col-1\@xl{-ms-flex-preferred-size:calc(8.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(8.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(8.33% - 0.01px - 1em);flex-basis:calc(8.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(8.33% - 0.01px - 1em);max-width:calc(8.33% - 0.01px - var(--grid-gap, 1em))}.col-2\@xl{-ms-flex-preferred-size:calc(16.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(16.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(16.66% - 0.01px - 1em);flex-basis:calc(16.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(16.66% - 0.01px - 1em);max-width:calc(16.66% - 0.01px - var(--grid-gap, 1em))}.col-3\@xl{-ms-flex-preferred-size:calc(25% - 0.01px - 1em);-ms-flex-preferred-size:calc(25% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(25% - 0.01px - 1em);flex-basis:calc(25% - 0.01px - var(--grid-gap, 1em));max-width:calc(25% - 0.01px - 1em);max-width:calc(25% - 0.01px - var(--grid-gap, 1em))}.col-4\@xl{-ms-flex-preferred-size:calc(33.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(33.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(33.33% - 0.01px - 1em);flex-basis:calc(33.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(33.33% - 0.01px - 1em);max-width:calc(33.33% - 0.01px - var(--grid-gap, 1em))}.col-5\@xl{-ms-flex-preferred-size:calc(41.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(41.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(41.66% - 0.01px - 1em);flex-basis:calc(41.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(41.66% - 0.01px - 1em);max-width:calc(41.66% - 0.01px - var(--grid-gap, 1em))}.col-6\@xl{-ms-flex-preferred-size:calc(50% - 0.01px - 1em);-ms-flex-preferred-size:calc(50% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(50% - 0.01px - 1em);flex-basis:calc(50% - 0.01px - var(--grid-gap, 1em));max-width:calc(50% - 0.01px - 1em);max-width:calc(50% - 0.01px - var(--grid-gap, 1em))}.col-7\@xl{-ms-flex-preferred-size:calc(58.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(58.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(58.33% - 0.01px - 1em);flex-basis:calc(58.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(58.33% - 0.01px - 1em);max-width:calc(58.33% - 0.01px - var(--grid-gap, 1em))}.col-8\@xl{-ms-flex-preferred-size:calc(66.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(66.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(66.66% - 0.01px - 1em);flex-basis:calc(66.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(66.66% - 0.01px - 1em);max-width:calc(66.66% - 0.01px - var(--grid-gap, 1em))}.col-9\@xl{-ms-flex-preferred-size:calc(75% - 0.01px - 1em);-ms-flex-preferred-size:calc(75% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(75% - 0.01px - 1em);flex-basis:calc(75% - 0.01px - var(--grid-gap, 1em));max-width:calc(75% - 0.01px - 1em);max-width:calc(75% - 0.01px - var(--grid-gap, 1em))}.col-10\@xl{-ms-flex-preferred-size:calc(83.33% - 0.01px - 1em);-ms-flex-preferred-size:calc(83.33% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(83.33% - 0.01px - 1em);flex-basis:calc(83.33% - 0.01px - var(--grid-gap, 1em));max-width:calc(83.33% - 0.01px - 1em);max-width:calc(83.33% - 0.01px - var(--grid-gap, 1em))}.col-11\@xl{-ms-flex-preferred-size:calc(91.66% - 0.01px - 1em);-ms-flex-preferred-size:calc(91.66% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(91.66% - 0.01px - 1em);flex-basis:calc(91.66% - 0.01px - var(--grid-gap, 1em));max-width:calc(91.66% - 0.01px - 1em);max-width:calc(91.66% - 0.01px - var(--grid-gap, 1em))}.col-12\@xl{-ms-flex-preferred-size:calc(100% - 0.01px - 1em);-ms-flex-preferred-size:calc(100% - 0.01px - var(--grid-gap, 1em));flex-basis:calc(100% - 0.01px - 1em);flex-basis:calc(100% - 0.01px - var(--grid-gap, 1em));max-width:calc(100% - 0.01px - 1em);max-width:calc(100% - 0.01px - var(--grid-gap, 1em))}}: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}body{font-size:1em;font-size:var(--text-base-size, 1em);font-family:'Source Sans Pro', sans-serif;font-family:var(--font-primary, sans-serif);color:hsl(240, 4%, 20%);color:var(--color-contrast-high, #313135)}h1,h2,h3,h4{color:hsl(240, 8%, 12%);color:var(--color-contrast-higher, #1c1c21);line-height:1.2;line-height:var(--heading-line-height, 1.2)}.text-xxxl{font-size:2.48832em;font-size:var(--text-xxxl, 2.488em)}h1,.text-xxl{font-size:2.0736em;font-size:var(--text-xxl, 2.074em)}h2,.text-xl{font-size:1.728em;font-size:var(--text-xl, 1.728em)}h3,.text-lg{font-size:1.44em;font-size:var(--text-lg, 1.44em)}h4,.text-md{font-size:1.2em;font-size:var(--text-md, 1.2em)}small,.text-sm{font-size:0.83333em;font-size:var(--text-sm, 0.833em)}.text-xs{font-size:0.69444em;font-size:var(--text-xs, 0.694em)}a,.link{color:hsl(220, 90%, 56%);color:var(--color-primary, #2a6df4);text-decoration:underline}strong,.text-bold{font-weight:bold}s{text-decoration:line-through}u,.text-underline{text-decoration:underline}.text-component{--component-body-line-height: calc(var(--body-line-height)*var(--line-height-multiplier, 1));--component-heading-line-height: calc(var(--heading-line-height)*var(--line-height-multiplier, 1))}.text-component h1,.text-component h2,.text-component h3,.text-component h4{line-height:1.2;line-height:var(--component-heading-line-height, 1.2);margin-bottom:0.25em;margin-bottom:calc(var(--space-xxxs)*var(--text-vspace-multiplier, 1))}.text-component h2,.text-component h3,.text-component h4{margin-top:0.75em;margin-top:calc(var(--space-sm)*var(--text-vspace-multiplier, 1))}.text-component p,.text-component blockquote,.text-component ul li,.text-component ol li{line-height:1.4;line-height:var(--component-body-line-height)}.text-component ul,.text-component ol,.text-component p,.text-component blockquote,.text-component .text-component__block{margin-bottom:0.75em;margin-bottom:calc(var(--space-sm)*var(--text-vspace-multiplier, 1))}.text-component ul,.text-component ol{padding-left:1em}.text-component ul{list-style-type:disc}.text-component ol{list-style-type:decimal}.text-component img{display:block;margin:0 auto}.text-component figcaption{text-align:center;margin-top:0.5em;margin-top:var(--space-xs)}.text-component em{font-style:italic}.text-component hr{margin-top:2em;margin-top:calc(var(--space-lg)*var(--text-vspace-multiplier, 1));margin-bottom:2em;margin-bottom:calc(var(--space-lg)*var(--text-vspace-multiplier, 1));margin-left:auto;margin-right:auto}.text-component>*:first-child{margin-top:0}.text-component>*:last-child{margin-bottom:0}.text-component__block--full-width{width:100vw;margin-left:calc(50% - 50vw)}@media (min-width: 48rem){.text-component__block--left,.text-component__block--right{width:45%}.text-component__block--left img,.text-component__block--right img{width:100%}.text-component__block--left{float:left;margin-right:0.75em;margin-right:calc(var(--space-sm)*var(--text-vspace-multiplier, 1))}.text-component__block--right{float:right;margin-left:0.75em;margin-left:calc(var(--space-sm)*var(--text-vspace-multiplier, 1))}}@media (min-width: 90rem){.text-component__block--outset{width:calc(100% + 10.5em);width:calc(100% + 2*var(--space-xxl))}.text-component__block--outset img{width:100%}.text-component__block--outset:not(.text-component__block--right){margin-left:-5.25em;margin-left:calc(-1*var(--space-xxl))}.text-component__block--left,.text-component__block--right{width:50%}.text-component__block--right.text-component__block--outset{margin-right:-5.25em;margin-right:calc(-1*var(--space-xxl))}}:root{--icon-xxs: 12px;--icon-xs: 16px;--icon-sm: 24px;--icon-md: 32px;--icon-lg: 48px;--icon-xl: 64px;--icon-xxl: 128px}.icon{display:inline-block;color:inherit;fill:currentColor;height:1em;width:1em;line-height:1;-ms-flex-negative:0;flex-shrink:0}.icon--xxs{font-size:12px;font-size:var(--icon-xxs)}.icon--xs{font-size:16px;font-size:var(--icon-xs)}.icon--sm{font-size:24px;font-size:var(--icon-sm)}.icon--md{font-size:32px;font-size:var(--icon-md)}.icon--lg{font-size:48px;font-size:var(--icon-lg)}.icon--xl{font-size:64px;font-size:var(--icon-xl)}.icon--xxl{font-size:128px;font-size:var(--icon-xxl)}.icon--is-spinning{-webkit-animation:icon-spin 1s infinite linear;animation:icon-spin 1s infinite linear}@-webkit-keyframes icon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes icon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.icon use{color:inherit;fill:currentColor}.btn{position:relative;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;white-space:nowrap;text-decoration:none;line-height:1;font-size:1em;font-size:var(--btn-font-size, 1em);padding-top:0.5em;padding-top:var(--btn-padding-y, 0.5em);padding-bottom:0.5em;padding-bottom:var(--btn-padding-y, 0.5em);padding-left:0.75em;padding-left:var(--btn-padding-x, 0.75em);padding-right:0.75em;padding-right:var(--btn-padding-x, 0.75em);border-radius:0.25em;border-radius:var(--btn-radius, 0.25em)}.btn--primary{background-color:hsl(220, 90%, 56%);background-color:var(--color-primary, #2a6df4);color:hsl(0, 0%, 100%);color:var(--color-white, #fff)}.btn--subtle{background-color:hsl(240, 1%, 83%);background-color:var(--color-contrast-low, #d3d3d4);color:hsl(240, 8%, 12%);color:var(--color-contrast-higher, #1c1c21)}.btn--accent{background-color:hsl(355, 90%, 61%);background-color:var(--color-accent, #f54251);color:hsl(0, 0%, 100%);color:var(--color-white, #fff)}.btn--disabled{cursor:not-allowed}.btn--sm{font-size:0.8em;font-size:var(--btn-font-size-sm, 0.8em)}.btn--md{font-size:1.2em;font-size:var(--btn-font-size-md, 1.2em)}.btn--lg{font-size:1.4em;font-size:var(--btn-font-size-lg, 1.4em)}.btn--icon{padding:0.5em;padding:var(--btn-padding-y, 0.5em)}.form-control{background-color:hsl(0, 0%, 100%);background-color:var(--color-bg, #f2f2f2);padding-top:0.5em;padding-top:var(--form-control-padding-y, 0.5em);padding-bottom:0.5em;padding-bottom:var(--form-control-padding-y, 0.5em);padding-left:0.75em;padding-left:var(--form-control-padding-x, 0.75em);padding-right:0.75em;padding-right:var(--form-control-padding-x, 0.75em);border-radius:0.25em;border-radius:var(--form-control-radius, 0.25em)}.form-control::-webkit-input-placeholder{color:hsl(240, 1%, 48%);color:var(--color-contrast-medium, #79797c)}.form-control::-moz-placeholder{opacity:1;color:hsl(240, 1%, 48%);color:var(--color-contrast-medium, #79797c)}.form-control:-ms-input-placeholder{color:hsl(240, 1%, 48%);color:var(--color-contrast-medium, #79797c)}.form-control:-moz-placeholder{color:hsl(240, 1%, 48%);color:var(--color-contrast-medium, #79797c)}.form-control[disabled],.form-control[readonly]{cursor:not-allowed}.form-legend{color:hsl(240, 8%, 12%);color:var(--color-contrast-higher, #1c1c21);line-height:1.2;font-size:1.2em;font-size:var(--text-md, 1.2em);margin-bottom:0.375em;margin-bottom:var(--space-xxs)}.form-label{display:inline-block}.form__msg-error{background-color:hsl(355, 90%, 61%);background-color:var(--color-error, #f54251);color:hsl(0, 0%, 100%);color:var(--color-white, #fff);font-size:0.83333em;font-size:var(--text-sm, 0.833em);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0.5em;padding:var(--space-xs);margin-top:0.75em;margin-top:var(--space-sm);border-radius:0.25em;border-radius:var(--radius-md, 0.25em);position:absolute;clip:rect(1px, 1px, 1px, 1px)}.form__msg-error::before{content:'';position:absolute;left:0.75em;left:var(--space-sm);top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%);width:0;height:0;border:8px solid transparent;border-bottom-color:hsl(355, 90%, 61%);border-bottom-color:var(--color-error)}.form__msg-error--is-visible{position:relative;clip:auto}.radio-list>*,.checkbox-list>*{position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:baseline;align-items:baseline;margin-bottom:0.375em;margin-bottom:var(--space-xxs)}.radio-list>*:last-of-type,.checkbox-list>*:last-of-type{margin-bottom:0}.radio-list label,.checkbox-list label{line-height:1.4;line-height:var(--body-line-height);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.radio-list input,.checkbox-list input{vertical-align:top;margin-right:0.25em;margin-right:var(--space-xxxs);-ms-flex-negative:0;flex-shrink:0}:root{--zindex-header: 2;--zindex-popover: 5;--zindex-fixed-element: 10;--zindex-overlay: 15}@media not all and (min-width: 32rem){.display\@xs{display:none !important}}@media (min-width: 32rem){.hide\@xs{display:none !important}}@media not all and (min-width: 48rem){.display\@sm{display:none !important}}@media (min-width: 48rem){.hide\@sm{display:none !important}}@media not all and (min-width: 64rem){.display\@md{display:none !important}}@media (min-width: 64rem){.hide\@md{display:none !important}}@media not all and (min-width: 80rem){.display\@lg{display:none !important}}@media (min-width: 80rem){.hide\@lg{display:none !important}}@media not all and (min-width: 90rem){.display\@xl{display:none !important}}@media (min-width: 90rem){.hide\@xl{display:none !important}}:root{--display: block}.is-visible{display:block !important;display:var(--display) !important}.is-hidden{display:none !important}.sr-only{position:absolute;clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;padding:0;border:0;white-space:nowrap}.flex{display:-ms-flexbox;display:flex}.inline-flex{display:-ms-inline-flexbox;display:inline-flex}.flex-wrap{-ms-flex-wrap:wrap;flex-wrap:wrap}.flex-column{-ms-flex-direction:column;flex-direction:column}.flex-row{-ms-flex-direction:row;flex-direction:row}.flex-center{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.justify-start{-ms-flex-pack:start;justify-content:flex-start}.justify-end{-ms-flex-pack:end;justify-content:flex-end}.justify-center{-ms-flex-pack:center;justify-content:center}.justify-between{-ms-flex-pack:justify;justify-content:space-between}.items-center{-ms-flex-align:center;align-items:center}.items-start{-ms-flex-align:start;align-items:flex-start}.items-end{-ms-flex-align:end;align-items:flex-end}@media (min-width: 32rem){.flex-wrap\@xs{-ms-flex-wrap:wrap;flex-wrap:wrap}.flex-column\@xs{-ms-flex-direction:column;flex-direction:column}.flex-row\@xs{-ms-flex-direction:row;flex-direction:row}.flex-center\@xs{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.justify-start\@xs{-ms-flex-pack:start;justify-content:flex-start}.justify-end\@xs{-ms-flex-pack:end;justify-content:flex-end}.justify-center\@xs{-ms-flex-pack:center;justify-content:center}.justify-between\@xs{-ms-flex-pack:justify;justify-content:space-between}.items-center\@xs{-ms-flex-align:center;align-items:center}.items-start\@xs{-ms-flex-align:start;align-items:flex-start}.items-end\@xs{-ms-flex-align:end;align-items:flex-end}}@media (min-width: 48rem){.flex-wrap\@sm{-ms-flex-wrap:wrap;flex-wrap:wrap}.flex-column\@sm{-ms-flex-direction:column;flex-direction:column}.flex-row\@sm{-ms-flex-direction:row;flex-direction:row}.flex-center\@sm{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.justify-start\@sm{-ms-flex-pack:start;justify-content:flex-start}.justify-end\@sm{-ms-flex-pack:end;justify-content:flex-end}.justify-center\@sm{-ms-flex-pack:center;justify-content:center}.justify-between\@sm{-ms-flex-pack:justify;justify-content:space-between}.items-center\@sm{-ms-flex-align:center;align-items:center}.items-start\@sm{-ms-flex-align:start;align-items:flex-start}.items-end\@sm{-ms-flex-align:end;align-items:flex-end}}@media (min-width: 64rem){.flex-wrap\@md{-ms-flex-wrap:wrap;flex-wrap:wrap}.flex-column\@md{-ms-flex-direction:column;flex-direction:column}.flex-row\@md{-ms-flex-direction:row;flex-direction:row}.flex-center\@md{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.justify-start\@md{-ms-flex-pack:start;justify-content:flex-start}.justify-end\@md{-ms-flex-pack:end;justify-content:flex-end}.justify-center\@md{-ms-flex-pack:center;justify-content:center}.justify-between\@md{-ms-flex-pack:justify;justify-content:space-between}.items-center\@md{-ms-flex-align:center;align-items:center}.items-start\@md{-ms-flex-align:start;align-items:flex-start}.items-end\@md{-ms-flex-align:end;align-items:flex-end}}@media (min-width: 80rem){.flex-wrap\@lg{-ms-flex-wrap:wrap;flex-wrap:wrap}.flex-column\@lg{-ms-flex-direction:column;flex-direction:column}.flex-row\@lg{-ms-flex-direction:row;flex-direction:row}.flex-center\@lg{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.justify-start\@lg{-ms-flex-pack:start;justify-content:flex-start}.justify-end\@lg{-ms-flex-pack:end;justify-content:flex-end}.justify-center\@lg{-ms-flex-pack:center;justify-content:center}.justify-between\@lg{-ms-flex-pack:justify;justify-content:space-between}.items-center\@lg{-ms-flex-align:center;align-items:center}.items-start\@lg{-ms-flex-align:start;align-items:flex-start}.items-end\@lg{-ms-flex-align:end;align-items:flex-end}}@media (min-width: 90rem){.flex-wrap\@xl{-ms-flex-wrap:wrap;flex-wrap:wrap}.flex-column\@xl{-ms-flex-direction:column;flex-direction:column}.flex-row\@xl{-ms-flex-direction:row;flex-direction:row}.flex-center\@xl{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.justify-start\@xl{-ms-flex-pack:start;justify-content:flex-start}.justify-end\@xl{-ms-flex-pack:end;justify-content:flex-end}.justify-center\@xl{-ms-flex-pack:center;justify-content:center}.justify-between\@xl{-ms-flex-pack:justify;justify-content:space-between}.items-center\@xl{-ms-flex-align:center;align-items:center}.items-start\@xl{-ms-flex-align:start;align-items:flex-start}.items-end\@xl{-ms-flex-align:end;align-items:flex-end}}.flex-grow{-ms-flex-positive:1;flex-grow:1}.flex-shrink-0{-ms-flex-negative:0;flex-shrink:0}.flex-gap-xxxs{margin-bottom:-0.25em;margin-bottom:calc(-1*var(--space-xxxs));margin-right:-0.25em;margin-right:calc(-1*var(--space-xxxs))}.flex-gap-xxxs>*{margin-bottom:0.25em;margin-bottom:var(--space-xxxs);margin-right:0.25em;margin-right:var(--space-xxxs)}.flex-gap-xxs{margin-bottom:-0.375em;margin-bottom:calc(-1*var(--space-xxs));margin-right:-0.375em;margin-right:calc(-1*var(--space-xxs))}.flex-gap-xxs>*{margin-bottom:0.375em;margin-bottom:var(--space-xxs);margin-right:0.375em;margin-right:var(--space-xxs)}.flex-gap-xs{margin-bottom:-0.5em;margin-bottom:calc(-1*var(--space-xs));margin-right:-0.5em;margin-right:calc(-1*var(--space-xs))}.flex-gap-xs>*{margin-bottom:0.5em;margin-bottom:var(--space-xs);margin-right:0.5em;margin-right:var(--space-xs)}.flex-gap-sm{margin-bottom:-0.75em;margin-bottom:calc(-1*var(--space-sm));margin-right:-0.75em;margin-right:calc(-1*var(--space-sm))}.flex-gap-sm>*{margin-bottom:0.75em;margin-bottom:var(--space-sm);margin-right:0.75em;margin-right:var(--space-sm)}.flex-gap-md{margin-bottom:-1.25em;margin-bottom:calc(-1*var(--space-md));margin-right:-1.25em;margin-right:calc(-1*var(--space-md))}.flex-gap-md>*{margin-bottom:1.25em;margin-bottom:var(--space-md);margin-right:1.25em;margin-right:var(--space-md)}.flex-gap-lg{margin-bottom:-2em;margin-bottom:calc(-1*var(--space-lg));margin-right:-2em;margin-right:calc(-1*var(--space-lg))}.flex-gap-lg>*{margin-bottom:2em;margin-bottom:var(--space-lg);margin-right:2em;margin-right:var(--space-lg)}.flex-gap-xl{margin-bottom:-3.25em;margin-bottom:calc(-1*var(--space-xl));margin-right:-3.25em;margin-right:calc(-1*var(--space-xl))}.flex-gap-xl>*{margin-bottom:3.25em;margin-bottom:var(--space-xl);margin-right:3.25em;margin-right:var(--space-xl)}.flex-gap-xxl{margin-bottom:-5.25em;margin-bottom:calc(-1*var(--space-xxl));margin-right:-5.25em;margin-right:calc(-1*var(--space-xxl))}.flex-gap-xxl>*{margin-bottom:5.25em;margin-bottom:var(--space-xxl);margin-right:5.25em;margin-right:var(--space-xxl)}.margin-xxxxs{margin:0.125em;margin:var(--space-xxxxs)}.margin-xxxs{margin:0.25em;margin:var(--space-xxxs)}.margin-xxs{margin:0.375em;margin:var(--space-xxs)}.margin-xs{margin:0.5em;margin:var(--space-xs)}.margin-sm{margin:0.75em;margin:var(--space-sm)}.margin-md{margin:1.25em;margin:var(--space-md)}.margin-lg{margin:2em;margin:var(--space-lg)}.margin-xl{margin:3.25em;margin:var(--space-xl)}.margin-xxl{margin:5.25em;margin:var(--space-xxl)}.margin-xxxl{margin:8.5em;margin:var(--space-xxxl)}.margin-xxxxl{margin:13.75em;margin:var(--space-xxxxl)}.margin-auto{margin:auto}.margin-top-xxxxs{margin-top:0.125em;margin-top:var(--space-xxxxs)}.margin-top-xxxs{margin-top:0.25em;margin-top:var(--space-xxxs)}.margin-top-xxs{margin-top:0.375em;margin-top:var(--space-xxs)}.margin-top-xs{margin-top:0.5em;margin-top:var(--space-xs)}.margin-top-sm{margin-top:0.75em;margin-top:var(--space-sm)}.margin-top-md{margin-top:1.25em;margin-top:var(--space-md)}.margin-top-lg{margin-top:2em;margin-top:var(--space-lg)}.margin-top-xl{margin-top:3.25em;margin-top:var(--space-xl)}.margin-top-xxl{margin-top:5.25em;margin-top:var(--space-xxl)}.margin-top-xxxl{margin-top:8.5em;margin-top:var(--space-xxxl)}.margin-top-xxxxl{margin-top:13.75em;margin-top:var(--space-xxxxl)}.margin-top-auto{margin-top:auto}.margin-bottom-xxxxs{margin-bottom:0.125em;margin-bottom:var(--space-xxxxs)}.margin-bottom-xxxs{margin-bottom:0.25em;margin-bottom:var(--space-xxxs)}.margin-bottom-xxs{margin-bottom:0.375em;margin-bottom:var(--space-xxs)}.margin-bottom-xs{margin-bottom:0.5em;margin-bottom:var(--space-xs)}.margin-bottom-sm{margin-bottom:0.75em;margin-bottom:var(--space-sm)}.margin-bottom-md{margin-bottom:1.25em;margin-bottom:var(--space-md)}.margin-bottom-lg{margin-bottom:2em;margin-bottom:var(--space-lg)}.margin-bottom-xl{margin-bottom:3.25em;margin-bottom:var(--space-xl)}.margin-bottom-xxl{margin-bottom:5.25em;margin-bottom:var(--space-xxl)}.margin-bottom-xxxl{margin-bottom:8.5em;margin-bottom:var(--space-xxxl)}.margin-bottom-xxxxl{margin-bottom:13.75em;margin-bottom:var(--space-xxxxl)}.margin-bottom-auto{margin-bottom:auto}.margin-right-xxxxs{margin-right:0.125em;margin-right:var(--space-xxxxs)}.margin-right-xxxs{margin-right:0.25em;margin-right:var(--space-xxxs)}.margin-right-xxs{margin-right:0.375em;margin-right:var(--space-xxs)}.margin-right-xs{margin-right:0.5em;margin-right:var(--space-xs)}.margin-right-sm{margin-right:0.75em;margin-right:var(--space-sm)}.margin-right-md{margin-right:1.25em;margin-right:var(--space-md)}.margin-right-lg{margin-right:2em;margin-right:var(--space-lg)}.margin-right-xl{margin-right:3.25em;margin-right:var(--space-xl)}.margin-right-xxl{margin-right:5.25em;margin-right:var(--space-xxl)}.margin-right-xxxl{margin-right:8.5em;margin-right:var(--space-xxxl)}.margin-right-xxxxl{margin-right:13.75em;margin-right:var(--space-xxxxl)}.margin-right-auto{margin-right:auto}.margin-left-xxxxs{margin-left:0.125em;margin-left:var(--space-xxxxs)}.margin-left-xxxs{margin-left:0.25em;margin-left:var(--space-xxxs)}.margin-left-xxs{margin-left:0.375em;margin-left:var(--space-xxs)}.margin-left-xs{margin-left:0.5em;margin-left:var(--space-xs)}.margin-left-sm{margin-left:0.75em;margin-left:var(--space-sm)}.margin-left-md{margin-left:1.25em;margin-left:var(--space-md)}.margin-left-lg{margin-left:2em;margin-left:var(--space-lg)}.margin-left-xl{margin-left:3.25em;margin-left:var(--space-xl)}.margin-left-xxl{margin-left:5.25em;margin-left:var(--space-xxl)}.margin-left-xxxl{margin-left:8.5em;margin-left:var(--space-xxxl)}.margin-left-xxxxl{margin-left:13.75em;margin-left:var(--space-xxxxl)}.margin-left-auto{margin-left:auto}.margin-x-xxxxs{margin-left:0.125em;margin-left:var(--space-xxxxs);margin-right:0.125em;margin-right:var(--space-xxxxs)}.margin-x-xxxs{margin-left:0.25em;margin-left:var(--space-xxxs);margin-right:0.25em;margin-right:var(--space-xxxs)}.margin-x-xxs{margin-left:0.375em;margin-left:var(--space-xxs);margin-right:0.375em;margin-right:var(--space-xxs)}.margin-x-xs{margin-left:0.5em;margin-left:var(--space-xs);margin-right:0.5em;margin-right:var(--space-xs)}.margin-x-sm{margin-left:0.75em;margin-left:var(--space-sm);margin-right:0.75em;margin-right:var(--space-sm)}.margin-x-md{margin-left:1.25em;margin-left:var(--space-md);margin-right:1.25em;margin-right:var(--space-md)}.margin-x-lg{margin-left:2em;margin-left:var(--space-lg);margin-right:2em;margin-right:var(--space-lg)}.margin-x-xl{margin-left:3.25em;margin-left:var(--space-xl);margin-right:3.25em;margin-right:var(--space-xl)}.margin-x-xxl{margin-left:5.25em;margin-left:var(--space-xxl);margin-right:5.25em;margin-right:var(--space-xxl)}.margin-x-xxxl{margin-left:8.5em;margin-left:var(--space-xxxl);margin-right:8.5em;margin-right:var(--space-xxxl)}.margin-x-xxxxl{margin-left:13.75em;margin-left:var(--space-xxxxl);margin-right:13.75em;margin-right:var(--space-xxxxl)}.margin-x-auto{margin-left:auto;margin-right:auto}.margin-y-xxxxs{margin-top:0.125em;margin-top:var(--space-xxxxs);margin-bottom:0.125em;margin-bottom:var(--space-xxxxs)}.margin-y-xxxs{margin-top:0.25em;margin-top:var(--space-xxxs);margin-bottom:0.25em;margin-bottom:var(--space-xxxs)}.margin-y-xxs{margin-top:0.375em;margin-top:var(--space-xxs);margin-bottom:0.375em;margin-bottom:var(--space-xxs)}.margin-y-xs{margin-top:0.5em;margin-top:var(--space-xs);margin-bottom:0.5em;margin-bottom:var(--space-xs)}.margin-y-sm{margin-top:0.75em;margin-top:var(--space-sm);margin-bottom:0.75em;margin-bottom:var(--space-sm)}.margin-y-md{margin-top:1.25em;margin-top:var(--space-md);margin-bottom:1.25em;margin-bottom:var(--space-md)}.margin-y-lg{margin-top:2em;margin-top:var(--space-lg);margin-bottom:2em;margin-bottom:var(--space-lg)}.margin-y-xl{margin-top:3.25em;margin-top:var(--space-xl);margin-bottom:3.25em;margin-bottom:var(--space-xl)}.margin-y-xxl{margin-top:5.25em;margin-top:var(--space-xxl);margin-bottom:5.25em;margin-bottom:var(--space-xxl)}.margin-y-xxxl{margin-top:8.5em;margin-top:var(--space-xxxl);margin-bottom:8.5em;margin-bottom:var(--space-xxxl)}.margin-y-xxxxl{margin-top:13.75em;margin-top:var(--space-xxxxl);margin-bottom:13.75em;margin-bottom:var(--space-xxxxl)}.margin-y-auto{margin-top:auto;margin-bottom:auto}@media not all and (min-width: 32rem){.has-margin\@xs{margin:0 !important}}@media not all and (min-width: 48rem){.has-margin\@sm{margin:0 !important}}@media not all and (min-width: 64rem){.has-margin\@md{margin:0 !important}}@media not all and (min-width: 80rem){.has-margin\@lg{margin:0 !important}}@media not all and (min-width: 90rem){.has-margin\@xl{margin:0 !important}}.padding-md{padding:1.25em;padding:var(--space-md)}.padding-xxxxs{padding:0.125em;padding:var(--space-xxxxs)}.padding-xxxs{padding:0.25em;padding:var(--space-xxxs)}.padding-xxs{padding:0.375em;padding:var(--space-xxs)}.padding-xs{padding:0.5em;padding:var(--space-xs)}.padding-sm{padding:0.75em;padding:var(--space-sm)}.padding-lg{padding:2em;padding:var(--space-lg)}.padding-xl{padding:3.25em;padding:var(--space-xl)}.padding-xxl{padding:5.25em;padding:var(--space-xxl)}.padding-xxxl{padding:8.5em;padding:var(--space-xxxl)}.padding-xxxxl{padding:13.75em;padding:var(--space-xxxxl)}.padding-component{padding:1.25em;padding:var(--component-padding)}.padding-top-md{padding-top:1.25em;padding-top:var(--space-md)}.padding-top-xxxxs{padding-top:0.125em;padding-top:var(--space-xxxxs)}.padding-top-xxxs{padding-top:0.25em;padding-top:var(--space-xxxs)}.padding-top-xxs{padding-top:0.375em;padding-top:var(--space-xxs)}.padding-top-xs{padding-top:0.5em;padding-top:var(--space-xs)}.padding-top-sm{padding-top:0.75em;padding-top:var(--space-sm)}.padding-top-lg{padding-top:2em;padding-top:var(--space-lg)}.padding-top-xl{padding-top:3.25em;padding-top:var(--space-xl)}.padding-top-xxl{padding-top:5.25em;padding-top:var(--space-xxl)}.padding-top-xxxl{padding-top:8.5em;padding-top:var(--space-xxxl)}.padding-top-xxxxl{padding-top:13.75em;padding-top:var(--space-xxxxl)}.padding-top-component{padding-top:1.25em;padding-top:var(--component-padding)}.padding-bottom-md{padding-bottom:1.25em;padding-bottom:var(--space-md)}.padding-bottom-xxxxs{padding-bottom:0.125em;padding-bottom:var(--space-xxxxs)}.padding-bottom-xxxs{padding-bottom:0.25em;padding-bottom:var(--space-xxxs)}.padding-bottom-xxs{padding-bottom:0.375em;padding-bottom:var(--space-xxs)}.padding-bottom-xs{padding-bottom:0.5em;padding-bottom:var(--space-xs)}.padding-bottom-sm{padding-bottom:0.75em;padding-bottom:var(--space-sm)}.padding-bottom-lg{padding-bottom:2em;padding-bottom:var(--space-lg)}.padding-bottom-xl{padding-bottom:3.25em;padding-bottom:var(--space-xl)}.padding-bottom-xxl{padding-bottom:5.25em;padding-bottom:var(--space-xxl)}.padding-bottom-xxxl{padding-bottom:8.5em;padding-bottom:var(--space-xxxl)}.padding-bottom-xxxxl{padding-bottom:13.75em;padding-bottom:var(--space-xxxxl)}.padding-bottom-component{padding-bottom:1.25em;padding-bottom:var(--component-padding)}.padding-right-md{padding-right:1.25em;padding-right:var(--space-md)}.padding-right-xxxxs{padding-right:0.125em;padding-right:var(--space-xxxxs)}.padding-right-xxxs{padding-right:0.25em;padding-right:var(--space-xxxs)}.padding-right-xxs{padding-right:0.375em;padding-right:var(--space-xxs)}.padding-right-xs{padding-right:0.5em;padding-right:var(--space-xs)}.padding-right-sm{padding-right:0.75em;padding-right:var(--space-sm)}.padding-right-lg{padding-right:2em;padding-right:var(--space-lg)}.padding-right-xl{padding-right:3.25em;padding-right:var(--space-xl)}.padding-right-xxl{padding-right:5.25em;padding-right:var(--space-xxl)}.padding-right-xxxl{padding-right:8.5em;padding-right:var(--space-xxxl)}.padding-right-xxxxl{padding-right:13.75em;padding-right:var(--space-xxxxl)}.padding-right-component{padding-right:1.25em;padding-right:var(--component-padding)}.padding-left-md{padding-left:1.25em;padding-left:var(--space-md)}.padding-left-xxxxs{padding-left:0.125em;padding-left:var(--space-xxxxs)}.padding-left-xxxs{padding-left:0.25em;padding-left:var(--space-xxxs)}.padding-left-xxs{padding-left:0.375em;padding-left:var(--space-xxs)}.padding-left-xs{padding-left:0.5em;padding-left:var(--space-xs)}.padding-left-sm{padding-left:0.75em;padding-left:var(--space-sm)}.padding-left-lg{padding-left:2em;padding-left:var(--space-lg)}.padding-left-xl{padding-left:3.25em;padding-left:var(--space-xl)}.padding-left-xxl{padding-left:5.25em;padding-left:var(--space-xxl)}.padding-left-xxxl{padding-left:8.5em;padding-left:var(--space-xxxl)}.padding-left-xxxxl{padding-left:13.75em;padding-left:var(--space-xxxxl)}.padding-left-component{padding-left:1.25em;padding-left:var(--component-padding)}.padding-x-md{padding-left:1.25em;padding-left:var(--space-md);padding-right:1.25em;padding-right:var(--space-md)}.padding-x-xxxxs{padding-left:0.125em;padding-left:var(--space-xxxxs);padding-right:0.125em;padding-right:var(--space-xxxxs)}.padding-x-xxxs{padding-left:0.25em;padding-left:var(--space-xxxs);padding-right:0.25em;padding-right:var(--space-xxxs)}.padding-x-xxs{padding-left:0.375em;padding-left:var(--space-xxs);padding-right:0.375em;padding-right:var(--space-xxs)}.padding-x-xs{padding-left:0.5em;padding-left:var(--space-xs);padding-right:0.5em;padding-right:var(--space-xs)}.padding-x-sm{padding-left:0.75em;padding-left:var(--space-sm);padding-right:0.75em;padding-right:var(--space-sm)}.padding-x-lg{padding-left:2em;padding-left:var(--space-lg);padding-right:2em;padding-right:var(--space-lg)}.padding-x-xl{padding-left:3.25em;padding-left:var(--space-xl);padding-right:3.25em;padding-right:var(--space-xl)}.padding-x-xxl{padding-left:5.25em;padding-left:var(--space-xxl);padding-right:5.25em;padding-right:var(--space-xxl)}.padding-x-xxxl{padding-left:8.5em;padding-left:var(--space-xxxl);padding-right:8.5em;padding-right:var(--space-xxxl)}.padding-x-xxxxl{padding-left:13.75em;padding-left:var(--space-xxxxl);padding-right:13.75em;padding-right:var(--space-xxxxl)}.padding-x-component{padding-left:1.25em;padding-left:var(--component-padding);padding-right:1.25em;padding-right:var(--component-padding)}.padding-y-md{padding-top:1.25em;padding-top:var(--space-md);padding-bottom:1.25em;padding-bottom:var(--space-md)}.padding-y-xxxxs{padding-top:0.125em;padding-top:var(--space-xxxxs);padding-bottom:0.125em;padding-bottom:var(--space-xxxxs)}.padding-y-xxxs{padding-top:0.25em;padding-top:var(--space-xxxs);padding-bottom:0.25em;padding-bottom:var(--space-xxxs)}.padding-y-xxs{padding-top:0.375em;padding-top:var(--space-xxs);padding-bottom:0.375em;padding-bottom:var(--space-xxs)}.padding-y-xs{padding-top:0.5em;padding-top:var(--space-xs);padding-bottom:0.5em;padding-bottom:var(--space-xs)}.padding-y-sm{padding-top:0.75em;padding-top:var(--space-sm);padding-bottom:0.75em;padding-bottom:var(--space-sm)}.padding-y-lg{padding-top:2em;padding-top:var(--space-lg);padding-bottom:2em;padding-bottom:var(--space-lg)}.padding-y-xl{padding-top:3.25em;padding-top:var(--space-xl);padding-bottom:3.25em;padding-bottom:var(--space-xl)}.padding-y-xxl{padding-top:5.25em;padding-top:var(--space-xxl);padding-bottom:5.25em;padding-bottom:var(--space-xxl)}.padding-y-xxxl{padding-top:8.5em;padding-top:var(--space-xxxl);padding-bottom:8.5em;padding-bottom:var(--space-xxxl)}.padding-y-xxxxl{padding-top:13.75em;padding-top:var(--space-xxxxl);padding-bottom:13.75em;padding-bottom:var(--space-xxxxl)}.padding-y-component{padding-top:1.25em;padding-top:var(--component-padding);padding-bottom:1.25em;padding-bottom:var(--component-padding)}@media not all and (min-width: 32rem){.has-padding\@xs{padding:0 !important}}@media not all and (min-width: 48rem){.has-padding\@sm{padding:0 !important}}@media not all and (min-width: 64rem){.has-padding\@md{padding:0 !important}}@media not all and (min-width: 80rem){.has-padding\@lg{padding:0 !important}}@media not all and (min-width: 90rem){.has-padding\@xl{padding:0 !important}}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-replace{overflow:hidden;color:transparent;text-indent:100%;white-space:nowrap}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}@media (min-width: 32rem){.text-center\@xs{text-align:center}.text-left\@xs{text-align:left}.text-right\@xs{text-align:right}}@media (min-width: 48rem){.text-center\@sm{text-align:center}.text-left\@sm{text-align:left}.text-right\@sm{text-align:right}}@media (min-width: 64rem){.text-center\@md{text-align:center}.text-left\@md{text-align:left}.text-right\@md{text-align:right}}@media (min-width: 80rem){.text-center\@lg{text-align:center}.text-left\@lg{text-align:left}.text-right\@lg{text-align:right}}@media (min-width: 90rem){.text-center\@xl{text-align:center}.text-left\@xl{text-align:left}.text-right\@xl{text-align:right}}.color-inherit{color:inherit}.color-contrast-medium{color:hsl(240, 1%, 48%);color:var(--color-contrast-medium, #79797c)}.color-contrast-high{color:hsl(240, 4%, 20%);color:var(--color-contrast-high, #313135)}.color-contrast-higher{color:hsl(240, 8%, 12%);color:var(--color-contrast-higher, #1c1c21)}.color-primary{color:hsl(220, 90%, 56%);color:var(--color-primary, #2a6df4)}.color-accent{color:hsl(355, 90%, 61%);color:var(--color-accent, #f54251)}.color-success{color:hsl(94, 48%, 56%);color:var(--color-success, #88c559)}.color-warning{color:hsl(46, 100%, 61%);color:var(--color-warning, #ffd138)}.color-error{color:hsl(355, 90%, 61%);color:var(--color-error, #f54251)}.width-100\%{width:100%}.height-100\%{height:100%}.media-wrapper{position:relative;height:0;padding-bottom:56.25%}.media-wrapper iframe,.media-wrapper video,.media-wrapper img{position:absolute;top:0;left:0;width:100%;height:100%}.media-wrapper video,.media-wrapper img{-o-object-fit:cover;object-fit:cover}.media-wrapper--4\:3{padding-bottom:75%}: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}}}mark{background-color:hsla(355, 90%, 61%, 0.2);background-color:hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), 0.2);color:inherit}.text-component{--line-height-multiplier: 1;--text-vspace-multiplier: 1}.text-component blockquote{padding-left:1em;border-left:4px solid hsl(240, 1%, 83%);border-left:4px solid var(--color-contrast-low)}.text-component hr{background:hsl(240, 1%, 83%);background:var(--color-contrast-low);height:1px}.text-component figcaption{font-size:0.83333em;font-size:var(--text-sm);color:hsl(240, 1%, 48%);color:var(--color-contrast-medium)}.article.text-component{--line-height-multiplier: 1.13;--text-vspace-multiplier: 1.2}: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)}.btn{--color-shadow: hsla(240, 8%, 12%, 0.15);--color-shadow: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.15);box-shadow:0 4px 16px hsla(240, 8%, 12%, 0.15);box-shadow:0 4px 16px hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.15);cursor:pointer}.btn--primary{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.btn--accent{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.btn--disabled{opacity:0.6}:root{--form-control-padding-x: var(--space-sm);--form-control-padding-y: var(--space-xs);--form-control-radius: 0.25em}.form-control{border:2px solid hsl(240, 1%, 83%);border:2px solid var(--color-contrast-low)}.form-control:focus{outline:none;border-color:hsl(220, 90%, 56%);border-color:var(--color-primary);--color-shadow: hsla(220, 90%, 56%, 0.2);--color-shadow: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);box-shadow:undefined;box-shadow:0 0 0 3px var(--color-shadow)}.form-control:focus:focus{box-shadow:0 0 0 3px hsla(220, 90%, 56%, 0.2);box-shadow:0 0 0 3px var(--color-shadow)}.form-control[aria-invalid="true"]{border-color:hsl(355, 90%, 61%);border-color:var(--color-error)}.form-control[aria-invalid="true"]:focus{--color-shadow: hsla(355, 90%, 61%, 0.2);--color-shadow: hsla(var(--color-error-h), var(--color-error-s), var(--color-error-l), 0.2);box-shadow:undefined;box-shadow:0 0 0 3px var(--color-shadow)}.form-control[aria-invalid="true"]:focus:focus{box-shadow:0 0 0 3px hsla(355, 90%, 61%, 0.2);box-shadow:0 0 0 3px var(--color-shadow)}.form-label{font-size:0.83333em;font-size:var(--text-sm)}: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-number: 19;--schedule-rows-height: 50px}body{color:hsl(0, 0%, 13%);color:var(--cd-color-text)}a{color:hsl(162, 14%, 68%);color:var(--cd-color-event-3)}.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} diff --git a/assets/js/main.js b/assets/js/main.js new file mode 100644 index 0000000..d321683 --- /dev/null +++ b/assets/js/main.js @@ -0,0 +1,371 @@ +(function() { + // Schedule Template - by CodyHouse.co + function ScheduleTemplate( element ) { + this.element = element; + this.timelineItems = this.element.getElementsByClassName('cd-schedule__timeline')[0].getElementsByTagName('li'); + this.timelineStart = getScheduleTimestamp(this.timelineItems[0].textContent); + this.timelineUnitDuration = getScheduleTimestamp(this.timelineItems[1].textContent) - getScheduleTimestamp(this.timelineItems[0].textContent); + + this.topInfoElement = this.element.getElementsByClassName('cd-schedule__top-info')[0]; + this.singleEvents = this.element.getElementsByClassName('cd-schedule__event'); + + this.modal = this.element.getElementsByClassName('cd-schedule-modal')[0]; + this.modalHeader = this.element.getElementsByClassName('cd-schedule-modal__header')[0]; + this.modalHeaderBg = this.element.getElementsByClassName('cd-schedule-modal__header-bg')[0]; + this.modalBody = this.element.getElementsByClassName('cd-schedule-modal__body')[0]; + this.modalBodyBg = this.element.getElementsByClassName('cd-schedule-modal__body-bg')[0]; + this.modalClose = this.modal.getElementsByClassName('cd-schedule-modal__close')[0]; + this.modalDate = this.modal.getElementsByClassName('cd-schedule-modal__date')[0]; + this.modalEventName = this.modal.getElementsByClassName('cd-schedule-modal__name')[0]; + this.coverLayer = this.element.getElementsByClassName('cd-schedule__cover-layer')[0]; + + this.modalMaxWidth = 800; + this.modalMaxHeight = 480; + + this.animating = false; + this.supportAnimation = Util.cssSupports('transition'); + + this.initSchedule(); + }; + + ScheduleTemplate.prototype.initSchedule = function() { + this.scheduleReset(); + this.initEvents(); + }; + + ScheduleTemplate.prototype.scheduleReset = function() { + // according to the mq value, init the style of the template + var mq = this.mq(), + loaded = Util.hasClass(this.element, 'js-schedule-loaded'), + modalOpen = Util.hasClass(this.modal, 'cd-schedule-modal--open'); + if( mq == 'desktop' && !loaded ) { + Util.addClass(this.element, 'js-schedule-loaded'); + this.placeEvents(); + modalOpen && this.checkEventModal(modalOpen); + } else if( mq == 'mobile' && loaded) { + //in this case you are on a mobile version (first load or resize from desktop) + Util.removeClass(this.element, 'cd-schedule--loading js-schedule-loaded'); + this.resetEventsStyle(); + modalOpen && this.checkEventModal(); + } else if( mq == 'desktop' && modalOpen ) { + //on a mobile version with modal open - need to resize/move modal window + this.checkEventModal(modalOpen); + Util.removeClass(this.element, 'cd-schedule--loading'); + } else { + Util.removeClass(this.element, 'cd-schedule--loading'); + } + }; + + ScheduleTemplate.prototype.resetEventsStyle = function() { + // remove js style applied to the single events + for(var i = 0; i < this.singleEvents.length; i++) { + this.singleEvents[i].removeAttribute('style'); + } + }; + + ScheduleTemplate.prototype.placeEvents = function() { + // on big devices - place events in the template according to their time/day + var self = this, + slotHeight = this.topInfoElement.offsetHeight; + for(var i = 0; i < this.singleEvents.length; i++) { + var anchor = this.singleEvents[i].getElementsByTagName('a')[0]; + var start = getScheduleTimestamp(anchor.getAttribute('data-start')), + duration = getScheduleTimestamp(anchor.getAttribute('data-end')) - start; + + var eventTop = slotHeight*(start - self.timelineStart)/self.timelineUnitDuration, + eventHeight = slotHeight*duration/self.timelineUnitDuration; + + this.singleEvents[i].setAttribute('style', 'top: '+(eventTop-1)+'px; height: '+(eventHeight +1)+'px'); + } + + Util.removeClass(this.element, 'cd-schedule--loading'); + }; + + ScheduleTemplate.prototype.initEvents = function() { + var self = this; + for(var i = 0; i < this.singleEvents.length; i++) { + // open modal when user selects an event + this.singleEvents[i].addEventListener('click', function(event){ + event.preventDefault(); + if(!self.animating) self.openModal(this.getElementsByTagName('a')[0]); + }); + } + //close modal window + this.modalClose.addEventListener('click', function(event){ + event.preventDefault(); + if( !self.animating ) self.closeModal(); + }); + this.coverLayer.addEventListener('click', function(event){ + event.preventDefault(); + if( !self.animating ) self.closeModal(); + }); + }; + + ScheduleTemplate.prototype.openModal = function(target) { + var self = this; + var mq = self.mq(); + this.animating = true; + + //update event name and time + this.modalEventName.textContent = target.getElementsByTagName('em')[0].textContent; + this.modalDate.textContent = target.getAttribute('data-start')+' - '+target.getAttribute('data-end'); + this.modal.setAttribute('data-event', target.getAttribute('data-event')); + + //update event content + this.loadEventContent(target.getAttribute('data-content')); + + Util.addClass(this.modal, 'cd-schedule-modal--open'); + + setTimeout(function(){ + //fixes a flash when an event is selected - desktop version only + Util.addClass(target.closest('li'), 'cd-schedule__event--selected'); + }, 10); + + if( mq == 'mobile' ) { + self.modal.addEventListener('transitionend', function cb(){ + self.animating = false; + self.modal.removeEventListener('transitionend', cb); + }); + } else { + var eventPosition = target.getBoundingClientRect(), + eventTop = eventPosition.top, + eventLeft = eventPosition.left, + eventHeight = target.offsetHeight, + eventWidth = target.offsetWidth; + + var windowWidth = window.innerWidth, + windowHeight = window.innerHeight; + + var modalWidth = ( windowWidth*.8 > self.modalMaxWidth ) ? self.modalMaxWidth : windowWidth*.8, + modalHeight = ( windowHeight*.8 > self.modalMaxHeight ) ? self.modalMaxHeight : windowHeight*.8; + + var modalTranslateX = parseInt((windowWidth - modalWidth)/2 - eventLeft), + modalTranslateY = parseInt((windowHeight - modalHeight)/2 - eventTop); + + var HeaderBgScaleY = modalHeight/eventHeight, + BodyBgScaleX = (modalWidth - eventWidth); + + //change modal height/width and translate it + self.modal.setAttribute('style', 'top:'+eventTop+'px;left:'+eventLeft+'px;height:'+modalHeight+'px;width:'+modalWidth+'px;transform: translateY('+modalTranslateY+'px) translateX('+modalTranslateX+'px)'); + //set modalHeader width + self.modalHeader.setAttribute('style', 'width:'+eventWidth+'px'); + //set modalBody left margin + self.modalBody.setAttribute('style', 'margin-left:'+eventWidth+'px'); + //change modalBodyBg height/width ans scale it + self.modalBodyBg.setAttribute('style', 'height:'+eventHeight+'px; width: 1px; transform: scaleY('+HeaderBgScaleY+') scaleX('+BodyBgScaleX+')'); + //change modal modalHeaderBg height/width and scale it + self.modalHeaderBg.setAttribute('style', 'height: '+eventHeight+'px; width: '+eventWidth+'px; transform: scaleY('+HeaderBgScaleY+')'); + + self.modalHeaderBg.addEventListener('transitionend', function cb(){ + //wait for the end of the modalHeaderBg transformation and show the modal content + self.animating = false; + Util.addClass(self.modal, 'cd-schedule-modal--animation-completed'); + self.modalHeaderBg.removeEventListener('transitionend', cb); + }); + } + + //if browser do not support transitions -> no need to wait for the end of it + this.animationFallback(); + }; + + ScheduleTemplate.prototype.closeModal = function() { + var self = this; + var mq = self.mq(); + + var item = self.element.getElementsByClassName('cd-schedule__event--selected')[0], + target = item.getElementsByTagName('a')[0]; + + this.animating = true; + + if( mq == 'mobile' ) { + Util.removeClass(this.modal, 'cd-schedule-modal--open'); + self.modal.addEventListener('transitionend', function cb(){ + Util.removeClass(self.modal, 'cd-schedule-modal--content-loaded'); + Util.removeClass(item, 'cd-schedule__event--selected'); + self.animating = false; + self.modal.removeEventListener('transitionend', cb); + }); + } else { + var eventPosition = target.getBoundingClientRect(), + eventTop = eventPosition.top, + eventLeft = eventPosition.left, + eventHeight = target.offsetHeight, + eventWidth = target.offsetWidth; + + var modalStyle = window.getComputedStyle(self.modal), + modalTop = Number(modalStyle.getPropertyValue('top').replace('px', '')), + modalLeft = Number(modalStyle.getPropertyValue('left').replace('px', '')); + + var modalTranslateX = eventLeft - modalLeft, + modalTranslateY = eventTop - modalTop; + + Util.removeClass(this.modal, 'cd-schedule-modal--open cd-schedule-modal--animation-completed'); + + //change modal width/height and translate it + self.modal.style.width = eventWidth+'px';self.modal.style.height = eventHeight+'px';self.modal.style.transform = 'translateX('+modalTranslateX+'px) translateY('+modalTranslateY+'px)'; + //scale down modalBodyBg element + self.modalBodyBg.style.transform = 'scaleX(0) scaleY(1)'; + //scale down modalHeaderBg element + // self.modalHeaderBg.setAttribute('style', 'transform: scaleY(1)'); + self.modalHeaderBg.style.transform = 'scaleY(1)'; + + self.modalHeaderBg.addEventListener('transitionend', function cb(){ + //wait for the end of the modalHeaderBg transformation and reset modal style + Util.addClass(self.modal, 'cd-schedule-modal--no-transition'); + setTimeout(function(){ + self.modal.removeAttribute('style'); + self.modalBody.removeAttribute('style'); + self.modalHeader.removeAttribute('style'); + self.modalHeaderBg.removeAttribute('style'); + self.modalBodyBg.removeAttribute('style'); + }, 10); + setTimeout(function(){ + Util.removeClass(self.modal, 'cd-schedule-modal--no-transition'); + }, 20); + self.animating = false; + Util.removeClass(self.modal, 'cd-schedule-modal--content-loaded'); + Util.removeClass(item, 'cd-schedule__event--selected'); + self.modalHeaderBg.removeEventListener('transitionend', cb); + }); + } + + //if browser do not support transitions -> no need to wait for the end of it + this.animationFallback(); + }; + + ScheduleTemplate.prototype.checkEventModal = function(modalOpen) { + // this function is used on resize to reset events/modal style + this.animating = true; + var self = this; + var mq = this.mq(); + if( mq == 'mobile' ) { + //reset modal style on mobile + self.modal.removeAttribute('style'); + self.modalBody.removeAttribute('style'); + self.modalHeader.removeAttribute('style'); + self.modalHeaderBg.removeAttribute('style'); + self.modalBodyBg.removeAttribute('style'); + Util.removeClass(self.modal, 'cd-schedule-modal--no-transition'); + self.animating = false; + } else if( mq == 'desktop' && modalOpen) { + Util.addClass(self.modal, 'cd-schedule-modal--no-transition cd-schedule-modal--animation-completed'); + var item = self.element.getElementsByClassName('cd-schedule__event--selected')[0], + target = item.getElementsByTagName('a')[0]; + + var eventPosition = target.getBoundingClientRect(), + eventTop = eventPosition.top, + eventLeft = eventPosition.left, + eventHeight = target.offsetHeight, + eventWidth = target.offsetWidth; + + var windowWidth = window.innerWidth, + windowHeight = window.innerHeight; + + var modalWidth = ( windowWidth*.8 > self.modalMaxWidth ) ? self.modalMaxWidth : windowWidth*.8, + modalHeight = ( windowHeight*.8 > self.modalMaxHeight ) ? self.modalMaxHeight : windowHeight*.8; + + var HeaderBgScaleY = modalHeight/eventHeight, + BodyBgScaleX = (modalWidth - eventWidth); + + + setTimeout(function(){ + self.modal.setAttribute('style', 'top:'+(windowHeight/2 - modalHeight/2)+'px;left:'+(windowWidth/2 - modalWidth/2)+'px;height:'+modalHeight+'px;width:'+modalWidth+'px;transform: translateY(0) translateX(0)'); + //change modal modalBodyBg height/width + self.modalBodyBg.style.height = modalHeight+'px';self.modalBodyBg.style.transform = 'scaleY(1) scaleX('+BodyBgScaleX+')';self.modalBodyBg.style.width = '1px'; + //set modalHeader width + self.modalHeader.setAttribute('style', 'width:'+eventWidth+'px'); + //set modalBody left margin + self.modalBody.setAttribute('style', 'margin-left:'+eventWidth+'px'); + //change modal modalHeaderBg height/width and scale it + self.modalHeaderBg.setAttribute('style', 'height: '+eventHeight+'px;width:'+eventWidth+'px; transform:scaleY('+HeaderBgScaleY+');'); + }, 10); + + setTimeout(function(){ + Util.removeClass(self.modal, 'cd-schedule-modal--no-transition'); + self.animating = false; + }, 20); + + } + }; + + ScheduleTemplate.prototype.loadEventContent = function(content) { + // load the content of an event when user selects it + var self = this; + + httpRequest = new XMLHttpRequest(); + httpRequest.onreadystatechange = function() { + if (httpRequest.readyState === XMLHttpRequest.DONE) { + if (httpRequest.status === 200) { + self.modal.getElementsByClassName('cd-schedule-modal__event-info')[0].innerHTML = self.getEventContent(httpRequest.responseText); + Util.addClass(self.modal, 'cd-schedule-modal--content-loaded'); + } + } + }; + httpRequest.open('GET', content+'.html'); + httpRequest.send(); + }; + + ScheduleTemplate.prototype.getEventContent = function(string) { + // reset the loaded event content so that it can be inserted in the modal + var div = document.createElement('div'); + div.innerHTML = string.trim(); + return div.getElementsByClassName('cd-schedule-modal__event-info')[0].innerHTML; + }; + + ScheduleTemplate.prototype.animationFallback = function() { + if( !this.supportAnimation ) { // fallback for browsers not supporting transitions + var event = new CustomEvent('transitionend'); + self.modal.dispatchEvent(event); + self.modalHeaderBg.dispatchEvent(event); + } + }; + + ScheduleTemplate.prototype.mq = function(){ + //get MQ value ('desktop' or 'mobile') + var self = this; + return window.getComputedStyle(this.element, '::before').getPropertyValue('content').replace(/'|"/g, ""); + }; + + function getScheduleTimestamp(time) { + //accepts hh:mm format - convert hh:mm to timestamp + time = time.replace(/ /g,''); + var timeArray = time.split(':'); + var timeStamp = parseInt(timeArray[0])*60 + parseInt(timeArray[1]); + return timeStamp; + }; + + var scheduleTemplate = document.getElementsByClassName('js-cd-schedule'), + scheduleTemplateArray = [], + resizing = false; + if( scheduleTemplate.length > 0 ) { // init ScheduleTemplate objects + for( var i = 0; i < scheduleTemplate.length; i++) { + (function(i){ + scheduleTemplateArray.push(new ScheduleTemplate(scheduleTemplate[i])); + })(i); + } + + window.addEventListener('resize', function(event) { + // on resize - update events position and modal position (if open) + if( !resizing ) { + resizing = true; + (!window.requestAnimationFrame) ? setTimeout(checkResize, 250) : window.requestAnimationFrame(checkResize); + } + }); + + window.addEventListener('keyup', function(event){ + // close event modal when pressing escape key + if( event.keyCode && event.keyCode == 27 || event.key && event.key.toLowerCase() == 'escape' ) { + for(var i = 0; i < scheduleTemplateArray.length; i++) { + scheduleTemplateArray[i].closeModal(); + } + } + }); + + function checkResize(){ + for(var i = 0; i < scheduleTemplateArray.length; i++) { + scheduleTemplateArray[i].scheduleReset(); + } + resizing = false; + }; + } +}()); \ No newline at end of file diff --git a/assets/js/util.js b/assets/js/util.js new file mode 100644 index 0000000..60d96fc --- /dev/null +++ b/assets/js/util.js @@ -0,0 +1,174 @@ +// Utility function +function Util () {}; + +/* + class manipulation functions +*/ +Util.hasClass = function(el, className) { + if (el.classList) return el.classList.contains(className); + else return !!el.className.match(new RegExp('(\\s|^)' + className + '(\\s|$)')); +}; + +Util.addClass = function(el, className) { + var classList = className.split(' '); + if (el.classList) el.classList.add(classList[0]); + else if (!Util.hasClass(el, classList[0])) el.className += " " + classList[0]; + if (classList.length > 1) Util.addClass(el, classList.slice(1).join(' ')); +}; + +Util.removeClass = function(el, className) { + var classList = className.split(' '); + if (el.classList) el.classList.remove(classList[0]); + else if(Util.hasClass(el, classList[0])) { + var reg = new RegExp('(\\s|^)' + classList[0] + '(\\s|$)'); + el.className=el.className.replace(reg, ' '); + } + if (classList.length > 1) Util.removeClass(el, classList.slice(1).join(' ')); +}; + +Util.toggleClass = function(el, className, bool) { + if(bool) Util.addClass(el, className); + else Util.removeClass(el, className); +}; + +Util.setAttributes = function(el, attrs) { + for(var key in attrs) { + el.setAttribute(key, attrs[key]); + } +}; + +/* + DOM manipulation +*/ +Util.getChildrenByClassName = function(el, className) { + var children = el.children, + childrenByClass = []; + for (var i = 0; i < el.children.length; i++) { + if (Util.hasClass(el.children[i], className)) childrenByClass.push(el.children[i]); + } + return childrenByClass; +}; + +/* + Animate height of an element +*/ +Util.setHeight = function(start, to, element, duration, cb) { + var change = to - start, + currentTime = null; + + var animateHeight = function(timestamp){ + if (!currentTime) currentTime = timestamp; + var progress = timestamp - currentTime; + var val = parseInt((progress/duration)*change + start); + element.setAttribute("style", "height:"+val+"px;"); + if(progress < duration) { + window.requestAnimationFrame(animateHeight); + } else { + cb(); + } + }; + + //set the height of the element before starting animation -> fix bug on Safari + element.setAttribute("style", "height:"+start+"px;"); + window.requestAnimationFrame(animateHeight); +}; + +/* + Smooth Scroll +*/ + +Util.scrollTo = function(final, duration, cb) { + var start = window.scrollY || document.documentElement.scrollTop, + currentTime = null; + + var animateScroll = function(timestamp){ + if (!currentTime) currentTime = timestamp; + var progress = timestamp - currentTime; + if(progress > duration) progress = duration; + var val = Math.easeInOutQuad(progress, start, final-start, duration); + window.scrollTo(0, val); + if(progress < duration) { + window.requestAnimationFrame(animateScroll); + } else { + cb && cb(); + } + }; + + window.requestAnimationFrame(animateScroll); +}; + +/* + Focus utility classes +*/ + +//Move focus to an element +Util.moveFocus = function (element) { + if( !element ) element = document.getElementsByTagName("body")[0]; + element.focus(); + if (document.activeElement !== element) { + element.setAttribute('tabindex','-1'); + element.focus(); + } +}; + +/* + Misc +*/ + +Util.getIndexInArray = function(array, el) { + return Array.prototype.indexOf.call(array, el); +}; + +Util.cssSupports = function(property, value) { + if('CSS' in window) { + return CSS.supports(property, value); + } else { + var jsProperty = property.replace(/-([a-z])/g, function (g) { return g[1].toUpperCase();}); + return jsProperty in document.body.style; + } +}; + +/* + Polyfills +*/ +//Closest() method +if (!Element.prototype.matches) { + Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector; +} + +if (!Element.prototype.closest) { + Element.prototype.closest = function(s) { + var el = this; + if (!document.documentElement.contains(el)) return null; + do { + if (el.matches(s)) return el; + el = el.parentElement || el.parentNode; + } while (el !== null && el.nodeType === 1); + return null; + }; +} + +//Custom Event() constructor +if ( typeof window.CustomEvent !== "function" ) { + + function CustomEvent ( event, params ) { + params = params || { bubbles: false, cancelable: false, detail: undefined }; + var evt = document.createEvent( 'CustomEvent' ); + evt.initCustomEvent( event, params.bubbles, params.cancelable, params.detail ); + return evt; + } + + CustomEvent.prototype = window.Event.prototype; + + window.CustomEvent = CustomEvent; +} + +/* + Animation curves +*/ +Math.easeInOutQuad = function (t, b, c, d) { + t /= d/2; + if (t < 1) return c/2*t*t + b; + t--; + return -c/2 * (t*(t-2) - 1) + b; +}; \ No newline at end of file diff --git a/css/.DS_Store b/css/.DS_Store deleted file mode 100644 index 599aa9f..0000000 Binary files a/css/.DS_Store and /dev/null differ diff --git a/css/general.css b/css/general.css index c1266c7..20d4689 100644 --- a/css/general.css +++ b/css/general.css @@ -474,14 +474,14 @@ nav ul li { position: relative; display: inline-block; left: 0%; + animation: waviy 1s; animation-delay: calc(var(--i)); - animation-fill-mode:both; + animation-fill-mode: both; } .waviy span:hover { padding-left: -20px; - } #top-logo-text { @@ -1589,6 +1589,641 @@ section { margin-top: 50px !important; } +.scheduleContainer { + display: flex; + text-align: left; +} + +/* Schedule */ +.codyhouse { + text-align: center; + margin: 40px 0; +} +/* reset css */ +/* https://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ + + +/* HTML5 display-role reset for older browsers */ +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} + +/* style css */ +/* -------------------------------- + +Primary style + +-------------------------------- */ +*, *::after, *::before { + box-sizing: border-box; +} + +.codyhouse { + font-size: 62.5%; +} + +.single-event a { + color: #A2B9B2; + text-decoration: none; +} + +/* -------------------------------- + +Main Components + +-------------------------------- */ +.cd-schedule { + position: relative; + margin: 2em 0; +} + +.cd-schedule::before { + /* never visible - this is used in js to check the current MQ */ + content: 'mobile'; + display: none; +} + +@media only screen and (min-width: 800px) { + .cd-schedule { + width: 90%; + max-width: 1400px; + margin: 2em auto; + } + .cd-schedule::after { + clear: both; + content: ""; + display: block; + } + .cd-schedule::before { + content: 'desktop'; + } +} + +.cd-schedule .timeline { + display: none; +} + +@media only screen and (min-width: 800px) { + .cd-schedule .timeline { + display: block; + position: absolute; + top: 0; + left: 0; + height: 100%; + width: 100%; + padding-top: 50px; + } + .cd-schedule .timeline li { + position: relative; + height: 50px; + } + .cd-schedule .timeline li::after { + /* this is used to create the table horizontal lines */ + content: ''; + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 1px; + background: #EAEAEA; + } + .cd-schedule .timeline li:last-of-type::after { + display: none; + } + .cd-schedule .timeline li span { + display: none; + } +} + +@media only screen and (min-width: 1000px) { + .cd-schedule .timeline li::after { + width: calc(100% - 60px); + left: 60px; + } + .cd-schedule .timeline li span { + display: inline-block; + -webkit-transform: translateY(-50%); + -ms-transform: translateY(-50%); + transform: translateY(-50%); + } + .cd-schedule .timeline li:nth-of-type(2n) span { + display: none; + } +} + +.cd-schedule .events { + position: relative; + z-index: 1; +} + +.cd-schedule .events .events-group { + margin-bottom: 30px; +} + +.cd-schedule .events .top-info { + width: 100%; + padding: 0 5%; +} + +.cd-schedule .events .top-info > span { + display: inline-block; + line-height: 1.2; + margin-bottom: 10px; + font-weight: bold; +} + +.cd-schedule .events .events-group > ul { + position: relative; + padding: 0 5%; + /* force its children to stay on one line */ + display: -webkit-box; + display: -ms-flexbox; + display: flex; + overflow-x: scroll; + -webkit-overflow-scrolling: touch; +} + +.cd-schedule .events .events-group > ul::after { + /* never visible - used to add a right padding to .events-group > ul */ + display: inline-block; + content: '-'; + width: 1px; + height: 100%; + opacity: 0; + color: transparent; +} + +.cd-schedule .events .single-event { + /* force them to stay on one line */ + -ms-flex-negative: 0; + flex-shrink: 0; + float: left; + height: 150px; + width: 70%; + max-width: 300px; + box-shadow: inset 0 -3px 0 rgba(0, 0, 0, 0.2); + margin-right: 20px; + -webkit-transition: opacity .2s, background .2s; + transition: opacity .2s, background .2s; +} + +.cd-schedule .events .single-event:last-of-type { + margin-right: 5%; +} + +.cd-schedule .events .single-event a { + display: block; + height: 100%; + padding: .8em; +} + +@media only screen and (min-width: 550px) { + .cd-schedule .events .single-event { + width: 40%; + } +} + +@media only screen and (min-width: 800px) { + .cd-schedule .events { + float: left; + width: 100%; + } + .cd-schedule .events .events-group { + width: 14%; + float: left; + border: 1px solid #EAEAEA; + /* reset style */ + margin-bottom: 0; + } + .cd-schedule .events .events-group:not(:first-of-type) { + border-left-width: 0; + } + .cd-schedule .events .top-info { + /* vertically center its content */ + display: table; + height: 50px; + border-bottom: 1px solid #EAEAEA; + /* reset style */ + padding: 0; + } + .cd-schedule .events .top-info > span { + /* vertically center inside its parent */ + display: table-cell; + vertical-align: middle; + padding: 0 .5em; + text-align: center; + /* reset style */ + font-weight: normal; + margin-bottom: 0; + } + .cd-schedule .events .events-group > ul { + height: 950px; + /* reset style */ + display: block; + overflow: visible; + padding: 0; + } + .cd-schedule .events .events-group > ul::after { + clear: both; + content: ""; + display: block; + } + .cd-schedule .events .events-group > ul::after { + /* reset style */ + display: none; + } + .cd-schedule .events .single-event { + position: absolute; + z-index: 3; + /* top position and height will be set using js */ + width: calc(100% + 2px); + left: -1px; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1), inset 0 -3px 0 rgba(0, 0, 0, 0.2); + /* reset style */ + -ms-flex-negative: 1; + flex-shrink: 1; + height: auto; + max-width: none; + margin-right: 0; + } + .cd-schedule .events .single-event a { + padding: 1.2em; + } + .cd-schedule .events .single-event:last-of-type { + /* reset style */ + margin-right: 0; + } + .cd-schedule .events .single-event.selected-event { + /* the .selected-event class is added when an user select the event */ + visibility: hidden; + } +} + +@media only screen and (min-width: 1000px) { + .cd-schedule .events { + /* 60px is the .timeline element width */ + width: calc(100% - 60px); + margin-left: 60px; + } +} + +.cd-schedule.loading .events .single-event { + /* the class .loading is added by default to the .cd-schedule element + it is removed as soon as the single events are placed in the schedule plan (using javascript) */ + opacity: 0; +} + +.cd-schedule .event-name, +.cd-schedule .event-date { + display: block; + color: white; + font-weight: bold; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.cd-schedule .event-name { + font-size: 2.4rem; +} + +@media only screen and (min-width: 800px) { + .cd-schedule .event-name { + font-size: 2rem; + } +} + +.cd-schedule .event-date { + /* they are not included in the the HTML but added using JavScript */ + font-size: 1.4rem; + opacity: .7; + line-height: 1.2; + margin-bottom: .2em; +} + +.cd-schedule .single-event[data-event="event-1"], +.cd-schedule [data-event="event-1"] .header-bg { + /* this is used to set a background color for the event and the modal window */ + background: #577F92; +} + +.cd-schedule .single-event[data-event="event-1"]:hover { + background: #618da1; +} + +.cd-schedule .single-event[data-event="event-2"], +.cd-schedule [data-event="event-2"] .header-bg { + background: #443453; +} + +.cd-schedule .single-event[data-event="event-2"]:hover { + background: #513e63; +} + +.cd-schedule .single-event[data-event="event-3"], +.cd-schedule [data-event="event-3"] .header-bg { + background: #A2B9B2; +} + +.cd-schedule .single-event[data-event="event-3"]:hover { + background: #b1c4be; +} + +.cd-schedule .single-event[data-event="event-4"], +.cd-schedule [data-event="event-4"] .header-bg { + background: #f6b067; +} + +.cd-schedule .single-event[data-event="event-4"]:hover { + background: #f7bd7f; +} + +.cd-schedule .event-modal { + position: fixed; + z-index: 3; + top: 0; + right: 0; + height: 100%; + width: 100%; + visibility: hidden; + /* Force Hardware acceleration */ + -webkit-transform: translateZ(0); + transform: translateZ(0); + -webkit-transform: translateX(100%); + -ms-transform: translateX(100%); + transform: translateX(100%); + -webkit-transition: visibility .4s, -webkit-transform .4s; + transition: visibility .4s, -webkit-transform .4s; + transition: transform .4s, visibility .4s; + transition: transform .4s, visibility .4s, -webkit-transform .4s; + -webkit-transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1); + transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1); +} + +.cd-schedule .event-modal .header { + position: relative; + height: 70px; + /* vertically center its content */ + display: table; + width: 100%; +} + +.cd-schedule .event-modal .header .content { + position: relative; + z-index: 3; + /* vertically center inside its parent */ + display: table-cell; + vertical-align: middle; + padding: .6em 5%; +} + +.cd-schedule .event-modal .body { + position: relative; + width: 100%; + /* 70px is the .header height */ + height: calc(100% - 70px); +} + +.cd-schedule .event-modal .event-info { + position: relative; + z-index: 2; + line-height: 1.4; + height: 100%; + overflow: hidden; +} + +.cd-schedule .event-modal .event-info > div { + overflow: auto; + height: 100%; + padding: 1.4em 5%; +} + +.cd-schedule .event-modal .header-bg, .cd-schedule .event-modal .body-bg { + /* these are the morphing backgrounds - visible on desktop only */ + position: absolute; + top: 0; + left: 0; + height: 100%; + width: 100%; +} + +.cd-schedule .event-modal .body-bg { + z-index: 1; + background: white; + -webkit-transform-origin: top left; + -ms-transform-origin: top left; + transform-origin: top left; +} + +.cd-schedule .event-modal .header-bg { + z-index: 2; + -webkit-transform-origin: top center; + -ms-transform-origin: top center; + transform-origin: top center; +} + +.cd-schedule .event-modal .close { + /* this is the 'X' icon */ + position: absolute; + top: 0; + right: 0; + z-index: 3; + background: rgba(0, 0, 0, 0.1); + /* replace text with icon */ + color: transparent; + white-space: nowrap; + text-indent: 100%; + height: 70px; + width: 70px; +} + +.cd-schedule .event-modal .close::before, .cd-schedule .event-modal .close::after { + /* these are the two lines of the 'X' icon */ + content: ''; + position: absolute; + top: 50%; + left: 50%; + width: 2px; + height: 22px; + background: white; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; +} + +.cd-schedule .event-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 .event-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); +} + +.cd-schedule .event-modal .event-date { + display: none; +} + +.cd-schedule .event-modal.no-transition { + -webkit-transition: none; + transition: none; +} + +.cd-schedule .event-modal.no-transition .header-bg, .cd-schedule .event-modal.no-transition .body-bg { + -webkit-transition: none; + transition: none; +} + +@media only screen and (min-width: 800px) { + .cd-schedule .event-modal { + /* reset style */ + right: auto; + width: auto; + height: auto; + -webkit-transform: translateX(0); + -ms-transform: translateX(0); + transform: translateX(0); + will-change: transform, width, height; + -webkit-transition: height .4s, width .4s, visibility .4s, -webkit-transform .4s; + 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; + -webkit-transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1); + transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1); + } + .cd-schedule .event-modal .header { + position: absolute; + display: block; + top: 0; + left: 0; + height: 100%; + } + .cd-schedule .event-modal .header .content { + /* reset style */ + display: block; + padding: .8em; + } + .cd-schedule .event-modal .event-info > div { + padding: 2em 3em 2em 2em; + } + .cd-schedule .event-modal .body { + height: 100%; + width: auto; + } + .cd-schedule .event-modal .header-bg, .cd-schedule .event-modal .body-bg { + /* Force Hardware acceleration */ + -webkit-transform: translateZ(0); + transform: translateZ(0); + will-change: transform; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + } + .cd-schedule .event-modal .header-bg { + -webkit-transition: -webkit-transform .4s; + transition: -webkit-transform .4s; + transition: transform .4s; + transition: transform .4s, -webkit-transform .4s; + -webkit-transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1); + transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1); + } + .cd-schedule .event-modal .body-bg { + opacity: 0; + -webkit-transform: none; + -ms-transform: none; + transform: none; + } + .cd-schedule .event-modal .event-date { + display: block; + } + .cd-schedule .event-modal .close, .cd-schedule .event-modal .event-info { + opacity: 0; + } + .cd-schedule .event-modal .close { + width: 40px; + height: 40px; + background: transparent; + } + .cd-schedule .event-modal .close::after, .cd-schedule .event-modal .close::before { + background: #222222; + height: 16px; + } +} + +@media only screen and (min-width: 1000px) { + .cd-schedule .event-modal .header .content { + padding: 1.2em; + } +} + +.cd-schedule.modal-is-open .event-modal { + /* .modal-is-open class is added as soon as an event is selected */ + -webkit-transform: translateX(0); + -ms-transform: translateX(0); + transform: translateX(0); + visibility: visible; +} + +.cd-schedule.modal-is-open .event-modal .event-info > div { + /* smooth scroll on iOS touch devices */ + -webkit-overflow-scrolling: touch; +} + +@media only screen and (min-width: 800px) { + .cd-schedule.animation-completed .event-modal .close, + .cd-schedule.content-loaded.animation-completed .event-modal .event-info { + /* the .animation-completed class is added when the modal animation is completed + the .content-loaded class is added when the modal content has been loaded (using ajax) */ + opacity: 1; + -webkit-transition: opacity .2s; + transition: opacity .2s; + } + .cd-schedule.modal-is-open .body-bg { + opacity: 1; + -webkit-transition: -webkit-transform .4s; + transition: -webkit-transform .4s; + transition: transform .4s; + transition: transform .4s, -webkit-transform .4s; + -webkit-transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1); + transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1); + } +} + +.cd-schedule .cover-layer { + /* layer between the content and the modal window */ + position: fixed; + z-index: 2; + top: 0; + left: 0; + height: 100%; + width: 100%; + background: rgba(0, 0, 0, 0.8); + opacity: 0; + visibility: hidden; + -webkit-transition: opacity .4s, visibility .4s; + transition: opacity .4s, visibility .4s; +} + +.cd-schedule.modal-is-open .cover-layer { + opacity: 1; + visibility: visible; +} + #map-article { margin: 20px auto 0; width: 90%; diff --git a/img/.DS_Store b/img/.DS_Store deleted file mode 100644 index ffdd1bc..0000000 Binary files a/img/.DS_Store and /dev/null differ diff --git a/img/jamesdinh.jpg b/img/jamesdinh.jpg index c816f62..292cc26 100644 Binary files a/img/jamesdinh.jpg and b/img/jamesdinh.jpg differ diff --git a/img/stevendinh.jpg b/img/stevendinh.jpg index 3156d82..971b58d 100644 Binary files a/img/stevendinh.jpg and b/img/stevendinh.jpg differ diff --git a/index.html b/index.html index 15749e3..7a85bd0 100644 --- a/index.html +++ b/index.html @@ -30,6 +30,8 @@ + +