@charset "UTF-8";

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */

html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */

[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */

a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */

input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 2 */
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* required for fonts, used in Ewing */

/* ------------------------------------ *\
    $VARIABLES
\* ------------------------------------ */

@font-face {
  font-family: 'Founders Grotesk';
  src: url(../fonts/founders-grotesk-web-regular.eot);
  src: url(../fonts/founders-grotesk-web-regular.eot) format("embedded-opentype"), url(../fonts/founders-grotesk-web-regular.woff2) format("woff2"), url(../fonts/founders-grotesk-web-regular.woff) format("woff");
  font-weight: normal;
}

@font-face {
  font-family: 'Founders Grotesk';
  src: url(../fonts/founders-grotesk-web-medium.eot);
  src: url(../fonts/founders-grotesk-web-medium.eot) format("embedded-opentype"), url(../fonts/founders-grotesk-web-medium.woff2) format("woff2"), url(../fonts/founders-grotesk-web-medium.woff) format("woff");
  font-weight: 500;
}

@font-face {
  font-family: 'Founders Grotesk';
  src: url(../fonts/founders-grotesk-web-semibold.eot);
  src: url(../fonts/founders-grotesk-web-semibold.eot) format("embedded-opentype"), url(../fonts/founders-grotesk-web-semibold.woff2) format("woff2"), url(../fonts/founders-grotesk-web-semibold.woff) format("woff");
  font-weight: bold;
}

@font-face {
  font-family: 'Financier Display';
  src: url(../fonts/financier-display-web-regular.eot);
  src: url(../fonts/financier-display-web-regular.eot) format("embedded-opentype"), url(../fonts/financier-display-web-regular.woff2) format("woff2"), url(../fonts/financier-display-web-regular.woff) format("woff");
}

@font-face {
  font-family: 'Financier Display';
  src: url(../fonts/financier-display-web-medium.eot);
  src: url(../fonts/financier-display-web-medium.eot) format("embedded-opentype"), url(../fonts/financier-display-web-medium.woff2) format("woff2"), url(../fonts/financier-display-web-medium.woff) format("woff");
  font-weight: 500;
}

@font-face {
  font-family: 'Financier Display';
  src: url(../fonts/financier-display-web-bold.eot);
  src: url(../fonts/financier-display-web-bold.eot) format("embedded-opentype"), url(../fonts/financier-display-web-bold.woff2) format("woff2"), url(../fonts/financier-display-web-bold.woff) format("woff");
  font-weight: bold;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-regular.eot);
  src: url(../fonts/financier-text-web-regular.eot) format("embedded-opentype"), url(../fonts/financier-text-web-regular.woff2) format("woff2"), url(../fonts/financier-text-web-regular.woff) format("woff");
  font-weight: normal;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-regular-italic.eot);
  src: url(../fonts/financier-text-web-regular-italic.eot) format("embedded-opentype"), url(../fonts/financier-text-web-regular-italic.woff2) format("woff2"), url(../fonts/financier-text-web-regular-italic.woff) format("woff");
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-medium.eot);
  src: url(../fonts/financier-text-web-medium.eot) format("embedded-opentype"), url(../fonts/financier-text-web-medium.woff2) format("woff2"), url(../fonts/financier-text-web-medium.woff) format("woff");
  font-weight: 500;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-medium-italic.eot);
  src: url(../fonts/financier-text-web-medium-italic.eot) format("embedded-opentype"), url(../fonts/financier-text-web-medium-italic.woff2) format("woff2"), url(../fonts/financier-text-web-medium-italic.woff) format("woff");
  font-weight: 500;
  font-style: italic;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-bold.eot);
  src: url(../fonts/financier-text-web-bold.eot) format("embedded-opentype"), url(../fonts/financier-text-web-bold.woff2) format("woff2"), url(../fonts/financier-text-web-bold.woff) format("woff");
  font-weight: bold;
}

:root {
  --spacing-base: 1rem;
  --spacing-small: 0.5rem;
  --spacing-large: 2rem;
  --line-height-base: 100%;
  --line-height-med: 110%;
  --line-height-large: 125%;
  --padding-desktop: 80px;
  --padding-mobile: 40px;
  --padding-desktop-l: 120px;
  --padding-mobile-l: 60px;
  /**
  * 100% positioning outside of parent
  * @link  https://stackoverflow.com/questions/23367345/100vw-causing-horizontal-overflow-but-only-if-more-than-one
  */
  --vw: 1vw;
}

@media screen and (min-width: 1024px) {
  :root {
    --max-width: 1200px;
  }
}

/**
 * Default Spacing/Padding
 * Maintain a spacing system divisible by 10
 */

/**
 * Animation
 */

/* ------------------------------------ *\
    $VARIABLES
\* ------------------------------------ */

@font-face {
  font-family: 'Founders Grotesk';
  src: url(../fonts/founders-grotesk-web-regular.eot);
  src: url(../fonts/founders-grotesk-web-regular.eot) format("embedded-opentype"), url(../fonts/founders-grotesk-web-regular.woff2) format("woff2"), url(../fonts/founders-grotesk-web-regular.woff) format("woff");
  font-weight: normal;
}

@font-face {
  font-family: 'Founders Grotesk';
  src: url(../fonts/founders-grotesk-web-medium.eot);
  src: url(../fonts/founders-grotesk-web-medium.eot) format("embedded-opentype"), url(../fonts/founders-grotesk-web-medium.woff2) format("woff2"), url(../fonts/founders-grotesk-web-medium.woff) format("woff");
  font-weight: 500;
}

@font-face {
  font-family: 'Founders Grotesk';
  src: url(../fonts/founders-grotesk-web-semibold.eot);
  src: url(../fonts/founders-grotesk-web-semibold.eot) format("embedded-opentype"), url(../fonts/founders-grotesk-web-semibold.woff2) format("woff2"), url(../fonts/founders-grotesk-web-semibold.woff) format("woff");
  font-weight: bold;
}

@font-face {
  font-family: 'Financier Display';
  src: url(../fonts/financier-display-web-regular.eot);
  src: url(../fonts/financier-display-web-regular.eot) format("embedded-opentype"), url(../fonts/financier-display-web-regular.woff2) format("woff2"), url(../fonts/financier-display-web-regular.woff) format("woff");
}

@font-face {
  font-family: 'Financier Display';
  src: url(../fonts/financier-display-web-medium.eot);
  src: url(../fonts/financier-display-web-medium.eot) format("embedded-opentype"), url(../fonts/financier-display-web-medium.woff2) format("woff2"), url(../fonts/financier-display-web-medium.woff) format("woff");
  font-weight: 500;
}

@font-face {
  font-family: 'Financier Display';
  src: url(../fonts/financier-display-web-bold.eot);
  src: url(../fonts/financier-display-web-bold.eot) format("embedded-opentype"), url(../fonts/financier-display-web-bold.woff2) format("woff2"), url(../fonts/financier-display-web-bold.woff) format("woff");
  font-weight: bold;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-regular.eot);
  src: url(../fonts/financier-text-web-regular.eot) format("embedded-opentype"), url(../fonts/financier-text-web-regular.woff2) format("woff2"), url(../fonts/financier-text-web-regular.woff) format("woff");
  font-weight: normal;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-regular-italic.eot);
  src: url(../fonts/financier-text-web-regular-italic.eot) format("embedded-opentype"), url(../fonts/financier-text-web-regular-italic.woff2) format("woff2"), url(../fonts/financier-text-web-regular-italic.woff) format("woff");
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-medium.eot);
  src: url(../fonts/financier-text-web-medium.eot) format("embedded-opentype"), url(../fonts/financier-text-web-medium.woff2) format("woff2"), url(../fonts/financier-text-web-medium.woff) format("woff");
  font-weight: 500;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-medium-italic.eot);
  src: url(../fonts/financier-text-web-medium-italic.eot) format("embedded-opentype"), url(../fonts/financier-text-web-medium-italic.woff2) format("woff2"), url(../fonts/financier-text-web-medium-italic.woff) format("woff");
  font-weight: 500;
  font-style: italic;
}

@font-face {
  font-family: 'Financier Text';
  src: url(../fonts/financier-text-web-bold.eot);
  src: url(../fonts/financier-text-web-bold.eot) format("embedded-opentype"), url(../fonts/financier-text-web-bold.woff2) format("woff2"), url(../fonts/financier-text-web-bold.woff) format("woff");
  font-weight: bold;
}

:root {
  --spacing-base: 1rem;
  --spacing-small: 0.5rem;
  --spacing-large: 2rem;
  --line-height-base: 100%;
  --line-height-med: 110%;
  --line-height-large: 125%;
  --padding-desktop: 80px;
  --padding-mobile: 40px;
  --padding-desktop-l: 120px;
  --padding-mobile-l: 60px;
  /**
  * 100% positioning outside of parent
  * @link  https://stackoverflow.com/questions/23367345/100vw-causing-horizontal-overflow-but-only-if-more-than-one
  */
  --vw: 1vw;
}

@media screen and (min-width: 1024px) {
  :root {
    --max-width: 1200px;
  }
}

/**
 * Default Spacing/Padding
 * Maintain a spacing system divisible by 10
 */

/**
 * Animation
 */

/**
 * Layout containers - keep content centered and within a maximum width. Also
 * adjusts left and right padding as the viewport widens.
 */

.l-container {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: var(--max-width, 1200px);
}

.l-container--s {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: 740px;
}

.l-container--m {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: 782px;
}

.l-container--ml {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: 988px;
}

.l-container--l {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: 1000px;
}

.l-container--xl {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: 1278px;
}

.l-container--full {
  width: calc(var(--vw, 1vw) * 100);
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: calc(var(--vw, 1vw) * -50);
  margin-right: calc(var(--vw, 1vw) * -50);
  z-index: 2;
}

.has-sidebar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

@media (min-width: 769px) {
  .has-sidebar {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.has-sidebar > *:not(aside) {
  width: 100%;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media (min-width: 769px) {
  .has-sidebar > *:not(aside) {
    width: calc(100% - (300px));
  }
}

.has-sidebar > aside {
  width: 100%;
}

@media (min-width: 769px) {
  .has-sidebar > aside {
    margin-left: calc($space * 2);
    min-width: 300px;
    max-width: 300px;
  }
}

@media (min-width: 1201px) {
  .has-sidebar > aside {
    margin-left: 150px;
  }
}

/* Block Options Mixins */

/* Utilities */

/*
Make elements full width of the screen
when inside of .container (or other element w padded container mixin)
*/

/* ------------------------------------ *\
    $VARIABLES
\* ------------------------------------ */

/** REQUIRED STEP - FONT FACES (see wp-directory) must be loaded in the parent project **/

/**
 * Icons.
 */

/**
 * Theme Colors
 */

/**
 * Default Colors
 */

/**
 * Style Colors
 */

/**
 * Typography
 */

/**
 * Common Breakpoints
 */

/**
 * Animation
 */

/**
 * Border Styles
 */

/**
 * Default Spacing/Padding
 * Maintain a spacing system divisible by 10
 */

/**
 * Font Sizes
 */

:root {
  --body-font-size: 20px;
  --font-size-xxxs: 14px;
  --font-size-xxs: 16px;
  --font-size-xs: 18px;
  --font-size-s: 22px;
  --font-size-sm: 24px;
  --font-size-m: 26px;
  --font-size-ml: 26px;
  --font-size-l: 30px;
  --font-size-xl: 36px;
  --font-size-xxl: 42px;
  --font-size-xxxl: 67px;
  --gutter: 40px;
}

@media screen and (min-width: 768px) {
  :root {
    --font-size-xxl: 52px;
    --font-size-xxxl: 130px;
    --gutter: 25px;
  }
}

@media screen and (min-width: 1024px) {
  :root {
    --body-font-size: 20px;
    --font-size-xxxs: 14px;
    --font-size-xxs: 16px;
    --font-size-xs: 20px;
    --font-size-s: 24px;
    --font-size-sm: 32px;
    --font-size-m: 36px;
    --font-size-ml: 40px;
    --font-size-l: 56px;
    --font-size-xl: 62px;
    --font-size-xxl: 72px;
    --font-size-xxxl: 176px;
    --max-width: 1200px;
  }
}

@media screen and (min-width: 1600px) {
  :root {
    --max-width: 1600px;
  }
}

/**
 * Max width.
 */

/**
 * Grid.
 */

/**
 * Letter spacing.
 */

/**
 * Line height.
 */

/**
 * Theme variables.
 */

/**
 * 100% positioning outside of parent
 * @link  https://stackoverflow.com/questions/23367345/100vw-causing-horizontal-overflow-but-only-if-more-than-one
 */

:root {
  --vw: 1vw;
}

/**
 * Grab all levels of a font in the font-scale
 *
 * @param {String} $name - Name of the font-scale matrix (eg: headline)
 * @param {Map} $font-scale ($font-scale)
 *
 * @example
 *  font-size: get-scale(header);
 *
 * @requires {variable} $font-scale
 *
 * @return {Map}
 *
 * @group typography
 */

/**
 * Grab info for a particular level of a font-scale
 *
 * @param {String} $name - Name of the font-scale in the matrix (eg: headline)
 * @param {Number} $level - Level in the matrix
 * @param {Map} $font-scale ($font-scale)
 *
 * @example
 *  font-size: get-scale-level(header, 1);
 *
 * @requires {variable} $font-scale
 * @requires {function} get-scale
 *
 * @return {Map}
 *
 * @group typography
 */

/**
 * Get a font-size for a level in the font-scale matrix
 *
 * @param {String} $name - Name of the font-scale in the matrix (eg: headline)
 * @param {Number} $level - Level in the matrix
 * @param {Map} $font-scale - Configuration
 *
 * @example
 *  font-size: get-font-size(header, 3);
 *
 * @requires {variable} $font-scale
 * @requires {function} get-scale-level
 *
 * @return {Number}
 *
 * @group typography
 */

/**
 * Get a line-height for a level in the font-scale matrix
 *
 * @param {String} $name - Name of the font-scale in the matrix (eg: headline)
 * @param {Number} $level - Level in the matrix
 * @param {Map} $font-scale - Configuration
 *
 * @example
 *  font-size: get-line-height(header, 3);
 *
 * @requires {variable} $font-scale
 * @requires {function} get-scale-level
 *
 * @return {Number}
 *
 * @group typography
 */

/**
 * Get a letter-spacing for a level in the font-scale matrix
 *
 * @param {String} $name - Name of the font-scale in the matrix (eg: headline)
 * @param {Number} $level - Level in the matrix
 * @param {Map} $font-scale - Configuration
 *
 * @example
 *  letter-spacing: get-letter-spacing(header, 3);
 *
 * @requires {variable} $font-scale
 * @requires {function} get-scale-level
 *
 * @return {Number}
 *
 * @group typography
 */

/**
 * Get a responsive-level for a level in the font-scale matrix
 *
 * @param {String} $name - Name of the font-scale in the matrix (eg: headline)
 * @param {Number} $level - Level in the matrix
 * @param {Map} $font-scale - Configuration
 *
 * @requires {variable} $font-scale
 * @requires {function} get-scale-level
 *
 * @return {Number}
 *
 * @group typography
 */

/**
 * Default typography settings, to be included as soon as possible in the HTML
 * Make type rendering look crisper
 *
 * @param {String} $font-family ($f-serif-text) - Default global font
 *
 * @requires {variable} $f-serif-text
 *
 * @group typography
 */

/**
 * Font-size and line-height shorthand
 *
 * @param {Number} $size
 * @param {Number} $line-height
 *
 * @example
 *  @include font-size(18, 24);
 *
 * @group typography
 */

/**
 * Letter-spacing and Uppercase text shorthand
 * uc stands for UpperCase
 *
 * @param {Number} $letter-spacing
 *
 * @example
 *  @include font-caps(2em);
 *
 * @group typography
 */

/**
 * Header family and weight properties.
 *
 * @requires {variable} $chronicle-disp-cond
 *
 * @group typography
 */

/**
 * replaces font(name)
 */

/**
 * Header typography settings.
 * TKTK fix these docs
 *
 * @param {Number} $level
 * @param {Boolean} $size-only
 * @param {Boolean} $caps
 *
 * @example
 *  // Output all properties, lowercase
 *  (font-size, line-height, family, weight)
 *  @include fs-header(3);
 *
 *  // Output all properties, uppercase
 *  (font-size, line-height, family, weight, letter-spacing, text-transform)
 *  @include fs-header(3, $caps: true);
 *
 *  // Output font-size and line-height only
 *  @include fs-header(3, $size-only: true);
 *
 * @requires {function} get-font-size
 * @requires {function} get-line-height
 * @requires {function} get-letter-spacing
 * @requires {mixin} font-size
 * @requires {mixin} font-caps
 * @requires {mixin} f-header
 *
 * @group typography
 */

/**
 * Breakpoints
 *
 * THERE ARE ALSO SEPERATELY MAINTAINED JS AND PHP BREAKPOINTS
 * @see main.js
 * @see class-contants.php
 *
 * @todo dry breakopints: https://css-tricks.com/keeping-breakpoints-dry/
 * @todo use breakpoint library instead? these are a bit restrictive
 *
 * @param {string} $size 
 * 
 * @example 
 *  @include breakpoint(large-only) { @content; }
 *
 * @group layout
 *
 */

/**
 * Unstyle List
 */

.hs-error-msgs,
.pagination__numbers,
.in-this-post__items,
.w-directory-search__filter,
.search-dropdown__list,
.dir-facet__content li,
.dir-categories,
.dir-card__categories,
.dir-dirHits li,
.dir-info__item,
.dir-blocks--2 li,
.dir-locations ul,
.w-toggler__background__slides,
.toggler__list__items,
.ws-list__items {
  list-style-type: none;
  padding-left: 0;
}

/**
 * Included in title box, but separated so can give styling to content w/o using the full title-box
 * @requires {function} gutter (susy)
 */

/**
 * Background and indent of title box, broken out into a mixin so can be included with or without a breakpoint in the tile-box mixin
 * @param {number} $opacity
 * @param {bool} $indent - if true, box recedes up into the image
 * @requires {function} gutter (susy)
 */

/**
 * White Box often used with featured content blocks to display title, desc, etc
 *
 * @param {number} $opacity
 * @param {string} $size
 *      span - use span-breakpoint
 *      width - use max-width
 * @param {bool} $indent - if true, box recedes up into the image
 * @param {string} $breakpoint - breakpoint in which the box recedes and has a background color
 *
 * @requires {mixin} breakpoint
 * @requires {mixin} span-breakpoint
 * @requires {mixin} center-block
 * @requires {mixin} title-box-inc
 * @requires {mixin} title-box-breakpoint-inc
 * @requires {function} gutter (susy)
 *
 */

/**
 * Content with fixed ratio that is never wider or taller than the browser window
 *
 * @param {number} $x
 * @param {number} $y
 *
 * @example
 *  @include viewport-ratio(3, 2);
 *
 */

/*
 * Content with fixed ratio
 *
 * @param {number} $x
 * @param {number} $y
 *
 * @example
 *  @include aspect-ratio(3, 2);
 *
 */

/*
 * Horizontally center display-block content
 */

/*
 * Horizontally and vertically center absolutely-positioned content
 */

/*
 * Position background image so that on small screens it maintains a specific aspect ratio
 *
 * @requires {mixin} breakpoint
 * @requires {mixin} viewport-ratio
 * @requires {mixin} center-block
 *
 */

/*
 * Wrapper for content that will be horizontally-scrolled
 */

/*
 * Horizontally-scrolled content
 */

/*
 * Transitions - used to help keep them consistent
 *
 * @param {string} $prop - property that transition is being applied to
 * @param {number} $transition-time - length of transition
 * @example
 *  @include transition(opacity);
 *
 */

/*
 * Opacity with support for IE8
 *
 * @param {Number} $opacity
 */

/*
 * Clearfix
 */

.container:after,
.container--full:after,
.button-group:after,
.adunit:not(.adunit--native):after,
.in-this-post__item:after,
.widget:after,
.widget__header:after,
.w-directory-search__buttons:after,
.w-directory-search__filters:after,
.w-cta:after,
.dir-body:after,
.dir-top-shelf:after,
.dir-pagination-wrapper:after,
.dir-stats:after,
.dir-cards-outer:after,
.dir-card__wrapper:after,
.dir-block:after,
.calendar__day:after,
.calendar__block:after {
  content: "";
  display: table;
  clear: both;
}

/*
 * On hover, change opacity
 * @param {number} $opacity
 */

a.category,
a.kicker,
a.byline,
a.kicker--secondary,
a.dir-card__price,
a.dir-card__dates,
a.dir-category,
a.dir-card__category,
a.dir-block__item-title,
a.story__info__item,
a.w-directory-search__filter,
a.card__social__link {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

a.category:hover,
a.kicker:hover,
a.byline:hover,
a.kicker--secondary:hover,
a.dir-card__price:hover,
a.dir-card__dates:hover,
a.dir-category:hover,
a.dir-card__category:hover,
a.dir-block__item-title:hover,
a.story__info__item:hover,
a.w-directory-search__filter:hover,
a.card__social__link:hover {
  opacity: 0.5;
}

.category a,
.card--story.card--story h2 a,
.kicker a,
.byline a,
.kicker--secondary a,
.dir-card__price a,
.dir-card__dates a,
.dir-category a,
.dir-card__category a,
.dir-block__item-title a,
.story__info__item a,
.w-directory-search__filter a,
.card__social__link a {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.category a:hover,
.card--story.card--story h2 a:hover,
.kicker a:hover,
.byline a:hover,
.kicker--secondary a:hover,
.dir-card__price a:hover,
.dir-card__dates a:hover,
.dir-category a:hover,
.dir-card__category a:hover,
.dir-block__item-title a:hover,
.story__info__item a:hover,
.w-directory-search__filter a:hover,
.card__social__link a:hover {
  opacity: 0.5;
}

.dir-card__sponsored:hover,
.dir-scroller-item:hover .w-stories__title,
.dir-scroller-item:hover .w-stories__item.card--sponsored .card__title,
.w-stories__item.card--sponsored .dir-scroller-item:hover .card__title,
.dir-scroller-item:hover .w-stories__item.card--house .card__title,
.w-stories__item.card--house .dir-scroller-item:hover .card__title,
.ws-list__item-link:hover .ws-list__title,
.ws-list__title:hover,
.block__content.is-active .block__title,
.block__image-wrapper:hover ~ .block__content .block__title,
.block__title:hover {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

/**
 * Break long words so they fit inside their container.
 * Use hyphens if browser supported
 *
 * @see https://css-tricks.com/snippets/css/prevent-long-urls-from-breaking-out-of-container/
 */

/* If this function is imported, you can import scss files using:
   @if not-imported("your-file") { @import "your-file"; }
   https://paul.wellnerbou.de/2015/05/18/avoid-multiple-imports-of-the-same-scss-file-with-sass/
*/

/** 
 * Padding at medium breakpoint
 *
 * @param {bool} $breakpoint
 * @requires {variable} $padding__medium
 * @requires {mixin} breakpoint
 * @returns padding for containers at the medium breakpoint
 */

/** 
 * Padding at small breakpoint
 *
 * @param {bool} $breakpoint
 * @requires {variable} $padding__small
 * @requires {mixin} breakpoint
 * @returns padding for containers at the small breakpoint
 */

/**
 * Susy Container Extension
 * Include padding options and breakpoints with susy's container mixins
 *
 * @param {bool} $pad [true] - determines whether or not container has padding
 *
 * @requires {mixin} container
 * @requires {mixin} with-layout
 *
 * @requires {mixin} breakpoint
 * @requires {mixin} padding__medium
 * @requires {mixin} padding__small
 * @requires {variable} $susy_medium
 * @requires {variable} $susy_small
 * 
 * @group layout-susy
 *
*/

.is-hidden {
  position: absolute !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  width: 1px !important;
  margin: -1px;
  padding: 0 !important;
  border: 0 !important;
}

@media (min-width: 1024px) {
  .is-hidden--large-only {
    position: absolute !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    width: 1px !important;
    margin: -1px;
    padding: 0 !important;
    border: 0 !important;
  }
}

@media (min-width: 580px) {
  .is-hidden--large_medium {
    position: absolute !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    width: 1px !important;
    margin: -1px;
    padding: 0 !important;
    border: 0 !important;
  }
}

@media (max-width: 1024px) {
  .is-hidden--medium_small,
  .page--story .widget--sidebar {
    position: absolute !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    width: 1px !important;
    margin: -1px;
    padding: 0 !important;
    border: 0 !important;
  }
}

@media (max-width: 580px) {
  .is-hidden--small-only {
    position: absolute !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    width: 1px !important;
    margin: -1px;
    padding: 0 !important;
    border: 0 !important;
  }
}

.is-invisible {
  opacity: 0 !important;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.is-gone {
  display: none !important;
}

@media (min-width: 1024px) {
  .is-gone--large-only {
    display: none !important;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .is-gone--medium-only {
    display: none !important;
  }
}

@media (max-width: 580px) {
  .is-gone--small-only {
    display: none !important;
  }
}

@media (min-width: 580px) {
  .is-gone--large_medium {
    display: none !important;
  }
}

@media (max-width: 1024px) {
  .is-gone--medium_small {
    display: none !important;
  }
}

/**
 * z-index
 */

@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .container {
    padding-left: 25px;
    padding-right: 25px;
  }
}

@media (max-width: 580px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.container--full {
  position: relative;
}

@media (min-width: 1024px) {
  .container--full {
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
  }
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body,
html {
  overflow-x: hidden;
}

body {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5 {
  margin: 0;
}

a {
  text-decoration: none;
  color: inherit;
}

dl {
  list-style-type: none;
  margin: 0;
}

ul,
dl {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-padding-start: 0;
  padding-left: 0;
}

dd {
  -webkit-margin-start: 0;
  margin-left: 0;
}

button {
  border: 0;
  -webkit-box-shadow: 0;
          box-shadow: 0;
  background: none;
}

#tinymce a {
  text-decoration: underline;
}

a.no-link-style.no-link-style {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
}

a.no-link-style.no-link-style:hover {
  color: inherit;
}

html {
  font-family: "Founders Grotesk", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

::-moz-selection {
  background: #999999;
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  color: white;
}

::selection {
  background: #999999;
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  color: white;
}

::-moz-selection:hover {
  color: inherit;
}

::selection:hover {
  color: inherit;
}

.header,
.widget__title {
  font-size: 24px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 200;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  letter-spacing: 0.0625em;
}

.header-sans {
  font-size: 68px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: -0.06em;
}

@media (max-width: 580px) {
  .header-sans {
    font-size: 42px;
    line-height: 1.2;
    letter-spacing: -0.03em;
  }
}

.headline {
  font-size: 36px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 600;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .headline {
    font-size: 27px;
    line-height: 1.3;
    letter-spacing: 0;
  }
}

.category,
.card--story.card--story h2,
.kicker {
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  color: #ff291c;
  margin-bottom: 0.3em;
}

.byline,
.kicker--secondary,
.dir-card__price,
.dir-card__dates,
.dir-category,
.dir-card__category,
.dir-block__item-title {
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  color: #828282;
}

.subhead {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.subhead--big {
  font-size: 18px;
  line-height: 1.3;
  font-family: "Financier Display", serif;
  font-weight: 200;
  letter-spacing: 0.05em;
}

.image-caption,
.story__image-caption,
.wp-caption-text {
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0.025em;
  color: #999999;
}

.image-caption__credit {
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0.025em;
  font-style: italic;
  display: block;
}

.button--outline--white-blue.button--outline--white-blue,
.w-gallery--blue .w-gallery__button a {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: 1px solid;
  border-color: white;
  background: #ff291c;
  color: white;
}

.button--outline--white-blue.button--outline--white-blue:hover,
.w-gallery--blue .w-gallery__button a:hover {
  color: inherit;
}

.button--outline--white-blue,
.w-gallery--blue .w-gallery__button a,
.button--outline--white-gray,
.button--outline--red,
.button--outline--blue,
.w-gallery--light .w-gallery__button a,
.w-gallery--dark .w-gallery__button a,
.button--outline--white,
.button--outline--gray,
.button--blue,
.button--red,
.hbspt-form input[type="submit"],
.button--black,
.button--white,
.button--gray {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border-radius: 0;
  padding: 0.8rem 1rem;
  -webkit-transition: all 0.1s;
  -o-transition: all 0.1s;
  transition: all 0.1s;
  display: inline-block;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.button--outline--white-blue:hover,
.w-gallery--blue .w-gallery__button a:hover,
.button--outline--white-gray:hover,
.button--outline--red:hover,
.button--outline--blue:hover,
.w-gallery--light .w-gallery__button a:hover,
.w-gallery--dark .w-gallery__button a:hover,
.button--outline--white:hover,
.button--outline--gray:hover,
.button--blue:hover,
.button--red:hover,
.hbspt-form input:hover[type="submit"],
.button--black:hover,
.button--white:hover,
.button--gray:hover {
  color: inherit;
}

.button--outline--white-blue:hover,
.w-gallery--blue .w-gallery__button a:hover,
.button--outline--white-gray:hover,
.button--outline--red:hover,
.button--outline--blue:hover,
.w-gallery--light .w-gallery__button a:hover,
.w-gallery--dark .w-gallery__button a:hover,
.button--outline--white:hover,
.button--outline--gray:hover,
.button--blue:hover,
.button--red:hover,
.hbspt-form input:hover[type="submit"],
.button--black:hover,
.button--white:hover,
.button--gray:hover {
  cursor: pointer;
  -webkit-transition: all 0.1s;
  -o-transition: all 0.1s;
  transition: all 0.1s;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.button--outline--white-blue.button--outline--white-blue:visited,
.w-gallery--blue .w-gallery__button a:visited {
  color: white;
}

.button--outline--white-blue.button--outline--white-blue:hover,
.w-gallery--blue .w-gallery__button a:hover,
.button--outline--white-blue.button--outline--white-blue:active,
.w-gallery--blue .w-gallery__button a:active,
.button--outline--white-blue.button--outline--white-blue:focus,
.w-gallery--blue .w-gallery__button a:focus {
  background: white;
  color: #ff291c;
  border-color: white;
}

.button--outline--white-gray.button--outline--white-gray {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: 1px solid;
  border-color: white;
  background: #333333;
  color: white;
}

.button--outline--white-gray.button--outline--white-gray:hover {
  color: inherit;
}

.button--outline--white-gray.button--outline--white-gray:visited {
  color: white;
}

.button--outline--white-gray.button--outline--white-gray:hover,
.button--outline--white-gray.button--outline--white-gray:active,
.button--outline--white-gray.button--outline--white-gray:focus {
  background: white;
  color: #333333;
  border-color: white;
}

.button--outline--red.button--outline--red {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: 1px solid;
  border-color: #ff291c;
  background: transparent;
  color: #ff291c;
}

.button--outline--red.button--outline--red:hover {
  color: inherit;
}

.button--outline--red.button--outline--red:visited {
  color: #ff291c;
}

.button--outline--red.button--outline--red:hover,
.button--outline--red.button--outline--red:active,
.button--outline--red.button--outline--red:focus {
  background: #ff291c;
  color: white;
  border-color: #ff291c;
}

.button--outline--blue.button--outline--blue,
.w-gallery--light .w-gallery__button a,
.w-gallery--dark .w-gallery__button a {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: 1px solid;
  border-color: #ff291c;
  background: transparent;
  color: #ff291c;
}

.button--outline--blue.button--outline--blue:hover,
.w-gallery--light .w-gallery__button a:hover,
.w-gallery--dark .w-gallery__button a:hover {
  color: inherit;
}

.button--outline--blue.button--outline--blue:visited,
.w-gallery--light .w-gallery__button a:visited,
.w-gallery--dark .w-gallery__button a:visited {
  color: #ff291c;
}

.button--outline--blue.button--outline--blue:hover,
.w-gallery--light .w-gallery__button a:hover,
.w-gallery--dark .w-gallery__button a:hover,
.button--outline--blue.button--outline--blue:active,
.w-gallery--light .w-gallery__button a:active,
.w-gallery--dark .w-gallery__button a:active,
.button--outline--blue.button--outline--blue:focus,
.w-gallery--light .w-gallery__button a:focus,
.w-gallery--dark .w-gallery__button a:focus {
  background: #ff291c;
  color: white;
  border-color: #ff291c;
}

.button--outline--white.button--outline--white {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: 1px solid;
  border-color: white;
  background: transparent;
  color: white;
}

.button--outline--white.button--outline--white:hover {
  color: inherit;
}

.button--outline--white.button--outline--white:visited {
  color: white;
}

.button--outline--white.button--outline--white:hover,
.button--outline--white.button--outline--white:active,
.button--outline--white.button--outline--white:focus {
  background: white;
  color: #000000;
  border-color: white;
}

.button--outline--gray {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: 1px solid;
  border-color: #c6c6c6;
  background: transparent;
  color: #c6c6c6;
}

.button--outline--gray:hover {
  color: inherit;
}

.button--outline--gray:visited {
  color: #c6c6c6;
}

.button--outline--gray:hover,
.button--outline--gray:active,
.button--outline--gray:focus {
  background: #c6c6c6;
  color: white;
  border-color: #c6c6c6;
}

.button--blue.button--blue {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: none;
  background: #ff291c;
  color: white;
}

.button--blue.button--blue:hover {
  color: inherit;
}

.button--blue.button--blue:visited {
  color: white;
}

.button--blue.button--blue:hover,
.button--blue.button--blue:active,
.button--blue.button--blue:focus {
  background: #cf0c00;
  color: white;
}

.button--red.button--red,
.hbspt-form input[type="submit"] {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: none;
  background: #ff291c;
  color: white;
}

.button--red.button--red:hover,
.hbspt-form input:hover[type="submit"] {
  color: inherit;
}

.button--red.button--red:visited,
.hbspt-form input:visited[type="submit"] {
  color: white;
}

.button--red.button--red:hover,
.hbspt-form input:hover[type="submit"],
.button--red.button--red:active,
.hbspt-form input:active[type="submit"],
.button--red.button--red:focus,
.hbspt-form input:focus[type="submit"] {
  background: #cf0c00;
  color: white;
}

.button--black.button--black {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: none;
  background: rgba(26, 26, 26, 0.8);
  color: white;
}

.button--black.button--black:hover {
  color: inherit;
}

.button--black.button--black:visited {
  color: white;
}

.button--black.button--black:hover,
.button--black.button--black:active,
.button--black.button--black:focus {
  background: rgba(0, 0, 0, 0.8);
  color: white;
}

.button--white.button--white {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: none;
  background: white;
  color: #000000;
}

.button--white.button--white:hover {
  color: inherit;
}

.button--white.button--white:visited {
  color: #000000;
}

.button--white.button--white:hover,
.button--white.button--white:active,
.button--white.button--white:focus {
  background: #d9d9d9;
  color: #000000;
}

.button--gray {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  border: none;
  background: #dedede;
  color: #000000;
}

.button--gray:hover {
  color: inherit;
}

.button--gray:visited {
  color: #000000;
}

.button--gray:hover,
.button--gray:active,
.button--gray:focus {
  background: #b8b8b8;
  color: #000000;
}

.button--gray:hover {
  background: #ff291c;
  color: white;
}

.button--center {
  text-align: center;
}

.button--full {
  width: 100%;
  text-align: center;
}

.button--small {
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1;
}

.button--smaller {
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1;
}

.button--thin-type {
  font-size: 18px;
  line-height: 1.3;
  font-family: "Financier Display", serif;
  font-weight: 200;
  letter-spacing: 0.05em;
}

.button--thick-type {
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
}

.icon {
  display: inline-block;
  vertical-align: middle;
  width: 32px;
  height: 32px;
}

.icon path,
.icon g path,
.icon circle,
.icon rect,
.icon polyline,
.icon polygon,
.icon line {
  stroke-width: 2;
}

.icon--black .icon__accent.icon--stroke {
  stroke: white;
}

.icon--black .icon__accent.icon--fill {
  fill: white;
}

.icon--black .icon__accent.icon--switch {
  fill: white;
}

.icon--black .icon__main.icon--stroke {
  stroke: #000000;
}

.icon--black .icon__main.icon--fill {
  fill: #000000;
}

.icon--black .icon__main.icon--switch {
  fill: #000000;
}

.icon--mini {
  width: 12px;
  height: 12px;
}

.icon--mini path,
.icon--mini g path,
.icon--mini circle,
.icon--mini rect,
.icon--mini polyline,
.icon--mini polygon,
.icon--mini line {
  stroke-width: 7;
}

.icon--small,
.social-button .icon,
.dir-top-shelf__label-icon,
.card__comment-count .icon {
  width: 16px;
  height: 16px;
}

.icon--small path,
.social-button .icon path,
.dir-top-shelf__label-icon path,
.card__comment-count .icon path,
.icon--small g path,
.social-button .icon g path,
.dir-top-shelf__label-icon g path,
.card__comment-count .icon g path,
.icon--small circle,
.social-button .icon circle,
.dir-top-shelf__label-icon circle,
.card__comment-count .icon circle,
.icon--small rect,
.social-button .icon rect,
.dir-top-shelf__label-icon rect,
.card__comment-count .icon rect,
.icon--small polyline,
.social-button .icon polyline,
.dir-top-shelf__label-icon polyline,
.card__comment-count .icon polyline,
.icon--small polygon,
.social-button .icon polygon,
.dir-top-shelf__label-icon polygon,
.card__comment-count .icon polygon,
.icon--small line,
.social-button .icon line,
.dir-top-shelf__label-icon line,
.card__comment-count .icon line {
  stroke-width: 7;
}

.icon--medium,
.dir-dirFacet__icon {
  width: 24px;
  height: 24px;
}

.icon--medium path,
.dir-dirFacet__icon path,
.icon--medium g path,
.dir-dirFacet__icon g path,
.icon--medium circle,
.dir-dirFacet__icon circle,
.icon--medium rect,
.dir-dirFacet__icon rect,
.icon--medium polyline,
.dir-dirFacet__icon polyline,
.icon--medium polygon,
.dir-dirFacet__icon polygon,
.icon--medium line,
.dir-dirFacet__icon line {
  stroke-width: 3;
}

.icon--large {
  width: 64px;
  height: 64px;
}

.icon--large path,
.icon--large g path,
.icon--large circle,
.icon--large rect,
.icon--large polyline,
.icon--large polygon,
.icon--large line {
  stroke-width: 1;
}

.icon--blue .icon__accent.icon--stroke,
.widget__link__icon .icon__accent.icon--stroke,
.header--search__location-close .icon__accent.icon--stroke,
.dir-top-shelf__label-icon .icon__accent.icon--stroke,
.dir-facet__icon .icon__accent.icon--stroke,
.dir-card__title-wrapper:hover .icon .icon__accent.icon--stroke {
  stroke: white;
}

.icon--blue .icon__accent.icon--fill,
.widget__link__icon .icon__accent.icon--fill,
.header--search__location-close .icon__accent.icon--fill,
.dir-top-shelf__label-icon .icon__accent.icon--fill,
.dir-facet__icon .icon__accent.icon--fill,
.dir-card__title-wrapper:hover .icon .icon__accent.icon--fill {
  fill: white;
}

.icon--blue .icon__accent.icon--switch,
.widget__link__icon .icon__accent.icon--switch,
.header--search__location-close .icon__accent.icon--switch,
.dir-top-shelf__label-icon .icon__accent.icon--switch,
.dir-facet__icon .icon__accent.icon--switch,
.dir-card__title-wrapper:hover .icon .icon__accent.icon--switch {
  fill: white;
}

.icon--blue .icon__main.icon--stroke,
.widget__link__icon .icon__main.icon--stroke,
.header--search__location-close .icon__main.icon--stroke,
.dir-top-shelf__label-icon .icon__main.icon--stroke,
.dir-facet__icon .icon__main.icon--stroke,
.dir-card__title-wrapper:hover .icon .icon__main.icon--stroke {
  stroke: #ff291c;
}

.icon--blue .icon__main.icon--fill,
.widget__link__icon .icon__main.icon--fill,
.header--search__location-close .icon__main.icon--fill,
.dir-top-shelf__label-icon .icon__main.icon--fill,
.dir-facet__icon .icon__main.icon--fill,
.dir-card__title-wrapper:hover .icon .icon__main.icon--fill {
  fill: #ff291c;
}

.icon--blue .icon__main.icon--switch,
.widget__link__icon .icon__main.icon--switch,
.header--search__location-close .icon__main.icon--switch,
.dir-top-shelf__label-icon .icon__main.icon--switch,
.dir-facet__icon .icon__main.icon--switch,
.dir-card__title-wrapper:hover .icon .icon__main.icon--switch {
  fill: #ff291c;
}

.icon--red .icon__accent.icon--stroke,
.dropdown--search .icon__accent.icon--stroke,
.dir-dropdown .dropdown .icon__accent.icon--stroke {
  stroke: white;
}

.icon--red .icon__accent.icon--fill,
.dropdown--search .icon__accent.icon--fill,
.dir-dropdown .dropdown .icon__accent.icon--fill {
  fill: white;
}

.icon--red .icon__accent.icon--switch,
.dropdown--search .icon__accent.icon--switch,
.dir-dropdown .dropdown .icon__accent.icon--switch {
  fill: white;
}

.icon--red .icon__main.icon--stroke,
.dropdown--search .icon__main.icon--stroke,
.dir-dropdown .dropdown .icon__main.icon--stroke {
  stroke: #ff291c;
}

.icon--red .icon__main.icon--fill,
.dropdown--search .icon__main.icon--fill,
.dir-dropdown .dropdown .icon__main.icon--fill {
  fill: #ff291c;
}

.icon--red .icon__main.icon--switch,
.dropdown--search .icon__main.icon--switch,
.dir-dropdown .dropdown .icon__main.icon--switch {
  fill: #ff291c;
}

.icon--white .icon__accent.icon--stroke,
.social-buttons--style1 .icon .icon__accent.icon--stroke,
.social-buttons--style4 .icon .icon__accent.icon--stroke,
.social-buttons--style2 .icon .icon__accent.icon--stroke,
.dropdown--search-top .icon__accent.icon--stroke,
.dir-top-shelf__button--large.is-active .icon__accent.icon--stroke,
.is-open .dir-facet__icon .icon__accent.icon--stroke {
  stroke: #000000;
}

.icon--white .icon__accent.icon--fill,
.social-buttons--style1 .icon .icon__accent.icon--fill,
.social-buttons--style4 .icon .icon__accent.icon--fill,
.social-buttons--style2 .icon .icon__accent.icon--fill,
.dropdown--search-top .icon__accent.icon--fill,
.dir-top-shelf__button--large.is-active .icon__accent.icon--fill,
.is-open .dir-facet__icon .icon__accent.icon--fill {
  fill: #000000;
}

.icon--white .icon__accent.icon--switch,
.social-buttons--style1 .icon .icon__accent.icon--switch,
.social-buttons--style4 .icon .icon__accent.icon--switch,
.social-buttons--style2 .icon .icon__accent.icon--switch,
.dropdown--search-top .icon__accent.icon--switch,
.dir-top-shelf__button--large.is-active .icon__accent.icon--switch,
.is-open .dir-facet__icon .icon__accent.icon--switch {
  fill: #000000;
}

.icon--white .icon__main.icon--stroke,
.social-buttons--style1 .icon .icon__main.icon--stroke,
.social-buttons--style4 .icon .icon__main.icon--stroke,
.social-buttons--style2 .icon .icon__main.icon--stroke,
.dropdown--search-top .icon__main.icon--stroke,
.dir-top-shelf__button--large.is-active .icon__main.icon--stroke,
.is-open .dir-facet__icon .icon__main.icon--stroke {
  stroke: white;
}

.icon--white .icon__main.icon--fill,
.social-buttons--style1 .icon .icon__main.icon--fill,
.social-buttons--style4 .icon .icon__main.icon--fill,
.social-buttons--style2 .icon .icon__main.icon--fill,
.dropdown--search-top .icon__main.icon--fill,
.dir-top-shelf__button--large.is-active .icon__main.icon--fill,
.is-open .dir-facet__icon .icon__main.icon--fill {
  fill: white;
}

.icon--white .icon__main.icon--switch,
.social-buttons--style1 .icon .icon__main.icon--switch,
.social-buttons--style4 .icon .icon__main.icon--switch,
.social-buttons--style2 .icon .icon__main.icon--switch,
.dropdown--search-top .icon__main.icon--switch,
.dir-top-shelf__button--large.is-active .icon__main.icon--switch,
.is-open .dir-facet__icon .icon__main.icon--switch {
  fill: white;
}

.icon--white-blue .icon__accent.icon--stroke {
  stroke: #ff291c;
}

.icon--white-blue .icon__accent.icon--fill {
  fill: #ff291c;
}

.icon--white-blue .icon__accent.icon--switch {
  fill: #ff291c;
}

.icon--white-blue .icon__main.icon--stroke {
  stroke: white;
}

.icon--white-blue .icon__main.icon--fill {
  fill: white;
}

.icon--white-blue .icon__main.icon--switch {
  fill: white;
}

.icon--white-o .icon__accent.icon--stroke {
  stroke: white;
}

.icon--white-o .icon__accent.icon--fill {
  fill: white;
}

.icon--white-o .icon__accent.icon--switch {
  stroke: white;
  fill: none;
}

.icon--white-o .icon__main.icon--stroke {
  stroke: white;
}

.icon--white-o .icon__main.icon--fill {
  fill: white;
}

.icon--white-o .icon__main.icon--switch {
  stroke: white;
  fill: none;
}

.icon--blue-o .icon__accent.icon--stroke,
.widget__link:hover .widget__link__icon .icon__accent.icon--stroke,
.w-story__link:hover .icon .icon__accent.icon--stroke {
  stroke: #ff291c;
}

.icon--blue-o .icon__accent.icon--fill,
.widget__link:hover .widget__link__icon .icon__accent.icon--fill,
.w-story__link:hover .icon .icon__accent.icon--fill {
  fill: #ff291c;
}

.icon--blue-o .icon__accent.icon--switch,
.widget__link:hover .widget__link__icon .icon__accent.icon--switch,
.w-story__link:hover .icon .icon__accent.icon--switch {
  stroke: #ff291c;
  fill: none;
}

.icon--blue-o .icon__main.icon--stroke,
.widget__link:hover .widget__link__icon .icon__main.icon--stroke,
.w-story__link:hover .icon .icon__main.icon--stroke {
  stroke: #ff291c;
}

.icon--blue-o .icon__main.icon--fill,
.widget__link:hover .widget__link__icon .icon__main.icon--fill,
.w-story__link:hover .icon .icon__main.icon--fill {
  fill: #ff291c;
}

.icon--blue-o .icon__main.icon--switch,
.widget__link:hover .widget__link__icon .icon__main.icon--switch,
.w-story__link:hover .icon .icon__main.icon--switch {
  stroke: #ff291c;
  fill: none;
}

.icon--red-o .icon__accent.icon--stroke {
  stroke: #ff291c;
}

.icon--red-o .icon__accent.icon--fill {
  fill: #ff291c;
}

.icon--red-o .icon__accent.icon--switch {
  stroke: #ff291c;
  fill: none;
}

.icon--red-o .icon__main.icon--stroke {
  stroke: #ff291c;
}

.icon--red-o .icon__main.icon--fill {
  fill: #ff291c;
}

.icon--red-o .icon__main.icon--switch {
  stroke: #ff291c;
  fill: none;
}

.icon--black-o .icon__accent.icon--stroke {
  stroke: #000000;
}

.icon--black-o .icon__accent.icon--fill {
  fill: #000000;
}

.icon--black-o .icon__accent.icon--switch {
  stroke: #000000;
  fill: none;
}

.icon--black-o .icon__main.icon--stroke {
  stroke: #000000;
}

.icon--black-o .icon__main.icon--fill {
  fill: #000000;
}

.icon--black-o .icon__main.icon--switch {
  stroke: #000000;
  fill: none;
}

.icon--gray .icon__accent.icon--stroke,
.story-nav__dropdown .icon__accent.icon--stroke,
.card__comment-count .icon .icon__accent.icon--stroke {
  stroke: white;
}

.icon--gray .icon__accent.icon--fill,
.story-nav__dropdown .icon__accent.icon--fill,
.card__comment-count .icon .icon__accent.icon--fill {
  fill: white;
}

.icon--gray .icon__accent.icon--switch,
.story-nav__dropdown .icon__accent.icon--switch,
.card__comment-count .icon .icon__accent.icon--switch {
  fill: white;
}

.icon--gray .icon__main.icon--stroke,
.story-nav__dropdown .icon__main.icon--stroke,
.card__comment-count .icon .icon__main.icon--stroke {
  stroke: #999999;
}

.icon--gray .icon__main.icon--fill,
.story-nav__dropdown .icon__main.icon--fill,
.card__comment-count .icon .icon__main.icon--fill {
  fill: #999999;
}

.icon--gray .icon__main.icon--switch,
.story-nav__dropdown .icon__main.icon--switch,
.card__comment-count .icon .icon__main.icon--switch {
  fill: #999999;
}

/*------------------------------------*\
    #SOCIAL BUTTONS
\*------------------------------------*/

.button--sms.social-button .icon {
  width: auto;
  height: auto;
  font-size: 10px;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.social-buttons--style1,
.social-buttons--style4 {
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 50;
  color: white;
}

.social-buttons--style1 .button--facebook,
.social-buttons--style4 .button--facebook {
  background: #3b5998;
}

.social-buttons--style1 .button--twitter,
.social-buttons--style4 .button--twitter {
  background: #55acee;
}

.social-buttons--style1 .button--pinterest,
.social-buttons--style4 .button--pinterest {
  background: #bd081c;
}

.social-buttons--style1 .button--sms,
.social-buttons--style4 .button--sms {
  background: #68af15;
}

.social-buttons--style1 .button--comments,
.social-buttons--style4 .button--comments {
  background: #333333;
  color: white;
}

.social-buttons--style1 a,
.social-buttons--style1 .icon,
.social-buttons--style4 a,
.social-buttons--style4 .icon {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
}

.social-buttons--style1 a:hover,
.social-buttons--style1 .icon:hover,
.social-buttons--style4 a:hover,
.social-buttons--style4 .icon:hover {
  color: inherit;
}

.social-buttons--style1 .social-button,
.social-buttons--style4 .social-button {
  height: 40px;
  line-height: 40px;
  position: relative;
  opacity: 0.8;
  float: left;
}

.social-buttons--style1 .social-button:hover,
.social-buttons--style4 .social-button:hover {
  opacity: 1;
}

.social-buttons--style1 .social-button-inner,
.social-buttons--style4 .social-button-inner {
  text-align: center;
  width: 100%;
}

.social-buttons--style1 .icon.icon,
.social-buttons--style4 .icon.icon {
  color: white;
  display: inline-block;
  margin: 0 auto;
  height: 40px;
}

.social-buttons--style1 .disqus-comment-count,
.social-buttons--style4 .disqus-comment-count {
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
  letter-spacing: 0.15em;
  padding-left: 3px;
}

.social-buttons--style1 {
  margin-bottom: 1rem;
}

@media (max-width: 580px) {
  .social-buttons--style1 .social-buttons-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: horizontal;
            flex-direction: horizontal;
  }
}

.social-buttons--style1 .social-button {
  width: 100%;
}

@media (max-width: 580px) {
  .social-buttons--style1 .social-button {
    width: auto;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

.social-buttons--style4 .social-button {
  width: 50px;
}

@media (min-width: 580px) {
  .social-buttons--style2 {
    position: absolute;
    right: 0;
    top: 0;
    padding-right: 2rem;
  }
}

@media (max-width: 580px) {
  .social-buttons--style2 {
    display: block;
    width: 100%;
    position: relative;
    margin-top: 1rem;
  }

  .social-buttons--style2 .social-buttons-inner {
    display: inline-block;
  }
}

.social-buttons--style2 .social-button {
  float: left;
  padding: 1rem;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.social-buttons--style2 .social-button:hover {
  opacity: 0.5;
}

.social-buttons--style2 .icon {
  color: white;
}

.social-buttons--style5 {
  color: white;
  font-size: 10px;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.social-buttons--style5 .social-buttons-inner {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.social-buttons--style5 .social-button {
  padding: 0 0.5em;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.social-buttons--style5 .social-button:last-child {
  padding-right: 0;
}

.social-buttons--style5 .social-button:hover {
  opacity: 0.8;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.social-buttons--style5 .icon .icon__accent.icon--stroke {
  stroke: #000000;
}

.social-buttons--style5 .icon .icon__accent.icon--fill {
  fill: #000000;
}

.social-buttons--style5 .icon .icon__accent.icon--switch {
  fill: #000000;
}

.social-buttons--style5 .icon .icon__main.icon--stroke {
  stroke: white;
}

.social-buttons--style5 .icon .icon__main.icon--fill {
  fill: white;
}

.social-buttons--style5 .icon .icon__main.icon--switch {
  fill: white;
}

.social-buttons--circles .social-buttons__text {
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.social-buttons--circles .social-buttons-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.social-buttons--circles .social-button {
  width: 35px;
  height: 35px;
  margin-left: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #000000;
  border-radius: 50%;
}

.social-buttons--circles .button--facebook {
  border-color: #3b5998;
  color: #3b5998;
}

.social-buttons--circles .button--facebook .icon__accent.icon--stroke {
  stroke: #3b5998;
}

.social-buttons--circles .button--facebook .icon__accent.icon--fill {
  fill: #3b5998;
}

.social-buttons--circles .button--facebook .icon__accent.icon--switch {
  fill: #3b5998;
}

.social-buttons--circles .button--facebook .icon__main.icon--stroke {
  stroke: #3b5998;
}

.social-buttons--circles .button--facebook .icon__main.icon--fill {
  fill: #3b5998;
}

.social-buttons--circles .button--facebook .icon__main.icon--switch {
  fill: #3b5998;
}

.social-buttons--circles .button--facebook:hover {
  color: white;
  background-color: #3b5998;
}

.social-buttons--circles .button--facebook:hover .icon__accent.icon--stroke {
  stroke: white;
}

.social-buttons--circles .button--facebook:hover .icon__accent.icon--fill {
  fill: white;
}

.social-buttons--circles .button--facebook:hover .icon__accent.icon--switch {
  fill: white;
}

.social-buttons--circles .button--facebook:hover .icon__main.icon--stroke {
  stroke: white;
}

.social-buttons--circles .button--facebook:hover .icon__main.icon--fill {
  fill: white;
}

.social-buttons--circles .button--facebook:hover .icon__main.icon--switch {
  fill: white;
}

.social-buttons--circles .button--twitter {
  border-color: #55acee;
  color: #55acee;
}

.social-buttons--circles .button--twitter .icon__accent.icon--stroke {
  stroke: #55acee;
}

.social-buttons--circles .button--twitter .icon__accent.icon--fill {
  fill: #55acee;
}

.social-buttons--circles .button--twitter .icon__accent.icon--switch {
  fill: #55acee;
}

.social-buttons--circles .button--twitter .icon__main.icon--stroke {
  stroke: #55acee;
}

.social-buttons--circles .button--twitter .icon__main.icon--fill {
  fill: #55acee;
}

.social-buttons--circles .button--twitter .icon__main.icon--switch {
  fill: #55acee;
}

.social-buttons--circles .button--twitter:hover {
  color: white;
  background-color: #55acee;
}

.social-buttons--circles .button--twitter:hover .icon__accent.icon--stroke {
  stroke: white;
}

.social-buttons--circles .button--twitter:hover .icon__accent.icon--fill {
  fill: white;
}

.social-buttons--circles .button--twitter:hover .icon__accent.icon--switch {
  fill: white;
}

.social-buttons--circles .button--twitter:hover .icon__main.icon--stroke {
  stroke: white;
}

.social-buttons--circles .button--twitter:hover .icon__main.icon--fill {
  fill: white;
}

.social-buttons--circles .button--twitter:hover .icon__main.icon--switch {
  fill: white;
}

.social-buttons--circles .button--pinterest {
  border-color: #bd081c;
  color: #bd081c;
}

.social-buttons--circles .button--pinterest .icon__accent.icon--stroke {
  stroke: #bd081c;
}

.social-buttons--circles .button--pinterest .icon__accent.icon--fill {
  fill: #bd081c;
}

.social-buttons--circles .button--pinterest .icon__accent.icon--switch {
  fill: #bd081c;
}

.social-buttons--circles .button--pinterest .icon__main.icon--stroke {
  stroke: #bd081c;
}

.social-buttons--circles .button--pinterest .icon__main.icon--fill {
  fill: #bd081c;
}

.social-buttons--circles .button--pinterest .icon__main.icon--switch {
  fill: #bd081c;
}

.social-buttons--circles .button--pinterest:hover {
  color: white;
  background-color: #bd081c;
}

.social-buttons--circles .button--pinterest:hover .icon__accent.icon--stroke {
  stroke: white;
}

.social-buttons--circles .button--pinterest:hover .icon__accent.icon--fill {
  fill: white;
}

.social-buttons--circles .button--pinterest:hover .icon__accent.icon--switch {
  fill: white;
}

.social-buttons--circles .button--pinterest:hover .icon__main.icon--stroke {
  stroke: white;
}

.social-buttons--circles .button--pinterest:hover .icon__main.icon--fill {
  fill: white;
}

.social-buttons--circles .button--pinterest:hover .icon__main.icon--switch {
  fill: white;
}

.social-buttons--circles .button--sms {
  border-color: #68af15;
  color: #68af15;
}

.social-buttons--circles .button--sms .icon__accent.icon--stroke {
  stroke: #68af15;
}

.social-buttons--circles .button--sms .icon__accent.icon--fill {
  fill: #68af15;
}

.social-buttons--circles .button--sms .icon__accent.icon--switch {
  fill: #68af15;
}

.social-buttons--circles .button--sms .icon__main.icon--stroke {
  stroke: #68af15;
}

.social-buttons--circles .button--sms .icon__main.icon--fill {
  fill: #68af15;
}

.social-buttons--circles .button--sms .icon__main.icon--switch {
  fill: #68af15;
}

.social-buttons--circles .button--sms:hover {
  color: white;
  background-color: #68af15;
}

.social-buttons--circles .button--sms:hover .icon__accent.icon--stroke {
  stroke: white;
}

.social-buttons--circles .button--sms:hover .icon__accent.icon--fill {
  fill: white;
}

.social-buttons--circles .button--sms:hover .icon__accent.icon--switch {
  fill: white;
}

.social-buttons--circles .button--sms:hover .icon__main.icon--stroke {
  stroke: white;
}

.social-buttons--circles .button--sms:hover .icon__main.icon--fill {
  fill: white;
}

.social-buttons--circles .button--sms:hover .icon__main.icon--switch {
  fill: white;
}

/*------------------------------------*\
    #SOCIAL LINKS - less complicated than buttons, use a different macro
\*------------------------------------*/

.social-links .social-link {
  padding: 0 0.4em;
}

.social-links .social-link .icon__accent.icon--stroke {
  stroke: #999999;
}

.social-links .social-link .icon__accent.icon--fill {
  fill: #999999;
}

.social-links .social-link .icon__accent.icon--switch {
  fill: #999999;
}

.social-links .social-link .icon__main.icon--stroke {
  stroke: #999999;
}

.social-links .social-link .icon__main.icon--fill {
  fill: #999999;
}

.social-links .social-link .icon__main.icon--switch {
  fill: #999999;
}

.social-links .social-link--facebook:hover .icon__accent.icon--stroke {
  stroke: #3b5998;
}

.social-links .social-link--facebook:hover .icon__accent.icon--fill {
  fill: #3b5998;
}

.social-links .social-link--facebook:hover .icon__accent.icon--switch {
  fill: #3b5998;
}

.social-links .social-link--facebook:hover .icon__main.icon--stroke {
  stroke: #3b5998;
}

.social-links .social-link--facebook:hover .icon__main.icon--fill {
  fill: #3b5998;
}

.social-links .social-link--facebook:hover .icon__main.icon--switch {
  fill: #3b5998;
}

.social-links .social-link--twitter:hover .icon__accent.icon--stroke {
  stroke: #55acee;
}

.social-links .social-link--twitter:hover .icon__accent.icon--fill {
  fill: #55acee;
}

.social-links .social-link--twitter:hover .icon__accent.icon--switch {
  fill: #55acee;
}

.social-links .social-link--twitter:hover .icon__main.icon--stroke {
  stroke: #55acee;
}

.social-links .social-link--twitter:hover .icon__main.icon--fill {
  fill: #55acee;
}

.social-links .social-link--twitter:hover .icon__main.icon--switch {
  fill: #55acee;
}

.social-links .social-link--pinterest:hover .icon__accent.icon--stroke {
  stroke: #bd081c;
}

.social-links .social-link--pinterest:hover .icon__accent.icon--fill {
  fill: #bd081c;
}

.social-links .social-link--pinterest:hover .icon__accent.icon--switch {
  fill: #bd081c;
}

.social-links .social-link--pinterest:hover .icon__main.icon--stroke {
  stroke: #bd081c;
}

.social-links .social-link--pinterest:hover .icon__main.icon--fill {
  fill: #bd081c;
}

.social-links .social-link--pinterest:hover .icon__main.icon--switch {
  fill: #bd081c;
}

.social-links .social-link--instagram:hover .icon__accent.icon--stroke {
  stroke: #d047d1;
}

.social-links .social-link--instagram:hover .icon__accent.icon--fill {
  fill: #d047d1;
}

.social-links .social-link--instagram:hover .icon__accent.icon--switch {
  fill: #d047d1;
}

.social-links .social-link--instagram:hover .icon__main.icon--stroke {
  stroke: #d047d1;
}

.social-links .social-link--instagram:hover .icon__main.icon--fill {
  fill: #d047d1;
}

.social-links .social-link--instagram:hover .icon__main.icon--switch {
  fill: #d047d1;
}

/* Variables */

.dropdown {
  position: relative;
  width: 100%;
  height: 40px;
}

.dropdown__title,
.dropdown__header {
  height: 40px;
  line-height: 40px;
}

.dropdown__title {
  padding: 0 1rem;
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
  display: block;
  width: 100%;
  text-decoration: none;
  cursor: pointer;
}

.dropdown__title span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 100%;
}

.dropdown__header {
  border-bottom: 1px solid transparent;
}

.dropdown__content {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
}

.dropdown__content ul {
  z-index: 1;
  list-style: none;
}

.dropdown__content > ul {
  overflow: hidden;
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  max-height: 0;
  opacity: 0;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

.dropdown__content > ul > li > ul a {
  padding-left: 2em;
}

.dropdown__content li a {
  display: block;
  text-decoration: none;
  cursor: pointer;
  padding: 0 1rem;
}

.dropdown__content li a:not(.dropdown__header) {
  line-height: 1.2;
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}

.dropdown__icon {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}

.dropdown.open .dropdown__content > ul {
  max-height: 30rem;
  overflow-y: scroll;
  opacity: 1;
}

.button-group .button {
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  width: 100%;
}

.button-group .button:not(.dropdown) {
  height: 40px;
  padding: 0 1rem;
  border: none;
}

@media (min-width: 580px) {
  .button-group--large .button {
    width: 23.72881%;
    float: left;
    margin-right: 1.69492%;
  }

  .button-group--large .button:last-child {
    margin-right: 0;
  }
}

@media (min-width: 580px) {
  .button-group--medium .button {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%;
  }

  .button-group--medium .button:last-child {
    margin-right: 0;
  }
}

.button-group--flex {
  text-align: center;
}

.button-group--flex .button {
  max-width: 280px;
  margin: 0 0.5em 0 0;
  vertical-align: middle;
}

.button-group--flex .button--submit {
  max-width: 160px;
}

.button--search,
.dropdown--search {
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  color: #999999;
}

.button--search__inner {
  width: 100%;
  height: 100%;
}

.dropdown--search {
  color: #000000;
}

.dropdown--search .dropdown__title {
  color: #000000;
  border-color: white;
  background: white;
}

.dropdown--search .dropdown__title span:not(.selected) {
  color: #828282;
}

.dropdown--search .dropdown__title span.selected {
  pointer-events: none;
}

.dropdown--search .dropdown__content ul {
  background: white;
}

.dropdown--search .dropdown__content li a {
  color: #999999;
  background: white;
  font-size: 18px;
}

.dropdown--search .dropdown__content li a:hover {
  background: #f2f2f2;
}

.dropdown--search .dropdown__content .dropdown__header {
  border-color: #999999;
}

.dropdown--search .dropdown__content .selected {
  color: black;
}

.dropdown--search-top {
  font-size: 14px;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  letter-spacing: 0.09375em;
  color: white;
}

.dropdown--search-top .dropdown__title {
  border: 1px solid;
}

.dropdown--search-top .dropdown__title {
  color: white;
  border-color: white;
  background: inherit;
}

.dropdown--search-top .dropdown__title span:not(.selected) {
  color: white;
}

.dropdown--search-top .dropdown__title span.selected {
  pointer-events: none;
}

.dropdown--search-top .dropdown__content ul {
  background: white;
}

.dropdown--search-top .dropdown__content li a {
  color: #999999;
  background: white;
  font-size: 18px;
}

.dropdown--search-top .dropdown__content li a:hover {
  background: #f2f2f2;
}

.dropdown--search-top .dropdown__content .dropdown__header {
  border-color: #999999;
}

.dropdown--search-top .dropdown__content .selected {
  color: black;
}

.dropdown--small {
  font-size: 14px;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  color: #999999;
  color: #000000;
}

.dropdown--small .dropdown__title {
  color: #000000;
  border-color: white;
  background: white;
}

.dropdown--small .dropdown__title span:not(.selected) {
  color: #828282;
}

.dropdown--small .dropdown__title span.selected {
  pointer-events: none;
}

.dropdown--small .dropdown__content ul {
  background: white;
}

.dropdown--small .dropdown__content li a {
  color: #999999;
  background: white;
  font-size: 18px;
}

.dropdown--small .dropdown__content li a:hover {
  background: #f2f2f2;
}

.dropdown--small .dropdown__content .dropdown__header {
  border-color: #999999;
}

.dropdown--small .dropdown__content .selected {
  color: black;
}

/*------------------------------------*\
    #FORMS
\*------------------------------------*/

input[type="text"],
input[type="email"],
input[type="number"],
input[type="textarea"] {
  color: #1a1a1a;
}

/*------------------------------------*\
    #HUBSPOT FORMS
\*------------------------------------*/

.hbspt-form input[type="email"] {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  height: 30px;
  border: 1px solid #e6e6e6;
  padding-left: 0.5em;
  padding-right: 0.5em;
  width: 100%;
}

.hbspt-form input[type="submit"] {
  height: 30px;
  width: 100px;
  padding: 0;
  border: 1px solid #e6e6e6;
  border-left: 0;
}

.hbspt-form .hs-form .form-columns-2,
.hbspt-form .hs-form .form-columns-3 {
  width: 100%;
  max-width: calc(100% - 100px);
}

.hbspt-form .hs-email label {
  position: absolute !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  width: 1px !important;
  margin: -1px;
  padding: 0 !important;
  border: 0 !important;
}

.hbspt-form .hs-form fieldset.form-columns-2 .hs-form-field,
.hbspt-form .hs-form fieldset.form-columns-3 .hs-form-field {
  width: 100%;
}

.hbspt-form .hs-form fieldset.form-columns-2 .input,
.hbspt-form .hs-form fieldset.form-columns-3 .input {
  margin-right: 0;
}

.hbspt-form .hbspt-form {
  margin: 0 auto;
}

.hbspt-form .form-columns-3,
.hbspt-form .form-columns-2,
.hbspt-form .form-columns-1,
.hbspt-form .hs_submit {
  display: inline-block;
  vertical-align: top;
}

.hs-error-msgs {
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  color: #ff291c;
  margin-top: 1em;
}

.submitted-message {
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.hs-form-required {
  display: none;
}

/*------------------------------------*\
    #FORM CARDS -- use on radio buttons to create a card-link appearance
    Instructions on how to use here: https://github.com/dmagazine/guides/blob/master/forms.md
\*------------------------------------*/

.dmag-form-cards {
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  padding-right: 0;
  padding-left: 0;
}

.dmag-form-cards .gfield_label {
  width: 100%;
  text-align: center;
  font-size: 18px !important;
}

.dmag-form-cards .gform_description {
  display: block;
  margin-left: auto;
  margin-right: auto;
  float: none;
  width: 100%;
  max-width: 700px;
  font-size: 14px;
  line-height: 1.5;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  text-align: center;
}

.dmag-form-cards ul.gfield_radio.gfield_radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.dmag-form-cards ul.gfield_radio.gfield_radio > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  text-align: center;
  margin-bottom: 1.7%;
}

@media (min-width: 580px) {
  .dmag-form-cards ul.gfield_radio.gfield_radio > li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 32%;
            flex: 0 0 32%;
  }
}

@media (max-width: 580px) {
  .dmag-form-cards ul.gfield_radio.gfield_radio > li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 49%;
            flex: 0 0 49%;
  }
}

.dmag-form-cards ul.gfield_radio.gfield_radio input[type=radio] {
  position: absolute !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  width: 1px !important;
  margin: -1px;
  padding: 0 !important;
  border: 0 !important;
}

.dmag-form-cards ul.gfield_radio.gfield_radio input[type=radio] + label {
  font-size: 17px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  border: 1px solid #e6e6e6;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 5.26316%;
  cursor: pointer;
}

@media (max-width: 580px) {
  .dmag-form-cards ul.gfield_radio.gfield_radio input[type=radio] + label {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0;
  }
}

.dmag-form-cards ul.gfield_radio.gfield_radio input[type=radio] + label:hover {
  background-color: #f2f2f2;
}

.dmag-form-cards ul.gfield_radio.gfield_radio input[type=radio]:checked + label {
  background-color: #e6e6e6;
}

.dmag-form-cards ul.gfield_radio.gfield_radio img {
  max-width: 100%;
  display: block;
  margin-left: auto;
  margin-right: auto;
  float: none;
  padding-bottom: 1em;
}

.adunit:not(.adunit--native) {
  text-align: center;
  clear: both;
  -webkit-touch-callout: none;
}

.feed__featured .adunit:not(.adunit--native) {
  margin-top: 3.44828%;
}

.adunit.display-none,
.js-adunit-native.display-none {
  display: none !important;
}

.story__content .adunit--horizontal:not(.adunit--native) {
  margin-top: 1em;
}

.tl-blocks .adunit--horizontal:not(.adunit--native) {
  margin-bottom: 3.44828%;
  background-color: white;
}

.adunit:not(.adunit--native) {
  padding: 25px 12px 40px;
}

.adunit:not(.adunit--native) :before {
  content: 'Advertisement';
  display: block;
  padding: 10px 0 10px 0;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 500;
  font-size: 10px;
  color: #dedede;
  line-height: 1;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-align: center;
}

.adunit--slideshow:not(.adunit--directory) {
  padding: 3.44828%;
  display: inline-block;
}

@media (min-width: 1024px) {
  .adunit--directory.adunit--directory {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 1024px) {
  .adunit--directory.adunit--directory {
    margin-left: calc( (-100vw + 100%) / 2);
    margin-right: calc( (-100vw + 100%) / 2);
  }
}

.adunit--directory.adunit--directory.adunit--vertical {
  padding: 1em 0;
}

@media (max-width: 580px) {
  .adunit--desktop {
    display: none;
  }
}

@media (min-width: 580px) {
  .adunit--mobile,
  .adunit--mobile_top {
    display: none;
  }
}

.adunit--native.adunit-loaded {
  display: none !important;
}

.card--sponsored .card__title {
  /* 6: Restaurant Review Headline */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 1.1;
  color: #1a1a1a;
}

.card--sponsored.card--vertical .card__content {
  padding-left: 2.5641%;
}

@media (min-width: 1024px) {
  .card--sponsored.card--switch .card__content {
    padding-left: 2.5641%;
  }
}

.card--sponsored .category,
.card--sponsored .card--story.card--story h2,
.card--story.card--story .card--sponsored h2 {
  color: #820000;
}

.card--sponsored .card__content {
  padding-right: 2.5641%;
}

.story--sponsored .story__title {
  font-size: 48px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 200;
  letter-spacing: -0.03em;
}

@media (max-width: 580px) {
  .story--sponsored .story__title {
    font-size: 28px;
    line-height: 1.3;
    letter-spacing: -0.02em;
  }
}

.w-stories__item.card--sponsored .card__content,
.w-stories__item.card--house .card__content {
  padding-top: 1em;
}

.w-stories__item.card--sponsored .card__subhead,
.w-stories__item.card--house .card__subhead {
  display: none;
}

.w-stories__item.card--sponsored .card__content {
  padding: 1em;
}

.jquery-modal {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.modal {
  background: none;
  border-radius: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  width: auto;
  color: white;
}

.modal a.close-modal {
  top: 10px;
  right: 0;
  background: url(https://www.dmagazine.com/wp-content/themes/dmagazine/dist/images/icon-sprite.svg);
}

#interstitialOverlayLink {
  position: absolute;
  width: 100%;
  height: 480px;
}

/*------------------------------------*\
    #PAGINATION
\*------------------------------------*/

.pagination,
.pagination__numbers,
.pagination__number,
.pagination__item {
  display: inline-block;
}

.pagination {
  color: #000000;
  margin-top: 1em;
  font-size: 0;
}

.pagination__numbers {
  margin: 0;
}

.pagination__numbers:last-child .pagination__number:last-child {
  border-right: 0;
}

.pagination__number,
.pagination__prev {
  border-right: 1px solid #e6e6e6;
}

.pagination__number .is-active,
.pagination__number.is-active {
  color: #00ADEF;
  font-weight: bold;
}

.pagination__number .is-active:hover,
.pagination__number.is-active:hover {
  opacity: 1;
}

.pagination__item {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  padding: 0.3em 0.8em;
}

.pagination__item:hover {
  opacity: 0.5;
}

.alignleft,
.alignright,
.aligncenter,
.alignnone {
  margin-top: 1em;
  margin-bottom: 1em;
}

.alignleft {
  margin-right: 2.94118%;
  clear: left;
  float: left;
}

.alignright {
  margin-left: 2.94118%;
  clear: right;
  float: right;
}

.aligncenter {
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.tooltip__text {
  visibility: hidden;
  font-size: 10px;
  line-height: 1.2;
  background-color: #000000;
  color: white;
  padding: 0.8em 1em;
  border-radius: 3px;
  top: 110%;
  right: 0;
  text-align: center;
  text-transform: none;
  position: absolute;
  z-index: 1;
}

.tooltip__text a {
  text-decoration: underline;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.tooltip__text a:hover {
  opacity: 0.5;
}

.dir-card__sponsored .tooltip__text {
  width: 200px;
  margin-top: -15px;
}

.tooltip:hover .tooltip__text {
  visibility: visible;
}

.story__content a,
.gu-block__content a {
  background-image: -webkit-gradient(linear, left top, left bottom, from(white), to(white)), -webkit-gradient(linear, left top, left bottom, from(white), to(white)), -webkit-gradient(linear, left top, left bottom, from(#ff291c), to(#ff291c));
  background-image: -webkit-linear-gradient(white, white), -webkit-linear-gradient(white, white), -webkit-linear-gradient(#ff291c, #ff291c);
  background-image: -o-linear-gradient(white, white), -o-linear-gradient(white, white), -o-linear-gradient(#ff291c, #ff291c);
  background-image: linear-gradient(white, white), linear-gradient(white, white), linear-gradient(#ff291c, #ff291c);
  background-size: .05em 1px,.05em 1px,1px 1px;
  background-repeat: no-repeat,no-repeat,repeat-x;
  background-position: 0 95%,100% 95%,0 95%;
  text-shadow: 0.03em 0 white, -0.03em 0 white, 0 0.03em white, 0 -0.03em white, 0.06em 0 white, -0.06em 0 white, 0.09em 0 white, -0.09em 0 white, 0.12em 0 white, -0.12em 0 white, 0.15em 0 white, -0.15em 0 white;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.story__content a:hover,
.gu-block__content a:hover {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.story__content h2,
.gu-block__content h2 {
  margin-top: 0.5em;
  margin-bottom: 0;
}

.story__content h3,
.story__content h4,
.story__content h5,
.story__content h6,
.gu-block__content h3,
.gu-block__content h4,
.gu-block__content h5,
.gu-block__content h6 {
  margin-bottom: 0;
  margin-top: 2rem;
}

.story__content > h2:first-child,
.story__content > h3:first-child,
.story__content > h4:first-child,
.story__content > h5:first-child,
.story__content > h6:first-child,
.story__content > p:first-child,
.story__content > img:first-child,
.story__content > figure:first-child,
.story__content > figure img:first-child,
.story__content > figure video:first-child,
.gu-block__content > h2:first-child,
.gu-block__content > h3:first-child,
.gu-block__content > h4:first-child,
.gu-block__content > h5:first-child,
.gu-block__content > h6:first-child,
.gu-block__content > p:first-child,
.gu-block__content > img:first-child,
.gu-block__content > figure:first-child,
.gu-block__content > figure img:first-child,
.gu-block__content > figure video:first-child {
  margin-top: 0;
}

.story__content h2 + h3,
.gu-block__content h2 + h3 {
  margin-top: 0.5rem;
}

.story__content h2 + h4,
.gu-block__content h2 + h4 {
  margin-top: 0.5rem;
}

.story__content h2 + h5,
.gu-block__content h2 + h5 {
  margin-top: 0.5rem;
}

.story__content h2 + h6,
.gu-block__content h2 + h6 {
  margin-top: 0.5rem;
}

.story__content h3 + h3,
.gu-block__content h3 + h3 {
  margin-top: 0.5rem;
}

.story__content h3 + h4,
.gu-block__content h3 + h4 {
  margin-top: 0.5rem;
}

.story__content h3 + h5,
.gu-block__content h3 + h5 {
  margin-top: 0.5rem;
}

.story__content h3 + h6,
.gu-block__content h3 + h6 {
  margin-top: 0.5rem;
}

.story__content h4 + h3,
.gu-block__content h4 + h3 {
  margin-top: 0.5rem;
}

.story__content h4 + h4,
.gu-block__content h4 + h4 {
  margin-top: 0.5rem;
}

.story__content h4 + h5,
.gu-block__content h4 + h5 {
  margin-top: 0.5rem;
}

.story__content h4 + h6,
.gu-block__content h4 + h6 {
  margin-top: 0.5rem;
}

.story__content h5 + h3,
.gu-block__content h5 + h3 {
  margin-top: 0.5rem;
}

.story__content h5 + h4,
.gu-block__content h5 + h4 {
  margin-top: 0.5rem;
}

.story__content h5 + h5,
.gu-block__content h5 + h5 {
  margin-top: 0.5rem;
}

.story__content h5 + h6,
.gu-block__content h5 + h6 {
  margin-top: 0.5rem;
}

.story__content h6 + h3,
.gu-block__content h6 + h3 {
  margin-top: 0.5rem;
}

.story__content h6 + h4,
.gu-block__content h6 + h4 {
  margin-top: 0.5rem;
}

.story__content h6 + h5,
.gu-block__content h6 + h5 {
  margin-top: 0.5rem;
}

.story__content h6 + h6,
.gu-block__content h6 + h6 {
  margin-top: 0.5rem;
}

.story__content--is-slideshow-closed,
.page__content {
  font-size: 18px;
  line-height: 1.5;
  font-family: "Financier Text", serif;
  font-weight: 400;
  letter-spacing: 0;
}

.story__content--is-slideshow-closed ul,
.page__content ul,
.story__content--is-slideshow-closed ol,
.page__content ol,
.story__content--is-slideshow-closed dl,
.page__content dl {
  margin-top: 1em;
  margin-bottom: 1.5em;
  padding-left: 1em;
}

.story__content--is-slideshow-closed li,
.page__content li {
  margin-top: 1em;
}

.story__content--is-slideshow-closed blockquote:not(.pull-quote),
.page__content blockquote:not(.pull-quote) {
  margin-left: 1em;
  padding-left: 1em;
  border-left: 4px solid #e6e6e6;
}

.story__content--is-slideshow-closed .sans-bold,
.page__content .sans-bold {
  font-size: 14px;
  line-height: 1.14;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.story__content--is-slideshow-closed h2,
.page__content h2 {
  font-size: 36px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 600;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .story__content--is-slideshow-closed h2,
  .page__content h2 {
    font-size: 27px;
    line-height: 1.3;
    letter-spacing: 0;
  }
}

.story__content--is-slideshow-closed h3,
.page__content h3 {
  font-size: 18px;
  line-height: 1.3;
  font-family: "Financier Display", serif;
  font-weight: 200;
  letter-spacing: 0.05em;
}

.story__content--is-slideshow-closed h4,
.page__content h4 {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  text-decoration: underline;
}

.story__content--is-slideshow-closed h5,
.page__content h5 {
  font-size: 14px;
  line-height: 1.5;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #00ADEF;
}

.story__content--is-slideshow-closed h6,
.page__content h6 {
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #999999;
}

.story__content--no-link-style a {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
}

.story__content--no-link-style a:hover {
  color: inherit;
}

/*------------------------------------*\
    #STORY HEADER
\*------------------------------------*/

.story__header {
  position: relative;
  margin-bottom: 2.5641%;
}

.story__image {
  position: relative;
  overflow: hidden;
  overflow: hidden;
}

.story__image:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 66.66667%;
}

.story__image > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.story__image-caption {
  margin-top: 0.7em;
}

.layout--with-sidebar .story__header__content {
  margin-top: 2.5641%;
}

.story__title {
  font-size: 60px;
  line-height: 1.2;
  font-family: "Financier Display", serif;
  font-weight: 400;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .story__title {
    font-size: 48px;
    line-height: 1.125;
    letter-spacing: 0;
  }
}

.story__subhead {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
}

.story__info {
  color: #999999;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  padding: 1em 0;
  font-size: 10px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.story__info__item {
  border-left: 1px solid #e6e6e6;
  padding: 0 0.5em;
}

.story__info__item:first-child {
  border-left: none;
  padding-left: 0;
}

.story__header--full {
  text-align: center;
  color: white;
  background-size: cover;
  background-position: center center;
  position: relative;
}

@media (min-width: 580px) {
  .story__header--full {
    height: 100vh;
    width: 100%;
  }
}

.story__header--full:before {
  background-color: rgba(0, 0, 0, 0.2);
  content: '';
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}

.story__header--medium {
  overflow: hidden;
  position: relative;
  text-align: center;
  color: white;
  background-size: cover;
  background-position: center center;
  position: relative;
}

@media (min-width: 580px) {
  .story__header--medium {
    height: 120vh;
    width: 100%;
  }
}

.story__header--medium:before {
  background-color: rgba(0, 0, 0, 0.2);
  content: '';
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}

@media (min-width: 580px) {
  .story__header--with-video {
    background-image: none !important;
  }

  .story__header--with-video figure {
    display: none;
  }
}

@media (min-width: 580px) {
  .story__header--full-inner,
  .story__header--medium-inner {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
         -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 100%;
  }
}

@media (max-width: 580px) {
  .story__header--full-inner,
  .story__header--medium-inner {
    position: relative;
    z-index: 50;
    padding-top: 5.26316%;
    padding-bottom: 11.11111%;
  }
}

@media (min-width: 580px) {
  .story__header--medium-inner {
    max-width: 800px;
  }
}

.story__header-video-wrapper {
  position: relative;
  overflow: hidden;
}

.story__header-video-wrapper:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 66.66667%;
}

.story__header-video-wrapper > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media (max-width: 580px) {
  .story__header-video-wrapper {
    display: none;
  }
}

.story__header__video {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  height: 100%;
  width: 100%;
  max-width: 1000000000000000px;
}

@media (max-width: 580px) {
  .story__header__video {
    display: none;
  }
}

/*------------------------------------*\
    #DATATABLES
\*------------------------------------*/

.dataTables_wrapper {
  overflow-x: scroll;
  width: 100%;
}

.datatable {
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0.025em;
}

.datatable thead {
  background: #000000;
  color: white;
}

.datatable .sorting_1 {
  background: #BCECFF;
}

@media (max-width: 580px) {
  .datatable .hidden-phone {
    display: none;
  }
}

.datatable td,
.datatable th {
  padding: 1em 0.7em;
}

.datatable .odd {
  background: #f2f2f2;
}

/*------------------------------------*\
    #IN THIS POST
\*------------------------------------*/

.in-this-post {
  clear: both;
  margin-top: 3.44828%;
}

.in-this-post__title {
  color: white;
  background: #000000;
  padding: 0.6rem 0.8rem;
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
}

.in-this-post__items {
  margin: 0;
  border: 1px solid #000000;
  border-bottom: none;
}

.in-this-post__item {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #000000;
}

.in-this-post__link {
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  padding: 0.6rem 0.8rem;
  display: block;
  float: left;
  width: calc(100% - 35px);
}

.in-this-post__link:hover {
  color: #ff291c;
}

.in-this-post__link:hover .in-this-post__category,
.in-this-post__link:hover .in-this-post__location {
  color: #ff291c;
}

.in-this-post__kicker {
  display: block;
  font-size: 10px;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  letter-spacing: 0.0625em;
  padding-top: 5px;
  line-height: 1;
  color: #ff291c;
}

.in-this-post__name {
  font-weight: 700;
  font-size: 13;
}

.in-this-post__category {
  color: #000000;
  font-weight: 400;
}

.in-this-post__location {
  color: #999999;
}

.in-this-post__ticket {
  padding: 0.8rem 0.6rem;
  padding-left: 0;
  float: left;
  width: 35px;
  text-align: center;
  fill: #333333;
}

.in-this-post__ticket:hover {
  fill: #ff291c;
}

@media (min-width: 1024px) {
  .in-this-post__block {
    float: left;
    width: 30%;
    padding-right: 0.7em;
  }

  .in-this-post___block:first-child {
    width: 40%;
  }
}

@media (max-width: 1024px) {
  .in-this-post__name {
    margin-bottom: 0.5rem;
  }

  .in-this-post__block {
    display: block;
    width: 100%;
  }
}

.nav--basic {
  background: #1a1a1a;
  color: #999999;
  height: 50px;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.nav--basic__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.nav--basic__logo {
  height: 50px;
  float: left;
}

.nav--basic__text {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
  letter-spacing: 0.0625em;
  line-height: 50px;
  float: left;
  padding-left: 0.8rem;
  padding-right: 0.5em;
}

@media (max-width: 580px) {
  .nav--basic__text {
    display: none;
  }
}

.nav--basic__arrow {
  height: 50px;
}

.nav--basic__arrow .icon__accent.icon--stroke {
  stroke: #999999;
}

.nav--basic__arrow .icon__accent.icon--fill {
  fill: #999999;
}

.nav--basic__arrow .icon__accent.icon--switch {
  stroke: #999999;
  fill: none;
}

.nav--basic__arrow .icon__main.icon--stroke {
  stroke: #999999;
}

.nav--basic__arrow .icon__main.icon--fill {
  fill: #999999;
}

.nav--basic__arrow .icon__main.icon--switch {
  stroke: #999999;
  fill: none;
}

.nav--basic a:hover .nav--basic__arrow .icon__accent.icon--stroke {
  stroke: #1a1a1a;
}

.nav--basic a:hover .nav--basic__arrow .icon__accent.icon--fill {
  fill: #1a1a1a;
}

.nav--basic a:hover .nav--basic__arrow .icon__accent.icon--switch {
  fill: #1a1a1a;
}

.nav--basic a:hover .nav--basic__arrow .icon__main.icon--stroke {
  stroke: #999999;
}

.nav--basic a:hover .nav--basic__arrow .icon__main.icon--fill {
  fill: #999999;
}

.nav--basic a:hover .nav--basic__arrow .icon__main.icon--switch {
  fill: #999999;
}

@media (max-width: 580px) {
  .nav--basic__arrow {
    display: none;
  }
}

.nav--basic__social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.8rem;
}

.nav--basic-pushdown {
  padding-top: 50px;
}

.footer--basic {
  clear: both;
  background: #000000;
  color: white;
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  padding: 2em 0;
  z-index: 1000;
  position: relative;
}

.footer--basic a {
  text-decoration: underline;
}

@media (max-width: 580px) {
  .footer--basic {
    text-align: center;
  }
}

.footer--basic__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media (max-width: 580px) {
  .footer--basic__container {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.footer--basic__text {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.footer--basic__social {
  white-space: nowrap;
}

.footer--basic__social-link {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.footer--basic__social-link:not(:first-child) {
  margin-left: 1em;
}

.footer--basic__social-link:hover {
  opacity: 0.5;
}

.footer--basic__social-link.footer--basic__social-link {
  text-decoration: none;
}

.story-nav {
  background-color: #1a1a1a;
  width: 100%;
  padding: 0.8em;
}

.story-nav .story-nav:not(.scroll-to-fixed-fixed) {
  display: none;
}

.story-nav-inner {
  width: 100%;
  font-size: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.story-nav__logo {
  display: none;
  width: 50px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px;
  max-height: 50px;
}

.scroll-to-fixed-fixed .story-nav__logo {
  display: inline-block;
}

@media (min-width: 580px) {
  .story-nav__logo {
    float: left;
  }
}

.story-nav__logo-image {
  width: 100%;
  display: block;
}

/*------------------------------------*\
    #ITEMS - ALL
\*------------------------------------*/

/*------------------------------------*\
    #JUMPLINKS
\*------------------------------------*/

.story-nav__jumplinks {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  float: left;
  align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.story-nav__jumplink {
  font-size: 14px;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  color: #999999;
  list-style-type: none;
  padding-left: 0;
  vertical-align: middle;
  color: #999999;
  text-align: center;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  white-space: nowrap;
}

.story-nav__jumplink__link {
  display: block;
  padding: 0.3em 1.5em;
}

.story-nav__jumplink__link.is-active {
  color: white;
  font-weight: bold;
}

/*------------------------------------*\
    #CHAPTERS
\*------------------------------------*/

.story-nav__chapters {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  float: left;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  width: 100%;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  overflow-x: auto;
}

.story-nav__chapter {
  font-size: 14px;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  color: #999999;
  list-style-type: none;
  padding-left: 0;
  vertical-align: middle;
  color: #f2f2f2;
  text-align: left;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 200px;
          flex: 1 1 200px;
}

.story-nav__chapter:not(:last-child) {
  border-right: 1px solid #999999;
}

.story-nav__chapter:first-child {
  min-width: 150px;
}

.story-nav__chapter__link {
  display: block;
  padding: 0.7em 1em;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.story-nav__chapter__link.is-active,
.story-nav__chapter__link:hover {
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
  background-color: #333333;
}

.story-nav__number {
  font-family: "Financier Display", serif;
  font-weight: 700;
  padding-right: 0.5em;
}

.story-nav__text {
  display: inline-block;
}

.story-nav__item--main {
  font-size: 14px;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/*------------------------------------*\
    #DROPDOWN
\*------------------------------------*/

.story-nav__dropdown {
  color: #999999;
  font-size: 14px;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  width: 300px;
  max-width: calc(100% - 50px - 1em);
  display: inline-block;
  margin-left: 1em;
}

.story-nav__dropdown .dropdown__title {
  color: #999999;
  border-color: #999999;
  background: #333333;
}

.story-nav__dropdown .dropdown__title span:not(.selected) {
  color: #999999;
}

.story-nav__dropdown .dropdown__title span.selected {
  pointer-events: none;
}

.story-nav__dropdown .dropdown__content ul {
  background: #1a1a1a;
}

.story-nav__dropdown .dropdown__content li a {
  color: #999999;
  background: #1a1a1a;
  font-size: 18px;
}

.story-nav__dropdown .dropdown__content li a:hover {
  background: #333333;
}

.story-nav__dropdown .dropdown__content .dropdown__header {
  border-color: #333333;
}

.story-nav__dropdown .dropdown__content .selected {
  color: #737373;
}

.nav--simple {
  width: 100%;
  top: 0;
  left: 0;
}

@media (min-width: 580px) {
  .nav--simple {
    position: absolute;
  }
}

.nav--simple__logo {
  position: relative;
  display: block;
  margin: 0 auto;
  height: 50px;
}

.page-wrapper {
  margin-bottom: 7.14286%;
  margin-top: 7.14286%;
}

.page--centered {
  text-align: center;
}

.page__content h1 {
  /* 1: Page Title */
  font-family: "Financier Display", serif;
  font-weight: 500;
  font-size: 72px;
  line-height: 1;
  color: #1a1a1a;
}

.page__content h2 {
  /* 3: Full Width Feed Title/Title on Listing */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 48px;
  line-height: 1;
  color: #1a1a1a;
}

.page__content p {
  /* 12: Paragraph Text */
  font-family: "Financier Text", serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: -0.25px;
  color: #1a1a1a;
}

.page__subhead,
p.page__subhead.page__subhead {
  /* 7: “Read More About” Headline on Listing/Directory Footer Headline */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 1.1;
  color: #1a1a1a;
}

.template-form {
  background: #e6e6e6;
}

.template-form__wrapper {
  background: white;
}

.template-form__form {
  padding: 2.5641% 4.16667%;
}

/**
 * TOC
 *
 * WIDGET
 * DIRECTORY-SEARCH-w
 * ARCHIVE-SEARCH-w
 * SCROLLER
 *
 */

.widget {
  clear: both;
}

.widget--full-width {
  margin-left: calc( (-100vw + 100%) / 2);
  margin-right: calc( (-100vw + 100%) / 2);
  margin-top: 3.44828%;
}

.widget--sidebar {
  margin-bottom: 11.11111%;
}

@media (min-width: 580px) {
  .widget--basic-large {
    padding-top: 5.26316%;
    padding-bottom: 5.26316%;
  }
}

@media (max-width: 580px) {
  .widget--basic-large {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

@media (min-width: 580px) {
  .widget--basic {
    padding-top: 5.26316%;
    padding-bottom: 3.44828%;
  }
}

@media (max-width: 580px) {
  .widget--basic {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

@media (min-width: 580px) {
  .widget--basic-small {
    padding-top: 2.5641%;
    padding-bottom: 2.5641%;
  }
}

@media (max-width: 580px) {
  .widget--basic-small {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}

.widget--remove-spacing + .widget.widget {
  margin-top: 0;
}

.widget--top {
  margin-top: 0;
}

.widget__header {
  margin-bottom: 2.04082%;
}

@media (max-width: 1024px) {
  .widget__header {
    text-align: center;
  }
}

.widget__title--simple {
  font-size: 18px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-bottom: 1px solid black;
  padding-bottom: 0.5em;
}

@media (min-width: 1024px) {
  .widget__title--with-link {
    width: 66.10169%;
    float: left;
    margin-right: 1.69492%;
  }
}

@media (max-width: 1024px) {
  .widget__title--with-link {
    text-align: center;
  }
}

.widget__link {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
}

@media (min-width: 1024px) {
  .widget__link {
    width: 32.20339%;
    float: right;
    margin-right: 0;
    text-align: right;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .widget__link {
    margin-top: 0.8em;
    display: block;
  }
}

@media (max-width: 580px) {
  .widget__link {
    display: none;
  }
}

.widget__link__icon {
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

/*------------------------------------*\
    #HERO
\*------------------------------------*/

.hero {
  text-align: center;
  color: white;
  width: 100%;
  background-size: cover;
  background-color: #999999;
  background-image: -webkit-linear-gradient(45deg, #00ADEF, #003e56);
  background-image: -o-linear-gradient(45deg, #00ADEF, #003e56);
  background-image: linear-gradient(45deg, #00ADEF, #003e56);
}

.hero__underlay {
  background: rgba(26, 26, 26, 0.3);
}

.hero__title {
  /* 1: Page Title */
  font-family: "Financier Display", serif;
  font-weight: 500;
  font-size: 72px;
  line-height: 1;
  color: #1a1a1a;
  color: #fff;
}

@media (max-width: 580px) {
  .hero__title {
    display: block;
  }
}

.hero__subtitle {
  /* 11: “Best In” Feed Description/Address and Contact Info on Listing/Directory Footer Categories */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.2;
  color: #1a1a1a;
  color: #fff;
  position: relative;
  display: inline-block;
  margin-top: 0.2em;
}

.hero__subtitle:before,
.hero__subtitle:after {
  content: "";
  position: absolute;
  top: 0;
  height: 1px;
  background: white;
  width: 70px;
  margin-top: 10px;
}

.hero__subtitle:before {
  right: 100%;
  margin-right: 15px;
}

.hero__subtitle:after {
  left: 100%;
  margin-left: 15px;
}

.hero__description {
  margin-top: 10px;
  /* 11: “Best In” Feed Description/Address and Contact Info on Listing/Directory Footer Categories */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.2;
  color: #1a1a1a;
  color: #fff;
  max-width: 700px;
  width: 100%;
  display: inline-block;
}

.hero__description a {
  position: relative;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  text-decoration: underline;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.hero__description a:hover {
  opacity: 0.8;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.hero__button {
  margin-top: 2.04082%;
}

/*------------------------------------*\
    #DIRECTORY-SEARCH-w
    #ARCHIVE-SEARCH-w
\*------------------------------------*/

.w-search {
  background-color: #999999;
  color: white;
}

.w-search__error-message {
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  color: #ff291c;
}

.w-directory-search__buttons {
  padding-top: 1.5rem;
}

.w-directory-search__buttons .button--search,
.w-directory-search__buttons .dropdown--search {
  text-overflow: ellipsis;
}

@media (max-width: 580px) {
  .w-directory-search__buttons .button--search,
  .w-directory-search__buttons .dropdown--search {
    margin-bottom: 1rem;
  }
}

@media (min-width: 580px) {
  .w-directory-search__header {
    text-align: center;
  }

  .w-directory-search__header .dropdown,
  .w-directory-search__header .widget__title {
    display: inline-block;
    vertical-align: middle;
  }

  .w-directory-search__header .widget__title {
    margin-right: 0.6em;
  }

  .w-directory-search__header .dropdown {
    text-align: left;
    width: 19.49153%;
  }
}

.w-directory-search__filters {
  margin: 0.8em 0;
  color: white;
  text-align: center;
}

.w-directory-search__filter-title {
  font-size: 14px;
  line-height: 1.5;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  display: inline-block;
}

.w-directory-search__filter {
  display: inline-block;
  color: white;
  font-size: 14px;
  line-height: 1.14;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border-right: 1px solid;
  padding: 0 0.5em;
}

.w-directory-search__filter:last-child {
  border-right: 0;
}

/*------------------------------------*\
    #STORIES-w
\*------------------------------------*/

.w-stories {
  margin-top: 3.44828%;
}

.w-stories-inner {
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  padding-top: 2.5641%;
  padding-bottom: 2.5641%;
}

.w-stories-inner--simple {
  padding-top: 2.5641%;
  padding-bottom: 2.5641%;
}

.w-stories__item:last-child {
  margin-right: 0;
}

.w-stories__item img {
  max-width: 100%;
}

.w-stories__image-wrapper {
  position: relative;
  overflow: hidden;
  overflow: hidden;
}

.w-stories__image-wrapper:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 66.66667%;
}

.w-stories__image-wrapper > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.w-stories__content {
  margin-top: 1em;
}

.w-stories__title,
.w-stories__item.card--sponsored .card__title,
.w-stories__item.card--house .card__title {
  font-size: 18px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .w-stories__title,
  .w-stories__item.card--sponsored .card__title,
  .w-stories__item.card--house .card__title {
    font-size: 14px;
    line-height: 1.14;
    letter-spacing: 0;
  }
}

/*------------------------------------*\
    #SCROLLER
\*------------------------------------*/

.scroller__items {
  width: 100%;
  overflow-y: hidden;
  overflow-x: auto;
  white-space: nowrap;
}

@media (max-width: 1024px) {
  .scroller__items {
    padding-left: 5.26316%;
  }
}

.scroller__item {
  width: 23.72881%;
  float: left;
  margin-right: 1.69492%;
  float: none;
  display: inline-block;
  white-space: normal;
  vertical-align: top;
}

@media (max-width: 1024px) and (min-width: 580px) {
  .scroller__item {
    width: 27.9661%;
  }
}

@media (max-width: 580px) {
  .scroller__item {
    width: 40.67797%;
  }
}

/*------------------------------------*\
    #FULL WIDTH
    #SIDEBAR
\*------------------------------------*/

.newsletter__social {
  padding-top: 0.7em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.newsletter__footer {
  /* 16: Image Credit/Tags/Multiple Locations Address Information */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1;
  color: #1a1a1a;
  color: #fff;
  margin-bottom: 0;
}

.newsletter__footer a {
  position: relative;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  text-decoration: underline;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.newsletter__footer a:hover {
  opacity: 0.8;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

/*------------------------------------*\
    #FULL WIDTH
\*------------------------------------*/

.w-newsletter {
  background-color: #1a1a1a;
  color: #fff;
  padding-left: 3.44828%;
  padding-right: 3.44828%;
  text-align: left;
}

.w-newsletter .hbspt-form {
  max-width: 300px;
}

.w-newsletter input[type="email"] {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  height: 30px;
  border: 1px solid #e6e6e6;
  padding-left: 0.5em;
  padding-right: 0.5em;
  width: 100%;
}

.w-newsletter input[type="submit"] {
  height: 30px;
  width: 100px;
  padding: 0;
  border: 1px solid #e6e6e6;
  border-left: 0;
}

.w-newsletter .hs-form .form-columns-2,
.w-newsletter .hs-form .form-columns-3 {
  width: 100%;
  max-width: calc(100% - 100px);
}

.w-newsletter .hs-email label {
  position: absolute !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  width: 1px !important;
  margin: -1px;
  padding: 0 !important;
  border: 0 !important;
}

.w-newsletter .hs-form fieldset.form-columns-2 .hs-form-field,
.w-newsletter .hs-form fieldset.form-columns-3 .hs-form-field {
  width: 100%;
}

.w-newsletter .hs-form fieldset.form-columns-2 .input,
.w-newsletter .hs-form fieldset.form-columns-3 .input {
  margin-right: 0;
}

.w-newsletter .hbspt-form {
  margin: 0 auto;
}

.w-newsletter .form-columns-3,
.w-newsletter .form-columns-2,
.w-newsletter .form-columns-1,
.w-newsletter .hs_submit {
  display: inline-block;
  vertical-align: top;
}

.w-newsletter__title {
  /* 9: Bubble Section Title */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 26px;
  line-height: 1.1;
  color: #1a1a1a;
  line-height: auto;
  margin: 0;
  padding-top: 0.2em;
}

.w-newsletter .w-newsletter__title {
  color: #fff;
  text-align: left;
}

.w-newsletter__text {
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  display: inline-block;
  max-width: 450px;
  margin-bottom: 0.5em;
  margin-top: 0.5em;
}

.w-newsletter .w-newsletter__text {
  color: #fff;
  text-align: left;
}

/*------------------------------------*\
    #SIDEBAR
\*------------------------------------*/

.ws-newsletter {
  background-color: #1a1a1a;
  color: #fff;
  padding-left: 5.26316%;
  padding-right: 5.26316%;
  text-align: left;
}

.ws-newsletter input[type="email"] {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  height: 30px;
  border: 1px solid #e6e6e6;
  padding-left: 0.5em;
  padding-right: 0.5em;
  width: 100%;
}

.ws-newsletter input[type="submit"] {
  height: 30px;
  width: 100px;
  padding: 0;
  border: 1px solid #e6e6e6;
  border-left: 0;
}

.ws-newsletter .hs-form .form-columns-2,
.ws-newsletter .hs-form .form-columns-3 {
  width: 100%;
  max-width: calc(100% - 100px);
}

.ws-newsletter .hs-email label {
  position: absolute !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  width: 1px !important;
  margin: -1px;
  padding: 0 !important;
  border: 0 !important;
}

.ws-newsletter .hs-form fieldset.form-columns-2 .hs-form-field,
.ws-newsletter .hs-form fieldset.form-columns-3 .hs-form-field {
  width: 100%;
}

.ws-newsletter .hs-form fieldset.form-columns-2 .input,
.ws-newsletter .hs-form fieldset.form-columns-3 .input {
  margin-right: 0;
}

.ws-newsletter .hbspt-form {
  margin: 0 auto;
}

.ws-newsletter .form-columns-3,
.ws-newsletter .form-columns-2,
.ws-newsletter .form-columns-1,
.ws-newsletter .hs_submit {
  display: inline-block;
  vertical-align: top;
}

.ws-newsletter__title {
  display: block;
  /* 9: Bubble Section Title */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 26px;
  line-height: 1.1;
  color: #1a1a1a;
  padding-bottom: 0.5em;
}

.w-newsletter .ws-newsletter__title {
  color: #fff;
  text-align: left;
}

.ws-newsletter__text {
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  margin-bottom: 0.5em;
}

.w-newsletter .ws-newsletter__text {
  color: #fff;
  text-align: left;
}

/** From wp-www */

.o-form-signup {
  position: relative;
  overflow: hidden;
}

.o-form-signup form {
  position: relative;
}

.o-form-signup form > * {
  line-height: 1.3;
}

.o-form-signup form .hs-form-field,
.o-form-signup form .hs-input,
.o-form-signup form .input,
.o-form-signup form fieldset {
  width: 100% !important;
  float: none !important;
  max-width: 100% !important;
}

.o-form-signup form input[type=email] {
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  background-color: #313131;
  padding: 0 50px 0 12.5px;
  border: 0;
  outline: 0;
  z-index: 0;
  line-height: 40px;
  height: 40px;
  width: 100%;
  color: white;
}

.o-form-signup form input[type=email]::-webkit-input-placeholder {
  color: #dedede;
}

.o-form-signup form input[type=email]:-ms-input-placeholder {
  color: #dedede;
}

.o-form-signup form input[type=email]::-ms-input-placeholder {
  color: #dedede;
}

.o-form-signup form input[type=email]::placeholder {
  color: #dedede;
}

.o-form-signup form input[type="submit"] {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  height: 40px;
  width: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: transparent;
  background-color: transparent;
  text-indent: 9999px;
  background-image: url('data:image/svg+xml,%3Csvg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M20 0L0 7.27148L5.4375 12.7109L16 4L7.28906 14.5625L12.7285 20L20 0Z" fill="%23ff291c"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px 20px;
  border: 0;
}

.o-form-signup form input[type="submit"]:hover {
  background-color: inherit;
  color: inherit;
}

.o-form-signup form label {
  color: #ff6868;
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
}

.o-form-signup form .hs-error-msg {
  display: block;
  margin-top: 6.25px;
}

.o-form-signup--secondary form input[type=email] {
  background-color: #f3f3f3;
  color: #1a1a1a;
  padding: 0 37.5px 0 12.5px;
  line-height: 46px;
  height: 46px;
}

.o-form-signup--secondary form input[type=email]::-webkit-input-placeholder {
  color: #1a1a1a;
}

.o-form-signup--secondary form input[type=email]:-ms-input-placeholder {
  color: #1a1a1a;
}

.o-form-signup--secondary form input[type=email]::-ms-input-placeholder {
  color: #1a1a1a;
}

.o-form-signup--secondary form input[type=email]::placeholder {
  color: #1a1a1a;
}

.o-form-signup--secondary form input[type="submit"] {
  height: 46px;
}

.simple-card {
  padding: 1.69492% 0;
  border-top: 1px solid #f2f2f2;
}

.simple-card:last-child {
  border-bottom: 1px solid #f2f2f2;
}

.simple-card__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.simple-card__image {
  height: auto;
  margin-right: 1.69492%;
  display: block;
  max-width: 300px;
}

.simple-card__image img {
  display: block;
}

@media (max-width: 1024px) {
  .simple-card__image {
    max-width: 150px;
  }
}

.simple-card__title {
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.simple-card__link:hover .simple-card__title {
  color: #820000;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.container {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}

.container:after {
  content: " ";
  display: block;
  clear: both;
}

@media (max-width: 1024px) and (min-width: 580px) {
  .container {
    padding-left: 25px;
    padding-right: 25px;
  }
}

@media (max-width: 580px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/**
 * Define element widths at different breakpoints
 *
 * @param {string} $layout - page layout as defined in $grid-scale
 * @param {number | null} $column-number - number of columns wide the element is at the large breakpoint
 * @param {number | null} $column-number-medium [$column-number] -
 *      number of columns wide the element is at the medium breakpoint
 *      if no value is given it will inherit the $column-number
 *      if breakpoint should be skipped completely, give value of null
 * @param {number | null} $column-number-small [$column-number-medium] -
 *      number of columns wide the element is at the small breakpoint
 *      if no value is given it will inherit the $column-number-medium
 *      if breakpoint should be skipped completely, give value of null
 * @param {string} $type [span] - define output as span or width (span mixin includes floats and margins, while width does not)
 *
 * @requires {mixin} susy's span
 * @requires {function} susy's span
 *
 * @requires {mixin} breakpoint
 * @requires {function} get-total-columns
 *
 * @group grid
 *
*/

/**
 * Define width and bleed of an element at a breakpoint according to the page layout
 *
 * @param {string} $size - name of element in $grid-column-scale (eg: dmag-xlarge)
 * @param {string} $breakpoint - breakpoint used in $grid-scale functions
 * @param {string} $layout - page layout as defined in $grid-scale
 * @param {string} $type-bleed [margin] - defines the type of bleed
 *      margin - a margin-based bleed is a negative margin given to an element
 *      direction - a direction-based bleed (left or right), often used with absolutely positioned elements
 * @param {string} $breakpoint2 [$breakpoint] - breakpoint used in $grid-column-scale functions
 *
 * @requires {function} susy's span
 *
 * @requires {mixin} breakpoint
 * @requires {function} span-gutter
 * @requires {function} get-total-columns
 * @requires {function} get-bleed-left
 * @requires {function} get-bleed-right
 * @requires {function} get-element-columns
 * @requires {function} get-total-columns
 * @requires {function} get-element-bleed-layout
 *
 * @group grid
 *
*/

/**
 * Define width and bleed of an element at multiple breakpoints according to the page layout
 *
 * @param {string} $size - name of element in $grid-column-scale (eg: dmag-xlarge)
 * @param {string} $type-bleed [margin] - defines the type of bleed
 *      margin - a margin-based bleed is a negative margin given to an element
 *      direction - a direction-based bleed (left or right), often used with absolutely positioned elements
 *
 * @requires {mixin} grid-column-scale
 *
 * @group grid
 *
*/

/*------------------------------------*\
    #HEADER SEARCH
\*------------------------------------*/

.header--search {
  width: 100%;
  background-color: white;
  z-index: 1002;
  border-bottom: 1px solid #e6e6e6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 1024px) {
  .is-searchForm-open:not(.is-template-search) {
    overflow: hidden;
    height: 100vh;
  }
}

.header--search__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1002;
  background-color: white;
  position: relative;
}

@media (max-width: 1024px) {
  .header--search__main {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
  }
}

.header--search__logo-wrapper {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.header--search__logo {
  width: auto;
  display: block;
}

@media (min-width: 1024px) {
  .header--search__logo {
    height: 60px;
  }
}

@media (max-width: 1024px) {
  .header--search__logo {
    height: 42px;
  }
}

.header--search__form {
  z-index: 1002;
  position: relative;
}

@media (min-width: 1024px) {
  .header--search__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-left: 1px solid #e6e6e6;
  }
}

@media (max-width: 1024px) {
  .header--search__form {
    width: 100%;
    padding: 6px;
    background-color: #e6e6e6;
    position: absolute;
    -webkit-transform: translateY(-100%);
         -o-transform: translateY(-100%);
            transform: translateY(-100%);
    border-bottom: 1px solid #c6c6c6;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: -o-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease, -o-transform 0.3s ease;
    top: 0;
    left: 0;
  }

  .header--search__form.is-active {
    -webkit-transform: translateY(42px);
         -o-transform: translateY(42px);
            transform: translateY(42px);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: -o-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease, -o-transform 0.3s ease;
  }
}

.header--search__clear {
  width: 24px;
  height: 24px;
  margin: 0 0.5em;
  cursor: pointer;
}

.header--search__clear path,
.header--search__clear g path,
.header--search__clear circle,
.header--search__clear rect,
.header--search__clear polyline,
.header--search__clear polygon,
.header--search__clear line {
  stroke-width: 4;
}

.header--search__clear path,
.header--search__clear g path,
.header--search__clear circle,
.header--search__clear rect,
.header--search__clear polyline,
.header--search__clear polygon,
.header--search__clear line {
  stroke-width: 3;
}

.header--search__clear .icon__accent.icon--stroke {
  stroke: white;
}

.header--search__clear .icon__accent.icon--fill {
  fill: white;
}

.header--search__clear .icon__accent.icon--switch {
  fill: white;
}

.header--search__clear .icon__main.icon--stroke {
  stroke: #c6c6c6;
}

.header--search__clear .icon__main.icon--fill {
  fill: #c6c6c6;
}

.header--search__clear .icon__main.icon--switch {
  fill: #c6c6c6;
}

.header--search__clear:hover {
  opacity: 0.8;
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 0.6;
  }
}

@-o-keyframes fade-in {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 0.6;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 0.6;
  }
}

.header--search__form-overlay {
  display: none;
}

.header--search__form-overlay.is-active {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 1001;
}

@media (max-width: 1024px) {
  .header--search__form-overlay.is-active {
    -webkit-animation: fade-in 0.3s ease-in;
         -o-animation: fade-in 0.3s ease-in;
            animation: fade-in 0.3s ease-in;
    opacity: 0.6;
    background-color: #000000;
  }
}

.header--search__placeholder {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  z-index: 10;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
  padding: 0 15px;
}

.header--search__input {
  border: none;
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
  padding: 0 15px;
}

.header--search__input:focus {
  outline: 0;
}

.header--search__box {
  height: 40px;
  line-height: 40px;
  border: 1px solid #c6c6c6;
  background-color: white;
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (min-width: 1024px) {
  .header--search__box {
    width: 250px;
    margin-left: 0.5em;
  }
}

@media (max-width: 1024px) {
  .header--search__box {
    font-size: 16px;
    height: 35px;
    line-height: 35px;
  }

  .header--search__box:not(:first-child) {
    margin-top: 6px;
  }
}

@media (min-width: 1024px) {
  .header--search__box--long {
    width: 400px;
  }
}

/*------------------------------------*\
    #SEARCH DROPDOWN
\*------------------------------------*/

.header--search__dropdown {
  background-color: white;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  position: absolute;
  z-index: 10;
  overflow-x: hidden;
  overflow-y: scroll;
  color: #000000;
  text-align: left;
}

@media (min-width: 1024px) {
  .header--search__dropdown {
    max-height: calc(100vh - 60px);
    top: 100%;
    width: 100%;
    left: 0;
  }
}

@media (max-width: 1024px) {
  .header--search__dropdown {
    width: 100vw;
    top: 82px;
    left: -6px;
    height: calc(100vh - 100% - 42px);
    display: none;
  }

  .is-searchForm-open .header--search__dropdown {
    display: block;
  }

  .is-archive-page .header--search__dropdown {
    top: auto;
    left: 0;
    width: calc(100vw - 30px);
  }
}

.header--search__dropdown ul {
  margin: 0;
}

.search-dropdown__header {
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  letter-spacing: 0.0625em;
  padding: 0.5rem 1rem;
  margin-top: 0.5rem;
  border-bottom: 1px solid #e6e6e6;
}

.search-dropdown__items:last-child li:last-child {
  margin-bottom: 1.5rem;
}

.search-dropdown__item {
  font-size: 14px;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5rem;
  padding: 0.6em 0.8em;
  border-bottom: 1px solid #e6e6e6;
  background-color: white;
  cursor: pointer;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.search-dropdown__item:hover {
  background-color: #f2f2f2;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.search-dropdown__item em {
  font-style: normal;
  color: #ff291c;
}

.search-dropdown__item--facet {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.search-dropdown__item--listing {
  display: block;
}

.search-dropdown__facet {
  padding-left: 1rem;
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  color: #c6c6c6;
  text-align: right;
  white-space: nowrap;
}

.search-dropdown__image {
  width: 40px;
  height: 40px;
  overflow: hidden;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
  background-size: cover;
  background-position: center center;
  background-color: #f2f2f2;
}

/*------------------------------------*\
    #LOCATION INPUT
\*------------------------------------*/

.header--search__location {
  position: relative;
}

.header--search__location-locator {
  cursor: pointer;
}

.header--search__location-locator .icon__accent.icon--stroke {
  stroke: white;
}

.header--search__location-locator .icon__accent.icon--fill {
  fill: white;
}

.header--search__location-locator .icon__accent.icon--switch {
  fill: white;
}

.header--search__location-locator .icon__main.icon--stroke {
  stroke: #c6c6c6;
}

.header--search__location-locator .icon__main.icon--fill {
  fill: #c6c6c6;
}

.header--search__location-locator .icon__main.icon--switch {
  fill: #c6c6c6;
}

.header--search__location-locator:hover .icon__accent.icon--stroke {
  stroke: white;
}

.header--search__location-locator:hover .icon__accent.icon--fill {
  fill: white;
}

.header--search__location-locator:hover .icon__accent.icon--switch {
  fill: white;
}

.header--search__location-locator:hover .icon__main.icon--stroke {
  stroke: #999999;
}

.header--search__location-locator:hover .icon__main.icon--fill {
  fill: #999999;
}

.header--search__location-locator:hover .icon__main.icon--switch {
  fill: #999999;
}

.header--search__location-locator.is-active .icon__accent.icon--stroke,
.header--search__location-locator.is-active:hover .icon__accent.icon--stroke {
  stroke: white;
}

.header--search__location-locator.is-active .icon__accent.icon--fill,
.header--search__location-locator.is-active:hover .icon__accent.icon--fill {
  fill: white;
}

.header--search__location-locator.is-active .icon__accent.icon--switch,
.header--search__location-locator.is-active:hover .icon__accent.icon--switch {
  fill: white;
}

.header--search__location-locator.is-active .icon__main.icon--stroke,
.header--search__location-locator.is-active:hover .icon__main.icon--stroke {
  stroke: #ff291c;
}

.header--search__location-locator.is-active .icon__main.icon--fill,
.header--search__location-locator.is-active:hover .icon__main.icon--fill {
  fill: #ff291c;
}

.header--search__location-locator.is-active .icon__main.icon--switch,
.header--search__location-locator.is-active:hover .icon__main.icon--switch {
  fill: #ff291c;
}

.header--search__location-locator.is-error .icon__accent.icon--stroke,
.header--search__location-locator.is-error:hover .icon__accent.icon--stroke {
  stroke: white;
}

.header--search__location-locator.is-error .icon__accent.icon--fill,
.header--search__location-locator.is-error:hover .icon__accent.icon--fill {
  fill: white;
}

.header--search__location-locator.is-error .icon__accent.icon--switch,
.header--search__location-locator.is-error:hover .icon__accent.icon--switch {
  fill: white;
}

.header--search__location-locator.is-error .icon__main.icon--stroke,
.header--search__location-locator.is-error:hover .icon__main.icon--stroke {
  stroke: #ff291c;
}

.header--search__location-locator.is-error .icon__main.icon--fill,
.header--search__location-locator.is-error:hover .icon__main.icon--fill {
  fill: #ff291c;
}

.header--search__location-locator.is-error .icon__main.icon--switch,
.header--search__location-locator.is-error:hover .icon__main.icon--switch {
  fill: #ff291c;
}

@media (max-width: 1024px) {
  .header--search__location-locator {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 0.5em;
  }
}

.header--search__location-close {
  display: none;
}

.is-active ~ .header--search__location-close {
  display: inline-block;
}

.header--search__clear-all,
.header--search__submit {
  padding-top: 0;
  padding-bottom: 0;
  height: 40px;
  line-height: 40px;
}

@media (min-width: 1024px) {
  .header--search__clear-all,
  .header--search__submit {
    margin-left: 0.4em;
  }
}

@media (max-width: 1024px) {
  .header--search__clear-all,
  .header--search__submit {
    display: block;
    margin-top: 6px;
    width: 100%;
  }
}

.header--search__buttons {
  padding-right: 0.5rem;
  white-space: nowrap;
}

.is-searchForm-open:not(.is-template-search) .header--search__buttons {
  background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0), white 20px);
  background-image: -o-linear-gradient(left, rgba(255, 255, 255, 0), white 20px);
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0), white 20px);
  position: absolute;
  right: 0;
  top: 0;
  padding-left: 40px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.header--search__button {
  padding: 0;
}

.header--search__button--primary {
  color: #ff291c;
}

.is-searchForm-open .header--search__button--primary .icon .icon__accent.icon--stroke {
  stroke: white;
}

.is-searchForm-open .header--search__button--primary .icon .icon__accent.icon--fill {
  fill: white;
}

.is-searchForm-open .header--search__button--primary .icon .icon__accent.icon--switch {
  fill: white;
}

.is-searchForm-open .header--search__button--primary .icon .icon__main.icon--stroke {
  stroke: #ff291c;
}

.is-searchForm-open .header--search__button--primary .icon .icon__main.icon--fill {
  fill: #ff291c;
}

.is-searchForm-open .header--search__button--primary .icon .icon__main.icon--switch {
  fill: #ff291c;
}

.header--search__icon--close path,
.header--search__icon--close g path,
.header--search__icon--close circle,
.header--search__icon--close rect,
.header--search__icon--close polyline,
.header--search__icon--close polygon,
.header--search__icon--close line {
  stroke-width: 7;
}

.visible--is-searchForm-open {
  display: none;
}

.is-searchForm-open .visible--is-searchForm-open {
  display: inline-block;
}

.is-searchForm-open .hidden--is-searchForm-open {
  display: none;
}

.dir-logo {
  display: inline-block;
}

.dir-logo__image {
  margin: 0 auto;
  width: 80px;
  height: auto;
}

.dir-logo__text {
  display: block;
  padding-top: 0.2em;
  font-family: "Financier Display", serif;
  font-weight: 500;
  font-size: 19px;
  line-height: 1;
}

/*------------------------------------*\
    #DROPDOWN
\*------------------------------------*/

.header--search__title {
  /* 10: Selected Category (Next to D Logo)/“Results For” Title in Feed */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 1.1;
  color: #1a1a1a;
  padding: 0 0.3em;
  vertical-align: middle;
  display: inline-block;
  padding-right: 25px;
  width: auto;
  max-width: 100%;
  margin-left: 0.5em;
}

.is-theme-search .header--search__title,
.is-theme-event .header--search__title {
  width: 100%;
}

.dir-dropdown .dropdown {
  height: 100%;
  top: 0;
  color: #000000;
}

.dir-dropdown .dropdown .dropdown__title {
  color: #000000;
  border-color: white;
  background: white;
}

.dir-dropdown .dropdown .dropdown__title span:not(.selected) {
  color: #828282;
}

.dir-dropdown .dropdown .dropdown__title span.selected {
  pointer-events: none;
}

.dir-dropdown .dropdown .dropdown__content ul {
  background: white;
}

.dir-dropdown .dropdown .dropdown__content li a {
  color: #999999;
  background: white;
  font-size: 18px;
}

.dir-dropdown .dropdown .dropdown__content li a:hover {
  background: #f2f2f2;
}

.dir-dropdown .dropdown .dropdown__content .dropdown__header {
  border-color: #999999;
}

.dir-dropdown .dropdown .dropdown__content .selected {
  color: black;
}

.dir-dropdown .dropdown .dropdown__icon path,
.dir-dropdown .dropdown .dropdown__icon g path,
.dir-dropdown .dropdown .dropdown__icon circle,
.dir-dropdown .dropdown .dropdown__icon rect,
.dir-dropdown .dropdown .dropdown__icon polyline,
.dir-dropdown .dropdown .dropdown__icon polygon,
.dir-dropdown .dropdown .dropdown__icon line {
  stroke-width: 5;
}

.dir-dropdown .dropdown .dropdown__content {
  z-index: 100;
  top: 100%;
}

@media (max-width: 1024px) {
  .dir-dropdown .dropdown .dropdown__content > ul {
    position: fixed;
  }
}

@media (max-width: 1024px) {
  .dir-dropdown .dropdown .dropdown--search {
    padding-right: 0;
  }
}

@media (max-width: 1024px) {
  .dir-dropdown.dir-form-dropdown .dropdown .dropdown__content > ul {
    position: relative;
  }
}

.dir-header-dropdown {
  min-width: 0;
}

@media (max-width: 1024px) {
  .dir-header-dropdown {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin-right: 1em;
  }
}

.dir-header-dropdown .dropdown {
  max-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1em 0 0.7em;
}

.dir-header-dropdown .dropdown .dropdown__title {
  /* 10: Selected Category (Next to D Logo)/“Results For” Title in Feed */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 1.1;
  color: #1a1a1a;
  padding: 0 0.3em;
  vertical-align: middle;
  display: inline-block;
  padding-right: 25px;
  width: auto;
  max-width: 100%;
}

.dir-header-dropdown .dropdown .dropdown__title span {
  white-space: no-wrap;
}

.dir-header-dropdown .dropdown .dropdown__icon {
  right: -5px;
}

@media (min-width: 1024px) {
  .dir-header-dropdown .dropdown .dropdown__content {
    min-width: 250px;
  }
}

.dir-dropdown:not(.dir-form-dropdown) .open .dropdown__title {
  z-index: -1;
}

.dir-form-dropdown.dir-form-dropdown.dir-form-dropdown {
  padding: 0;
  text-align: left;
}

@media (max-width: 1024px) {
  .dir-form-dropdown.dir-form-dropdown.dir-form-dropdown {
    margin-bottom: 1rem;
  }
}

.dir-form-dropdown.dir-form-dropdown.dir-form-dropdown .dropdown .dropdown__title {
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  line-height: inherit;
}

.dropdown__subhead {
  padding-left: 1rem;
  padding-right: 1rem;
  /* 15: Information Titles on Listing (Awards, Company, Etc.)  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #828282;
  line-height: 40px;
}

.pac-container {
  z-index: 1002;
}

@media (min-width: 1024px) {
  body:not(.is-home-page) .pac-container {
    width: 250px !important;
  }
}

@media (max-width: 1024px) {
  body:not(.is-home-page) .pac-container {
    width: 100vw !important;
    top: 130px !important;
    left: 0 !important;
  }
}

.dir-dropdown-overlay {
  display: none;
  position: fixed;
  width: 100%;
  z-index: 50;
  bottom: 0;
  left: 0;
  opacity: 0.1;
  background-color: black;
}

@media (min-width: 1024px) {
  .dir-dropdown-overlay {
    top: 60px;
    height: calc(100vh - 60px);
  }
}

@media (max-width: 1024px) {
  .dir-dropdown-overlay {
    top: 42px;
    height: calc(100vh - 42px);
  }
}

.button--search__inner {
  padding: 0 1rem;
  border: none;
}

.dropdown.open + .dir-dropdown-overlay {
  display: block;
}

.is-bad-search .dropdown.open + .dir-dropdown-overlay {
  display: none;
}

.dir-location-error-message {
  font-size: 10px;
  line-height: 1.2;
  background-color: #000000;
  color: white;
  padding: 0.8em 1em;
  border-radius: 3px;
  top: 110%;
  right: 0;
  text-align: center;
  text-transform: none;
  position: absolute;
  z-index: 1;
}

.dir-location-error-message a {
  text-decoration: underline;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.dir-location-error-message a:hover {
  opacity: 0.5;
}

.dir-header__linkback {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 0 1em;
  color: inherit;
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  color: #fff;
  text-align: right;
}

@media (max-width: 1024px) {
  .dir-header__linkback {
    display: none;
  }
}

.dir-header .dir-header__linkback {
  position: absolute;
  top: 0;
  right: 0;
  padding-top: 0.5em;
}

.dir-header__linkback-link {
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-header__linkback-link:hover {
  color: #ff6868;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.button-group--full .button {
  width: 100%;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

/*------------------------------------*\
    #SECTION
\*------------------------------------*/

.dir-section {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}

.dir-section:after {
  content: " ";
  display: block;
  clear: both;
}

@media (max-width: 1024px) {
  .dir-section {
    margin-left: 3.84615%;
    margin-right: 3.84615%;
  }
}

@media (max-width: 580px) {
  .dir-section {
    padding-top: 60px;
    padding-bottom: 30px;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-section {
    padding-top: 90px;
    padding-bottom: 45px;
  }
}

@media (min-width: 1024px) {
  .dir-section {
    padding-top: 120px;
    padding-bottom: 60px;
  }
}

@media (max-width: 580px) {
  .dir-section ~ .dir-section {
    padding-top: 30px;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-section ~ .dir-section {
    padding-top: 45px;
  }
}

@media (min-width: 1024px) {
  .dir-section ~ .dir-section {
    padding-top: 60px;
  }
}

.dir-section__title {
  /* 3: Full Width Feed Title/Title on Listing */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 48px;
  line-height: 1;
  color: #1a1a1a;
  padding-bottom: 0.3em;
  border-bottom: 1px solid #000000;
  margin-bottom: 2.85714%;
}

.dir-section__title--noSpacing {
  margin-bottom: 0;
}

.dir-section__button {
  margin-top: 2em;
}

.dir-section__pagination {
  margin-top: 3em;
  text-align: center;
}

/*------------------------------------*\
    #CTA-w CTA = call to action
\*------------------------------------*/

.w-cta {
  color: white;
  text-align: center;
  background-color: #4c4a4a;
  background-size: cover;
  background-position: center center;
  background-blend-mode: overlay;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.w-cta:hover {
  background-color: #333333;
}

.w-cta__title {
  /* 2: Full Bleed Widget Title */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 62px;
  line-height: 0.9;
  color: #1a1a1a;
  color: #fff;
}

.w-cta__text {
  /* 11: “Best In” Feed Description/Address and Contact Info on Listing/Directory Footer Categories */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.2;
  color: #1a1a1a;
  color: #fff;
  max-width: 600px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  float: none;
}

.w-cta__button {
  margin-top: 2em;
}

/*------------------------------------*\
    #LISTS
\*------------------------------------*/

.dir-list {
  -webkit-column-count: 4;
          column-count: 4;
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-list {
    -webkit-column-count: 3;
            column-count: 3;
  }
}

@media (max-width: 580px) {
  .dir-list {
    -webkit-column-count: 2;
            column-count: 2;
  }
}

.dir-list__item {
  list-style: disc;
  padding: 0.4em 0;
  margin-left: 1em;
  page-break-inside: avoid;
  -webkit-column-break-inside: avoid;
          break-inside: avoid;
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-list__item a:hover {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-listCard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1em 0;
  border-bottom: 1px solid #f2f2f2;
  width: 100%;
}

.dir-listCard__image-wrapper {
  -ms-flex-preferred-size: 100px;
      flex-basis: 100px;
  width: 100px;
  margin-right: 1rem;
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.dir-listCard__image {
  display: block;
}

.dir-listCard__title {
  /* 8: Listing Heading - Feed/Recently Added Listings */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.1;
  color: #1a1a1a;
  font-size: 26px;
  font-weight: 400;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-right: 1rem;
}

.dir-listCard:hover .dir-listCard__title {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-listCard__text {
  width: 65%;
  -ms-flex-preferred-size: 65%;
      flex-basis: 65%;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

@media (max-width: 580px) {
  .dir-listCard__text {
    display: none;
  }
}

.dir-listCard-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.dir-listCard__item {
  position: relative;
  padding: 1em 0;
}

@media (max-width: 580px) {
  .dir-listCard__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    border-bottom: 1px solid #f2f2f2;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-listCard__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
  }

  .dir-listCard__item:nth-of-type(2n+1):before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 200%;
    height: 1px;
    background-color: #f2f2f2;
  }
}

@media (min-width: 1024px) {
  .dir-listCard__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
  }

  .dir-listCard__item:nth-of-type(3n+1):before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 300%;
    height: 1px;
    background-color: #f2f2f2;
  }
}

.dir-listCard__item .dir-listCard__title {
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-listCard__item:hover .dir-listCard__title {
  color: #ff291c;
}

.dir-tag {
  margin: 0 1em 1em 0;
}

/*------------------------------------*\
    #UNEVEN GRID
\*------------------------------------*/

.uneven-grid__image {
  height: 350px;
  margin-bottom: 1.88679%;
  background-size: cover;
  background-color: #656161;
  background-position: center center;
  background-blend-mode: overlay;
  position: relative;
  display: block;
  text-align: center;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.uneven-grid__image:hover {
  background-color: #333333;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.uneven-grid__image--all {
  width: 32.07547%;
  float: left;
}

.uneven-grid__image--all:nth-child(3n + 1) {
  margin-left: 0;
  margin-right: -100%;
  clear: both;
  margin-left: 0;
}

.uneven-grid__image--all:nth-child(3n + 2) {
  margin-left: 33.96226%;
  margin-right: -100%;
  clear: none;
}

.uneven-grid__image--all:nth-child(3n + 3) {
  margin-left: 67.92453%;
  margin-right: -100%;
  clear: none;
}

.uneven-grid__title {
  /* 4: Directory Category Titles (in Tiles) */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 500;
  font-size: 36px;
  line-height: 1.1;
  color: #1a1a1a;
  color: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media (max-width: 580px) {
  .uneven-grid__title {
    font-size: 30px;
  }
}

@media (min-width: 1024px) {
  .uneven-grid__image--one {
    width: 100%;
  }

  .uneven-grid__image--one-half {
    width: 49.0566%;
    float: left;
    margin-right: 1.88679%;
  }

  .uneven-grid__image--one-third {
    width: 32.07547%;
    float: left;
    margin-right: 1.88679%;
  }

  .uneven-grid__image--one-fourth {
    width: 23.58491%;
    float: left;
    margin-right: 1.88679%;
  }

  .uneven-grid__image--two-thirds {
    width: 66.03774%;
    float: left;
    margin-right: 1.88679%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .uneven-grid__image--one,
  .uneven-grid__image--one-half,
  .uneven-grid__image--one-third,
  .uneven-grid__image--one-fourth,
  .uneven-grid__image--two-thirds {
    width: 49.0566%;
    float: left;
  }

  .uneven-grid__image--one:nth-child(2n + 1),
  .uneven-grid__image--one-half:nth-child(2n + 1),
  .uneven-grid__image--one-third:nth-child(2n + 1),
  .uneven-grid__image--one-fourth:nth-child(2n + 1),
  .uneven-grid__image--two-thirds:nth-child(2n + 1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }

  .uneven-grid__image--one:nth-child(2n + 2),
  .uneven-grid__image--one-half:nth-child(2n + 2),
  .uneven-grid__image--one-third:nth-child(2n + 2),
  .uneven-grid__image--one-fourth:nth-child(2n + 2),
  .uneven-grid__image--two-thirds:nth-child(2n + 2) {
    margin-left: 50.9434%;
    margin-right: -100%;
    clear: none;
  }
}

@media (max-width: 580px) {
  .uneven-grid__image {
    height: 200px;
  }

  .uneven-grid__image--one,
  .uneven-grid__image--one-half,
  .uneven-grid__image--one-third,
  .uneven-grid__image--one-fourth,
  .uneven-grid__image--two-thirds {
    width: 100%;
  }
}

.uneven-grid__image--last {
  margin-right: 0;
}

/*------------------------------------*\
    #BASIC CARD
\*------------------------------------*/

.dir-basicCard {
  padding-bottom: 3em;
}

@media (min-width: 1024px) {
  .dir-basicCard {
    width: 32.07547%;
    float: left;
  }

  .dir-basicCard:nth-child(3n + 1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }

  .dir-basicCard:nth-child(3n + 2) {
    margin-left: 33.96226%;
    margin-right: -100%;
    clear: none;
  }

  .dir-basicCard:nth-child(3n + 3) {
    margin-left: 67.92453%;
    margin-right: -100%;
    clear: none;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-basicCard {
    width: 49.0566%;
    float: left;
  }

  .dir-basicCard:nth-child(2n + 1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }

  .dir-basicCard:nth-child(2n + 2) {
    margin-left: 50.9434%;
    margin-right: -100%;
    clear: none;
  }
}

.dir-basicCard__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.dir-basicCard:hover .dir-basicCard__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0.8;
}

.dir-basicCard__title {
  font-size: 21px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  padding-top: 0.5em;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

@media (max-width: 580px) {
  .dir-basicCard__title {
    font-size: 18px;
    line-height: 1.1;
    letter-spacing: 0;
  }
}

.dir-basicCard:hover .dir-basicCard__title {
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
  color: #ff291c;
}

.dir-basicCard__text {
  padding-top: 1em;
}

/*------------------------------------*\
    #CIRCLE IMAGE
\*------------------------------------*/

.ws-dir__content.content--switch {
  width: 100%;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding-top: 1.5em;
}

.ws-dir__content.content--switch .ws-dir__item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: normal;
  padding: 0 1em 2em 1em;
  width: 33.33333%;
}

@media (max-width: 580px) {
  .ws-dir__content.content--switch .ws-dir__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 33.33333%;
  }
}

@media (max-width: 420px) {
  .ws-dir__content.content--switch .ws-dir__item {
    width: 50%;
  }
}

@media (min-width: 581px) and (max-width: 900px) {
  .ws-dir__content.content--switch .ws-dir__item {
    width: 50%;
  }
}

.ws-dir__content.content--switch .ws-dir__image {
  width: 100px;
  height: auto;
  border-radius: 50%;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  max-width: 100%;
  margin-right: 1em;
}

.ws-dir__item:hover .ws-dir__content.content--switch .ws-dir__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0.8;
}

@media (max-width: 580px) {
  .ws-dir__content.content--switch .ws-dir__image {
    width: 70px;
    margin-right: 0;
  }
}

.ws-dir__content.content--switch .ws-dir__link {
  max-width: 100px;
  white-space: normal;
  padding-top: 0;
  /* 9: Bubble Section Title */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 26px;
  line-height: 1.1;
  color: #1a1a1a;
  font-size: 24px;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.ws-dir__item:hover .ws-dir__content.content--switch .ws-dir__link {
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
  color: #ff291c;
}

@media (max-width: 580px) {
  .ws-dir__content.content--switch .ws-dir__link {
    font-size: 12px;
    text-align: center;
  }
}

.ws-dir__find-it {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: normal;
  padding: 0 1em 1.3em 1em;
}

@media (max-width: 580px) {
  .ws-dir__find-it {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 28%;
            flex: 0 0 28%;
  }
}

@media (max-width: 374px) {
  .ws-dir__find-it {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
  }
}

@media (max-width: 1024px) {
  .ws-dir__find-it {
    padding-bottom: 0;
  }
}

.w-dir__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

@media (min-width: 580px) {
  .w-dir__buttons {
    padding-left: 1.5em;
  }
}

@media (max-width: 580px) {
  .w-dir__buttons {
    margin-top: 0.3em;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    white-space: nowrap;
  }
}

.w-dir__button {
  padding-right: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (min-width: 1024px) {
  .w-dir__button {
    margin: 0 0.5rem;
  }

  .w-dir__button:not(:last-child) {
    border-right: 1px solid #e6e6e6;
  }
}

@media (max-width: 580px) {
  .w-dir__button {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .w-dir__button:first-child {
    padding-left: 1rem;
  }
}

.w-dir__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 580px) {
  .w-dir__image {
    margin-right: 1em;
    width: 70px;
    height: auto;
    border-radius: 50%;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

@media (max-width: 580px) {
  .w-dir__image {
    width: 50px;
    height: auto;
    border-radius: 50%;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

.w-dir__button:hover .w-dir__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0.7;
}

.w-dir__name {
  font-size: 10px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #606060;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.w-dir__button:hover .w-dir__name {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

@media (max-width: 580px) {
  .w-dir__name {
    margin-top: 0.5em;
    font-size: 9px;
  }
}

/*------------------------------------*\
    CARDS
\*------------------------------------*/

.card-deck--switch {
  overflow: hidden;
}

/**
 * @see #DMAG-0070 [BW] 2019-11-01
 */

#algolia-1-articles.card-deck--switch .card.card--sponsored {
  border-top: 22px solid white;
  padding-bottom: 400px;
  margin-bottom: -380px;
}

#algolia-1-articles.card-deck--switch .card.card--sponsored:last-child {
  overflow: visible;
}

#algolia-1-articles.card-deck--switch .card.card--sponsored:last-child:after {
  content: ' ';
  position: absolute;
  top: -52px;
  left: 0;
  width: 220%;
  height: 100%;
  background: #fff;
  margin-left: 101%;
  border-top: 52px solid #fff;
}

#algolia-1-articles.card-deck--switch .byline {
  display: block;
  padding-top: 10px;
  color: #5f5f5f;
}

.card-deck--overlay-text {
  margin-right: -8px;
  margin-left: -8px;
}

.card-deck--overlay-text.card-1-col .card--overlay-text {
  width: 100%;
}

.card-deck--overlay-text.card-1-col .card--block-link {
  height: auto;
}

@media (min-width: 580px) {
  .card-deck--overlay-text.card-1-col .card--block-link {
    height: auto;
    min-height: 300px;
  }
}

.card-deck--overlay-text.card-2-col .card--overlay-text {
  width: 50%;
}

@media (max-width: 580px) {
  .card-deck--overlay-text.card-2-col .card--overlay-text {
    width: 100%;
  }
}

.card-deck--overlay-text.card-2-col .card--block-link {
  height: auto;
}

@media (min-width: 581px) and (max-width: 699px) {
  .card-deck--overlay-text.card-2-col .card--block-link {
    height: 520px;
  }
}

@media (min-width: 700px) and (max-width: 859px) {
  .card-deck--overlay-text.card-2-col .card--block-link {
    height: 420px;
  }
}

@media (min-width: 860px) and (max-width: 1023px) {
  .card-deck--overlay-text.card-2-col .card--block-link {
    height: 390px;
  }
}

@media (min-width: 1024px) {
  .card-deck--overlay-text.card-2-col .card--block-link {
    height: 340px;
  }
}

.card-deck--overlay-text.card-3-col .card--overlay-text {
  width: 33.33333%;
}

@media (max-width: 580px) {
  .card-deck--overlay-text.card-3-col .card--overlay-text {
    width: 100%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(1),
  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(2) {
    width: 50%;
  }

  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(3) {
    width: 100%;
  }
}

@media (max-width: 580px) {
  .card-deck--overlay-text.card-3-col .card--overlay-text .card--block-link {
    height: auto;
  }
}

@media (min-width: 581px) and (max-width: 699px) {
  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(1) .card--block-link,
  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(2) .card--block-link {
    height: 520px;
  }

  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(3) .card--block-link {
    height: auto;
    min-height: 300px;
  }
}

@media (min-width: 700px) and (max-width: 859px) {
  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(1) .card--block-link,
  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(2) .card--block-link {
    height: 420px;
  }

  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(3) .card--block-link {
    height: auto;
    min-height: 300px;
  }
}

@media (min-width: 860px) and (max-width: 1023px) {
  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(1) .card--block-link,
  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(2) .card--block-link {
    height: 390px;
  }

  .card-deck--overlay-text.card-3-col .card--overlay-text:nth-of-type(3) .card--block-link {
    height: auto;
    min-height: 300px;
  }
}

@media (min-width: 1024px) {
  .card-deck--overlay-text.card-3-col .card--overlay-text .card--block-link {
    height: 370px;
  }
}

@media (min-width: 580px) {
  .card-deck--overlay-text .card--text {
    max-width: 450px;
    margin: 0 auto;
  }
}

.card--overlay-text {
  float: left;
  margin-bottom: 16px;
  padding-right: 8px;
  padding-left: 8px;
}

.card--overlay-text .card--block-link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  background-size: cover;
  background-color: #4c4a4a;
  background-position: center center;
  background-blend-mode: overlay;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.card--overlay-text .card--block-link:hover {
  background-color: #333333;
}

.card--overlay-text .card--image-wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
}

.card--overlay-text .card--content {
  padding: 30px;
  /* 11: “Best In” Feed Description/Address and Contact Info on Listing/Directory Footer Categories */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.2;
  color: #1a1a1a;
  font-size: 18px;
  color: #fff;
  text-align: center;
}

@media (max-width: 1024px) and (min-width: 580px) {
  .card--overlay-text .card--content {
    padding: 30px 20px 30px 20px;
  }
}

.card--overlay-text .card--title {
  /* 5: “Best In” Feed Title */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 500;
  font-size: 36px;
  line-height: 1.1;
  color: #1a1a1a;
  color: #fff;
  text-align: center;
}

.widget--full-width {
  margin-top: 0;
}

.dir-list.dir-list-nobullets .dir-list__item {
  list-style: none;
  margin-left: 0;
}

.dropdown--narrow-bordered {
  max-width: 300px;
  margin: 2em auto 1em auto;
  border: solid 1px #bbb;
}

.dir-dropdown .dropdown .icon__main.icon--stroke {
  stroke: #ff291c;
}

.dir-facet__content {
  background-color: #fff;
}

.find-it--subscribe {
  width: 50%;
  float: left;
}

.w-directory__recommended-list {
  margin: 0.8em 0;
  color: #fff;
  text-align: center;
}

.w-directory__recommended-title {
  display: inline-block;
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  color: #fff;
  line-height: 1.5;
}

.w-directory__recommended-item {
  display: inline-block;
  padding: 0 0.5em;
  border-right: 1px solid;
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  font-size: 16px;
  color: #fff;
}

.w-directory__recommended-item a {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.w-directory__recommended-item a:hover {
  opacity: 0.5;
}

.w-directory__recommended-item:last-child {
  border-right: 0;
}

/*------------------------------------*\
    #ITEM
    #TOP SHELF
    #FACETS
    #CARDS
    #MAP
    #DIRECTORY FACTS (search)
\*------------------------------------*/

html {
  font-size: 14px;
  line-height: 1.5;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.image {
  width: 100%;
}

.dir-badge {
  padding: 0.3em 0.5em;
  font-size: 9px;
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  display: inline-block;
  position: absolute;
  background: #ff291c;
  color: white;
  left: 0;
  top: 0;
  margin-right: 0.25rem;
}

.dir-badge-blue {
  background: #1a1a1a;
  /* not $color__blue-dmag--dark; */
}

.dir-badge-black {
  background: #828282;
}

.is-bad-search .dir-top-shelf,
.is-bad-search .dir-body,
.is-bad-search .header--search__form,
.is-bad-search .dir-header__linkback {
  display: none;
}

.is-bad-search .header--search {
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.is-bad-search .header--search__form {
  border-left: none;
}

.dir-body {
  position: relative;
}

.is-layout-with-sidebar .dir-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
}

@media (min-width: 1024px) {
  .is-layout-with-sidebar .dir-body {
    max-width: 100%;
  }
}

@media screen and (min-width: 1230px) {
  .is-layout-with-sidebar .dir-body {
    width: 1300px;
    padding-left: 60px;
  }
}

@media (max-width: 1024px) {
  .is-layout-with-sidebar .dir-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.is-layout-cards-images .dir-body {
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 1440px) {
  .is-layout-cards-images .dir-body {
    max-width: 1440px;
  }
}

@media screen and (min-width: 1280px) and (max-width: 1440px) {
  .is-layout-cards-images .dir-body {
    max-width: 1280px;
  }
}

@media screen and (min-width: 960px) and (max-width: 1280px) {
  .is-layout-cards-images .dir-body {
    max-width: 960px;
  }
}

@media screen and (min-width: 640px) and (max-width: 960px) {
  .is-layout-cards-images .dir-body {
    max-width: 640px;
  }
}

@media screen and (max-width: 640px) {
  .is-layout-cards-images .dir-body {
    max-width: 100%;
  }
}

.dir-body-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-bottom: 1px solid #e6e6e6;
}

@media (max-width: 1024px) {
  .dir-body-top {
    -webkit-transition: margin 0.3s ease;
    -o-transition: margin 0.3s ease;
    transition: margin 0.3s ease;
  }

  .is-template-search.is-searchForm-open .dir-body-top {
    -webkit-transition: margin 0.3s ease;
    -o-transition: margin 0.3s ease;
    transition: margin 0.3s ease;
    margin-top: 42px;
  }
}

.dir-body-top .dir-search-hero {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.dir-body-top .dir-adunits-top {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.dir-body-top .dir-top-shelf {
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
}

@media (max-width: 1024px) {
  .dir-body-top .dir-search-hero {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }

  .dir-body-top .dir-adunits-top {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }

  .dir-body-top .dir-top-shelf {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

.dir-loader {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 105;
  display: none;
}

.dir-loader img {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.dir-loader.is-active {
  display: block;
}

@media (max-width: 1024px) {
  .dir-loader {
    z-index: 1001;
  }
}

.dir-search-hero {
  position: relative;
}

.dir-search-hero__years {
  position: relative;
  margin-top: 1.5em;
  font-size: 80%;
  line-height: 1.5;
}

.dir-search-hero__year {
  margin-left: 0.5em;
  display: inline-block;
}

@media (max-width: 580px) {
  .dir-search-hero__year {
    margin-left: 1.2em;
    margin-bottom: 0.5em;
  }
}

/*------------------------------------*\
    #TOP SHELF
\*------------------------------------*/

.dir-top-shelf {
  z-index: 1000;
  display: block;
  padding: 0 1rem 1rem 1rem;
  background-color: #f2f2f2;
  color: #999999;
  width: 100%;
  position: relative;
  font-size: 14px;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  font-size: 16px;
}

@media (max-width: 1024px) {
  .dir-top-shelf {
    padding-top: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }

  .is-layout-with-sidebar .dir-top-shelf {
    margin-left: calc( (-100vw + 100%) / 2);
    margin-right: calc( (-100vw + 100%) / 2);
    width: 100vw;
  }
}

@media (min-width: 1024px) {
  .dir-top-shelf__item {
    margin-top: 1rem;
  }
}

@media (min-width: 1024px) {
  .dir-top-shelf__facets {
    float: left;
  }
}

@media (max-width: 1024px) {
  .dir-top-shelf__facets {
    width: 100%;
    clear: both;
    margin-bottom: 10px;
    border-bottom: 1px solid #c6c6c6;
    float: left;
  }
}

@media (min-width: 1024px) {
  .dir-top-shelf__sorting {
    float: left;
    margin-left: 1em;
    padding-left: 1em;
    border-left: 1px solid #e6e6e6;
  }
}

.dir-top-shelf__label {
  display: inline-block;
  margin-right: 0.3em;
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  color: #333333;
  cursor: pointer;
}

@media (max-width: 1024px) {
  .dir-top-shelf__label--facets {
    padding: 10px 0;
  }
}

.dir-top-shelf__top {
  padding-bottom: 1rem;
  border-bottom: 1px solid #e6e6e6;
  width: 100%;
}

.dir-top-shelf__facetsFeatured {
  display: inline-block;
  font-size: 0;
}

.dir-top-shelf__facetFeatured {
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  color: #000000;
  cursor: pointer;
  display: inline-block;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.dir-top-shelf__facetFeatured:hover {
  opacity: 0.5;
}

.dir-top-shelf__facetFeatured:not(:last-child) {
  border-right: 1px solid #c6c6c6;
  padding-right: 0.8em;
  margin-right: 0.8em;
}

@media (max-width: 1024px) {
  .dir-top-shelf__facetFeatured {
    margin-top: 0.8em;
  }

  .dir-top-shelf__facetFeatured:not(:last-child) {
    border-right: none;
  }
}

@media (min-width: 1024px) {
  .dir-top-shelf__buttons {
    display: inline-block;
  }
}

@media (max-width: 1024px) {
  .dir-top-shelf__buttons {
    display: none;
  }

  .dir-top-shelf__buttons.is-expanded {
    display: block;
    clear: both;
  }
}

.dir-top-shelf__button {
  display: inline-block;
  vertical-align: middle;
  max-width: auto;
  margin-right: 0.3rem;
}

@media (max-width: 1024px) {
  .dir-top-shelf__button {
    margin-bottom: 10px;
  }

  .dir-top-shelf__button:not(.dir-top-shelf__button--toggle) {
    max-width: 100%;
    width: 100%;
    display: block;
  }
}

.dir-top-shelf__listMap {
  display: none;
}

@media (max-width: 1024px) {
  .dir-top-shelf__listMap {
    display: block;
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

.dir-top-shelf__button--large {
  color: #ff291c;
  float: left;
  padding: 0 0.4rem;
  border: 1px solid #ff291c;
  font-size: 16px;
  height: 30px;
  line-height: 30px;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.dir-top-shelf__button--large.is-active,
.dir-top-shelf__button--large.is-active:hover {
  color: white;
  background-color: #ff291c;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.dir-top-shelf__button--large:hover {
  background-color: #fbfbfb;
}

.dir-top-shelf__button--toggle {
  cursor: pointer;
  font-size: 0;
}

@media (min-width: 1024px) {
  .dir-top-shelf__button--toggle {
    margin-left: 0.3rem;
  }
}

.dir-top-shelf__icon .icon__accent.icon--stroke {
  stroke: #ff291c;
}

.dir-top-shelf__icon .icon__accent.icon--fill {
  fill: #ff291c;
}

.dir-top-shelf__icon .icon__accent.icon--switch {
  fill: #ff291c;
}

.dir-top-shelf__icon .icon__main.icon--stroke {
  stroke: #ff291c;
}

.dir-top-shelf__icon .icon__main.icon--fill {
  fill: #ff291c;
}

.dir-top-shelf__icon .icon__main.icon--switch {
  fill: #ff291c;
}

.dir-top-shelf__dropdown {
  width: 160px;
  z-index: 100;
  display: inline-block;
  vertical-align: middle;
  max-width: auto;
  margin-right: 0.3rem;
  color: white;
}

.dir-top-shelf__dropdown .dropdown__icon path,
.dir-top-shelf__dropdown .dropdown__icon g path,
.dir-top-shelf__dropdown .dropdown__icon circle,
.dir-top-shelf__dropdown .dropdown__icon rect,
.dir-top-shelf__dropdown .dropdown__icon polyline,
.dir-top-shelf__dropdown .dropdown__icon polygon,
.dir-top-shelf__dropdown .dropdown__icon line {
  stroke-width: 4;
}

.is-facet-open .dir-top-shelf__dropdown {
  z-index: 0;
}

.dir-top-shelf__dropdown .dropdown__title {
  color: #000000;
  border-color: #999999;
  background: white;
}

.dir-top-shelf__dropdown .dropdown__title span:not(.selected) {
  color: #999999;
}

.dir-top-shelf__dropdown .dropdown__title span.selected {
  pointer-events: none;
}

.dir-top-shelf__dropdown .dropdown__content ul {
  background: white;
}

.dir-top-shelf__dropdown .dropdown__content li a {
  color: #999999;
  background: white;
  font-size: 18px;
}

.dir-top-shelf__dropdown .dropdown__content li a:hover {
  background: #f2f2f2;
}

.dir-top-shelf__dropdown .dropdown__content .dropdown__header {
  border-color: #999999;
}

.dir-top-shelf__dropdown .dropdown__content .selected {
  color: black;
}

.dir-top-shelf__dropdown .icon__accent.icon--stroke {
  stroke: #ff291c;
}

.dir-top-shelf__dropdown .icon__accent.icon--fill {
  fill: #ff291c;
}

.dir-top-shelf__dropdown .icon__accent.icon--switch {
  fill: #ff291c;
}

.dir-top-shelf__dropdown .icon__main.icon--stroke {
  stroke: #ff291c;
}

.dir-top-shelf__dropdown .icon__main.icon--fill {
  fill: #ff291c;
}

.dir-top-shelf__dropdown .icon__main.icon--switch {
  fill: #ff291c;
}

@media (max-width: 1024px) {
  .dir-top-shelf__dropdown {
    width: 100px;
    font-size: 16px;
    height: 30px;
    line-height: 30px;
  }

  .dir-top-shelf__dropdown .dropdown__title {
    font-size: 16px;
    height: 30px;
    line-height: 30px;
    padding: 0 0.5rem;
  }

  .dir-top-shelf__dropdown .dropdown__icon {
    right: 0;
  }
}

/*------------------------------------*\
    #FACETS
\*------------------------------------*/

@media (max-width: 1024px) {
  .is-facet-open {
    overflow: hidden;
    height: 100vh;
  }
}

.dir-facet-overlay {
  display: none;
  position: fixed;
  height: 100%;
  width: 100%;
  z-index: 100;
  top: 0;
  left: 0;
  opacity: 0.1;
}

@media (min-width: 1024px) {
  .is-facet-open .dir-facet-overlay {
    display: block;
  }
}

.dir-facet {
  line-height: 1;
  font-size: 0;
  position: relative;
  z-index: 100;
  cursor: pointer;
  display: block;
}

@media (min-width: 1024px) {
  .dir-facet {
    display: inline-block;
  }
}

@media (min-width: 1024px) {
  .dir-facet.is-active {
    max-width: 150px;
  }
}

.dir-facet__title-wrapper {
  height: 40px;
  line-height: 40px;
  background-color: white;
  border: 1px solid #e6e6e6;
}

@media (max-width: 1024px) {
  .dir-facet__title-wrapper {
    width: 100%;
  }

  .is-facet-open .dir-facet__title-wrapper {
    display: none;
  }
}

.dir-facet__title-wrapper:hover {
  color: #ff291c;
}

.is-open .dir-facet__title-wrapper {
  background-color: #ff291c;
  color: white;
}

.dir-facet__title {
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  color: inherit;
  line-height: inherit;
  padding-left: 0.5em;
  display: inline-block;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

@media (min-width: 1024px) {
  .dir-facet__title {
    max-width: calc(150px - 32px - 3px);
  }
}

@media (max-width: 1024px) {
  .dir-facet__title {
    max-width: calc(100% - 32px - 3px);
  }
}

.is-active.is-closed .dir-facet__title {
  color: black;
}

.dir-facet__icon {
  height: 40px;
  float: right;
  margin-right: 3px;
}

.dir-facet__icon path,
.dir-facet__icon g path,
.dir-facet__icon circle,
.dir-facet__icon rect,
.dir-facet__icon polyline,
.dir-facet__icon polygon,
.dir-facet__icon line {
  stroke-width: 4;
}

.dir-facet__icon--down {
  display: none;
}

.is-closed:not(.is-active) .dir-facet__icon--down {
  display: inline-block;
}

.dir-facet__icon--up {
  display: none;
}

.is-open:not(.is-active) .dir-facet__icon--up {
  display: inline-block;
}

.dir-facet__icon--clear {
  display: none;
}

.is-active .dir-facet__icon--clear {
  display: inline-block;
}

@media (min-width: 580px) {
  .dir-facet__icon--clear {
    width: 24px;
    height: 24px;
    height: 40px;
  }
}

.dir-facet__content-wrapper {
  display: none;
  background-color: white;
  border: 1px solid #e6e6e6;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  overflow-y: auto;
  z-index: 1000;
}

@media (min-width: 1024px) {
  .dir-facet__content-wrapper {
    position: absolute;
    top: calc(40px + 10px);
    width: 250px;
    max-height: 500px;
  }
}

@media (max-width: 1024px) {
  .dir-facet__content-wrapper {
    position: fixed;
    top: 57px;
    left: 15px;
    right: 15px;
    bottom: 15px;
  }
}

.is-open .dir-facet__content-wrapper {
  display: block;
}

@media (max-width: 1024px) {
  .is-open .dir-facet__content-wrapper {
    padding: 10px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-line-pack: justify;
        align-content: space-between;
  }
}

@media (max-width: 1024px) {
  .dir-facet__content-wrapper-inner {
    border: 1px solid #e6e6e6;
    border-left: 0;
    border-right: 0;
    overflow-y: auto;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

.dir-facet__window-title {
  font-size: 10px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  display: none;
  color: #000000;
  text-align: center;
  padding-bottom: 1em;
}

@media (max-width: 1024px) {
  .dir-facet__window-title {
    display: block;
  }
}

.dir-facet__content {
  height: auto;
  padding: 10px;
  padding-top: 0;
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-facet__content {
    -webkit-column-count: 2;
            column-count: 2;
  }
}

.dir-facet__item {
  cursor: pointer;
  display: block;
  padding: 15px 3px 0 3px;
  font-size: 0;
}

@media (max-width: 1024px) {
  .dir-facet__item {
    -webkit-column-break-inside: avoid;
            break-inside: avoid;
    padding: 20px 3px 0 3px;
  }
}

.dir-facet__item--child {
  margin-left: 33px;
}

.dir-facet__checkbox {
  margin-right: 10px;
  border-radius: 2px;
  width: 18px;
  height: 18px;
  vertical-align: middle;
  display: inline-block;
  border: 1px solid #c6c6c6;
  background-color: white;
}

.dir-facet-changeState:hover .dir-facet__checkbox {
  border-color: #ff291c;
}

.dir-facet-changeState.is-active .dir-facet__checkbox {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAnElEQVQ4y2NgGAjAzMwsQ7ZmRkbGECD1HUjHkKv5NxD/B+K/JBmCphmGF1KieTErKysTWAETE5MckNoOpKWI1czOzs4EC1GQ5rtQiZtAPtwQoIFYNXNwcDAhW3IQTcF1kCG4bObk5ETRDLJFCUg9RFP4EF0z0EAMmwkZgqIZw2ZiDcFrMyFDQJq5uLiI04zFEMLOxgVAsUC0sykFAMvjREmVeMcTAAAAAElFTkSuQmCC);
  background-size: 10px;
  background-position: center;
  background-repeat: no-repeat;
}

.dir-facet__link {
  display: inline-block;
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  vertical-align: middle;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.dir-facet-changeState:hover .dir-facet__link {
  color: #ff291c;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.dir-facet-changeState.is-active .dir-facet__link {
  font-weight: bold;
}

.dir-facet__item__link {
  vertical-align: center;
  width: calc(100% - (10px + 18px));
}

.dir-facet__button {
  margin-top: 1em;
}

.dir-pagination-wrapper {
  border-top: 2px solid #e6e6e6;
  padding: 3.84615% 1.3rem;
}

@media (max-width: 580px) {
  .dir-pagination-wrapper {
    text-align: center;
  }
}

.is-layout-cards-images .dir-pagination-wrapper {
  padding-left: 0;
  padding-right: 0;
  margin-left: 10px;
  margin-right: 10px;
  margin-top: 1.88679%;
}

@media (min-width: 580px) {
  .dir-pagination {
    float: right;
  }
}

.dir-pagination-status {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  padding: 0.3em 0;
}

@media (min-width: 580px) {
  .dir-pagination-status {
    float: left;
  }
}

.dir-pagination-status__number {
  font-weight: bold;
}

/*------------------------------------*\
    #STATS
\*------------------------------------*/

.dir-stats {
  padding: 1.3rem;
  vertical-align: text-bottom;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.is-layout-cards-images .dir-stats {
  padding: 10px;
  margin-top: 10px;
}

.dir-stats--directorySidebar {
  padding-top: 1.6rem;
  vertical-align: text-bottom;
}

.dir-stats__title {
  display: inline;
  font-size: inherit;
  font-family: inherit;
  font-weight: inherit;
}

.dir-stats__left {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding-right: 1.3rem;
}

.dir-stats__left a {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-stats__left a:hover {
  color: #0093cb;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-stats__left--small {
  /* 8: Listing Heading - Feed/Recently Added Listings */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.1;
  color: #1a1a1a;
  font-size: 20px;
}

.dir-stats__left--medium {
  font-size: 18px;
  line-height: 1.3;
  font-family: "Financier Display", serif;
  font-weight: 200;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  letter-spacing: 0.075em;
  border-bottom: 3px solid #000000;
  padding-bottom: 0.4em;
}

.dir-stats__left--big {
  font-size: 28px;
  font-family: "Financier Display", serif;
  font-weight: 200;
  letter-spacing: -0.02em;
}

@media (max-width: 580px) {
  .dir-stats__left--big {
    font-size: 18px;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
}

.dir-stats__right {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.dir-stats__clear {
  display: inline-block;
  color: #999999;
}

.dir-stats__clear:hover {
  color: #ff291c;
}

.dir-stats__clear:hover svg .icon__accent.icon--stroke {
  stroke: #ff291c;
}

.dir-stats__clear:hover svg .icon__accent.icon--fill {
  fill: #ff291c;
}

.dir-stats__clear:hover svg .icon__accent.icon--switch {
  fill: #ff291c;
}

.dir-stats__clear:hover svg .icon__main.icon--stroke {
  stroke: #ff291c;
}

.dir-stats__clear:hover svg .icon__main.icon--fill {
  fill: #ff291c;
}

.dir-stats__clear:hover svg .icon__main.icon--switch {
  fill: #ff291c;
}

.dir-stats__clear-icon path,
.dir-stats__clear-icon g path,
.dir-stats__clear-icon circle,
.dir-stats__clear-icon rect,
.dir-stats__clear-icon polyline,
.dir-stats__clear-icon polygon,
.dir-stats__clear-icon line {
  stroke-width: 6;
}

.dir-stats__clear-text {
  margin-left: -8px;
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  vertical-align: middle;
}

/*------------------------------------*\
    #CARDS
\*------------------------------------*/

.dir-cards-outer {
  min-height: 100vh;
}

@media (min-width: 1024px) {
  .is-layout-cards-horizontal .dir-cards-outer {
    float: left;
    width: 780px;
  }

  .is-layout-cards-images .dir-cards-outer {
    width: 100%;
  }

  .is-theme-event .dir-cards-outer {
    float: left;
    width: calc(100% - 550px);
  }
}

@media (max-width: 1024px) {
  .is-list-view .dir-cards-outer {
    width: 100%;
  }

  .is-map-view .dir-cards-outer {
    display: none;
  }
}

.is-layout-with-sidebar .dir-cards-outer {
  padding: 2.5rem;
  padding-top: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

@media (min-width: 1024px) {
  .is-layout-with-sidebar .dir-cards-outer {
    -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
    margin-top: 4rem;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
}

@media (max-width: 1024px) {
  .is-layout-with-sidebar .dir-cards-outer {
    width: 100%;
    padding: 0 1rem 1rem 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.dir-cards {
  clear: both;
}

.is-layout-cards-images .dir-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.dir-card {
  position: relative;
  padding: 1.3rem;
  cursor: pointer;
  min-height: 160px;
}

.is-layout-with-sidebar .dir-card:first-child {
  border-top: none;
}

.dir-card.is-active,
.dir-card:hover {
  background-color: #f2f2f2;
  -webkit-transition: background-color 0.2s ease;
  -o-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}

.dir-card.dir-card--sponsored.is-active,
.dir-card.dir-card--sponsored:hover {
  -webkit-transition: background-color 0.2s ease;
  -o-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  background-color: #d7d7d7;
}

.dir-card.dir-card--horizontal {
  border-top: 1px solid #e6e6e6;
  width: 100%;
  min-height: 160px;
}

.dir-card.dir-card--image {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 300px;
          flex: 0 0 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: auto;
  min-height: 400px;
  margin: 10px;
}

@media screen and (min-width: 1440px) {
  .dir-card.dir-card--image {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 268px;
            flex: 0 0 268px;
  }
}

@media screen and (max-width: 640px) {
  .dir-card.dir-card--image {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 calc(50% - 15px);
            flex: 0 1 calc(50% - 15px);
  }
}

@media (max-width: 580px) {
  .dir-card.dir-card--image {
    padding: 12px;
    margin: 5px;
    height: auto;
    min-height: 230px;
  }
}

.dir-card.dir-card--image:not(.dir-card--sponsored) {
  background-color: #f7f7f7;
}

.dir-card.dir-card--image:not(.dir-card--sponsored):hover {
  background-color: #f2f2f2;
  -webkit-transition: background-color 0.2s ease;
  -o-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}

.is-layout-cards-images .dir-card--flex {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 300px;
          flex: 0 0 300px;
  height: 1px;
  margin: 10px;
}

@media screen and (min-width: 1440px) {
  .is-layout-cards-images .dir-card--flex {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 268px;
            flex: 0 0 268px;
  }
}

@media screen and (max-width: 640px) {
  .is-layout-cards-images .dir-card--flex {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 calc(50% - 15px);
            flex: 0 1 calc(50% - 15px);
  }
}

.is-layout-cards-horizontal .dir-card--flex {
  display: none;
}

.dir-card__link-overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

.is-layout-with-sidebar .dir-card__link-overlay:hover ~ .dir-card__wrapper .dir-card__title {
  color: #ff291c;
}

.is-layout-with-sidebar .dir-card__link-overlay:hover ~ .dir-card__wrapper .dir-card__image-wrapper {
  opacity: 0.8;
}

.is-layout-with-sidebar .dir-card__link-overlay {
  display: block;
}

.dir-card__badges {
  display: block;
}

.dir-card__badge {
  position: relative;
  margin-top: 0.5rem;
  text-align: center;
}

.dir-card__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.dir-card__header {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.dir-card__distance {
  position: relative;
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  color: #999999;
  margin: 0;
  white-space: nowrap;
  padding-left: 1em;
  margin-right: -1.3rem;
  padding-right: 0.5em;
}

.dir-card__sponsored {
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 9px;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
  color: #999999;
  z-index: 101;
}

.dir-card--horizontal .dir-card__sponsored {
  padding: 0.5em 0.5em 15px 15px;
  position: absolute;
  top: 0;
  right: 0;
}

.dir-card--image .dir-card__sponsored {
  position: relative;
}

.dir-card--sponsored-story {
  background-color: #dedede;
}

.dir-card--sponsored-story .dir-card__title {
  font-size: 24px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 200;
  letter-spacing: -0.02em;
}

@media (max-width: 580px) {
  .dir-card--sponsored-story .dir-card__title {
    font-size: 18px;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
}

.dir-card__wrapper {
  position: relative;
  max-width: 900px;
}

.dir-card--image .dir-card__wrapper {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
}

.dir-card__background-image,
.dir-thumbnail__background {
  background-color: #dedede;
  background-size: 400%;
  -webkit-filter: blur(5px);
          filter: blur(5px);
  width: 120%;
  height: 120%;
  position: absolute;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media (min-width: 580px) {
  .dir-card--horizontal .dir-card__image-wrapper ~ .dir-card__content {
    width: 66.03774%;
    float: right;
    margin-right: 0;
  }
}

@media (min-width: 580px) {
  .is-layout-cards-vertical-image .dir-card--horizontal .dir-card__image-wrapper ~ .dir-card__content {
    width: 74.5283%;
    float: right;
    margin-right: 0;
  }
}

@media (max-width: 580px) {
  .dir-card--horizontal .dir-card__image-wrapper ~ .dir-card__content {
    width: 65.38462%;
    float: right;
    margin-right: 0;
  }
}

.dir-card__image-wrapper {
  position: relative;
  overflow: hidden;
  position: relative;
  overflow: hidden;
}

.dir-card--horizontal .dir-card__image-wrapper {
  position: relative;
  overflow: hidden;
}

@media (min-width: 580px) {
  .dir-card--horizontal .dir-card__image-wrapper {
    width: 32.07547%;
    float: left;
    margin-right: 1.88679%;
  }
}

.dir-card--horizontal .dir-card__image-wrapper:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 66.66667%;
}

.dir-card--horizontal .dir-card__image-wrapper > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.is-layout-cards-vertical-image .dir-card--horizontal .dir-card__image-wrapper {
  position: relative;
  overflow: hidden;
}

@media (min-width: 580px) {
  .is-layout-cards-vertical-image .dir-card--horizontal .dir-card__image-wrapper {
    width: 23.58491%;
    float: left;
    margin-right: 1.88679%;
  }
}

.is-layout-cards-vertical-image .dir-card--horizontal .dir-card__image-wrapper:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 150%;
}

.is-layout-cards-vertical-image .dir-card--horizontal .dir-card__image-wrapper > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media (max-width: 580px) {
  .dir-card--horizontal .dir-card__image-wrapper {
    width: 30.76923%;
    float: left;
    margin-right: 3.84615%;
  }
}

.dir-card--image .dir-card__image-wrapper {
  margin-bottom: 1em;
}

@media (max-width: 580px) {
  .dir-card--image .dir-card__image-wrapper {
    margin-bottom: 0.5em;
  }
}

.dir-card__image-wrapper:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 100%;
}

.dir-card__image-wrapper > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.dir-card__image,
.dir-thumbnail__image {
  height: 100%;
  width: auto;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.dir-card__icon {
  display: inline;
  /* 8: Listing Heading - Feed/Recently Added Listings */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.1;
  color: #1a1a1a;
  margin-right: 0.3rem;
  vertical-align: middle;
}

@media (max-width: 1024px) {
  .dir-card__icon:not(.dir-card__icon--sponsored) {
    display: none;
  }
}

.dir-card__icon--sponsored {
  border-radius: 50%;
  background-color: #820000;
  color: white;
  font-size: 15px;
  text-align: center;
  padding: 4px 6px;
}

.dir-card__title-wrapper {
  display: block;
  margin-bottom: 0.3em;
}

.dir-card__title-wrapper:hover .dir-card__title {
  opacity: 0.6;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-card__title {
  /* 8: Listing Heading - Feed/Recently Added Listings */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.1;
  color: #1a1a1a;
  display: inline;
  vertical-align: middle;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

@media (max-width: 580px) {
  .dir-card__title {
    font-size: 16px;
  }
}

.dir-card--sponsored .dir-card__title {
  color: #820000;
}

.dir-card__subtitle {
  display: block;
  width: 100%;
  line-height: 1;
}

.dir-card__venue {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  display: block;
  margin-bottom: 0.5em;
}

.dir-card__price:after {
  content: '\2022';
  color: #c6c6c6;
  font-size: 8px;
  padding-left: 0.4em;
}

.dir-card__dates:after {
  content: '\2022';
  color: #c6c6c6;
  font-size: 8px;
  padding-left: 0.4em;
}

.dir-categories {
  font-size: 0;
}

.dir-category {
  display: inline-block;
  margin-top: 0.5em;
}

.dir-category:not(:last-child) {
  padding-right: 0.5em;
  margin-right: 0.5em;
  border-right: 1px solid #c6c6c6;
}

.dir-category.dir-category a {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
}

.dir-category.dir-category a:hover {
  color: inherit;
}

.dir-card__categories {
  font-size: 0;
  display: inline;
}

.dir-card__category {
  display: inline;
}

.dir-card__category:not(:last-child):after {
  content: ',';
  margin-right: 0.5em;
}

.dir-no-results {
  padding: 0 1.3rem;
}

.dir-no-results__text {
  color: #ff291c;
}

.dir-card__text {
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  padding-top: 1.88679%;
}

.dir-card__text p {
  margin: 0;
}

@media (max-width: 580px) {
  .dir-card__text {
    font-size: 12px;
  }
}

.dir-card__text + .dir-card__text,
.dir-card__text:last-child {
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
}

.dir-card__phone {
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  margin-top: 1em;
  display: block;
}

@media (max-width: 580px) {
  .dir-card__phone {
    margin-top: 0.4em;
  }
}

/*------------------------------------*\
    #VIEWS
\*------------------------------------*/

.is-image-view .dir-map-wrapper,
.is-image-view .dir-card__icon,
.is-image-view .dir-card__text,
.is-image-view .dir-card__distance,
.is-image-view .adunit {
  display: none !important;
}

.is-image-view .dir-cards-outer {
  max-width: 1400px;
  width: 100%;
  display: block;
  margin-left: auto;
  margin-right: auto;
  float: none;
}

.is-image-view .dir-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.is-image-view .dir-card {
  border: 1px solid #e6e6e6;
}

@media (min-width: 580px) {
  .is-image-view .dir-card {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 19%;
            flex: 0 0 19%;
    margin: 0.5%;
  }
}

@media (max-width: 580px) {
  .is-image-view .dir-card {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
}

@media (min-width: 580px) {
  .is-image-view .dir-card__image-wrapper {
    width: 100%;
    margin-bottom: 1em;
  }

  .is-image-view .dir-card__image-wrapper ~ .dir-card__content {
    width: 100%;
  }

  .is-image-view .dir-card__content {
    clear: both;
  }
}

.is-essay-view .dir-card__icon,
.is-essay-view .dir-card__image-wrapper {
  display: none;
}

.is-essay-view .dir-card {
  border: none;
}

.is-essay-view .dir-card__wrapper {
  width: 800px;
  float: right;
  padding-top: 30px;
  padding-bottom: 40px;
}

.is-essay-view .dir-card__title {
  color: black;
  font-size: 30px;
}

.is-essay-view .dir-card__text {
  width: 600px;
}

.is-essay-view .dir-cards-outer {
  width: 1000px;
}

.is-essay-view .dir-map-wrapper {
  width: calc(100% - 1000px);
}

@media (max-width: 1024px) {
  .is-map-view {
    width: 100%;
    top: 0 !important;
    position: relative !important;
  }
}

/*------------------------------------*\
    #MAP
\*------------------------------------*/

.dir-map-wrapper {
  z-index: 100 !important;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100vh !important;
}

@media (min-width: 1024px) {
  .dir-map-wrapper {
    float: left;
    right: 0;
  }

  .is-layout-cards-horizontal .dir-map-wrapper {
    width: calc(100% - 780px);
  }

  .is-theme-event .dir-map-wrapper {
    width: 550px;
  }
}

@media (max-width: 1024px) {
  .dir-map-wrapper {
    width: 100%;
    top: 0;
    right: 0;
  }
}

@media (max-width: 1024px) {
  .is-list-view .dir-map-wrapper {
    display: none;
  }
}

.is-layout-cards-images .dir-map-wrapper {
  display: none;
}

.dir-map-inner {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.dir-map {
  top: 0;
  width: 100%;
}

.is-theme-directory .dir-map {
  height: 100vh !important;
}

.is-theme-event .dir-map {
  position: absolute !important;
  height: 100%;
}

@media (max-width: 1024px) {
  .is-theme-event .dir-map {
    height: 100vh !important;
  }
}

.dir-map + div {
  display: none !important;
}

@-webkit-keyframes infinite-spinning {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@-o-keyframes infinite-spinning {
  from {
    -o-transform: rotate(0deg);
       transform: rotate(0deg);
  }

  to {
    -o-transform: rotate(360deg);
       transform: rotate(360deg);
  }
}

@keyframes infinite-spinning {
  from {
    -webkit-transform: rotate(0deg);
         -o-transform: rotate(0deg);
            transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(360deg);
         -o-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

.dir-refresh-map {
  position: absolute;
  top: 15px;
  right: 15px;
  background-color: white;
  z-index: 1000;
  padding: 0.8rem;
  border-radius: 0.2rem;
  -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

.dir-refresh-map.is-active svg {
  -webkit-animation: infinite-spinning 1s infinite linear;
       -o-animation: infinite-spinning 1s infinite linear;
          animation: infinite-spinning 1s infinite linear;
}

.dir-refresh-map svg path,
.dir-refresh-map svg g path,
.dir-refresh-map svg circle,
.dir-refresh-map svg rect,
.dir-refresh-map svg polyline,
.dir-refresh-map svg polygon,
.dir-refresh-map svg line {
  stroke-width: 8;
}

.is-facet-open .dir-refresh-map {
  display: none;
}

.dir-mapWindow__image {
  float: left;
  width: 70px;
  height: auto;
}

.dir-mapWindow__image ~ .dir-mapWindow__content {
  float: left;
  width: calc(100% - 70px);
  padding-left: 10px;
}

.dir-mapWindow a {
  background-image: -webkit-gradient(linear, left top, left bottom, from(white), to(white)), -webkit-gradient(linear, left top, left bottom, from(white), to(white)), -webkit-gradient(linear, left top, left bottom, from(#ff291c), to(#ff291c));
  background-image: -webkit-linear-gradient(white, white), -webkit-linear-gradient(white, white), -webkit-linear-gradient(#ff291c, #ff291c);
  background-image: -o-linear-gradient(white, white), -o-linear-gradient(white, white), -o-linear-gradient(#ff291c, #ff291c);
  background-image: linear-gradient(white, white), linear-gradient(white, white), linear-gradient(#ff291c, #ff291c);
  background-size: .05em 1px,.05em 1px,1px 1px;
  background-repeat: no-repeat,no-repeat,repeat-x;
  background-position: 0 95%,100% 95%,0 95%;
  text-shadow: 0.03em 0 white, -0.03em 0 white, 0 0.03em white, 0 -0.03em white, 0.06em 0 white, -0.06em 0 white, 0.09em 0 white, -0.09em 0 white, 0.12em 0 white, -0.12em 0 white, 0.15em 0 white, -0.15em 0 white;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-mapWindow a:hover {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-mapWindow__link {
  margin-top: 1em;
  display: inline-block;
}

/*------------------------------------*\
    #DIRECTORY SEARCH SIDEBAR
\*------------------------------------*/

@media (min-width: 1024px) {
  .dir-sidebar {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin-top: 4rem;
    margin-right: 2.5rem;
  }
}

@media (max-width: 1024px) {
  .dir-sidebar {
    display: none;
  }
}

.is-layout-with-sidebar .dir-stats,
.is-layout-with-sidebar .dir-card,
.is-layout-with-sidebar .dir-pagination-wrapper,
.is-layout-with-sidebar .dir-no-results {
  padding-left: 0;
  padding-right: 0;
}

@media (max-width: 1024px) {
  .is-layout-with-sidebar .dir-top-shelf {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }

  .is-layout-with-sidebar .dir-stats {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }

  .is-layout-with-sidebar .dir-cards {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }

  .is-layout-with-sidebar .dir-pagination-outer {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.dir-card__title--story {
  font-size: 27px;
  line-height: 1.3;
  font-family: "Financier Display", serif;
  font-weight: 600;
  letter-spacing: 0;
  color: #000000;
}

.dir-dirSearch {
  width: 100%;
  padding: 2rem;
  padding-top: 0;
  height: auto;
  border: 2px solid #e6e6e6;
}

.dir-dirSearch__header {
  font-size: 15px;
  line-height: 1.6;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  padding-bottom: 0.6em;
  margin-top: 2.5em;
  text-transform: capitalize;
}

.dir-dirFacets {
  margin: 0;
}

.dir-dirFacet {
  list-style-type: none;
}

.dir-dirFacet--directory {
  color: #ff291c;
  border-bottom: 1px solid #f0f0f0;
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.dir-dirFacet--directory:first-child {
  border-top: 1px solid #f0f0f0;
}

.dir-dirFacet--directory:hover {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.dir-dirFacet--directory:hover:hover {
  opacity: 0.5;
}

.dir-dirFacet--directory a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.dir-dirFacet--directory .dir-dirFacet__text {
  padding: 0.5em 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.dir-dirFacet__icon path,
.dir-dirFacet__icon g path,
.dir-dirFacet__icon circle,
.dir-dirFacet__icon rect,
.dir-dirFacet__icon polyline,
.dir-dirFacet__icon polygon,
.dir-dirFacet__icon line {
  stroke-width: 3;
}

.dir-dirHits {
  margin: 0;
}

.dir-dirHit {
  border-bottom: 1px solid #e6e6e6;
}

.dir-dirHit:first-child {
  border-top: 1px solid #e6e6e6;
}

.dir-dirHit em {
  font-style: normal;
}

.dir-dirHit__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1em 0;
}

.dir-dirHit__content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.dir-dirHit__title {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
}

.dir-dirHit__image {
  width: 50px;
  height: 50px;
  overflow: hidden;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
  background-size: cover;
  background-position: center center;
  background-color: #f2f2f2;
  margin-right: 1em;
}

.dir-dirQuery {
  text-align: center;
}

@media (min-width: 1024px) {
  .dir-dirQuery {
    width: 100%;
    margin-top: 3em;
    background-image: none;
    text-decoration: none;
    text-shadow: none;
    border-radius: 0;
    padding: 0.8rem 1rem;
    -webkit-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
    display: inline-block;
    font-family: "Founders Grotesk", sans-serif;
    font-weight: 800;
    /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
    font-family: "Founders Grotesk", sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.3;
    color: #1a1a1a;
    font-size: 16px;
    line-height: 1;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border: 1px solid;
    border-color: #ff291c;
    background: transparent;
    color: #ff291c;
  }

  .dir-dirQuery:hover {
    color: inherit;
  }

  .dir-dirQuery:hover {
    cursor: pointer;
    -webkit-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }

  .dir-dirQuery:visited {
    color: #ff291c;
  }

  .dir-dirQuery:hover,
  .dir-dirQuery:active,
  .dir-dirQuery:focus {
    background: #ff291c;
    color: white;
    border-color: #ff291c;
  }
}

@media (max-width: 1024px) {
  .dir-dirQuery {
    width: 100vw;
    background-image: none;
    text-decoration: none;
    text-shadow: none;
    border-radius: 0;
    padding: 0.8rem 1rem;
    -webkit-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
    display: inline-block;
    font-family: "Founders Grotesk", sans-serif;
    font-weight: 800;
    /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
    font-family: "Founders Grotesk", sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.3;
    color: #1a1a1a;
    font-size: 16px;
    line-height: 1;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border: none;
    background: #ff291c;
    color: white;
    margin-left: calc( (-100vw + 100%) / 2);
    margin-right: calc( (-100vw + 100%) / 2);
  }

  .dir-dirQuery:hover {
    color: inherit;
  }

  .dir-dirQuery:hover {
    cursor: pointer;
    -webkit-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }

  .dir-dirQuery:visited {
    color: white;
  }

  .dir-dirQuery:hover,
  .dir-dirQuery:active,
  .dir-dirQuery:focus {
    background: #cf0c00;
    color: white;
  }
}

.dir-search-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background-color: #e6e6e6;
  border-top: 1px solid #c6c6c6;
}

@media (max-width: 580px) {
  .dir-search-footer {
    padding-top: 1.5rem;
    padding-bottom: 1rem;
  }
}

.dir-search-footer__item {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  padding: 3.27869%;
}

@media (max-width: 1024px) {
  .dir-search-footer__item {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}

.dir-search-footer__title {
  padding-bottom: 0.4em;
  margin-bottom: 0.6em;
  border-bottom: 2px solid #1a1a1a;
  color: #1a1a1a;
  font-size: 14px;
  line-height: 1.14;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
}

@media (min-width: 580px) {
  .dir-info {
    -webkit-columns: 3;
            columns: 3;
  }
}

@media (max-width: 580px) {
  .dir-info {
    -webkit-columns: 2;
            columns: 2;
  }
}

.dir-info__item {
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  padding: 0.4em 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (max-width: 580px) {
  .dir-info__item {
    padding: 0.6em 0;
  }
}

.dir-info__item:hover {
  opacity: 0.5;
}

/*------------------------------------*\
    #HERO
    #BLOCKS
    #AWARDS
    #FEATURES
    #LOCATIONS
    #MAP
    #SCROLLER
\*------------------------------------*/

.button-comments {
  display: none !important;
}

.social-sharing {
  z-index: 100;
}

.social-sharing-overlay {
  z-index: -1;
}

/*------------------------------------*\
    #NOTICE
\*------------------------------------*/

.dir-notice-closed {
  text-align: center;
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  padding: 1.88679% 1em;
  background-color: rgba(255, 41, 28, 0.2);
  color: #000000;
  display: none;
}

@media (min-width: 1024px) {
  .dir-notice-closed {
    margin: 1.88679%;
    border-radius: 5px;
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
  }

  .dir-notice-closed:after {
    content: " ";
    display: block;
    clear: both;
  }
}

@media (max-width: 1024px) {
  .dir-notice-closed {
    border: 1px solid rgba(255, 41, 28, 0.5);
  }
}

.dir-notice-closed.is-active {
  display: block;
}

/*------------------------------------*\
    #HERO
\*------------------------------------*/

.dir-hero {
  width: 100%;
  height: 500px;
  background-color: #e6e6e6;
  position: relative;
  background-size: cover;
  background-position: center center;
}

@media (max-width: 1024px) {
  .dir-hero {
    display: none;
  }
}

.dir-hero__button-wrapper {
  bottom: 0;
}

@media (min-width: 1024px) {
  .dir-hero__button-wrapper {
    width: 1024px;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.dir-hero__button {
  float: right;
}

@media (min-width: 1024px) {
  .dir-hero__credit-wrapper {
    width: 1024px;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-hero__credit-wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }
}

@media (max-width: 580px) {
  .dir-hero__credit-wrapper {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.dir-hero__credit {
  /* 16: Image Credit/Tags/Multiple Locations Address Information */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1;
  color: #1a1a1a;
  color: #999999;
  text-align: right;
  float: right;
}

.dir-title {
  /* 3: Full Width Feed Title/Title on Listing */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 48px;
  line-height: 1;
  color: #1a1a1a;
  display: block;
  clear: both;
  width: 100%;
}

@media (min-width: 1024px) {
  .dir-thumbnail ~ .dir-title {
    margin-top: 25px;
  }
}

@media (max-width: 1024px) {
  .dir-title {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

/*------------------------------------*\
    #BLOCKS
\*------------------------------------*/

.dir-blocks-wrapper {
  width: 100%;
  position: relative;
  padding-top: 1.3em;
}

.dir-blocks a:not(.button) {
  background-image: -webkit-gradient(linear, left top, left bottom, from(white), to(white)), -webkit-gradient(linear, left top, left bottom, from(white), to(white)), -webkit-gradient(linear, left top, left bottom, from(#ff291c), to(#ff291c));
  background-image: -webkit-linear-gradient(white, white), -webkit-linear-gradient(white, white), -webkit-linear-gradient(#ff291c, #ff291c);
  background-image: -o-linear-gradient(white, white), -o-linear-gradient(white, white), -o-linear-gradient(#ff291c, #ff291c);
  background-image: linear-gradient(white, white), linear-gradient(white, white), linear-gradient(#ff291c, #ff291c);
  background-size: .05em 1px,.05em 1px,1px 1px;
  background-repeat: no-repeat,no-repeat,repeat-x;
  background-position: 0 95%,100% 95%,0 95%;
  text-shadow: 0.03em 0 white, -0.03em 0 white, 0 0.03em white, 0 -0.03em white, 0.06em 0 white, -0.06em 0 white, 0.09em 0 white, -0.09em 0 white, 0.12em 0 white, -0.12em 0 white, 0.15em 0 white, -0.15em 0 white;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-blocks a:not(.button):hover {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

@media (min-width: 1024px) {
  .dir-blocks--0 {
    width: 6.60377%;
    float: left;
    position: relative;
  }

  .dir-blocks--1 {
    width: 44.33962%;
    float: left;
    background-color: white;
    margin-top: -150px;
    padding: 0 2.85714%;
    position: relative;
  }

  .dir-blocks--1__inner {
    position: relative;
    padding: 5.88235% 0;
  }

  .dir-blocks--2 {
    width: 15.09434%;
    float: left;
    margin-right: 1.88679%;
  }

  .dir-blocks--3 {
    width: 32.07547%;
    float: right;
    margin-right: 0;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-blocks--0 {
    float: right;
    width: 80px;
  }
}

.dir-blocks--1 iframe {
  max-width: 100%;
}

.dir-blocks--1 img:not(.dir-thumbnail__image) {
  max-width: 100%;
  height: auto;
}

.dir-blocks--1 ul {
  padding-left: 1em;
}

.dir-blocks--1 .button {
  margin-right: 0.25rem;
  margin-top: 0.25rem;
}

.dir-blocks--2 {
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
}

.dir-blocks--2 .dir-block__button {
  margin-bottom: 10px;
}

.dir-blocks--3 {
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
}

.dir-badges {
  width: 100%;
}

@media (min-width: 1024px) {
  .dir-badges {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 0;
  }
}

.dir-badges .dir-badge {
  position: relative;
  margin-right: 0.75em;
}

.dir-badge-hof {
  background-color: #f6c647 !important;
  color: #000 !important;
}

@media (min-width: 1024px) {
  .dir-blocks__badge {
    -webkit-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

@media (max-width: 1024px) {
  .dir-blocks__badge {
    position: relative;
    margin-top: 1em;
  }
}

@media (max-width: 1024px) {
  .dir-blocks__badge {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}

@media (min-width: 1024px) {
  .dir-block {
    margin-top: 30px;
  }
}

@media (max-width: 1024px) {
  .dir-block {
    margin-top: 3.84615%;
  }
}

.dir-blocks--1 .dir-block {
  /* 12: Paragraph Text */
  font-family: "Financier Text", serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: -0.25px;
  color: #1a1a1a;
}

@media (max-width: 1024px) {
  .dir-block--header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.dir-block--border {
  border-top: 1px solid #c6c6c6;
  padding-top: 1rem;
}

.dir-block__title {
  /* 15: Information Titles on Listing (Awards, Company, Etc.)  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #828282;
  color: #828282;
  padding-bottom: 0.3em;
}

.dir-block__content {
  margin-top: 0.7rem;
  display: block;
  /* 14: Filters in Feed/Sidebar Info on Listing */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.125;
  color: #1a1a1a;
  font-size: 14px;
}

.dir-block__content li {
  margin-bottom: 1em;
}

.dir-blocks--1 .dir-block__content {
  /* 12: Paragraph Text */
  font-family: "Financier Text", serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: -0.25px;
  color: #1a1a1a;
}

.dir-block__button {
  width: 100%;
  text-align: center;
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-block__button {
    width: auto;
  }
}

.dir-block__button:not(:first-child) {
  margin-top: 0.7rem;
}

@media (min-width: 1024px) {
  .dir-block__button-large:not(:first-child) {
    margin-top: 30px;
  }
}

@media (max-width: 1024px) {
  .dir-block__button-large:not(:first-child) {
    margin-top: 3.84615%;
  }
}

.dir-thumbnail {
  clear: both;
  position: relative;
  overflow: hidden;
  width: 100%;
}

@media (max-width: 1024px) {
  .dir-thumbnail {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    max-width: 400px;
    margin-top: 1rem;
  }
}

.dir-thumbnail-inner {
  position: relative;
  overflow: hidden;
}

.dir-thumbnail-inner:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 66.66667%;
}

.dir-thumbnail-inner > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.dir-thumbnail__caption {
  /* 16: Image Credit/Tags/Multiple Locations Address Information */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1;
  color: #1a1a1a;
  color: #999999;
  text-align: right;
  margin-top: 0;
}

.dir-thumbnail__slideshow-button {
  position: absolute;
  bottom: 0;
  right: 0;
}

.dir-block__item-title {
  display: inline-block;
  color: #000000;
}

.dir-block__categories {
  display: inline;
}

.dir-block__blue-link {
  color: #ff291c;
}

.dir-block__website.dir-block__website.dir-block__website {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
}

.dir-block__website.dir-block__website.dir-block__website:hover {
  color: inherit;
}

.dir-block__website.dir-block__website.dir-block__website span {
  background-image: -webkit-gradient(linear, left top, left bottom, from(white), to(white)), -webkit-gradient(linear, left top, left bottom, from(white), to(white)), -webkit-gradient(linear, left top, left bottom, from(#ff291c), to(#ff291c));
  background-image: -webkit-linear-gradient(white, white), -webkit-linear-gradient(white, white), -webkit-linear-gradient(#ff291c, #ff291c);
  background-image: -o-linear-gradient(white, white), -o-linear-gradient(white, white), -o-linear-gradient(#ff291c, #ff291c);
  background-image: linear-gradient(white, white), linear-gradient(white, white), linear-gradient(#ff291c, #ff291c);
  background-size: .05em 1px,.05em 1px,1px 1px;
  background-repeat: no-repeat,no-repeat,repeat-x;
  background-position: 0 95%,100% 95%,0 95%;
  text-shadow: 0.03em 0 white, -0.03em 0 white, 0 0.03em white, 0 -0.03em white, 0.06em 0 white, -0.06em 0 white, 0.09em 0 white, -0.09em 0 white, 0.12em 0 white, -0.12em 0 white, 0.15em 0 white, -0.15em 0 white;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-block__website.dir-block__website.dir-block__website span:hover {
  color: #ff291c;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.dir-block__website-icon {
  width: 20px;
  height: 20px;
  vertical-align: bottom;
}

.dir-block__website-icon .icon__accent.icon--stroke {
  stroke: white;
}

.dir-block__website-icon .icon__accent.icon--fill {
  fill: white;
}

.dir-block__website-icon .icon__accent.icon--switch {
  fill: white;
}

.dir-block__website-icon .icon__main.icon--stroke {
  stroke: #ff291c;
}

.dir-block__website-icon .icon__main.icon--fill {
  fill: #ff291c;
}

.dir-block__website-icon .icon__main.icon--switch {
  fill: #ff291c;
}

.dir-block__website-icon path,
.dir-block__website-icon g path,
.dir-block__website-icon circle,
.dir-block__website-icon rect,
.dir-block__website-icon polyline,
.dir-block__website-icon polygon,
.dir-block__website-icon line {
  stroke-width: 4;
}

/*------------------------------------*\
    #AWARDS
\*------------------------------------*/

.dir-block__item {
  display: block;
}

.dir-awards ul {
  padding-left: 0;
}

.dir-award:not(:first-child) {
  padding-top: 0.4em;
}

.dir-award__years {
  display: inline-block;
}

/*------------------------------------*\
    #FEATURES
\*------------------------------------*/

.dir-hours__day {
  display: block;
  font-weight: 500;
}

/*------------------------------------*\
    #LOCATIONS
\*------------------------------------*/

.dir-locations ul {
  margin: 0.7rem 0 0 0;
}

.dir-locations__title {
  /* 15: Information Titles on Listing (Awards, Company, Etc.)  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #828282;
}

.dir-location {
  padding: 0.7em;
  cursor: pointer;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.dir-location:not(:last-child) {
  border-bottom: 1px solid #e6e6e6;
}

.dir-location:hover:not(.is-active) {
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
  background-color: #f2f2f2;
}

.dir-location.is-active {
  cursor: default;
  border: 1px solid #5f5f5f;
  background-color: #fff;
}

.dir-location.is-active .kicker {
  color: inherit;
}

/*------------------------------------*\
    #MAP
\*------------------------------------*/

.dir-block__map {
  width: 100%;
  height: 300px;
  display: block;
  border: #c6c6c6;
}

@media (min-width: 1024px) {
  .dir-scroller {
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
  }

  .dir-scroller:after {
    content: " ";
    display: block;
    clear: both;
  }
}

.dir-scroller__title {
  position: relative;
  z-index: 50;
}

.dir-scroller-items__shadow {
  position: absolute;
  height: 100%;
  width: 35px;
  z-index: 10;
}

.dir-scroller-items__shadow--left {
  left: 0;
  top: 0;
  -webkit-box-shadow: inset 28px 0px 17px -8px white;
          box-shadow: inset 28px 0px 17px -8px white;
}

.dir-scroller-items__shadow--right {
  right: 0;
  top: 0;
  -webkit-box-shadow: inset -28px 0px 17px -8px white;
          box-shadow: inset -28px 0px 17px -8px white;
}

.dir-scroller-item {
  position: relative;
  z-index: 0;
  margin-right: 1.88679%;
  float: none;
  display: inline-block;
  white-space: normal;
  vertical-align: top;
}

@media (min-width: 1024px) {
  .dir-scroller-item {
    width: 21.88679%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-scroller-item {
    width: 27.83019%;
  }
}

@media (max-width: 580px) {
  .dir-scroller-item {
    width: 55.42453%;
  }
}

.dir-scroller-item:first-child,
.dir-scroller-item:last-child {
  z-index: 50;
}

.dir-scroller-item:hover img {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0.8;
}

.calendar-wrap {
  border: 1px solid #f2f2f2;
  border-bottom: 0;
}

@media (max-width: 1024px) {
  .calendar-wrap--search {
    margin-bottom: 1rem;
    margin-top: 10px;
    border: 0;
  }
}

/*------------------------------------*\
    #HEADER
\*------------------------------------*/

.calendar-header {
  width: 100%;
  text-align: center;
}

.calendar-title {
  display: inline-block;
  text-align: center;
  padding: 1.5em 0;
  font-size: 12px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.calendar__buttons {
  margin-bottom: 2rem;
  text-align: center;
}

.calendar-nav {
  display: inline-block;
}

.calendar-nav.is-inactive {
  cursor: default;
}

.calendar-nav.is-inactive .icon__accent.icon--stroke {
  stroke: #c6c6c6;
}

.calendar-nav.is-inactive .icon__accent.icon--fill {
  fill: #c6c6c6;
}

.calendar-nav.is-inactive .icon__accent.icon--switch {
  fill: #c6c6c6;
}

.calendar-nav.is-inactive .icon__main.icon--stroke {
  stroke: #c6c6c6;
}

.calendar-nav.is-inactive .icon__main.icon--fill {
  fill: #c6c6c6;
}

.calendar-nav.is-inactive .icon__main.icon--switch {
  fill: #c6c6c6;
}

/*------------------------------------*\
    #BODY
\*------------------------------------*/

.calendar {
  text-align: center;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-template-rows: 0.5fr 1fr 1fr 1fr 1fr 1fr;
  overflow: hidden;
}

.calendar:after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #f2f2f2;
  bottom: 0;
  left: 0;
  margin-top: -1px;
  position: absolute;
}

.calendar__day {
  font-weight: bold;
  border-bottom: 1px solid #f2f2f2;
  color: #000000;
  float: left;
  min-width: calc(100% / 7);
}

.calendar__dot {
  opacity: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  display: inline-block;
  margin-top: 3px;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.calendar__block:not(.is-noHover):hover .calendar__dot {
  background-color: #00ADEF;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.is-event-day .calendar__dot {
  opacity: 1;
  background-color: #999999;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.is-template-search .is-clicked.is-event-day .calendar__dot {
  background-color: white;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.is-inactive .calendar__dot,
.is-inactive:hover .calendar__dot {
  background-color: #e6e6e6;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.calendar__block {
  border-bottom: 1px solid #f2f2f2;
  padding: 0.8em 0;
  line-height: 1;
  height: 100%;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  float: left;
  min-width: calc(100% / 7);
  position: relative;
}

.calendar__block.is-today:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  min-height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 1px solid #000000;
}

.calendar__block.is-inactive,
.calendar__block.is-inactive:hover {
  color: #c6c6c6;
  cursor: default;
}

.is-template-search .calendar__block {
  min-height: 55px;
  cursor: pointer;
}

.is-template-search .calendar__block:hover {
  color: #00ADEF;
}

.is-template-search .calendar__block.is-clicked,
.is-template-search .calendar__block.is-clicked:hover {
  background-color: #009edb;
  color: white;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.is-singular-page .calendar__block {
  min-height: 45px;
  cursor: default;
}

.is-singular-page .calendar__block.is-event-day:not(.is-noHover):hover {
  color: #00ADEF;
}

/*------------------------------------*\
    #DETAILS
\*------------------------------------*/

.calendar-details {
  clear: both;
  position: relative;
  margin-top: -1px;
  background-color: #f2f2f2;
  padding: 1em 1.2em;
}

.calendar-details__content {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.dir-template-title {
  font-size: 42px;
  line-height: 1.2;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: -0.03em;
  text-align: center;
}

@media (max-width: 580px) {
  .dir-template-title {
    font-size: 25px;
    line-height: 1.1;
    letter-spacing: 0;
  }
}

.dir-yp__items {
  -webkit-columns: 3;
          columns: 3;
}

@media (max-width: 580px) {
  .dir-yp__items {
    -webkit-columns: 2;
            columns: 2;
  }
}

.dir-yp__item {
  padding: 1em;
  page-break-inside: avoid;
  -webkit-column-break-inside: avoid;
          break-inside: avoid;
}

.dir-yp__link {
  display: block;
}

.dir-yp__pagination {
  margin-top: 3.84615%;
  width: 100%;
  text-align: center;
}

.dir-footer {
  color: #1a1a1a;
  padding: 3.84615% 0 0;
}

@media (max-width: 580px) {
  .dir-footer {
    padding-top: 1.5rem;
  }
}

.dir-footer__inner {
  -webkit-columns: 5;
          columns: 5;
  padding: 2.85714% 3.84615%;
  border-top: 1px solid #dedede;
  /* 17: Footer */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  color: #1a1a1a;
}

@media (max-width: 1024px) and (min-width: 580px) {
  .dir-footer__inner {
    -webkit-columns: 3;
            columns: 3;
  }
}

@media (max-width: 580px) {
  .dir-footer__inner {
    -webkit-columns: 2;
            columns: 2;
  }
}

.dir-footer__logo {
  margin-bottom: 1.5em;
}

.dir-footer__logo img {
  width: 50%;
  max-width: 71px;
}

.dir-footer__block {
  margin-bottom: 2.5em;
}

@media (min-width: 580px) {
  .dir-footer__block {
    -webkit-column-break-after: always;
            break-after: always;
  }
}

.dir-footer__header {
  padding-bottom: 0.2em;
  /* 17: Footer */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  color: #1a1a1a;
  font-weight: 500;
  color: #1a1a1a;
}

.dir-footer__item {
  list-style-type: none;
  padding: 0.3em 0;
  /* 17: Footer */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  color: #1a1a1a;
}

@media (max-width: 580px) {
  .dir-footer__item {
    padding: 0.6em 0;
  }
}

.dir-footer__item a {
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
  color: #828282;
}

.dir-footer__item a:hover {
  color: #ff291c;
}

.dir-footer__footer {
  padding: 2.85714% 3.84615%;
  border-top: 1px solid #dedede;
  /* 17: Footer */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  color: #1a1a1a;
}

.dir-footer__footer > * {
  margin-right: 12.5px;
}

.is-template-badges {
  background-color: #e6e6e6;
}

.dir-dbadge {
  float: left;
  margin: 0 1rem 1rem 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.dir-dbadge.is-inactive {
  opacity: 0.3;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.dir-dbadge a {
  pointer-events: none;
  cursor: pointer;
}

.dir-custom-badge-code {
  white-space: pre-wrap;
  word-wrap: break-word;
  padding: 1em;
  background-color: white;
  display: block;
  width: 100%;
  border: 1px solid #000000;
  clear: both;
}

/**
 * TOC
 *
 * W COMBO
 * W TOGGLER
 * W GALLERY
 * W ISSUES
 * W STORY
 *
 * WS LISTS// most popular
 * WS COUNTDOWN
 *
 *
 * Prefixes:
 * w- widget
 * ws- widget sidebar aka widget small
 *
 */

/*------------------------------------*\
    #W COMBO
\*------------------------------------*/

@media (min-width: 1024px) {
  .w-combo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.w-combo > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  color: #000000;
}

@media (min-width: 1024px) {
  .w-combo > div {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 50%;
            flex: 1 1 50%;
  }
}

@media (max-width: 1024px) {
  .w-combo > div {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
}

/*------------------------------------*\
    #W TOGGLER
\*------------------------------------*/

.w-toggler {
  position: relative;
  background: #c6c6c6;
}

.w-toggler .widget__header {
  color: white;
}

.w-toggler__background__slide {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.9;
  background-size: cover;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media (min-width: 580px) {
  .w-toggler__background__slide {
    position: absolute;
    width: 100%;
    height: 100%;
  }
}

@media (max-width: 580px) {
  .w-toggler__background__slide {
    position: relative;
    width: 100vw;
    height: 66.66667vw;
    max-width: 150vh;
    max-height: 100vh;
    display: block;
    margin-left: auto;
    margin-right: auto;
    float: none;
  }
}

@media (min-width: 1024px) {
  .w-toggler__foreground-wrapper {
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }

  .w-toggler__foreground-wrapper:after {
    content: " ";
    display: block;
    clear: both;
  }
}

@media (max-width: 580px) {
  .w-toggler__foreground-wrapper {
    max-width: 580px;
    margin-left: auto;
    margin-right: auto;
  }

  .w-toggler__foreground-wrapper:after {
    content: " ";
    display: block;
    clear: both;
  }
}

.w-toggler__foreground {
  width: 100%;
  position: relative;
}

@media (min-width: 1024px) {
  .w-toggler__foreground {
    width: 66.03774%;
    float: left;
    margin-right: 1.88679%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .w-toggler__foreground {
    width: 87.14286%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 580px) {
  .w-toggler__foreground {
    padding: 11.23596% 0 13.24503% 0;
  }
}

@media (max-width: 580px) {
  .w-toggler__foreground {
    padding: 3.84615% 0;
  }
}

@media (min-width: 580px) {
  .toggler {
    display: table;
  }
}

@media (min-width: 580px) {
  .toggler__list {
    display: table-cell;
    vertical-align: top;
  }
}

@media (min-width: 1024px) {
  .toggler__list {
    width: 37.5%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .toggler__list {
    width: 28.57143%;
  }
}

.toggler__list__items {
  margin: 0;
  cursor: pointer;
}

.toggler__list__item {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  padding: 1.4em 0 1.4em 0.8em;
  border-bottom: 1px solid #999999;
  position: relative;
}

.toggler__list__item:last-child {
  border-bottom: 0;
}

@media (min-width: 580px) {
  .toggler__list__item {
    background: #e6e6e6;
    -webkit-transition: background 0.3s ease;
    -o-transition: background 0.3s ease;
    transition: background 0.3s ease;
  }

  .toggler__list__item:hover {
    background: #dedede;
  }
}

.toggler__list__item.is-active {
  background: white;
}

.toggler__list__item__text {
  padding-right: 32px;
}

.toggler__arrow {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%);
  display: none;
}

.toggler__list__item.is-active .toggler__arrow {
  display: block;
}

@media (min-width: 580px) {
  .toggler__slides {
    background: white;
    display: table-cell;
    vertical-align: top;
  }
}

@media (min-width: 1024px) {
  .toggler__slides {
    width: 62.5%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .toggler__slides {
    width: 71.42857%;
  }
}

.toggler__slide {
  padding: 1.5em;
  display: block;
  -webkit-transition: background 0.3s ease;
  -o-transition: background 0.3s ease;
  transition: background 0.3s ease;
}

.toggler__slide:hover {
  background: #f7f7f7;
}

.toggler__slide__title {
  font-size: 36px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 600;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .toggler__slide__title {
    font-size: 27px;
    line-height: 1.3;
    letter-spacing: 0;
  }
}

.toggler__slide__text {
  font-size: 14px;
  line-height: 1.5;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.toggler__slide__cta {
  font-size: 14px;
  line-height: 1.14;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  color: #00ADEF;
  display: block;
  margin-top: 1em;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.toggler__slide__cta:hover {
  color: #0093cb;
}

@media (max-width: 580px) {
  .w-toggler__background,
  .toggler__list,
  .toggler__slide__author,
  .toggler__slide__text,
  .toggler__slide__cta {
    display: none;
  }

  .w-toggler {
    background: #00ADEF;
  }

  .toggler__slide {
    display: block;
    margin-left: auto;
    margin-right: auto;
    float: none;
    text-align: center;
    padding: 3.84615%;
    background-color: white;
    position: relative;
    margin-bottom: 3px;
  }
}

@media (max-width: 580px) and (max-width: 580px) {
  .toggler__slide {
    margin-left: 5.88235%;
    margin-right: 5.88235%;
  }
}

@media (max-width: 580px) and (min-width: 1024px) {
  .toggler__slide {
    width: 66.03774%;
  }
}

@media (max-width: 580px) and (max-width: 1024px) and (min-width: 580px) {
  .toggler__slide {
    width: 49.0566%;
  }
}

/*------------------------------------*\
    #W GALLERY
\*------------------------------------*/

.w-gallery__button {
  clear: both;
}

.w-gallery--light {
  background: #f2f2f2;
}

.w-gallery--light a,
.w-gallery--light span {
  color: #333333;
}

.w-gallery--light span.byline,
.w-gallery--light .byline a {
  color: #999999;
}

.w-gallery--light .widget__link__icon circle {
  fill: #00ADEF;
}

.w-gallery--light .widget__link__icon path {
  stroke: #f2f2f2;
}

.w-gallery--dark {
  background: #1a1a1a;
}

.w-gallery--dark a,
.w-gallery--dark span {
  color: #e6e6e6;
}

.w-gallery--dark span.byline,
.w-gallery--dark .byline a {
  color: #999999;
}

.w-gallery--dark .widget__link__icon circle {
  fill: #00ADEF;
}

.w-gallery--dark .widget__link__icon path {
  stroke: #1a1a1a;
}

.w-gallery--blue {
  background: #00ADEF;
}

.w-gallery--blue a,
.w-gallery--blue span {
  color: white;
}

.w-gallery--blue span.byline,
.w-gallery--blue .byline a {
  color: white;
}

.w-gallery--blue .widget__link__icon circle {
  fill: white;
}

.w-gallery--blue .widget__link__icon path {
  stroke: #00ADEF;
}

.w-gallery__items {
  margin-bottom: 2.85714%;
}

@media (max-width: 1024px) {
  .w-gallery__items {
    padding-left: 5.88235%;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    white-space: nowrap;
  }
}

.w-gallery__item {
  margin-bottom: 2.27273%;
  text-align: center;
}

@media (min-width: 1024px) {
  .w-gallery__item {
    width: 23.58491%;
    float: left;
    margin-right: 1.88679%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .w-gallery__item {
    width: 23.58491%;
    float: left;
    margin-right: 1.88679%;
  }
}

@media (max-width: 580px) {
  .w-gallery__item {
    width: 65.38462%;
    float: left;
    margin-right: 3.84615%;
  }
}

@media (max-width: 1024px) {
  .w-gallery__item {
    float: none;
    display: inline-block;
    white-space: normal;
    vertical-align: top;
  }
}

.w-gallery__item .card__image-wrapper {
  position: relative;
  overflow: hidden;
}

.w-gallery__item .card__image-wrapper:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 66.66667%;
}

.w-gallery__item .card__image-wrapper > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media (min-width: 1024px) {
  .w-gallery__item--large {
    text-align: left;
    width: 49.0566%;
    float: left;
    margin-right: 1.88679%;
  }
}

@media (min-width: 1024px) {
  .w-gallery__item:nth-child(3),
  .w-gallery__item:nth-child(5) {
    margin-right: 0;
    float: left;
  }
}

.w-gallery__link:hover .w-gallery__title {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0.5;
}

.w-gallery__title {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  padding-top: 0.5rem;
}

@media (min-width: 1024px) {
  .w-gallery__title--large {
    font-size: 36px;
    line-height: 1.1;
    font-family: "Financier Display", serif;
    font-weight: 600;
    letter-spacing: 0;
  }
}

@media (max-width: 1024px) {
  .w-gallery__subhead {
    display: none;
  }
}

/*------------------------------------*\
    #W ISSUES
\*------------------------------------*/

.w-issues {
  background-color: #1a1a1a;
  color: white;
}

.w-issues__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (max-width: 1024px) and (min-width: 580px) {
  .w-issues__inner {
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    white-space: nowrap;
    white-space: normal;
  }
}

@media (max-width: 580px) {
  .w-issues__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .w-issues__inner {
    max-width: 950px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 25px;
    padding-right: 25px;
  }

  .w-issues__inner:after {
    content: " ";
    display: block;
    clear: both;
  }
}

@media (max-width: 580px) {
  .w-issues__inner {
    max-width: 580px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }

  .w-issues__inner:after {
    content: " ";
    display: block;
    clear: both;
  }
}

.w-issues__intro {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
}

.w-issues__title {
  font-size: 42px;
  line-height: 1.2;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: -0.03em;
}

@media (max-width: 580px) {
  .w-issues__title {
    font-size: 25px;
    line-height: 1.1;
    letter-spacing: 0;
  }
}

@media (max-width: 580px) {
  .w-issues__title {
    width: 100%;
    text-align: center;
    padding-bottom: 0.5em;
  }

  .w-issues__title br {
    display: none;
  }
}

.w-issues__button {
  margin-top: 1em;
}

.w-issues__archives {
  display: block;
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  letter-spacing: 0.0625em;
  margin-top: 3em;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.w-issues__archives:hover {
  opacity: 0.5;
}

.w-issues__item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

@media (min-width: 1024px) {
  .w-issues__item {
    padding-left: 2.27273%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .w-issues__item {
    padding-left: 3.84615%;
  }

  .w-issues__item:last-child {
    padding-right: 3.84615%;
  }
}

@media (max-width: 580px) {
  .w-issues__item:not(.w-issues__item--first) {
    display: none;
  }
}

.w-issues__item__title {
  text-align: center;
  padding-top: 0.8em;
  font-size: 14px;
  line-height: 1.14;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  max-width: 200px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  float: none;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.w-issues__item__link:hover .w-issues__item__title {
  color: #00ADEF;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.w-issues__item__image {
  height: 300px;
  width: auto;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (max-width: 580px) {
  .w-issues__item__image {
    display: block;
    margin-left: auto;
    margin-right: auto;
    float: none;
  }
}

.w-issues__item__link:hover .w-issues__item__image {
  opacity: 0.8;
  -webkit-transition: opactiy 0.3s ease;
  -o-transition: opactiy 0.3s ease;
  transition: opactiy 0.3s ease;
}

.w-issues__item__image-wrapper {
  position: relative;
}

/*------------------------------------*\
    #W STORY
\*------------------------------------*/

.w-story {
  text-align: center;
  position: relative;
}

.w-story__background {
  background-size: cover;
  position: absolute;
  background-position: center center;
  width: 100%;
  height: 100%;
}

.w-story__inner {
  padding: 6.77966% 0 8% 0;
  position: relative;
}

.w-story__inner-inner {
  display: block;
  margin-left: auto;
  margin-right: auto;
  float: none;
  text-align: center;
  padding: 3.84615%;
  background-color: rgba(255, 255, 255, 0.8);
  position: relative;
}

@media (max-width: 580px) {
  .w-story__inner-inner {
    margin-left: 5.88235%;
    margin-right: 5.88235%;
  }
}

@media (min-width: 1024px) {
  .w-story__inner-inner {
    width: 66.03774%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .w-story__inner-inner {
    width: 49.0566%;
  }
}

.w-story__subtitle {
  font-size: 12px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  letter-spacing: 0.125em;
}

.w-story__title {
  font-size: 72px;
  line-height: 1;
  font-family: "Financier Display", serif;
  font-weight: 400;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .w-story__title {
    font-size: 48px;
    line-height: 1.125;
    letter-spacing: 0;
  }
}

.w-story__link {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  color: #00ADEF;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.w-story__link:hover {
  color: #0093cb;
}

/*------------------------------------*\
    #WS LISTS
\*------------------------------------*/

.ws-list__items {
  border-top: 4px solid #000000;
}

.ws-list__items--numbered {
  counter-reset: li;
}

.ws-list__item {
  border-bottom: 1px solid #e6e6e6;
  position: relative;
  padding: 1em 0;
}

.ws-list__item-link {
  display: block;
}

.ws-list__item--numbered:before {
  /* stylelint-disable-next-line function-whitespace-after */
  content: counter(li) ".";
  counter-increment: li;
  position: absolute;
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  color: #ff291c;
}

.ws-list__item--numbered .ws-list__item-inner {
  padding-left: 1.5em;
}

.ws-list__title {
  font-size: 15px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  display: block;
  margin: 0;
}

.ws-list__kicker {
  margin: 0;
  margin-top: 0.5em;
}

/*------------------------------------*\
    #WS COUNTDOWN
\*------------------------------------*/

.ws-countdown {
  width: 300px;
  height: 251px;
  overflow: hidden;
  border: 1px solid black;
  text-align: center;
}

.ws-countdown__inner {
  padding: 0.5em 1em;
}

.ws-countdown__title {
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  margin-bottom: 0.05em;
}

.ws-countdown__numbers {
  font-family: "Financier Display", serif;
  font-weight: 200;
  font-size: 30px;
  overflow: hidden;
  display: inline-block;
  width: 100%;
}

.ws-countdown__item {
  padding: 0 0.2em;
  display: inline-block;
  vertical-align: top;
}

.ws-countdown__item span {
  font-size: 12px;
  line-height: 1.4;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  display: block;
}

.ws-countdown__colon {
  display: inline-block;
  vertical-align: top;
}

/*------------------------------------*\
    #W DIR
    #W STORY DIR
    #WS DIR
\*------------------------------------*/

/*------------------------------------*\
    #W DIR
\*------------------------------------*/

.w-dir {
  background: #f2f2f2;
}

@media (min-width: 580px) {
  .w-dir__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    white-space: nowrap;
  }
}

@media (max-width: 580px) {
  .w-dir__inner {
    padding: 0.5em 0;
  }
}

@media (min-width: 580px) {
  .w-dir__title {
    font-size: 18px;
    line-height: 1.3;
    font-family: "Financier Display", serif;
    font-weight: 200;
    letter-spacing: 0.05em;
    padding: 0 1.5rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    min-width: 14%;
    background-color: #e6e6e6;
    min-height: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    white-space: nowrap;
    position: relative;
  }

  .w-dir__title:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 100%;
    -webkit-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 0px;
    height: 0px;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #e6e6e6;
  }
}

@media (max-width: 580px) {
  .w-dir__title {
    text-align: center;
    width: 100%;
    font-size: 13px;
    line-height: 1.3;
    font-family: "Financier Display", serif;
    font-weight: 200;
    letter-spacing: 0.025em;
  }

  .w-dir__title br {
    display: none;
  }
}

.w-dir__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (min-width: 580px) {
  .w-dir__buttons {
    padding-left: 1.5em;
  }
}

@media (max-width: 580px) {
  .w-dir__buttons {
    margin-top: 0.3em;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    white-space: nowrap;
  }
}

.w-dir__button {
  padding-right: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (min-width: 1024px) {
  .w-dir__button {
    margin: 0 0.5rem;
  }

  .w-dir__button:not(:last-child) {
    border-right: 1px solid #e6e6e6;
  }
}

@media (max-width: 580px) {
  .w-dir__button {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .w-dir__button:first-child {
    padding-left: 1rem;
  }
}

.w-dir__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 580px) {
  .w-dir__image {
    margin-right: 1em;
    width: 70px;
    height: auto;
    border-radius: 50%;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

@media (max-width: 580px) {
  .w-dir__image {
    width: 50px;
    height: auto;
    border-radius: 50%;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

.w-dir__button:hover .w-dir__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0.7;
}

.w-dir__name {
  font-size: 10px;
  line-height: 1.4;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #606060;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.w-dir__button:hover .w-dir__name {
  color: #00ADEF;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

@media (max-width: 580px) {
  .w-dir__name {
    margin-top: 0.5em;
    font-size: 9px;
  }
}

/*------------------------------------*\
    #W STORY DIR
\*------------------------------------*/

.w-story-dir {
  background-color: #f2f2f2;
  width: 100%;
}

.w-story-dir__container {
  width: 100%;
}

.w-story-dir__content {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (max-width: 1024px) {
  .w-story-dir__content {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    white-space: nowrap;
    width: auto;
    max-width: 100%;
  }
}

@media (max-width: 1024px) and (max-width: 580px) {
  .w-story-dir__content {
    width: 100%;
  }
}

.w-story-dir__item {
  padding: 1em;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: normal;
}

@media (max-width: 580px) {
  .w-story-dir__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 28%;
            flex: 0 0 28%;
  }
}

@media (max-width: 374px) {
  .w-story-dir__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
  }
}

.w-story-dir__image {
  max-width: 100%;
}

@media (min-width: 580px) {
  .w-story-dir__image {
    width: 80px;
    height: auto;
    border-radius: 50%;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

@media (max-width: 580px) {
  .w-story-dir__image {
    width: 100px;
    height: auto;
    border-radius: 50%;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

.w-story-dir__item:hover .w-story-dir__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0.8;
}

.w-story-dir__title {
  max-width: 140px;
  white-space: normal;
  padding-top: 0.7em;
  /* 13: CTA/Listing Bio Preview in Feed/Dmagazine.com Link Back  */
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.3;
  color: #1a1a1a;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.w-story-dir__item:hover .w-story-dir__title {
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
  color: #00ADEF;
}

/*------------------------------------*\
    #WS DIR
\*------------------------------------*/

@media (min-width: 1024px) {
  .ws-dir--on-local-cat {
    display: none;
  }
}

@media (max-width: 1024px) {
  .ws-dir--on-local-cat + .widget {
    display: none;
  }
}

.ws-dir {
  border: 2px solid #f2f2f2;
  padding: 1em;
  text-align: center;
}

@media (max-width: 1024px) {
  .ws-dir {
    margin: 3.84615% calc( (-100vw + 100%) / 2) 0 calc( (-100vw + 100%) / 2);
    border-left: none;
    border-right: none;
    background-color: #f2f2f2;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .ws-dir {
    padding: 8% 0;
  }
}

@media (max-width: 580px) {
  .ws-dir {
    padding: 2.5em 0;
  }
}

.ws-dir__kicker {
  padding-top: 0.8em;
}

.ws-dir__content {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding-top: 1.5em;
}

@media (max-width: 1024px) {
  .ws-dir__content {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    white-space: nowrap;
    width: auto;
    max-width: 100%;
  }
}

@media (max-width: 1024px) and (max-width: 580px) {
  .ws-dir__content {
    width: 100%;
  }
}

.ws-dir__item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: normal;
  padding: 0 1em 1.3em 1em;
}

@media (max-width: 580px) {
  .ws-dir__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 28%;
            flex: 0 0 28%;
  }
}

@media (max-width: 374px) {
  .ws-dir__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
  }
}

@media (max-width: 1024px) {
  .ws-dir__item {
    padding-bottom: 0;
  }
}

.ws-dir__image {
  width: 100px;
  height: auto;
  border-radius: 50%;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  max-width: 100%;
}

.ws-dir__item:hover .ws-dir__image {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0.8;
}

.ws-dir__link {
  max-width: 100px;
  white-space: normal;
  padding-top: 0.7em;
  font-size: 14px;
  line-height: 1.5;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  font-size: 24px;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.ws-dir__item:hover .ws-dir__link {
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
  color: #ff291c;
}

/*
.w-dir-taxs {
    position: relative;
    color: $color__white;
    text-align: center;
}

.w-dir-taxs__image {
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    background-color: black;
    filter: brightness(80%);
    z-index: 1;
}

.w-dir-taxs__content {
    position: relative;
    z-index: 2;
}


.w-dir-taxs__button {
    margin: 0.5em;
    @include button--outline($color__white, rgba(0, 0, 0, 0.3), $color__black);
}
*/

/**
 * TOC
 *
 * #CARDS
 * #BLOCK
 *
 */

/*------------------------------------*\
    #CARDS
\*------------------------------------*/

.cards {
  border-top: 1px solid #999999;
}

.card {
  overflow: hidden;
  position: relative;
}

.card__subhead {
  display: block;
  padding: 0.5em 0;
}

.card__comment-count {
  text-transform: none;
  font-size: 10px;
  line-height: 1.2;
  font-family: "Founders Grotesk", sans-serif;
  font-weight: 800;
  letter-spacing: 0.15em;
  color: #999999;
}

.card__underlay {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.card__content {
  position: relative;
}

@media (max-width: 580px) {
  .card__content {
    margin-bottom: 20px;
  }
}

.card__image-wrapper {
  overflow: hidden;
}

.card__image-wrapper--center {
  display: block;
  margin-left: auto;
  margin-right: auto;
  float: none;
  max-width: 300px;
}

.card--horizontal {
  padding-bottom: 3.84615%;
  padding-top: 3.84615%;
  border-bottom: 1px solid #f2f2f2;
}

.feed--2 .card--horizontal:first-child {
  border-top: 1px solid #f2f2f2;
}

@media (min-width: 580px) {
  .card--horizontal .card__image-wrapper {
    width: 35.71429%;
    float: left;
    margin-right: 2.85714%;
  }

  .card--horizontal .card__image-wrapper + .card__content {
    width: 61.42857%;
    float: right;
    margin-right: 0;
  }

  .card--horizontal .ar-content-wrapper {
    position: relative;
    overflow: hidden;
  }

  .card--horizontal .ar-content-wrapper:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 66.66667%;
  }

  .card--horizontal .ar-content-wrapper > .ar-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}

@media (max-width: 580px) {
  .card--horizontal .card__image-wrapper {
    width: 30.76923%;
    float: left;
    margin-right: 3.84615%;
  }

  .card--horizontal .card__image-wrapper + .card__content {
    width: 65.38462%;
    float: right;
    margin-right: 0;
  }

  .card--horizontal .ar-content-wrapper {
    position: relative;
    overflow: hidden;
  }

  .card--horizontal .ar-content-wrapper:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 100%;
  }

  .card--horizontal .ar-content-wrapper > .ar-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}

.card--horizontal .card__comment-count {
  position: absolute;
  right: 10px;
  bottom: 10px;
}

.card--switch:first-child {
  clear: both;
}

@media (min-width: 1024px) {
  .card--switch {
    width: 32.07547%;
    float: left;
    margin-top: 1.88679%;
    margin-bottom: 3.84615%;
  }

  .card--switch:nth-child(3n + 1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }

  .card--switch:nth-child(3n + 2) {
    margin-left: 33.96226%;
    margin-right: -100%;
    clear: none;
  }

  .card--switch:nth-child(3n + 3) {
    margin-left: 67.92453%;
    margin-right: -100%;
    clear: none;
  }

  .card--switch .ar-content-wrapper {
    position: relative;
    overflow: hidden;
  }

  .card--switch .ar-content-wrapper:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 66.66667%;
  }

  .card--switch .ar-content-wrapper > .ar-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }

  .card--switch .card__image-wrapper {
    margin-bottom: 5.88235%;
  }

  .card--switch .card__comment-count {
    position: relative;
    margin-bottom: 5.88235%;
    margin-top: 2em;
    display: inline-block;
  }
}

@media (max-width: 1024px) {
  .card--switch {
    padding-bottom: 3.84615%;
    padding-top: 3.84615%;
    border-bottom: 1px solid #f2f2f2;
  }

  .feed--2 .card--switch:first-child {
    border-top: 1px solid #f2f2f2;
  }

  .card--switch .card__comment-count {
    position: absolute;
    right: 10px;
    bottom: 10px;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .card--switch .ar-content-wrapper {
    position: relative;
    overflow: hidden;
  }

  .card--switch .ar-content-wrapper:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 66.66667%;
  }

  .card--switch .ar-content-wrapper > .ar-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }

  .card--switch .card__image-wrapper {
    width: 35.71429%;
    float: left;
    margin-right: 2.85714%;
  }

  .card--switch .card__image-wrapper + .card__content {
    width: 61.42857%;
    float: right;
    margin-right: 0;
  }
}

@media (max-width: 580px) {
  .card--switch .card__image-wrapper {
    width: 30.76923%;
    float: left;
    margin-right: 3.84615%;
  }

  .card--switch .card__image-wrapper + .card__content {
    width: 65.38462%;
    float: right;
    margin-right: 0;
  }

  .card--switch .ar-content-wrapper {
    position: relative;
    overflow: hidden;
  }

  .card--switch .ar-content-wrapper:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 100%;
  }

  .card--switch .ar-content-wrapper > .ar-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}

.card--cover {
  padding-bottom: 3.84615%;
  padding-top: 3.84615%;
}

@media (min-width: 580px) {
  .card--cover .card__image-wrapper {
    width: 35.71429%;
    float: left;
    margin-right: 2.85714%;
  }

  .card--cover .card__image-wrapper + .card__content {
    width: 61.42857%;
    float: right;
    margin-right: 0;
  }
}

@media (max-width: 580px) {
  .card--cover .card__image-wrapper {
    max-width: 300px;
    float: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1em;
  }

  .card--cover .card__content {
    text-align: center;
  }
}

.card--vertical {
  margin-top: 1.88679%;
  margin-bottom: 3.84615%;
}

.card--vertical .ar-content-wrapper {
  position: relative;
  overflow: hidden;
}

.card--vertical .ar-content-wrapper:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 66.66667%;
}

.card--vertical .ar-content-wrapper > .ar-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.card--vertical .card__image-wrapper {
  margin-bottom: 5.88235%;
}

@media (min-width: 1024px) {
  .card--vertical {
    width: 32.07547%;
    float: left;
  }

  .card--vertical:nth-child(3n + 1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }

  .card--vertical:nth-child(3n + 2) {
    margin-left: 33.96226%;
    margin-right: -100%;
    clear: none;
  }

  .card--vertical:nth-child(3n + 3) {
    margin-left: 67.92453%;
    margin-right: -100%;
    clear: none;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .card--vertical {
    width: 32.07547%;
    float: left;
  }

  .card--vertical:nth-child(3n + 1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }

  .card--vertical:nth-child(3n + 2) {
    margin-left: 33.96226%;
    margin-right: -100%;
    clear: none;
  }

  .card--vertical:nth-child(3n + 3) {
    margin-left: 67.92453%;
    margin-right: -100%;
    clear: none;
  }
}

@media (max-width: 580px) {
  .card--vertical {
    width: 100%;
  }
}

.card--vertical .card__comment-count {
  position: relative;
  margin-bottom: 5.88235%;
  margin-top: 2em;
  display: inline-block;
}

.card--story.card--story {
  padding-bottom: 3.84615%;
  padding-top: 3.84615%;
  border-bottom: 1px solid #f2f2f2;
  width: 100%;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
}

.feed--2 .card--story.card--story:first-child {
  border-top: 1px solid #f2f2f2;
}

@media (min-width: 580px) {
  .card--story.card--story .card__image-wrapper {
    width: 35.71429%;
    float: left;
    margin-right: 2.85714%;
  }

  .card--story.card--story .card__image-wrapper + .card__content {
    width: 61.42857%;
    float: right;
    margin-right: 0;
  }

  .card--story.card--story .ar-content-wrapper {
    position: relative;
    overflow: hidden;
  }

  .card--story.card--story .ar-content-wrapper:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 66.66667%;
  }

  .card--story.card--story .ar-content-wrapper > .ar-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}

@media (max-width: 580px) {
  .card--story.card--story .card__image-wrapper {
    width: 30.76923%;
    float: left;
    margin-right: 3.84615%;
  }

  .card--story.card--story .card__image-wrapper + .card__content {
    width: 65.38462%;
    float: right;
    margin-right: 0;
  }

  .card--story.card--story .ar-content-wrapper {
    position: relative;
    overflow: hidden;
  }

  .card--story.card--story .ar-content-wrapper:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 100%;
  }

  .card--story.card--story .ar-content-wrapper > .ar-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}

.card--story.card--story .card__comment-count {
  position: absolute;
  right: 10px;
  bottom: 10px;
}

.card--story.card--story h2 {
  margin-top: 0;
}

.card--story.card--story a {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
}

.card--story.card--story a:hover {
  color: inherit;
}

.card--story.card--story .card__title.card__title {
  font-size: 18px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .card--story.card--story .card__title.card__title {
    font-size: 14px;
    line-height: 1.14;
    letter-spacing: 0;
  }
}

.card--story.card--story .card__subhead {
  display: none;
}

/*
used in chapters template
*/

.card--big {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 5.88235%;
}

@media (max-width: 580px) {
  .card--big {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.card--big .byline,
.card--big .kicker--secondary,
.card--big .dir-card__price,
.card--big .dir-card__dates,
.card--big .dir-category,
.card--big .dir-card__category,
.card--big .dir-block__item-title,
.card--big .category,
.card--big .card--story.card--story h2,
.card--story.card--story .card--big h2 {
  display: none;
}

.card--big .card__image-wrapper {
  width: 50%;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

@media (max-width: 580px) {
  .card--big .card__image-wrapper {
    width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}

.card--big .card__content {
  padding: 3.84615%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: white;
}

.card--big .card__subhead {
  max-width: 25em;
}

@media (min-width: 580px) {
  .card--big:nth-child(odd) .card__image-wrapper {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }

  .card--big:nth-child(odd) .card__content {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.longStyle__content {
  margin-top: 1em;
}

@media (min-width: 1024px) {
  .longStyle__social {
    width: 6.60377%;
    float: left;
    margin-right: 1.88679%;
  }
}

@media (max-width: 1024px) and (min-width: 580px) {
  .longStyle__social {
    width: 6.60377%;
    float: left;
    margin-right: 1.88679%;
  }
}

@media (max-width: 580px) {
  .longStyle__social {
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 580px) {
  .longStyle__social {
    float: none;
  }
}

.longStyle__image-wrapper {
  max-width: 100%;
  position: relative;
}

@media (max-width: 580px) {
  .longStyle__story {
    margin-top: 1em;
  }
}

.card .image {
  display: block;
}

.card__title {
  /* 6: Restaurant Review Headline */
  font-family: "Financier Display", serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 1.1;
  color: #1a1a1a;
}

.card__title--big {
  font-size: 60px;
  line-height: 1.2;
  font-family: "Financier Display", serif;
  font-weight: 400;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .card__title--big {
    font-size: 48px;
    line-height: 1.125;
    letter-spacing: 0;
  }
}

.card__title--medium {
  font-size: 52px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 600;
  letter-spacing: 0;
}

@media (max-width: 580px) {
  .card__title--medium {
    font-size: 36px;
    line-height: 1.1;
    letter-spacing: 0;
  }
}

.card__title__link {
  display: block;
}

.card__category-links {
  padding-left: 20px;
  font-size: 12px;
  font-weight: 700;
}

.read-more.read-more {
  background-image: none;
  text-decoration: none;
  text-shadow: none;
  margin-top: 1em;
  color: #00ADEF;
  display: block;
  font-size: 14px;
  line-height: 1.14;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.read-more.read-more:hover {
  color: inherit;
}

.read-more.read-more:hover {
  color: #0093cb;
}

.card__social {
  font-size: 12px;
  line-height: 1.1;
  font-family: "Financier Display", serif;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.card__social__link {
  display: inline-block;
  padding: 0.2em;
}

/*------------------------------------*\
    #BLOCK - kinda like a card, but extended to include more elements
\*------------------------------------*/

.block__image-wrapper {
  position: relative;
}

.block__image-wrapper a {
  display: block;
}

.nb-hero__inner {
  z-index: 1;
}

.mapApp__refresh,
.mapApp__topshadow,
.mapApp__bottomshadow {
  z-index: 2;
}

.mapApp__filter--dropdown,
.mapApp__noResult {
  z-index: 3;
}

.nb-nav {
  z-index: 10004 !important;
}

.nb-dropdown {
  z-index: 10005;
}

button {
  outline: none;
}

button:hover,
button:focus {
  outline: none;
}

.o-button {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 15px 20px;
  border-radius: 6px;
  text-decoration: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-weight: 700;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
  font-family: "Founders Grotesk", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 100%;
}

.o-button .o-icon {
  position: relative;
  right: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  will-change: transform;
}

.o-button .o-icon svg,
.o-button .o-icon path {
  color: inherit;
}

.o-button span + span {
  margin-left: 15px;
}

.o-button--primary {
  color: #FFF;
  background: #FF291C;
  border-radius: 25px;
  padding: 15px 20px;
}

.o-button--primary:hover,
.o-button--primary:focus {
  color: #FF291C;
  background: #FFF;
}

.o-button--primary:hover svg,
.o-button--primary:hover path,
.o-button--primary:focus svg,
.o-button--primary:focus path {
  color: #FF291C;
}

form ol,
form ul {
  list-style: none;
  margin-left: 0;
}

fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}

input,
select,
textarea {
  width: 100%;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type=text],
input[type=password],
input[type=email],
input[type=search],
input[type=tel],
input[type=number],
input[type=date],
input[type=url],
select,
textarea {
  padding: 12.5px 25px;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0;
  border: 1px solid #dedede;
}

.c-signup-form input[type=text],
.c-signup-form
  input[type=password],
.c-signup-form
  input[type=email],
.c-signup-form
  input[type=search],
.c-signup-form
  input[type=tel],
.c-signup-form
  input[type=number],
.c-signup-form
  input[type=date],
.c-signup-form
  input[type=url],
.c-signup-form
  select,
.c-signup-form
  textarea {
  border: 0;
  padding: 0;
}

input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=date]:focus,
input[type=url]:focus,
select:focus,
textarea:focus {
  outline: 1px solid #fff;
}

.c-signup-form input[type=text]:focus,
.c-signup-form
    input[type=password]:focus,
.c-signup-form
    input[type=email]:focus,
.c-signup-form
    input[type=search]:focus,
.c-signup-form
    input[type=tel]:focus,
.c-signup-form
    input[type=number]:focus,
.c-signup-form
    input[type=date]:focus,
.c-signup-form
    input[type=url]:focus,
.c-signup-form
    select:focus,
.c-signup-form
    textarea:focus {
  outline: 0;
  opacity: 1;
}

input[type=radio],
input[type=checkbox] {
  outline: none;
  margin: 0;
  margin-right: 12.5px;
  height: 18px;
  width: 18px;
  line-height: 1;
  background-size: 18px;
  background-repeat: no-repeat;
  background-position: 0 0;
  cursor: pointer;
  display: block;
  float: left;
  border: 1px solid #dedede;
  padding: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  -webkit-transition: background-color 0.25s cubic-bezier(0.86, 0, 0.07, 1);
  -o-transition: background-color 0.25s cubic-bezier(0.86, 0, 0.07, 1);
  transition: background-color 0.25s cubic-bezier(0.86, 0, 0.07, 1);
}

input[type=radio] + label,
input[type=checkbox] + label {
  cursor: pointer;
  position: relative;
  margin-bottom: 0;
  line-height: 18px;
  overflow: hidden;
  text-transform: none;
  letter-spacing: normal;
  font-family: "Financier Display", serif;
  font-size: var(--font-size-s, 24px);
}

input[type=checkbox]:checked,
input[type=radio]:checked {
  background: #1a1a1a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M26.08,3.56l-2,1.95L10.61,19l-5-4L3.47,13.29,0,17.62l2.17,1.73L9.1,24.9,11,26.44l1.77-1.76L28.05,9.43,30,7.48Z' fill='%23000'/%3E%3C/svg%3E") no-repeat center center;
  background-size: 10px 10px;
  border-color: #1a1a1a;
}

input[type=checkbox] {
  border-radius: 0;
}

input[type=radio] {
  border-radius: 50px;
}

input[type=submit] {
  -webkit-transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1);
  -o-transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1);
  transition: all 0.23s cubic-bezier(0.86, 0, 0.07, 1);
}

/* clears the 'X' from Internet Explorer */

input[type=search]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

input[type=search]::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}

/* clears the 'X' from Chrome */

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

/* removes the blue background on Chrome's autocomplete */

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px white inset;
}

select {
  width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: "";
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 16.84'%3E%3Cpath d='M15,16.84a1.83,1.83,0,0,1-1.3-.54L.54,3.15A1.85,1.85,0,0,1,3.15.54L15,12.39,26.85.54a1.85,1.85,0,0,1,2.61,2.61L16.3,16.3A1.83,1.83,0,0,1,15,16.84Z' fill='%23222222'/%3E%3C/svg%3E") center right 25px no-repeat;
  background-size: 10px 10px;
  padding-right: 25px;
}

select::-ms-expand {
  display: none;
}

.o-form--inline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.o-form--inline input[type="email"] {
  width: calc(100% - 120px);
}

.o-form--inline input[type="submit"] {
  width: 120px;
  margin-top: 0;
}

.c-newsletter-block {
  margin-bottom: 50px;
}

.c-newsletter-block__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 55px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 20px 0;
}

.c-newsletter-block__title {
  color: #000;
  font-family: "Financier Display", serif;
  font-size: 60px;
  font-weight: 300;
  line-height: 80%;
  letter-spacing: -1.2px;
}

.c-newsletter-block__dek {
  color: #000;
  font-size: 18px;
  line-height: 28px;
}

.c-newsletter-block .o-form-signup {
  margin-top: 20px;
}

.c-newsletter-block .o-form-signup form label {
  display: none;
}

.c-newsletter-block .o-form-signup form input[type=email] {
  border-radius: 25px;
  border: 1px solid #828282;
  background: #FFF;
  height: 51px;
}

.c-newsletter-block .o-form-signup form input[type="submit"] {
  border-radius: 25px;
  background: #FF291C;
  color: #fff;
  right: 10px;
  top: 5px;
  bottom: 5px;
  height: 41px;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="15" viewBox="0 0 22 15" fill="none"><path d="M1 6.38184C0.447715 6.38184 0 6.82955 0 7.38184C0 7.93412 0.447715 8.38184 1 8.38184V6.38184ZM21.7071 8.08894C22.0976 7.69842 22.0976 7.06525 21.7071 6.67473L15.3431 0.310768C14.9526 -0.0797563 14.3195 -0.0797563 13.9289 0.310768C13.5384 0.701293 13.5384 1.33446 13.9289 1.72498L19.5858 7.38184L13.9289 13.0387C13.5384 13.4292 13.5384 14.0624 13.9289 14.4529C14.3195 14.8434 14.9526 14.8434 15.3431 14.4529L21.7071 8.08894ZM1 8.38184H21V6.38184H1V8.38184Z" fill="white"/></svg>');
  text-indent: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 45px 0 20px;
  font-weight: 700;
  background-repeat: no-repeat;
  background-position: 85%;
}

.o-form-signup {
  position: relative;
  overflow: hidden;
}

.o-form-signup form {
  position: relative;
}

.o-form-signup form > * {
  line-height: 1.3;
}

.o-form-signup form .hs-form-field,
.o-form-signup form .hs-input,
.o-form-signup form .input,
.o-form-signup form fieldset {
  width: 100% !important;
  float: none !important;
  max-width: 100% !important;
}

.o-form-signup form .hs-form-field {
  padding: 0 2px;
}

.o-form-signup form fieldset {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -2px;
}

.o-form-signup form input[type=email] {
  padding: 0 50px 0 12.5px;
}

.o-form-signup form input[type=email],
.o-form-signup form input[type=text] {
  padding: 0 12.5px;
  border: 0;
  outline: 0;
  z-index: 0;
  line-height: 40px;
  height: 40px;
  width: 100%;
  color: white;
  margin-bottom: 4px;
}

.o-form-signup form input[type=email]::-webkit-input-placeholder,
.o-form-signup form input[type=text]::-webkit-input-placeholder {
  color: #dedede;
}

.o-form-signup form input[type=email]:-ms-input-placeholder,
.o-form-signup form input[type=text]:-ms-input-placeholder {
  color: #dedede;
}

.o-form-signup form input[type=email]::-ms-input-placeholder,
.o-form-signup form input[type=text]::-ms-input-placeholder {
  color: #dedede;
}

.o-form-signup form input[type=email]::placeholder,
.o-form-signup form input[type=text]::placeholder {
  color: #dedede;
}

.o-form-signup form input[type="submit"] {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  height: 40px;
  width: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: transparent;
  background-color: transparent;
  text-indent: 9999px;
  background-image: url('data:image/svg+xml,%3Csvg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M20 0L0 7.27148L5.4375 12.7109L16 4L7.28906 14.5625L12.7285 20L20 0Z" fill="%23ff291c"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px 20px;
}

.o-form-signup form label {
  color: #ff6868;
}

.o-form-signup form .hs-error-msg {
  display: block;
  margin-top: 6.25px;
}

.o-form-signup--secondary form input[type=email] {
  background-color: #f3f3f3;
  color: #1a1a1a;
  padding: 0 37.5px 0 12.5px;
  line-height: 46px;
  height: 46px;
}

.o-form-signup--secondary form input[type=email]::-webkit-input-placeholder {
  color: #1a1a1a;
}

.o-form-signup--secondary form input[type=email]:-ms-input-placeholder {
  color: #1a1a1a;
}

.o-form-signup--secondary form input[type=email]::-ms-input-placeholder {
  color: #1a1a1a;
}

.o-form-signup--secondary form input[type=email]::placeholder {
  color: #1a1a1a;
}

.o-form-signup--secondary form input[type="submit"] {
  height: 46px;
}

.o-form-search {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.o-form-search form {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: white;
  height: 100%;
  overflow: hidden;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
}

.o-form-search form input[type="text"] {
  height: 40px;
  padding: 0 12.5px;
  outline: 0;
  border: 0;
  line-height: 1;
  background-color: #f3f3f3;
}

.o-form-search form input[type="text"]::-webkit-input-placeholder {
  color: #ababab;
}

.o-form-search form input[type="text"]:-ms-input-placeholder {
  color: #ababab;
}

.o-form-search form input[type="text"]::-ms-input-placeholder {
  color: #ababab;
}

.o-form-search form input[type="text"]::placeholder {
  color: #ababab;
}

.o-form-search form input[type="text"]:hover,
.o-form-search form input[type="text"]:focus {
  outline: 0;
}

.o-form-search form button {
  padding: 0;
  width: 40px;
  height: 40px;
  min-width: 40px;
}

.o-form-search form button span:not(.o-icon) {
  display: none;
}

/*------------------------------------*\
    #PASSWORD FORM
    DMAG-0893 [WB] Copied and modified from web/wp-content/themes/dmagazine/assets/styles/components/_forms.scss
\*------------------------------------*/

.post-password-form {
  margin: 4% 0;
  border: 1px solid #dedede;
  overflow: hidden;
}

.post-password-form p {
  font-family: "Founders Grotesk", sans-serif;
}

.post-password-form > p:first-child {
  font-weight: 500;
  margin: 30px 4%;
}

.post-password-form > p:last-child {
  margin: 30px 4%;
  overflow: hidden;
}

.post-password-form > p:last-child label {
  display: block;
  margin-bottom: 15px;
  line-height: 1.7;
  text-align: center;
}

@media only screen and (min-width: 700px) {
  .post-password-form > p:last-child label {
    width: 75%;
    float: left;
    margin-right: 2%;
    text-align: right;
  }
}

.post-password-form > p:last-child input[type='password'] {
  border: 1px solid #828282;
  padding: 8px;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.3;
  width: 100%;
  height: auto;
}

@media only screen and (min-width: 700px) {
  .post-password-form > p:last-child input[type='password'] {
    width: 78%;
    float: right;
    margin-left: 2%;
  }
}

.post-password-form > p:last-child input[type='password']:focus {
  border-color: #ff291c;
}

.post-password-form > p:last-child input[type='submit'] {
  width: 100%;
  color: #fff;
  padding: 8px;
  font-size: 15px;
  line-height: 1.3;
  background: #ff291c;
  margin-bottom: 15px;
  cursor: pointer;
}

@media only screen and (min-width: 700px) {
  .post-password-form > p:last-child input[type='submit'] {
    width: 23%;
    float: left;
  }
}

.post-password-form > p:last-child input[type='submit']:hover {
  background: #1a1a1a;
}

@use '../../../scss/base/variables';
@use '../../../scss/base/mixins';
.o-figure {
  margin: 0;
  padding: 0;
}

.o-figure img {
  width: 100%;
}

.o-figure__credit {
  color: #979797;
}

figcaption {
  margin-top: 15px;
  border-left: 4px solid #C8D2D6;
  padding-left: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 0.875rem;
}

@use '../../../scss/base/variables';
@use '../../../scss/base/mixins';
.o-link,
.o-link .o-link:visited {
  text-decoration: none;
}

.o-link:hover,
.o-link .o-link:visited:hover {
  text-decoration: underline;
}

.o-link:not(.unrich),
.o-link .o-link:visited:not(.unrich) {
  color: var(--color-secondary-2-100);
}

.o-link--pill {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
  color: var(--color-secondary-1-75) !important;
  font-size: 0.9375rem;
  border-radius: 10px;
  border: 1px solid var(--color-secondary-1-75);
  background: var(--color-light, #FFF);
  padding: 10px;
}

.o-link--pill:hover,
.o-link--pill.active {
  color: var(--color-light) !important;
  background-color: var(--color-secondary-1-100);
  text-decoration: none;
}

.o-dek {
  margin: 0;
  padding: 0;
}

.o-dek--large {
  font-size: 1.6875rem;
  line-height: var(--line-height-large);
  letter-spacing: -0.54px;
}

.o-dek a,
.o-dek a .a:visited {
  text-decoration: none;
}

.o-dek a:hover {
  text-decoration: underline;
}

.o-dek a:not(.unrich) {
  color: var(--color-secondary-2-100);
}

@use '../../../../scss/base/variables';
@use '../../../../scss/base/mixins';
.o-heading--primary {
  font-family: var(--font-primary) !important;
}

.o-heading--light {
  color: var(--color-light);
}

.o-heading--dark {
  color: var(--color-dark);
}

.o-heading__link {
  color: inherit;
  text-decoration: none;
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.o-heading__link:hover,
.o-heading__link:active {
  color: var(--color-primary);
}

.o-heading__link:visited {
  color: inherit;
}

@use '../../../../scss/base/variables';
@use '../../../../scss/base/mixins';
.o-kicker {
  display: inline-block;
  color: var(--color-secondary-2-100);
  font-family: var(--font-secondary);
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 800;
  line-height: 120%;
  letter-spacing: 2.25px;
  text-transform: uppercase;
}

.o-kicker__link,
.o-kicker a {
  text-decoration: none;
  color: inherit;
}

.o-kicker__link:hover,
.o-kicker__link:focus,
.o-kicker a:hover,
.o-kicker a:focus {
  text-decoration: underline;
}

.o-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

.o-meta .o-meta__author-images img {
  width: 50px;
  height: 50px;
  aspect-ratio: 1;
  border-radius: 50px;
}

.o-meta .o-meta__author-name {
  color: #000;
  font-family: "Founders Grotesk", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 100%;
}

.o-meta p {
  margin: 0;
  padding: 0;
  color: #000;
  font-family: "Founders Grotesk", sans-serif;
  font-size: 15px;
  line-height: 100%;
}

.o-meta a,
.o-meta a:visited {
  color: var(--color-secondary-2-100);
  text-decoration: none;
}

.o-meta a:hover,
.o-meta a:visited:hover {
  text-decoration: underline;
}

.c-block--light-text {
  color: var(--color-light);
}

.c-block--dark-text {
  color: var(--color-dark);
}

.c-block--sponsored {
  background: #EFF6FD;
}

.c-block--external .o-heading {
  font-family: 'Gelica', 'Financier Display', serif;
  font-size: 27px;
  font-weight: 300;
  line-height: 110%;
}

.c-block-featured {
  position: relative;
}

.c-block-featured__image {
  position: relative;
  z-index: 0;
}

.c-block-featured__content {
  position: relative;
  z-index: 1;
  background: #fff;
  padding-top: 25px;
  padding-right: 25px;
  margin-top: -50px;
  width: 100%;
  max-width: 800px;
}

.c-block-trending {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.c-block-trending__count {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  font-size: 24px;
  height: 40px;
  width: 40px;
  min-width: 40px;
  position: relative;
  top: 5px;
}

.c-block-trending__image {
  margin-bottom: 6.25px;
}

@use '../../../scss/base/variables';
@use '../../../scss/base/mixins';
.m-leader-card {
  position: relative;
}

.m-leader-card__figure {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
}

.m-leader-card__figure::after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(#244C5A)), transparent 50%/cover no-repeat;
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #244C5A 100%), transparent 50%/cover no-repeat;
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #244C5A 100%), transparent 50%/cover no-repeat;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #244C5A 100%), transparent 50%/cover no-repeat;
  mix-blend-mode: multiply;
  border-radius: 20px;
}

.m-leader-card__figure img {
  max-height: 440px;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-leader-card__content {
  position: absolute;
  padding: 15px;
  bottom: 0;
  color: #fff;
  text-align: center;
  width: 100%;
}

.m-leader-card__content .o-heading {
  margin-bottom: 5px;
}

.m-leader-card__content .o-dek {
  font-size: 1.125rem;
}

.m-leader-card__title {
  font-weight: 700;
}

.is-template-dining-guide .dir-section {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.page-content > div + div {
  margin-top: 60px;
}

.c-browse-by-cuisine {
  padding-top: 20px;
  padding-bottom: 20px;
  background: #FAFAFA;
}

.c-browse-by-cuisine__slides {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}

.c-browse-by-cuisine__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
  padding: 0 !important;
  margin: 0 !important;
}

.c-browse-by-cuisine__item .o-figure {
  margin: 0;
  padding: 0;
}

.c-browse-by-cuisine__item .o-figure img {
  aspect-ratio: 1;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-browse-by-cuisine__item .o-dek {
  color: #000;
  text-align: center;
  font-size: 24px;
  line-height: 110%;
}

.c-browse-by-cuisine .tns-controls {
  position: absolute;
  top: -5px;
  right: 0;
}

.c-slider-horizontal-posts {
  /* Specific content styles */
}

.c-slider-horizontal-posts__slider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}

.c-slider-horizontal-posts--trending .c-section-header {
  padding-bottom: 0;
  margin-bottom: 25px;
  min-height: 55px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 15px;
  border-bottom: 2px solid #000;
  padding-bottom: 5px;
}

.c-slider-horizontal-posts--trending .c-section-header__heading {
  -webkit-box-flex: unset;
      -ms-flex: unset;
          flex: unset;
  position: unset;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: unset;
  font-family: 'Founders Grotesk', sans-serif;
  color: #1a1a1a;
}

.c-slider-horizontal-posts--trending .c-section-header__link {
  margin-right: 0;
  line-height: 1.4rem;
}

.c-slider-horizontal-posts--trending .c-slider-horizontal-posts__slider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.c-slider-horizontal-posts--trending .c-slider-horizontal-posts__slider-item {
  border: none !important;
}

.c-slider-horizontal-posts--trending .c-slider-horizontal-posts__slider-item .c-block__content {
  padding: 0 !important;
}

.c-slider-horizontal-posts--horizontal .c-section-header {
  margin-bottom: 25px;
  min-height: 55px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 15px;
  border-bottom: 2px solid #000;
  padding-bottom: 5px;
}

.c-slider-horizontal-posts--horizontal .c-section-header__heading {
  -webkit-box-flex: unset;
      -ms-flex: unset;
          flex: unset;
  position: unset;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: unset;
}

.c-slider-horizontal-posts--horizontal .c-section-header__link {
  margin-right: 0;
  line-height: 1.4rem;
}

.c-slider-horizontal-posts--horizontal .tns-nav {
  position: absolute;
  z-index: 3;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #FFF;
  gap: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: -20px;
}

.c-slider-horizontal-posts--horizontal .tns-nav button {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  border: none;
  background: #828282;
  padding: 0;
}

.c-slider-horizontal-posts--horizontal .tns-nav button.tns-nav-active {
  background: #000;
  width: 8px;
  height: 8px;
}

.c-slider-horizontal-posts--vertical-img .c-block--sponsored {
  padding: 15px;
  border-radius: 10px;
  background: #EFF6FD;
}

.c-slider-horizontal-posts--vertical-img .c-block picture,
.c-slider-horizontal-posts--vertical-img .c-block img {
  aspect-ratio: 95 / 119 !important;
  border-radius: 6px;
}

.c-slider-horizontal-posts--vertical-img .c-block .o-kicker,
.c-slider-horizontal-posts--vertical-img .c-block .o-kicker a {
  color: #FF291C;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 12px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.c-slider-horizontal-posts--vertical-img .c-block .o-meta {
  line-height: normal;
}

.c-slider-horizontal-posts__featured {
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
  gap: 20px;
}

@media (min-width: 1024px) {
  .c-slider-horizontal-posts__featured {
    grid-template-columns: 7fr 5fr;
  }
}

.c-slider-horizontal-posts__featured .c-block-featured__image img {
  width: auto;
  height: auto;
  max-width: 100%;
}

.c-slider-horizontal-posts__featured .c-block-featured__content {
  margin-top: 0 !important;
  width: 100% !important;
}

.c-slider-horizontal-posts__featured .c-block-featured__content-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
}

.c-slider-horizontal-posts__featured .c-block-featured__content .o-heading {
  color: #000;
  font-family: "Gelica", "Financier Display", serif;
  font-size: 36px;
  font-style: normal;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: -0.36px;
}

.c-slider-horizontal-posts__featured .c-block-featured__content .o-dek {
  color: #000;
  font-size: 21px;
  line-height: 115%;
}

.c-slider-horizontal-posts__featured .c-block-featured__content .o-meta__author-name {
  font-size: 14px;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item {
  border-radius: 10px;
  border: 1px solid #E5E5E5;
  width: 305px;
  padding: 0 !important;
  margin: 0;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  border-radius: 10px;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block img {
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 10px 10px 0px 0px;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 10px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content .o-heading {
  color: #000;
  font-size: 21px;
  font-weight: 700;
  line-height: 110%;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content .o-dek,
.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content .o-dek p {
  color: #000;
  font-size: 18px !important;
  line-height: 100% !important;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content .o-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: auto;
  padding-top: 5px;
  gap: 5px;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content .o-footer > span,
.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content .o-footer > a {
  color: #808080;
  font-size: 15px;
  line-height: 100%;
}

.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content .o-footer a:hover,
.c-slider-horizontal-posts.slides-listings .c-slider-horizontal-posts__slider-item .c-block__content .o-footer a:active {
  color: #FF291C;
}

.c-slider-horizontal-posts img.o-image {
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-slider-horizontal-posts .o-kicker {
  font-size: 0.875rem;
}

.c-slider-horizontal-posts .o-heading {
  font-size: 1.6875rem;
}

.c-slider-horizontal-posts .o-meta,
.c-slider-horizontal-posts .o-meta a {
  font-size: 0.875rem;
  color: #404040;
}

.c-slider-horizontal-posts.has-overflow {
  overflow: hidden;
}

.c-slider-horizontal-posts.has-overflow .tns-outer,
.c-slider-horizontal-posts.has-overflow .tns-ovh {
  overflow: visible;
}

.c-slider-horizontal-posts .tns-controls {
  position: absolute;
  top: 15px;
  right: 0;
}

.c-slider-horizontal-posts.has-featured-story .tns-controls {
  top: unset !important;
  margin-top: -50px !important;
}

.c-slider-hero__slider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-slider-hero__slider-item {
  height: 400px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.c-slider-hero__heading {
  color: #FBFFFA;
  font-family: 'Gelica', 'Financier Text', serif;
  font-size: 60px;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: -1.2px;
}

.c-slider-hero .tns-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 2;
}

.c-slider-hero .tns-nav button {
  background: rgba(255, 255, 255, 0.65);
  width: 12px;
  height: 12px;
  border-radius: 50%;
}

.c-slider-hero .tns-nav button.tns-nav-active {
  background: white;
  width: 36px;
  border-radius: 8px;
}

.c-slider-guide__container {
  overflow: hidden;
  border-radius: 40px;
}

.c-slider-guide__slider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-slider-guide__slider-item {
  height: 600px;
  padding: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-size: cover;
  background-repeat: no-repeat;
}

.c-slider-guide__heading {
  color: #FBFFFA;
  font-family: 'Gelica', 'Financier Text', serif;
  font-weight: 300;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 50px;
}

.c-slider-guide__heading-small {
  font-size: 60px;
  letter-spacing: -1.2px;
}

.c-slider-guide__heading-large {
  font-size: 120px;
  letter-spacing: -2.4px;
}

.c-slider-guide .tns-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  position: absolute;
  bottom: 40px;
  left: 50%;
  z-index: 2;
}

.c-slider-guide .tns-nav button {
  background: rgba(255, 255, 255, 0.65);
  width: 12px;
  height: 12px;
  border-radius: 50%;
}

.c-slider-guide .tns-nav button.tns-nav-active {
  background: white;
  width: 36px;
  border-radius: 8px;
}

.tns-controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  background: none;
  outline: none;
}

.tns-controls button {
  height: 34px;
  width: 34px;
  min-width: 34px;
  border-radius: 34px;
  border: none;
  display: block;
  overflow: hidden;
  text-indent: 9999px;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="34" height="34" viewBox="0 0 34 34" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.0007 4.95831C10.3502 4.95831 4.95898 10.3496 4.95898 17C4.95898 23.6504 10.3502 29.0416 17.0007 29.0416C23.6511 29.0416 29.0423 23.6504 29.0423 17C29.0423 10.3496 23.6511 4.95831 17.0007 4.95831ZM2.83398 17C2.83398 9.17594 9.17661 2.83331 17.0007 2.83331C24.8246 2.83331 31.1673 9.17594 31.1673 17C31.1673 24.8239 24.8246 31.1666 17.0007 31.1666C9.17661 31.1666 2.83398 24.8239 2.83398 17ZM18.1193 10.5534C18.5501 10.1549 19.2223 10.181 19.6208 10.6117L24.8639 16.2785C25.2407 16.6856 25.2407 17.3143 24.8639 17.7216L19.6208 23.3883C19.2223 23.819 18.5501 23.845 18.1193 23.4465C17.6886 23.048 17.6625 22.3758 18.061 21.945L21.6534 18.0625H9.91732C9.33052 18.0625 8.85482 17.5868 8.85482 17C8.85482 16.4132 9.33052 15.9375 9.91732 15.9375H21.6534L18.061 12.0549C17.6625 11.6242 17.6886 10.9519 18.1193 10.5534Z" fill="black"/></svg>') center center no-repeat;
  background-color: transparent;
  background-size: 34px auto;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform-origin: center;
       -o-transform-origin: center;
          transform-origin: center;
  -webkit-transform: scale(1) rotate(0);
       -o-transform: scale(1) rotate(0);
          transform: scale(1) rotate(0);
}

.tns-controls button:disabled {
  background: url('data:image/svg+xml,<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M19.9999 5.83334C12.1759 5.83334 5.83325 12.176 5.83325 20C5.83325 27.824 12.1759 34.1667 19.9999 34.1667C27.8239 34.1667 34.1666 27.824 34.1666 20C34.1666 12.176 27.8239 5.83334 19.9999 5.83334ZM3.33325 20C3.33325 10.7953 10.7952 3.33334 19.9999 3.33334C29.2046 3.33334 36.6666 10.7953 36.6666 20C36.6666 29.2047 29.2046 36.6667 19.9999 36.6667C10.7952 36.6667 3.33325 29.2047 3.33325 20ZM21.3159 12.4158C21.8228 11.947 22.6136 11.9777 23.0824 12.4844L29.2508 19.1512C29.6941 19.6302 29.6941 20.3698 29.2508 20.849L23.0824 27.5157C22.6136 28.0223 21.8228 28.053 21.3159 27.5842C20.8093 27.1153 20.7786 26.3245 21.2474 25.8177L25.4738 21.25H11.6666C10.9762 21.25 10.4166 20.6903 10.4166 20C10.4166 19.3097 10.9762 18.75 11.6666 18.75H25.4738L21.2474 14.1823C20.7786 13.6755 20.8093 12.8847 21.3159 12.4158Z" fill="lightgray"/></svg>') center center no-repeat;
  background-size: 34px auto;
  pointer-events: none;
}

.tns-controls button:first-of-type {
  -webkit-transform: scale(1) rotate(180deg);
       -o-transform: scale(1) rotate(180deg);
          transform: scale(1) rotate(180deg);
  margin-right: 10px;
}

.tns-controls button::after,
.tns-controls button::before {
  display: none;
}

.tns-controls-prev,
.tns-controls-next {
  background: white url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="34" height="34" viewBox="0 0 34 34" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.0002 4.95831C10.3497 4.95831 4.9585 10.3496 4.9585 17C4.9585 23.6504 10.3497 29.0416 17.0002 29.0416C23.6506 29.0416 29.0418 23.6504 29.0418 17C29.0418 10.3496 23.6506 4.95831 17.0002 4.95831ZM2.8335 17C2.8335 9.17594 9.17613 2.83331 17.0002 2.83331C24.8241 2.83331 31.1668 9.17594 31.1668 17C31.1668 24.8239 24.8241 31.1666 17.0002 31.1666C9.17613 31.1666 2.8335 24.8239 2.8335 17ZM18.1188 10.5534C18.5496 10.1549 19.2218 10.181 19.6203 10.6117L24.8634 16.2785C25.2402 16.6856 25.2402 17.3143 24.8634 17.7216L19.6203 23.3883C19.2218 23.819 18.5496 23.845 18.1188 23.4465C17.6881 23.048 17.662 22.3758 18.0605 21.945L21.6529 18.0625H9.91683C9.33003 18.0625 8.85433 17.5868 8.85433 17C8.85433 16.4132 9.33003 15.9375 9.91683 15.9375H21.6529L18.0605 12.0549C17.662 11.6242 17.6881 10.9519 18.1188 10.5534Z" fill="black"/></svg>') center center no-repeat !important;
}

.tns-visually-hidden {
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

@use '../../../scss/base/variables';
@use '../../../scss/base/mixins';
.c-credits {
  border-top: 1px solid;
  margin-top: 25px;
  padding-top: 25px;
}

.c-credits__item {
  margin-left: 25px;
  color: var(--color-dark);
}

.c-credits__item span {
  color: var(--color-primary);
}

@use '../../../scss/base/variables';
@use '../../../scss/base/mixins';
.nbm-filters {
  padding-top: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #000;
}

.nbm-filters__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}

.nbm-filters__label {
  font-size: 18px;
  font-weight: 700;
  line-height: 100%;
  padding-bottom: 15px;
}

.nbm-filters__filters {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px;
}

.nbm-filters__filters-dropdown select {
  width: 100%;
  border-radius: 10px;
  border: 1px solid #244c5a;
  background: #fff;
  padding: 15px 30px 15px 15px;
  color: #244c5a;
  font-size: 0.9375rem;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="9" viewBox="0 0 17 9" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M9.01129 8.78968C8.87067 8.93013 8.68004 9.00902 8.48129 9.00902C8.28254 9.00902 8.09192 8.93013 7.95129 8.78968L0.451292 1.28967C0.318812 1.1475 0.246689 0.959454 0.250117 0.765153C0.253545 0.570852 0.332257 0.385466 0.46967 0.248053C0.607083 0.11064 0.792468 0.0319282 0.986769 0.0285C1.18107 0.0250718 1.36912 0.0971947 1.51129 0.229675L8.48129 7.19967L15.4513 0.229675C15.52 0.155988 15.6028 0.0968858 15.6948 0.0558938C15.7868 0.0149018 15.8861 -0.0071397 15.9868 -0.00891648C16.0875 -0.0106933 16.1875 0.00783113 16.2809 0.0455521C16.3743 0.0832732 16.4591 0.139418 16.5303 0.210637C16.6015 0.281855 16.6577 0.366689 16.6954 0.460077C16.7331 0.553465 16.7517 0.653494 16.7499 0.754197C16.7481 0.8549 16.7261 0.954214 16.6851 1.04621C16.6441 1.13821 16.585 1.22101 16.5113 1.28967L9.01129 8.78968Z" fill="%23244C5A"/></svg>');
  background-size: 17px 9px;
  background-repeat: no-repeat;
  background-position: 85%;
  text-align: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.c-section-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Founders Grotesk", sans-serif;
  border-bottom: 2px solid #000;
  margin-bottom: 20px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  gap: 15px;
}

.c-section-header .o-heading {
  color: #000;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: normal;
}

.c-section-header .o-link {
  color: #FF291C;
  font-size: 16px;
  line-height: normal;
  margin-bottom: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}

@use '../../../scss/base/variables';
@use '../../../scss/base/mixins';
.c-image-block img {
  width: 100%;
}

.c-image-block--left,
.c-image-block--right {
  max-width: 400px;
  margin-bottom: 25px;
}

.c-image-block--left {
  float: left;
}

.c-image-block--right {
  float: right;
}

.c-image-block--thumbnail {
  min-width: 100px;
  max-width: 30%;
  margin-left: auto;
  margin-right: auto;
}

.c-image-block--thumbnail.c-image-block--left {
  margin-left: 0;
  margin-right: 25px;
}

.c-image-block--thumbnail.c-image-block--right {
  margin-right: 0;
  margin-left: 25px;
}

@use '../../../scss/base/variables';
@use '../../../scss/base/mixins';
.c-linkback-block {
  overflow: hidden;
  position: relative;
  margin-top: 50px;
  margin-bottom: 50px;
}

.c-linkback-block--text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 50px 40px;
  border: 1px solid;
}

.c-linkback-block--black {
  background-color: var(--color-dark);
  border: none;
}

.c-linkback-block--black .o-kicker {
  color: var(--color-primary);
}

.c-linkback-block--black .o-heading,
.c-linkback-block--black .o-heading__link {
  color: var(--color-light);
}

.c-linkback-block .c-linkback-block--text {
  text-align: center;
}

.c-linkback-block .o-heading {
  margin-bottom: 20px;
}

.c-linkback-block--side-image {
  padding: 30px;
}

.c-linkback-block--side-image .o-heading {
  margin-bottom: 20px;
}

.c-linkback-block--side-image .o-figure {
  max-width: 100%;
  margin-top: 30px;
}

@use '../../../scss/base/variables';
@use '../../../scss/base/mixins';
.c-slideshow {
  position: fixed !important;
  top: 0;
  height: 100vh;
  width: 100vw;
  min-height: 100vh;
  min-width: 100vw;
  z-index: 999999 !important;
}


/*# sourceMappingURL=main.css.map*/