#main-header {
  position: fixed;
  display: flex;
  align-items: center;
}
.footer#main-header > *,
.hud-footer#main-header > * {
  margin-bottom: 0;
}#main-header {
  top: 0;
  right: 0;
  left: 0;
  z-index: 1001;
  height: 70px;
  background-color: #fff;
  border-bottom: 2px solid #e8e8e8;
}
#main-header .header-container {
  position: relative;
  display: flex;
  align-items: center;
}
.footer#main-header .header-container > *,
.hud-footer#main-header .header-container > * {
  margin-bottom: 0;
}
#main-header .header-container {
  padding: 0 20px;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
#main-header .branding {
  margin-right: 40px;
}
@media only screen and (max-width: 880px) {
  #main-header .branding {
    margin: auto;
  }
}
#main-header .nav-items {
  display: flex;
}
.footer#main-header .nav-items > *,
.hud-footer#main-header .nav-items > * {
  margin-bottom: 0;
}
#main-header .nav-items a {
  text-transform: uppercase;
  letter-spacing: 0.025em;
  font-size: 14px;
  font-weight: bold;
  line-height: 40px;
  color: #3b2314;
  padding: 0 10px;
}
#main-header .nav-items a:hover {
  color: #c2976a;
}
#main-header .nav-items a.active {
  color: #c2976a;
}
#main-header .nav-items .nav-active {
  color: #c2976a;
}
@media only screen and (max-width: 880px) {
  #main-header .nav-items {
    display: none;
  }
}
#main-header .user-block {
  position: relative;
  margin-left: auto;
  margin-right: 0.5rem;
  padding-right: 2rem;
  cursor: pointer;
}
#main-header .user-block p {
  margin: 0;
  transition: color 0.3s ease;
}
#main-header .user-block svg {
  transition: fill 0.3s ease;
}
#main-header .user-block:hover p, #main-header .user-block.active p {
  color: #c2976a;
}
#main-header .user-block:hover svg, #main-header .user-block.active svg {
  fill: #c2976a;
}
@media only screen and (max-width: 880px) {
  #main-header .user-block {
    display: none;
  }
}
#main-header .menu-trigger {
  position: absolute;
  padding: 0.5rem;
  top: 0;
  right: -30px;
  width: 24px;
  height: 30px;
  cursor: pointer;
  transition: all 0.3s ease;
}
#main-header .menu-trigger.active {
  transform: scale(-1);
  top: -5px;
}
#main-header .user-block-menu {
  display: none;
  position: absolute;
  padding: 1rem;
  top: 55px;
  right: 20px;
  width: 180px;
}
#main-header .user-block-menu.active {
  background: #c2976a;
  display: block;
}
#main-header .user-block-menu a {
  display: block;
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  color: white;
  padding: 5px 0;
}
#main-header .user-block-menu a:hover {
  color: #3b2314;
}
#main-header .nav-menu-trigger {
  position: absolute;
  top: 50%;
  right: 15px;
  padding-top: 0.075em;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  height: 40px;
  margin-top: -20px;
  font-size: 1em;
  line-height: 40px;
  color: #3b2314 !important;
}
@media only screen and (min-width: 881px) {
  #main-header .nav-menu-trigger {
    display: none;
  }
}

.mobile-nav {
  position: fixed;
  top: 70px;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 300;
  display: none;
  background: #fff;
  overflow: auto;
}
.mobile-nav .mobile_nav-container {
  display: table;
  width: 100%;
  height: 80%;
}
.mobile-nav .mobile_nav-list .nav-active {
  color: #c2976a;
}
.mobile-nav ul {
  transform: translateY(10px);
  transition: transform 0.6s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  display: table-cell;
  vertical-align: middle;
  padding: 30px 0;
  text-align: center;
}
.mobile-nav ul li {
  transition: opacity 0.35s ease-in-out, transform 0.35s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  transform: translateY(10px);
  padding-top: 0.075em;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  margin: 5px;
  font-size: 1.125em;
  opacity: 0;
}
.mobile-nav ul li a {
  display: inline-block;
  padding: 8px;
  color: #3b2314;
}
.mobile-nav ul li a:hover {
  color: #c2976a;
}

.nav-animate .mobile-nav ul {
  transform: translateY(0);
}
.nav-animate .mobile-nav li {
  transform: translateY(0);
  opacity: 1;
}

.mobile-nav-active .mobile-nav {
  display: block;
}
.mobile-nav-active .nav-items {
  display: block;
}

#sidebar {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
  min-width: 180px;
}
#sidebar .sidebar-container {
  height: 100%;
}
#sidebar .sidebar-menu {
  display: flex;
  height: 100%;
  flex-direction: column;
}
.footer#sidebar .sidebar-menu > *,
.hud-footer#sidebar .sidebar-menu > * {
  margin-bottom: 0;
}
#sidebar .sidebar-menu .last-item {
  margin-top: auto;
}
#sidebar .sidebar-menu .last-item a {
  padding: 20px;
}
#sidebar .sidebar-menu .sidebar-menu-heading {
  font-family: din-condensed-web, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  margin-bottom: 0.1875em;
  font-size: 1.25em;
  line-height: 1em;
  color: #c2976a;
  padding: 15px 0 0 20px;
}
#sidebar .sidebar-menu a {
  display: block;
  font-family: din-condensed-web, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  font-size: 1em;
  line-height: 1.25em;
  color: #3b2314;
  padding: 5px 20px;
}
#sidebar .sidebar-menu a:hover, #sidebar .sidebar-menu a.active {
  color: #c2976a;
  transform: translateX(2px);
}

body {
  display: flex;
  flex-direction: column;
}

body.footer > *,body
.hud-footer > * {
  margin-bottom: 0;
}

body {
  min-height: 100vh;
  background-color: #fff;
  color: #3b2314;
  font-family: kulturista-web, Georgia, Cambria, "Times New Roman", Times, serif;
  font-size: 1em;
  line-height: 1.5;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#notifications {
  position: fixed;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  z-index: 1000;
}
#notifications .notification {
  padding: 5px 10px;
  border-radius: 0 0 3px 3px;
  color: #fff !important;
  pointer-events: auto;
  font-size: 14px;
}
#notifications .notification.notice {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity));
}
#notifications .notification.error {
  background: #BE1F2D;
}

.has-user #page-wrapper {
  margin-top: 70px;
}

#page-wrapper {
  display: flex;
}

.footer#page-wrapper > *,
.hud-footer#page-wrapper > * {
  margin-bottom: 0;
}

#page-wrapper {
  margin-top: 70px;
  flex: 1;
  background-image: url("/assets/images/map_background.jpg");
  position: relative;
  background-position: center bottom;
  background-repeat: repeat-x;
  background-size: contain;
}

#main {
  flex: 1 0 0;
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 0;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  border-top: 0;
  background: white;
}

.content-inner {
  padding: 0 25px;
}

.footer-image-placeholder {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.page-login .form, .page-forgotpassword .form {
  max-width: 420px;
  margin: 0 auto;
}
.page-login .button, .page-forgotpassword .button {
  width: 100%;
  margin-bottom: 20px;
}

.page-register .form {
  max-width: 960px;
  margin: 50px auto 80px auto;
}

.login-forgot_password, .login-redirect_link {
  font-size: 0.9375em;
  text-align: center;
  margin-bottom: 30px;
}

.footer-first {
  background-color: #3b2314;
  text-align: center;
  padding: 25px 0;
}
.footer-first h3 {
  padding-top: 0.075em;
  font-family: "din-condensed-web", Helvetica Neue, Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  margin-bottom: 0.25em;
  font-size: 1em;
  color: #c2976a;
}
.footer-first .social_links-list-item {
  display: inline-block;
  margin-left: 15px;
}
.footer-first .social_links-list-item:first-child {
  margin-left: 0;
}
.footer-first .social_links-list-link {
  transition: background-color 0.15s ease-in-out;
  width: 30px;
  height: 30px;
  background-color: none;
  border: 2px solid #c2976a;
  text-align: center;
  line-height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer-first .social_links-list-link svg {
  height: 26px;
}
.footer-first .social_links-list-link svg path {
  transition: fill 0.15s ease-in-out;
  fill: #c2976a;
}
.footer-first .social_links-list-link:hover {
  background-color: #c2976a;
}
.footer-first .social_links-list-link:hover svg path {
  fill: #fff;
}

.footer-nav {
  background: #28190e;
  color: #c2976a;
  padding: 20px 0;
}
.footer-nav .footer-nav-container {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1200px;
}
.footer-nav .footer-nav-container, .footer-nav ul {
  display: flex;
  align-items: center;
}
.footer.footer-nav .footer-nav-container > *,
.hud-footer.footer-nav .footer-nav-container > *,.footer .footer-nav ul > *,
.hud-footer .footer-nav ul > * {
  margin-bottom: 0;
}
.footer-nav .footer-nav-copy {
  margin: 0;
  font-size: 0.8125em;
  line-height: 20px;
}
.footer-nav .nav-items {
  margin-left: auto;
}
.footer-nav .nav-items a {
  font-family: din-condensed-web, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  font-size: 1em;
  line-height: 20px;
  padding: 0 10px;
}

body {
  font-family: Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.25em;
  margin: 0 0 15px;
  text-rendering: optimizeLegibility;
  color: #3b2314;
}

h1 {
  font-size: 3.125em;
}

h2 {
  font-size: 2.725em;
}

h3 {
  font-size: 2.225em;
}

h4 {
  font-size: 1.725em;
}

.bold {
  font-weight: bold;
}

.new-h1 {
  padding-top: 0.075em;
  margin-bottom: 15px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  font-size: 1.7125em;
}

a {
  transition: all 0.1s linear;
  color: #c2976a;
  text-decoration: none;
}
a:hover {
  color: #9f6a33;
  outline: none;
}

p {
  font-size: 14px;
  margin: 1em 0;
}

.masthead {
  margin-bottom: 10px;
  padding-bottom: 10px;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 106px 33px;
  text-align: center;
}
.masthead h1 {
  margin-bottom: 0;
}

.masthead-heading {
  margin-bottom: 0.2em;
  font-size: 3.125em;
  font-weight: 700;
  line-height: 1.125em;
}

.masthead-leadin {
  padding-top: 0.075em;
  font-family: din-condensed-web, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  margin-bottom: 0.1875em;
  font-size: 1.25em;
  line-height: 1em;
  color: #c2976a;
}

.page-heading {
  font-size: 2.625em;
  font-weight: 700;
  line-height: 1.125em;
}

.marker-yellow {
  background-color: hsl(60, 97%, 73%);
}

.marker-green {
  background-color: hsl(120, 93%, 68%);
}

.marker-pink {
  background-color: hsl(345, 96%, 73%);
}

.marker-blue {
  background-color: hsl(201, 97%, 72%);
}

.pen-red {
  color: hsl(0, 85%, 49%);
  background-color: transparent;
}

.pen-green {
  color: hsl(112, 100%, 27%);
  background-color: transparent;
}

input[type=email], input[type=password], input[type=tel], input[type=text], input[type=number], select, textarea {
  display: block;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  transition: border-color 0.15s ease-in-out;
  padding: 10px;
  background: white;
  border: 2px solid #c2976a;
  font-size: 1em;
  color: #3b2314;
  width: 100%;
}
input[type=email].w-auto, input[type=password].w-auto, input[type=tel].w-auto, input[type=text].w-auto, input[type=number].w-auto, select.w-auto, textarea.w-auto {
  width: auto;
}
input[type=email].small, input[type=password].small, input[type=tel].small, input[type=text].small, input[type=number].small, select.small, textarea.small {
  padding: 3px 7px;
}
input[type=email]:focus, input[type=password]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=number]:focus, select:focus, textarea:focus {
  border-color: #c2976a;
  opacity: 1;
  outline: 0;
}
input[type=email].default-input, input[type=password].default-input, input[type=tel].default-input, input[type=text].default-input, input[type=number].default-input, select.default-input, textarea.default-input {
  border: 2px solid #c2976a;
}

select {
  transition: border-color 0.15s ease-in-out, color 0.15s ease-in-out;
  width: 100%;
  padding: 5px 20px 5px 0;
  background: white;
  outline: 0;
  color: #3b2314;
}

select, textarea {
  padding: 10px;
}

label, .label {
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

label {
  display: inline-block;
}

.form-fieldset {
  margin: 0 0 3em;
}
.form-fieldset h1 {
  padding-top: 0.075em;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  font-size: 1.4125em;
}

.form-label-text {
  color: rgba(59, 35, 20, 0.35);
}

.field.has-errors .input.errors input {
  border-color: #BE1F2D;
}
.field.has-errors ul.errors {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: #BE1F2D;
}

.form-group {
  display: flex;
}

.footer.form-group > *,
.hud-footer.form-group > * {
  margin-bottom: 0;
}

.form-group {
  margin-bottom: 30px;
}
.form-group .form-label {
  position: relative;
  flex: 0 1 50%;
  margin: 0 10px;
}
.form-group .form-label:first-child {
  margin-left: 0;
}
.form-group .form-label:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 750px) {
  .form-group {
    display: block;
  }
  .form-group .form-label {
    margin: 0 0 30px 0;
  }
}

.form-label.has-icon .icon {
  position: absolute;
  right: 0;
  top: 30px;
}
.form-label.has-icon input {
  padding-right: 40px;
}
.form-label.has-error .form-label-text {
  color: #BE1F2D;
}
.form-label.has-error input {
  border-color: #BE1F2D;
}
.form-label.has-error .form-error-field {
  margin-top: 10px;
}

.form-error-field {
  font-family: sans-serif;
  font-size: 11px;
  text-transform: none;
  color: #BE1F2D;
}

.form-select {
  position: relative;
}

.form-select-arrow {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 2px;
  z-index: 2;
  content: "";
  width: 20px;
  background-color: #fff;
  background-image: url("../images/down-arrow_2x.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px 8px;
  pointer-events: none;
}

.form-checkbox {
  display: flex;
  align-items: center;
}

.footer.form-checkbox > *,
.hud-footer.form-checkbox > * {
  margin-bottom: 0;
}
.form-checkbox .form-label-text {
  margin-right: 10px;
}
.form-checkbox input {
  margin-top: -4px;
}

.button, input[type=submit], .submit-order-btn, .populate-order-btn {
  text-transform: uppercase;
  letter-spacing: 0.025em;
  transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  vertical-align: middle;
  min-width: 120px;
  width: auto;
  padding: 0.1em 1em 0;
  background-color: #c2976a;
  border: none;
  font-size: 14px;
  font-weight: bold;
  line-height: 46px;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  color: #fff;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-font-smoothing: antialiased;
  margin-bottom: 20px;
  outline: none !important;
}
.button:hover, input[type=submit]:hover, .submit-order-btn:hover, .populate-order-btn:hover {
  background-color: #9f6a33;
  color: #fff;
}

.button.button-white {
  background: white;
  color: #c2976a;
  border: 2px solid #c2976a;
}
.button.button-white:hover {
  border: 2px solid #9f6a33;
}

.form-submit[type=submit] {
  display: block;
  margin: 0 auto;
}

.button:focus, .button:hover, .cart-update:focus, .cart-update:hover, input[type=submit]:focus, input[type=submit]:hover {
  background-color: #9f6a33;
  color: #fff;
}

.button.button-ghost, input[type=submit].button-ghost {
  padding: 0;
  background: 0 0;
  border: 2px solid #c2976a;
  color: #c2976a;
}

.button.button-ghost:focus, .button.button-ghost:hover, input[type=submit].button-ghost:focus, input[type=submit].button-ghost:hover {
  background-color: #c2976a;
  color: #fff;
}

#primary-nav-wrapper {
  display: flex;
}
#primary-nav-wrapper a {
  display: block;
  padding: 10px 20px;
}

#primary-nav {
  display: flex;
}

#utility-nav {
  margin-left: auto;
}

.settings-list .settings-item {
  display: block;
  padding: 1rem;
  color: #28190e;
}
.settings-list .settings-item h2 {
  font-family: din-condensed-web, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  margin-bottom: 0.25em;
  font-size: 1.4375em;
  line-height: 1em;
  color: #c2976a;
}
.settings-list .settings-item:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}

.page-account .form-fieldset {
  margin: 0;
}
.page-account hr {
  border-width: 4px;
  margin: 30px -27px;
}

.password-requirements .pr-item {
  color: #BE1F2D;
}
.password-requirements .pr-item.validated {
  --tw-text-opacity: 1;
  color: rgb(34 197 94 / var(--tw-text-opacity));
}

#product-order-list {
  align-items: baseline;
  background: white;
}
#product-order-list.submitting .submit-order-btn {
  opacity: 0.2;
  pointer-events: none;
}
#product-order-list .category-header {
  background: #e2e8f0;
  padding: 10px 15px;
  font-weight: bold;
  font-size: 14px;
  margin: 0;
}
#product-order-list .form-info {
  margin-bottom: 10px;
}
#product-order-list .form-info p {
  font-size: 14px;
}
#product-order-list .fullwidth {
  width: 100%;
}
#product-order-list .product-name {
  cursor: pointer;
  transition: all 0.3s ease;
}
#product-order-list .product-name:hover {
  color: #c2976a;
}
#product-order-list .data tbody tr:not(.not-available):hover td {
  background: rgba(128, 128, 128, 0.1);
}
#product-order-list .data tbody tr td:first-child {
  padding-left: 5px;
}
#product-order-list .data tbody tr.last-tr input[type=number] {
  border-bottom-width: 1px;
}
#product-order-list .data tbody tr p {
  padding: 0;
  margin: 5px 0;
}
#product-order-list .data tbody .field {
  margin: 0;
}
#product-order-list .data .price {
  font-weight: bold;
  font-size: 14px;
  padding-right: 5px;
}
#product-order-list .data input[type=number] {
  font-size: 13px;
  border: 1px solid #c7c7c6;
  margin-bottom: -1px;
}
#product-order-list .data td {
  font-family: din-condensed-web, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-size: 18px;
  padding: 0;
}
#product-order-list .data td p {
  font-size: 14px;
  font-weight: bold;
}
#product-order-list .products-list fieldset {
  border: 1px solid #c2976a;
  padding: 10px;
}
#product-order-list .products-list fieldset legend {
  padding: 0 10px;
}
#product-order-list .products-list fieldset legend h1 {
  margin-bottom: 0;
  font-size: 26px;
}
#product-order-list .products-list .product-item {
  background: rgba(194, 151, 106, 0.1);
  margin-bottom: 20px;
  padding: 20px;
}
#product-order-list .products-list .product-item label {
  font-size: 18px;
  font-weight: bold;
}
#product-order-list .products-list .product-item .field {
  width: 100%;
  display: flex;
  align-items: center;
  transition: background 0.3s ease;
  margin-bottom: 0;
}
#product-order-list .products-list .product-item .field .input {
  margin-left: auto;
}
#product-order-list .products-list .product-item .field .input .label {
  align-self: center;
  font-size: 12px;
  padding-left: 5px;
}
#product-order-list .products-list .product-item .field input {
  transition: background 0.3s ease;
}
#product-order-list .products-list .product-item .field .small-input {
  width: 100px;
}
#product-order-list .products-list .product-item:last-child {
  margin-bottom: 0;
}
#product-order-list .see-more {
  display: inline-block;
  font-size: 12px;
}
#product-order-list .product-info {
  display: none;
  margin-top: 15px;
}
#product-order-list .product-info-wrapper {
  display: flex;
}
#product-order-list .product-info-wrapper > div {
  flex: 1;
}
#product-order-list .product-info-wrapper .product-image {
  max-width: 150px;
}
#product-order-list .product-info-wrapper .product-description {
  font-size: 14px;
}
#product-order-list .field {
  margin-bottom: 1rem;
}
#product-order-list .order-details #shippingMethodId-field select, #product-order-list .order-details #orderDate-field select {
  width: 200px;
}

.modal,
.hud {
  z-index: 100;
  box-sizing: border-box;
}

.modal,
.hud .body {
  border-radius: 5px;
  background-color: #fff;
  box-shadow: 0 25px 100px rgba(31, 41, 51, 0.5);
}

.header:after,
.hud-header:after,
.footer:after,
.hud-footer:after,
.body:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.header,
.hud-header,
.footer,
.hud-footer {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  background-color: hsl(212, 50%, 93%);
}

.header,
.hud-header {
  border-radius: 5px 5px 0 0;
  padding: 24px;
  box-shadow: inset 0 -1px 0 rgba(51, 64, 77, 0.1);
}
.header h1,
.hud-header h1 {
  margin: 0;
}

.footer,
.hud-footer {
  border-radius: 0 0 5px 5px;
  padding: 14px 24px;
  box-shadow: inset 0 1px 0 rgba(51, 64, 77, 0.1);
}
.footer.flex > *,
.hud-footer.flex > * {
  margin-bottom: 0;
}

.modal .body,
.hud .main {
  padding: 24px;
  overflow: hidden;
  box-sizing: border-box;
}

.pane .header,
.modal .body .header {
  margin: -24px -24px 24px;
}
.pane .footer,
.modal .body .footer {
  margin: 24px -24px -24px;
}

.modal-shade,
.hud-shade {
  z-index: 100;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
}

.modal-shade {
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
.modal-shade:not(.dark) {
  background-color: rgba(255, 255, 255, 0.75) !important;
}
@supports ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))) {
  .modal-shade:not(.dark) {
    background-color: transparent !important;
  }
}
.modal-shade.dark {
  background-color: rgba(31, 41, 51, 0.5) !important;
}

.modal {
  position: fixed;
  width: 66%;
  height: 66%;
  min-width: 600px;
  min-height: 400px;
  overflow: hidden;
}
.modal.fitted {
  width: auto;
  height: auto;
  min-width: 0;
  min-height: 0;
}
body.ltr .modal.alert .body {
  padding-left: 76px;
}
body.rtl .modal.alert .body {
  padding-right: 76px;
}
.modal.alert .body:before {
  font-family: "Craft";
  speak: none;
  -ms-font-feature-settings: "liga", "dlig";
  -o-font-feature-settings: "liga", "dlig";
  font-feature-settings: "liga", "dlig";
  text-rendering: optimizeLegibility;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  text-align: center;
  font-style: normal;
  vertical-align: middle;
  word-wrap: normal !important;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  opacity: 0.8;
  content: "alert";
  font-size: 40px;
  color: hsl(211, 13%, 65%);
}
body.ltr .modal.alert .body:before {
  margin: -6px 0 0 -58px;
}
body.rtl .modal.alert .body:before {
  margin: -6px -58px 0 0;
}
body.ltr .modal.alert .body:before {
  float: left;
}
body.rtl .modal.alert .body:before {
  float: right;
}
body.ltr .modal.secure .body {
  padding-left: 76px;
}
body.rtl .modal.secure .body {
  padding-right: 76px;
}
.modal.secure .body:before {
  font-family: "Craft";
  speak: none;
  -ms-font-feature-settings: "liga", "dlig";
  -o-font-feature-settings: "liga", "dlig";
  font-feature-settings: "liga", "dlig";
  text-rendering: optimizeLegibility;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  text-align: center;
  font-style: normal;
  vertical-align: middle;
  word-wrap: normal !important;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  opacity: 0.8;
  content: "secure";
  font-size: 58px;
  color: hsl(211, 13%, 65%);
}
body.ltr .modal.secure .body:before {
  margin: -14px 0 0 -56px;
}
body.rtl .modal.secure .body:before {
  margin: -14px -56px 0 0;
}
body.ltr .modal.secure .body:before {
  float: left;
}
body.rtl .modal.secure .body:before {
  float: right;
}
.modal .resizehandle {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 24px;
  height: 24px;
  background: no-repeat 50% 50%;
  cursor: nwse-resize;
}
body.ltr .modal .resizehandle {
  right: 0;
}
body.rtl .modal .resizehandle {
  left: 0;
}
body.ltr .modal .resizehandle {
  background-image: url(../images/resizehandle.png);
}
body.rtl .modal .resizehandle {
  background-image: url(../images/resizehandle_rtl.png);
}

body.ltr table thead th {
  text-align: left;
}

.orders tbody tr:not(.not-available):hover td {
  background: rgba(128, 128, 128, 0.1);
}
.orders tbody tr td:first-child {
  padding-left: 10px;
}
.orders tbody td {
  padding: 5px 0;
}

.order-verification-modal th {
  padding: 0 5px;
}
.order-verification-modal .infoRow td {
  padding: 10px;
}

.product-details-modal {
  max-width: 700px;
}
.product-details-modal .modal-container {
  overflow-x: auto;
  padding-top: 0;
}
.product-details-modal .modal-container > div {
  width: 50%;
}
.product-details-modal .modal-container .product-title {
  margin-bottom: 0;
}
.product-details-modal .modal-container .product-location {
  padding-top: 0;
  margin-top: 10px;
}
.product-details-modal .modal-container .product-tasting-notes {
  margin: 0;
}
.product-details-modal .modal-container .product-image {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 500px;
}
.product-details-modal .modal-container .product-image img {
  width: 100%;
}
.product-details-modal .modal-container .product-details {
  max-height: 500px;
  overflow: scroll;
}
.product-details-modal .modal-container .toggle-item .detail {
  padding: 10px 0;
}
.product-details-modal .modal-container .toggle-item p {
  margin: 0;
}

#user-form .field {
  margin-bottom: 20px;
}
#user-form .errors {
  color: red;
  margin-top: 20px;
}
#user-form .success {
  color: #10a510;
  margin-top: 20px;
}

.address-container {
  transition: background 0.3s ease;
  margin: 0 -25px 15px -25px;
  padding: 25px 25px 10px 25px;
}
.address-container.highlight {
  background: #E12D39;
}
.address-container.highlight a {
  color: white;
}

.product-description ul, .product-description ol {
  margin: 10px 0 10px 20px;
}
.product-description ul {
  list-style-type: disc;
}
.product-description ol {
  list-style-type: decimal;
}

.orders-list .order-item .roast-date {
  transition: all 0.3s ease;
}
.orders-list .order-item:hover .roast-date {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity));
}

.collection-list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  align-content: space-around;
  justify-content: center;
  margin-bottom: 80px;
}
.collection-list h2 {
  margin-bottom: 0.3em;
  font-size: 1.25em;
  font-weight: bold;
}
.collection-list h3 {
  padding-top: 0.075em;
  font-family: "din-condensed-web", Helvetica Neue, Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  margin: 0;
  font-size: 1.125em;
  letter-spacing: 0.0375em;
  color: #c2976a;
}
.collection-list a {
  display: block;
}
.collection-list .collection-item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 25px;
}
.collection-list .collection-item:hover .collection-image {
  transform: translateY(-3px);
}
.collection-list .collection-image {
  transform: translateY(0px);
  transition: all 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  display: table;
  width: 150px;
  margin: 25px auto;
}
.collection-list .collection-image .image-card-helper {
  display: table-cell;
  vertical-align: bottom;
}
.collection-list .collection-image img {
  max-width: 200px;
  width: 100%;
  margin: 0 auto;
}

.products-list-details {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: space-around;
  justify-content: center;
  margin-top: 70px;
  padding: 0 15px;
  margin-bottom: 160px;
}
.products-list-details .product {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  font-size: 16px;
  text-align: center;
}
@media only screen and (min-width: 621px) {
  .products-list-details .product {
    flex: 0 1 50%;
  }
}
@media only screen and (min-width: 761px) {
  .products-list-details .product {
    flex: 0 1 33.33%;
  }
}
@media only screen and (min-width: 881px) {
  .products-list-details .product {
    flex: 0 1 25%;
  }
}
.products-list-details .product-image {
  transform: translateY(0px);
  transition: all 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  display: table;
  width: 100%;
  margin-bottom: 25px;
}
.products-list-details .product-image .image-card {
  display: table-cell;
  vertical-align: bottom;
}
.products-list-details .product-image .image-card img {
  margin: 0 auto;
  width: 100%;
  transform: translateY(0px);
  transition: all 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  display: table;
  margin-bottom: 25px;
}
.products-list-details .product-image .image-card:hover img {
  transform: translateY(-3px);
}
.products-list-details h2 {
  margin-bottom: 0.3em;
  font-size: 1.25em;
  font-weight: bold;
}
.products-list-details h3 {
  padding-top: 0.075em;
  font-family: "din-condensed-web", Helvetica Neue, Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  margin-bottom: 0.25em;
  font-size: 1em;
  letter-spacing: 0.0125em;
}

.product {
  padding-top: 100px;
}
@media only screen and (min-width: 761px) {
  .product .content {
    display: flex;
    flex-direction: row;
  }
}
.product .product-image {
  margin-bottom: 60px;
  flex: 1;
}
@media only screen and (min-width: 761px) {
  .product .product-image {
    margin-bottom: 0;
    width: 42.5%;
  }
}
.product .product-image img {
  position: relative;
  width: auto;
  max-width: 50%;
  min-width: 180px;
  margin: 0 auto;
}
@media only screen and (min-width: 761px) {
  .product .product-image img {
    max-width: 100%;
  }
  .product .product-details {
    width: 57.5%;
  }
}
@media only screen and (min-width: 845px) {
  .product .product-details {
    max-width: 460px;
  }
}
.product .product-title {
  margin-bottom: 0.5em;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4em;
}
.product .product-location {
  padding-top: 0.075em;
  font-family: "din-condensed-web", Helvetica Neue, Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  margin: 0;
  font-size: 14px;
  font-weight: bold;
}
.product .product-price {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.4em;
  margin: 0;
}
.product .heading_group-flex_wrap {
  display: flex;
  justify-content: space-between;
}
.product .toggle {
  padding: 10px 0;
  border-top: 2px solid #e8e8e8;
  border-bottom: 2px solid #e8e8e8;
  text-align: center;
  font-size: 0;
}
.product .toggle-link {
  text-transform: uppercase;
  letter-spacing: 0.025em;
  position: relative;
  display: inline-block;
  width: 50%;
  padding: 7px 15px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1em;
  color: #28190e;
}
.product .toggle-link:hover, .product .toggle-link.is-active {
  color: #c2976a;
}
.product .toggle-item {
  display: none;
}
.product .toggle-item.is-active {
  display: block;
}
.product .toggle-item .details {
  display: table;
  width: 100%;
  margin-top: -2px;
  overflow: hidden;
  font-size: 0;
  margin-bottom: 0;
}
.product .toggle-item .detail {
  position: relative;
  padding: 25px 15px;
  font-size: 16px;
}
.product .toggle-item .detail:before {
  position: absolute;
  top: 0;
  right: -100%;
  left: 0;
  content: "";
  height: 2px;
  background: #e8e8e8;
}
@media only screen and (min-width: 401px) {
  .product .toggle-item .detail {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    padding: 30px 25px;
  }
}
.product .toggle-item h4 {
  padding-top: 0.075em;
  font-family: "din-condensed-web", Helvetica Neue, Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  margin-bottom: 0.25em;
  font-size: 1em;
}
.product .toggle-item p {
  margin-bottom: 0.75em;
  font-size: 14px;
  line-height: 1.4;
}

#page-wrapper ul, #page-wrapper ol {
  margin: 15px 0;
}
#page-wrapper ul {
  list-style-type: disc;
}
#page-wrapper ol {
  list-style-type: decimal;
}
#page-wrapper .subheader {
  position: fixed;
  top: 70px;
  right: 0;
  left: 0;
  z-index: 200;
  background-color: #f9f9f9;
}
#page-wrapper .subheader nav {
  text-align: center;
  overflow: hidden;
  border-bottom: 1px solid #ececec;
}
#page-wrapper .subheader ul {
  height: auto !important;
  font-size: 0;
  margin: 7px 0;
}
#page-wrapper .subheader ul li {
  display: inline-block;
  vertical-align: middle;
  padding: 0 20px;
  border-left: 1px solid #e8e8e8;
  font-size: 16px;
}
#page-wrapper .subheader ul li:first-child {
  border: none;
}
#page-wrapper .subheader ul li a {
  font-family: "din-condensed-web", Helvetica Neue, Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  padding: 5px;
  font-size: 1em;
  line-height: 2em;
  color: #3b2314;
}
#page-wrapper .subheader ul li a:hover, #page-wrapper .subheader ul li a.active {
  color: #c2976a;
}
