@charset "UTF-8";
.zone4-logo {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB3aWR0aD0iMTE0IgogICBoZWlnaHQ9IjI4IgogICBpZD0ic3ZnMiIKICAgdmVyc2lvbj0iMS4xIgogICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjQ4LjQgcjk5MzkiCiAgIHNvZGlwb2RpOmRvY25hbWU9InNtYWxsb2dvLnN2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczQiIC8+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJiYXNlIgogICAgIHBhZ2Vjb2xvcj0iIzY2NjY2NiIKICAgICBib3JkZXJjb2xvcj0iIzY2NjY2NiIKICAgICBib3JkZXJvcGFjaXR5PSIxLjAiCiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAuNCIKICAgICBpbmtzY2FwZTpwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOnpvb209IjcuNTA1MjU2MiIKICAgICBpbmtzY2FwZTpjeD0iNTUuODU1NjczIgogICAgIGlua3NjYXBlOmN5PSIxMy45MjgzNSIKICAgICBpbmtzY2FwZTpkb2N1bWVudC11bml0cz0icHgiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ibGF5ZXIxIgogICAgIHNob3dncmlkPSJmYWxzZSIKICAgICBpbmtzY2FwZTp3aW5kb3ctd2lkdGg9IjE0MjgiCiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iNjc3IgogICAgIGlua3NjYXBlOndpbmRvdy14PSIxOTk3IgogICAgIGlua3NjYXBlOndpbmRvdy15PSI0MjAiCiAgICAgaW5rc2NhcGU6d2luZG93LW1heGltaXplZD0iMCIgLz4KICA8bWV0YWRhdGEKICAgICBpZD0ibWV0YWRhdGE3Ij4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICAgIDxkYzp0aXRsZT48L2RjOnRpdGxlPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZwogICAgIGlua3NjYXBlOmxhYmVsPSJMYXllciAxIgogICAgIGlua3NjYXBlOmdyb3VwbW9kZT0ibGF5ZXIiCiAgICAgaWQ9ImxheWVyMSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLC0xMDI0LjM2MjIpIj4KICAgIDxwYXRoCiAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIgogICAgICAgbWFzaz0ibm9uZSIKICAgICAgIGQ9Im0gMTAzLjc3OTY1LDEwMjQuNTYwNiAtMTIuOTE4MiwxOS44NzQ4IDAsMy44NjE5IDEyLjkyMTI2LDAgMCwzLjk3MyA0LjgzNDAzLDAuMDExIC0wLjAyOTEsLTMuOTc4NCAyLjc3NTk1LDAgMi4zMDAzOSwtMy44NjIgLTUuMDc2MzQsMCAwLjAwNywtMTkuODc0NyB6IG0gMCw3Ljg2NTggMC4wMDIsMTIuMDA5IC03Ljg3ODI4NSwwIHoiCiAgICAgICBpZD0icGF0aDMwMDEiCiAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgc29kaXBvZGk6bm9kZXR5cGVzPSJjY2NjY2NjY2NjY2NjY2NjIiAvPgogICAgPHBhdGgKICAgICAgIHN0eWxlPSJmb250LXNpemU6NDBweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0OmJvbGQ7Zm9udC1zdHJldGNoOm5vcm1hbDtsaW5lLWhlaWdodDoxMjUlO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O2ZpbGw6I2ZmZmZmZjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtmb250LWZhbWlseTpHaWxsIFNhbnMgTVQgUHJvOy1pbmtzY2FwZS1mb250LXNwZWNpZmljYXRpb246R2lsbCBTYW5zIE1UIFBybyBCb2xkIgogICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgIGlkPSJwYXRoMjk5OCIKICAgICAgIGQ9Im0gMjAuNzQ2NTc3LDEwMjcuMzI3MiAtMTkuNTQ3NTAxOCwwIDAsMy45MzQgMTAuNzI2NTM3OCwwIC0xMS41MjU2NDk3NiwxNy4wMjczIDE5LjU2NTI4ODc2LC0zZS00IDAsLTMuODUyOCAtMTAuNzIxMDc1OSwwIDExLjUwMjM5MjksLTE3LjEwODIiCiAgICAgICBzb2RpcG9kaTpub2RldHlwZXM9ImNjY2NjY2NjYyIgLz4KICAgIDxwYXRoCiAgICAgICBzdHlsZT0iZm9udC1zaXplOjQwcHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpib2xkO2ZvbnQtc3RyZXRjaDpub3JtYWw7bGluZS1oZWlnaHQ6MTI1JTtsZXR0ZXItc3BhY2luZzowcHg7d29yZC1zcGFjaW5nOjBweDtmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6R2lsbCBTYW5zIE1UIFBybzstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOkdpbGwgU2FucyBNVCBQcm8gQm9sZCIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICBpZD0icGF0aDMwMDIiCiAgICAgICBkPSJtIDY2LjI0MzIwMywxMDI3LjMyNzIgLTUuMTYzNDg1LDAgMCwxMi4zNTU0IC0xMS4yMTgyOTksLTEyLjM1NTQgLTQuNzYzOTM4LDAgMCwyMC45NjEzIDUuMTk0MjI3LDAgMCwtMTIuOTcwMiAxMS41ODcxMjMsMTIuOTcwMiA0LjM2NDM4MSwwIDAsLTIwLjk2MTMiIC8+CiAgICA8cGF0aAogICAgICAgc3R5bGU9ImZvbnQtc2l6ZTo0MHB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6Ym9sZDtmb250LXN0cmV0Y2g6bm9ybWFsO2xpbmUtaGVpZ2h0OjEyNSU7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7ZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO2ZvbnQtZmFtaWx5OkdpbGwgU2FucyBNVCBQcm87LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpHaWxsIFNhbnMgTVQgUHJvIEJvbGQiCiAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgaWQ9InBhdGgzMDA0IgogICAgICAgZD0ibSA4Ni4zNjk4NjMsMTA0NC40NDY2IC0xMC4xNzMyOTksMCAwLC01LjA0MDYgOS40OTcxMzIsMCAwLC0zLjkzNCAtOS40OTcxMzIsMCAwLC00LjI0MTYgOS45NTgxNTYsMCAwLC0zLjkwMzIgLTE1LjI0NDU4OCwwIDAsMjAuOTYxMyAxNS40NTk3MzEsMCAwLC0zLjg0MTkiIC8+CiAgICA8cGF0aAogICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIKICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICBkPSJtIDMxLjIwMjczMiwxMDI3LjMwMzQgYyAtNS43OTU4NjksMCAtMTAuNDkzMTQ0LDQuNjk3NCAtMTAuNDkzMTQ0LDEwLjQ5MzMgMCw1Ljc5NTggNC42OTcyNzUsMTAuNDkzMSAxMC40OTMxNDQsMTAuNDkzMSA1Ljc5NTg3LDAgMTAuNDkzMTQ2LC00LjY5NzMgMTAuNDkzMTQ2LC0xMC40OTMxIDAsLTUuNzk1OSAtNC42OTcyNzYsLTEwLjQ5MzMgLTEwLjQ5MzE0NiwtMTAuNDkzMyB6IG0gMCw0LjY4MjMgYyAzLjIwODUxMiwwIDUuODEwODUsMi42MDI0IDUuODEwODUsNS44MTEgMCwzLjIwODUgLTIuNjAyMzM4LDUuODEwOSAtNS44MTA4NSw1LjgxMDkgLTMuMjA4NTEsMCAtNS44MTA4NDksLTIuNjAyNCAtNS44MTA4NDksLTUuODEwOSAwLC0zLjIwODYgMi42MDIzMzksLTUuODExIDUuODEwODQ5LC01LjgxMSB6IgogICAgICAgaWQ9InBhdGgzODEwIiAvPgogIDwvZz4KPC9zdmc+Cg==);
  background-repeat: no-repeat;
}

.hidden {
  display: none !important;
}

* {
  -webkit-tap-highlight-color: transparent;
}

@font-face {
  font-family: emoji;
  src: local("Apple Color Emoji"), local("Segoe UI Emoji"), local("Segoe UI Symbol"), local("Android Emoji"), local("Noto Color Emoji"), local("Emoji One"), local("Twemoji");
  unicode-range: U+200D, U+FE0F, U+1F004, U+1F0CF, U+1F170-1F171, U+1F17E, U+1F17F, U+1F18E, U+1F191-1F19A, U+1F1E6-1F1FF, U+1F201, U+1F201-1F202, U+1F21A, U+1F22F, U+1F232-1F236, U+1F232-1F23A, U+1F238-1F23A, U+1F250-1F251, U+1F300-1F320, U+1F321, U+1F324-1F32C, U+1F32D-1F32F, U+1F330-1F335, U+1F336, U+1F337-1F37C, U+1F37D, U+1F37E-1F37F, U+1F380-1F393, U+1F385, U+1F396-1F397, U+1F399-1F39B, U+1F39E-1F39F, U+1F3A0-1F3C4, U+1F3C2-1F3C4, U+1F3C5, U+1F3C6-1F3CA, U+1F3C7, U+1F3CA, U+1F3CB-1F3CC, U+1F3CB-1F3CE, U+1F3CF-1F3D3, U+1F3D4-1F3DF, U+1F3E0-1F3F0, U+1F3F3-1F3F5, U+1F3F4, U+1F3F7, U+1F3F8-1F3FF, U+1F3FB-1F3FF, U+1F400-1F43E, U+1F43F, U+1F440, U+1F441, U+1F442-1F443, U+1F442-1F4F7, U+1F446-1F450, U+1F466-1F469, U+1F46E, U+1F470-1F478, U+1F47C, U+1F481-1F483, U+1F485-1F487, U+1F4AA, U+1F4F8, U+1F4F9-1F4FC, U+1F4FD, U+1F4FF, U+1F500-1F53D, U+1F549-1F54A, U+1F54B-1F54E, U+1F550-1F567, U+1F56F-1F570, U+1F573-1F579, U+1F574-1F575, U+1F57A, U+1F587, U+1F58A-1F58D, U+1F590, U+1F595-1F596, U+1F5A4, U+1F5A5, U+1F5A8, U+1F5B1-1F5B2, U+1F5BC, U+1F5C2-1F5C4, U+1F5D1-1F5D3, U+1F5DC-1F5DE, U+1F5E1, U+1F5E3, U+1F5E8, U+1F5EF, U+1F5F3, U+1F5FA, U+1F5FB-1F5FF, U+1F600, U+1F601-1F610, U+1F611, U+1F612-1F614, U+1F615, U+1F616, U+1F617, U+1F618, U+1F619, U+1F61A, U+1F61B, U+1F61C-1F61E, U+1F61F, U+1F620-1F625, U+1F626-1F627, U+1F628-1F62B, U+1F62C, U+1F62D, U+1F62E-1F62F, U+1F630-1F633, U+1F634, U+1F635-1F640, U+1F641-1F642, U+1F643-1F644, U+1F645-1F647, U+1F645-1F64F, U+1F64B-1F64F, U+1F680-1F6C5, U+1F6A3, U+1F6B4-1F6B6, U+1F6C0, U+1F6CB-1F6CF, U+1F6CC, U+1F6D0, U+1F6D1-1F6D2, U+1F6E0-1F6E5, U+1F6E9, U+1F6EB-1F6EC, U+1F6F0, U+1F6F3, U+1F6F4-1F6F6, U+1F6F7-1F6F8, U+1F910-1F918, U+1F918, U+1F919-1F91C, U+1F919-1F91E, U+1F91E, U+1F91F, U+1F920-1F927, U+1F926, U+1F928-1F92F, U+1F930, U+1F931-1F932, U+1F933-1F939, U+1F933-1F93A, U+1F93C-1F93E, U+1F93D-1F93E, U+1F940-1F945, U+1F947-1F94B, U+1F94C, U+1F950-1F95E, U+1F95F-1F96B, U+1F980-1F984, U+1F985-1F991, U+1F992-1F997, U+1F9C0, U+1F9D0-1F9E6, U+1F9D1-1F9DD, U+203C, U+2049, U+2139, U+2194-2199, U+21A9-21AA, U+231A-231B, U+2328, U+23CF, U+23E9-23EC, U+23E9-23F3, U+23F0, U+23F3, U+23F8-23FA, U+24C2, U+25AA-25AB, U+25B6, U+25C0, U+25FB-25FE, U+25FD-25FE, U+2600-2604, U+260E, U+2611, U+2614-2615, U+2618, U+261D, U+2620, U+2622-2623, U+2626, U+262A, U+262E-262F, U+2638-263A, U+2640, U+2642, U+2648-2653, U+2660, U+2663, U+2665-2666, U+2668, U+267B, U+267F, U+2692-2697, U+2693, U+2699, U+269B-269C, U+26A0-26A1, U+26A1, U+26AA-26AB, U+26B0-26B1, U+26BD-26BE, U+26C4-26C5, U+26C8, U+26CE, U+26CF, U+26D1, U+26D3-26D4, U+26D4, U+26E9-26EA, U+26EA, U+26F0-26F5, U+26F2-26F3, U+26F5, U+26F7-26FA, U+26F9, U+26FA, U+26FD, U+2702, U+2705, U+2708-2709, U+270A-270B, U+270C-270D, U+270F, U+2712, U+2714, U+2716, U+271D, U+2721, U+2728, U+2733-2734, U+2744, U+2747, U+274C, U+274E, U+2753-2755, U+2757, U+2763-2764, U+2795-2797, U+27A1, U+27B0, U+27BF, U+2934-2935, U+2B05-2B07, U+2B1B-2B1C, U+2B50, U+2B55, U+3030, U+303D, U+3297, U+3299;
}
.z4-icon.icon-date {
  background-image: url("/zimg/icon/secondary/noun_date_1195535.svg");
}
.z4-icon.icon-organization {
  background-image: url("/zimg/icon/secondary/noun_stack_1155175.svg");
}
.z4-icon.icon-location {
  background-image: url("/zimg/icon/secondary/noun_Location_1826481.svg");
}
.z4-icon.icon-event {
  background-image: url("/zimg/icon/secondary/noun_Star_5758.svg");
}
.z4-icon.icon-reg {
  background-image: url("/zimg/icon/secondary/noun_register_2773678.svg");
}
.z4-icon.icon-race {
  background-image: url("/zimg/icon/secondary/noun_Stopwatch_796219.svg");
}
.z4-icon.icon-banner {
  background-image: url("/zimg/icon/secondary/noun_banner_1964596.svg");
}
.z4-icon.icon-ellipsis {
  background-image: url("/zimg/icon/secondary/noun_ellipsis_1926066.svg");
}
.z4-icon.icon-pencil {
  background-image: url("/zimg/icon/pencil.svg");
}
.z4-icon.icon-cake {
  background-image: url("/zimg/icon/cake.svg");
}
.z4-icon.icon-clean {
  background-image: url("/zimg/icon/clean.svg");
}
.z4-icon.icon-photo {
  background-image: url("/zimg/icon/photo.svg");
}
.z4-icon.icon-import {
  background-image: url("/zimg/icon/import.svg");
}
.z4-icon.icon-upload {
  background-image: url("/zimg/icon/upload.svg");
}
.z4-icon.icon-push {
  background-image: url("/zimg/icon/push.svg");
}
.z4-icon.icon-club {
  background-image: url("/zimg/icon/secondary/noun_stack_1155175.svg");
}
.z4-icon.icon-form {
  background-image: url("/zimg/icon/noun_form_576491_1A1A1A.svg");
}
.z4-icon.icon-membership {
  background-image: url("/zimg/icon/noun_people_2196504.svg");
}
.z4-icon.icon-keypad {
  background-image: url("/zimg/icon/noun_Keypad_445538_1A1A1A.svg");
}
.z4-icon.icon-creditcard {
  background-image: url("/zimg/icon/noun_credit cards_942014_1A1A1A.svg");
}
.z4-icon.icon-server {
  background-image: url("/zimg/icon/noun_Computing server_1847860_1A1A1A.svg");
}
.z4-icon.icon-user {
  background-image: url("/zimg/icon/noun_User_438325_1A1A1A.svg");
}
.z4-icon.icon-email {
  background-image: url("/zimg/icon/streamline-send-email.svg");
}
.z4-icon.icon-website {
  background-image: url("/zimg/icon/website.png");
}
.z4-icon.icon-keyhole {
  background-image: url("/zimg/icon/keyhole.png");
}
.z4-icon.icon-cart {
  background-image: url("/zimg/icon/noun_cart_2032310_1A1A1A.svg");
}
.z4-icon.icon-graph {
  background-image: url("/zimg/icon/streamline-analytics-graph-bar.svg");
}
.z4-icon.icon-page {
  background-image: url("/zimg/icon/noun_page_1275159_1A1A1A.svg");
}
.z4-icon.icon-checkmark {
  background-image: url("/zimg/icon/noun_checkmark_569906_1A1A1A.svg");
}
.z4-icon.icon-box {
  background-image: url("/zimg/box.svg");
}
.z4-icon.icon-gochip {
  background-image: url("/zimg/icon/gologo.svg");
}
.z4-icon.icon-pickaxe {
  background-image: url("/zimg/icon/noun_Pickaxe_1647587_1A1A1A.svg");
}
.z4-icon.icon-calendar {
  background-image: url("/zimg/icon/noun_appointment_1040930_1A1A1A.svg");
}
.z4-icon.icon-people-search {
  background-image: url("/zimg/icon/noun_Job Search_2041555_1A1A1A.svg");
}
.z4-icon.icon-table {
  background-image: url("/zimg/icon/noun_Table_205329_1A1A1A.svg");
}
.z4-icon.icon-broken-heart {
  background-image: url("/zimg/icon/noun_broken_1917986_1A1A1A.svg");
}
.z4-icon.icon-email {
  background-image: url("/zimg/noun_send email_727624_000000.svg");
}
.z4-icon.icon-changelog {
  background-image: url("/zimg/icon/noun_change_562280_000000.svg");
}
.z4-icon.icon-socket {
  background-image: url("/zimg/icon/noun_power socket_1571195_000000.svg");
}
.z4-icon.icon-style {
  background-image: url("/zimg/icon/noun_Stylish Woman_1495528_000000.svg");
}
.z4-icon.icon-help {
  background-image: url("/zimg/icon/noun_help_2302541_000000.svg");
}
.z4-icon.icon-radio {
  background-image: url("/zimg/icon/noun_Radio_1458883_000000.svg");
}
.z4-icon.icon-podium {
  background-image: url("/zimg/icon/noun_Podium_147113.svg");
}
.z4-icon.icon-invoice {
  background-image: url("/zimg/icon/noun_invoice_2262415.svg");
}
.z4-icon.icon-twitter {
  background-image: url("/zimg/social_icon/twitter_dark.png");
}
.z4-icon.icon-facebook {
  background-image: url();
}
.z4-icon.icon-uncircled-star {
  background-image: url("/zimg/icon/secondary/uncircled-star.svg");
}
.z4-icon.icon-bank {
  background-image: url("/zimg/icon/secondary/noun_Bank_988159.svg");
}
.z4-icon.icon-nqc {
  background-image: url("/zimg/nordiq-canada.png");
}
.z4-icon.icon-share {
  background-image: url("/zimg/icon/secondary/share.svg");
}
.z4-icon.icon-customize {
  background-image: url("/zimg/icon/secondary/noun_customize_2397661.svg");
}
.z4-icon.icon-bomb {
  background-image: url("/zimg/icon/secondary/noun_Danger_2786463.svg");
}
.z4-icon.icon-relay {
  background-image: url("/zimg/icon/secondary/noun_Baton_81716.svg");
}
.z4-icon.icon-trash {
  background-image: url("/zimg/icon/secondary/noun_Trash_2368580.svg");
}
.z4-icon.icon-person {
  background-image: url("/zimg/icon/secondary/noun_person_2797971.svg");
}
.z4-icon.icon-merge {
  background-image: url("/zimg/icon/secondary/noun_Merge_2400092.svg");
}
.z4-icon.icon-flag {
  background-image: url("/zimg/icon/secondary/noun_Flag_18472.svg");
}
.z4-icon.icon-label {
  background-image: url("/zimg/icon/secondary/noun_label_2265527.svg");
}
.z4-icon.icon-add {
  background-image: url("/zimg/icon/secondary/noun_add_3029252.svg");
}
.z4-icon.icon-stopwatch {
  background-image: url("/zimg/icon/secondary/noun_Stopwatch_11196.svg");
}
.z4-icon.icon-circled-x {
  background-image: url("/zimg/icon/secondary/noun_X_2222077.svg");
}
.z4-icon.icon-circled-exclaim {
  background-image: url("/zimg/icon/secondary/noun_exclamation_138562.svg");
}
.z4-icon.icon-megaphone {
  background-image: url("/zimg/icon/noun_Megaphone_1139479.svg");
}
.z4-icon.icon-receipt {
  background-image: url("/zimg/icon/noun_receipt_2044100.svg");
}
.z4-icon.icon-lock {
  background-image: url("/zimg/icon/noun_locked_1088684.svg");
}
.z4-icon.icon-dragon {
  background-image: url("/zimg/icon/noun_dragon_2691010.svg");
}
.z4-icon.icon-forklift {
  background-image: url("/zimg/icon/noun_Forklift_699362.svg");
}
.z4-icon.icon-pass {
  background-image: url("/zimg/icon/noun_pass_1827303.svg");
}
.z4-icon.icon-biathlon {
  background-image: url("/zimg/sport-icon/biathlon.svg");
}
.z4-icon.icon-shuffle {
  background-image: url("/zimg/icon/noun_random_1940022.svg");
}
.z4-icon.icon-tax {
  background-image: url("/zimg/icon/noun_tax_2340120.svg");
}

.flex-column {
  display: flex;
  flex-direction: column;
}
.flex-column .collapsed,
.flex-column .collapsing {
  overflow: hidden;
}

.app-container > .flex-column:first-child {
  margin-top: 2rem;
}

.collapsible-blocks-section .collapsible-title {
  margin: 1rem 0;
}
.collapsible-blocks-section > .content-section,
.collapsible-blocks-section > .content-section.underlined {
  margin-bottom: 1rem;
}
.collapsible-blocks-section > .content-section.no-underline,
.collapsible-blocks-section > .content-section.underlined.no-underline {
  margin-bottom: 0;
  border-bottom: none;
}
.collapsible-blocks-section > .content-section.no-underline .content-section.narrow,
.collapsible-blocks-section > .content-section.underlined.no-underline .content-section.narrow {
  margin-bottom: 0;
}
.collapsible-blocks-section > .content-section.no-top-margin {
  margin-top: 0;
}
.collapsible-blocks-section > .content-section.no-top-margin .content-section {
  margin-top: 0;
}
.collapsible-blocks-section .content-section.collapsible.underlined.collapsed {
  margin-bottom: 0;
}

.content-section.collapsible {
  margin-top: 0;
}
.content-section.collapsible .content-section .collapse-button {
  display: inline-block;
  width: 2.5rem;
  line-height: 1;
  height: 2.5rem;
  text-align: center;
  border: 1px solid transparent;
  border-radius: 50%;
  color: #aaa;
  font-weight: 300;
  transition: all 0.15s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.content-section.collapsible .content-section .collapse-button:hover {
  color: black;
  border-color: #aaa;
}
@media screen and (min-width: 960px) {
  .content-section.collapsible .content-section .collapse-button {
    position: absolute;
    left: -1.5em;
  }
}
.content-section.collapsible .content-section .collapsible-content {
  transition: max-height 0.15s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  max-height: none;
}
@media screen and (max-width: 500px) {
  .content-section.collapsible .content-section .collapsible-title {
    padding-right: 2em;
  }
  .content-section.collapsible .content-section .collapsible-title .collapse-button {
    position: absolute;
    right: 0;
  }
}

.content-section.collapsed {
  height: 56px;
  margin: 0;
}
.content-section.collapsed .collapsible-title {
  cursor: pointer;
  color: #aaa;
  margin-bottom: 0;
  transition: color 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.content-section.collapsed .collapsible-title:hover {
  color: black;
}

.content-section.collapsible.collapsed {
  margin-bottom: 0;
  padding-bottom: 0;
  margin-top: 0;
}
.content-section.collapsible.collapsed.underlined {
  border-bottom-color: transparent;
}
.content-section.collapsible.collapsed .content-section {
  margin-bottom: 0;
}
.content-section.collapsible.collapsed .collapse-button {
  line-height: 1.15;
}

.title-background {
  border-top: 1px solid transparent;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .title-background {
    display: none;
  }
}

@media screen and (max-width: 960px) {
  .app-title-container {
    display: none;
  }
}

.title-block {
  position: relative;
  padding-bottom: 0.5rem;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  margin-bottom: -5px;
  height: 4.5rem;
}
@media screen and (max-width: 480px) {
  .title-block {
    padding-left: 0.5em;
    padding-right: 0.5em;
  }
}
.title-block h1 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 0;
  font-weight: 900;
  font-size: 3rem;
  margin-top: 0;
  color: inherit;
}
@media screen and (max-width: 480px) {
  .title-block h1 {
    font-size: 2rem;
  }
}
.title-block .sport-icon + h1 {
  padding-top: 0.6rem;
}
.title-block .right {
  position: absolute;
  bottom: 0.5rem;
  right: 0;
  z-index: 10;
}
.title-block .right + h1 {
  padding-right: 4em;
}
@media screen and (max-width: 480px) {
  .title-block .right {
    display: none;
  }
  .title-block .right + h1 {
    padding-right: 0;
  }
}
.title-block:empty {
  display: none;
}
.title-block .menu-content {
  max-width: 18em;
}

/*
body.race{
    .title-block{
        border: 1px solid $blue;
        background-image: linear-gradient(to right, $darker-blue 40%, $darkest-blue);
        color: white;
        text-shadow: 0 0 4px $darkest-blue;
        position: relative;
        z-index:0;

        &.has-sport-icon{
            &:before{
                content: '';
                display: block;
                position: absolute;
                top: 0;
                left: 0;
                background-color: $darkest-blue; //lighten($darker-blue, 2.5%);
                clip-path: polygon(0 0, 100% 0, 82% 100%, 0 100%);
                height: 100%;
                width: 6.5em;
                z-index: 1;
            }
        }

        &:after{
            content: '';
            display: block;
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-image: linear-gradient(to top, rgba(119, 175, 237, 0.1), transparent);
            z-index: 2;
        }

        .sport-icon{
            background-color: transparent;
            margin: 0.25em 2.5em 0 1.15em;
            border-color:transparent;
            z-index: 3;
        }
        h1{
            text-shadow: 0 0 3px $black;
            z-index: 3;
        }

    }
}
*/
.title-wrapper {
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  background-position: right 1em center;
  background-size: auto 100%;
  background-repeat: no-repeat;
}
.title-wrapper .sport-icon {
  display: block;
  height: 3.5rem;
  width: 3.5rem;
  margin: 0.75rem 0.75rem 0.75rem 0;
  float: left;
  position: relative;
  z-index: 0;
}
.title-wrapper .sport-icon ~ .title-block,
.title-wrapper .sport-icon ~ .breadcrumbs {
  padding-left: 5rem;
}
.title-wrapper .sport-icon ~ .breadcrumbs > ul {
  padding-left: 0.1rem;
}
.title-wrapper.empty {
  margin-top: 0;
}
@media screen and (max-width: 480px) {
  .title-wrapper {
    margin-top: 1rem;
    margin-bottom: 0.5rem;
  }
  .title-wrapper .sport-icon {
    margin-left: 0.5rem;
    margin-top: -0.25rem;
    height: 3rem;
    width: 3rem;
  }
  .title-wrapper .sport-icon ~ .title-block {
    margin-left: 3.5rem;
  }
  .title-wrapper.empty {
    display: none;
  }
}

body.bright .title-block {
  background: #ddd;
  border: 1px solid #ddd;
}

.breadcrumb-wrapper.minimal {
  padding-top: 1em;
  margin-bottom: 0.25em;
}
.breadcrumb-wrapper.minimal > div {
  margin: 0;
}

.breadcrumbs-wrapper .unconstrained-width {
  padding-left: 1em;
  padding-right: 1em;
}

.breadcrumbs {
  clear: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 0.8em;
  color: #666;
  cursor: default;
}
.breadcrumbs:not(:empty) {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}
.breadcrumbs a {
  text-decoration: none;
  color: #333;
}
.breadcrumbs a:hover {
  color: #1b70cf;
  text-decoration: underline;
}
.breadcrumbs .back-link {
  float: right;
}
.breadcrumbs > ul {
  margin: 0;
  padding: 0 0.25em;
  list-style: none;
}
.breadcrumbs > ul > li {
  display: inline-block;
}
.breadcrumbs > ul > li:not(:last-child):after {
  display: inline-block;
  width: 0.75em;
  height: 0.75em;
  margin: 0 0.5em;
  content: "";
  position: relative;
  top: 0.1em;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICBpZD0ic3ZnMiIKICAgdmlld0JveD0iMCAwIDM5Ljk5OTk5OSAzOS45OTk5OTkiCiAgIGhlaWdodD0iNDAiCiAgIHdpZHRoPSI0MCI+CiAgPGRlZnMKICAgICBpZD0iZGVmczQiIC8+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhNyI+CiAgICA8cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+PC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+CiAgPGcKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLC0xMDEyLjM2MjIpIgogICAgIGlkPSJsYXllcjEiPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoNDEzNiIKICAgICAgIGQ9Im0gMy4zNzEyNjkzLDEwNDkuMTgyMyAtMTBlLTgsLTE5LjE5NjcgMCwtMTkuMTk2NyAxNi42MjQ4MTk4LDkuNTk4NCAxNi42MjQ4MTksOS41OTgzIC0xNi42MjQ4Miw5LjU5ODMgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMwMDAwMDA7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjI7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjEiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjU5OTkxMzE2LDAsMCwwLjk0ODQ4OTg0LDguMTIwMDA5NCw1NC44ODkzMzEpIiAvPgogIDwvZz4KPC9zdmc+Cg==");
  background-size: 100%;
  opacity: 0.45;
}
.breadcrumbs .breadcrumb {
  max-width: 16em;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 1.5em;
  position: relative;
}
.breadcrumbs .breadcrumb:after {
  position: absolute !important;
  right: 0 !important;
  top: 4px !important;
}
@media screen and (max-width: 960px) {
  .breadcrumbs .breadcrumb.item-title {
    font-weight: 600;
    color: black;
  }
}
@media screen and (max-width: 480px) {
  .breadcrumbs {
    display: none;
    margin-left: 0.5rem;
    font-size: 0.6rem;
  }
}

.content-section {
  margin-top: 2em;
  margin-bottom: 3em;
  transition: max-height 0.25s ease-in-out;
}
.content-section.narrow {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
.content-section.narrowest {
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
.content-section .content-section.narrowest {
  padding-left: 0;
  padding-right: 0;
}
.content-section.padded {
  padding-left: 1em;
  padding-right: 1em;
}
.content-section.help {
  color: #666;
}
.content-section.help strong {
  color: #333;
  font-weight: 600;
}
.content-section .content-section {
  margin-top: 0;
  margin-bottom: 1em;
}
.content-section.large-vertical-spacing .content-section {
  margin-top: 3em;
}
.content-section.small-vertical-spacing {
  margin-top: 0;
}
.content-section.underlined {
  padding-bottom: 1em;
  margin-bottom: 4em;
  border-bottom: 1px solid #ddd;
}
.content-section.underlined:last-child {
  border-bottom-color: transparent;
  margin-bottom: 0;
}
.content-section.underlined:last-child.really {
  border-bottom-color: #ddd;
}
.content-section.overlined {
  border-top: 1px solid #ddd;
}
.content-section.background {
  background-color: #ddd;
}
.content-section.slim {
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
}
.content-section.slim:empty {
  display: none;
}
.content-section.content-header {
  margin-bottom: 2rem;
}
.content-section.content-header h2 {
  margin: 0 0 0.25rem;
}
@media screen and (max-width: 480px) {
  .content-section:first-child {
    margin-top: -1px;
  }
  .content-section:first-child.panel.default {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    border-left: 0;
    border-right: 0;
  }
}

.app-container > .content-section:first-child {
  margin-top: 4em;
}

.sticky-block {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 100%;
  z-index: 99;
  background: transparent;
  padding-top: 1em;
}
.sticky-block .inside-sticky {
  background: white;
  width: 928px;
  margin: 0 auto;
  padding: 0.75em 2em;
  box-shadow: 0 0 64px rgba(0, 0, 0, 0.35);
  border-top: 1px solid transparent;
}
@media screen and (max-width: 500px) {
  .sticky-block .inside-sticky {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.z4app.page-content.has-sticky-block {
  padding-bottom: 8em;
}

body.scrolled.bottom .sticky-block {
  width: unset;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
body.scrolled.bottom .sticky-block .inside-sticky {
  box-shadow: none;
  width: auto;
  padding-bottom: 4em;
  border-top-color: #ddd;
}

body.fullscreen-enabled .overtop-panel {
  overflow: auto;
}
body.fullscreen-enabled .hide-from-fullscreen {
  display: none !important;
}

* {
  box-sizing: border-box;
}

html {
  background-color: #f1f3f8;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 16px;
  background-image: url("/zimg/9ld.jpg");
  background-repeat: no-repeat;
  background-size: 100%;
  background-attachment: fixed;
  background-position: bottom;
  overflow-y: scroll;
}
html.overflow-hide {
  overflow: hidden;
  overflow-y: hidden !important;
}

body {
  margin: 0;
  padding: 0;
  min-width: 320px;
}

p {
  line-height: 1.2;
}

.page-content {
  padding-bottom: 4em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.6);
  min-height: calc(100vh - 12em);
  background: #fff;
  border: none;
  border-top: none;
  border-radius: 5px;
  box-shadow: 0 0 128px rgba(15, 50, 89, 0.25);
  z-index: 1;
}
.page-content.no-breadcrumbs {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-top: 1px solid white;
}
.page-content.iframe-nopadding {
  padding-bottom: 0em;
}
.page-content.loading {
  position: relative;
  overflow: hidden;
}
.page-content.loading:before {
  z-index: 99;
  border-radius: 5px;
  content: "";
  display: block;
  background: white;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center 140px;
  background-size: 30px;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHdpZHRoPScxNnB4JyBoZWlnaHQ9JzE2cHgnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIiBjbGFzcz0idWlsLXJpbmciPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBmaWxsPSJub25lIiBjbGFzcz0iYmsiPjwvcmVjdD48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI0Mi41IiBzdHJva2UtZGFzaGFycmF5PSIxNzMuNTcyOTk0MTEwODM2MDggOTMuNDYyMzgxNDQ0Mjk2MzQiIHN0cm9rZT0iIzI3ODBlMyIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxNSI+PGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHZhbHVlcz0iMCA1MCA1MDsxODAgNTAgNTA7MzYwIDUwIDUwOyIga2V5VGltZXM9IjA7MC41OzEiIGR1cj0iMC43NXMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBiZWdpbj0iMHMiPjwvYW5pbWF0ZVRyYW5zZm9ybT48L2NpcmNsZT48L3N2Zz4=");
}
.page-content.transparent {
  background: none;
}
.page-content.background {
  border: none;
  border-radius: 0;
  box-shadow: none;
  margin-top: 0;
  background-color: #f1f3f8;
}
.page-content.background.transparent {
  background-color: rgba(241, 243, 248, 0.5);
}
@media screen and (max-width: 480px) {
  .page-content {
    border: none;
    border-radius: 0;
    border-top: 1px solid #ddd;
    min-height: calc(100vh - 10em);
    margin-top: 0;
  }
}
.page-content .content-block,
.page-content .layout-block {
  clear: both;
  margin-bottom: 2em;
  margin: 0;
  padding: 0 1em;
}
.page-content .content-block.button-bar-placeholder,
.page-content .layout-block.button-bar-placeholder {
  padding-top: 4em;
}
.page-content .content-block.scrollable,
.page-content .layout-block.scrollable {
  overflow-x: auto;
}
.page-content .content-block.no-padding,
.page-content .layout-block.no-padding {
  padding-left: 0;
  padding-right: 0;
}
.page-content .content-block:after,
.page-content .layout-block:after {
  clear: both;
  content: "";
  display: block;
}
.page-content .content-block.slim,
.page-content .layout-block.slim {
  padding-left: 0;
  padding-right: 0;
}
.page-content .content-block.slim > h1,
.page-content .layout-block.slim > h1 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.page-content .content-block.slim > .button-bar,
.page-content .layout-block.slim > .button-bar {
  margin-right: 1rem;
  margin-left: 1rem;
}
.page-content .content-block.slim > .content-section,
.page-content .layout-block.slim > .content-section {
  margin-left: 1rem;
  margin-right: 1rem;
}
@media screen and (max-width: 480px) {
  .page-content .content-block.slim > .button-bar,
.page-content .content-block.slim > h1,
.page-content .content-block.slim .content-section,
.page-content .layout-block.slim > .button-bar,
.page-content .layout-block.slim > h1,
.page-content .layout-block.slim .content-section {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
}
.page-content .internal-footer {
  max-width: 640px;
  font-size: 0.8em;
  font-style: italic;
  margin: 2em auto;
  padding: 0 2em;
  text-align: center;
  color: #aaa;
}
.page-content .internal-footer :link {
  color: #2780e3;
}
.page-content.trimmed {
  overflow: hidden;
  border-top: none;
}

.layout-right .content-block:not(.right-column) {
  margin-right: 320px;
  clear: left;
}
.layout-right .right-column {
  width: 320px;
  float: right;
  margin: 1.5em 0 0 0;
  padding: 0 1em;
}

body.no-bottom-padding .body-container {
  padding-bottom: 0;
}
body.no-bottom-padding .body-container .page-content {
  padding-bottom: 0;
}

body.no-mobile > .constrained-width {
  min-width: 960px;
}

.constrained-width {
  min-width: 320px;
  max-width: 960px;
  margin: 0px auto;
  padding: 0 1em;
}
.constrained-width .constrained-width {
  padding: 0;
}
.constrained-width.body-container {
  padding-bottom: 1em;
}
@media screen and (max-width: 960px) {
  .constrained-width.body-container {
    padding: 0;
  }
}
body.full-width .constrained-width, html.popout .constrained-width {
  max-width: none;
  display: inline-block;
  width: 100%;
}
body.full-width .constrained-width.body-container, html.popout .constrained-width.body-container {
  padding: 0;
}
@media screen and (max-width: 480px) {
  .constrained-width {
    padding-left: 0;
    padding-right: 0;
  }
}

.narrowest-content {
  max-width: 480px;
  margin: 0px auto;
}

.flex-grid {
  padding: 0;
  margin: 0 0.5rem;
  display: flex;
  flex-direction: row;
}
.flex-grid .half {
  flex-basis: 50%;
  float: none;
}
@media screen and (max-width: 480px) {
  .flex-grid {
    display: block;
  }
  .flex-grid .half {
    flex-basis: 100%;
  }
}

.has-secondary-nav .content-block.slim {
  padding: 0;
}
.has-secondary-nav .content-block.slim .content-section {
  padding: 0em 2rem;
}
.has-secondary-nav .content-block.slim .content-section:first-child {
  margin-top: 0;
}
.has-secondary-nav .content-block.slim .content-section.flex-grid {
  padding: 0;
  margin: 0 2rem;
}
@media screen and (max-width: 480px) {
  .has-secondary-nav .content-block.slim {
    padding: 0;
  }
  .has-secondary-nav .content-block.slim .content-section {
    padding: 0 1rem;
  }
  .has-secondary-nav .content-block.slim .content-section:first-child {
    margin-top: -1px;
  }
  .has-secondary-nav .content-block.slim .content-section.no-padding {
    padding: 0;
  }
}

html.popout {
  overflow: hidden;
}
html.popout .z4app {
  position: fixed;
  top: 0;
  left: 0;
  margin: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
  z-index: 99;
}
html.popout .z4app.scrollable {
  overflow: auto;
}
html.popout .test-server-indicator {
  display: none;
}

.footer {
  text-align: center;
  padding: 0 2rem;
  margin: 0 auto;
  font-size: 0.9em;
  color: #333;
  text-shadow: 0 0 5px white;
  max-width: 719px;
}
.footer a {
  color: inherit;
}
.footer a:hover {
  color: black;
}
.footer.public p {
  margin-top: 0;
  margin-bottom: 2em;
}
.footer.public a {
  font-size: 1.25em;
  text-decoration: none;
}
.footer.public a .product-logo {
  display: inline-block;
  background-image: url("/zimg/zone4go.black.svg");
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center center;
  height: 40px;
  width: 140px;
  overflow: hidden;
  text-indent: 200px;
  white-space: nowrap;
  position: relative;
  top: 14px;
  margin-left: 1em;
  margin-right: 1em;
}
@media screen and (max-width: 480px) {
  .footer.public a .product-logo {
    display: block;
    margin: 0px auto;
    top: 0;
  }
}

.content-block.app-container {
  background: white;
  border-top: 1px solid transparent;
}
.content-block.app-container.sliding-in {
  box-shadow: 0 0 32px rgba(0, 0, 0, 0.1);
  z-index: 999;
  overflow: hidden;
}

.content-block.app-container:not(.body-transition-effect) {
  transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.z4app {
  overflow: hidden;
}

.body-transition-effect {
  z-index: 99;
  position: absolute;
  top: 64px;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  overflow: hidden;
}
@media screen and (max-width: 480px) {
  .body-transition-effect {
    top: 64px;
  }
}
.body-transition-effect.expanded {
  overflow: hidden;
}
.body-transition-effect.top-right, .body-transition-effect.top-left, .body-transition-effect.slide-left, .body-transition-effect.slide-right {
  transition: transform 300ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.body-transition-effect.top-right.do-transition, .body-transition-effect.top-left.do-transition, .body-transition-effect.slide-left.do-transition, .body-transition-effect.slide-right.do-transition {
  transform: translateX(0);
}
.body-transition-effect.top-right, .body-transition-effect.slide-left {
  transform: translateX(100%);
}
.body-transition-effect.top-left, .body-transition-effect.slide-right {
  transform: translateX(-100%);
}

body.no-header > .background {
  background-color: white;
  background-image: none;
}
body.no-header .site-header,
body.no-header .title-wrapper {
  display: none;
}
body.no-header .breadcrumbs-wrapper {
  padding-top: 4rem;
  padding-left: 1rem;
  z-index: auto !important;
}
body.no-header .page-actions-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #f1f3f8;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: inherit;
  border-radius: 0;
  z-index: 999;
  box-shadow: 0 0 24px -12px #000;
  height: 4rem;
}
body.no-header .page-actions-container .page-actions {
  padding-left: 1em;
}
body.no-header .z4app.appcontainer.page-content {
  border: none;
  box-shadow: none;
  padding-top: 0;
  padding-bottom: 0;
  min-height: auto;
}
body.no-header .z4app.appcontainer.page-content .app-container {
  max-width: 1280px;
  position: relative;
  margin: 0 auto;
}
body.no-header .z4app.appcontainer.page-content .main-panel {
  margin-top: 0;
  margin-right: 26rem;
  margin-bottom: 0;
}
body.no-header .z4app.appcontainer.page-content .main-panel .scrolling-tab {
  overflow: auto;
  height: calc(100vh - 8rem);
  padding: 1em 0;
}
body.no-header .z4app.appcontainer.page-content .right-panel {
  position: absolute;
  height: calc(100vh - 7.25rem);
  border-left: 1px solid #ddd;
  width: 24rem;
  top: 0;
  right: 2rem;
}
body.no-header.clip .body-container {
  max-height: calc(100vh - 4rem);
}

.only-print {
  visibility: collapse;
}

@media print {
  html {
    font-size: 10pt;
    background: none;
  }

  .site-header {
    display: none;
  }

  .breadcrumbs {
    display: none;
  }

  .page-content {
    border: none;
    margin: 0;
    padding: 0;
    border: 0;
    box-shadow: initial;
  }
  .page-content .shortcut-tabs {
    display: none;
  }

  .page-content .content-block {
    padding-left: 0;
    padding-right: 0;
    display: block;
  }

  @page {
    size: auto;
  }
  .body-container .app-container {
    padding: 0;
  }

  .body-container .page-actions-container {
    display: none;
  }

  body.full-width .constrained-width.body-container {
    display: block;
    padding: 0;
  }

  body.floating-report .body-container > .page-content {
    display: block;
  }

  body .page-content {
    border: 0;
    border-radius: 0;
    margin: 0;
  }
  body .page-content .shortcut-tabs {
    display: none;
  }
  body .page-content .button-bar {
    display: none;
  }

  .title-wrapper .sport-icon {
    display: none;
  }
  .title-wrapper .sport-icon ~ .title-block {
    margin: 0;
  }
  .title-wrapper .sport-icon ~ .title-block h1 {
    padding: 0;
  }

  .bottom-alert {
    display: none;
  }

  .no-print {
    visibility: collapse !important;
  }

  .only-print {
    visibility: visible !important;
  }
}
div.account-menu.overflow-menu,
div.help-menu.overflow-menu {
  display: inline-block;
  position: relative;
}
div.account-menu.overflow-menu > .button,
div.help-menu.overflow-menu > .button {
  margin-right: 0;
}
div.account-menu.overflow-menu .trigger.button:after,
div.help-menu.overflow-menu .trigger.button:after {
  content: " ▼";
}
div.account-menu.overflow-menu.expanded > .button,
div.help-menu.overflow-menu.expanded > .button {
  background-color: rgba(0, 0, 0, 0.25);
  border-color: transparent;
}
@media screen and (max-width: 480px) {
  div.account-menu.overflow-menu,
div.help-menu.overflow-menu {
    display: none;
  }
}
div.account-menu.overflow-menu .menu-content,
div.help-menu.overflow-menu .menu-content {
  border-color: transparent;
  background: #444;
  color: #aaa;
  font-size: 0.9em;
  font-weight: 600;
  box-shadow: 0 0 16px -6px #000;
}
div.account-menu.overflow-menu .menu-content .separator,
div.help-menu.overflow-menu .menu-content .separator {
  border-color: #555;
}
div.account-menu.overflow-menu .menu-content li > a,
div.help-menu.overflow-menu .menu-content li > a {
  min-width: 10rem;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
}
div.account-menu.overflow-menu .menu-content li > a:hover,
div.help-menu.overflow-menu .menu-content li > a:hover {
  background-color: #333;
  color: #ffa;
}

div.help-menu.overflow-menu > .button {
  margin-left: 0;
}
div.help-menu.overflow-menu .menu-content {
  left: 0;
  right: auto;
  border-top-right-radius: 3px;
  border-top-left-radius: 0;
  clip-path: circle(0% at 10% 0);
}

.user.notifications.unread .shadow.button {
  position: relative;
  background: #1160b8;
}
.user.notifications.unread .shadow.button:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 10px;
  height: 10px;
  background: #ffa;
  border-radius: 50%;
  box-shadow: 0 0 4px yellow;
}
.user.notifications .notifications-menu {
  position: absolute;
  top: 3.5rem;
  right: 1rem;
  width: 280px;
  background: #444;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.6), 0 0 16px rgba(0, 0, 0, 0.15);
  z-index: 9;
  padding-top: 1em;
  padding-bottom: 1em;
  border-radius: 3px;
  text-align: left;
  opacity: 0;
  max-height: 0;
  transition: opacity 100ms cubic-bezier(0.455, 0.03, 0.515, 0.955), max-height 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  font-size: 0.9rem;
}
.user.notifications .notifications-menu.show {
  opacity: 1;
  max-height: 480px;
}
.user.notifications .notifications-menu:before {
  content: "";
  display: block;
  background: inherit;
  height: 1em;
  width: 1em;
  top: -0.4rem;
  right: 14px;
  transform: rotate(-45deg);
  position: absolute;
}
.user.notifications .notifications-menu > ul {
  margin: 0;
  padding: 0;
  background: inherit;
  min-height: 360px;
  max-height: 480px;
  overflow: auto;
}
.user.notifications .notifications-menu > ul > li {
  padding: 0 0.5em;
}
.user.notifications .notification-item {
  display: block;
  color: white;
  text-decoration: none;
  padding: 0.5em;
  border-bottom: 1px solid #555;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  cursor: default;
}
.user.notifications .notification-item.read {
  font-weight: normal;
  color: #ddd;
}
.user.notifications .notification-item:hover {
  background: rgba(0, 0, 0, 0.1);
}
.user.notifications .notification-title {
  display: block;
  font-weight: 600;
  font-size: 1rem;
}
.user.notifications .notification-content {
  display: block;
}
.user.notifications .notification-action {
  display: block;
  text-align: right;
  color: #ffa;
  text-decoration: none;
}
.user.notifications .notification-action:hover {
  text-decoration: underline;
}

.site-header {
  z-index: 20;
  position: relative;
  margin: 0;
  background: #2780e3;
  color: white;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 10px -6px #1b70cf;
}
.site-header.raised {
  z-index: 9999;
}
.site-header > .constrained-width {
  height: 4em;
  position: relative;
}
.site-header > .unconstrained-width {
  height: 4em;
  position: relative;
  margin: 0 1em;
}
.site-header:after {
  clear: both;
  content: "";
  display: block;
}
.site-header ul .button {
  margin-right: 0em;
  margin-left: 0em;
  color: inherit;
}
.site-header .home-link, .site-header .equipment-home-link {
  display: block;
  height: 4em;
  overflow: hidden;
  margin: 0;
  width: 120px;
  float: left;
  position: relative;
  z-index: 10;
}
.site-header .home-link h1, .site-header .equipment-home-link h1 {
  background-image: url("/zimg/whitelogo.svg");
  display: block;
  margin: 0;
  width: 100%;
  height: 100%;
  white-space: nowrap;
  text-indent: 110%;
  box-sizing: content-box;
  background-size: 100% auto;
  background-position: center left;
  background-repeat: no-repeat;
  cursor: pointer;
  text-overflow: clip;
}
.site-header .button {
  color: inherit;
  margin: 0 1em;
}
.site-header .light.button {
  color: inherit !important;
}
.site-header .header-items {
  display: block;
  padding-top: 1rem;
  padding-bottom: 1rem;
  text-align: right;
}
.site-header .header-items .button {
  margin-left: 0.25em;
  margin-right: 0.25em;
}
@media screen and (max-width: 480px) {
  .site-header .header-items > .button {
    display: none;
  }
}
.site-header .expandable {
  padding-top: 1em;
  padding-bottom: 1em;
}
.site-header .expandable > ul .primary {
  float: right;
}
.site-header .expandable.expanded > ul {
  margin: 0 -1em;
  padding: 1em 1.5em;
  background-color: #424242;
}
@media screen and (max-width: 480px) {
  .site-header {
    padding: 0 1em;
  }
}
.site-header.slim .home-link, .site-header.slim .equipment-home-link {
  height: 2.5em;
}
.site-header.slim .home-link h1, .site-header.slim .equipment-home-link h1 {
  background-size: auto 60%;
}
.site-header.slim .expandable {
  padding-top: 0;
  padding-bottom: 0;
}
.site-header.transparent {
  background: none;
  color: #666;
  border: none;
  box-shadow: none;
  height: 4rem;
}
.site-header.transparent .home-link, .site-header.transparent .equipment-home-link {
  height: 4rem;
  overflow: hidden;
}
.site-header.transparent .home-link h1, .site-header.transparent .equipment-home-link h1 {
  height: 4rem;
  background-image: url("/zimg/greylogo.svg");
}
.site-header.transparent .header-items {
  padding-bottom: 0;
}
.site-header.transparent .button.white {
  color: #666;
}
.site-header.transparent + .breadcrumbs-wrapper {
  position: relative;
  z-index: 21;
}
.site-header.transparent .shadow.button {
  background-color: rgba(0, 0, 0, 0.15);
}
.site-header.transparent .shadow.button:hover {
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.05);
}
.site-header.transparent .shadow.button.white:hover {
  background-color: rgba(0, 0, 0, 0.25);
}

.button-bar {
  display: block;
  margin: 0;
  padding: 0.25em 0;
  text-align: left;
}
.button-bar:after {
  clear: both;
  content: "";
  display: block;
}
.button-bar.narrow {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
.button-bar .overflow-menu {
  display: inline-block;
  color: #333;
}
.button-bar .overflow-menu .trigger:not(.button) {
  font-size: 0.8rem;
  line-height: 1em;
  font-weight: 600;
  text-decoration: none;
  border: 1px solid #ddd;
  border-radius: 2px;
  background-color: transparent;
  padding: 0.8em 0.4em;
  font-weight: bold;
  display: inline-block;
  cursor: pointer;
  transition: background-color 0.15s ease-in-out;
  white-space: nowrap;
}
.button-bar .overflow-menu:not(.left) {
  float: right;
  margin-right: 0;
}
.button-bar .overflow-menu .button {
  margin: 0;
}
.button-bar .overflow-menu.left .button {
  margin-right: 0.2em;
}
.button-bar .button {
  margin: 0 0.5em 0 0;
}
.button-bar.right {
  float: none;
}
.button-bar.right .button,
.button-bar.right .switch {
  float: right;
  margin: 0 0 0 0.5em;
}
.button-bar.right .button.left,
.button-bar.right .switch.left {
  margin: 0 0.5em 0 0;
  float: left;
}
.button-bar.right .overflow-menu:not(.right) {
  float: left;
}
.button-bar.right .overflow-menu:not(.right) .button {
  margin-left: 0;
}
.button-bar.centered {
  text-align: center;
}
.button-bar.centered .button {
  float: none;
}
.button-bar.slim {
  margin-right: 0;
  margin-left: 0;
}
.button-bar.overline {
  padding-top: 0.5em;
  margin-top: 0.5em;
  border-top: 1px solid #ddd;
}
.button-bar.underlined {
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
  border-bottom: 1px solid #ddd;
}
.button-bar.underlined .button {
  margin-top: 0.5em;
  margin-bottom: 0;
}
.button-bar.underpadded {
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}
.button-bar.overpadded {
  padding-top: 0.5em;
  margin-top: 0.5em;
}
.button-bar.bottom {
  position: absolute;
  bottom: 0;
  width: 100%;
}
.button-bar .display-item {
  display: inline-block;
  font-size: 0.8rem;
  padding: 0.8em;
  color: inherit;
  line-height: 1em;
  cursor: default;
}
.button-bar .display-item:link, .button-bar .display-item.link {
  text-decoration: none;
}
.button-bar .display-item.left {
  float: left;
}
.button-bar .display-item .value {
  font-weight: bold;
}
.button-bar .display-item.large {
  padding: 0 0.25em;
  font-size: 1.6em;
}
.button-bar .display-item.outlined {
  position: relative;
  border: 1px solid rgba(0, 0, 0, 0.25);
  border-radius: 2px;
  padding: 0;
}
.button-bar .display-item.outlined .value {
  display: inline-block;
  width: 4em;
  text-align: center;
  font-size: 1.8em;
  margin-bottom: -0.6rem;
  height: 1em;
  position: relative;
  top: 0.2rem;
}
.button-bar .display-item.labeled {
  padding: 0;
  margin-right: 1em;
}
.button-bar .display-item .label {
  display: inline-block;
  font-weight: 600;
  padding: 0.8em 0.4em 0.8em 1.4em;
}
.button-bar .display-item .label:after {
  content: ":";
}
.button-bar input.display-item {
  outline: none;
  border: 1px solid #ddd;
  width: 6em;
}
.button-bar .input {
  border-color: transparent;
  font-size: 1.2em;
  transition: border-color 0.15s ease-in-out;
  width: 18em;
  position: relative;
  top: 1px;
  padding-top: 3px;
  padding-bottom: 4px;
}

.flex-button-bar {
  display: flex;
  position: relative;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.flex-button-bar.right, .flex-button-bar.left {
  float: none;
}
.flex-button-bar.right {
  flex-direction: row-reverse;
}
.flex-button-bar.right .overflow-menu {
  text-align: right;
}
.flex-button-bar.right .button {
  margin-left: 0.5rem;
  margin-right: 0;
}
.flex-button-bar.left {
  flex-direction: row;
}
.flex-button-bar.left .button {
  margin-right: 0.5em;
  margin-left: 0;
}
.flex-button-bar.center {
  justify-content: center;
}
.flex-button-bar .overflow-menu.button-bar-menu {
  flex-grow: 1;
  float: none;
}
.flex-button-bar .overflow-menu.button-bar-menu.right {
  position: absolute;
  right: 0;
}
.flex-button-bar .overflow-menu.button-bar-menu.left {
  position: absolute;
  left: 0;
}
.flex-button-bar.padded {
  padding: 1em;
}
@media screen and (max-width: 480px) {
  .flex-button-bar.right, .flex-button-bar.left {
    flex-direction: column;
  }
  .flex-button-bar .button,
.flex-button-bar .button.fixed-width,
.flex-button-bar .button.fixed-width.wider,
.flex-button-bar .button.right,
.flex-button-bar .button.left {
    float: none;
    display: block;
    width: 100%;
    text-align: center;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0.25em;
  }
}

.switch {
  display: inline-block;
  border: 1px solid #2780e3;
  border-radius: 3px;
  overflow: hidden;
}
.switch > a {
  display: inline-block;
  padding: 1em 1.6em;
  text-decoration: none;
  color: #666;
  font-size: 0.8rem;
  font-weight: 600;
  transition: background-color 0.15s ease-in-out;
}
.switch > a:hover:not(.switch-active) {
  background-color: #ddd;
}
.switch > a.switch-active {
  background-color: #2780e3;
  color: white;
}

.button {
  font-size: 0.8rem;
  line-height: 1em;
  font-weight: 600;
  color: white;
  border: none;
  border-radius: 3px;
  background-color: #424242;
  padding: 1em 1.6em;
  display: inline-block;
  cursor: pointer;
  transition: all 0.15s ease-in-out;
  white-space: nowrap;
  text-decoration: none;
  background-repeat: no-repeat;
  background-position: center;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.8), 0 1px 12px rgba(255, 255, 255, 0.05) inset;
}
.button:link, .button.link {
  cursor: pointer;
}
.button:hover, .button:link:hover, .button.link:hover {
  text-decoration: none;
  background-color: #1a1a1a;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
}
.button:link:active {
  box-shadow: none;
}
.button.slim {
  padding-left: 0.2em;
  padding-right: 0.2em;
  min-width: 1.5rem;
  text-align: center;
}
.button.medium {
  padding-left: 1em;
  padding-right: 1em;
  margin-left: 1em;
  margin-right: 1em;
}
.button.white, .button.no-border {
  background-color: none;
}
.button.white {
  color: white;
}
.button.light {
  color: #333;
  background-color: #ddd;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
}
.button.light:hover {
  background-color: #c4c4c4;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3), 0 1px 12px rgba(255, 255, 255, 0.15) inset;
}
.button.light:active {
  background-color: #ddd;
  background-color: #e0e4f0;
  box-shadow: none;
}
.button.outline {
  color: #333;
  background-color: transparent;
  border-color: #ddd;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
}
.button.outline.blue {
  border-color: #77AFED;
  color: #1160b8;
}
.button.outline.green {
  border-color: #4CAF50;
  color: #2a6317;
}
.button.outline:hover {
  background-color: #eaedf5;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
}
.button.outline:active {
  background-color: #ddd;
  background-color: #eaedf5;
  box-shadow: none;
}
.button.clear {
  color: #333;
  box-shadow: none;
  background-color: transparent;
}
.button.clear:hover {
  box-shadow: none;
  background: transparent;
  text-decoration: underline;
}
.button.white {
  color: white;
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.15);
  box-shadow: none;
}
.button.white:hover {
  box-shadow: none;
  background-color: rgba(0, 0, 0, 0.15);
}
.button.white.shadow {
  border-color: transparent;
  background-color: rgba(27, 112, 207, 0.4);
}
.button.white.shadow.transparent {
  background-color: transparent;
}
.button.white.shadow:hover {
  background-color: #1160b8;
  box-shadow: 0 0 4px #1160b8;
}
.button.square {
  min-width: 2.8em;
  text-align: center;
  padding-left: 0.2em;
  padding-right: 0.2em;
}
.button.no-border {
  border-color: transparent;
  box-shadow: none;
}
.button.no-border.light {
  color: #333;
}
.button.no-border.no-background {
  background-color: transparent;
  box-shadow: none;
  color: inherit;
}
.button.no-border.no-background:hover, .button.no-border.no-border:hover {
  background-color: rgba(0, 0, 0, 0.25);
  box-shadow: none;
}
.button.no-border.no-background:active, .button.no-border.no-border:active {
  box-shadow: none;
  background-color: rgba(0, 0, 0, 0.1);
}
.button.primary-action {
  background-color: #2780e3;
  border-color: transparent;
  text-decoration: none;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.55), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
  min-width: 9em;
  text-align: center;
}
.button.primary-action:link:hover, .button.primary-action.link:hover {
  background-color: #1c73d5;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5), 0 1px 3px rgba(255, 255, 255, 0.35) inset;
  border-bottom-color: rgba(0, 0, 0, 0.2);
}
.button.dropdown::after {
  content: " ▼";
}
.button.dropdown:hover:after {
  text-decoration: none;
}
.button.create {
  background-color: #4CAF50;
  border-color: transparent;
  text-decoration: none;
  color: white;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.35);
}
.button.create:link:hover, .button.create.link:hover {
  background-color: #449d48;
}
.button.destroy {
  background-color: #c11;
  color: #fff;
  border-color: #c11;
  text-decoration: none;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
}
.button.destroy:link:hover, .button.destroy.link:hover {
  background-color: #b40f0f;
}
.button.disabled {
  pointer-events: none;
  cursor: default;
  background-color: #ddd;
  color: #aaa;
  border-color: #ddd;
  box-shadow: none;
}
.button.disabled:link:hover, .button.disabled.link:hover {
  background-color: #ddd;
}
.button .disabled-message {
  display: none;
  position: absolute;
  left: 50%;
  top: 30px;
  width: 240px;
  margin-left: -120px;
  background-color: rgba(0, 0, 0, 0.75);
  border: 1px solid #000;
  border-radius: 3px;
  color: rgba(255, 255, 255, 0.75);
  font-weight: normal;
  font-size: 0.9rem;
  white-space: normal;
  padding: 0.25em 0.75em;
  box-shadow: 0 0 16px -6px #000;
}
.button .disabled-message p {
  margin: 0.25em 0;
  padding: 0;
}
.button.disable {
  cursor: default;
  background-color: #ddd;
  color: #aaa;
  position: relative;
}
.button.disable:hover {
  background-color: #ddd;
  color: #aaa;
}
.button.disable:hover .disabled-message {
  display: block;
}
.button.fixed-width {
  width: 9em;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
}
.button.fixed-width.wider {
  min-width: 12em;
  width: unset;
}
.button.fixed-width.large {
  font-size: 1.2em;
  width: 12em;
  width: unset;
}
.button.right {
  float: right;
  margin-left: 10px;
}
.button.left {
  float: left;
  margin-right: 10px;
}
.button.top {
  position: relative;
  z-index: 100;
}
.button.small {
  padding: 0.4em 0.8em;
}
.button.small .disabled-message {
  top: 24px;
}
.button.icon {
  padding-left: 3em;
}
.button.icon:before {
  content: "";
  display: block;
  position: absolute;
  width: 2em;
  height: 2em;
  left: 1.25em;
  top: 0.4em;
  background-size: 100%;
}
.button.icon.settings:before {
  background-image: url("/zimg/wrench.png");
}
.button.icon.clubs:before {
  background-image: url("/zimg/icon/secondary/noun_stack_1155175.svg");
}
@media print {
  .button {
    visibility: hidden;
  }
}
.button.menu {
  width: 2em;
  overflow: hidden;
  color: transparent;
}
.button.menu:before {
  width: 1em;
  height: 1em;
  content: "";
  display: inline-block;
  position: relative;
  top: 0.1em;
  left: -0.5em;
  background-size: 100%;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICBpZD0ic3ZnMiIKICAgdmlld0JveD0iMCAwIDExLjk5OTk5OSAxMS45OTk5OTkiCiAgIGhlaWdodD0iMTIiCiAgIHdpZHRoPSIxMiI+CiAgPGRlZnMKICAgICBpZD0iZGVmczQiIC8+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhNyI+CiAgICA8cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+PC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+CiAgPGcKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTEuOTU1NTIzLC0xMDI2LjMxMjMpIgogICAgIGlkPSJsYXllcjEiPgogICAgPHBhdGgKICAgICAgIGlkPSJyZWN0MzM1NiIKICAgICAgIGQ9Im0gMTIuODk0OTIyLDEwMjcuMTY2OSAxMC4yNjQ0OTEsMCBjIDAuMzE1OTY3LDAgMC41NzAzMzgsMC4yNTI3IDAuNTcwMzM4LDAuNTY2NyAwLDAuMzE0IC0wLjI1NDM3MSwwLjU2NjggLTAuNTcwMzM4LDAuNTY2OCBsIC0xMC4yNjQ0OTEsMCBjIC0wLjMxNTk2NywwIC0wLjU3MDMzOCwtMC4yNTI4IC0wLjU3MDMzOCwtMC41NjY4IDAsLTAuMzE0IDAuMjU0MzcxLC0wLjU2NjcgMC41NzAzMzgsLTAuNTY2NyB6IgogICAgICAgc3R5bGU9ImZpbGw6IzY2NjY2NjtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6ZXZlbm9kZDtzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6MC45OTk5OTk4ODtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2UtbWl0ZXJsaW1pdDo0O3N0cm9rZS1kYXNoYXJyYXk6bm9uZTtzdHJva2Utb3BhY2l0eToxIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJyZWN0MzM1Ni0zIgogICAgICAgZD0ibSAxMi44NjAwNDIsMTAzMS43MDk4IDEwLjI2NDQ5MSwwIGMgMC4zMTU5NjcsMCAwLjU3MDMzOCwwLjI1MjggMC41NzAzMzgsMC41NjY4IDAsMC4zMTQgLTAuMjU0MzcxLDAuNTY2NyAtMC41NzAzMzgsMC41NjY3IGwgLTEwLjI2NDQ5MSwwIGMgLTAuMzE1OTY3LDAgLTAuNTcwMzM3LC0wLjI1MjcgLTAuNTcwMzM3LC0wLjU2NjcgMCwtMC4zMTQgMC4yNTQzNywtMC41NjY4IDAuNTcwMzM3LC0wLjU2NjggeiIKICAgICAgIHN0eWxlPSJmaWxsOiM2NjY2NjY7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjAuOTk5OTk5ODg7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icmVjdDMzNTYtNiIKICAgICAgIGQ9Im0gMTIuODc3NDgyLDEwMzYuMjYxNSAxMC4yNjQ0OSwwIGMgMC4zMTU5NjcsMCAwLjU3MDMzOCwwLjI1MjggMC41NzAzMzgsMC41NjY4IDAsMC4zMTQgLTAuMjU0MzcxLDAuNTY2NyAtMC41NzAzMzgsMC41NjY3IGwgLTEwLjI2NDQ5LDAgYyAtMC4zMTU5NjcsMCAtMC41NzAzMzgsLTAuMjUyNyAtMC41NzAzMzgsLTAuNTY2NyAwLC0wLjMxNCAwLjI1NDM3MSwtMC41NjY4IDAuNTcwMzM4LC0wLjU2NjggeiIKICAgICAgIHN0eWxlPSJmaWxsOiM2NjY2NjY7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjAuOTk5OTk5ODg7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MSIgLz4KICA8L2c+Cjwvc3ZnPgo=");
}
.button.hero {
  display: block;
  font-size: 1.5em;
  background-color: #fafafa;
  border: 1px solid #ddd;
  color: #1b70cf;
  text-align: center;
  margin: 1rem 0;
  transition: border-color 0.2s ease-in-out, background-color-color 0.2s ease-in-out;
  border-radius: 4px;
  padding: 0.5em;
  box-shadow: 0 1px 2px 0 #ddd;
  background-position: center center;
  background-repeat: no-repeat;
}
.button.hero.spinning {
  background-position: center center;
  background-repeat: no-repeat;
  color: transparent;
}
.button.hero.big {
  padding: 1em;
  font-weight: normal;
  font-size: 1.5rem;
  text-shadow: none;
  margin: 1.5rem 0;
  border-width: 2px;
}
.button.hero.highlight {
  background-image: linear-gradient(to bottom, #1b70cf, #1160b8);
  color: white;
  box-shadow: 0 -2px 24px rgba(0, 0, 0, 0.15) inset, 0 2px 16px rgba(255, 255, 255, 0.25) inset, 0 2px 6px rgba(0, 0, 0, 0.25);
  border-color: #1b70cf;
  transition: all 0.15s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.button.hero.highlight .extra {
  color: #d0e2ec;
}
.button.hero.highlight:hover {
  color: #ffa;
  box-shadow: 0 -2px 24px rgba(0, 0, 0, 0.15) inset, 0 2px 16px rgba(255, 255, 255, 0.25) inset, 0 3px 8px rgba(0, 0, 0, 0.35);
  border-color: #1b70cf;
}
.button.hero.green {
  color: #454d45;
  background-color: transparent;
  border-color: #a9c2aa;
  box-shadow: 0 1px 2px #ccc, 0 2px 16px #ddd;
  transition: all 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.button.hero.green:hover {
  color: #404741;
  background-color: #f1f3f8;
  border-color: #a9c2aa;
  box-shadow: 0 2px 2px #ccc, 0 2px 16px #ddd;
}
.button.hero .extra {
  font-size: 0.95rem;
  color: #aaa;
  display: block;
  padding: 0.25rem 0.5rem;
  white-space: normal;
  font-weight: normal;
  line-height: 1;
  margin: 0 auto;
}
.button.hero.no-extra {
  padding-top: 0.9em;
  padding-bottom: 0.75em;
}
.button.hero:hover {
  color: #1b70cf;
  border-color: #77AFED;
  background-color: #f1f3f8;
  box-shadow: 0 1px 4px -1px #77AFED;
}
.button.hero:hover.create {
  border-color: #4CAF50;
  color: #4CAF50;
  box-shadow: 0 1px 4px -1px #cbdecb;
  background-color: #f1f3f8;
}
.button.hero:active {
  border-color: #2780e3;
}
.button.spinning {
  color: transparent;
  pointer-events: none;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHdpZHRoPScxMjBweCcgaGVpZ2h0PScxMjBweCcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQiIGNsYXNzPSJ1aWwtcmluZyI+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIGZpbGw9Im5vbmUiIGNsYXNzPSJiayI+PC9yZWN0PjxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIHI9IjQyLjUiIHN0cm9rZS1kYXNoYXJyYXk9IjE3My41NzI5OTQxMTA4MzYwOCA5My40NjIzODE0NDQyOTYzNCIgc3Ryb2tlPSIjZmZmZmZmIiBmaWxsPSJub25lIiBzdHJva2Utd2lkdGg9IjE1Ij48YW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSJ0cmFuc2Zvcm0iIHR5cGU9InJvdGF0ZSIgdmFsdWVzPSIwIDUwIDUwOzE4MCA1MCA1MDszNjAgNTAgNTA7IiBrZXlUaW1lcz0iMDswLjU7MSIgZHVyPSIxcyIgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiIGJlZ2luPSIwcyI+PC9hbmltYXRlVHJhbnNmb3JtPjwvY2lyY2xlPjwvc3ZnPg==");
  background-size: auto 50%;
  background-repeat: no-repeat;
  background-position: center;
}
.button.spinning .extra {
  opacity: 0;
}
.button.spinning.light, .button.spinning.hero {
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHdpZHRoPScxNnB4JyBoZWlnaHQ9JzE2cHgnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIiBjbGFzcz0idWlsLXJpbmciPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBmaWxsPSJub25lIiBjbGFzcz0iYmsiPjwvcmVjdD48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI0Mi41IiBzdHJva2UtZGFzaGFycmF5PSIxNzMuNTcyOTk0MTEwODM2MDggOTMuNDYyMzgxNDQ0Mjk2MzQiIHN0cm9rZT0iIzI3ODBlMyIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxNSI+PGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHZhbHVlcz0iMCA1MCA1MDsxODAgNTAgNTA7MzYwIDUwIDUwOyIga2V5VGltZXM9IjA7MC41OzEiIGR1cj0iMC43NXMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBiZWdpbj0iMHMiPjwvYW5pbWF0ZVRyYW5zZm9ybT48L2NpcmNsZT48L3N2Zz4=");
  background-repeat: no-repeat;
  background-position: center center;
  color: transparent;
}
.button.spinning .light {
  background-color: #ddd;
  border-color: transparent;
  background-size: auto 50%;
}
.button.finished {
  color: transparent;
  pointer-events: none;
}
.button.finished:before {
  content: "✓";
  color: #fff;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  text-align: center;
  line-height: 1.75;
}
.button.finished.light:before {
  color: #333;
}

.has-secondary-nav .page-actions.button-bar .button {
  margin-top: 1em;
}

.content-block > .button-bar:first-child {
  margin-top: 1em;
  padding-left: 0;
  padding-right: 0;
}

.button-description {
  display: flex;
  flex-direction: row;
}
.button-description > .text {
  flex-basis: 60%;
}
.button-description > .button-container {
  flex-basis: 40%;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
}
.button-description + .button-bar {
  margin-top: 1em;
}

@keyframes lds-circle {
  0%, 100% {
    animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5);
  }
  0% {
    transform: rotateY(0deg);
  }
  50% {
    transform: rotateY(1800deg);
    animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
  }
  100% {
    transform: rotateY(3600deg);
  }
}
.saving .show-saving {
  position: relative;
}
.saving .show-saving:after {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  margin: 0;
  border-radius: 50%;
  background: #4CAF50;
  animation: lds-circle 2.4s cubic-bezier(0, 0.2, 0.8, 1) infinite;
  position: absolute;
  top: 0.65em;
  right: 0.25em;
  z-index: 99;
}

.button-field {
  border-radius: 3px;
}
.button-field.background {
  background-color: #ddd;
  padding: 1em;
  margin-bottom: 2em;
}
.button-field.background p {
  padding: 0;
  margin: 1em 0;
}
.button-field.right {
  float: none;
}
.button-field.right .button {
  float: right;
  margin-right: 0;
  margin-left: 3em;
  position: relative;
  z-index: 5;
}
.button-field .button {
  margin-top: 0.4em;
  margin-right: 0.5em;
}

.z4field.image .input {
  position: relative;
  min-height: 3em;
}
.z4field.image .btncontainer {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.z4form {
  max-width: 720px;
  margin: 0 auto;
  padding: 0;
}
@media screen and (min-width: 500px) {
  .content-scroller .z4form, .tab-content .z4form {
    padding-left: 3em;
    padding-right: 3em;
  }
  .content-scroller .z4form:first-child, .tab-content .z4form:first-child {
    padding-top: 2em;
  }
}
.content-scroller .z4form .form-buttons {
  margin-top: -1em;
}
.z4form.panel,
.z4form > .panel {
  padding: 1em;
}
.z4form.narrow-label .field-label {
  width: 11rem;
}
.z4form.narrow-label .z4field {
  margin-left: 12rem;
}
.z4form.narrow-label .extra-help {
  margin-left: 12rem;
}
.z4form.narrow-label li.control {
  padding-left: 12rem;
}
.z4form.wide-label .field-label {
  width: 21rem;
}
.z4form.wide-label .z4field {
  margin-left: 22rem;
}
.z4form.wide-label .extra-help {
  margin-left: 22rem;
}
.z4form.wide-label li.control {
  padding-left: 22rem;
}
.content-scroller .z4form.dense, .tab-content .z4form.dense {
  padding-left: 3em;
  padding-right: 3em;
}
.content-scroller .z4form.dense:first-child, .tab-content .z4form.dense:first-child {
  padding-top: 0;
}
.z4form.dense > h2 {
  font-size: 1.5rem;
  margin-top: 1em;
}
.z4form.dense .field-label {
  padding-top: 0.5em;
}
.z4form.dense .z4field {
  padding-top: 0.25em;
  padding-bottom: 0.25em;
}
.z4form.dense .z4field .input {
  font-size: 1rem;
}
.z4form.dense .separator.spacer {
  padding: 0;
}
.z4form.dense > ul {
  margin-bottom: 0.5em;
}
.z4form.narrow-spacing > ul {
  margin-bottom: 0;
}
.z4form .form-info {
  color: #666;
  font-style: italic;
}
.z4form:first-child {
  margin-top: 0.5em;
}
.z4form.wide {
  max-width: none;
}
.z4form.wide > ul > li:not(.wide) {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 500px) {
  .z4form {
    max-width: 100%;
  }
}
.z4form .panel + .separator {
  display: none;
}
.z4form > .separator {
  border-top: 1px solid transparent;
}
.z4form > .separator.line {
  border-top: 1px solid #ddd;
  margin: 2em;
}
.z4form > .separator.full-width {
  border-top: 1px solid #ddd;
  margin: 1em 0;
}
.z4form > .separator.spacer {
  padding: 1em;
}
.z4form > .separator.tall {
  margin-top: 3em;
}
.z4form > h2 {
  margin-top: 2em;
}
.z4form > h2:first-child {
  margin-top: 0;
}
.z4form > h2 .button.right {
  margin-top: 0;
}
.z4form .hidden,
.z4form h2.hidden + ul,
.z4form .separator.hidden + ul {
  display: none;
}
.z4form .honeypot {
  display: none;
}
.z4form .field-label {
  float: left;
  width: 17em;
  text-align: right;
  padding-top: 1rem;
  line-height: 1.9rem;
  cursor: default;
  transition: color 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  padding-left: 1em;
}
@media (max-width: 500px) {
  .z4form .field-label {
    float: none;
    display: block;
    text-align: left;
    padding-left: 4px;
    line-height: normal;
  }
}
.z4form .field-label.info-on-next-line {
  position: relative;
  overflow: visible;
}
.z4form .field-label.info-on-next-line > span {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 100%;
  display: inline-block;
}
.z4form .field-label.info-on-next-line:before {
  position: absolute;
  bottom: -16px;
  right: -6px;
  font-size: 0.7rem !important;
  color: inherit !important;
}
.z4form li.focused .field-label {
  color: black;
}
.z4form > ul {
  list-style: none;
  margin: 0 0 2em;
  padding: 0;
}
.z4form > ul > li {
  clear: right;
  position: relative;
}
.z4form > ul > li.control {
  padding-left: 16em;
  margin: 0.5em 0;
}
.z4form > ul > li.control a {
  color: #2780e3;
  font-weight: bold;
  font-size: 0.9em;
  font-style: italic;
}
.z4form > ul > li.control:first-child:not(.normal-align) {
  padding-left: 0;
}
.z4form > ul > li.field-label-hidden > .field-label {
  display: none;
}
@media screen and (max-width: 480px) {
  .z4form > ul.default.panel {
    margin-left: -1rem;
    margin-right: -1rem;
    border-left: none;
    border-right: none;
  }
}
.z4form li.optional > .field-label:before {
  content: "(optional) ";
  padding-right: 0.25rem;
  color: #aaa;
  font-size: 1em;
  font-weight: lighter;
}
.z4form li.really-mandatory > .info-on-next-line.field-label:before {
  content: "(required by other fields) ";
  padding-right: 0.25rem;
  color: #c11 !important;
  font-size: 1em;
  font-weight: lighter;
}
.z4form li.highlight-error .z4field .input {
  border-color: #c11;
}
.z4form .z4field-container {
  margin-left: 16em;
  padding: 6px 6px 6px 0;
  position: relative;
}
.z4form .z4field-container .z4field {
  margin-left: 0;
  padding: 0;
  position: relative;
}
.z4form ul.z4field {
  padding-top: 1rem;
}
.z4form .z4field {
  margin-left: 16em;
}
.z4form .z4field:after {
  clear: both;
  content: "";
  display: block;
}
.z4form .z4field .z4field {
  margin: 0;
  padding: 0;
}
.z4form .z4field.checklist {
  padding-top: 1.15em;
}
@media (max-width: 500px) {
  .z4form .z4field {
    margin: 0 0 4px;
    padding: 0 2px 2px;
  }
}
.z4form .z4field > .show-datepicker {
  float: left;
}
.z4form .z4field .error {
  position: absolute;
  display: block;
  padding: 4px 12px;
  margin: 2px;
  height: 24px;
  bottom: -22px;
  left: 0;
  z-index: 99;
  font-size: 0.9em;
  font-weight: bold;
  background: #c11;
  color: #fff;
  box-shadow: 0 0 20px -6px #000;
}
.z4form .z4field .error:before {
  content: "";
  display: block;
  height: 12px;
  width: 12px;
  position: absolute;
  left: 6px;
  top: -6px;
  transform: rotate(45deg);
  background: inherit;
  z-index: -1;
}
.z4form .z4field .error * {
  display: block;
  background: #c11;
}
.z4form .z4field.image .input {
  padding: 2px;
}
.z4form .z4field.image img {
  width: 100%;
}
.z4form .z4field.image .button {
  margin: 2px;
}
.z4form .z4field + .extra-help {
  margin-top: -0.5rem;
}
.z4form .form-buttons {
  position: relative;
  margin: 2em 0;
  padding-left: 0;
  padding-right: 0;
  border-top: 1px solid #ddd;
  padding-top: 0.8rem;
}
.z4form .form-buttons:after {
  clear: both;
  content: "";
  display: block;
}
.z4form .form-buttons .button.save,
.z4form .form-buttons .button.primary-action {
  min-width: 6em;
  text-align: center;
  float: right;
}
.z4form .form-buttons .saved-status {
  color: #aaa;
  font-size: 0.8em;
  font-style: italic;
  float: right;
  display: inline-block;
  padding: 0.8em;
  margin: 0 auto;
}
.z4form .form-buttons .z4-confirm {
  width: auto;
}
.z4form .help-indicator {
  display: inline-block;
  position: relative;
  width: 1.6rem;
}
.z4form .help-indicator > a {
  position: absolute;
  right: 0.25em;
  top: 0.25em;
  display: block;
  overflow: hidden;
  cursor: pointer;
  text-align: center;
  width: 1em;
  height: 1em;
  line-height: 0.9em;
  text-decoration: none;
  border: 1px solid #aaa;
  border-radius: 50%;
  color: #666;
  font-size: 1.25em;
  transition: border-color 0.1s ease-in-out, color 0.1s ease-in-out;
}
.z4form .help-indicator > a:hover {
  color: #2780e3;
  border-color: #666;
}
.z4form .description-field {
  max-width: 480px;
  margin: 1em auto;
}
.z4form .description-field .full-width-image {
  width: 100%;
}
.z4form .z4form-content.alert {
  margin-left: 0;
  margin-right: 0;
}
.z4form .z4form-content.info {
  margin: 0 0 0.5rem 0;
  padding: 0 0 0.5rem 0;
}
.z4form .z4form-content.info.narrow {
  padding: 0.5em 0 0 0;
  margin: 0;
}
.z4form .z4form-content.info.narrow p {
  margin: 0 auto 0.25em;
}
.z4form .z4form-content.info.border-top {
  border-top: 1px solid #ddd;
}
.z4form .z4form-content.info.normal {
  background: none;
  font-size: 1rem;
  padding: 0.5rem 0;
}
.z4form .z4form-content.info p {
  margin: 0.5em auto;
  position: relative;
}
.z4form .z4form-content.info .link {
  color: #1b70cf;
  text-decoration: none;
}
.z4form .z4form-content.info .link:hover {
  text-decoration: underline;
}
.z4form .inline-help {
  position: absolute;
  font-size: 0.9em;
  width: 17.25em;
  z-index: 999;
  box-shadow: 0 0 16px -6px #000;
  background-image: linear-gradient(to bottom, #ffe, #ffe 30px, rgba(255, 255, 238, 0.9));
  border: 1px solid rgba(0, 0, 0, 0.25);
}
.z4form .inline-help .field-label {
  position: relative;
  top: -1px;
  left: -1px;
  font-size: 1em;
  display: block;
}
.z4form .inline-help .close-btn {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  margin: 0.25em;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.5em;
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.25);
  border-radius: 2px;
  font-weight: bold;
  z-index: 10;
  color: #333;
  text-decoration: none;
}
.z4form .inline-help p {
  opacity: 0.9;
  padding: 0;
  margin: 1em;
}
.z4form .extra-help,
.z4form .extra {
  clear: both;
  max-width: 360px;
  margin-bottom: 1em;
  border-top: 1px solid transparent;
  margin-left: 16rem;
}
.z4form .extra-help p,
.z4form .extra p {
  margin: 0 0 0.5em 0;
}
.z4form .extra-help a,
.z4form .extra a {
  color: #2780e3;
  transition: color 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.z4form .extra-help a:hover,
.z4form .extra a:hover {
  text-decoration: underline;
  color: #1b70cf;
}
.z4form .extra-help-top-padding + .extra-help {
  padding-top: 2.5em;
}
.z4form.tiny:first-child {
  margin-top: 0;
}
.z4form.tiny > ul {
  margin: 0;
}
.z4form.tiny > ul .z4field {
  margin: 0;
}
.z4form.tiny > ul .z4field span {
  padding: 0;
}
.z4form.tiny > ul .z4field.select .input {
  background: inherit;
}
.z4form.narrow {
  width: 320px;
}
.z4form.narrow, .z4form.inline {
  margin: 0 auto;
}
.z4form.narrow .field-label, .z4form.inline .field-label {
  float: none;
  display: inline-block;
  margin: 0;
  text-align: left;
  position: relative;
  width: auto;
  padding-top: 1em;
  padding-bottom: 0;
  padding-left: 0;
  line-height: 1.5;
}
.z4form.narrow .field-label:after, .z4form.inline .field-label:after {
  content: ":";
}
.z4form.narrow .field-label .help-indicator, .z4form.inline .field-label .help-indicator {
  position: absolute;
  right: -2em;
  bottom: -2px;
}
.z4form.narrow .inline-help .close-btn, .z4form.inline .inline-help .close-btn {
  right: 0;
  left: auto;
}
.z4form.narrow .inline-help p, .z4form.inline .inline-help p {
  margin: 0.4em;
}
.z4form.narrow .z4field, .z4form.inline .z4field {
  margin: 0;
  padding: 0;
}
.z4form.narrow .z4field.checklist, .z4form.inline .z4field.checklist {
  margin-top: 10px;
}
.z4form.narrow .control, .z4form.inline .control {
  padding-left: 0;
}
.z4form.narrow .input, .z4form.inline .input {
  width: 100%;
}
.z4form .form-error {
  position: absolute;
  width: 100%;
  bottom: 0;
  right: 0;
  margin: 0 0 -1em 0;
}
@media screen and (max-width: 500px) {
  .z4form .z4field, .z4form.narrow-label .z4field, .z4form.wide-label .z4field {
    margin-left: 0;
  }
  .z4form .field-label, .z4form.narrow-label .field-label, .z4form.wide-label .field-label {
    margin-left: 0;
  }
  .z4form .extra-help, .z4form.narrow-label .extra-help, .z4form.wide-label .extra-help {
    margin-left: 0;
  }
  .z4form li.control, .z4form.narrow-label li.control, .z4form.wide-label li.control {
    padding-left: 0;
  }
}

.content-block > .z4form:first-child {
  margin-top: 4em;
}

.z4app > .z4form {
  margin-bottom: 100px;
}

.modal-content .modal-title + .z4form.narrow {
  margin-top: 1em;
}
.modal-content .z4form.narrow {
  width: auto;
  padding-left: 1em;
  padding-right: 1em;
}
.modal-content .z4form.narrow li:first-child .field-label {
  margin-top: 0;
}
.modal-content .z4form.narrow .field-label {
  display: block;
  padding-bottom: 0;
  line-height: normal;
  margin: 1em 0 0.25em 0.1em;
  padding: 0;
}
.modal-content .z4form.narrow .field-label:after {
  content: none;
}
.modal-content .z4form.narrow .z4field.radio {
  margin-bottom: 1em;
}
.modal-content .z4form.narrow .z4field.radio .option {
  margin: 0;
  padding: 0;
}
.modal-content .z4form.narrow .z4field.radio .option label {
  font-size: 1em;
}
.modal-content .z4form.narrow .extra-help {
  margin: 0 0 1em;
}

.review-section .action.link {
  color: #2780e3;
  font-size: 0.9em;
}

.input-error {
  position: absolute;
  display: block;
  padding: 4px 12px;
  margin: 2px;
  left: 0;
  z-index: 99;
  font-size: 0.9em;
  font-weight: bold;
  background: #c11;
  color: #fff;
  box-shadow: 0 0 20px -6px #000;
}
.input-error.nowrap {
  white-space: nowrap;
  overflow-x: ellipsis;
}
.input-error:before {
  content: "";
  display: block;
  height: 12px;
  width: 12px;
  position: absolute;
  left: 6px;
  top: -6px;
  transform: rotate(45deg);
  background: inherit;
  z-index: -1;
}
.input-error * {
  display: block;
  background: #c11;
}

.z4field .datetime.container + .input-error {
  position: relative;
  display: inline-block;
  min-width: 55%;
}

.warning::-webkit-input-placeholder {
  color: red;
}

.warning.resolved::-webkit-input-placeholder {
  color: #4CAF50;
}

.warning::-moz-placeholder {
  color: red;
}

.warning.resolved::-moz-placeholder {
  color: #4CAF50;
}

.warning:-ms-input-placeholder {
  color: red;
}

.warning.resolved:-ms-input-placeholder {
  color: #4CAF50;
}

.z4form.readonly .field-label {
  padding-top: 0;
  line-height: 1.85em;
}
.z4form.readonly .z4field {
  padding-top: 0;
  padding-bottom: 0.25em;
}
.z4form.readonly .z4field .input,
.z4form.readonly .z4field .disabled.input,
.z4form.readonly .z4field .value-display {
  border-color: transparent;
  background: transparent;
  color: black;
  padding: 1px 0 0 0;
  padding: 0;
}
.z4form.readonly .edited-indicator {
  display: none;
  left: -1.25em;
  bottom: -0.25em;
  color: #aaa;
}
.z4form.readonly .edited-indicator:hover {
  color: #2780e3;
}

.z4field.radio .option {
  padding: 0.25rem 0.5rem;
  margin-left: -0.5rem;
  border: 1px solid transparent;
  border-radius: 2px;
}
.z4field.radio .option.disabled {
  pointer-events: none;
  opacity: 0.4;
}
.z4field.radio .option label {
  display: block;
  font-size: 1.2rem;
}
.z4field.radio .option.underlined {
  border-bottom: 1px solid #ddd;
}
.z4field.radio .option > .extra {
  padding-left: 22px;
  max-width: 360px;
  margin-left: 0;
}
.z4field.radio .option .link {
  color: #2780e3;
  text-decoration: none;
}
.z4field.radio .option .link:hover {
  text-decoration: underline;
}
.z4field.radio .option p:not(:last-child) {
  margin: 0 0 0.5em;
}
.z4field.radio .option .child-fields {
  margin: 0.5em 0;
  padding: 0 0 0 1.5em;
  list-style: none;
  display: none;
}
.z4field.radio .option .child-fields > li {
  display: flex;
  flex-direction: row;
}
.z4field.radio .option .child-fields .field-label {
  display: block;
  display: block;
  line-height: 1.2;
  padding-right: 1rem;
  width: 8rem;
  padding-left: 0;
}
.z4field.radio .option .child-fields .extra-help {
  margin-left: 0;
  margin-bottom: 0;
}
.z4field.radio .option.selected .child-fields {
  display: block;
}
.z4field.radio.disabled input.z4-styled + label:before {
  opacity: 0.4;
}
.z4field.radio.highlight-selected-options .option.selected,
.z4field.radio .option.has-children.selected {
  border-color: #d0e2ec;
}
.z4field.radio.option-tiles .option,
.z4field.radio .option.has-children.selected {
  position: relative;
  border-radius: 3px;
  border: 1px solid #ddd;
  margin-bottom: 0.5em;
  padding-top: 0.5em;
  padding-bottom: 0;
  overflow: visible;
  transition: background-color 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.z4field.radio.option-tiles .option > label,
.z4field.radio.option-tiles .option > .extra,
.z4field.radio.option-tiles .option > .child-fields,
.z4field.radio .option.has-children.selected > label,
.z4field.radio .option.has-children.selected > .extra,
.z4field.radio .option.has-children.selected > .child-fields {
  padding-left: 2rem;
}
.z4field.radio.option-tiles .option:before,
.z4field.radio .option.has-children.selected:before {
  content: "";
  display: block;
  height: calc(100% + 2px);
  width: 2em;
  background: #d0e2ec;
  position: absolute;
  top: -1px;
  left: -1px;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
.z4field.radio.option-tiles .option.selected:before,
.z4field.radio .option.has-children.selected.selected:before {
  background: #2780e3;
}
.z4field.radio.option-tiles .option:hover {
  background-color: #f1f3f8;
}

.z4form.dense .z4field.radio {
  padding-top: 0.72em;
}
.z4form.dense .z4field.radio .option {
  padding-top: 0;
}
.z4form.dense .z4field.radio .option .extra {
  padding-bottom: 0.25em;
}

.z4form ul.z4field.radio {
  padding-top: 0.9rem;
}

.z4field.select .input {
  position: relative;
  padding: 0;
  color: initial;
}
.z4field.select .input input.value-display {
  font-size: inherit;
}
.z4field.select .input .value-display {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.z4field.select .input .value-display.wrapped {
  border-bottom: 1px solid transparent;
}
.z4field.select .input .value-display.nofilter {
  cursor: default;
}
.z4field.select .input .value-display.filter {
  border: 0;
  outline: 0;
}
.z4field.select.wide .input {
  width: 100%;
}
.z4field.select .dropdown-trigger {
  position: absolute;
  right: 0;
  padding-right: 0.25em;
  top: 10%;
  color: #666;
}
.z4field.select .z4select-dropdown {
  visibility: hidden;
  position: absolute;
  z-index: 90;
  width: calc(100% + 2px);
  left: -1px;
}
.z4field.select .z4select-dropdown.expanded {
  visibility: visible;
  box-shadow: 0 0 16px -6px #000;
  z-index: 1000;
}
.z4field.select.expanded .input .value-display.wrapped {
  background: inherit;
  z-index: 1001;
  border-bottom-color: #ddd;
}
.z4field.select.expanded .z4select-dropdown {
  z-index: 1000;
}
.z4field.select.direction-up .z4select-dropdown {
  bottom: 30px;
}
.z4field.select a {
  text-decoration: none;
}

.z4select-dropdown {
  list-style: none;
  margin: 0;
  padding: 0 0 0.5em;
  border: 1px solid #77AFED;
  border-top: 0;
  background: #fafafa;
  width: 100%;
  overflow: hidden;
  max-height: 0;
  transition: max-height 100ms cubic-bezier(0.215, 0.61, 0.355, 1);
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
.z4select-dropdown.expanded {
  max-height: 280px;
  overflow-y: auto;
}
.z4select-dropdown > ul {
  margin: 0 1px 0 0;
  padding: 0;
  list-style: none;
}
.z4select-dropdown li {
  margin: 0;
  padding: 0;
}
.z4select-dropdown li > a {
  display: block;
  padding: 2px 6px;
  color: inherit;
  transition: background-color 0.1s ease-in-out;
}
.z4select-dropdown li > a .display,
.z4select-dropdown li > a .extra {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.z4select-dropdown li > a .extra {
  font-size: 0.7em;
  color: #666;
  margin: 0;
}
.z4select-dropdown li > a:hover {
  background-color: #ddd;
}
.z4select-dropdown li > a.disabled {
  cursor: disabled;
  color: #aaa;
  pointer-events: none;
}

.z4field.checklist .checklist-list,
.z4form .checklist .checklist-list {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 1.2rem;
  max-width: 100%;
}
.z4field.checklist .checklist-list .option,
.z4form .checklist .checklist-list .option {
  clear: none;
  min-height: 1.5rem;
  overflow: hidden;
  margin-bottom: 0.25em;
  padding-top: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.z4field.checklist .checklist-list .option input.z4-styled[type=checkbox] + label,
.z4form .checklist .checklist-list .option input.z4-styled[type=checkbox] + label {
  display: inline;
}
.z4field.checklist .checklist-list .option .draghandle,
.z4form .checklist .checklist-list .option .draghandle {
  height: 1.5rem;
  background-position: -7px center;
  width: 12px;
}
.z4field.checklist .option,
.z4form .checklist .option {
  margin-bottom: 8px;
  padding-top: 2px;
}
.z4field.checklist .option label .info-badge,
.z4form .checklist .option label .info-badge {
  margin-left: 1rem;
}
.z4field.checklist .option .extra,
.z4form .checklist .option .extra {
  margin: 0;
  padding: 0 0 6px 22px;
  font-size: 0.9rem;
  color: #666;
  line-height: normal;
  white-space: normal;
}
.z4field.checklist .option .extra > p,
.z4form .checklist .option .extra > p {
  margin-top: 0;
}
.z4field.checklist.wrap-extra .extra,
.z4form .checklist.wrap-extra .extra {
  white-space: normal;
  max-width: 100%;
}
.z4field.checklist .empty p,
.z4field.checklist p.empty,
.z4form .checklist .empty p,
.z4form .checklist p.empty {
  font-size: 1.2em;
  margin: 0;
}
.z4field.checklist .saved-msg,
.z4form .checklist .saved-msg {
  right: 0;
  bottom: 0;
}

.z4field.checkbox .check-wrapper {
  padding-top: 12px;
}

table.z4-style .z4field.checkbox .check-wrapper {
  padding-top: 3px;
  padding-left: 4px;
}

.z4field.datetime .input.date,
.z4field-datetime .input.date,
.z4form.narrow .z4field.datetime .input.date,
.z4form.narrow .z4field-datetime .input.date {
  width: 8em;
  margin-right: 0.3em;
}
.z4field.datetime .input.time,
.z4field-datetime .input.time,
.z4form.narrow .z4field.datetime .input.time,
.z4form.narrow .z4field-datetime .input.time {
  width: 5.7em;
  margin-right: 0.3em;
}
.z4field.datetime .label,
.z4field-datetime .label,
.z4form.narrow .z4field.datetime .label,
.z4form.narrow .z4field-datetime .label {
  padding-top: 7px;
  color: #aaa;
}
.z4field.datetime .datetime-wrapper,
.z4field-datetime .datetime-wrapper,
.z4form.narrow .z4field.datetime .datetime-wrapper,
.z4form.narrow .z4field-datetime .datetime-wrapper {
  position: relative;
  display: inline-block;
}
.z4field.datetime .show-datepicker,
.z4field-datetime .show-datepicker,
.z4form.narrow .z4field.datetime .show-datepicker,
.z4form.narrow .z4field-datetime .show-datepicker {
  position: absolute;
  right: 0.3em;
  top: 0.3em;
  opacity: 0.5;
  transition: opacity 200ms cubic-bezier(0.215, 0.61, 0.355, 1);
  z-index: 3;
}
.z4field.datetime .show-datepicker:hover,
.z4field-datetime .show-datepicker:hover,
.z4form.narrow .z4field.datetime .show-datepicker:hover,
.z4form.narrow .z4field-datetime .show-datepicker:hover {
  opacity: 1;
}

.z4field.date .input {
  position: relative;
}
.z4field.date .show-datepicker {
  position: absolute;
  top: 0.15em;
  right: 0.3em;
  opacity: 0.5;
  transition: opacity 200ms cubic-bezier(0.215, 0.61, 0.355, 1);
  z-index: 3;
}
.z4field.date .show-datepicker:hover {
  opacity: 1;
}

.z4field.time .z4calendarwidget {
  position: absolute;
  right: 0;
  top: 1.5em;
  z-index: 100;
}
.z4field.time .z4calendarwidget td {
  min-width: 0;
}
.z4field.time .show-datepicker {
  position: absolute;
  right: 0px;
  top: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #333;
  z-index: 3;
}

table.z4-style .show-datepicker {
  width: 16px;
  height: 16px;
  background-size: 100%;
  background-repeat: no-repeat;
  top: 3px;
}

.date-range-ui > .row {
  display: flex;
  flex-direction: row;
}
.date-range-ui .calendar-container {
  margin-right: 1em;
}

.z4field.time-window .input {
  width: 8rem;
}

.z4field.city .input {
  padding: 0;
}
.z4field.city .input input {
  padding: 0.4em;
  background: none;
  z-index: 81;
  position: relative;
}
.z4field.city.menu-expanded .input {
  border-color: #2780e3;
}
.z4field.city.menu-expanded .input input {
  background: white;
}
.z4field.city .suggestions {
  background: #fff;
  border: 1px solid #2780e3;
  border-top-color: #ddd;
  position: absolute;
  z-index: 80;
  width: 14em;
  left: 0;
  box-shadow: 0 0 16px -6px #000;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  padding-bottom: 3px;
}
.z4field.city .suggestions > p {
  color: #aaa;
  font-size: 0.8rem;
  font-style: italic;
  padding: 0 6px 0.25em 6px;
  margin: 0 0 0.5em 0;
  border-bottom: 1px solid #ddd;
}
.z4field.city .suggestions .z4select-dropdown {
  border: 0;
}
.z4field.city .suggestions li > a {
  padding: 0.25em 0.4rem;
  text-decoration: none;
  border-bottom: 1px solid #ddd;
}
.z4field.city .no-match {
  font-size: 0.8em;
  margin: 1em;
  padding: 0;
  text-align: center;
  color: #aaa;
  font-style: italic;
}
.z4field.city.spinning .input:after {
  display: inline-block;
  content: "";
  position: absolute;
  right: 1px;
  top: 1px;
  height: 30px;
  width: 30px;
  background: url("/zimg/loading.gif");
  background-position: center;
  background-repeat: no-repeat;
  z-index: 99;
}

.z4form .z4field.waiver {
  margin-left: 0;
}
.z4form .z4field.waiver .waiver-display .check-container {
  padding-left: 16em;
  margin-bottom: 1em;
}
@media screen and (max-width: 480px) {
  .z4form .z4field.waiver .waiver-display .check-container {
    padding-left: 0;
  }
}
.z4form .z4field.waiver .waiver-display .highlight {
  padding: 0.5em;
  margin: 0;
  border-radius: 3px;
}
.z4form .z4field.waiver .waiver-display .highlight.info {
  background: #81b5ef;
}
.z4form .z4field.waiver .waiver-display .highlight.error {
  background: #c11;
}
.z4form .z4field.waiver .waiver-display .highlight.warning {
  background: #ffe895;
}
.z4form .z4field.waiver .waiver-display > p {
  max-width: 480px;
  margin: 1em auto 0.5em auto;
}

.z4field-onoff {
  margin: 2.5em 0;
}
.z4field-onoff .switch-container .switch-title {
  font-size: 1.2em;
  margin-right: 100px;
  display: block;
}
.z4field-onoff .switch-container .extra {
  margin-top: 0.25em;
  max-width: 480px;
}
.z4field-onoff .switch-container .extra > p {
  margin-top: 0;
}
.z4field-onoff .onoffswitch,
.z4field-onoff .disabled-switch {
  position: relative;
  width: 78px;
  top: -4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.z4field-onoff .disabled-switch {
  color: #999999;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: bold;
}
.z4field-onoff .onoffswitch-checkbox {
  display: none;
}
.z4field-onoff .onoffswitch-label {
  display: block;
  overflow: hidden;
  cursor: pointer;
  border: 1px solid #999999;
  border-radius: 20px;
}
.z4field-onoff .onoffswitch-inner {
  width: 200%;
  margin-left: -100%;
  -moz-transition: margin 0.3s ease-in 0s;
  -webkit-transition: margin 0.3s ease-in 0s;
  -o-transition: margin 0.3s ease-in 0s;
  transition: margin 0.3s ease-in 0s;
}
.z4field-onoff .onoffswitch-inner:before,
.z4field-onoff .onoffswitch-inner:after {
  float: left;
  width: 50%;
  height: 30px;
  padding: 0;
  line-height: 30px;
  font-size: 15px;
  color: white;
  font-weight: bold;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.z4field-onoff .onoffswitch-inner:before {
  content: "ON";
  padding-left: 11px;
  background-color: #4CAF50;
  background-image: radial-gradient(circle at 90% 50%, #acef2d, #3f9623);
  color: #FFFFFF;
}
.z4field-onoff .onoffswitch-inner:after {
  content: "OFF";
  padding-right: 11px;
  background-color: #EEEEEE;
  color: #999999;
  text-align: right;
}
.z4field-onoff .onoffswitch-switch {
  width: 22px;
  height: 22px;
  margin: 2px;
  background: #FFFFFF;
  border: 1px solid #666;
  border-radius: 20px;
  position: absolute;
  top: 3px;
  bottom: 0;
  right: 48px;
  -moz-transition: all 0.3s ease-in 0s;
  -webkit-transition: all 0.3s ease-in 0s;
  -o-transition: all 0.3s ease-in 0s;
  transition: all 0.3s ease-in 0s;
}
.z4field-onoff .onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
  margin-left: 0;
}
.z4field-onoff .onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
  right: 4px;
}

.z4form .z4field-onoff .extra.help {
  margin-left: 0;
  max-width: 480px;
}

.z4field.item-list {
  max-width: 360px;
}
.z4field.item-list > ul {
  list-style: none;
  margin: 0;
  padding: 0.3em 0 0;
}
.z4field.item-list > ul > li {
  padding: 0.5em 0 0;
  font-size: 1.1em;
}
.z4field.item-list > ul > li.empty-item {
  color: #aaa;
  font-style: italic;
}

.z4calendarwidget {
  font-size: 1.2em;
  width: 14em;
  background-color: #f1f3f8;
  clear: both;
  padding: 0 6px 6px;
  border: 1px solid #aaa;
}
.z4calendarwidget div.controls {
  font-size: 1rem;
  padding: 0.5em 0;
  position: relative;
  display: flex;
  flex-direction: row;
}
.z4calendarwidget div.controls .input {
  float: none;
  background: none;
  border: 1px solid transparent;
  transition: all 0.15s ease-in-out;
  padding: 1px 0.5em;
  font-size: 1rem;
}
.z4calendarwidget div.controls .input:hover {
  border-color: #aaa;
  background: white;
}
.z4calendarwidget div.controls .input:focus {
  border-color: #2780e3;
  background: white;
}
.z4calendarwidget div.controls .datepicker-year {
  width: 60px;
  font-weight: normal;
  padding: 1px;
  text-align: right;
}
.z4calendarwidget div.controls .datepicker-month {
  font-weight: normal;
  width: 120px;
}
.z4calendarwidget div.controls .button {
  justify-self: flex-end;
  margin: auto;
  display: block;
}
.z4calendarwidget table {
  min-width: 0;
  width: auto;
  table-layout: fixed;
  border-collapse: collapse;
}
.z4calendarwidget th {
  width: 40px;
  background: #333;
  border: 1px solid #333;
  font-size: 0.8rem;
  text-align: center;
}
.z4calendarwidget td {
  border: 1px solid #ddd;
  height: 30px;
  background: #fff;
  text-align: center;
  vertical-align: center;
  font-size: 10pt;
  color: #333;
  padding: 0;
  margin: 0;
}
.z4calendarwidget td a {
  color: inherit;
  text-decoration: inherit;
  display: block;
  height: 24px;
  padding-top: 6px;
}
.z4calendarwidget .today {
  font-weight: bold;
  background: #ddd;
}
.z4calendarwidget .highlighted {
  background: #ffa;
}
.z4calendarwidget .selected {
  background: #2780e3;
  color: #fff;
}

.show-datepicker {
  width: 26px;
  height: 24px;
  overflow: hidden;
  text-indent: 30px;
  white-space: nowrap;
  display: block;
  margin: 4px 2px;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAYCAIAAABr4HqSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gUUEyEVDFl0ZgAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAAB9SURBVDjLYzQ2NmagHmBioCoY3MYxGBsb/0cCq1atIptrbGw8osKO0djYuLy8HM5vmfMBTUVNigCRZnV2djIaGxufOXMGLqTvPhtN0cWdqXD26tWrQ0NDcXFNTExGVFSwQIIAjwo0Wfzc0VxBvVxBCejs7ByNCsqigorGAQBhvO7zmLg9QQAAAABJRU5ErkJggg==);
}

.z4field {
  position: relative;
  list-style: none;
  padding: 0.5em 0.5em 0.5em 0;
}
.z4field .saved-msg {
  display: inline-block;
  padding: 0.25em;
  border-radius: 2px;
  font-size: 0.8em;
  font-style: italic;
  font-weight: bold;
  margin: 5px;
  position: absolute;
  color: #4CAF50;
}
.z4field.disabled:not(.pointers-allowed) {
  pointer-events: none;
  cursor: default;
}
.z4field.disabled .input {
  border-color: #f1f3f8;
  background: #fafafa;
  color: #666;
}
.z4field.disabled .input > .wrapped + .placeholder-text {
  display: none;
}
.z4field .input {
  display: inline-block;
  font-size: 1.2em;
  width: 14em;
  position: relative;
  min-height: 2.2em;
}
@media (max-width: 500px) {
  .z4field .input {
    margin: 0;
    width: 100%;
  }
}
.z4field .input > .wrapped {
  width: 100%;
  font: inherit;
  border: 0;
  outline: none;
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 2;
}
.z4field .input > .wrapped.width-unset {
  width: unset;
}
.z4field .input > .wrapped:disabled {
  background: none;
  color: inherit;
}
.z4field .input > .wrapped.text {
  white-space: nowrap;
  overflow: hidden;
  display: block;
}
.z4field .input > .wrapped.fixed-height {
  display: block;
  height: 1.3em;
  white-space: nowrap;
  overflow: hidden;
}
.z4field .input > .wrapped + .placeholder-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #bbb;
  z-index: 0;
  pointer-events: none;
}
.z4field .input > .wrapped.fixed-height + .placeholder-text {
  white-space: nowrap;
  overflow: hidden;
}
.z4field .input.hide-placeholder .placeholder-text {
  opacity: 0;
}
.z4field .input:focus, .z4field .input.focus {
  border-color: #2780e3;
  outline: none;
  box-shadow: 0 0 6px -2px #2780e3;
}
.z4field .input.no-border {
  border-color: transparent;
}
.outline-field .z4field .input {
  border-color: #4CAF50;
  box-shadow: 0 0 16px rgba(76, 175, 80, 0.5);
}
.z4field .input.read-only {
  background: #f1f3f8;
  color: #666;
}
.z4field.no-spinner input::-webkit-inner-spin-button, .z4field.no-spinner input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.z4field.textarea {
  padding-top: 0.8em;
}
.z4field.textarea .input {
  height: 6em;
  position: relative;
}
.z4field.textarea .input .wrapped {
  font: inherit;
  font-size: 0.9em;
  border: 0;
  outline: 0;
  height: 100%;
}
.z4field.textarea .input.has-warning {
  height: 8em;
  padding-bottom: 2em;
}
.z4field.textarea.large .input {
  height: 12em;
  width: 100%;
}
.z4field.textarea.large .wrapped {
  font-size: 0.8em;
}
.z4field.textarea.huge {
  margin-left: 0;
  font-size: 0.8em;
}
.z4field.textarea.huge .input {
  width: 100%;
  height: 24em;
}
.z4field.textarea .textarea-warning {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  font-size: 0.8rem;
  padding: 0.25em 0.4rem;
  background: #ffe895;
  color: #333;
  font-weight: 600;
}
.z4field.textarea .textarea-warning > p {
  margin: 0;
}
.z4field.json textarea {
  font-size: 0.7em;
  width: 100%;
  height: 16em;
}
.z4field.yesno .option {
  font-size: 1.2em;
  display: inline-block;
  width: 4em;
  padding-top: 0.4em;
}
.z4field.yesno.disabled .z4-styled[type=radio] + label:before {
  opacity: 0.4;
}
.z4field.image .btncontainer.loading-throbber {
  background-repeat: no-repeat;
  background-position: center right;
}
.z4field.money .input {
  position: relative;
  padding-left: 1em;
}
.z4field.money .input:before {
  position: absolute;
  left: 0.3em;
  content: "$";
  color: #aaa;
}
.z4field label .label-option-display {
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  text-overflow: ellipsis;
}
.z4field .option-price {
  color: #666;
  font-style: italic;
}
.z4field .warning-icon {
  position: absolute;
  right: 0.25em;
  text-decoration: underline;
  color: #333;
  background-color: #F5A623;
  font-weight: 900;
  display: block;
  width: 1.25em;
  text-align: center;
  top: 0.25em;
  text-decoration: none;
  border-radius: 50%;
  z-index: 4;
}
.z4field .edited-indicator {
  position: absolute;
  bottom: 0;
  left: 0;
  background: transparent;
  padding: 0 0.25em;
  border-top-left-radius: 25%;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  font-size: 0.5rem;
  color: #1b70cf;
  text-decoration: none;
}
.z4field .edited-indicator:hover {
  color: #1160b8;
  text-decoration: none;
}
.z4field.time .time-wrapper {
  max-width: 16.5rem;
  position: relative;
}
.z4field .display-text {
  display: block;
  padding: 0.8em 0.25em;
}
.z4field > .layout-list {
  font-size: 1.2em;
  padding: 0.5em 0;
}
.z4field.link > .input .link {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  color: #2780e3;
  line-height: 1;
  margin-bottom: -3px;
  text-decoration-color: transparent;
  transition: all 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.z4field.link > .input .link:hover {
  color: #1b70cf;
  text-decoration-color: #2780e3;
}

.z4field.z4field-translatable .input .wrapped {
  max-width: calc(100% - 2.25em);
}

.z4field .language-selector {
  position: absolute;
  top: 0;
  margin: 7px;
  z-index: 20;
}
.z4field .language-selector.right {
  right: 0;
}
.z4field .language-selector .trigger:not(.button) {
  font-weight: normal;
  background: #efefef;
  border: 1px solid #ddd;
  border-radius: 2px;
  color: #666;
  display: block;
  margin: 0;
  padding: 4px;
  font-size: 0.8rem;
  transition: all 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  width: 1.6rem;
  text-align: center;
}
.z4field .language-selector .trigger:not(.button):after {
  display: none;
}
.z4field .language-selector .trigger:not(.button):hover {
  background: #ddd;
  color: black;
  text-decoration: none;
}
.z4field .language-selector .menu-content {
  font-size: 0.9rem;
  padding-top: 2px;
  padding-bottom: 2px;
}
.z4field .language-selector .menu-content > li {
  margin-bottom: 0;
}
.z4field .language-selector .menu-content a {
  color: white;
  font-size: inherit;
  font-weight: normal;
  padding: 0.3em 1.8em 0.3em 0.8em;
}
.z4field .language-selector .menu-content a:hover {
  text-decoration: none;
  color: #ffa;
}

.below-field {
  display: block;
  margin-top: 0.15em;
}
.below-field.text {
  padding-left: 0.55rem;
}

.z4field > .input,
.z4field .z4field-input {
  border: 1px solid rgba(0, 0, 0, 0.2);
  background: white;
  border-radius: 3px;
  padding: 0;
}
.z4field > .input:hover,
.z4field .z4field-input:hover {
  background: white;
}
.z4field > .input .wrapped,
.z4field > .input .wrapped + .placeholder-text,
.z4field .z4field-input .wrapped,
.z4field .z4field-input .wrapped + .placeholder-text {
  padding: 0.5em;
  min-height: inherit;
  white-space: nowrap;
  overflow: hidden;
}

.z4form .focused-item .z4field > .input,
.z4form .focused-item .z4field .z4field-input {
  border-color: #2780e3;
  background: #fafafa;
}

.z4field .upload-button {
  position: absolute;
  right: 0.25em;
  top: 0.25em;
  height: 1.5em;
  width: 1.5em;
  display: block;
  background-image: url("/zimg/icon/upload.svg");
  background-size: auto 100%;
  opacity: 0.5;
  transition: opacity 100ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  background-position: center right;
  background-repeat: no-repeat;
  line-height: 1.7;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 100%;
}
.z4field .upload-button:hover {
  opacity: 1;
}
.z4field.saving .upload-button {
  background-image: none;
}
.z4field .input.empty .upload-button {
  width: calc(100% - 0.5em);
  text-indent: 0;
}

.z4field-photolist .input.dragged-over {
  border: 1px dashed #2780e3;
  background: #f1f3f8;
}
.z4field-photolist .image-picker-input {
  background: black;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.z4field-photolist .thumbnails {
  list-style: none;
  display: block;
  margin: 0.25em 2.5em 0.25em 0.25em;
  padding: 0;
}
.z4field-photolist .thumbnails > li {
  margin: 0 0.25em 0 0.25em;
  padding: 0;
  height: 1.75em;
  width: 1.75em;
  display: inline-block;
  border-radius: 2px;
  background-size: 100% auto;
  background-color: rgba(0, 0, 0, 0.15);
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
}
.z4field-photolist .thumbnails .expand {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.z4field-uuid .input.read-only .wrapped {
  font-size: 0.8rem;
}

.z4field .input .input-action {
  position: absolute;
  float: none;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 10;
}

.z4field.twofactor-barcode .barcode-layout-wrapper {
  position: relative;
  padding-top: 50%;
  height: 0;
  width: 50%;
  margin-left: 25%;
  background-image: url(/zimg/loading.gif);
  background-position: center center;
  background-repeat: no-repeat;
}
.z4field.twofactor-barcode .barcode-layout-wrapper.loading {
  background-image: url("/zimg/loading.gif");
}

.z4-styled[type=checkbox], .z4-styled[type=radio] {
  opacity: 0;
  position: absolute;
}
.z4-styled[type=checkbox] + label, .z4-styled[type=radio] + label {
  position: relative;
  padding-left: 22px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  vertical-align: top;
}
.z4-styled[type=checkbox] + label.light, .z4-styled[type=radio] + label.light {
  color: #666;
}
.z4-styled[type=checkbox] + label:before, .z4-styled[type=radio] + label:before {
  position: absolute;
  left: 0;
  top: 50%;
  content: "";
  display: block;
  background-size: 100% auto;
  background-position: top;
}
.z4-styled[type=checkbox]:checked + label:before, .z4-styled[type=radio]:checked + label:before {
  background-position: bottom;
}
.z4-styled[type=checkbox]:disabled + label, .z4-styled[type=radio]:disabled + label {
  opacity: 0.6;
}
.z4-styled[type=checkbox]:disabled + label :before, .z4-styled[type=radio]:disabled + label :before {
  opacity: 0.5;
}
.z4-styled[type=checkbox] + label:before {
  height: 18px;
  width: 18px;
  margin-top: -9px;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAABACAYAAAB7jnWuAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3goFFzsBy1JVNwAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAAKhSURBVGje7Zi9S2phHICfo0lSiDjYkENkSxj0BwRCONQi1D8QQt80NB2zDxFEMhA9Ek1FU0uBENTiKkGLNggtQlRE1haRLRLmvdOV3mv33q51LOL9TYfn8J7z8H79fu+rnJ+f/+ATw8AnR8uvB6fT2dQfX1xcfI0ekAJSQApIASkgBaSAFJACUkAKSAEp0PL7WU0OgbwfkPcD31Lg7u7u8wT29vYYGRkhk8k0X+D4+BhN0yiXy6iqyubmZvMEbm5uCIVCVKvVGtvZ2eH29lZ/gcfHR+bn53l4eKgxRVGIRCJ0dnbqK1CpVAgEAlxdXQl8enoaj8ej/xCsr6+TzWYFNjw8zOTkpP6TcH9/n93dXYH19fURCoVQFEVfgZOTE2KxmMA6OjqIx+O0trbquw9cX1+zsLBApVKpMbPZjKZp2O32xnbCarXKwcEBz8/Pf/1AuVxmaWmJUqkk8MXFRXp7e9+eDV/G/f09fr+ffD5PoVAgEAj8UXJ5eZlCoSDwiYkJvF5vY7mgWCwyNTVFPp8HIJVKcXh4+Grj7e1tjo6OBOZ2u5mZmWk8GVksFmEsAaLRKLlcTmDpdJqtrS2BuVwu1tbWMBgMjQtYrVaSySTt7e11m0uxWATg9PSUSCQitLPb7SQSCcxm8/vTcXd3N+FwWFi7pVIJv9/P5eUlqqry9PQkzPhEIvHPGf9fq2BwcJDx8XGBnZ2dMTY2VpffVVXF5XJ9fEEyOzvL0NBQ3bJ7GT6fj9HRUX0qIkVRCAaD9PT0vPp+YGCAubk5fUuytrY2NE3DarUKvKuri9XVVYxGo/41ocPhIJlMYjKZALDZbGxsbGCxWJpXlPb397OysoLJZCIej9cVFu8+mLwlvF4vTqez4Rn/IdnwI38u7we+RA/8BEqK3TOfV1YNAAAAAElFTkSuQmCC");
}
.z4-styled[type=radio] + label:before {
  height: 17px;
  width: 18px;
  margin-top: -8px;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAgCAYAAAAffCjxAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QwIAS8BBukCcwAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAAHUSURBVEjH5ZSxyqNAFIWPDlgIsRNBsLAPpLCxErQK6QN/7VvkCfIWPoD20coile1C+ikEQe0cEBTG2Sohif+fpJBl2T3lMPNx7p17D7CQpOcDIQRp23ZfVdWhLMs1AFiWdTFN86jreiJJEn8LYoytz+fzr77vZcMwYNs2AIBSirquoarq5HneZrVaXX60xhhbx3Es0jQVwzCIZw3DINI0FXEcC8bY+ltHQghyOp1GWZbl7Xb7shdZlmGapmm32yn3ZcoA0Lbtvu97OQiCt00NggB938tt2+7vz2UAqKrqYBgGFEV5C1IUBYZhoKqqwwxUluX62thPZNs2rj/6AFpC8nVOKKUfP6KUwrKsywxkmuaxrmuM4/gWMo4j6rqGaZrHGUjX9URV1SnP87egPM+hquqk63oyA0mSxD3P2zDGkGXZt87GcUSWZWCMwfO8zfOqLLYiiy3t36f/MY845yiKAgDgui4IIS/zCADQNM1XkiQ3J5RS4fu+cBxHOI4jfN8XlNKbsyRJRNM0Xy/ziHOOMAzRdd3tUtd1CMMQnPPP86goigfIPexa6p/NI9d1oWna7KKmaXBd9/M8IoQgiqIHmKZpiKIIhJAf82jZ719sIP/NPPoNId/0+ddopOUAAAAASUVORK5CYII=");
}

.z4-styled.disabled[type=checkbox], .z4-styled.disabled[type=radio] {
  pointer-events: none;
}
.z4-styled.disabled[type=checkbox] + label, .z4-styled.disabled[type=radio] + label {
  pointer-events: none;
  color: #aaa;
}
.z4-styled.disabled[type=checkbox] + label:before, .z4-styled.disabled[type=radio] + label:before {
  pointer-events: none;
  opacity: "0.5";
}

.layout-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.layout-list.padding-after {
  margin-bottom: 2em;
}
.layout-list > li {
  margin: 0;
  padding: 0;
}
.layout-list > li > .name {
  text-decoration: none;
  margin: 0;
  display: block;
  font-weight: 300;
  font-size: 18pt;
  color: #333;
  line-height: 26px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.layout-list > li.clear {
  clear: both;
}
.layout-list .list-label {
  background: #f1f3f8;
  color: #666;
  font-weight: bold;
  font-size: 0.9rem;
  margin-top: 2em;
  padding: 0.25em;
}
.layout-list .list-label + ul {
  margin-top: 0;
}
.layout-list .item-label {
  color: #666;
}
.layout-list .list-heading {
  background-color: #f5f5f5;
  border-bottom: 1px solid #ddd;
  color: #333;
  font-weight: 300;
  font-size: 18pt;
  margin-top: 2em;
  padding: 0.25em 0.25em 0.25em 0.5em;
}
.layout-list .list-heading + ul {
  margin-top: 0.5em;
  margin-left: 0.5em;
}
.layout-list.one-line > li {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.layout-list.padded {
  padding-left: 0;
  padding-right: 0;
}
.layout-list.padded > li, .layout-list.lined > li, .layout-list.hover-effect > li {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.layout-list.bottom-padded > li {
  margin-bottom: 0.5em;
}
.layout-list.big-bottom-padded > li {
  margin-bottom: 1em;
}
.layout-list.lined > li:not(:last-child) {
  border-bottom: 1px solid #ddd;
}
.layout-list.spaced > li {
  clear: right;
  padding-bottom: 0.1em;
}
.layout-list.clear li:after {
  content: "";
  display: block;
  clear: both;
}
.layout-list.left-line {
  border-left: 1px solid #ddd;
}
.layout-list.checklist > li {
  padding: 0.25em 0;
}
.layout-list.checklist .z4-styled[type=checkbox] + label {
  white-space: normal;
}
.layout-list.checklist .z4-styled[type=checkbox] + label:before {
  top: 2px;
  margin-top: 0;
}
.layout-list.center {
  text-align: center;
}
.layout-list.hover-effect > li {
  padding-left: 1em;
  padding-right: 1em;
  margin-left: -1em;
  margin-right: -1em;
  position: relative;
  cursor: pointer;
  transition: background-color 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.layout-list.hover-effect > li:hover {
  background: rgba(0, 0, 0, 0.25);
}
.layout-list.hover-effect > li .small.right.button {
  position: absolute;
  right: 1em;
  top: 0.4em;
}
.layout-list.hover-effect.blue > li:hover {
  background-color: #d0e2ec;
}

.layout-list-label {
  color: #666;
  display: block;
  width: 16em;
  text-align: right;
  float: left;
}
.layout-list-label + .layout-list {
  margin-left: 16em;
  padding-left: 1em;
  margin-bottom: 1em;
}
.layout-list-label.narrow {
  width: 8em;
}
.layout-list-label.narrow + .layout-list {
  margin-left: 8em;
}

.list {
  list-style: none;
  padding: 0;
  margin: 30px 0 0;
}
.list > li {
  margin: 0 0 1em;
  border-bottom: 1px solid #fafafa;
  padding: 4px 10px 4px 0;
  position: relative;
}
.list > li > .name {
  text-decoration: none;
  margin: 0;
  display: block;
  font-weight: 300;
  font-size: 18pt;
  color: #333;
  line-height: 26px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.list > li .left,
.list > li .right:not(.button) {
  font-size: 10pt;
  color: #666;
}
.list > li .right {
  position: absolute;
  right: 0;
  bottom: 4px;
}
.list > li .remove {
  text-decoration: none;
  color: #666;
}
.list > li .remove:hover {
  color: #c11;
  cursor: pointer;
}
.list > li .remove:after {
  content: "✕";
}
.list.error:empty:after {
  content: "Unable to retrieve data.  Try again later.";
  display: block;
  text-align: center;
  padding: 80px 40px;
  color: #333;
  font-size: 10pt;
  z-index: 9999;
  font-style: italic;
  font-weight: normal;
}

.layout-list .layout-link {
  display: block;
  padding: 0.75em 1em;
  border: 1px solid #77AFED;
  background: #fafafa;
  border-radius: 3px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.layout-list .layout-link:hover {
  background: #f1f3f8;
}

.z4-inline-help-indicator {
  display: inline-block;
  text-decoration: none;
  border-radius: 50%;
  margin-left: 0.5em;
  background: #ccc;
  text-align: center;
  color: white;
  font-weight: 600;
  line-height: 1.25rem;
  width: 1.25rem;
  transition: background-color 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.z4-inline-help-indicator:hover {
  background-color: #666;
}

div.help h2 {
  color: #2780e3;
  font-weight: 400;
  padding-left: 0;
}

.help-modal {
  padding: 3em;
  height: 100%;
  position: relative;
  color: #666;
}
.help-modal > p {
  margin-bottom: 2em;
}
.help-modal .img-container {
  border: 1px solid #aaa;
  border-radius: 2px;
  overflow: hidden;
}
.help-modal .img-container img {
  max-width: 100%;
  margin: 0;
  display: block;
}
.help-modal .button-bar {
  position: absolute;
  bottom: 0;
  width: calc(100% - 6em);
  padding-bottom: 2em;
}

.page-title {
  padding: 0;
  border-bottom: 1px solid #f1f3f8;
}
.page-title h1 {
  margin: 0;
  padding: 0;
}
.page-title img {
  margin: 0 auto;
  display: block;
  max-width: 100%;
  max-height: 160px;
}
.page-title img + span {
  display: none;
}
.page-title .page-name {
  margin: 0;
  padding: 0.5em 2rem 0.25em 2rem;
  display: inline-block;
}
.page-title .subtitle {
  font-size: 0.9em;
  color: #666;
}
.page-title .subtitle > * {
  display: inline-block;
  margin-right: 1em;
}
.page-title .subtitle .active {
  font-weight: bold;
  color: #2780e3;
}
.page-title .subtitle a {
  color: inherit;
  text-decoration: none;
}
.page-title .subtitle a:hover {
  text-decoration: underline;
}
.page-title .subtitle:not(:empty) {
  border-bottom: 1px solid #f1f3f8;
  padding: 0 1rem 1rem 1rem;
}
@media screen and (max-width: 480px) {
  .page-title .subtitle:not(:empty),
.page-title .page-name {
    font-size: 2rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.search-results {
  clear: left;
}
.search-results.no-pad ul > li, .search-results.narrow ul > li {
  padding-left: 0;
  padding-right: 0;
}
.search-results.no-pad ul > li.icon:not(.icon-32), .search-results.narrow ul > li.icon:not(.icon-32) {
  padding-left: 4rem;
}
.search-results.no-pad ul > li.icon:not(.icon-32):before, .search-results.narrow ul > li.icon:not(.icon-32):before {
  left: 0;
}
.search-results.hover-effect > ul > li {
  transition: background-color 300ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.search-results.hover-effect > ul > li:hover {
  background-color: #d0e2ec;
}
@media screen and (min-width: 719px) {
  .search-results.two-column > ul:after {
    clear: both;
    content: "";
    display: block;
  }
  .search-results.two-column > ul > li {
    float: left;
    width: calc(50% - 1em);
  }
  .search-results.two-column > ul > li:nth-child(2n-1) {
    margin-right: 1em;
  }
}
.search-results.compressed > ul > li {
  margin: 0.5em 0;
  padding: 0;
}
.search-results.no-padding > ul > li {
  padding-left: 0;
  padding-right: 0;
}
.search-results.clean > ul > li, .search-results.clean .search-results-list > li {
  border-bottom: none;
}
.search-results.clean > ul .search-result-item, .search-results.clean .search-results-list .search-result-item {
  display: flex;
  flex-direction: row;
}
.search-results.clean > ul .sub-item, .search-results.clean .search-results-list .sub-item {
  margin: 0.75em 0;
}
.search-results.clean > ul .sub-item .name, .search-results.clean .search-results-list .sub-item .name {
  font-size: 1rem;
}
.search-results.clean > ul .sub-item .icon-wrapper, .search-results.clean .search-results-list .sub-item .icon-wrapper {
  margin-left: 0.45em;
  flex-basis: calc(4em - 0.45em);
}
.search-results.clean > ul .show-icon-lines .search-result-item:not(:last-child) .icon-wrapper:before, .search-results.clean .search-results-list .show-icon-lines .search-result-item:not(:last-child) .icon-wrapper:before {
  content: "";
  display: block;
  position: absolute;
  top: 0.75em;
  background-color: #ddd;
  width: 4px;
  height: 100%;
  left: 20px;
  z-index: 0;
}
.search-results.clean > ul .show-icon-lines .search-result-item.sub-item:not(:last-child) .icon-wrapper:before, .search-results.clean .search-results-list .show-icon-lines .search-result-item.sub-item:not(:last-child) .icon-wrapper:before {
  left: 13px;
}
.search-results.clean > ul .icon-wrapper, .search-results.clean .search-results-list .icon-wrapper {
  flex-basis: 4em;
  flex-grow: 0;
  flex-shrink: 0;
  position: relative;
}
.search-results.clean > ul .icon-wrapper .type-icon,
.search-results.clean > ul .icon-wrapper .icon-background, .search-results.clean .search-results-list .icon-wrapper .type-icon,
.search-results.clean .search-results-list .icon-wrapper .icon-background {
  content: "";
  display: block;
  height: 1.5em;
  width: 1.5em;
  position: absolute;
  top: -2px;
  left: 3px;
  border-radius: 50%;
}
.search-results.clean > ul .icon-wrapper .type-icon, .search-results.clean .search-results-list .icon-wrapper .type-icon {
  border: 1px solid rgba(0, 0, 0, 0.1);
  background-size: 75%;
  background-repeat: no-repeat;
  z-index: 2;
  filter: invert(1);
}
.search-results.clean > ul .icon-wrapper .type-icon.icon-reg, .search-results.clean .search-results-list .icon-wrapper .type-icon.icon-reg {
  background-position: 5px center;
}
.search-results.clean > ul .icon-wrapper .type-icon.icon-race, .search-results.clean .search-results-list .icon-wrapper .type-icon.icon-race {
  background-position: 2px center;
}
.search-results.clean > ul .icon-wrapper .icon-background, .search-results.clean .search-results-list .icon-wrapper .icon-background {
  z-index: 0;
}
.search-results.clean > ul .icon-wrapper .icon-background.reg, .search-results.clean .search-results-list .icon-wrapper .icon-background.reg {
  background-color: #4CAF50;
}
.search-results.clean > ul .icon-wrapper .icon-background.race, .search-results.clean .search-results-list .icon-wrapper .icon-background.race {
  background-color: #2780e3;
}
.search-results.clean > ul .search-result-content, .search-results.clean .search-results-list .search-result-content {
  flex-grow: 1;
}
.search-results.clean > ul .sport-icon, .search-results.clean .search-results-list .sport-icon {
  float: none;
  position: relative;
}
.search-results.clean > ul .secondary, .search-results.clean .search-results-list .secondary {
  height: 1.45em;
  overflow: hidden;
}
.search-results.clean > ul .name > .hover, .search-results.clean .search-results-list .name > .hover {
  user-select: none;
  text-shadow: -2px -2px white, -2px 2px white, 2px -2px white, 2px 2px white;
  background-size: 1px 1em;
  box-shadow: inset 0 -2px white, inset 0 -3px #efefef;
  display: inline;
  transition: all 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  color: inherit;
}
.search-results.clean > ul .name > .hover.link, .search-results.clean .search-results-list .name > .hover.link {
  color: #1b70cf;
  font-weight: 600;
}
.search-results.clean > ul .name > .hover.link:hover, .search-results.clean .search-results-list .name > .hover.link:hover {
  color: #1160b8;
  box-shadow: inset 0 -2px white, inset 0 -3px #77AFED;
}
.search-results.clean > ul .name > .hover:hover, .search-results.clean .search-results-list .name > .hover:hover {
  color: black;
  box-shadow: inset 0 -2px white, inset 0 -3px #aaa;
}
.search-results.clean > ul .group > ul > li:not(:last-child):before,
.search-results.clean > ul .group > ul .search-result-item:not(:last-child):before,
.search-results.clean > ul .group .search-results-list > li:not(:last-child):before,
.search-results.clean > ul .group .search-results-list .search-result-item:not(:last-child):before, .search-results.clean .search-results-list .group > ul > li:not(:last-child):before,
.search-results.clean .search-results-list .group > ul .search-result-item:not(:last-child):before,
.search-results.clean .search-results-list .group .search-results-list > li:not(:last-child):before,
.search-results.clean .search-results-list .group .search-results-list .search-result-item:not(:last-child):before {
  position: absolute;
  content: "";
  display: block;
  height: 100%;
  width: 4px;
  top: 2em;
  background: #ddd;
  left: calc(1.5em - 4px);
  z-index: -1;
}
.search-results > ul,
.search-results .search-results-list {
  list-style: none;
  margin: 0 auto;
  padding: 0;
}
.search-results > ul > li,
.search-results .search-results-list > li {
  position: relative;
  margin: 0;
  margin-top: 1em;
  margin-bottom: 1em;
  border-bottom: 1px solid #f1f3f8;
}
.search-results > ul > li.panel,
.search-results .search-results-list > li.panel {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 1em;
  margin-bottom: 1em;
}
.search-results > ul > li.sortable,
.search-results .search-results-list > li.sortable {
  padding-left: 1.5rem;
}
.search-results > ul > li.sortable .draghandle,
.search-results .search-results-list > li.sortable .draghandle {
  position: absolute;
  left: 0;
  top: 1rem;
}
.search-results > ul > li.secondary,
.search-results .search-results-list > li.secondary {
  padding: 0 1em;
  border-color: transparent;
  clear: left;
}
.search-results > ul > li .sport-icon,
.search-results .search-results-list > li .sport-icon {
  float: left;
  display: block;
  height: 44px;
  width: 44px;
}
.search-results > ul > li .sport-icon ~ .name,
.search-results .search-results-list > li .sport-icon ~ .name {
  margin-left: 3.6rem;
}
.search-results > ul > li .sport-icon ~ .secondary,
.search-results .search-results-list > li .sport-icon ~ .secondary {
  margin-left: 1em;
  display: inline;
}
.search-results > ul > li.icon,
.search-results .search-results-list > li.icon {
  padding-left: 5em;
}
.search-results > ul > li.icon:before,
.search-results .search-results-list > li.icon:before {
  content: "";
  display: block;
  position: absolute;
  height: 44px;
  width: 44px;
  left: 1em;
  top: 1em;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
}
.search-results > ul > li.icon-32,
.search-results .search-results-list > li.icon-32 {
  padding-left: 4em !important;
}
.search-results > ul > li.icon-32:before,
.search-results > ul > li.icon-32 .z4-icon,
.search-results .search-results-list > li.icon-32:before,
.search-results .search-results-list > li.icon-32 .z4-icon {
  display: block;
  position: absolute;
  border-radius: 0;
  border: none;
  height: 32px;
  width: 32px;
  top: 0.75em;
  left: 1em !important;
  opacity: 0.9;
  background-size: 100%;
}
.search-results > ul > li.disabled,
.search-results .search-results-list > li.disabled {
  pointer-events: none;
  color: #aaa;
  cursor: not-allowed;
}
.search-results > ul > li.disabled .name,
.search-results .search-results-list > li.disabled .name {
  color: #aaa;
}
.search-results > ul.rollover > li:not(.disabled):hover,
.search-results .search-results-list.rollover > li:not(.disabled):hover {
  background-color: #ffe;
  cursor: pointer;
}
.search-results > ul .name,
.search-results .search-results-list .name {
  font-weight: 400;
  font-size: 1.35em;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  color: #333;
}
.search-results > ul .name:link,
.search-results > ul .name > :link:not(.button),
.search-results .search-results-list .name:link,
.search-results .search-results-list .name > :link:not(.button) {
  text-decoration: none;
  color: inherit;
}
.search-results > ul .name.hover:hover,
.search-results .search-results-list .name.hover:hover {
  text-decoration: underline;
}
.search-results > ul .name .prefix,
.search-results .search-results-list .name .prefix {
  color: #666;
  display: inline-block;
  margin-right: 0.5em;
}
.search-results > ul .name.disabled,
.search-results .search-results-list .name.disabled {
  color: #aaa;
  pointer-events: none;
  cursor: not-allowed;
}
.search-results > ul .name.blue,
.search-results .search-results-list .name.blue {
  color: #1b70cf;
}
.search-results > ul .name.blue:hover,
.search-results .search-results-list .name.blue:hover {
  color: #2780e3;
  text-decoration: underline;
}
.search-results > ul .name.light,
.search-results .search-results-list .name.light {
  color: #666;
}
.search-results > ul .name .info-badge,
.search-results .search-results-list .name .info-badge {
  font-size: inherit;
  padding: 0 0.5rem;
}
.search-results > ul .name .faded,
.search-results .search-results-list .name .faded {
  color: #666;
}
.search-results > ul .secondary,
.search-results > ul .actions,
.search-results .search-results-list .secondary,
.search-results .search-results-list .actions {
  font-size: 0.8em;
  line-height: 1.5;
  margin-bottom: 0.25em;
}
.search-results > ul .secondary .info-badge,
.search-results > ul .actions .info-badge,
.search-results .search-results-list .secondary .info-badge,
.search-results .search-results-list .actions .info-badge {
  font-size: 1em;
}
.search-results > ul .secondary .z4-confirm,
.search-results > ul .actions .z4-confirm,
.search-results .search-results-list .secondary .z4-confirm,
.search-results .search-results-list .actions .z4-confirm {
  font-size: 1rem;
}
.search-results > ul .secondary .z4-confirm .button,
.search-results > ul .actions .z4-confirm .button,
.search-results .search-results-list .secondary .z4-confirm .button,
.search-results .search-results-list .actions .z4-confirm .button {
  color: white;
}
.search-results > ul .primary-buttons,
.search-results .search-results-list .primary-buttons {
  background: white;
  position: absolute;
  top: 1em;
  right: 1em;
}
.search-results > ul .primary-buttons .button,
.search-results .search-results-list .primary-buttons .button {
  margin-left: 0.5em;
}
.search-results > ul .actions,
.search-results .search-results-list .actions {
  float: right;
  clear: right;
}
.search-results > ul .actions > a:not(.button),
.search-results .search-results-list .actions > a:not(.button) {
  display: inline-block;
  text-decoration: none;
  color: #666;
  margin: 0 0.25em 0 0;
  padding: 0.25em 0.5em;
  border-radius: 2px;
  transition: 0.1s ease-in-out;
}
.search-results > ul .actions > a:not(.button).destroy,
.search-results .search-results-list .actions > a:not(.button).destroy {
  color: #b40f0f;
}
.search-results > ul .actions > a:not(.button):hover,
.search-results .search-results-list .actions > a:not(.button):hover {
  background-color: rgba(0, 0, 0, 0.15);
}
@media screen and (max-width: 480px) {
  .search-results > ul .actions,
.search-results .search-results-list .actions {
    float: none;
    margin-left: -0.5em;
  }
  .search-results > ul .actions + .secondary,
.search-results .search-results-list .actions + .secondary {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  .search-results > ul .sport-icon ~ .actions,
.search-results .search-results-list .sport-icon ~ .actions {
    margin-left: 3.3rem;
  }
}
.search-results > ul .right,
.search-results .search-results-list .right {
  float: right;
}
.search-results > ul .right.secondary,
.search-results .search-results-list .right.secondary {
  margin-bottom: 0;
  margin-top: 2px;
}
.search-results > ul .right.remove,
.search-results .search-results-list .right.remove {
  position: absolute;
  right: 0;
  top: 25%;
  color: red;
}
.search-results > ul .right.remove:hover,
.search-results .search-results-list .right.remove:hover {
  cursor: pointer;
}
@media screen and (max-width: 480px) {
  .search-results > ul .right,
.search-results .search-results-list .right {
    display: none;
  }
}
.search-results > ul .group,
.search-results .search-results-list .group {
  padding: 0;
  margin-bottom: 1em;
  border-bottom: 0;
  border-top: 0;
}
.search-results > ul .group .group-heading,
.search-results .search-results-list .group .group-heading {
  display: block;
  font-size: 0.8em;
  border-top: 1px solid #ddd;
  background-color: #f1f3f8;
  color: #333;
  font-weight: bold;
  padding: 0.25em 1rem;
}
.search-results > ul {
  margin-top: 1.5em;
}
.search-results > ul > li {
  padding-left: 1em;
  padding-right: 1em;
}
.search-results.slim > ul > li {
  padding-right: 0;
  padding-left: 0;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom-color: transparent;
}
.search-results.slim > ul > li .name {
  font-size: 1.5rem;
}
.search-results .section-heading {
  margin: 1rem 0 0;
  padding: 0.25rem 0.5rem;
  background: #f1f3f8;
  background-image: linear-gradient(to bottom, #f1f3f8, #fafafa);
  border-top: 1px solid #ddd;
  font-size: 0.9rem;
  font-weight: 600;
  color: #666;
}
.search-results .section-heading + ul {
  margin-top: 0;
}
.search-results > h2 + ul {
  margin-top: 0;
}
.search-results .secondary-list {
  margin: 0;
  padding: 0 0 0 0.5rem;
  font-size: 1.25rem;
  list-style: none;
  border-left: 1px solid #ddd;
}
.search-results .secondary-list li {
  margin-top: 0.25rem;
}
.search-results .secondary-list a {
  color: #1b70cf;
  text-decoration: none;
}
.search-results .secondary-list a:link:hover {
  text-decoration: underline;
}
.search-results + .button-bar {
  margin-top: 1em;
}
@media screen and (max-width: 500px) {
  .search-results.homepage-search .secondary.right,
.search-results.homepage-search .secondary.left {
    display: block;
    float: none;
    margin-left: 4.5em;
  }
}

.search-results .icon.pencil-icon:before {
  background-image: url("/zimg/icon/pencil.svg");
}
.search-results .icon.cake-icon:before {
  background-image: url("/zimg/icon/cake.svg");
}
.search-results .icon.clean-icon:before {
  background-image: url("/zimg/icon/clean.svg");
}
.search-results .icon.photo-icon:before {
  background-image: url("/zimg/icon/photo.svg");
}
.search-results .icon.import-icon:before {
  background-image: url("/zimg/icon/import.svg");
}
.search-results .icon.upload-icon:before {
  background-image: url("/zimg/icon/upload.svg");
}
.search-results .icon.push-icon:before {
  background-image: url("/zimg/icon/push.svg");
}
.search-results .icon.club-icon:before {
  background-image: url("/zimg/icon/secondary/noun_stack_1155175.svg");
}
.search-results .icon.form-icon:before {
  background-image: url("/zimg/icon/noun_form_576491_1A1A1A.svg");
}
.search-results .icon.membership-icon:before {
  background-image: url("/zimg/icon/noun_group_2022047_1A1A1A.svg");
}
.search-results .icon.race-icon:before {
  background-image: url("/zimg/noun_Stopwatch_1825067_000000.svg");
}
.search-results .icon.keypad-icon:before {
  background-image: url("/zimg/icon/noun_Keypad_445538_1A1A1A.svg");
}
.search-results .icon.creditcard-icon:before {
  background-image: url("/zimg/icon/noun_credit cards_942014_1A1A1A.svg");
}
.search-results .icon.server-icon:before {
  background-image: url("/zimg/icon/noun_Computing server_1847860_1A1A1A.svg");
}
.search-results .icon.user-icon:before {
  background-image: url("/zimg/icon/noun_User_438325_1A1A1A.svg");
}
.search-results .icon.email-icon:before {
  background-image: url("/zimg/icon/streamline-send-email.svg");
}
.search-results .icon.website-icon:before {
  background-image: url("/zimg/icon/website.png");
}
.search-results .icon.keyhole-icon:before {
  background-image: url("/zimg/icon/keyhole.png");
}
.search-results .icon.cart-icon:before {
  background-image: url("/zimg/icon/noun_cart_2032310_1A1A1A.svg");
}
.search-results .icon.graph-icon:before {
  background-image: url("/zimg/icon/streamline-analytics-graph-bar.svg");
}
.search-results .icon.page-icon:before {
  background-image: url("/zimg/icon/noun_page_1275159_1A1A1A.svg");
}
.search-results .icon.checkmark-icon:before {
  background-image: url("/zimg/icon/noun_checkmark_569906_1A1A1A.svg");
}
.search-results .icon.box-icon:before {
  background-image: url("/zimg/box.svg");
}
.search-results .icon.gochip-icon:before {
  background-image: url("/zimg/gologo.svg");
}
.search-results .icon.pickaxe-icon:before {
  background-image: url("/zimg/icon/noun_Pickaxe_1647587_1A1A1A.svg");
}
.search-results .icon.calendar-icon:before {
  background-image: url("/zimg/icon/noun_appointment_1040930_1A1A1A.svg");
}
.search-results .icon.people-search-icon:before {
  background-image: url("/zimg/icon/noun_Job Search_2041555_1A1A1A.svg");
}
.search-results .icon.table-icon:before {
  background-image: url("/zimg/icon/noun_Table_205329_1A1A1A.svg");
}
.search-results .icon.broken-heart-icon:before {
  background-image: url("/zimg/icon/noun_broken_1917986_1A1A1A.svg");
}
.search-results .icon.email-icon:before {
  background-image: url("/zimg/noun_send email_727624_000000.svg");
}
.search-results .icon.changelog-icon:before {
  background-image: url("/zimg/icon/noun_change_562280_000000.svg");
}
.search-results .icon.socket-icon:before {
  background-image: url("/zimg/icon/noun_power socket_1571195_000000.svg");
}
.search-results .icon.style-icon:before {
  background-image: url("/zimg/icon/noun_Stylish Woman_1495528_000000.svg");
}
.search-results .icon.help-icon:before {
  background-image: url("/zimg/icon/noun_help_2302541_000000.svg");
}
.search-results .icon.radio-icon:before {
  background-image: url("/zimg/icon/noun_Radio_1458883_000000.svg");
}
.search-results .icon.podium-icon:before {
  background-image: url("/zimg/icon/noun_Podium_147113.svg");
}
.search-results .icon.invoice-icon:before {
  background-image: url("/zimg/icon/noun_invoice_2262415.svg");
}

.secondary {
  font-size: 0.9em;
  font-weight: 400;
  color: #333;
}
.secondary.one-line {
  height: 19px;
  overflow: hidden;
}
.secondary > span,
.secondary > a,
.secondary .secondary-item {
  margin-right: 0.8em;
  display: inline-block;
}
.secondary > span.right,
.secondary > a.right,
.secondary .secondary-item.right {
  margin-right: 0;
  margin-left: 0.8rem;
}
.secondary.flex {
  display: flex;
  flex-direction: row;
}
.secondary.flex .left {
  flex-grow: 1;
  float: none;
}
.secondary.flex .right {
  flex-grow: 0;
  float: none;
}
.secondary.flex .light {
  color: #666;
}
.secondary .link:not(.action) {
  color: inherit;
  font-weight: inherit;
  text-decoration: none;
  text-shadow: -1px -1px white, -1px 1px white, 1px -1px white, 1px 1px white;
  background-size: 1px 1em;
  box-shadow: inset 0 -2px white, inset 0 -3px #ddd;
  display: inline;
  transition: all 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  color: inherit;
}
.secondary .link:not(.action):hover {
  color: black;
  box-shadow: inset 0 -2px white, inset 0 -3px #666;
}
.secondary .show-icon {
  display: inline-block;
  position: relative;
  padding-left: 1.4em;
  cursor: default;
}
.secondary .show-icon:before,
.secondary .show-icon .z4-icon {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 1px;
  height: 1.25em;
  width: 1.25em;
  background-size: 90%;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.4;
}
.secondary .show-icon.icon-date:before {
  background-image: url("/zimg/icon/secondary/noun_date_1195535.svg");
}
.secondary .show-icon.icon-organization:before {
  background-image: url("/zimg/icon/secondary/noun_stack_1155175.svg");
}
.secondary .show-icon.icon-location:before {
  background-image: url("/zimg/icon/secondary/noun_Location_1826481.svg");
}
.secondary .show-icon.icon-race:before {
  background-image: url("/zimg/icon/secondary/noun_Stopwatch_2788846.svg");
}
.secondary .show-icon.icon-pb:before {
  background-image: url("/zimg/icon/secondary/noun_Megaphone_71464.svg");
}
.secondary .info-badge.danger {
  background: transparent;
  color: #c11;
  font-weight: bold;
}

.expandable {
  height: 100%;
  position: relative;
}
.expandable .expander {
  display: none;
}
.expandable > ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.expandable > ul > li {
  display: inline-block;
}
.expandable > .button {
  margin-left: auto;
  margin-right: 0;
  transition: none;
}
.expandable > .button.menu:before {
  background-image: none;
  content: "≡";
  color: white;
  margin-right: 10px;
  font-size: 200%;
  height: 15px;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .expandable {
    transition: background-color 250ms cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  .expandable .expander {
    display: block;
  }
  .expandable > ul {
    overflow: hidden;
    max-height: 0;
    transition: max-height 250ms cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  .expandable.expanded {
    background: rgba(255, 255, 255, 0.25);
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
  }
  .expandable.expanded .expander {
    margin-right: 1.25em;
    margin-bottom: 0.75em;
  }
  .expandable.expanded > ul {
    clear: both;
    display: block;
    max-height: 400px;
  }
  .expandable.expanded > ul > li {
    display: list-item;
  }
  .expandable.expanded > ul > li.primary {
    float: none !important;
  }
  .expandable.expanded > ul .button {
    display: block;
    padding-top: 1em;
    padding-bottom: 1em;
    margin: 0 0 0 -1em;
    border: none !important;
  }
}

.site-search {
  max-width: 480px;
  padding: 2em 1em 1em 1em;
  margin: 0 auto;
}
.site-search.even-padding {
  padding: 1em 1em 1em 1em;
}
@media screen and (max-width: 500px) {
  .site-search.even-padding {
    padding: 0;
  }
}

.page-search {
  padding: 2em 1em 1em;
}
.page-search.content-section {
  padding-left: 0;
  padding-right: 0;
}
.page-search .search-container {
  max-width: 480px;
}
.page-search .page-action {
  float: right;
}
.page-search.small {
  float: left;
  padding: 0;
  font-size: 0.9em;
}
.page-search.small .searchfield {
  padding: 0.55em;
}

@media screen and (max-width: 500px) {
  .site-search,
.page-search {
    display: flex;
    flex-direction: column-reverse;
  }
  .site-search .button,
.page-search .button {
    float: none;
    display: block;
    width: 100%;
    margin: 0.5em 0;
    position: static;
    text-align: center;
    font-size: 1rem;
  }
}

.narrow > .page-search,
.narrowest > .site-search {
  padding-left: 0;
  padding-right: 0;
}

.search-container {
  position: relative;
}
.search-container .search-results-dropdown {
  position: absolute;
  z-index: 1;
  width: 100%;
  visibility: hidden;
}
.search-container .search-results-dropdown.expanded {
  visibility: visible;
}
.search-container .search-results-dropdown.expanded .search-results-background {
  visibility: visible;
  max-height: 320px;
}
.search-container .search-results-background {
  position: relative;
  top: -2px;
  padding-top: 1px;
  background: #fafafa;
  border: 1px solid #ccc;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.25);
  max-height: 0;
  overflow: auto;
  transition: max-height 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.search-container .search-results-list {
  list-style: none;
  padding: 1em 0;
  margin: 0;
}
.search-container .search-results-list > li {
  padding: 0;
  margin: 0;
}
.search-container .search-results-list > li > a {
  padding: 0.25em 1em;
  display: block;
  text-decoration: none;
  color: #1160b8;
}
.search-container .search-results-list > li > a:hover {
  background: #f1f3f8;
}
.search-container .search-results-list > li .name {
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  font: inherit;
}
.search-container .search-results-list > li .prefix {
  display: inline-block;
  padding-right: 1em;
  color: #666;
  width: 5em;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}
.search-container .empty-message {
  padding: 2em 1em;
  margin: 0;
  color: #666;
  font-style: italic;
  text-align: center;
}
.search-container .searchfield {
  color: #666;
  border-radius: 2px;
  outline: none;
  border: 1px solid #aaa;
  transition: border-color 0.1s ease-in-out, box-shadow 0.1s ease-in-out;
  padding: 0.5em;
  font-size: 1em;
  width: 100%;
  background: white;
  position: relative;
  z-index: 5;
}
.search-container .searchfield:focus,
.search-container .searchfield .focus {
  border: 1px solid #2780e3;
  outline: none;
  box-shadow: 0 0 6px -2px #2780e3;
}
.search-container .searchfield .overflow-menu {
  float: left;
  border-right: 1px solid #ddd;
}
.search-container .searchfield .overflow-menu .trigger {
  width: 120px;
}
.search-container .searchfield .overflow-menu + .wrapped {
  position: relative;
  padding-left: 0.5em;
  width: calc(100% - 121px);
}
.search-container .searchfield .wrapped {
  margin: 0;
  padding: 0;
  font: inherit;
  border: none;
  outline: none;
  width: 100%;
}
.search-container .searchbutton {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  font-size: 1em;
  width: 3em;
  padding: 0 1em;
  border: 1px solid #2780e3;
  background-color: #6ba8ec;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICBpZD0ic3ZnMiIKICAgdmlld0JveD0iMCAwIDE2LjYwMDQxOCAxNi44MjMwNzQiCiAgIGhlaWdodD0iMTYuODIzMDc0IgogICB3aWR0aD0iMTYuNjAwNDE4Ij4KICA8ZGVmcwogICAgIGlkPSJkZWZzNCIgLz4KICA8bWV0YWRhdGEKICAgICBpZD0ibWV0YWRhdGE3Ij4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICAgIDxkYzp0aXRsZT48L2RjOnRpdGxlPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZwogICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xLjk3NDYwOTQsLTEwMzMuODA5NSkiCiAgICAgaWQ9ImxheWVyMSI+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGg0MTM4IgogICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCwxMDMyLjM2MjIpIgogICAgICAgZD0ibSA4LjAwNTg1OTQsMS40NDcyNjU2IGMgLTMuMzE5MTM0OSwwIC02LjAzMTI1LDIuNzEyMTUgLTYuMDMxMjUsNi4wMzEyNSAwLDMuMzE5MjAwNCAyLjcxMjExNTEsNi4wMzEyNTA0IDYuMDMxMjUsNi4wMzEyNTA0IDEuMjQzMTI2MywwIDIuNDAxMDUxNiwtMC4zODA5NjIgMy4zNjMyODE2LC0xLjAzMTI1IGwgNS40ODQzNzUsNS40ODQzNzUgYSAxLjAwMDEsMS4wMDAxIDAgMSAwIDEuNDE0MDYyLC0xLjQxNDA2MyBsIC01LjQ1MzEyNSwtNS40NTMxMjUgYyAwLjc2MzE0NywtMS4wMTAzNDYgMS4yMjI2NTYsLTIuMjU5ODI4MiAxLjIyMjY1NiwtMy42MTcxODc0IDAsLTMuMzE5MSAtMi43MTIxMTUsLTYuMDMxMjUgLTYuMDMxMjQ5NiwtNi4wMzEyNSB6IG0gMCwyIGMgMi4yMzgyNTQ2LDAgNC4wMzEyNDk2LDEuNzkzMDUgNC4wMzEyNDk2LDQuMDMxMjUgMCwyLjIzODMgLTEuNzkyOTk1LDQuMDMxMjUwNCAtNC4wMzEyNDk2LDQuMDMxMjUwNCAtMi4yMzgyNTQ3LDAgLTQuMDMxMjUsLTEuNzkyOTUwNCAtNC4wMzEyNSwtNC4wMzEyNTA0IDAsLTIuMjM4MiAxLjc5Mjk5NTMsLTQuMDMxMjUgNC4wMzEyNSwtNC4wMzEyNSB6IgogICAgICAgc3R5bGU9ImNvbG9yOiMwMDAwMDA7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHJldGNoOm5vcm1hbDtmb250LXNpemU6bWVkaXVtO2xpbmUtaGVpZ2h0Om5vcm1hbDtmb250LWZhbWlseTpzYW5zLXNlcmlmO3RleHQtaW5kZW50OjA7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LWRlY29yYXRpb246bm9uZTt0ZXh0LWRlY29yYXRpb24tbGluZTpub25lO3RleHQtZGVjb3JhdGlvbi1zdHlsZTpzb2xpZDt0ZXh0LWRlY29yYXRpb24tY29sb3I6IzAwMDAwMDtsZXR0ZXItc3BhY2luZzpub3JtYWw7d29yZC1zcGFjaW5nOm5vcm1hbDt0ZXh0LXRyYW5zZm9ybTpub25lO2RpcmVjdGlvbjpsdHI7YmxvY2stcHJvZ3Jlc3Npb246dGI7d3JpdGluZy1tb2RlOmxyLXRiO2Jhc2VsaW5lLXNoaWZ0OmJhc2VsaW5lO3RleHQtYW5jaG9yOnN0YXJ0O3doaXRlLXNwYWNlOm5vcm1hbDtjbGlwLXJ1bGU6bm9uemVybztkaXNwbGF5OmlubGluZTtvdmVyZmxvdzp2aXNpYmxlO3Zpc2liaWxpdHk6dmlzaWJsZTtvcGFjaXR5OjE7aXNvbGF0aW9uOmF1dG87bWl4LWJsZW5kLW1vZGU6bm9ybWFsO2NvbG9yLWludGVycG9sYXRpb246c1JHQjtjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM6bGluZWFyUkdCO3NvbGlkLWNvbG9yOiMwMDAwMDA7c29saWQtb3BhY2l0eToxO2ZpbGw6I2ZmZmZmZjtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6MjtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLWRhc2hvZmZzZXQ6MDtzdHJva2Utb3BhY2l0eToxO2NvbG9yLXJlbmRlcmluZzphdXRvO2ltYWdlLXJlbmRlcmluZzphdXRvO3NoYXBlLXJlbmRlcmluZzphdXRvO3RleHQtcmVuZGVyaW5nOmF1dG87ZW5hYmxlLWJhY2tncm91bmQ6YWNjdW11bGF0ZSIgLz4KICA8L2c+Cjwvc3ZnPgo=");
  background-size: 1em;
  background-position: center;
  color: white;
  background-repeat: no-repeat;
  cursor: pointer;
  transition: background-color 0.2s ease-in-out;
  border-bottom-right-radius: 2px;
  border-top-right-radius: 2px;
  border-left-color: transparent;
  z-index: 6;
}
.search-container .searchbutton:hover {
  background-color: #2780e3;
}
.search-container .searchfield:focus + .searchbutton {
  border-left-color: #2780e3;
}

.site-search,
.page-search {
  position: relative;
}
.site-search.spinning .searchbutton,
.page-search.spinning .searchbutton {
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHdpZHRoPScyMHB4JyBoZWlnaHQ9JzIwcHgnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIiBjbGFzcz0idWlsLXJpbmciPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBmaWxsPSJub25lIiBjbGFzcz0iYmsiPjwvcmVjdD48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI0NCIgc3Ryb2tlLWRhc2hhcnJheT0iMTg2LjYxMDYwMzYyMzIzMzcxIDg5Ljg0OTU0OTg5MjY2ODA1IiBzdHJva2U9IiNmZmZmZmYiIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iMTIiPjxhbmltYXRlVHJhbnNmb3JtIGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0icm90YXRlIiB2YWx1ZXM9IjAgNTAgNTA7MTgwIDUwIDUwOzM2MCA1MCA1MDsiIGtleVRpbWVzPSIwOzAuNTsxIiBkdXI9IjFzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgYmVnaW49IjBzIj48L2FuaW1hdGVUcmFuc2Zvcm0+PC9jaXJjbGU+PC9zdmc+");
}
.site-search .refinements,
.page-search .refinements {
  padding: 0.25em 0;
  font-size: 0.9em;
  white-space: nowrap;
  overflow: hidden;
}
.site-search .refinements label,
.page-search .refinements label {
  margin-right: 1em;
}
.site-search .refinements .label,
.page-search .refinements .label {
  color: #666;
}
.site-search .refinements.exclusive,
.page-search .refinements.exclusive {
  font-size: 0.8rem;
}
.site-search .refinements .exclusive-filter,
.page-search .refinements .exclusive-filter {
  display: inline-block;
  margin: 0 0.5em;
  font-weight: 600;
  color: #1160b8;
}
.site-search .filters,
.page-search .filters {
  list-style: none;
  margin: 0.25em;
  padding: 0;
  font-size: 0.8rem;
  color: #666;
  min-height: 1rem;
}
.site-search .filters > li,
.page-search .filters > li {
  display: inline-block;
  margin-right: 0.25em;
}
.site-search .filters > li a,
.page-search .filters > li a {
  color: inherit;
  display: inline-block;
  padding: 0.25em 0.5em;
  text-decoration: none;
  transition: background-color 0.2s ease-in-out;
}
.site-search .filters > li a:hover,
.page-search .filters > li a:hover {
  color: #2780e3;
  background-color: rgba(0, 0, 0, 0.15);
}
.site-search .filters > li.active,
.page-search .filters > li.active {
  color: #333;
  font-weight: bold;
}
.site-search .filter-toggle,
.page-search .filter-toggle {
  position: absolute;
  right: 3.5rem;
  top: 0.15rem;
  z-index: 10;
  font-size: 1.5rem;
  color: #666;
  text-decoration: none;
  transition: color 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.site-search .filter-toggle:hover,
.page-search .filter-toggle:hover {
  color: black;
}

.z4-tag-ui .tag {
  display: inline-block;
  white-space: nowrap;
  padding: 0.25em 0.5em;
  font-size: 0.9em;
  background: #ddd;
  text-decoration: none;
  border-radius: 3px;
  margin: 0 0.25em;
  color: black;
}
.z4-tag-ui .tag.right {
  margin-right: 0;
}
.z4-tag-ui .tag.selected {
  background: #1b70cf;
  color: white;
}

.narrowest .search-results-list > li,
.narrowest.search-results-list > li {
  padding-left: 0;
  padding-right: 0;
}

.content-section.narrow > .search-results.clean > .search-results-list > li,
.content-section.narrowest > .search-results.clean > .search-results-list > li {
  padding-left: 0;
  padding-right: 0;
}

.collapsible-content .page-search {
  padding: 0;
}

h1, h2, h3, h4 {
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 300;
  color: #666;
  margin: 1em 0 0.25em 0;
  cursor: default;
  position: relative;
  user-select: none;
}
h1 .prefix, h2 .prefix, h3 .prefix, h4 .prefix {
  color: #aaa;
}

h1 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 300;
  font-size: 2.5rem;
  margin-top: 1em;
  color: #333;
  position: relative;
  font-weight: 600;
}
@media screen and (max-width: 480px) {
  h1 {
    font-size: 2rem;
    margin-top: 0.5em;
  }
}
h1 a {
  color: inherit;
  font: inherit;
  text-decoration: inherit;
  border-bottom: 1px solid transparent;
  transition: border-color 0.15s ease-in-out;
}
h1.heavy {
  font-weight: 900;
  font-size: 3rem;
  margin-top: 0.5em;
}
h1.wrap {
  white-space: normal;
}
h1 .weak {
  color: #666;
  weight: 400;
}
@media screen and (max-width: 960px) {
  h1 .weak {
    font-size: 0.9rem;
    display: block;
    font-weight: 600;
    margin-bottom: -0.2rem;
  }
}
h1 .button {
  position: absolute;
  bottom: 0.5rem;
  right: 0;
}
@media screen and (max-width: 480px) {
  h1 .button {
    position: relative;
  }
}
h1.promo {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  font-size: 3em;
  font-weight: 300;
  white-space: normal;
  overflow: visible;
}
@media screen and (max-width: 480px) {
  h1.promo {
    margin-top: 1em;
    margin-bottom: 0.5em;
  }
}
h1 + .sub-heading {
  font-size: 1.4em;
  color: #666;
  line-height: 150%;
  margin-top: 0;
}
h1 + .sub-heading small {
  display: block;
}
h1 + .secondary {
  display: block;
  font-size: 0.9rem;
  font-weight: 600;
  color: #aaa;
  margin-top: -0.5rem;
}
h1 + .secondary .secondary-item {
  display: inline-block;
  margin-right: 1rem;
  text-decoration: none;
}
h1 + .secondary .secondary-item:link, h1 + .secondary .secondary-item:visited {
  color: #666;
}
h1 + .secondary .secondary-item:link:hover {
  color: #2780e3;
  text-decoration: underline;
}
h1 + .secondary .secondary-item .icon {
  display: inline-block;
  margin-right: 0.25em;
  position: relative;
  height: 1.5em;
  width: 1.5em;
  bottom: -0.4em;
  background-size: 100%;
  opacity: 0.25;
}
@media screen and (max-width: 480px) {
  h1 + .secondary .secondary-item .icon + span {
    display: none;
  }
}

h2 {
  font-size: 2.5rem;
  font-weight: 200;
  position: relative;
  color: #333;
  font-size: 2rem;
  font-weight: 900;
  margin-top: 1em;
  margin-bottom: 0.5em;
}
h2.wrap {
  white-space: normal;
}
h2 > a:not(.button) {
  color: inherit;
  font-weight: inherit;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 0.15s ease-in-out;
}
h2 > a:not(.button):hover {
  border-bottom-color: #2780e3;
}
h2 > .button {
  position: absolute;
  right: 0;
  top: 0.3em;
}
h2 > .button.light {
  background: #fafafa;
}
h2 .overflow-menu .button {
  position: static;
}
h2.has-icon {
  padding-left: 3.5rem;
  position: relative;
}
h2.has-icon .z4-icon,
h2.has-icon .icon-background {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  width: 2.5rem;
  height: 2.5rem;
  background-size: 100%;
}
h2 .subtitle {
  color: #666;
  font-size: 1.2rem;
}
h2.underlined {
  border-bottom: 1px solid #ddd;
  margin-bottom: 1em;
}
h2.strong,
h2 strong {
  font-weight: 900;
}
h2.strong {
  font-size: 2em;
  font-weight: 900;
  border-bottom: 1px solid #ddd;
  margin-top: 3em;
  margin-bottom: 1em;
}
h2.weak,
h2 .weak {
  font-weight: 300;
}
h2 + .secondary {
  font-size: 0.9em;
  color: #333;
  font-weight: 400;
  line-height: 1.5;
}
h2 + .secondary .show-icon .z4-icon {
  display: block;
  position: absolute;
  left: 0;
  top: 1px;
  height: 1.25em;
  width: 1.25em;
  background-size: 90%;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.4;
}
h2.theme-color {
  color: #333;
}
h2.theme-color.has-icon {
  padding-left: 4rem;
}
h2.theme-color .icon-background,
h2.theme-color .z4-icon {
  border-radius: 50%;
  height: 3rem;
  width: 3rem;
  background-size: 60%;
  background-position: center center;
  background-repeat: no-repeat;
  top: -6px;
}
h2.theme-color .icon-background + .z4-icon {
  filter: invert(1);
}
h2.theme-color .z4-icon.icon-reg {
  background-position: 13px center;
}
h2.theme-color .z4-icon.icon-race {
  background-position: 8px center;
}
h2.theme-color .z4-icon.icon-event {
  background-position: 8px center;
}
h2.theme-color.grey .icon-background {
  background: #666;
}
h2.theme-color.green .icon-background {
  background: #4CAF50;
}
h2.theme-color.blue .icon-background {
  background: #2780e3;
}
h2.theme-color.orange .icon-background {
  background: #F5A623;
}
h2.theme-color.purple .icon-background {
  background: #8e44ad;
}

h3 {
  font-weight: 400;
  font-size: 1.2em;
}
h3.bright {
  color: #2780e3;
}
h3.underlined {
  border-bottom: 1px solid #ddd;
}

h4 {
  font-size: 1em;
  font-weight: 600;
}

.page-tabs {
  margin: 0;
  overflow: hidden;
  position: relative;
  bottom: -5px;
  font-size: 0.8em;
  font-weight: 600;
  color: #666;
}
.page-tabs.content-section > ul > li.active:first-child:after {
  left: -1px;
}
.page-tabs > ul {
  margin: 0.5em 0 0 0;
  padding: 0;
  list-style: none;
  white-space: nowrap;
  overflow: hidden;
}
.page-tabs > ul > li {
  position: relative;
  z-index: 9;
  display: inline-block;
  border: 1px solid transparent;
}
@media screen and (min-width: 480px) {
  .page-tabs > ul > li.only-phone {
    display: none;
  }
}
.page-tabs > ul > li.active {
  background: white;
  border: 1px solid #ccc;
  border-bottom: none;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  box-shadow: 0px 0px 16px -2px rgba(0, 0, 0, 0.25);
  color: #000;
}
.page-tabs > ul > li.active:after {
  content: "";
  position: absolute;
  width: calc(100% + 2px);
  height: 5px;
  bottom: -1px;
  left: -1px;
  background: white;
  z-index: 10;
}
.page-tabs > ul > li.active:first-child:after {
  left: 0;
}
.page-tabs > ul > li.active > a {
  border-top: 3px solid #2780e3;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}
.page-tabs > ul > li:not(.active) a:hover {
  text-decoration: underline;
}
.page-tabs > ul > li > a {
  display: inline-block;
  padding: 0.3rem 2rem 0.7rem 2rem;
  text-decoration: none;
  color: inherit;
  transition: color 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.page-tabs > ul > li > a:hover {
  color: #000;
  text-decoration: none !important;
}
.page-tabs + .page-content,
.page-tabs + .content-section {
  margin-top: 0;
}
.page-tabs + .content-section {
  box-shadow: 0 0 6px -2px rgba(0, 0, 0, 0.5);
  min-height: 100px;
  position: relative;
}
.page-tabs + .content-section:after {
  content: "";
  display: block;
  position: absolute;
  height: 4px;
  background: white;
  width: 100%;
  bottom: -3px;
  left: 0;
}
.page-tabs + .tab-content {
  margin-top: 0;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.page-tabs + .tab-content.no-border {
  border-right: none;
  border-left: none;
  border-bottom: none;
  border-radius: 0;
  box-shadow: none;
}
.page-tabs + .tab-content > .table-scroller {
  margin: 0.5em;
}
.page-tabs + .tab-content > .content-section {
  margin-left: 1em;
  margin-right: 1em;
  padding-bottom: 4em;
}
.page-tabs + .tab-content > .content-section.narrow {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 480px) {
  .page-tabs > ul > li > a {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.overlay {
  position: fixed;
  height: 100vh;
  width: 100vw;
  z-index: 99999;
  transition: background-color 0.2s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
}
.overlay.white {
  background-color: rgba(255, 255, 255, 0.6);
}
.overlay:before {
  max-width: 50%;
  align-self: flex-start;
}
.overlay:after {
  max-width: 50%;
  align-self: flex-end;
}

body > .overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 99999;
  top: 0;
  transition: background-color 50ms ease-in-out;
  background-color: rgba(0, 0, 0, 0);
}
body > .overlay.white {
  background-color: rgba(255, 255, 255, 0.75);
}
body > .overlay.black {
  background-color: rgba(0, 0, 0, 0.75);
}
body > .overlay .error-panel {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #c11;
  width: 100%;
  padding: 0 1rem 1rem 1rem;
  overflow: hidden;
  max-height: 0;
  transition: max-height 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.35);
  border-top: 1px solid #b40f0f;
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 3px;
  color: white;
  font-size: 0.9rem;
}
body > .overlay .error-panel.success {
  background: #4CAF50;
}
body > .overlay .error-panel.showing {
  max-height: 100px;
}
body > .overlay .error-panel .button {
  margin-top: 1rem;
}
body > .overlay > .modal-content {
  position: fixed;
  width: 400px;
  max-height: 680px;
  margin-left: -200px;
  left: 50%;
  top: 100px;
  overflow-x: hidden;
  overflow-y: auto;
  background-color: #fff;
  border-radius: 4px;
  border: 0 solid transparent;
  box-shadow: 0 0 80px rgba(0, 0, 0, 0.25), 0 0 8px rgba(0, 0, 0, 0.3);
  padding: 0.5em;
  transition: all 200ms cubic-bezier(0.755, 0.05, 0.855, 0.06);
}
body > .overlay > .modal-content.transition-in {
  opacity: 1;
  transition: none;
}
body > .overlay > .modal-content.transition-ended {
  clip-path: none;
  opacity: 1;
}
body > .overlay > .modal-content > .close-button {
  position: relative;
  float: right;
  font-size: 24px;
  color: #aaa;
  width: 30px;
  text-align: center;
  height: 30px;
  line-height: 26px;
  z-index: 1;
}
body > .overlay > .modal-content > .close-button:hover {
  color: #c11;
}
body > .overlay > .modal-content.centered {
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
}
body > .overlay > .modal-content.info, body > .overlay > .modal-content.warning {
  top: auto;
  height: auto;
  transition: all 100ms cubic-bezier(0.215, 0.61, 0.355, 1);
}
body > .overlay > .modal-content.info.transition-ended, body > .overlay > .modal-content.warning.transition-ended {
  opacity: 1;
}
body > .overlay > .modal-content.info .button:not(.no-border), body > .overlay > .modal-content.warning .button:not(.no-border) {
  border: 1px solid rgba(0, 0, 0, 0.25);
}
body > .overlay > .modal-content.info h3, body > .overlay > .modal-content.warning h3 {
  color: white;
}
body > .overlay > .modal-content.info {
  background-color: #2780e3;
  border: 1px solid rgba(0, 0, 0, 0.15);
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
body > .overlay > .modal-content.info h3 {
  color: #ffe;
}
body > .overlay > .modal-content.info p {
  color: white;
}
body > .overlay > .modal-content.info p a {
  color: #ffa;
  font-weight: 600;
}
body > .overlay > .modal-content.warning {
  background-color: #c11;
}
body > .overlay > .modal-content.warning h3 {
  color: #ffe;
}
body > .overlay > .modal-content.warning p {
  color: white;
}
body > .overlay > .modal-content.warning p a {
  color: #ffa;
  font-weight: 600;
}
@media screen and (max-height: 740px) {
  body > .overlay > .modal-content {
    top: 0;
    height: 100%;
  }
}
@media screen and (max-width: 480px) {
  body > .overlay > .modal-content {
    margin: 0;
    left: 0;
    width: 100%;
  }
}
body > .overlay > .modal-content.large {
  width: 720px;
  margin-left: -360px;
  height: 640px;
  padding: 0;
}
@media screen and (max-height: 740px) {
  body > .overlay > .modal-content.large {
    height: auto;
    top: 2em;
    bottom: 2em;
  }
}
@media screen and (max-width: 720px) {
  body > .overlay > .modal-content.large {
    height: auto;
    max-height: none;
    width: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: 0;
  }
}
body > .overlay > .modal-content.nopadding {
  padding: 0;
  background: #f1f3f8;
  overflow: visible;
}
body > .overlay > .modal-content > div {
  position: relative;
}
body > .overlay > .modal-content > div .modal-title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  height: 40px;
  background: #fff;
}
body > .overlay > .modal-content > div .modal-title + div {
  padding-top: 50px;
}
body > .overlay > .modal-content .modal-loading {
  position: absolute;
  height: 100%;
  width: 100%;
  background: #f1f3f8;
  z-index: 99;
  display: flex;
  align-items: center;
  justify-content: center;
}
body > .overlay > .modal-content .modal-loading .progress-wrapper {
  width: 480px;
}
body > .overlay > .modal-content .modal-loading .progress-wrapper p {
  text-align: center;
  font-size: 1.5em;
  color: #666;
}
body > .overlay > .modal-content .modal-loading .progress-wrapper progress {
  width: 100%;
}

.modal-content .h2 {
  font-size: 2em;
  font-weight: 300;
  padding: 0;
  margin: 0;
  background: none;
  border-bottom: 1px solid #f1f3f8;
  margin-bottom: 0.5em;
  position: relative;
  z-index: -1;
}
.modal-content .alert {
  margin-left: 1rem;
  margin-right: 1rem;
}
.modal-content .padded {
  margin: 0 1rem;
}
.modal-content .padded .alert {
  margin-left: 0;
  margin-right: 0;
}
.modal-content .padded .alert.help {
  padding-left: 0;
  padding-right: 0;
}
.modal-content > .help {
  margin: 1rem auto;
  font-size: 0.9em;
  color: #666;
}
.modal-content > .help > p {
  line-height: 125%;
}
.modal-content .content-section.padded {
  margin: 1em auto 0;
}

.modal-title {
  position: relative;
  padding: 1em;
  font-size: 1em;
  color: white;
  height: 3.5em;
  background-image: linear-gradient(to right, #666, gray);
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  overflow: hidden;
  margin-left: -1px;
  margin-right: -1px;
  display: flex;
  flex-direction: row;
}
.modal-title .close-button {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 4em;
  clip-path: polygon(20% 0%, 100% 0, 100% 100%, 0% 100%);
  text-decoration: none;
  z-index: 3;
  transition: all 0.1s linear;
  color: white;
  padding: 1em 1em 1em 2em;
  background-color: #666;
  font-weight: bold;
}
.modal-title .close-button:hover {
  background: #595959;
  color: #fff;
}
.modal-title .modal-title-buttons-container {
  position: absolute;
  right: 3rem;
  top: 0;
  padding: 1em;
  display: flex;
  z-index: 10;
}
.modal-title .modal-title-buttons-container .modal-title-button {
  height: 1rem;
  width: 1rem;
  display: block;
  background-size: 100%;
  background-repeat: no-repeat;
}
.modal-title .modal-title-buttons-container .icon-expand {
  background-image: url("/zimg/icon/noun_expanding_1947992.svg");
}
.modal-title h2 {
  margin-top: 0;
  margin-bottom: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: inherit;
  color: inherit;
  font-weight: 600;
  display: inline-block;
}
.modal-title .modal-tabs > ul {
  display: flex;
  flex-direction: row;
  margin: -0.4em 0 0 1em;
  padding: 0;
  flex-direction: row;
  list-style: none;
}
.modal-title .modal-tabs > ul > li {
  margin: 0 0.1em;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  overflow: hidden;
}
.modal-title .modal-tabs > ul > li > a {
  margin: 0;
  color: inherit;
  padding: 0.5em 1em 1em;
  text-decoration: none;
  font-weight: bold;
  font-size: 0.9rem;
  display: block;
}
.modal-title .modal-tabs > ul > li.active {
  background: white;
  color: #1160b8;
}

.modal-content.nopadding .modal-title.has-tabs + .content-scroller {
  overflow: hidden;
}
.modal-content.nopadding .modal-title.has-tabs + .content-scroller .tab-scroller,
.modal-content.nopadding .modal-title.has-tabs + .content-scroller .tab-scroller .left-panel,
.modal-content.nopadding .modal-title.has-tabs + .content-scroller .tab-scroller .right-panel {
  height: 100%;
  overflow: auto;
}

.modal-content.nopadding {
  overflow: visible;
}
.modal-content.nopadding .content-scroller,
.modal-content.nopadding .tabbed {
  bottom: 4em;
  top: 3em;
  left: -1px;
  right: -1px;
  position: absolute;
}
@media screen and (max-width: 500px) {
  .modal-content.nopadding .content-scroller,
.modal-content.nopadding .tabbed {
    bottom: 0;
    padding-bottom: 4em;
  }
}
.modal-content.nopadding .content-scroller {
  overflow-x: hidden;
  overflow-y: auto;
  z-index: 4;
  background: white;
  border: 1px solid transparent;
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  transition: all 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.modal-content.nopadding .content-scroller.fade-in {
  opacity: 0;
}
.modal-content.nopadding .content-scroller .content-block {
  padding-top: 1em;
}
.modal-content.nopadding .content-scroller.error {
  background: rgba(255, 255, 255, 0.5);
  overflow: hidden;
  border: none;
  padding: 0;
}
.modal-content.nopadding .tabbed .tab-content {
  position: absolute;
  top: 2.6em;
  bottom: -1em;
  width: 100%;
  overflow-y: auto;
  padding: 1em;
}
.modal-content.nopadding .modal-button-bar,
.modal-content.nopadding .modal-actions.button-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  clear: both;
  padding: 0 1em;
  z-index: 10;
}
.modal-content.nopadding .modal-button-bar .saved-status,
.modal-content.nopadding .modal-actions.button-bar .saved-status {
  display: none;
}
.modal-content.nopadding .button-bar.modal-button-bar {
  padding-bottom: 0.8rem;
}
.modal-content.nopadding .z4select-dropdown {
  max-height: 14em;
}
.modal-content.nopadding.large:after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: -1px;
  right: -1px;
  height: 5em;
  z-index: 0;
  background-color: rgba(241, 243, 248, 0.8);
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}
@media screen and (min-width: 500px) {
  .modal-content.nopadding .z4form:not(.narrow) {
    padding-left: 3em;
    padding-right: 3em;
  }
}

.tabs-modal .tabs-modal-content {
  position: static !important;
  height: 100%;
}
.tabs-modal .modal-title .close-button {
  background-color: transparent !important;
}
.tabs-modal .scrollable-content {
  overflow: auto;
  max-height: 580px;
}
@media screen and (max-height: 740px) {
  .tabs-modal .scrollable-content {
    max-height: calc(100vh - 70px);
  }
}
.tabs-modal .tabs-modal-content > .container {
  position: absolute;
  top: 2.25em;
  bottom: 4em;
  left: -1px;
  right: -1px;
  z-index: 5;
}
.tabs-modal .page-tabs {
  background-image: linear-gradient(to right, #1b70cf, #2780e3);
  border-right: 1px solid #1b70cf;
}
.tabs-modal .page-tabs > ul {
  margin-left: 1em;
  margin-right: 1em;
  color: white;
}
.tabs-modal .page-tabs > ul > li.active:first-child:after {
  left: -1px;
}
.tabs-modal .page-tabs > ul > li.active {
  border-color: #1558a2;
}
.tabs-modal .page-tabs > ul > li.active > a {
  border-top-color: #ffa;
}
.tabs-modal .tab-content {
  position: absolute;
  top: 2.6em;
  bottom: -4em;
  height: auto;
  width: 100%;
  overflow: hidden;
  border-color: #1b70cf;
}
.tabs-modal .tab-content > .tab-scroller {
  height: 100%;
  width: 100%;
  overflow-y: auto;
}
.tabs-modal .tab-content > .tab-scroller > .z4form {
  padding-top: 2em;
}
.tabs-modal .button-bar.sticky {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background-image: linear-gradient(to top, white, rgba(255, 255, 255, 0.75));
  border-top: 1px solid rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}
.tabs-modal .button-bar.sticky .button {
  margin: 0.25rem 1rem;
}
.tabs-modal .tab-scroller.fields .form-buttons.button-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1em;
  background: white;
  margin-bottom: 0;
  z-index: 10;
}
.tabs-modal .tab-scroller.fields .z4form {
  margin-bottom: 6em;
}
.tabs-modal .confirmation-panel {
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 100%;
  height: 0;
  max-height: 0;
  transition: max-height 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955), opacity 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  padding: 0 1em;
  opacity: 0;
  background: #c11;
  color: white;
  z-index: 1000;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  overflow: hidden;
}
.tabs-modal .confirmation-panel p {
  margin: 0.5em 0;
}
.tabs-modal .confirmation-panel.show {
  height: auto;
  max-height: 160px;
  padding: 1em;
  opacity: 1;
}
.tabs-modal .tip {
  position: absolute;
  top: 4em;
  left: 0.5em;
  background: #ffffdd;
  box-shadow: 0 0 16px -6px #000;
  border: 1px solid rgba(0, 0, 0, 0.25);
  padding: 0 1em;
  border-radius: 2px;
  margin: 0.5em 1em 0 0;
}
.tabs-modal .tip p {
  line-height: 1.1;
}

body.registration .modal-content.nopadding .modal-title {
  background-image: linear-gradient(to right, #3e8a41, #4CAF50);
}
body.registration .modal-content.nopadding .content-scroller {
  border-color: transparent;
}
body.registration .modal-content.nopadding .close-button {
  background-color: #3e8a41;
}
body.registration .modal-content.nopadding .close-button:hover {
  background: #367839;
}

body.race .modal-content.nopadding .modal-title {
  background-image: linear-gradient(to right, #1b70cf, #2780e3);
}
body.race .modal-content.nopadding .content-scroller {
  border-color: transparent;
}
body.race .modal-content.nopadding .close-button {
  background-color: #1b70cf;
}
body.race .modal-content.nopadding .close-button:hover {
  background: #1864b8;
}

body.inventory .modal-content.nopadding .modal-title,
body.inventory .modal-content.nopadding .page-tabs {
  background: linear-gradient(to right, #8e44ad, #c0392b);
}
body.inventory .modal-content.nopadding .page-tabs {
  border-right-color: #c0392b;
}
body.inventory .modal-content.nopadding .content-scroller {
  border-color: #8e44ad;
}
body.inventory .modal-content.nopadding .close-button {
  background-color: #8e44ad;
}
body.inventory .modal-content.nopadding .close-button:hover {
  background: #7f3d9b;
}

/*body.pointseries{
    .modal-content.nopadding{
        .modal-title{
            background-image: linear-gradient(
                to right, 
                darken($series-theme-color, 5%),
                lighten($series-theme-color, 10%)
            );
        }
        .content-scroller{
            border-color: $series-theme-color;
        }
        .close-button{
            background-color: $series-theme-color;

            &:hover{
                background: darken($series-theme-color, 5%);
            }
        }
    }
}*/
.overflow-menu,
.selector {
  position: relative;
}
.overflow-menu .trigger:not(.button),
.selector .trigger:not(.button) {
  font-weight: bold;
  color: inherit;
  display: inline-block;
  margin-bottom: 0.2em;
  border-radius: 2px;
}
.overflow-menu .trigger:not(.button):link,
.selector .trigger:not(.button):link {
  text-decoration: none;
}
.overflow-menu .trigger:not(.button):hover,
.selector .trigger:not(.button):hover {
  background-color: rgba(0, 0, 0, 0.25);
}
.overflow-menu.disabled,
.selector.disabled {
  pointer-events: none;
  opacity: 0.5;
  cursor: disabled;
}
.overflow-menu.right .trigger.button, .overflow-menu.left .trigger.button,
.selector.right .trigger.button,
.selector.left .trigger.button {
  display: block;
}
.overflow-menu.right .trigger.button,
.selector.right .trigger.button {
  margin-left: 0.5rem;
}
.overflow-menu .right.button.slim,
.selector .right.button.slim {
  margin-left: 10px;
}
.overflow-menu .left.button + .menu-content,
.overflow-menu .right.button + .menu-content,
.selector .left.button + .menu-content,
.selector .right.button + .menu-content {
  top: 2.1em;
}
.overflow-menu .left.button.small + .menu-content,
.overflow-menu .right.button.small + .menu-content,
.selector .left.button.small + .menu-content,
.selector .right.button.small + .menu-content {
  top: 1.6em;
}
.overflow-menu .left.info-badge + .menu-content,
.overflow-menu .right.info-badge + .menu-content,
.selector .left.info-badge + .menu-content,
.selector .right.info-badge + .menu-content {
  top: 1.6em;
}
.overflow-menu.bottom.right .menu-content,
.selector.bottom.right .menu-content {
  transition: clip-path 500ms cubic-bezier(0.215, 0.61, 0.355, 1);
  clip-path: circle(0% at 90% 90%);
}
.overflow-menu .menu-content,
.selector .menu-content {
  position: absolute;
  left: 0;
  display: block;
  visibility: hidden;
  clear: both;
  overflow: hidden;
  transition: clip-path 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  clip-path: circle(0% at 10% 0);
  margin-top: -1px;
}
.overflow-menu.right-menu .menu-content,
.selector.right-menu .menu-content {
  left: unset;
  right: 0;
}
.overflow-menu.expanded,
.selector.expanded {
  z-index: 1001;
}
.overflow-menu.expanded .menu-content,
.selector.expanded .menu-content {
  clip-path: circle(200% at 10% 0);
  transition: clip-path 0;
  visibility: visible;
}
.overflow-menu.expanded.right .menu-content,
.selector.expanded.right .menu-content {
  clip-path: circle(200% at 90% 0);
}
.overflow-menu.expanded > .trigger.button,
.selector.expanded > .trigger.button {
  border-color: #d0e2ec;
  background-color: #d0e2ec;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.overflow-menu.expanded > .trigger.button.no-border.no-background,
.selector.expanded > .trigger.button.no-border.no-background {
  border-color: transparent;
  background: rgba(0, 0, 0, 0.25);
}
.overflow-menu.right, .overflow-menu.left.right-menu,
.selector.right,
.selector.left.right-menu {
  text-align: right;
}
.overflow-menu.right .menu-content, .overflow-menu.left.right-menu .menu-content,
.selector.right .menu-content,
.selector.left.right-menu .menu-content {
  right: 0;
  left: auto;
  clip-path: circle(0% at 90% 0);
}
.overflow-menu.left,
.selector.left {
  float: left;
}
.overflow-menu.left .small.button,
.selector.left .small.button {
  margin-right: 0.5em;
}
.overflow-menu.bottom.right.left-menu .menu-content,
.selector.bottom.right.left-menu .menu-content {
  left: 8px;
  right: auto;
  bottom: 35px;
}
.overflow-menu.bottom .menu-content,
.selector.bottom .menu-content {
  bottom: 2em;
}

.selector .trigger:after {
  content: " ▼";
}
.selector .menu-content {
  max-height: 480px;
  overflow-y: auto;
}

.menu-content {
  list-style: none;
  margin: 0;
  padding: 0.5em 0;
  border: 1px solid #d0e2ec;
  background-color: #f1f3f8;
  box-shadow: 0 0 16px rgba(119, 175, 237, 0.09);
  text-align: left;
  font-size: 1rem;
  font-weight: 400;
  color: #333;
  border-radius: 3px;
}
.left .menu-content {
  border-top-left-radius: 0;
}
.right .menu-content {
  border-top-right-radius: 0;
}
.bottom.right .menu-content {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 0;
}
.bottom.left .menu-content {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 0;
}
.menu-content.dark, .menu-content.dark-shadow {
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.4);
}
.menu-content.dark {
  color: #ddd;
  background-color: #505050;
  border-color: transparent;
}
.menu-content.dark li > a:link:hover {
  background-color: #444;
}
.menu-content.dark li.destroy-option {
  color: #ffc7c7;
}
.menu-content.dark li.highlight-option {
  color: #ffa;
}
.menu-content.dark li.create-option {
  color: #ddedcc;
}
.menu-content.dark .separator {
  border-color: rgba(0, 0, 0, 0.3);
}
.menu-content.dark li.info-item {
  color: #ffa;
}
.menu-content.small {
  font-size: 0.9rem;
  font-weight: 600;
}
.menu-content > ul {
  list-style: none;
  margin: 0;
  padding: 0 0 0.5em 0;
}
.menu-content li > a,
.menu-content .menu-link {
  color: inherit;
  display: block;
  padding: 0.2em 1.8em 0.2em 0.8em;
  min-width: 10em;
  transition: background-color 0.2s ease-in-out;
  white-space: nowrap;
}
.menu-content li > a:link,
.menu-content .menu-link:link {
  text-decoration: none;
}
.menu-content li > a:link:hover,
.menu-content .menu-link:link:hover {
  background-color: #77AFED;
}
.menu-content .menu-item-label {
  display: block;
  color: #666;
  font-size: 0.8em;
  padding: 0.2rem 1.8rem 0 0.8rem;
}
.menu-content .menu-item-label:after {
  content: ":";
}
.menu-content .menu-item-display {
  color: #333;
  display: block;
  padding: 0em 1.8em 0.2em 0.8em;
  min-width: 10em;
}
.menu-content li {
  position: relative;
}
.menu-content li.disabled {
  pointer-events: none;
  opacity: 0.5;
  cursor: disabled;
}
.menu-content li.section-header {
  font-weight: 600;
  border-top: 1px solid rgba(0, 0, 0, 0.25);
}
.menu-content li.create-option {
  color: #3d8b40;
  font-weight: 600;
}
.menu-content li.create-option a:hover {
  background-color: #fcfefc;
}
.menu-content li.destroy-option {
  color: #9d0d0d;
  font-weight: 600;
}
.menu-content li.destroy-option a:hover {
  background-color: #f8b1b1;
}
.menu-content li.checked:after {
  content: "✓";
  position: absolute;
  right: 0.25em;
  top: 0.25em;
}
.menu-content li.warning {
  background-color: #ffe895;
}
.menu-content li.info-item {
  font-size: 0.9em;
  font-weight: normal;
  font-style: italic;
  white-space: normal;
  pointer-events: none;
}
.menu-content .separator {
  margin: 0.35em 0;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: inherit;
}

.info-list {
  list-style: none;
  padding: 0;
  margin: 1.5em 0;
}
.info-list li {
  margin: 1em 0;
}
.info-list li.social {
  padding-left: 30px;
  position: relative;
}
.info-list li.social a {
  text-decoration: none;
  color: #666;
}
.info-list li.social a:hover {
  text-decoration: underline;
  color: #333;
}
.info-list li.social a:active {
  color: #2780e3;
}
.info-list li.social:before {
  opacity: 0.6;
  background-size: 100%;
  position: absolute;
  left: 0;
  content: "";
  height: 20px;
  width: 20px;
}

div.z4-confirm {
  z-index: 20;
  box-sizing: border-box;
  background: #c11;
  color: white;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 3px;
  box-shadow: 0 0 16px -6px #000;
}
div.z4-confirm > p {
  padding: 10px 0;
  margin: 0;
}
div.z4-confirm .button {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.5);
}
div.z4-confirm .button:hover {
  border-color: white;
}

.info-badge {
  display: inline-block;
  padding: 0.15em 0.5em;
  border-radius: 3px;
  cursor: default;
  font-size: 0.83rem;
}
.info-badge.info, .info-badge.error {
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  font-weight: 600;
  color: #fff;
}
.info-badge.info {
  background-color: #81b5ef;
}
.info-badge.warning {
  background-color: #ffe895;
  color: #333;
}
.info-badge.error {
  background-color: #c11;
}
.info-badge.danger {
  background-color: #ec8e8e;
  color: #333;
}
.info-badge.success {
  background-color: #cbdecb;
  color: #333;
  text-shadow: 0 0 4px rgba(255, 255, 255, 0.25);
  font-weight: normal;
}
.info-badge.action {
  background-color: #ddd;
  color: #333;
  font-weight: bold;
}
.info-badge.grey {
  background: white;
  font-style: italic;
  color: #666;
}
.info-badge.neutral {
  background-color: #f1f3f8;
  border: 1px solid #ddd;
}
.info-badge:link:hover {
  text-decoration: underline;
}

p .info-badge {
  font-size: 0.9em;
}

a.info-badge {
  cursor: pointer;
  text-decoration: none;
}
a.info-badge.danger {
  color: #333 !important;
}

x.banner {
  display: block;
  padding: 1em;
  margin: 1em 0;
  border: 1px solid #ddd;
  border-radius: 2px;
}
x.banner p {
  margin: 0.5em 0;
}
x.banner.error {
  border-color: #c11;
  background-color: #fce0e0;
}
x.banner.warning {
  border-color: #ffa;
}
x.banner.success {
  border-color: #4CAF50;
  background-color: #d9eeda;
}
x.banner.info {
  background-color: #dceafa;
  border: none;
}
x.banner .button-bar {
  padding-left: 0;
  padding-right: 0;
}
x.banner.help {
  padding-left: 6em;
  padding-right: 4em;
  position: relative;
  min-height: 4em;
  border: none;
}
x.banner.help:before {
  content: "?";
  color: #2780e3;
  font-weight: bold;
  font-size: 3.5rem;
  line-height: 1em;
  display: block;
  position: absolute;
  top: 2rem;
  left: 1rem;
  border: 4px solid #2780e3;
  border-radius: 50%;
  margin: 0;
  height: 1em;
  width: 1em;
  text-align: center;
}

.cover-image {
  display: block;
  max-height: 240px;
  text-align: center;
}
.cover-image > img {
  max-width: 100%;
  margin: 0 auto;
}

.input {
  display: inline-block;
  font: inherit;
  color: inherit;
  outline: none;
  margin: 0;
  background: white;
  padding: 0.4em;
  border: 1px solid #ddd;
  transition: border-color 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955), background-color 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.input.hack {
  padding: 0;
}
.input.transparent {
  border: 1px solid transparent;
}
.input.hover, .input:hover {
  border-color: #aaa;
  background: white;
}
.input.focus, .input:focus {
  border-color: #2780e3;
  box-shadow: 0 0 16px -6px #2780e3;
}
.input.disabled {
  pointer-events: none;
  background: #ddd;
}
.input.error {
  background: #c11;
  color: white;
  border-color: rgba(0, 0, 0, 0.1);
}
.input.error ::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.input.error ::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.input.error ::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.input.warning {
  background: #ffe895 !important;
}
.input input.wrapped {
  border: transparent;
  background: none;
  font: inherit;
  width: 100%;
}
.input input.wrapped:focus {
  outline: none;
}

select.z4-styled {
  border: 1px solid #aaa;
  border-radius: 2px;
  padding: 2px;
  margin: 6px 0;
  background: #f1f3f8;
  outline: none;
}
select.z4-styled:focus {
  border-color: #2780e3;
  box-shadow: 0 0 16px -6px #2780e3;
}

.content-section.has-empty-state {
  min-height: 400px;
  position: relative;
}
.content-section.has-empty-state .empty-state {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.content-section.has-empty-state.empty .empty-state {
  opacity: 1;
}

.empty-state {
  padding: 2em;
  text-align: center;
  font-weight: 300;
  font-size: 1.5em;
  color: #666;
  clear: both;
  line-height: 1.5;
}
.empty-state.dark {
  color: #333;
  font-weight: 400;
}
.empty-state.slim, .empty-state.small {
  padding: 1em;
}
.empty-state.narrow {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}
.empty-state.small {
  font-size: 1.2em;
  color: #666;
}
.empty-state > p {
  margin: 0.5em;
  cursor: default;
}
.empty-state.black {
  color: #333;
}
.empty-state.success {
  color: #4cb050;
}
.empty-state.error {
  color: #c11;
}
.empty-state.regular {
  font-size: 1rem;
  font-weight: 400;
}
.empty-state a:not(.button) {
  color: inherit;
  text-decoration: none !important;
  box-shadow: inset 0 0px 0 white, inset 0 -1px 0 #aaa;
}
.empty-state .button {
  margin: 0.5em;
}
.overtop-page .empty-state {
  max-width: 820px;
}
.empty-state.loading > p {
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}
.empty-state.loading > p:last-child:after {
  content: "";
  display: block;
  height: 4px;
  background: #ddd;
  margin: 1em auto 2em;
  animation: scrollAcross 2s;
  animation-iteration-count: infinite;
}
.empty-state.large,
.empty-state .large {
  font-size: 2rem;
}
.empty-state .small {
  font-size: 1rem;
  font-weight: normal;
}
.empty-state.empty-icon:before {
  display: block;
  height: 3rem;
  width: 3rem;
  border-radius: 50%;
  border: 6px solid #ddd;
  content: "";
}

@keyframes scrollAcross {
  0% {
    transform: scaleX(0.25) translateX(-150%);
  }
  25% {
    transform: scaleX(0.5) translateX(0);
  }
  50% {
    transform: scaleX(0.25) translateX(150%);
  }
  75% {
    transform: scaleX(0.5) translateX(0);
  }
  100% {
    transform: scaleX(0.25) translateX(-150%);
  }
}
.alert {
  padding: 1rem;
  margin-bottom: 1rem;
  margin-top: 1rem;
  border: 1px solid transparent;
  border-radius: 2px;
}

.alert {
  border: none;
}
.alert:after {
  clear: both;
  content: "";
  display: block;
}
.alert h3 {
  color: inherit;
  font-weight: 900;
  margin: 0.5rem 0;
}
.alert .close {
  text-decoration: none;
  text-shadow: none;
  opacity: 0.4;
  float: right;
  font-size: 22.5px;
  font-weight: bold;
  line-height: 1;
  color: #ffffff;
  text-shadow: 0 1px 0 #ffffff;
  opacity: 0.5;
  filter: alpha(opacity=20);
}
.alert .close:hover,
.alert .close:focus {
  opacity: 1;
}
.alert .alert-link,
.alert > p a:not(.button) {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
}
.alert .alert-link:hover,
.alert > p a:not(.button):hover {
  color: #ffa;
  cursor: pointer;
}
.alert.narrow-paragraphs > p {
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
}
@media print {
  .alert.no-print {
    display: none;
  }
}
.alert .button-bar {
  margin: 0;
}
.alert.neutral {
  background-color: #f1f3f8;
  color: #666;
}
.alert.warning, .alert.alert-warning {
  background-color: #ffe895;
  color: #333;
}
.alert.warning .link:hover, .alert.alert-warning .link:hover {
  color: black;
}
.alert.warning.dismissable .close, .alert.alert-warning.dismissable .close {
  color: #333;
}
.alert.error, .alert.alert-error {
  background-color: #c11;
  color: #fff;
}
.alert.success {
  background-color: #cbdecb;
}
.alert.slim {
  margin: 0;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.alert.slim > p {
  margin: 0.25rem 0;
}
.alert.alert-info, .alert.info {
  background-color: #2780e3;
  border-color: #1160b8;
  color: #fff;
}
.alert.text {
  border-bottom: 1px solid #ddd;
}
.alert.notice, .alert.alert-notice {
  background-color: #fff;
  border: 1px solid #ddd;
  color: #666;
  box-shadow: 0 0 36px -10px rgba(0, 0, 0, 0.25);
}
.alert.notice a:not(.button), .alert.alert-notice a:not(.button) {
  text-decoration: underline;
}
.alert.notice a:not(.button):hover, .alert.alert-notice a:not(.button):hover {
  color: #666;
  text-decoration: none;
}
.alert.help {
  border: 1px solid #fefeff;
  border-radius: 4px;
}
.alert.help.info {
  position: relative;
}
.alert.help.info:before {
  content: "?";
  font-size: 7.5em;
  color: white;
  position: absolute;
  right: 2rem;
  top: -2.3rem;
  font-weight: 600;
  opacity: 0.5;
}
.alert.huge {
  font-size: 2.5em;
}
.alert .dismissable {
  padding-right: 35px;
}
.alert .dismissable .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
.alert :link.right {
  float: right;
}
.alert > .button.right {
  margin-top: 0.5em;
}
.alert button.close {
  padding: 2px 0 0 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}
.search-results .alert {
  margin: 1em auto;
  max-width: 720px;
}
.search-results .alert.text {
  padding-left: 0;
  padding-right: 0;
}

.alert-error {
  background-color: #c11;
  color: white;
}

.alert-info hr {
  border-top-color: #693c96;
}

.alert-success {
  background-color: #3fb618;
  border-color: #4e9f15;
  color: #ffffff;
}

.light-alert-warning {
  border: 1px solid #F3A536;
  background-color: #f7e7d0;
}

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}

.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}

.text-alert {
  margin: 1em 0;
  position: relative;
}
.text-alert.has-icon {
  padding-left: 3em;
}
.text-alert.has-icon + .text-alert {
  padding-left: 3em;
}
.text-alert .alert-icon {
  display: block;
  position: absolute;
  width: 2rem;
  height: 2rem;
  top: 0.15rem;
  left: 0;
  background: #F5A623;
  color: black;
  border-radius: 50%;
  text-align: center;
  font-size: 1.75em;
  font-weight: 900;
  font-family: serif;
  pointer-events: none;
}
.text-alert .alert-icon.danger {
  background: #c11;
  color: white;
}
.text-alert.outline {
  border: 1px solid #F5A623;
  border-radius: 4px;
}
.text-alert.outline.danger {
  border-color: #c11;
}
.text-alert.outline .alert-icon {
  top: 0.5rem;
  left: 0.5rem;
}
.text-alert .alert-title {
  font-weight: bold;
  color: black;
}
.text-alert .extra.text {
  color: #666;
  font-size: smaller;
}
.text-alert .extra.text p {
  margin: 0 0 0.5em;
}

.panel-container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
  flex-grow: 1;
  flex-basis: 0;
}
.panel-container .panel.panel-default {
  display: block;
  min-width: 220px;
  margin-right: 1em;
}
.panel-container.round {
  flex-direction: column;
  justify-content: center;
}

.panel {
  margin-bottom: 1em;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 0;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  display: block;
}
.panel:link {
  text-decoration: none;
}
.panel.default-panel, .panel.panel-default, .panel.default {
  border-color: #ddd;
  box-shadow: 0 0 36px -12px rgba(0, 0, 0, 0.25);
  background: #fff;
}
.panel.light-shade {
  border-color: #ddd;
  box-shadow: 0 0 36px 0 rgba(0, 0, 0, 0.075);
  background: #fafaf6;
}
.panel.gray, .panel.grey {
  background-color: #efefef;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.075);
  border-radius: 2px;
}
.panel.rounded {
  border-radius: 4px;
}
.panel.panel-body,
.panel .panel-body {
  padding: 0.5em;
}
.panel.panel-body.padding-inside,
.panel .panel-body.padding-inside {
  padding-top: 1em;
  padding-bottom: 1em;
}
.panel.panel-body.with-bg,
.panel .panel-body.with-bg {
  background-color: #fbfbfb;
}
.panel .panel-heading {
  margin-top: -1px;
}
.panel .panel-footer {
  margin-bottom: -1px;
}
.panel.narrow {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
.panel.blue {
  border-color: #2780e3;
}
.panel.blue .panel-heading {
  color: #fff;
  background: #2780e3;
  border-top: 1px solid #2780e3;
  border-bottom: 1px solid #2780e3;
}
.panel.blue .panel-body {
  color: #333;
}
.panel.yellow {
  border-color: #f5e05b;
}
.panel.yellow .panel-heading {
  background: #f5e05b;
  color: #333;
  border-top: 1px solid #f5e05b;
  border-bottom: 1px solid #f5e05b;
}
.panel.yellow .panel-body {
  color: #333;
}
.panel.yellow.grey .panel-body {
  background: #ffa;
}
.panel.green {
  border-color: #cbdecb;
}
.panel.green .panel-heading {
  background: #cbdecb;
  color: #333;
  border-top: 1px solid #cbdecb;
  border-bottom: 1px solid #cbdecb;
}
.panel.green .panel-body {
  color: #333;
}
.panel.dark {
  background: #333;
  color: white;
}
.panel li.info {
  margin: 0;
}
.panel .panel {
  border: none;
  box-shadow: none;
}
.panel .panel .panel-heading {
  border-top: none;
  border-bottom: none;
  background: none;
  padding: 0;
}
.panel .panel .panel-body {
  padding-left: 0;
  padding-right: 0;
}
.panel .z4form {
  max-width: none;
}
.panel .z4form > ul {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
.panel .z4form .form-buttons {
  margin: 0;
}
.panel + h2 {
  margin-top: 2em;
}
.panel.search-results > ul {
  margin-top: 0;
  padding-bottom: 1em;
}
.panel > .button-bar {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  margin-bottom: 0;
}

.panel-help {
  padding: 0.5rem 1rem;
  margin: 0;
  font-size: 0.9em;
  font-style: italic;
  background: #f1f3f8;
  color: #666;
}
.panel-help .panel-help-link {
  color: #1b70cf;
  font-weight: 600;
  float: right;
  transition: all 0.2s color;
  text-decoration: none;
}
.panel-help .panel-help-link:hover {
  color: #77AFED;
  text-decoration: underline;
}

.panel-heading,
.panel-footer {
  display: block;
  position: relative;
  padding: 0.5em;
  background-color: #f5f5f5;
  color: #666;
  font-weight: 600;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
h3 .panel-heading,
h3 .panel-footer {
  font-size: 1rem;
}
.panel-heading.heat .title,
.panel-footer.heat .title {
  display: inline-block;
  width: 60%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.panel-heading > .right.button,
.panel-footer > .right.button {
  position: relative;
  top: -2px;
}
.panel-heading .label,
.panel-footer .label {
  font-size: 0.9rem;
  font-weight: normal;
}
.panel-heading .z4field,
.panel-footer .z4field {
  display: inline-block;
  padding: 0;
  margin: -0.5em -0.5em -0.5em 1em;
}
.panel-heading .z4field .input,
.panel-footer .z4field .input {
  font-size: inherit;
  width: 6em;
  padding: 0;
}
.panel-heading.right-align,
.panel-footer.right-align {
  text-align: right;
  float: none;
}
.panel-heading.clear:after,
.panel-footer.clear:after {
  clear: both;
  content: "";
  display: block;
}
.panel-heading .draghandle,
.panel-footer .draghandle {
  position: absolute;
  left: 0.25em;
  top: 0.25em;
}

.bottom-alert {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #c11;
  padding: 1em;
  color: white;
  z-index: 1048576;
}
.bottom-alert.success {
  background: #4CAF50;
}
.bottom-alert strong,
.bottom-alert small {
  display: block;
}

.sport-icon {
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.1);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 85%;
  background-color: #666;
}
.sport-icon.registration, .registration .sport-icon {
  background-color: #4CAF50;
}
.sport-icon.race, .sport-icon.results, .race .sport-icon {
  background-color: #2780e3;
}
.sport-icon.pointsseries, .pointsseries .sport-icon {
  background-color: #E38A27;
}
.sport-icon.crosscountryskiing {
  background-image: url("/zimg/sport-icon/white/skier.svg");
}
.sport-icon.running {
  background-image: url("/zimg/sport-icon/white/noun_248569.svg");
}
.sport-icon.cycling {
  background-image: url("/zimg/sport-icon/white/cyclist.svg");
}
.sport-icon.biathlon {
  background-image: url("/zimg/sport-icon/white/biathlon.svg");
}
.sport-icon.triathlon {
  background-image: url("/zimg/sport-icon/white/triathlon.svg");
}
.sport-icon.swimming {
  background-image: url("/zimg/sport-icon/white/swimmer.svg");
}
.sport-icon.motocross {
  background-image: url("/zimg/sport-icon/white/motocross.svg");
}
.sport-icon.flattrack {
  background-image: url("/zimg/sport-icon/white/flattrack.svg");
}
.sport-icon.alpineskiing {
  background-image: url("/zimg/sport-icon/white/alpine.path.svg");
}
.sport-icon.freestyleskiing {
  background-image: url("/zimg/sport-icon/white/freestyle.svg");
}
.sport-icon.gymnastics {
  background-image: url("/zimg/sport-icon/white/gymnast.path.svg");
}
.sport-icon.orienteering {
  background-image: url("/zimg/sport-icon/white/orienteerer.svg");
}
.sport-icon.trackandfield {
  background-image: url("/zimg/sport-icon/white/hurdler.path.svg");
}
.sport-icon.diningclub {
  background-image: url("/zimg/sport-icon/white/drunk.svg");
}
.sport-icon.canoekayak {
  background-image: url("/zimg/sport-icon/white/paddler.noun.svg");
}
.sport-icon.snowboard {
  background-image: url("/zimg/sport-icon/white/snowboard.svg");
}
.sport-icon.soccer {
  background-image: url("/zimg/sport-icon/white/soccer.path.svg");
}
.sport-icon.speedskating {
  background-image: url("/zimg/sport-icon/white/speedskater.svg");
}
.sport-icon.sailing {
  background-image: url("/zimg/sport-icon/white/sailing.svg");
}
.sport-icon.curling {
  background-image: url("/zimg/sport-icon/white/curling.svg");
}
.sport-icon.mountainbiking {
  background-image: url("/zimg/sport-icon/white/mtb.svg");
}
.sport-icon.music {
  background-image: url("/zimg/sport-icon/white/music.svg");
}
.sport-icon.art {
  background-image: url("/zimg/sport-icon/white/art.svg");
}
.sport-icon.rowing {
  background-image: url("/zimg/sport-icon/white/rower.svg");
}
.sport-icon.baseball {
  background-image: url("/zimg/sport-icon/white/baseball.svg");
}
.sport-icon.hockey {
  background-image: url("/zimg/sport-icon/white/hockey.svg");
}
.sport-icon.figureskating {
  background-image: url("/zimg/sport-icon/white/figureskater.svg");
}

.shortcut-tabs {
  display: block;
  list-style: none;
  color: inherit;
  padding-bottom: 1px;
  padding: 0;
  margin: 0;
  border-color: inherit;
  white-space: nowrap;
  overflow-y: hidden;
  overflow-x: auto;
  height: 100%;
  background-color: inherit;
}
.shortcut-tabs.disabled {
  pointer-events: none;
}
.shortcut-tabs > li {
  display: inline-block;
  text-align: center;
  position: relative;
  margin-left: 2px;
  border-bottom: 0.5em solid transparent;
  height: 100%;
  transition: 0.25s ease-in-out;
}
.shortcut-tabs > li:not(.active):hover {
  border-bottom-color: #d0e2ec;
  background-color: #d0e2ec;
}
.shortcut-tabs > li.active {
  border-bottom-color: inherit;
  color: #666;
}
.shortcut-tabs > li.left {
  float: left;
}
.shortcut-tabs .shortcut-tab {
  white-space: nowrap;
  display: inline-block;
  width: 100%;
  text-decoration: none;
  color: inherit;
  padding: 1.5rem 1em 1.05rem 1em;
  transition: all 0.15s ease-in-out;
}
.shortcut-tabs.white {
  color: white;
}
.shortcut-tabs.white > li:not(.active):hover {
  border-bottom-color: white;
  background-color: rgba(255, 255, 255, 0.1);
}
.shortcut-tabs.white > li.active {
  border-bottom-color: inherit;
  color: #fff;
}

.sub-heading-nav {
  font-size: 0.9em;
  color: #666;
}
.sub-heading-nav > span, .sub-heading-nav a {
  display: inline-block;
  margin-right: 1em;
}
.sub-heading-nav .active {
  font-weight: bold;
  color: #2780e3;
}
.sub-heading-nav a {
  color: inherit;
  text-decoration: none;
}
.sub-heading-nav a:hover {
  text-decoration: underline;
}
.sub-heading-nav:not(:empty) {
  border-bottom: 1px solid #f1f3f8;
  margin: 1rem 1rem 0 1rem;
  padding-bottom: 1rem;
}

.horizontal-progress .page-actions:after {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  background-color: white;
  border-top: 1px solid #ddd;
  position: absolute;
}

.workflow-progress {
  font-size: 0.9em;
  font-weight: 600;
  float: none;
  display: inline-block;
  text-align: center;
  padding: 0;
  counter-reset: threenav;
  position: relative;
  color: #666;
  margin-bottom: 0;
  margin-top: 0;
}
.workflow-progress > li {
  display: inline-block;
  min-width: 0;
  padding: 0;
  position: relative;
  counter-increment: threenav;
  border-bottom: 0;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
  margin-right: -1px;
  background-color: #ddd;
}
.workflow-progress > li.active {
  background: #2780e3;
  color: white;
  border-color: #2780e3;
}
.workflow-progress > li.active .shortcut-tab {
  background: none;
  color: white;
}
.workflow-progress .shortcut-tab {
  color: inherit;
  text-decoration: none;
  display: block;
  padding: 1.5rem 1rem 1.4rem 1rem;
  background-color: #f1f3f8;
  min-width: 8em;
  transition: background-color 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955), color 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.workflow-progress .shortcut-tab:hover {
  background-color: #ffe;
  color: #333;
}
body.scrolled .workflow-progress .shortcut-tab {
  padding-top: 0.85em;
  padding-bottom: 0.75em;
}
.workflow-progress a:before {
  content: counter(threenav) ".";
  display: inline-block;
  margin-right: 0.25em;
  opacity: 0.6;
}

.quote {
  background: white;
  color: black;
  quotes: "“" "”" "‘" "’";
  padding-left: 1em;
  padding-right: 1em;
  border-radius: 2px;
}
.quote > div {
  padding: 1em;
}

.quote:after {
  content: close-quote;
  color: #bbb;
  font-size: 2em;
  position: relative;
  float: right;
  right: 0em;
  bottom: 0.85em;
}

.quote:before {
  content: open-quote;
  color: #bbb;
  font-size: 2em;
  float: left;
}

blockquote {
  position: relative;
  background: rgba(255, 255, 255, 0.1);
  padding: 1em 2em;
  quotes: "“" "”" "‘" "’";
}
blockquote:before, blockquote:after {
  color: rgba(0, 0, 0, 0.15);
  font-size: 2em;
  position: absolute;
}
blockquote:before {
  content: open-quote;
  top: 0;
  left: 0.25rem;
}
blockquote:after {
  content: close-quote;
  bottom: -0.5em;
  right: 0.25rem;
}

.heat-racer a.name {
  text-overflow: ellipsis;
  white-space: nowrap;
  display: inline-block;
  overflow: hidden;
  /* at 60% this can cause formatting issues with wider times */
  width: 49%;
}
.heat-racer .place {
  vertical-align: top;
}

@media print {
  .heat-brackets {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    page-break-inside: avoid;
  }
}
@keyframes lds-circle {
  0%, 100% {
    animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5);
  }
  0% {
    transform: rotateY(0deg);
  }
  50% {
    transform: rotateY(1800deg);
    animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
  }
  100% {
    transform: rotateY(3600deg);
  }
}
table.z4-style {
  margin: 0px auto 1em auto;
  border-collapse: collapse;
  min-width: 100%;
  /* don't delete this.  table-layout: fixed is what makes everything in 
  here work.  If you don't understand table-layout:fixed, don't use these 
  styles
  */
  table-layout: fixed;
}
table.z4-style.auto-layout {
  table-layout: auto;
}
table.z4-style.no-spinner input[type=number]::-webkit-inner-spin-button,
table.z4-style.no-spinner input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
table.z4-style.header-overflow-visible thead th {
  overflow: visible;
}
table.z4-style.fixed-height .z4field {
  height: 1.6em;
}
table.z4-style .draghandle {
  width: 11px;
}
table.z4-style thead {
  background: #ddd;
  font-weight: 600;
  font-size: 0.9em;
  color: #333;
  border-bottom: 1px solid #aaa;
}
table.z4-style thead > tr {
  margin-top: none;
  margin-bottom: none;
}
table.z4-style thead th.vertical-label {
  position: relative;
  overflow: visible;
}
table.z4-style thead th.vertical-label > span {
  transform: rotate(-90deg);
  transform-origin: 100% 0;
  display: block;
  height: 3em;
  background: #ddd;
  position: absolute;
  right: 3em;
  line-height: 3em;
  padding: 0 0.25em;
  width: 100px;
  text-align: left;
  top: -76px;
  overflow: hidden;
  text-overflow: ellipsis;
}
table.z4-style thead th {
  position: relative;
}
table.z4-style > thead th:not(.narrow),
table.z4-style > tbody td:not(.narrow) {
  min-width: 6em;
}
table.z4-style > thead th.wide,
table.z4-style > tbody td.wide {
  min-width: 12em;
}
table.z4-style th {
  text-align: left;
  white-space: nowrap;
  padding: 0.2rem 0.4rem;
  z-index: 99;
  background-color: #ddd;
  text-overflow: ellipsis;
  overflow: hidden;
}
table.z4-style th .overflow-menu {
  float: none;
}
table.z4-style th .overflow-menu .trigger {
  display: block;
  text-align: left;
  padding-top: 0.15em;
}
table.z4-style th .overflow-menu .trigger:hover {
  background: none;
}
table.z4-style th.right,
table.z4-style td.right,
table.z4-style .row-name {
  text-align: right;
  float: none;
}
table.z4-style th.right input,
table.z4-style td.right input,
table.z4-style .row-name input {
  text-align: inherit;
}
table.z4-style th.sorted {
  background-color: #c4c4c4;
}
table.z4-style th.sorted:after {
  content: "▼";
  position: absolute;
  right: 0.5em;
  top: 0.25em;
}
table.z4-style th.sortable:after {
  content: "▼";
  opacity: 0.5;
  position: absolute;
  right: 0.5em;
  top: 0.25em;
}
table.z4-style td.bold {
  font-weight: 600;
}
table.z4-style .row-name {
  background-color: #f1f3f8;
}
table.z4-style .border-left {
  border-left: 1px solid #ddd;
}
table.z4-style .border-right {
  border-right: 1px solid #ddd;
}
table.z4-style > tbody {
  background: white;
}
table.z4-style > tbody tr:nth-child(2n-1) {
  background: #fafafa;
}
table.z4-style > tbody tr.separator {
  height: 3px;
  background: #ddd;
}
table.z4-style > tbody .link {
  color: #1b70cf;
}
table.z4-style > tbody .link:hover {
  text-decoration: underline;
}
table.z4-style > tbody td {
  vertical-align: top;
  position: relative;
}
table.z4-style > tbody td.nowrap {
  white-space: nowrap;
}
table.z4-style > tbody td.content {
  padding: 0.2rem 0.4rem;
}
table.z4-style > tbody td.emoji {
  font-size: 1.25em;
  overflow: visible;
  font-family: emoji;
}
table.z4-style > tbody td.saving:before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  margin: 0.5rem;
  border-radius: 50%;
  background: #4CAF50;
  animation: lds-circle 2.4s cubic-bezier(0, 0.2, 0.8, 1) infinite;
  position: absolute;
  top: 0;
  right: 0;
}
table.z4-style > tbody td.saving .show-saving:after {
  display: none;
}
table.z4-style > tbody td.sticky {
  position: sticky;
  left: 0;
  background: #f1f3f8;
  z-index: 10;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
table.z4-style > tbody td.right.saving:before {
  right: auto;
  left: 0;
}
table.z4-style > tbody td.status {
  font-size: 0.65em;
  vertical-align: middle;
  text-align: center;
}
table.z4-style > tbody tr.info, table.z4-style > tbody td.info {
  background-color: #81b5ef;
}
table.z4-style > tbody tr.success, table.z4-style > tbody td.success {
  background-color: #cbdecb;
}
table.z4-style > tbody tr.warning, table.z4-style > tbody td.warning {
  background-color: #ffe895;
}
table.z4-style > tbody tr.error, table.z4-style > tbody td.error {
  background-color: #c11;
  color: white;
}
table.z4-style > tbody tr.danger, table.z4-style > tbody td.danger {
  background-color: #ec8e8e;
  border-bottom-color: #c11;
}
@media print {
  table.z4-style > tbody tr.danger, table.z4-style > tbody td.danger {
    background-color: transparent !important;
  }
}
table.z4-style > tbody tr.orange, table.z4-style > tbody td.orange {
  background-color: #F5A623;
}
table.z4-style > tbody tr.black, table.z4-style > tbody td.black {
  background: black;
  color: white;
}
table.z4-style > tbody tr.faded, table.z4-style > tbody td.faded {
  color: #aaa;
}
table.z4-style > tbody tr.disabled, table.z4-style > tbody tr.grey-background, table.z4-style > tbody td.disabled, table.z4-style > tbody td.grey-background {
  background: #eaeaea;
  color: #666;
}
table.z4-style > tbody tr.disabled input,
table.z4-style > tbody tr.disabled .z4field .input > .wrapped, table.z4-style > tbody tr.grey-background input,
table.z4-style > tbody tr.grey-background .z4field .input > .wrapped, table.z4-style > tbody td.disabled input,
table.z4-style > tbody td.disabled .z4field .input > .wrapped, table.z4-style > tbody td.grey-background input,
table.z4-style > tbody td.grey-background .z4field .input > .wrapped {
  color: #666;
}
table.z4-style > tbody tr.line-through, table.z4-style > tbody td.line-through {
  text-decoration: line-through;
  opacity: 0.6;
}
table.z4-style > tbody tr.line-through td, table.z4-style > tbody tr.line-through span, table.z4-style > tbody tr.line-through a, table.z4-style > tbody td.line-through td, table.z4-style > tbody td.line-through span, table.z4-style > tbody td.line-through a {
  text-decoration: inherit;
}
@media print {
  table.z4-style > tbody tr, table.z4-style > tbody td {
    background-color: none !important;
  }
}
table.z4-style > tbody .layout-list > li {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
table.z4-style > tbody .small.button {
  margin-top: 0.25em;
}
table.z4-style.gridlines tbody td {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
table.z4-style.vertical.gridlines th, table.z4-style.vertical.gridlines td {
  border-left: 1px solid #bbb;
  border-right: 1px solid #bbb;
}
table.z4-style.no-border.vertical.gridlines td:first-child,
table.z4-style.no-border.vertical.gridlines th:first-child {
  border-left: none;
}
table.z4-style.no-border.vertical.gridlines td:last-child,
table.z4-style.no-border.vertical.gridlines th:last-child {
  border-right: none;
}
table.z4-style.nowrap td {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
table.z4-style tr.section {
  border-bottom: 1px solid #aaa;
  border-top: 1px solid #666;
  font-weight: 600;
  background-color: white;
}
table.z4-style tr.section td {
  padding-top: 1em;
}
table.z4-style tr.section + tr {
  border-top-color: #aaa;
}
table.z4-style td.input {
  display: table-cell;
  padding: 0 !important;
  font-size: 1rem;
  background: none;
  border-top: none;
  border-bottom: none;
}
table.z4-style td.input ::-webkit-input-placeholder {
  color: #aaa;
}
table.z4-style td.input ::-moz-placeholder {
  color: #aaa;
}
table.z4-style td.input .wrapped {
  outline: none;
  border: 0;
  padding: 0.2rem 0.4rem 0.1em;
  font: inherit;
}
table.z4-style td.input select.wrapped {
  background: white;
  width: 100%;
}
table.z4-style td.input.value > input, table.z4-style td.input.value > span {
  width: 5rem;
}
table.z4-style td.input.value span {
  display: inline-block;
}
table.z4-style td.input.value .button {
  text-align: center;
}
table.z4-style td.input:hover {
  border-color: none;
}
.gridlines table.z4-style td.input:hover {
  border-bottom-color: #ddd;
}
.vertical.gridlines table.z4-style td.input:hover {
  border-right-color: #bbb;
}
table.z4-style p {
  margin: 0;
  padding: 0;
}
table.z4-style td.input .z4field .input {
  padding: 0;
}
table.z4-style .z4field {
  padding: 0;
  font-size: inherit;
  margin-left: 0 !important;
}
table.z4-style .z4field .input {
  border: none;
  background: transparent;
  color: inherit;
  font-size: inherit;
  width: unset;
  box-shadow: none;
  width: 100%;
}
table.z4-style .z4field .input .wrapped,
table.z4-style .z4field .input .placeholder-text {
  padding: 0.2rem 0.4rem 0.1em;
}
table.z4-style .z4field.money .wrapped {
  padding-left: 0.55em;
}
table.z4-style .z4field.link {
  display: block;
}
table.z4-style .z4field.link .input .link {
  display: block;
}
table.z4-style td > .content {
  display: inline-block;
  vertical-align: top;
  padding: 0.2rem 0.4rem;
}
table.z4-style td > .content.overflow-hidden {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
table.z4-style ul.content {
  margin-top: 0;
  display: block;
  padding-left: 2em;
}
table.z4-style td .link {
  color: #2780e3;
}
table.z4-style.oneline {
  white-space: nowrap;
}
table.z4-style th.separator,
table.z4-style td.separator {
  width: 1em;
  min-width: 0;
  background: #ddd;
}
table.z4-style.gridlines .separator {
  border-bottom-color: #d0d0d0;
}
table.z4-style .cell-button {
  position: absolute;
  top: 0.1em;
  margin: 0 !important;
}
table.z4-style .cell-button.right {
  right: 0.1em;
}
table.z4-style .overflow-menu .trigger.button {
  margin-top: 0;
}
table.z4-style td.summary-cell {
  border-top: 1px solid #333;
}
table.z4-style td.summary-cell > div {
  font-size: 0.8rem;
  padding: 0.2em 0.4rem;
  background: #ddd;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
table.z4-style .overflow-hidden {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
table.z4-style input[type=number]::-webkit-inner-spin-button,
table.z4-style input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
table.z4-style .help-question {
  background: #ddd;
  display: inline-block;
  text-decoration: none;
  height: 1.3em;
  width: 1.3em;
  border: 1px solid #1160b8;
  color: #333;
  position: absolute;
  left: 0;
  text-align: center;
  border-radius: 50%;
  line-height: 1.2;
  transition: all 0.15s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
table.z4-style .help-question:hover {
  background: white;
  color: black;
}

.table-container {
  display: inline-block;
  text-align: left;
  min-width: 100%;
}

.table-scroller {
  display: block;
  text-align: center;
  clear: both;
  overflow: auto;
}
.table-scroller.overflow-visible {
  overflow: visible;
}
.table-scroller.no-margin.overflow-visible .table-container {
  overflow: visible;
}
.table-scroller.no-margin .table-container {
  overflow: hidden;
}
.table-scroller.no-margin .table-container table.z4-style {
  margin: 0;
}
.table-scroller.no-margin.no-margin {
  margin: 0 auto;
}

.panel-body.table {
  padding: 0;
}
.panel-body.table > div {
  margin-left: -1px;
  margin-right: -1px;
}
.panel-body.table table.z4style {
  margin-bottom: 0;
}

.large-option-selector {
  max-width: 480px;
  margin: 1em auto 3em;
}
.large-option-selector .question {
  display: block;
  float: none;
  width: auto;
  text-align: left;
  font-size: 1.25em;
  color: #666;
}

.stripe-connect {
  display: inline-block;
  margin-bottom: 1px;
  box-sizing: content-box;
  background-image: -webkit-linear-gradient(#28A0E5, #015E94);
  background-image: -moz-linear-gradient(#28A0E5, #015E94);
  background-image: -ms-linear-gradient(#28A0E5, #015E94);
  background-image: linear-gradient(#28A0E5, #015E94);
  -webkit-font-smoothing: antialiased;
  border: 0;
  padding: 1px;
  height: 30px;
  text-decoration: none;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  cursor: pointer;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.stripe-connect span {
  display: block;
  position: relative;
  padding: 0 12px 0 44px;
  height: 30px;
  background: #1275FF;
  background-image: -webkit-linear-gradient(#7DC5EE, #008CDD 85%, #30A2E4);
  background-image: -moz-linear-gradient(#7DC5EE, #008CDD 85%, #30A2E4);
  background-image: -ms-linear-gradient(#7DC5EE, #008CDD 85%, #30A2E4);
  background-image: linear-gradient(#7DC5EE, #008CDD 85%, #30A2E4);
  font-size: 14px;
  line-height: 30px;
  color: white;
  font-weight: bold;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}

.stripe-connect span:before {
  content: "";
  display: block;
  position: absolute;
  left: 11px;
  top: 50%;
  width: 23px;
  height: 24px;
  margin-top: -12px;
  background-repeat: no-repeat;
  background-size: 23px 24px;
}

.stripe-connect:active {
  background: #005D93;
}

.stripe-connect:active span {
  color: #EEE;
  background: #008CDD;
  background-image: -webkit-linear-gradient(#008CDD, #008CDD 85%, #239ADF);
  background-image: -moz-linear-gradient(#008CDD, #008CDD 85%, #239ADF);
  background-image: -ms-linear-gradient(#008CDD, #008CDD 85%, #239ADF);
  background-image: linear-gradient(#008CDD, #008CDD 85%, #239ADF);
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.1);
}

.stripe-connect.light-blue {
  background: #b5c3d8;
  background-image: -webkit-linear-gradient(#b5c3d8, #9cabc2);
  background-image: -moz-linear-gradient(#b5c3d8, #9cabc2);
  background-image: -ms-linear-gradient(#b5c3d8, #9cabc2);
  background-image: linear-gradient(#b5c3d8, #9cabc2);
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
}

.stripe-connect.light-blue span {
  color: #556F88;
  text-shadow: 0 1px rgba(255, 255, 255, 0.8);
  background: #f0f5fa;
  background-image: -webkit-linear-gradient(#f0f5fa, #e4ecf5 85%, #e7eef6);
  background-image: -moz-linear-gradient(#f0f5fa, #e4ecf5 85%, #e7eef6);
  background-image: -ms-linear-gradient(#f0f5fa, #e4ecf5 85%, #e7eef6);
  background-image: linear-gradient(#f0f5fa, #e4ecf5 85%, #e7eef6);
  -moz-box-shadow: inset 0 1px 0 #fff;
  -webkit-box-shadow: inset 0 1px 0 #fff;
  box-shadow: inset 0 1px 0 #fff;
}

.stripe-connect.light-blue:active {
  background: #9babc2;
}

.stripe-connect.light-blue:active span {
  color: #556F88;
  text-shadow: 0 1px rgba(255, 255, 255, 0.8);
  background: #d7dee8;
  background-image: -webkit-linear-gradient(#d7dee8, #e7eef6);
  background-image: -moz-linear-gradient(#d7dee8, #e7eef6);
  background-image: -ms-linear-gradient(#d7dee8, #e7eef6);
  background-image: linear-gradient(#d7dee8, #e7eef6);
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.05);
}

.stripe-connect.dark {
  background: #252525;
  background: rgba(0, 0, 0, 0.5) !important;
}

/* Images*/
.stripe-connect span:before, .stripe-connect.blue span:before {
  background-image: url("data:image/png;base64,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");
}

.stripe-connect.light-blue span:before {
  background-image: url("data:image/png;base64,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");
}

/* Retina support */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  .stripe-connect span:before, .stripe-connect.blue span:before {
    background-image: url("data:image/png;base64,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");
  }

  .stripe-connect.light-blue span:before {
    background-image: url("data:image/png;base64,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");
  }
}
.popover {
  font-weight: normal;
  color: #333;
  text-shadow: none;
  font-size: medium;
  font-family: "Source Sans Pro", sans-serif;
  line-height: normal;
  display: none;
  opacity: 0;
  position: absolute;
  z-index: 300;
  background-color: white;
  border-radius: 4px;
  box-shadow: 0 0 60px -20px #000;
  min-width: 400px;
  min-height: 50px;
  top: 0;
  left: 0;
  transform: translate(-10%, -100%) translateY(-6px);
  border: 1px solid rgba(0, 0, 0, 0.25);
  white-space: initial;
  transition: opacity 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  will-change: opacity;
}
.popover.popover-active {
  display: block;
}
.popover.popover-display {
  opacity: 1;
}
.popover.popover-left {
  transform: translate(-90%, -100%) translateY(-6px);
  left: 100%;
}
.popover.popover-left.popover-bottom {
  transform: translate(-90%, 0%) translateY(6px);
  top: 100%;
}
.popover.popover-bottom {
  transform: translate(-10%, 0%) translateY(6px);
  top: 100%;
}

.popover-activate {
  position: relative;
}

.popover-padding {
  padding: 1em;
}

.promo-tabs {
  margin: 0 0 2em;
  padding: 0.5em 1em 0 1em;
  list-style: none;
  border-bottom: 1px solid #eaeaea;
  text-align: center;
}
.promo-tabs > li {
  margin: 0 0.5em;
  padding: 0;
  display: inline-block;
}
.promo-tabs a {
  font-weight: 600;
  font-size: 1.2em;
  display: inline-block;
  padding: 1em 0.5em;
  text-decoration: none;
  color: #1b70cf;
  transition: border-color 250ms cubic-bezier(0.215, 0.61, 0.355, 1);
  border-bottom: 4px solid white;
}
.promo-tabs .active a {
  border-bottom: 4px solid #2780e3;
}
.promo-tabs :not(.active) a:hover {
  border-bottom: 4px solid #ddd;
}
@media screen and (max-width: 480px) {
  .promo-tabs a {
    padding-left: 0.25em;
    padding-right: 0.25em;
  }
}

@media screen and (max-width: 480px) {
  .hide-on-phone {
    display: none;
  }
}
.promo-block {
  font-size: 1.2em;
  padding: 4em 0;
  overflow: auto;
  background-size: cover;
  position: relative;
  margin-top: -2rem;
}
.promo-block small {
  font-size: 0.75em;
  line-height: 1;
}
.promo-block .promo-image {
  float: left;
  width: 200px;
  height: 200px;
  margin: 0 0.5em;
}
.promo-block .promo-image:empty {
  border: 1px dotted red;
}
.promo-block .promo-image img {
  max-width: 150%;
  max-height: 150%;
  margin-top: -25%;
  margin-left: -50%;
}
.promo-block.floating {
  background: rgba(255, 255, 255, 0.75);
  border-radius: 3px;
  padding: 0.5em 2em;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.05);
  margin: 1em 0;
}
.promo-block.floating .promo-gochip {
  padding: 1em;
  border-top: 2px dashed #ffe895;
}
@media screen and (max-width: 480px) {
  .promo-block.floating .promo-gochip {
    padding: 0;
  }
}
.promo-block.floating .promo-gochip:first-child {
  border-top: 0;
}
.promo-block.rapidcam-image {
  border-radius: 3px;
  padding-top: 2em;
  padding-bottom: 2em;
  background-image: url(/zimg/promo/rapidcam_semi-transparent.svg);
  background-size: 80px;
  background-position: top 2em right 1em;
  background-repeat: no-repeat;
}
.promo-block.rapidcam-image .about {
  color: #666;
  font-size: 1.2rem;
}
.promo-block.rapidcam-image .image {
  display: block;
  margin: auto;
  border-radius: 3px;
  margin-top: 1em;
}
.promo-block:nth-child(2n) .promo-image {
  float: right;
}
.promo-block:nth-child(2n) .promo-image img {
  margin-right: -50%;
  margin-left: unset;
}
.promo-block:nth-child(2n) .pricing-info {
  text-align: right;
}
.promo-block:last-child {
  padding-bottom: 4rem;
}
.promo-block:first-child {
  clip-path: none;
}
.promo-block.promo-banner {
  padding: 0;
}
.promo-block.promo-banner img {
  width: 100%;
}
.promo-block .price {
  font-size: 2em;
  font-weight: 600;
  color: #2780e3;
}
.promo-block .pricing-info small {
  display: block;
}
.promo-block .contact-info {
  text-align: center;
  color: #999;
  font-weight: normal;
  font-size: smaller;
  border-top: 1px dashed #ddd;
  padding-top: 1em;
  margin-top: 6em;
}
.promo-block .contact-info a {
  font-weight: 600;
  color: #2780e3;
  text-decoration: none;
}
.promo-block .contact-info a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 480px) {
  .promo-block {
    background-position: left -100em !important;
  }
  .promo-block .promo-image img {
    opacity: 1;
  }
}
.promo-block .promo-gochip-diagram {
  padding-bottom: 20px;
}
.promo-block .promo-gochip-diagram .diagram-title {
  padding: 15px 10px;
  text-align: center;
  margin: 0 0 1em 0;
  border-bottom: 1px dashed #ddd;
}
.promo-block .promo-gochip-diagram .diagram-title h1 {
  margin: 0;
}
.promo-block .promo-gochip-diagram .diagram-title h2 {
  margin: 0;
  font-weight: 200;
}
.promo-block .promo-gochip-diagram img {
  width: 100%;
  height: auto;
  position: relative;
  top: 2em;
}
.promo-block .promo-gochip {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
}
.promo-block .promo-gochip.align-top {
  align-items: flex-start;
}
.promo-block .promo-gochip h2 {
  margin-top: 0;
  font-size: xx-large;
}
.promo-block .promo-gochip h2.rent {
  background: url("/zimg/promo/exchange.svg") no-repeat right center;
  background-size: 35px;
  padding-right: 40px;
}
.promo-block .promo-gochip h2.purchase {
  background: url("/zimg/promo/dollars.svg") no-repeat right center;
  background-size: 35px;
  padding-right: 40px;
}
@media screen and (max-width: 480px) {
  .promo-block .promo-gochip h2.rent, .promo-block .promo-gochip h2.purchase {
    padding-right: 0px;
    padding-top: 40px;
    background-position: top left;
  }
}
.promo-block .promo-gochip .promo-image {
  float: none;
  width: 300px;
  height: 300px;
  margin: 1em 0;
}
.promo-block .promo-gochip .promo-text {
  max-width: 62%;
  flex-grow: 1;
}
.promo-block .promo-gochip .promo-pricing {
  width: 50%;
  padding: 0 2em;
}
.promo-block .promo-gochip .promo-pricing:not(:last-child) {
  border-right: 1px solid #efefef;
}
.promo-block .promo-gochip .promo-pricing .pricing-info {
  text-align: left;
}
.promo-block .promo-gochip .promo-pricing .pricing-info p {
  margin: 1em 0;
}
.promo-block .promo-gochip .promo-pricing .pricing-info .price {
  color: #4CAF50;
}
@media screen and (max-width: 480px) {
  .promo-block .promo-gochip .promo-image {
    width: 100%;
    margin: 1em;
  }
  .promo-block .promo-gochip .promo-image img {
    margin-top: -15%;
    margin-left: auto;
    margin-right: auto;
    width: 80%;
    display: block;
  }
  .promo-block .promo-gochip .promo-text {
    max-width: 100%;
    margin: 1em;
  }
}
.promo-block .promo-gochip ul {
  list-style: none;
  color: #666;
  padding: 0;
}
.promo-block .promo-gochip ul > li {
  position: relative;
  margin: 1.5em;
}
.promo-block .promo-gochip ul > li:before {
  content: "✔";
  position: absolute;
  left: -1.5em;
  font-weight: 600;
  color: #A3DA6C;
}
.promo-block .promo-gochip ul > li strong {
  color: #4CAF50;
  font-weight: bold;
}

.promo-block a:not(.button) {
  color: #2780e3;
  text-decoration: none;
}
.promo-block a:not(.button):hover {
  text-decoration: underline;
}

.include-website-icon {
  background-image: url("data:image/png;base64,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");
}

.include-facebook-icon {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AgWEQEUgbfe2wAAAbRJREFUeNrtm79KA0EQh787DKJoRKOghSIIQRSsxc5G8gT6Hgr6NNYilj6DneAf0ghiIdjEIFZKILlY5JAUGiZ6HJub38AVB3t7+/tubmZ2YKFnNeAO6ADdgl+dVGuNPvFdp1ctSmls4dPuo9QlYqcAkih1BbcW49wEQACc29iIrfcDuAWegXbfRywBZWAWmAGW0nuThV6svAMnwOKQsBrG+YMWf/gPb2la3hHqL9ACNoAnrzFgDXjxmgX28xIfYhC8yVCXKQaE5gHHeb8wpM1QO83nWXpAZZSC4OUfnlkAVn4A92nVFhKAqyED5SkwVaQ0+GgctwOcFzENNozjjopaB1iD8ab37fCcdwCxdwDqCAmAAIxeP6AFnA2o9Utp7W6xC2DaUCLvhbQdfs35wx5Y15bXLxDlDGDdewyoCoAA+AZQ9gxg2XshVA0RQFaNV0s6XR12wjy6wgnwNkDAOLALXBvmemBwt3cSmAitFI6B+YzWUsHQ7tZmSAAEQAAEQAAEQAAEQAAEQAAEQAAEQAAEQAAE4FcAiWP9SQzUHQOox/TO43i1b+0hHJ/fNi66SYbH578A+AyLGi1zkPsAAAAASUVORK5CYII=");
}

.include-twitter-icon {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH4AgWEDsUpdxqlQAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAAPSSURBVHja7ZpbSBVRFIa/09GjnqzsHmZUdA+6SURB+BBJV6wk6kF8CroQ0RUiiIIeIrHHICGKKIpIoohe6iESEelmDz4ECkUXpBDJMAs7HO1hljBNOhfPzJ6Z0/ywHpQze+9/7bXXWnvtBREiRIgQIUKE/xWxEKwvDkwBFgDFQA7QCbQDH4HfwEC2bcwoIXtOyJnJbWAJkGtz7HygyGpyPy1jAnDWBnGj1APzTMYdB6wDHgLzzRawGtjrE/mlQOsIyA9KH7BLN94YYCVwHHghv7lmtfsX5YcHFZMvBToyIK+XOuAK0Aj06P6fApJmi5gEtOg+OKSI/LQMd96uzLFayDLDB2nglMfk40CtAvKlhnlHAwnjYjYP8/F5OR5eYL7HxH9JlIiJ+a8DngFHhlpMlclA14FCD8JdjccKqAMuGPzLFbG8f1BtMVgLsNjFMJlUYPpGuQcUDLeg7TYGSIv5FLmggLmKydfL2TfNAewO1gTsdpCBDYUKheRrgDyrBZVIfm130BTQAOwY7kxZ4IAi8pV2nXgucGMEE6REcfsl17aLwwrINw8V7vReWI+U5MpOkQPMAC5L2HkErDGbWNClIMmKO70tFgBPXdyBV8A+icVjxcriIuWKLMCxn1otO+nVolqB+8BjBQp4PFJHXe1DjPZCbsgRtfQBMbksTJa/bwJbsqC48gHot+sENwIvgavANuAzcCzkCnjvxAlWGi4RnSJhPgJlVuFLj3eG2ll+FhyBT1a3MeN5eZ5FxdV2oNuJArolickWNAA/nChgALgFfM0SBTRLdmtbAYNeszYLyP8EXmeSP6vI0ryUJ1Z3f0yuiGlgK/AmxBbQBPS6UbO7FsLd7wAWuanNMrnv94XI/F1/3suR9Lgh4Irok9K3bWdnhpikx0VySfopqfEqtHe3IKIVlx9z7obs/C93W6MTQkS+3iuzqgqJAgq9UkBuCMLheq+dS1IqxkEte41S4WHzgEuSYQWFfJsfEakceMDf3Rd+SBewMBMimWRLCan1r0VrrJiO1qQ0U5E5/gY2yRuG74gDs3H3QcVKKoKUfRVLIUWVb9gQFOIJtJ6+7wp3fkUQiBeg9d6pdHi9aN1kviAmu12K9qYXqLYWN6JAobwB9MuEeWgvuSXi4SvF26tGG3BGdyHzDIXACeBbQJKbLuA0MFW1xsej9f20+kS8BzgJzMLnVv4kWo/AHUXE3wI7gYmqcnonRdExUgprdJn0F7Re5OmMrMHKF+SitbbuEc9stzaYlkLlUbT29WRQCMVcGiNPJCG7mZZcvU+npAgRIkQIHP4At8BTji7NMtQAAAAASUVORK5CYII=");
}

.include-instagram-icon {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AgWEDoGT34qnAAABDpJREFUeNrtm79rFEEUxz93uTvjqYUmjY0GtFAERYkhKGJpl85CMWXQJn9ABG1idf+BlTZiY5+kkQPRBK9SkohikARUiPEHenqaS6KFs7Ku82Z3dmf1NusXBu52Zt+892bmvTezbwrEw07gFHAE2AfsBnYB24DtQBXYApSAIlCJ2c8qsAG01e8vQBP4DLwDXgMLwCPgHvCeFNELjAGLwPcOLYuKx16XgvcAtztYaKncVrwnwqUMCh4sl+IKf2cTCO+VO5KQBeH5feCEpcLawFdV2j4DthboZ9VAowCUff+/BwxpGehWpWzJ3wPgpKuR/wDUgYtAH/8OfYqHuuIp9kyIuuZfAWfpXJxVPMayCT0hL94iO7gVIovWO5hc3VWyh6shLvKPICerI18AumLMhN+CpTHDmu9UVIAbPl7vAjs07SSbMOZvJIW3nWrwugwju0NjGKWw+dfGRnJ1nYrLBgXc1bSXXOROgCGhst7BCmiGWPmgTagL7YZKaksreYW0jNZWYADYqxhZAh4CLfU/DC219ZawoZHltKbdYYCbgnZcR3jjKizeMIycFzqPh9A6b6BxQ4gYdW1vAkwJla7QCBHapIyGYRa9Fd6TDl90bac8BoMVqw4EH40puE4Ro4ISzgFvlE24bIgHvE1YkHYDYF5T8TGh8NMpbGmnE/L0UUNzHmWAghXLCTp6kuK+/kkCvpY19JaK6gBTt7ePO/IHIrSbBIaBY6oMq2dhOJBgJuhkqkpT40XMNW8avXVgUB1wSCipNushtEZj8PdCWuotTcVCjA5MBq9mOH2SrHwtxDDaYkFDpwXwTVPxNIark5gdSbBuRwx0G5a0nmpofJP84zNHo19z4E5rjmbBMyneSaqAccOaLzhQQMFgE8Y7QQFrAo1Bh9HkoNDHWloKmLMYHWn6lxwqoGRYBlFn2ZyORtEQN0fBVoGBScvRiTLLJg07yyjQylRMyNiA4SwujZNeGx4iIakC9himm2vMWfLwVxRQIONIqoBF4fmhFHiVaC4lJayzrrMR360K70+koIAJoa9qxPdnbdzgrMUS2JRusGIxe6SQtN+hAvpDQvAoKNssgf+hcJ42Q7nfDuf+QORT3o/EVjQVLxMcikY53Z0ALgBHVblg8POujsdfamiteJFUro/Fm5rG3Qk6OgjMpBAJzijacaGTqSlZ8Cx8GrOF+Gksix9HXe15por8TDnXoc9Rx8fVrvOaz7qbmFxXbYvqXReQZHldMvj8M8B1hyNwRRV/gsQe35bWJkHCFmeE588hmykytqgLMg5BNpOkbGFMkvJOdrKUJmeD0DQ5yGaiZFRESpTMcqqsCZFTZSHnydLwP10eyPmFCQ+5ujLzLy5NtUOivUogNP7rl6ZsZkLmr82FIdcXJ/3eIbdXZ4PB0qa7PB33y413ff4wsB/99XnPaKV9ff458JiY1+d/AL6UexlkFCXdAAAAAElFTkSuQmCC");
}

.counter.large {
  display: block;
  font-size: 64pt;
  font-weight: 600;
  text-align: center;
}
.counter.panel-body {
  padding: 0.5rem;
}
.counter.red {
  color: #c11;
}
.counter.green {
  color: #3e8a41;
}
.counter.yellow {
  color: #f5e05b;
}
.counter.blue {
  color: #2780e3;
}
.counter.orange {
  color: #F5A623;
}

b, strong {
  font-weight: 600;
}

.text.action,
.text .action,
.link.action,
.link .action {
  font-style: italic;
}
.text.label,
.text .label,
.link.label,
.link .label {
  font-size: 0.9rem;
  font-weight: 600;
  color: #666;
}
.text.light,
.text .light,
.link.light,
.link .light {
  color: #666;
}
.text.help,
.text .help,
.link.help,
.link .help {
  color: #666;
}
.text.help strong, .text.help h3,
.text .help strong,
.text .help h3,
.link.help strong,
.link.help h3,
.link .help strong,
.link .help h3 {
  color: #333;
}
.text.highlight.blue, body.race .text.highlight,
.text .highlight.blue,
body.race .text .highlight,
.link.highlight.blue,
body.race .link.highlight,
.link .highlight.blue,
body.race .link .highlight {
  color: #1b70cf;
}
.text.highlight.green, body.registration .text.highlight,
.text .highlight.green,
body.registration .text .highlight,
.link.highlight.green,
body.registration .link.highlight,
.link .highlight.green,
body.registration .link .highlight {
  color: #2a6317;
}
.text:link,
.text :link:not(.button),
.link:link,
.link :link:not(.button) {
  text-decoration: none;
}
.text:link:hover,
.text :link:not(.button):hover,
.link:link:hover,
.link :link:not(.button):hover {
  text-decoration: underline;
}
.text a:not(.button),
.link a:not(.button) {
  font-weight: inherit;
  color: #2780e3;
}
.text .info-badge,
.link .info-badge {
  margin-right: 0.5em;
}
.text.big,
.text .big,
.link.big,
.link .big {
  font-size: 4em;
  font-weight: 900;
  line-height: 0.75;
}
.text.medium,
.text .medium,
.link.medium,
.link .medium {
  font-size: 1.6em;
  font-weight: 900;
  line-height: 0.9;
}
.text.small,
.text .small,
.text small, .textsmall,
.link.small,
.link .small,
.link small,
.linksmall {
  font-size: 0.9em;
}
.text.green,
.text .green,
.link.green,
.link .green {
  color: #4CAF50;
}
.text.red,
.text .red,
.link.red,
.link .red {
  color: #c11;
}
.text.dark-background,
.link.dark-background {
  color: white;
}
.text.dark-background .link,
.link.dark-background .link {
  color: #ffa;
}
.text.light,
.link.light {
  color: #aaa;
}
.text.slim p,
.link.slim p {
  margin: 0.25em 0;
}
.text.black,
.text .black,
.link.black,
.link .black {
  font-weight: 600;
  color: #333;
}
.text.strike,
.text .strike,
.link.strike,
.link .strike {
  text-decoration: line-through;
}
.text.dark, .text.dark-grey,
.link.dark,
.link.dark-grey {
  font-weight: 400;
  color: #666;
}
.text.unset,
.text .unset,
.link.unset,
.link .unset {
  font-style: italic;
  color: #666;
}

.text.regular,
.text .regular {
  color: #333;
  font-weight: 400;
}
.text.hidden-overflow {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.text ul li,
ul.text li {
  padding-bottom: 0.25em;
}
.text ul li > p,
ul.text li > p {
  margin: 0 0 0.25em 0;
}

.header-subtitle {
  font-weight: 300;
  color: #666;
}
.header-subtitle:before {
  content: " - ";
}

.left-green,
.right-green {
  font-size: 10pt;
  color: #4CAF50;
}

.right-green {
  position: absolute;
  right: 0;
  bottom: 4px;
}

.big-green {
  font-weight: 900;
  color: #4CAF50;
  font-size: 24pt;
}

.right {
  float: right;
}

.red {
  color: #c11;
}

.green {
  color: #4CAF50;
}

.gray {
  color: rgba(0, 0, 0, 0.5);
}

.disabled-warning {
  font-style: italic;
  color: #aaa;
  font-size: 0.9em;
}

a.link {
  color: #1b70cf;
  text-decoration: none;
  font-weight: 600;
  text-decoration-color: transparent;
  transition: all 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
a.link:hover {
  color: #1b70cf;
  text-decoration: underline;
}
a.link.grey {
  color: #666 !important;
  font-weight: normal;
}
a.link.black {
  color: #333;
}
a.link.block {
  display: block;
  font-weight: bold;
  color: #1b70cf;
}
a.link.underlined {
  text-decoration: underline;
}

body.race a.text.highlight {
  transition: color 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
body.race a.text.highlight:hover {
  text-decoration: none;
  color: #1160b8;
}

a.link.circled-help:not(.action) {
  color: #2780e3;
  border: 1px solid #2780e3;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  top: 0;
  line-height: 1.25em;
  height: 1.5em;
  width: 1.5em;
  transition: all 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  font-weight: bold;
  text-align: center;
}
a.link.circled-help:not(.action):hover {
  color: #1160b8;
  text-decoration: none;
  background: #ffe;
}

.text.link {
  font-weight: normal;
}

.text-right {
  text-align: right;
}

.text-left {
  text-align: left;
}

.wizard-step h2 {
  font-size: 2em;
  font-weight: 900;
  border-bottom: 1px solid #ddd;
  background: white;
  z-index: 10;
}
.wizard-step h2:first-child {
  margin-top: 1em;
}

.wizard-step .z4form.narrow,
.wizard-step.z4form.narrow {
  margin: 1em auto;
  width: auto;
}
.wizard-step .z4form.narrow .field-label,
.wizard-step.z4form.narrow .field-label {
  font-size: 1rem;
  padding: 0.5rem 0 0.25rem 0.5rem;
  font-weight: 400;
}
.wizard-step .z4form.narrow .z4field,
.wizard-step .z4form.narrow .field-label,
.wizard-step.z4form.narrow .z4field,
.wizard-step.z4form.narrow .field-label {
  max-width: 320px;
}
.wizard-step .z4form.narrow .z4field.full-width,
.wizard-step .z4form.narrow .field-label.full-width,
.wizard-step.z4form.narrow .z4field.full-width,
.wizard-step.z4form.narrow .field-label.full-width {
  max-width: none;
}
.wizard-step .z4form.narrow .z4field.full-width .option .extra,
.wizard-step .z4form.narrow .field-label.full-width .option .extra,
.wizard-step.z4form.narrow .z4field.full-width .option .extra,
.wizard-step.z4form.narrow .field-label.full-width .option .extra {
  max-width: 480px;
}
.wizard-step .z4form.narrow .z4field .z4field.radio + .extra-help,
.wizard-step .z4form.narrow .z4field .z4field.checklist + .extra-help,
.wizard-step .z4form.narrow .z4field .z4field.yesno + .extra-help,
.wizard-step .z4form.narrow .field-label .z4field.radio + .extra-help,
.wizard-step .z4form.narrow .field-label .z4field.checklist + .extra-help,
.wizard-step .z4form.narrow .field-label .z4field.yesno + .extra-help,
.wizard-step.z4form.narrow .z4field .z4field.radio + .extra-help,
.wizard-step.z4form.narrow .z4field .z4field.checklist + .extra-help,
.wizard-step.z4form.narrow .z4field .z4field.yesno + .extra-help,
.wizard-step.z4form.narrow .field-label .z4field.radio + .extra-help,
.wizard-step.z4form.narrow .field-label .z4field.checklist + .extra-help,
.wizard-step.z4form.narrow .field-label .z4field.yesno + .extra-help {
  top: 0;
  opacity: 1;
}
.wizard-step .z4form.narrow .z4field .always-help .extra-help,
.wizard-step .z4form.narrow .field-label .always-help .extra-help,
.wizard-step.z4form.narrow .z4field .always-help .extra-help,
.wizard-step.z4form.narrow .field-label .always-help .extra-help {
  opacity: 0.5;
}
.wizard-step .z4form.narrow .z4field .focused-item .extra-help,
.wizard-step .z4form.narrow .field-label .focused-item .extra-help,
.wizard-step.z4form.narrow .z4field .focused-item .extra-help,
.wizard-step.z4form.narrow .field-label .focused-item .extra-help {
  opacity: 1;
}
.wizard-step .z4form.narrow.slim > ul,
.wizard-step.z4form.narrow.slim > ul {
  padding-left: 0;
  padding-right: 0;
}
.wizard-step .z4form.narrow > ul > li,
.wizard-step.z4form.narrow > ul > li {
  position: relative;
  margin-bottom: 0.5em;
}
.wizard-step .z4form.narrow .always-help > .extra-help,
.wizard-step.z4form.narrow .always-help > .extra-help {
  opacity: 0;
  position: absolute;
  top: 2.2em;
  left: 0;
  margin-left: 340px;
  transition: opacity 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.wizard-step .z4form.narrow .z4field.radio + .extra-help,
.wizard-step.z4form.narrow .z4field.radio + .extra-help {
  top: 0;
}
.wizard-step .z4form.narrow .z4field.radio .option .help.text.extra,
.wizard-step.z4form.narrow .z4field.radio .option .help.text.extra {
  margin-left: 0;
}
.wizard-step .z4form.narrow .always-help .extra-help,
.wizard-step.z4form.narrow .always-help .extra-help {
  opacity: 0.9;
}
.wizard-step .z4form.narrow .focused-item .extra-help,
.wizard-step.z4form.narrow .focused-item .extra-help {
  opacity: 1;
}
.wizard-step .z4form.narrow .z4field .saved-msg,
.wizard-step.z4form.narrow .z4field .saved-msg {
  position: absolute;
  right: 0;
  bottom: -2.2em;
}
.wizard-step .z4form.narrow li.narrow .z4field.checklist,
.wizard-step.z4form.narrow li.narrow .z4field.checklist {
  max-width: 480px;
  margin: 1em auto 0;
}
.wizard-step .z4form.narrow .textarea.huge,
.wizard-step.z4form.narrow .textarea.huge {
  max-width: none;
}
.wizard-step .z4form.narrow .button-field.background,
.wizard-step.z4form.narrow .button-field.background {
  margin-left: -1rem;
  margin-right: -1rem;
}
@media screen and (max-width: 500px) {
  .wizard-step .z4form.narrow .always-help > .extra-help,
.wizard-step.z4form.narrow .always-help > .extra-help {
    position: static;
    top: 0;
    padding-top: 0.25em;
    margin-left: 0;
  }
}

#live-tracking-container .course-map {
  height: 500px;
}
#live-tracking-container .loading-throbber {
  background-image: url(data:image/gif;base64,R0lGODlhHgAeAKEDAC5Gmqqqqt3d3f///yH/C05FVFNDQVBFMi4wAwEAAAAh/hFDcmVhdGVkIHdpdGggR0lNUAAh+QQFCgADACwAAAAAHgAeAAACdZyPqcvtG6Kc0dAbUBC8+zxs3ghaI2meXRmqa+qyYgyrsgcAX33eXb5ruQQ+mtDIQx1tmiExGYS+lj0NZmK5Sh7crter3YbCRSZVKeWAZub08xyFT9nVA115j+fnznJ9r9Y0tNYnaAT45kY4aBWW5fgVKdlVAAAh+QQFCgADACwGAAYABAAEAAACBISPCQUAIfkEBQoAAwAsBQAFAAYABgAAAgWEj6nLBQAh+QQFCgADACwEAAQACAAIAAACB4SPqcvtXQAAIfkEBQoAAwAsBAAEAAgACAAAAg2Uf6Nry+JUi9PVh04BACH5BAUKAAMALAUABQAGAAYAAAIKlC+jY8u5WkSmAAAh+QQFCgADACwGAAYABAAEAAACBZQ9g3pSACH5BAUKAAMALAcABwAQAAIAAAIIlD+pCXC4VCsAIfkEBQoAAwAsFAAGAAQABAAAAgSEjwkFACH5BAUKAAMALBMABQAGAAYAAAIFhI+pywUAIfkEBQoAAwAsEgAEAAgACAAAAgeEj6nL7V0AACH5BAUKAAMALBIABAAIAAgAAAINlH+ja8viVIvT1YdOAQAh+QQFCgADACwTAAUABgAGAAACCpQvo2PLuVpEpgAAIfkEBQoAAwAsFAAGAAQABAAAAgWUPYN6UgAh+QQFCgADACwVAAcAAgAQAAACCJQ1qcutAEEBACH5BAUKAAMALBQAFAAEAAQAAAIEhI8JBQAh+QQFCgADACwTABMABgAGAAACBYSPqcsFACH5BAUKAAMALBIAEgAIAAgAAAIHhI+py+1dAAAh+QQFCgADACwSABIACAAIAAACDZR/o2vL4lSL09WHTgEAIfkEBQoAAwAsEwATAAYABgAAAgqUL6Njy7laRKYAACH5BAUKAAMALBQAFAAEAAQAAAIFlD2DelIAIfkEBQoAAwAsBwAVABAAAgAAAggEhonCbapaKwAh+QQFCgADACwGABQABAAEAAACBISPCQUAIfkEBQoAAwAsBQATAAYABgAAAgWEj6nLBQAh+QQFCgADACwEABIACAAIAAACB4SPqcvtXQAAIfkEBQoAAwAsBAASAAgACAAAAg2Uf6Nry+JUi9PVh04BACH5BAUKAAMALAUAEwAGAAYAAAIKlC+jY8u5WkSmAAAh+QQBCgADACwGABQABAAEAAACBZQ9g3pSADs);
  background-repeat: no-repeat;
  background-position: center center;
}
#live-tracking-container .panel-body.loading-throbber {
  min-height: 120px;
  background-position-y: 60px;
}

.feature-callout {
  position: absolute;
  right: 0;
  bottom: -3em;
  white-space: nowrap;
  padding: 0.6em 2em;
  border-radius: 4px;
  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.5);
  cursor: default;
  font-weight: bold;
  font-size: 0.9em;
}
.feature-callout:before {
  content: "";
  position: absolute;
  top: -0.5em;
  height: 1em;
  width: 1em;
  transform: rotate(45deg);
  right: 1em;
}
.feature-callout.superadmin {
  color: white;
  background-image: linear-gradient(to right, #ff6a00, #ee0979 125%);
  border: 1px solid #ee0979;
}
.feature-callout.superadmin:before {
  background: #f22457;
}

.draghandle {
  cursor: move;
  background-image: url("/zimg/handle-20x30.png");
  width: 1rem;
  height: 26px;
  display: block;
  background-repeat: no-repeat;
  background-position: top center;
  float: left;
}
.draghandle.disabled {
  cursor: default;
  background: none;
}
.draghandle.short {
  height: 22px;
  background-position: center center;
}

.sortable-ghost {
  border: 1px dashed #666;
}

@media screen and (max-width: 719px) {
  .z4-date-card {
    font-size: 0.9em;
    font-weight: 400;
    color: #666;
    padding-left: 1.5em;
    position: relative;
  }
  .z4-date-card .z4-icon {
    position: absolute;
    top: 2px;
    left: 0;
    height: 1em;
    width: 1em;
    background-size: 100%;
    opacity: 0.5;
  }
}
@media screen and (min-width: 719px) {
  .z4-date-card {
    background: #666;
    color: white;
    padding: 0.5rem 1px;
    border-radius: 2px;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.25);
    text-align: center;
    width: 4em;
  }
  .z4-date-card .z4-icon {
    display: none;
  }
  .z4-date-card.left {
    float: left;
    margin-right: 1rem;
  }
  .z4-date-card .month {
    display: block;
    font-size: 0.9em;
    font-weight: 600;
  }
  .z4-date-card .day {
    display: block;
    font-size: 2.5em;
    font-weight: 900;
    white-space: nowrap;
    height: 3.5rem;
    overflow: hidden;
  }
  .z4-date-card.range .day {
    font-size: 1.25rem;
    line-height: 2;
    font-weight: 600;
  }
}

.progress-trail {
  font-size: 0.8em;
}
.progress-trail > ul {
  list-style: none;
  display: flex;
  flex-direction: row;
  margin: 0;
  padding: 0 0 0 4px;
}
.progress-trail .progress-step {
  display: block;
  flex-grow: 1;
  padding: 4px 4px 4px 0;
  background: white;
  position: relative;
}
.progress-trail .progress-step:not(:last-child):after,
.progress-trail .progress-step:not(:last-child) a:after {
  content: "";
  display: block;
  height: 0;
  background: transparent;
  border-left: 17px solid #f1f3f8;
  border-top: 34px solid transparent;
  border-bottom: 34px solid transparent;
  border-right: none;
  position: absolute;
  right: -17px;
}
.progress-trail .progress-step:not(:last-child):after {
  top: 4px;
  z-index: 0;
  border-left-color: white;
}
.progress-trail .progress-step:not(:last-child) a:after {
  top: 0;
  z-index: 2;
}
.progress-trail .progress-step a {
  display: block;
  height: 68px;
  padding: 2em 0 2em 4em;
  background: #f1f3f8;
  position: relative;
  color: #1160b8;
  text-decoration: none;
  font-weight: 600;
  transition: background-color 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.progress-trail .progress-step a:after {
  transition: border-color 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.progress-trail .progress-step a:hover {
  background: #77AFED;
  color: #000;
}
.progress-trail .progress-step a:hover:after {
  border-left-color: #77AFED;
}
.progress-trail .progress-step.active a {
  background: #ffa;
  color: black;
}
.progress-trail .progress-step.active a:after {
  border-left-color: #ffa;
}
.progress-trail .progress-step.active a:hover {
  background: #ffa;
}
.progress-trail .progress-step.active a:hover:after {
  border-left-color: #ffa;
}
.progress-trail .progress-step.active ~ li a {
  pointer-events: none;
  color: #666;
}

.button-bar.progress-buttons .next-step.button:before {
  content: "Next:";
  opacity: 0.5;
  display: inline-block;
  padding-right: 0.25em;
  font-weight: 400;
}

.progress-title {
  margin-top: 2rem;
}
.progress-title.content-section {
  margin-bottom: 1rem;
}
.progress-title h2 {
  font-weight: 900;
  margin-bottom: 0;
  margin-top: 0.25rem;
  border-bottom: 2px solid #ddd;
}
.progress-title .progress-navigate {
  font-size: smaller;
  padding: 0.25em 0;
}
.progress-title .previous.link:before {
  content: "◀ ";
  font-style: normal;
}
.progress-title .previous.link:before:hover {
  text-decoration: none;
}
.progress-title .item-name {
  display: inline-block;
  margin: 0 1rem;
  color: black;
  font-weight: 600;
}
@media screen and (max-width: 500px) {
  .progress-title h2 .weak {
    display: block;
    font-size: smaller;
  }
}

.z4-list-selector {
  border: 1px solid #ddd;
  border: 1px solid #ddd;
  height: 320px;
  overflow: auto;
  position: relative;
}
.z4-list-selector .select-list {
  list-style: none;
  margin: 0;
  padding: 0.75em 0;
}
.z4-list-selector .select-list:empty {
  display: none;
}
.z4-list-selector .select-list > li {
  margin: 0 0 0.25em 0;
}
.z4-list-selector .select-list > li .preview {
  color: #1160b8;
  font-size: 0.7em;
  opacity: 0.6;
  transition: opacity 125ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.z4-list-selector .select-list > li .preview:hover {
  opacity: 1;
}
.z4-list-selector input[type=radio].z4-styled + label {
  white-space: normal;
}
.z4-list-selector input[type=radio].z4-styled + label:before {
  top: 0;
  margin-top: 3px;
}

.z4-small-toolbar {
  display: flex;
  flex-direction: row;
  padding: 0.7rem 1rem 0.35rem 1.3rem;
  background: #ddd;
  position: sticky;
  top: 0;
  color: #666;
  z-index: 99;
}
.z4-small-toolbar .toolbar-section.sort {
  margin-right: 1em;
  min-width: 150px;
  position: relative;
  flex-grow: 1;
}
.z4-small-toolbar .toolbar-section.search {
  flex-grow: 0;
}
.z4-small-toolbar .toolbar-section.search .input {
  padding: 0 0.5em;
  margin: -0.5em 0 0 0;
  font-size: inherit;
  border-radius: 2px;
}
.z4-small-toolbar .label.text {
  display: inline-block;
  color: inherit;
  margin-right: 0.5em;
  overflow: hidden;
}
.z4-small-toolbar .label.text:after {
  content: ":";
}
.z4-small-toolbar .selector {
  position: static;
}
.z4-small-toolbar .selector .menu-content {
  left: 0;
  right: unset;
}
.z4-small-toolbar .selector .trigger:not(.button) {
  color: #444;
  transition: all 125ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  max-width: 8em;
  text-overflow: ellipsis;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.z4-small-toolbar .selector .trigger:not(.button)::after {
  content: none;
}
.z4-small-toolbar .selector .trigger:not(.button):hover {
  color: black;
  background-color: transparent;
  text-decoration: underline;
}

.z4-tools-grid {
  margin: 0 auto;
}
.z4-tools-grid > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media screen and (min-width: 719px) {
  .z4-tools-grid > ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1em;
  }
}
@media screen and (min-width: 719px) {
  .z4-tools-grid.three-columns ul {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 1em;
  }
}
.z4-tools-grid.three-columns ul .task-item > a {
  font-size: 1rem;
  padding: 1rem 1rem 1rem 3rem;
}
.z4-tools-grid.three-columns ul .task-item > a .z4-icon {
  height: 100%;
  top: 0;
  left: 0;
  width: 3em;
  background-size: 50%;
}
.z4-tools-grid .task-item > a {
  display: block;
  padding: 1rem 1rem 1rem 4rem;
  font-size: 1.15em;
  position: relative;
  background: white;
  border-radius: 4px;
  transition: box-shadow 125ms cubic-bezier(0.455, 0.03, 0.515, 0.955), background-color 125ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  color: #1160b8;
  text-decoration: none;
  font-weight: 600;
}
.z4-tools-grid .task-item > a .name {
  text-decoration: none;
  color: inherit;
}
.z4-tools-grid .task-item > a .z4-icon {
  display: block;
  position: absolute;
  top: 0.75rem;
  left: 1rem;
  height: 2rem;
  width: 2rem;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center center;
}
.z4-tools-grid .task-item > a:hover {
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.25);
  background: #f1f3f8;
  z-index: 2;
}
.z4-tools-grid .task-item.collapsed-item {
  display: none;
}
.z4-tools-grid .task-item.spinning, .z4-tools-grid .task-item.disabled {
  pointer-events: none;
  color: #ddd;
}
.z4-tools-grid .task-item.spinning .z4-icon, .z4-tools-grid .task-item.disabled .z4-icon {
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHdpZHRoPScxNnB4JyBoZWlnaHQ9JzE2cHgnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIiBjbGFzcz0idWlsLXJpbmciPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBmaWxsPSJub25lIiBjbGFzcz0iYmsiPjwvcmVjdD48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI0Mi41IiBzdHJva2UtZGFzaGFycmF5PSIxNzMuNTcyOTk0MTEwODM2MDggOTMuNDYyMzgxNDQ0Mjk2MzQiIHN0cm9rZT0iIzI3ODBlMyIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxNSI+PGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHZhbHVlcz0iMCA1MCA1MDsxODAgNTAgNTA7MzYwIDUwIDUwOyIga2V5VGltZXM9IjA7MC41OzEiIGR1cj0iMC43NXMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBiZWdpbj0iMHMiPjwvYW5pbWF0ZVRyYW5zZm9ybT48L2NpcmNsZT48L3N2Zz4=");
}
.z4-tools-grid.outline-items .task-item > a {
  border: 1px solid #f1f3f8;
}
.z4-tools-grid.expanded .collapsed-item {
  display: block;
}
.z4-tools-grid.background-colored .task-item > a {
  background-color: #f1f3f8;
}
.z4-tools-grid.dark-links .task-item > a {
  color: #333;
}
.z4-tools-grid.narrow {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.live-racer-row {
  overflow: hidden;
  transition: max-height 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955), background-color 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  max-height: 4em;
}
.live-racer-row.collapsed {
  max-height: 0;
}
.live-racer-row.highlighted {
  background-color: #ffe;
}

.flexbox-results-container {
  list-style: none;
  margin: 0;
  padding: 0;
}

.flex-racer-container {
  padding: 0.25rem;
}

.flex-racer-line {
  display: flex;
  flex-direction: row;
  font-size: 1.2rem;
  padding: 0 0.25rem;
  margin: 0;
  cursor: default;
}
.flex-racer-line .rank-column {
  width: 4rem;
  flex-grow: 0;
  text-align: right;
  padding-right: 0.5rem;
}
.flex-racer-line .rank-column.narrow {
  width: 2rem;
}
.flex-racer-line .name-column {
  flex-grow: 1;
}
.flex-racer-line .name-display {
  color: black;
  font-weight: 600;
}
.flex-racer-line .time-column {
  width: 8rem;
  flex-grow: 0;
  text-align: right;
}
.flex-racer-line .left-cell {
  flex-grow: 1;
}
.flex-racer-line .right-cell {
  flex-grow: 0;
  width: 12rem;
  white-space: nowrap;
  text-align: right;
}
.flex-racer-line .extra-display, .flex-racer-line.extra-display {
  color: #666;
  font-size: 1rem;
}
.flex-racer-line .extra-display > *:not(:empty) {
  display: inline-block;
  margin-right: 1rem;
}

html.popout .z4app.results {
  overflow: auto;
  margin-top: calc(4em - 1px);
  height: calc(100vh - 4em);
  border-width: 0;
  border-radius: 0;
  padding-top: 0;
}
html.popout .z4app.results .app-container {
  display: inline-block;
}

.z4-results-container {
  display: inline-block;
  background: white;
  /*.column-labels{
      height:1.2em;
      .total-time{float:right;}
      .lap-labels{float:right;}
  }

  .name{width:12em; display:inline-block;}
  .place{width:2em; display:inline-block;}
  .lap{width:6em; display:inline-block;}
  .total-time{width:6em; font-weight:bold;}*/
}
.z4-results-container .width-bumper {
  white-space: nowrap;
  height: 10px;
  overflow: hidden;
}
.z4-results-container .width-bumper > span {
  display: inline-block;
  height: 2px;
}
.z4-results-container .status-display {
  display: none;
}
.z4-results-container .racer-group.racers-hidden .status-display,
.z4-results-container .racer-group.racers-filtered .status-display {
  display: block;
}

.results-header {
  text-align: left;
  font-size: 90%;
  margin: 0 auto;
}
.results-header h4 .race-date {
  margin-left: 1.5rem;
}
.results-header .header-section {
  margin-top: 1em;
  float: left;
  width: 50%;
  padding: 5px;
}
.results-header .header-section .title {
  font-size: 130%;
  font-weight: bold;
  display: block;
  border-bottom: 1px solid lightgrey;
}
.results-header .header-section .text-section span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: inline-block;
}
.results-header .header-section .text-section .text-title {
  width: 40%;
  margin-right: 1%;
}
.results-header .header-section .text-section .text {
  width: 59%;
}

@media screen and (max-width: 480px) {
  .racer-group.collapsed {
    margin-bottom: 0;
    border-top: none !important;
    padding-top: 0 !important;
  }
  .racer-group.collapsed .racer-list-container,
.racer-group.collapsed .column-labels,
.racer-group.collapsed .width-bumper {
    display: none;
  }
  .racer-group.collapsed h2 {
    color: #333;
    font-weight: 400;
    font-size: 1.35rem;
    margin: 0.5em 0;
  }
  .racer-group.collapsed h2:hover {
    text-decoration: underline;
  }
}
.overtop-page .z4-results-container {
  margin-left: 1rem;
  margin-right: 1rem;
}

.z4-results-group > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.z4-results-group > ul > li {
  padding: 0.25em 0;
  clear: both;
}
.z4-results-group > ul > li span {
  display: inline-block;
}
.z4-results-group > ul > li .name {
  display: inline-block;
  white-space: nowrap;
  color: inherit;
}
.z4-results-group > ul > li .name:link:hover {
  text-decoration: underline;
}
.z4-results-group > ul > li:nth-child(2n-1) {
  background: #f1f3f8;
}
.z4-results-group > ul > li > .place {
  float: left;
  width: 2em;
  color: #999;
  text-align: right;
  padding-right: 0.25em;
}
.z4-results-group > ul > li > .info {
  padding-left: 2em;
  overflow: hidden;
}
.z4-results-group > ul > li > .info span {
  white-space: nowrap;
  padding-right: 0.4em;
  font-size: 80%;
}
.z4-results-group > ul > li .lap-times {
  float: right;
}
.z4-results-group > ul > li .total-time {
  float: right;
}
.z4-results-group > ul > li > .lap {
  float: right;
  white-space: nowrap;
  background: inherit;
  text-align: left;
}
.z4-results-group > ul > li > .lap .rank {
  display: inline-block;
  padding-left: 0.15em;
  color: #666;
}
.z4-results-group > ul > li > .lap.finish {
  font-weight: bold;
}
.z4-results-group .racer-list > li {
  height: 2.75em;
}

@media print {
  .z4-results-container {
    display: block !important;
  }
}
.groups-list.racers-hidden .racer-group {
  margin: 0;
  border-color: #ddd;
}
.groups-list.racers-hidden .racer-group-tools {
  border-bottom: none;
}
.groups-list.racers-hidden .draghandle {
  display: inline-block;
}

.groups-list .draghandle {
  display: none;
}

.group-head {
  position: sticky;
  top: 112px;
  z-index: 10;
  background: white;
}
@media print {
  .group-head {
    page-break-inside: avoid;
    break-inside: avoid;
    page-break-after: avoid;
    break-after: avoid;
    -webkit-region-break-after: avoid;
    position: relative;
    top: 0;
  }
}
.group-head .title {
  margin: 0.5rem 2rem 0 0;
}
.group-head .title h2 {
  margin-bottom: 0;
}
.group-head .title .input {
  width: 100%;
}
.group-head > .overflow-menu.right {
  position: absolute;
  top: 0.5em;
  right: 0;
}

.print .group-head {
  position: relative;
  top: 0;
}

.racer-group-tools {
  border-bottom: 1px solid #ddd;
}
.racer-group-tools:after {
  clear: both;
  content: "";
  display: block;
}
.racer-group-tools .column {
  min-width: 11em;
  padding: 0.5em;
  float: left;
}
.racer-group-tools .column.right {
  float: right;
  text-align: right;
  padding-right: 0;
}
.racer-group-tools .column.right .button {
  margin-right: 0;
}
.racer-group-tools .group-tool {
  display: block;
  white-space: nowrap;
  margin-right: 1em;
  font-weight: normal;
  font-style: normal;
  color: inherit;
}
.racer-group-tools .z4field.time {
  display: inline-block;
  padding: 0;
}
.racer-group-tools .z4field.time .input {
  font-size: inherit;
  width: 5em;
  padding-top: 1px;
  padding-bottom: 1px;
}
.racer-group-tools .button {
  margin: 0.3em;
}

.racer-group {
  position: relative;
  margin: 0 0 2em;
  padding-top: 1em;
}
.racer-group:not(.no-break) {
  page-break-inside: avoid;
  break-inside: avoid-page;
}
.racer-group.break-before {
  page-break-before: always;
  break-before: always;
  page-break-inside: auto;
}
.racer-group .field-labels {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}
.racer-group .racer-list a {
  text-decoration: none;
}
.racer-group .column-labels {
  clear: both;
  padding-bottom: 0;
  padding-top: 0.25em;
  border-bottom: 1px solid #aaa;
  background: #ddd;
  font-weight: bold;
  color: black;
  font-size: 0.9em;
}
.racer-group .column-labels .main-field {
  font-weight: 600;
}
.racer-group .width-bumper {
  height: 0;
  white-space: nowrap;
}
.racer-group .column-labels,
.racer-group .racer-list > li {
  min-height: 1.75em;
}
.racer-group .group-information {
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}
.racer-group .group-information:after {
  clear: both;
  content: "";
  display: block;
}
.racer-group .group-information p {
  margin: 0.25em 0;
  color: #666;
}
.racer-group .group-information .info-badge.right {
  margin-right: 0;
}
.racer-group .summary-row {
  padding: 0.5rem 0 0.5rem 3.25rem;
  background: #ddd;
  border-top: 1px solid #aaa;
  font-size: 0.9rem;
  margin-top: 0.5em;
  color: #666;
}
.racer-group .summary-row .item {
  display: inline-block;
  vertical-align: top;
  margin-right: 2rem;
}
.racer-group .summary-row .count {
  color: #333;
}
@media screen and (max-width: 480px) {
  .racer-group .summary-row .item {
    display: block;
  }
}
.racer-group .sanctions-block {
  padding-left: 3.25rem;
}
.racer-group .sanctions-block h3 {
  margin: 0.75em 0 0.25em;
}
.racer-group .racer-list > li.warning {
  padding-right: 0;
  background-color: #F5A623;
}
.racer-group .racer-list > li.starred {
  background-color: #f5e05b;
}
.racer-group .main-field {
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 0.2em;
  margin-bottom: -0.25em;
}
.racer-group .main-field:link {
  color: #ddd;
}
.racer-group .main-field:link > span {
  transition: color 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  color: #333;
  text-decoration: underline solid #aaa;
}
.racer-group .main-field:link:hover {
  color: #2780e3;
}
.racer-group .main-field:link:hover > span {
  color: inherit;
}
.racer-group .main-field:link:active {
  color: #000;
}
.racer-group .main-field:link:active > span {
  color: inherit;
}
.racer-group .main-field.only-wide {
  width: 6rem;
}
.racer-group .main-field.only-wide.name, .racer-group .main-field.only-wide.getName {
  width: 14rem;
  font-weight: 600;
}
.racer-group .main-field.only-wide.getRoundName {
  width: 7rem;
}
.racer-group .main-field.only-narrow {
  white-space: normal;
}
.racer-group .width-bumper,
.racer-group .column-labels,
.racer-group .racer-list > li {
  position: relative;
}
.racer-group .width-bumper > .place,
.racer-group .width-bumper > .bib,
.racer-group .column-labels > .place,
.racer-group .column-labels > .bib,
.racer-group .racer-list > li > .place,
.racer-group .racer-list > li > .bib {
  text-align: right;
  width: 3rem;
  display: inline-block;
}
@media print {
  .racer-group .width-bumper > .place,
.racer-group .width-bumper > .bib,
.racer-group .column-labels > .place,
.racer-group .column-labels > .bib,
.racer-group .racer-list > li > .place,
.racer-group .racer-list > li > .bib {
    top: 0;
  }
}
.racer-group .width-bumper > .place.main-field,
.racer-group .width-bumper > .bib.main-field,
.racer-group .column-labels > .place.main-field,
.racer-group .column-labels > .bib.main-field,
.racer-group .racer-list > li > .place.main-field,
.racer-group .racer-list > li > .bib.main-field {
  position: static;
  top: auto;
  left: auto;
  text-align: start;
  color: black;
}
.racer-group .width-bumper .warning-name,
.racer-group .column-labels .warning-name,
.racer-group .racer-list > li .warning-name {
  width: 10em;
}
.racer-group .width-bumper .split,
.racer-group .column-labels .split,
.racer-group .racer-list > li .split {
  width: 5em;
}
.racer-group .width-bumper .resolution,
.racer-group .column-labels .resolution,
.racer-group .racer-list > li .resolution {
  float: right;
  padding-right: 10px;
}
.racer-group .width-bumper .right-align,
.racer-group .column-labels .right-align,
.racer-group .racer-list > li .right-align {
  text-align: right;
}
.racer-group .width-bumper .lap,
.racer-group .column-labels .lap,
.racer-group .racer-list > li .lap {
  width: 7rem;
  padding: 0 0 0 0.3em;
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
}
.racer-group .width-bumper .lap.no-rank,
.racer-group .column-labels .lap.no-rank,
.racer-group .racer-list > li .lap.no-rank {
  width: 5rem;
}
.racer-group .width-bumper .lap.bonus,
.racer-group .column-labels .lap.bonus,
.racer-group .racer-list > li .lap.bonus {
  width: 7rem;
}
.racer-group .width-bumper .lap.bonus.rank,
.racer-group .column-labels .lap.bonus.rank,
.racer-group .racer-list > li .lap.bonus.rank {
  width: 9rem;
}
.racer-group .width-bumper .lap .rank,
.racer-group .column-labels .lap .rank,
.racer-group .racer-list > li .lap .rank {
  width: 1.5em;
  text-align: right;
  color: rgba(0, 0, 0, 0.5);
  margin-right: 0.5em;
}
.racer-group .width-bumper .lap.winner,
.racer-group .column-labels .lap.winner,
.racer-group .racer-list > li .lap.winner {
  font-weight: 900;
}
.racer-group .width-bumper .lap.winner .rank,
.racer-group .column-labels .lap.winner .rank,
.racer-group .racer-list > li .lap.winner .rank {
  color: transparent;
  background-image: url(/zimg/icon/medal_gold.svg);
  background-size: auto 100%;
  background-position: center right;
  background-repeat: no-repeat;
}
.racer-group .width-bumper .lap.empty,
.racer-group .column-labels .lap.empty,
.racer-group .racer-list > li .lap.empty {
  border-right: 0;
}
.racer-group .width-bumper .sort-column,
.racer-group .column-labels .sort-column,
.racer-group .racer-list > li .sort-column {
  font-weight: 600;
}
.racer-group .width-bumper .total-time,
.racer-group .column-labels .total-time,
.racer-group .racer-list > li .total-time {
  width: 6rem;
  overflow-y: visible;
  padding-left: 0.3rem;
  display: inline-block;
}
.racer-group .width-bumper .total-time.only-narrow,
.racer-group .column-labels .total-time.only-narrow,
.racer-group .racer-list > li .total-time.only-narrow {
  text-align: right;
  padding-right: 0.25rem;
}
.racer-group .width-bumper .total-time.with-diffs,
.racer-group .column-labels .total-time.with-diffs,
.racer-group .racer-list > li .total-time.with-diffs {
  right: 6rem;
}
.racer-group .width-bumper .diff,
.racer-group .column-labels .diff,
.racer-group .racer-list > li .diff {
  width: 6rem;
}
.racer-group .width-bumper .shot-display,
.racer-group .column-labels .shot-display,
.racer-group .racer-list > li .shot-display {
  display: inline-block;
  width: 0.75rem;
  text-align: left;
}
.racer-group .column-labels,
.racer-group .lap-labels {
  font-weight: 600;
  color: #333;
}
.racer-group .column-labels .right-header,
.racer-group .lap-labels .right-header {
  float: right;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.racer-group .column-labels .total-time,
.racer-group .lap-labels .total-time {
  float: right;
}
.racer-group .column-labels .diffs-header,
.racer-group .lap-labels .diffs-header {
  float: right;
  width: 6rem;
}
.racer-group .column-labels .lap-labels,
.racer-group .lap-labels .lap-labels {
  float: right;
}
.racer-group .column-labels .lap,
.racer-group .lap-labels .lap {
  border-right: 1px solid #ddd;
}
.racer-group .column-labels .lap .value,
.racer-group .lap-labels .lap .value {
  padding-left: 2em;
}
.racer-group .column-labels .lap.no-rank .value,
.racer-group .lap-labels .lap.no-rank .value {
  padding-left: 0;
}
.racer-group .status-display {
  visibility: hidden;
  padding-left: 3.2rem;
  padding-top: 0.25em;
  color: #aaa;
}
.racer-group .status-display a {
  font-style: italic;
  font-weight: 400;
  color: inherit;
  text-decoration: none;
}
.racer-group .status-display a:hover {
  text-decoration: underline;
}
.racer-group.racers-filtered .status-display {
  visibility: visible;
}

.content-block:not(.narrow) .only-narrow {
  display: none !important;
}

.content-block.narrow .only-wide {
  display: none !important;
}

.racer-list {
  margin: 0;
  padding: 1em 0 0 0;
  list-style: none;
  position: relative;
  background: #fff;
}
.racer-list > li {
  position: relative;
  padding: 0.25em 0;
  display: block;
}
@media print {
  .racer-list > li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding-top: 1px;
    padding-bottom: 0;
  }
}
.racer-list > li:nth-child(2n) {
  background-color: #f1f3f8;
}
.racer-list > li a {
  color: inherit;
  text-decoration: none;
}
.racer-list > li > a,
.racer-list > li span {
  display: inline-block;
}
.racer-list > li .name {
  color: inherit;
}
.racer-list > li .name:link:hover {
  text-decoration: underline;
}
.racer-list > li .lap-times > .lap {
  display: inline-block;
}
.racer-list > li .lap-times.with-diffs {
  right: 12rem;
}
.racer-list > li > .bib,
.racer-list > li .place {
  display: inline-block;
  text-align: right;
  padding-right: 0.4em;
  color: rgba(0, 0, 0, 0.5);
}
.racer-list > li > .info {
  display: block;
  position: relative;
  margin-top: -0.4em;
  padding-left: 3.25rem;
  margin-right: 5em;
  clear: both;
  opacity: 0.75;
}
.racer-list > li > .info > * {
  font-size: 0.8em;
}
.racer-list > li > .info > *:not(:empty) {
  margin-right: 0.75em;
}
.racer-list > li > .info > *.bib {
  width: auto;
}
.racer-list > li > .info .last-split-name {
  position: absolute;
  top: 0;
  right: -6rem;
  width: 6rem;
  display: block;
  margin-right: 0;
  padding-right: 0.3rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
}
.racer-list > li > .last-split-name {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 6rem;
  display: block;
  margin-right: 0;
  padding-right: 0.3rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
  font-size: 0.8em;
  color: #666;
}
@media print {
  .racer-list > li {
    page-break-inside: avoid;
  }
}
.racer-list .racer-line-1 {
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  width: 100%;
}
.racer-list .place-column {
  flex-basis: 3em;
  flex-grow: 0;
  flex-shrink: 0;
  text-align: right;
  padding-right: 0.5em;
}
.racer-list .fields-columns {
  flex-grow: 1;
  flex-shrink: 0;
}
.racer-list .lap-times {
  white-space: nowrap;
  flex-grow: 0;
  flex-shrink: 0;
}
.racer-list .lap-times > * {
  display: inline-block;
}
.racer-list .right-columns {
  white-space: nowrap;
  flex-grow: 0;
  flex-shrink: 0;
}
.racer-list .right-columns > * {
  display: inline-block;
}
.racer-list .shots-column {
  padding-left: 0.5em;
  padding-right: 0.5em;
}

.racer-group2,
.start-group {
  margin-bottom: 2em;
}
.racer-group2:not(.no-break),
.start-group:not(.no-break) {
  page-break-inside: avoid;
  break-inside: avoid-page;
}
.racer-group2.break-before,
.start-group.break-before {
  page-break-before: always;
  break-before: always;
  page-break-inside: auto;
}
.racer-group2:first-child,
.start-group:first-child {
  page-break-inside: auto;
}
.racer-group2 > h2,
.start-group > h2 {
  font-weight: 600;
  color: #333;
  padding-top: 1em;
  margin-bottom: 0;
  padding-bottom: 0;
}
@media print {
  .racer-group2 > h2,
.start-group > h2 {
    padding-top: 0;
  }
}
.racer-group2 .secondary-info,
.start-group .secondary-info {
  padding-bottom: 0.5em;
}
@media print {
  .racer-group2,
.start-group {
    margin-bottom: 0;
  }
}
.racer-group2 .column-headers,
.start-group .column-headers {
  white-space: nowrap;
  display: block;
  font-weight: 600;
  color: #333;
  background-color: #ddd;
  padding: 0.25em 0;
}
@media print {
  .racer-group2 .column-headers,
.start-group .column-headers {
    border-bottom: 1px solid black;
    display: block;
  }
}
.racer-group2 .main-field,
.start-group .main-field {
  display: inline-block;
  padding-left: 0.2em;
  padding-right: 0.2em;
  width: 6em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}
.racer-group2 .main-field.time,
.start-group .main-field.time {
  width: 5em;
}
.racer-group2 .main-field.bib,
.start-group .main-field.bib {
  width: 4em;
  padding-right: 1em;
  color: inherit;
}
.racer-group2 .main-field.name,
.start-group .main-field.name {
  width: 14em;
  font-weight: 600;
}
.racer-group2 .main-field.bib:first-child,
.start-group .main-field.bib:first-child {
  text-align: right;
}
.racer-group2 .main-field[class*=city], .racer-group2 .main-field[class*=club], .racer-group2 .main-field[class*=team], .racer-group2 .main-field.long,
.start-group .main-field[class*=city],
.start-group .main-field[class*=club],
.start-group .main-field[class*=team],
.start-group .main-field.long {
  width: 12em;
}
.racer-group2 .racer-list > li.racer,
.start-group .racer-list > li.racer {
  white-space: nowrap;
  min-height: 1.5em;
}
.racer-group2 .racer-list > li > .info,
.start-group .racer-list > li > .info {
  padding-left: 0;
}
.racer-group2.startlist .line-2-fields,
.start-group.startlist .line-2-fields {
  color: #666;
  margin-left: 9em;
}
.racer-group2 .line-2-fields,
.start-group .line-2-fields {
  position: relative;
  margin-top: -0.3em;
}
.racer-group2 .line-2-field,
.start-group .line-2-field {
  font-size: 0.9em;
  display: inline-block;
  padding: 0 0.2em;
}

.button-bar.page-actions {
  padding-left: 1em;
  padding-right: 1em;
  padding-top: 0;
  padding-bottom: 0;
}

.page-actions-container {
  border-color: inherit;
  position: relative;
  z-index: 1001;
  position: absolute;
  width: 100%;
  top: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.page-actions-container.disabled {
  pointer-events: none;
}

.page-actions {
  display: block;
  font-size: 0.95em;
  font-weight: 400;
  border: none;
  border-color: inherit;
  position: relative;
  color: #666;
  background-color: #f1f3f8;
  z-index: 4;
  height: 4rem;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  padding-left: 0;
  padding-right: 0;
}
.page-actions:after {
  content: "";
  display: block;
  height: 1px;
  width: 100%;
  background-color: #ddd;
}
.page-actions .shortcut-tabs {
  float: right;
  padding: 0 1em 0 0;
  margin: 0;
  overflow: hidden;
  border-top-right-radius: 4px;
}
.page-actions .shortcut-tabs > li {
  min-width: 6em;
}
.page-actions .shortcut-tabs .shortcut-tab {
  padding-left: 0.5em;
  padding-right: 0.5em;
}
@media screen and (max-width: 480px) {
  .page-actions .shortcut-tabs {
    display: none;
  }
}

.secondary-nav-wrapper {
  height: 4rem;
  border: none;
  border-color: inherit;
  margin-right: 19em;
  overflow-x: hidden;
  text-overflow: ellipsis;
  background: inherit;
  border-top-left-radius: 4px;
}
@media screen and (max-width: 480px) {
  .secondary-nav-wrapper {
    margin-right: 0;
  }
}

.secondary-nav-trigger {
  display: block;
  text-decoration: none;
  color: #666;
  position: relative;
  background: inherit;
  border-top-left-radius: 4px;
  border-color: inherit;
  border-width: 0;
  z-index: 4;
  height: 100%;
  padding: 1.5rem 0.5em 0 6rem;
}
.secondary-nav-trigger:hover .menu-trigger-button {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
}
.secondary-nav-trigger:active .menu-icon {
  box-shadow: none;
}
.secondary-nav-trigger .menu-trigger-button {
  width: 4.5rem;
  height: 2rem;
  cursor: pointer;
  display: inline-block;
  position: absolute;
  top: 1rem;
  left: 1rem;
  border-radius: 3px;
  border: 1px solid rgba(0, 0, 0, 0.25);
  background: #f1f3f8;
  color: inherit;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
  transition: all 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.secondary-nav-trigger .menu-trigger-button .menu-label {
  color: #333;
  font-weight: 600;
  position: absolute;
  top: 0.5em;
  left: 2.25em;
  font-size: 0.9em;
}
.secondary-nav-trigger .menu-icon {
  width: 2.1rem;
  height: 2rem;
  cursor: pointer;
  display: inline-block;
  position: relative;
}
.secondary-nav-trigger .menu-icon span {
  display: block;
  position: absolute;
  height: 3px;
  width: 25%;
  background: #666;
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.25s ease-in-out;
  -moz-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
.secondary-nav-trigger .menu-icon span:nth-child(even) {
  left: 50%;
  border-radius: 0 3px 3px 0;
}
.secondary-nav-trigger .menu-icon span:nth-child(odd) {
  left: 9px;
  border-radius: 3px 0 0 3px;
}
.secondary-nav-trigger .menu-icon span:nth-child(1), .secondary-nav-trigger .menu-icon span:nth-child(2) {
  top: 9px;
}
.secondary-nav-trigger .menu-icon span:nth-child(3), .secondary-nav-trigger .menu-icon span:nth-child(4) {
  top: 14px;
}
.secondary-nav-trigger .menu-icon span:nth-child(5), .secondary-nav-trigger .menu-icon span:nth-child(6) {
  top: 19px;
}

.secondary-nav-title-wrapper {
  display: block;
  height: 1.5em;
  margin-left: 0.5em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.secondary-nav-title-wrapper .secondary-nav-title,
.secondary-nav-title-wrapper .page-title-reminder {
  display: inline-block;
  overflow: hidden;
}
.secondary-nav-title-wrapper .secondary-nav-title {
  color: inherit;
  text-overflow: ellipsis;
}
.secondary-nav-title-wrapper .page-title-reminder {
  color: rgba(170, 170, 170, 0);
  transition: color 0.15s linear;
}
.secondary-nav-title-wrapper .page-title-reminder:before {
  content: "  –  ";
}

.has-secondary-nav.page-content {
  position: relative;
  padding-top: 4em;
  clear: both;
}
.has-secondary-nav .content-block {
  padding: 0 2em;
}
.has-secondary-nav .content-block.no-padding {
  padding: 0;
}
@media screen and (max-width: 480px) {
  .has-secondary-nav.page-content {
    padding-top: 4em;
  }
  .has-secondary-nav .content-block {
    padding: 0 1em;
  }
  .has-secondary-nav .content-block.no-padding {
    padding: 0;
  }
}

.scrolled .page-actions-container,
.popout .page-actions-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #f1f3f8;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: inherit;
  border-radius: 0;
  z-index: 999;
  box-shadow: 0 0 24px -12px #000;
  height: 4rem;
}
.scrolled .page-actions-container .page-actions,
.popout .page-actions-container .page-actions {
  padding-left: 1rem;
  padding-right: 2rem;
  border-color: inherit;
  margin-top: -1px;
  margin-left: auto;
  margin-right: auto;
  border-width: 0;
}
.scrolled .page-actions-container .page-actions:after,
.popout .page-actions-container .page-actions:after {
  display: none;
}
.scrolled .has-secondary-nav,
.popout .has-secondary-nav {
  padding-top: 4rem;
}
.scrolled .page-title-reminder,
.popout .page-title-reminder {
  color: #aaaaaa;
}
.scrolled .secondary-nav-title,
.popout .secondary-nav-title {
  max-width: 15em;
}
.scrolled .secondary-navigation,
.popout .secondary-navigation {
  left: 1rem;
}
.scrolled .shortcut-tabs,
.popout .shortcut-tabs {
  background: none;
  height: 100%;
}

.secondary-navigation {
  visibility: hidden;
  overflow: hidden;
  position: absolute;
  width: 18rem;
  z-index: 3;
  color: #666;
  background-color: #f1f3f8;
  border: none;
  border-top: 1px solid #eaeaea;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.15), 0 0 2px rgba(0, 0, 0, 0.5);
  counter-reset: twonav;
  /*@media screen and (max-width:$main-width){
      display:none;
      +.content-block{
          margin-left:0;
      }
  }*/
}
.secondary-navigation .nav-menu-list {
  margin: 0;
  padding: 0;
}
.secondary-navigation .secondary-nav-list {
  list-style: none;
  margin: 0;
  padding: 1em 0;
  opacity: 0.6;
  max-height: 0;
  transition: max-height 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  overflow: hidden;
}
.secondary-navigation .site-navigation {
  display: none;
}

.secondary-nav-expanded .secondary-nav-trigger:hover:after {
  display: none;
}
.secondary-nav-expanded .secondary-nav-title {
  color: #666;
}
.secondary-nav-expanded .secondary-navigation {
  visibility: visible;
}
.secondary-nav-expanded .secondary-nav-list {
  max-height: 600px;
  opacity: 1;
  transition: max-height 0;
}
.secondary-nav-expanded .menu-trigger-button {
  box-shadow: none;
  border-color: transparent;
  background-color: rgba(0, 0, 0, 0.1);
}
.secondary-nav-expanded .secondary-nav-trigger:hover .menu-trigger-button {
  box-shadow: none;
}
.secondary-nav-expanded .menu-icon span:nth-child(1),
.secondary-nav-expanded .menu-icon span:nth-child(6) {
  transform: rotate(45deg);
}
.secondary-nav-expanded .menu-icon span:nth-child(2),
.secondary-nav-expanded .menu-icon span:nth-child(5) {
  transform: rotate(-45deg);
}
.secondary-nav-expanded .menu-icon span:nth-child(1) {
  left: 9px;
  top: 10px;
}
.secondary-nav-expanded .menu-icon span:nth-child(2) {
  left: 50%;
  top: 10px;
}
.secondary-nav-expanded .menu-icon span:nth-child(3) {
  opacity: 0;
}
.secondary-nav-expanded .menu-icon span:nth-child(4) {
  opacity: 0;
}
.secondary-nav-expanded .menu-icon span:nth-child(5) {
  left: 9px;
  top: 16px;
}
.secondary-nav-expanded .menu-icon span:nth-child(6) {
  left: 50%;
  top: 16px;
}

.secondary-nav-item {
  margin: 0 1rem;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  position: relative;
}
.secondary-nav-item.secondary-nav-active {
  color: #333;
  font-weight: 600;
}
.secondary-nav-item.secondary-nav-active.numbered:before {
  background: #666;
}
.secondary-nav-item > a {
  transition: background-color 0.2s ease-in-out;
  display: block;
  text-decoration: none;
  padding: 0.5rem 1rem 0.5rem 2rem;
  border-radius: 2px;
  color: inherit;
}
.secondary-nav-item:not(.secondary-nav-active) a:hover {
  background-color: #d0e2ec;
  color: #333;
  text-decoration: none;
}
.secondary-nav-item.separator-before {
  margin-top: 0.5rem;
  padding-top: 0.5rem;
  border-top: 1px solid #d0e2ec;
}
.secondary-nav-item.separator-after {
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #d0e2ec;
}
.secondary-nav-item.back:before {
  content: "";
  display: block;
  position: absolute;
  left: 0.5em;
  top: 0.5em;
  width: 16px;
  height: 16px;
  background-image: url("/zimg/arrow/fat-left-dark.svg");
  background-size: 100%;
}
.secondary-nav-item.back.secondary-nav-active {
  color: #aaa;
}
.secondary-nav-item.back.secondary-nav-active:before {
  display: none;
}
.secondary-nav-item.numbered {
  counter-increment: twonav;
}
.secondary-nav-item.numbered:before {
  content: "" counter(twonav);
  display: block;
  position: absolute;
  left: 0.25em;
  top: 0.4em;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  background: #aaa;
  background-size: 100%;
  color: white;
  font-weight: 600;
  text-align: center;
  line-height: 1.6;
}

body.race .secondary-nav-item.numbered.complete:before {
  background-color: #77AFED;
}
body.race .secondary-nav-item.numbered.secondary-nav-active:before {
  background-color: #1b70cf;
}

body.registration .secondary-nav-item.numbered.complete:before {
  background-color: #4CAF50;
}
body.registration .secondary-nav-item.numbered.secondary-nav-active:before {
  background-color: #2a6317;
}

@media screen and (max-width: 480px) {
  .z4app.has-secondary-nav {
    padding-top: 4em;
    margin-top: 0;
    min-height: calc(100vh - 1em);
  }
  .z4app.has-secondary-nav .page-actions-container .page-actions {
    padding-left: 0.5rem;
    padding-right: 0;
  }
  .z4app.has-secondary-nav .page-actions-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #f1f3f8;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: inherit;
    z-index: 999;
    box-shadow: 0 0 24px -12px #000;
    height: 4rem;
  }
  .z4app.has-secondary-nav .page-actions-container .page-actions {
    padding: 0;
    border-color: inherit;
    margin-top: -1px;
    margin-left: 0;
    margin-right: 0;
    border-width: 0;
  }
  .z4app.has-secondary-nav .page-actions-container .page-actions:after {
    display: none;
  }
  .z4app.has-secondary-nav .page-title-reminder {
    color: #aaa;
  }
  .z4app.has-secondary-nav .secondary-nav-title {
    max-width: 15em;
  }
  .z4app.has-secondary-nav .secondary-nav-trigger {
    margin-right: 0;
    margin-left: 0;
    width: 100%;
    padding-left: 6rem;
  }
  .z4app.has-secondary-nav .secondary-navigation {
    left: 0;
    width: 100%;
    height: calc(100vh - 62px);
    border-bottom: none;
    border-left: none;
    border-right: none;
    overflow: auto;
  }
  .z4app.has-secondary-nav .secondary-nav-item {
    padding-left: 1.6rem;
  }
  .z4app.has-secondary-nav .secondary-nav-item .info-badge {
    display: none;
    right: unset;
    left: 1rem;
    top: 0.5rem;
  }
  .z4app.has-secondary-nav .shortcut-tabs {
    background: none;
    height: 100%;
  }
  .z4app.has-secondary-nav .secondary-nav-list {
    margin-bottom: 14rem;
  }
  .z4app.has-secondary-nav .page-title-reminder {
    display: none;
  }

  .secondary-navigation .site-navigation {
    position: fixed;
    display: block;
    bottom: 0;
    left: 0;
    background: #2780e3;
    border-top: 1px solid #d0e2ec;
    box-shadow: 0 0 36px -12px #2780e3;
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    width: 100vw;
  }
  .secondary-navigation .site-navigation .nav-menu-list {
    list-style: none;
    margin: 0;
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(27, 112, 207, 0.3);
  }
  .secondary-navigation .site-navigation .secondary-nav-item {
    color: white;
    font-weight: bold;
    font-size: 0.95em;
  }
  .secondary-navigation .site-navigation .zone4-logo {
    display: block;
    height: 2rem;
    background-size: auto 75%;
    background-position: right 1rem center;
    text-indent: 480px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: clip;
    margin: 0.5rem 0;
    width: 100vw;
  }

  .secondary-nav-expanded .secondary-navigation {
    max-height: 100vh;
  }
  .secondary-nav-expanded .secondary-navigation .site-navigation {
    max-height: 13rem;
  }

  .body-secondary-nav .site-header,
.body-secondary-nav .title-wrapper {
    display: none;
  }
}
.page-actions-container .scrolled-page-title {
  display: none;
  position: absolute;
  top: 0;
  font-size: 0.9em;
  color: white;
  margin: 0.2em 0 0 0;
}
.page-actions-container .scrolled-page-title .home-link {
  display: inline-block;
  margin-right: 1em;
  background-image: url("/zimg/whitelogo.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  width: 4.5em;
  text-indent: 5em;
  overflow: hidden;
  white-space: nowrap;
  vertical-align: middle;
}
body.scrolled .page-actions-container .scrolled-page-title {
  display: block;
}

@media screen and (max-width: 640px) {
  .workflow-progress,
.overview-link {
    display: none !important;
  }
}
.page-actions-container.horizontal-progress {
  text-align: center;
}
.page-actions-container.horizontal-progress .constrained-width {
  padding-left: 0;
  padding-right: 0;
}
body.scrolled .page-actions-container.horizontal-progress .constrained-width {
  padding-left: 1em;
  padding-right: 1em;
}
.page-actions-container.horizontal-progress .page-actions {
  height: auto;
  margin-top: 0;
  margin-right: 0;
  margin-left: 0;
  border: none;
}
body.race.scrolled .page-actions-container.horizontal-progress .page-actions {
  border-color: #1160b8;
  border-bottom: 1px solid #ddd;
}
body.scrolled .page-actions-container.horizontal-progress .page-actions {
  margin-top: 23px;
  margin-right: 0;
  margin-left: 0;
}
.page-actions-container.horizontal-progress .page-button-bar {
  background: #f1f3f8;
  margin-left: 1px;
  margin-right: 1px;
  padding: 0.5em 1em;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid transparent;
}
.page-actions-container.horizontal-progress .page-button-bar .button {
  margin-top: 0;
}
.page-actions-container.horizontal-progress .menu-opener {
  display: none;
}
.page-actions-container.horizontal-progress .secondary-nav-wrapper {
  display: none;
}

@media screen and (max-width: 640px) {
  .site-header.changeable {
    display: none;
  }

  .z4app.has-secondary-nav .page-actions-container.horizontal-progress {
    position: fixed;
    top: 0;
    left: 0;
    height: 4em;
    width: 100%;
    background: #2780e3;
  }
  .z4app.has-secondary-nav .page-actions-container.horizontal-progress .secondary-nav-wrapper {
    display: block;
  }
  .z4app.has-secondary-nav .page-actions-container.horizontal-progress .constrained-width {
    padding-left: 0;
    padding-right: 0;
  }
  .z4app.has-secondary-nav .page-actions-container.horizontal-progress .scrolled-page-title {
    display: block;
    font-size: 1rem;
    z-index: 9;
    background: #2780e3;
    padding: 0 1em;
    width: 100%;
    height: 100%;
    text-align: left;
    padding-top: 0.25em;
  }
  .z4app.has-secondary-nav .page-actions-container.horizontal-progress .home-link {
    display: block;
    margin-top: 0.5em;
  }
}
body.race.scrolled .page-actions-container {
  background: #2780e3;
}

/*body.race{
    .page-content.has-secondary-nav{
        border-color: $darker-blue;
        border-top-color: darken($darkest-blue, 5%);
    }
    .secondary-nav-wrapper{
        height: auto;
    }
    .secondary-nav-trigger{
        display: none;
    }
    .page-actions-container{
        background-color: $darker-blue;
        background-image: linear-gradient(to bottom, #1b70cf, #2780e3);
        //background-image: linear-gradient(to bottom, #1059aa, #1160b8);

        .page-actions{
            background-color: transparent;
            height: auto;
            text-align: center;
            &:after{
                display: none;
            }
        }
    }
}*/
.horizontal-progress .menu-opener {
  position: absolute;
  height: 2rem;
  max-width: 2rem;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 2rem;
  top: 0.5rem;
  border-radius: 2px;
  box-shadow: 0 0 16px #1160b8;
  background: #2780e3;
  transition: max-width 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955), background-color 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  line-height: 2.5;
  color: white;
  font-weight: bold;
  text-decoration: none;
  padding-right: 0.5rem;
  font-size: 0.9em;
}
.horizontal-progress .menu-opener:hover {
  max-width: 10rem;
  background-color: #77AFED;
}
.horizontal-progress .menu-opener:hover:before {
  opacity: 1;
}
.horizontal-progress .menu-opener:before {
  content: "";
  display: block;
  width: 50%;
  height: 50%;
  top: 25%;
  left: 0.5rem;
  position: absolute;
  background-size: auto 100%;
  opacity: 0.9;
  background-repeat: no-repeat;
}
.horizontal-progress .overview-link {
  left: 0.5rem;
  position: absolute;
  height: 2rem;
  max-width: 2rem;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 2rem;
  top: 0.8rem;
  z-index: 3;
  border-radius: 2px;
  transition: max-width 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955), background-color 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  line-height: 2.3;
  color: #333;
  font-weight: bold;
  text-decoration: none;
  padding-right: 0.5rem;
  font-size: 0.9em;
  border: 1px solid transparent;
  overflow: hidden;
}
.horizontal-progress .overview-link:hover {
  max-width: 10rem;
  background-color: #ddd;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.15), 0 2px 2px rgba(255, 255, 255, 0.25) inset;
  border: 1px solid #ccc;
}
.horizontal-progress .overview-link:hover:before {
  opacity: 1;
}
.horizontal-progress .overview-link:before {
  content: "";
  display: block;
  width: 50%;
  height: 50%;
  top: 25%;
  left: 0.5rem;
  position: absolute;
  background-size: auto 100%;
  opacity: 0.5;
  background-repeat: no-repeat;
  background-image: url("/zimg/arrow/round-left-dark.svg");
}
body.scrolled .horizontal-progress .overview-link {
  top: 0.25rem;
}

@media screen and (max-width: 640px) {
  body.scrolled .page-actions-container.horizontal-progress .page-actions {
    margin-top: 0;
  }

  .secondary-navigation {
    text-align: left;
  }

  .horizontal-progress .secondary-nav-list {
    padding-top: 6em;
  }

  .page-actions-container .scrolled-page-title {
    margin-top: 0;
  }

  .horizontal-progress .menu-opener {
    display: block !important;
    right: 1em;
    top: 1em;
    text-align: right;
  }
  .horizontal-progress .menu-opener:before {
    background-image: url("/zimg/icon/menu.svg");
  }
  body.scrolled .horizontal-progress .menu-opener {
    top: 1em;
  }
}
.eventpage-content .content-section {
  padding-bottom: 1em;
  margin-bottom: 4em;
  border-bottom: 1px solid #ddd;
}
.eventpage-content h2 {
  color: #666;
  border-left: 1rem solid #aaa;
  padding-left: 0.5rem;
  margin-top: 1.5em;
  font-weight: 600;
}
.eventpage-content h2.registrations {
  border-left-color: #4CAF50;
}
.eventpage-content h2.results {
  border-left-color: #2780e3;
}

.event-selector {
  padding: 1em;
}
.event-selector ul.list {
  height: 40vh;
  max-height: 40vh;
  overflow-y: auto;
  margin-bottom: 1em;
  border: 1px solid #ddd;
}
.event-selector ul.list li {
  padding-right: 8em;
  position: relative;
  margin: 0.5em;
}

body.club .body-container .search-results ul[id=events-list] > li {
  display: flex;
  justify-content: space-between;
}

.event-info-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-column-gap: -1px;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ddd;
}
.event-info-grid .info-grid-section {
  padding: 0.5em 1.5em;
  position: relative;
}
.event-info-grid .info-grid-section .z4-icon {
  display: block;
  position: absolute;
  top: 0.75em;
  left: 0.4em;
  height: 0.9em;
  width: 0.9em;
  background-size: 100%;
  opacity: 0.4;
}

html.promo {
  background-attachment: initial;
  background-position: left 0 bottom 196px;
}
html.promo h2 {
  font-size: 1.5rem;
  color: #666;
  font-weight: 600;
  margin-top: 2em;
}
html.promo h2.section {
  color: #2780e3;
  border-bottom: 1px solid #ddd;
}
html.promo h3.section {
  margin-top: 2em;
  font-size: 1.1em;
}
html.promo .page-content {
  margin-top: 2em;
  border: none;
  border-radius: none;
  box-shadow: none;
  padding-bottom: 0;
}
html.promo .page-content.background {
  background: none;
}
html.promo .page-content.semitransparent {
  border-bottom: 1px solid transparent;
  background-color: rgba(241, 243, 248, 0.75);
  border-radius: 0;
}
html.promo .page-content.white-background {
  background: white;
  padding: 1em;
  margin-top: 0;
}
html.promo .page-content p {
  line-height: 150%;
}
html.promo .page-content > h1 {
  margin-top: 1em;
}
html.promo .hero-text {
  max-width: 640px;
  font-weight: 400;
  font-size: 1.25em;
  line-height: 1.25;
  margin-bottom: 1em;
}
html.promo .hero-text > p {
  margin-top: 1em;
  margin-bottom: 0;
}
@media screen and (max-width: 500px) {
  .page-content html.promo .hero-text {
    margin-left: 1em;
    margin-right: 1em;
  }
}
html.promo .only-mobile {
  display: none;
}
html.promo .shadow-panel {
  background-color: white;
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  overflow: hidden;
}
html.promo .shadow-panel.content-section {
  font-size: 1.2rem;
  color: #666;
}
html.promo .shadow-panel.padded {
  padding: 0 2em;
}
html.promo .shadow-panel.highlight {
  border-top: 4px solid #4CAF50;
}
html.promo .shadow-panel > h2:first-child {
  font-size: 2rem;
  margin-top: 2rem;
}
html.promo .shadow-panel h3 {
  color: #333;
  font-weight: bold;
}
html.promo .move-up {
  margin-top: -4em;
}
html.promo .move-up h1.promo {
  margin-top: 0.5em;
}
@media screen and (min-width: 719px) {
  html.promo body.sports-page .shadow-panel {
    padding-left: 2em;
    padding-right: 2em;
  }
}
@media screen and (max-width: 480px) {
  html.promo .page-content {
    margin-top: 0;
  }
  html.promo .page-content.pad {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  html.promo .content-section {
    margin-left: 1em;
    margin-right: 1em;
  }
  html.promo .only-mobile {
    display: block;
  }
  html.promo .no-mobile {
    display: none;
  }
  html.promo .page-content:not(.pad) > h1 {
    margin-left: 1rem;
    margin-right: 1rem;
  }
  html.promo .page-content:not(.pad) .shadow-panel.padded {
    margin-left: 0;
    margin-right: 0;
    padding-left: 1em;
    padding-right: 1em;
  }
  html.promo .page-content:not(.pad) .shadow-panel.content-section {
    border-radius: 0;
    margin-top: 0;
    margin-bottom: 0;
  }
}

ul.parsley-errors-list {
  list-style: none;
}

form.promo .input-wrapper input.parsley-error, form.promo .input-wrapper select.parsley-error {
  border: 1px solid #ec8e8e;
}
form.promo .input-wrapper input.parsley-error:focus, form.promo .input-wrapper select.parsley-error:focus {
  border: 1px solid #c11;
}

.try-it-section {
  background: white;
  border-radius: 3px;
  margin: 2em 0;
  padding: 0;
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.05);
  font-size: 1.4em;
  overflow: hidden;
}
.try-it-section > div {
  position: relative;
  margin: 0 auto;
  padding: 1em;
}
.try-it-section h4 {
  font-size: 2rem;
  position: relative;
  color: inherit;
}
.try-it-section h4 .right {
  position: absolute;
  top: 0;
  right: 0;
}
.try-it-section small {
  font-size: 0.8em;
}
.try-it-section .options {
  list-style: none;
  margin: 1em 0;
  padding: 0;
}
.try-it-section .options > li {
  margin: 0.5em 0;
}
.try-it-section .extra {
  background: rgba(255, 255, 255, 0.15);
  padding: 1em;
  overflow: auto;
}
.try-it-section .extra p {
  margin: 0;
}
.try-it-section .extra a {
  color: #ffa;
  transition: color 200ms cubic-bezier(0.215, 0.61, 0.355, 1);
}
.try-it-section .extra a:hover {
  color: #f5e05b;
}
.try-it-section .extra .button {
  position: absolute;
  right: 1rem;
  top: 1rem;
  color: white;
}
.try-it-section.race, .try-it-section.reg {
  color: white;
}
.try-it-section.race > div:first-child, .try-it-section.reg > div:first-child {
  background-image: radial-gradient(circle 300px at 75% 100%, rgba(0, 0, 0, 0.15), transparent 90%);
}
.try-it-section.race > div:first-child:before, .try-it-section.reg > div:first-child:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 9em;
  background-color: inherit;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 1em 100%);
  background-size: contain;
  background-position: 30px center;
  background-repeat: no-repeat;
}
.try-it-section.race {
  background-color: #1b70cf;
}
.try-it-section.race > div:first-child:before {
  background-color: #1b70cf;
  background-image: url("/zimg/stopwatch-white.png");
}
.try-it-section.reg {
  background-color: #3e8a41;
}
.try-it-section.reg > div:first-child:before {
  background-color: #3e8a41;
  background-image: url("/zimg/clipboard-white.png");
}
.try-it-section.gochip {
  background-image: url("/zimg/testkit.jpg");
  background-size: cover;
  color: white;
  border: 1px solid black;
}
.try-it-section.gochip .extra {
  background-color: rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 480px) {
  .try-it-section > div:first-child:before {
    display: none;
  }
  .try-it-section .extra .button {
    position: static;
    margin: 0;
  }
}

.promo-compare {
  color: #666;
  display: flex;
  flex-direction: row;
}
.promo-compare .col {
  flex-basis: 33.33%;
  border-right: 1px solid #ddd;
  color: inherit;
  padding: 4em 1em 4em 1em;
  position: relative;
}
.promo-compare .col:last-child {
  border-right: none;
}
.promo-compare .col .button-container {
  text-align: center;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0 0 1em 0;
}
.promo-compare .col .button-container .button {
  display: block;
  width: 50%;
  margin: auto;
}
.promo-compare .col .contact-info {
  font-size: smaller;
  text-align: center;
  margin-bottom: 1em;
  position: absolute;
  bottom: 0;
}
.promo-compare .col .contact-info a {
  color: #2780e3;
}
.promo-compare h3, .promo-compare .price {
  text-align: center;
}
.promo-compare h3 {
  font-size: 1.4em;
}
.promo-compare .price {
  min-height: 3em;
  margin-top: 0.5em;
}
.promo-compare .amount {
  font-size: 2em;
  font-weight: 600;
}
.promo-compare .link {
  color: #2780e3;
}
.promo-compare p {
  line-height: 150%;
}
.promo-compare p strong {
  color: #333;
}
.promo-compare .extra-price {
  margin: 1em 0;
  padding: 0 1em;
  list-style: none;
  line-height: 150%;
  font-size: 0.95em;
}
.promo-compare .features {
  font-size: 0.95em;
  list-style: none;
  margin: 1em 0;
  padding: 2em 0 0 0;
  border-top: 1px dashed #ddd;
  color: #333;
}
.promo-compare .features > li {
  padding-left: 1em;
  margin-bottom: 1em;
}
.promo-compare .features > li::before {
  content: "‣";
  color: #aaa;
  padding-right: 1em;
  position: absolute;
  left: 1em;
}
.promo-compare .features > li.no {
  color: #aaa;
  text-decoration: line-through;
}
.promo-compare .features > li.no::before {
  content: "-";
}
.promo-compare.extra .col {
  padding-top: 1rem;
}
.promo-compare .featured {
  background-image: linear-gradient(to bottom, #ffc, #ffe);
}
.promo-compare .featured:before {
  content: "Recommended for new Race Directors";
  position: absolute;
  text-align: center;
  font-size: 10pt;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1em 0;
  background: #ffa;
  font-weight: 600;
}
.promo-compare .yellow {
  background: #ffe;
}
.promo-compare .green h3, .promo-compare .green .amount {
  color: #2a6317;
}
.promo-compare .blue h3, .promo-compare .blue .amount {
  color: #1b70cf;
}
.promo-compare .orange h3, .promo-compare .orange .amount {
  color: #F5A623;
}
@media screen and (max-width: 480px) {
  .promo-compare {
    flex-direction: column;
  }
  .promo-compare .col {
    border-left: none;
    border-right: none;
  }
  .promo-compare .col.featured {
    order: -1;
  }
  .promo-compare.extra {
    display: none;
  }
}

form.promo {
  max-width: 480px;
  margin: 0 auto;
}
form.promo > h1 {
  margin: 1em 0 0.25em 0;
}
form.promo > div {
  margin-bottom: 2em;
}
form.promo .extra,
form.promo .extra p {
  color: #666;
  margin-top: 0;
  padding-top: 0.5em;
  font-size: 0.9rem;
  line-height: 125%;
}
form.promo .extra a,
form.promo .extra p a {
  color: #2780e3;
}
form.promo label {
  display: block;
  font-size: 1.5em;
  color: #666;
  padding: 0.25em 0;
}
form.promo label:after {
  content: ":";
}
form.promo label + .extra {
  color: #666;
}
form.promo hr {
  margin: 2em -2em;
  border: none;
  border-top: 1px solid #1b70cf;
}
form.promo .input-wrapper input,
form.promo .input-wrapper select,
form.promo .input-wrapper textarea {
  font-size: 1.5em;
  padding: 0.5em;
  width: 100%;
  border: 1px solid #ddd;
  transition: border-color 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  background: white;
}
form.promo .input-wrapper input:focus,
form.promo .input-wrapper select:focus,
form.promo .input-wrapper textarea:focus {
  border: 1px solid #2780e3;
  outline: none;
}
form.promo .input-wrapper.date .month {
  width: 42%;
  margin-right: 2%;
  display: inline-block;
}
form.promo .input-wrapper.date .day {
  width: 20%;
  margin-right: 2%;
  display: inline-block;
}
form.promo .input-wrapper.date .year {
  width: 32%;
  display: inline-block;
}
form.promo ul.input-wrapper {
  margin: 1em 0;
  padding: 0;
  list-style: none;
}
form.promo ul.input-wrapper .z4-styled + label {
  color: #333;
}
form.promo ul.input-wrapper .z4-styled + label:after {
  content: unset;
}

.contact.panel {
  border: 1px solid #1b70cf;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.15);
  border-radius: 2px;
  margin: 2em;
}
.contact.panel.dark .panel-body {
  background-color: #1b70cf;
  padding: 1em;
}
.contact.panel .label {
  display: block;
  color: white;
  font-size: 0.9em;
}
.contact.panel .extra {
  font-size: 0.9em;
  color: #ddd;
  display: block;
  border-top: 1px solid #77AFED;
  padding-top: 1em;
}
.contact.panel .contact-detail {
  display: block;
  color: #ddedcc;
  line-height: 3em;
  font-weight: 600;
  text-decoration: none;
}
.contact.panel .row > div {
  padding: 0.75em;
}

html.promo.hero .site-header-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
html.promo.hero .header-navigate {
  background: none;
}
html.promo.hero .site-header.promo,
html.promo.hero .header-promo-section,
html.promo.hero .site-header.promo .constrained-width {
  background: none;
  background-color: none;
  border-bottom-color: transparent;
}
html.promo.hero .site-header.promo.expanded {
  background: #1160b8;
}
html.promo.hero .sub-header {
  border-top: transparent;
  background: none;
  padding: 0;
}
html.promo.hero .sub-header .constrained-width {
  padding-top: 0.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}
@media screen and (max-width: 960px) {
  html.promo.hero .sub-header {
    background: #1160b8;
  }
}
html.promo.hero .hero-container-bg {
  padding-top: 10em;
  padding-bottom: 8em;
  background: #1558a2;
  background-size: cover;
  background-position: center;
}
html.promo.hero .hero-container-bg.cyclists {
  background-image: url("/zimg/promo/cyclists.jpg");
}
html.promo.hero .hero-container-bg.rapidcam {
  background-image: url("/zimg/promo/rapidcam-page-banner.jpg");
}
html.promo.hero .hero-container-bg.crowd {
  background-image: url("/zimg/promo/crowd.jpg");
}
html.promo.hero .hero-container-bg.flags {
  background-image: url("/zimg/promo/zone4_flags.JPG");
}
html.promo.hero .hero-container-bg.chips {
  background-image: url("/zimg/promo/chips.jpg");
}
html.promo.hero .hero-container-bg.skiing {
  background-image: url("/zimg/promo/skiing.jpg");
}
html.promo.hero .hero-container-bg.enduro {
  background-image: url("/zimg/promo/enduro.png");
}
html.promo.hero .hero-container-bg.triathlon {
  background-image: url("/zimg/promo/itu_swimstart.jpg");
}
html.promo.hero .hero-container-bg.dometruck {
  background-image: url("/zimg/promo/dometruck.jpg");
}
html.promo.hero .hero-container-bg.alpine {
  background-image: url("/zimg/promo/alpine.jpg");
}
html.promo.hero .hero-container-bg.snowboard {
  background-image: url("/zimg/promo/snowboard-header.jpg");
}
html.promo.hero .hero-container-bg.biathlon {
  background-image: url("/zimg/promo/biathlon-hero.jpg");
}
html.promo.hero .hero-container {
  user-select: none;
}
html.promo.hero .hero-container h1 {
  color: #ffa;
  font-size: 3em;
  font-weight: 300;
  margin-top: 1em;
  white-space: normal;
}
html.promo.hero .hero-container p {
  color: #d0e2ec;
  font-weight: 400;
  font-size: 1.25em;
  line-height: 1.25;
  max-width: 640px;
  user-select: none;
}
@media screen and (max-width: 960px) {
  html.promo.hero .hero-container {
    margin: 0 1em;
  }
}

html.promo .tagline-container, html.promo .tagline-container-bg {
  font-size: 1.2rem;
  margin-bottom: 1.5em;
}
html.promo .tagline-container h2, html.promo .tagline-container-bg h2 {
  font-weight: 600;
  color: inherit;
}
html.promo .tagline-container p, html.promo .tagline-container-bg p {
  line-height: 1.5;
}
html.promo .tagline-container p.lighter, html.promo .tagline-container-bg p.lighter {
  font-weight: lighter;
}
html.promo .tagline-container p.small, html.promo .tagline-container-bg p.small {
  font-size: 0.8rem;
}
html.promo .tagline-container p.sub-heading, html.promo .tagline-container-bg p.sub-heading {
  line-height: 1;
}
html.promo .tagline-container-bg {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  background-size: cover;
}
html.promo .tagline-container-bg.cyclists {
  background-image: url("https://s3-us-west-2.amazonaws.com/clubstatic/f778938077e311e79eda0ad99e951742.jpeg");
  background-position: center;
}
html.promo .tagline-container-bg.flags {
  background-image: url("/zimg/promo/zone4_flags.JPG");
  background-position: center left;
  background-position-x: -280px;
  color: white;
}
html.promo .tagline-container-bg.flags > .flags-container {
  padding: 1em 5em;
  width: 100%;
  height: 350px;
}
@media screen and (max-width: 480px) {
  html.promo .tagline-container-bg.flags > .flags-container {
    padding: 1em;
  }
}
html.promo .tagline-container-bg.flags > .flags-container > * {
  max-width: 960px;
  margin: 0.75em auto;
  padding: 8px;
}
html.promo .tagline-container-bg.swimstart {
  background-image: url("/zimg/promo/itu_swimstart.jpg");
  background-position: center left;
  color: white;
}
html.promo .tagline-container-bg.swimstart > .swimstart-container {
  padding: 3em 5em 5em 5em;
  width: 100%;
}
@media screen and (max-width: 480px) {
  html.promo .tagline-container-bg.swimstart > .swimstart-container {
    padding: 1em;
  }
}
html.promo .tagline-container-bg.swimstart > .swimstart-container > * {
  max-width: 960px;
  margin: 0.75em auto;
}
html.promo .tagline-container-bg.rapidcam {
  background-image: url("/zimg/promo/rapidcam.jpeg");
  background-position: center left;
  color: white;
}
html.promo .tagline-container-bg.rapidcam > .rapidcam-container {
  padding: 3em 5em 5em 5em;
  width: 100%;
}
@media screen and (max-width: 480px) {
  html.promo .tagline-container-bg.rapidcam > .rapidcam-container {
    padding: 1em;
  }
}
html.promo .tagline-container-bg.rapidcam > .rapidcam-container > * {
  max-width: 960px;
  margin: 0.75em auto;
}
html.promo .tagline-container-bg.chip-rack {
  justify-content: flex-end;
  height: 350px;
  background-image: url("img/promo/chip-rack.jpg");
}
html.promo .tagline-container-bg h2 {
  color: white;
}
html.promo .tagline-container-bg > div.angled-overlay-left {
  color: white;
  padding: 1em 4em 1em 1em;
  background: rgba(17, 96, 184, 0.85);
  max-width: 480px;
  clip-path: polygon(0 0, 100% 0, 95% 100%, 0 100%);
}
@media screen and (max-width: 480px) {
  html.promo .tagline-container-bg > div.angled-overlay-left {
    clip-path: none;
  }
}
html.promo .tagline-container-bg:after {
  clear: both;
  content: "";
  display: block;
}
html.promo .tagline-container-bg > div.square-overlay {
  flex-grow: 1;
  padding: 1em 1em 1em 1em;
  color: #666;
  height: 100%;
  max-width: 33.33%;
}
html.promo .tagline-container-bg > div.square-overlay.transparent {
  color: white;
}
html.promo .tagline-container-bg > div.square-overlay.light {
  background: rgba(255, 255, 255, 0.65);
  color: #333;
}
html.promo .tagline-container-bg > div.square-overlay.dark {
  color: #666;
  background: rgba(255, 255, 255, 0.9);
}
html.promo .tagline-container-bg > div.square-overlay h3 {
  color: inherit;
}
html.promo .tagline-container-bg p.sub-heading {
  color: #ffa;
}
@media screen and (max-width: 480px) {
  html.promo .tagline-container-bg > div {
    clip-path: none;
    padding: 1em;
  }
}
@media screen and (max-width: 480px) {
  html.promo .tagline-container-bg.chip-rack {
    height: auto;
  }
  html.promo .tagline-container-bg > div.square-overlay {
    max-width: 100%;
  }
}
html.promo .tagline-container {
  color: #666;
  font-size: 1.2rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 1em;
}
html.promo .tagline-container.light {
  background-color: rgba(255, 255, 255, 0.5);
}
html.promo .tagline-container.transparent {
  background-color: transparent;
  border: 0;
  box-shadow: none;
}
html.promo .tagline-container.no-padding {
  padding: 0;
}
html.promo .tagline-container .col {
  flex-grow: 1;
  min-width: 320px;
}
html.promo .tagline-container .col.tagline {
  padding: 0 2em 0 0;
}
@media screen and (max-width: 480px) {
  html.promo .tagline-container .col.tagline {
    padding: 1em;
  }
}
html.promo .tagline-container .col.image {
  padding: 2em;
  max-width: 100%;
}

html.promo h2 {
  color: #2780e3;
}

.products-list {
  margin-top: 4em;
}
.products-list hr {
  border: none;
  border-top: 1px dashed #d0e2ec;
  margin: 0 30%;
}

html.promo .pricing {
  max-width: 640px;
  margin-right: 2em;
}
html.promo .pricing .amount {
  color: #3e8a41;
  font-size: 1.5em;
  font-weight: bold;
}
html.promo .pricing small {
  display: block;
  color: #aaa;
}
html.promo .pricing .button {
  margin-top: 0.5em;
  float: right;
}
html.promo .pricing .unit {
  color: #666;
}

html.promo body.products div.page-content .button {
  width: 100%;
  max-width: 270px;
  text-align: center;
}

html.promo .products-grid {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 1.2rem;
  background: transparent;
  color: #666;
}
html.promo .products-grid h2 {
  margin-top: 0;
}
html.promo .products-grid .product {
  padding: 2em 1em;
  flex-basis: 49%;
  position: relative;
  padding-bottom: 4em;
  background-repeat: no-repeat;
}
@media screen and (max-width: 480px) {
  html.promo .products-grid .product {
    flex-basis: 100%;
  }
  html.promo .products-grid .product .product {
    margin-bottom: 1em;
  }
}
html.promo .products-grid .product.rapidcam {
  background-image: url("/zimg/promo/rapidcam_semi-transparent.svg");
  background-size: 110px;
  background-position: top 2em right -0.5em;
}
html.promo .products-grid .product.software {
  background-image: url("/zimg/icon/monitor_semi-transparent.svg");
  background-size: 75px;
  background-position: top 2em right 1em;
}
html.promo .products-grid .product .button-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding-bottom: 1em;
}
html.promo .products-grid .contact-info {
  font-size: smaller;
}
html.promo .products-grid .contact-info a {
  color: #2780e3;
}

html.promo body.products ul.feature-list {
  list-style: none;
  padding-left: 0;
  margin-left: 20px;
  position: relative;
}
html.promo body.products ul.feature-list > li {
  margin-bottom: 1em;
}
html.promo body.products ul.feature-list > li::before {
  content: "‣";
  color: inherit;
  opacity: 0.5;
  position: absolute;
  left: -20px;
}
html.promo body.products .product {
  position: relative;
  background-position: center;
}
html.promo body.products .product.shadow-panel {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25), 0 0 24px rgba(0, 0, 0, 0.15);
  border-radius: 4px !important;
}
html.promo body.products .product .product-overlay {
  margin-left: 14em;
  position: relative;
  z-index: 10;
  padding: 1em;
}
html.promo body.products .product .product-overlay.light {
  background: rgba(255, 255, 255, 0.7);
}
html.promo body.products .product .product-overlay .feature-list {
  color: #333;
}
html.promo body.products .product.two-third .product-overlay {
  margin-left: 55%;
}
html.promo body.products .product.two-third .scrim h1 {
  width: 24rem;
}
html.promo body.products .product.half .product-overlay {
  margin-left: 45%;
}
html.promo body.products .product .scrim {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 1em;
  z-index: 0;
}
html.promo body.products .product .scrim.black {
  left: 0;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), transparent);
}
html.promo body.products .product .scrim h1 {
  font-size: 70px;
  margin-top: 0;
  color: white;
  font-weight: 900;
  width: 20rem;
  white-space: normal;
  text-shadow: 0 0 24px rgba(0, 0, 0, 0.3);
}
html.promo body.products .product .white.product-overlay {
  background: rgba(255, 255, 255, 0.65);
  position: absolute;
  top: 0;
  right: 0;
  z-index: 20;
  width: 16em;
  height: 100%;
  padding: 1em;
  color: #666;
}
html.promo body.products .product.timing-software {
  background-image: url("/zimg/promo/timing-software.jpg");
  background-position: top;
  background-size: cover;
}
html.promo body.products .product.rapidcam {
  background-image: url("/zimg/promo/rapidcam-full-color.jpg");
}
html.promo body.products .product.registration {
  background-image: url("/zimg/promo/reg-form.jpg");
  background-position: left;
  background-size: cover;
}
html.promo body.products .product.timing-service {
  background-image: url("/zimg/promo/dans-back.jpg");
  background-position: left;
  background-size: cover;
}
html.promo body.products .product.chip-rack {
  background-image: url("/zimg/promo/chip-rack.jpg");
}
@media screen and (max-width: 719px) {
  html.promo body.products .product {
    margin: 1em !important;
    background-position: left !important;
  }
  html.promo body.products .product h1 {
    font-size: 60px !important;
  }
  html.promo body.products .product .scrim {
    position: relative;
  }
  html.promo body.products .product .scrim.black {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent 200%);
  }
  html.promo body.products .product .product-overlay {
    position: relative !important;
    margin: 0 !important;
    width: 100% !important;
  }
  html.promo body.products .product .product-overlay.white {
    background: rgba(255, 255, 255, 0.9);
  }
  html.promo body.products .product .product-overlay.white h3 {
    display: none;
  }
}

.sports-link-wrapper {
  text-align: center;
  color: #2a6317;
  padding: 0 1em;
}
.sports-link-wrapper .sports-link {
  display: inline-block;
  background: url("/zimg/icon/target_grey.svg") no-repeat;
  background-size: 50px;
  background-position: center left;
  text-align: left;
  font-size: 1.2rem;
  margin: 1.5em auto;
  padding-left: 63px;
}
.sports-link-wrapper .sports-link a {
  color: #2780e3;
}

.feature-grid {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 1.2rem;
  color: #666;
}
@media screen and (min-width: 719px) {
  .feature-grid.shadow-panel {
    padding: 2em 3em;
  }
}
.feature-grid .icon.streamline-send-email {
  background-image: url("/zimg/icon/streamline-send-email.svg");
}
.feature-grid .icon.streamline-pencil {
  background-image: url("/zimg/icon/streamline-pencil-2.svg");
}
.feature-grid .icon.zondicons-duplicate {
  background-image: url("/zimg/icon/zondicons-duplicate.svg");
}
.feature-grid .icon.streamline-analytics-graph-bar {
  background-image: url("/zimg/icon/streamline-analytics-graph-bar.svg");
}
.feature-grid .icon.streamline-office-work-wireless {
  background-image: url("/zimg/icon/streamline-office-work-wireless.svg");
}
.feature-grid .icon.zondicon-chart-bar {
  background-image: url("/zimg/icon/zondicon-chart-bar.svg");
}
body.registration .feature-grid h3 {
  color: #3e8a41;
}
.feature-grid .feature {
  flex-basis: 50%;
  padding: 1em;
}
@media screen and (min-width: 480px) {
  .feature-grid .feature:nth-child(2n-1) {
    padding-left: 0;
  }
  .feature-grid .feature:nth-child(2n) {
    padding-right: 0;
  }
}
.feature-grid .feature h3 {
  font-size: 1em;
  color: #2780e3;
  font-weight: 600;
  padding-left: 2em;
  position: relative;
}
.feature-grid .feature h3.section {
  border-top: 1px solid #d0e2ec;
  padding-top: 1em;
  margin-top: 1.5em;
}
.feature-grid .feature h3.section:first-child {
  border-top: 0;
  padding-top: 0;
  margin-top: 0;
}
.feature-grid .feature h3 .icon {
  position: absolute;
  display: block;
  height: 1.5em;
  width: 1.5em;
  top: -0.15em;
  left: 0;
  background-size: 100%;
  background-repeat: no-repeat;
}
.feature-grid .feature h4 {
  margin-top: 0;
}
.feature-grid .feature p {
  line-height: 150%;
}
.feature-grid .feature li {
  margin: 0.25em 0;
}
.feature-grid .feature ul ul {
  font-size: 0.9rem;
  padding-left: 0;
  list-style: none;
}
.feature-grid .feature ul ul > li:before {
  content: "- ";
}
@media screen and (max-width: 480px) {
  .feature-grid {
    flex-direction: column;
  }
  .feature-grid .feature {
    flex-basis: auto;
    margin: 1em 0;
    padding: 0;
  }
}

.section + .feature-grid {
  border-bottom: 1px solid #2780e3;
}

.feature > ul {
  list-style: none;
}
.feature > ul > li {
  position: relative;
  margin: 1em 0;
}
.feature > ul > li:before {
  position: absolute;
  left: -1em;
  top: 0.35em;
  font-weight: 600;
  color: #3e8a41;
  height: 0.6em;
  width: 0.6em;
  display: block;
  content: "";
  background-image: url("/zimg/green-check.svg");
  background-size: 100%;
}
.feature > ul > li a.promo-link {
  font-size: smaller;
  color: #2780e3;
  display: block;
  margin-top: 0.5rem;
}
.feature > ul > li a.promo-link:hover {
  text-decoration: none;
}
.feature > ul.bullets > li:before {
  content: "•";
}

.action-contact {
  font-size: 1.2rem;
  text-align: center;
  color: #666;
}
.action-contact > p {
  margin: 2em 0;
}
.action-contact a {
  color: #2780e3;
  text-decoration: none;
}

.reg-fees {
  display: flex;
  flex-direction: row;
  max-width: 640px;
  margin: 0 auto;
}
.reg-fees > div {
  flex-basis: 33%;
  text-align: center;
  position: relative;
  padding: 1em 0;
}
.reg-fees .number {
  font-weight: 600;
  font-size: 3em;
  color: #4CAF50;
}
.reg-fees .unit {
  font-size: 1.5em;
  color: #aaa;
}
.reg-fees p {
  line-height: 1;
  margin: 0;
}

.faq {
  background: rgba(255, 255, 255, 0.5);
  padding: 1em;
  font-size: 1rem;
}
.faq .faq-wrapper {
  -webkit-column-count: 3;
  -webkit-column-gap: 10px;
  -moz-column-count: 3;
  -moz-column-gap: 10px;
  -moz-column-fill: balance;
  column-count: 3;
  column-gap: 2em;
  column-fill: balance;
}
.faq h2 {
  display: block;
  text-align: center;
  border-bottom: 1px solid #ccc;
  margin: 1em 2em;
  font-weight: 400 !important;
}
.faq h4 {
  color: #333;
  margin-bottom: 0.5em;
}
.faq .faq-item {
  color: #444;
  display: inline-block;
  width: 100%;
  padding: 1em 0;
}
.faq .faq-item p {
  margin: 0.5em 0;
  line-height: 1.5;
}
@media screen and (max-width: 480px) {
  .faq .faq-wrapper {
    padding-left: 1em;
    padding-right: 1em;
    column-count: 1;
  }
}
.faq a {
  color: #2780e3;
}
.faq a:hover {
  text-decoration: none;
}

html.promo h2 {
  color: #2780e3;
}

body.selftiming .timing-promo {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  border-radius: 3px 3px 0 0;
  overflow: hidden;
  font-size: 1.2rem;
}
body.selftiming .timing-promo .promo-text {
  flex-grow: 2;
  max-width: 60%;
}
body.selftiming .timing-promo .promo-text .main-text {
  color: #333;
  font-size: 1.2rem;
  background: #ddd;
}
body.selftiming .timing-promo .promo-text .main-text h3 {
  font-weight: 600;
}
body.selftiming .timing-promo .promo-text .secondary-text {
  background: #666;
  font-weight: lighter;
  color: #ddd;
}
body.selftiming .timing-promo .promo-text > div {
  padding: 1em;
}
body.selftiming .timing-promo .promo-image {
  max-width: 40%;
  flex-grow: 1;
}
@media screen and (max-width: 480px) {
  body.selftiming .timing-promo .promo-image {
    max-width: 100%;
  }
  body.selftiming .timing-promo .promo-text {
    max-width: 100%;
  }
}
body.selftiming .secondary-header {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  background: #A3DA6C;
  color: #666;
  font-size: 1.2em;
  font-weight: 600;
  padding: 0.75em 1em;
  border-radius: 0 0 3px 3px;
}
body.selftiming .secondary-header .title {
  flex-grow: 1;
  line-height: 34px;
}
body.selftiming .pro-tip {
  margin: 2em 0;
  padding: 1em;
  background-color: #fbfbfb;
  border: 1px solid #d0e2ec;
  border-radius: 3px;
  box-shadow: 0 0 24px 0 rgba(39, 128, 227, 0.2);
  color: #4CAF50;
  font-size: smaller;
}
body.selftiming .feature-grid {
  padding: 0;
}
body.selftiming .feature-grid h3 {
  padding-left: 0;
}

body.registration .registration-promo {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  border-radius: 3px;
  overflow: hidden;
  font-size: 1.2rem;
}
body.registration .registration-promo h3 {
  font-weight: 600;
  font-size: 1.5em;
  color: white;
}
body.registration .registration-promo .promo-text {
  flex-grow: 2;
  max-width: 55%;
  background: #A3DA6C;
  color: #666;
  padding: 1em;
}
body.registration .registration-promo .promo-image {
  max-width: 45%;
  flex-grow: 1;
}
@media screen and (max-width: 480px) {
  body.registration .registration-promo .promo-image {
    max-width: 100%;
  }
  body.registration .registration-promo .promo-text {
    max-width: 100%;
  }
}
body.registration .registration-promo .secondary-header {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  background: #666;
  color: #fbfbfb;
  font-weight: 600;
  width: 100%;
  padding: 1em;
}
body.registration .registration-promo .secondary-header .smaller {
  margin-top: 0.5rem;
  font-weight: 400;
  font-size: smaller;
}
body.registration .registration-promo .secondary-header .title {
  flex-grow: 1;
  line-height: 34px;
}
body.registration .registration-promo .secondary-header:before {
  content: "";
  opacity: 0.5;
  background: url(/zimg/icon/light-bulb-3.svg) no-repeat center top;
  background-size: 55px;
  width: 55px;
  height: 55px;
  position: absolute;
}

.testimonial {
  font-size: smaller;
  border-top: 1px dashed #ffe895;
  margin: 2em auto;
  max-width: 640px;
}
.testimonial:after {
  clear: right;
  content: "";
  display: block;
}
.testimonial:first-child {
  border-top: 0;
}
.testimonial .quote-start {
  display: block;
  font-size: 3em;
  color: #888888;
  text-align: center;
}
.testimonial > .text {
  font-style: italic;
  color: #888888;
}
.testimonial > .text strong {
  color: #666666;
  font-weight: bold;
}
.testimonial > .name {
  padding-left: 1em;
  color: #77AFED;
  float: right;
}
.testimonial > .name:before {
  content: "~";
  position: relative;
  left: -0.5em;
}

.hero-container .testimonial {
  max-width: 480px;
  margin: 2em 0 0;
  color: #ffa;
}
.hero-container .testimonial p {
  color: inherit !important;
}
.hero-container .testimonial .attribution {
  text-align: right;
}
.hero-container .testimonial .attribution:before {
  content: "– ";
}

.video-text-container {
  position: relative;
  padding: 0 0 1em 0;
}
.video-text-container .hero-text {
  margin-right: 50%;
}
.video-text-container .video-container {
  overflow: hidden;
  padding-top: 0;
  transition: padding 0.5ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.video-text-container .video-trigger {
  background: #666;
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 45%;
  height: 100%;
  background-size: cover;
}
.video-text-container .video-trigger > a {
  display: block;
  height: 100%;
  width: 100%;
  cursor: pointer;
  color: transparent;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.35);
  background-image: url("/zimg/play-button.png");
  background-size: 80px;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  transition: font-size 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.video-text-container .video-trigger > a:hover {
  background-size: 90px;
}
.video-text-container .video-trigger.go-thumb {
  background-image: url("/zimg/promo/go-thumb.jpg");
}
.video-text-container .video-trigger .video-title {
  color: white;
  position: absolute;
  padding: 1em 0.5em 0.25em;
  width: 100%;
  left: 0;
  bottom: 0;
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
  font-size: 0.9rem;
  font-style: italic;
}
.video-text-container.playing .video-container {
  padding-top: 55%;
}
.video-text-container.playing .video-trigger {
  display: none;
}

.video-container {
  width: 100%;
  padding-top: 55%;
  position: relative;
}
.video-container > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 500px) {
  .video-text-container {
    padding: 1em;
  }
  .video-text-container .hero-text {
    margin: 0;
  }
  .video-text-container .video-trigger {
    display: none;
  }
  .video-text-container .video-container {
    padding-top: 55%;
  }
}
.feature-block {
  font-size: 1.2em;
  float: none;
  margin: 2em 0 4em;
}
.feature-block .feature-row {
  display: flex;
}
.feature-block:nth-child(2n-1) .feature-row {
  flex-direction: row-reverse;
}
.feature-block:nth-child(2n-1) .feature-text {
  padding-left: 0;
  padding-right: 1em;
}
.feature-block h4 {
  font-weight: 900;
  color: black;
}
.feature-block .feature-text {
  flex-basis: 60%;
  padding-left: 1em;
}
.feature-block .feature-image {
  flex-basis: 40%;
  text-align: center;
}
.feature-block .feature-image img {
  width: 100%;
}
@media screen and (max-width: 500px) {
  .feature-block .feature-row {
    display: block;
  }
}

.two-column-flex {
  position: relative;
  display: flex;
  flex-direction: row;
}
.two-column-flex .column {
  flex-basis: 50%;
  position: relative;
}
.two-column-flex .column:first-child {
  padding-right: 0.5em;
}
.two-column-flex .column:last-child {
  padding-left: 0.5em;
}
.two-column-flex .column .panel {
  height: 100%;
  padding-left: 1em;
  padding-right: 1em;
}
.two-column-flex .column h2 + .panel {
  height: calc(100% - 4em);
}

.row {
  position: relative;
  width: 100%;
}

.row [class^=col] {
  float: left;
  margin: 0;
  min-height: 0.125rem;
}

.row::after {
  content: "";
  display: table;
  clear: both;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
  width: 100%;
}

.col-1-sm {
  width: 8.3333333333%;
}

.col-2-sm {
  width: 16.6666666667%;
}

.col-3-sm {
  width: 25%;
}

.col-4-sm {
  width: 33.3333333333%;
}

.col-5-sm {
  width: 41.6666666667%;
}

.col-6-sm {
  width: 50%;
}

.col-7-sm {
  width: 58.3333333333%;
}

.col-8-sm {
  width: 66.6666666667%;
}

.col-9-sm {
  width: 75%;
}

.col-10-sm {
  width: 83.3333333333%;
}

.col-11-sm {
  width: 91.6666666667%;
}

.col-12-sm {
  width: 100%;
}

@media only screen and (min-width: 45em) {
  .col-1 {
    width: 8.3333333333%;
  }

  .col-2 {
    width: 16.6666666667%;
  }

  .col-3 {
    width: 25%;
  }

  .col-4 {
    width: 33.3333333333%;
  }

  .col-5 {
    width: 41.6666666667%;
  }

  .col-6 {
    width: 50%;
  }

  .col-7 {
    width: 58.3333333333%;
  }

  .col-8 {
    width: 66.6666666667%;
  }

  .col-9 {
    width: 75%;
  }

  .col-10 {
    width: 83.3333333333%;
  }

  .col-11 {
    width: 91.6666666667%;
  }

  .col-12 {
    width: 100%;
  }

  .hidden-sm {
    display: block;
  }
}
body.sticky-promo-header .site-header-container {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 99;
}

.site-header {
  overflow: hidden;
  background-position: -360px;
  overflow: hidden;
  border-bottom: 1px solid #1160b8;
}
.site-header.promo {
  border-bottom: 1px solid #1160b8;
}
.site-header.promo .constrained-width {
  height: 5rem;
  background-image: linear-gradient(to right, #2780e3, #1160b8 60%);
  background-repeat: no-repeat;
}
.site-header.promo .home-link {
  width: 170px;
  margin: 0.5em 0 0;
}
@media screen and (max-width: 500px) {
  .site-header.promo .home-link {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }
  .site-header.promo .constrained-width {
    height: 4rem;
  }
}
.site-header.promo.minimal {
  background: none;
  border-bottom: none;
  box-shadow: none;
}
.site-header.promo.minimal .constrained-width {
  background-image: none;
  border-bottom: none;
  height: 3rem;
}
.site-header.promo.minimal .home-link {
  height: 3rem;
  margin-top: 0;
}
.site-header.promo.minimal .home-link h1 {
  background-image: url(/zimg/logo/grey.svg);
  background-size: 60%;
}
.site-header.promo.minimal .promo-navigate {
  background: none;
  padding: 0.5em 0;
}
.site-header.promo.minimal .promo-navigate .site.links {
  color: #666;
}
.site-header.promo.minimal .promo-navigate .links .header-link {
  color: inherit;
}
.site-header.promo.minimal .promo-navigate .links .header-link:hover {
  color: black;
  background: transparent;
}
.site-header.lesser {
  border-bottom: none;
  background: none;
}
.site-header .header-navigate {
  display: none;
}
.site-header .header-navigate .menu-icon {
  width: 2.1rem;
  height: 2rem;
  /*-webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;*/
  cursor: pointer;
  display: inline-block;
  position: absolute;
  top: 1rem;
  right: 1rem;
  border-width: 1px;
  border-color: #1b70cf;
  border-style: solid;
  border-radius: 2px;
}
.site-header .header-navigate .menu-icon span {
  display: block;
  position: absolute;
  height: 3px;
  width: 25%;
  background: #d0e2ec;
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.25s ease-in-out;
  -moz-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
.site-header .header-navigate .menu-icon span:nth-child(even) {
  left: 50%;
  border-radius: 0 3px 3px 0;
}
.site-header .header-navigate .menu-icon span:nth-child(odd) {
  left: 9px;
  border-radius: 3px 0 0 3px;
}
.site-header .header-navigate .menu-icon span:nth-child(1), .site-header .header-navigate .menu-icon span:nth-child(2) {
  top: 9px;
}
.site-header .header-navigate .menu-icon span:nth-child(3), .site-header .header-navigate .menu-icon span:nth-child(4) {
  top: 14px;
}
.site-header .header-navigate .menu-icon span:nth-child(5), .site-header .header-navigate .menu-icon span:nth-child(6) {
  top: 19px;
}
.site-header .site.links {
  float: right;
  list-style: none;
  color: #d0e2ec;
  font-size: 14px;
  margin-top: 0.15em;
}
.site-header .site.links > li {
  display: block;
  float: right;
}
@media screen and (max-width: 719px) {
  .site-header .constrained-width {
    height: 4em;
  }
  .site-header .home-link {
    height: 4em;
  }
  .site-header .home-link h1 {
    background-size: 80%;
  }
  .site-header .header-promo-section {
    display: none;
  }
  .site-header .header-navigate {
    display: block;
    background: #2780e3;
    clip-path: polygon(2em 0, 100% 0, 100% 100%, 0 100%);
    height: 100%;
    width: 8em;
    position: absolute;
    top: 0;
    right: 0;
  }
  .site-header.expanded {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1001;
  }
  .site-header.expanded .menu-icon {
    background-color: rgba(0, 0, 0, 0.15);
    box-shadow: none;
  }
  .site-header.expanded .menu-icon span:nth-child(1),
.site-header.expanded .menu-icon span:nth-child(6) {
    transform: rotate(45deg);
  }
  .site-header.expanded .menu-icon span:nth-child(2),
.site-header.expanded .menu-icon span:nth-child(5) {
    transform: rotate(-45deg);
  }
  .site-header.expanded .menu-icon span:nth-child(1) {
    left: 9px;
    top: 10px;
  }
  .site-header.expanded .menu-icon span:nth-child(2) {
    left: 50%;
    top: 10px;
  }
  .site-header.expanded .menu-icon span:nth-child(3) {
    opacity: 0;
  }
  .site-header.expanded .menu-icon span:nth-child(4) {
    opacity: 0;
  }
  .site-header.expanded .menu-icon span:nth-child(5) {
    left: 9px;
    top: 16px;
  }
  .site-header.expanded .menu-icon span:nth-child(6) {
    left: 50%;
    top: 16px;
  }
  .site-header.expanded + .sub-header {
    height: calc(100vh - 4rem);
  }
}

.header-link {
  color: inherit;
  font-weight: 600;
  display: block;
  padding: 0.5em 1em;
  text-decoration: none;
  border-radius: 3px;
  transition: background-color 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955), border-color 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955), color 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  border: 1px solid transparent;
}
.header-link:hover {
  background: rgba(0, 0, 0, 0.15);
  color: white;
}

body.home .header-link.highlight {
  border-color: rgba(255, 255, 255, 0.25);
  color: #ffa;
}
body.home .header-link.highlight:hover {
  border-color: rgba(255, 255, 255, 0.4);
}

.header-promo-section {
  font-weight: 600;
  float: right;
  text-align: right;
  padding: 1.2em 1em 1em 1em;
  height: 5em;
  position: absolute;
  right: -1px;
  top: 0;
  width: calc(100% - 18em);
  background: #2780e3;
  clip-path: polygon(3em 0, 100% 0, 100% 100%, 0 100%);
}
.header-promo-section p {
  margin: 0;
  font-size: 1.2em;
  color: #ffa;
  line-height: 100%;
}
.header-promo-section small {
  color: #d0e2ec;
}
.header-promo-section .button {
  font-size: 1.2rem;
  padding: 0.6rem 1rem;
  margin-left: 1em;
  margin-right: 0;
}

@media screen and (max-width: 719px) {
  .site-header.expanded .promo-navigate {
    display: block;
    background-color: #2780e3;
    clip-path: none;
    padding: 0;
    position: fixed;
    top: 4rem;
    width: 100%;
    height: calc(100vh - 4rem);
    overflow: hidden;
    transition: height 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    font-size: 1.2rem;
  }
  .site-header .promo-navigate {
    display: none;
  }
}
.site-header .promo-navigate {
  background: #2780e3;
  color: white;
  font-size: 0.9em;
  font-weight: 600;
  padding: 1.5em 0;
  height: 100%;
  position: absolute;
  right: -1px;
  top: 0;
  width: calc(100% - 18em);
  clip-path: polygon(3em 0, 100% 0, 100% 100%, 0 100%);
}
.site-header .promo-navigate:after {
  clear: both;
  content: "";
  display: block;
}
.site-header .promo-navigate .site.links {
  color: white;
}
.site-header .links .header-link {
  color: white;
}

.sub-header .links, .promo-navigate .links {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0 0 0 2px;
}
.sub-header .links > li, .promo-navigate .links > li {
  float: left;
  margin-right: 1em;
}
@media screen and (min-width: 719px) {
  .sub-header .links > li.open .opens-menu, .sub-header .links > li:hover .opens-menu, .promo-navigate .links > li.open .opens-menu, .promo-navigate .links > li:hover .opens-menu {
    background: #222;
    color: #fff;
    border-left: 1px solid #000;
    position: relative;
    z-index: 99;
  }
  .sub-header .links > li.open .header-menu, .sub-header .links > li:hover .header-menu, .promo-navigate .links > li.open .header-menu, .promo-navigate .links > li:hover .header-menu {
    opacity: 1;
    height: auto;
    pointer-events: all;
  }
}
.sub-header .links.site, .promo-navigate .links.site {
  float: right;
  margin: 0 -1em 0 0;
}
.sub-header .links.site > li, .promo-navigate .links.site > li {
  float: right;
}
.sub-header .links .header-link, .promo-navigate .links .header-link {
  display: block;
  color: inherit;
  text-decoration: none;
  padding: 0.5em 1em;
  border-radius: 3px;
  transition: color 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955), background 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955), border-color 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
}
.sub-header .links .header-link.opens-menu, .promo-navigate .links .header-link.opens-menu {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.sub-header .links .header-link:hover, .promo-navigate .links .header-link:hover {
  background: #1160b8;
  color: #ffa;
  text-decoration: none;
}
@media screen and (max-width: 719px) {
  .sub-header .links, .promo-navigate .links {
    margin: 1rem 1rem;
    padding: 1rem 0 0;
    border-top: 1px solid #77AFED;
  }
  .sub-header .links > li, .promo-navigate .links > li {
    float: none;
  }
  .sub-header .links.site, .promo-navigate .links.site {
    float: none;
    margin: 1rem 1rem;
    font-size: 1.2rem;
  }
  .sub-header .links.site > li, .promo-navigate .links.site > li {
    float: none;
  }
  .sub-header .links:first-child, .promo-navigate .links:first-child {
    border-top: none;
  }
}

.sub-header {
  background: #1b70cf;
  color: white;
  font-size: 0.9em;
  font-weight: 600;
  padding: 0.5em 0;
}
.sub-header:after {
  clear: both;
  content: "";
  display: block;
}
.sub-header .menu-promo-section {
  display: none;
}
@media screen and (max-width: 719px) {
  .sub-header {
    padding: 0;
    position: fixed;
    top: 4rem;
    width: 100%;
    height: 0;
    overflow: hidden;
    transition: height 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    z-index: 999;
    font-size: 1.2rem;
  }
  .sub-header .links {
    margin: 1rem 1rem;
    padding: 1rem 0 0;
    border-top: 1px solid #77AFED;
  }
  .sub-header .links > li {
    float: none;
  }
  .sub-header .links.site {
    float: none;
    margin: 1rem 1rem;
  }
  .sub-header .links.site > li {
    float: none;
  }
  .sub-header .links:first-child {
    border-top: none;
  }
  .sub-header .menu-promo-section {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #333;
    box-shadow: 0 0 16px rgba(0, 0, 0, 0.25);
    padding: 1rem;
    overflow: auto;
    font-weight: 400;
  }
  .sub-header .menu-promo-section p {
    color: #ffa;
  }
}

.header-menu {
  position: absolute;
  background: #222;
  z-index: 98;
  color: #ddd;
  margin: 0;
  border: 1px solid #000;
  border-top: none;
  opacity: 0;
  transition: opacity 200ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
  height: 0;
  pointer-events: none;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  overflow: hidden;
  user-select: none;
}
.header-menu.fat {
  width: calc(100% - 4px);
  display: flex;
  flex-direction: row;
}
.header-menu.left {
  left: 2px;
}
.header-menu .menu-tiles {
  text-align: left;
  margin-top: 1.5em;
}
.header-menu .menu-tile {
  display: block;
  position: relative;
  width: 18em;
  padding: 1em 1em 1em 6em;
  margin: 0.5em;
  color: #fff;
  font-weight: 600;
  border-radius: 4px;
  border: 1px solid transparent;
  text-decoration: none;
  transition: background 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955), border-color 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.header-menu .menu-tile:link:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(0, 0, 0, 0.05);
  text-decoration: none;
}
.header-menu .menu-tile:before {
  content: "";
  position: absolute;
  display: block;
  top: 0.5rem;
  left: 0;
  height: 2rem;
  width: 4rem;
  background-size: auto 100%;
  background-position: center center;
  background-repeat: no-repeat;
}
.header-menu .menu-tile a {
  color: inherit;
}
.header-menu .menu-tile a:hover {
  color: #ffa;
}
.header-menu .menu-tile.reg:before {
  background-image: url("/zimg/icon/reg_system_green.svg");
}
.header-menu .menu-tile.gochip:before {
  background-image: url("/zimg/gologo.svg");
  background-size: 90%;
}
.header-menu .menu-tile.rapidcam:before {
  background-image: url("/zimg/promo/rapidcam-grey.png");
}
.header-menu .menu-tile.timing:before {
  background-image: url("/zimg/promo/timing-software-icon.png");
}
.header-menu .fat-menu-sports {
  font-size: 1rem;
  border-radius: 2px;
  width: calc( 100% - 18em);
  padding: 0 0 1em 1em;
  margin: 1em 1em 0;
}
.header-menu .fat-menu-sports h2 {
  color: #666;
  font-weight: 600;
  font-size: 1.6rem;
  margin: 2rem 2rem 1rem;
  white-space: nowrap;
}
.header-menu .fat-menu-sports > p {
  color: #666;
  font-weight: 400;
  padding: 1rem 2rem;
  cursor: default;
}
.header-menu .fat-sport-links {
  margin: 0;
  padding: 0;
  list-style: none;
}
.header-menu .fat-sport-links:after {
  clear: both;
  content: "";
  display: block;
}
.header-menu .fat-sport-links > li {
  display: inline-block;
  position: relative;
  height: 4.25rem;
  width: calc(50% - 1.1rem);
  margin: 0.5rem 1rem 0 0;
  background: white;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.75);
  border-radius: 3px;
  background-size: cover;
  position: relative;
  overflow: hidden;
}
.header-menu .fat-sport-links > li .sport-label {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  color: black;
  padding: 0.5rem;
  font-size: 1.5em;
  font-weight: 900;
  text-shadow: 0 0 6px white;
}
.header-menu .fat-sport-links > li > a {
  text-shadow: 0 0 rgba(255, 255, 255, 0);
  background-image: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.5));
  background-size: auto 150%;
  background-position: top;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  color: white;
  text-decoration: none;
  white-space: nowrap;
  display: block;
  height: 100%;
  width: 100%;
}
.header-menu .fat-sport-links > li:hover {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.95);
}
.header-menu .fat-sport-links > li:hover > a {
  background-position: bottom;
}
.header-menu .fat-sport-links > li.enduro {
  background-image: url("/zimg/promo/mtber.jpg");
  background-position: center;
}
.header-menu .fat-sport-links > li.triathlon {
  background-image: url("/zimg/promo/swimmer.jpg");
  background-position: center;
}
.header-menu .fat-sport-links > li.xcskiing {
  background-image: url("/zimg/promo/alex.jpg");
  background-position: center;
}
.header-menu .fat-sport-links > li.running {
  background-image: url("/zimg/promo/soap.jpg");
  background-position: center;
}
.header-menu .fat-sport-links > li.alpine {
  background-image: url("/zimg/promo/skier.jpg");
  background-position: left -60px;
}
.header-menu .fat-sport-links > li.snowboard {
  background-image: url("/zimg/promo/snowboarder.jpg");
  background-position: center;
}
.header-menu .fat-sport-links > li.motorsport {
  background-image: url("/zimg/quad.jpg");
  background-position: top;
}
.header-menu .fat-sport-links > li.biathlon {
  background-image: url("/zimg/promo/biathlon.jpg");
  background-position: center;
}
.header-menu .menu-items {
  list-style: none;
  margin: 1em 0;
  padding: 0;
}
.header-menu .menu-items > li {
  display: block;
  float: none;
  margin: 0;
  padding: 0;
}
.header-menu .menu-items > li > a {
  display: block;
  padding: 0.5em 1em;
  min-width: 12em;
  color: #1160b8;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  background: white;
}
.header-menu .menu-items > li > a:hover {
  color: black;
  background: #d0e2ec;
}

.promo-footer {
  background: #333;
  color: white;
  padding: 2rem 1rem 1rem;
  font-size: 0.9em;
  overflow: auto;
  min-height: 196px;
  color: #666;
}
.promo-footer h4 {
  font-size: 1.1em;
}
.promo-footer .footer-list {
  margin: 1em 0;
  padding: 0;
  list-style: none;
  color: #aaa;
  line-height: 150%;
}
.promo-footer a {
  color: #aaa;
  text-decoration: none;
  transition: color 100ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.promo-footer a:hover {
  color: #ffa;
}
.promo-footer .logo-section {
  float: right;
}
.promo-footer .logo-link {
  display: block;
  height: 3em;
  margin: 1em 0 0.25em 2em;
  background-image: url(/zimg/whitelogo.svg);
  background-repeat: no-repeat;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-size: auto 100%;
  background-position: right;
  opacity: 0.25;
  transition: opacity 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.promo-footer .logo-link:hover {
  opacity: 0.4;
}
.promo-footer .contact-link {
  display: block;
  text-align: left;
  margin-right: 2em;
  color: #aaa;
}
.promo-footer .float-links {
  float: left;
  display: block;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
}
.promo-footer .float-links.social {
  border-left: 1px solid #393939;
}
.promo-footer .social {
  display: block;
  clear: both;
  margin-left: 1em;
  border-top: 1px solid #444;
  padding-top: 1em;
}
.promo-footer .icon {
  display: inline-block;
  height: 3em;
  width: 3em;
  overflow: hidden;
  text-indent: 100%;
  background-size: 60%;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.3;
  transition: opacity 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.promo-footer .icon:hover {
  opacity: 0.6;
}
.promo-footer .icon.facebook {
  background-image: url("/zimg/social_icon/facebook-fullsize.png");
}
.promo-footer .icon.twitter {
  background-image: url("/zimg/social_icon/twitter-fullsize.png");
}
.promo-footer .icon.instagram {
  background-image: url("/zimg/social_icon/instagram.png");
}
@media screen and (max-width: 719px) {
  .promo-footer .logo-section {
    float: none;
    margin-left: 1em;
    margin-top: 2em;
    text-align: right;
  }
  .promo-footer .float-links.address {
    display: none;
  }
  .promo-footer .float-links.contact a {
    display: inline-block;
  }
}

.contactsupport .g-recaptcha {
  padding: 1em;
}
.contactsupport .support-hours {
  background-color: #ffe;
  padding: 1em;
  border: 2px solid gold;
  border-radius: 3px;
}
.contactsupport form.promo label {
  font-size: larger;
  color: #333;
  font-weight: bolder;
}
.contactsupport form.promo label.normal {
  color: #333;
  font-size: 1em;
  font-weight: normal;
}
.contactsupport form.promo label.normal::after {
  content: "";
}
.contactsupport form.promo label.mandatory:before {
  content: "✱ ";
  color: #c11;
}
.contactsupport form.promo .input-wrapper select, .contactsupport form.promo .input-wrapper input, .contactsupport form.promo textarea {
  font-size: 1em;
  color: #333;
}
.contactsupport form.promo .info-block {
  color: #666;
  background-color: #fbfbfb;
  margin: 0;
  padding: 1em;
  text-align: center;
  border: 1px dashed #888;
  border-radius: 3px;
}
.contactsupport form.promo .field-container > div {
  margin-bottom: 2em;
}
.contactsupport form.promo fieldset {
  border: 0px;
  padding: 0px;
}
.contactsupport ul.parsley-errors-list {
  list-style: none;
  color: #da0000;
  padding-left: 0;
}

.rental-calc-container {
  display: flex;
  flex-direction: row;
}
.rental-calc-container .column {
  flex-grow: 1;
  flex-basis: 50%;
  max-width: 50%;
}
.rental-calc-container .column .input-wrapper {
  margin: 1em 1em 2em 1em;
}
.rental-calc-container .column .input-wrapper:first-child {
  margin-top: 0;
}
.rental-calc-container .column .input-wrapper .input-container {
  background-color: #f1f1f1;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 2em;
}
.rental-calc-container .column .input-wrapper .input-container label {
  font-size: larger;
  font-weight: bold;
  display: block;
  margin-bottom: 0.5em;
}
.rental-calc-container .column .input-wrapper .input-container .pricing-info {
  color: #4CAF50;
}
.rental-calc-container .column .input-wrapper .input-container .pricing-info.right {
  float: right;
}
.rental-calc-container .column .input-wrapper .input-container ul.z4field.radio {
  margin: 0;
}
.rental-calc-container .column .input-wrapper .input-container ul.z4field.radio li.option label {
  color: #666666;
  font-weight: normal;
}
.rental-calc-container .column .input-wrapper .input-container ul.z4field.radio.horizontal li.option {
  float: left;
  padding-right: 1em;
}
.rental-calc-container .column .input-info {
  color: #666;
}
.rental-calc-container .column .disclaimer {
  color: #999999;
  padding: 0.5em;
}
.rental-calc-container .column .total-container {
  background: #ffe;
  border-radius: 20px;
  border: 5px solid #2780e3;
  padding: 2em;
  text-align: center;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.55), 0 1px 3px rgba(255, 255, 255, 0.15) inset;
}
.rental-calc-container .column .total-container h2 {
  color: #333;
  margin: 0;
}
.rental-calc-container .column .total-container .total-price {
  padding: 0.5em 0;
  color: #2780e3;
  font-size: 3rem;
  font-weight: bold;
}
.rental-calc-container .column .total-container .total-price .incl {
  font-size: x-small;
}
.rental-calc-container .column .cost-breakdown {
  margin-top: 3em;
  padding: 0 2em;
}
.rental-calc-container .column .cost-breakdown .row {
  display: flex;
  flex-direction: row;
  padding: 0.25em;
}
.rental-calc-container .column .cost-breakdown .row .column {
  flex-grow: 1;
}
.rental-calc-container .column .cost-breakdown .row .column.item {
  flex-basis: 46%;
  max-width: 46%;
  text-align: right;
}
.rental-calc-container .column .cost-breakdown .row .column.cost {
  flex-basis: 27%;
  max-width: 27%;
  text-align: right;
  font-weight: bold;
}
.rental-calc-container .column .cost-breakdown .row .column.multiple {
  flex-basis: 27%;
  max-width: 27%;
  margin-left: 1em;
  color: #aaa;
}
.rental-calc-container .column .cost-breakdown .row.subtotal {
  margin-top: 0.5em;
  padding-top: 0.5em;
  border-top: 1px solid #aaa;
}
.rental-calc-container .column .cost-breakdown .row.total {
  margin-top: 0.5em;
  padding-top: 0.5em;
  border-top: 1px solid #aaa;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
  .rental-calc-container {
    flex-direction: column;
  }
  .rental-calc-container .column {
    max-width: 100%;
  }
}

body.sports-page .content-block {
  color: #666666;
}
body.sports-page .content-block a {
  color: #2780e3;
  text-decoration: none;
}
body.sports-page .content-block a:hover {
  text-decoration: underline;
}
body.sports-page .content-block h1 {
  color: #1160b8;
  font-weight: 900;
  overflow: visible;
  white-space: normal;
}
body.sports-page .content-block h1.sport .title {
  padding-left: 45px;
  background-repeat: no-repeat;
  background-position: left center;
}
body.sports-page .content-block h1.sport .title.cross-country-skiing {
  background-image: url("/zimg/sport-icon/skier.svg");
}
body.sports-page .content-block h1.sport .title.triathlon {
  background-image: url("/zimg/sport-icon/traithlon.svg");
}
body.sports-page .content-block h1.sport .title.enduro {
  background-image: url("/zimg/sport-icon/enduro.svg");
  background-size: 35px;
}
body.sports-page .content-block h1.sport .title.snowboard {
  background-image: url("/zimg/sport-icon/snowboard.svg");
  background-size: 45px;
}
body.sports-page .content-block h1.sport .title.running {
  background-image: url("/zimg/sport-icon/runner.svg");
  background-size: 50px;
}
body.sports-page .content-block h1.sport .title.biathlon {
  background-image: url("/zimg/sport-icon/biathlon.svg");
  background-size: 35px;
}
body.sports-page .content-block h1 .button {
  font-size: 1rem;
  margin-left: 0;
}
body.sports-page .content-block h1 .button.create, body.sports-page .content-block h1 .button.primary-action {
  color: white;
}
body.sports-page .content-block h1 .button:hover {
  text-decoration: none;
}
@media screen and (max-width: 719px) {
  body.sports-page .content-block h1 .title {
    padding-left: 0 !important;
    background-image: none !important;
  }
  body.sports-page .content-block h1 .button {
    float: none;
    display: block;
    text-align: center;
    margin-top: 1rem;
  }
}
body.sports-page .content-block .hero-container-bg.running {
  background-image: url("/zimg/promo/running.jpg");
}
body.sports-page .content-block p.sport-intro {
  font-size: 1.2em;
}
body.sports-page .content-block .event-classes {
  display: flex;
  flex-direction: row;
}
body.sports-page .content-block .event-classes .class {
  flex-grow: 1;
  flex-basis: 0;
  background-color: white;
  border-radius: 3px;
  padding: 1em;
  margin-right: 0.5em;
  display: flex;
  flex-direction: column;
}
body.sports-page .content-block .event-classes .class:last-child {
  margin-right: 0;
}
body.sports-page .content-block .event-classes .class.national h3 {
  color: #2780e3;
}
body.sports-page .content-block .event-classes .class.national .example {
  border-color: #2780e3;
}
body.sports-page .content-block .event-classes .class.provincial h3 {
  color: #4CAF50;
}
body.sports-page .content-block .event-classes .class.provincial .example {
  border-color: #4CAF50;
}
body.sports-page .content-block .event-classes .class.recreational h3 {
  color: #F5A623;
}
body.sports-page .content-block .event-classes .class.recreational .example {
  border-color: #F5A623;
}
body.sports-page .content-block .event-classes .class h3 {
  text-align: center;
}
body.sports-page .content-block .event-classes .class ul {
  list-style: none;
  padding: 0;
  display: block;
}
body.sports-page .content-block .event-classes .class ul li {
  position: relative;
  margin-bottom: 1em;
  padding-bottom: 1em;
}
body.sports-page .content-block .event-classes .class ul li::before {
  content: "‣";
  color: #DDDDDD;
  position: absolute;
  left: -1em;
}
body.sports-page .content-block .event-classes .class .explanation, body.sports-page .content-block .event-classes .class .example {
  padding-left: 1em;
}
body.sports-page .content-block .event-classes .class .explanation {
  flex-grow: 1;
}
body.sports-page .content-block .event-classes .class .example {
  min-height: 150px;
  padding-top: 1em;
  border-top: 1px dashed #cccccc;
  color: #888888;
}
body.sports-page .content-block ul.setup-nav {
  list-style: none;
  display: block;
  margin: 0 0 0 0;
  padding: 0.25em 0 2em 0;
  font-size: 1.2em;
}
body.sports-page .content-block ul.setup-nav > li {
  float: left;
  margin-right: 1em;
  max-width: 33%;
}
body.sports-page .content-block ul.setup-nav > li .heading {
  color: #2780e3;
}
body.sports-page .content-block ul.setup-nav > li a {
  border-bottom: 4px solid transparent;
}
body.sports-page .content-block ul.setup-nav > li a:hover {
  text-decoration: none;
  border-color: #77AFED;
}
body.sports-page .content-block ul.setup-nav > li a.selected {
  border-color: #F5A623;
  pointer-events: none;
}
body.sports-page .content-block ul.setup-nav > li p {
  font-size: smaller;
  color: #666;
}
body.sports-page .content-block ul.setup-nav .extra-info {
  font-size: 1rem;
  margin: 1rem 1rem 1rem 0;
  color: #aaa;
}
body.sports-page .content-block ul.setup-nav .extra-info > ul {
  padding-left: 0;
  list-style: none;
}
body.sports-page .content-block ul.setup-nav .extra-info > ul > li {
  margin-bottom: 0.25em;
}
body.sports-page .content-block ul.setup-nav .extra-info > ul ul {
  padding-left: 1.5em;
}
body.sports-page .content-block ul.setup-nav .selected + .extra-info {
  color: #666;
}

body.timing-services .sport-link-container {
  margin: 2em 0;
  padding: 2em 2em 1em 2em;
  border: 1px solid #d0e2ec;
  border-radius: 3px;
  box-shadow: 0 0 24px 0 rgba(39, 128, 227, 0.2);
  color: #666666;
}
body.timing-services .sport-link-container h2 {
  margin: 0;
}

.homepage-news {
  padding: 0 1em;
  font-size: 0.9rem;
  color: #333;
  border-bottom: 1px solid #ddd;
  background-color: #f1f3f8;
}
.homepage-news p {
  margin: 0.5rem 0;
}

html.public-content {
  background-attachment: initial;
  background-position: left 0 bottom 196px;
}
html.public-content .page-content {
  border-radius: 2px;
  min-height: calc(100vh - 20em);
}
html.public-content .body-container {
  padding-bottom: 0;
  margin-bottom: -1rem;
  position: relative;
  z-index: 2;
}
html.public-content .body-container + .promo-footer {
  padding-top: 3rem;
  z-index: 0;
}
@media screen and (max-width: 719px) {
  html.public-content .title-background {
    display: block;
  }
}
@media screen and (max-width: 500px) {
  html.public-content .site-header.promo {
    background-color: transparent;
    background-image: none;
    border-bottom: none;
    box-shadow: none;
  }
  html.public-content .site-header.promo .constrained-width {
    background-image: none;
    height: 2em;
    margin: 0.25em 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  }
  html.public-content .site-header.promo .header-navigate {
    display: none;
  }
  html.public-content .site-header.promo .home-link {
    height: 100%;
  }
  html.public-content .site-header.promo .home-link h1 {
    background-size: 50%;
  }
  html.public-content .title-background {
    position: relative;
    margin-top: -3rem;
    padding-top: 3rem;
    background: #2780e3;
    overflow: hidden;
  }
  html.public-content .title-background .title-background-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  html.public-content .title-block {
    padding-top: 1px;
    height: auto;
    background-color: transparent;
    border-radius: none;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  html.public-content .title-block h1 {
    margin: 0.5em 0;
    white-space: normal;
    font-size: 3rem;
    color: white;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.15), -1px 1px 2px rgba(0, 0, 0, 0.15), 1px -1px 2px rgba(0, 0, 0, 0.15), -1px -1px 2px rgba(0, 0, 0, 0.15);
  }
  html.public-content .page-content {
    border: none;
    border-radius: 0;
    box-shadow: none;
  }
  html.public-content .body-container + .promo-footer {
    padding-top: 0;
    min-height: 0;
  }
  html.public-content .body-container + .promo-footer .constrained-width {
    position: relative;
    padding-top: 2em;
    padding-bottom: 1em;
  }
  html.public-content .body-container + .promo-footer .contact.float-links {
    display: none;
  }
  html.public-content .body-container + .promo-footer .logo-section {
    position: absolute;
    bottom: 1em;
    right: 0;
    margin: 0;
  }
  html.public-content .body-container + .promo-footer .logo-section strong {
    position: absolute;
    bottom: -1em;
    right: 0;
    white-space: nowrap;
    font-size: 0.8rem;
  }
  html.public-content .body-container + .promo-footer .logo-link {
    display: block;
    width: 10em;
    padding-top: 10%;
    background-size: 100%;
  }
  html.public-content .body-container + .promo-footer .social {
    margin-left: 0;
    border-top: none;
  }
}

.content-banner-image {
  width: 100%;
  padding-bottom: 18%;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}

.page-info-icons {
  position: relative;
  font-weight: 600;
  background: rgba(255, 255, 255, 0.2);
  color: #666;
  font-size: 0.9rem;
  margin: 0 1em 1em;
  padding: 1.5em 0 0.75em;
  border-bottom: 1px solid #ddd;
}
.page-info-icons a {
  color: inherit;
}
.page-info-icons .secondary-item {
  display: inline-block;
  position: relative;
  margin-right: 1em;
  cursor: default;
}
.page-info-icons .secondary-item :link:hover {
  color: #1b70cf;
}
.page-info-icons .secondary-item.show-icon {
  padding-left: 1.5em;
}
.page-info-icons .secondary-item.show-icon .z4-icon {
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  width: 1em;
  height: 1em;
  background-size: 100%;
  background-position: center;
  opacity: 0.5;
}
@media screen and (max-width: 719px) {
  .page-info-icons .secondary-item {
    font-size: 1rem;
    display: block;
    float: none;
    clear: both;
    margin: 0.4em 0;
  }
}

.content-section.button-heading {
  padding: 1em;
  background: #ddd;
  border-radius: 2px;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.15);
  position: relative;
}
.content-section.button-heading h2 {
  margin: 0;
}
.content-section.button-heading .button {
  position: absolute;
  right: 1em;
  top: 1.5em;
}
@media screen and (max-width: 500px) {
  .content-section.button-heading {
    background: none;
  }
  .content-section.button-heading .button {
    display: block;
    width: 100%;
    text-align: center;
  }
}

.datagrid {
  display: inline-block;
  background: #fff;
  /*table { page-break-inside:auto }
  tr    { page-break-inside:avoid; page-break-after:auto }
  thead { display:table-header-group }
  tfoot { display:table-footer-group }*/
}
.datagrid .row_count {
  margin-top: 0.5em;
  color: #666;
}
.datagrid > table {
  width: auto;
  border-collapse: collapse;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -o-user-select: none;
  table-layout: fixed;
}
.datagrid > table thead {
  font-size: 9pt;
  font-weight: 300;
  z-index: 2;
  position: relative;
  color: white;
}
.datagrid > table thead th {
  text-align: left;
  border: 1px solid #333;
  white-space: nowrap;
  position: relative;
  height: 2.5em;
  background-color: #444;
  transition: background-color 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  cursor: pointer;
}
.datagrid > table thead th:hover {
  background: #000;
}
.datagrid > table thead th .column-name-display {
  position: absolute;
  top: 0;
  width: 100%;
  padding: 0.6em 6px;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}
.datagrid > table thead th .column-name-display > a {
  color: inherit;
  text-decoration: inherit;
}
.datagrid > table thead th .column-name-display > a:hover {
  text-decoration: none !important;
}
.datagrid > table thead th .column-name-display > a:before {
  display: none;
  content: "▼";
  color: #aaa;
}
.datagrid > table thead th .column-name-display > a:hover:before {
  color: inherit;
}
.datagrid > table thead th.narrow .text {
  text-overflow: clip;
  padding-left: 2px;
  padding-right: 2px;
}
.datagrid > table thead th.narrow .text > a:before {
  display: none;
}
.datagrid > table thead th .drag_handle {
  position: absolute;
  z-index: 99;
  right: 0;
  top: 0;
  padding: 0;
  width: 6px;
  height: 100%;
  display: block;
  background: none;
  cursor: ew-resize;
  cursor: col-resize;
  overflow: visible;
}
.datagrid > table thead th .drag_handle span {
  display: block;
}
.datagrid > table thead th .drag_handle .inner {
  height: 100%;
  width: 0;
  position: relative;
}
.datagrid > table thead th .drag_handle .inner .grower {
  width: 0;
}
.datagrid > table thead th.resizing {
  position: relative;
  z-index: 999;
}
.datagrid > table thead th.resizing .drag_handle .inner {
  width: 100%;
}
.datagrid > table thead th.resizing .drag_handle .grower {
  width: 100px;
  height: 100%;
  position: absolute;
  top: 0;
  left: -50px;
}
.datagrid > table thead th.resizing .drag_handle .indicator {
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  background: black;
}
.datagrid > table tbody:not(.page-break) {
  z-index: 1;
  position: relative;
}
.datagrid > table tbody:not(.page-break) tr:nth-child(2n-1) td {
  background-color: #fafafa;
  background-clip: padding-box;
}
.datagrid > table tbody:not(.page-break) tr:hover td {
  background-color: #efefef;
  background-clip: padding-box;
}
.datagrid > table tbody:not(.page-break) tr.active td {
  background-color: #ffa;
  background-clip: padding-box;
}
.datagrid > table tbody:not(.page-break) tr.groupseparator {
  background: white;
  height: 10px;
}
.datagrid > table tbody:not(.page-break) tr.groupheader td {
  background: #666;
  background-clip: padding-box;
  padding: 2px 6px;
  color: white;
  font-size: 10pt;
  font-weight: bold;
}
.datagrid > table tbody.page-break {
  display: block;
  page-break-after: auto;
}
.datagrid > table tbody.page-break.auto {
  page-break-after: auto;
}
.datagrid > table tbody.page-break.after {
  page-break-after: always;
}
.datagrid > table tbody.page-break td {
  height: 10px;
  border: 0;
}
.datagrid > table td {
  border: 1px solid #ddd;
  white-space: nowrap;
  overflow: hidden;
  cursor: default;
  min-width: 1em;
}
.datagrid > table td .fieldwidget {
  position: relative;
  z-index: 98;
}
.datagrid > table td.editing.error {
  overflow: visible;
  font-weight: normal;
  font-size: inherit;
  color: inherit;
  padding: 0;
  text-align: inherit;
}
.datagrid > table td.editing.error input, .datagrid > table td.editing.error select {
  outline-color: #c11;
}
.datagrid > table td.editing.error .popup {
  font-size: 10pt;
  position: absolute;
  top: 25px;
  left: 0;
  display: block;
  width: 240px;
  padding: 10px;
  background: #ffa;
  z-index: 99;
  box-shadow: 0 0 16px -4px #000;
  border: 1px solid #ebe981;
  border-radius: 2px;
}
.datagrid > table td.editing.error .popup:after {
  clear: both;
  content: "";
  display: block;
}
.datagrid > table td.editing.error .popup:after {
  content: "";
  height: 10px;
  width: 10px;
  background: #ffa;
  display: block;
  position: absolute;
  top: -5px;
  left: 6px;
  transform: rotate(45deg);
  z-index: -1;
}
.datagrid > table td.editing.error .popup p {
  margin: 0;
  white-space: normal;
}
.datagrid > table td.editing.error .popup .cancel_btn {
  float: right;
  display: block;
  text-transform: uppercase;
  padding: 4px 12px;
  border-radius: 3px;
  border: 1px solid transparent;
  color: #2780e3;
  transition: border-color 0.2s;
  font-weight: bold;
}
.datagrid > table td.editing.error .popup .cancel_btn:hover {
  border-color: #2780e3;
}
.datagrid > table td > span {
  display: block;
  padding: 2px 6px;
  text-overflow: ellipsis;
  height: 100%;
  min-width: 50px;
}
.datagrid > table td.active > span {
  background-color: #fffee6;
  outline: 2px solid #ffef66;
}
.datagrid > table td.editing {
  overflow: visible;
}
.datagrid > table td.editing input, .datagrid > table td.editing select {
  border: none;
  outline: 2px solid #4CAF50;
  background: white;
  margin: 0;
  padding: 2px 6px;
  outline-offset: 0;
  font: inherit;
  width: 100%;
}
.datagrid > table td.editing select {
  border: none;
  outline: 2px solid #4CAF50;
  background: white;
  margin: 0;
  padding: 0 2px;
  outline-offset: 0;
  font: inherit;
  width: 100%;
}
.datagrid .column-menu {
  position: absolute;
  z-index: 999;
  top: 31px;
  left: -1px;
  width: 180px;
  background: #f1f3f8;
  border: 1px solid rgba(0, 0, 0, 0.3);
  border-top: none;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.3);
  padding: 0 0 0.25rem;
  font-size: 0.9rem;
  color: #333;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  transition: max-height 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  max-height: 0;
  overflow: hidden;
}
.datagrid .column-menu.displayed {
  max-height: 480px;
}
.datagrid .column-menu .title {
  margin: 0 0 0.25rem 0;
  padding: 0.25rem 0.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  border-bottom: 1px solid #ddd;
  color: #2780e3;
}
.datagrid .column-menu input.title {
  border: 0;
  outline: 0;
  width: 100%;
  border-bottom: 1px solid #ddd;
  font-weight: bold;
  font: inherit;
  padding: 0.25rem 0.5rem;
}
.datagrid .column-menu.right-align {
  left: auto;
  right: -1;
}
.datagrid .column-menu .item {
  display: block;
  padding: 0.25rem 0.5rem;
  color: inherit;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.datagrid .column-menu .item:link:hover {
  background-color: #d0e2ec;
}
.datagrid .column-menu .label {
  font-size: 0.7rem;
  padding: 0.25rem 0.5rem;
  font-weight: normal;
  background: #ddd;
}
.datagrid .column-menu .label .label-option {
  float: right;
  color: #000;
  text-decoration: none;
}
.datagrid .column-menu .label .label-option:hover {
  text-decoration: underline;
}
.datagrid .column-menu input.rename {
  margin-left: 4px;
  margin-right: 4px;
  display: block;
  outline: none;
  width: 164px;
  padding: 1px;
}
.datagrid .column-menu input.rename:focus {
  padding: 1px;
  border: 1px solid #2780e3;
}
.datagrid .column-menu .filter {
  padding: 0;
  max-height: 300px;
  overflow-y: auto;
}
.datagrid .column-menu .filter .filterbox {
  width: 164px;
  margin: 2px 5px;
  padding: 1px;
  outline: none;
}
.datagrid .column-menu .filter .item {
  position: relative;
  padding-left: 2em;
}
.datagrid .column-menu .filter .item:before {
  display: block;
  position: absolute;
  top: 0.25rem;
  left: 0.5rem;
  content: "";
  height: 14px;
  width: 14px;
  border: 1px solid #666;
  background: white;
  text-align: center;
  line-height: 15px;
}
.datagrid .column-menu .filter .item.active:before {
  content: "✓";
  color: #4e8858;
  font-weight: bold;
}
.datagrid .column-menu .filter .warning {
  background: #ffc;
  color: #756a0e;
  white-space: normal;
  padding: 6px;
  font-weight: normal;
  font-style: italic;
  margin: 0px;
  display: block;
  font-size: 10pt;
}
.datagrid .show-all.link {
  margin: 1em;
}

.datagrid > table thead.print-table-header-group {
  display: none;
}

@media print {
  .data-container,
.app-container {
    margin: 0;
  }
  .data-container .datagrid,
.app-container .datagrid {
    display: block;
    margin: 0;
  }
  .data-container .datagrid table,
.app-container .datagrid table {
    page-break-after: always;
    break-after: page;
  }
  .data-container .datagrid table th,
.app-container .datagrid table th {
    border: 1px solid #ddd;
    border-bottom-color: #333;
    font-weight: bold;
    color: #333;
  }

  .datagrid table {
    display: block;
  }

  .datagrid > table thead.print-table-header-group {
    display: table-header-group;
  }
}
.content-cover-section {
  position: relative;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.content-cover-section .title {
  padding: 1em 0 0;
}
.content-cover-section h1 {
  font-weight: 900;
  font-size: 3em;
  margin: 0;
  white-space: normal;
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.25), 1px -1px 2px rgba(255, 255, 255, 0.25), -1px 1px 2px rgba(255, 255, 255, 0.25), -1px -1px 2px rgba(255, 255, 255, 0.25);
}
@media screen and (min-width: 719px) {
  .content-cover-section h1 {
    margin: 1em 0 0.5em;
  }
}
.content-cover-section .secondary {
  position: relative;
  color: inherit;
  padding: 0.75rem 1rem;
  font-weight: 600;
  background: rgba(255, 255, 255, 0.2);
}
.content-cover-section .secondary a {
  color: inherit;
}
@media screen and (max-width: 719px) {
  .content-cover-section .secondary .secondary-item {
    font-size: 1rem;
    display: block;
    float: none;
    clear: both;
    margin: 0.4em 0;
  }
}
.content-cover-section .content-cover-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.content-cover-section .content-cover-image.cover-photo {
  background-size: cover;
}
.content-cover-section.banner {
  margin: 1em;
  padding-left: 0;
  padding-right: 0;
}
.content-cover-section.banner .content-banner-image + .title {
  padding: 0;
}
.content-cover-section.banner .secondary {
  padding: 0.75rem 0;
  margin: 0;
}
.content-cover-section.banner .content-banner-image {
  width: 100%;
  padding-bottom: 18%;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
.content-cover-section.banner h1 {
  margin: 1rem 0 0;
}

.series-stop-ui {
  overflow: auto;
  clear: both;
  padding-bottom: 1em;
  border-bottom: 1px solid #ddd;
  margin: 2em 0 0 0;
}
@media screen and (min-width: 719px) {
  .series-stop-ui {
    display: flex;
    flex-direction: row;
  }
  .series-stop-ui .left-content {
    flex-basis: 5rem;
    flex-shrink: 0;
    flex-grow: 0;
    padding-right: 1rem;
  }
  .series-stop-ui .right-content {
    flex-basis: 8rem;
    flex-shrink: 0;
    flex-grow: 0;
    padding-left: 1rem;
    order: 3;
  }
  .series-stop-ui .right-content .button {
    width: 100%;
    margin-top: 6px;
  }
  .series-stop-ui .center-content {
    flex-grow: 1;
  }
  .series-stop-ui .center-content .text p {
    margin-top: 0.5em;
  }
}
.series-stop-ui h2 {
  margin: 0;
}
.series-stop-ui h4 {
  margin: 0;
}
.series-stop-ui .right-content .button {
  width: 100%;
}

.event-links-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.event-links-list.large {
  font-size: 1.2em;
}
.event-links-list > li {
  border-left: 4px solid #ddd;
  margin: 0.25em 0;
  padding: 0.15em 0.5em;
}
.event-links-list .link {
  font-weight: 400;
}

.page-content {
  min-height: calc(100vh - 25em);
  padding-top: 1px;
  box-shadow: 0 0px 32px rgba(0, 0, 0, 0.15), 0 64px 128px rgba(0, 0, 0, 0.1);
}

body.eventpage .single-reg-block {
  position: relative;
}
body.eventpage .single-reg-block h2 {
  margin: 0;
}
body.eventpage .single-reg-block .button {
  width: 100%;
  text-align: center;
  margin: 0.5em 0;
}
@media screen and (min-width: 719px) {
  body.eventpage .single-reg-block h2 + .button.right {
    position: absolute;
    top: 0;
    right: 1rem;
    width: auto;
  }
}

.search-results .icon.registration:before {
  background-color: #4CAF50;
}
.search-results .icon.results:before {
  background-color: #2780e3;
}
.search-results .icon.event:before {
  background-color: #aaa;
}

.content-block.homepage-search {
  max-width: 900px;
  margin: 2em auto;
}

.hidden {
  display: none;
}

.login.modal {
  padding: 2em;
}
.login.modal .z4form.narrow {
  width: auto;
}

.page-tabs {
  margin-left: -1px;
}

.alert.filter-warning {
  margin-right: -1px;
  margin-left: -1px;
  margin-top: -1px;
  border-radius: 0;
  font-size: 0.9em;
  border-left: 1px solid rgba(0, 0, 0, 0.25);
  border-right: 1px solid rgba(0, 0, 0, 0.25);
}

@media print {
  .no-print {
    display: none !important;
  }
}
@media screen and (max-width: 500px) {
  body.home {
    background-color: white;
  }
  body.home .site-search {
    padding-top: 1em;
  }
  body.home .page-content {
    border: none;
    box-shadow: none;
  }
  body.home .search-results > ul {
    margin-top: 0;
  }
  body.home .content-block.homepage-search {
    margin-top: 0;
  }
}

@media print {
  body.heats {
    font-size: 8.5pt;
  }
  body.heats .title-wrapper {
    display: none;
  }
  body.heats .racergroups.content-block {
    display: block;
  }
  body.heats .racer-group {
    margin: 0;
  }
  body.heats .racer-group h2 {
    padding-top: 0;
  }
}

.heat-brackets {
  page-break-inside: avoid;
}

body.startlist .alert,
body.seedlist .alert {
  margin-right: 1em;
  margin-left: 1em;
}
body.startlist .startgroups-container,
body.seedlist .startgroups-container {
  margin-right: 1em;
  margin-left: 1em;
  overflow-x: auto;
  display: block;
}
body.startlist .start-group,
body.seedlist .start-group {
  background: white;
  display: inline-block;
  min-width: 100%;
}
body.startlist .racer-list > li,
body.seedlist .racer-list > li {
  display: inline-block;
  min-width: 100%;
}

.share-links {
  overflow: auto;
  border-top: 1px solid #ddd;
  margin-top: 1em;
  padding-top: 1em;
  padding-bottom: 1em;
}
.share-links .social-spam {
  float: right;
}
.share-links .label {
  display: inline-block;
  padding: 1rem 0.5rem;
  font-size: 0.9em;
  font-weight: 600;
}
.share-links .share-link {
  display: inline-block;
  height: 40px;
  width: 40px;
  margin-left: 0.5rem;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 100px;
  opacity: 0.4;
  transition: opacity 250ms cubic-bezier(0.215, 0.61, 0.355, 1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 80%;
}
.share-links .share-link:hover {
  opacity: 0.8;
}
.share-links .share-link.email {
  background-image: url("/zimg/social_icon/email_dark.png");
}
.share-links .share-link.twitter {
  background-image: url("/zimg/social_icon/twitter_dark.png");
}
.share-links .share-link.facebook {
  background-image: url("/zimg/social_icon/facebook_dark.png");
}

.livetracking .share-links {
  border-top: 0;
}

.racer-detail .star-link {
  background-image: url("/zimg/icon/star.svg");
  padding-left: 1.5em;
  background-size: auto 1em;
  background-position: top 0.1em left 0.25em;
  background-repeat: no-repeat;
  font-weight: 600;
  display: inline-block;
  text-align: top;
  padding: 0 0.25em 0 1.55em;
  border-radius: 2px;
}
.racer-detail .star-link:hover {
  background-color: none !important;
  opacity: 1;
}
.racer-detail h1 .right {
  padding-left: 1em;
  background-repeat: no-repeat;
  background-position: top 10px left;
  background-size: 34%;
}
.racer-detail h1 .right.gold {
  background-image: url("/zimg/icon/medal_gold.svg");
}
.racer-detail h1 .right.silver {
  background-image: url("/zimg/icon/medal_silver.svg");
}
.racer-detail h1 .right.bronze {
  background-image: url("/zimg/icon/medal_bronze.svg");
}
.racer-detail h1 .rank {
  text-align: right;
}
.racer-detail h1 .time {
  display: block;
  font-size: 1rem;
  font-weight: 400;
  text-align: right;
}
.racer-detail h1 .below-name {
  font-size: 1rem;
  font-weight: normal;
  margin-right: 6em;
  white-space: normal;
}
.racer-detail h2 {
  font-weight: 400;
  text-align: left;
  color: #333;
}
.racer-detail h2 .right {
  float: right;
}
.racer-detail .label {
  display: inline-block;
  width: 10em;
  text-align: right;
  color: #aaa;
  white-space: nowrap;
  overflow: hidden;
  vertical-align: bottom;
  margin-right: 0.25em;
}
.racer-detail .label:link {
  text-decoration: none;
  color: #2780e3;
}
.racer-detail .label:link:hover {
  text-decoration: underline;
}
.racer-detail .detail-wrapper {
  text-align: center;
}
.racer-detail .detail-list {
  margin: 0 auto;
  padding: 0;
  list-style: none;
  text-align: left;
  max-width: 720px;
}
.racer-detail .detail-list li {
  margin-bottom: 0.25em;
}
.racer-detail .detail-list .label {
  width: 10em;
  float: left;
}
.racer-detail .detail-list .label:after {
  content: ":";
}
.racer-detail .detail-list .value {
  display: block;
  margin-left: 11em;
}

.racer-detail.starred .not-starred {
  display: none;
}
.racer-detail.starred .star-link {
  background-image: url("/zimg/icon/gold-star.svg");
  opacity: 1;
}
.racer-detail.starred .star-link:hover {
  text-decoration: underline;
}

.racer-detail:not(.starred) .only-starred {
  display: none;
}
.racer-detail:not(.starred) .star-link {
  background-color: #ffe895;
  transition: background-color 250ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.racer-detail:not(.starred) .star-link:hover {
  background-color: #f5e05b;
}

.photos-list {
  margin: 0 -0.5em;
  padding: 0;
  list-style: none;
}
.photos-list:after {
  clear: both;
  content: "";
  display: block;
}
.photos-list > li {
  padding: 0.25em;
  border: 1px solid #ddd;
  margin: 0.5em;
  float: left;
  overflow: auto;
  background-color: white;
}
.photos-list > li .racer-photo {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  height: 12em;
  width: 12em;
  display: block;
  text-indent: 12em;
  white-space: nowrap;
  overflow: hidden;
}
@media screen and (max-width: 480px) {
  .photos-list > li .racer-photo {
    height: 40vw;
    width: 40vw;
  }
}

.page-actions-container .button-bar {
  padding: 0.5em;
}
.page-actions-container .button-bar .button {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

body.results .racer-group h2, body.results .heat-brackets h2,
body.report .racer-group h2,
body.report .heat-brackets h2 {
  font-weight: 600;
  color: #333;
}
body.results .racer-group .secondary-info, body.results .heat-brackets .secondary-info,
body.report .racer-group .secondary-info,
body.report .heat-brackets .secondary-info {
  margin-bottom: 0.5em;
}
body.results .racer-group .column-labels, body.results .heat-brackets .column-labels,
body.report .racer-group .column-labels,
body.report .heat-brackets .column-labels {
  background-color: #ddd;
  color: #333;
  padding-top: 0.25em;
  padding-bottom: 0;
  border-bottom: 0;
}
body.results.full-width,
body.report.full-width {
  padding-top: 4rem;
}
body.results.full-width .site-header,
body.report.full-width .site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
body.results.full-width .page-content,
body.report.full-width .page-content {
  display: inline-block;
  min-width: 100%;
}
body.results.full-width .scroll-over-header,
body.report.full-width .scroll-over-header {
  z-index: 100;
  position: relative;
}
body.results .page-content,
body.report .page-content {
  border-color: #86b0de;
  min-height: calc(100vh - 16em);
}
body.results .menu-icon,
body.report .menu-icon {
  color: #2780e3;
}
body.results .content-block,
body.results .layout-block,
body.report .content-block,
body.report .layout-block {
  min-width: 100%;
  display: inline-block;
}
body.results .public-heading,
body.report .public-heading {
  margin-top: 1em;
  background: white;
  position: sticky;
  top: -2px;
  z-index: 1;
  margin-bottom: 0.5em;
}
body.results .public-heading h2,
body.report .public-heading h2 {
  padding: 0.25em 0 0;
  margin-bottom: 0;
}
body.results .public-heading .overflow-menu,
body.report .public-heading .overflow-menu {
  max-width: calc(100vw - var(--h2Width) + 11vw);
}
body.results .public-heading .overflow-menu.only-narrow, body.results .public-heading .overflow-menu.only-wide,
body.report .public-heading .overflow-menu.only-narrow,
body.report .public-heading .overflow-menu.only-wide {
  position: absolute;
  top: 1.5em;
  z-index: 11;
}
body.results .public-heading .overflow-menu.only-narrow .button, body.results .public-heading .overflow-menu.only-wide .button,
body.report .public-heading .overflow-menu.only-narrow .button,
body.report .public-heading .overflow-menu.only-wide .button {
  display: inline-block;
  margin-left: 0.25rem;
}
body.results .public-heading .column-labels,
body.report .public-heading .column-labels {
  margin-top: 0;
}
body.results .lap-labels .overflow-menu,
body.results .total-time.overflow-menu,
body.report .lap-labels .overflow-menu,
body.report .total-time.overflow-menu {
  text-align: left;
  overflow: visible;
  transition: background 0.2s ease-in-out;
}
body.results .lap-labels .overflow-menu.sort-by .trigger:after,
body.results .total-time.overflow-menu.sort-by .trigger:after,
body.report .lap-labels .overflow-menu.sort-by .trigger:after,
body.report .total-time.overflow-menu.sort-by .trigger:after {
  opacity: 0.9;
}
body.results .lap-labels .overflow-menu.sort-by .trigger:hover:after,
body.results .total-time.overflow-menu.sort-by .trigger:hover:after,
body.report .lap-labels .overflow-menu.sort-by .trigger:hover:after,
body.report .total-time.overflow-menu.sort-by .trigger:hover:after {
  opacity: 1;
}
body.results .lap-labels .overflow-menu .trigger,
body.results .total-time.overflow-menu .trigger,
body.report .lap-labels .overflow-menu .trigger,
body.report .total-time.overflow-menu .trigger {
  font-size: 1rem;
  padding-left: 0;
  font-weight: normal;
  color: #333;
  font-weight: 600;
  margin-bottom: 0;
  padding: 0 0.25em 0.25em;
  margin-left: -0.25em;
  max-width: 100%;
  overflow: hidden;
}
body.results .lap-labels .overflow-menu .trigger:after,
body.results .total-time.overflow-menu .trigger:after,
body.report .lap-labels .overflow-menu .trigger:after,
body.report .total-time.overflow-menu .trigger:after {
  content: "▼ ";
  opacity: 0.2;
  transition: opacity 200ms cubic-bezier(0.755, 0.05, 0.855, 0.06);
}
body.results .lap-labels .overflow-menu .trigger:hover,
body.results .total-time.overflow-menu .trigger:hover,
body.report .lap-labels .overflow-menu .trigger:hover,
body.report .total-time.overflow-menu .trigger:hover {
  background: unset;
}
body.results .lap-labels .overflow-menu .trigger:hover:after,
body.results .total-time.overflow-menu .trigger:hover:after,
body.report .lap-labels .overflow-menu .trigger:hover:after,
body.report .total-time.overflow-menu .trigger:hover:after {
  opacity: 0.75;
}
body.results .lap-labels .overflow-menu.expanded,
body.results .total-time.overflow-menu.expanded,
body.report .lap-labels .overflow-menu.expanded,
body.report .total-time.overflow-menu.expanded {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
  background: #ddd;
}
body.results .lap-labels .overflow-menu.expanded .trigger,
body.results .total-time.overflow-menu.expanded .trigger,
body.report .lap-labels .overflow-menu.expanded .trigger,
body.report .total-time.overflow-menu.expanded .trigger {
  color: black;
  background: #aaa;
}
body.results .lap-labels .overflow-menu.expanded .trigger:hover,
body.results .total-time.overflow-menu.expanded .trigger:hover,
body.report .lap-labels .overflow-menu.expanded .trigger:hover,
body.report .total-time.overflow-menu.expanded .trigger:hover {
  background: #aaa;
}
body.results .lap-labels .overflow-menu .button,
body.results .total-time.overflow-menu .button,
body.report .lap-labels .overflow-menu .button,
body.report .total-time.overflow-menu .button {
  margin: 0;
  position: absolute;
  top: 0;
  right: 0;
  width: 1.25rem;
  text-align: center;
  padding-left: 0;
  padding-right: 0;
}
body.results .group-head-right-nav,
body.report .group-head-right-nav {
  margin: 0;
  position: absolute;
  top: 0.5rem;
  right: 0;
}
body.results .group-head-right-nav .button,
body.report .group-head-right-nav .button {
  float: right;
}
body.results .group-head-right-nav .button .live-indicator,
body.report .group-head-right-nav .button .live-indicator {
  width: 2rem;
  text-align: center;
  padding-left: 0;
  padding-right: 0;
  z-index: 1;
}
body.results .alert-info.new,
body.report .alert-info.new {
  background-image: url("/zimg/temp/speachbubbles.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 3.5%;
  background-position-x: 0.5em;
  padding: 0.5rem 0.5rem 0.5rem 3.5em;
}
body.results .alert-info.new strong,
body.report .alert-info.new strong {
  color: white;
  font-size: 1.2em;
  font-weight: 400;
  margin-right: 0.5em;
}
@media screen and (max-width: 480px) {
  body.results .alert-info.new,
body.report .alert-info.new {
    background-position-y: 0.75em;
    background-size: 13%;
    padding-left: 4em;
  }
  body.results .alert-info.new .button,
body.report .alert-info.new .button {
    margin-top: 3px;
  }
}
body.results .lap-labels .overflow-menu .menu-content,
body.report .lap-labels .overflow-menu .menu-content {
  left: 0;
  right: auto;
}
@media screen and (max-width: 960px) {
  body.results .content-block.narrow .public-heading h2,
body.report .content-block.narrow .public-heading h2 {
    max-width: calc(100vw - 3em);
    white-space: nowrap;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
@media screen and (max-width: 960px) {
  body.results .content-block.narrow .info,
body.report .content-block.narrow .info {
    max-height: 1.25em;
    overflow: hidden;
  }
  body.results .content-block.narrow .secondary-info.group-information,
body.report .content-block.narrow .secondary-info.group-information {
    min-height: 15px;
  }
}

body.race.full-width .racer-group {
  min-width: 100%;
}

.page-actions-container:after {
  content: "";
  display: block;
  height: 1px;
  width: 100%;
  background-color: #ddd;
}

body.promo h2 {
  color: #2780e3;
}
body.promo .content-block {
  max-width: 640px;
  margin: 1em auto 3em auto;
  padding-left: 1em;
  padding-right: 1em;
}
body.promo .content-block.wide {
  max-width: initial;
}
body.promo .page-content p {
  line-height: 150%;
}

body.home .page-content.loading {
  cursor: wait !important;
}
body.home .page-content.loading a {
  cursor: wait !important;
}

.site-header {
  color: white;
  border-bottom: 1px solid #1b70cf;
  box-shadow: 0 0 10px -6px #1b70cf;
}
.site-header .home-link h1 {
  background-image: none;
  /*hide logo until we know site*/
}
.site-header ul .button {
  margin-right: 0em;
  margin-left: 0em;
  color: inherit;
}
.site-header ul .button.light:not(.no-border) {
  border-color: #1b70cf;
}
.site-header ul .button.light:not(.no-border):hover {
  background-color: #1b70cf;
}

@media screen and (max-width: 480px) {
  .header {
    color: #333;
  }
}
@media screen and (max-width: 480px) {
  body.home.all .page-tabs {
    display: none;
  }
  body.home:not(.all) .page-tabs .all {
    display: none;
  }
}
.z4-results-container {
  display: block;
}

.filter-list .label {
  font-size: 0.7em;
  color: #aaa;
}
.filter-list > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.filter-list > ul > li {
  display: block;
  float: left;
  padding: 0 2px;
}
.filter-list.type {
  float: left;
}
.filter-list.type a {
  font-weight: bold;
  font-size: 0.9em;
  display: block;
  padding: 0.5em 1em;
  margin-right: 0.5em;
  text-decoration: none;
  border: 1px solid #efefef;
  border-radius: 3px;
  transition: all 0.2s ease-in-out;
}
.filter-list.type .registration a {
  border-color: rgba(78, 136, 88, 0.25);
  color: #4e8858;
  background-color: rgba(78, 136, 88, 0.05);
}
.filter-list.type .registration a:hover {
  background-color: rgba(78, 136, 88, 0.15);
}
.filter-list.type .race a {
  border-color: rgba(46, 70, 154, 0.25);
  color: #2e469a;
  background-color: rgba(46, 70, 154, 0.05);
}
.filter-list.type .race a:hover {
  background-color: rgba(46, 70, 154, 0.15);
}
.filter-list.sport {
  float: right;
}
.filter-list.sport li {
  float: right;
}
.filter-list.sport a {
  width: 28px;
  height: 28px;
  display: block;
  background: white;
  overflow: hidden;
  background-color: #aaa;
  white-space: nowrap;
  text-indent: 60px;
  overflow: hidden;
  transition: background-color 0.25s ease-in-out;
}
.filter-list.sport a:hover {
  background-color: #333;
}
@media screen and (max-width: 960px) {
  .filter-list.sport {
    display: none;
  }
}

.column-labels {
  color: #666;
}
.column-labels > * {
  display: inline-block;
}
.column-labels .right {
  float: right;
  padding-left: 0.25em;
}

.race.shortcut-tabs {
  text-align: right;
  color: #2780e3;
  border-color: #77AFED;
  padding-right: 1rem;
  padding-left: 1rem;
}

.secondary-info {
  color: #666;
}
.secondary-info p {
  margin: 0;
}

.racer-group2 .column-headers {
  display: block;
}

.page-banner,
.race-banner {
  text-align: center;
  max-height: 140px;
}
.page-banner img,
.race-banner img {
  padding: 0.5rem;
  margin: 0px auto;
  max-width: 100%;
  max-height: 140px;
}
.page-banner + .racer-detail,
.race-banner + .racer-detail {
  border-top: 1px solid #ddd;
}

body.full-width .constrained-width {
  display: block !important;
}
body.full-width .z4-results-container {
  margin: 0px auto;
}
body.full-width .z4-results-container .racer-group2 .column-headers {
  display: block;
}

body.eventpage h2 {
  display: flex;
}
body.eventpage .layout-right.page-content .content-block {
  display: inline-block;
}
@media screen and (max-width: 480px) {
  body.eventpage .layout-right.page-content .content-block {
    display: block;
  }
  body.eventpage .layout-right.page-content .content-block.right-column {
    float: none;
  }
}
body.eventpage .layout-right.page-content .content-block:not(.right-column) {
  width: calc(100% - 320px);
  margin-right: 0;
}
@media screen and (max-width: 480px) {
  body.eventpage .layout-right.page-content .content-block:not(.right-column) {
    width: auto;
  }
}

body.livetracking .alert.live-tracking {
  background-image: url("/zimg/map/location_pin_red.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 5%;
  padding-left: 50px;
  border: 1px solid #b5c3d8;
  color: #333;
}
@media screen and (max-width: 480px) {
  body.livetracking .alert.live-tracking {
    background-size: 15%;
  }
}
body.livetracking .alert.live-tracking button.close {
  color: #bb1010;
  margin-top: 0.75em;
}
body.livetracking .alert.live-tracking.blue {
  background-image: url("/zimg/map/location_pin_blue.svg");
}
body.livetracking .alert.live-tracking.green {
  background-image: url("/zimg/map/location_pin_green.svg");
}
body.livetracking .alert.live-tracking.tan {
  background-image: url("/zimg/map/location_pin_tan.svg");
}
body.livetracking .alert.live-tracking.darkred {
  background-image: url("/zimg/map/location_pin_darkred.svg");
}
body.livetracking .alert.live-tracking.darkblue {
  background-image: url("/zimg/map/location_pin_darkblue.svg");
}
body.livetracking .alert.live-tracking.darkgreen {
  background-image: url("/zimg/map/location_pin_darkgreen.svg");
}
body.livetracking .alert.live-tracking.darktan {
  background-image: url("/zimg/map/location_pin_darktan.svg");
}
body.livetracking .alert.live-tracking.gold {
  background-image: url("/zimg/map/location_pin_gold.svg");
}
body.livetracking .alert.live-tracking.gold button.close {
  display: none;
}
body.livetracking .alert.live-tracking.silver {
  background-image: url("/zimg/map/location_pin_silver.svg");
}
body.livetracking .alert.live-tracking.silver button.close {
  display: none;
}
body.livetracking .alert.live-tracking.bronze {
  background-image: url("/zimg/map/location_pin_bronze.svg");
}
body.livetracking .alert.live-tracking.bronze button.close {
  display: none;
}
body.livetracking .livetracking-disclaimer {
  margin-left: 1em;
  color: #aaa;
}
body.livetracking .racer-alert-msg {
  display: inline-block;
  max-width: 80%;
}
@media screen and (max-width: 480px) {
  body.livetracking .racer-alert-msg {
    max-width: 55%;
  }
}

.filter-wrapper {
  /*border-bottom: 2px solid #1b70cf;*/
  border-bottom: 1px solid #eee;
  /*margin-top: 1px;*/
  box-shadow: 0 10px 6px -6px #fafafa;
}

.filter-container {
  font-size: 16px;
  margin: 0.75em auto 0.4em;
  max-width: 680px;
  display: flex;
  justify-content: center;
}

.custom-select {
  position: relative;
  font-family: Arial;
  display: inline-block;
  margin-right: 1em;
}

.custom-select select {
  display: none;
  /*hide original SELECT element: */
}

/* Style the arrow inside the select element: */
.select-selected:after {
  position: absolute;
  content: "";
  top: 14px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #666 transparent transparent transparent;
}

/* Point the arrow upwards when the select box is open (active): */
.select-selected.select-arrow-active:after {
  border-color: transparent transparent #fff transparent;
  top: 7px;
}

/* style the items (options), including the selected item: */
.select-items div, .select-selected {
  color: #2780e3;
  padding: 8px 16px;
  border: 1px solid transparent;
  border-color: transparent transparent rgba(0, 0, 0, 0.1) transparent;
  cursor: pointer;
}

.select-selected {
  /*background-color: #F2F3F8;*/
  background-color: #fff;
  border-color: transparent;
}

/* Style items (options): */
.select-items {
  position: absolute;
  background-color: #F2F3F8;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 99;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

/* Hide the items when the select box is closed: */
.select-hide {
  display: none;
}

.select-items div:hover, .same-as-selected {
  background-color: rgba(0, 0, 0, 0.1);
}

.site-search .location-toggle {
  position: absolute;
  right: 3.5rem;
  top: 0.5rem;
  width: 1.2rem;
  height: 1.2rem;
  z-index: 10;
  font-size: 1.5rem;
  font-size: 1.5rem;
  color: #666;
  text-decoration: none;
  transition: color 150ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  background-image: url("/zimg/icon/secondary/noun_Location_1826481.svg");
  background-size: 100%;
  opacity: 0.3;
  transition: all 0.25s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.site-search .location-toggle:hover {
  opacity: 0.5;
}
.site-search .location-toggle.active {
  opacity: 0.9;
}
.site-search .location-toggle.active:hover {
  opacity: 1;
}
