/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}button,html,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:dotted thin}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.67em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:1em 40px}dfn{font-style:italic}hr{box-sizing:content-box;height:0}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:after,q:before{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ol,nav ul{list-style:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure,form{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}

/* Basic Structure */
body * { box-sizing: border-box; }

/* stickey footer */
body { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; min-height: 100vh; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; text-align: center; }
#content { -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; }

#wrapper { padding-top: 183px; background: #FFF; overflow: hidden; }

ul.navigation,
ul.navigation ul,
ul.navigation li,
ul.social-media,
ul.social-media li { list-style: none; margin: 0; padding: 0; }

.content,
ul.content { max-width: 1000px; text-align: left; margin: 0 auto; display: block; }

a { text-decoration: none; }

#menu { background: #4a4a4a; text-align: left; }
#menu a { color: #FFF; }
#menu .navigation_1106,
#menu .navigation_1148,
#menu .navigation_1130 { background: #ee3a43; }
#menu *,
#menu .mm-arrow:after,
#menu .mm-btn:after,
#menu .mm-btn:before,
#menu .mm-next:after { border-color: #FFF!important; }
#menu .mm-listview .mm-next:before { border-left: none; }
#menu .mm-listview>li:not(.mm-divider):after { left: 0; }
#menu .mm-search input { background: #FFF; color: #000; }
#menu .social-media li a { margin: 0 6px 10px 6px; }
/*#menu .mm-search { display: none; }*/
#mm-0 .mm-search { top: 10px; display: block; }
#mm-0 .navigation { margin-top: 0; }

.menu-trigger { display: none; position: absolute; z-index: 1; left: 0; top: 0; background: #0055a5; cursor: pointer; padding: 20px 45px 26px 10px; }
.menu-trigger span, 
.menu-trigger span:before,
.menu-trigger span:after { cursor: pointer; border-radius: 1px; height: 5px; width: 35px; background: #FFF; position: absolute; display: block; content: ''; }
.menu-trigger span:before { top: -10px; }
.menu-trigger span:after { bottom: -10px; }
.menu-trigger span,
.menu-trigger span:before,
.menu-trigger span:after {  -webkit-transition: all 500ms ease-in-out; transition: all 500ms ease-in-out; }
.mm-opening .menu-trigger span { background-color: transparent; }
.mm-opening .menu-trigger span:before,
.mm-opening .menu-trigger span:after { top: 0; }
.mm-opening .menu-trigger span:before { -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.mm-opening .menu-trigger span:after { -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }


.social-media {}
.social-media li { display: inline; }
.social-media li a { display: inline-block; height: 27px; width: 27px; background: transparent url(../../elements/skin/social-media.png) no-repeat left top; text-indent: -9999px; margin: 0 6px; }
.social-media li a:hover { -ms-opacity: .5; -moz-opacity: .5; -webkit-opacity: .5; opacity: .5; filter:alpha(opacity=50); }
.social-media .facebook a { background-position: 0 0; }
.social-media .twitter a { background-position: -27px 0; }
.social-media .youtube a { width: 32px; background-position: -54px 0; }
.social-media .instagram a { background-position: -87px 0; }
.social-media .pinterest a { background-position: -113px 0; }
.social-media .newsletter a { background-position: -140px 0; }

html.svg .social-media li a { background-image: url(../../elements/skin/social-media.svg); background-size: 160px 27px; }
html.svg .social-media .facebook a { background-position: 7px 0; }
html.svg .social-media .twitter a { background-position: -19px 0; }
html.svg .social-media .youtube a { width: 32px; background-position: -47px 0; }
html.svg .social-media .instagram a { background-position: -79px 0; }
html.svg .social-media .pinterest a { background-position: -106px 0; }
html.svg .social-media .newsletter a { background-position: -134px 0; }

html.no-csstransforms3d .mm-menu { z-index: 10 }
html.no-csstransforms3d.mm-opening .mm-slideout{left: 80%}
@media all and (max-width:175px){ html.no-csstransforms3d.mm-opening .mm-slideout{left: 140px}}
@media all and (min-width:550px){ html.no-csstransforms3d.mm-opening .mm-slideout{left: 440px}}
html.no-csstransforms3d.mm-opening.mm-columns-0 .mm-slideout{left:80%}
@media all and (max-width:175px){html.no-csstransforms3d.mm-opening.mm-columns-0 .mm-slideout{left: 140px}}
@media all and (min-width:0px){html.no-csstransforms3d.mm-opening.mm-columns-0 .mm-slideout{left:0}}
.mm-menu.mm-columns-1{width:80%;min-width:140px;max-width:440px}
html.no-csstransforms3d.mm-opening.mm-columns-1 .mm-slideout{left:80%}
@media all and (max-width:175px){html.no-csstransforms3d.mm-opening.mm-columns-1 .mm-slideout{left: 140px}}
@media all and (min-width:550px){html.no-csstransforms3d.mm-opening.mm-columns-1 .mm-slideout{left:440px}}
html.no-csstransforms3d.mm-opening.mm-columns-2 .mm-slideout{left:80%}
@media all and (max-width:175px){html.no-csstransforms3d.mm-opening.mm-columns-2 .mm-slideout{left: 140px}}
@media all and (min-width:1100px){html.no-csstransforms3d.mm-opening.mm-columns-2 .mm-slideout{left:880px}}
html.no-csstransforms3d.mm-opening.mm-columns-3 .mm-slideout{left:80%}
@media all and (max-width:175px){html.no-csstransforms3d.mm-opening.mm-columns-3 .mm-slideout{left: 140px}}
@media all and (min-width:1650px){html.no-csstransforms3d.mm-opening.mm-columns-3 .mm-slideout{left:1320px}}
html.no-csstransforms3d.mm-opening.mm-columns-4 .mm-slideout{left:80%}
@media all and (max-width:175px){html.no-csstransforms3d.mm-opening.mm-columns-4 .mm-slideout{left: 140px}}
@media all and (min-width:2200px){html.no-csstransforms3d.mm-opening.mm-columns-4 .mm-slideout{left:1760px}}
html.no-csstransforms3d.mm-opening.mm-columns-5 .mm-slideout{left:80%}
@media all and (max-width:175px){html.no-csstransforms3d.mm-opening.mm-columns-5 .mm-slideout{left: 140px}}
@media all and (min-width:2750px){html.no-csstransforms3d.mm-opening.mm-columns-5 .mm-slideout{left:2200px}}
html.no-csstransforms3d.mm-opening.mm-columns-6 .mm-slideout{left:80%}
@media all and (max-width:175px){html.no-csstransforms3d.mm-opening.mm-columns-6 .mm-slideout{left: 140px}}
@media all and (min-width:3300px){html.no-csstransforms3d.mm-opening.mm-columns-6 .mm-slideout{left:2640px}}
html.no-csstransforms3d.mm-opening.mm-fullscreen .mm-slideout{left:100%}
@media all and (max-width:140px){html.no-csstransforms3d.mm-opening.mm-fullscreen .mm-slideout{left: 140px}}
@media all and (min-width:10000px){html.no-csstransforms3d.mm-opening.mm-fullscreen .mm-slideout{left:10000px}}
html.no-csstransforms3d.mm-right.mm-opening.mm-fullscreen .mm-slideout{left:-100%}
@media all and (max-width:140px){html.no-csstransforms3d.mm-right.mm-opening.mm-fullscreen .mm-slideout{left:-140px}}
@media all and (min-width:10000px){html.no-csstransforms3d.mm-right.mm-opening.mm-fullscreen .mm-slideout{left:-10000px}}
html.no-csstransforms3d.mm-right.mm-opening .mm-slideout{left:-80%}
@media all and (max-width:175px){html.no-csstransforms3d.mm-right.mm-opening .mm-slideout{left:-140px}}
@media all and (min-width:550px){html.no-csstransforms3d.mm-right.mm-opening .mm-slideout{left:-440px}}



header:not(.mobile-header) { height: 183px; background: #e4e4e4 url(../../elements/skin/header-bg.jpg) no-repeat center top; background-size: cover; border-bottom: solid 1px #e4e4e4; position: fixed; left: 0; right: 0; top: 0; }
a[name]:not([href]) { padding-top: 193px; }

header .content { position: relative; z-index: 1; }

header .logo { width: 162px; height: 63px; display: block; position: absolute; z-index: 1; top: 18px; left: 0; text-indent: -9999px; background: transparent url(../../elements/skin/logo.png) no-repeat left top; }

header .info { float: right; height: 89px; overflow: hidden; }
header .info > * { height: 100%; display: block; float: left; }

header .countdown { background: #FFF; color: #4a4a4a; text-align: center; width: 246px; padding-top: 7px; }
header .countdown .title { font-size: 13px; text-transform: uppercase; font-size: 600; }	
header .countdown .time { font-size: 33px; display: block; }
header .countdown .time > span { position: relative; z-index: 1; font-weight: 700; }
header .countdown .time > span:after { position: absolute; z-index: 1; bottom: -12px; left: 0; right: 0; font-size: 12px; font-weight: 400; text-transform: lowercase; }
header .countdown .time .days:after { content: 'Days'; }
header .countdown .time .hours:after { content: 'Hrs'; }
header .countdown .time .minutes:after { content: 'Mins'; }
header .countdown .time .seconds:after { content: 'Secs'; }

header .register,
header .hashtag { padding: 0; color: #FFF; font-size: 18px; line-height: 89px; padding: 0 16px; }
header .register { background: #67bbe3; font-weight: 400; text-transform: uppercase; }
header .hashtag { background: #4a4a4a; font-style: italic; font-weight: bold; }

header .navigation a { display: block; color: #FFF; }
header .navigation > li { display: inline; float: left; }
header .navigation > li > a { font-size: 16px; padding: 0 14px; }
header .navigation li > ul { position: absolute; z-index: 1; left: -9999px; background: #000; width: 224px; }
header .navigation li:hover > ul { left: auto; }
header .navigation ul a { padding: 5px 14px; }
header .navigation > li > ul > li { position: relative; z-index: 1; }
header .navigation > li > ul ul { position: absolute; z-index: 1; margin-left: 224px; top: 0; padding: 0; }

header .navigation > li > ul > li > a:not(:only-child) { position: relative; z-index: 1; padding-right: 25px; }
header .navigation > li > ul > li > a:not(:only-child):after { content: ''; display: block; width: 6px; height: 6px; position: absolute; z-index: 1; right: 9px; top: 50%; margin-top: -3px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); border: solid 1px currentColor; border-left: none; border-bottom: none; }

.tools { height: 54px; background: #ee3a43; }
.tools .navigation > li > a { height: 54px; line-height: 54px; color: #FFF; text-transform: uppercase; }
.tools .navigation > li:not(:first-child) > a { border-left: solid 1px rgba(255,255,255, .5); }
.tools .navigation > li:not(:first-child) > ul { margin-left: 1px; }
.tools .navigation > li:first-child > ul { margin-left: 0; }
.tools .navigation > li:hover > a { background: #4a4a4a; }
.tools .navigation ul a { background: #4a4a4a; }
.tools .navigation ul > li { border-top: solid 1px #4a4a4a; border-bottom: solid 1px #4a4a4a; }
.tools .navigation ul > li:hover { border-color: #939393; }
.tools .navigation ul > li:hover > a { background : #656565; }

/* second level 
header .navigation > li > ul { position: absolute; z-index: 1; width: 216px; background: #c78812; padding: 12px 0; }
header .navigation > li > ul > li { position: relative; z-index: 1; }
header .navigation > li > ul > li > a { padding: 5px 16px; color: #FFF;}
header .navigation > li > ul > li > a:not(:only-child) { position: relative; z-index: 1; padding-right: 25px; }
header .navigation > li > ul > li > a:not(:only-child):after { content: ''; display: block; width: 9px; height: 12px; background: transparent url(../../elements/skin/sprites.png) no-repeat left top; position: absolute; z-index: 1; right: 9px; top: 50%; margin-top: -6px; }
header .navigation > li > ul > li:hover > a { background-color: #d8ac5a; }
*//* third level 
header .navigation > li > ul ul { position: absolute; z-index: 1; margin-left: 216px; top: 0; width: 216px; background: #58595b; padding: 0; }
header .navigation > li > ul > li li a { padding: 5px 12px; color: #FFF;}
header .navigation > li > ul > li li:hover a { background-color: #929394; }
*/


header:not(.mobile-header) .tools { position: absolute; z-index: 10; bottom: 40px; left: 0; right: 0; }
header:not(.mobile-header) .tools .navigation { float: left; }

header nav { position: absolute; z-index: 1; bottom: 0; left: 0; right: 0; height: 40px; background: #FFF; }
header nav .navigation > li > a { color: #5195d6; line-height: 40px; }

header nav .navigation > li:hover > a { background: #e4e4e4; color: #0055a5; }
header nav .navigation ul a { background: #e4e4e4; color: #4a4a4a; }
header nav .navigation ul > li { border-top: solid 1px #e4e4e4; border-bottom: solid 1px #e4e4e4; }
header nav .navigation ul > li:hover { border-color: #cdcdcd; }
header nav .navigation ul > li:hover > a { background : #FFF; }

.mobile-header { text-align: center; height: auto; display: none; }
.mobile-header .hashtag { line-height: 75px; }
.mobile-header .countdown,
.mobile-header .navigation { margin: 0 auto; }
.mobile-header .navigation { display: table; }
.mobile-header .navigation li { /*display: table;*/ vertical-align: middle; display: table-cell; width: 33.33%; }
.mobile-header .navigation li a { font-size: 16px; line-height: 1; display: table-cell; width: 33.333%; vertical-align: middle; }
.mobile-header .navigation ul { display: none!important; }
.mobile-header .tools,
.mobile-header .hashtag { display: none; }
.mobile-header .countdown { height: 95px; }

.type-homepage .mobile-header .tools,
.type-homepage .mobile-header .hashtag { display: block; }


/*header .social-media li a { background-size: 74%; width: 20px; height: 20px; }*/
header .social-media { float: right; margin-top: 13px; margin-right: -15px; -ms-transform: scale(.70); -webkit-transform: scale(.70); -webkit-transform: translateZ(0) scale(.70, .70); transform: scale(.70); transform: translateZ(0) scale(.70, .70); -webkit-backface-visibility: hidden; backface-visibility: hidden; 
}

header .search { float: right; }	
header .search { background: #FFF; border-radius: 14px; overflow: hidden; margin-top: 13px; height: 30px; }
header .search input[type=text] { height: 30px; line-height: 30px; border: none; outline: none; padding: 0 0 0 10px; margin: 0; width: 110px; }
header .search input[type=submit] { background: transparent url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAPCAQAAACouOyaAAAAqklEQVQoz32QMQrCQBBFx0LBQqwD4g1s7BWLdBYKXsAmjcomiLsHyNXewb6Fmt01mj/VfN7M8MfMzMw48KDBESitL6bcUVJVH3kBny19iCNCrLt+gxD7FPEInw0FREiNBtFkyAUhJtFwCJchZ4SYR6NG1MOHtgjFb7BAiGueqXqHdtzw3XdWv6DvOuVQyQMhPBVjClqECMxybJQEjZsL+y92CNHakFjSUjwB2P2kmLBPznYAAAAASUVORK5CYII=') no-repeat center center; border: none; padding: 0; margin: 0; width: 30px; height: 30px; border-radius: 100%; text-indent: -9999px; }


.button { display: inline-block; background: #ee3a43; color: #FFF!important; border: solid 2px #FFF; border-radius: 18px; line-height: 36px; padding: 0 20px; white-space: nowrap; background-clip: padding-box; outline: none!important; }
.button:hover { background: #ac262d; }

.banners { height: 200px; background: gray; background-repeat: no-repeat; background-position: center center; background-size: cover; }
body:not(.type-homepage) .banners { background-image: url(../../elements/skin/banners/default.jpg); }
body.section-1106 .banners { background-image: url(../../elements/skin/banners/runners-info.jpg); }
body.section-1148 .banners { background-image: url(../../elements/skin/banners/training.jpg); }
body.section-1130 .banners { background-image: url(../../elements/skin/banners/race-weekend.jpg); }
body.section-1153 .banners { background-image: url(../../elements/skin/banners/volunteers.jpg); }
body.section-1157 .banners { background-image: url(../../elements/skin/banners/sponsors.jpg); }
body.section-1165 .banners { background-image: url(../../elements/skin/banners/media-center.jpg); }
body.section-1626 .banners { background-image: url(../../elements/skin/banners/blog.jpg);}
/*
.banners { height: 200px; background: gray; }
.banners .nav { position: absolute; z-index: 10; bottom: 34px;  left: 0; right: 0; }
.banners .nav .content { text-align: right; }
.banners .nav a { display: inline-block; width: 15px; height: 15px; border-radius: 100%; border: solid 2px #FFF; margin-left: 10px; text-indent: -9999px; text-align: left; }
.banners .nav a.active { background-color: #ee3a43; }
.banners .buttons { position: absolute; z-index: 10; left: 0; right: 0; top: 50%; margin-top: -20px; }
.banners .buttons a { background: rgba(81,149,214, .85); position: absolute; z-index: 1; text-indent: -9999px; width: 43px; height: 55px; }
.banners .buttons a:before { content:''; display: block; width: 12px; height: 12px; border: solid 1px #FFF; text-align: left; position: absolute; z-index: 1; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(45deg); left: 50%; top: 50%; margin: -6px 0 0 -6px;  }

.banners .buttons a.prev { left: 0; }
.banners .buttons a.prev:before { border-top: none; border-right: none; }
.banners .buttons a.next { right: 0; }
.banners .buttons a.next:before { border-left: none; border-bottom: none; }

.type-homepage .banners { height: 502px; position: relative; z-index: 1; }
.type-homepage .banners .banner { display: block; position: absolute; z-index: 1; top: 0; right: 0; left: 0; bottom: 0; background-size: cover; color: #FFF; }
.type-homepage .banners .banner img { display: none; }
.banners .banner .title { display: block; margin: 80px 0 30px 0; font-size: 80px; font-weight: bold; max-width: 550px; text-shadow: 0 0 20px rgba(0,0,0,.5); text-transform: uppercase; line-height: 1; }
*/

#content { background: #FFF; }
body:not(.type-homepage) #content .content { padding-top: 50px; }
article p { margin-top: 0; }
#content .top { display: block; width: 72px; height: 17px; background: transparent url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAAARCAQAAADUZSLzAAABaUlEQVR4Ac3OsWoTAQCH8dMhW1AkoG1JKRQKLRQ6lj7CNzelFAqFtgktpaW0kIJDQHAycVa3xAyCCIqDCKKIEi86CIKDKEnQJ3AJ5pLc3+PAAyHm7nKn5vte4GdEjzQnmHzmOksYUTeI8hRH1LCR9yeusfg/QBMc8Io+GvhHCsz/K9Bl9njhUvz+wFXm/iYoRY5n9FCo33PGbNygS2zzlC4a+XecMhMH6CJbPMFCMWxjckx6VNAFNnlMB8W8zWsOmQwDSrLBQ36gIGdUlKnvqumGVoOz+rxknyt+oCTrPKAdhmKpqbvKq6qWOnoTjtXjOTlSg0HT3AlOKanuUBqqKCu8cw6tJUtmOFaXeyz8DjpHnnYUCn9gZYKiLAqc/wVKcD8Y5a26DqXsUvzOOqymyyoGZT0igQu6hYa9ppseZVeE2WPVVQrCuo0DWsFGw/6qLw5lR4x8VhU1nPHbZtmgisbossG3sQI1fwJ7HXh4zQem/AAAAABJRU5ErkJggg==') no-repeat center center; margin: 30px auto 0 auto; text-indent: -9999px; position: relative; z-index: 1; }

h1 { margin: 0; }
h2 { margin: 0; }
h3 { margin: 0; }

article { color: #4a4a4a; }
article a { color: #ee3a43; }
body:not(.type-homepage) article * { font-size: 16px; line-height: 1.75; }
body:not(.type-homepage) article h1 { font-size: 18px; line-height: 1; color: #ee3a43; border-bottom: solid 1px currentColor; padding-bottom: 10px; margin-bottom: 40px; text-transform: uppercase; font-weight: normal; }
body:not(.type-homepage) article h2 { font-size: 38px; line-height: .9; color: #67bbe3; text-transform: uppercase; margin-bottom: 30px; }
body:not(.type-homepage) article h3 { font-size: 26px; line-height: 1.07; color: #ee3a43; margin-bottom: 14px; font-weight: normal; }

body:not(.type-homepage) article ul { list-style: none; padding-left: 23px; }
body:not(.type-homepage) article ul li { }
body:not(.type-homepage) article ul li:before { content: '\00bb'; color: #ee3a43; display: inline-block; margin-right: 5px; margin-left: -16px; font-weight: bold; position: relative; top: -1px; }

article img { max-width: 100%; height: auto; }

.form label { display: block; padding-left: 14px; }
.form input[type="text"],
.form textarea { width: 100%; border-radius: 14px; border: solid 2px #e0e0e0; outline: none!important; padding: 0 5px; }

.form input[type="text"]:focus,
.form textarea:focus,
.custom-select-one.focus { border-color: #67bbe3; }

.form select { width: 100%; }
.form .custom-select-one { width: 100%; }

.form .checkbox-list { margin-left: 28px; overflow: hidden; display: block; }
.form .checkbox-list label { display: inline-block; padding-left: 2px; margin-right: 1em; break-before: avoid; }
.form .checkbox-list input[type:checkbox] { break-after: avoid; display: inline-block; }

/*
.form label { display: block; width: 150px; margin-right: 5px; float: left; clear: left; }
.form p { overflow: visible; clear: both;  }
.form .no-label { margin-left: 160px; display: block;}
body .form .no-label label,
body .form .group label { width: auto; margin-right: 0; float: none; display: inline; }
.form fieldset { border: solid 1px #CCC; padding: 5px; margin-bottom: 1em; }
.form legend { font-weight: bold; font-size: 14px; padding: 0 5px; }
*/
/*
.custom-select-one { border: 1px solid #c7c5c5; padding: 0 45px 0 5px; overflow: hidden; white-space: nowrap; cursor: pointer; position: relative; z-index: 1; display: inline-block; line-height: 27px; height: 27px; box-sizing: border-box; 
background: #FFF  url("data:image/gif;base64,R0lGODdhIwAbAPUiAP////j7/Pf7/BWBqz6XuRiDrJbH2fD3+ur09yaKsfr8/UCYulunxODu9LXX5At8p1Wkws3k7cbg6ufy9imMsu/2+ez1+HW1zXq4z2Cqxt3t8zyWuZrJ2zuWuKnR4JnI2qrR4AB2owN4pAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAIwAbAAAGgcCQcEgsGo/IpHLJbDqf0Kh0Sq1aMwKPSCkCCTLRAwBgUBrGh+hkDLggL+xJdKFgQ4wQtmIhZbADHUQbAWwMVBhsFglCCRZsGFYcbBoDAxpsH1YhIg5sEhJsDluaDxFsbBEPmkMFDacNBatEFBVjFRSyRQQICAS5v8DBwsPExca5QQA7") no-repeat right center; }
.custom-select-one select { position: absolute; z-index: 1; top: 0; left: 0; right: 0; bottom: 0; opacity: 0; filter:alpha(opacity=0); height: 27px; line-height: 27px; margin: 0; outline: none; border-radius: 0; width: 100%; -webkit-appearance: none; }
@media screen and (-webkit-min-device-pixel-ratio:0) { .custom-select-one select { margin-left: 10px; } }
.custom-select-one span { line-height: 30px; display: block; height: 30px; overflow: hidden; }
*/
.custom-select-one { border: 2px solid #e0e0e0; padding: 0 45px 0 5px; overflow: hidden; white-space: nowrap; cursor: pointer; position: relative; z-index: 1; display: inline-block; line-height: 31px; height: 31px; box-sizing: border-box; background: #FFF; border-radius: 27px; }
.custom-select-one:after { content:''; display: block; width: 7px; height: 7px; border: solid 1px #ee3a43; border-left: none; border-top: none; border-collapse: collapse!important; position: absolute; z-index: 1; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(45deg); top: 50%; margin-top: -5px; right: 10px; pointer-events: none; }
.custom-select-one select { position: absolute; z-index: 1; top: 0; left: 0; right: 0; bottom: 0; opacity: 0; filter:alpha(opacity=0); height: 27px; line-height: 27px; margin: 0; outline: none; border-radius: 0; width: 100%; -webkit-appearance: none; }
@media screen and (-webkit-min-device-pixel-ratio:0) { .custom-select-one select { margin-left: 10px; } }
.custom-select-one span { line-height: 31px; height: 31px; display: block; overflow: hidden; padding-left: 10px; }

.custom-radio,
.custom-checkbox { cursor: pointer; position: relative; z-index: 1; display: inline-block; height: 15px; width: 15px; margin-right: 3px; vertical-align: central;}
.custom-radio input,
.custom-checkbox input { position: absolute; z-index: 1; top: 0; left: 0; right: 0; bottom: 0; opacity: .50; filter:alpha(opacity=50); height: 15px; line-height: 15px; margin: 0; outline: none; border-radius: 0; width: 100%; -webkit-appearance: none; }
.custom-radio.checked,
.custom-checkbox.checked { background-position: -15px 0; }
.custom-radio { background: transparent url("data:image/gif;base64,R0lGODdhHgAPAPQeAJWVlfv7+8nJyaSkpP7+/vT09N3c3MzKyuno6NTS0q2trfr6+peXl/b19fLx8evr68fFxaOjo9vZ2crKys3Ly9TT097d3ejn5/n5+fHx8drZ2cjGxuzr6/////X19QAAACwAAAAAHgAPAAAFvWAndplGbZSWjSxpomrbeVbFYQTGVZbH0jacjucTFTYXWeeyKRiRSqazY0AoRQiDqNoJCAaMgSDQyXYciesokUF3FYB4XEFmSx5qEUdz7wjkgBMdewcLeR0YFIUdA4ByEYgUEIcdBBuTHQyOcQyVG4t5iYuNm5CJGhyHe6h+mwACgyoVhxUZGbMBcIB0HbUdFklXFxYiwF1fYWNLxB0NUDJMDSLOwS3RI0A3OTs9PzXaQ90tJScpK0rkMOciIQA7") no-repeat left top; }
.custom-checkbox { background: transparent url("data:image/gif;base64,R0lGODdhHgAPAPEAAJWVlcfFxf///wAAACwAAAAAHgAPAAACP4yPqXviD5+J1M0aL5ZhwwuEomh1XumMKnoKoEq65vnCAEubdoh7Ndzb/FayVlGwux1zqV0Qo/HNpEaG9YooAAA7") no-repeat left top; }
.custom-file { position: relative; z-index: 1; display: inline-block; width: 100%; }
.custom-file { position: relative; z-index: 1; display: inline-block; width: 100%; }
.custom-file:after { content: 'Browse'; color: #000; background-color:#FFF; border: solid 2px currentColor; text-transform: uppercase; display: block; padding: 0 6px; line-height: 25px; position: absolute; z-index: 1; right:0; top:0; bottom:0; }
.custom-file input[type=file] { outline:none; position: absolute; z-index: 2; opacity:0; filter:alpha(opacity=0); top:0; right:0; bottom:0; left:0; width: 100%; }
.custom-file .fake-file { font-size:16px; width: 100%; border: solid 1px #000; padding: 0 3px; line-height: 27px; background-color: transparent; height: 27px; }

/* CCT FORM (https://static.ctctcdn.com/h/contacts-embedded-signup-assets/1.0.2/css/signup-form.css) */
.ctct-custom-form .ctct-form-required:after {content: ' *'; }
.ctct-custom-form .ctct-form-errorMessage { margin-left: 14px;  color: #f5463b; }


.row { overflow: hidden; }
.row:after { content: ''; display: table; clear: both; }
.row [class*='col-'] { float: left; padding-right: 20px; box-sizing: border-box; }
.row [class*='col-']:last-of-type { padding-right: 0; }
.row .col-3-4 { width: 75%; }
.row .col-2-3 { width: 66.66%; }
.row .col-1-3 { width: 33.33%; }
.row .col-1-2 { width: 50%; }
.row .col-1-4 { width: 25%; }
.row .col-1-8 { width: 12.5%; }

.row [class*='col-'] > ul { margin-top: 0; }

.image-left { float: left; margin: 0 10px 5px 0; }
.image-right { float: right; margin: 0 0 5px 10px; }

.tabs { margin: 0; padding: 0; overflow: hidden; margin-left: -1px; }
.tabs li { float: left; list-style: none; margin: 0; padding: 0; }
.tabs li a { display: block; padding: 2px 4px; background: #CCC; color: #333; margin-left: 1px; font-weight: normal; }
.tabs li a:hover { text-decoration: none; }
.tabs li.active a { background: #FFF; color: #000; }
.panes {}
.panes .pane { display: none; }
.panes .pane.active { display: block; }

article table th,
article table td { border: solid 1px #e0e0e0; border-right: none; border-bottom: none; text-align: center; padding: 6px; }
article table th { color: #0055a5; font-weight: 600; border-top-width: 0; line-height: 1!important; }
article table tr th:first-child,
article table tr td:first-child { border-left: none; }	
article table tr td:first-child { text-align: left; white-space: nowrap; }
article table tr:nth-child(even) td,
article table tr:nth-child(even) th { background: #f0faff; }

.registration-price {}
.registration-price table { width: 100%; }
.registration-price th,
.registration-price td { padding: 6px 2px; }
/*
.registration-price th { color: #0055a5; font-weight: 600; border-top-width: 0; line-height: 1!important; }
*/
.registration-price th span { display: inline-block; width: 70px; height: 70px; background: transparent url(../../elements/skin/registration-icons.png) no-repeat left top; text-indent: -9999px; }
.registration-price th span.race-full { background-position: 0 0; }
.registration-price th span.race-half { background-position: -70px 0; }
.registration-price th span.race-10k { background-position: -140px 0; }
.registration-price th span.race-8k { background-position: -210px 0; }
.registration-price th span.race-5k { background-position: -280px 0; }
.registration-price th span.race-kids { background-position: -350px 0; }
.registration-price th span.race-mile { background-position: -420px 0; }
/*
.registration-price tr th:first-child,
.registration-price tr td:first-child { border-left: none; }	
.registration-price tr td:first-child { text-align: left; white-space: nowrap; }
.registration-price tr:nth-child(even) td,
.registration-price tr:nth-child(even) th { background: #f0faff; }
*/
.registration-price tr.expired { color: #a5a5a5; }
.registration-price .custom-select-one { margin-bottom: 20px; }
.registration-price .custom-select-one,
.registration-price .mobile { width: 100%; display: none; }
.registration-price .mobile tbody { width: 100%; }
.registration-price .mobile tr:nth-child(even) td,
.registration-price .mobile tr:nth-child(even) th { background: #FFF; }
.registration-price .mobile tr:nth-child(odd) td,
.registration-price .mobile tr:nth-child(odd) th { background: #f0faff; }
.registration-price .mobile th,
.registration-price .mobile td { text-align: center; width: 50%; }
.registration-price .mobile tr:first-child th,
.registration-price .mobile tr:first-child td { border-top-width: 0; }
.registration-price .mobile th { border-top-width: 1px; }
/* elementQuery */
.registration-price[max-width~="600px"] table { display: none; }
.registration-price[max-width~="600px"] .custom-select-one { display: block; }
.registration-price[max-width~="600px"] .mobile { display: table; }


/* 
.ambassadors .row + .row { margin-top: 20px; }
.ambassadors .col-1-2 { padding-left: 175px; overflow: hidden; }
.ambassadors .col-1-2 img { float: left; margin-left: -175px; width: 150px; border-radius: 100%; }
elementQuery 
.ambassadors[max-width~="600px"] .row { margin-left: -20px; }
.ambassadors[max-width~="600px"] .row .col-1-2 { padding-left: 20px; float: left; width: 50%; }
.ambassadors[max-width~="600px"] .row .col-1-2 img { float: none; margin-left: 0; width: auto; max-width: 100%; height: auto; }
*/

.node-1172 .row + .row { margin-top: 20px; }
.node-1172 .col-1-2 { padding-left: 175px; overflow: hidden; }
.node-1172 .col-1-2 img { float: left; margin-left: -175px; width: 150px; border-radius: 100%; }
/* elementQuery */
.node-1172 .row[max-width~="600px"] { margin-left: -20px; }
.node-1172 .row[max-width~="600px"] .col-1-2 { padding-left: 20px; float: left; width: 50%; }
.node-1172 .row[max-width~="600px"] .col-1-2 img { float: none; margin-left: 0; width: auto; max-width: 100%; height: auto; }



/* News */
.type-newslisting {}
.type-newslisting .news-item { color: #4a4a4a; display: block; margin-bottom: 2em; padding-bottom: 2em; background: transparent url('data:image/gif;base64,R0lGODlhBQADAJEAANLS0vPz8/Dw8P///yH5BAAAAAAALAAAAAAFAAMAAAIHTIYAOCJcAAA7') repeat-x center bottom; }
.type-newslisting .news-item .title { display: block;  font-size: 26px; line-height: 1.07; color: #ee3a43; margin-bottom: 5px; font-weight: normal; }
.type-newslisting .news-item .date { display: block; font-style: italic; }
.type-newslisting .news-item .summary {}
.type-newslisting .news-item .more { color: #ee3a43;}

.type-newslisting .newsArchiveLink {}

.type-newsitem {}


/* Blog */
.section-1626 {}
.section-1626 .blog-side h3 { font-size: 26px; color: #0055a5; background: transparent url('data:image/gif;base64,R0lGODlhBQADAJEAANLS0vPz8/Dw8P///yH5BAAAAAAALAAAAAAFAAMAAAIHTIYAOCJcAAA7') repeat-x 0 bottom; padding-bottom: 10px; }
.section-1626 .blog-side .side-section { margin-bottom: 1em; }
.section-1626 .blog-side .side-section a { display: block; margin-bottom: .5em; }
.section-1626 .social-links .addthis_inline_share_toolbox > div { display:  inline-block!important; }
.section-1626 .social-links .comment-count { line-height: 1; vertical-align: top; margin-top: 6px; display: inline-block; color: #97989a; font-size: 12px; margin-left: 5px }
.section-1626 .post-author,
.section-1626 .post-date { font-weight: bold; }

.type-blog .post { background: transparent url('data:image/gif;base64,R0lGODlhBQADAJEAANLS0vPz8/Dw8P///yH5BAAAAAAALAAAAAAFAAMAAAIHTIYAOCJcAAA7') repeat-x 0 bottom; margin-bottom: 1em; padding: 30px 0; }
.type-blog .post .post-title { color: #ee3a43; font-size: 26px; margin-bottom: .1em; font-family: 'Marvel', sans-serif; text-transform: none;}
.type-blog .post .more { display: block; margin-bottom: 30px; }

@media only screen and (max-width: 500px){
	.type-blog .post .row [class*="col-"] + div[class*="col-"] { margin-top: 40px; }
}

.type-blogpost {}
.type-blogpost .categories { margin-bottom: 1em; }
.type-blogpost .categories a { color: #97989a; }
.type-blogpost .tags a { display: inline-block; background: #97989a; color: #fff; padding: 0 25px; line-height: 36px; border-radius: 36px; margin: 0 15px 15px 0; }
.type-blogpost .tags { margin-bottom: 15px; }
.type-blogpost .post .post-date { margin-bottom: 20px; }
.type-blogpost .post .social-links { margin-bottom: 20px; }

.type-blogpost .blog-nav { margin: 30px 0; }
.type-blogpost .blog-nav .prev { display: inline-block; margin-right: 60px; }
.type-blogpost .blog-nav .next:after,
.type-blogpost .blog-nav .prev:before { content: ''; display: inline-block; width: 6px; height: 12px; background: transparent url('data:image/gif;base64,R0lGODlhDAAMAKIAAPaanvabn/aZnv///+46QwAAAAAAAAAAACH5BAAAAAAALAAAAAAMAAwAAAMlOKoR+4wQB0eQkq6L8wJdBwxgKApmJwxouiqtCsXEO0t2JeRDAgA7') no-repeat 0 0; }

.type-blogpost .blog-nav .next:after { background-position: -6px 0; margin-left: 5px; }
.type-blogpost .blog-nav .prev:before  { background-position: 0 0; margin-right: 5px; }

.type-raceeventlisting .race-event { display: block; color: #4a4a4a; background: transparent url('data:image/gif;base64,R0lGODlhBQADAJEAANLS0vPz8/Dw8P///yH5BAAAAAAALAAAAAAFAAMAAAIHTIYAOCJcAAA7') repeat-x 0 bottom; margin-bottom: 30px; padding: 0 0 30px 0; }
.type-raceeventlisting .race-event .title { display: block; color: #ee3a43; font-size: 26px; margin-bottom: .1em; font-family: 'Marvel', sans-serif; text-transform: none;}
.type-raceeventlisting .race-event span { display: block; }
.type-raceeventlisting .race-event .more { color: #ee3a43; }

footer { overflow: hidden; background: #4a4a4a; color: #FFF; font-size: 14px; }
footer .row { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
footer .row .col-1-3:first-child { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }
footer .enews-signup { background: #ee3a43; width: 100%; text-align: center; padding: 40px 0; }
footer .enews-signup h3 { font-size: 30px; font-weight: normal; margin: 0; text-transform: uppercase; }
footer .enews-signup h4 { font-size: 38px; font-weight: 400; margin: 0 0 20px 0; text-transform: uppercase; line-height: 1; }
footer .enews-signup form { background: #FFF; border-radius: 17px; margin: 0 30px; }
footer .enews-signup input[type=text] { height: 35px; line-height: 35px; border: none; outline: none; padding: 0; margin: 0 0 0 5px; width:calc(90% - 30px); }
footer .enews-signup input[type=submit] { float: right; background: transparent url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAANCAIAAAAboLhvAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJtJREFUeNpi+DZr3nuvoD/37v9HBQxA/G367PfewX/uP0SXAMlNmfnBN/TPw0foEiC5idM++IX9ffQEXeL/v39fJ0z9EBDx9/ETVAmIXO8kkNzTZ4wgSWTw7/+nuFRGXh4MHf1TQDqePEWR+Aq03z8cYj+SqybPQHYxzB9TZ33wCUH2I9jnM+aCQuX+AxSff5u9ACR6Fz2sAAIMAEd/B4hLbv6JAAAAAElFTkSuQmCC') no-repeat 9px center; padding: 0; margin: 5px 5px 0 0; width: 26px; height: 26px; border-radius: 100%; border: solid 1px #ee3f47; text-indent: -9999px; }

footer .col-1-3:nth-of-type(2) { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
footer .organization { line-height: 1.5; }
footer .organization [itemprop=name] { text-indent: -9999px; width: 177px; height: 58px; background: transparent url(../../elements/skin/logo-footer.png) no-repeat center center; margin-bottom: 25px; }

footer .col-1-3:nth-of-type(3) { padding: 30px 0; position: relative; z-index: 1; }
footer .col-1-3:nth-of-type(3) .bottom { position: absolute; z-index: 1; bottom: 30px; }

footer .social-media { margin-left: -13px; }

footer .navigation li { display: inline; }
footer .navigation li a { display: inline-block; color: #FFF; padding-right: 5px; }
footer .navigation li:not(:first-child) a { border-left: solid 1px #FFF; padding-left: 5px; }


.wf-loading * { opacity: 0; filter:alpha(opacity=0); }
.wf-active *,
.wf-inactive * { opacity: 1; filter:alpha(opacity=100); }

.wf-active { font-family: 'Open Sans', sans-serif; }
.wf-active header .time > span:after { font-family: 'Open Sans', sans-serif!important; }
.wf-active footer .enews-signup h3,
.wf-active body:not(.type-homepage) h1,
.wf-active body:not(.type-homepage) h3 { font-family: 'Marvel', sans-serif; }
.wf-active header .time { font-family: 'Share Tech Mono', mono; }







@media only screen and (max-width:1000px){
	.content { margin: 0 20px; }
	/*.type-homepage .content { margin: 0; }*/
	header .logo { left: 20px; }
	header .tools .content { margin-right: 20px; }
}

@media only screen and (min-width:832px){
	body:not(.type-homepage) article .section { padding-left: 340px; overflow: hidden; }
	body:not(.type-homepage) article .section .left { margin-left: -340px; float: left; width: 320px; }	
	body:not(.type-homepage) article .section .left h2 + p { margin-top: -1em; }
}

@media only screen and (max-width:832px){
	.menu-trigger { display: block; }
	
	#wrapper { padding-top: 130px; }
	header:not(.mobile-header) { height: 130px; }
	a[name]:not([href]) { padding-top: 140px; }
	
	header .logo { left: 50%; top: 60px; margin-left: -81px; }
	header .content { margin: 0; }
	header .info .register { position: absolute; z-index: 1; top:0; right:0; left: 0; height: 46px; line-height: 46px; padding: 0; text-align: center; }
	
	header nav,
	header:not(.mobile-header) .countdown,
	header:not(.mobile-header) .tools,
	header:not(.mobile-header) .hashtag,
	header:not(.mobile-header) .social-media,
	header:not(.mobile-header) .search { display: none; }
	
	.mobile-header { display: block; }
	
	/*
	.type-homepage .banners { height: auto; }
	.type-homepage .banners .banner { position: static; }
	.type-homepage .banners .banner { background: none!important; }
	.type-homepage .banners .banner  img { display: block; width: 100%; height: 216px; }
	.type-homepage .banners .banner .content { background: #0055a5; margin: 0; text-align: center; padding: 40px 30px 108px 30px; }
	.type-homepage .banners .banner .title { margin: 0; max-width: none; font-size: 38px; text-shadow: none; line-height: 1; margin-bottom: 40px; }
	.banners .buttons { top: 300px; }
	.banners .nav .content { text-align: center; }
	*/
	
	footer .content { margin: 0; }
	footer .row .col-1-3 { float: none; width: 100%; padding: 0; margin-bottom: 20px; text-align: center; }
	#content .top { bottom: -248px; }
	footer .col-1-3:nth-of-type(1) { height: 248px; }
	footer .col-1-3:nth-of-type(3) .bottom { position: static; margin-top: 20px; }
	footer .col-1-3:nth-of-type(3) .bottom .navigation { margin: 0 auto; overflow: hidden; text-align: center; }
	
}

/* Mobile */
@media only screen and (max-width:500px){
	.row [class*='col-'] { float: none; padding-right: 0; width: 100%; }
	
	article table:not(.mobile) tr { display: block; padding: 0; border-bottom: solid 1px #e0e0e0; }
	article table:not(.mobile) tr:first-child { display: none; }
	article table:not(.mobile) tr td:first-child { text-align: center; }
	article table:not(.mobile) th { display: none; }
	article table:not(.mobile) td { display: block; width: 100%; }
	article table:not(.mobile) td:before { content: attr(data-title); display: block; font-weight: 600; margin: -5px -5px 5px; padding: 5px 5px 0 5px; text-transform: uppercase; }
	article table:not(.mobile) th,
	article table:not(.mobile) td { border: none; }
}

/* Small Mobile */
@media only screen and (max-width:321px){}


/* -------------
 * Error Messaging
 * ------------- */
.msg-ok,
.msg-error,
.msg-info { color:#333; padding: 5px 5px 5px 25px; margin: 0; display: block; }
.msg-ok { background: #E5F1E8 url(../../elements/icon_ok.gif) no-repeat 5px 5px; border-top: 2px solid #007520; border-bottom: 2px solid #007520; margin-bottom: 5px; }
.msg-error { background: #F5E5E5 url(../../elements/icon_error.gif) no-repeat 5px 5px; border-top: 2px solid #990000; border-bottom: 2px solid #990000; margin-bottom: 5px; }
.msg-info { background: #dce6f3 url(../../elements/icon_info.png) no-repeat 5px 5px; border-top: 2px solid #145bae; border-bottom: 2px solid #145bae; margin-bottom: 5px; }
/* -------------
 * Misc.
 * ------------- */
.browsehappy { margin: 0.2em 0; background: #ccc; color: #000; padding: 0.2em 0; }

.clearfix:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
.clearfix { display: inline-block; }
html[xmlns] .clearfix { display: block; }
* html .clearfix { height: 1%; }

/* Remove the outline in FF */
*|*:-moz-any-link:focus { outline: none !important; }


.hide { display: none; }
.invisible { visibility: hidden; }
strong { font-weight: bold; }
em { font-style: italic; }
textarea { resize: vertical; }

hr { display: block; height: 3px; border: 0; background: transparent url('data:image/gif;base64,R0lGODlhBQADAJEAANLS0vPz8/Dw8P///yH5BAAAAAAALAAAAAAFAAMAAAIHTIYAOCJcAAA7') repeat-x center center; margin: 1em 0; padding: 0; }
audio,
canvas,
img,
video { vertical-align: middle; }

::-moz-selection { background: #b3d4fc; text-shadow: none; }
::selection { background: #b3d4fc; text-shadow: none; }

/* 
 * print styles
 * inlined to avoid required HTTP connection www.phpied.com/delay-loading-your-print-css/ 
 */
@media print {
  * { background: transparent !important; color: #444 !important; text-shadow: none !important; }
  a, a:visited { color: #444 !important; text-decoration: underline; }
  thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */ 
  tr, img { page-break-inside: avoid; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3{ page-break-after: avoid; }
}