@font-face {font-family:'medium';src:url('/lib/fonts/SFProText-Medium.woff2') format('woff2'),url('fonts/SFProText-Medium.woff') format('woff');font-weight:normal;font-style:normal}
@font-face {font-family:'semibold';src:url('/lib/fonts/SFProText-Semibold.woff2') format('woff2'),url('fonts/SFProText-Semibold.woff') format('woff');font-weight:normal;font-style:normal}
@font-face {font-family:'bold';src:url('/lib/fonts/SFProText-Bold.woff2') format('woff2'),url('fonts/SFProText-Bold.woff') format('woff');font-weight:normal;font-style:normal}

/* 
@font-face {font-family:'medium';src:url('fonts/SFProText-Medium.woff2') format('woff2'),url('fonts/SFProText-Medium.woff') format('woff');font-weight:normal;font-style:normal}
@font-face {font-family:'semibold';src:url('fonts/SFProText-Semibold.woff2') format('woff2'),url('fonts/SFProText-Semibold.woff') format('woff');font-weight:normal;font-style:normal}
@font-face {font-family:'bold';src:url('fonts/SFProText-Bold.woff2') format('woff2'),url('fonts/SFProText-Bold.woff') format('woff');font-weight:normal;font-style:normal}
 */

:root { --white:#fff; --black:#222; --dark:#444; --text:#555; --red:#d00; --sand:#e7e8e2; --pink:#ee2579; --khaki:#909158; --lighten:rgba(255,255,255,0.25); --darken:rgba(0,0,0,0.25) }
html { background-color:var(--white); font-family:medium,sans-serif; font-size:15px; line-height:1.45; color:var(--text); fill:var(--text); -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; -webkit-text-size-adjust:none; -moz-text-size-adjust:none; -ms-text-size-adjust:none; text-size-adjust:none }
body { min-width:320px; margin:0; padding:40px 0 0 0; -webkit-tap-highlight-color:rgba(0,0,0,0); -ms-touch-action:manipulation; touch-action:manipulation }
noscript { position:fixed; top:0; left:0; right:0; min-height:40px; padding:0 15px; z-index:3; font-family:bold; text-transform:uppercase; background-color:var(--black); color:var(--red) }

body, div, ul { position:relative }
body, div, p, a, ul, li, label, input, textarea { -webkit-box-sizing:border-box; box-sizing:border-box }
input, textarea { margin:0; padding:0; -webkit-appearance:none; border:none; background:none; outline:none; resize:none; color:inherit }
textarea::-webkit-scrollbar { width:16px }
textarea::-webkit-scrollbar-thumb { background-color:rgba(0,0,0,0.4); background-clip:padding-box; border:solid 6px transparent; border-radius:8px }
ul { margin:0; padding:0; list-style-type:none }
ul.list { padding:0 16px; list-style-type:square }
h1, h2, h3, p { margin:0; padding:0; font-weight:normal; font-size:inherit; color:inherit }
h1 { font-family:bold; font-size:1.35rem; line-height:1.2; color:var(--khaki); text-transform:uppercase }
h2 { font-family:bold; font-size:1.1rem; line-height:1.25; color:var(--khaki); text-transform:uppercase }
h3 { font-family:bold }
.flow > * { margin:0.85rem 0 }
.flow > [data-lazy], .flow > .grid { margin:1rem 0 }
.flow > * + h1, .flow > * + h2 { margin-top:2rem }
.flow > h1 + h2 { margin-top:1.4rem }
.flow > [data-lazy] + [data-lazy] { margin-top:20px }
.flow > :first-child { margin-top:0 }
.flow > :last-child { margin-bottom:0 }
.push-down { margin-bottom:0.5rem }
p.warn { padding:8px 10px; background-color:var(--khaki); color:var(--white); border-radius:4px; font-family:bold; font-size:0.85rem; line-height:1.4; text-transform:uppercase }
b { font-family:bold; font-weight:normal}
a { font-family:semibold; text-decoration:none; color:var(--pink); cursor:pointer }
a:active { color:var(--dark) }
a.btn { margin:5px; padding:8px 15px; min-height:30px; background-color:var(--pink); color:var(--white); border-radius:4px; font-family:bold; font-size:0.85rem; line-height:0; text-transform:uppercase; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none }
a.btn:active { background-color:var(--dark) }
[data-url] { cursor:pointer }
sup { font-size:0.7rem }
img, svg { display:block }
svg { width:12px; height:12px; fill:inherit; pointer-events:none }
svg.spin { -webkit-animation:spin 500ms linear infinite; animation:spin 500ms linear infinite }
@-webkit-keyframes spin { from {-webkit-transform:rotate(0deg);transform:rotate(0deg) } to { -webkit-transform:rotate(360deg); transform:rotate(360deg) } }
@keyframes spin { from {-webkit-transform:rotate(0deg);transform:rotate(0deg) } to { -webkit-transform:rotate(360deg); transform:rotate(360deg) } }	

.flex { display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-orient:vertical; -webkit-box-direction:normal; -ms-flex-direction:column; flex-direction:column }
.flex.row { -webkit-box-orient:horizontal; -webkit-box-direction:normal; -ms-flex-direction:row; flex-direction:row; min-width:0 }
.flex.wrap { -ms-flex-wrap:wrap; flex-wrap:wrap }
.flex.page { min-height:calc(100vh - 40px + 1px); overflow:hidden; z-index:1 }
.flex.center { -webkit-box-align:center; -ms-flex-align:center; align-items:center; -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center; text-align:center }
.flex.center.left { text-align:left }
.flex.middle { -webkit-box-align:center; -ms-flex-align:center; align-items:center }
.fit { -webkit-box-flex:1; -ms-flex:1; flex:1 }
.max { width:100% }
.inset { width:100%; padding:20px }
.inset.box { max-width:800px }
.banner { max-width:300px }
[class*='grid-'] { display:-ms-grid; display:grid; grid-gap:20px; -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center; margin:0 auto }
.grid-124 { grid-template-columns:repeat(auto-fit,124px); font-size:0.9rem }
.grid-fixed { grid-template-columns:repeat(auto-fit,minmax(280px,354px)) }
.grid-auto { max-width:1600px; grid-template-columns:repeat(auto-fit,minmax(280px,482px)) }
.grid-social { grid-template-columns:repeat(auto-fit,2.75rem) }
.grid-social svg { width:2.75rem; height:2.75rem; fill:var(--white) }

div.white { background-color:var(--white); color:inherit }
div.sand { background-color:var(--sand); color:inherit }
div.pink { background-color:var(--pink); color:var(--white) }
div.khaki { background-color:var(--khaki); color:var(--white) }
div.pink h1, div.pink h2, div.pink h3, div.khaki h1, div.khaki h2, div.khaki h3 { color:inherit }
[data-url]:active svg { fill:var(--dark) }

[class*='aspect-']::before { display:block; content:''; padding-bottom:100% }
.aspect-40::before { padding-bottom:40% }
.aspect-42::before { padding-bottom:42.74% }
.aspect-50::before { padding-bottom:50% }
.aspect-56::before { padding-bottom:56.25% }
.aspect-60::before { padding-bottom:60% }
.aspect-80::before { padding-bottom:80% }
.aspect-116::before { padding-bottom:116% }
.aspect-155::before { padding-bottom:155% }
[class*='lazy-logo']::before { background-image:url('../media/logo-bg.png'); background-position:center; background-size:180px; background-repeat:no-repeat }
[class*='lazy-logo'].on::before { opacity:0; visibility:hidden; -webkit-transition:visibility 0s 1s, opacity 1s ease; -o-transition:visibility 0s 1s, opacity 1s ease; transition:visibility 0s 1s, opacity 1s ease }
.lazy-light::before, .lazy-logo-light::before { background-color:var(--sand) }
.lazy-lighten::before, .lazy-logo-lighten::before { background-color:var(--lighten) }
.lazy-dark::before, .lazy-logo-dark::before { background-color:var(--dark) }
.lazy-darken::before, .lazy-logo-darken::before { background-color:var(--darken) }
[data-lazy] > .lazy { position:absolute; top:0; left:0; bottom:0; right:0; width:100%; height:100%; border:none; background:none; visibility:hidden; opacity:0; -webkit-transition:visibility 0s 1s, opacity 1s ease; -o-transition:visibility 0s 1s, opacity 1s ease; transition:visibility 0s 1s, opacity 1s ease }
[data-lazy] > .lazy.on { visibility:visible; opacity:1; -webkit-transition:opacity 1s ease; -o-transition:opacity 1s ease; transition:opacity 1s ease }

[data-nav] { position:fixed; top:0; left:0; right:0; height:40px; z-index:2; -webkit-user-select:none; -webkit-transition:height 0ms 200ms; -o-transition:height 0ms 200ms; transition:height 0ms 200ms }
[data-nav].on { height:100vh; -webkit-transition:height 0ms; -o-transition:height 0ms; transition:height 0ms }
[data-nav] .topbar { height:40px; background-color:var(--black) }
[data-nav] .navbar { width:100%; max-width:800px; height:40px; margin:0 auto; color:var(--white); fill:var(--white); cursor:pointer }
[data-nav] .navbar ul { padding:0 20px; font-family:bold; font-size:14px; line-height:1; text-transform:uppercase; white-space:nowrap }
[data-nav] .navbar li + li { padding-left:10px }
[data-nav] .trunc { white-space:nowrap; overflow:hidden; -o-text-overflow:ellipsis; text-overflow:ellipsis }
[data-nav] .caret svg { width:6.5px; height:10px }
[data-nav].on .menu { opacity:1; -webkit-transition:opacity 300ms ease; -o-transition:opacity 300ms ease; transition:opacity 300ms ease }			
[data-nav] .menu { -webkit-box-pack:space-evenly; -ms-flex-pack:space-evenly; justify-content:space-evenly; background-color:var(--khaki); color:var(--white); text-transform:uppercase; overflow:auto; opacity:0; -webkit-transition:opacity 200ms ease; -o-transition:opacity 200ms ease; transition:opacity 200ms ease }
[data-nav] .menu > div { -webkit-box-flex:1; -ms-flex:1; flex:1; min-height:30px; max-height:60px; padding:12px 50px; font-family:bold; line-height:1.2; text-align:center; cursor:pointer }
[data-nav] .menu > div:first-child, [data-nav] div.menu > div:last-child { max-height:none }

[data-daysleft] { width:100%; height:40px; font-family:bold; font-size:0.9rem; background-color:#909158; color:#fff; text-transform:uppercase }

div.badge { width:100%; max-width:400px; margin:20px auto 0 auto; padding:10px 20px; background-color:var(--white); color:var(--pink); border-radius:4px; text-align:center }
div.privacy { padding:13px 30px; font-family:semibold; font-size:0.75rem; line-height:1.4; text-align:center; text-transform:uppercase; background-color:var(--lighten); color:var(--text) }
div.footer { background-color:var(--black) }
ul.footer { display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack:space-evenly; -ms-flex-pack:space-evenly; justify-content:space-evenly; width:100%; max-width:400px; margin:auto }
ul.footer li { font-family:bold; font-size:0.8rem; line-height:40px; color:var(--white); text-align:center; text-transform:uppercase}

@media only screen and (max-device-width:1023px) { .grid-auto { max-width:768px; -ms-grid-columns:(100%)[1]; grid-template-columns:repeat(1,100%) } }
@media only screen and (max-device-width:440px) { .grid-fixed { -ms-grid-columns:(100%)[1]; grid-template-columns:repeat(1,100%) } }

@media only screen and (max-device-width:768px) { html { font-size:14px; font-family:medium } }
@media only screen and (max-device-width:374px) { html { font-size:13px; font-family:medium } }