/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
    display:block
}
audio,canvas,video{
    display:inline-block
}
audio:not([controls]){
    display:none;
    height:0
}
[hidden]{
    display:none
}
html{
    -ms-text-size-adjust:100%;
    -webkit-text-size-adjust:100%;
    font-size:62.5%
}
button,html,input,select,textarea{
    font-family:sans-serif
}
body{
    margin:0
}
a:active,a:hover{
    outline:0
}
h1{
    font-size:5em;
    margin:.67em 0
}
h2{
    font-size:1.5em;
    margin:.83em 0
}
h3{
    font-size:1.17em;
    margin:1em 0
}
h4{
    font-size:1em;
    margin:1.33em 0
}
h5{
    font-size:.83em;
    margin:1.67em 0
}
h6{
    font-size:.67em;
    margin:2.33em 0
}
abbr[title]{
    border-bottom:1px dotted
}
b,strong{
    font-weight:bold
}
blockquote{
    margin:1em 40px
}
dfn{
    font-style:italic
}
hr{
    box-sizing:content-box;
    height:0
}
mark{
    background:#ff0;
    color:#000
}
p,pre{
    margin:0 0 15px 0
}
code,kbd,pre,samp{
    font-family:monospace,serif;
    font-size:1em
}
pre{
    white-space:pre;
    white-space:pre-wrap;
    word-wrap:break-word
}
q{
    quotes:none
}
q:after,q:before{
    content:'';
    content:none
}
small{
    font-size:80%
}
sub,sup{
    font-size:75%;
    line-height:0;
    position:relative;
    vertical-align:baseline
}
sup{
    top:-.25em
}
sub{
    bottom:-.25em
}
dl,menu,ol,ul{
    margin:1em 0
}
dd{
    margin:0 0 0 40px
}
menu,ol,ul{
    padding:0 0 0 40px
}
nav ol,nav ul{
    list-style:none;
    list-style-image:none
}
img{
    border:0;
    -ms-interpolation-mode:bicubic
}
svg:not(:root){
    overflow:hidden
}
figure{
    margin:0
}
form{
    margin:0
}
fieldset{
    border:1px solid silver;
    margin:0 2px;
    padding:.35em .625em .75em
}
legend{
    border:0;
    padding:0;
    white-space:normal
}
button,input,select,textarea{
    font-size:100%;
    margin:0;
    vertical-align:baseline
}
button,input{
    line-height:normal
}
button,select{
    text-transform:none
}
button,html input[type=button],input[type=reset],input[type=submit]{
    -webkit-appearance:button;
    cursor:pointer
}
button[disabled],html input[disabled]{
    cursor:default
}
input[type=checkbox],input[type=radio]{
    box-sizing:border-box;
    padding:0
}
input[type=search]{
    -webkit-appearance:textfield;
    box-sizing:content-box
}
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{
    -webkit-appearance:none
}
button::-moz-focus-inner,input::-moz-focus-inner{
    outline:1px dotted;
    padding:0
}
textarea{
    overflow:auto;
    vertical-align:top
}
table{
    border-collapse:collapse;
    border-spacing:0
}
/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
button,html,input,select,textarea{
    color:#222
}
::-moz-selection{
    background:#b3d4fc;
    text-shadow:none
}
::selection{
    background:#b3d4fc;
    text-shadow:none
}
hr{
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #ccc;
    margin:1em 0;
    padding:0
}
audio,canvas,img,video{
    vertical-align:middle
}
fieldset{
    border:0;
    margin:0;
    padding:0
}
textarea{
    resize:vertical
}
.browsehappy{
    margin:.2em 0;
    background:#ccc;
    color:#000;
    padding:.2em 0
}
.ir{
    background-color:transparent;
    border:0;
    overflow:hidden
}
.ir:before{
    content:"";
    display:block;
    width:0;
    height:150%
}
.hidden{
    display:none!important;
    visibility:hidden
}
.visuallyhidden{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{
    clip:auto;
    height:auto;
    margin:0;
    overflow:visible;
    position:static;
    width:auto
}
.invisible{
    visibility:hidden
}
.clearfix:after,.clearfix:before{
    content:" ";
    display:table
}
.clearfix:after{
    clear:both
}
@media print{
    *{
        background:0 0!important;
        color:#000;
        box-shadow:none!important;
        text-shadow:none!important
    }
    a,a:visited{
        text-decoration:underline
    }
    .ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{
        content:""
    }
    blockquote,pre{
        border:1px solid #999;
        page-break-inside:avoid
    }
    thead{
        display:table-header-group
    }
    img,tr{
        page-break-inside:avoid
    }
    img{
        max-width:100%!important
    }
    @page{
        margin:.5cm
    }
    h2,h3,p{
        orphans:3;
        widows:3
    }
    h2,h3{
        page-break-after:avoid
    }
}
*{
    box-sizing:border-box
}
@font-face{
    font-family:apercu;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/apercu-regular.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/apercu-regular.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-regular.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-regular.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-regular.svg#apercu-regular) format("svg"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-regular.eot?#iefix) format("embedded-opentype");
    font-weight:normal;
    font-style:normal
}
@font-face{
    font-family:apercu;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/apercu-medium.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/apercu-medium.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-medium.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-medium.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-medium.svg#apercu-medium) format("svg"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-medium.eot?#iefix) format("embedded-opentype");
    font-weight:600;
    font-style:normal
}
@font-face{
    font-family:apercu;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/apercu-bold.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/apercu-bold.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-bold.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-bold.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-bold.svg#apercu-bold) format("svg"),url(https://d31iqi82ivd0ac.cloudfront.net/apercu-bold.eot?#iefix) format("embedded-opentype");
    font-weight:800;
    font-style:normal
}
@font-face{
    font-family:caecilia;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-55Roman.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-55Roman.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-55Roman.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-55Roman.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-55Roman.svg#CaeciliaCom-55Roman) format("svg"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-55Roman.eot?#iefix) format("embedded-opentype");
    font-weight:normal;
    font-style:normal
}
@font-face{
    font-family:caecilia;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-45Light.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-45Light.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-45Light.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-45Light.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-45Light.svg#CaeciliaCom-45Light) format("svg"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-45Light.eot?#iefix) format("embedded-opentype");
    font-weight:400;
    font-style:normal
}
@font-face{
    font-family:caecilia;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-75Bold.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-75Bold.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-75Bold.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-75Bold.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-75Bold.svg#CaeciliaCom-75Bold) format("svg"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-75Bold.eot?#iefix) format("embedded-opentype");
    font-weight:600;
    font-style:normal
}
@font-face{
    font-family:caecilia;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-85Heavy.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-85Heavy.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-85Heavy.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-85Heavy.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-85Heavy.svg#CaeciliaCom-85Heavy) format("svg"),url(https://d31iqi82ivd0ac.cloudfront.net/CaeciliaCom-85Heavy.eot?#iefix) format("embedded-opentype");
    font-weight:800;
    font-style:normal
}
@font-face{
    font-family:franklin-gothic;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/Franklin-Gothic-Book.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/Franklin-Gothic-Book.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/Franklin-Gothic-Book.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/Franklin-Gothic-Book.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/Franklin-Gothic-Book.svg#Franklin-Gothic-Book) format("svg"),url(https://d31iqi82ivd0ac.cloudfront.net/Franklin-Gothic-Book.eot?#iefix) format("embedded-opentype");
    font-weight:normal;
    font-style:normal
}
@font-face{
    font-family:icomoon;
    src:url(fonts/icomoon.eot?c5r3y4);
    src:url(fonts/icomoon.eot?c5r3y4#iefix) format("embedded-opentype"),url(fonts/icomoon.ttf?c5r3y4) format("truetype"),url(fonts/icomoon.woff?c5r3y4) format("woff"),url(fonts/icomoon.svg?c5r3y4#icomoon) format("svg");
    font-weight:normal;
    font-style:normal
}
@font-face{
    font-family:CFA_One;
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CFA_One.eot);
    src:url(https://d31iqi82ivd0ac.cloudfront.net/CFA_One.eot?#iefix) format("embedded-opentype"),url(https://d31iqi82ivd0ac.cloudfront.net/CFA_One.woff2) format("woff2"),url(https://d31iqi82ivd0ac.cloudfront.net/CFA_One.woff) format("woff"),url(https://d31iqi82ivd0ac.cloudfront.net/CFA_One.ttf) format("truetype"),url(https://d31iqi82ivd0ac.cloudfront.net/CFA_One.svg#CFA_One) format("svg");
    font-weight:normal;
    font-style:normal
}
[class*=" icon-"],[class^=icon-]{
    font-family:icomoon!important;
    speak:none;
    font-style:normal;
    font-weight:normal;
    font-variant:normal;
    text-transform:none;
    line-height:1;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale
}
.icon-plus:before{
    content:"\e922"
}
.icon-box:before{
    content:"\e921"
}
.icon-check:before{
    content:"\e920"
}
.icon-ellipses:before{
    content:"\e91d"
}
.icon-bullet:before{
    content:"\e91b"
}
.icon-servings:before{
    content:"\e915"
}
.icon-time:before{
    content:"\e916"
}
.icon-difficulty:before{
    content:"\e919"
}
.icon-replay:before{
    content:"\e911"
}
.icon-facebook-over:before{
    content:"\e901"
}
.icon-info:before{
    content:"\e910"
}
.icon-arrow-down:before{
    content:"\e902"
}
.icon-circle-left:before{
    content:"\e909"
}
.icon-arrow-up:before{
    content:"\e903"
}
.icon-circle-right:before{
    content:"\e90e"
}
.icon-circle-down:before{
    content:"\e904"
}
.icon-location-on:before{
    content:"\e906"
}
.icon-logo-mobile:before{
    content:"\e907"
}
.icon-linkedin-over:before{
    content:"\e938"
}
.icon-android:before{
    content:"\e917"
}
.icon-nav-toggle-off:before{
    content:"\e908"
}
.icon-search-off:before{
    content:"\e90a"
}
.icon-close:before{
    content:"\e90b"
}
.icon-logo-desktop:before{
    content:"\e90c"
}
.icon-facebook-up:before{
    content:"\e926"
}
.icon-instagram-over:before{
    content:"\e900"
}
.icon-instagram-up:before{
    content:"\e925"
}
.icon-email-redCircle:before{
    content:"\e92d"
}
.icon-email-circle:before{
    content:"\ea86"
}
.icon-location-off:before{
    content:"\e90d"
}
.icon-circle-up:before{
    content:"\e90f"
}
.icon-twitter-over:before{
    content:"\e912"
}
.icon-youtube-over:before{
    content:"\e913"
}
.icon-nav-toggle-on:before{
    content:"\e914"
}
.icon-tumblr-over:before{
    content:"\e905"
}
.icon-tumblr-up:before{
    content:"\e91f"
}
.icon-apple:before{
    content:"\e918"
}
.icon-twitter-up:before{
    content:"\e91a"
}
.icon-map:before{
    content:"\e91c"
}
.icon-youtube-up:before{
    content:"\e91e"
}
.icon-location:before{
    content:"\e923"
}
.icon-list:before{
    content:"\e924"
}
.icon-standalone:before{
    content:"\e927"
}
.icon-mall:before{
    content:"\e928"
}
.icon-user-inactive:before{
    content:"\e929"
}
.icon-user-active:before{
    content:"\e92a"
}
.icon-bag-inactive:before{
    content:"\e92b"
}
.icon-bag-active:before{
    content:"\e92c"
}
.icon-cold:before{
    content:"\e92e"
}
.icon-hot:before{
    content:"\e92f"
}
.icon-calendar:before{
    content:"\e930"
}
.icon-Checkmark:before{
    content:"\e931"
}
.icon-missing-items:before{
    content:"\e932"
}
.icon-orders-restaurant-feedback:before{
    content:"\e933"
}
.icon-other:before{
    content:"\e934"
}
.icon-portion-size:before{
    content:"\e935"
}
.icon-taste:before{
    content:"\e936"
}
.icon-temperature:before{
    content:"\e937"
}
.icon-wrong-items:before{
    content:"\e939"
}
body{
    font-family:apercu,sans-serif
}
.x-large{
    font-family:apercu,sans-serif;
    font-weight:800;
    font-size:35px;
    line-height:44px;
    letter-spacing:-.7px;
    font-variant-ligatures:none;
    color:#5b6770
}
@media only screen and (min-width:959px){
    .x-large{
        font-size:78px;
        line-height:84px;
        letter-spacing:-2px
    }
}
.x-large--white{
    color:#fff
}
.x-large--blue{
    color:#004f71
}
.x-large--shadow{
    text-shadow:0 2px 10px rgba(0,0,0,.5)
}
.large{
    font-family:apercu,sans-serif;
    font-weight:800;
    font-size:44px;
    line-height:68px;
    letter-spacing:-1.5px;
    font-variant-ligatures:none;
    color:#5b6770
}
@media only screen and (min-width:959px){
    .large{
        font-size:62px;
        letter-spacing:-.75px
    }
}
.large--blue{
    color:#004f71
}
.medium{
    font-family:apercu,sans-serif;
    font-weight:800;
    font-size:22px;
    line-height:37px;
    letter-spacing:-.5px;
    font-variant-ligatures:none;
    color:#5b6770
}
@media only screen and (min-width:959px){
    .medium{
        font-size:47px;
        line-height:60px;
        letter-spacing:-1px
    }
}
.small{
    font-family:apercu,sans-serif;
    font-weight:800;
    font-size:32px;
    line-height:48px;
    letter-spacing:-.7px;
    font-variant-ligatures:none;
    color:#5b6770
}
.small--white{
    color:#fff
}
.small--blue{
    color:#004f71
}
.x-small{
    font-family:apercu,sans-serif;
    font-weight:600;
    font-size:23px;
    line-height:36px;
    letter-spacing:-.5px;
    font-variant-ligatures:none;
    color:#5b6770
}
.x-small--blue{
    color:#004f71
}
.type{
    font-family:apercu,sans-serif;
    font-weight:normal;
    font-size:18px;
    line-height:32px;
    letter-spacing:-.5px;
    font-variant-ligatures:none
}
.type--small{
    font-size:16px;
    line-height:24px;
    letter-spacing:-.5px
}
.type--featured{
    font-size:18px;
    font-weight:800;
    letter-spacing:-.23px;
    line-height:21px;
    text-shadow:0 2px 10px rgba(0,0,0,.7)
}
.type--white{
    color:#fff
}
.header-frame{
    background-color:#fff;
    height:120px;
    max-height:64px;
    max-width:none;
    overflow:visible;
    padding:0;
    position:fixed;
    top:0;
    transition:max-height 1.5s ease;
    width:100%;
    z-index:3000
}
.home .header-frame,.press-landing .header-frame{
    background-color:#fff;
    height:auto;
    max-height:none
}
.header-frame.hovered{
    max-height:112px;
    transition:max-height .5s ease
}
.home .header-frame.hovered{
    max-height:none
}
@media only screen and (max-width:959px){
    .header-frame{
        height:auto
    }
    .about .header-frame{
        height:60px
    }
}
.header-frame.m-lock{
    background-image:none;
    background-color:#fff;
    transition:background-color .5s ease
}
.about .header-frame.m-lock{
    background-color:#fff;
    transition:background-color .5s ease
}
.about .header-frame{
    background:linear-gradient(to bottom,rgba(255,255,255,.8) 27%,rgba(255,255,255,0) 103%);
    background-color:transparent;
    transition:background-color .75s ease
}
.about .header-frame.focused{
    background-color:#fff;
    background-image:none;
    transition:background-color .75s ease
}
.about .header-frame.focused .subnav{
    background-color:#fff;
    background-image:none;
    transition:background-color .75s ease
}
.about .header-frame .subnav{
    background:linear-gradient(to bottom,rgba(255,255,255,.4) -110%,rgba(255,255,255,0) 130%)
}
.about .header-frame.hovered{
    background-color:#fff
}
@media only screen{
    .header-frame.lock{
        background-color:#fff
    }
    .about .header-frame.lock{
        background-image:none;
        background-color:#fff;
        transition:background-color .75s ease
    }
}
.header-frame .content-hide{
    display:none
}
header{
    background-color:#fff;
    color:#5b6770;
    font-weight:300;
    margin:0 auto;
    padding:0;
    width:100%;
    z-index:400
}
@media only screen and (max-width:959px){
    header{
        background-color:#fff
    }
}
.about header{
    background-color:transparent;
    transition:background-color .75s ease
}
@media only screen and (max-width:959px){
    .about header{
        padding-bottom:5px
    }
}
.nav-shown header{
    background-color:#fff;
    height:100%;
    top:0!important
}
header .icon-close{
    font-size:21px;
    font-size:2.1rem;
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none
}
header .icon-close:hover{
    text-decoration:underline;
    transition:1s
}
header .icon-close:hover{
    cursor:pointer
}
header .icon-close:focus{
    outline-color:-webkit-focus-ring-color;
    outline-style:auto;
    outline-width:5px
}
header.lock{
    max-width:none;
    padding-left:0;
    padding-right:0;
    position:fixed;
    top:0;
    width:100%
}
header.lock .nav-frame{
    margin:0 auto
}
@media only screen and (min-width:1439px){
    header.lock .nav-frame{
        max-width:1380px;
        width:1380px
    }
}
@media only screen and (max-width:1439px){
    header.lock .nav-frame{
        max-width:1220px;
        width:1220px
    }
}
@media only screen and (max-width:1279px){
    header.lock .nav-frame{
        max-width:900px;
        width:900px
    }
}
@media only screen and (max-width:959px){
    header{
        max-width:none;
        padding:0;
        position:fixed;
        top:0;
        width:100%;
        z-index:1000
    }
}
header.expanded{
    height:110px
}
@media only screen and (max-width:959px){
    header .nav-frame{
        height:100%;
        position:relative
    }
}
.header-components{
    display:-ms-flexbox;
    display:flex;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-pack:start;
    justify-content:flex-start;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    height:64px;
    -ms-flex-wrap:nowrap;
    flex-wrap:nowrap;
    position:relative;
    background-color:#fff;
    z-index:300;
    padding:0 16px;
    box-shadow:0 0 4px 0 rgba(0,0,0,.2)
}
.header-components a:focus{
    outline:1px dotted #dd0031;
    outline-offset:2px
}
@media screen and (min-width:960px){
    .header-components{
        padding:0 24px
    }
}
@media only screen and (max-width:959px){
    .nav-shown .header-components{
        box-shadow:none
    }
    .nav-shown .header-components::after{
        content:'';
        position:absolute;
        top:0;
        right:0;
        left:0;
        bottom:0;
        pointer-events:none;
        z-index:0;
        background-color:#fff;
        height:64px;
        z-index:10;
        box-shadow:0 0 4px 0 rgba(0,0,0,.2)
    }
}
.logo{
    background-color:#fff;
    border:0;
    color:#dd0031;
    position:relative;
    text-decoration:none;
    z-index:300;
    height:50px;
    width:50px;
    -ms-flex:0 0 50px;
    flex:0 0 50px
}
@media screen and (min-width:960px){
    .logo{
        width:68px;
        -ms-flex:0 0 68px;
        flex:0 0 68px
    }
    .logo::before{
        position:absolute;
        top:0;
        right:0;
        bottom:0;
        width:1px;
        height:48px;
        margin:auto;
        background-color:#ccc
    }
}
.logo::before{
    content:''
}
.logo::after{
    content:'';
    background-image:url(img/icon_circle-cfa-logo.svg);
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center center;
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    margin:auto;
    width:50px;
    transition:transform .3s ease
}
.logo:hover::after{
    transform:scale(1.03)
}
.logo span{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
.location-tools{
    display:block;
    position:relative;
    padding:0 0 0 40px;
    margin:0;
    z-index:100;
    max-width:calc(100vw - 135px);
    -ms-flex:0 1 auto;
    flex:0 1 auto
}
@media only screen and (max-width:320px){
    .location-tools{
        padding:0 0 0 15px
    }
    .location-tools .current-location .icon-location-off{
        display:none
    }
}
@media screen and (min-width:960px){
    .location-tools{
        max-width:calc(50vw - 240px)
    }
}
.ie .location-tools{
    width:100%
}
.location-tools.location-tools-open{
    position:absolute;
    top:0;
    right:0;
    left:0;
    bottom:0;
    max-width:100%;
    padding:0 60px 0 95px;
    display:-ms-flexbox;
    display:flex;
    display:-ms-flexbox!important;
    display:flex!important;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-pack:center;
    justify-content:center
}
.location-tools.location-tools-open .location-search-frame{
    -ms-flex:1 0 100%;
    flex:1 0 100%
}
.location-tools.location-tools-open .location-title{
    background-color:#fff;
    position:relative;
    text-align:center;
    margin:0;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-pack:center;
    justify-content:center;
    height:64px
}
.location-tools.location-tools-open .location-title .icon-location-off{
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    position:relative;
    top:auto;
    left:auto;
    bottom:auto;
    margin:0;
    height:24px;
    width:30px
}
@media screen and (min-width:960px){
    .location-tools.location-tools-open .location-title{
        display:none
    }
}
.location-tools .icon-location-off{
    position:absolute;
    top:0;
    left:12px;
    bottom:0;
    margin:auto;
    height:24px
}
.location-tools .icon-location-off::before{
    line-height:1;
    font-size:2.4rem;
    height:24px
}
.location-tools .current-location a{
    padding:5px 5px 5px 0;
    border:0
}
.location-tools .change{
    font-size:12px;
    font-size:1.2rem;
    font-family:apercu,sans-serif;
    font-weight:600;
    line-height:1.2;
    -moz-osx-font-smoothing:grayscale;
    white-space:nowrap;
    display:inline;
    line-height:inherit;
    text-align:center;
    vertical-align:middle;
    width:100%
}
.location-tools .change a{
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none;
    line-height:inherit;
    padding:0 4px
}
.location-tools .change a:hover{
    text-decoration:underline;
    transition:1s
}
.location-tools .store-name{
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none;
    font-size:15px;
    font-size:1.5rem;
    font-family:apercu,sans-serif;
    font-weight:600;
    line-height:1.2;
    -moz-osx-font-smoothing:grayscale;
    cursor:pointer;
    display:inline-block;
    margin:0;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    vertical-align:middle;
    white-space:nowrap
}
.location-tools .store-name:hover{
    text-decoration:underline;
    transition:1s
}
.location-search-frame{
    display:none
}
@media only screen and (max-width:959px){
    .location-search-frame{
        background-color:#fff;
        position:absolute;
        left:0;
        top:0;
        width:100%
    }
}
.location-form{
    display:-ms-flexbox;
    display:flex;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-pack:stretch;
    justify-content:stretch;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    z-index:2000;
    background-color:#fff;
    margin-top:0;
    padding:15px 0 0;
    top:0;
    width:100%
}
@media only screen and (max-width:959px){
    .location-form{
        box-shadow:0 0 4px 0 rgba(0,0,0,.2)
    }
}
@media screen and (min-width:960px){
    .location-form{
        padding:0
    }
}
.location-form .or{
    display:none
}
@media screen and (min-width:960px){
    .location-form .or{
        display:block;
        -ms-flex:0 0 auto;
        flex:0 0 auto
    }
}
.location-form button{
    font-size:18px;
    font-size:1.8rem;
    background-color:transparent;
    border:0;
    color:#dd0031;
    position:absolute;
    top:0;
    right:17px;
    bottom:0;
    padding:0;
    width:43px
}
.location-form button:focus{
    outline:1px dotted #dd0031;
    outline-offset:2px
}
.location-form button span{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
.location-form .left{
    text-align:center;
    -ms-flex:1 1 100%;
    flex:1 1 100%
}
@media only screen and (max-width:959px){
    .location-form .left{
        -ms-flex-order:2;
        order:2
    }
}
@media screen and (min-width:960px){
    .location-form .left{
        -ms-flex:0 0 auto;
        flex:0 0 auto;
        display:-ms-flexbox;
        display:flex;
        -ms-flex-align:center;
        align-items:center;
        -ms-flex-pack:stretch;
        justify-content:stretch;
        -ms-flex-wrap:nowrap;
        flex-wrap:nowrap
    }
}
.location-form .btn{
    border-radius:24px;
    line-height:1;
    font-weight:600;
    font-family:apercu,sans-serif;
    font-size:18px;
    font-size:1.8rem;
    position:relative;
    padding:15px 19px 15px 44px
}
.location-form .btn:hover{
    text-decoration:none;
    transform:translateY(-1px);
    transition:all .3s ease-in-out
}
.location-form .btn .icon-location-off{
    position:absolute;
    top:0;
    bottom:0
}
.location-form .btn .icon-location-off:before{
    color:#fff
}
.location-form .location-search{
    margin:0 0 20px 0;
    padding:0 16px;
    position:relative;
    -ms-flex:1 1 100%;
    flex:1 1 100%
}
@media screen and (min-width:960px){
    .location-form .location-search{
        -ms-flex:1 0 auto;
        flex:1 0 auto;
        margin:0
    }
}
.location-form #myLocationButtonForm{
    border:0
}
.location-form label{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
.location-form input[type=text]{
    -webkit-appearance:none;
    box-shadow:none!important;
    border:2px solid #f4f8f9;
    border-radius:5px;
    background-color:#fff;
    font-family:apercu,sans-serif;
    padding:10px 45px 10px 10px;
    width:100%;
    font-family:apercu,sans-serif
}
.location-form input[type=text]:focus{
    outline:0;
    border-color:#ccc
}
.location-form .icon-close{
    color:#dd0031;
    display:block;
    position:absolute;
    right:0;
    top:0;
    margin:0;
    padding:0;
    width:64px;
    height:64px
}
.location-form .icon-close::before{
    content:none!important
}
.location-form .icon-close::after{
    content:'';
    background-image:url(img/icon_close.svg);
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center center;
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    margin:auto;
    width:16px;
    height:16px;
    transition:transform .3s ease
}
.location-form .icon-close:focus{
    outline:1px dotted #dd0031;
    outline-offset:2px
}
.icon-location-off:before,.icon-location-on:before{
    font-size:19px;
    font-size:1.9rem;
    color:#dd0031;
    display:inline-block;
    vertical-align:text-top
}
.distance{
    font-size:12px;
    font-size:1.2rem;
    display:inline-block;
    line-height:20px;
    margin-right:8px;
    vertical-align:middle
}
.site-search{
    border-radius:5px;
    display:inline-block;
    width:24px
}
@media only screen and (max-width:959px){
    .site-search{
        position:relative;
        background-color:#f5f5f5;
        box-sizing:border-box;
        padding:0;
        width:100%
    }
}
.site-search label{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
.site-search button{
    background-color:transparent;
    border:0;
    color:#dd0031
}
.site-search button span{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
@media only screen and (max-width:959px){
    .site-search button{
        width:48px;
        height:48px;
        padding:0;
        position:absolute;
        right:0;
        top:0;
        margin:auto
    }
}
.site-search button:focus{
    outline:1px dotted #dd0031;
    outline-offset:2px
}
.site-search input[type=text]{
    border:0;
    -webkit-appearance:none;
    box-shadow:none
}
@media only screen and (min-width:960px){
    .site-search input[type=text]{
        background-color:transparent;
        box-sizing:border-box;
        display:none;
        padding:10px 40px 8px 20px;
        width:100%
    }
}
@media only screen and (max-width:959px){
    .site-search input[type=text]{
        font-size:16px;
        font-size:1.6rem;
        border:2px solid #f4f8f9;
        border-radius:5px;
        background-color:transparent;
        box-sizing:border-box;
        display:inline-block;
        font-family:apercu,sans-serif;
        height:auto;
        line-height:1.2;
        margin:0;
        padding:0 55px 0 15px;
        position:relative;
        min-height:48px;
        width:100%
    }
    .site-search input[type=text]:focus{
        border-color:#ccc;
        outline:0
    }
}
.site-search .icon-search-off:before,.site-search .icon-search-on:before{
    font-size:18.6px;
    font-size:1.86rem;
    vertical-align:middle
}
.main-nav{
    margin:0;
    padding:0;
    display:none
}
.iphone .main-nav{
    padding:64px 0 120px
}
@media only screen and (max-width:959px){
    .main-nav{
        position:absolute;
        margin:0;
        padding:64px 0;
        top:0;
        right:0;
        left:0;
        height:auto;
        height:100vh;
        z-index:1;
        overflow-x:hidden;
        -webkit-overflow-scrolling:touch;
        overflow-y:scroll
    }
}
@media screen and (min-width:960px){
    .main-nav{
        margin:0 0 0 auto;
        -ms-flex:0 0 auto;
        flex:0 0 auto;
        -ms-flex-wrap:nowrap;
        flex-wrap:nowrap;
        display:-ms-flexbox;
        display:flex;
        -ms-flex-align:center;
        align-items:center;
        -ms-flex-pack:end;
        justify-content:flex-end
    }
}
.main-nav li{
    font-size:15px;
    font-size:1.5rem;
    font-family:apercu,sans-serif;
    font-weight:600;
    line-height:1.2;
    -moz-osx-font-smoothing:grayscale
}
.main-nav li a{
    padding:0;
    border:0
}
.main-nav li span:not(.icon-user-active) a{
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none
}
.main-nav li span:not(.icon-user-active) a:hover{
    text-decoration:underline;
    transition:1s
}
.main-nav li.mobile-only{
    display:none
}
@media only screen and (max-width:959px){
    .main-nav li.mobile-only{
        display:inline-block
    }
}
@media only screen and (max-width:959px){
    .main-nav>ul{
        display:block
    }
    .main-nav>ul li{
        border-bottom:1px solid #f2f2f2;
        width:100%
    }
}
@media screen and (min-width:960px){
    .main-nav>ul{
        position:absolute;
        top:0;
        right:0;
        left:120px;
        bottom:0;
        margin:auto;
        z-index:0;
        -ms-flex-wrap:nowrap;
        flex-wrap:nowrap;
        display:-ms-flexbox;
        display:flex;
        -ms-flex-align:center;
        align-items:center
    }
    .main-nav>ul li{
        padding:5px 13px
    }
}
.main-nav .icon-arrow-down{
    font-size:14px;
    font-size:1.4rem;
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    text-align:right;
    padding:0 19px 0 0
}
.main-nav .icon-arrow-down::before{
    display:inline-block;
    line-height:4.3;
    transform:rotate(270deg)
}
@media only screen and (min-width:960px){
    .main-nav .icon-arrow-down{
        display:none
    }
}
.main-nav.active .cfa-one,.main-nav.active>*{
    display:none
}
.main-nav.active>.search{
    display:block;
    position:absolute;
    top:0;
    right:0;
    left:0;
    bottom:0;
    padding:0 70px 0 110px;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-pack:stretch;
    justify-content:stretch
}
.main-nav li,.main-nav ul{
    margin:0;
    padding:0
}
@media only screen and (max-width:959px){
    .main-nav>ul.no-search{
        padding-top:0
    }
}
@media only screen and (max-width:959px){
    .main-nav>ul{
        padding-top:75px
    }
    .main-nav>ul>li>a{
        position:relative
    }
}
.main-nav li{
    z-index:200
}
@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){
    .main-nav li a{
        padding:1px 1px
    }
}
.main-nav li a{
    border-bottom:0
}
.main-nav li a.current{
    color:#dd0031
}
.main-nav li a:not(.order-online){
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none
}
.main-nav li a:not(.order-online):hover{
    text-decoration:underline;
    transition:1s
}
@media only screen and (min-width:959px){
    .main-nav li{
        display:inline-block
    }
    .main-nav li>a.current{
        text-decoration:underline
    }
}
@media only screen and (max-width:959px){
    .main-nav li{
        display:block;
        margin:0
    }
    .main-nav li.additional{
        border-top:2px solid #f5f5f5;
        padding-top:10px
    }
    .main-nav li.active .icon-arrow-down::before{
        transform:rotate(180deg)
    }
    .main-nav li.active .subnav{
        display:block
    }
    .main-nav li.active>a>span:first-child{
        text-decoration:underline;
        display:inline-block
    }
    .main-nav li.active>a.current>span:first-child{
        display:inline-block;
        border-bottom:2px dotted transparent
    }
    .main-nav li a{
        font-size:23px;
        font-size:2.3rem;
        display:block;
        letter-spacing:0;
        line-height:1.2;
        padding:16px
    }
    .iphone .main-nav li a{
        padding:20px 15px
    }
    .main-nav li a:hover{
        border-color:transparent
    }
}
.main-nav .search{
    z-index:200;
    position:relative
}
@media only screen and (max-width:959px){
    .main-nav .search{
        z-index:300;
        padding:13px 10px 0 10px;
        text-align:center;
        position:absolute;
        top:64px;
        right:0;
        left:0
    }
}
.main-nav .search .icon-close{
    display:none
}
.main-nav .search.active{
    width:100%;
    background-color:#fff
}
@media screen and (min-width:960px){
    .main-nav .search.active .icon-close{
        color:#dd0031;
        display:inline-block;
        position:absolute;
        right:0;
        margin:0;
        padding:0;
        width:64px;
        top:0;
        height:64px
    }
    .main-nav .search.active .icon-close::before{
        content:none!important
    }
    .main-nav .search.active .icon-close::after{
        content:'';
        background-image:url(img/icon_close.svg);
        background-size:cover;
        background-repeat:no-repeat;
        background-position:center center;
        position:absolute;
        left:0;
        right:0;
        top:0;
        bottom:0;
        margin:auto;
        width:16px;
        height:16px;
        transition:transform .3s ease
    }
    .main-nav .search.active .icon-close:focus{
        outline:1px dotted #dd0031;
        outline-offset:2px
    }
}
.main-nav .search.active input[type=text]{
    border:2px solid #f4f8f9;
    color:#8e969c;
    display:inline-block;
    font-family:apercu,sans-serif;
    border-radius:5px
}
.main-nav .search.active input[type=text]:focus{
    border-color:#ccc;
    outline:0
}
.main-nav .search.active .site-search{
    background:rgba(255,255,255,.9);
    border:none;
    margin:0;
    position:relative;
    width:100%
}
.main-nav .search.active button{
    position:absolute;
    right:0;
    top:0;
    bottom:0;
    margin:auto;
    padding:0;
    width:41px
}
.main-nav .search.active button:focus{
    outline:1px dotted #dd0031;
    outline-offset:2px
}
.main-nav .cfa-one{
    z-index:200;
    display:inline-block;
    margin:0;
    position:relative;
    font-size:15px;
    font-size:1.5rem;
    font-family:apercu,sans-serif;
    font-weight:600;
    line-height:1.2;
    -moz-osx-font-smoothing:grayscale;
    -ms-flex:0 0 auto;
    flex:0 0 auto
}
.main-nav .cfa-one a,.main-nav .cfa-one span{
    display:inline-block;
    line-height:inherit;
    border:0
}
@media only screen and (max-width:1279px){
    .main-nav .cfa-one{
        white-space:nowrap
    }
}
@media only screen and (max-width:959px){
    .main-nav .cfa-one{
        padding:16px;
        -ms-flex-align:center;
        align-items:center;
        -ms-flex-pack:justify;
        justify-content:space-between;
        display:-ms-flexbox;
        display:flex;
        margin:0;
        width:auto
    }
}
.main-nav .cfa-one .username{
    margin:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:normal;
    max-width:50%
}
@media screen and (min-width:960px){
    .main-nav .cfa-one .username{
        white-space:nowrap;
        max-width:150px
    }
}
.main-nav .cfa-one a:not(sup){
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none
}
.main-nav .cfa-one a:not(sup):hover{
    text-decoration:underline;
    transition:1s
}
.main-nav .cfa-one sup{
    font-size:8px;
    font-size:.8rem;
    top:-6px
}
.main-nav .cfa-one .sign-in{
    font-size:12px;
    font-size:1.2rem;
    display:inline-block;
    line-height:inherit;
    vertical-align:middle
}
.main-nav .cfa-one .sign-in a,.main-nav .cfa-one .sign-in button{
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none;
    background:0 0;
    border:none;
    color:#dd0031;
    font-family:apercu,sans-serif;
    font-weight:600;
    display:inline-block;
    font-size:12px;
    padding:0 4px
}
.main-nav .cfa-one .sign-in a:hover,.main-nav .cfa-one .sign-in button:hover{
    text-decoration:underline;
    transition:1s
}
@media only screen and (max-width:959px){
    .main-nav .cfa-one .sign-in button{
        font-size:14px;
        font-size:1.4rem
    }
}
.main-nav .cfa-one.logged-in .sign-in{
    display:block
}
.main-nav .order-online{
    z-index:200;
    padding:8px 16px;
    position:relative
}
@media screen and (min-width:960px){
    .main-nav .order-online{
        padding:0 20px;
        -ms-flex:0 0 auto;
        flex:0 0 auto
    }
}
.main-nav .order-online a{
    display:block
}
.main-nav .order-online .btn-round{
    font-size:16px;
    font-size:1.6rem
}
.main-nav .order-online a:focus{
    outline:1px dotted #dd0031
}
.main-nav .order{
    position:relative;
    z-index:200
}
.main-nav .order .cart-toggle{
    color:#dd0031;
    margin:0;
    padding:0;
    height:50px;
    min-width:50px;
    position:relative;
    border:0
}
.main-nav .order .cart-toggle:focus{
    outline:1px dotted #dd0031;
    outline-offset:2px
}
.main-nav .order .cart-toggle:hover{
    color:#dd0031;
    cursor:pointer
}
.main-nav .order .cart-toggle .cart-toggle-text{
    font-size:28px;
    font-size:2.8rem;
    display:block;
    padding:25px 16px;
    display:none
}
.main-nav .order .cart-toggle::before{
    content:none!important
}
.main-nav .order .cart-toggle::after{
    content:'';
    background-image:url(img/icon_cart-bag.svg);
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center center;
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    margin:auto;
    width:30px;
    height:30px;
    transition:transform .3s ease;
    z-index:100
}
.main-nav .order .count span{
    border-radius:20px;
    color:#fff;
    font-size:11px;
    font-size:1.1rem;
    background-color:#dd0031;
    font-family:apercu,sans-serif;
    letter-spacing:0;
    line-height:1.2;
    padding:1px 4px;
    position:absolute;
    right:5px;
    top:4px;
    text-align:center;
    margin:0;
    display:block;
    min-width:15px;
    height:15px;
    font-weight:700;
    z-index:300;
    box-shadow:0 0 0 1px #fff
}
@media screen and (min-width:960px){
    .main-nav .order .count{
        position:relative;
        width:100%;
        height:100%
    }
}
@media only screen and (max-width:959px){
    .nav-shown .main-nav .cfa-one{
        width:75%;
        width:calc(100% - 60px);
        float:left;
        -ms-flex-wrap:wrap;
        flex-wrap:wrap
    }
    .nav-shown .main-nav .cfa-one .username{
        max-width:100%;
        padding:0 0 8px;
        -ms-flex:1 0 100%;
        flex:1 0 100%
    }
    .nav-shown .main-nav .order-online{
        float:left;
        width:100%
    }
    .nav-shown .main-nav .order{
        padding:13px 0;
        float:left;
        width:auto
    }
}
.main-nav .subnav{
    background-color:#fff;
    display:none;
    left:0;
    padding:18px 0;
    position:absolute;
    text-align:center;
    top:64px;
    width:100%;
    z-index:100
}
@media screen and (min-width:960px){
    .main-nav .subnav{
        box-shadow:inset 0 5px 4px -5px rgba(0,0,0,.2),0 5px 4px -5px rgba(0,0,0,.2)
    }
    .main-nav .subnav li:last-child{
        border-left:1px solid #ccc;
        margin-left:0;
        padding-left:1.5%
    }
}
.about .main-nav .subnav{
    background-color:transparent;
    transition:background-color .5s ease
}
.main-nav .subnav li{
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none;
    margin:0 1.5%;
    padding:0
}
.main-nav .subnav li:hover{
    text-decoration:underline;
    transition:1s
}
.main-nav .subnav li:hover{
    transition-delay:1s
}
@media only screen and (max-width:959px){
    .main-nav .subnav li:hover>a{
        border-color:transparent
    }
}
.main-nav .subnav li:hover>a.food{
    color:#dd0031
}
.main-nav .subnav li:hover>a.food.current{
    border-color:#dd0031
}
@media only screen and (max-width:959px){
    .main-nav .subnav li:hover>a.food{
        border-color:transparent
    }
}
.main-nav .subnav li:hover>a.lifestyle{
    color:#dd0031
}
.main-nav .subnav li:hover>a.lifestyle.current{
    border-color:#dd0031
}
@media only screen and (max-width:959px){
    .main-nav .subnav li:hover>a.lifestyle{
        border-color:transparent
    }
}
.main-nav .subnav li:hover>a.cfa-stories{
    color:#dd0031
}
.main-nav .subnav li:hover>a.cfa-stories.current{
    border-color:#dd0031
}
@media only screen and (max-width:959px){
    .main-nav .subnav li:hover>a.cfa-stories{
        border-color:transparent
    }
}
.main-nav .subnav li:hover>a.news{
    color:#dd0031
}
.main-nav .subnav li:hover>a.news.current{
    border-color:#dd0031
}
@media only screen and (max-width:959px){
    .main-nav .subnav li:hover>a.news{
        border-color:transparent
    }
}
.main-nav .subnav li:hover .section{
    opacity:1;
    transition:all .5s ease-in-out;
    z-index:1000;
    transition:all 1.5s
}
.main-nav .subnav li h1{
    font-size:1.6rem;
    margin:0
}
@media only screen and (max-width:960px){
    .main-nav .subnav{
        padding-top:30px
    }
}
@media only screen and (max-width:959px){
    .main-nav .subnav{
        margin-top:0;
        padding:0;
        position:relative;
        top:0;
        text-align:left
    }
    .main-nav .subnav a{
        font-size:16px;
        font-size:1.6rem;
        line-height:28px;
        padding:10px 15px 10px 20px
    }
}
@media only screen and (max-width:959px){
    .main-nav li{
        display:block
    }
}
.nav-toggle{
    display:block;
    position:absolute;
    right:0;
    top:0;
    bottom:0;
    margin:0;
    width:64px;
    max-height:64px;
    z-index:300
}
.nav-toggle .icon-close,.nav-toggle .icon-nav-toggle-off{
    width:100%;
    height:100%;
    display:block;
    position:relative;
    border:0
}
.nav-toggle .icon-close::before,.nav-toggle .icon-nav-toggle-off::before{
    content:none!important
}
.nav-toggle .icon-close::after,.nav-toggle .icon-nav-toggle-off::after{
    content:'';
    background-image:url(img/icon_burger.svg);
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center center;
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    margin:auto;
    width:24px;
    height:24px;
    transition:transform .3s ease
}
.nav-toggle .icon-close:focus,.nav-toggle .icon-nav-toggle-off:focus{
    outline:0
}
.nav-toggle .icon-close::after{
    background-image:url(img/icon_close.svg);
    width:16px;
    height:16px
}
@media screen and (min-width:960px){
    .nav-toggle{
        pointer-events:none;
        transition:opacity .3s ease;
        width:100%;
        z-index:10;
        max-width:410px;
        background-color:#fff;
        overflow:hidden;
        opacity:0;
        padding:0;
        border:0;
        height:0;
        left:0;
        top:0;
        bottom:0;
        right:0;
        margin:0 auto;
        visibility:hidden
    }
    .nav-toggle .icon-nav-toggle-off{
        border:0;
        color:transparent;
        display:block;
        height:20px;
        margin:auto;
        width:20px;
        text-align:center;
        position:absolute;
        top:0;
        right:0;
        left:0;
        bottom:0
    }
    .nav-toggle .icon-nav-toggle-off::after{
        width:100%;
        height:100%
    }
    .nav-toggle .icon-nav-toggle-off:focus{
        outline:0
    }
    .nav-toggle.active{
        visibility:visible;
        pointer-events:initial;
        height:auto;
        opacity:1
    }
    .nav-toggle.active a{
        color:#dd0031;
        transition:all .5s ease
    }
}
.nav-toggle span{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
.stories-feature{
    border-top:1px solid #f4f8f9;
    margin:0;
    padding:20px 0;
    width:100%
}
@media only screen and (min-width:960px){
    .stories-feature .story-img{
        height:200px
    }
}
.stories-feature.shared{
    background-color:#fff;
    position:absolute;
    top:100%
}
.stories-feature.shared .cs{
    background:url(img/cs-logo.png) transparent top left no-repeat;
    background-size:150px 150px;
    display:inline-block;
    height:150px;
    overflow:hidden;
    text-indent:120%;
    white-space:nowrap;
    width:150px;
    background-size:cover
}
.stories-feature.shared .flex>div:first-child{
    cursor:initial
}
.stories-feature.shared .flex>div:first-child a{
    font-size:16px;
    font-size:1.6rem;
    color:#dd0031;
    font-weight:400;
    line-height:24px
}
.stories-feature.shared .food .tag{
    color:#dd0031
}
.stories-feature.shared .lifestyle .tag{
    color:#dd0031
}
.stories-feature.shared .cfa-stories .tag{
    color:#dd0031
}
.stories-feature.shared .news .tag{
    color:#dd0031
}
.stories-feature.shared a{
    font-size:18px;
    font-size:1.8rem;
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none;
    color:#786969;
    display:inline-block;
    font-weight:800;
    line-height:30px;
    margin-top:10px
}
.stories-feature.shared a:hover{
    text-decoration:underline;
    transition:1s
}
@media only screen and (min-width:960px){
    .stories-feature.shared .story-img{
        height:120px
    }
}
.stories-feature.section{
    background-color:#fff;
    left:0;
    opacity:0;
    position:absolute;
    transition:all .5s ease-in-out;
    z-index:0
}
.stories-feature.section .flex>div{
    width:22.95%
}
.stories-feature.section .flex>div:first-child{
    border:0;
    padding:0;
    text-align:left;
    width:22.95%
}
@media only screen and (max-width:959px){
    .stories-feature{
        display:none
    }
}
.stories-feature .flex>div{
    font-size:16px;
    font-size:1.6rem;
    font-family:apercu,sans-serif;
    line-height:28px;
    margin-left:2.725%;
    text-align:left;
    width:22.95%
}
.stories-feature .flex>div:hover{
    cursor:pointer
}
.stories-feature .flex>div:first-child{
    border-right:1px solid #ccc;
    padding-right:30px;
    text-align:center;
    width:22.95%
}
.stories-feature .tag{
    font-size:10px;
    font-size:1rem;
    letter-spacing:2px;
    line-height:20px;
    text-transform:uppercase
}
.stories-feature a{
    border:0;
    color:#786969
}
.stories-feature img{
    margin-bottom:10px;
    width:100%
}
.about .lock .main-nav .subnav{
    background-color:#fff;
    transition:background-color .5s ease
}
.feature-card{
    margin:0;
    padding:20px 0;
    width:100%
}
.feature-card .flex>a.feature-card-container{
    font-size:16px;
    font-size:1.6rem;
    border-radius:8px;
    background-color:#fcf9f4;
    font-family:apercu,sans-serif;
    margin-left:2.725%;
    text-align:center;
    height:138px;
    width:48.63%;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-pack:center;
    justify-content:center;
    -ms-flex-flow:column;
    flex-flow:column;
    font-size:16px;
    font-size:1.6rem;
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none;
    color:#dd0031;
    font-weight:600;
    line-height:30px
}
.feature-card .flex>a.feature-card-container:hover{
    text-decoration:underline;
    transition:1s
}
@media only screen and (max-width:959px){
    .feature-card .flex>a.feature-card-container{
        font-size:14px;
        font-size:1.4rem;
        padding:0
    }
}
@media only screen and (min-width:960px){
    .feature-card .flex>a.feature-card-container{
        height:160px
    }
}
.feature-card .flex>a.feature-card-container:first-child{
    margin-left:0
}
.feature-card .flex>a.feature-card-container:hover{
    background-color:#fff;
    box-shadow:0 2px 4px 0 rgba(0,0,0,.11);
    cursor:pointer
}
.icon-food{
    border:0;
    color:#dd0031;
    position:relative;
    text-decoration:none;
    height:52px;
    width:76px;
    margin:0 auto
}
@media only screen and (max-width:959px){
    .icon-food{
        height:43px;
        width:64px
    }
}
.icon-food::after{
    content:'';
    background-image:url(img/icon_food.svg);
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center center;
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    margin:auto;
    width:100%
}
.icon-allergen{
    border:0;
    color:#dd0031;
    position:relative;
    text-decoration:none;
    height:53px;
    width:40px;
    margin:0 auto
}
.icon-allergen::after{
    content:'';
    background-image:url(img/icon_tree-nut.svg);
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center center;
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    margin:auto;
    width:100%
}
@media only screen and (max-width:959px){
    .main-nav li a{
        font-size:16px;
        font-size:1.6rem
    }
    .main-nav .subnav li{
        margin:0
    }
    .main-nav .subnav li .icon-arrow-left{
        font-size:14px;
        font-size:1.4rem;
        text-align:left;
        padding-right:10px
    }
    .main-nav .subnav li .icon-arrow-left::before{
        display:inline-block;
        transform:rotate(90deg)
    }
}
@media only screen and (max-width:959px) and (min-width:960px){
    .main-nav .subnav li .icon-arrow-left{
        display:none
    }
}
@media only screen and (max-width:959px){
    .main-nav .subnav li.mobile-only:first-child{
        background-color:#fcf9f4
    }
}
footer{
    background:#fff;
    position:relative;
    z-index:30
}
footer .background-image img{
    min-height:475px;
    width:100%
}
.footer-modules{
    -ms-flex-pack:justify;
    justify-content:space-between;
    background-color:#fff;
    display:-ms-flexbox;
    display:flex;
    padding:30px 25px
}
@media only screen and (max-width:1279px){
    .footer-modules{
        display:block;
        padding:30px 10px;
        text-align:center
    }
}
@media only screen and (min-width:1279px){
    .footer-nav{
        display:-ms-flexbox;
        display:flex;
        -ms-flex-pack:justify;
        justify-content:space-between;
        -ms-flex-preferred-size:100%;
        flex-basis:100%
    }
}
@media only screen and (max-width:1279px){
    .footer-nav{
        text-align:left;
        padding:0 15px
    }
}
.footer-nav ul{
    margin:0;
    padding:0;
    position:relative
}
.footer-nav li{
    display:inline-block;
    margin-right:25px;
    font-weight:500;
    font-size:12px;
    font-size:1.2rem
}
.footer-nav li:hover{
    text-decoration:none
}
.footer-nav li a{
    font-size:16px;
    font-size:1.6rem;
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none
}
.footer-nav li a:hover{
    text-decoration:underline;
    transition:1s
}
@media only screen and (max-width:959px){
    .footer-nav li{
        display:block;
        margin:0;
        padding:10px 0
    }
    .footer-nav li:last-child{
        margin-top:30px
    }
    .footer-nav li a{
        font-size:14px;
        font-size:1.4rem;
        display:block
    }
}
body{
    font-size:16px;
    font-size:1.6rem;
    color:#5b6770;
    font-variant-ligatures:none;
    -webkit-font-smoothing:antialiased
}
@media only screen and (max-width:959px){
    body{
        padding-top:64px
    }
}
body.nav-shown{
    height:100%;
    overflow:hidden;
    overflow-scrolling:none;
    position:fixed;
    width:100%
}
body.overlay-shown{
    overflow-scrolling:none;
    position:fixed;
    width:100%
}
main.fixed-footer{
    overflow:auto;
    margin-bottom:120px
}
main.fixed-footer .content-wrap{
    width:auto
}
a{
    border-bottom:2px transparent dotted;
    color:#dd0031;
    text-decoration:none;
    transition:color .5s ease
}
a:hover{
    transition:color .5s ease
}
@media only screen and (min-width:959px){
    a:hover{
        color:#af272f
    }
}
@media only screen and (max-width:959px){
    a:hover{
        border-color:transparent
    }
}
.frame a:not(.btn-round){
    border:0;
    transition:all .5s ease
}
.frame a:focus{
    outline:1px dotted #dd0031
}
.frame.content-hide{
    display:none
}
.wrapper{
    margin:0 auto;
    max-width:1380px;
    padding:0 30px;
    width:auto
}
@media only screen and (max-width:959px){
    .wrapper{
        padding:0 15px
    }
}
.content-wrap{
    width:92.87%;
    margin:auto
}
.content-wrap-full{
    width:74.435%;
    margin:auto
}
.flex{
    display:-ms-flexbox;
    display:flex
}
img{
    height:auto;
    max-height:none;
    max-width:100%
}
#mfPreviewBar,#mfPreviewBarShow{
    display:none!important
}
.frame{
    padding-top:64px;
    position:relative;
    z-index:300
}
@media screen and (min-width:959px){
    .frame{
        padding-top:144px;
        padding-top:calc(64px + 80px)
    }
}
@media only screen and (min-width:960px){
    .mobile-only{
        display:none
    }
}
@media only screen and (max-width:959px){
    .desktop-only{
        display:none
    }
}
@media only screen and (max-width:959px){
    .mobile-visibility-hidden{
        visibility:hidden
    }
}
.need-content{
    color:#dd0031;
    font-family:apercu,sans-serif;
    font-weight:600;
    padding:10px;
    text-align:center
}
article,aside{
    line-height:1.65
}
article h1,article h2,article h3,article h4,article h5,article h6,aside h1,aside h2,aside h3,aside h4,aside h5,aside h6{
    font-weight:400;
    line-height:1.25
}
article h1,aside h1{
    font-size:48px;
    font-size:4.8rem;
    font-family:apercu,sans-serif;
    letter-spacing:-.5px;
    line-height:130%;
    margin:0 0 20px 0
}
article h2,aside h2{
    font-size:28px;
    font-size:2.8rem;
    letter-spacing:0;
    line-height:150%
}
h1,h2,h3,h4,h5,h6{
    font-weight:normal
}
h1,h2,h3,h4,h5{
    font-family:apercu,sans-serif
}
.std-dl{
    margin:0
}
.std-dl dt{
    font-size:10px;
    font-size:1rem;
    font-family:apercu,sans-serif;
    font-weight:500;
    letter-spacing:2px;
    line-height:20px;
    text-transform:uppercase
}
.std-dl dd{
    margin:11px 0 20px 0;
    padding:0
}
.std-dl dd a{
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none
}
.std-dl dd a:hover{
    text-decoration:underline;
    transition:1s
}
.std-dl .small{
    font-size:12px;
    font-size:1.2rem;
    display:block;
    font-family:apercu,sans-serif;
    line-height:20px
}
.std-dl .social-icons{
    margin:0;
    padding:0;
    text-align:left
}
.std-dl .social-icons li{
    margin:0 5px 0 0
}
.executive-bio .std-dl dd{
    margin-top:5px
}
aside .module{
    margin-bottom:60px
}
aside .module a:not(.btn){
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none
}
aside .module a:not(.btn):hover{
    text-decoration:underline;
    transition:1s
}
.cfa-stories .tag,.food .tag,.lifestyle .tag,.news .tag{
    color:#dd0031
}
.sticky{
    position:-webkit-sticky;
    position:sticky;
    top:0
}
article .lists{
    -ms-flex-pack:justify;
    justify-content:space-between;
    margin:0 -25px
}
@media only screen and (max-width:959px){
    article .lists{
        margin:20px 0;
        display:block
    }
}
article .lists .list{
    width:48.63%
}
@media only screen and (max-width:959px){
    article .lists .list{
        width:auto
    }
}
article .lists .list h3{
    font-size:24px;
    font-size:2.4rem;
    font-weight:800;
    letter-spacing:-.5px;
    line-height:30px;
    text-align:center
}
@media only screen and (max-width:959px){
    article .lists .list h3{
        text-align:left
    }
}
article .lists .list:first-child{
    margin-right:5.45%
}
@media only screen and (max-width:959px){
    article .lists .list:first-child{
        margin:0
    }
}
article .lists .list ul{
    margin:0 0 10px 30px
}
article .lists .list li{
    margin:0 0 10px 0;
    text-indent:-21px
}
article .lists .list li:before{
    margin-right:10px
}
article .lists dl{
    margin:10px 25px
}
article .lists dd{
    margin:10px 0 25px 0
}
article .lists dt{
    font-weight:600
}
.breadcrumb{
    font-size:10px;
    font-size:1rem;
    background-color:#f4f8f9;
    font-family:apercu,sans-serif;
    letter-spacing:2px;
    line-height:20px;
    padding:20px 0;
    text-transform:uppercase
}
@media only screen and (max-width:959px){
    .breadcrumb{
        padding-top:30px
    }
}
.breadcrumb.alt{
    background-color:transparent;
    margin-bottom:-40px;
    padding:40px 0 0
}
.breadcrumb.alt a{
    color:#fff
}
.breadcrumb a{
    color:#786969
}
.breadcrumb .icon-arrow-down{
    vertical-align:middle
}
.breadcrumb .icon-arrow-down:before{
    transform:rotate(90deg);
    display:inline-block
}
@media only screen and (max-width:1439px){
    .breadcrumb .wrapper{
        max-width:1220px
    }
}
@media only screen and (max-width:1279px){
    .breadcrumb .wrapper{
        max-width:900px
    }
}
.teasers{
    margin:50px 0
}
.teasers .flex{
    margin-bottom:30px
}
@media only screen and (max-width:959px){
    .teasers .flex{
        display:block
    }
}
.teasers h3{
    font-size:22px;
    font-size:2.2rem;
    font-family:apercu,sans-serif;
    line-height:34px;
    margin:0 0 10px 0
}
.teasers .img{
    margin-right:5.45%;
    width:40.07%
}
@media only screen and (max-width:959px){
    .teasers .img{
        margin:0;
        width:auto
    }
    .teasers .img img{
        width:100%
    }
}
.teasers .content{
    font-size:12px;
    font-size:1.2rem;
    font-family:apercu,sans-serif;
    line-height:20px;
    width:54.48%
}
.teasers .content h3 a{
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none
}
.teasers .content h3 a:hover{
    text-decoration:underline;
    transition:1s
}
@media only screen and (max-width:959px){
    .teasers .content{
        margin-top:25px;
        width:auto
    }
    .teasers .content p{
        display:none
    }
}
.teasers .btn{
    margin-top:10px
}
.sidebar-story{
    margin:50px 0 25px
}
@media only screen and (max-width:959px){
    .sidebar-story img{
        width:100%
    }
}
.top-hero{
    -ms-flex-align:center;
    align-items:center;
    display:-ms-flexbox;
    display:flex;
    position:relative
}
.top-hero:before{
    background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.25) 100%);
    content:' ';
    position:absolute;
    display:block;
    top:0;
    bottom:0;
    left:0;
    right:0;
    z-index:200
}
.load-more{
    padding:50px 0;
    text-align:center
}
.expandable-toggle{
    cursor:pointer
}
@media only screen and (min-width:959px){
    .expandable-toggle{
        display:none
    }
}
.expandable-toggle .hide{
    display:none
}
.expandable-toggle.active .show{
    display:none
}
.expandable-toggle.active .hide{
    display:inline-block
}
.accordion{
    border-bottom:1px solid #786969;
    position:relative;
    margin-top:25px;
    overflow:hidden
}
.accordion .toggle{
    font-size:28px;
    font-size:2.8rem;
    border-top:1px solid #786969;
    color:#dd0031;
    font-family:apercu,sans-serif;
    font-weight:400;
    letter-spacing:0;
    line-height:150%;
    margin:0;
    padding:30px 75px 10px 0;
    position:relative
}
@media only screen and (max-width:959px){
    .accordion .toggle{
        margin:0 -15px;
        padding:20px 75px 20px 15px
    }
}
.accordion .toggle:hover{
    cursor:pointer
}
.accordion .toggle:after{
    font-size:18px;
    font-size:1.8rem;
    content:"\e902";
    font-family:icomoon;
    position:absolute;
    right:15px;
    top:20px
}
.accordion .toggle.active:after{
    transform:rotate(180deg)
}
.accordion section{
    display:none;
    overflow:hidden;
    padding-bottom:0;
    -webkit-overflow-scrolling:touch
}
.accordion section.scroll{
    overflow-y:scroll;
    padding-bottom:15px
}
.careers .accordion section{
    height:auto;
    overflow-y:visible
}
@media only screen and (max-width:959px){
    .accordion section{
        margin:0 -15px;
        padding:0 15px
    }
}
.accordion section .faq{
    margin:0
}
.accordion section .faq dt{
    margin:0
}
.video-wrapper{
    padding-bottom:56.25%;
    padding-top:25px;
    position:relative;
    height:0
}
.video-wrapper iframe{
    left:0;
    position:absolute;
    top:0;
    width:100%;
    height:100%
}
.print-footer,.print-image{
    display:none
}
.checkmark{
    background:url(img/checkmark.png) transparent top left no-repeat;
    background-size:112px 84px;
    display:inline-block;
    height:84px;
    overflow:hidden;
    text-indent:120%;
    white-space:nowrap;
    width:112px;
    background-position:center;
    background-size:50%
}
body.ipad .android-item,body.iphone .android-item{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
body.android .ios-item{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
.nowrap{
    white-space:nowrap
}
.server-error .error-header{
    color:#dd0031;
    padding:40px 0;
    text-align:center
}
.server-error .icon-logo-desktop{
    font-size:48px;
    font-size:4.8rem
}
.server-error .icon-logo-desktop .name{
    display:none
}
.server-error .frame{
    padding-top:0
}
.server-error .error-message{
    font-size:22px;
    font-size:2.2rem;
    line-height:34px;
    margin:0 auto;
    max-width:650px;
    padding:50px 30px
}
.server-error .title{
    font-size:48px;
    font-size:4.8rem;
    line-height:130%;
    letter-spacing:-.5px
}
input[type=checkbox],input[type=radio]{
    margin:15px 7px 0 10px
}
.vh{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px
}
.visually-hidden{
    position:absolute;
    clip:rect(1px 1px 1px 1px);
    clip:rect(1px,1px,1px,1px);
    padding:0;
    border:0;
    height:1px;
    width:1px;
    overflow:hidden
}
.warm-white-bckgrd{
    background:#fcf9f4;
    padding:100px 20px 20px
}
.btn{
    font-size:16px;
    font-size:1.6rem;
    background:linear-gradient(-180deg,rgba(254,67,108,.99) 0,rgba(221,0,49,.99) 49%,#c20726 100%);
    border:0;
    border-radius:24px;
    color:#fff;
    cursor:pointer;
    display:inline-block;
    font-family:apercu,sans-serif;
    font-weight:600;
    letter-spacing:-.5px;
    line-height:17px;
    padding:15px 19px;
    text-indent:.5px;
    transition:all .5s ease-in-out
}
.btn:hover{
    background:linear-gradient(-180deg,#d0021b 0,#d0021b 49%,#af272f 100%);
    box-shadow:0 2px 18px 0 rgba(0,0,0,.2);
    color:#fff;
    transform:translateY(-1px);
    transition:all .3s ease-in-out
}
.btn.white{
    background:#fff;
    border-radius:24px;
    box-shadow:0 2px 6px 0 rgba(0,0,0,.15);
    color:#dd0031;
    padding:12px 16px
}
.btn.white:hover{
    background-color:#af272f;
    border:3px solid #af272f;
    color:#fff
}
.btn.white.vis-hover:hover{
    background:#fff;
    border:transparent;
    box-shadow:0 2px 18px 0 rgba(0,0,0,.2);
    color:red
}
.btn.white.alt{
    border-color:#fff
}
.btn.white.alt:hover{
    border-color:#af272f
}
.btn.vis-white{
    background:#fff;
    border-radius:24px;
    box-shadow:0 2px 6px 0 rgba(0,0,0,.15);
    color:#dd0031;
    padding:15px 19px
}
.btn.disabled{
    background-color:#ccc
}
.btn.disabled:hover{
    cursor:default
}
.btn.disable{
    background:#ccc;
    cursor:not-allowed
}
.btn.disable:hover{
    box-shadow:none;
    transform:none
}
.btn-group .btn{
    height:45px;
    border-radius:0
}
.btn-group .btn:first-child{
    border-top-left-radius:5px;
    border-bottom-left-radius:5px
}
.btn-group .btn:last-child{
    border-top-right-radius:5px;
    border-bottom-right-radius:5px
}
.btn-group.disabled{
    background-color:#ccc
}
.btn-group.disabled:hover{
    cursor:default
}
.checkout-cart-disabled{
    cursor:not-allowed;
    background-color:#ccc
}
.btn--vis{
    font-size:18px;
    font-size:1.8rem;
    background:linear-gradient(-180deg,rgba(254,67,108,.99) 0,rgba(221,0,49,.99) 49%,#c20726 100%);
    border-radius:24px;
    border:none;
    color:#fff;
    cursor:pointer;
    display:block;
    font-family:apercu,sans-serif;
    font-weight:600;
    font-variant-ligatures:none;
    letter-spacing:-.56px;
    line-height:17px;
    padding:17px 15px 15px;
    text-transform:none;
    transition:all .5s ease-in-out;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content
}
.btn--vis:hover{
    background:linear-gradient(-180deg,#d0021b 0,#d0021b 49%,#af272f 100%);
    box-shadow:0 2px 18px 0 rgba(0,0,0,.2);
    color:#fff;
    transform:translateY(-1px);
    transition:all .3s ease-in-out
}
.btn--vis--white{
    background:#fff;
    border-radius:8px;
    box-shadow:0 2px 6px 0 rgba(0,0,0,.15);
    color:#dd0031;
    letter-spacing:-.5px;
    padding:27px 15px 26px
}
.btn--vis--white:hover{
    background:#fff;
    box-shadow:0 2px 18px 0 rgba(0,0,0,.2);
    color:#dd0031;
    transform:translateY(-1px);
    transition:all .3s ease-in-out
}
.btn--vis--white:active{
    box-shadow:0 2px 6px 0 rgba(0,0,0,.15);
    transform:translateY(0)
}
.btn--vis--white.active{
    background:#dd0031;
    color:#fff
}
.btn--vis--white.active:hover{
    background:#dd0031;
    color:#fff
}
.btn--vis--white--standard{
    background:#fff;
    box-shadow:0 2px 6px 0 rgba(0,0,0,.15);
    color:#dd0031
}
.btn--vis--white--standard:hover{
    background:#fff;
    color:#dd0031;
    transform:translateY(-4px);
    transition:all .3s ease-in-out
}
.btn--vis--has-icon{
    font-family:apercu,sans-serif;
    font-weight:800;
    font-size:23px;
    line-height:36px;
    letter-spacing:-.5px;
    padding:22px 45px 20px 15px;
    position:relative;
    text-align:left
}
.btn--vis--has-icon__img{
    bottom:0;
    opacity:1;
    position:absolute;
    right:14px;
    top:50%;
    transform:translate(0,-50%);
    transition:opacity .4s ease-in-out,top .6s ease-in-out;
    width:30px
}
.btn--vis--has-icon__img--selected{
    opacity:0;
    top:35px
}
.btn--vis--has-icon:hover{
    background:#fff;
    color:#dd0031
}
.btn--vis--has-icon.active{
    background:#dd0031;
    color:#fff
}
.btn--vis--has-icon.active .btn--vis--has-icon__img{
    opacity:0;
    top:35px
}
.btn--vis--has-icon.active .btn--vis--has-icon__img--selected{
    opacity:1;
    top:50%
}
.btn--vis--has-icon.active:hover{
    background:#dd0031;
    color:#fff
}
.btn--vis.disabled{
    background:#ccc;
    cursor:not-allowed
}
.btn--vis.disabled:hover{
    box-shadow:none;
    transform:none
}
.btn--toggle{
    font-size:18px;
    font-size:1.8rem;
    background:#fff;
    border:2px solid #dd0031;
    border-radius:5px 0 0 5px;
    color:#dd0031;
    cursor:pointer;
    display:inline-block;
    font-family:apercu,sans-serif;
    font-weight:600;
    font-variant-ligatures:none;
    float:left;
    letter-spacing:-.56px;
    line-height:17px;
    padding:17px 15px 15px;
    text-align:center;
    text-transform:none;
    transition:all .2s ease-in-out;
    width:100%
}
.btn--toggle.active{
    background:#dd0031;
    border-color:transparent;
    color:#fff
}
.btn--toggle:last-of-type{
    border-radius:0 5px 5px 0
}
.btn-round{
    background:linear-gradient(-180deg,rgba(254,67,108,.99) 0,rgba(221,0,49,.99) 49%,#c20726 100%);
    border-radius:24px;
    color:#fff;
    cursor:pointer;
    font-variant-ligatures:none;
    transition:all .5s ease-in-out;
    padding:15px 19px;
    line-height:1;
    font-weight:600;
    font-family:apercu,sans-serif;
    letter-spacing:-.5px;
    position:relative;
    display:block;
    width:100%;
    text-align:center;
    -moz-osx-font-smoothing:grayscale;
    border:0;
    font-size:18px;
    font-size:1.8rem;
    box-sizing:border-box
}
.btn-round *{
    box-sizing:inherit
}
.btn-round:hover{
    text-decoration:none;
    transform:translateY(-1px);
    transition:all .3s ease-in-out
}
.btn-round:focus{
    outline:1px dotted #dd0031;
    outline-offset:3px
}
.btn-round--inline-spaced{
    width:100%;
    margin:0 0 20px 0
}
.btn-round--inline-spaced:last-child{
    margin:0
}
.btn-round--inline-centered{
    width:100%;
    margin:0 0 20px 0
}
.btn-round--inline-centered:last-child{
    margin:0
}
.btn-round--stacked{
    display:block;
    width:100%;
    margin:0 auto 20px auto
}
.btn-round--stacked:last-child{
    margin:0 auto
}
.btn-round--red:hover{
    background:linear-gradient(-180deg,#d0021b 0,#d0021b 49%,#af272f 100%);
    box-shadow:0 2px 18px 0 rgba(0,0,0,.2);
    color:#fff
}
.btn-round--white{
    box-shadow:0 2px 6px 0 rgba(0,0,0,.15);
    background:#fff;
    color:#dd0031
}
.btn-round--white:hover{
    box-shadow:0 2px 18px 0 rgba(0,0,0,.2);
    color:#dd0031
}
.btn-round--clear{
    box-shadow:none;
    background:0 0;
    color:#dd0031
}
.btn-round--clear:hover{
    text-decoration:underline;
    transform:none;
    color:#af272f
}
.btn-round--disabled,.btn-round:disabled{
    background:#ccc;
    cursor:not-allowed
}
.btn-round--disabled:focus,.btn-round:disabled:focus{
    outline:0
}
.btn-round--disabled:hover,.btn-round:disabled:hover{
    background:#ccc;
    box-shadow:none;
    transform:none
}
.btn-round--hidden{
    display:none
}
.btn-round--hide-mobile{
    display:none
}
@media screen and (min-width:480px){
    .btn-round{
        display:inline-block;
        width:auto
    }
    .btn-round--hide-mobile{
        display:none
    }
    .btn-round--inline-spaced{
        width:auto;
        margin:0 20px 0 0
    }
    .btn-round--inline-centered{
        width:auto;
        margin:0 7px
    }
    .btn-round--inline-centered:last-child{
        margin:0 7px
    }
    .btn-round--stacked{
        display:block;
        width:auto;
        margin:0 auto 20px auto
    }
}
@media screen and (min-width:960px){
    .btn-round--hide-mobile{
        display:initial
    }
}
.g-card-grid{
    color:#5b6770;
    background-color:#fcf9f4;
    padding:34px 0 96px
}
@media screen and (min-width:768px){
    .g-card-grid{
        padding:60px 0
    }
}
.g-card-grid__header{
    max-width:608px;
    text-align:center;
    margin:0 auto;
    padding:0 12px 48px;
    font-size:16px;
    line-height:1.5;
    letter-spacing:-.5px
}
.g-card-grid__header h2{
    font-family:apercu,sans-serif;
    font-weight:700;
    letter-spacing:-1px;
    -moz-osx-font-smoothing:grayscale;
    line-height:1;
    font-size:28px;
    font-size:2.8rem;
    margin-top:0;
    margin-bottom:0
}
@media screen and (min-width:960px){
    .g-card-grid__header h2{
        font-size:39px;
        font-size:3.9rem
    }
}
@media screen and (min-width:768px){
    .g-card-grid__header{
        font-size:18px;
        line-height:1.56;
        padding:0 12px 36px
    }
}
.g-card-grid__grid{
    display:-ms-flexbox;
    display:flex;
    -ms-flex-pack:stretch;
    justify-content:stretch;
    -ms-flex-align:stretch;
    align-items:stretch;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    margin:0 11px
}
@media screen and (min-width:768px){
    .g-card-grid__grid{
        margin:0 12px
    }
}
.g-card-grid__grid>div{
    -ms-flex:0 0 50%;
    flex:0 0 50%;
    max-width:50%;
    padding:5px
}
@media screen and (min-width:768px){
    .g-card-grid__grid>div{
        -ms-flex:0 0 33.3333%;
        flex:0 0 33.3333%;
        max-width:33.3333%;
        padding:12px
    }
}
.g-card-grid--overlap{
    padding:0 0 32px
}
@media screen and (min-width:768px){
    .g-card-grid--overlap{
        padding:0 0 36px
    }
}
.g-card-grid--overlap .g-card-grid__grid{
    position:relative;
    top:-32px;
    z-index:100
}
@media screen and (min-width:768px){
    .g-card-grid--overlap .g-card-grid__grid{
        top:-24px
    }
}
.g-card-grid--2-wide .g-card-grid__grid>div{
    -ms-flex:0 0 100%;
    flex:0 0 100%;
    max-width:100%;
    padding:5px
}
@media screen and (min-width:768px){
    .g-card-grid--2-wide .g-card-grid__grid>div{
        -ms-flex:0 0 50%;
        flex:0 0 50%;
        max-width:50%;
        padding:12px
    }
}
.g-card-grid--2-wide .g-card-grid__grid .g-round-card__wrap--single{
    margin:0 auto
}
@media screen and (min-width:768px){
    .g-card-grid--2-wide .g-card-grid__grid .g-round-card__wrap--fullscreen{
        -ms-flex:0 0 100%;
        flex:0 0 100%;
        max-width:100%;
        padding:12px
    }
}
.g-round-card{
    color:#5b6770;
    height:100%;
    border-radius:8px;
    box-shadow:0 2px 4px 0 rgba(0,0,0,.11);
    overflow:hidden;
    background:#fff
}
.g-round-card__inner{
    position:relative;
    height:100%;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-pack:start;
    justify-content:flex-start;
    -ms-flex-direction:column;
    flex-direction:column;
    -ms-flex-align:stretch;
    align-items:stretch;
    -ms-flex-line-pack:stretch;
    align-content:stretch
}
.g-round-card__map-container{
    height:100px
}
@media screen and (min-width:959px){
    .g-round-card__map-container{
        height:160px
    }
}
.g-round-card__content{
    position:relative;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-pack:start;
    justify-content:flex-start;
    -ms-flex-direction:column;
    flex-direction:column;
    -ms-flex-align:stretch;
    align-items:stretch;
    -ms-flex-line-pack:stretch;
    align-content:stretch
}
.g-round-card__intrinsic{
    display:block;
    position:relative;
    overflow:hidden;
    padding:56.25% 0 0
}
.g-round-card__img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    margin:0
}
.g-round-card__foot{
    -ms-flex:0 1 auto;
    flex:0 1 auto;
    margin:auto 0 0;
    padding:24px 16px 12px;
    font-size:12px
}
@media screen and (min-width:768px){
    .g-round-card__foot{
        padding:32px 22px 20px
    }
}
.g-round-card__foot a{
    font-size:16px
}
.g-round-card a.g-round-card__foot{
    font-size:16px
}
.g-round-card__heading{
    color:#004f71;
    font-size:18px;
    font-weight:bold;
    font-style:normal;
    font-stretch:normal;
    line-height:1.33;
    letter-spacing:-.5px;
    pointer-events:all;
    margin:18px 16px 8px
}
.g-round-card__heading:hover{
    color:#004f71
}
@media screen and (min-width:768px){
    .g-round-card__heading{
        margin:16px 22px 12px;
        font-size:22px;
        line-height:1.27;
        letter-spacing:-.5px
    }
}
.g-round-card p{
    margin:0 16px 12px
}
@media screen and (min-width:768px){
    .g-round-card p{
        margin:0 22px
    }
}
.g-round-card a{
    cursor:pointer;
    -webkit-text-decoration-color:#dd0031;
    text-decoration-color:#dd0031;
    text-decoration:none;
    pointer-events:all
}
.g-round-card a:hover{
    text-decoration:underline;
    transition:1s
}
@media screen and (min-width:768px){
    .g-round-card--overlayed-image .g-round-card__content{
        max-width:510px;
        position:absolute;
        bottom:0;
        left:0;
        height:auto;
        pointer-events:none;
        cursor:pointer;
        color:#fff
    }
    .g-round-card--overlayed-image .g-round-card__content a{
        color:#fff
    }
    .g-round-card--overlayed-image .g-round-card__intrinsic::after{
        content:"";
        position:absolute;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background:rgba(10,10,10,.5)
    }
}
.g-round-card--large-heading .g-round-card__heading{
    font-size:22px;
    line-height:1.27;
    margin:34px 16px 15px
}
@media screen and (min-width:768px){
    .g-round-card--large-heading .g-round-card__heading{
        margin:30px 22px 19px;
        font-size:28px;
        line-height:1.21;
        letter-spacing:-.5px
    }
}
.home{
    background-color:#fff
}
.home h1{
    font-family:apercu,sans-serif;
    font-weight:700;
    letter-spacing:-1px;
    -moz-osx-font-smoothing:grayscale;
    line-height:1.02128;
    font-size:47px;
    font-size:4.7rem;
    color:#004f71;
    margin-top:0;
    margin-bottom:0
}
@media screen and (min-width:960px){
    .home h1{
        letter-spacing:-2px;
        line-height:1.07692;
        font-size:62px;
        font-size:6.2rem;
	color:#DD0031
    }
}
.home h2{
    font-family:apercu,sans-serif;
    font-weight:700;
    letter-spacing:-1px;
    -moz-osx-font-smoothing:grayscale;
    line-height:1;
    font-size:28px;
    font-size:2.8rem;
    color:#dd0031
}
@media screen and (min-width:960px){
    .home h2{
        font-size:39px;
        font-size:3.9rem
    }
}
.home h4{
    font-family:apercu,sans-serif;
    font-weight:700;
    letter-spacing:-.5px;
    -moz-osx-font-smoothing:grayscale;
    line-height:1.25;
    font-size:18px;
    font-size:1.8rem;
    margin-top:32px
}
@media screen and (min-width:960px){
    .home h4{
        font-size:22px;
        font-size:2.2rem
    }
}
.home p{
    font-family:apercu,sans-serif;
    font-weight:600;
    letter-spacing:-.5px;
    -moz-osx-font-smoothing:grayscale;
    line-height:1.5;
    font-size:16px;
    font-size:1.6rem;
    font-weight:500
}
@media screen and (min-width:748px){
    .home p{
        letter-spacing:-.56px;
        line-height:1.77778;
        font-size:18px;
        font-size:1.8rem
    }
}
.home .tagline{
    font-weight:700;
    margin-bottom:60px
}
.home .text-container{
    max-width:816px
}
.home .hero-image{
    max-width:1024px;
    margin-top:60px;
    margin-bottom:60px
}
@media only screen and (max-width:959px){
    .home .hero-image{
        margin-top:46px;
        margin-bottom:46px
    }
}
.home .g-card-grid{
    padding:54px 0 66px
}
@media only screen and (max-width:959px){
    .home .g-card-grid{
        padding:40px 0 50px
    }
    .home .g-card-grid__header{
        padding-bottom:32px
    }
}
.home .g-round-card .g-round-card__img{
    max-height:160px
}
@media only screen and (max-width:959px){
    .home .g-round-card .g-round-card__img{
        max-height:100px
    }
}
.home .g-round-card .g-round-card__text-container{
    margin:40px 48px
}
.home .g-round-card .g-round-card__heading{
    font-family:apercu,sans-serif;
    font-weight:700;
    letter-spacing:-.5px;
    -moz-osx-font-smoothing:grayscale;
    line-height:1.27;
    font-size:22px;
    font-size:2.2rem
}
@media screen and (min-width:960px){
    .home .g-round-card .g-round-card__heading{
        letter-spacing:-1px;
        font-size:28px;
        font-size:2.8rem
    }
}
.home .g-round-card h3{
    margin:40px 48px 8px
}
@media only screen and (max-width:959px){
    .home .g-round-card h3{
        margin:32px 18px 16px
    }
}
.home .g-round-card p{
    font-size:16px;
    font-size:1.6rem;
    margin:0 48px
}
@media only screen and (max-width:959px){
    .home .g-round-card p{
        margin:0 18px
    }
}
.home .g-round-card .g-round-card__foot{
    padding:24px 48px 40px
}
@media only screen and (max-width:959px){
    .home .g-round-card .g-round-card__foot{
        padding:24px 18px 32px
    }
}
