{"version":3,"file":"styles.css","sources":["styles.scss","setup/_settings.scss","../node_modules/foundation-sites/scss/util/_util.scss","../node_modules/foundation-sites/scss/util/_math.scss","../node_modules/foundation-sites/scss/util/_unit.scss","../node_modules/foundation-sites/scss/util/_value.scss","../node_modules/foundation-sites/scss/util/_direction.scss","../node_modules/foundation-sites/scss/util/_color.scss","../node_modules/foundation-sites/scss/util/_selector.scss","../node_modules/foundation-sites/scss/util/_flex.scss","../node_modules/foundation-sites/scss/util/_breakpoint.scss","../node_modules/foundation-sites/scss/util/_mixins.scss","../node_modules/foundation-sites/scss/util/_typography.scss","../node_modules/foundation-sites/scss/foundation.scss","../node_modules/foundation-sites/scss/vendor/normalize.scss","../node_modules/foundation-sites/_vendor/sassy-lists/stylesheets/helpers/_missing-dependencies.scss","../node_modules/foundation-sites/_vendor/sassy-lists/stylesheets/helpers/_true.scss","../node_modules/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_contain.scss","../node_modules/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_purge.scss","../node_modules/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_remove.scss","../node_modules/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_replace.scss","../node_modules/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_to-list.scss","../node_modules/foundation-sites/scss/util/_util.scss","../node_modules/foundation-sites/scss/_global.scss","../node_modules/foundation-sites/scss/forms/_forms.scss","../node_modules/foundation-sites/scss/forms/_text.scss","../node_modules/foundation-sites/scss/forms/_checkbox.scss","../node_modules/foundation-sites/scss/forms/_label.scss","../node_modules/foundation-sites/scss/forms/_help-text.scss","../node_modules/foundation-sites/scss/forms/_input-group.scss","../node_modules/foundation-sites/scss/forms/_fieldset.scss","../node_modules/foundation-sites/scss/forms/_select.scss","../node_modules/foundation-sites/scss/forms/_range.scss","../node_modules/foundation-sites/scss/forms/_progress.scss","../node_modules/foundation-sites/scss/forms/_meter.scss","../node_modules/foundation-sites/scss/forms/_error.scss","../node_modules/foundation-sites/scss/typography/_typography.scss","../node_modules/foundation-sites/scss/typography/_base.scss","../node_modules/foundation-sites/scss/typography/_helpers.scss","../node_modules/foundation-sites/scss/typography/_alignment.scss","../node_modules/foundation-sites/scss/typography/_print.scss","../node_modules/foundation-sites/scss/grid/_grid.scss","../node_modules/foundation-sites/scss/grid/_row.scss","../node_modules/foundation-sites/scss/grid/_column.scss","../node_modules/foundation-sites/scss/grid/_size.scss","../node_modules/foundation-sites/scss/grid/_position.scss","../node_modules/foundation-sites/scss/grid/_gutter.scss","../node_modules/foundation-sites/scss/grid/_classes.scss","../node_modules/foundation-sites/scss/grid/_layout.scss","../node_modules/foundation-sites/scss/grid/_flex-grid.scss","../node_modules/foundation-sites/scss/xy-grid/_xy-grid.scss","../node_modules/foundation-sites/scss/xy-grid/_gutters.scss","../node_modules/foundation-sites/scss/xy-grid/_grid.scss","../node_modules/foundation-sites/scss/xy-grid/_cell.scss","../node_modules/foundation-sites/scss/xy-grid/_frame.scss","../node_modules/foundation-sites/scss/xy-grid/_position.scss","../node_modules/foundation-sites/scss/xy-grid/_layout.scss","../node_modules/foundation-sites/scss/xy-grid/_collapse.scss","../node_modules/foundation-sites/scss/xy-grid/_classes.scss","../node_modules/foundation-sites/scss/components/_button.scss","../node_modules/foundation-sites/scss/components/_button-group.scss","../node_modules/foundation-sites/scss/components/_close-button.scss","../node_modules/foundation-sites/scss/components/_label.scss","../node_modules/foundation-sites/scss/components/_progress-bar.scss","../node_modules/foundation-sites/scss/components/_slider.scss","../node_modules/foundation-sites/scss/components/_switch.scss","../node_modules/foundation-sites/scss/components/_table.scss","../node_modules/foundation-sites/scss/components/_badge.scss","../node_modules/foundation-sites/scss/components/_breadcrumbs.scss","../node_modules/foundation-sites/scss/components/_callout.scss","../node_modules/foundation-sites/scss/components/_card.scss","../node_modules/foundation-sites/scss/components/_dropdown.scss","../node_modules/foundation-sites/scss/components/_pagination.scss","../node_modules/foundation-sites/scss/components/_tooltip.scss","../node_modules/foundation-sites/scss/components/_accordion.scss","../node_modules/foundation-sites/scss/components/_media-object.scss","../node_modules/foundation-sites/scss/components/_orbit.scss","../node_modules/foundation-sites/scss/components/_responsive-embed.scss","../node_modules/foundation-sites/scss/components/_tabs.scss","../node_modules/foundation-sites/scss/components/_thumbnail.scss","../node_modules/foundation-sites/scss/components/_menu.scss","../node_modules/foundation-sites/scss/components/_menu-icon.scss","../node_modules/foundation-sites/scss/components/_accordion-menu.scss","../node_modules/foundation-sites/scss/components/_drilldown.scss","../node_modules/foundation-sites/scss/components/_dropdown-menu.scss","../node_modules/foundation-sites/scss/components/_off-canvas.scss","../node_modules/foundation-sites/scss/components/_reveal.scss","../node_modules/foundation-sites/scss/components/_sticky.scss","../node_modules/foundation-sites/scss/components/_title-bar.scss","../node_modules/foundation-sites/scss/components/_top-bar.scss","../node_modules/foundation-sites/scss/components/_float.scss","../node_modules/foundation-sites/scss/components/_flex.scss","../node_modules/foundation-sites/scss/components/_visibility.scss","../node_modules/foundation-sites/scss/prototype/_prototype.scss","../node_modules/foundation-sites/scss/prototype/_relation.scss","../node_modules/foundation-sites/scss/prototype/_box.scss","../node_modules/foundation-sites/scss/prototype/_rotate.scss","../node_modules/foundation-sites/scss/prototype/_text-utilities.scss","../node_modules/foundation-sites/scss/prototype/_text-transformation.scss","../node_modules/foundation-sites/scss/prototype/_text-decoration.scss","../node_modules/foundation-sites/scss/prototype/_font-styling.scss","../node_modules/foundation-sites/scss/prototype/_list-style-type.scss","../node_modules/foundation-sites/scss/prototype/_rounded.scss","../node_modules/foundation-sites/scss/prototype/_bordered.scss","../node_modules/foundation-sites/scss/prototype/_shadow.scss","../node_modules/foundation-sites/scss/prototype/_arrow.scss","../node_modules/foundation-sites/scss/prototype/_separator.scss","../node_modules/foundation-sites/scss/prototype/_overflow.scss","../node_modules/foundation-sites/scss/prototype/_display.scss","../node_modules/foundation-sites/scss/prototype/_position.scss","../node_modules/foundation-sites/scss/prototype/_border-box.scss","../node_modules/foundation-sites/scss/prototype/_border-none.scss","../node_modules/foundation-sites/scss/prototype/_sizing.scss","../node_modules/foundation-sites/scss/prototype/_spacing.scss","setup/_reset.scss","../node_modules/slick-carousel/slick/slick.scss","setup/_variables.scss","setup/_fonts.scss","setup/_globals.scss","setup/_layouts.scss","pages/partials/_header_footer.scss","pages/_home.scss","pages/_ressources.scss","pages/_default.scss","pages/_actu.scss","pages/_programme.scss","pages/_archives.scss"],"sourcesContent":["/*popsu*/ \n\n/*foundation*/ \n@import 'setup/settings';\n@import 'foundation';\n// Global styles //\n@include foundation-global-styles;\n@include foundation-forms;\n// Grids //\n//@include foundation-xy-grid-classes;\n// @include foundation-grid;\n@include foundation-flex-grid;\n\n\n/*setup*/\n\n@import \"setup/reset\";\n@import \"../node_modules/slick-carousel/slick/slick.scss\";\n//import \"../node_modules/slick-carousel/slick/slick-theme.scss\";\n//@import \"foundation\";\n\n@import \"setup/variables\";\n@import \"setup/fonts\";\n@import \"setup/globals\";\n@import \"setup/layouts\";\n\n/*pages*/\n@import \"pages/partials/header_footer\";\n@import \"pages/home\";\n@import \"pages/ressources\";\n@import \"pages/default\";\n@import \"pages/actu\";\n@import \"pages/programme\";\n@import \"pages/archives\";\n\n","// Foundation for Sites Settings\n// -----------------------------\n//\n// Table of Contents:\n//\n// 1. Global\n// 2. Breakpoints\n// 3. The Grid\n// 4. Base Typography\n// 5. Typography Helpers\n// 6. Abide\n// 7. Accordion\n// 8. Accordion Menu\n// 9. Badge\n// 10. Breadcrumbs\n// 11. Button\n// 12. Button Group\n// 13. Callout\n// 14. Card\n// 15. Close Button\n// 16. Drilldown\n// 17. Dropdown\n// 18. Dropdown Menu\n// 19. Flexbox Utilities\n// 20. Forms\n// 21. Label\n// 22. Media Object\n// 23. Menu\n// 24. Meter\n// 25. Off-canvas\n// 26. Orbit\n// 27. Pagination\n// 28. Progress Bar\n// 29. Prototype Arrow\n// 30. Prototype Border-Box\n// 31. Prototype Border-None\n// 32. Prototype Bordered\n// 33. Prototype Display\n// 34. Prototype Font-Styling\n// 35. Prototype List-Style-Type\n// 36. Prototype Overflow\n// 37. Prototype Position\n// 38. Prototype Rounded\n// 39. Prototype Separator\n// 40. Prototype Shadow\n// 41. Prototype Sizing\n// 42. Prototype Spacing\n// 43. Prototype Text-Decoration\n// 44. Prototype Text-Transformation\n// 45. Prototype Text-Utilities\n// 46. Responsive Embed\n// 47. Reveal\n// 48. Slider\n// 49. Switch\n// 50. Table\n// 51. Tabs\n// 52. Thumbnail\n// 53. Title Bar\n// 54. Tooltip\n// 55. Top Bar\n// 56. Xy Grid\n\n@import 'util/util';\n\n// 1. Global\n// ---------\n\n$global-font-size: 100%;\n\n$global-width: 100%; // old value : rem-calc(1200)\n\n$global-lineheight: 1.5;\n$foundation-palette: (\n primary: #1779ba,\n secondary: #767676,\n success: #3adb76,\n warning: #ffae00,\n alert: #cc4b37,\n);\n$light-gray: #e6e6e6;\n$medium-gray: #cacaca;\n$dark-gray: #8a8a8a;\n$black: #0a0a0a;\n$white: #fefefe;\n$body-background: $white;\n$body-font-color: $black;\n$body-font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;\n$body-antialiased: true;\n$global-margin: 1rem;\n$global-padding: 1rem;\n$global-position: 1rem;\n$global-weight-normal: normal;\n$global-weight-bold: bold;\n$global-radius: 0;\n$global-menu-padding: 0.7rem 1rem;\n$global-menu-nested-margin: 1rem;\n$global-text-direction: ltr;\n$global-flexbox: true;\n$global-prototype-breakpoints: false;\n$global-button-cursor: auto;\n$global-color-pick-contrast-tolerance: 0;\n$print-transparent-backgrounds: true;\n$print-hrefs: true;\n\n@include add-foundation-colors;\n\n// 2. Breakpoints\n// --------------\n\n$breakpoints: (\n small: 0,\n medium: 640px,\n large: 1024px,\n xlarge: 1200px,\n xxlarge: 1440px,\n);\n$breakpoints-hidpi: (\n hidpi-1: 1,\n hidpi-1-5: 1.5,\n hidpi-2: 2,\n retina: 2,\n hidpi-3: 3\n);\n$print-breakpoint: large;\n$breakpoint-classes: (small medium large);\n\n// 3. The Grid\n// -----------\n\n$grid-row-width: $global-width;\n$grid-column-count: 12;\n$grid-column-gutter: (\n small: 20px,\n medium: 30px,\n);\n$grid-column-align-edge: true;\n$grid-column-alias: 'columns';\n$block-grid-max: 8;\n\n// 4. Base Typography\n// ------------------\n\n$header-font-family: $body-font-family;\n$header-font-weight: $global-weight-normal;\n$header-font-style: normal;\n$font-family-monospace: Consolas, 'Liberation Mono', Courier, monospace;\n$header-color: inherit;\n$header-lineheight: 1.4;\n$header-margin-bottom: 0.5rem;\n$header-styles: (\n small: (\n 'h1': ('font-size': 24),\n 'h2': ('font-size': 20),\n 'h3': ('font-size': 19),\n 'h4': ('font-size': 18),\n 'h5': ('font-size': 17),\n 'h6': ('font-size': 16),\n ),\n medium: (\n 'h1': ('font-size': 48),\n 'h2': ('font-size': 40),\n 'h3': ('font-size': 31),\n 'h4': ('font-size': 25),\n 'h5': ('font-size': 20),\n 'h6': ('font-size': 16),\n ),\n);\n$header-text-rendering: optimizeLegibility;\n$small-font-size: 80%;\n$header-small-font-color: $medium-gray;\n$paragraph-lineheight: 1.6;\n$paragraph-margin-bottom: 1rem;\n$paragraph-text-rendering: optimizeLegibility;\n$enable-code-inline: true;\n$anchor-color: $primary-color;\n$anchor-color-hover: scale-color($anchor-color, $lightness: -14%);\n$anchor-text-decoration: none;\n$anchor-text-decoration-hover: none;\n$hr-width: $global-width;\n$hr-border: 1px solid $medium-gray;\n$hr-margin: rem-calc(20) auto;\n$list-lineheight: $paragraph-lineheight;\n$list-margin-bottom: $paragraph-margin-bottom;\n$list-style-type: disc;\n$list-style-position: outside;\n$list-side-margin: 1.25rem;\n$list-nested-side-margin: 1.25rem;\n$defnlist-margin-bottom: 1rem;\n$defnlist-term-weight: $global-weight-bold;\n$defnlist-term-margin-bottom: 0.3rem;\n$blockquote-color: $dark-gray;\n$blockquote-padding: rem-calc(9 20 0 19);\n$blockquote-border: 1px solid $medium-gray;\n$enable-cite-block: true;\n$keystroke-font: $font-family-monospace;\n$keystroke-color: $black;\n$keystroke-background: $light-gray;\n$keystroke-padding: rem-calc(2 4 0);\n$keystroke-radius: $global-radius;\n$abbr-underline: 1px dotted $black;\n\n// 5. Typography Helpers\n// ---------------------\n\n$lead-font-size: $global-font-size * 1.25;\n$lead-lineheight: 1.6;\n$subheader-lineheight: 1.4;\n$subheader-color: $dark-gray;\n$subheader-font-weight: $global-weight-normal;\n$subheader-margin-top: 0.2rem;\n$subheader-margin-bottom: 0.5rem;\n$stat-font-size: 2.5rem;\n$cite-color: $dark-gray;\n$cite-font-size: rem-calc(13);\n$cite-pseudo-content: '\\2014 \\0020';\n$code-color: $black;\n$code-font-family: $font-family-monospace;\n$code-font-weight: $global-weight-normal;\n$code-background: $light-gray;\n$code-border: 1px solid $medium-gray;\n$code-padding: rem-calc(2 5 1);\n$code-block-padding: 1rem;\n$code-block-margin-bottom: 1.5rem;\n\n// 6. Abide\n// --------\n\n$abide-inputs: true;\n$abide-labels: true;\n$input-background-invalid: get-color(alert);\n$form-label-color-invalid: get-color(alert);\n$input-error-color: get-color(alert);\n$input-error-font-size: rem-calc(12);\n$input-error-font-weight: $global-weight-bold;\n\n// 7. Accordion\n// ------------\n\n$accordion-background: $white;\n$accordion-plusminus: true;\n$accordion-plus-content: '\\002B';\n$accordion-minus-content: '\\2013';\n$accordion-title-font-size: rem-calc(12);\n$accordion-item-color: $primary-color;\n$accordion-item-background-hover: $light-gray;\n$accordion-item-padding: 1.25rem 1rem;\n$accordion-content-background: $white;\n$accordion-content-border: 1px solid $light-gray;\n$accordion-content-color: $body-font-color;\n$accordion-content-padding: 1rem;\n\n// 8. Accordion Menu\n// -----------------\n\n$accordionmenu-padding: $global-menu-padding;\n$accordionmenu-nested-margin: $global-menu-nested-margin;\n$accordionmenu-submenu-padding: $accordionmenu-padding;\n$accordionmenu-arrows: true;\n$accordionmenu-arrow-color: $primary-color;\n$accordionmenu-item-background: null;\n$accordionmenu-border: null;\n$accordionmenu-submenu-toggle-background: null;\n$accordion-submenu-toggle-border: $accordionmenu-border;\n$accordionmenu-submenu-toggle-width: 40px;\n$accordionmenu-submenu-toggle-height: $accordionmenu-submenu-toggle-width;\n$accordionmenu-arrow-size: 6px;\n\n// 9. Badge\n// --------\n\n$badge-background: $primary-color;\n$badge-color: $white;\n$badge-color-alt: $black;\n$badge-palette: $foundation-palette;\n$badge-padding: 0.3em;\n$badge-minwidth: 2.1em;\n$badge-font-size: 0.6rem;\n\n// 10. Breadcrumbs\n// ---------------\n\n$breadcrumbs-margin: 0 0 $global-margin 0;\n$breadcrumbs-item-font-size: rem-calc(11);\n$breadcrumbs-item-color: $primary-color;\n$breadcrumbs-item-color-current: $black;\n$breadcrumbs-item-color-disabled: $medium-gray;\n$breadcrumbs-item-margin: 0.75rem;\n$breadcrumbs-item-uppercase: true;\n$breadcrumbs-item-separator: true;\n$breadcrumbs-item-separator-item: '/';\n$breadcrumbs-item-separator-item-rtl: '\\\\';\n$breadcrumbs-item-separator-color: $medium-gray;\n\n// 11. Button\n// ----------\n\n$button-font-family: inherit;\n$button-font-weight: null;\n$button-padding: 0.85em 1em;\n$button-margin: 0 0 $global-margin 0;\n$button-fill: solid;\n$button-background: $primary-color;\n$button-background-hover: scale-color($button-background, $lightness: -15%);\n$button-color: $white;\n$button-color-alt: $black;\n$button-radius: $global-radius;\n$button-border: 1px solid transparent;\n$button-hollow-border-width: 1px;\n$button-sizes: (\n tiny: 0.6rem,\n small: 0.75rem,\n default: 0.9rem,\n large: 1.25rem,\n);\n$button-palette: $foundation-palette;\n$button-opacity-disabled: 0.25;\n$button-background-hover-lightness: -20%;\n$button-hollow-hover-lightness: -50%;\n$button-transition: background-color 0.25s ease-out, color 0.25s ease-out;\n$button-responsive-expanded: false;\n\n// 12. Button Group\n// ----------------\n\n$buttongroup-margin: 1rem;\n$buttongroup-spacing: 1px;\n$buttongroup-child-selector: '.button';\n$buttongroup-expand-max: 6;\n$buttongroup-radius-on-each: true;\n\n// 13. Callout\n// -----------\n\n$callout-background: $white;\n$callout-background-fade: 85%;\n$callout-border: 1px solid rgba($black, 0.25);\n$callout-margin: 0 0 1rem 0;\n$callout-sizes: (\n small: 0.5rem,\n default: 1rem,\n large: 3rem,\n);\n$callout-font-color: $body-font-color;\n$callout-font-color-alt: $body-background;\n$callout-radius: $global-radius;\n$callout-link-tint: 30%;\n\n// 14. Card\n// --------\n\n$card-background: $white;\n$card-font-color: $body-font-color;\n$card-divider-background: $light-gray;\n$card-border: 1px solid $light-gray;\n$card-shadow: none;\n$card-border-radius: $global-radius;\n$card-padding: $global-padding;\n$card-margin-bottom: $global-margin;\n\n// 15. Close Button\n// ----------------\n\n$closebutton-position: right top;\n$closebutton-z-index: 10;\n$closebutton-default-size: medium;\n$closebutton-offset-horizontal: (\n small: 0.66rem,\n medium: 1rem,\n);\n$closebutton-offset-vertical: (\n small: 0.33em,\n medium: 0.5rem,\n);\n$closebutton-size: (\n small: 1.5em,\n medium: 2em,\n);\n$closebutton-lineheight: 1;\n$closebutton-color: $dark-gray;\n$closebutton-color-hover: $black;\n\n// 16. Drilldown\n// -------------\n\n$drilldown-transition: transform 0.15s linear;\n$drilldown-arrows: true;\n$drilldown-padding: $global-menu-padding;\n$drilldown-nested-margin: 0;\n$drilldown-background: $white;\n$drilldown-submenu-padding: $drilldown-padding;\n$drilldown-submenu-background: $white;\n$drilldown-arrow-color: $primary-color;\n$drilldown-arrow-size: 6px;\n\n// 17. Dropdown\n// ------------\n\n$dropdown-padding: 1rem;\n$dropdown-background: $body-background;\n$dropdown-border: 1px solid $medium-gray;\n$dropdown-font-size: 1rem;\n$dropdown-width: 300px;\n$dropdown-radius: $global-radius;\n$dropdown-sizes: (\n tiny: 100px,\n small: 200px,\n large: 400px,\n);\n\n// 18. Dropdown Menu\n// -----------------\n\n$dropdownmenu-arrows: true;\n$dropdownmenu-arrow-color: $anchor-color;\n$dropdownmenu-arrow-size: 6px;\n$dropdownmenu-arrow-padding: 1.5rem;\n$dropdownmenu-min-width: 200px;\n$dropdownmenu-background: null;\n$dropdownmenu-submenu-background: $white;\n$dropdownmenu-padding: $global-menu-padding;\n$dropdownmenu-nested-margin: 0;\n$dropdownmenu-submenu-padding: $dropdownmenu-padding;\n$dropdownmenu-border: 1px solid $medium-gray;\n$dropdown-menu-item-color-active: get-color(primary);\n$dropdown-menu-item-background-active: transparent;\n\n// 19. Flexbox Utilities\n// ---------------------\n\n$flex-source-ordering-count: 6;\n$flexbox-responsive-breakpoints: true;\n\n// 20. Forms\n// ---------\n\n$fieldset-border: 1px solid $medium-gray;\n$fieldset-padding: rem-calc(20);\n$fieldset-margin: rem-calc(18 0);\n$legend-padding: rem-calc(0 3);\n$form-spacing: rem-calc(16);\n$helptext-color: $black;\n$helptext-font-size: rem-calc(13);\n$helptext-font-style: italic;\n$input-prefix-color: $black;\n$input-prefix-background: $light-gray;\n$input-prefix-border: 1px solid $medium-gray;\n$input-prefix-padding: 1rem;\n$form-label-color: $black;\n$form-label-font-size: rem-calc(14);\n$form-label-font-weight: $global-weight-normal;\n$form-label-line-height: 1.8;\n$select-background: $white;\n$select-triangle-color: $dark-gray;\n$select-radius: $global-radius;\n$input-color: $black;\n$input-placeholder-color: $medium-gray;\n$input-font-family: inherit;\n$input-font-size: rem-calc(16);\n$input-font-weight: $global-weight-normal;\n$input-line-height: $global-lineheight;\n$input-background: $white;\n$input-background-focus: $white;\n$input-background-disabled: $light-gray;\n$input-border: 1px solid $medium-gray;\n$input-border-focus: 1px solid $dark-gray;\n$input-padding: $form-spacing / 2;\n$input-shadow: inset 0 1px 2px rgba($black, 0.1);\n$input-shadow-focus: 0 0 5px $medium-gray;\n$input-cursor-disabled: not-allowed;\n$input-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;\n$input-number-spinners: true;\n$input-radius: $global-radius;\n$form-button-radius: $global-radius;\n\n// 21. Label\n// ---------\n\n$label-background: $primary-color;\n$label-color: $white;\n$label-color-alt: $black;\n$label-palette: $foundation-palette;\n$label-font-size: 0.8rem;\n$label-padding: 0.33333rem 0.5rem;\n$label-radius: $global-radius;\n\n// 22. Media Object\n// ----------------\n\n$mediaobject-margin-bottom: $global-margin;\n$mediaobject-section-padding: $global-padding;\n$mediaobject-image-width-stacked: 100%;\n\n// 23. Menu\n// --------\n\n$menu-margin: 0;\n$menu-nested-margin: $global-menu-nested-margin;\n$menu-items-padding: $global-menu-padding;\n$menu-simple-margin: 1rem;\n$menu-item-color-active: $white;\n$menu-item-color-alt-active: $black;\n$menu-item-background-active: get-color(primary);\n$menu-icon-spacing: 0.25rem;\n$menu-state-back-compat: true;\n$menu-centered-back-compat: true;\n$menu-icons-back-compat: true;\n\n// 24. Meter\n// ---------\n\n$meter-height: 1rem;\n$meter-radius: $global-radius;\n$meter-background: $medium-gray;\n$meter-fill-good: $success-color;\n$meter-fill-medium: $warning-color;\n$meter-fill-bad: $alert-color;\n\n// 25. Off-canvas\n// --------------\n\n$offcanvas-sizes: (\n small: 250px,\n);\n$offcanvas-vertical-sizes: (\n small: 250px,\n);\n$offcanvas-background: $light-gray;\n$offcanvas-shadow: 0 0 10px rgba($black, 0.7);\n$offcanvas-inner-shadow-size: 20px;\n$offcanvas-inner-shadow-color: rgba($black, 0.25);\n$offcanvas-overlay-zindex: 11;\n$offcanvas-push-zindex: 12;\n$offcanvas-overlap-zindex: 13;\n$offcanvas-reveal-zindex: 12;\n$offcanvas-transition-length: 0.5s;\n$offcanvas-transition-timing: ease;\n$offcanvas-fixed-reveal: true;\n$offcanvas-exit-background: rgba($white, 0.25);\n$maincontent-class: 'off-canvas-content';\n\n// 26. Orbit\n// ---------\n\n$orbit-bullet-background: $medium-gray;\n$orbit-bullet-background-active: $dark-gray;\n$orbit-bullet-diameter: 1.2rem;\n$orbit-bullet-margin: 0.1rem;\n$orbit-bullet-margin-top: 0.8rem;\n$orbit-bullet-margin-bottom: 0.8rem;\n$orbit-caption-background: rgba($black, 0.5);\n$orbit-caption-padding: 1rem;\n$orbit-control-background-hover: rgba($black, 0.5);\n$orbit-control-padding: 1rem;\n$orbit-control-zindex: 10;\n\n// 27. Pagination\n// --------------\n\n$pagination-font-size: rem-calc(14);\n$pagination-margin-bottom: $global-margin;\n$pagination-item-color: $black;\n$pagination-item-padding: rem-calc(3 10);\n$pagination-item-spacing: rem-calc(1);\n$pagination-radius: $global-radius;\n$pagination-item-background-hover: $light-gray;\n$pagination-item-background-current: $primary-color;\n$pagination-item-color-current: $white;\n$pagination-item-color-disabled: $medium-gray;\n$pagination-ellipsis-color: $black;\n$pagination-mobile-items: false;\n$pagination-mobile-current-item: false;\n$pagination-arrows: true;\n$pagination-arrow-previous: '\\00AB';\n$pagination-arrow-next: '\\00BB';\n\n// 28. Progress Bar\n// ----------------\n\n$progress-height: 1rem;\n$progress-background: $medium-gray;\n$progress-margin-bottom: $global-margin;\n$progress-meter-background: $primary-color;\n$progress-radius: $global-radius;\n\n// 29. Prototype Arrow\n// -------------------\n\n$prototype-arrow-directions: (\n down,\n up,\n right,\n left\n);\n$prototype-arrow-size: 0.4375rem;\n$prototype-arrow-color: $black;\n\n// 30. Prototype Border-Box\n// ------------------------\n\n$prototype-border-box-breakpoints: $global-prototype-breakpoints;\n\n// 31. Prototype Border-None\n// -------------------------\n\n$prototype-border-none-breakpoints: $global-prototype-breakpoints;\n\n// 32. Prototype Bordered\n// ----------------------\n\n$prototype-bordered-breakpoints: $global-prototype-breakpoints;\n$prototype-border-width: rem-calc(1);\n$prototype-border-type: solid;\n$prototype-border-color: $medium-gray;\n\n// 33. Prototype Display\n// ---------------------\n\n$prototype-display-breakpoints: $global-prototype-breakpoints;\n$prototype-display: (\n inline,\n inline-block,\n block,\n table,\n table-cell\n);\n\n// 34. Prototype Font-Styling\n// --------------------------\n\n$prototype-font-breakpoints: $global-prototype-breakpoints;\n$prototype-wide-letter-spacing: rem-calc(4);\n$prototype-font-normal: $global-weight-normal;\n$prototype-font-bold: $global-weight-bold;\n\n// 35. Prototype List-Style-Type\n// -----------------------------\n\n$prototype-list-breakpoints: $global-prototype-breakpoints;\n$prototype-style-type-unordered: (\n disc,\n circle,\n square\n);\n$prototype-style-type-ordered: (\n decimal,\n lower-alpha,\n lower-latin,\n lower-roman,\n upper-alpha,\n upper-latin,\n upper-roman\n);\n\n// 36. Prototype Overflow\n// ----------------------\n\n$prototype-overflow-breakpoints: $global-prototype-breakpoints;\n$prototype-overflow: (\n visible,\n hidden,\n scroll\n);\n\n// 37. Prototype Position\n// ----------------------\n\n$prototype-position-breakpoints: $global-prototype-breakpoints;\n$prototype-position: (\n static,\n relative,\n absolute,\n fixed\n);\n$prototype-position-z-index: 975;\n\n// 38. Prototype Rounded\n// ---------------------\n\n$prototype-rounded-breakpoints: $global-prototype-breakpoints;\n$prototype-border-radius: rem-calc(3);\n\n// 39. Prototype Separator\n// -----------------------\n\n$prototype-separator-breakpoints: $global-prototype-breakpoints;\n$prototype-separator-align: center;\n$prototype-separator-height: rem-calc(2);\n$prototype-separator-width: 3rem;\n$prototype-separator-background: $primary-color;\n$prototype-separator-margin-top: $global-margin;\n\n// 40. Prototype Shadow\n// --------------------\n\n$prototype-shadow-breakpoints: $global-prototype-breakpoints;\n$prototype-box-shadow: 0 2px 5px 0 rgba(0,0,0,.16),\n 0 2px 10px 0 rgba(0,0,0,.12);\n\n// 41. Prototype Sizing\n// --------------------\n\n$prototype-sizing-breakpoints: $global-prototype-breakpoints;\n$prototype-sizing: (\n width,\n height\n);\n$prototype-sizes: (\n 25: 25%,\n 50: 50%,\n 75: 75%,\n 100: 100%\n);\n\n// 42. Prototype Spacing\n// ---------------------\n\n$prototype-spacing-breakpoints: $global-prototype-breakpoints;\n$prototype-spacers-count: 3;\n\n// 43. Prototype Text-Decoration\n// -----------------------------\n\n$prototype-decoration-breakpoints: $global-prototype-breakpoints;\n$prototype-text-decoration: (\n overline,\n underline,\n line-through,\n);\n\n// 44. Prototype Text-Transformation\n// ---------------------------------\n\n$prototype-transformation-breakpoints: $global-prototype-breakpoints;\n$prototype-text-transformation: (\n lowercase,\n uppercase,\n capitalize\n);\n\n// 45. Prototype Text-Utilities\n// ----------------------------\n\n$prototype-utilities-breakpoints: $global-prototype-breakpoints;\n$prototype-text-overflow: ellipsis;\n\n// 46. Responsive Embed\n// --------------------\n\n$responsive-embed-margin-bottom: rem-calc(16);\n$responsive-embed-ratios: (\n default: 4 by 3,\n widescreen: 16 by 9,\n);\n\n// 47. Reveal\n// ----------\n\n$reveal-background: $white;\n$reveal-width: 600px;\n$reveal-max-width: $global-width;\n$reveal-padding: $global-padding;\n$reveal-border: 1px solid $medium-gray;\n$reveal-radius: $global-radius;\n$reveal-zindex: 1005;\n$reveal-overlay-background: rgba($black, 0.45);\n\n// 48. Slider\n// ----------\n\n$slider-width-vertical: 0.5rem;\n$slider-transition: all 0.2s ease-in-out;\n$slider-height: 0.5rem;\n$slider-background: $light-gray;\n$slider-fill-background: $medium-gray;\n$slider-handle-height: 1.4rem;\n$slider-handle-width: 1.4rem;\n$slider-handle-background: $primary-color;\n$slider-opacity-disabled: 0.25;\n$slider-radius: $global-radius;\n\n// 49. Switch\n// ----------\n\n$switch-background: $medium-gray;\n$switch-background-active: $primary-color;\n$switch-height: 2rem;\n$switch-height-tiny: 1.5rem;\n$switch-height-small: 1.75rem;\n$switch-height-large: 2.5rem;\n$switch-radius: $global-radius;\n$switch-margin: $global-margin;\n$switch-paddle-background: $white;\n$switch-paddle-offset: 0.25rem;\n$switch-paddle-radius: $global-radius;\n$switch-paddle-transition: all 0.25s ease-out;\n$switch-opacity-disabled: .5;\n$switch-cursor-disabled: not-allowed;\n\n// 50. Table\n// ---------\n\n$table-background: $white;\n$table-color-scale: 5%;\n$table-border: 1px solid smart-scale($table-background, $table-color-scale);\n$table-padding: rem-calc(8 10 10);\n$table-hover-scale: 2%;\n$table-row-hover: darken($table-background, $table-hover-scale);\n$table-row-stripe-hover: darken($table-background, $table-color-scale + $table-hover-scale);\n$table-is-striped: true;\n$table-striped-background: smart-scale($table-background, $table-color-scale);\n$table-stripe: even;\n$table-head-background: smart-scale($table-background, $table-color-scale / 2);\n$table-head-row-hover: darken($table-head-background, $table-hover-scale);\n$table-foot-background: smart-scale($table-background, $table-color-scale);\n$table-foot-row-hover: darken($table-foot-background, $table-hover-scale);\n$table-head-font-color: $body-font-color;\n$table-foot-font-color: $body-font-color;\n$show-header-for-stacked: false;\n$table-stack-breakpoint: medium;\n\n// 51. Tabs\n// --------\n\n$tab-margin: 0;\n$tab-background: $white;\n$tab-color: $primary-color;\n$tab-background-active: $light-gray;\n$tab-active-color: $primary-color;\n$tab-item-font-size: rem-calc(12);\n$tab-item-background-hover: $white;\n$tab-item-padding: 1.25rem 1.5rem;\n$tab-content-background: $white;\n$tab-content-border: $light-gray;\n$tab-content-color: $body-font-color;\n$tab-content-padding: 1rem;\n\n// 52. Thumbnail\n// -------------\n\n$thumbnail-border: 4px solid $white;\n$thumbnail-margin-bottom: $global-margin;\n$thumbnail-shadow: 0 0 0 1px rgba($black, 0.2);\n$thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5);\n$thumbnail-transition: box-shadow 200ms ease-out;\n$thumbnail-radius: $global-radius;\n\n// 53. Title Bar\n// -------------\n\n$titlebar-background: $black;\n$titlebar-color: $white;\n$titlebar-padding: 0.5rem;\n$titlebar-text-font-weight: bold;\n$titlebar-icon-color: $white;\n$titlebar-icon-color-hover: $medium-gray;\n$titlebar-icon-spacing: 0.25rem;\n\n// 54. Tooltip\n// -----------\n\n$has-tip-cursor: help;\n$has-tip-font-weight: $global-weight-bold;\n$has-tip-border-bottom: dotted 1px $dark-gray;\n$tooltip-background-color: $black;\n$tooltip-color: $white;\n$tooltip-padding: 0.75rem;\n$tooltip-max-width: 10rem;\n$tooltip-font-size: $small-font-size;\n$tooltip-pip-width: 0.75rem;\n$tooltip-pip-height: $tooltip-pip-width * 0.866;\n$tooltip-radius: $global-radius;\n\n// 55. Top Bar\n// -----------\n\n$topbar-padding: 0.5rem;\n$topbar-background: $light-gray;\n$topbar-submenu-background: $topbar-background;\n$topbar-title-spacing: 0.5rem 1rem 0.5rem 0;\n$topbar-input-width: 200px;\n$topbar-unstack-breakpoint: medium;\n\n// 56. Xy Grid\n// -----------\n\n$xy-grid: true;\n$grid-container: $global-width;\n$grid-columns: 12;\n$grid-margin-gutters: (\n small: 20px,\n medium: 30px\n);\n$grid-padding-gutters: $grid-margin-gutters;\n$grid-container-padding: $grid-padding-gutters;\n$grid-container-max: $global-width;\n$xy-block-grid-max: 8;\n\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n@import 'math';\n@import 'unit';\n@import 'value';\n@import 'direction';\n@import 'color';\n@import 'selector';\n@import 'flex';\n@import 'breakpoint';\n@import 'mixins';\n@import 'typography';\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n/// Finds the greatest common divisor of two integers.\n///\n/// @param {Number} $a - First number to compare.\n/// @param {Number} $b - Second number to compare.\n///\n/// @returns {Number} The greatest common divisor.\n@function gcd($a, $b) {\n // From: http://rosettacode.org/wiki/Greatest_common_divisor#JavaScript\n @if ($b != 0) {\n @return gcd($b, $a % $b);\n }\n @else {\n @return abs($a);\n }\n}\n\n/// Handles decimal exponents by trying to convert them into a fraction and then use a nth-root-algorithm for parts of the calculation\n///\n/// @param {Number} $base - The base number.\n/// @param {Number} $exponent - The exponent.\n///\n/// @returns {Number} The product of the exponentiation.\n@function pow($base, $exponent, $prec: 16) {\n @if (floor($exponent) != $exponent) {\n $prec2 : pow(10, $prec);\n $exponent: round($exponent * $prec2);\n $denominator: gcd($exponent, $prec2);\n @return nth-root(pow($base, $exponent / $denominator), $prec2 / $denominator, $prec);\n }\n\n $value: $base;\n @if $exponent > 1 {\n @for $i from 2 through $exponent {\n $value: $value * $base;\n }\n }\n @else if $exponent < 1 {\n @for $i from 0 through -$exponent {\n $value: $value / $base;\n }\n }\n\n @return $value;\n}\n\n@function nth-root($num, $n: 2, $prec: 12) {\n // From: http://rosettacode.org/wiki/Nth_root#JavaScript\n $x: 1;\n\n @for $i from 0 through $prec {\n $x: 1 / $n * (($n - 1) * $x + ($num / pow($x, $n - 1)));\n }\n\n @return $x;\n}\n\n/// Calculates the height as a percentage of the width for a given ratio.\n/// @param {List} $ratio - Ratio to use to calculate the height, formatted as `x by y`.\n/// @return {Number} A percentage value for the height relative to the width of a responsive container.\n@function ratio-to-percentage($ratio) {\n $w: nth($ratio, 1);\n $h: nth($ratio, 3);\n @return $h / $w * 100%;\n}\n\n/// Parse the given `$fraction` to numerators and denumerators.\n///\n/// @param {*} $fraction - Value representing a fraction to parse. It can be formatted as `50%`, `1 of 2`, `1/2` or `50` (no denominator would be returned).\n///\n/// @return {List} List of parsed values with numerator at first position and denumerator as second. These values may be null.\n@function zf-parse-fraction($fraction) {\n\n @if type-of($fraction) == 'number' {\n // \"50%\"\n @if unit($fraction) == '%' {\n @return (strip-unit($fraction), 100);\n }\n @else if (unit($fraction) == '') {\n // \"0.5\"\n @if $fraction < 1 {\n @return ($fraction * 100, 100);\n }\n // \"50\"\n @else {\n @return ($fraction, null);\n }\n }\n }\n\n @else if type-of($fraction) == 'list' {\n // \"50 of 100\", \"50/100\"...\n @if length($fraction) == 3\n and type-of(nth($fraction, 1) == 'number')\n and type-of(nth($fraction, 3) == 'number') {\n @return (nth($fraction, 1), nth($fraction, 3));\n }\n }\n\n @return (null, null);\n}\n\n/// Returns whether the given `$value` represents a fraction. Supports formats like `50%`, `1 of 2`, `1 per 2` or `1/2`.\n///\n/// @param {*} $value - Value to test.\n/// @param {Boolean} $allow-no-denominator [false] - If `true`, simple numbers without denominators like `50` are supported.\n///\n/// @return {Boolean} `true` if `$value` represents a fraction, `false` otherwise.\n@function zf-is-fraction($value, $allow-no-denominator: false) {\n $parsed: zf-parse-fraction($value);\n @return not(nth($parsed, 1) == null\n or (nth($parsed, 2) == null and $allow-no-denominator == false));\n}\n\n/// Calculate a percentage from a given fraction.\n///\n/// @param {Number|List} $fraction - Value representing a fraction to use to calculate the percentage, formatted as `50` (relative to `$denominator`), `50%`, `1 of 2` or `1/2`.\n/// @param {Number|List} $denominator - Default value to use as denominator when `$fraction` represents an absolute value.\n@function fraction-to-percentage(\n $fraction,\n $denominator: null\n) {\n $parsed: zf-parse-fraction($fraction);\n $parsed-nominator: nth($parsed, 1);\n $parsed-denominator: nth($parsed, 2);\n\n @if $parsed-nominator == null {\n @error 'Wrong syntax for \"fraction-to-percentage()\". Use a number, decimal, percentage, or \"n of n\" / \"n/n\".';\n }\n @if $parsed-denominator == null {\n @if type-of($denominator) == 'number' {\n $parsed-denominator: $denominator;\n }\n @else {\n @error 'Error with \"fraction-to-percentage()\". A default \"$denominator\" is required to support absolute values';\n }\n }\n\n @return percentage($parsed-nominator / $parsed-denominator);\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n$global-font-size: 100% !default;\n\n/// Removes the unit (e.g. px, em, rem) from a value, returning the number only.\n///\n/// @param {Number} $num - Number to strip unit from.\n///\n/// @returns {Number} The same number, sans unit.\n@function strip-unit($num) {\n @return $num / ($num * 0 + 1);\n}\n\n/// Converts one or more pixel values into matching rem values.\n///\n/// @param {Number|List} $values - One or more values to convert. Be sure to separate them with spaces and not commas. If you need to convert a comma-separated list, wrap the list in parentheses.\n/// @param {Number} $base [null] - The base value to use when calculating the `rem`. If you're using Foundation out of the box, this is 16px. If this parameter is `null`, the function will reference the `$global-font-size` variable as the base.\n///\n/// @returns {List} A list of converted values.\n@function rem-calc($values, $base: null) {\n $rem-values: ();\n $count: length($values);\n\n // If no base is defined, defer to the global font size\n @if $base == null {\n $base: $global-font-size;\n }\n\n // If the base font size is a %, then multiply it by 16px\n // This is because 100% font size = 16px in most all browsers\n @if unit($base) == '%' {\n $base: ($base / 100%) * 16px;\n }\n\n // Using rem as base allows correct scaling\n @if unit($base) == 'rem' {\n $base: strip-unit($base) * 16px;\n }\n\n @if $count == 1 {\n @return -zf-to-rem($values, $base);\n }\n\n @for $i from 1 through $count {\n $rem-values: append($rem-values, -zf-to-rem(nth($values, $i), $base));\n }\n\n @return $rem-values;\n}\n\n// Converts a unitless, pixel, or rem value to em, for use in breakpoints.\n@function -zf-bp-to-em($value) {\n // Pixel and unitless values are converted to rems\n @if unit($value) == 'px' or unitless($value) {\n $value: rem-calc($value, $base: 16px);\n }\n\n // Then the value is converted to ems\n @return strip-unit($value) * 1em;\n}\n\n/// Converts a pixel value to matching rem value. *Any* value passed, regardless of unit, is assumed to be a pixel value. By default, the base pixel value used to calculate the rem value is taken from the `$global-font-size` variable.\n/// @access private\n///\n/// @param {Number} $value - Pixel value to convert.\n/// @param {Number} $base [null] - Base for pixel conversion.\n///\n/// @returns {Number} A number in rems, calculated based on the given value and the base pixel value. rem values are passed through as is.\n@function -zf-to-rem($value, $base: null) {\n // Check if the value is a number\n @if type-of($value) != 'number' {\n @warn inspect($value) + ' was passed to rem-calc(), which is not a number.';\n @return $value;\n }\n\n // Transform em into rem if someone hands over 'em's\n @if unit($value) == 'em' {\n $value: strip-unit($value) * 1rem;\n }\n\n // Calculate rem if units for $value is not rem or em\n @if unit($value) != 'rem' {\n $value: strip-unit($value) / strip-unit($base) * 1rem;\n }\n\n // Turn 0rem into 0\n @if $value == 0rem {\n $value: 0;\n }\n\n @return $value;\n}\n\n/// Converts a pixel, percentage, rem or em value to a unitless value based on a given font size. Ideal for working out unitless line heights.\n///\n/// @param {Number} $value - Value to convert to a unitless line height\n/// @param {Number} $base - The font size to use to work out the line height - defaults to $global-font-size\n///\n/// @return {Number} - Unitless number\n@function unitless-calc($value, $base: null) {\n\n // If no base is defined, defer to the global font size\n @if $base == null {\n $base: $global-font-size;\n }\n\n // First, lets convert our $base to pixels\n\n // If the base font size is a %, then multiply it by 16px\n @if unit($base) == '%' {\n $base: ($base / 100%) * 16px;\n }\n\n @if unit($base) == 'rem' {\n $base: strip-unit($base) * 16px;\n }\n\n @if unit($base) == 'em' {\n $base: strip-unit($base) * 16px;\n }\n\n // Now let's convert our value to pixels too\n @if unit($value) == '%' {\n $value: ($value / 100%) * $base;\n }\n\n @if unit($value) == 'rem' {\n $value: strip-unit($value) * $base;\n }\n\n @if unit($value) == 'em' {\n $value: strip-unit($value) * $base;\n }\n\n // 'px'\n @if unit($value) == 'px' {\n @return strip-unit($value) / strip-unit($base);\n }\n\n // assume that line-heights greater than 10 are meant to be absolute in 'px'\n @if unitless($value) and ($value > 10) {\n @return $value / strip-unit($base);\n }\n\n @return $value;\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n/// Determine if a value is not falsey, in CSS terms. Falsey values are `null`, `none`, `0` with any unit, or an empty list.\n///\n/// @param {Mixed} $val - Value to check.\n///\n/// @returns {Boolean} `true` if `$val` is not falsey.\n@function has-value($val) {\n @if $val == null or $val == none {\n @return false;\n }\n @if type-of($val) == 'number' and strip-unit($val) == 0 {\n @return false;\n }\n @if type-of($val) == 'list' and length($val) == 0 {\n @return false;\n }\n @return true;\n}\n\n/// Determine a top/right/bottom/right value on a padding, margin, etc. property, no matter how many values were passed in. Use this function if you need to know the specific side of a value, but don't know if the value is using a shorthand format.\n///\n/// @param {List|Number} $val - Value to analyze. Should be a shorthand sizing property, e.g. \"1em 2em 1em\"\n/// @param {Keyword} $side - Side to return. Should be `top`, `right`, `bottom`, or `left`.\n///\n/// @returns {Number} A single value based on `$val` and `$side`.\n@function get-side($val, $side) {\n $length: length($val);\n\n @if $length == 1 {\n @return $val;\n }\n @if $length == 2 {\n @return map-get((\n top: nth($val, 1),\n bottom: nth($val, 1),\n left: nth($val, 2),\n right: nth($val, 2),\n ), $side);\n }\n @if $length == 3 {\n @return map-get((\n top: nth($val, 1),\n left: nth($val, 2),\n right: nth($val, 2),\n bottom: nth($val, 3),\n ), $side);\n }\n @if $length == 4 {\n @return map-get((\n top: nth($val, 1),\n right: nth($val, 2),\n bottom: nth($val, 3),\n left: nth($val, 4),\n ), $side);\n }\n}\n\n/// Given border $val, find a specific element of the border, which is $elem. The possible values for $elem are width, style, and color.\n///\n/// @param {List} $val - Border value to find a value in.\n/// @param {Keyword} $elem - Border component to extract.\n///\n/// @returns {Mixed} If the value exists, returns the value. If the value is not in the border definition, the function will return a 0px width, solid style, or black border.\n@function get-border-value($val, $elem) {\n // Find the width, style, or color and return it\n @each $v in $val {\n $type: type-of($v);\n @if $elem == width and $type == 'number' {\n @return $v;\n }\n @if $elem == style and $type == 'string' {\n @return $v;\n }\n @if $elem == color and $type == 'color' {\n @return $v;\n }\n }\n\n // Defaults\n $defaults: (\n width: 0,\n style: solid,\n color: #000,\n );\n\n @return map-get($defaults, $elem);\n}\n\n/// Finds a value in a nested map.\n/// @link https://css-tricks.com/snippets/sass/deep-getset-maps/ Deep Get/Set in Maps\n///\n/// @param {Map} $map - Map to pull a value from.\n/// @param {String} $keys... - Keys to use when looking for a value.\n/// @returns {Mixed} The value found in the map.\n@function map-deep-get($map, $keys...) {\n @each $key in $keys {\n $map: map-get($map, $key);\n }\n @return $map;\n}\n\n/// Casts a map into a list.\n/// @link http://hugogiraudel.com/2014/04/28/casting-map-into-list/\n///\n/// @param {Map} $map - Map to pull a value from.\n///\n/// @returns {List} Depending on the flag, returns either $keys or $values or both.\n@function map-to-list($map, $keep: 'both') {\n $keep: if(index('keys' 'values', $keep), $keep, 'both');\n\n @if type-of($map) == 'map' {\n $keys: ();\n $values: ();\n\n @each $key, $val in $map {\n $keys: append($keys, $key);\n $values: append($values, $val);\n }\n\n @if $keep == 'keys' {\n @return $keys;\n }\n @else if $keep == 'values' {\n @return $values;\n }\n @else {\n @return zip($keys, $values);\n }\n }\n\n @return if(type-of($map) != 'list', ($value,), $map);\n\n}\n\n/// Return a join of the two given strings `$str1` and `$str2`.\n/// If the two strings are not empty, they are separated by `$delimiter`.\n///\n/// @param {String} $str1 [null] - First string to join.\n/// @param {String} $str1 [null] - Second string to join.\n/// @param {String} $delimiter [null] - Delimieter between `$str1` and `$str2`.\n///\n/// @returns {String} Join of `$str1`, `$delimiter` and `$str2`.\n@function zf-str-join(\n $str1: null,\n $str2: null,\n $delimiter: null\n) {\n $ret: '';\n\n @if $str1 and str-length($str1) > 0 {\n $ret: $ret + $str1;\n\n @if $delimiter and str-length($delimiter) > 0 and $str2 and str-length($str2) > 0 {\n $ret: $ret + $delimiter;\n }\n }\n @if $str2 and str-length($str2) > 0 {\n $ret: $ret + $str2;\n }\n\n @return $ret;\n}\n\n/// Safely return a value from a map.\n///\n/// @param {Map} $map - Map to retrieve a value from.\n/// @param {String} $key - Name of the map key.\n///\n/// @returns {List} Found value.\n@function map-safe-get($map, $key) {\n @if (type-of($map) == 'map' or (type-of($map) == 'list' and length($map) == 0)) {\n @if (map-has-key($map, $key)) {\n @return map-get($map, $key);\n }\n @else {\n @error 'Key: `#{$key}` is not available in `#{$map}`';\n }\n }\n @else {\n @error '`#{$map}` is not a valid map';\n }\n}\n\n/// Convert the given `$val` to a Boolean. Empty values are considered as false.\n////\n/// @access private\n///\n/// @param {*} $val - Value to convert.\n///\n/// @returns {Boolean} Converted Boolean value.\n@function -zf-bool($val) {\n @return $val != false and has-value($val);\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n/// Returns the opposite direction of $dir\n///\n/// @param {Keyword} $dir - Used direction between \"top\", \"right\", \"bottom\" and \"left\".\n/// @return {Keyword} Opposite direction of $dir\n@function direction-opposite(\n $dir\n) {\n $dirs: (top, right, bottom, left);\n $place: index($dirs, $dir);\n\n @if $place == null {\n @error 'direction-opposite: Invalid $dir parameter, expected a value from \"#{$dirs}\", found \"#{$dir}\".';\n @return null;\n }\n\n // Calculate the opposite place in a circle, with a starting index of 1\n $length: length($dirs);\n $demi: $length / 2;\n $opposite-place: (($place + $demi - 1) % $length) + 1;\n\n @return nth($dirs, $opposite-place);\n}\n\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n@import 'math';\n\n$contrast-warnings: true !default;\n\n////\n/// @group functions\n////\n\n/// Checks the luminance of `$color`.\n///\n/// @param {Color} $color - Color to check the luminance of.\n///\n/// @returns {Number} The luminance of `$color`.\n@function color-luminance($color) {\n // Adapted from: https://github.com/LeaVerou/contrast-ratio/blob/gh-pages/color.js\n // Formula: http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n $rgba: red($color), green($color), blue($color);\n $rgba2: ();\n\n @for $i from 1 through 3 {\n $rgb: nth($rgba, $i);\n $rgb: $rgb / 255;\n\n $rgb: if($rgb < 0.03928, $rgb / 12.92, pow(($rgb + 0.055) / 1.055, 2.4));\n\n $rgba2: append($rgba2, $rgb);\n }\n\n @return 0.2126 * nth($rgba2, 1) + 0.7152 * nth($rgba2, 2) + 0.0722 * nth($rgba2, 3);\n}\n\n/// Checks the contrast ratio of two colors.\n///\n/// @param {Color} $color1 - First color to compare.\n/// @param {Color} $color2 - Second color to compare.\n///\n/// @returns {Number} The contrast ratio of the compared colors.\n@function color-contrast($color1, $color2) {\n // Adapted from: https://github.com/LeaVerou/contrast-ratio/blob/gh-pages/color.js\n // Formula: http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef\n $luminance1: color-luminance($color1) + 0.05;\n $luminance2: color-luminance($color2) + 0.05;\n $ratio: $luminance1 / $luminance2;\n\n @if $luminance2 > $luminance1 {\n $ratio: 1 / $ratio;\n }\n\n $ratio: round($ratio * 10) / 10;\n\n @return $ratio;\n}\n\n/// Checks the luminance of `$base`, and returns the color from `$colors` (list of colors) that has the most contrast.\n///\n/// @param {Color} $base - Color to check luminance.\n/// @param {List} $colors [($white, $black)] - Colors to compare.\n/// @param {Number} $tolerance [$global-color-pick-contrast-tolerance] - Contrast tolerance.\n///\n/// @returns {Color} the color from `$colors` (list of colors) that has the most contrast.\n@function color-pick-contrast($base, $colors: ($white, $black), $tolerance: $global-color-pick-contrast-tolerance) {\n $contrast: color-contrast($base, nth($colors, 1));\n $best: nth($colors, 1);\n\n @for $i from 2 through length($colors) {\n $current-contrast: color-contrast($base, nth($colors, $i));\n @if ($current-contrast - $contrast > $tolerance) {\n $contrast: color-contrast($base, nth($colors, $i));\n $best: nth($colors, $i);\n }\n }\n\n @if ($contrast-warnings and $contrast < 3) {\n @warn \"Contrast ratio of #{$best} on #{$base} is pretty bad, just #{$contrast}\";\n }\n\n @return $best;\n}\n\n/// Scales a color to be darker if it's light, or lighter if it's dark. Use this function to tint a color appropriate to its lightness.\n///\n/// @param {Color} $color - Color to scale.\n/// @param {Percentage} $scale [5%] - Amount to scale up or down.\n/// @param {Percentage} $threshold [40%] - Threshold of lightness to check against.\n///\n/// @returns {Color} A scaled color.\n@function smart-scale($color, $scale: 5%, $threshold: 40%) {\n @if lightness($color) > $threshold {\n $scale: -$scale;\n }\n @return scale-color($color, $lightness: $scale);\n}\n\n/// Get color from foundation-palette\n///\n/// @param {key} color key from foundation-palette\n///\n/// @returns {Color} color from foundation-palette\n@function get-color($key) {\n @if map-has-key($foundation-palette, $key) {\n @return map-get($foundation-palette, $key);\n }\n @else {\n @error 'given $key is not available in $foundation-palette';\n }\n}\n\n/// Transfers the colors in the `$foundation-palette` map into variables, such as `$primary-color` and `$secondary-color`. Call this mixin below the Global section of your settings file to properly migrate your codebase.\n@mixin add-foundation-colors() {\n @if map-has-key($foundation-palette, primary) {\n $primary-color: map-get($foundation-palette, primary) !global;\n } @else {\n $primary-color: #1779ba !global;\n }\n @if map-has-key($foundation-palette, secondary) {\n $secondary-color: map-get($foundation-palette, secondary) !global;\n } @else {\n $secondary-color: #767676 !global;\n }\n @if map-has-key($foundation-palette, success) {\n $success-color: map-get($foundation-palette, success) !global;\n } @else {\n $success-color: #3adb76 !global;\n }\n @if map-has-key($foundation-palette, warning) {\n $warning-color: map-get($foundation-palette, warning) !global;\n } @else {\n $warning-color: #ffae00 !global;\n }\n @if map-has-key($foundation-palette, alert) {\n $alert-color: map-get($foundation-palette, alert) !global;\n } @else {\n $alert-color: #cc4b37 !global;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n/// Generates a selector with every text input type. You can also filter the list to only output a subset of those selectors.\n///\n/// @param {List|Keyword} $types [()] - A list of text input types to use. Leave blank to use all of them.\n/// @param {Keyword} $modifier [''] - A modifier to be applied to each text input type (e.g. a class or a pseudo-class). Leave blank to ignore.\n@function text-inputs($types: (), $modifier: '') {\n $return: ();\n\n $all-types:\n text\n password\n date\n datetime\n datetime-local\n month\n week\n email\n number\n search\n tel\n time\n url\n color;\n\n @if not has-value($types) {\n $types: $all-types;\n }\n\n @each $type in $types {\n $return: append($return, unquote('[type=\\'#{$type}\\']#{$modifier}'), comma);\n }\n\n @return $return;\n}\n","@function -zf-flex-justify($text-direction){\n $-zf-flex-justify: (\n 'left': if($text-direction == rtl, flex-end, flex-start),\n 'right': if($text-direction == rtl, flex-start, flex-end),\n 'center': center,\n 'justify': space-between,\n 'spaced': space-around,\n );\n\n @return $-zf-flex-justify;\n}\n\n\n$-zf-flex-align: (\n 'top': flex-start,\n 'bottom': flex-end,\n 'middle': center,\n 'stretch': stretch,\n);\n\n$-zf-flex-direction: (\n 'row': row,\n 'row-reverse': row-reverse,\n 'column': column,\n 'column-reverse': column-reverse,\n);\n\n/// Enables flexbox by adding `display: flex` to the element.\n@mixin flex {\n display: flex;\n}\n\n/// Horizontally or vertically aligns the items within a flex container.\n///\n/// @param {Keyword} $x [null] - Horizontal alignment to use. Can be `left`, `right`, `center`, `justify`, or `spaced`. Or, set it to `null` (the default) to not set horizontal alignment.\n/// @param {Keyword} $y [null] - Vertical alignment to use. Can be `top`, `bottom`, `middle`, or `stretch`. Or, set it to `null` (the default) to not set vertical alignment.\n@mixin flex-align($x: null, $y: null) {\n @if $x {\n @if map-has-key($-zf-flex-justify, $x) {\n $x: map-get($-zf-flex-justify, $x);\n }\n @else {\n @warn 'flex-grid-row-align(): #{$x} is not a valid value for horizontal alignment. Use left, right, center, justify, or spaced.';\n }\n }\n\n @if $y {\n @if map-has-key($-zf-flex-align, $y) {\n $y: map-get($-zf-flex-align, $y);\n }\n @else {\n @warn 'flex-grid-row-align(): #{$y} is not a valid value for vertical alignment. Use top, bottom, middle, or stretch.';\n }\n }\n\n justify-content: $x;\n align-items: $y;\n}\n\n/// Vertically align a single column within a flex row. Apply this mixin to a flex column.\n///\n/// @param {Keyword} $y [null] - Vertical alignment to use. Can be `top`, `bottom`, `middle`, or `stretch`. Or, set it to `null` (the default) to not set vertical alignment.\n@mixin flex-align-self($y: null) {\n @if $y {\n @if map-has-key($-zf-flex-align, $y) {\n $y: map-get($-zf-flex-align, $y);\n }\n @else {\n @warn 'flex-grid-column-align(): #{$y} is not a valid value for alignment. Use top, bottom, middle, or stretch.';\n }\n }\n\n align-self: $y;\n}\n\n/// Changes the source order of a flex child. Children with lower numbers appear first in the layout.\n/// @param {Number} $order [0] - Order number to apply.\n@mixin flex-order($order: 0) {\n order: $order;\n}\n\n/// Change flex-direction\n/// @param {Keyword} $direction [row] - Flex direction to use. Can be\n/// - row (default): same as text direction\n/// - row-reverse: opposite to text direction\n/// - column: same as row but top to bottom\n/// - column-reverse: same as row-reverse top to bottom\n@mixin flex-direction($direction: row) {\n flex-direction: $direction;\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group breakpoints\n////\n\n/// A list of named breakpoints. You can use these with the `breakpoint()` mixin to quickly create media queries.\n/// @type Map\n$breakpoints: (\n small: 0,\n medium: 640px,\n large: 1024px,\n xlarge: 1200px,\n xxlarge: 1440px,\n) !default;\n\n/// A list of named HiDPI breakpoints. You can use these with the `breakpoint()` mixin to quickly create media queries for resolutions.\n/// Values must represent the device pixels / web pixels ration and be unitless or in DPPX.\n/// @type Map\n$breakpoints-hidpi: (\n hidpi-1: 1,\n hidpi-1-5: 1.5,\n hidpi-2: 2,\n retina: 2,\n hidpi-3: 3\n) !default;\n\n/// The largest named breakpoint in which to include print as a media type\n/// @type Keyword\n$print-breakpoint: large !default;\n\n$-zf-zero-breakpoint: small !default;\n\n$-zf-breakpoints-keys: map-to-list($breakpoints, 'keys');\n\n@if nth(map-values($breakpoints), 1) != 0 {\n @error 'The first key in the $breakpoints map must have a value of \"0\".';\n}\n@else {\n $-zf-zero-breakpoint: nth(map-keys($breakpoints), 1);\n}\n\n/// All of the names in this list will be output as classes in your CSS, like `.small-12`, `.medium-6`, and so on. Each value in this list must also be in the `$breakpoints` map.\n/// @type List\n$breakpoint-classes: (small medium large) !default;\n\n/// Generates a media query string matching the input value. Refer to the documentation for the `breakpoint()` mixin to see what the possible inputs are.\n///\n/// @param {Keyword|Number} $val [small] - Breakpoint name, or px, rem, or em value to process.\n@function breakpoint($val: $-zf-zero-breakpoint) {\n // Web standard Pixels per inch. (1ddpx / $std-web-dpi) = 1dpi\n // See https://www.w3.org/TR/css-values-3/#absolute-lengths\n $std-web-dpi: 96;\n\n // Size or keyword\n $bp: nth($val, 1);\n // Value of the following breakpoint\n $bp-next: null;\n // Value for max-width media queries\n $bp-min: null;\n // Value for min-width media queries\n $bp-max: null;\n // Direction of media query (up, down, or only)\n $dir: if(length($val) > 1, nth($val, 2), up);\n // If named, name of the breakpoint\n $name: null;\n // If the breakpoint is a HiDPI breakpoint\n $hidpi: false;\n\n // Orientation media queries have a unique syntax\n @if $bp == 'landscape' or $bp == 'portrait' {\n @return '(orientation: #{$bp})';\n }\n\n // If a breakpoint name is given, get its value from the $breakpoints/$breakpoints-hidpi map.\n @if type-of($bp) == 'string' {\n @if map-has-key($breakpoints, $bp) {\n $name: $bp;\n $bp: map-get($breakpoints, $name);\n $bp-next: -zf-map-next($breakpoints, $name);\n }\n @else if map-has-key($breakpoints-hidpi, $bp) {\n $name: $bp;\n $bp: map-get($breakpoints-hidpi, $name);\n $bp-next: -zf-map-next-number($breakpoints-hidpi, $bp);\n $hidpi: true;\n }\n @else {\n $bp: 0;\n @warn 'breakpoint(): \"#{$val}\" is not defined in your `$breakpoints` or `$breakpoints-hidpi` setting.';\n }\n }\n\n @if not $name and $dir == 'only' {\n @warn 'breakpoint(): Only named media queries can have an `only` range.';\n @return null;\n }\n\n // Only 'only' and 'up' have a min limit.\n @if $dir == 'only' or $dir == 'up' {\n $bp-min: if($hidpi, strip-unit($bp), -zf-bp-to-em($bp));\n }\n // Only 'only' and 'down' have a max limit.\n @if $dir == 'only' or $dir == 'down' {\n // If the breakpoint is a value, use it as max limit.\n @if not $name {\n $bp-max: if($hidpi, strip-unit($bp), -zf-bp-to-em($bp));\n }\n // If the breakpoint is named, the max limit is the following breakpoint - 1px.\n @else if $bp-next {\n // Max value is 0.2px under the next breakpoint (0.02 / 16 = 0.00125).\n // Use a precision under 1px to support browser zoom, but not to low to avoid rounding.\n // See https://github.com/foundation/foundation-sites/issues/11313\n $bp-max: if($hidpi, $bp-next - (1/$std-web-dpi), -zf-bp-to-em($bp-next) - 0.00125);\n }\n }\n\n // Generate the media query string from min and max limits.\n @if $hidpi {\n // Generate values in DPI instead of DPPX for an IE9-11/Opera mini compatibility.\n // See https://caniuse.com/#feat=css-media-resolution\n $bp-min-dpi: if($bp-min, $bp-min * $std-web-dpi * 1dpi, $bp-min);\n $bp-max-dpi: if($bp-max, $bp-max * $std-web-dpi * 1dpi, $bp-max);\n @return zf-str-join(\n -zf-bp-join($bp-min, $bp-max, '-webkit-min-device-pixel-ratio', '-webkit-max-device-pixel-ratio'),\n -zf-bp-join($bp-min-dpi, $bp-max-dpi, 'min-resolution', 'max-resolution'),\n ', ');\n }\n @else {\n @return -zf-bp-join($bp-min, $bp-max);\n }\n}\n\n/// Wraps a media query around the content you put inside the mixin. This mixin accepts a number of values:\n/// - If a string is passed, the mixin will look for it in the `$breakpoints` and `$breakpoints-hidpi` maps, and use a media query there.\n/// - If a pixel value is passed, it will be converted to an em value using `$global-font-size` as the base.\n/// - If a rem value is passed, the unit will be changed to em.\n/// - If an em value is passed, the value will be used as-is.\n///\n/// If multiple values are passed, the mixin will generate a media query for each of them as described above.\n/// Since the content is duplicated for each breakpoint, this mixin should only be used with properties that\n/// change across breakpoints.\n///\n/// @param {Keyword|Number} $values... - Breakpoint name or px/rem/em value to process.\n///\n/// @output If the breakpoint is \"0px and larger\", outputs the content as-is. Otherwise, outputs the content wrapped in a media query.\n@mixin breakpoint($values...) {\n @for $i from 1 through length($values) {\n $value: nth($values, $i);\n $str: breakpoint($value);\n $bp: index($-zf-breakpoints-keys, nth($value, 1));\n $pbp: index($-zf-breakpoints-keys, $print-breakpoint);\n // Direction of media query (up, down, or only)\n $dir: if(length($value) > 1, nth($value, 2), up);\n\n $old-zf-size: null;\n\n // Make breakpoint size available as a variable\n @if global-variable-exists(-zf-size) {\n $old-zf-size: $-zf-size;\n }\n $-zf-size: nth($value, 1) !global; // get the first value to account for `only` and `down` keywords\n\n // If $str is still an empty string, no media query is needed\n @if $str == '' {\n @content;\n }\n\n // Otherwise, wrap the content in a media query\n @else {\n // For named breakpoints less than or equal to $print-breakpoint, add print to the media types\n // generate print if the breakpoint affects the print-breakpoint (or smaller).\n // This means the current condition only needs to be extended so 'down' always generates print.\n @if $bp != null and ($bp <= $pbp or $dir == down) {\n @media print, screen and #{$str} {\n @content;\n }\n }\n @else {\n @media screen and #{$str} {\n @content;\n }\n }\n }\n\n $-zf-size: $old-zf-size !global;\n }\n}\n\n/// Converts the breakpoints map to a URL-encoded string, like this: `key1=value1&key2=value2`. The value is then dropped into the CSS for a special `` tag, which is read by the Foundation JavaScript. This is how we transfer values from Sass to JavaScript, so they can be defined in one place.\n/// @access private\n///\n/// @param {Map} $map - Map to convert.\n///\n/// @returns {String} A string containing the map's contents.\n@function -zf-bp-serialize($map) {\n $str: '';\n @each $key, $value in $map {\n $str: $str + $key + '=' + -zf-bp-to-em($value) + '&';\n }\n $str: str-slice($str, 1, -2);\n\n @return $str;\n}\n\n/// Find the next key in a map.\n/// @access private\n///\n/// @param {Map} $map - Map to traverse.\n/// @param {Mixed} $key - Key to use as a starting point.\n///\n/// @returns {Mixed} The value for the key after `$key`, if `$key` was found. If `$key` was not found, or `$key` was the last value in the map, returns `null`.\n@function -zf-map-next($map, $key) {\n\n // Store the keys of the map as a list\n $values: map-keys($map);\n\n $i: 0;\n\n // If the Key Exists, Get the index of the key within the map and add 1 to it for the next breakpoint in the map\n @if (map-has-key($map, $key)) {\n $i: index($values, $key) + 1;\n }\n\n // If the key doesn't exist, or it's the last key in the map, return null\n @if ($i > length($map) or $i == 0) {\n @return null;\n }\n // Otherwise, return the value\n @else {\n @return map-get($map, nth($values, $i));\n }\n\n}\n\n/// Find the next number in a map.\n/// @access private\n///\n/// @param {Map} $map - Map to traverse.\n/// @param {Mixed} $number - Number to use as a starting point.\n///\n/// @returns {Mixed} The number following `$number`, if `$number` was found. If `$number` was not found, or `$number` was the biggest number in the map, returns `null`.\n@function -zf-map-next-number($map, $number) {\n\n $next_number: null;\n\n @each $k, $v in $map {\n @if type-of($v) == 'number' and $v > $number and ($next_number == null or $v < $next_number) {\n $next_number: $v;\n }\n }\n\n @return $next_number;\n}\n\n/// Return a list of our named breakpoints less than $key. Useful for dealing with\n/// responsive gutters for the grid.\n/// @access private\n///\n/// @param {String} $key - Key to use as last breakpoint.\n///\n/// @returns {Array} The list of breakpoints up to and. If $key is auto, returns breakpoints above the zero\n@function -zf-breakpoints-less-than($key) {\n $list: ();\n $found_key: false;\n\n @each $name in $-zf-breakpoints-keys {\n @if ($name == $key) {\n $found_key: true;\n }\n @if not $found_key {\n $list: append($list, $name);\n }\n }\n @return $list;\n}\n\n/// Return a list of our named breakpoints less than $key. Useful for dealing with\n/// responsive gutters for the grid.\n/// @access private\n///\n/// @param {String} $breakpoint - a named or non-named breakpoint.\n///\n/// @returns {Array} The list of breakpoints up to and. If $key is auto, returns breakpoints above the zero\n@function -zf-closest-named-breakpoint($breakpoint) {\n $last: $-zf-zero-breakpoint;\n $found: false;\n\n $value: unitless-calc($breakpoint, 1px);\n @each $key, $val in $breakpoints {\n @if not $found {\n @if unitless-calc($val) > $value {\n $found: true;\n } @else {\n $last: $key;\n }\n }\n }\n\n @return $last;\n}\n\n/// Get a value for a breakpoint from a responsive config map or single value.\n/// - If the config is a single value, return it regardless of `$value`.\n/// - If the config is a map and has the key `$value`, the exact breakpoint value is returned.\n/// - If the config is a map and does *not* have the breakpoint, the value matching the next lowest breakpoint in the config map is returned.\n/// @access private\n///\n/// @param {Number|Map} $map - Responsive config map or single value.\n/// @param {Keyword} $value - Breakpoint name to use.\n///\n/// @return {Mixed} The corresponding breakpoint value.\n@function -zf-get-bp-val($map, $value) {\n // If the given map is a single value, return it\n @if type-of($map) == 'number' {\n @return $map;\n }\n\n\n // Check if the breakpoint name exists globally\n @if not map-has-key($breakpoints, $value) {\n @if type-of($value) == 'number' {\n $value: -zf-closest-named-breakpoint($value);\n } @else {\n @return null;\n }\n }\n // Check if the breakpoint name exists in the local config map\n @else if map-has-key($map, $value) {\n // If it does, just return the value\n @return map-get($map, $value);\n }\n // Otherwise, find the next lowest breakpoint and return that value\n @else {\n $anchor: null;\n $found: false;\n\n @each $key, $val in $breakpoints {\n @if not $found {\n @if map-has-key($map, $key) {\n $anchor: $key;\n }\n @if $key == $value {\n $found: true;\n }\n }\n }\n\n @return map-get($map, $anchor);\n }\n}\n\n/// Return the best breakpoint to use according to the calling context. It returns in order:\n/// 1. the given `$value` argument if it is not null.\n/// 2. the global breakpoint context `$-zf-size` if it is not null (like if called inside then `breakpoint()` mixin)\n/// 3. the given `$default` argument.\n/// @access private\n///\n/// @param {Keyword} $value [null] - Breakpoint to use in priority if non-null.\n/// @param {Keyword} $default [null] - Breakpoint to use by default if no other value can be used.\n///\n/// @return {Keyword} The resolved breakpoint.\n@function -zf-current-breakpoint($value: null, $default: null) {\n @if ($value != null) {\n @return $value;\n }\n @else if (variable-exists(-zf-size) and type-of($-zf-size) != 'number') and $-zf-size != null {\n @return $-zf-size;\n }\n @else {\n @return $default;\n }\n}\n\n/// Return media query string from the given min and/or max limits.\n/// If a limit is equal to `null` or `0`, it is ignored.\n/// @access private\n///\n/// @param {Number} $min [0] - Min media query limit.\n/// @param {Number} $max [0] - Max media query limit.\n/// @param {String} $min-name ['min-width'] - Name of the min media query limit.\n/// @param {String} $delimiter ['max-width'] - Name of the max media query limit.\n///\n/// @returns {String} Media Query string.\n@function -zf-bp-join(\n $min: 0,\n $max: 0,\n $min-name: 'min-width',\n $max-name: 'max-width'\n) {\n @return zf-str-join(\n if($min and $min > 0, '(#{$min-name}: #{$min})', null),\n if($max and $max > 0, '(#{$max-name}: #{$max})', null),\n ' and ');\n}\n\n$small-up: '';\n$small-only: '';\n\n@if map-has-key($breakpoints, small) {\n $small-up: screen;\n $small-only: unquote('screen and #{breakpoint(small only)}');\n}\n\n$medium-up: '';\n$medium-only: '';\n\n@if map-has-key($breakpoints, medium) {\n $medium-up: unquote('screen and #{breakpoint(medium)}');\n $medium-only: unquote('screen and #{breakpoint(medium only)}');\n}\n\n$large-up: '';\n$large-only: '';\n\n@if map-has-key($breakpoints, large) {\n $large-up: unquote('screen and #{breakpoint(large)}');\n $large-only: unquote('screen and #{breakpoint(large only)}');\n}\n\n$xlarge-up: '';\n$xlarge-only: '';\n\n@if map-has-key($breakpoints, xlarge) {\n $xlarge-up: unquote('screen and #{breakpoint(xlarge)}');\n $xlarge-only: unquote('screen and #{breakpoint(xlarge only)}');\n}\n\n$xxlarge-up: '';\n\n@if map-has-key($breakpoints, xxlarge) {\n $xxlarge-up: unquote('screen and #{breakpoint(xxlarge)}');\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n/// Creates an inner box-shadow for only one side\n///\n/// @param {Keyword} $side - Side the shadow is supposed to appear. Can be `top`, `left`, `right` or `bottom`.\n/// @param {Number} $size - Width for the target side.\n/// @param {Color} $color - Color of the shadow.\n@mixin inner-side-shadow(\n $side: bottom,\n $size: 20px,\n $color: rgba($black, 0.25)\n) {\n\n $helper: round($size * 0.65);\n\n @if ($side == top) {\n box-shadow: inset 0 $helper $size (-1)*$helper $color;\n } @else if ($side == left) {\n box-shadow: inset $helper 0 $size (-1)*$helper $color;\n } @else if ($side == right) {\n box-shadow: inset (-1)*$helper 0 $size (-1)*$helper $color;\n } @else if ($side == bottom) {\n box-shadow: inset 0 (-1)*$helper $size (-1)*$helper $color;\n }\n}\n\n/// Creates a CSS triangle, which can be used for dropdown arrows, dropdown pips, and more. Use this mixin inside a `&::before` or `&::after` selector, to attach the triangle to an existing element.\n///\n/// @param {Number} $triangle-size - Width of the triangle.\n/// @param {Color} $triangle-color - Color of the triangle.\n/// @param {Keyword} $triangle-direction - Direction the triangle points. Can be `up`, `right`, `down`, or `left`.\n@mixin css-triangle(\n $triangle-size,\n $triangle-color,\n $triangle-direction\n) {\n display: block;\n width: 0;\n height: 0;\n\n border: inset $triangle-size;\n\n content: '';\n\n @if ($triangle-direction == down) {\n border-bottom-width: 0;\n border-top-style: solid;\n border-color: $triangle-color transparent transparent;\n }\n @if ($triangle-direction == up) {\n border-top-width: 0;\n border-bottom-style: solid;\n border-color: transparent transparent $triangle-color;\n }\n @if ($triangle-direction == right) {\n border-right-width: 0;\n border-left-style: solid;\n border-color: transparent transparent transparent $triangle-color;\n }\n @if ($triangle-direction == left) {\n border-left-width: 0;\n border-right-style: solid;\n border-color: transparent $triangle-color transparent transparent;\n }\n}\n\n/// Creates a menu icon with a set width, height, number of bars, and colors. The mixin uses the height of the icon and the weight of the bars to determine spacing.
\n///\n/// @param {Color} $color [$black] - Color to use for the icon.\n/// @param {Color} $color-hover [$dark-gray] - Color to use when the icon is hovered over.\n/// @param {Number} $width [20px] - Width of the icon.\n/// @param {Number} $height [16px] - Height of the icon.\n/// @param {Number} $weight [2px] - Height of individual bars in the icon.\n/// @param {Number} $bars [3] - Number of bars in the icon.\n@mixin hamburger(\n $color: $black,\n $color-hover: $dark-gray,\n $width: 20px,\n $height: 16px,\n $weight: 2px,\n $bars: 3\n) {\n // box-shadow CSS output\n $shadow: ();\n $hover-shadow: ();\n\n // Spacing between bars is calculated based on the total height of the icon and the weight of each bar\n $spacing: ($height - ($weight * $bars)) / ($bars - 1);\n\n @if unit($spacing) == 'px' {\n $spacing: floor($spacing);\n }\n\n @for $i from 2 through $bars {\n $offset: ($weight + $spacing) * ($i - 1);\n $shadow: append($shadow, 0 $offset 0 $color, comma);\n }\n\n // Icon container\n position: relative;\n display: inline-block;\n vertical-align: middle;\n width: $width;\n height: $height;\n cursor: pointer;\n\n // Icon bars\n &::after {\n position: absolute;\n top: 0;\n left: 0;\n\n display: block;\n width: 100%;\n height: $weight;\n\n background: $color;\n box-shadow: $shadow;\n\n content: '';\n }\n\n // Hover state\n @if $color-hover {\n // Generate CSS\n @for $i from 2 through $bars {\n $offset: ($weight + $spacing) * ($i - 1);\n $hover-shadow: append($hover-shadow, 0 $offset 0 $color-hover, comma);\n }\n\n &:hover::after {\n background: $color-hover;\n box-shadow: $hover-shadow;\n }\n }\n}\n\n/// Adds a downward-facing triangle as a background image to an element. The image is formatted as an SVG, making it easy to change the color. Because Internet Explorer doesn't support encoded SVGs as background images, a PNG fallback is also included.\n/// There are two PNG fallbacks: a black triangle and a white triangle. The one used depends on the lightness of the input color.\n///\n/// @param {Color} $color [$black] - Color to use for the triangle.\n@mixin background-triangle($color: $black) {\n $rgb: 'rgb%28#{round(red($color))}, #{round(green($color))}, #{round(blue($color))}%29';\n\n background-image: url(\"data:image/svg+xml;utf8,\");\n\n @media screen and (min-width:0\\0) {\n @if lightness($color) < 60% {\n // White triangle\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==');\n }\n @else {\n // Black triangle\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNrEllsOhCAMRVszC9IlzU7KCmVHTJsoMWYMUtpyv9BgbuXQB5ZSdgBYYY4ycgBivk8KYFsQMfMiTTBP4o3nUzCKzOabLJbLy2/g31evGkAginR4/ZegKH5qX3bJCscA3t0x3kgO5tQFyhhFf50xRqFLbyMUNJQzgyjGS/wgCpvKqkRBpuWrE4V9d+1E4dPUXqIg107SQOE/2DRQxMwTDygIInVDET9T3lCoj/6j/VCmGjZOl2lKpZ8AAwDQP7zIimDGFQAAAABJRU5ErkJggg==');\n }\n }\n}\n\n/// Applies the micro clearfix hack popularized by Nicolas Gallagher. Include this mixin on a container if its children are all floated, to give the container a proper height.\n/// The clearfix is augmented with specific styles to prevent borders in flexbox environments\n/// @link http://nicolasgallagher.com/micro-clearfix-hack/ Micro Clearfix Hack\n/// @link http://danisadesigner.com/blog/flexbox-clear-fix-pseudo-elements/ Flexbox fix\n@mixin clearfix {\n &::before,\n &::after {\n display: table;\n content: ' ';\n\n @if $global-flexbox {\n flex-basis: 0;\n order: 1;\n }\n }\n\n &::after {\n clear: both;\n }\n}\n\n/// Adds CSS for a \"quantity query\" selector that automatically sizes elements based on how many there are inside a container.\n/// @link http://alistapart.com/article/quantity-queries-for-css Quantity Queries for CSS\n///\n/// @param {Number} $max - Maximum number of items to detect. The higher this number is, the more CSS that's required to cover each number of items.\n/// @param {Keyword} $elem [li] - Tag to use for sibling selectors.\n@mixin auto-width($max, $elem: li) {\n @for $i from 2 through $max {\n &:nth-last-child(#{$i}):first-child,\n &:nth-last-child(#{$i}):first-child ~ #{$elem} {\n width: percentage(1 / $i);\n }\n }\n}\n\n/// Removes the focus ring around an element when a mouse input is detected.\n@mixin disable-mouse-outline {\n [data-whatinput='mouse'] & {\n outline: 0;\n }\n}\n\n/// Makes an element visually hidden, but still accessible to keyboards and assistive devices.\n/// @link http://snook.ca/archives/html_and_css/hiding-content-for-accessibility Hiding Content for Accessibility\n/// @link http://hugogiraudel.com/2016/10/13/css-hide-and-seek/\n///\n/// @param {Boolean} $enforce - If `true`, use `!important` on applied properties\n@mixin element-invisible(\n $enforce: true\n) {\n $important: if($enforce, '!important', null);\n\n position: absolute #{$important};\n width: 1px #{$important};\n height: 1px #{$important};\n padding: 0 #{$important};\n overflow: hidden #{$important};\n clip: rect(0,0,0,0) #{$important};\n white-space: nowrap #{$important};\n border: 0 #{$important};\n}\n\n/// Reverses the CSS output created by the `element-invisible()` mixin.\n/// @param {Boolean} $enforce - If `true`, use `!important` on applied properties\n@mixin element-invisible-off(\n $enforce: true\n) {\n $important: if($enforce, '!important', null);\n\n position: static #{$important};\n width: auto #{$important};\n height: auto #{$important};\n overflow: visible #{$important};\n clip: auto #{$important};\n white-space: normal #{$important};\n}\n\n/// Vertically centers the element inside of its first non-static parent,\n/// @link http://www.sitepoint.com/centering-with-sass/ Centering With Sass\n@mixin vertical-center {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n}\n\n/// Horizontally centers the element inside of its first non-static parent,\n/// @link http://www.sitepoint.com/centering-with-sass/ Centering With Sass\n@mixin horizontal-center {\n position: absolute;\n left: 50%;\n transform: translateX(-50%);\n}\n\n/// Absolutely centers the element inside of its first non-static parent,\n/// @link http://www.sitepoint.com/centering-with-sass/ Centering With Sass\n@mixin absolute-center {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n/// Iterates through breakpoints defined in `$breakpoint-classes` and prints the CSS inside the mixin at each breakpoint's media query. Use this with the grid, or any other component that has responsive classes.\n///\n/// @param {Boolean} $small [true] - If `false`, the mixin will skip the `small` breakpoint. Use this with components that don't prefix classes with `small-`, only `medium-` and up.\n/// @param {Boolean} $auto-insert-breakpoints [true] - If `false`, the mixin will iterate over breakpoints without doing the media query itself. Useful for more complex media query generation as in the margin grid.\n@mixin -zf-each-breakpoint(\n $small: true,\n $auto-insert-breakpoints: true\n) {\n @include -zf-each-breakpoint-in(auto, -zf-bool($small), -zf-bool($auto-insert-breakpoints)) {\n @content\n };\n}\n\n/// Iterates with `@content` through the given list of breakpoints `$breakpoints`.\n///\n/// @access private\n///\n/// @param {Keyword|List} $breakpoints [auto] - Breakpoints to iterates on. It can be a breakpoint name, list of breakpoints or `auto` for all breakpoints.\n/// @param {Boolean|Null} $zero-breakpoint [null] - Whether the zero-breakpoint (often `small`) must be included. If `true`, it will always be added to the list if not already there. If `false`, it will always be removed. Does nothing by default.\n/// @param {Boolean|Keyword} $media-queries [true] - Whether media-queries must be generated. If `for-lists`, only generate media-queries when `$breakpoints` is a list.\n@mixin -zf-each-breakpoint-in(\n $breakpoints: auto,\n $zero-breakpoint: null,\n $media-queries: true\n) {\n $-list: ();\n $-breakpoints-is-a-list: true;\n\n // Retrieve the list of breakpoint(s) to iterate on.\n @if $breakpoints == auto {\n $-list: $breakpoint-classes;\n }\n @else if type-of($breakpoints) == 'list' {\n $-list: $breakpoints;\n }\n @else if type-of($breakpoints) == 'string' {\n $-list: ($breakpoints);\n $-breakpoints-is-a-list: false;\n }\n @else {\n @error 'Wrong syntax for \"$breakpoints\" in \"-zf-each-breakpoint-in()\". Got \"#{$breakpoints}\" (#{type-of($breakpoints)}). Expected a breakpoint name, a list of breakpoints or \"auto\"';\n }\n\n // Add or remove the zero breakpoint according to `$zero-breakpoint`\n @if $zero-breakpoint == true {\n $-list: join(($-zf-zero-breakpoint), sl-remove($-list, $-zf-zero-breakpoint));\n }\n @else if $zero-breakpoint == false {\n $-list: sl-remove($-list, $-zf-zero-breakpoint);\n }\n\n // Iterate on breakpoint(s)\n @each $bp in $-list {\n $old-zf-size: null;\n @if global-variable-exists(-zf-size) {\n $old-zf-size: $-zf-size;\n }\n $-zf-size: $bp !global;\n\n @if ($media-queries == true\n or ($media-queries == 'for-lists' and $-breakpoints-is-a-list)) {\n @include breakpoint($bp) {\n @content;\n }\n }\n @else {\n @content;\n }\n\n $-zf-size: $old-zf-size !global;\n }\n}\n\n/// Generate the `@content` passed to the mixin with a value `$-zf-bp-value` related to a breakpoint, depending on the `$name` parameter:\n/// - For a single value, `$-zf-bp-value` is this value.\n/// - For a breakpoint name, `$-zf-bp-value` is the corresponding breakpoint value in `$map`.\n/// - For \"auto\", `$-zf-bp-value` is the corresponding breakpoint value in `$map` and is passed to `@content`, which is made responsive for each breakpoint of `$map`.\n/// @param {Number|Array|Keyword} $name [auto] - Single value, breakpoint name, or list of breakpoint names to use. \"auto\" by default.\n/// @param {Number|Map} $map - Map of breakpoints and values or single value to use.\n@mixin -zf-breakpoint-value(\n $name: auto,\n $map: null\n) {\n @if $name == auto and type-of($map) == 'map' {\n // \"auto\"\n @each $k, $v in $map {\n @include breakpoint($k) {\n @include -zf-breakpoint-value($v, $map) {\n @content;\n }\n }\n }\n }\n @else {\n // breakpoint name\n @if type-of($name) == 'string' {\n $bp-value: -zf-get-bp-val($map, $name);\n @if $bp-value != null {\n $name: $bp-value;\n }\n }\n\n // breakpoint value\n $-zf-bp-value: $name !global;\n @content;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n$-zf-font-stack: (\n 'georgia': (Georgia, \"URW Bookman L\", serif),\n 'helvetica': (Helvetica, Arial, \"Nimbus Sans L\", sans-serif),\n 'lucida-grande': (\"Lucida Grande\", \"Lucida Sans Unicode\", \"Bitstream Vera Sans\", sans-serif),\n 'monospace': (\"Courier New\", Courier, \"Nimbus Sans L\", monospace),\n 'system': (-apple-system, system-ui, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Helvetica Neue\", Helvetica, Arial, sans-serif),\n 'verdana': (Verdana, Geneva, \"DejaVu Sans\", sans-serif),\n);\n\n/// Return a font stack list from a map. Equivalent to `map-safe-get($name, $-zf-font-stack)`.\n///\n/// @param {String} $stack - Name of the font stack.\n/// @param {Map} $map [$-zf-font-stack] - Map of font stacks to retrieve a list from.\n///\n/// @returns {List} Found font stack.\n@function font-stack($stack, $map: $-zf-font-stack) {\n @return map-safe-get($map, $stack);\n}\n","/**\n * Foundation for Sites\n * Version 6.6.3\n * https://get.foundation\n * Licensed under MIT Open Source\n */\n\n// --- Dependencies ---\n@import 'vendor/normalize';\n@import '../_vendor/sassy-lists/stylesheets/helpers/missing-dependencies';\n@import '../_vendor/sassy-lists/stylesheets/helpers/true';\n@import '../_vendor/sassy-lists/stylesheets/functions/contain';\n@import '../_vendor/sassy-lists/stylesheets/functions/purge';\n@import '../_vendor/sassy-lists/stylesheets/functions/remove';\n@import '../_vendor/sassy-lists/stylesheets/functions/replace';\n@import '../_vendor/sassy-lists/stylesheets/functions/to-list';\n\n// --- Settings ---\n// import your own `settings` here or\n// import and modify the default settings through\n// @import 'settings/settings';\n\n// --- Components ---\n// Utilities\n@import 'util/util';\n// Global styles\n@import 'global';\n@import 'forms/forms';\n@import 'typography/typography';\n\n// Grids\n@import 'grid/grid';\n@import 'xy-grid/xy-grid';\n// Generic components\n@import 'components/button';\n@import 'components/button-group';\n@import 'components/close-button';\n@import 'components/label';\n@import 'components/progress-bar';\n@import 'components/slider';\n@import 'components/switch';\n@import 'components/table';\n// Basic components\n@import 'components/badge';\n@import 'components/breadcrumbs';\n@import 'components/callout';\n@import 'components/card';\n@import 'components/dropdown';\n@import 'components/pagination';\n@import 'components/tooltip';\n\n// Containers\n@import 'components/accordion';\n@import 'components/media-object';\n@import 'components/orbit';\n@import 'components/responsive-embed';\n@import 'components/tabs';\n@import 'components/thumbnail';\n// Menu-based containers\n@import 'components/menu';\n@import 'components/menu-icon';\n@import 'components/accordion-menu';\n@import 'components/drilldown';\n@import 'components/dropdown-menu';\n\n// Layout components\n@import 'components/off-canvas';\n@import 'components/reveal';\n@import 'components/sticky';\n@import 'components/title-bar';\n@import 'components/top-bar';\n\n// Helpers\n@import 'components/float';\n@import 'components/flex';\n@import 'components/visibility';\n@import 'prototype/prototype';\n\n\n@mixin foundation-everything(\n $flex: true,\n $prototype: false,\n $xy-grid: $xy-grid\n) {\n @if $flex {\n $global-flexbox: true !global;\n }\n\n @if $xy-grid {\n $xy-grid: true !global;\n }\n\n // Global styles\n @include foundation-global-styles;\n @include foundation-forms;\n @include foundation-typography;\n\n // Grids\n @if not $flex {\n @include foundation-grid;\n }\n @else {\n @if $xy-grid {\n @include foundation-xy-grid-classes;\n }\n @else {\n @include foundation-flex-grid;\n }\n }\n\n // Generic components\n @include foundation-button;\n @include foundation-button-group;\n @include foundation-close-button;\n @include foundation-label;\n @include foundation-progress-bar;\n @include foundation-slider;\n @include foundation-switch;\n @include foundation-table;\n // Basic components\n @include foundation-badge;\n @include foundation-breadcrumbs;\n @include foundation-callout;\n @include foundation-card;\n @include foundation-dropdown;\n @include foundation-pagination;\n @include foundation-tooltip;\n\n // Containers\n @include foundation-accordion;\n @include foundation-media-object;\n @include foundation-orbit;\n @include foundation-responsive-embed;\n @include foundation-tabs;\n @include foundation-thumbnail;\n // Menu-based containers\n @include foundation-menu;\n @include foundation-menu-icon;\n @include foundation-accordion-menu;\n @include foundation-drilldown-menu;\n @include foundation-dropdown-menu;\n\n // Layout components\n @include foundation-off-canvas;\n @include foundation-reveal;\n @include foundation-sticky;\n @include foundation-title-bar;\n @include foundation-top-bar;\n\n // Helpers\n @include foundation-float-classes;\n @if $flex { @include foundation-flex-classes; }\n @include foundation-visibility-classes;\n @if $prototype { @include foundation-prototype-classes; }\n}\n","@mixin foundation-normalize() {\n /*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */\n\n // Document\n // ==========================================================================\n\n // 1. Correct the line height in all browsers.\n // 2. Prevent adjustments of font size after orientation changes in iOS.\n\n html {\n line-height: 1.15; // 1\n -webkit-text-size-adjust: 100%; // 2\n }\n\n // Sections\n // ==========================================================================\n\n // Remove the margin in all browsers.\n\n body {\n margin: 0;\n }\n\n // Correct the font size and margin on `h1` elements within `section` and\n // `article` contexts in Chrome, Firefox, and Safari.\n\n h1 {\n font-size: 2em;\n margin: 0.67em 0;\n }\n\n // Grouping content\n // ==========================================================================\n\n // 1. Add the correct box sizing in Firefox.\n // 2. Show the overflow in Edge and IE.\n\n hr {\n box-sizing: content-box; // 1\n height: 0; // 1\n overflow: visible; // 2\n }\n\n // 1. Correct the inheritance and scaling of font size in all browsers.\n // 2. Correct the odd `em` font sizing in all browsers.\n\n pre {\n font-family: monospace, monospace; // 1\n font-size: 1em; // 2\n }\n\n // Text-level semantics\n // ==========================================================================\n\n // Remove the gray background on active links in IE 10.\n\n a {\n background-color: transparent;\n }\n\n // 1. Remove the bottom border in Chrome 57-\n // 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n\n abbr[title] {\n border-bottom: none; // 1\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n }\n\n // Add the correct font weight in Chrome, Edge, and Safari.\n\n b,\n strong {\n font-weight: bolder;\n }\n\n // 1. Correct the inheritance and scaling of font size in all browsers.\n // 2. Correct the odd `em` font sizing in all browsers.\n\n code,\n kbd,\n samp {\n font-family: monospace, monospace; // 1\n font-size: 1em; // 2\n }\n\n // Add the correct font size in all browsers.\n\n small {\n font-size: 80%;\n }\n\n // Prevent `sub` and `sup` elements from affecting the line height in\n // all browsers.\n\n sub,\n sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\n\n sub {\n bottom: -0.25em;\n }\n\n sup {\n top: -0.5em;\n }\n\n // Embedded content\n // ==========================================================================\n\n // Remove the border on images inside links in IE 10.\n\n img {\n border-style: none;\n }\n\n // Forms\n // ==========================================================================\n\n // 1. Change the font styles in all browsers.\n // 2. Remove the margin in Firefox and Safari.\n\n button,\n input,\n optgroup,\n select,\n textarea {\n font-family: inherit; // 1\n font-size: 100%; // 1\n line-height: 1.15; // 1\n margin: 0; // 2\n }\n\n // Show the overflow in IE.\n // 1. Show the overflow in Edge.\n\n button,\n input { // 1\n overflow: visible;\n }\n\n // Remove the inheritance of text transform in Edge, Firefox, and IE.\n // 1. Remove the inheritance of text transform in Firefox.\n\n button,\n select { // 1\n text-transform: none;\n }\n\n // Correct the inability to style clickable types in iOS and Safari.\n\n button,\n [type=\"button\"],\n [type=\"reset\"],\n [type=\"submit\"] {\n -webkit-appearance: button;\n }\n\n // Remove the inner border and padding in Firefox.\n\n button::-moz-focus-inner,\n [type=\"button\"]::-moz-focus-inner,\n [type=\"reset\"]::-moz-focus-inner,\n [type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n }\n\n // Restore the focus styles unset by the previous rule.\n\n button:-moz-focusring,\n [type=\"button\"]:-moz-focusring,\n [type=\"reset\"]:-moz-focusring,\n [type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n }\n\n // Correct the padding in Firefox.\n\n fieldset {\n padding: 0.35em 0.75em 0.625em;\n }\n\n // 1. Correct the text wrapping in Edge and IE.\n // 2. Correct the color inheritance from `fieldset` elements in IE.\n // 3. Remove the padding so developers are not caught out when they zero out\n // `fieldset` elements in all browsers.\n\n legend {\n box-sizing: border-box; // 1\n color: inherit; // 2\n display: table; // 1\n max-width: 100%; // 1\n padding: 0; // 3\n white-space: normal; // 1\n }\n\n // Add the correct vertical alignment in Chrome, Firefox, and Opera.\n\n progress {\n vertical-align: baseline;\n }\n\n // Remove the default vertical scrollbar in IE 10+.\n\n textarea {\n overflow: auto;\n }\n\n // 1. Add the correct box sizing in IE 10.\n // 2. Remove the padding in IE 10.\n\n [type=\"checkbox\"],\n [type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n }\n\n // Correct the cursor style of increment and decrement buttons in Chrome.\n\n [type=\"number\"]::-webkit-inner-spin-button,\n [type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n }\n\n // 1. Correct the odd appearance in Chrome and Safari.\n // 2. Correct the outline style in Safari.\n\n [type=\"search\"] {\n -webkit-appearance: textfield; // 1\n outline-offset: -2px; // 2\n }\n\n // Remove the inner padding in Chrome and Safari on macOS.\n\n [type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n\n // 1. Correct the inability to style clickable types in iOS and Safari.\n // 2. Change font properties to `inherit` in Safari.\n\n ::-webkit-file-upload-button {\n -webkit-appearance: button; // 1\n font: inherit; // 2\n }\n\n // Interactive\n // ==========================================================================\n\n // Add the correct display in Edge, IE 10+, and Firefox.\n\n details {\n display: block;\n }\n\n // Add the correct display in all browsers.\n\n summary {\n display: list-item;\n }\n\n // Misc\n // ==========================================================================\n\n // Add the correct display in IE 10+.\n\n template {\n display: none;\n }\n\n // Add the correct display in IE 10.\n\n [hidden] {\n display: none;\n }\n}\n","///\n/// Checks whether `$functions` exist in global scope.\n///\n/// @access private\n///\n/// @param {ArgList} $functions - list of functions to check for\n///\n/// @return {Bool} Whether or not there are missing dependencies\n///\n \n@function sl-missing-dependencies($functions...) {\n $missing-dependencies: ();\n \n @each $function in $functions {\n @if not function-exists($function) {\n $missing-dependencies: append($missing-dependencies, $function, comma);\n }\n }\n \n @if length($missing-dependencies) > 0 {\n @error 'Unmet dependencies! The following functions are required: #{$missing-dependencies}.';\n }\n\n @return length($missing-dependencies) > 0;\n}\n","///\n/// Returns truthiness of `$value`.\n///\n/// @access private\n///\n/// @param {*} $value - value to check\n///\n/// @return {Bool}\n///\n \n@function sl-is-true($value) {\n @return if($value == null, false, $value and $value != null and $value != '' and $value != ());\n}\n","///\n/// Returns whether `$list` contains `$value`.\n///\n/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-contain\n///\n/// @param {List} $list - list to check\n/// @param {*} $value - value to look for\n///\n/// @example\n/// sl-contain(a b c, a)\n/// // true\n///\n/// @example\n/// sl-contain(a b c, z)\n/// // false\n///\n/// @return {Bool}\n///\n\n@function sl-contain($list, $value) {\n @return not not index($list, $value);\n}\n\n///\n/// @requires sl-contain\n/// @alias sl-contain\n///\n \n@function sl-include($list, $value) {\n @return sl-contain($list, $value);\n}\n","/// Removes all false and null values from `$list`.\n///\n/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-purge\n///\n/// @requires sl-is-true\n/// @requires sl-to-list\n///\n/// @param {List} $list - list to purge\n///\n/// @example\n/// sl-purge(null a false b)\n/// // a b\n///\n/// @return {List}\n///\n\n@function sl-purge($list) {\n $_: sl-missing-dependencies('sl-is-true', 'sl-to-list');\n \n $result: ();\n\n @each $item in $list {\n @if sl-is-true($item) {\n $result: append($result, $item, list-separator($list));\n }\n }\n\n @return sl-to-list($result);\n}\n\n///\n/// @requires sl-purge\n/// @alias sl-purge\n///\n \n@function sl-clean($list) {\n @return sl-purge($list);\n}\n","///\n/// Removes value(s) `$value` from `$list`.\n///\n/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-remove\n///\n/// @requires sl-replace\n///\n/// @param {List} $list - list to update\n/// @param {*} $value - value to remove\n///\n/// @example\n/// sl-remove(a b c, a)\n/// // b c\n///\n/// @return {List}\n///\n\n@function sl-remove($list, $value) {\n $_: sl-missing-dependencies('sl-replace');\n\n @return sl-replace($list, $value, null);\n}\n\n///\n/// @requires sl-remove\n/// @alias sl-remove\n///\n\n@function sl-without($list, $value) {\n @return sl-remove($list, $value);\n}\n","///\n/// Replaces `$old` by `$new` in `$list`.\n///\n/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-replace\n///\n/// @requires sl-is-true\n/// @requires sl-purge\n/// @requires sl-to-list\n///\n/// @param {List} $list - list to update\n/// @param {*} $old - value to replace\n/// @param {*} $value - new value for $old\n///\n/// @example\n/// sl-replace(a b c, b, z)\n/// // a z c\n///\n/// @example\n/// sl-replace(a b c, y, z)\n/// // a b c\n/// \n/// @return {List}\n///\n \n@function sl-replace($list, $old, $value) {\n $_: sl-missing-dependencies('sl-is-true', 'sl-purge', 'sl-to-list');\n\n $running: true;\n\n @while $running {\n $index: index($list, $old);\n\n @if not $index {\n $running: false;\n }\n\n @else {\n $list: set-nth($list, $index, $value);\n }\n\n }\n\n $list: if(sl-is-true($value), $list, sl-purge($list));\n \n @return sl-to-list($list);\n}\n","///\n/// Casts `$value` into a list.\n///\n/// @ignore Documentation: http://at-import.github.io/SassyLists/documentation/#function-sl-to-list\n///\n/// @param {*} $value - value to cast to list\n/// @param {String} $separator [space] - separator to use\n///\n/// @example\n/// sl-to-list(a b c, comma)\n/// // a, b, c\n/// \n/// @return {List}\n///\n\n@function sl-to-list($value, $separator: list-separator($value)) {\n @return join((), $value, $separator);\n}\n\n///\n/// @requires sl-to-list\n/// @alias sl-to-list\n///\n\n@function sl-listify($value) {\n @return sl-to-list($value);\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n@import 'math';\n@import 'unit';\n@import 'value';\n@import 'direction';\n@import 'color';\n@import 'selector';\n@import 'flex';\n@import 'breakpoint';\n@import 'mixins';\n@import 'typography';\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n// sass-lint:disable no-color-literals, no-qualifying-elements\n\n////\n/// @group global\n////\n\n@import 'util/util';\n\n/// Font size attribute applied to `` and ``. We use 100% by default so the value is inherited from the user's browser settings.\n/// @type Number\n$global-font-size: 100% !default;\n\n/// Global width of your site. Used by the grid to determine row width.\n/// @type Number\n$global-width: rem-calc(1200) !default;\n\n/// Default line height for all type. `$global-lineheight` is 24px while `$global-font-size` is 16px\n/// @type Number\n$global-lineheight: 1.5 !default;\n\n/// Colors used for buttons, callouts, links, etc. There must always be a color called `primary`.\n/// @type Map\n$foundation-palette: (\n primary: #1779ba,\n secondary: #767676,\n success: #3adb76,\n warning: #ffae00,\n alert: #cc4b37,\n) !default;\n\n/// Color used for light gray UI items.\n/// @type Color\n$light-gray: #e6e6e6 !default;\n\n/// Color used for medium gray UI items.\n/// @type Color\n$medium-gray: #cacaca !default;\n\n/// Color used for dark gray UI items.\n/// @type Color\n$dark-gray: #8a8a8a !default;\n\n/// Color used for black ui items.\n/// @type Color\n$black: #0a0a0a !default;\n\n/// Color used for white ui items.\n/// @type Color\n$white: #fefefe !default;\n\n/// Background color of the body.\n/// @type Color\n$body-background: $white !default;\n\n/// Text color of the body.\n/// @type Color\n$body-font-color: $black !default;\n\n/// Font stack of the body.\n/// @type List\n$body-font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif !default;\n\n/// Set to `true` to enable antialiased type, using the `-webkit-font-smoothing` and `-moz-osx-font-smoothing` CSS properties.\n/// @type Boolean\n$body-antialiased: true !default;\n\n/// Global value used for margin on components.\n/// @type Number\n$global-margin: 1rem !default;\n\n/// Global value used for padding on components.\n/// @type Number\n$global-padding: 1rem !default;\n\n/// Global value used for positioning on components.\n/// @type Number\n$global-position: 1rem !default;\n\n/// Global font weight used for normal type.\n/// @type Keyword | Number\n$global-weight-normal: normal !default;\n\n/// Global font weight used for bold type.\n/// @type Keyword | Number\n$global-weight-bold: bold !default;\n\n/// Global value used for all elements that have a border radius.\n/// @type Number\n$global-radius: 0 !default;\n\n/// Global value used for all menu styles. Can be overwritten at individual menu component level.\n/// @type Number\n$global-menu-padding: 0.7rem 1rem !default;\n\n/// Global value used for all menu styles. Nested margin for submenu.\n$global-menu-nested-margin: 1rem !default;\n\n/// Sets the text direction of the CSS. Can be either `ltr` or `rtl`.\n/// @type Keyword\n$global-text-direction: ltr !default;\n\n/// Enables flexbox for components that support it.\n/// @type Boolean\n$global-flexbox: true !default;\n\n/// Enabled responsive breakpoints for prototypes if applicable\n/// @type Boolean\n$global-prototype-breakpoints: false !default;\n\n/// Button cursor's value, `auto` by default\n/// @type Keyword\n$global-button-cursor: auto !default;\n\n@if not map-has-key($foundation-palette, primary) {\n @error 'In $foundation-palette, you must have a color named \"primary\".';\n}\n\n// Internal variables used for text direction\n$global-left: if($global-text-direction == rtl, right, left);\n$global-right: if($global-text-direction == rtl, left, right);\n\n// Internal variable that contains the flex justifying options\n$-zf-flex-justify: -zf-flex-justify($global-text-direction);\n\n/// Global tolerance for color pick contrast.\n/// @type Number\n$global-color-pick-contrast-tolerance: 0 !default;\n\n// Internal variables used for colors\n@include add-foundation-colors;\n\n@mixin foundation-global-styles {\n @include foundation-normalize;\n\n // These styles are applied to a tag, which is read by the Foundation JavaScript\n .foundation-mq {\n font-family: '#{-zf-bp-serialize($breakpoints)}';\n }\n\n html {\n box-sizing: border-box;\n font-size: $global-font-size;\n }\n\n // Set box-sizing globally to handle padding and border widths\n *,\n *::before,\n *::after {\n box-sizing: inherit;\n }\n\n // Default body styles\n body {\n margin: 0;\n padding: 0;\n\n background: $body-background;\n\n font-family: $body-font-family;\n font-weight: $global-weight-normal;\n line-height: $global-lineheight;\n color: $body-font-color;\n\n @if ($body-antialiased) {\n -webkit-font-smoothing: antialiased; // sass-lint:disable-line no-vendor-prefixes\n -moz-osx-font-smoothing: grayscale; // sass-lint:disable-line no-vendor-prefixes\n }\n }\n\n img {\n // Get rid of gap under images by making them display: inline-block; by default\n display: inline-block;\n vertical-align: middle;\n\n // Grid defaults to get images and embeds to work properly\n max-width: 100%;\n height: auto;\n -ms-interpolation-mode: bicubic;\n }\n\n // Make sure textarea takes on height automatically\n textarea {\n height: auto;\n min-height: 50px;\n border-radius: $global-radius;\n }\n\n // Make select elements are 100% width by default\n select {\n box-sizing: border-box;\n width: 100%;\n border-radius: $global-radius;\n }\n\n // Styles Google Maps and MapQuest embeds properly\n // sass-lint:disable-line no-ids\n .map_canvas,\n .mqa-display {\n img,\n embed,\n object {\n max-width: none !important;\n }\n }\n\n // Reset