a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

body {
    backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: none;
    background-color: #EFF1F3;
    font-family: "Open Sans", sans-serif;
    font-size: 18px;
    line-height: 1.25;
}

p {
    margin: 1rem 0;
}

ul {
    list-style-position: inside;
    padding: 10px;
}

blockquote,
q {
    quotes: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: '';
    content: none;
}

img {
    border: 0;
    height: auto;
    max-width: 100%;
}

*,
*:after,
*:before {
    box-sizing: border-box;
}

svg {
    max-height: 500px;
}

h2 {
    color: #eff1f3;
    font: 1.75rem/1 Rubik, sans-serif;
    text-transform: uppercase;
}

h3 {
    font-size: 1.5rem;
    text-transform: uppercase;
}

h2 span {
    color: #272727;
}

.container {
    margin: 0 auto;
    max-width: 1280px;
    position: relative;
    width: 100%;
}

.flex-container {
    display: flex;
}

.flex-container.is-spread {
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.demos-container {
    padding: 0 1rem;
}

.main-header {
    background: #007486;
    border-bottom: 3px solid #272727;
    margin: 0 auto 1rem;
    padding: 1rem;
}

.main-header .flex-container {
    align-items: center;
}

a {
    color: #fff;
    text-decoration: none;
}

.primary-nav li {
    color: #eff1f3;
    list-style: none;
    padding: 0 1rem;
    text-transform: uppercase;
}

.demo {
    margin: 1rem 0;
}

.demo .flex-container>* {
    flex: 1 0 50%;
}

.demo header {
    background: #007486;
    color: #fff;
    margin-bottom: 1rem;
    padding: .5rem 1rem;
}


/**** Positions ****/

.primary-center {
    transform-origin: 125px 125px;
}

.secondary-center {
    transform-origin: 125px 180px;
}

.perpetual-day-center {
    transform-origin: 176.2px 132.2px;
}

.perpetual-date-center {
    transform-origin: 109.4px 132.1px;
}

.perpetual-month-center {
    transform-origin: 124.4px 116.9px;
}

.perpetual-year-center {
    transform-origin: 125px 190px;
}

.left-center {
    transform-origin: 70px 125px;
}

.right-center {
    transform-origin: 180px 125px;
}

.bottom-center {
    transform-origin: 125px 179px;
}

.chronograph-left {
    transform-origin: 78px 124px;
}

.chronograph-right {
    transform-origin: 173px 124px;
}

.chronograph-bottom-center {
    transform-origin: 125px 186px;
}

.split-hours-ones {
    transform-origin: 85px 125px;
}

.split-hours-tenths {
    transform-origin: 75px 125px;
}

.split-minutes-ones {
    transform-origin: 115px 125px;
}

.split-minutes-tenths {
    transform-origin: 105px 125px;
}

/**** Minute Repeater ****/

.repeater-st0 {
    fill: #272727;
}


/**** Retrograde Seconds ****/

.retro-st0 {
    fill: #FFFFFF;
}

.sretro-t1 {
    fill: none;
    stroke: #000000;
    stroke-width: 5;
    stroke-miterlimit: 10;
}

.retro-st2 {
    fill: #272727;
}

.retro-st3 {
    fill: none;
    stroke: #007486;
    stroke-width: 2;
    stroke-miterlimit: 10;
}

#retrograde-second-hand-one {
    transform-origin: 91px 158px;
}


/**** Chronograph ****/

.chronograph-st0 {
    fill: #272727;
}

.chronograph-st1 {
    fill: #FFFFFF;
}

.chronograph-st2 {
    fill: none;
    stroke: #000000;
    stroke-width: 5;
    stroke-miterlimit: 10;
}

.chronograph-st3 {
    fill: #D6D6D6;
}

.chronograph-st4 {
    fill: #007486;
}

.chronograph-st5 {
    fill: none;
    stroke: #007486;
    stroke-miterlimit: 10;
}

.chronograph-st6 {
    fill: none;
    stroke: #000000;
    stroke-miterlimit: 10;
}

.chronograph-st7 {
    fill: #4E4F4F;
}

#chronograph-primary-btn,
#chronograph-secondary-btn,
#chronograph-tertiary-btn {
    transform: translate(0, 0);
    transition: transform .25s ease;
}

#chronograph-primary-btn.active {
    transform: translate(-3px, 2px);
    transition: transform .1s ease;
}

#chronograph-secondary-btn.active {
    transform: translate(-3px, -2px);
    transition: transform .1s ease;
}

#chronograph-tertiary-btn.active {
    transform: translate(3px, -2px);
    transition: transform .1s ease;
}


/**** Grande Complication ****/

.grande-primary-center {
    transform-origin: 309px 309px;
}

.grande-left-center {
    transform-origin: 198px 309px;
}

.grande-right-center {
    transform-origin: 419px 309px;
}

.grande-bottom-center {
    transform-origin: 309px 408px;
}

.grande-top-center {
    transform-origin: 309px 178px;
}

.grande-month-center {
    transform-origin: 357px 227px;
}

.grande-date-center {
    transform-origin: 256.5px 219px;
}

.grande-equation-center {
    transform-origin: 309px 275px;
}

.grande-st0 {
    fill: #fff;
}

.grande-st1 {
    fill: #606060;
}

.grande-st2 {
    fill: #FFFFFF;
}

.grande-st3 {
    fill: #AAA9A9;
    stroke: #191919;
    stroke-miterlimit: 10;
}

.grande-st4 {
    fill: #313363;
}

.grande-st5 {
    fill: #EFEDED;
    stroke: #E5E5E5;
    stroke-miterlimit: 10;
}

.grande-st6 {
    fill: #F9F68A;
}

.grande-st7 {
    fill: #AAA9A9;
    stroke: #333333;
    stroke-miterlimit: 10;
}

.grande-st8 {
    fill: #15405B;
}

.grande-st9 {
    fill: #B6D5EF;
}

.grande-st10 {
    fill: #E5E1E1;
    stroke: #191919;
    stroke-miterlimit: 10;
}

.grande-st11 {
    fill: none;
    stroke: #000000;
    stroke-width: 3;
    stroke-miterlimit: 10;
}

.grande-st12 {
    fill: none;
    stroke: #000000;
    stroke-width: 2;
    stroke-miterlimit: 10;
}

.grande-st13 {
    fill: none;
    stroke: #000000;
    stroke-miterlimit: 10;
}

.grande-st14 {
    fill: none;
    stroke: #212121;
    stroke-width: 3;
    stroke-miterlimit: 10;
}

.grande-st15 {
    fill: none;
    stroke: #C40C0C;
    stroke-width: 2;
    stroke-miterlimit: 10;
}

.grande-st16 {
    fill: none;
    stroke: #333232;
    stroke-width: 2;
    stroke-miterlimit: 10;
}

.grande-st17 {
    fill: none;
    stroke: #212121;
    stroke-width: 5;
    stroke-miterlimit: 10;
}

.grande-st18 {
    fill: none;
    stroke: #000000;
    stroke-width: 9;
    stroke-miterlimit: 10;
}

.grande-st19 {
    fill: none;
    stroke: #f6f6f6;
    stroke-width: 24;
    stroke-miterlimit: 10;
}

.grande-st20 {
    fill: none;
    stroke: #F7FF4D;
    stroke-width: 24;
    stroke-miterlimit: 10;
}

.grande-st21 {
    fill: none;
}

.grande-st24 {
    fill: #E5E1E1;
}

.grande-st25 {
    fill: #191919;
}

.grande-st26 {
    fill-rule: evenodd;
    clip-rule: evenodd;
    fill: #F7FF4D;
}

#grande-primary-button,
#grande-secondary-button,
#grande-repeater-button {
    transform: translate(0, 0);
    transition: transform .25s ease;
}

#grande-primary-button.active {
    transform: translate(-3px, 2px);
    transition: transform .1s ease;
}

#grande-secondary-button.active {
    transform: translate(-3px, -2px);
    transition: transform .1s ease;
}

#grande-repeater-button.active {
    transform: translate(3px, -2px);
    transition: transform .1s ease;
}


/* DIALS */

.dials-st5 {
    fill: #FFFFFF;
}

.dials-st6 {
    fill: none;
    stroke: #000000;
    stroke-width: 5;
    stroke-miterlimit: 10;
}

.dials-st7 {
    fill: #007486;
}

.dials-st8 {
    fill: #272727;
}

.dials-st9 {
    fill: #EFF1F3;
}

.dials-st10 {
    fill: none;
    stroke: #272727;
    stroke-miterlimit: 10;
}

.dials-st11 {
    fill: none;
    stroke: #272727;
    stroke-width: 3;
    stroke-miterlimit: 10;
}

.perpetual-st0 {
    fill: #FFFFFF;
}

.perpetual-st1 {
    fill: none;
}

.perpetual-st2 {
    fill: none;
    stroke: #000000;
    stroke-width: 5;
    stroke-miterlimit: 10;
}

.perpetual-st3 {
    fill: #EFF1F3;
}

.perpetual-st4 {
    fill: #272727;
}

.perpetual-st5 {
    fill: none;
    stroke: #272727;
    stroke-miterlimit: 10;
}

.perpetual-st6 {
    fill: #007486;
}

.perpetual-st7 {
    fill: none;
    stroke: #007486;
    stroke-miterlimit: 10;
}

.moonphase-st0 {
    fill: #FFFFFF;
}

.moonphase-st1 {
    fill: #0F2E47;
}

.moonphase-st2 {
    fill: #E2D752;
}

.moonphase-st3 {
    fill: #D6D6D4;
    stroke: #000000;
    stroke-miterlimit: 10;
}

.moonphase-st4 {
    fill: #3D3D3D;
}

.moonphase-st5 {
    fill: none;
    stroke: #000000;
    stroke-width: 5;
    stroke-miterlimit: 10;
}

.moonphase-st6 {
    fill: none;
    stroke: #007486;
    stroke-miterlimit: 10;
}

.moonphase-st7 {
    fill: #272727;
}

.moonphase-st8 {
    fill: none;
    stroke: #000000;
    stroke-miterlimit: 10;
}

/* Split Times */
.split-1 {
    fill: #fff;
}

.split-2 {
    fill: none;
    stroke: #000;
    stroke-miterlimit: 10;
}