:root {
    --red:#cf0101;
    --white:#ffffff;
    --black:#000000;
    --gray:#e3e3e3;
    --gray-dark:#333333;
}

a { color:var(--red); }
.text-nhg-display { font-family: "neue-haas-grotesk-display", sans-serif; }
.text-nhg-text { font-family: "neue-haas-grotesk-text", sans-serif; }
.text-fw-400 { font-weight: 400; } 
.text-fw-700 { font-weight: 700; }

.bg-red { background-color: var(--red); }
.bg-white { background-color: var(--white); }
.bg-black { background-color: var(--black); }
.bg-gray { background-color: var(--gray); }
.bg-gray-dark { background-color: var(--gray-dark); }

.text-red { color:var(--red); }
.text-white { color: var(--white); }
.text-black { color: var(--black); }
.text-gray { color: var(--gray); }
.text-gray-dark { color: var(--gray-dark); }

.text-fs-13 { font-size:13px; }
.text-fs-15 { font-size:15px; }
.text-fs-16 { font-size:16px; }
.text-fs-18 { font-size:18px; }
.text-fs-20 { font-size:20px; }

.mw-1200 { max-width:1200px;}
.mw-800 { max-width: 800px; }

body { background-color:var(--white);  font-family: "neue-haas-grotesk-display", sans-serif; font-size:13px; padding-top:0; -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease; overflow-x:hidden; }

section {  overflow-x:hidden; }

nav { margin:auto; font-size:15px; position:absolute; top:-56px; left:0; right:0; width:100%; height:56px; -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease; overflow: hidden; }

body.open { padding-top:56px; }
body.open nav { top:0px; overflow: visible; }
nav a.active { font-weight: 700; }
header { background-color: var(--white); padding:2rem; }

.mobile-trigger, .mobile-trigger-slide { cursor:pointer; width:40px; height:20px;  }
.mobile-trigger span, .mobile-trigger-slide span { width:100%; display: block; background-color: var(--black); height:2px; margin-bottom:5px; border-radius: .25rem; -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease; }

.mobile-trigger-slide { position:relative; z-index:200; -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease;  }

nav ul { margin: 0; padding: 0; list-style: none; position: relative;  } 
nav ul li { display: inline-block;  } 
nav a { display: block; padding: 0 10px; color: #fff; font-size: 16px; text-decoration: none; font-weight: 600; } 
nav ul ul { opacity:0; position: absolute; top: 24px; background: var(--white); padding: 1rem;  pointer-events: none; text-align: left; color:var(--red) } 
nav ul li:hover ul { display:inherit;  top: 24px; opacity:1;  pointer-events: all; } 
nav ul ul li { width: 200px; float: none; display: list-item; position: relative; margin-bottom:5px; } 
nav ul ul ul li { position: relative; top:-60px; left:200px;  } 
nav ul ul a { font-size:13px; color:var(--red) }
nav li:hover a { color: var(--red); background-color: var(--white);}
nav ul ul ul a { color: var(--red) } 
nav ul ul li:hover > ul { display:inherit; }

.fade-in { opacity:0; }
.mobile-overlay-wrapper { opacity:0; position:fixed; top:0; left:0; right:0; bottom:0; background-color: rgba(0,0,0,.9); z-index:-1; display:flex; align-items:center; justify-content: center; text-align: center; -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease; }
.mobile-overlay-wrapper > li { margin-bottom:1rem; }
.mobile-overlay-wrapper a  { color:#fff; text-decoration: none; font-size:27px; }
.mobile-overlay-wrapper a.order-online-link { font-size:20px; display:inline-block; margin-top:.5rem;  }
.mobile-dropdown { display:none; }
.mobile-dropdown a { font-size:20px; color: var(--orange); }

body.open .mobile-trigger span:nth-child(3), body.open-slide .mobile-trigger-slide span:nth-child(3) { display:none; }
body.open .mobile-trigger span:nth-child(1), body.open-slide .mobile-trigger-slide span:nth-child(1) { transform:rotate(45deg);  }
body.open .mobile-trigger span:nth-child(2), body.open-slide .mobile-trigger-slide span:nth-child(2) { transform:rotate(-45deg); margin-top:-7px; ;  }
body.open .mobile-overlay-wrapper { opacity: 1; z-index:1000; }

body.open-slide .mobile-trigger-slide span:nth-child(1) { background-color:var(--white) }
body.open-slide .mobile-trigger-slide span:nth-child(2) { background-color:var(--white) }

footer a { text-decoration: none; color:var(--white); }
footer a.active { font-weight: bold;}
.dot { display:inline-block; margin:0 10px; }
.dot span { display:block; width:5px; height:5px; border-radius: 20px; background-color: var(--white);}
.object-fit-cover { width:100%; height:100%; object-fit:cover; }

.mobile-nav { background:var(--red); color: var(--white); height:100%; position:fixed; width:100%; max-width:575px; z-index:100; padding:2rem; left:-575px; top:0; bottom:0; -webkit-transition: all 0.8s ease;-moz-transition: all 0.8s ease;-o-transition: all 0.8s ease;transition: all 0.8s ease; }
.mobile-nav li { margin-bottom:1rem; }
.mobile-nav a { color: var(--white); text-decoration:none; font-size:20px; font-weight:bold; display:block; text-align: right; }
body.open-slide .mobile-nav { left:0;  }

.mobile-sub-nav li { margin-bottom: .5rem;}
.mobile-sub-nav a { font-size:16px !important } 

.dvmc-page .mobile-trigger span, .dvmc-page .mobile-trigger-slide span { background-color: var(--white); }
.dvmc-page .text-black { color: var(--white) !important; }

.video-responsive{
    overflow:hidden;
    padding-bottom:56.25%;
    position:relative;
    height:0;
}
.video-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

 /* footer { position: absolute; bottom:0; width:100%;  } */
@media (max-height:900px){
    footer { position:relative !important; }
}

@media (max-width:990px){
    .mobile-trigger { display:block; }
    nav a {  padding: 0 3px; font-size: 12px; line-height: 25px; } 
    nav ul li:hover ul { top:19px }
}