jekyll-bhautiki 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/_config.yml +1 -0
- data/_sass/common/mode.sass +3 -2
- data/_sass/common/nav.sass +4 -2
- data/_sass/common/side.sass +4 -2
- data/_sass/main.sass +8 -8
- data/assets/css/bhautiki.sass +1 -1
- data/assets/external/feather-icons/js/feather.min.js +1 -1
- data/assets/external/feather-icons/js/feather.min.js.map +1 -1
- data/assets/external/foundation-sites/css/foundation.min.css +1 -1
- data/assets/external/foundation-sites/css/foundation.min.css.map +1 -1
- data/assets/external/foundation-sites/js/foundation.min.js +1 -1
- data/assets/external/foundation-sites/js/foundation.min.js.map +1 -1
- data/assets/external/tocbot/js/tocbot.min.js +1 -1
- data/assets/js/main.js +1 -1
- data/assets/js/main.js.map +1 -1
- data/assets/js/post.js.map +1 -1
- metadata +3 -7
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../scss/util/_breakpoint.scss","../scss/components/_reveal.scss","../scss/vendor/normalize.scss","foundation.min.css","../scss/_global.scss","../scss/util/_mixins.scss","../scss/forms/_text.scss","../scss/forms/_checkbox.scss","../scss/forms/_label.scss","../scss/forms/_help-text.scss","../scss/forms/_input-group.scss","../scss/forms/_fieldset.scss","../scss/forms/_select.scss","../scss/forms/_error.scss","../scss/typography/_base.scss","../scss/typography/_helpers.scss","../scss/typography/_alignment.scss","../scss/typography/_print.scss","../scss/xy-grid/_classes.scss","../scss/xy-grid/_gutters.scss","../scss/xy-grid/_grid.scss","../scss/xy-grid/_cell.scss","../scss/xy-grid/_layout.scss","../scss/xy-grid/_collapse.scss","../scss/xy-grid/_position.scss","../scss/xy-grid/_frame.scss","../scss/components/_button.scss","../scss/components/_button-group.scss","../scss/components/_close-button.scss","../scss/components/_label.scss","../scss/components/_progress-bar.scss","../scss/components/_slider.scss","../scss/components/_switch.scss","../scss/components/_table.scss","../scss/components/_badge.scss","../scss/components/_breadcrumbs.scss","../scss/components/_callout.scss","../scss/components/_card.scss","../scss/components/_dropdown.scss","../scss/components/_pagination.scss","../scss/components/_tooltip.scss","../scss/components/_accordion.scss","../scss/components/_media-object.scss","../scss/components/_orbit.scss","../scss/components/_responsive-embed.scss","../scss/components/_tabs.scss","../scss/components/_thumbnail.scss","../scss/components/_menu.scss","../scss/components/_menu-icon.scss","../scss/components/_accordion-menu.scss","../scss/components/_drilldown.scss","../scss/components/_dropdown-menu.scss","../scss/components/_off-canvas.scss","../scss/components/_sticky.scss","../scss/components/_title-bar.scss","../scss/components/_top-bar.scss","../scss/components/_float.scss","../scss/components/_flex.scss","../scss/util/_flex.scss","../scss/components/_visibility.scss"],"names":[],"mappings":"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lDA,yBGkDA,MAAA,+BHlDA,yBGkDA,MAAA,+BHlDA,yBGkDA,MAAA,qBrBMI,aAAA,4BkBpEN,qBG8DE,MAAA,KH1DF,uBG0DE,MAAA,KHlDA,wBGkDA,MAAA,+BHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,qBHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,qBHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,qBHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,sBH9DF,4BG8DE,MAAA,KH1DF,8BG0DE,MAAA,KHlDA,yBGkDA,MAAA,+BHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,qBHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,qBHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,qBHlDA,0BGkDA,MAAA,gCHlDA,0BGkDA,MAAA,gCHlDA,0BGkDA,MAAA,uBrBMI,aAAA,4BkBpEN,2BG8DE,MAAA,KH1DF,6BG0DE,MAAA,KHlDA,wBGkDA,MAAA,+BHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,qBHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,qBHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,gCHlDA,wBGkDA,MAAA,qBHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,gCHlDA,yBGkDA,MAAA,uBHCA,gCC9II,aAAA,SAAA,YAAA,SnBmJA,aAAA,4BkBLJ,gCC9II,aAAA,UAAA,YAAA,WDoJJ,2CCpJI,aAAA,SAAA,YAAA,SnBmJA,aAAA,4BkBCJ,2CCpJI,aAAA,UAAA,YAAA,WDyJJ,sBCzJI,cAAA,QAAA,aAAA,QnBmJA,aAAA,4BkBMJ,sBCzJI,cAAA,SAAA,aAAA,UGAN,kBD6IE,MAAA,KC7IF,kBD6IE,MAAA,IC7IF,kBD6IE,MAAA,eC7IF,kBD6IE,MAAA,IC7IF,kBD6IE,MAAA,IC7IF,kBD6IE,MAAA,eC7IF,kBD6IE,MAAA,eC7IF,kBD6IE,MAAA,MrBMI,aAAA,4BsBnJN,mBD6IE,MAAA,KC7IF,mBD6IE,MAAA,IC7IF,mBD6IE,MAAA,eC7IF,mBD6IE,MAAA,IC7IF,mBD6IE,MAAA,IC7IF,mBD6IE,MAAA,eC7IF,mBD6IE,MAAA,eC7IF,mBD6IE,MAAA,OrBMI,aAAA,4BsBnJN,kBD6IE,MAAA,KC7IF,kBD6IE,MAAA,IC7IF,kBD6IE,MAAA,eC7IF,kBD6IE,MAAA,IC7IF,kBD6IE,MAAA,IC7IF,kBD6IE,MAAA,eC7IF,kBD6IE,MAAA,eC7IF,kBD6IE,MAAA,OC7IF,gCD6IE,MAAA,qBC7IF,gCD6IE,MAAA,oBC7IF,gCD6IE,MAAA,+BC7IF,gCD6IE,MAAA,oBC7IF,gCD6IE,MAAA,oBC7IF,gCD6IE,MAAA,+BC7IF,gCD6IE,MAAA,+BC7IF,gCD6IE,MAAA,sBrBMI,aAAA,4BsBnJN,gCD6IE,MAAA,sBC7IF,gCD6IE,MAAA,qBC7IF,gCD6IE,MAAA,gCC7IF,gCD6IE,MAAA,qBC7IF,gCD6IE,MAAA,qBC7IF,gCD6IE,MAAA,gCC7IF,gCD6IE,MAAA,gCC7IF,gCD6IE,MAAA,uBC7IF,iCD6IE,MAAA,sBC7IF,iCD6IE,MAAA,qBC7IF,iCD6IE,MAAA,gCC7IF,iCD6IE,MAAA,qBC7IF,iCD6IE,MAAA,qBC7IF,iCD6IE,MAAA,gCC7IF,iCD6IE,MAAA,gCC7IF,iCD6IE,MAAA,wBrBMI,aAAA,4BsBnJN,gCD6IE,MAAA,sBC7IF,gCD6IE,MAAA,qBC7IF,gCD6IE,MAAA,gCC7IF,gCD6IE,MAAA,qBC7IF,gCD6IE,MAAA,qBC7IF,gCD6IE,MAAA,gCC7IF,gCD6IE,MAAA,gCC7IF,gCD6IE,MAAA,wBH0DE,uBK9ME,aAAA,EAAA,YAAA,EAGF,6BAEI,aAAA,EAAA,YAAA,EAsBE,gCFyHR,MAAA,cEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,KrBMI,aAAA,4BuB/HI,iCFyHR,MAAA,cEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,IEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,IEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,IEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,MrBMI,aAAA,4BuB/HI,gCFyHR,MAAA,cEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,MHgEE,wBK7KE,aAAA,EAAA,YAAA,EAGF,8BAEI,cAAA,EAAA,aAAA,EvB8GF,aAAA,4BkBoDF,wBK9ME,aAAA,EAAA,YAAA,EAGF,8BAEI,aAAA,EAAA,YAAA,GvBqJF,aAAA,4BuBxII,iCFkIR,MAAA,cElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,IElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,IElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,IElIQ,kCFkIR,MAAA,eElIQ,kCFkIR,MAAA,eElIQ,kCFkIR,MAAA,MrBMI,aAAA,4BuB/HI,kCFyHR,MAAA,cEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,IEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,IEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,IEzHQ,mCFyHR,MAAA,eEzHQ,mCFyHR,MAAA,eEzHQ,mCFyHR,MAAA,MrBMI,aAAA,4BuB/HI,iCFyHR,MAAA,cEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,IEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,IEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,IEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,eEzHQ,kCFyHR,MAAA,MrBMI,aAAA,4BkB0DF,yBK7KE,aAAA,EAAA,YAAA,EAGF,+BAEI,cAAA,EAAA,aAAA,GvB8GF,aAAA,4BkBoDF,uBK9ME,aAAA,EAAA,YAAA,EAGF,6BAEI,aAAA,EAAA,YAAA,GvBqJF,aAAA,4BuBxII,gCFkIR,MAAA,cElIQ,gCFkIR,MAAA,eElIQ,gCFkIR,MAAA,IElIQ,gCFkIR,MAAA,eElIQ,gCFkIR,MAAA,eElIQ,gCFkIR,MAAA,IElIQ,gCFkIR,MAAA,eElIQ,gCFkIR,MAAA,eElIQ,gCFkIR,MAAA,IElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,MrBMI,aAAA,4BuBxII,iCFkIR,MAAA,cElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,IElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,IElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,eElIQ,iCFkIR,MAAA,IElIQ,kCFkIR,MAAA,eElIQ,kCFkIR,MAAA,eElIQ,kCFkIR,MAAA,MrBMI,aAAA,4BuB/HI,gCFyHR,MAAA,cEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,eEzHQ,gCFyHR,MAAA,IEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,eEzHQ,iCFyHR,MAAA,MrBMI,aAAA,4BkB0DF,wBK7KE,aAAA,EAAA,YAAA,EAGF,8BAEI,cAAA,EAAA,aAAA,GLsLJ,gBMnMF,YAAA,ENuME,+BMvMF,YAAA,uBNmME,gBMnMF,YAAA,cNuME,+BMvMF,YAAA,kCNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,mCNmME,gBMnMF,YAAA,INuME,+BMvMF,YAAA,wBNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,mCNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,mCNmME,gBMnMF,YAAA,INuME,+BMvMF,YAAA,wBNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,mCNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,mCNmME,gBMnMF,YAAA,INuME,+BMvMF,YAAA,wBNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,mCNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,mCxB2HI,aAAA,4BkBwEF,iBMnMF,YAAA,ENuME,gCMvMF,YAAA,wBNmME,iBMnMF,YAAA,cNuME,gCMvMF,YAAA,mCNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,oCNmME,iBMnMF,YAAA,INuME,gCMvMF,YAAA,yBNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,oCNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,oCNmME,iBMnMF,YAAA,INuME,gCMvMF,YAAA,yBNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,oCNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,oCNmME,iBMnMF,YAAA,INuME,gCMvMF,YAAA,yBNmME,kBMnMF,YAAA,eNuME,iCMvMF,YAAA,oCNmME,kBMnMF,YAAA,eNuME,iCMvMF,YAAA,qCxB2HI,aAAA,4BkBwEF,gBMnMF,YAAA,ENuME,+BMvMF,YAAA,wBNmME,gBMnMF,YAAA,cNuME,+BMvMF,YAAA,mCNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,oCNmME,gBMnMF,YAAA,INuME,+BMvMF,YAAA,yBNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,oCNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,oCNmME,gBMnMF,YAAA,INuME,+BMvMF,YAAA,yBNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,oCNmME,gBMnMF,YAAA,eNuME,+BMvMF,YAAA,oCNmME,gBMnMF,YAAA,INuME,+BMvMF,YAAA,yBNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,oCNmME,iBMnMF,YAAA,eNuME,gCMvMF,YAAA,qCNyNF,QE/OA,QAAA,YAAA,QAAA,aAAA,QAAA,YAAA,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QAAA,oBAAA,QAAA,eAAA,QAAA,YAAA,QAiCI,OAAA,MPuWE,MAAA,MAMJ,yBACE,OAAA,KlBjPA,aAAA,4BkBoPA,gCACE,OAAA,MlBrPF,aAAA,4BkBoPA,+BACE,OAAA,MAjSR,eCvGM,WAAA,SAAA,cAAA,SnBmJA,aAAA,4BkB5CN,eCvGM,WAAA,UAAA,cAAA,WD2GJ,qBGkCA,OAAA,qBFpIE,WAAA,QAAA,cAAA,QnB0IE,aAAA,4BkBjCA,qBG2BJ,OAAA,sBFpIE,WAAA,SAAA,cAAA,UDsEJ,qBG8DE,OAAA,KH1DF,uBG0DE,OAAA,KHlDA,wBGkDA,OAAA,8BHlDA,wBGkDA,OAAA,+BHlDA,wBGkDA,OAAA,oBHlDA,wBGkDA,OAAA,+BHlDA,wBGkDA,OAAA,+BHlDA,wBGkDA,OAAA,oBHlDA,wBGkDA,OAAA,+BHlDA,wBGkDA,OAAA,+BHlDA,wBGkDA,OAAA,oBHlDA,yBGkDA,OAAA,+BHlDA,yBGkDA,OAAA,+BHlDA,yBGkDA,OAAA,qBrBMI,aAAA,4BkBpEN,qBG8DE,OAAA,KH1DF,uBG0DE,OAAA,KHlDA,wBGkDA,OAAA,+BHlDA,wBGkDA,OAAA,gCHlDA,wBGkDA,OAAA,qBHlDA,wBGkDA,OAAA,gCHlDA,wBGkDA,OAAA,gCHlDA,wBGkDA,OAAA,qBHlDA,wBGkDA,OAAA,gCHlDA,wBGkDA,OAAA,gCHlDA,wBGkDA,OAAA,qBHlDA,yBGkDA,OAAA,gCHlDA,yBGkDA,OAAA,gCHlDA,yBGkDA,OAAA,sBH9DF,4BG8DE,OAAA,KH1DF,8BG0DE,OAAA,KHlDA,yBGkDA,OAAA,+BHlDA,yBGkDA,OAAA,gCHlDA,yBGkDA,OAAA,qBHlDA,yBGkDA,OAAA,gCHlDA,yBGkDA,OAAA,gCHlDA,yBGkDA,OAAA,qBHlDA,yBGkDA,OAAA,gCHlDA,yBGkDA,OAAA,gCHlDA,yBGkDA,OAAA,qBHlDA,0BGkDA,OAAA,gCHlDA,0BGkDA,OAAA,gCHlDA,0BGkDA,OAAA,uBrBMI,aAAA,4BkBpEN,2BG8DE,OAAA,KH1DF,6BG0DE,OAAA,KHlDA,wBGkDA,OAAA,+BHlDA,wBGkDA,OAAA,gCHlDA,wBGkDA,OA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","file":"foundation.min.css","sourcesContent":["// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group breakpoints\n////\n\n/// Patch to fix issue #12080\n$-zf-size: null;\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 - divide(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 `<meta>` 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 reveal\n////\n\n/// Default background color of a modal.\n/// @type Color\n$reveal-background: $white !default;\n\n/// Default width of a modal, with no class applied.\n/// @type Number\n$reveal-width: 600px !default;\n\n/// Default maximum width of a modal.\n/// @type Number\n$reveal-max-width: $global-width !default;\n\n/// Default padding inside a modal.\n/// @type Number\n$reveal-padding: $global-padding !default;\n\n/// Default border around a modal.\n/// @type Number\n$reveal-border: 1px solid $medium-gray !default;\n\n/// Default radius for modal.\n/// @type Number\n$reveal-radius: $global-radius !default;\n\n/// z-index for modals. The overlay uses this value, while the modal itself uses this value plus one.\n/// @type Number\n$reveal-zindex: 1005 !default;\n\n/// Background color of modal overlays.\n/// @type Color\n$reveal-overlay-background: rgba($black, 0.45) !default;\n\n\n// Placeholder selector for medium-and-up modals\n// Prevents duplicate CSS when defining multiple Reveal sizes\n// This should be in the same breakpoint then `@mixin reveal-modal-width`\n@include breakpoint(medium) {\n %reveal-centered {\n right: auto;\n left: auto;\n margin: 0 auto;\n }\n}\n\n\n/// Adds styles for a modal overlay.\n/// @param {Color} $background [$reveal-overlay-background] - Background color of the overlay.\n@mixin reveal-overlay($background: $reveal-overlay-background) {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: $reveal-zindex;\n\n display: none;\n background-color: $background;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n/// Adds base styles for a modal.\n@mixin reveal-modal-base {\n @include disable-mouse-outline;\n z-index: $reveal-zindex + 1;\n // Workaround android browser z-index bug\n backface-visibility: hidden;\n\n display: none;\n padding: $reveal-padding;\n\n border: $reveal-border;\n border-radius: $reveal-radius;\n background-color: $reveal-background;\n\n @include breakpoint(medium) {\n min-height: 0;\n }\n\n // Make sure rows don't have a min-width on them\n .column {\n min-width: 0;\n }\n\n // Strip margins from the last item in the modal\n > :last-child {\n margin-bottom: 0;\n }\n}\n\n/// Adjusts the width of a modal.\n/// @param {Number} $width - Width of the modal. Generally a percentage.\n/// @param {Number} $max-width [$reveal-max-width] - Maximum width of the modal.\n@mixin reveal-modal-width(\n $width: $reveal-width,\n $max-width: $reveal-max-width\n) {\n // Extends must be made outside of breakpoints for compatibility with newer Sass versions (libsass v3.5)\n @extend %reveal-centered;\n @include breakpoint(medium) {\n width: $width;\n max-width: $max-width;\n }\n}\n\n/// Creates a full-screen modal, which stretches the full width and height of the window.\n@mixin reveal-modal-fullscreen {\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n width: 100%;\n max-width: none;\n height: 100%;\n min-height: 100%;\n margin-left: 0;\n\n border: 0;\n border-radius: 0;\n}\n\n@mixin foundation-reveal {\n\n /// Disables the scroll when Reveal is shown to prevent the background from shifting\n html.is-reveal-open {\n position: fixed;\n width: 100%;\n overflow-y: hidden;\n\n &.zf-has-scroll {\n overflow-y: scroll;\n -webkit-overflow-scrolling: touch;\n }\n\n body { // sass-lint:disable-line no-qualifying-elements\n overflow-y: hidden;\n }\n }\n\n // Overlay\n .reveal-overlay {\n @include reveal-overlay;\n }\n\n // Modal container\n .reveal {\n @include reveal-modal-base;\n @include reveal-modal-width($reveal-width);\n position: relative;\n top: 100px;\n margin-right: auto;\n margin-left: auto;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n // Remove padding\n &.collapse {\n padding: 0;\n }\n\n // Sizing classes\n &.tiny { @include reveal-modal-width(30%); }\n &.small { @include reveal-modal-width(50%); }\n &.large { @include reveal-modal-width(90%); }\n\n // Full-screen mode\n &.full {\n @include reveal-modal-fullscreen;\n }\n\n @include breakpoint($-zf-zero-breakpoint only) {\n @include reveal-modal-fullscreen;\n }\n\n &.without-overlay {\n position: fixed;\n }\n }\n}\n","// sass-lint:disable no-vendor-prefixes\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: 0; // 1\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 // Disable outline when intent is clearly mouse and touch\n [data-whatintent=\"mouse\"],\n [data-whatintent=\"touch\"],\n [data-whatinput=\"mouse\"],\n [data-whatinput=\"touch\"] {\n *, *:focus {\n outline: none;\n }\n }\n\n // Disable iOS callouts when draggable is false\n [draggable=false] {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n }\n}\n",null,"// 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 `<html>` and `<body>`. 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 safe padding on the body for non-rectangular devices (i.e. phones with notches)\n/// @type Boolean\n$body-safe-padding: false !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 <meta> 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 @if ($body-safe-padding) {\n // using environment variables to account for non-rectangular displays e.g. phones with notches\n padding-top: env(safe-area-inset-top);\n padding-right: env(safe-area-inset-right);\n padding-bottom: env(safe-area-inset-bottom);\n padding-left: env(safe-area-inset-left);\n }\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 <button> styles created by most browsers\n button {\n @include disable-mouse-outline;\n padding: 0;\n appearance: none;\n border: 0;\n border-radius: $global-radius;\n background: transparent;\n line-height: 1;\n cursor: $global-button-cursor;\n }\n\n // Prevent text overflow on pre\n pre {\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n }\n\n // Make reset inherit font-family instead of settings sans-serif\n button,\n input,\n optgroup,\n select,\n textarea {\n font-family: inherit;\n }\n\n // Internal classes to show/hide elements in JavaScript\n .is-visible {\n display: block !important;\n }\n\n .is-hidden {\n display: none !important;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n// Patch to fix issue #12080\n$-zf-bp-value: null;\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-style: solid;\n border-width: $triangle-size;\n\n content: '';\n\n @if ($triangle-direction == down) {\n border-bottom-width: 0;\n border-color: $triangle-color transparent transparent;\n }\n @if ($triangle-direction == up) {\n border-top-width: 0;\n border-color: transparent transparent $triangle-color;\n }\n @if ($triangle-direction == right) {\n border-right-width: 0;\n border-color: transparent transparent transparent $triangle-color;\n }\n @if ($triangle-direction == left) {\n border-left-width: 0;\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. <div class=\"docs-example-burger\"></div>\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: divide($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,<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" width=\"32\" height=\"24\" viewBox=\"0 0 32 24\"><polygon points=\"0,0 32,0 16,24\" style=\"fill: #{$rgb}\"></polygon></svg>');\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(divide(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 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 forms\n////\n\n/// Font color of text inputs.\n/// @type Color\n$input-color: $black !default;\n\n/// Font color of placeholder text within text inputs.\n/// @type Color\n$input-placeholder-color: $medium-gray !default;\n\n/// Font family of text inputs.\n/// @type Font\n$input-font-family: inherit !default;\n\n/// Font size of text inputs.\n/// @type Number\n$input-font-size: rem-calc(16) !default;\n\n/// Font weight of text inputs.\n/// @type Keyword\n$input-font-weight: $global-weight-normal !default;\n\n/// Line height of text inputs.\n/// @type Keyword\n$input-line-height: $global-lineheight !default;\n\n/// Background color of text inputs.\n/// @type Color\n$input-background: $white !default;\n\n/// Background color of focused of text inputs.\n/// @type Color\n$input-background-focus: $white !default;\n\n/// Background color of disabled text inputs.\n/// @type Color\n$input-background-disabled: $light-gray !default;\n\n/// Border around text inputs.\n/// @type Border\n$input-border: 1px solid $medium-gray !default;\n\n/// Border around focused text inputs.\n/// @type Color\n$input-border-focus: 1px solid $dark-gray !default;\n\n/// Padding of text inputs.\n/// @type Color\n$input-padding: $form-spacing * 0.5 !default;\n\n/// Box shadow inside text inputs when not focused.\n/// @type Shadow\n$input-shadow: inset 0 1px 2px rgba($black, 0.1) !default;\n\n/// Box shadow outside text inputs when focused.\n/// @type Shadow\n$input-shadow-focus: 0 0 5px $medium-gray !default;\n\n/// Cursor to use when hovering over a disabled text input.\n/// @type Cursor\n$input-cursor-disabled: not-allowed !default;\n\n/// Properties to transition on text inputs.\n/// @type Transition\n$input-transition: box-shadow 0.5s, border-color 0.25s ease-in-out !default;\n\n/// Enables the up/down buttons that Chrome and Firefox add to `<input type='number'>` elements.\n/// @type Boolean\n$input-number-spinners: true !default;\n\n/// Radius for text inputs.\n/// @type Border\n$input-radius: $global-radius !default;\n\n/// Border radius for form buttons, defaulted to global-radius.\n/// @type Number\n$form-button-radius: $global-radius !default;\n\n@mixin form-element {\n $height: ($input-font-size * unitless-calc($input-line-height)) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')) - rem-calc(1);\n\n display: block;\n box-sizing: border-box;\n width: 100%;\n height: $height;\n margin: 0 0 $form-spacing;\n padding: $input-padding;\n\n border: $input-border;\n border-radius: $input-radius;\n background-color: $input-background;\n box-shadow: $input-shadow;\n\n font-family: $input-font-family;\n font-size: $input-font-size;\n font-weight: $input-font-weight;\n line-height: $input-line-height;\n color: $input-color;\n\n @if has-value($input-transition) {\n transition: $input-transition;\n }\n\n // Focus state\n &:focus {\n outline: none;\n border: $input-border-focus;\n background-color: $input-background-focus;\n box-shadow: $input-shadow-focus;\n\n @if has-value($input-transition) {\n transition: $input-transition;\n }\n }\n}\n\n@mixin foundation-form-text {\n // Text inputs\n #{text-inputs()},\n textarea {\n @include form-element;\n appearance: none;\n }\n\n // Text areas\n textarea {\n max-width: 100%;\n\n &[rows] {\n height: auto;\n }\n }\n\n input,\n textarea {\n // Disabled/readonly state\n &:disabled,\n &[readonly] {\n background-color: $input-background-disabled;\n cursor: $input-cursor-disabled;\n }\n }\n\n // Reset styles on button-like inputs\n [type='submit'],\n [type='button'] {\n appearance: none;\n border-radius: $form-button-radius;\n }\n\n // Reset Normalize setting content-box to search elements\n input[type='search'] { // sass-lint:disable-line no-qualifying-elements\n box-sizing: border-box;\n }\n\n // Number input styles\n [type='number'] {\n @if not $input-number-spinners {\n -moz-appearance: textfield; // sass-lint:disable-line no-vendor-prefixes\n\n &::-webkit-inner-spin-button,\n &::-webkit-outer-spin-button {\n -webkit-appearance: none; // sass-lint:disable-line no-vendor-prefixes\n margin: 0;\n }\n }\n }\n\n // Placeholder text\n ::placeholder {\n color: $input-placeholder-color;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n@mixin foundation-form-checkbox {\n [type='file'],\n [type='checkbox'],\n [type='radio'] {\n margin: 0 0 $form-spacing;\n }\n\n // Styles for input/label siblings\n [type='checkbox'] + label,\n [type='radio'] + label {\n display: inline-block;\n vertical-align: baseline;\n\n margin-#{$global-left}: $form-spacing * 0.5;\n margin-#{$global-right}: $form-spacing;\n margin-bottom: 0;\n\n &[for] {\n cursor: pointer;\n }\n }\n\n // Styles for inputs inside labels\n label > [type='checkbox'],\n label > [type='radio'] {\n margin-#{$global-right}: $form-spacing * 0.5;\n }\n\n // Normalize file input width\n [type='file'] {\n width: 100%;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Color for form labels.\n/// @type Color\n$form-label-color: $black !default;\n\n/// Font size for form labels.\n/// @type Number\n$form-label-font-size: rem-calc(14) !default;\n\n/// Font weight for form labels.\n/// @type Keyword\n$form-label-font-weight: $global-weight-normal !default;\n\n/// Line height for form labels. The higher the number, the more space between the label and its input field.\n/// @type Number\n$form-label-line-height: 1.8 !default;\n\n@mixin form-label {\n display: block;\n margin: 0;\n\n font-size: $form-label-font-size;\n font-weight: $form-label-font-weight;\n line-height: $form-label-line-height;\n color: $form-label-color;\n}\n\n@mixin form-label-middle {\n $input-border-width: get-border-value($input-border, width);\n\n margin: 0 0 $form-spacing;\n line-height: $global-lineheight;\n padding: ($form-spacing * 0.5 + rem-calc($input-border-width)) 0;\n}\n\n@mixin foundation-form-label {\n label {\n @include form-label;\n\n &.middle {\n @include form-label-middle;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Default color for help text.\n/// @type Color\n$helptext-color: $black !default;\n\n/// Default font size for help text.\n/// @type Number\n$helptext-font-size: rem-calc(13) !default;\n\n/// Default font style for help text.\n/// @type Keyword\n$helptext-font-style: italic !default;\n\n@mixin foundation-form-helptext {\n .help-text {\n $margin-top: ($form-spacing * 0.5) * -1;\n\n margin-top: $margin-top;\n font-size: $helptext-font-size;\n font-style: $helptext-font-style;\n color: $helptext-color;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Color of labels prefixed to an input.\n/// @type Color\n$input-prefix-color: $black !default;\n\n/// Background color of labels prefixed to an input.\n/// @type Color\n$input-prefix-background: $light-gray !default;\n\n/// Border around labels prefixed to an input.\n/// @type Border\n$input-prefix-border: 1px solid $medium-gray !default;\n\n/// Left/right padding of an pre/postfixed input label\n$input-prefix-padding: 1rem !default;\n\n@mixin foundation-form-prepostfix {\n $height: ($input-font-size * $input-line-height) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')) - rem-calc(1);\n\n .input-group {\n display: if($global-flexbox, flex, table);\n width: 100%;\n margin-bottom: $form-spacing;\n\n @if $global-flexbox {\n align-items: stretch;\n }\n\n > :first-child {\n &, &.input-group-button > * {\n border-radius: if($global-text-direction == rtl, 0 $input-radius $input-radius 0, $input-radius 0 0 $input-radius);\n }\n }\n\n > :last-child {\n &, &.input-group-button > * {\n border-radius: if($global-text-direction == rtl, $input-radius 0 0 $input-radius, 0 $input-radius $input-radius 0);\n }\n }\n }\n\n %input-group-child {\n margin: 0;\n white-space: nowrap;\n\n @if not $global-flexbox {\n display: table-cell;\n vertical-align: middle;\n }\n }\n\n .input-group-label {\n @extend %input-group-child;\n padding: 0 $input-prefix-padding;\n border: $input-prefix-border;\n background: $input-prefix-background;\n\n color: $input-prefix-color;\n text-align: center;\n white-space: nowrap;\n\n @if $global-flexbox {\n display: flex;\n flex: 0 0 auto;\n align-items: center;\n }\n @else {\n width: 1%;\n height: 100%;\n }\n\n @if has-value($input-prefix-border) {\n &:first-child {\n border-#{$global-right}: 0;\n }\n\n &:last-child {\n border-#{$global-left}: 0;\n }\n }\n }\n\n .input-group-field {\n @extend %input-group-child;\n border-radius: 0;\n\n @if $global-flexbox {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n min-width: 0;\n }\n }\n\n .input-group-button {\n @extend %input-group-child;\n padding-top: 0;\n padding-bottom: 0;\n text-align: center;\n\n @if $global-flexbox {\n display: flex;\n flex: 0 0 auto;\n }\n @else {\n width: 1%;\n height: 100%;\n }\n\n a,\n input,\n button,\n label {\n @extend %input-group-child;\n\n @if $global-flexbox {\n align-self: stretch;\n height: auto;\n }\n @else {\n height: $height;\n }\n padding-top: 0;\n padding-bottom: 0;\n font-size: $input-font-size;\n }\n }\n\n // Specificity bump needed to prevent override by buttons\n @if not $global-flexbox {\n .input-group {\n .input-group-button {\n display: table-cell;\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Default border around custom fieldsets.\n/// @type Border\n$fieldset-border: 1px solid $medium-gray !default;\n\n/// Default padding inside custom fieldsets.\n/// @type Number\n$fieldset-padding: rem-calc(20) !default;\n\n/// Default margin around custom fieldsets.\n/// @type Number\n$fieldset-margin: rem-calc(18 0) !default;\n\n/// Default padding between the legend text and fieldset border.\n/// @type Number\n$legend-padding: rem-calc(0 3) !default;\n\n@mixin fieldset {\n margin: $fieldset-margin;\n padding: $fieldset-padding;\n border: $fieldset-border;\n\n legend {\n // Covers up the fieldset's border to create artificial padding\n margin: 0;\n margin-#{$global-left}: rem-calc(-3);\n padding: $legend-padding;\n }\n}\n\n@mixin foundation-form-fieldset {\n fieldset {\n margin: 0;\n padding: 0;\n border: 0;\n }\n\n legend {\n max-width: 100%;\n margin-bottom: $form-spacing * 0.5;\n }\n\n .fieldset {\n @include fieldset;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Background color for select menus.\n/// @type Color\n$select-background: $white !default;\n\n/// Color of the dropdown triangle inside select menus. Set to `transparent` to remove it entirely.\n/// @type Color\n$select-triangle-color: $dark-gray !default;\n\n/// Default radius for select menus.\n/// @type Color\n$select-radius: $global-radius !default;\n\n@mixin form-select {\n $height: ($input-font-size * unitless-calc($input-line-height)) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')) - rem-calc(1);\n\n height: $height;\n margin: 0 0 $form-spacing;\n padding: $input-padding;\n\n appearance: none;\n border: $input-border;\n border-radius: $select-radius;\n background-color: $select-background;\n\n font-family: $input-font-family;\n font-size: $input-font-size;\n font-weight: $input-font-weight;\n line-height: $input-line-height;\n color: $input-color;\n\n @if $select-triangle-color != transparent {\n @include background-triangle($select-triangle-color);\n background-origin: content-box;\n background-position: $global-right (-$form-spacing) center;\n background-repeat: no-repeat;\n background-size: 9px 6px;\n\n padding-#{$global-right}: ($form-spacing * 1.5);\n }\n\n @if has-value($input-transition) {\n transition: $input-transition;\n }\n\n // Focus state\n &:focus {\n outline: none;\n border: $input-border-focus;\n background-color: $input-background-focus;\n box-shadow: $input-shadow-focus;\n\n @if has-value($input-transition) {\n transition: $input-transition;\n }\n }\n\n // Disabled state\n &:disabled {\n background-color: $input-background-disabled;\n cursor: $input-cursor-disabled;\n }\n\n // Hide the dropdown arrow shown in newer IE versions\n &::-ms-expand {\n display: none;\n }\n\n &[multiple] {\n height: auto;\n background-image: none;\n }\n &:not([multiple]) {\n padding-top: 0;\n padding-bottom: 0;\n }\n}\n\n@mixin foundation-form-select {\n select {\n @include form-select;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group abide\n////\n\n/// Sets if error styles should be added to inputs.\n/// @type Boolean\n$abide-inputs: true !default;\n\n/// Sets if error styles should be added to labels.\n/// @type Boolean\n$abide-labels: true !default;\n\n/// Background color to use for invalid text inputs.\n/// @type Color\n$input-background-invalid: get-color(alert) !default;\n\n/// Color to use for labels of invalid inputs.\n/// @type Color\n$form-label-color-invalid: get-color(alert) !default;\n\n/// Default font color for form error text.\n/// @type Color\n$input-error-color: get-color(alert) !default;\n\n/// Default font size for form error text.\n/// @type Number\n$input-error-font-size: rem-calc(12) !default;\n\n/// Default font weight for form error text.\n/// @type Keyword\n$input-error-font-weight: $global-weight-bold !default;\n\n/// Styles the background and border of an input field to have an error state.\n///\n/// @param {Color} $background [$alert-color] - Color to use for the background and border.\n/// @param {Number} $background-lighten [10%] - Lightness level of the background color.\n@mixin form-input-error(\n $background: $input-background-invalid,\n $background-lighten: 10%\n) {\n &:not(:focus) {\n border-color: $background;\n background-color: mix($background, $white, $background-lighten);\n\n &::placeholder {\n color: $background;\n }\n }\n}\n\n/// Adds error styles to a form element, using the values in the settings file.\n@mixin form-error {\n display: none;\n margin-top: $form-spacing * -0.5;\n margin-bottom: $form-spacing;\n\n font-size: $input-error-font-size;\n font-weight: $input-error-font-weight;\n color: $input-error-color;\n}\n\n@mixin foundation-form-error {\n @if $abide-inputs {\n // Error class for invalid inputs\n .is-invalid-input {\n @include form-input-error;\n }\n }\n\n @if $abide-labels {\n // Error class for labels of invalid outputs\n .is-invalid-label {\n color: $form-label-color-invalid;\n }\n }\n\n // Form error element\n .form-error {\n @include form-error;\n\n &.is-visible {\n display: block;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group typography-base\n////\n\n// Base Typography\n// - - - - - - - - - - - - - - -\n// These are styles applied to basic HTML tags, including:\n// - Paragraphs <p>\n// - Bold/italics <b> <strong> <i> <em>\n// - Small text <small>\n// - Headings <h1>-<h6>\n// - Anchors <a>\n// - Dividers <hr>\n// - Lists <ul> <ol> <dl>\n// - Blockquotes <blockquote>\n// - Code blocks <code>\n// - Abbreviations <abbr>\n// - Citations <cite>\n// - Keystrokes <kbd>\n\n/// Font family for header elements.\n/// @type String | List\n$header-font-family: $body-font-family !default;\n\n/// Font weight of headers.\n/// @type String\n$header-font-weight: $global-weight-normal !default;\n\n/// Font style (e.g. italicized) of headers.\n/// @type String\n$header-font-style: normal !default;\n\n/// Font stack used for elements that use monospaced type, such as code samples\n/// @type String | List\n$font-family-monospace: Consolas, 'Liberation Mono', Courier, monospace !default;\n\n/// Color of headers.\n/// @type Color\n$header-color: inherit !default;\n\n/// Line height of headers.\n/// @type Number\n$header-lineheight: 1.4 !default;\n\n/// Bottom margin of headers.\n/// @type Number\n$header-margin-bottom: 0.5rem !default;\n\n/// Styles for headings at various screen sizes. Each key is a breakpoint, and each value is a map of heading styles.\n/// @type Map\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) !default;\n\n// $header-styles map is built from $header-sizes in order to ensure downward compatibility\n// when $header-sizes is depreciated, $header-styles needs to get !default values like settings.scss\n@function build-from-header-sizes($header-sizes) {\n @warn 'Note, that $header-sizes has been replaced with $header-styles. $header-sizes still works, but it is going to be depreciated.';\n $header-styles: ();\n @each $size, $headers in $header-sizes {\n $header-map: ();\n @each $header, $font-size in $headers {\n $header-map: map-merge($header-map, ($header: ('font-size': $font-size)));\n }\n $header-styles: map-merge($header-styles, ($size: $header-map));\n }\n @return $header-styles;\n}\n\n// If it exists $headers-sizes is used to build $header-styles. See the documentation.\n@if variable-exists(header-sizes) {\n $header-styles: build-from-header-sizes($header-sizes);\n}\n\n/// Text rendering method of headers.\n/// @type String\n$header-text-rendering: optimizeLegibility !default;\n\n/// Font size of `<small>` elements.\n/// @type Number\n$small-font-size: 80% !default;\n\n/// Color of `<small>` elements when placed inside headers.\n/// @type Color\n$header-small-font-color: $medium-gray !default;\n\n/// Line height of text inside `<p>` elements.\n/// @type Number\n$paragraph-lineheight: 1.6 !default;\n\n/// Bottom margin of paragraphs.\n/// @type Number\n$paragraph-margin-bottom: 1rem !default;\n\n/// Text rendering method for paragraph text.\n/// @type String\n$paragraph-text-rendering: optimizeLegibility !default;\n\n/// Use the `.code-inline` component as default for `<code>` elements.\n/// @type Boolean\n$enable-code-inline: true !default;\n\n/// Default color for links.\n/// @type Color\n$anchor-color: $primary-color !default;\n\n/// Default color for links on hover.\n/// @type Color\n$anchor-color-hover: scale-color($anchor-color, $lightness: -14%) !default;\n\n/// Default text decoration for links.\n/// @type String\n$anchor-text-decoration: none !default;\n\n/// Default text decoration for links on hover.\n/// @type String\n$anchor-text-decoration-hover: none !default;\n\n/// Maximum width of a divider.\n/// @type Number\n$hr-width: $global-width !default;\n\n/// Default border for a divider.\n/// @type List\n$hr-border: 1px solid $medium-gray !default;\n\n/// Default margin for a divider.\n/// @type Number | List\n$hr-margin: rem-calc(20) auto !default;\n\n/// Line height for items in a list.\n/// @type Number\n$list-lineheight: $paragraph-lineheight !default;\n\n/// Bottom margin for items in a list.\n/// @type Number\n$list-margin-bottom: $paragraph-margin-bottom !default;\n\n/// Bullet type to use for unordered lists (e.g., `square`, `circle`, `disc`).\n/// @type String\n$list-style-type: disc !default;\n\n/// Positioning for bullets on unordered list items.\n/// @type String\n$list-style-position: outside !default;\n\n/// Left (or right) margin for lists.\n/// @type Number\n$list-side-margin: 1.25rem !default;\n\n/// Left (or right) margin for a list inside a list.\n/// @type Number\n$list-nested-side-margin: 1.25rem !default;\n\n/// Bottom margin for `<dl>` elements.\n/// @type Number\n$defnlist-margin-bottom: 1rem !default;\n\n/// Font weight for `<dt>` elements.\n/// @type String\n$defnlist-term-weight: $global-weight-bold !default;\n\n/// Spacing between `<dt>` and `<dd>` elements.\n/// @type Number\n$defnlist-term-margin-bottom: 0.3rem !default;\n\n/// Text color of `<blockquote>` elements.\n/// @type Color\n$blockquote-color: $dark-gray !default;\n\n/// Padding inside a `<blockquote>` element.\n/// @type Number | List\n$blockquote-padding: rem-calc(9 20 0 19) !default;\n\n/// Side border for `<blockquote>` elements.\n/// @type List\n$blockquote-border: 1px solid $medium-gray !default;\n\n/// Use the `.cite-block` component as default for `<cite>` elements.\n/// @type Boolean\n$enable-cite-block: true !default;\n\n/// Font family for `<kbd>` elements.\n/// @type String | List\n$keystroke-font: $font-family-monospace !default;\n\n/// Text color for `<kbd>` elements.\n/// @type Color\n$keystroke-color: $black !default;\n\n/// Background color for `<kbd>` elements.\n/// @type Color\n$keystroke-background: $light-gray !default;\n\n/// Padding for `<kbd>` elements.\n/// @type Number | List\n$keystroke-padding: rem-calc(2 4 0) !default;\n\n/// Border radius for `<kbd>` elements.\n/// @type Number | List\n$keystroke-radius: $global-radius !default;\n\n/// Bottom border style for `<abbr>` elements.\n/// @type List\n$abbr-underline: 1px dotted $black !default;\n\n@mixin foundation-typography-base {\n // Typography resets\n div,\n dl,\n dt,\n dd,\n ul,\n ol,\n li,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n pre,\n form,\n p,\n blockquote,\n th,\n td {\n margin: 0;\n padding: 0;\n }\n\n // Paragraphs\n p {\n margin-bottom: $paragraph-margin-bottom;\n\n font-size: inherit;\n line-height: $paragraph-lineheight;\n text-rendering: $paragraph-text-rendering;\n }\n\n // Emphasized text\n em,\n i {\n font-style: italic;\n line-height: inherit;\n }\n\n // Strong text\n strong,\n b {\n font-weight: $global-weight-bold;\n line-height: inherit;\n }\n\n // Small text\n small {\n font-size: $small-font-size;\n line-height: inherit;\n }\n\n // Headings\n h1, .h1,\n h2, .h2,\n h3, .h3,\n h4, .h4,\n h5, .h5,\n h6, .h6 {\n font-family: $header-font-family;\n font-style: $header-font-style;\n font-weight: $header-font-weight;\n color: $header-color;\n text-rendering: $header-text-rendering;\n\n small {\n line-height: 0;\n color: $header-small-font-color;\n }\n }\n\n // Heading styles\n @each $size, $headers in $header-styles {\n @include breakpoint($size) {\n @each $header, $header-defs in $headers {\n $font-size-temp: 1rem;\n #{$header}, .#{$header} {\n\n @if map-has-key($header-defs, font-size) {\n $font-size-temp: rem-calc(map-get($header-defs, font-size));\n font-size: $font-size-temp;\n } @else if map-has-key($header-defs, fs) {\n $font-size-temp: rem-calc(map-get($header-defs, fs));\n font-size: $font-size-temp;\n } @else if $size == $-zf-zero-breakpoint {\n font-size: $font-size-temp;\n }\n @if map-has-key($header-defs, line-height) {\n line-height: unitless-calc(map-get($header-defs, line-height), $font-size-temp);\n } @else if map-has-key($header-defs, lh) {\n line-height: unitless-calc(map-get($header-defs, lh), $font-size-temp);\n } @else if $size == $-zf-zero-breakpoint {\n line-height: unitless-calc($header-lineheight, $font-size-temp);\n }\n\n @if map-has-key($header-defs, margin-top) {\n margin-top: rem-calc(map-get($header-defs, margin-top));\n } @else if map-has-key($header-defs, mt) {\n margin-top: rem-calc(map-get($header-defs, mt));\n } @else if $size == $-zf-zero-breakpoint {\n margin-top: 0;\n }\n @if map-has-key($header-defs, margin-bottom) {\n margin-bottom: rem-calc(map-get($header-defs, margin-bottom));\n } @else if map-has-key($header-defs, mb) {\n margin-bottom: rem-calc(map-get($header-defs, mb));\n } @else if $size == $-zf-zero-breakpoint {\n margin-bottom: rem-calc($header-margin-bottom);\n }\n }\n }\n }\n }\n\n // Links\n a {\n line-height: inherit;\n color: $anchor-color;\n text-decoration: $anchor-text-decoration;\n\n cursor: pointer;\n\n &:hover,\n &:focus {\n color: $anchor-color-hover;\n @if $anchor-text-decoration-hover != $anchor-text-decoration {\n text-decoration: $anchor-text-decoration-hover;\n }\n }\n\n img {\n border: 0;\n }\n }\n\n // Horizontal rule\n hr {\n clear: both;\n\n max-width: $hr-width;\n height: 0;\n margin: $hr-margin;\n\n border-top: 0;\n border-right: 0;\n border-bottom: $hr-border;\n border-left: 0;\n }\n\n // Lists\n ul,\n ol,\n dl {\n margin-bottom: $list-margin-bottom;\n list-style-position: $list-style-position;\n line-height: $list-lineheight;\n }\n\n // List items\n li {\n font-size: inherit;\n }\n\n // Unordered lists\n ul {\n margin-#{$global-left}: $list-side-margin;\n list-style-type: $list-style-type;\n }\n\n // Ordered lists\n ol {\n margin-#{$global-left}: $list-side-margin;\n }\n\n // Nested unordered/ordered lists\n ul, ol {\n & & {\n margin-#{$global-left}: $list-nested-side-margin;\n margin-bottom: 0;\n }\n }\n\n // Definition lists\n dl {\n margin-bottom: $defnlist-margin-bottom;\n\n dt {\n margin-bottom: $defnlist-term-margin-bottom;\n font-weight: $defnlist-term-weight;\n }\n }\n\n // Blockquotes\n blockquote {\n margin: 0 0 $paragraph-margin-bottom;\n padding: $blockquote-padding;\n border-#{$global-left}: $blockquote-border;\n\n &, p {\n line-height: $paragraph-lineheight;\n color: $blockquote-color;\n }\n }\n\n // Inline Citations\n @if ($enable-cite-block == true) {\n cite {\n // Extending a class is not recommended.\n // TODO: Break the typography-base/typography-helpers separation\n @extend %cite-block;\n }\n }\n\n // Abbreviations\n abbr, abbr[title] {\n border-bottom: $abbr-underline;\n cursor: help;\n text-decoration: none;\n }\n\n // Figures\n figure {\n margin: 0;\n }\n\n // Code\n @if ($enable-code-inline == true) {\n code {\n @extend %code-inline;\n }\n }\n\n // Keystrokes\n kbd {\n margin: 0;\n padding: $keystroke-padding;\n\n background-color: $keystroke-background;\n\n font-family: $keystroke-font;\n color: $keystroke-color;\n\n @if has-value($keystroke-radius) {\n border-radius: $keystroke-radius;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group typography-helpers\n////\n\n/// Default font size for lead paragraphs.\n/// @type Number\n$lead-font-size: $global-font-size * 1.25 !default;\n\n/// Default line height for lead paragraphs.\n/// @type String\n$lead-lineheight: 1.6 !default;\n\n/// Default line height for subheaders.\n/// @type Number\n$subheader-lineheight: 1.4 !default;\n\n/// Default font color for subheaders.\n/// @type Color\n$subheader-color: $dark-gray !default;\n\n/// Default font weight for subheaders.\n/// @type String\n$subheader-font-weight: $global-weight-normal !default;\n\n/// Default top margin for subheaders.\n/// @type Number\n$subheader-margin-top: 0.2rem !default;\n\n/// Default bottom margin for subheaders.\n/// @type Number\n$subheader-margin-bottom: 0.5rem !default;\n\n/// Default font size for statistic numbers.\n/// @type Number\n$stat-font-size: 2.5rem !default;\n\n/// Text color for `.cite-block` component.\n/// @type Color\n$cite-color: $dark-gray !default;\n\n/// Font size for `.cite-block` component.\n/// @type Number\n$cite-font-size: rem-calc(13) !default;\n\n/// Pseudo content for `.cite-block` component.\n/// @type String\n$cite-pseudo-content: '\\2014 \\0020' !default;\n\n/// Text color of `.code-inline` and `.code-block` components.\n/// @type Color\n$code-color: $black !default;\n\n/// Font family of `.code-inline` and `.code-block` components.\n/// @type String | List\n$code-font-family: $font-family-monospace !default;\n\n/// Font weight of text in `.code-inline` and `.code-block` components.\n/// @type String\n$code-font-weight: $global-weight-normal !default;\n\n/// Background color of `.code-inline` and `.code-block` components.\n/// @type Color\n$code-background: $light-gray !default;\n\n/// Border around `.code-inline` and `.code-block` components.\n/// @type List\n$code-border: 1px solid $medium-gray !default;\n\n/// Padding around text of the `.code-inline` component.\n/// @type Number | List\n$code-padding: rem-calc(2 5 1) !default;\n\n/// Padding around text of the `.code-block` component.\n/// @type Number | List\n$code-block-padding: 1rem !default;\n\n/// Margin under the `.code-block` component.\n/// @type Number\n$code-block-margin-bottom: 1.5rem !default;\n\n@mixin cite-block {\n display: block;\n color: $cite-color;\n font-size: $cite-font-size;\n\n &:before {\n content: $cite-pseudo-content;\n }\n}\n\n/// Add basic styles for a code helper.\n/// See `code-inline` and `code-block` mixins.\n@mixin code-style {\n border: $code-border;\n background-color: $code-background;\n\n font-family: $code-font-family;\n font-weight: $code-font-weight;\n color: $code-color;\n}\n\n/// Make code helper from the `code-style` mixin inline.\n/// Used to generate `.code-inline`\n@mixin code-inline {\n display: inline;\n max-width: 100%;\n word-wrap: break-word;\n\n padding: $code-padding;\n}\n\n/// Make code helper from the `code-style` mixin a block.\n/// Used to generate `.code-block`\n@mixin code-block {\n display: block;\n overflow: auto;\n white-space: pre;\n\n padding: $code-block-padding;\n margin-bottom: $code-block-margin-bottom;\n}\n\n@mixin foundation-typography-helpers {\n // Use to create a subheading under a main header\n // Make sure you pair the two elements in a <header> element, like this:\n // <header>\n // <h1>Heading</h1>\n // <h2>Subheading</h2>\n // </header>\n .subheader {\n margin-top: $subheader-margin-top;\n margin-bottom: $subheader-margin-bottom;\n\n font-weight: $subheader-font-weight;\n line-height: $subheader-lineheight;\n color: $subheader-color;\n }\n\n // Use to style an introductory lead, deck, blurb, etc.\n .lead {\n font-size: $lead-font-size;\n line-height: $lead-lineheight;\n }\n\n // Use to style a large number to display a statistic\n .stat {\n font-size: $stat-font-size;\n line-height: 1;\n\n p + & {\n margin-top: -1rem;\n }\n }\n\n ul, ol {\n // Use to remove numbers from ordered list & bullets from unordered list\n &.no-bullet {\n margin-#{$global-left}: 0;\n list-style: none;\n }\n }\n\n %cite-block {\n @include cite-block;\n }\n\n .cite-block {\n @extend %cite-block;\n }\n\n %code-inline {\n @include code-style;\n @include code-inline;\n }\n\n .code-inline {\n @extend %code-inline;\n }\n\n .code-block {\n @include code-style;\n @include code-block;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n@mixin foundation-text-alignment {\n @each $size in $breakpoint-classes {\n @include breakpoint($size) {\n @each $align in (left, right, center, justify) {\n @if $size != $-zf-zero-breakpoint {\n .#{$size}-text-#{$align} {\n text-align: $align;\n }\n }\n @else {\n .text-#{$align} {\n text-align: $align;\n }\n }\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n/// If `true`, all elements will have transparent backgrounds when printed, to save on ink.\n/// @type Boolean\n/// @group global\n$print-transparent-backgrounds: true !default;\n\n/// If `true`, displays next to all links their \"href\" when printed.\n/// @type Boolean\n/// @group global\n$print-hrefs: true !default;\n\n// sass-lint:disable-all\n\n@mixin foundation-print-styles {\n .show-for-print { display: none !important; }\n\n @media print {\n * {\n // Ensure a \"black-on-white\" print by removing backgrounds,\n // using black text everywhere and forcing the browser to economize ink.\n @if $print-transparent-backgrounds {\n background: transparent !important;\n color: black !important; // Black prints faster: h5bp.com/s\n print-color-adjust: economy;\n }\n // Otherwise, prevent any economy by the browser.\n @else {\n print-color-adjust: exact;\n }\n\n box-shadow: none !important;\n text-shadow: none !important;\n }\n\n .show-for-print { display: block !important; }\n .hide-for-print { display: none !important; }\n\n table.show-for-print { display: table !important; }\n thead.show-for-print { display: table-header-group !important; }\n tbody.show-for-print { display: table-row-group !important; }\n tr.show-for-print { display: table-row !important; }\n td.show-for-print { display: table-cell !important; }\n th.show-for-print { display: table-cell !important; }\n\n // Display the URL of a link after the text\n a,\n a:visited { text-decoration: underline;}\n @if $print-hrefs {\n a[href]:after { content: ' (' attr(href) ')'; }\n }\n\n // Don't display the URL for images or JavaScript/internal links\n .ir a:after,\n a[href^='javascript:']:after,\n a[href^='#']:after { content: ''; }\n\n // Display what an abbreviation stands for after the text\n abbr[title]:after { content: ' (' attr(title) ')'; }\n\n // Prevent page breaks in the middle of a blockquote or preformatted text block\n pre,\n blockquote {\n border: 1px solid $dark-gray;\n page-break-inside: avoid;\n }\n\n // h5bp.com/t\n thead { display: table-header-group; }\n\n tr,\n img { page-break-inside: avoid; }\n\n img { max-width: 100% !important; }\n\n @page { margin: 0.5cm; }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n // Avoid page breaks after a heading\n h2,\n h3 { page-break-after: avoid; }\n\n // Helper to re-allow page breaks in the middle of certain elements (e.g. pre, blockquote, tr)\n .print-break-inside {\n page-break-inside: auto;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n// Margin Grid classes\n@mixin xy-base-grid-classes {\n\n // Grid Container\n .grid-container {\n @include xy-grid-container;\n\n &.fluid {\n @include xy-grid-container(100%);\n }\n\n &.full {\n @include xy-grid-container(100%, 0);\n }\n }\n\n // Base grid styles\n .grid-x {\n @include xy-grid;\n }\n\n .cell {\n @include xy-cell(full, $gutter-type: none);\n\n &.auto {\n @include xy-cell-base(auto);\n }\n\n &.shrink {\n @include xy-cell-base(shrink);\n }\n\n }\n .grid-x {\n > .auto {\n @include xy-cell-size(auto, $gutter-type: none);\n }\n\n > .shrink {\n @include xy-cell-size(shrink, $gutter-type: none);\n }\n }\n\n // Auto width\n @include -zf-each-breakpoint() {\n // This is a bit of a hack/workaround, see these issues & PRs for the backstory:\n // https://github.com/foundation/foundation-sites/issues/10244\n // https://github.com/foundation/foundation-sites/pull/10222 and\n // https://github.com/foundation/foundation-sites/pull/10164\n .grid-x {\n $str: \"> .#{$-zf-size}-shrink, > .#{$-zf-size}-full\";\n @for $i from 1 through $grid-columns {\n $str: $str + \", > .#{$-zf-size}-#{$i}\";\n }\n #{$str} {\n flex-basis: auto;\n }\n }\n }\n\n @include -zf-each-breakpoint() {\n // Responsive \"auto\" modifier\n @if not($-zf-size == $-zf-zero-breakpoint) {\n .grid-x > .#{$-zf-size}-auto {\n @include xy-cell(auto, $gutter-type: none);\n }\n }\n\n %-xy-cell-base-shrink-horizontal-#{$-zf-size} {\n @include xy-cell-base(shrink);\n }\n\n // Responsive \"shrink\" modifier\n @if not($-zf-size == $-zf-zero-breakpoint) {\n .grid-x > .#{$-zf-size}-shrink {\n @extend %-xy-cell-base-shrink-horizontal-#{$-zf-size};\n @include xy-cell-size(shrink, $gutter-type: none);\n }\n }\n\n // Responsive width modifiers\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n .grid-x > .#{$-zf-size}-#{$i} {\n @extend %-xy-cell-base-shrink-horizontal-#{$-zf-size};\n @include xy-cell-size($i, $gutter-type: none);\n }\n }\n }\n\n // Reset width when using `.grid-margin-x` not on `.grid-x`\n .grid-margin-x:not(.grid-x) > .cell {\n width: auto;\n }\n\n // Reset height when using `.grid-margin-y` not on `.grid-y`\n .grid-margin-y:not(.grid-y) > .cell {\n height: auto;\n }\n}\n\n@mixin -xy-breakpoint-cell-classes($class-breakpoint, $gutter-breakpoint, $vertical) {\n $prefix: if($class-breakpoint == $-zf-zero-breakpoint, '', '#{$class-breakpoint}-');\n > .#{$prefix}auto {\n @include xy-cell-size(auto, $vertical: $vertical);\n }\n\n > .#{$prefix}shrink {\n @include xy-cell-size(shrink, $vertical: $vertical);\n }\n\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n $classname: if($vertical, '.#{$class-breakpoint}-#{$i}', '.#{$class-breakpoint}-#{$i}');\n\n > #{$classname} {\n @include xy-cell-size($i, $vertical: $vertical);\n }\n }\n}\n\n// Margin Grid classes\n@mixin xy-margin-grid-classes(\n $gutter-position: left right,\n $vertical: false,\n $wrapping-selector: '.grid-margin-x'\n){\n #{$wrapping-selector} {\n @include xy-gutters($negative: true, $gutter-position: $gutter-position);\n\n // Base cell styles\n > .cell {\n @include xy-cell($vertical: $vertical, $output: (size gutters));\n }\n\n // base styles need to all be before the auto and shrink styles\n @include -zf-each-breakpoint() {\n @if(type-of($grid-margin-gutters) == 'map' and map-has-key($grid-margin-gutters, $-zf-size) and $-zf-size != $-zf-zero-breakpoint) {\n > .cell {\n @include xy-cell($vertical: $vertical, $output: (size gutters));\n }\n }\n }\n\n @include -zf-each-breakpoint() {\n\n // This is purely for responsive gutters - the margin grid has to go back and adjust widths (or heights)\n // for all prior breakpoints.\n // As their gutter is defined with their width/height, even breakpoint without a new margin must be\n // generated to not having their width/height overrided by re-adjusted smaller breakpoints.\n @if(type-of($grid-margin-gutters) == 'map' and map-has-key($grid-margin-gutters, $-zf-size)) {\n @each $bp in -zf-breakpoints-less-than($-zf-size) {\n @include -xy-breakpoint-cell-classes($bp, $-zf-size, $vertical);\n }\n }\n\n @include -xy-breakpoint-cell-classes($-zf-size, $-zf-size, $vertical);\n }\n }\n}\n\n// Padding Grid classes\n@mixin xy-padding-grid-classes {\n .grid-padding-x {\n\n // Negative margin for nested grids\n .grid-padding-x {\n @include xy-gutters($negative: true);\n }\n\n // Negative margin for grids within `grid-container/grid-container.fluid`\n // This allows margin and padding grids to line up with eachother\n .grid-container:not(.full) > & {\n @include xy-gutters($negative: true);\n }\n\n // Base cell styles\n > .cell {\n @include xy-gutters($gutters: $grid-padding-gutters, $gutter-type: padding);\n }\n }\n}\n\n// Block Grid classes\n@mixin xy-block-grid-classes($margin-grid: true, $padding-grid: true) {\n @if $padding-grid {\n @include -zf-each-breakpoint {\n @for $i from 1 through $xy-block-grid-max {\n .#{$-zf-size}-up-#{$i} {\n @include xy-grid-layout($n: $i, $selector: '.cell', $gutter-type: padding, $output: (size));\n }\n }\n }\n }\n\n @if $margin-grid {\n @include -zf-each-breakpoint {\n @for $i from 1 through $xy-block-grid-max {\n // This is purely for responsive gutters - the margin grid has to go back and adjust widths (or heights)\n // for prior breakpoints based on the responsive gutter.\n @if(type-of($grid-margin-gutters) == 'map' and map-has-key($grid-margin-gutters, $-zf-size)) {\n @each $bp in -zf-breakpoints-less-than($-zf-size) {\n @if(map-has-key($grid-margin-gutters, $bp)) {\n .grid-margin-x.#{$bp}-up-#{$i} {\n @include xy-grid-layout($n: $i, $selector: '.cell', $gutter-type: margin, $output: (size));\n }\n }\n }\n }\n }\n @for $i from 1 through $xy-block-grid-max {\n .grid-margin-x.#{$-zf-size}-up-#{$i} {\n @include xy-grid-layout($n: $i, $selector: '.cell', $gutter-type: margin, $output: (size));\n }\n }\n }\n }\n}\n\n// Collapse classes\n@mixin xy-collapse-grid-classes($margin-grid: true, $padding-grid: true) {\n @each $bp in $breakpoint-classes {\n @if $margin-grid {\n .#{$bp}-margin-collapse {\n @include xy-grid-collapse($gutter-type: margin, $min-breakpoint: $bp);\n }\n }\n\n @if $padding-grid {\n .#{$bp}-padding-collapse {\n @include xy-grid-collapse($gutter-type: padding, $min-breakpoint: $bp);\n }\n }\n }\n}\n\n// Offset classes\n@mixin xy-offset-cell-classes {\n @include -zf-each-breakpoint {\n @for $i from 1 through $grid-columns {\n // Offsets\n $o: $i - 1;\n\n .#{$-zf-size}-offset-#{$o} {\n @include xy-cell-offset($o, $gutters: $grid-padding-gutters, $gutter-type: padding);\n }\n\n .grid-margin-x > .#{$-zf-size}-offset-#{$o} {\n @include xy-cell-offset($o);\n }\n }\n }\n}\n\n// Vertical Grid classes\n@mixin xy-vertical-grid-classes(\n $margin-grid: true,\n $padding-grid: true\n) {\n\n // @include -zf-each-breakpoint() {\n // @if not($-zf-size == $-zf-zero-breakpoint) {\n // }\n // }\n\n .grid-y {\n @include xy-grid(vertical, false);\n\n\n > .cell {\n @include xy-cell-reset();\n }\n\n > .auto {\n @include xy-cell-size(auto, $gutter-type: none, $vertical: true);\n }\n\n > .shrink {\n @include xy-cell-size(shrink, $gutter-type: none, $vertical: true);\n }\n\n\n @include -zf-each-breakpoint() {\n // This is a bit of a hack/workaround, see these issues and PRs for the backstory:\n // https://github.com/foundation/foundation-sites/issues/10244\n // https://github.com/foundation/foundation-sites/pull/10222 and\n // https://github.com/foundation/foundation-sites/pull/10164\n $str: \"> .#{$-zf-size}-shrink, > .#{$-zf-size}-full\";\n @for $i from 1 through $grid-columns {\n $str: $str + \", > .#{$-zf-size}-#{$i}\";\n }\n #{$str} {\n flex-basis: auto;\n }\n }\n\n @include -zf-each-breakpoint() {\n // Responsive \"auto\" modifier\n @if not($-zf-size == $-zf-zero-breakpoint) {\n > .#{$-zf-size}-auto {\n @include xy-cell(auto, $gutter-type: none, $vertical: true);\n }\n }\n\n %-xy-cell-base-shrink-vertical-#{$-zf-size} {\n @include xy-cell-base(shrink);\n }\n\n // Responsive \"shrink\" modifier\n @if not($-zf-size == $-zf-zero-breakpoint) {\n > .#{$-zf-size}-shrink {\n @extend %-xy-cell-base-shrink-vertical-#{$-zf-size};\n @include xy-cell-size(shrink, $gutter-type: none, $vertical: true);\n }\n }\n\n // Responsive width modifiers\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n > .#{$-zf-size}-#{$i} {\n @extend %-xy-cell-base-shrink-vertical-#{$-zf-size};\n @include xy-cell-size($i, $gutter-type: none, $vertical: true);\n }\n }\n\n }\n }\n\n @if $padding-grid {\n .grid-padding-y {\n // Negative margin for nested grids\n .grid-padding-y {\n @include xy-gutters($negative: true, $gutter-position: top bottom);\n }\n\n // Base cell styles\n > .cell {\n @include xy-gutters($gutters: $grid-padding-gutters, $gutter-type: padding, $gutter-position: top bottom);\n }\n }\n }\n\n @if $margin-grid {\n @include xy-margin-grid-classes(top bottom, true, '.grid-margin-y');\n }\n\n}\n\n@mixin xy-frame-grid-classes($vertical-grid: true, $margin-grid: true) {\n // Framed grid styles\n .grid-frame {\n @include xy-grid-frame;\n }\n\n .cell .grid-frame {\n width: 100%; // Same as include with $nested, but with less css\n }\n\n .cell-block {\n @include xy-cell-block();\n }\n\n .cell-block-y {\n @include xy-cell-block(true);\n }\n\n\n .cell-block-container {\n @include xy-cell-block-container();\n }\n\n\n @include -zf-each-breakpoint(false) {\n\n .#{$-zf-size}-grid-frame {\n @include xy-grid-frame;\n }\n\n .cell .#{$-zf-size}-grid-frame {\n width: 100%; // Same as include with $nested, but with less css\n }\n\n .#{$-zf-size}-cell-block {\n @include xy-cell-block();\n }\n\n .#{$-zf-size}-cell-block-container {\n @include xy-cell-block-container();\n }\n\n .#{$-zf-size}-cell-block-y {\n @include xy-cell-block(true);\n }\n }\n\n @if $vertical-grid {\n .grid-y {\n &.grid-frame {\n @include xy-grid-frame(true);\n width: auto;\n }\n\n @include -zf-each-breakpoint(false) {\n &.#{$-zf-size}-grid-frame {\n @include xy-grid-frame(true);\n width: auto;\n }\n\n }\n }\n .cell {\n .grid-y.grid-frame {\n height: 100%; // Same as include with $nested, but with less css\n }\n @include -zf-each-breakpoint(false) {\n .grid-y.#{$-zf-size}-grid-frame {\n height: 100%; // Same as include with $nested, but with less css\n }\n }\n }\n }\n @if $margin-grid {\n @include xy-margin-grid-classes(top bottom, true, '.grid-margin-y');\n .grid-frame.grid-margin-y {\n @include xy-grid-frame(true, false, $grid-margin-gutters, $include-base: false);\n }\n @include -zf-each-breakpoint(false) {\n .grid-margin-y.#{$-zf-size}-grid-frame {\n @include xy-grid-frame(true, false, $grid-margin-gutters, $-zf-size, false);\n }\n }\n }\n}\n\n// Final classes\n@mixin foundation-xy-grid-classes(\n $base-grid: true,\n $margin-grid: true,\n $padding-grid: true,\n $block-grid: true,\n $collapse: true,\n $offset: true,\n $vertical-grid: true,\n $frame-grid: true\n) {\n\n // Base grid styles\n @if($base-grid) {\n @include xy-base-grid-classes();\n }\n\n // Margin grid\n @if($margin-grid) {\n @include xy-margin-grid-classes();\n }\n\n // Padding grid\n @if($padding-grid) {\n @include xy-padding-grid-classes();\n }\n\n // Block grid\n @if($block-grid) {\n @include xy-block-grid-classes($margin-grid, $padding-grid);\n }\n\n // Collapse gutters\n @if($collapse) {\n @include xy-collapse-grid-classes($margin-grid, $padding-grid);\n }\n\n // Offset gutters\n @if($offset) {\n @include xy-offset-cell-classes();\n }\n\n // Vertical grid\n @if($vertical-grid) {\n @include xy-vertical-grid-classes($margin-grid, $padding-grid);\n }\n\n @if ($frame-grid) {\n @include xy-frame-grid-classes($vertical-grid, $margin-grid)\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Create gutters for a cell/container.\n///\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts either margin or padding.\n/// @param {List} $gutter-position [right left] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination.\n/// @param {Boolean} $negative [false] - Whether to apply the gutter as a negative value. Commonly used for nested grids.\n@mixin xy-gutters(\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $gutter-position: right left,\n $negative: false\n) {\n $operator: if($negative, '-', '');\n\n // If we have declared negative gutters, force type to `margin.\n $gutter-type: if($negative, 'margin', $gutter-type);\n\n // Output our margin gutters.\n @if (type-of($gutters) == 'map') {\n @include -zf-breakpoint-value(auto, $gutters) {\n $gutter: rem-calc($-zf-bp-value) * 0.5;\n\n // Loop through each gutter position\n @each $value in $gutter-position {\n #{$gutter-type}-#{$value}: unquote(\"#{$operator}#{$gutter}\");\n }\n }\n }\n @else if (type-of($gutters) == 'number') {\n $gutter: rem-calc($gutters) * 0.5;\n\n // Loop through each gutter position\n @each $value in $gutter-position {\n #{$gutter-type}-#{$value}: unquote(\"#{$operator}#{$gutter}\");\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Creates a max width container, designed to house your grid content.\n///\n/// @param {Number} $width [$grid-container] - a width to limit the container to.\n/// @param {Number} $padding [$grid-container-padding] - paddings of the container.\n@mixin xy-grid-container(\n $width: $grid-container,\n $padding: $grid-container-padding\n) {\n @include xy-gutters($gutters: $padding, $gutter-type: padding);\n\n max-width: $width;\n margin-left: auto;\n margin-right: auto;\n}\n\n/// Creates a container for your flex cells.\n///\n/// @param {Keyword} $direction [horizontal] - Either horizontal or vertical direction of cells within.\n/// @param {Boolean} $wrap [true] - If the cells within should wrap or not.\n@mixin xy-grid(\n $direction: horizontal,\n $wrap: true\n) {\n $direction: if($direction == 'horizontal', row, column);\n $wrap: if($wrap, wrap, nowrap);\n\n display: flex;\n flex-flow: $direction $wrap;\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Returns the appropriate CSS flex value for a cell base.\n///\n/// @param {Keyword} $size [full] - The size of your cell. Accepts `full`, `auto`, `shrink`, `grow`, or any other value representing a cell size (it will be treated as `shrink`).\n///\n/// @returns {List} The cell flex property value.\n@function xy-cell-base($size: full) {\n @if ($size == 'auto') {\n @return 1 1 0;\n }\n @else if ($size == 'grow') {\n @return 1 0 auto;\n }\n @else if ($size == 'shrink' or $size == 'full' or zf-is-fraction($size, $allow-no-denominator: true)) {\n @return 0 0 auto;\n }\n @return null;\n}\n\n/// Calculate the size of a cell gutters.\n///\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, returns the responsive gutters map `$gutters`. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n///\n/// @returns {Number|Map} The cell gutter size or the responsive gutters map.\n@function xy-cell-gutters(\n $gutters: $grid-margin-gutters,\n $breakpoint: null\n) {\n // For `auto`, returns the responsive map `$gutters`.\n @if ($breakpoint == 'auto') {\n @return $gutters;\n }\n\n // Use the contextual breakpoint by default.\n $breakpoint: -zf-current-breakpoint($breakpoint);\n\n @if ($breakpoint) {\n @return -zf-get-bp-val($gutters, $breakpoint);\n }\n @else {\n @return -zf-get-bp-val($gutters, $-zf-zero-breakpoint) or 0;\n }\n}\n\n/// Returns the percentage size of a cell.\n///\n/// @param {Number|List} $size [$grid-columns] - Size to make the cell. You can pass a value in multiple formats, such as `6`, `50%`, `1 of 2` or `1/3`.\n///\n/// @returns {Number} Size of the cell (in percent).\n@function xy-cell-size(\n $size: $grid-columns\n) {\n @return fraction-to-percentage($size, $denominator: $grid-columns);\n}\n\n/// Returns the appropriate CSS value for a cell size.\n///\n/// Gutters-related arguments are required for cells with margin gutters (by default) as the gutter is included in the width.\n///\n/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full`, `auto`, `shrink` or any fraction like `6`, `50%`, `1 of 2` or `1/2`.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, returns a map of sizes adapted to responsive gutters. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n///\n/// @returns {Number|String|Map} The cell sizing property value, or a responsive map of them.\n@function xy-cell-size-css(\n $size: full,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: null\n) {\n $margin-gutter: 0;\n\n @if ($size == 'auto' or $size == 'shrink') {\n @return auto;\n }\n\n // For cells with margin gutters, the gutter is included in the width.\n @if ($gutter-type == 'margin') {\n $margin-gutter: xy-cell-gutters($gutters, $breakpoint);\n @if ($margin-gutter == null) {\n @error 'xy-cell-size: no gutters were found in `$gutters` for \"$breakpoint: #{$breakpoint}\"';\n }\n }\n\n // Calculate the cell size (number)\n $size-raw: if($size == 'full', 100%, xy-cell-size($size));\n\n // Calculate the cell CSS size including gutters (string)\n // If the cell has responsive margin gutters, return a responsive map of sizes.\n @if type-of($margin-gutter) == 'map' {\n $responsive-css-sizes: ();\n\n @each $bp, $mg in $margin-gutter {\n $mgc: rem-calc($mg);\n @if $mgc == 0 {\n $mgc: 0rem;\n }\n $size-css: if($mg == 0, $size-raw, calc(#{$size-raw} - #{$mg}));\n $responsive-css-sizes: map-merge($responsive-css-sizes, ($bp: $size-css));\n }\n\n @return $responsive-css-sizes;\n }\n // Otherwise, return a single CSS size.\n @else {\n // Make sure that 0 is translated in 0rem for calc()\n $mgc: rem-calc($margin-gutter);\n @if $mgc == 0 {\n $mgc: 0rem;\n }\n $css-size: if($margin-gutter == 0, $size-raw, calc(#{$size-raw} - #{$mgc}));\n @return $css-size;\n }\n}\n\n/// Sets base flex properties for cells.\n///\n/// @param {Keyword} $size [full] - The size of your cell. Accepts `full`, `auto`, `shrink`, `grow`, or any other value representing a cell size (it will be treated as `shrink`).\n@mixin xy-cell-base($size: full) {\n $base: xy-cell-base($size);\n\n flex: #{$base};\n\n // Set base styles for \"full\" only\n @if($size == 'full') {\n min-height: 0;\n min-width: 0;\n }\n}\n\n/// Resets a cells width (or height if vertical is true) as well as strips its gutters.\n///\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n@mixin xy-cell-reset($vertical: true) {\n $direction: if($vertical == true, height, width);\n #{$direction}: auto;\n max-#{$direction}: none;\n}\n\n/// Sets sizing properties for cells.\n///\n/// Gutters-related arguments are required for cells with margin gutters (by default) as the gutter is included in the width.\n///\n/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full` (100% width), `auto` (use all available space), `shrink` (use only the required space) or any fraction (`6`, `50%`, `1 of 2` or `1/2`...).\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, generates sizes adapted for responsive gutters. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n@mixin xy-cell-size(\n $size: full,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: null,\n $vertical: false\n) {\n $sizes: xy-cell-size-css($size, $gutters, $gutter-type, $breakpoint);\n $direction: if($vertical == true, height, width);\n\n @if (type-of($sizes) == 'map') {\n @include -zf-breakpoint-value(auto, $sizes) {\n #{$direction}: $-zf-bp-value;\n }\n }\n @else {\n #{$direction}: $sizes;\n }\n}\n\n/// Sets gutters properties for cells.\n///\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {List} $gutter-position [null] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination. By default `right left` for horizontal cells and `top bottom` for vertical cells.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, generates responsive gutters. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Direction of the gutters to output. See `$gutter-position`.\n@mixin xy-cell-gutters(\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $gutter-position: null,\n $breakpoint: null,\n $vertical: false\n) {\n // Get the default gutter position according to cell direction\n @if($gutter-position == null) {\n $gutter-position: if($vertical == true, top bottom, left right);\n }\n\n // Get the gutter width for this breakpoint\n $gutter-width: xy-cell-gutters($gutters, $breakpoint);\n @if ($gutter-width == null) {\n @error 'xy-cell-gutters: no gutters were found in `$gutters` for \"$breakpoint: #{$breakpoint}\"';\n }\n\n @if ($gutter-type and $gutter-type != none) {\n @include xy-gutters($gutter-width, $gutter-type, $gutter-position);\n }\n}\n\n/// Creates a cell for your grid.\n///\n/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full` (100% width), `auto` (use all available space), `shrink` (use only the required space) or any fraction (`6`, `50%`, `1 of 2` or `1/2`...).\n/// @param {Boolean} $gutter-output [null] - [DEPRECATED] Whether or not to output gutters.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {List} $gutter-position [null] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination. By default `right left` for horizontal cells and `top bottom` for vertical cells.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, generates responsive gutters. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n/// @param {List} $output [(base size gutters)] - Cell parts to output. You will need to generate others parts of the cell seperately, it may not work properly otherwise.\n@mixin xy-cell(\n $size: full,\n $gutter-output: null,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $gutter-position: null,\n $breakpoint: null,\n $vertical: false,\n $output: (base size gutters)\n) {\n // Default for $gutter-output\n @if ($gutter-output != null) {\n @warn 'xy-cell: $gutter-output is deprecated and will be removed. See migration notes at https://git.io/foundation-6-6-0';\n @if ($gutter-output == false) {\n $output: sl-remove($output, gutters);\n }\n }\n\n @if (index($output, base)) {\n @include xy-cell-base($size);\n }\n @if (index($output, size)) {\n @include xy-cell-size($size, $gutters, $gutter-type, $breakpoint, $vertical);\n }\n @if (index($output, gutters)) {\n @include xy-cell-gutters($gutters, $gutter-type, $gutter-position, $breakpoint, $vertical);\n }\n}\n\n/// Creates a single breakpoint sized grid. Used to generate our grid classes.\n///\n/// `xy-cell-static()` is deprecated and will be removed.\n/// Use `xy-cell()` instead with `$output: (size gutters)` to not generate the cell base.\n/// See migration notes at https://git.io/foundation-6-6-0\n///\n/// @deprecated v6.6.0\n///\n/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full` (100% width), `auto` (use all available space), `shrink` (use only the required space) or any fraction (`6`, `50%`, `1 of 2` or `1/2`...).\n/// @param {Boolean} $gutter-output [true] - Whether or not to output gutters. Always `true` for margin gutters.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Map or single value for gutters.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n@mixin xy-cell-static(\n $size: full,\n $gutter-output: true,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: $-zf-zero-breakpoint,\n $vertical: false\n) {\n @warn 'xy-cell-static() mixin is deprecated and will be removed. Use \"xy-cell()\" instead. See migration notes at https://git.io/foundation-6-6-0';\n\n $gutter: -zf-get-bp-val($gutters, $breakpoint);\n $gutter-position: if($vertical == true, top bottom, left right);\n\n $-gutter-output: if($gutter-type == 'margin', true, $gutter-output);\n $-gutter-margin: if($gutter-type == 'margin', $gutter, 0);\n\n @include -xy-cell-properties($size, $-gutter-margin, $vertical);\n @if ($-gutter-output) {\n @include xy-gutters($gutter, $gutter-type, $gutter-position);\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Sizes child elements so that `$n` number of items appear on each row.\n///\n/// @param {Number} $n - Number of elements to display per row.\n/// @param {String} $selector ['.cell'] - Selector(s) to use for child elements.\n/// @param {Boolean} $gutter-output [null] - [DEPRECATED] Whether or not to output gutters.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {List} $gutter-position [null] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination. By default `right left` for horizontal cells and `top bottom` for vertical cells.\n/// @param {String} $breakpoint [null] - The breakpoint to use for the cell generation. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n/// @param {List} $output [(base size gutters)] - Cell parts to output. You will need to generate others parts of the cell seperately, it may not work correctly otherwise.\n@mixin xy-grid-layout(\n $n,\n $selector: '.cell',\n $gutter-output: null,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $gutter-position: null,\n $breakpoint: null,\n $vertical: false,\n $output: (base size gutters)\n) {\n $size: percentage(divide(1, $n));\n\n & > #{$selector} {\n @include xy-cell($size, $gutter-output, $gutters, $gutter-type, $gutter-position, $breakpoint, $vertical, $output);\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Collapses the grid a cells within it.\n///\n/// @param {String} $selector [.cell] - The child element to remove the gutter from.\n/// @param {Keyword} $gutter-type [margin] - The type of gutter to remove.\n/// @param {List} $gutter-position [right left] - The positions to remove gutters from. Accepts `top`, `bottom`, `left`, `right` in any combination.\n/// @param {Keyword} $min-breakpoint [$-zf-zero-breakpoint] - Minimum breakpoint in `$breakpoint-classes` for which to collapse the gutter.\n@mixin xy-grid-collapse(\n $selector: '.cell',\n $gutter-type: margin,\n $gutter-position: right left,\n $min-breakpoint: $-zf-zero-breakpoint\n) {\n // First, lets negate any margins on the top level\n @if ($gutter-type == 'margin') {\n\n @include breakpoint($min-breakpoint) {\n @each $value in $gutter-position {\n margin-#{$value}: 0;\n }\n\n > #{$selector} {\n @each $value in $gutter-position {\n margin-#{$value}: 0;\n }\n }\n }\n\n $excluded-bps: -zf-breakpoints-less-than($min-breakpoint);\n\n // Output new widths to not include gutters\n @each $bp in $breakpoint-classes {\n @if(sl-contain($excluded-bps, $bp)) {\n @include breakpoint($min-breakpoint) {\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n > .#{$bp}-#{$i} {\n @include xy-cell-size($i, $gutter-type: none);\n }\n }\n }\n } @else {\n @include breakpoint($bp) {\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n > .#{$bp}-#{$i} {\n @include xy-cell-size($i, $gutter-type: none);\n }\n }\n }\n }\n }\n }\n @else {\n\n @include breakpoint($min-breakpoint) {\n @each $value in $gutter-position {\n margin-#{$value}: 0;\n }\n\n > #{$selector} {\n @each $value in $gutter-position {\n padding-#{$value}: 0;\n }\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Returns the appropriate CSS value to offset a cell.\n///\n/// @param {Number|List} $n - Size to offset by. You can pass in any value accepted by the `xy-cell()` mixin, such as `6`, `50%`, or `1 of 2`.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] Map of gutters or single value to use for responsive gutters.\n/// @param {Keyword} $gutter-type [margin] The type of gutter to use. Can be `margin` or `padding`\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n///\n/// @returns {Number|String} The cell offset property value.\n@function xy-cell-offset(\n $n,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: null\n) {\n $breakpoint: -zf-current-breakpoint($breakpoint, $default: $-zf-zero-breakpoint);\n $size: xy-cell-size($n);\n\n $offset: $size;\n @if ($gutter-type == 'margin') {\n // Make sure that 0 is translated in 0rem for calc()\n $gutter: rem-calc(xy-cell-gutters($gutters, $breakpoint));\n @if $gutter == 0 {\n $gutter: 0rem;\n }\n $offset: if($gutter == 0, $size, calc(#{$size} + #{$gutter} / 2));\n }\n @return $offset;\n}\n\n/// Offsets a column to the right/bottom by `$n` columns.\n///\n/// @param {Number|List} $n - Size to offset by. You can pass in any value accepted by the `xy-cell()` mixin, such as `6`, `50%`, or `1 of 2`.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] Map of gutters or single value to use for responsive gutters.\n/// @param {Keyword} $gutter-type [margin] The type of gutter to use. Can be `margin` or `padding`\n/// @param {Number|Array|Keyword} $breakpoint [null] - Breakpoint to use for `$gutters`. It can be a breakpoint name, list of breakpoints or `auto` for all breakpoints. If a list is given, media-queries will be generated. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] Sets the direction of the offset. If set to true will apply margin-top instead.\n@mixin xy-cell-offset(\n $n,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: null,\n $vertical: false\n) {\n $breakpoint: -zf-current-breakpoint($breakpoint, $default: $-zf-zero-breakpoint);\n $direction: if($vertical, 'top', $global-left);\n\n @include -zf-each-breakpoint-in($breakpoint, $media-queries: 'for-lists') {\n $offset: xy-cell-offset($n, $gutters, $gutter-type);\n margin-#{$direction}: #{$offset};\n }\n}\n","// sass-lint:disable no-vendor-prefixes\n\n/// Modifies a grid to give it \"frame\" behavior (no overflow, no wrap, stretch behavior)\n///\n/// @param {Boolean} $vertical [false] - Is grid vertical or horizontal. Should match grid.\n/// @param {Boolean} $nested [false] - Is grid nested or not. If nested is true this sets the frame to 100% height, otherwise will be 100vh.\n/// @param {Number|Map} $gutters [null] - Map or single value for gutters.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from.\n/// @param {Boolean} $include-base [true] - Include the base styles that don't vary per breakpoint.\n@mixin xy-grid-frame(\n $vertical: false,\n $nested: false,\n $gutters: null,\n $breakpoint: null,\n $include-base: true\n) {\n\n @if $include-base {\n overflow: hidden;\n position: relative;\n flex-wrap: nowrap;\n align-items: stretch;\n }\n\n @if $breakpoint == null and type-of($gutters) == 'map' {\n @include -zf-each-breakpoint() {\n @include xy-grid-frame($vertical, $nested, $gutters, $-zf-size, false);\n }\n } @else {\n // Get our gutters if applicable\n $gutter: -zf-get-bp-val($gutters, $breakpoint);\n\n // If we have a gutter, add it to the width/height\n @if $gutter {\n @if $vertical == true {\n $unit: if($nested == true, 100%, 100vh);\n $gutter: rem-calc($gutter);\n // Make sure that 0 is translated in 0rem for calc()\n @if $gutter == 0 {\n $gutter: 0rem;\n }\n height: calc(#{$unit} + #{$gutter});\n } @else {\n $unit: if($nested == true, 100%, 100vw);\n $gutter: rem-calc($gutter);\n // Make sure that 0 is translated in 0rem for calc()\n @if $gutter == 0 {\n $gutter: 0rem;\n }\n width: calc(#{$unit} + #{$gutter});\n }\n }\n @else {\n @if $vertical == true {\n height: if($nested == true, 100%, 100vh);\n } @else {\n width: if($nested == true, 100%, 100vw);\n }\n }\n }\n}\n\n/// Modifies a cell to give it \"block\" behavior (overflow auto, inertial scrolling)\n///\n/// @param {Boolean} $vertical [false] - Is grid vertical or horizontal. Should match grid.\n@mixin xy-cell-block(\n $vertical: false\n) {\n $property: if($vertical == true, 'overflow-y', 'overflow-x');\n\n @if $vertical == true {\n overflow-y: auto;\n max-height: 100%;\n min-height: 100%;\n } @else {\n overflow-x: auto;\n max-width: 100%;\n }\n\n -webkit-overflow-scrolling: touch;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n}\n\n/// Container for inside a grid frame containing multiple blocks. Typically used\n/// as a modifier for a `.cell` to allow the cell to pass along flex sizing\n/// constraints / from parents to children.\n@mixin xy-cell-block-container() {\n display: flex;\n flex-direction: column;\n max-height: 100%;\n\n > .grid-x {\n max-height: 100%;\n flex-wrap: nowrap;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group button\n////\n\n/// Font family for button elements.\n/// @type Font\n$button-font-family: inherit !default;\n\n/// Font weight for button elements.\n/// Ignored if null (default)\n/// @type Font-Weight\n$button-font-weight: null !default;\n\n/// Padding inside buttons.\n/// @type List\n$button-padding: 0.85em 1em !default;\n\n/// Margin around buttons.\n/// @type List\n$button-margin: 0 0 $global-margin 0 !default;\n\n/// Default fill for buttons. Can either be `solid` or `hollow`.\n/// @type Keyword\n$button-fill: solid !default;\n\n/// Default background color for buttons.\n/// @type Color\n$button-background: $primary-color !default;\n\n/// Background color on hover for buttons.\n/// @type Color\n$button-background-hover: scale-color($button-background, $lightness: -15%) !default;\n\n/// Font color for buttons.\n/// @type List\n$button-color: $white !default;\n\n/// Alternative font color for buttons.\n/// @type List\n$button-color-alt: $black !default;\n\n/// Border radius for buttons, defaulted to global-radius.\n/// @type Number\n$button-radius: $global-radius !default;\n\n/// Border for buttons, transparent by default\n/// @type List\n$button-border: 1px solid transparent !default;\n\n/// Border width for hollow outline buttons\n/// @type Number\n$button-hollow-border-width: 1px !default;\n\n/// Sizes for buttons.\n/// @type Map\n$button-sizes: (\n tiny: 0.6rem,\n small: 0.75rem,\n default: 0.9rem,\n large: 1.25rem,\n) !default;\n\n/// Coloring classes. A map of classes to output in your CSS, like `.secondary`, `.success`, and so on.\n/// @type Map\n$button-palette: $foundation-palette !default;\n\n/// opacity for a disabled button.\n/// @type List\n$button-opacity-disabled: 0.25 !default;\n\n/// Background color lightness on hover for buttons.\n/// @type Number\n$button-background-hover-lightness: -20% !default;\n\n/// Color lightness on hover for hollow buttons.\n/// @type Number\n$button-hollow-hover-lightness: -50% !default;\n\n// Internal: flip from margin-right to margin-left for defaults\n@if $global-text-direction == 'rtl' {\n $button-margin: 0 0 $global-margin $global-margin !default;\n}\n\n/// transitions for buttons.\n/// @type List\n$button-transition: background-color 0.25s ease-out, color 0.25s ease-out !default;\n\n/// Additional responsive classes for .expanded\n/// @type Boolean\n$button-responsive-expanded: false !default;\n\n// TODO: Document button-base() mixin\n@mixin button-base {\n @include disable-mouse-outline;\n display: inline-block;\n vertical-align: middle;\n margin: $button-margin;\n\n @if (type-of($button-padding) == 'map') {\n @each $size, $padding in $button-padding {\n @include breakpoint($size) {\n padding: $padding;\n }\n }\n }\n @else {\n padding: $button-padding;\n }\n\n border: $button-border;\n border-radius: $button-radius;\n transition: $button-transition;\n font-family: $button-font-family;\n font-size: map-get($button-sizes, default);\n font-weight: $button-font-weight;\n -webkit-appearance: none; // sass-lint:disable-line no-vendor-prefixes\n line-height: 1;\n text-align: center;\n cursor: pointer;\n}\n\n/// Expands a button to make it full-width.\n/// @param {Boolean} $expand [true] - Set to `true` to enable the expand behavior. Set to `false` to reverse this behavior.\n@mixin button-expand($expand: true) {\n @if $expand {\n display: block;\n width: 100%;\n margin-right: 0;\n margin-left: 0;\n }\n @else {\n display: inline-block;\n width: auto;\n margin: $button-margin;\n }\n}\n\n/// Sets the base styles of a hollow or clear button filling according to `$fill`.\n/// See mixin `button-fill-style` for the filling styles.\n/// @param {Keyword} $fill [$button-fill] - Type of filling between `hollow` and `clear`. `solid` has no effects.\n@mixin button-fill(\n $fill: $button-fill\n) {\n @if $fill == hollow {\n @include button-hollow;\n }\n @else if $fill == clear {\n @include button-clear;\n }\n}\n\n/// Sets the visual styles of a solid/hollow/clear button filling according to `$fill`.\n/// See mixins `button-style`, `button-hollow-style` and `button-clear-style` for effects of visual styling parameters.\n/// @param {Keyword} $fill [$button-fill] - Type of filling between `hollow` and `clear`.\n/// @param {Color} $background [$button-background] - -\n/// @param {Color} $background-hover [$button-background-hover] - -\n/// @param {Color} $color [$button-color] - -\n@mixin button-fill-style(\n $fill: $button-fill,\n $background: $button-background,\n $background-hover: $button-background-hover,\n $color: $button-color\n) {\n @if $fill == solid {\n @include button-style($background, $background-hover, $color);\n }\n @else if $fill == hollow {\n @include button-hollow-style($background);\n }\n @else if $fill == clear {\n @include button-clear-style($background);\n }\n}\n\n/// Sets the visual style of a button.\n/// @param {Color} $background [$button-background] - Background color of the button.\n/// @param {Color} $background-hover [$button-background-hover] - Background color of the button on hover. Set to `auto` to have the mixin automatically generate a hover color.\n/// @param {Color} $color [$button-color] - Text color of the button. Set to `auto` to automatically generate a color based on the background color.\n@mixin button-style(\n $background: $button-background,\n $background-hover: $button-background-hover,\n $color: $button-color,\n $background-hover-lightness: $button-background-hover-lightness\n) {\n @if $color == auto {\n $color: color-pick-contrast($background, ($button-color, $button-color-alt));\n }\n\n @if $background-hover == auto {\n $background-hover: scale-color($background, $lightness: $background-hover-lightness);\n }\n\n // Default and disabled states\n &,\n &.disabled, &[disabled],\n &.disabled:hover, &[disabled]:hover,\n &.disabled:focus, &[disabled]:focus {\n background-color: $background;\n color: $color;\n }\n\n &:hover, &:focus {\n background-color: $background-hover;\n color: $color;\n }\n}\n\n/// Sets the base styles of a hollow button.\n/// See mixin `button-hollow-style` for the filling styles.\n@mixin button-hollow {\n &, &.disabled, &[disabled] {\n &, &:hover, &:focus {\n background-color: transparent;\n }\n }\n}\n\n/// Sets the visual style of a hollow button.\n/// @param {Color} $color [$button-background] - Text and border color of the button.\n/// @param {Color} $hover-lightness [$button-hollow-hover-lightness] - Color lightness on hover.\n/// @param {Color} $border-width [$button-hollow-border-width] - Border width of the button.\n@mixin button-hollow-style(\n $color: $button-background,\n $hover-lightness: $button-hollow-hover-lightness,\n $border-width: $button-hollow-border-width\n) {\n $color-hover: scale-color($color, $lightness: $hover-lightness);\n\n // Default and disabled states\n &,\n &.disabled, &[disabled],\n &.disabled:hover, &[disabled]:hover,\n &.disabled:focus, &[disabled]:focus {\n border: $border-width solid $color;\n color: $color;\n }\n\n &:hover, &:focus {\n border-color: $color-hover;\n color: $color-hover;\n }\n}\n\n/// Sets the base styles of a clear button.\n/// See mixin `button-clear-style` for the filling styles.\n@mixin button-clear {\n &, &.disabled, &[disabled] {\n &, &:hover, &:focus {\n border-color: transparent;\n background-color: transparent;\n }\n }\n}\n\n/// Sets the visual style of a clear button.\n/// @param {Color} $color [$button-background] - Text color of the button.\n/// @param {Color} $hover-lightness [$button-hollow-hover-lightness] - Color lightness on hover.\n@mixin button-clear-style(\n $color: $button-background,\n $hover-lightness: $button-hollow-hover-lightness\n) {\n $color-hover: scale-color($color, $lightness: $hover-lightness);\n\n // Default and disabled states\n &,\n &.disabled, &[disabled],\n &.disabled:hover, &[disabled]:hover,\n &.disabled:focus, &[disabled]:focus {\n color: $color;\n }\n\n &:hover, &:focus {\n color: $color-hover;\n }\n}\n\n/// Adds disabled styles to a button by fading the element and reseting the cursor.\n/// @param {Number} $opacity [$button-opacity-disabled] - Opacity of the disabled button.\n@mixin button-disabled(\n $opacity: $button-opacity-disabled\n) {\n opacity: $button-opacity-disabled;\n cursor: not-allowed;\n}\n\n/// Adds a dropdown arrow to a button.\n/// @param {Number} $size [0.4em] - Size of the arrow. We recommend using an `em` value so the triangle scales when used inside different sizes of buttons.\n/// @param {Color} $color [white] - Color of the arrow.\n/// @param {Number} $offset [$button-padding] - Distance between the arrow and the text of the button. Defaults to whatever the right padding of a button is.\n@mixin button-dropdown(\n $size: 0.4em,\n $color: $white,\n $offset: get-side($button-padding, right)\n) {\n &::after {\n @include css-triangle($size, $color, down);\n position: relative;\n top: 0.4em; // Aligns the arrow with the text of the button\n\n display: inline-block;\n float: #{$global-right};\n margin-#{$global-left}: $offset;\n }\n}\n\n/// Adds all styles for a button. For more granular control over styles, use the individual button mixins.\n/// @param {Boolean} $expand [false] - Set to `true` to make the button full-width.\n/// @param {Color} $background [$button-background] - Background color of the button.\n/// @param {Color} $background-hover [$button-background-hover] - Background color of the button on hover. Set to `auto` to have the mixin automatically generate a hover color.\n/// @param {Color} $color [$button-color] - Text color of the button. Set to `auto` to automatically generate a color based on the background color.\n/// @param {Keyword} $style [solid] - Set to `hollow` to create a hollow button. The color defined in `$background` will be used as the primary color of the button.\n@mixin button(\n $expand: false,\n $background: $button-background,\n $background-hover: $button-background-hover,\n $color: $button-color,\n $style: $button-fill\n) {\n @include button-base;\n @include button-fill($style);\n @include button-fill-style($style, $background, $background-hover, $color);\n\n @if $expand {\n @include button-expand;\n }\n}\n\n@mixin foundation-button {\n .button {\n @include button($style: none);\n\n // Sizes\n @each $size, $value in map-remove($button-sizes, default) {\n &.#{$size} {\n font-size: $value;\n }\n }\n\n &.expanded { @include button-expand; }\n\n @if $button-responsive-expanded {\n @each $size in $breakpoint-classes {\n @include breakpoint(#{$size} only) {\n &.#{$size}-only-expanded {\n @include button-expand;\n }\n }\n @if $size != $-zf-zero-breakpoint {\n @include breakpoint(#{$size} down) {\n &.#{$size}-down-expanded {\n @include button-expand;\n }\n }\n\n @include breakpoint(#{$size}) {\n &.#{$size}-expanded {\n @include button-expand;\n }\n }\n }\n }\n }\n\n // Solid, hollow & clear styles\n @each $filling in (solid hollow clear) {\n $selector: if($button-fill == $filling, null, '.#{$filling}');\n\n &#{$selector} {\n @include button-fill($filling);\n @include button-fill-style($filling);\n\n @each $name, $color in $button-palette {\n &.#{$name} {\n @include button-fill-style($filling, $color, auto, auto);\n }\n }\n }\n }\n\n // Disabled state\n &.disabled, &[disabled] {\n @include button-disabled;\n }\n\n // Dropdown arrow\n &.dropdown {\n @include button-dropdown;\n\n @if $button-fill == hollow {\n &::after {\n border-top-color: $button-background;\n }\n }\n\n &.hollow, &.clear {\n &::after {\n border-top-color: $button-background;\n }\n\n @each $name, $color in $button-palette {\n &.#{$name} {\n &::after {\n border-top-color: $color;\n }\n }\n }\n }\n }\n\n // Button with dropdown arrow only\n &.arrow-only::after {\n top: -0.1em;\n float: none;\n margin-#{$global-left}: 0;\n }\n }\n\n a.button { // sass-lint:disable-line no-qualifying-elements\n &:hover,\n &:focus {\n text-decoration: none;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group button-group\n////\n\n/// Margin for button groups.\n/// @type Number\n$buttongroup-margin: 1rem !default;\n\n/// Margin between buttons in a button group.\n/// @type Number\n$buttongroup-spacing: 1px !default;\n\n/// Selector for the buttons inside a button group.\n/// @type String\n$buttongroup-child-selector: '.button' !default;\n\n/// Maximum number of buttons that can be in an even-width button group. (Only needed when $global-flexbox: false;)\n/// @type Number\n$buttongroup-expand-max: 6 !default;\n\n/// Determines if $button-radius is applied to each button or the button group as a whole. Use $global-radius in _settings.scss to change radius.\n/// @type Boolean\n$buttongroup-radius-on-each: true !default;\n\n/// Add styles for a button group container.\n/// @param {String} $child-selector [$buttongroup-child-selector] - Selector for the buttons inside a button group.\n/// @param {Number} $spacing [$buttongroup-spacing] - Spacing between buttons in a button group.\n@mixin button-group(\n $child-selector: $buttongroup-child-selector,\n $spacing: $buttongroup-spacing\n) {\n @include clearfix;\n margin-bottom: $buttongroup-margin;\n\n @if $global-flexbox {\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n flex-grow: 1;\n\n &::before,\n &::after {\n display: none; // Disable clearfix\n }\n }\n @else {\n font-size: 0;\n }\n\n #{$child-selector} {\n margin: 0;\n margin-#{$global-right}: $spacing;\n margin-bottom: $spacing;\n font-size: map-get($button-sizes, default);\n\n @if $global-flexbox {\n flex: 0 0 auto;\n }\n\n &:last-child {\n margin-#{$global-right}: 0;\n }\n\n @if not $buttongroup-radius-on-each {\n border-radius: 0;\n\n &:first-child {\n border-top-#{$global-left}-radius: $button-radius;\n border-bottom-#{$global-left}-radius: $button-radius;\n }\n\n &:last-child {\n border-top-#{$global-right}-radius: $button-radius;\n border-bottom-#{$global-right}-radius: $button-radius;\n }\n }\n }\n}\n\n/// Make buttons bonded without gap between them. Borders between buttons are merged\n/// @param {String} $selector [$buttongroup-child-selector] - Selector for the buttons inside a button group.\n@mixin button-group-no-gaps(\n $selector: $buttongroup-child-selector,\n $border-width: $button-hollow-border-width\n) {\n #{$selector} {\n margin-#{$global-right}: rem-calc(-$border-width);\n\n + #{$selector} {\n border-#{$global-left}-color: transparent;\n }\n }\n}\n\n/// Creates a full-width button group, making each button equal width.\n/// @param {String} $selector [$buttongroup-child-selector] - Selector for the buttons inside a button group.\n/// @param {Number} $spacing [$buttongroup-spacing] - Spacing between buttons in a button group.\n@mixin button-group-expand(\n $selector: $buttongroup-child-selector,\n $spacing: $buttongroup-spacing,\n $count: null\n) {\n @if not $global-flexbox {\n margin-#{$global-right}: -$spacing;\n\n &::before,\n &::after {\n display: none; // Disable clearfix\n }\n }\n\n #{$selector} {\n @if $global-flexbox {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n }\n @else {\n // One child\n &:first-child {\n &:last-child {\n width: calc(100% - #{$spacing});\n }\n }\n\n // Two or more childreen\n @for $i from 2 through $buttongroup-expand-max {\n &:first-child:nth-last-child(#{$i}) {\n &, &:first-child:nth-last-child(#{$i}) ~ #{$selector} {\n display: inline-block;\n width: calc(#{percentage(divide(1, $i))} - #{$spacing});\n margin-#{$global-right}: $spacing;\n\n &:last-child {\n margin-#{$global-right}: $spacing * -$buttongroup-expand-max;\n }\n }\n }\n }\n }\n }\n}\n\n/// Stacks the buttons in a button group.\n/// @param {String} $selector [$buttongroup-child-selector] - Selector for the buttons inside the button group.\n@mixin button-group-stack(\n $selector: $buttongroup-child-selector\n) {\n @if $global-flexbox {\n flex-wrap: wrap;\n }\n\n #{$selector} {\n @if $global-flexbox {\n flex: 0 0 100%;\n }\n @else {\n width: 100%;\n }\n\n &:last-child {\n margin-bottom: 0;\n }\n\n @if not $buttongroup-radius-on-each {\n border-radius: 0;\n\n &:first-child {\n border-top-#{$global-left}-radius: $global-radius;\n border-top-#{$global-right}-radius: $global-radius;\n }\n\n &:last-child {\n border-bottom-#{$global-left}-radius: $global-radius;\n border-bottom-#{$global-right}-radius: $global-radius;\n }\n }\n }\n}\n\n/// Un-stacks the buttons in a button group.\n/// @param {String} $selector [$buttongroup-child-selector] - Selector for the buttons inside the button group.\n@mixin button-group-unstack(\n $selector: $buttongroup-child-selector\n) {\n #{$selector} {\n @if $global-flexbox {\n flex: 0 0 auto;\n }\n @else {\n width: auto;\n }\n margin-bottom: 0;\n\n @if not $buttongroup-radius-on-each {\n &:first-child {\n border-top-#{$global-left}-radius: $global-radius;\n border-top-#{$global-right}-radius: 0;\n border-bottom-#{$global-left}-radius: $global-radius;\n }\n\n &:last-child {\n border-top-#{$global-right}-radius: $global-radius;\n border-bottom-#{$global-right}-radius: $global-radius;\n border-bottom-#{$global-left}-radius: 0;\n }\n }\n\n }\n}\n\n@mixin foundation-button-group {\n .button-group {\n @include button-group;\n\n // Sizes\n @each $size, $value in map-remove($button-sizes, default) {\n &.#{$size} #{$buttongroup-child-selector} {\n font-size: $value;\n }\n }\n\n // Even-width Group\n &.expanded {\n @include button-group-expand;\n }\n\n // Solid, hollow & clear styles\n @each $filling in (solid hollow clear) {\n $base-selector: if($button-fill == $filling, null, '.#{$filling}');\n\n &#{$base-selector} {\n // Do not generate button base styles for the default filling\n @if($button-fill != $filling) {\n #{$buttongroup-child-selector} {\n @include button-fill($filling);\n @include button-fill-style($filling);\n }\n }\n\n @each $name, $color in $button-palette {\n @if($button-fill != $filling) {\n $individual-selector: ' #{$buttongroup-child-selector}.#{$name}';\n &.#{$name} #{$buttongroup-child-selector}, &#{$individual-selector} {\n @include button-fill-style($filling, $color, auto, auto);\n }\n }\n @else {\n &.#{$name} #{$buttongroup-child-selector} {\n @include button-fill-style($filling, $color, auto, auto);\n }\n }\n }\n }\n\n }\n\n &.no-gaps {\n @include button-group-no-gaps;\n }\n\n &.stacked,\n &.stacked-for-small,\n &.stacked-for-medium {\n @include button-group-stack;\n\n &.expanded {\n @include button-group-expand;\n }\n }\n\n &.stacked-for-small {\n @include breakpoint(medium) {\n @include button-group-unstack;\n }\n }\n\n &.stacked-for-medium {\n @include breakpoint(large) {\n @include button-group-unstack;\n }\n }\n\n &.stacked-for-small.expanded {\n @include breakpoint(small only) {\n display: block;\n\n #{$buttongroup-child-selector} {\n display: block;\n margin-#{$global-right}: 0;\n }\n }\n }\n\n &.stacked-for-medium.expanded {\n @include breakpoint(medium down) {\n display: block;\n\n #{$buttongroup-child-selector} {\n display: block;\n margin-#{$global-right}: 0;\n }\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group close-button\n////\n\n/// Default position of the close button. The first value should be `right` or `left`, and the second value should be `top` or `bottom`.\n/// @type List\n$closebutton-position: right top !default;\n\n/// Default z-index for a close button.\n/// @type Number\n$closebutton-z-index: 10 !default;\n\n/// Button size to use as default\n/// @type String\n/// @see $closebutton-size\n/// @see $closebutton-offset-horizontal\n/// @see $closebutton-offset-vertical\n$closebutton-default-size: medium !default;\n\n/// Right (or left) offset(s) for a close button.\n/// @type Number|Map\n$closebutton-offset-horizontal: (\n small: 0.66rem,\n medium: 1rem,\n) !default;\n\n/// Top (or bottom) offset(s) for a close button.\n/// @type Number|Map\n$closebutton-offset-vertical: (\n small: 0.33em,\n medium: 0.5rem,\n) !default;\n\n/// Size(s) of the close button. Used to generate sizing modifiers.\n/// @type Number|Map\n$closebutton-size: (\n small: 1.5em,\n medium: 2em,\n) !default;\n\n/// The line-height of the close button. It affects the spacing of the element.\n/// @type Number\n$closebutton-lineheight: 1 !default;\n\n/// Default color of the close button.\n/// @type Color\n$closebutton-color: $dark-gray !default;\n\n/// Default color of the close button when being hovered on.\n/// @type Color\n$closebutton-color-hover: $black !default;\n\n\n/// Get the size and position for a close button. If the input value is a number, the number is returned. If the input value is a config map and the map has the key `$size`, the value is returned.\n///\n/// @param {Number|Map} $value - A number or map that represents the size or position value(s) of the close button.\n/// @param {Keyword} $size - The size of the close button to use.\n///\n/// @return {Number} The given number or the value found in the map.\n@function -zf-get-size-val($value, $size) {\n // Check if the value is a number\n @if type-of($value) == 'number' {\n // If it is, just return the number\n @return $value;\n }\n\n // Check if the size name exists in the value map\n @else if map-has-key($value, $size) {\n // If it does, return the value\n @return map-get($value, $size);\n }\n}\n\n/// Sets the size and position of a close button.\n/// @param {Keyword} $size [medium] - The size to use. Set to `small` to create a small close button. The 'medium' values defined in `$closebutton-*` variables will be used as the default size and position of the close button.\n@mixin close-button-size($size) {\n $x: nth($closebutton-position, 1);\n $y: nth($closebutton-position, 2);\n\n #{$x}: -zf-get-size-val($closebutton-offset-horizontal, $size);\n #{$y}: -zf-get-size-val($closebutton-offset-vertical, $size);\n font-size: -zf-get-size-val($closebutton-size, $size);\n line-height: -zf-get-size-val($closebutton-lineheight, $size);\n}\n\n/// Adds styles for a close button, using the styles in the settings variables.\n@mixin close-button {\n $x: nth($closebutton-position, 1);\n $y: nth($closebutton-position, 2);\n\n @include disable-mouse-outline;\n position: absolute;\n z-index: $closebutton-z-index;\n color: $closebutton-color;\n cursor: pointer;\n\n &:hover,\n &:focus {\n color: $closebutton-color-hover;\n }\n}\n\n@mixin foundation-close-button {\n .close-button {\n // Use by default the placeholder of the default size\n @extend %zf-close-button--#{$closebutton-default-size};\n\n @include close-button;\n\n // Generate a placeholder and a class for each size\n @each $name, $size in $closebutton-size {\n @at-root {\n %zf-close-button--#{$name} {\n @include close-button-size($name);\n }\n }\n\n &.#{$name} {\n @extend %zf-close-button--#{$name};\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group label\n////\n\n/// Default background color for labels.\n/// @type Color\n$label-background: $primary-color !default;\n\n/// Default text color for labels.\n/// @type Color\n$label-color: $white !default;\n\n/// Alternate text color for labels.\n/// @type Color\n$label-color-alt: $black !default;\n\n/// Coloring classes. A map of classes to output in your CSS, like `.secondary`, `.success`, and so on.\n/// @type Map\n$label-palette: $foundation-palette !default;\n\n/// Default font size for labels.\n/// @type Number\n$label-font-size: 0.8rem !default;\n\n/// Default padding inside labels.\n/// @type Number\n$label-padding: 0.33333rem 0.5rem !default;\n\n/// Default radius of labels.\n/// @type Number\n$label-radius: $global-radius !default;\n\n/// Generates base styles for a label.\n@mixin label {\n display: inline-block;\n padding: $label-padding;\n\n border-radius: $label-radius;\n\n font-size: $label-font-size;\n line-height: 1;\n white-space: nowrap;\n cursor: default;\n}\n\n@mixin foundation-label {\n .label {\n @include label;\n\n background: $label-background;\n color: $label-color;\n\n @each $name, $color in $label-palette {\n &.#{$name} {\n background: $color;\n color: color-pick-contrast($color, ($label-color, $label-color-alt));\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n/// Adds styles for a progress bar container.\n@mixin progress-container {\n height: $progress-height;\n margin-bottom: $progress-margin-bottom;\n border-radius: $progress-radius;\n background-color: $progress-background;\n}\n\n/// Adds styles for the inner meter of a progress bar.\n@mixin progress-meter {\n position: relative;\n display: block;\n width: 0%;\n height: 100%;\n background-color: $progress-meter-background;\n\n @if has-value($progress-radius) {\n border-radius: $global-radius;\n }\n}\n\n/// Adds styles for text in the progress meter.\n@mixin progress-meter-text {\n @include absolute-center;\n margin: 0;\n font-size: 0.75rem;\n font-weight: bold;\n color: $white;\n white-space: nowrap;\n\n @if has-value($progress-radius) {\n border-radius: $progress-radius;\n }\n}\n\n@mixin foundation-progress-bar {\n // Progress bar\n .progress {\n @include progress-container;\n\n @each $name, $color in $foundation-palette {\n &.#{$name} {\n .progress-meter {\n background-color: $color;\n }\n }\n }\n }\n\n // Inner meter\n .progress-meter {\n @include progress-meter;\n }\n\n // Inner meter text\n .progress-meter-text {\n @include progress-meter-text;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n// [TODO] Check how plugin confirms disabled or vertical status\n// [TODO] Check if transition: all; is necessary\n\n////\n/// @group slider\n////\n\n/// Default slider width of a vertical slider. (Doesn't apply to the native slider.)\n/// @type Number\n$slider-width-vertical: 0.5rem !default;\n\n/// Transition properties to apply to the slider handle and fill. (Doesn't apply to the native slider.)\n/// @type Transition\n$slider-transition: all 0.2s ease-in-out !default;\n\n/// Adds the general styles for sliders.\n@mixin slider-container {\n position: relative;\n height: $slider-height;\n margin-top: 1.25rem;\n margin-bottom: 2.25rem;\n\n background-color: $slider-background;\n cursor: pointer;\n user-select: none;\n touch-action: none;\n}\n\n/// Adds the general styles for active fill for sliders.\n@mixin slider-fill {\n position: absolute;\n top: 0;\n left: 0;\n\n display: inline-block;\n max-width: 100%;\n height: $slider-height;\n\n background-color: $slider-fill-background;\n transition: $slider-transition;\n\n &.is-dragging {\n transition: all 0s linear;\n }\n}\n\n/// Adds the general styles for the slider handles.\n@mixin slider-handle {\n @include disable-mouse-outline;\n @include vertical-center;\n left: 0;\n z-index: 1;\n cursor: grab;\n\n display: inline-block;\n width: $slider-handle-width;\n height: $slider-handle-height;\n\n border-radius: $slider-radius;\n background-color: $slider-handle-background;\n transition: $slider-transition;\n touch-action: manipulation;\n\n &:hover {\n background-color: scale-color($slider-handle-background, $lightness: -15%);\n }\n\n &.is-dragging {\n transition: all 0s linear;\n cursor: grabbing;\n }\n}\n\n@mixin slider-disabled {\n opacity: $slider-opacity-disabled;\n cursor: not-allowed;\n}\n\n@mixin slider-vertical {\n display: inline-block;\n width: $slider-width-vertical;\n height: 12.5rem;\n margin: 0 1.25rem;\n transform: scale(1, -1);\n\n .slider-fill {\n top: 0;\n width: $slider-width-vertical;\n max-height: 100%;\n }\n\n .slider-handle {\n position: absolute;\n top: 0;\n left: 50%;\n width: $slider-handle-height;\n height: $slider-handle-width;\n transform: translateX(-50%);\n }\n}\n\n@mixin foundation-slider {\n // Container\n .slider {\n @include slider-container;\n }\n\n // Fill area\n .slider-fill {\n @include slider-fill;\n }\n\n // Draggable handle\n .slider-handle {\n @include slider-handle;\n }\n\n // Disabled state\n .slider.disabled,\n .slider[disabled] {\n @include slider-disabled;\n }\n\n // Vertical slider\n .slider.vertical {\n @include slider-vertical;\n }\n\n // RTL support\n @if $global-text-direction == rtl {\n .slider:not(.vertical) {\n transform: scale(-1, 1);\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group switch\n////\n\n/// Background color of a switch.\n/// @type Color\n$switch-background: $medium-gray !default;\n\n/// Background active color of a switch.\n/// @type Color\n$switch-background-active: $primary-color !default;\n\n/// Height of a switch, with no class applied.\n/// @type Number\n$switch-height: 2rem !default;\n\n/// Height of a switch with .tiny class.\n/// @type Number\n$switch-height-tiny: 1.5rem !default;\n\n/// Height of a switch with .small class.\n/// @type Number\n$switch-height-small: 1.75rem !default;\n\n/// Height of a switch with .large class.\n/// @type Number\n$switch-height-large: 2.5rem !default;\n\n/// Border radius of the switch\n/// @type Number\n$switch-radius: $global-radius !default;\n\n/// border around a modal.\n/// @type Number\n$switch-margin: $global-margin !default;\n\n/// Background color for the switch container and paddle.\n/// @type Color\n$switch-paddle-background: $white !default;\n\n/// Spacing between a switch paddle and the edge of the body.\n/// @type Number\n$switch-paddle-offset: 0.25rem !default;\n\n/// border radius of the switch paddle\n/// @type Number\n$switch-paddle-radius: $global-radius !default;\n\n/// switch transition.\n/// @type Number\n$switch-paddle-transition: all 0.25s ease-out !default;\n\n/// Opacity of a disabled switch.\n/// @type Number\n$switch-opacity-disabled: 0.5 !default;\n\n/// Cursor for a disabled switch.\n/// @type Cursor\n$switch-cursor-disabled: not-allowed !default;\n\n// make them variables\n// ask about accessibility on label\n// change class name for text\n\n/// Adds styles for a switch container. Apply this to a container class.\n@mixin switch-container {\n position: relative;\n margin-bottom: $switch-margin;\n outline: 0;\n\n // These properties cascade down to the switch text\n font-size: rem-calc(14);\n font-weight: bold;\n color: $white;\n\n user-select: none;\n}\n\n/// Adds styles for a switch input. Apply this to an `<input>` within a switch.\n@mixin switch-input {\n position: absolute;\n margin-bottom: 0;\n opacity: 0;\n}\n\n/// Adds styles for the background and paddle of a switch. Apply this to a `<label>` within a switch.\n@mixin switch-paddle {\n $switch-width: $switch-height * 2;\n $paddle-height: $switch-height - ($switch-paddle-offset * 2);\n $paddle-width: $switch-height - ($switch-paddle-offset * 2);\n $paddle-active-offest: $switch-width - $paddle-width - $switch-paddle-offset;\n\n position: relative;\n display: block;\n width: $switch-width;\n height: $switch-height;\n\n border-radius: $switch-radius;\n background: $switch-background;\n transition: $switch-paddle-transition;\n\n // Resetting these <label> presets so type styles cascade down\n font-weight: inherit;\n color: inherit;\n\n cursor: pointer;\n\n // Needed to override specificity\n input + & {\n margin: 0;\n }\n\n // The paddle itself\n &::after {\n position: absolute;\n top: $switch-paddle-offset;\n #{$global-left}: $switch-paddle-offset;\n\n display: block;\n width: $paddle-width;\n height: $paddle-height;\n\n transform: translate3d(0, 0, 0);\n border-radius: $switch-paddle-radius;\n background: $switch-paddle-background;\n transition: $switch-paddle-transition;\n content: '';\n }\n\n // Change the visual style when the switch is active\n input:checked ~ & {\n background: $switch-background-active;\n\n &::after {\n #{$global-left}: $paddle-active-offest;\n }\n }\n\n // indicate a disabled switch\n input:disabled ~ & {\n cursor: $switch-cursor-disabled;\n opacity: $switch-opacity-disabled;\n }\n\n input:focus ~ & {\n @include disable-mouse-outline;\n }\n}\n\n/// Adds base styles for active/inactive text inside a switch. Apply this to text elements inside the switch `<label>`.\n@mixin switch-text {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n}\n\n/// Adds styles for the active state text within a switch.\n@mixin switch-text-active {\n #{$global-left}: 8%;\n display: none;\n\n input:checked + label > & {\n display: block;\n }\n}\n\n/// Adds styles for the inactive state text within a switch.\n@mixin switch-text-inactive {\n #{$global-right}: 15%;\n\n input:checked + label > & {\n display: none;\n }\n}\n\n/// Changes the size of a switch by modifying the size of the body and paddle. Apply this to a switch container.\n/// @param {Number} $font-size [1rem] - Font size of label text within the switch.\n/// @param {Number} $switch-height [2rem] - Height of the switch body.\n/// @param {Number} $paddle-offset [0.25rem] - Spacing between the switch paddle and the edge of the switch body.\n@mixin switch-size(\n $font-size: 1rem,\n $switch-height: 2rem,\n $paddle-offset: 0.25rem\n) {\n\n $switch-width: $switch-height * 2;\n $paddle-width: $switch-height - ($paddle-offset * 2);\n $paddle-height: $switch-height - ($paddle-offset * 2);\n $paddle-active-offest: $switch-width - $paddle-width - $paddle-offset;\n\n height: $switch-height;\n\n .switch-paddle {\n width: $switch-width;\n height: $switch-height;\n font-size: $font-size;\n }\n\n .switch-paddle::after {\n top: $paddle-offset;\n #{$global-left}: $paddle-offset;\n width: $paddle-width;\n height: $paddle-height;\n }\n\n input:checked ~ .switch-paddle::after {\n #{$global-left}: $paddle-active-offest;\n }\n}\n\n@mixin foundation-switch {\n // Container class\n .switch {\n @include switch-container;\n height: $switch-height;\n }\n\n // <input> element\n .switch-input {\n @include switch-input;\n }\n\n // <label> element\n .switch-paddle {\n @include switch-paddle;\n }\n\n // Base label text styles\n %switch-text {\n @include switch-text;\n }\n\n // Active label text styles\n .switch-active {\n @extend %switch-text;\n @include switch-text-active;\n }\n\n // Inactive label text styles\n .switch-inactive {\n @extend %switch-text;\n @include switch-text-inactive;\n }\n\n // Switch sizes\n .switch.tiny {\n @include switch-size(rem-calc(10), $switch-height-tiny, $switch-paddle-offset);\n }\n\n .switch.small {\n @include switch-size(rem-calc(12), $switch-height-small, $switch-paddle-offset);\n }\n\n .switch.large {\n @include switch-size(rem-calc(16), $switch-height-large, $switch-paddle-offset);\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n// sass-lint:disable no-qualifying-elements\n\n////\n/// @group table\n////\n\n/// Default color for table background.\n/// @type Color\n$table-background: $white !default;\n\n/// Default scale for darkening the striped table rows and the table border.\n/// @type Number\n$table-color-scale: 5% !default;\n\n/// Default style for table border.\n/// @type List\n$table-border: 1px solid smart-scale($table-background, $table-color-scale) !default;\n\n/// Default padding for table.\n/// @type Number\n$table-padding: rem-calc(8 10 10) !default;\n\n/// Default scale for darkening the table rows on hover.\n/// @type Number\n$table-hover-scale: 2% !default;\n\n/// Default color of standard rows on hover.\n/// @type List\n$table-row-hover: darken($table-background, $table-hover-scale) !default;\n\n/// Default color of striped rows on hover.\n/// @type List\n$table-row-stripe-hover: darken($table-background, $table-color-scale + $table-hover-scale) !default;\n\n/// If `true`, tables are striped by default and an .unstriped class is created. If `false`, a .striped class is created.\n/// @type Boolean\n$table-is-striped: true !default;\n\n/// Default background color for striped rows.\n/// @type Color\n$table-striped-background: smart-scale($table-background, $table-color-scale) !default;\n\n/// Default value for showing the stripe on rows of the tables, excluding the header and footer. If even, the even rows will have a background color. If odd, the odd rows will have a background color. If empty, or any other value, the table rows will have no striping.\n/// @type Keyword\n$table-stripe: even !default;\n\n/// Default color for header background.\n/// @type Color\n$table-head-background: smart-scale($table-background, $table-color-scale * 0.5) !default;\n\n/// Default color of header rows on hover.\n/// @type List\n$table-head-row-hover: darken($table-head-background, $table-hover-scale) !default;\n\n/// Default color for footer background.\n/// @type Color\n$table-foot-background: smart-scale($table-background, $table-color-scale) !default;\n\n/// Default color of footer rows on hover.\n/// @type List\n$table-foot-row-hover: darken($table-foot-background, $table-hover-scale) !default;\n\n/// Default font color for header.\n/// @type Color\n$table-head-font-color: $body-font-color !default;\n\n/// Default font color for footer.\n/// @type Color\n$table-foot-font-color: $body-font-color !default;\n\n/// Default value for showing the header when using stacked tables.\n/// @type Boolean\n$show-header-for-stacked: false !default;\n\n/// Breakpoint at which stacked table switches from mobile to desktop view.\n/// @type Breakpoint\n$table-stack-breakpoint: medium !default;\n\n@mixin -zf-table-stripe($stripe: $table-stripe) {\n tr {\n // If stripe is set to even, darken the even rows.\n @if $stripe == even {\n &:nth-child(even) {\n border-bottom: 0;\n background-color: $table-striped-background;\n }\n }\n\n // If stripe is set to odd, darken the odd rows.\n @else if $stripe == odd {\n &:nth-child(odd) {\n background-color: $table-striped-background;\n }\n }\n }\n}\n\n@mixin -zf-table-unstripe() {\n tr {\n border-bottom: $table-border;\n background-color: $table-background;\n }\n}\n\n@mixin -zf-table-children-styles($stripe: $table-stripe, $is-striped: $table-is-striped) {\n thead,\n tbody,\n tfoot {\n border: $table-border;\n background-color: $table-background;\n }\n\n // Caption\n caption {\n padding: $table-padding;\n font-weight: $global-weight-bold;\n }\n\n // Table head\n thead {\n background: $table-head-background;\n color: $table-head-font-color;\n }\n\n // Table foot\n tfoot {\n background: $table-foot-background;\n color: $table-foot-font-color;\n }\n\n // Table head and foot\n thead,\n tfoot {\n // Rows within head and foot\n tr {\n background: transparent;\n }\n\n // Cells within head and foot\n th,\n td {\n padding: $table-padding;\n font-weight: $global-weight-bold;\n text-align: #{$global-left};\n }\n }\n\n // Table rows\n tbody {\n th,\n td {\n padding: $table-padding;\n }\n }\n\n // If tables are striped\n @if $is-striped == true {\n tbody {\n @include -zf-table-stripe($stripe);\n }\n\n &.unstriped {\n tbody {\n @include -zf-table-unstripe();\n background-color: $table-background;\n }\n }\n }\n\n // If tables are not striped\n @else if $is-striped == false {\n tbody {\n @include -zf-table-unstripe();\n }\n\n &.striped {\n tbody {\n @include -zf-table-stripe($stripe);\n }\n }\n }\n}\n\n/// Adds the general styles for tables.\n/// @param {Keyword} $stripe [$table-stripe] - Uses keywords even, odd, or none to darken rows of the table. The default value is even.\n/// @param {Boolean} $nest [false] - Needed if you only want to apply this to a specific table.\n@mixin table(\n $stripe: $table-stripe,\n $nest: false\n) {\n border-collapse: collapse;\n width: 100%;\n margin-bottom: $global-margin;\n border-radius: $global-radius;\n\n @if $nest {\n @include -zf-table-children-styles($stripe);\n }\n @else {\n @at-root {\n @include -zf-table-children-styles($stripe);\n }\n }\n}\n\n/// Adds the ability to horizontally scroll the table when the content overflows horizontally.\n@mixin table-scroll {\n display: block;\n width: 100%;\n overflow-x: auto;\n}\n\n/// Slightly darkens the table rows on hover.\n@mixin table-hover {\n thead tr {\n //Darkens the table header rows on hover.\n &:hover {\n background-color: $table-head-row-hover;\n }\n }\n\n tfoot tr {\n //Darkens the table footer rows on hover.\n &:hover {\n background-color: $table-foot-row-hover;\n }\n }\n\n tbody tr {\n //Darkens the non-striped table rows on hover.\n &:hover {\n background-color: $table-row-hover;\n }\n }\n\n @if $table-is-striped == true {\n // Darkens the even striped table rows.\n @if($table-stripe == even) {\n &:not(.unstriped) tr:nth-of-type(even):hover {\n background-color: $table-row-stripe-hover;\n }\n }\n\n // Darkens the odd striped table rows.\n @else if($table-stripe == odd) {\n &:not(.unstriped) tr:nth-of-type(odd):hover {\n background-color: $table-row-stripe-hover;\n }\n }\n }\n\n @else if $table-is-striped == false {\n // Darkens the even striped table rows.\n @if($table-stripe == even) {\n &.striped tr:nth-of-type(even):hover {\n background-color: $table-row-stripe-hover;\n }\n }\n\n // Darkens the odd striped table rows.\n @else if($table-stripe == odd) {\n &.striped tr:nth-of-type(odd):hover {\n background-color: $table-row-stripe-hover;\n }\n }\n }\n}\n\n/// Adds styles for a stacked table. Useful for small-screen layouts.\n/// @param {Boolean} $header [$show-header-for-stacked] - Show the first th of header when stacked.\n@mixin table-stack($header: $show-header-for-stacked) {\n @if $header {\n thead {\n th {\n display: block;\n }\n }\n }\n @else {\n thead {\n display: none;\n }\n }\n\n tfoot {\n display: none;\n }\n\n tr,\n th,\n td {\n display: block;\n }\n\n td {\n border-top: 0;\n }\n}\n\n@mixin foundation-table($nest: false) {\n table {\n @include table($nest: $nest);\n }\n\n table.stack {\n @include breakpoint($table-stack-breakpoint down) {\n @include table-stack;\n }\n }\n\n table.scroll {\n @include table-scroll;\n }\n\n table.hover {\n @include table-hover;\n }\n\n .table-scroll {\n overflow-x: auto;\n\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group badge\n////\n\n/// Default background color for badges.\n/// @type Color\n$badge-background: $primary-color !default;\n\n/// Default text color for badges.\n/// @type Color\n$badge-color: $white !default;\n\n/// Alternate text color for badges.\n/// @type Color\n$badge-color-alt: $black !default;\n\n/// Coloring classes. A map of classes to output in your CSS, like `.secondary`, `.success`, and so on.\n/// @type Map\n$badge-palette: $foundation-palette !default;\n\n/// Default padding inside badges.\n/// @type Number\n$badge-padding: 0.3em !default;\n\n/// Minimum width of a badge.\n/// @type Number\n$badge-minwidth: 2.1em !default;\n\n/// Default font size for badges.\n/// @type Number\n$badge-font-size: 0.6rem !default;\n\n/// Generates the base styles for a badge.\n@mixin badge {\n display: inline-block;\n min-width: $badge-minwidth;\n padding: $badge-padding;\n\n border-radius: 50%;\n\n font-size: $badge-font-size;\n text-align: center;\n}\n\n@mixin foundation-badge {\n .badge {\n @include badge;\n\n background: $badge-background;\n color: $badge-color;\n\n @each $name, $color in $badge-palette {\n &.#{$name} {\n background: $color;\n color: color-pick-contrast($color, ($badge-color, $badge-color-alt));\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group breadcrumbs\n////\n\n/// Margin around a breadcrumbs container.\n/// @type Number\n$breadcrumbs-margin: 0 0 $global-margin 0 !default;\n\n/// Font size of breadcrumb links.\n/// @type Number\n$breadcrumbs-item-font-size: rem-calc(11) !default;\n\n/// Color of breadcrumb links.\n/// @type Color\n$breadcrumbs-item-color: $primary-color !default;\n\n/// Color of the active breadcrumb link.\n/// @type Color\n$breadcrumbs-item-color-current: $black !default;\n\n/// Opacity of disabled breadcrumb links.\n/// @type Number\n$breadcrumbs-item-color-disabled: $medium-gray !default;\n\n/// Margin between breadcrumb items.\n/// @type Number\n$breadcrumbs-item-margin: 0.75rem !default;\n\n/// If `true`, makes breadcrumb links uppercase.\n/// @type Boolean\n$breadcrumbs-item-uppercase: true !default;\n\n/// If `true`, adds a seperator between breadcrumb links.\n/// @type Boolean\n$breadcrumbs-item-separator: true !default;\n\n// If it exists $breadcrumbs-item-slash is used to build $breadcrumbs-item-separator. See the documentation.\n@if variable-exists(breadcrumbs-item-slash) {\n $breadcrumbs-item-separator: $breadcrumbs-item-slash;\n}\n\n/// Used character for the breadcrumb separator.\n/// @type Content\n$breadcrumbs-item-separator-item: '/' !default;\n\n/// Used character for the breadcrumb separator in rtl mode.\n/// @type Content\n$breadcrumbs-item-separator-item-rtl: '\\\\' !default;\n\n/// Color of breadcrumb item.\n/// @type Color\n$breadcrumbs-item-separator-color: $medium-gray !default;\n\n// If it exists $breadcrumbs-item-slash-color is used to build $breadcrumbs-item-separator-color. See the documentation.\n@if variable-exists(breadcrumbs-item-slash-color) {\n $breadcrumbs-item-separator-color: $breadcrumbs-item-slash-color;\n}\n\n/// Adds styles for a breadcrumbs container, along with the styles for the `<li>` and `<a>` elements inside of it.\n@mixin breadcrumbs-container {\n @include clearfix;\n margin: $breadcrumbs-margin;\n list-style: none;\n\n // Item wrapper\n li {\n float: #{$global-left};\n\n font-size: $breadcrumbs-item-font-size;\n color: $breadcrumbs-item-color-current;\n cursor: default;\n\n @if $breadcrumbs-item-uppercase {\n text-transform: uppercase;\n }\n\n @if $breadcrumbs-item-separator {\n // Need to escape the backslash\n $separator: if($global-text-direction == 'ltr', $breadcrumbs-item-separator-item, $breadcrumbs-item-separator-item-rtl);\n\n &:not(:last-child) {\n &::after {\n position: relative;\n margin: 0 $breadcrumbs-item-margin;\n opacity: 1;\n content: $separator;\n color: $breadcrumbs-item-separator-color;\n }\n }\n }\n @else {\n margin-#{$global-right}: $breadcrumbs-item-margin;\n }\n }\n\n // Page links\n a {\n color: $breadcrumbs-item-color;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n@mixin foundation-breadcrumbs {\n .breadcrumbs {\n @include breadcrumbs-container;\n\n .disabled {\n color: $breadcrumbs-item-color-disabled;\n cursor: not-allowed;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group callout\n////\n\n/// Default background color.\n/// @type Color\n$callout-background: $white !default;\n\n/// Default fade value for callout backgrounds.\n/// @type Number\n$callout-background-fade: 85% !default;\n\n/// Default border style for callouts.\n/// @type List\n$callout-border: 1px solid rgba($black, 0.25) !default;\n\n/// Default bottom margin for callouts.\n/// @type Number\n$callout-margin: 0 0 1rem 0 !default;\n\n/// Sizes for Callout paddings.\n/// @type Map\n$callout-sizes: (\n small: 0.5rem,\n default: 1rem,\n large: 3rem,\n) !default;\n\n/// Default font color for callouts.\n/// @type Color\n$callout-font-color: $body-font-color !default;\n\n/// Default font color for callouts, if the callout has a dark background.\n/// @type Color\n$callout-font-color-alt: $body-background !default;\n\n/// Default border radius for callouts.\n/// @type Color\n$callout-radius: $global-radius !default;\n\n/// Amount to tint links used within colored panels. Set to `false` to disable this feature.\n/// @type Number | Boolean\n$callout-link-tint: 30% !default;\n\n/// Adds basic styles for a callout, including padding and margin.\n@mixin callout-base() {\n position: relative;\n margin: $callout-margin;\n padding: map-get($callout-sizes, default);\n\n border: $callout-border;\n border-radius: $callout-radius;\n\n // Respect the padding, fool.\n > :first-child {\n margin-top: 0;\n }\n\n > :last-child {\n margin-bottom: 0;\n }\n}\n\n/// Generate quick styles for a callout using a single color as a baseline.\n/// @param {Color} $color [$callout-background] - Color to use.\n@mixin callout-style($color: $callout-background) {\n $background: scale-color($color, $lightness: $callout-background-fade);\n\n background-color: $background;\n color: color-pick-contrast($background, ($callout-font-color, $callout-font-color-alt));\n}\n\n@mixin callout-size($padding) {\n padding-top: $padding;\n padding-right: $padding;\n padding-bottom: $padding;\n padding-left: $padding;\n}\n\n\n/// Adds styles for a callout.\n/// @param {Color} $color [$callout-background] - Color to use.\n@mixin callout($color: $callout-background) {\n @include callout-base;\n @include callout-style($color);\n}\n\n@mixin foundation-callout {\n .callout {\n @include callout;\n\n @each $name, $color in $foundation-palette {\n &.#{$name} {\n @include callout-style($color);\n }\n }\n\n @each $size, $padding in map-remove($callout-sizes, default) {\n &.#{$size} {\n @include callout-size($padding);\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group card\n////\n\n/// Default background color.\n/// @type Color\n$card-background: $white !default;\n\n/// Default font color for cards.\n/// @type Color\n$card-font-color: $body-font-color !default;\n\n/// Default background.\n/// @type Color\n$card-divider-background: $light-gray !default;\n\n/// Default border style.\n/// @type List\n$card-border: 1px solid $light-gray !default;\n\n/// Default card shadow.\n/// @type List\n$card-shadow: none !default;\n\n/// Default border radius.\n/// @type List\n$card-border-radius: $global-radius !default;\n\n/// Default padding.\n/// @type Number\n$card-padding: $global-padding !default;\n\n/// Default bottom margin.\n/// @type number\n$card-margin-bottom: $global-margin !default;\n\n/// Adds styles for a card container.\n/// @param {Color} $background - Background color of the card.\n/// @param {Color} $color - font color of the card.\n/// @param {Number} $margin - Bottom margin of the card.\n/// @param {List} $border - Border around the card.\n/// @param {List} $radius - border radius of the card.\n/// @param {List} $shadow - box shadow of the card.\n@mixin card-container(\n $background: $card-background,\n $color: $card-font-color,\n $margin: $card-margin-bottom,\n $border: $card-border,\n $radius: $card-border-radius,\n $shadow: $card-shadow\n) {\n @if $global-flexbox {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n }\n\n margin-bottom: $margin;\n\n border: $border;\n border-radius: $radius;\n\n background: $background;\n box-shadow: $shadow;\n\n overflow: hidden;\n color: $color;\n\n & > :last-child {\n margin-bottom: 0;\n }\n}\n\n/// Adds styles for a card divider.\n@mixin card-divider(\n $background: $card-divider-background,\n $padding: $card-padding\n) {\n @if $global-flexbox {\n display: flex;\n flex: 0 1 auto;\n }\n\n padding: $padding;\n background: $background;\n\n & > :last-child {\n margin-bottom: 0;\n }\n}\n\n/// Adds styles for a card section.\n@mixin card-section(\n $padding: $card-padding\n) {\n @if $global-flexbox {\n flex: 1 0 auto;\n }\n\n padding: $padding;\n\n & > :last-child {\n margin-bottom: 0;\n }\n}\n\n@mixin foundation-card {\n .card {\n @include card-container;\n }\n\n .card-divider {\n @include card-divider;\n }\n\n .card-section {\n @include card-section;\n }\n\n // For IE 11 - Flexbug\n // https://github.com/philipwalton/flexbugs/issues/75\n .card-image {\n min-height: 1px;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group dropdown\n////\n\n/// Padding for dropdown panes.\n/// @type List\n$dropdown-padding: 1rem !default;\n\n/// Background for dropdown panes.\n/// @type Color\n$dropdown-background: $body-background !default;\n\n/// Border for dropdown panes.\n/// @type List\n$dropdown-border: 1px solid $medium-gray !default;\n\n/// Font size for dropdown panes.\n/// @type List\n$dropdown-font-size: 1rem !default;\n\n/// Width for dropdown panes.\n/// @type Number\n$dropdown-width: 300px !default;\n\n/// Border radius dropdown panes.\n/// @type Number\n$dropdown-radius: $global-radius !default;\n\n/// Sizes for dropdown panes. Each size is a CSS class you can apply.\n/// @type Map\n$dropdown-sizes: (\n tiny: 100px,\n small: 200px,\n large: 400px,\n) !default;\n\n/// Applies styles for a basic dropdown.\n@mixin dropdown-container {\n position: absolute;\n z-index: 10;\n\n display: none;\n\n width: $dropdown-width;\n padding: $dropdown-padding;\n\n visibility: hidden;\n border: $dropdown-border;\n border-radius: $dropdown-radius;\n background-color: $dropdown-background;\n\n font-size: $dropdown-font-size;\n\n\n // Allow an intermittent state to do positioning before making visible.\n &.is-opening {\n display: block;\n }\n\n &.is-open {\n display: block;\n visibility: visible;\n }\n}\n\n@mixin foundation-dropdown {\n .dropdown-pane {\n @include dropdown-container;\n }\n\n @each $name, $size in $dropdown-sizes {\n .dropdown-pane {\n &.#{$name} {\n width: $size;\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group pagination\n////\n\n/// Font size of pagination items.\n/// @type Number\n$pagination-font-size: rem-calc(14) !default;\n\n/// Default bottom margin of the pagination object.\n/// @type Number\n$pagination-margin-bottom: $global-margin !default;\n\n/// Text color of pagination items.\n/// @type Color\n$pagination-item-color: $black !default;\n\n/// Padding inside of pagination items.\n/// @type Number\n$pagination-item-padding: rem-calc(3 10) !default;\n\n/// Right margin to separate pagination items.\n/// @type Number\n$pagination-item-spacing: rem-calc(1) !default;\n\n/// Default radius for pagination items.\n/// @type Number\n$pagination-radius: $global-radius !default;\n\n/// Background color of pagination items on hover.\n/// @type Color\n$pagination-item-background-hover: $light-gray !default;\n\n/// Background color of pagination item for the current page.\n/// @type Color\n$pagination-item-background-current: $primary-color !default;\n\n/// Text color of the pagination item for the current page.\n/// @type Color\n$pagination-item-color-current: $white !default;\n\n/// Text color of a disabled pagination item.\n/// @type Color\n$pagination-item-color-disabled: $medium-gray !default;\n\n/// Color of the ellipsis in a pagination menu.\n/// @type Color\n$pagination-ellipsis-color: $black !default;\n\n/// If `false`, don't display page number links on mobile, only next/previous links\n/// and optionally current page number.\n/// @type Boolean\n$pagination-mobile-items: false !default;\n\n/// If `true`, display the current page number on mobile even if `$pagination-mobile-items` is set to `false`.\n/// This parameter will only override the visibility setting of the current item for `$pagination-mobile-items: false;`,\n/// it will not affect the current page number visibility when `$pagination-mobile-items` is set to `true`.\n/// @type Boolean\n$pagination-mobile-current-item: false !default;\n\n/// If `true`, arrows are added to the next and previous links of pagination.\n/// @type Boolean\n$pagination-arrows: true !default;\n\n/// Content for the previous arrow when `$pagination-arrows` is `true`\n/// @type String\n$pagination-arrow-previous: '\\00AB' !default;\n\n/// Content for the next arrow when `$pagination-arrows` is `true`\n/// @type String\n$pagination-arrow-next: '\\00BB' !default;\n\n/// Adds styles for a pagination container. Apply this to a `<ul>`.\n@mixin pagination-container (\n $margin-bottom: $pagination-margin-bottom,\n $font-size: $pagination-font-size,\n $spacing: $pagination-item-spacing,\n $radius: $pagination-radius,\n $color: $pagination-item-color,\n $padding: $pagination-item-padding,\n $background-hover: $pagination-item-background-hover\n) {\n @include clearfix;\n margin-#{$global-left}: 0;\n margin-bottom: $margin-bottom;\n\n // List item\n li {\n margin-#{$global-right}: $spacing;\n border-radius: $radius;\n font-size: $font-size;\n\n @if $pagination-mobile-items {\n display: inline-block;\n }\n @else {\n display: none;\n\n &:last-child,\n &:first-child {\n display: inline-block;\n }\n\n @if $pagination-mobile-current-item {\n &.current {\n display: inline-block;\n }\n }\n\n @include breakpoint(medium) {\n display: inline-block;\n }\n }\n }\n\n // Page links\n a,\n button {\n display: block;\n padding: $padding;\n border-radius: $radius;\n color: $color;\n\n &:hover {\n background: $background-hover;\n }\n }\n}\n\n/// Adds styles for the current pagination item. Apply this to an `<a>`.\n@mixin pagination-item-current (\n $padding: $pagination-item-padding,\n $background-current: $pagination-item-background-current,\n $color-current: $pagination-item-color-current\n) {\n padding: $padding;\n background: $background-current;\n color: $color-current;\n cursor: default;\n}\n\n/// Adds styles for a disabled pagination item. Apply this to an `<a>`.\n@mixin pagination-item-disabled (\n $padding: $pagination-item-padding,\n $color: $pagination-item-color-disabled\n) {\n padding: $padding;\n color: $color;\n cursor: not-allowed;\n\n &:hover {\n background: transparent;\n }\n}\n\n/// Adds styles for an ellipsis for use in a pagination list.\n@mixin pagination-ellipsis (\n $padding: $pagination-item-padding,\n $color: $pagination-ellipsis-color\n) {\n padding: $padding;\n content: '\\2026';\n color: $color;\n}\n\n@mixin foundation-pagination {\n .pagination {\n @include pagination-container;\n\n .current {\n @include pagination-item-current;\n }\n\n .disabled {\n @include pagination-item-disabled;\n }\n\n .ellipsis::after {\n @include pagination-ellipsis;\n }\n }\n\n @if $pagination-arrows {\n .pagination-previous a::before,\n .pagination-previous.disabled::before {\n display: inline-block;\n margin-#{$global-right}: 0.5rem;\n content: $pagination-arrow-previous;\n }\n\n .pagination-next a::after,\n .pagination-next.disabled::after {\n display: inline-block;\n margin-#{$global-left}: 0.5rem;\n content: $pagination-arrow-next;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group tooltip\n////\n\n/// Default cursor of the defined term.\n/// @type Keyword\n$has-tip-cursor: help !default;\n\n/// Default font weight of the defined term.\n/// @type Keyword | Number\n$has-tip-font-weight: $global-weight-bold !default;\n\n/// Default border bottom of the defined term.\n/// @type List\n$has-tip-border-bottom: dotted 1px $dark-gray !default;\n\n/// Default color of the tooltip background.\n/// @type Color\n$tooltip-background-color: $black !default;\n\n/// Default color of the tooltip font.\n/// @type Color\n$tooltip-color: $white !default;\n\n/// Default padding of the tooltip background.\n/// @type Number\n$tooltip-padding: 0.75rem !default;\n\n/// Default max width for tooltips.\n/// @type Number\n$tooltip-max-width: 10rem !default;\n\n/// Default font size of the tooltip text. By default, we recommend a smaller font size than the body copy.\n/// @type Number\n$tooltip-font-size: $small-font-size !default;\n\n/// Default pip width for tooltips.\n/// @type Number\n$tooltip-pip-width: 0.75rem !default;\n\n/// Default pip height for tooltips. This is helpful for calculating the distance of the tooltip from the tooltip word.\n/// @type Number\n$tooltip-pip-height: $tooltip-pip-width * 0.866 !default;\n\n/// Default radius for tooltips.\n/// @type Number\n$tooltip-radius: $global-radius !default;\n\n@mixin has-tip {\n position: relative;\n display: inline-block;\n\n border-bottom: $has-tip-border-bottom;\n font-weight: $has-tip-font-weight;\n cursor: $has-tip-cursor;\n}\n\n@mixin tooltip {\n position: absolute;\n top: calc(100% + #{$tooltip-pip-height});\n z-index: 1200;\n\n max-width: $tooltip-max-width;\n padding: $tooltip-padding;\n\n border-radius: $tooltip-radius;\n background-color: $tooltip-background-color;\n font-size: $tooltip-font-size;\n color: $tooltip-color;\n\n &::before {\n position: absolute;\n }\n\n &.bottom {\n &::before {\n @include css-triangle($tooltip-pip-width, $tooltip-background-color, up);\n bottom: 100%;\n }\n\n &.align-center::before {\n left: 50%;\n transform: translateX(-50%);\n }\n }\n\n &.top {\n &::before {\n @include css-triangle($tooltip-pip-width, $tooltip-background-color, down);\n top: 100%;\n bottom: auto;\n }\n\n &.align-center::before {\n left: 50%;\n transform: translateX(-50%);\n }\n }\n\n &.left {\n &::before {\n @include css-triangle($tooltip-pip-width, $tooltip-background-color, right);\n left: 100%;\n }\n\n &.align-center::before {\n bottom: auto;\n top: 50%;\n transform: translateY(-50%);\n }\n }\n\n &.right {\n &::before {\n @include css-triangle($tooltip-pip-width, $tooltip-background-color, left);\n right: 100%;\n left: auto;\n }\n\n &.align-center::before {\n bottom: auto;\n top: 50%;\n transform: translateY(-50%);\n }\n }\n\n &.align-top::before {\n bottom: auto;\n top: 10%;\n }\n\n &.align-bottom::before {\n bottom: 10%;\n top: auto;\n }\n\n &.align-left::before {\n left: 10%;\n right: auto;\n }\n\n &.align-right::before {\n left: auto;\n right: 10%;\n }\n}\n\n@mixin foundation-tooltip {\n .has-tip {\n @include has-tip;\n }\n\n .tooltip {\n @include tooltip;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group accordion\n////\n\n/// Default background color of an accordion group.\n/// @type Color\n$accordion-background: $white !default;\n\n/// If `true`, adds plus and minus icons to the side of each accordion title.\n/// @type Boolean\n$accordion-plusminus: true !default;\n\n/// Content for the plus icon when `$accordion-plusminus` is `true`\n/// @type String\n$accordion-plus-content: '\\002B' !default;\n\n/// Content for the minus icon when `$accordion-plusminus` is `true`\n/// @type String\n$accordion-minus-content: '\\2013' !default;\n\n/// Font size of accordion titles.\n/// @type Number\n$accordion-title-font-size: rem-calc(12) !default;\n\n/// Default text color for items in a Menu.\n/// @type Color\n$accordion-item-color: $primary-color !default;\n\n/// Default background color on hover for items in a Menu.\n/// @type Color\n$accordion-item-background-hover: $light-gray !default;\n\n/// Default padding of an accordion item.\n/// @type Number | List\n$accordion-item-padding: 1.25rem 1rem !default;\n\n/// Default background color of tab content.\n/// @type Color\n$accordion-content-background: $white !default;\n\n/// Default border color of tab content.\n/// @type Color\n$accordion-content-border: 1px solid $light-gray !default;\n\n/// Default text color of tab content.\n/// @type Color\n$accordion-content-color: $body-font-color !default;\n\n/// Default padding for tab content.\n/// @type Number | List\n$accordion-content-padding: 1rem !default;\n\n/// Adds styles for an accordion container. Apply this to the same element that gets `data-accordion`.\n@mixin accordion-container (\n $background: $accordion-background\n) {\n margin-#{$global-left}: 0;\n background: $background;\n list-style-type: none;\n\n &[disabled] {\n .accordion-title {\n cursor: not-allowed;\n }\n }\n}\n\n/// Adds styles for the accordion item. Apply this to the list item within an accordion ul.\n@mixin accordion-item {\n &:first-child > :first-child {\n border-radius: $global-radius $global-radius 0 0;\n }\n\n &:last-child > :last-child {\n border-radius: 0 0 $global-radius $global-radius;\n }\n}\n\n/// Adds styles for the title of an accordion item. Apply this to the link within an accordion item.\n@mixin accordion-title (\n $padding: $accordion-item-padding,\n $font-size: $accordion-title-font-size,\n $color: $accordion-item-color,\n $border: $accordion-content-border,\n $background-hover: $accordion-item-background-hover\n) {\n position: relative;\n display: block;\n padding: $padding;\n\n border: $border;\n border-bottom: 0;\n\n font-size: $font-size;\n line-height: 1;\n color: $color;\n\n :last-child:not(.is-active) > & {\n border-bottom: $border;\n border-radius: 0 0 $global-radius $global-radius;\n }\n\n &:hover,\n &:focus {\n background-color: $background-hover;\n }\n\n @if $accordion-plusminus {\n &::before {\n position: absolute;\n top: 50%;\n #{$global-right}: 1rem;\n margin-top: -0.5rem;\n content: $accordion-plus-content;\n }\n\n .is-active > &::before {\n content: $accordion-minus-content;\n }\n }\n}\n\n/// Adds styles for accordion content. Apply this to the content pane below an accordion item's title.\n@mixin accordion-content (\n $padding: $accordion-content-padding,\n $border: $accordion-content-border,\n $background: $accordion-content-background,\n $color: $accordion-content-color\n) {\n display: none;\n padding: $padding;\n\n border: $border;\n border-bottom: 0;\n background-color: $background;\n\n color: $color;\n\n :last-child > &:last-child {\n border-bottom: $border;\n }\n}\n\n@mixin foundation-accordion {\n .accordion {\n @include accordion-container;\n }\n\n .accordion-item {\n @include accordion-item;\n }\n\n .accordion-title {\n @include accordion-title;\n }\n\n .accordion-content {\n @include accordion-content;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group media-object\n////\n\n/// Bottom margin of a media object.\n/// @type Number\n$mediaobject-margin-bottom: $global-margin !default;\n\n/// Left and right padding on sections within a media object.\n/// @type Number\n$mediaobject-section-padding: $global-padding !default;\n\n/// Width of images within a media object, when the object is stacked vertically. Set to 'auto' to use the image's natural width.\n/// @type Number\n$mediaobject-image-width-stacked: 100% !default;\n\n/// Adds styles for a media object container.\n@mixin media-object-container {\n display: if($global-flexbox, flex, block);\n margin-bottom: $mediaobject-margin-bottom;\n\n @if $global-flexbox {\n flex-wrap: nowrap;\n }\n\n img {\n max-width: none;\n }\n\n @if $global-flexbox {\n &.stack-for-#{$-zf-zero-breakpoint} {\n @include breakpoint($-zf-zero-breakpoint only) {\n flex-wrap: wrap;\n }\n }\n }\n}\n\n/// Adds styles for sections within a media object.\n/// @param {Number} $padding [$mediaobject-section-padding] - Padding between sections.\n@mixin media-object-section($padding: $mediaobject-section-padding) {\n @if $global-flexbox {\n flex: 0 1 auto;\n }\n @else {\n display: table-cell;\n vertical-align: top;\n }\n\n &:first-child {\n padding-#{$global-right}: $padding;\n }\n\n &:last-child:not(:nth-child(2)) {\n padding-#{$global-left}: $padding;\n }\n\n > :last-child {\n margin-bottom: 0;\n }\n\n .stack-for-#{$-zf-zero-breakpoint} & {\n @include breakpoint($-zf-zero-breakpoint only) {\n @include media-object-stack;\n }\n }\n\n @if $global-flexbox {\n &.main-section {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n }\n }\n @else {\n &.middle {\n vertical-align: middle;\n }\n\n &.bottom {\n vertical-align: bottom;\n }\n }\n}\n\n/// Adds styles to stack sections of a media object. Apply this to the section elements, not the container.\n@mixin media-object-stack {\n padding: 0;\n padding-bottom: $mediaobject-section-padding;\n\n @if $global-flexbox {\n flex-basis: 100%;\n max-width: 100%;\n }\n @else {\n display: block;\n }\n\n img {\n width: $mediaobject-image-width-stacked;\n }\n}\n\n@mixin foundation-media-object {\n .media-object {\n @include media-object-container;\n }\n\n .media-object-section {\n @include media-object-section;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group orbit\n////\n\n/// Default color for Orbit's bullets.\n/// @type Color\n$orbit-bullet-background: $medium-gray !default;\n\n/// Default active color for Orbit's bullets.\n/// @type Color\n$orbit-bullet-background-active: $dark-gray !default;\n\n/// Default diameter for Orbit's bullets.\n/// @type Number\n$orbit-bullet-diameter: 1.2rem !default;\n\n/// Default margin between Orbit's bullets.\n/// @type Number\n$orbit-bullet-margin: 0.1rem !default;\n\n/// Default distance from slide region for Orbit's bullets.\n/// @type Number\n$orbit-bullet-margin-top: 0.8rem !default;\n\n/// Default bottom margin from Orbit's bullets to whatever content may lurk below it.\n/// @type Number\n$orbit-bullet-margin-bottom: 0.8rem !default;\n\n/// Default background color for Orbit's caption.\n/// @type Color\n$orbit-caption-background: rgba($black, 0.5) !default;\n\n/// Default padding for Orbit's caption.\n/// @type Number\n$orbit-caption-padding: 1rem !default;\n\n/// Default background color for Orbit's controls when hovered.\n/// @type Color\n$orbit-control-background-hover: rgba($black, 0.5) !default;\n\n/// Default padding for Orbit's controls.\n/// @type Number\n$orbit-control-padding: 1rem !default;\n\n/// Default z-index for Orbit's controls.\n/// @type Number\n$orbit-control-zindex: 10 !default;\n\n/// Adds styles for the outer Orbit wrapper. These styles are used on the `.orbit` class.\n@mixin orbit-wrapper {\n position: relative;\n}\n\n/// Adds styles for the inner Orbit slide container. These styles are used on the `.orbit-container` class.\n@mixin orbit-container {\n position: relative;\n height: 0; // Prevent FOUC by not showing until JS sets height\n margin: 0;\n list-style: none;\n overflow: hidden;\n}\n\n/// Adds styles for the individual slides of an Orbit slider. These styles are used on the `.orbit-slide` class.\n@mixin orbit-slide {\n width: 100%;\n position: absolute;\n\n &.no-motionui {\n &.is-active {\n top: 0;\n left: 0;\n }\n }\n}\n\n@mixin orbit-figure {\n margin: 0;\n}\n\n/// Adds styles for a slide containing an image. These styles are used on the `.orbit-image` class.\n@mixin orbit-image {\n width: 100%;\n max-width: 100%;\n margin: 0;\n}\n\n/// Adds styles for an orbit slide caption. These styles are used on the `.orbit-caption` class.\n@mixin orbit-caption {\n position: absolute;\n bottom: 0;\n width: 100%;\n margin-bottom: 0;\n padding: $orbit-caption-padding;\n\n background-color: $orbit-caption-background;\n color: color-pick-contrast($orbit-caption-background);\n}\n\n/// Adds base styles for the next/previous buttons in an Orbit slider. These styles are shared between the `.orbit-next` and `.orbit-previous` classes in the default CSS.\n@mixin orbit-control {\n @include disable-mouse-outline;\n @include vertical-center;\n z-index: $orbit-control-zindex;\n padding: $orbit-control-padding;\n color: $white;\n\n &:hover,\n &:active,\n &:focus {\n background-color: $orbit-control-background-hover;\n }\n}\n\n/// Adds styles for the Orbit previous button. These styles are used on the `.orbit-previous` class.\n@mixin orbit-previous {\n #{$global-left}: 0;\n}\n\n/// Adds styles for the Orbit next button. These styles are used on the `.orbit-next` class.\n@mixin orbit-next {\n #{$global-left}: auto;\n #{$global-right}: 0;\n}\n\n/// Adds styles for a container of Orbit bullets. /// Adds styles for the Orbit previous button. These styles are used on the `.orbit-bullets` class.\n@mixin orbit-bullets {\n @include disable-mouse-outline;\n position: relative;\n margin-top: $orbit-bullet-margin-top;\n margin-bottom: $orbit-bullet-margin-bottom;\n text-align: center;\n\n button {\n width: $orbit-bullet-diameter;\n height: $orbit-bullet-diameter;\n margin: $orbit-bullet-margin;\n\n border-radius: 50%;\n background-color: $orbit-bullet-background;\n\n &:hover {\n background-color: $orbit-bullet-background-active;\n }\n\n &.is-active {\n background-color: $orbit-bullet-background-active;\n }\n }\n}\n\n@mixin foundation-orbit {\n .orbit {\n @include orbit-wrapper;\n }\n\n .orbit-container {\n @include orbit-container;\n }\n\n .orbit-slide {\n @include orbit-slide;\n }\n\n .orbit-figure {\n @include orbit-figure;\n }\n\n .orbit-image {\n @include orbit-image;\n }\n\n .orbit-caption {\n @include orbit-caption;\n }\n\n %orbit-control {\n @include orbit-control;\n }\n\n .orbit-previous {\n @extend %orbit-control;\n @include orbit-previous;\n }\n\n .orbit-next {\n @extend %orbit-control;\n @include orbit-next;\n }\n\n .orbit-bullets {\n @include orbit-bullets;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group responsive-embed\n////\n\n/// Margin below a responsive embed container.\n/// @type Number\n$responsive-embed-margin-bottom: rem-calc(16) !default;\n\n/// Aspect ratios used to determine padding-bottom of responsive embed containers.\n/// @type Map\n$responsive-embed-ratios: (\n default: 4 by 3,\n widescreen: 16 by 9,\n) !default;\n\n/// Creates a responsive embed container.\n/// @param {String|List} $ratio [default] - Ratio of the container. Can be a key from the `$responsive-embed-ratios` map or a list formatted as `x by y`.\n@mixin responsive-embed($ratio: default) {\n @if type-of($ratio) == 'string' {\n $ratio: map-get($responsive-embed-ratios, $ratio);\n }\n position: relative;\n height: 0;\n margin-bottom: $responsive-embed-margin-bottom;\n padding-bottom: ratio-to-percentage($ratio);\n overflow: hidden;\n\n iframe,\n object,\n embed,\n video {\n position: absolute;\n top: 0;\n #{$global-left}: 0;\n width: 100%;\n height: 100%;\n }\n}\n\n@mixin foundation-responsive-embed {\n .responsive-embed,\n .flex-video {\n @include responsive-embed($ratio: default);\n\n $ratios: map-remove($responsive-embed-ratios, default);\n\n @each $name, $ratio in $ratios {\n &.#{$name} {\n padding-bottom: ratio-to-percentage($ratio);\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group tabs\n////\n\n/// Default margin of the tab bar.\n/// @type Number\n$tab-margin: 0 !default;\n\n/// Default background color of a tab bar.\n/// @type Color\n$tab-background: $white !default;\n\n/// Font color of tab item.\n/// @type Color\n$tab-color: $primary-color !default;\n\n/// Active background color of a tab bar.\n/// @type Color\n$tab-background-active: $light-gray !default;\n\n/// Active font color of tab item.\n/// @type Color\n$tab-active-color: $primary-color !default;\n\n/// Font size of tab items.\n/// @type Number\n$tab-item-font-size: rem-calc(12) !default;\n\n/// Default background color on hover for items in a Menu.\n$tab-item-background-hover: $white !default;\n\n/// Default padding of a tab item.\n/// @type Number\n$tab-item-padding: 1.25rem 1.5rem !default;\n\n/// Default background color of tab content.\n/// @type Color\n$tab-content-background: $white !default;\n\n/// Default border color of tab content.\n/// @type Color\n$tab-content-border: $light-gray !default;\n\n/// Default text color of tab content.\n/// @type Color\n$tab-content-color: $body-font-color !default;\n\n/// Default padding for tab content.\n/// @type Number | List\n$tab-content-padding: 1rem !default;\n\n/// Adds styles for a tab container. Apply this to a `<ul>`.\n@mixin tabs-container (\n $margin: $tab-margin,\n $background: $tab-background,\n $border-color: $tab-content-border\n) {\n @include clearfix;\n margin: $margin;\n border: 1px solid $border-color;\n background: $background;\n list-style-type: none;\n}\n\n/// Augments a tab container to have vertical tabs. Use this in conjunction with `tabs-container()`.\n@mixin tabs-container-vertical {\n > li {\n display: block;\n float: none;\n width: auto;\n }\n}\n\n/// Adds styles for the links within a tab container. Apply this to the `<li>` elements inside a tab container.\n@mixin tabs-title (\n $padding: $tab-item-padding,\n $font-size: $tab-item-font-size,\n $color: $tab-color,\n $color-active: $tab-active-color,\n $background-hover: $tab-item-background-hover,\n $background-active: $tab-background-active\n) {\n float: #{$global-left};\n\n > a {\n @include disable-mouse-outline;\n display: block;\n padding: $padding;\n font-size: $font-size;\n line-height: 1;\n color: $color;\n\n &:hover {\n background: $background-hover;\n color: scale-color($color, $lightness: -14%);\n }\n\n &:focus,\n &[aria-selected='true'] {\n background: $background-active;\n color: $color-active;\n }\n }\n}\n\n/// Adds styles for the wrapper that surrounds a tab group's content panes.\n@mixin tabs-content (\n $background: $tab-content-background,\n $color: $tab-content-color,\n $border-color: $tab-content-border\n) {\n border: 1px solid $border-color;\n border-top: 0;\n background: $background;\n color: $color;\n transition: all 0.5s ease;\n}\n\n/// Augments a tab content container to have a vertical style, by shifting the border around. Use this in conjunction with `tabs-content()`.\n@mixin tabs-content-vertical (\n $border-color: $tab-content-border\n) {\n border: 1px solid $border-color;\n border-#{$global-left}: 0;\n}\n\n/// Adds styles for an individual tab content panel within the tab content container.\n@mixin tabs-panel (\n $padding: $tab-content-padding\n) {\n display: none;\n padding: $padding;\n\n &.is-active {\n display: block;\n }\n}\n\n@mixin foundation-tabs {\n .tabs {\n @include tabs-container;\n }\n\n // Vertical\n .tabs.vertical {\n @include tabs-container-vertical;\n }\n\n // Simple\n .tabs.simple {\n > li > a {\n padding: 0;\n\n &:hover {\n background: transparent;\n }\n }\n }\n\n // Primary color\n .tabs.primary {\n background: $primary-color;\n\n > li > a {\n color: color-pick-contrast($primary-color);\n\n &:hover,\n &:focus {\n background: smart-scale($primary-color);\n }\n }\n }\n\n .tabs-title {\n @include tabs-title;\n }\n\n .tabs-content {\n @include tabs-content;\n }\n\n .tabs-content.vertical {\n @include tabs-content-vertical;\n }\n\n .tabs-panel {\n @include tabs-panel;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group thumbnail\n////\n\n/// Border around thumbnail images.\n/// @type Border\n$thumbnail-border: 4px solid $white !default;\n\n/// Bottom margin for thumbnail images.\n/// @type Length\n$thumbnail-margin-bottom: $global-margin !default;\n\n/// Box shadow under thumbnail images.\n/// @type Shadow\n$thumbnail-shadow: 0 0 0 1px rgba($black, 0.2) !default;\n\n/// Box shadow under thumbnail images.\n/// @type Shadow\n$thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5) !default;\n\n/// Transition proprties for thumbnail images.\n/// @type Transition\n$thumbnail-transition: box-shadow 200ms ease-out !default;\n\n/// Default radius for thumbnail images.\n/// @type Number\n$thumbnail-radius: $global-radius !default;\n\n/// Adds thumbnail styles to an element.\n@mixin thumbnail {\n display: inline-block;\n max-width: 100%;\n margin-bottom: $thumbnail-margin-bottom;\n\n border: $thumbnail-border;\n border-radius: $thumbnail-radius;\n box-shadow: $thumbnail-shadow;\n\n line-height: 0;\n}\n\n@mixin thumbnail-link {\n transition: $thumbnail-transition;\n\n &:hover,\n &:focus {\n box-shadow: $thumbnail-shadow-hover;\n }\n\n image {\n box-shadow: none;\n }\n}\n\n@mixin foundation-thumbnail {\n .thumbnail {\n @include thumbnail;\n }\n\n a.thumbnail {\n @include thumbnail-link;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group menu\n////\n\n/// Margin of a menu.\n/// @type Number\n$menu-margin: 0 !default;\n\n/// Left-hand margin of a nested menu.\n/// @type Number\n$menu-nested-margin: $global-menu-nested-margin !default;\n\n/// Padding for items in a pill menu.\n/// @type Number\n$menu-items-padding: $global-menu-padding !default;\n\n/// margin for items in a simple menu.\n/// @type Number\n$menu-simple-margin: 1rem !default;\n\n/// Text color of an active menu item.\n/// @type Color\n$menu-item-color-active: $white !default;\n\n/// Alternative text color of an active menu item..\n/// @type Color\n$menu-item-color-alt-active: $black !default;\n\n/// Background color of an active menu item.\n/// @type Color\n$menu-item-background-active: get-color(primary) !default;\n\n/// Spacing between an icon and text in a menu item.\n/// @type Number\n$menu-icon-spacing: 0.25rem !default;\n\n/// Backward compatibility for menu state. If true, this duplicate `active` with `is-active`.\n/// But please note that `active` will be removed in upcoming versions.\n/// @type Boolean\n$menu-state-back-compat: true !default;\n\n/// Backward compatibility for menu centered. If true, this duplicate `.menu-centered > .menu` with `.menu.align-center`.\n/// But please note that `menu-centered` will be removed in upcoming versions.\n/// @type Boolean\n$menu-centered-back-compat: true !default;\n\n/// Backward compatibility for using `icon-*` classes without `.icons` classes\n/// But please note that this backward compatibility will be removed in upcoming versions.\n/// @type Boolean\n$menu-icons-back-compat: true !default;\n\n/// Creates the base styles for a Menu.\n@mixin menu-base {\n padding: 0;\n margin: 0;\n list-style: none;\n position: relative;\n\n @if $global-flexbox {\n display: flex;\n flex-wrap: wrap;\n }\n\n li {\n @include disable-mouse-outline;\n }\n\n a,\n .button {\n line-height: 1;\n text-decoration: none;\n display: block;\n padding: $menu-items-padding;\n }\n\n // Reset styles of inner elements\n input,\n select,\n a,\n button {\n margin-bottom: 0;\n }\n\n input {\n display: inline-block;\n }\n}\n\n/// Expands the items of a Menu, so each item is the same width.\n@mixin menu-expand {\n @if $global-flexbox {\n li {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n }\n }\n @else {\n display: table;\n width: 100%;\n\n > li {\n display: table-cell;\n vertical-align: middle;\n }\n }\n}\n\n/// Align menu items.\n@mixin menu-align($alignment) {\n @if $alignment == left {\n @if $global-flexbox {\n justify-content: flex-start;\n }\n @else {\n text-align: $global-left;\n }\n }\n @else if $alignment == right {\n @if $global-flexbox {\n li {\n display: flex;\n justify-content: flex-end;\n\n .submenu li {\n justify-content: flex-start;\n }\n }\n\n &.vertical li {\n display: block;\n text-align: $global-right;\n\n .submenu li {\n text-align: $global-right;\n }\n }\n }\n @else {\n text-align: $global-right;\n\n .submenu li {\n text-align: $global-left;\n }\n\n &.vertical {\n .submenu li {\n text-align: $global-right;\n }\n }\n }\n }\n @else if $alignment == center {\n @if $global-flexbox {\n li {\n display: flex;\n justify-content: center;\n\n .submenu li {\n justify-content: flex-start;\n }\n }\n }\n @else {\n text-align: center;\n\n .submenu li {\n text-align: $global-left;\n }\n }\n }\n}\n\n/// Sets the direction of a Menu.\n/// @param {Keyword} $dir [horizontal] - Direction of the Menu. Can be `horizontal` or `vertical`.\n@mixin menu-direction($dir: horizontal) {\n @if $dir == horizontal {\n @if $global-flexbox {\n flex-wrap: wrap;\n flex-direction: row;\n }\n @else {\n li {\n display: inline-block;\n }\n }\n }\n @else if $dir == vertical {\n @if $global-flexbox {\n flex-wrap: nowrap;\n flex-direction: column;\n }\n @else {\n li {\n display: block;\n }\n }\n }\n @else {\n @warn 'The direction used for menu-direction() must be horizontal or vertical.';\n }\n}\n\n/// Creates a simple Menu, which has no padding or hover state.\n/// @param {Keyword} $dir [$global-left] - Direction of the menu. This effects the side of the `<li>` that receives the margin.\n/// @param {Number} $margin [$menu-simple-margin] - The margin to apply to each `<li>`.\n@mixin menu-simple($dir: $global-left, $margin: $menu-simple-margin) {\n @if $global-flexbox {\n align-items: center;\n }\n\n li + li {\n margin-#{$dir}: $margin;\n }\n\n a {\n padding: 0;\n }\n}\n\n/// Adds styles for a nested Menu, by adding `margin-left` to the menu.\n/// @param {Keyword|Number} $margin [$menu-nested-margin] - Length of the margin.\n/// @param {Keyword} $nested-alignment [left] - Alignment of the nested class\n@mixin menu-nested(\n $margin: $menu-nested-margin,\n $nested-alignment: left\n) {\n @if $nested-alignment == right {\n margin-#{$global-right}: $margin;\n margin-#{$global-left}: 0;\n }\n @else {\n margin-#{$global-right}: 0;\n margin-#{$global-left}: $margin;\n }\n\n}\n\n/// Adds basic styles for icons in menus.\n@mixin menu-icons() {\n @if $global-flexbox {\n a {\n display: flex;\n }\n }\n @else {\n img,\n i,\n svg {\n vertical-align: middle;\n\n + span {\n vertical-align: middle;\n }\n }\n }\n}\n\n/// Align top/bottom icons within a menu.\n/// @param {Keyword} $alignment [center] - Alignment of the icon\n@mixin menu-icon-alignment($alignment: center) {\n @if $global-flexbox {\n &.icon-top,\n &.icon-bottom {\n li a {\n img,\n i,\n svg {\n @if $alignment == left {\n text-align: left;\n }\n\n @else if $alignment == right {\n text-align: right;\n }\n\n @else {\n text-align: center;\n }\n }\n }\n }\n }\n}\n\n/// Adds position classes for icons within a menu.\n@mixin menu-icon-position($position: left, $spacing: $menu-icon-spacing) {\n @if $position == left {\n li a {\n @if $global-flexbox {\n flex-flow: row nowrap;\n }\n\n img,\n i,\n svg {\n margin-#{$global-right}: $spacing;\n\n @if not $global-flexbox {\n display: inline-block;\n }\n }\n }\n }\n @else if $position == right {\n li a {\n @if $global-flexbox {\n flex-flow: row nowrap;\n }\n\n img,\n i,\n svg {\n margin-#{$global-left}: $spacing;\n\n @if not $global-flexbox {\n display: inline-block;\n }\n }\n }\n }\n @else if $position == top {\n li a {\n @if $global-flexbox {\n flex-flow: column nowrap;\n }\n @else {\n text-align: center;\n }\n\n img,\n i,\n svg {\n @if not $global-flexbox {\n display: block;\n margin: 0 auto $spacing;\n }\n @else {\n align-self: stretch;\n margin-bottom: $spacing;\n text-align: center;\n }\n }\n }\n }\n @else if $position == bottom {\n li a {\n @if $global-flexbox {\n flex-flow: column nowrap;\n }\n @else {\n text-align: center;\n }\n\n img,\n i,\n svg {\n @if not $global-flexbox {\n display: block;\n margin: $spacing auto 0;\n }\n @else {\n align-self: stretch;\n margin-bottom: $spacing;\n text-align: center;\n }\n }\n }\n }\n}\n\n@mixin menu-text {\n padding: $global-menu-padding;\n\n font-weight: bold;\n line-height: 1;\n color: inherit;\n}\n\n@mixin menu-state-active {\n background: $menu-item-background-active;\n color: color-pick-contrast($menu-item-background-active, ($menu-item-color-active, $menu-item-color-alt-active));\n}\n\n@mixin foundation-menu {\n .menu {\n @include menu-base;\n\n // Default orientation: horizontal\n &, &.horizontal {\n @include menu-direction(horizontal);\n }\n\n // Vertical orientation modifier\n &.vertical {\n @include menu-direction(vertical);\n @include menu-icon-alignment(left);\n }\n\n // Even-width modifier for horizontal orientation\n &.expanded {\n @include menu-expand;\n @include menu-icon-alignment(left);\n }\n\n // Simple\n &.simple {\n @include menu-simple;\n }\n\n // Breakpoint specific versions\n @include -zf-each-breakpoint($small: false) {\n &.#{$-zf-size}-horizontal {\n @include menu-direction(horizontal);\n }\n\n &.#{$-zf-size}-vertical {\n @include menu-direction(vertical);\n }\n\n &.#{$-zf-size}-expanded {\n @include menu-expand;\n }\n\n &.#{$-zf-size}-simple {\n @include menu-expand;\n }\n }\n\n // Nesting\n &.nested {\n @include menu-nested;\n }\n\n // Icon Base Styles\n &.icons {\n @include menu-icons;\n }\n\n // Backward Compatibility for active state\n @if $menu-icons-back-compat {\n &.icon-top,\n &.icon-right,\n &.icon-bottom,\n &.icon-left {\n @include menu-icons;\n }\n }\n\n // Menu icon position\n // Includes specificity to nested icons with a different position\n &,\n &.nested {\n // Icon Left\n &.icon-left {\n @include menu-icon-position(left);\n }\n\n // Icon Right\n &.icon-right {\n @include menu-icon-position(right);\n }\n\n // Icon Top\n &.icon-top {\n @include menu-icon-position(top);\n }\n\n // Icon Bottom\n &.icon-bottom {\n @include menu-icon-position(bottom);\n }\n }\n\n // Active state\n .is-active > a {\n @include menu-state-active;\n }\n\n // Backward Compatibility for active state\n @if $menu-state-back-compat {\n .active > a {\n @include menu-state-active;\n }\n }\n\n // Align left\n &.align-#{$global-left} {\n @include menu-align(left);\n }\n\n // Align right\n &.align-#{$global-right} {\n @include menu-align(right);\n @include menu-icon-alignment(right);\n\n .nested {\n @include menu-nested($nested-alignment: right);\n }\n }\n\n // Align center\n &.align-center {\n @include menu-align(center);\n }\n\n .menu-text {\n @include menu-text;\n }\n }\n\n @if $menu-centered-back-compat {\n .menu-centered {\n > .menu {\n @if $global-flexbox {\n justify-content: center;\n }\n\n @include menu-align(center);\n }\n }\n }\n\n // Prevent FOUC when using the Responsive Menu plugin\n .no-js [data-responsive-menu] ul {\n display: none;\n }\n}\n","@mixin foundation-menu-icon {\n .menu-icon {\n @include hamburger($color: $titlebar-icon-color, $color-hover: $titlebar-icon-color-hover);\n }\n\n .menu-icon.dark {\n @include hamburger;\n }\n}\n","////\n/// @group accordion-menu\n////\n\n/// Sets accordion menu padding.\n/// @type Number\n$accordionmenu-padding: $global-menu-padding !default;\n\n/// Sets accordion menu nested margin\n/// @type Number\n$accordionmenu-nested-margin: $global-menu-nested-margin !default;\n\n/// Sets accordion menu submenu padding.\n/// @type Number\n$accordionmenu-submenu-padding: $accordionmenu-padding !default;\n\n/// Sets if accordion menus have the default arrow styles.\n/// @type Boolean\n$accordionmenu-arrows: true !default;\n\n/// Sets accordion menu arrow color if arrow is used.\n/// @type Color\n$accordionmenu-arrow-color: $primary-color !default;\n\n/// Sets accordion menu item padding.\n/// @type Color\n$accordionmenu-item-background: null !default;\n\n/// Sets accordion menu item border.\n/// @type Color\n$accordionmenu-border: null !default;\n\n/// Sets accordion menu item padding.\n/// @type Color\n$accordionmenu-submenu-toggle-background: null !default;\n\n/// Sets accordion menu item padding.\n/// @type List\n$accordion-submenu-toggle-border: $accordionmenu-border !default;\n\n/// Sets accordion menu submenu toggle background width.\n/// @type Number\n$accordionmenu-submenu-toggle-width: 40px !default;\n\n/// Sets accordion menu submenu toggle background height.\n/// @type Number\n$accordionmenu-submenu-toggle-height: $accordionmenu-submenu-toggle-width !default;\n\n/// Sets accordion menu arrow size if arrow is used.\n/// @type Length\n$accordionmenu-arrow-size: 6px !default;\n\n@mixin zf-accordion-menu-left-right-arrows {\n .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {\n position: relative;\n\n &::after {\n @include css-triangle($accordionmenu-arrow-size, $accordionmenu-arrow-color, down);\n position: absolute;\n top: 50%;\n margin-top: -1 * ($accordionmenu-arrow-size * 0.5);\n #{$global-right}: 1rem;\n }\n }\n\n &.align-left .is-accordion-submenu-parent > a::after {\n right: 1rem;\n left: auto;\n }\n\n &.align-right .is-accordion-submenu-parent > a::after {\n right: auto;\n left: 1rem;\n }\n}\n@mixin foundation-accordion-menu {\n\n .accordion-menu {\n @if $accordionmenu-border {\n border-bottom: $accordionmenu-border;\n }\n\n li {\n @if $accordionmenu-border {\n border-top: $accordionmenu-border;\n border-right: $accordionmenu-border;\n border-left: $accordionmenu-border;\n }\n width: 100%;\n }\n\n a {\n @if $accordionmenu-item-background {\n background: $accordionmenu-item-background;\n }\n padding: $accordionmenu-padding;\n }\n\n .is-accordion-submenu a {\n padding: $accordionmenu-submenu-padding;\n }\n\n .nested.is-accordion-submenu {\n @include menu-nested($accordionmenu-nested-margin);\n }\n\n &.align-#{$global-right} {\n .nested.is-accordion-submenu {\n @include menu-nested($accordionmenu-nested-margin, right);\n }\n }\n\n @if $accordionmenu-arrows {\n @include zf-accordion-menu-left-right-arrows;\n\n .is-accordion-submenu-parent[aria-expanded='true'] > a::after {\n transform: rotate(180deg);\n transform-origin: 50% 50%;\n }\n }\n }\n\n .is-accordion-submenu li {\n @if $accordionmenu-border {\n border-right: 0;\n border-left: 0;\n }\n }\n\n .is-accordion-submenu-parent {\n position: relative;\n }\n\n .has-submenu-toggle > a {\n margin-#{$global-right}: $accordionmenu-submenu-toggle-width;\n }\n\n // Submenu toggle\n .submenu-toggle {\n position: absolute;\n top: 0;\n #{$global-right}: 0;\n\n width: $accordionmenu-submenu-toggle-width;\n height: $accordionmenu-submenu-toggle-height;\n\n cursor: pointer;\n\n border-#{$global-left}: $accordion-submenu-toggle-border;\n\n @if $accordionmenu-submenu-toggle-background {\n background: $accordionmenu-submenu-toggle-background;\n }\n\n // Add the arrow to the toggle\n &::after {\n @include css-triangle($accordionmenu-arrow-size, $accordionmenu-arrow-color, down);\n\n top: 0;\n bottom: 0;\n margin: auto;\n }\n }\n\n // Rotate the arrow when menu is open\n .submenu-toggle[aria-expanded='true']::after {\n transform: scaleY(-1);\n transform-origin: 50% 50%;\n }\n\n .submenu-toggle-text {\n @include element-invisible;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group drilldown\n////\n\n/// Transition property to use for animating menus.\n/// @type Transition\n$drilldown-transition: transform 0.15s linear !default;\n\n/// Adds arrows to drilldown items with submenus, as well as the back button.\n/// @type Boolean\n$drilldown-arrows: true !default;\n\n/// Sets drilldown menu item padding.\n/// @type Number\n$drilldown-padding: $global-menu-padding !default;\n\n/// Sets drilldown menu nested margin\n/// @type Number\n$drilldown-nested-margin: 0 !default;\n\n/// Background color for drilldown top level items.\n/// @type Color\n$drilldown-background: $white !default;\n\n/// Sets drilldown menu item padding in the submenu.\n/// @type Number\n$drilldown-submenu-padding: $drilldown-padding !default;\n\n/// Background color for drilldown submenus.\n/// @type Color\n$drilldown-submenu-background: $white !default;\n\n/// Sets drilldown arrow color if arrow is used.\n/// @type Color\n$drilldown-arrow-color: $primary-color !default;\n\n/// Sets drilldown arrow size if arrow is used.\n/// @type Length\n$drilldown-arrow-size: 6px !default;\n\n@mixin zf-drilldown-left-right-arrows {\n .is-drilldown-submenu-parent > a {\n position: relative;\n\n &::after {\n @include css-triangle($drilldown-arrow-size, $drilldown-arrow-color, $global-right);\n position: absolute;\n top: 50%;\n margin-top: -1 * $drilldown-arrow-size;\n #{$global-right}: 1rem;\n }\n }\n\n &.align-left .is-drilldown-submenu-parent > a::after {\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);\n right: 1rem;\n left: auto;\n }\n\n &.align-right .is-drilldown-submenu-parent > a::after {\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);\n right: auto;\n left: 1rem;\n }\n\n}\n\n@mixin foundation-drilldown-menu {\n // Applied to the Menu container\n .is-drilldown {\n position: relative;\n overflow: hidden;\n\n li {\n display: block;\n }\n\n &.animate-height {\n transition: height 0.5s;\n }\n }\n\n // The top level <ul>\n .drilldown {\n a {\n padding: $drilldown-padding;\n background: $drilldown-background;\n }\n\n // Applied to submenu <ul>s\n .is-drilldown-submenu {\n position: absolute;\n top: 0;\n #{$global-left}: 100%;\n z-index: -1;\n\n width: 100%;\n background: $drilldown-submenu-background;\n transition: $drilldown-transition;\n\n &.is-active {\n z-index: 1;\n display: block;\n transform: translateX(if($global-text-direction == ltr, -100%, 100%));\n }\n\n &.is-closing {\n transform: translateX(if($global-text-direction == ltr, 100%, -100%));\n }\n\n // Submenu item padding\n a {\n padding: $drilldown-submenu-padding;\n }\n }\n\n .nested.is-drilldown-submenu {\n @include menu-nested($drilldown-nested-margin);\n }\n\n .drilldown-submenu-cover-previous {\n min-height: 100%;\n }\n\n @if $drilldown-arrows {\n @include zf-drilldown-left-right-arrows;\n\n .js-drilldown-back > a::before {\n @include css-triangle($drilldown-arrow-size, $drilldown-arrow-color, $global-left);\n display: inline-block;\n vertical-align: middle;\n margin-#{$global-right}: 0.75rem; // Creates space between the arrow and the text\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group dropdown-menu\n////\n\n/// Enables arrows for items with dropdown menus.\n/// @type Boolean\n$dropdownmenu-arrows: true !default;\n\n/// Sets dropdown menu arrow color if arrow is used.\n/// @type Color\n$dropdownmenu-arrow-color: $anchor-color !default;\n\n/// Sets dropdown menu arrow size if arrow is used.\n/// @type Length\n$dropdownmenu-arrow-size: 6px !default;\n\n/// Sets dropdown menu arrow padding for aligning the arrow correctly.\n/// @type Length\n$dropdownmenu-arrow-padding: 1.5rem !default;\n\n/// Minimum width of dropdown sub-menus.\n/// @type Length\n$dropdownmenu-min-width: 200px !default;\n\n/// Background color for top level items.\n/// @type Color\n$dropdownmenu-background: null !default;\n\n/// Background color for dropdowns.\n/// @type Color\n$dropdownmenu-submenu-background: $white !default;\n\n/// Padding for top level items.\n/// @type Number\n$dropdownmenu-padding: $global-menu-padding !default;\n\n/// Sets dropdown menu nested margin\n/// @type Number\n$dropdownmenu-nested-margin: 0 !default;\n\n/// Padding for sub-menu items.\n/// @type Number\n$dropdownmenu-submenu-padding: $dropdownmenu-padding !default;\n\n/// Border for dropdown sub-menus.\n/// @type List\n$dropdownmenu-border: 1px solid $medium-gray !default;\n\n// Border width for dropdown sub-menus.\n// Used to adjust top margin of a sub-menu if a border is used.\n// @type Length\n$dropdownmenu-border-width: nth($dropdownmenu-border, 1);\n\n/// Text color of an active dropdown menu item. Explicit override for menu defaults\n/// @type Color\n$dropdown-menu-item-color-active: get-color(primary) !default;\n\n/// Background color of an active dropdown menu item. Explicit override for menu defaults\n/// @type Color\n$dropdown-menu-item-background-active: transparent !default;\n\n@mixin zf-dropdown-left-right-arrows {\n > a::after {\n #{$global-right}: 14px;\n }\n\n &.opens-left > a::after {\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);\n right: auto;\n left: 5px;\n }\n\n &.opens-right > a::after {\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);\n }\n}\n\n@mixin dropdown-menu-direction($dir: horizontal) {\n @if $dir == horizontal {\n > li.opens-left { // sass-lint:disable-line no-qualifying-elements\n > .is-dropdown-submenu {\n top: 100%;\n right: 0;\n left: auto;\n }\n }\n\n > li.opens-right { // sass-lint:disable-line no-qualifying-elements\n > .is-dropdown-submenu {\n top: 100%;\n right: auto;\n left: 0;\n }\n }\n\n @if $dropdownmenu-arrows {\n > li.is-dropdown-submenu-parent > a { // sass-lint:disable-line no-qualifying-elements\n position: relative;\n padding-#{$global-right}: $dropdownmenu-arrow-padding;\n }\n\n > li.is-dropdown-submenu-parent > a::after { // sass-lint:disable-line no-qualifying-elements\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, down);\n #{$global-right}: 5px;\n #{$global-left}: auto;\n margin-top: -1 * ($dropdownmenu-arrow-size * 0.5);\n }\n }\n }\n @else if $dir == vertical {\n > li {\n .is-dropdown-submenu {\n top: 0;\n }\n\n &.opens-left {\n > .is-dropdown-submenu {\n top: 0;\n right: 100%;\n left: auto;\n }\n }\n\n &.opens-right {\n > .is-dropdown-submenu {\n right: auto;\n left: 100%;\n }\n }\n\n @if $dropdownmenu-arrows {\n @include zf-dropdown-left-right-arrows;\n }\n }\n }\n @else {\n @warn 'The direction used for dropdown-menu-direction() must be horizontal or vertical.';\n }\n}\n\n@mixin foundation-dropdown-menu {\n .dropdown.menu {\n @include dropdown-menu-direction(horizontal);\n\n a {\n @include disable-mouse-outline;\n }\n\n // Top-level item\n > li > a {\n background: $dropdownmenu-background;\n padding: $dropdownmenu-padding;\n }\n\n // Top-level item active state\n > li.is-active > a {\n background: $dropdown-menu-item-background-active;\n color: $dropdown-menu-item-color-active;\n }\n\n .no-js & ul {\n display: none;\n }\n\n .nested.is-dropdown-submenu {\n @include menu-nested($dropdownmenu-nested-margin);\n }\n\n &.vertical {\n @include dropdown-menu-direction(vertical);\n }\n\n @each $size in $breakpoint-classes {\n @if $size != $-zf-zero-breakpoint {\n @include breakpoint($size) {\n &.#{$size}-horizontal {\n @include dropdown-menu-direction(horizontal);\n }\n\n &.#{$size}-vertical {\n @include dropdown-menu-direction(vertical);\n }\n }\n }\n }\n\n &.align-right {\n .is-dropdown-submenu.first-sub {\n top: 100%;\n right: 0;\n left: auto;\n }\n }\n }\n\n .is-dropdown-menu.vertical {\n width: 100px;\n\n &.align-right {\n float: right;\n }\n }\n\n .is-dropdown-submenu-parent {\n position: relative;\n\n a::after {\n position: absolute;\n top: 50%;\n #{$global-right}: 5px;\n #{$global-left}: auto;\n margin-top: -1 * $dropdownmenu-arrow-size;\n }\n\n &.opens-inner > .is-dropdown-submenu {\n\n top: 100%;\n @if $global-text-direction == 'rtl' {\n right: auto;\n }\n @else {\n left: auto;\n }\n }\n\n &.opens-left > .is-dropdown-submenu {\n right: 100%;\n left: auto;\n }\n\n &.opens-right > .is-dropdown-submenu {\n right: auto;\n left: 100%;\n }\n }\n\n .is-dropdown-submenu {\n position: absolute;\n top: 0;\n #{$global-left}: 100%;\n z-index: 1;\n\n display: none;\n min-width: $dropdownmenu-min-width;\n\n border: $dropdownmenu-border;\n background: $dropdownmenu-submenu-background;\n\n .dropdown & a {\n padding: $dropdownmenu-submenu-padding;\n }\n\n .is-dropdown-submenu-parent {\n @if $dropdownmenu-arrows {\n @include zf-dropdown-left-right-arrows;\n }\n }\n\n @if (type-of($dropdownmenu-border-width) == 'number') {\n .is-dropdown-submenu {\n margin-top: (-$dropdownmenu-border-width);\n }\n }\n\n > li {\n width: 100%;\n }\n\n // [TODO] Cut back specificity\n //&:not(.js-dropdown-nohover) > .is-dropdown-submenu-parent:hover > &, // why is this line needed? Opening is handled by JS and this causes some ugly flickering when the sub is re-positioned automatically...\n &.js-dropdown-active {\n display: block;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group off-canvas\n////\n\n/// Width map of a left/right off-canvas panel.\n/// @type Map\n$offcanvas-sizes: (\n small: 250px,\n) !default;\n\n/// Height map of a top/bottom off-canvas panel.\n/// @type Map\n$offcanvas-vertical-sizes: (\n small: 250px,\n) !default;\n\n/// Background color of an off-canvas panel.\n/// @type Color\n$offcanvas-background: $light-gray !default;\n\n/// Box shadow for the off-canvas overlap panel.\n/// @type Shadow\n$offcanvas-shadow: 0 0 10px rgba($black, 0.7) !default;\n\n/// Inner box shadow size for the off-canvas push panel.\n/// @type Number\n$offcanvas-inner-shadow-size: 20px !default;\n\n/// Inner box shadow color for the off-canvas push panel.\n/// @type Color\n$offcanvas-inner-shadow-color: rgba($black, 0.25) !default;\n\n/// Z-index of an off-canvas content overlay.\n/// @type Number\n$offcanvas-overlay-zindex: 11 !default;\n\n/// Z-index of an off-canvas panel with the `push` transition.\n/// @type Number\n$offcanvas-push-zindex: 12 !default;\n\n/// Z-index of an off-canvas panel with the `overlap` transition.\n/// @type Number\n$offcanvas-overlap-zindex: 13 !default;\n\n/// Z-index of an off-canvas panel using the `reveal-for-*` classes or mixin.\n/// @type Number\n$offcanvas-reveal-zindex: 12 !default;\n\n/// Length of the animation on an off-canvas panel.\n/// @type Number\n$offcanvas-transition-length: 0.5s !default;\n\n/// Timing function of the animation on an off-canvas panel.\n/// @type Keyword\n$offcanvas-transition-timing: ease !default;\n\n/// If `true`, a revealed off-canvas will be fixed-position, and scroll with the screen.\n/// @type Bool\n$offcanvas-fixed-reveal: true !default;\n\n/// Background color for the overlay that appears when an off-canvas panel is open.\n/// @type Color\n$offcanvas-exit-background: rgba($white, 0.25) !default;\n\n/// CSS class used for the main content area. The off-canvas mixins use this to target the page content.\n$maincontent-class: 'off-canvas-content' !default;\n\n/// Adds baseline styles for off-canvas. This CSS is required to make the other pieces work.\n@mixin off-canvas-basics {\n\n /// Transform deprecated size settings into map & show warning\n @if variable-exists(offcanvas-size) {\n $offcanvas-sizes: (small: $offcanvas-size, medium: $offcanvas-size) !global;\n @warn '$offcanvas-size is deprecated and not used anymore! Please update your settings and use the map $offcanvas-sizes instead';\n }\n @if variable-exists(offcanvas-vertical-size) {\n $offcanvas-vertical-sizes: (small: $offcanvas-vertical-size, medium: $offcanvas-vertical-size) !global;\n @warn '$offcanvas-vertical-size is deprecated and not used anymore! Please update your settings and use the map $offcanvas-vertical-sizes instead';\n }\n\n // Checks the z-indexes and increase them due to backwards compatibility.\n // This is necessary because the overlay's z-index is new since v6.4 and may be identical to the user custom settings of the push z-index.\n @if $offcanvas-push-zindex <= $offcanvas-overlay-zindex { $offcanvas-push-zindex: $offcanvas-overlay-zindex + 1 !global; }\n @if $offcanvas-overlap-zindex <= $offcanvas-push-zindex { $offcanvas-overlap-zindex: $offcanvas-push-zindex + 1 !global; }\n @if $offcanvas-reveal-zindex <= $offcanvas-overlay-zindex { $offcanvas-reveal-zindex: $offcanvas-overlay-zindex + 1 !global; }\n\n // Hides overflow on body when an off-canvas panel is open.\n .is-off-canvas-open {\n overflow: hidden;\n }\n\n // Off-canvas overlay (generated by JavaScript)\n .js-off-canvas-overlay {\n position: absolute;\n top: 0;\n left: 0;\n z-index: $offcanvas-overlay-zindex;\n\n width: 100%;\n height: 100%;\n\n transition: opacity $offcanvas-transition-length $offcanvas-transition-timing, visibility $offcanvas-transition-length $offcanvas-transition-timing;\n\n background: $offcanvas-exit-background;\n\n opacity: 0;\n visibility: hidden;\n\n overflow: hidden;\n\n &.is-visible {\n opacity: 1;\n visibility: visible;\n }\n\n &.is-closable {\n cursor: pointer;\n }\n\n &.is-overlay-absolute {\n position: absolute;\n }\n\n &.is-overlay-fixed {\n position: fixed;\n }\n }\n}\n\n// Adds basic styles for an off-canvas wrapper.\n@mixin off-canvas-wrapper() {\n position: relative;\n overflow: hidden;\n}\n\n/// Adds basic styles for an off-canvas panel.\n@mixin off-canvas-base(\n $background: $offcanvas-background,\n $transition: $offcanvas-transition-length $offcanvas-transition-timing,\n $fixed: true\n) {\n @include disable-mouse-outline;\n\n @if $fixed == true {\n position: fixed;\n }\n @else {\n position: absolute;\n }\n\n // Set the off-canvas z-index.\n z-index: $offcanvas-push-zindex;\n\n // Increase CSS specificity\n &.is-transition-push {\n z-index: $offcanvas-push-zindex;\n }\n\n transition: transform $transition;\n backface-visibility: hidden;\n\n background: $background;\n\n // Hide inactive off-canvas within the content that have the same position\n &.is-closed {\n visibility: hidden;\n }\n\n // Overlap only styles.\n &.is-transition-overlap {\n z-index: $offcanvas-overlap-zindex;\n\n &.is-open {\n box-shadow: $offcanvas-shadow;\n }\n }\n\n // Sets transform to 0 to show an off-canvas panel.\n &.is-open {\n transform: translate(0, 0);\n }\n}\n\n/// Adds styles to position an off-canvas panel to the left/right/top/bottom.\n@mixin off-canvas-position(\n $position: left,\n $orientation: horizontal,\n $sizes: if($orientation == horizontal, $offcanvas-sizes, $offcanvas-vertical-sizes)\n) {\n @if $position == left {\n top: 0;\n left: 0;\n height: 100%;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n width: $size;\n transform: translateX(-$size);\n }\n }\n\n // Sets the position for nested off-canvas element\n @at-root .#{$maincontent-class} .off-canvas.position-#{$position} {\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateX(-$size);\n }\n }\n &.is-transition-overlap.is-open {\n transform: translate(0, 0);\n }\n }\n\n // Sets the open position for the content\n @at-root .#{$maincontent-class}.is-open-#{$position} {\n &.has-transition-push {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateX($size);\n }\n }\n }\n }\n }\n @else if $position == right {\n top: 0;\n right: 0;\n height: 100%;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n width: $size;\n transform: translateX($size);\n }\n }\n\n // Sets the position for nested off-canvas element\n @at-root .#{$maincontent-class} .off-canvas.position-#{$position} {\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateX($size);\n }\n }\n &.is-transition-overlap.is-open {\n transform: translate(0, 0);\n }\n }\n\n // Sets the open position for the content\n @at-root .#{$maincontent-class}.is-open-#{$position} {\n &.has-transition-push {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateX(-$size);\n }\n }\n }\n }\n }\n @else if $position == top {\n top: 0;\n left: 0;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n height: $size;\n transform: translateY(-$size);\n }\n }\n\n // Sets the position for nested off-canvas element\n @at-root .#{$maincontent-class} .off-canvas.position-#{$position} {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateY(-$size);\n }\n }\n &.is-transition-overlap.is-open {\n transform: translate(0, 0);\n }\n }\n\n // Sets the open position for the content\n @at-root .#{$maincontent-class}.is-open-#{$position} {\n &.has-transition-push {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateY($size);\n }\n }\n }\n }\n }\n @else if $position == bottom {\n bottom: 0;\n left: 0;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n height: $size;\n transform: translateY($size);\n }\n }\n\n // Sets the position for nested off-canvas element\n @at-root .#{$maincontent-class} .off-canvas.position-#{$position} {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateY($size);\n }\n }\n &.is-transition-overlap.is-open {\n transform: translate(0, 0);\n }\n }\n\n // Sets the open position for the content\n @at-root .#{$maincontent-class}.is-open-#{$position} {\n &.has-transition-push {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateY(-$size);\n }\n }\n }\n }\n }\n\n // If $offcanvas-inner-shadow-size is set, add inner box-shadow.\n // This mimics the off-canvas panel having a lower z-index, without having to have one.\n @if $offcanvas-inner-shadow-size {\n &.is-transition-push {\n @if $position == left {\n @include inner-side-shadow(right, $offcanvas-inner-shadow-size, $offcanvas-inner-shadow-color);\n }\n @else if $position == right {\n @include inner-side-shadow(left, $offcanvas-inner-shadow-size, $offcanvas-inner-shadow-color);\n }\n @else if $position == top {\n @include inner-side-shadow(bottom, $offcanvas-inner-shadow-size, $offcanvas-inner-shadow-color);\n }\n @else if $position == bottom {\n @include inner-side-shadow(top, $offcanvas-inner-shadow-size, $offcanvas-inner-shadow-color);\n }\n }\n }\n\n}\n\n/// Sets the styles for the content container.\n@mixin off-canvas-content() {\n transform: none;\n backface-visibility: hidden;\n\n // Bind to has-transition-X class to prevent transition for transform:none\n &.has-transition-overlap,\n &.has-transition-push {\n transition: transform $offcanvas-transition-length $offcanvas-transition-timing;\n }\n\n // Transform scope until the element is closed (makes sure transitionend gets triggered)\n &.has-transition-push {\n transform: translate(0, 0);\n }\n\n // Consider element & content, nested in another content\n .off-canvas.is-open {\n transform: translate(0, 0);\n }\n}\n\n/// Adds styles that reveal an off-canvas panel.\n@mixin off-canvas-reveal(\n $position: left,\n $zindex: $offcanvas-reveal-zindex,\n $content: $maincontent-class,\n $breakpoint: small\n) {\n transform: none;\n z-index: $zindex;\n transition: none;\n visibility: visible;\n\n @if not $offcanvas-fixed-reveal {\n position: absolute;\n }\n\n .close-button {\n display: none;\n }\n\n // Consider revealed element is nested in content\n .#{$maincontent-class} & {\n transform: none;\n }\n\n @at-root .#{$content}.has-reveal-#{$position} {\n margin-#{$position}: -zf-get-bp-val($offcanvas-sizes, $breakpoint);\n }\n\n // backwards compatibility (prior to v6.4)\n & ~ .#{$content} {\n margin-#{$position}: -zf-get-bp-val($offcanvas-sizes, $breakpoint);\n }\n}\n\n/// Overrides the off-canvas styles\n@mixin in-canvas() {\n visibility: visible;\n height: auto;\n position: static;\n background: none;\n width: auto;\n overflow: visible;\n transition: none;\n\n // Increase CSS specificity\n &.position-left,\n &.position-right,\n &.position-top,\n &.position-bottom {\n box-shadow: none;\n transform: none;\n }\n\n .close-button {\n display: none;\n }\n}\n\n@mixin foundation-off-canvas {\n @include off-canvas-basics;\n\n // Off-canvas wrapper\n .off-canvas-wrapper {\n @include off-canvas-wrapper;\n }\n\n // Off-canvas container\n .off-canvas {\n @include off-canvas-base;\n\n // Force position absolute for nested off-canvas because fixed doesn't work for push transition within the transform scope.\n // @at-root .#{$maincontent-class} & {\n // // NOTE: since overlap transition is currently forced if nested, there's no need to force position absolute until nested push transition is supported.\n // position: absolute;\n // }\n }\n\n // Off-canvas container with absolute position\n .off-canvas-absolute {\n @include off-canvas-base($fixed: false);\n }\n\n // Off-canvas position classes\n .position-left { @include off-canvas-position(left, horizontal); }\n .position-right { @include off-canvas-position(right, horizontal); }\n .position-top { @include off-canvas-position(top, vertical); }\n .position-bottom { @include off-canvas-position(bottom, vertical); }\n\n .off-canvas-content {\n @include off-canvas-content;\n }\n\n // Reveal off-canvas panel on larger screens\n @each $name, $value in $breakpoint-classes {\n @if $name != $-zf-zero-breakpoint {\n @include breakpoint($name) {\n .position-left.reveal-for-#{$name} {\n @include off-canvas-reveal(left, $offcanvas-reveal-zindex, $maincontent-class, $name);\n }\n\n .position-right.reveal-for-#{$name} {\n @include off-canvas-reveal(right, $offcanvas-reveal-zindex, $maincontent-class, $name);\n }\n\n .position-top.reveal-for-#{$name} {\n @include off-canvas-reveal(top, $offcanvas-reveal-zindex, $maincontent-class, $name);\n }\n\n .position-bottom.reveal-for-#{$name} {\n @include off-canvas-reveal(bottom, $offcanvas-reveal-zindex, $maincontent-class, $name);\n }\n }\n }\n }\n\n // Move in-canvas for larger screens\n @each $name, $value in $breakpoint-classes {\n @if $name != $-zf-zero-breakpoint {\n @include breakpoint($name) {\n .off-canvas.in-canvas-for-#{$name} {\n @include in-canvas;\n }\n }\n }\n }\n}\n\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n@mixin foundation-sticky {\n .sticky-container {\n position: relative;\n }\n\n .sticky {\n position: relative;\n z-index: 0;\n transform: translate3d(0, 0, 0);\n }\n\n .sticky.is-stuck {\n position: fixed;\n z-index: 5;\n width: 100%;\n\n &.is-at-top {\n top: 0;\n }\n\n &.is-at-bottom {\n bottom: 0;\n }\n }\n\n .sticky.is-anchored {\n position: relative;\n right: auto;\n left: auto;\n\n &.is-at-bottom {\n bottom: 0;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group title-bar\n////\n\n/// Background color of a title bar.\n/// @type Color\n$titlebar-background: $black !default;\n\n/// Color of text inside a title bar.\n/// @type Color\n$titlebar-color: $white !default;\n\n/// Padding inside a title bar.\n/// @type Length\n$titlebar-padding: 0.5rem !default;\n\n/// Font weight of text inside a title bar.\n/// @type Weight\n$titlebar-text-font-weight: bold !default;\n\n/// Color of menu icons inside a title bar.\n/// @type Color\n$titlebar-icon-color: $white !default;\n\n/// Color of menu icons inside a title bar on hover.\n/// @type Color\n$titlebar-icon-color-hover: $medium-gray !default;\n\n/// Spacing between the menu icon and text inside a title bar.\n/// @type Length\n$titlebar-icon-spacing: 0.25rem !default;\n\n@mixin foundation-title-bar {\n .title-bar {\n padding: $titlebar-padding;\n background: $titlebar-background;\n color: $titlebar-color;\n\n @if $global-flexbox {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n }\n @else {\n @include clearfix;\n }\n\n .menu-icon {\n margin-#{$global-left}: $titlebar-icon-spacing;\n margin-#{$global-right}: $titlebar-icon-spacing;\n }\n }\n\n @if $global-flexbox {\n .title-bar-left,\n .title-bar-right {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n }\n\n .title-bar-right {\n text-align: right;\n }\n }\n @else {\n .title-bar-left {\n float: left;\n }\n\n .title-bar-right {\n float: right;\n text-align: right;\n }\n }\n\n .title-bar-title {\n display: inline-block;\n vertical-align: middle;\n font-weight: $titlebar-text-font-weight;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group top-bar\n////\n\n/// Padding for the top bar.\n/// @type Number\n$topbar-padding: 0.5rem !default;\n\n/// Background color for the top bar. This color also cascades to menus within the top bar.\n/// @type Color\n$topbar-background: $light-gray !default;\n\n/// Background color submenus within the top bar. Usefull if $topbar-background is transparent.\n/// @type Color\n$topbar-submenu-background: $topbar-background !default;\n\n/// Spacing for the top bar title.\n/// @type Number\n$topbar-title-spacing: 0.5rem 1rem 0.5rem 0 !default;\n\n/// Maximum width of `<input>` elements inside the top bar.\n/// @type Number\n$topbar-input-width: 200px !default;\n\n/// Breakpoint at which top bar switches from mobile to desktop view.\n/// @type Breakpoint\n$topbar-unstack-breakpoint: medium !default;\n\n/// Adds styles for a top bar container.\n@mixin top-bar-container {\n @if $global-flexbox {\n display: flex;\n flex-wrap: nowrap;\n justify-content: space-between;\n align-items: center;\n }\n @else {\n @include clearfix;\n }\n\n padding: $topbar-padding;\n\n &,\n ul {\n background-color: $topbar-background;\n }\n\n // Check if $topbar-background is differnt from $topbar-background-submenu\n @if ($topbar-background != $topbar-submenu-background) {\n ul ul {\n background-color: $topbar-submenu-background;\n }\n }\n\n // Restrain width of inputs by default to make them easier to arrange\n input {\n max-width: $topbar-input-width;\n margin-#{$global-right}: 1rem;\n }\n\n // The above styles shouldn't apply to input group fields\n .input-group-field {\n width: 100%;\n margin-#{$global-right}: 0;\n }\n\n input.button { // sass-lint:disable-line no-qualifying-elements\n width: auto;\n }\n}\n\n/// Makes sections of a top bar stack on top of each other.\n@mixin top-bar-stacked {\n @if $global-flexbox {\n flex-wrap: wrap;\n\n // Sub-sections\n .top-bar-left,\n .top-bar-right {\n flex: 0 0 100%;\n max-width: 100%;\n }\n }\n @else {\n // Sub-sections\n .top-bar-left,\n .top-bar-right {\n width: 100%;\n }\n }\n}\n\n/// Undoes the CSS applied by the `top-bar-stacked()` mixin.\n@mixin top-bar-unstack {\n @if $global-flexbox {\n flex-wrap: nowrap;\n\n .top-bar-left {\n flex: 1 1 auto;\n margin-right: auto;\n }\n\n .top-bar-right {\n flex: 0 1 auto;\n margin-left: auto;\n }\n }\n @else {\n .top-bar-left,\n .top-bar-right {\n width: auto;\n }\n }\n}\n\n@mixin foundation-top-bar {\n // Top bar container\n .top-bar {\n @include top-bar-container;\n\n // Stack on small screens by default\n @include top-bar-stacked;\n\n @include breakpoint($topbar-unstack-breakpoint) {\n @include top-bar-unstack;\n }\n\n // Generate classes for stacking on each screen size (defined in $breakpoint-classes)\n @each $size in $breakpoint-classes {\n @if $size != $-zf-zero-breakpoint {\n &.stacked-for-#{$size} {\n @include breakpoint($size down) {\n @include top-bar-stacked;\n }\n }\n }\n }\n }\n\n // Sub-sections\n @if $global-flexbox {\n .top-bar-title {\n flex: 0 0 auto;\n margin: $topbar-title-spacing;\n }\n\n .top-bar-left,\n .top-bar-right {\n flex: 0 0 auto;\n }\n }\n @else {\n .top-bar-title {\n display: inline-block;\n float: left;\n padding: $topbar-title-spacing;\n\n .menu-icon {\n bottom: 2px;\n }\n }\n\n .top-bar-left {\n float: left;\n }\n\n .top-bar-right {\n float: right;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group float\n////\n\n@mixin foundation-float-classes {\n .float-left {\n float: left !important;\n }\n\n .float-right {\n float: right !important;\n }\n\n .float-center {\n display: block;\n margin-right: auto;\n margin-left: auto;\n }\n\n .clearfix {\n @include clearfix;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group Flexbox Utilities\n////\n//\n/// Default value for the count of source ordering`\n/// @type Number\n$flex-source-ordering-count: 6 !default;\n\n/// Quickly disable/enable Responsive breakpoints for Vanilla Flex Helpers.\n/// @type Boolean\n$flexbox-responsive-breakpoints: true !default;\n\n@mixin flex-helpers {\n .flex-container {\n @include flex;\n }\n\n .flex-child-auto {\n flex: 1 1 auto;\n }\n\n .flex-child-grow {\n flex: 1 0 auto;\n }\n\n .flex-child-shrink {\n flex: 0 1 auto;\n }\n\n @each $dir, $prop in $-zf-flex-direction {\n .flex-dir-#{$dir} {\n @include flex-direction($prop);\n }\n }\n\n @if ($flexbox-responsive-breakpoints) {\n // Loop through Responsive Breakpoints\n @each $size in $breakpoint-classes {\n @include breakpoint($size) {\n @if $size != $-zf-zero-breakpoint {\n .#{$size}-flex-container {\n @include flex;\n }\n\n .#{$size}-flex-child-auto {\n flex: 1 1 auto;\n }\n\n .#{$size}-flex-child-grow {\n flex: 1 0 auto;\n }\n\n .#{$size}-flex-child-shrink {\n flex: 0 1 auto;\n }\n\n @each $dir, $prop in $-zf-flex-direction {\n .#{$size}-flex-dir-#{$dir} {\n @include flex-direction($prop);\n }\n }\n }\n }\n }\n }\n}\n\n@mixin foundation-flex-classes {\n // Horizontal alignment using justify-content\n @each $hdir, $prop in $-zf-flex-justify {\n .align-#{$hdir} {\n @include flex-align($x: $hdir);\n }\n }\n \n // Horizontal alignment Specifically for Vertical Menu\n @each $hdir, $prop in map-remove($-zf-flex-justify, 'justify', 'spaced') {\n .align-#{$hdir} {\n &.vertical {\n &.menu > li > a {\n @include flex-align($x: $hdir);\n }\n }\n }\n }\n\n // Vertical alignment using align-items and align-self\n @each $vdir, $prop in $-zf-flex-align {\n .align-#{$vdir} {\n @include flex-align($y: $vdir);\n }\n\n .align-self-#{$vdir} {\n @include flex-align-self($y: $vdir);\n }\n }\n\n // Central alignment of content\n .align-center-middle {\n @include flex-align($x: center, $y: middle);\n align-content: center;\n }\n\n // Source ordering\n @include -zf-each-breakpoint {\n @for $i from 1 through $flex-source-ordering-count {\n .#{$-zf-size}-order-#{$i} {\n @include flex-order($i);\n }\n }\n }\n\n // Vanilla Flexbox Helpers\n @include flex-helpers;\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/// Hide an element by default, only displaying it above a certain screen size.\n/// @param {Keyword} $size - Breakpoint to use. **Must be a breakpoint defined in `$breakpoints`.**\n@mixin show-for($size) {\n $size: map-get($breakpoints, $size);\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 $size: -zf-bp-to-em($size) - 0.00125;\n\n @include breakpoint($size down) {\n display: none !important;\n }\n}\n\n/// Hide an element by default, only displaying it within a certain breakpoint.\n/// @param {Keyword} $size - Breakpoint to use. **Must be a breakpoint defined in `$breakpoints`.**\n@mixin show-for-only($size) {\n $lower-bound-size: map-get($breakpoints, $size);\n $upper-bound-size: -zf-map-next($breakpoints, $size);\n\n // more often than not this will be correct, just one time round the loop it won't so set in scope here\n $lower-bound: -zf-bp-to-em($lower-bound-size) - 0.00125;\n // test actual lower-bound-size, if 0 set it to 0em\n @if strip-unit($lower-bound-size) == 0 {\n $lower-bound: -zf-bp-to-em($lower-bound-size);\n }\n\n @if $upper-bound-size == null {\n @media screen and (max-width: $lower-bound) {\n display: none !important;\n }\n }\n @else {\n $upper-bound: -zf-bp-to-em($upper-bound-size);\n\n @media screen and (max-width: $lower-bound), screen and (min-width: $upper-bound) {\n display: none !important;\n }\n }\n}\n\n\n/// Show an element by default, and hide it above a certain screen size.\n/// @param {Keyword} $size - Breakpoint to use. **Must be a breakpoint defined in `$breakpoints`.**\n@mixin hide-for($size) {\n @include breakpoint($size) {\n display: none !important;\n }\n}\n\n/// Show an element by default, and hide it above a certain screen size.\n/// @param {Keyword} $size - Breakpoint to use. **Must be a breakpoint defined in `$breakpoints`.**\n@mixin hide-for-only($size) {\n @include breakpoint($size only) {\n display: none !important;\n }\n}\n\n@mixin foundation-visibility-classes {\n // Basic hiding classes\n .hide {\n display: none !important;\n }\n\n .invisible {\n visibility: hidden;\n }\n .visible {\n visibility: visible;\n }\n\n // Responsive visibility classes\n @each $size in $breakpoint-classes {\n @if $size != $-zf-zero-breakpoint {\n .hide-for-#{$size} {\n @include hide-for($size);\n }\n\n .show-for-#{$size} {\n @include show-for($size);\n }\n }\n\n .hide-for-#{$size}-only {\n @include hide-for-only($size);\n }\n\n .show-for-#{$size}-only {\n @include show-for-only($size);\n }\n }\n\n // Screen reader visibility classes\n // Need a \"hide-for-sr\" class? Add aria-hidden='true' to the element\n .show-for-sr,\n .show-on-focus {\n @include element-invisible;\n }\n\n // Only display the element when it's focused\n .show-on-focus {\n &:active,\n &:focus {\n @include element-invisible-off;\n }\n }\n\n // Landscape and portrait visibility\n .show-for-landscape,\n .hide-for-portrait {\n display: block !important;\n\n @include breakpoint(landscape) {\n display: block !important;\n }\n\n @include breakpoint(portrait) {\n display: none !important;\n }\n }\n\n .hide-for-landscape,\n .show-for-portrait {\n display: none !important;\n\n @include breakpoint(landscape) {\n display: none !important;\n }\n\n @include breakpoint(portrait) {\n display: block !important;\n }\n }\n\n // Dark Mode Visibility\n .show-for-dark-mode {\n display: none;\n }\n .hide-for-dark-mode {\n display: block;\n }\n @media screen and (prefers-color-scheme: dark) {\n .show-for-dark-mode {\n display: block !important;\n }\n .hide-for-dark-mode {\n display: none !important;\n }\n }\n\n // IE10+ Visibility\n .show-for-ie {\n display: none;\n }\n @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n .show-for-ie {\n display: block !important;\n }\n .hide-for-ie {\n display: none !important;\n }\n }\n\n // Sticky Visibility\n .show-for-sticky {\n display: none;\n }\n .is-stuck .show-for-sticky {\n display: block;\n }\n .is-stuck .hide-for-sticky {\n display: none;\n }\n}\n"]}
|
1
|
+
{"version":3,"sources":["../scss/util/_breakpoint.scss","../scss/components/_reveal.scss","../scss/vendor/normalize.scss","foundation.min.css","../scss/_global.scss","../scss/util/_mixins.scss","../scss/forms/_text.scss","../scss/forms/_checkbox.scss","../scss/forms/_label.scss","../scss/forms/_help-text.scss","../scss/forms/_input-group.scss","../scss/forms/_fieldset.scss","../scss/forms/_select.scss","../scss/forms/_error.scss","../scss/typography/_base.scss","../scss/typography/_helpers.scss","../scss/typography/_alignment.scss","../scss/typography/_print.scss","../scss/xy-grid/_classes.scss","../scss/xy-grid/_grid.scss","../scss/xy-grid/_gutters.scss","../scss/xy-grid/_cell.scss","../scss/xy-grid/_layout.scss","../scss/xy-grid/_collapse.scss","../scss/xy-grid/_position.scss","../scss/xy-grid/_frame.scss","../scss/components/_button.scss","../scss/components/_button-group.scss","../scss/components/_close-button.scss","../scss/components/_label.scss","../scss/components/_progress-bar.scss","../scss/components/_slider.scss","../scss/components/_switch.scss","../scss/components/_table.scss","../scss/components/_badge.scss","../scss/components/_breadcrumbs.scss","../scss/components/_callout.scss","../scss/components/_card.scss","../scss/components/_dropdown.scss","../scss/components/_pagination.scss","../scss/components/_tooltip.scss","../scss/components/_accordion.scss","../scss/components/_media-object.scss","../scss/components/_orbit.scss","../scss/components/_responsive-embed.scss","../scss/components/_tabs.scss","../scss/components/_thumbnail.scss","../scss/components/_menu.scss","../scss/components/_menu-icon.scss","../scss/components/_accordion-menu.scss","../scss/components/_drilldown.scss","../scss/components/_dropdown-menu.scss","../scss/components/_off-canvas.scss","../scss/components/_sticky.scss","../scss/components/_title-bar.scss","../scss/components/_top-bar.scss","../scss/components/_float.scss","../scss/components/_flex.scss","../scss/util/_flex.scss","../scss/components/_visibility.scss"],"names":[],"mappings":"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AA,MrBII,aAAA,4BkB5GF,oBG6DJ,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,EA2CE,MAAA,KHnGA,iBAAA,kBAAA,kBAAA,kBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,sBGwDF,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KHlDI,sBG6FF,MAAA,KHpFE,iBGoFF,MAAA,cHpFE,iBGoFF,MAAA,eHpFE,iBGoFF,MAAA,IHpFE,iBGoFF,MAAA,eHpFE,iBGoFF,MAAA,eHpFE,iBGoFF,MAAA,IHpFE,iBGoFF,MAAA,eHpFE,iBGoFF,MAAA,eHpFE,iBGoFF,MAAA,IHpFE,kBGoFF,MAAA,eHpFE,kBGoFF,MAAA,eHpFE,kBGoFF,MAAA,MH5EF,kCACE,MAAA,KAIF,kCACE,OAAA,KA8BF,eEvGM,YAAA,SAAA,aAAA,SpBmJA,aAAA,4BkB5CN,eEvGM,YAAA,UAAA,aAAA,WF2GJ,qBGoCA,MAAA,qBDtIE,YAAA,QAAA,aAAA,QpB0IE,aAAA,4BkBjCA,qBG6BJ,MAAA,sBDtIE,YAAA,SAAA,aAAA,UFsEJ,qBGgEE,MAAA,KH5DF,uBG4DE,MAAA,KHpDA,wBGoDA,MAAA,8BHpDA,wBGoDA,MAAA,+BHpDA,wBGoDA,MAAA,oBHpDA,wBGoDA,MAAA,+BHpDA,wBGoDA,MAAA,+BHpDA,wBGoDA,MAAA,oBHpDA,wBGoDA,MAAA,+BHpDA,wBGoDA,MAAA,+BHpDA,wBGoDA,MAAA,oBHpDA,yBGoDA,MAAA,+BHpDA,yBGoDA,MAAA,+BHpDA,yBGoDA,MAAA,qBrBII,aAAA,4BkBpEN,qBGgEE,MAAA,KH5DF,uBG4DE,MAAA,KHpDA,wBGoDA,MAAA,+BHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,qBHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,qBHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,qBHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,sBHhEF,4BGgEE,MAAA,KH5DF,8BG4DE,MAAA,KHpDA,yBGoDA,MAAA,+BHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,qBHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,qBHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,qBHpDA,0BGoDA,MAAA,gCHpDA,0BGoDA,MAAA,gCHpDA,0BGoDA,MAAA,uBrBII,aAAA,4BkBpEN,2BGgEE,MAAA,KH5DF,6BG4DE,MAAA,KHpDA,wBGoDA,MAAA,+BHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,qBHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,qBHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,gCHpDA,wBGoDA,MAAA,qBHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,gCHpDA,yBGoDA,MAAA,uBHDA,gCE9II,aAAA,SAAA,YAAA,SpBmJA,aAAA,4BkBLJ,gCE9II,aAAA,UAAA,YAAA,WFoJJ,2CEpJI,aAAA,SAAA,YAAA,SpBmJA,aAAA,4BkBCJ,2CEpJI,aAAA,UAAA,YAAA,WFyJJ,sBEzJI,cAAA,QAAA,aAAA,QpBmJA,aAAA,4BkBMJ,sBEzJI,cAAA,SAAA,aAAA,UEAN,kBD+IE,MAAA,KC/IF,kBD+IE,MAAA,IC/IF,kBD+IE,MAAA,eC/IF,kBD+IE,MAAA,IC/IF,kBD+IE,MAAA,IC/IF,kBD+IE,MAAA,eC/IF,kBD+IE,MAAA,eC/IF,kBD+IE,MAAA,MrBII,aAAA,4BsBnJN,mBD+IE,MAAA,KC/IF,mBD+IE,MAAA,IC/IF,mBD+IE,MAAA,eC/IF,mBD+IE,MAAA,IC/IF,mBD+IE,MAAA,IC/IF,mBD+IE,MAAA,eC/IF,mBD+IE,MAAA,eC/IF,mBD+IE,MAAA,OrBII,aAAA,4BsBnJN,kBD+IE,MAAA,KC/IF,kBD+IE,MAAA,IC/IF,kBD+IE,MAAA,eC/IF,kBD+IE,MAAA,IC/IF,kBD+IE,MAAA,IC/IF,kBD+IE,MAAA,eC/IF,kBD+IE,MAAA,eC/IF,kBD+IE,MAAA,OC/IF,gCD+IE,MAAA,qBC/IF,gCD+IE,MAAA,oBC/IF,gCD+IE,MAAA,+BC/IF,gCD+IE,MAAA,oBC/IF,gCD+IE,MAAA,oBC/IF,gCD+IE,MAAA,+BC/IF,gCD+IE,MAAA,+BC/IF,gCD+IE,MAAA,sBrBII,aAAA,4BsBnJN,gCD+IE,MAAA,sBC/IF,gCD+IE,MAAA,qBC/IF,gCD+IE,MAAA,gCC/IF,gCD+IE,MAAA,qBC/IF,gCD+IE,MAAA,qBC/IF,gCD+IE,MAAA,gCC/IF,gCD+IE,MAAA,gCC/IF,gCD+IE,MAAA,uBC/IF,iCD+IE,MAAA,sBC/IF,iCD+IE,MAAA,qBC/IF,iCD+IE,MAAA,gCC/IF,iCD+IE,MAAA,qBC/IF,iCD+IE,MAAA,qBC/IF,iCD+IE,MAAA,gCC/IF,iCD+IE,MAAA,gCC/IF,iCD+IE,MAAA,wBrBII,aAAA,4BsBnJN,gCD+IE,MAAA,sBC/IF,gCD+IE,MAAA,qBC/IF,gCD+IE,MAAA,gCC/IF,gCD+IE,MAAA,qBC/IF,gCD+IE,MAAA,qBC/IF,gCD+IE,MAAA,gCC/IF,gCD+IE,MAAA,gCC/IF,gCD+IE,MAAA,wBHwDE,uBK9ME,aAAA,EAAA,YAAA,EAGF,6BAEI,aAAA,EAAA,YAAA,EAsBE,gCF2HR,MAAA,cE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,KrBII,aAAA,4BuB/HI,iCF2HR,MAAA,cE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,IE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,IE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,IE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,MrBII,aAAA,4BuB/HI,gCF2HR,MAAA,cE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,MH8DE,wBK7KE,aAAA,EAAA,YAAA,EAGF,8BAEI,cAAA,EAAA,aAAA,EvB8GF,aAAA,4BkBoDF,wBK9ME,aAAA,EAAA,YAAA,EAGF,8BAEI,aAAA,EAAA,YAAA,GvBqJF,aAAA,4BuBxII,iCFoIR,MAAA,cEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,IEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,IEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,IEpIQ,kCFoIR,MAAA,eEpIQ,kCFoIR,MAAA,eEpIQ,kCFoIR,MAAA,MrBII,aAAA,4BuB/HI,kCF2HR,MAAA,cE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,IE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,IE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,IE3HQ,mCF2HR,MAAA,eE3HQ,mCF2HR,MAAA,eE3HQ,mCF2HR,MAAA,MrBII,aAAA,4BuB/HI,iCF2HR,MAAA,cE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,IE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,IE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,IE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,eE3HQ,kCF2HR,MAAA,MrBII,aAAA,4BkB0DF,yBK7KE,aAAA,EAAA,YAAA,EAGF,+BAEI,cAAA,EAAA,aAAA,GvB8GF,aAAA,4BkBoDF,uBK9ME,aAAA,EAAA,YAAA,EAGF,6BAEI,aAAA,EAAA,YAAA,GvBqJF,aAAA,4BuBxII,gCFoIR,MAAA,cEpIQ,gCFoIR,MAAA,eEpIQ,gCFoIR,MAAA,IEpIQ,gCFoIR,MAAA,eEpIQ,gCFoIR,MAAA,eEpIQ,gCFoIR,MAAA,IEpIQ,gCFoIR,MAAA,eEpIQ,gCFoIR,MAAA,eEpIQ,gCFoIR,MAAA,IEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,MrBII,aAAA,4BuBxII,iCFoIR,MAAA,cEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,IEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,IEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,eEpIQ,iCFoIR,MAAA,IEpIQ,kCFoIR,MAAA,eEpIQ,kCFoIR,MAAA,eEpIQ,kCFoIR,MAAA,MrBII,aAAA,4BuB/HI,gCF2HR,MAAA,cE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,eE3HQ,gCF2HR,MAAA,IE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,eE3HQ,iCF2HR,MAAA,MrBII,aAAA,4BkB0DF,wBK7KE,aAAA,EAAA,YAAA,EAGF,8BAEI,cAAA,EAAA,aAAA,GLsLJ,gBMlMF,YAAA,ENsME,+BMtMF,YAAA,uBNkME,gBMlMF,YAAA,cNsME,+BMtMF,YAAA,kCNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,mCNkME,gBMlMF,YAAA,INsME,+BMtMF,YAAA,wBNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,mCNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,mCNkME,gBMlMF,YAAA,INsME,+BMtMF,YAAA,wBNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,mCNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,mCNkME,gBMlMF,YAAA,INsME,+BMtMF,YAAA,wBNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,mCNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,mCxB0HI,aAAA,4BkBwEF,iBMlMF,YAAA,ENsME,gCMtMF,YAAA,wBNkME,iBMlMF,YAAA,cNsME,gCMtMF,YAAA,mCNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,oCNkME,iBMlMF,YAAA,INsME,gCMtMF,YAAA,yBNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,oCNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,oCNkME,iBMlMF,YAAA,INsME,gCMtMF,YAAA,yBNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,oCNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,oCNkME,iBMlMF,YAAA,INsME,gCMtMF,YAAA,yBNkME,kBMlMF,YAAA,eNsME,iCMtMF,YAAA,oCNkME,kBMlMF,YAAA,eNsME,iCMtMF,YAAA,qCxB0HI,aAAA,4BkBwEF,gBMlMF,YAAA,ENsME,+BMtMF,YAAA,wBNkME,gBMlMF,YAAA,cNsME,+BMtMF,YAAA,mCNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,oCNkME,gBMlMF,YAAA,INsME,+BMtMF,YAAA,yBNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,oCNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,oCNkME,gBMlMF,YAAA,INsME,+BMtMF,YAAA,yBNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,oCNkME,gBMlMF,YAAA,eNsME,+BMtMF,YAAA,oCNkME,gBMlMF,YAAA,INsME,+BMtMF,YAAA,yBNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,oCNkME,iBMlMF,YAAA,eNsME,gCMtMF,YAAA,qCNwNF,QC/OA,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,mBAAA,SAAA,sBAAA,OAAA,cAAA,OAAA,OAAA,UAAA,OAAA,ODkPE,cGnIF,OAAA,KACA,WAAA,KHsIE,cG1GA,OAAA,KH8GA,gBG9GA,OAAA,KH4HE,iBAAA,kBAAA,kBAAA,kBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,oBAAA,sBACE,wBAAA,KAAA,WAAA,KlBzHA,aAAA,4BkBwHF,kBAAA,mBAAA,mBAAA,mBAAA,kBAAA,kBAAA,kBAAA,kBAAA,kBAAA,kBAAA,kBAAA,kBAAA,qBAAA,uBACE,wBAAA,KAAA,WAAA,MlBzHA,aAAA,4BkBwHF,iBAAA,kBAAA,kBAAA,kBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,oBAAA,sBACE,wBAAA,KAAA,WAAA,MAYF,iBAAA,kBAAA,kBAAA,kBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBGpLJ,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KHmMM,iBGxJJ,OAAA,cHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,IHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,IHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,IHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,KrBII,aAAA,4BkBgIA,qBG/KN,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,EA2CE,OAAA,KHyIE,kBAAA,mBAAA,mBAAA,mBAAA,kBAAA,kBAAA,kBAAA,kBAAA,kBAAA,kBAAA,kBAAA,kBAAA,uBGpLJ,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KH0LM,uBG/IJ,OAAA,KHwJI,kBGxJJ,OAAA,cHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,IHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,IHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,IHwJI,mBGxJJ,OAAA,eHwJI,mBGxJJ,OAAA,eHwJI,mBGxJJ,OAAA,MrBII,aAAA,4BkBgIA,oBG/KN,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,EA2CE,OAAA,KHyIE,iBAAA,kBAAA,kBAAA,kBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,iBAAA,sBGpLJ,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KH0LM,sBG/IJ,OAAA,KHwJI,iBGxJJ,OAAA,cHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,IHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,IHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,eHwJI,iBGxJJ,OAAA,IHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,eHwJI,kBGxJJ,OAAA,MHoKE,gCEnTE,WAAA,SAAA,cAAA,SpBmJA,aAAA,4BkBgKF,gCEnTE,WAAA,UAAA,cAAA,WFwTF,sBExTE,YAAA,QAAA,eAAA,QpBmJA,aAAA,4BkBqKF,sBExTE,YAAA,SAAA,eAAA,UFuGN,eEvGM,WAAA,SAAA,cAAA,SpBmJA,aAAA,4BkB5CN,eEvGM,WAAA,UAAA,cAAA,WF2GJ,qBGoCA,OAAA,qBDtIE,WAAA,QAAA,cAAA,QpB0IE,aAAA,4BkBjCA,qBG6BJ,OAAA,sBDtIE,WAAA,SAAA,cAAA,UFsEJ,qBGgEE,OAAA,KH5DF,uBG4DE,OAAA,KHpDA,wBGoDA,OAAA,8BHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,oBHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,oBHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,oBHpDA,yBGoDA,OAAA,+BHpDA,yBGoDA,OAAA,+BHpDA,yBGoDA,OAAA,qBrBII,aAAA,4BkBpEN,qBGgEE,OAAA,KH5DF,uBG4DE,OAAA,KHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,sBHhEF,4BGgEE,OAAA,KH5DF,8BG4DE,OAAA,KHpDA,yBGoDA,OAAA,+BHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,qBHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,qBHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,qBHpDA,0BGoDA,OAAA,gCHpDA,0BGoDA,OAAA,gCHpDA,0BGoDA,OAAA,uBrBII,aAAA,4BkBpEN,2BGgEE,OAAA,KH5DF,6BG4DE,OAAA,KHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,uBHuLF,YOpVE,SAAA,OACA,SAAA,SACA,cAAA,OAAA,UAAA,OACA,kBAAA,QAAA,eAAA,QAAA,YAAA,QAqCI,MAAA,MPgTN,kBACE,MAAA,KAGF,YOjSE,WAAA,KACA,UAAA,KAGF,2BAAA,MACA,mBAAA,yBPgSA,cOzSE,WAAA,KACA,WAAA,KACA,WAAA,KAMF,2BAAA,MACA,mBAAA,yBPqSA,sBO9RA,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,OACA,WAAA,KAEA,8BACE,WAAA,KACA,cAAA,OAAA,UAAA,OzBoFI,aAAA,4BkB2MJ,mBO5WA,SAAA,OACA,SAAA,SACA,cAAA,OAAA,UAAA,OACA,kBAAA,QAAA,eAAA,QAAA,YAAA,QAqCI,MAAA,MPwUJ,yBACE,MAAA,KAGF,mBOzTA,WAAA,KACA,UAAA,KAGF,2BAAA,MACA,mBAAA,yBPwTE,6BOjTF,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,OACA,WAAA,KAEA,qCACE,WAAA,KACA,cAAA,OAAA,UAAA,OP+SA,qBOrUA,WAAA,KACA,WAAA,KACA,WAAA,KAMF,2BAAA,MACA,mBAAA,0BzBiGM,aAAA,4BkB2MJ,kBO5WA,SAAA,OACA,SAAA,SACA,cAAA,OAAA,UAAA,OACA,kBAAA,QAAA,eAAA,QAAA,YAAA,QAqCI,MAAA,MPwUJ,wBACE,MAAA,KAGF,kBOzTA,WAAA,KACA,UAAA,KAGF,2BAAA,MACA,mBAAA,yBPwTE,4BOjTF,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,OACA,WAAA,KAEA,oCACE,WAAA,KACA,cAAA,OAAA,UAAA,OP+SA,oBOrUA,WAAA,KACA,WAAA,KACA,WAAA,KAMF,2BAAA,MACA,mBAAA,0BPmUI,mBOnYF,SAAA,OACA,SAAA,SACA,cAAA,OAAA,UAAA,OACA,kBAAA,QAAA,eAAA,QAAA,YAAA,QAmCI,OAAA,MP+VA,MAAA,KlBpOA,aAAA,4BkBwOA,0BOzYJ,SAAA,OACA,SAAA,SACA,cAAA,OAAA,UAAA,OACA,kBAAA,QAAA,eAAA,QAAA,YAAA,QAmCI,OAAA,MPqWE,MAAA,MlB1OF,aAAA,4BkBwOA,yBOzYJ,SAAA,OACA,SAAA,SACA,cAAA,OAAA,UAAA,OACA,kBAAA,QAAA,eAAA,QAAA,YAAA,QAmCI,OAAA,MPqWE,MAAA,MAMJ,yBACE,OAAA,KlBjPA,aAAA,4BkBoPA,gCACE,OAAA,MlBrPF,aAAA,4BkBoPA,+BACE,OAAA,MAjSR,eEvGM,WAAA,SAAA,cAAA,SpBmJA,aAAA,4BkB5CN,eEvGM,WAAA,UAAA,cAAA,WF2GJ,qBGoCA,OAAA,qBDtIE,WAAA,QAAA,cAAA,QpB0IE,aAAA,4BkBjCA,qBG6BJ,OAAA,sBDtIE,WAAA,SAAA,cAAA,UFsEJ,qBGgEE,OAAA,KH5DF,uBG4DE,OAAA,KHpDA,wBGoDA,OAAA,8BHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,oBHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,oBHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,oBHpDA,yBGoDA,OAAA,+BHpDA,yBGoDA,OAAA,+BHpDA,yBGoDA,OAAA,qBrBII,aAAA,4BkBpEN,qBGgEE,OAAA,KH5DF,uBG4DE,OAAA,KHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,sBHhEF,4BGgEE,OAAA,KH5DF,8BG4DE,OAAA,KHpDA,yBGoDA,OAAA,+BHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,qBHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,qBHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,qBHpDA,0BGoDA,OAAA,gCHpDA,0BGoDA,OAAA,gCHpDA,0BGoDA,OAAA,uBrBII,aAAA,4BkBpEN,2BGgEE,OAAA,KH5DF,6BG4DE,OAAA,KHpDA,wBGoDA,OAAA,+BHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,gCHpDA,wBGoDA,OAAA,qBHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,gCHpDA,yBGoDA,OAAA,uBHgQA,0BOrYI,OAAA,sBzByIA,aAAA,4BkB4PJ,0BOrYI,OAAA,wBzByIA,aAAA,4BkB4PJ,0BOrYI,OAAA,wBzByIA,aAAA,4BkBgQF,iCOzYE,OAAA,wBzByIA,aAAA,4BkBgQF,gCOzYE,OAAA,wBCkSN,QA3OA,QAAA,aACA,eAAA,OACA,OAAA,EAAA,EAAA,KAAA,EACA,OAAA,IAAA,MAAA,YACA,cAAA,EACA,mBAAA,iBAAA,KAAA,QAAA,CAAA,MAAA,KAAA,SAAA,WAAA,iBAAA,KAAA,QAAA,CAAA,MAAA,KAAA,SACA,YAAA,QACA,UAAA,MAEA,mBAAA,KACA,YAAA,EACA,WAAA,OACA,OAAA,QAUE,QAAA,MAAA,IrBuFF,+BACE,QAAA,EqBkIE,aACE,UAAA,MADF,cACE,UAAA,OADF,cACE,UAAA,QAIJ,iBArNA,QAAA,MACA,MAAA,KACA,aAAA,EACA,YAAA,EAiEF,QAAA,iBAAA,uBAAA,uBAAA,kBAAA,wBAAA,wBAIE,iBAAA,QACA,MAAA,QAGF,cAAA,cACE,iBAAA,wBACA,MAAA,QAVF,gBAAA,yBAAA,+BAAA,+BAAA,0BAAA,gCAAA,gCAIE,iBAAA,QACA,MAAA,QAGF,sBAAA,sBACE,iBAAA,qBACA,MAAA,QAVF,kBAAA,2BAAA,iCAAA,iCAAA,4BAAA,kCAAA,kCAIE,iBAAA,QACA,MAAA,QAGF,wBAAA,wBACE,iBAAA,oBACA,MAAA,QAVF,gBAAA,yBAAA,+BAAA,+BAAA,0BAAA,gCAAA,gCAIE,iBAAA,QACA,MAAA,QAGF,sBAAA,sBACE,iBAAA,gDACA,MAAA,QAVF,gBAAA,yBAAA,+BAAA,+BAAA,0BAAA,gCAAA,gCAIE,iBAAA,QACA,MAAA,QAGF,sBAAA,sBACE,iBAAA,iBACA,MAAA,QAVF,cAAA,uBAAA,6BAAA,6BAAA,wBAAA,8BAAA,8BAIE,iBAAA,QACA,MAAA,QAGF,oBAAA,oBACE,iBAAA,gDACA,MAAA,QAQA,eAAA,wBAAA,8BAAA,8BAAA,qBAAA,qBAAA,yBAAA,+BAAA,+BACE,iBAAA,YAiBJ,eAAA,wBAAA,8BAAA,8BAAA,yBAAA,+BAAA,+BAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,qBAAA,qBACE,aAAA,kBACA,MAAA,kBAVF,uBAAA,gCAAA,sCAAA,sCAAA,iCAAA,uCAAA,uCAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,6BAAA,6BACE,aAAA,kBACA,MAAA,kBAVF,yBAAA,kCAAA,wCAAA,wCAAA,mCAAA,yCAAA,yCAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,+BAAA,+BACE,aAAA,QACA,MAAA,QAVF,uBAAA,gCAAA,sCAAA,sCAAA,iCAAA,uCAAA,uCAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,6BAAA,6BACE,aAAA,gDACA,MAAA,gDAVF,uBAAA,gCAAA,sCAAA,sCAAA,iCAAA,uCAAA,uCAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,6BAAA,6BACE,aAAA,gBACA,MAAA,gBAVF,qBAAA,8BAAA,oCAAA,oCAAA,+BAAA,qCAAA,qCAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,2BAAA,2BACE,aAAA,8CACA,MAAA,8CAQA,cAAA,uBAAA,6BAAA,6BAAA,oBAAA,oBAAA,wBAAA,8BAAA,8BACE,aAAA,YACA,iBAAA,YAeJ,cAAA,uBAAA,6BAAA,6BAAA,wBAAA,8BAAA,8BAIE,MAAA,QAGF,oBAAA,oBACE,MAAA,kBARF,sBAAA,+BAAA,qCAAA,qCAAA,gCAAA,sCAAA,sCAIE,MAAA,QAGF,4BAAA,4BACE,MAAA,kBARF,wBAAA,iCAAA,uCAAA,uCAAA,kCAAA,wCAAA,wCAIE,MAAA,QAGF,8BAAA,8BACE,MAAA,QARF,sBAAA,+BAAA,qCAAA,qCAAA,gCAAA,sCAAA,sCAIE,MAAA,QAGF,4BAAA,4BACE,MAAA,gDARF,sBAAA,+BAAA,qCAAA,qCAAA,gCAAA,sCAAA,sCAIE,MAAA,QAGF,4BAAA,4BACE,MAAA,gBARF,oBAAA,6BAAA,mCAAA,mCAAA,8BAAA,oCAAA,oCAIE,MAAA,QAGF,0BAAA,0BACE,MAAA,8CA4GA,iBAAA,kBAnGF,QAAA,IACA,OAAA,YAYA,wBrB3PA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,KAEA,QAAA,GAGE,oBAAA,EACA,aAAA,QAAA,YAAA,YqBkPA,SAAA,SACA,IAAA,KAEA,QAAA,aACA,MAAA,MACA,YAAA,IA8FI,8BAAA,+BACE,iBAAA,QAKE,sCAAA,uCACE,iBAAA,QADF,wCAAA,yCACE,iBAAA,QADF,sCAAA,uCACE,iBAAA,QADF,sCAAA,uCACE,iBAAA,QADF,oCAAA,qCACE,iBAAA,QAQV,0BACE,IAAA,MACA,MAAA,KACA,YAAA,EAKF,eAAA,eAEE,gBAAA,KCjNJ,cApLA,cAAA,KAGE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,KACA,kBAAA,QAAA,eAAA,QAAA,YAAA,QACA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAEA,qBAAA,sBAEE,QAAA,KtBiIJ,qBAAA,sBAEE,QAAA,MACA,QAAA,IAGE,wBAAA,EAAA,WAAA,EACA,0BAAA,EAAA,eAAA,EAAA,MAAA,EAIJ,qBACE,MAAA,KsBpIF,sBACE,OAAA,EACA,aAAA,IACA,cAAA,IACA,UAAA,MAGE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,iCACE,aAAA,EA2JA,2BACE,UAAA,MADF,4BACE,UAAA,OADF,4BACE,UAAA,QAzGN,+BAEI,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,ID+EJ,8BAAA,uCAAA,6CAAA,6CAAA,wCAAA,8CAAA,8CAIE,iBAAA,QACA,MAAA,QAGF,oCAAA,oCACE,iBAAA,qBACA,MAAA,QAVF,gCAAA,yCAAA,+CAAA,+CAAA,0CAAA,gDAAA,gDAIE,iBAAA,QACA,MAAA,QAGF,sCAAA,sCACE,iBAAA,oBACA,MAAA,QAVF,8BAAA,uCAAA,6CAAA,6CAAA,wCAAA,8CAAA,8CAIE,iBAAA,QACA,MAAA,QAGF,oCAAA,oCACE,iBAAA,gDACA,MAAA,QAVF,8BAAA,uCAAA,6CAAA,6CAAA,wCAAA,8CAAA,8CAIE,iBAAA,QACA,MAAA,QAGF,oCAAA,oCACE,iBAAA,iBACA,MAAA,QAVF,4BAAA,qCAAA,2CAAA,2CAAA,sCAAA,4CAAA,4CAIE,iBAAA,QACA,MAAA,QAGF,kCAAA,kCACE,iBAAA,gDACA,MAAA,QAQA,6BAAA,sCAAA,4CAAA,4CAAA,mCAAA,mCAAA,uCAAA,6CAAA,6CACE,iBAAA,YAiBJ,6BAAA,sCAAA,4CAAA,4CAAA,uCAAA,6CAAA,6CAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,mCAAA,mCACE,aAAA,kBACA,MAAA,kBAVF,qCAAA,8CAAA,oDAAA,oDAAA,+CAAA,qDAAA,qDAAA,qCAAA,8CAAA,oDAAA,oDAAA,+CAAA,qDAAA,qDAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,2CAAA,2CAAA,2CAAA,2CACE,aAAA,kBACA,MAAA,kBAVF,uCAAA,gDAAA,sDAAA,sDAAA,iDAAA,uDAAA,uDAAA,uCAAA,gDAAA,sDAAA,sDAAA,iDAAA,uDAAA,uDAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,6CAAA,6CAAA,6CAAA,6CACE,aAAA,QACA,MAAA,QAVF,qCAAA,8CAAA,oDAAA,oDAAA,+CAAA,qDAAA,qDAAA,qCAAA,8CAAA,oDAAA,oDAAA,+CAAA,qDAAA,qDAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,2CAAA,2CAAA,2CAAA,2CACE,aAAA,gDACA,MAAA,gDAVF,qCAAA,8CAAA,oDAAA,oDAAA,+CAAA,qDAAA,qDAAA,qCAAA,8CAAA,oDAAA,oDAAA,+CAAA,qDAAA,qDAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,2CAAA,2CAAA,2CAAA,2CACE,aAAA,gBACA,MAAA,gBAVF,mCAAA,4CAAA,kDAAA,kDAAA,6CAAA,mDAAA,mDAAA,mCAAA,4CAAA,kDAAA,kDAAA,6CAAA,mDAAA,mDAIE,OAAA,IAAA,MAAA,QACA,MAAA,QAGF,yCAAA,yCAAA,yCAAA,yCACE,aAAA,8CACA,MAAA,8CAQA,4BAAA,qCAAA,2CAAA,2CAAA,kCAAA,kCAAA,sCAAA,4CAAA,4CACE,aAAA,YACA,iBAAA,YAeJ,4BAAA,qCAAA,2CAAA,2CAAA,sCAAA,4CAAA,4CAIE,MAAA,QAGF,kCAAA,kCACE,MAAA,kBARF,oCAAA,6CAAA,mDAAA,mDAAA,8CAAA,oDAAA,oDAAA,oCAAA,6CAAA,mDAAA,mDAAA,8CAAA,oDAAA,oDAIE,MAAA,QAGF,0CAAA,0CAAA,0CAAA,0CACE,MAAA,kBARF,sCAAA,+CAAA,qDAAA,qDAAA,gDAAA,sDAAA,sDAAA,sCAAA,+CAAA,qDAAA,qDAAA,gDAAA,sDAAA,sDAIE,MAAA,QAGF,4CAAA,4CAAA,4CAAA,4CACE,MAAA,QARF,oCAAA,6CAAA,mDAAA,mDAAA,8CAAA,oDAAA,oDAAA,oCAAA,6CAAA,mDAAA,mDAAA,8CAAA,oDAAA,oDAIE,MAAA,QAGF,0CAAA,0CAAA,0CAAA,0CACE,MAAA,gDARF,oCAAA,6CAAA,mDAAA,mDAAA,8CAAA,oDAAA,oDAAA,oCAAA,6CAAA,mDAAA,mDAAA,8CAAA,oDAAA,oDAIE,MAAA,QAGF,0CAAA,0CAAA,0CAAA,0CACE,MAAA,gBARF,kCAAA,2CAAA,iDAAA,iDAAA,4CAAA,kDAAA,kDAAA,kCAAA,2CAAA,iDAAA,iDAAA,4CAAA,kDAAA,kDAIE,MAAA,QAGF,wCAAA,wCAAA,wCAAA,wCACE,MAAA,8CC1LF,8BACE,aAAA,UAEA,sCACE,kBAAA,YA0KF,sBAAA,iCAAA,gCAhHA,cAAA,KAAA,UAAA,KAGF,8BAAA,yCAAA,wCAEI,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAMF,yCAAA,oDAAA,mDACE,cAAA,EAhDJ,kDAAA,iDAAA,uCAEI,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,I3B6DE,aAAA,4B2BSN,wCAEI,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAKF,cAAA,G3BhBI,aAAA,4B2BSN,yCAEI,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAKF,cAAA,G3BhBI,aAAA,kC2B2GJ,yCAEI,QAAA,MAEA,iDACE,QAAA,MACA,aAAA,G3BjHF,aAAA,kC2BsHJ,0CAEI,QAAA,MAEA,kDACE,QAAA,MACA,aAAA,GCnMR,cAdA,SAAA,SACA,QAAA,GACA,MAAA,QACA,OAAA,QvB6GA,qCACE,QAAA,EuB1GF,oBAAA,oBAEE,MAAA,QAcI,oBAlCN,MAAA,OACA,IAAA,MACA,UAAA,MACA,YAAA,EA+BM,cAAA,qBAlCN,MAAA,KACA,IAAA,MACA,UAAA,IACA,YAAA,ECpCA,OAZA,QAAA,aACA,QAAA,UAAA,MAEA,cAAA,EAEA,UAAA,MACA,YAAA,EACA,YAAA,OACA,OAAA,QAOE,WAAA,QACA,MAAA,QAGE,eACE,WAAA,QACA,MAAA,QAFF,iBACE,WAAA,QACA,MAAA,QAFF,eACE,WAAA,QACA,MAAA,QAFF,eACE,WAAA,QACA,MAAA,QAFF,aACE,WAAA,QACA,MAAA,QClBN,UAnCA,OAAA,KACA,cAAA,KACA,cAAA,EACA,iBAAA,QAqCM,kCACE,iBAAA,QADF,oCACE,iBAAA,QADF,kCACE,iBAAA,QADF,kCACE,iBAAA,QADF,gCACE,iBAAA,QAOR,gBAxCA,SAAA,SACA,QAAA,MACA,MAAA,GACA,OAAA,KACA,iBAAA,QAyCA,qBzB8MA,SAAA,SACA,IAAA,IACA,KAAA,IACA,kBAAA,qBAAA,UAAA,qByBhPA,OAAA,EACA,UAAA,OACA,YAAA,IACA,MAAA,QACA,YAAA,OC4EA,QAvFA,SAAA,SACA,OAAA,MACA,WAAA,QACA,cAAA,QAEA,iBAAA,QACA,OAAA,QACA,oBAAA,KAAA,iBAAA,KAAA,gBAAA,KAAA,YAAA,KACA,iBAAA,KAAA,aAAA,KAoFA,aA/EA,SAAA,SACA,IAAA,EACA,KAAA,EAEA,QAAA,aACA,UAAA,KACA,OAAA,MAEA,iBAAA,QACA,mBAAA,IAAA,IAAA,YAAA,WAAA,IAAA,IAAA,YAEA,yBACE,mBAAA,IAAA,GAAA,OAAA,WAAA,IAAA,GAAA,OAwEF,eAlEA,KAAA,EACA,QAAA,EACA,OAAA,aAAA,OAAA,KAEA,QAAA,aACA,MAAA,OACA,OAAA,OAEA,cAAA,EACA,iBAAA,QACA,mBAAA,IAAA,IAAA,YAAA,WAAA,IAAA,IAAA,YACA,iBAAA,aAAA,aAAA,a1B0LA,SAAA,SACA,IAAA,IACA,kBAAA,iBAAA,UAAA,iBA7CA,sCACE,QAAA,E0B3IF,qBACE,iBAAA,wBAGF,2BACE,mBAAA,IAAA,GAAA,OAAA,WAAA,IAAA,GAAA,OACA,OAAA,iBAAA,OAAA,SAiDF,iB5BilHF,kB4B7nHE,QAAA,IACA,OAAA,YAiDA,iBA7CA,QAAA,aACA,MAAA,MACA,OAAA,QACA,OAAA,EAAA,QACA,kBAAA,YAAA,UAAA,YAEA,8BACE,IAAA,EACA,MAAA,MACA,WAAA,KAGF,gCACE,SAAA,SACA,IAAA,EACA,KAAA,IACA,MAAA,OACA,OAAA,OACA,kBAAA,iBAAA,UAAA,iBCyIF,QAjKA,SAAA,SACA,cAAA,KACA,QAAA,EAGA,UAAA,QACA,YAAA,IACA,MAAA,QAEA,oBAAA,KAAA,iBAAA,KAAA,gBAAA,KAAA,YAAA,KA0JE,OAAA,KAIF,cAzJA,SAAA,SACA,cAAA,EACA,QAAA,EA4JA,eAlJA,SAAA,SACA,QAAA,MACA,MAAA,KACA,OAAA,KAEA,cAAA,EACA,WAAA,QACA,mBAAA,IAAA,KAAA,SAAA,WAAA,IAAA,KAAA,SAGA,YAAA,QACA,MAAA,QAEA,OAAA,QAGA,qBACE,OAAA,EAIF,sBACE,SAAA,SACA,IAAA,OACA,KAAA,OAEA,QAAA,MACA,MAAA,OACA,OAAA,OAEA,kBAAA,mBAAA,UAAA,mBACA,cAAA,EACA,WAAA,QACA,mBAAA,IAAA,KAAA,SAAA,WAAA,IAAA,KAAA,SACA,QAAA,GAIF,6BACE,WAAA,QAEA,oCACE,KAAA,QAMJ,mCACE,WAAA,uBAEA,0CACE,WAAA,QAIJ,2CACE,WAAA,wBAKF,8BACE,OAAA,YACA,QAAA,G3BsCF,kDACE,QAAA,E2BgDF,eAAA,iBA7EA,SAAA,SACA,IAAA,IACA,kBAAA,iBAAA,UAAA,iBAgFA,eA3EA,KAAA,GACA,QAAA,KAEA,mCACE,QAAA,MA6EF,iBAvEA,MAAA,IAEA,qCACE,QAAA,KA0EF,aAvDA,OAAA,OAEA,4BACE,MAAA,KACA,OAAA,OACA,UAAA,QAGF,mCACE,IAAA,OACA,KAAA,OACA,MAAA,KACA,OAAA,KAGF,iDACE,KAAA,QA2CF,cA3DA,OAAA,QAEA,6BACE,MAAA,OACA,OAAA,QACA,UAAA,OAGF,oCACE,IAAA,OACA,KAAA,OACA,MAAA,QACA,OAAA,QAGF,kDACE,KAAA,KA+CF,cA/DA,OAAA,OAEA,6BACE,MAAA,KACA,OAAA,OACA,UAAA,KAGF,oCACE,IAAA,OACA,KAAA,OACA,MAAA,KACA,OAAA,KAGF,kDACE,KAAA,QCyEF,MA9GA,gBAAA,SACA,MAAA,KACA,cAAA,KACA,cAAA,E9B8rHF,MACA,M8BvxHE,MAGE,OAAA,IAAA,MAAA,uBACA,iBAAA,QAIF,QACE,QAAA,MAAA,QAAA,QACA,YAAA,IAIF,MACE,WAAA,0BACA,MAAA,QAIF,MACE,WAAA,uBACA,MAAA,Q9BsxHJ,S8B/wHI,SACE,WAAA,I9BoxHN,SADA,SADA,S8B9wHI,SAEE,QAAA,MAAA,QAAA,QACA,YAAA,IACA,WAAA,K9BmxHN,S8B7wHI,SAEE,QAAA,MAAA,QAAA,QArEA,yBACE,cAAA,EACA,iBAAA,uBA8EF,sBACE,iBAAA,QAjEN,yBACE,cAAA,IAAA,MAAA,uBACA,iBAAA,QjCyEI,aAAA,kCiC0GJ,kBACE,QAAA,KAIJ,kBACE,QAAA,K9B+pHF,eADA,e8B3pHA,eAGE,QAAA,MAGF,eACE,WAAA,GAeF,aAvGA,QAAA,MACA,MAAA,KACA,WAAA,KAOE,2BACE,iBAAA,0BAMF,2BACE,iBAAA,uBAMF,2BACE,iBAAA,uBAOA,uDACE,iBAAA,0BA+EN,cACE,WAAA,KCpRF,OAXA,QAAA,aACA,UAAA,MACA,QAAA,KAEA,cAAA,IAEA,UAAA,MACA,WAAA,OAOE,WAAA,QACA,MAAA,QAGE,eACE,WAAA,QACA,MAAA,QAFF,iBACE,WAAA,QACA,MAAA,QAFF,eACE,WAAA,QACA,MAAA,QAFF,eACE,WAAA,QACA,MAAA,QAFF,aACE,WAAA,QACA,MAAA,QCqDN,aA/CA,OAAA,EAAA,EAAA,KAAA,EACA,WAAA,K9B6GA,oBAAA,qBAEE,QAAA,MACA,QAAA,IAGE,wBAAA,EAAA,WAAA,EACA,0BAAA,EAAA,eAAA,EAAA,MAAA,EAIJ,oBACE,MAAA,K8BpHF,gBACE,MAAA,KAEA,UAAA,SACA,MAAA,QACA,OAAA,QAGE,eAAA,UAQE,wCACE,SAAA,SACA,OAAA,EAAA,OACA,QAAA,EACA,QAAA,IACA,MAAA,QAUR,eACE,MAAA,QAEA,qBACE,gBAAA,UASF,uBACE,MAAA,QACA,OAAA,YCxBJ,SApBA,iBAAA,0BACA,MAAA,QAvBA,SAAA,SACA,OAAA,EAAA,EAAA,KAAA,EACA,QAAA,KAEA,OAAA,IAAA,MAAA,mBACA,cAAA,EAGA,sBACE,WAAA,EAGF,qBACE,cAAA,EAiCE,iBAxBJ,iBAAA,kDACA,MAAA,QAuBI,mBAxBJ,iBAAA,0BACA,MAAA,QAuBI,iBAxBJ,iBAAA,yBACA,MAAA,QAuBI,iBAxBJ,iBAAA,uBACA,MAAA,QAuBI,eAxBJ,iBAAA,oBACA,MAAA,QA6BI,eAzBJ,YAAA,MACA,cAAA,MACA,eAAA,MACA,aAAA,MAsBI,eAzBJ,YAAA,KACA,cAAA,KACA,eAAA,KACA,aAAA,KC+BA,MAvDE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,OACA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAGF,cAAA,KAEA,OAAA,IAAA,MAAA,QACA,cAAA,EAEA,WAAA,QACA,mBAAA,KAAA,WAAA,KAEA,SAAA,OACA,MAAA,QAEA,kBACE,cAAA,EA0CF,cAhCE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,QAAA,KACA,WAAA,QAEA,0BACE,cAAA,EA4BF,cAnBE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,QAAA,KAEA,0BACE,cAAA,EAmBF,YACE,WAAA,ICxDF,eA5BA,SAAA,SACA,QAAA,GAEA,QAAA,KAEA,MAAA,MACA,QAAA,KAEA,WAAA,OACA,OAAA,IAAA,MAAA,QACA,cAAA,EACA,iBAAA,QAEA,UAAA,KAIA,0BACE,QAAA,MAGF,uBACE,QAAA,MACA,WAAA,QAWE,oBACE,MAAA,MADF,qBACE,MAAA,MADF,qBACE,MAAA,MC4FN,YApFA,YAAA,EACA,cAAA,KlCwFA,mBAAA,oBAEE,QAAA,MACA,QAAA,IAGE,wBAAA,EAAA,WAAA,EACA,0BAAA,EAAA,eAAA,EAAA,MAAA,EAIJ,mBACE,MAAA,KkChGF,eACE,aAAA,SACA,cAAA,EACA,UAAA,QAME,QAAA,KAEA,2BAAA,0BAEE,QAAA,avC4EA,aAAA,4BuCzFN,eAuBM,QAAA,cAMN,cpCqlIF,mBoCnlII,QAAA,MACA,QAAA,SAAA,QACA,cAAA,EACA,MAAA,QAEA,oBpCqlIJ,yBoCplIM,WAAA,QA6CF,qBAlCF,QAAA,SAAA,QACA,WAAA,QACA,MAAA,QACA,OAAA,QAmCE,sBA3BF,QAAA,SAAA,QACA,MAAA,QACA,OAAA,YAEA,4BACE,WAAA,IA0BA,6BAjBF,QAAA,SAAA,QACA,QAAA,IACA,MAAA,QAqBE,+BpCijIJ,sCoC/iIM,QAAA,aACA,aAAA,MACA,QAAA,IAGF,0BpCijIJ,iCoC/iIM,QAAA,aACA,YAAA,MACA,QAAA,IC7CJ,SAnGA,SAAA,SACA,QAAA,aAEA,cAAA,OAAA,IAAA,QACA,YAAA,IACA,OAAA,KAkGA,SA9FA,SAAA,SACA,IAAA,sBACA,QAAA,KAEA,UAAA,MACA,QAAA,OAEA,cAAA,EACA,iBAAA,QACA,UAAA,IACA,MAAA,QAEA,iBACE,SAAA,SAIA,wBnChCF,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,OAEA,QAAA,GAOE,iBAAA,EACA,aAAA,YAAA,YAAA,QmCmBE,OAAA,KAGF,qCACE,KAAA,IACA,kBAAA,iBAAA,UAAA,iBAKF,qBnC5CF,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,OAEA,QAAA,GAGE,oBAAA,EACA,aAAA,QAAA,YAAA,YmCmCE,IAAA,KACA,OAAA,KAGF,kCACE,KAAA,IACA,kBAAA,iBAAA,UAAA,iBAKF,sBnCzDF,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,OAEA,QAAA,GAWE,mBAAA,EACA,aAAA,YAAA,YAAA,YAAA,QmCwCE,KAAA,KAGF,mCACE,OAAA,KACA,IAAA,IACA,kBAAA,iBAAA,UAAA,iBAKF,uBnCtEF,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,OAEA,QAAA,GAeE,kBAAA,EACA,aAAA,YAAA,QAAA,YAAA,YmCiDE,MAAA,KACA,KAAA,KAGF,oCACE,OAAA,KACA,IAAA,IACA,kBAAA,iBAAA,UAAA,iBAIJ,2BACE,OAAA,KACA,IAAA,IAGF,8BACE,OAAA,IACA,IAAA,KAGF,4BACE,KAAA,IACA,MAAA,KAGF,6BACE,KAAA,KACA,MAAA,ICCF,WAxFA,YAAA,EACA,WAAA,QACA,gBAAA,KAGE,sCACE,OAAA,YAOJ,yCACE,cAAA,EAGF,uCACE,cAAA,EA8EF,iBAlEA,SAAA,SACA,QAAA,MACA,QAAA,QAAA,KAEA,OAAA,IAAA,MAAA,QACA,cAAA,EAEA,UAAA,OACA,YAAA,EACA,MAAA,QAEA,6CACE,cAAA,IAAA,MAAA,QACA,cAAA,EAGF,uBAAA,uBAEE,iBAAA,QAIA,yBACE,SAAA,SACA,IAAA,IACA,MAAA,KACA,WAAA,OACA,QAAA,IAGF,oCACE,QAAA,IAuCJ,mBA3BA,QAAA,KACA,QAAA,KAEA,OAAA,IAAA,MAAA,QACA,cAAA,EACA,iBAAA,QAEA,MAAA,QAEA,0CACE,cAAA,IAAA,MAAA,QCrCF,cApFA,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,cAAA,KAGE,cAAA,OAAA,UAAA,OAGF,kBACE,UAAA,K1CqJI,aAAA,kC0CjJJ,8BAEI,cAAA,KAAA,UAAA,MA0EN,sBAhEE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAOF,kCACE,cAAA,KAGF,oDACE,aAAA,KAGF,kCACE,cAAA,E1CqHI,aAAA,kC0ClHN,uCAwBA,QAAA,EACA,eAAA,KAGE,wBAAA,KAAA,WAAA,KACA,UAAA,KAMF,2CACE,MAAA,MA7BA,mCACE,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,ICkFJ,OArGA,SAAA,SAyGA,iBApGA,SAAA,SACA,OAAA,EACA,OAAA,EACA,WAAA,KACA,SAAA,OAoGA,aA/FA,MAAA,KACA,SAAA,SAGE,mCACE,IAAA,EACA,KAAA,EA6FJ,cAvFA,OAAA,EA2FA,aAtFA,MAAA,KACA,UAAA,KACA,OAAA,EAwFA,eAnFA,SAAA,SACA,OAAA,EACA,MAAA,KACA,cAAA,EACA,QAAA,KAEA,iBAAA,kBACA,MAAA,QAgFA,YAAA,gBA3EA,QAAA,GACA,QAAA,KACA,MAAA,QtC+IA,SAAA,SACA,IAAA,IACA,kBAAA,iBAAA,UAAA,iBA7CA,mCAAA,uCACE,QAAA,EsCjGF,mBAAA,kBAAA,kBAAA,uBAAA,sBAAA,sBAGE,iBAAA,kBAsEF,gBAhEA,KAAA,EAqEA,YAhEA,KAAA,KACA,MAAA,EAoEA,eA/DA,SAAA,SACA,WAAA,MACA,cAAA,MACA,WAAA,OtCyEA,sCACE,QAAA,EsCvEF,sBACE,MAAA,OACA,OAAA,OACA,OAAA,MAEA,cAAA,IACA,iBAAA,QAEA,4BACE,iBAAA,QAGF,gCACE,iBAAA,QxCk5IN,YyC3/IE,kBAnBA,SAAA,SACA,OAAA,EACA,cAAA,KACA,eAAA,IACA,SAAA,OzCuhJF,kBAFA,mBACA,mBAEA,kBALA,wByCjhJE,yBzCghJF,yBAEA,wByC9gJI,SAAA,SACA,IAAA,EACA,KAAA,EACA,MAAA,KACA,OAAA,KzCshJJ,uByC1gJM,6BACE,eAAA,OC2FN,MAlFA,OAAA,EACA,OAAA,IAAA,MAAA,QACA,WAAA,QACA,gBAAA,KxC8GA,aAAA,cAEE,QAAA,MACA,QAAA,IAGE,wBAAA,EAAA,WAAA,EACA,0BAAA,EAAA,eAAA,EAAA,MAAA,EAIJ,aACE,MAAA,KwCpHF,kBACE,QAAA,MACA,MAAA,KACA,MAAA,KAiFA,kBACE,QAAA,EAEA,wBACE,WAAA,IAMN,cACE,WAAA,QAEA,mBACE,MAAA,QAEA,yBAAA,yBAEE,WAAA,wBAKN,YA3FA,MAAA,KAEA,cACE,QAAA,MACA,QAAA,QAAA,OACA,UAAA,OACA,YAAA,EACA,MAAA,QxCiHF,qCACE,QAAA,EwC/GA,oBACE,WAAA,QACA,MAAA,yBAGF,oBAAA,kCAEE,WAAA,QACA,MAAA,QA6EJ,cAlEA,OAAA,IAAA,MAAA,QACA,WAAA,EACA,WAAA,QACA,MAAA,QACA,mBAAA,IAAA,IAAA,KAAA,WAAA,IAAA,IAAA,KAkEA,uBA3DA,OAAA,IAAA,MAAA,QACA,YAAA,EA8DA,YAvDA,QAAA,KACA,QAAA,KAEA,sBACE,QAAA,MC/EF,WAzBA,QAAA,aACA,UAAA,KACA,cAAA,KAEA,OAAA,IAAA,MAAA,QACA,cAAA,EACA,mBAAA,EAAA,EAAA,EAAA,IAAA,kBAAA,WAAA,EAAA,EAAA,EAAA,IAAA,kBAEA,YAAA,EAqBA,YAjBA,mBAAA,mBAAA,IAAA,SAAA,WAAA,mBAAA,IAAA,SAAA,WAAA,WAAA,IAAA,SAAA,WAAA,WAAA,IAAA,QAAA,CAAA,mBAAA,IAAA,SAEA,kBAAA,kBAEE,mBAAA,EAAA,EAAA,IAAA,IAAA,oBAAA,WAAA,EAAA,EAAA,IAAA,IAAA,oBAGF,kBACE,mBAAA,KAAA,WAAA,KC6UF,MA1UA,QAAA,EACA,OAAA,EACA,WAAA,KACA,SAAA,SAGE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,cAAA,KAAA,UAAA,K1C8IF,gCACE,QAAA,EFi/IJ,c4CznJE,QAEE,YAAA,EACA,gBAAA,KACA,QAAA,MACA,QAAA,MAAA,K5C4nJJ,QACA,a4CznJE,Y5CunJF,a4CnnJI,cAAA,EAGF,YACE,QAAA,aA+SA,MAAA,iBAnNE,cAAA,KAAA,UAAA,KACA,mBAAA,WAAA,sBAAA,OAAA,mBAAA,IAAA,eAAA,IAuNF,eA7ME,cAAA,OAAA,UAAA,OACA,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,O5CkiJN,kCADkC,oCAElC,oCAHA,+B4Cr9IQ,iC5Cs9IR,iC4Cl9IY,WAAA,KAhLR,kBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,I5C8oJN,kCADkC,oCAElC,oCAHA,+B4Cj+IQ,iC5Ck+IR,iC4C99IY,WAAA,KAyIR,aAtMA,kBAAA,OAAA,eAAA,OAAA,YAAA,OAGF,mBACE,YAAA,KAGF,eACE,QAAA,E/CvCI,aAAA,4B+C2OF,wBA1OA,cAAA,KAAA,UAAA,KACA,mBAAA,WAAA,sBAAA,OAAA,mBAAA,IAAA,eAAA,IA6OA,sBAnOA,cAAA,OAAA,UAAA,OACA,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,OAjGF,yBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IADF,uBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,K/CmFE,aAAA,4B+C2OF,uBA1OA,cAAA,KAAA,UAAA,KACA,mBAAA,WAAA,sBAAA,OAAA,mBAAA,IAAA,eAAA,IA6OA,qBAnOA,cAAA,OAAA,UAAA,OACA,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,OAjGF,wBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IADF,sBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,KAgVF,aAtMA,aAAA,EACA,YAAA,KAQA,cACE,QAAA,YAAA,QAAA,YAAA,QAAA,KADF,oBAAA,kBAAA,mBAAA,iBACE,QAAA,YAAA,QAAA,YAAA,QAAA,KA8CF,qBAAA,4BAEI,mBAAA,WAAA,sBAAA,OAAA,cAAA,IAAA,OAAA,UAAA,IAAA,O5CsiJR,uB4CniJM,yB5CoiJN,yBACA,8BAD0B,gCAE1B,gC4CniJQ,aAAA,OASJ,sBAAA,6BAEI,mBAAA,WAAA,sBAAA,OAAA,cAAA,IAAA,OAAA,UAAA,IAAA,O5CkiJR,wB4C/hJM,0B5CgiJN,0BACA,+BAD2B,iCAE3B,iC4C/hJQ,YAAA,OASJ,oBAAA,2BAEI,mBAAA,SAAA,sBAAA,OAAA,cAAA,OAAA,OAAA,UAAA,OAAA,O5C8hJR,sB4CxhJM,wB5CyhJN,wBACA,6BADyB,+BAEzB,+B4CnhJU,oBAAA,QAAA,WAAA,QACA,cAAA,OACA,WAAA,OAMN,uBAAA,8BAEI,mBAAA,SAAA,sBAAA,OAAA,cAAA,OAAA,OAAA,UAAA,OAAA,O5CshJR,yB4ChhJM,2B5CihJN,2BACA,gCAD4B,kCAE5B,kC4C3gJU,oBAAA,QAAA,WAAA,QACA,cAAA,OACA,WAAA,OA+GN,mBA/FF,WAAA,QACA,MAAA,QAoGI,gBArGJ,WAAA,QACA,MAAA,QA0GE,iBAvXE,iBAAA,MAAA,cAAA,MAAA,gBAAA,WAQA,qBACE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,iBAAA,IAAA,cAAA,IAAA,gBAAA,SAEA,iCACE,iBAAA,MAAA,cAAA,MAAA,gBAAA,WAIJ,8BACE,QAAA,MACA,WAAA,MAEA,0CACE,WAAA,M5CyxJV,qCADqC,uCAErC,uCAHA,kC4CppJQ,oC5CqpJR,oC4C7oJY,WAAA,MA+NN,0BA5QF,aAAA,KACA,YAAA,EA3EE,sBACE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,iBAAA,OAAA,cAAA,OAAA,gBAAA,OAEA,kCACE,iBAAA,MAAA,cAAA,MAAA,gBAAA,WA2VN,iBAtIF,QAAA,MAAA,KAEA,YAAA,IACA,YAAA,EACA,MAAA,QAyII,qBAEI,iBAAA,OAAA,cAAA,OAAA,gBAAA,OAzWJ,wBACE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,iBAAA,OAAA,cAAA,OAAA,gBAAA,OAEA,oCACE,iBAAA,MAAA,cAAA,MAAA,gBAAA,WA6WR,iCACE,QAAA,KC9gBF,W3C0GA,SAAA,SACA,QAAA,aACA,eAAA,OACA,MAAA,KACA,OAAA,KACA,OAAA,QAGA,kBACE,SAAA,SACA,IAAA,EACA,KAAA,EAEA,QAAA,MACA,MAAA,KACA,OAAA,IAEA,WAAA,QACA,mBAAA,EAAA,IAAA,EAAA,OAAA,CAAA,EAAA,KAAA,EAAA,QAAA,WAAA,EAAA,IAAA,EAAA,OAAA,CAAA,EAAA,KAAA,EAAA,QAEA,QAAA,GAWA,wBACE,WAAA,QACA,mBAAA,EAAA,IAAA,EAAA,OAAA,CAAA,EAAA,KAAA,EAAA,QAAA,WAAA,EAAA,IAAA,EAAA,OAAA,CAAA,EAAA,KAAA,EAAA,Q2CvIJ,gB3CsGA,SAAA,SACA,QAAA,aACA,eAAA,OACA,MAAA,KACA,OAAA,KACA,OAAA,QAGA,uBACE,SAAA,SACA,IAAA,EACA,KAAA,EAEA,QAAA,MACA,MAAA,KACA,OAAA,IAEA,WAAA,QACA,mBAAA,EAAA,IAAA,EAAA,OAAA,CAAA,EAAA,KAAA,EAAA,QAAA,WAAA,EAAA,IAAA,EAAA,OAAA,CAAA,EAAA,KAAA,EAAA,QAEA,QAAA,GAWA,6BACE,WAAA,QACA,mBAAA,EAAA,IAAA,EAAA,OAAA,CAAA,EAAA,KAAA,EAAA,QAAA,WAAA,EAAA,IAAA,EAAA,OAAA,CAAA,EAAA,KAAA,EAAA,Q4C1DF,mBAME,MAAA,KAGF,kBAIE,QAAA,MAAA,KAGF,wCACE,QAAA,MAAA,KAGF,6CFoIA,aAAA,EACA,YAAA,KEhIE,yDF2HF,aAAA,KACA,YAAA,EElLF,wEACE,SAAA,SAEA,+E5CTF,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAGE,oBAAA,EACA,aAAA,QAAA,YAAA,Y4CAE,SAAA,SACA,IAAA,IACA,WAAA,KACA,MAAA,KAIJ,iEACE,MAAA,KACA,KAAA,KAGF,kEACE,MAAA,KACA,KAAA,KA2CE,0EACE,kBAAA,eAAA,UAAA,eACA,yBAAA,IAAA,IAAA,iBAAA,IAAA,IAYN,6BACE,SAAA,SAGF,sBACE,aAAA,KAIF,gBACE,SAAA,SACA,IAAA,EACA,MAAA,EAEA,MAAA,KACA,OAAA,KAEA,OAAA,QASA,uB5C5GF,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAGE,oBAAA,EACA,aAAA,QAAA,YAAA,Y4CoGE,IAAA,EACA,OAAA,EACA,OAAA,KAKJ,2CACE,kBAAA,WAAA,UAAA,WACA,yBAAA,IAAA,IAAA,iBAAA,IAAA,IAGF,qB5CmDA,SAAA,mBACA,MAAA,cACA,OAAA,cACA,QAAA,YACA,SAAA,iBACA,KAAA,wBACA,YAAA,iBACA,OAAA,Y6C3JA,cACE,SAAA,SACA,SAAA,OAEA,iBACE,QAAA,MAGF,6BACE,mBAAA,OAAA,IAAA,WAAA,OAAA,IAMF,aACE,QAAA,MAAA,KACA,WAAA,QAIF,iCACE,SAAA,SACA,IAAA,EACA,KAAA,KACA,QAAA,GAEA,MAAA,KACA,WAAA,QACA,mBAAA,kBAAA,KAAA,OAAA,WAAA,kBAAA,KAAA,OAAA,WAAA,UAAA,KAAA,OAAA,WAAA,UAAA,KAAA,MAAA,CAAA,kBAAA,KAAA,OAEA,2CACE,QAAA,EACA,QAAA,MACA,kBAAA,kBAAA,UAAA,kBAGF,4CACE,kBAAA,iBAAA,UAAA,iBAIF,mCACE,QAAA,MAAA,KAIJ,wCHkHA,aAAA,EACA,YAAA,EG/GA,6CACE,WAAA,KAhFJ,0CACE,SAAA,SAEA,iD7CDF,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAWE,mBAAA,EACA,aAAA,YAAA,YAAA,YAAA,Q6ChBE,SAAA,SACA,IAAA,IACA,WAAA,KACA,MAAA,KAIJ,4D7CVA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAWE,mBAAA,EACA,aAAA,YAAA,YAAA,YAAA,Q6CPA,MAAA,KACA,KAAA,KAGF,6D7ChBA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAeE,kBAAA,EACA,aAAA,YAAA,QAAA,YAAA,Y6CLA,MAAA,KACA,KAAA,KAiEE,wC7CpFJ,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAeE,kBAAA,EACA,aAAA,YAAA,QAAA,YAAA,Y6C+DI,QAAA,aACA,eAAA,OACA,aAAA,OCnDF,kDACE,IAAA,KACA,MAAA,EACA,KAAA,KAKF,mDACE,IAAA,KACA,MAAA,KACA,KAAA,EAKF,+CACE,SAAA,SACA,cAAA,OAGF,sD9C1DJ,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAGE,oBAAA,EACA,aAAA,QAAA,YAAA,Y8CiDI,MAAA,IACA,KAAA,KACA,WAAA,K9CiGN,wCACE,QAAA,E8CtDA,oBAEE,QAAA,MAAA,KAIF,8BACE,WAAA,IACA,MAAA,QAGF,yBACE,QAAA,KAGF,2CJkEA,aAAA,EACA,YAAA,EIxHE,gDACE,IAAA,EAIA,2DACE,IAAA,EACA,MAAA,KACA,KAAA,KAKF,4DACE,MAAA,KACA,KAAA,KAhER,oCACE,MAAA,KAGF,+C9CvBA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAeE,kBAAA,EACA,aAAA,YAAA,QAAA,YAAA,Y8CEA,MAAA,KACA,KAAA,IAGF,gD9C7BA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAWE,mBAAA,EACA,aAAA,YAAA,YAAA,YAAA,QLiHI,aAAA,4BmD/FF,oEACE,IAAA,KACA,MAAA,EACA,KAAA,KAKF,qEACE,IAAA,KACA,MAAA,KACA,KAAA,EAKF,iEACE,SAAA,SACA,cAAA,OAGF,wE9C1DJ,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAGE,oBAAA,EACA,aAAA,QAAA,YAAA,Y8CiDI,MAAA,IACA,KAAA,KACA,WAAA,KAMF,uDACE,IAAA,EAIA,kEACE,IAAA,EACA,MAAA,KACA,KAAA,KAKF,mEACE,MAAA,KACA,KAAA,KAhER,2CACE,MAAA,KAGF,sD9CvBA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAeE,kBAAA,EACA,aAAA,YAAA,QAAA,YAAA,Y8CEA,MAAA,KACA,KAAA,IAGF,uD9C7BA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAWE,mBAAA,EACA,aAAA,YAAA,YAAA,YAAA,SLiHI,aAAA,4BmD/FF,mEACE,IAAA,KACA,MAAA,EACA,KAAA,KAKF,oEACE,IAAA,KACA,MAAA,KACA,KAAA,EAKF,gEACE,SAAA,SACA,cAAA,OAGF,uE9C1DJ,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAGE,oBAAA,EACA,aAAA,QAAA,YAAA,Y8CiDI,MAAA,IACA,KAAA,KACA,WAAA,KAMF,sDACE,IAAA,EAIA,iEACE,IAAA,EACA,MAAA,KACA,KAAA,KAKF,kEACE,MAAA,KACA,KAAA,KAhER,0CACE,MAAA,KAGF,qD9CvBA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAeE,kBAAA,EACA,aAAA,YAAA,QAAA,YAAA,Y8CEA,MAAA,KACA,KAAA,IAGF,sD9C7BA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAWE,mBAAA,EACA,aAAA,YAAA,YAAA,YAAA,S8C6HE,0DACE,IAAA,KACA,MAAA,EACA,KAAA,KAKN,2BACE,MAAA,MAEA,uCACE,MAAA,MAIJ,4BACE,SAAA,SAEA,qCACE,SAAA,SACA,IAAA,IACA,MAAA,IACA,KAAA,KACA,WAAA,KAGF,6DAEE,IAAA,KAKE,KAAA,KAIJ,4DACE,MAAA,KACA,KAAA,KAGF,6DACE,MAAA,KACA,KAAA,KAIJ,qBACE,SAAA,SACA,IAAA,EACA,KAAA,KACA,QAAA,EAEA,QAAA,KACA,UAAA,MAEA,OAAA,IAAA,MAAA,QACA,WAAA,QAEA,iCACE,QAAA,MAAA,KA3LJ,0DACE,MAAA,KAGF,qE9CvBA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAeE,kBAAA,EACA,aAAA,YAAA,QAAA,YAAA,Y8CEA,MAAA,KACA,KAAA,IAGF,sE9C7BA,QAAA,MACA,MAAA,EACA,OAAA,EAEA,aAAA,MACA,aAAA,IAEA,QAAA,GAWE,mBAAA,EACA,aAAA,YAAA,YAAA,YAAA,Q8CqME,0CACE,WAAA,KAIJ,wBACE,MAAA,KAKF,wCACE,QAAA,MCxLJ,oBACE,SAAA,OAIF,uBACE,SAAA,SACA,IAAA,EACA,KAAA,EACA,QAAA,GAEA,MAAA,KACA,OAAA,KAEA,mBAAA,QAAA,IAAA,IAAA,CAAA,WAAA,IAAA,KAAA,WAAA,QAAA,IAAA,IAAA,CAAA,WAAA,IAAA,KAEA,WAAA,sBAEA,QAAA,EACA,WAAA,OAEA,SAAA,OAEA,kCACE,QAAA,EACA,WAAA,QAGF,mCACE,OAAA,QAGF,2CACE,SAAA,SAGF,wCACE,SAAA,MAgUJ,oBAzTA,SAAA,SACA,SAAA,OA6TA,YAnTA,QAAA,GACA,mBAAA,kBAAA,IAAA,KAAA,WAAA,kBAAA,IAAA,KAAA,WAAA,UAAA,IAAA,KAAA,WAAA,UAAA,IAAA,IAAA,CAAA,kBAAA,IAAA,KACA,4BAAA,OAAA,oBAAA,OACA,WAAA,QAGE,SAAA,M/CsDF,mCACE,QAAA,E+C9CF,+BACE,QAAA,GAIF,sBACE,WAAA,OAIF,kCACE,QAAA,GAEA,0CACE,mBAAA,EAAA,EAAA,KAAA,kBAAA,WAAA,EAAA,EAAA,KAAA,kBAKJ,oBACE,kBAAA,eAAA,UAAA,eA2RF,qBA9TA,QAAA,GACA,mBAAA,kBAAA,IAAA,KAAA,WAAA,kBAAA,IAAA,KAAA,WAAA,UAAA,IAAA,KAAA,WAAA,UAAA,IAAA,IAAA,CAAA,kBAAA,IAAA,KACA,4BAAA,OAAA,oBAAA,OACA,WAAA,QAME,SAAA,S/CmDF,4CACE,QAAA,E+C9CF,wCACE,QAAA,GAIF,+BACE,WAAA,OAIF,2CACE,QAAA,GAEA,mDACE,mBAAA,EAAA,EAAA,KAAA,kBAAA,WAAA,EAAA,EAAA,KAAA,kBAKJ,6BACE,kBAAA,eAAA,UAAA,eAgSF,eArRE,IAAA,EACA,KAAA,EACA,OAAA,KACA,WAAA,KACA,2BAAA,MAII,MAAA,MACA,kBAAA,mBAAA,UAAA,mBAKK,8CAIH,kBAAA,mBAAA,UAAA,mBAGJ,4EACE,kBAAA,eAAA,UAAA,eAMF,qDAGM,kBAAA,kBAAA,UAAA,kBA0HR,kC/C1TA,mBAAA,MAAA,MAAA,EAAA,KAAA,MAAA,mBAAA,WAAA,MAAA,MAAA,EAAA,KAAA,MAAA,mB+CubF,gBAhPE,IAAA,EACA,MAAA,EACA,OAAA,KACA,WAAA,KACA,2BAAA,MAII,MAAA,MACA,kBAAA,kBAAA,UAAA,kBAKK,+CAIH,kBAAA,kBAAA,UAAA,kBAGJ,6EACE,kBAAA,eAAA,UAAA,eAMF,sDAGM,kBAAA,mBAAA,UAAA,mBAoFR,mC/C5TA,mBAAA,MAAA,KAAA,EAAA,KAAA,MAAA,mBAAA,WAAA,MAAA,KAAA,EAAA,KAAA,MAAA,mB+C0bF,cA3ME,IAAA,EACA,KAAA,EACA,MAAA,KACA,WAAA,KACA,2BAAA,MAII,OAAA,MACA,kBAAA,mBAAA,UAAA,mBAKK,6CAGH,kBAAA,mBAAA,UAAA,mBAGJ,2EACE,kBAAA,eAAA,UAAA,eAMF,oDAGM,kBAAA,kBAAA,UAAA,kBA+CR,iC/CxTA,mBAAA,MAAA,EAAA,MAAA,KAAA,MAAA,mBAAA,WAAA,MAAA,EAAA,MAAA,KAAA,MAAA,mB+CubF,iBAvKE,OAAA,EACA,KAAA,EACA,MAAA,KACA,WAAA,KACA,2BAAA,MAII,OAAA,MACA,kBAAA,kBAAA,UAAA,kBAKK,gDAGH,kBAAA,kBAAA,UAAA,kBAGJ,8EACE,kBAAA,eAAA,UAAA,eAMF,uDAGM,kBAAA,mBAAA,UAAA,mBAUR,oC/C9TA,mBAAA,MAAA,EAAA,KAAA,KAAA,MAAA,mBAAA,WAAA,MAAA,EAAA,KAAA,KAAA,MAAA,mB+C+bF,oBA7GA,kBAAA,KAAA,UAAA,KACA,4BAAA,OAAA,oBAAA,OAGA,2CAAA,wCAEE,mBAAA,kBAAA,IAAA,KAAA,WAAA,kBAAA,IAAA,KAAA,WAAA,UAAA,IAAA,KAAA,WAAA,UAAA,IAAA,IAAA,CAAA,kBAAA,IAAA,KAIF,wCACE,kBAAA,eAAA,UAAA,eAIF,wCACE,kBAAA,eAAA,UAAA,epD1MI,aAAA,4BoD+SA,iCA1FN,kBAAA,KAAA,UAAA,KACA,QAAA,GACA,mBAAA,KAAA,WAAA,KACA,WAAA,QAMA,+CACE,QAAA,KAIF,qDACE,kBAAA,KAAA,UAAA,KAGO,oCACP,YAAA,MAIF,qDACE,YAAA,MAsEI,kCA9FN,kBAAA,KAAA,UAAA,KACA,QAAA,GACA,mBAAA,KAAA,WAAA,KACA,WAAA,QAMA,gDACE,QAAA,KAIF,sDACE,kBAAA,KAAA,UAAA,KAGO,qCACP,aAAA,MAIF,sDACE,aAAA,MA0EI,gCAlGN,kBAAA,KAAA,UAAA,KACA,QAAA,GACA,mBAAA,KAAA,WAAA,KACA,WAAA,QAMA,8CACE,QAAA,KAIF,oDACE,kBAAA,KAAA,UAAA,KAGO,mCACP,WAAA,MAIF,oDACE,WAAA,MA8EI,mCAtGN,kBAAA,KAAA,UAAA,KACA,QAAA,GACA,mBAAA,KAAA,WAAA,KACA,WAAA,QAMA,iDACE,QAAA,KAIF,uDACE,kBAAA,KAAA,UAAA,KAGO,sCACP,cAAA,MAIF,uDACE,cAAA,OpD7OI,aAAA,4BoD+SA,gCA1FN,kBAAA,KAAA,UAAA,KACA,QAAA,GACA,mBAAA,KAAA,WAAA,KACA,WAAA,QAMA,8CACE,QAAA,KAIF,oDACE,kBAAA,KAAA,UAAA,KAGO,oCACP,YAAA,MAIF,oDACE,YAAA,MAsEI,iCA9FN,kBAAA,KAAA,UAAA,KACA,QAAA,GACA,mBAAA,KAAA,WAAA,KACA,WAAA,QAMA,+CACE,QAAA,KAIF,qDACE,kBAAA,KAAA,UAAA,KAGO,qCACP,aAAA,MAIF,qDACE,aAAA,MA0EI,+BAlGN,kBAAA,KAAA,UAAA,KACA,QAAA,GACA,mBAAA,KAAA,WAAA,KACA,WAAA,QAMA,6CACE,QAAA,KAIF,mDACE,kBAAA,KAAA,UAAA,KAGO,mCACP,WAAA,MAIF,mDACE,WAAA,MA8EI,kCAtGN,kBAAA,KAAA,UAAA,KACA,QAAA,GACA,mBAAA,KAAA,WAAA,KACA,WAAA,QAMA,gDACE,QAAA,KAIF,sDACE,kBAAA,KAAA,UAAA,KAGO,sCACP,cAAA,MAIF,sDACE,cAAA,OpD7OI,aAAA,4BoDsUA,iCAnFN,WAAA,QACA,OAAA,KACA,SAAA,OACA,WAAA,IACA,MAAA,KACA,SAAA,QACA,mBAAA,KAAA,WAAA,KAGA,iDAAA,+CAAA,gDAAA,8CAIE,mBAAA,KAAA,WAAA,KACA,kBAAA,KAAA,UAAA,KAGF,+CACE,QAAA,MpDrQI,aAAA,4BoDsUA,gCAnFN,WAAA,QACA,OAAA,KACA,SAAA,OACA,WAAA,IACA,MAAA,KACA,SAAA,QACA,mBAAA,KAAA,WAAA,KAGA,gDAAA,8CAAA,+CAAA,6CAIE,mBAAA,KAAA,WAAA,KACA,kBAAA,KAAA,UAAA,KAGF,8CACE,QAAA,MnDlTF,oBACE,SAAA,MACA,MAAA,KACA,WAAA,OAEA,kCACE,WAAA,OACA,2BAAA,MAGF,yBACE,WAAA,OAKJ,gBA9FA,SAAA,MACA,IAAA,EACA,MAAA,EACA,OAAA,EACA,KAAA,EACA,QAAA,KAEA,QAAA,KACA,iBAAA,mBACA,WAAA,KACA,2BAAA,MAyFA,QACE,SAAA,SACA,IAAA,MACA,aAAA,KACA,YAAA,KACA,WAAA,KACA,2BAAA,MA1FF,QAAA,KAEA,4BAAA,OAAA,oBAAA,OAEA,QAAA,KACA,QAAA,KAEA,OAAA,IAAA,MAAA,QACA,cAAA,EACA,iBAAA,QI8HA,+BACE,QAAA,EL5BI,aAAA,4BCxBN,QAtEE,WAAA,GAIF,gBACE,UAAA,EAIF,oBACE,cAAA,EDoFI,aAAA,4BCxBN,QA9CE,MAAA,MACA,UAAA,OAyDA,iBACE,QAAA,EDWE,aAAA,4BCPJ,aA/DA,MAAA,IACA,UAAA,ODqEI,aAAA,4BCNJ,cAhEA,MAAA,IACA,UAAA,ODqEI,aAAA,4BCLJ,cAjEA,MAAA,IACA,UAAA,OAmEA,aA7DF,IAAA,EACA,MAAA,EACA,OAAA,EACA,KAAA,EAEA,MAAA,KACA,UAAA,KACA,OAAA,KACA,WAAA,KACA,YAAA,EAEA,OAAA,EACA,cAAA,EDmDM,aAAA,kCCxBN,QAvCA,IAAA,EACA,MAAA,EACA,OAAA,EACA,KAAA,EAEA,MAAA,KACA,UAAA,KACA,OAAA,KACA,WAAA,KACA,YAAA,EAEA,OAAA,EACA,cAAA,GAyDE,wBACE,SAAA,MoDrLJ,kBACE,SAAA,SAGF,QACE,SAAA,SACA,QAAA,EACA,kBAAA,mBAAA,UAAA,mBAGF,iBACE,SAAA,MACA,QAAA,EACA,MAAA,KAEA,2BACE,IAAA,EAGF,8BACE,OAAA,EAIJ,oBACE,SAAA,SACA,MAAA,KACA,KAAA,KAEA,iCACE,OAAA,ECEJ,WACE,QAAA,MACA,WAAA,QACA,MAAA,QAGE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,iBAAA,MAAA,cAAA,MAAA,gBAAA,WACA,kBAAA,OAAA,eAAA,OAAA,YAAA,OAMF,sBACE,YAAA,OACA,aAAA,OAKF,gBnD0iMJ,iBmDxiMM,iBAAA,EAAA,SAAA,EAAA,EAAA,IAAA,KAAA,EAAA,EAAA,IAGF,iBACE,WAAA,MAcJ,iBACE,QAAA,aACA,eAAA,OACA,YAAA,ICuCF,SAtFA,QAAA,MAGE,QAAA,YAAA,QAAA,YAAA,QAAA,KACA,cAAA,OAAA,UAAA,OACA,iBAAA,QAAA,cAAA,QAAA,gBAAA,cACA,kBAAA,OAAA,eAAA,OAAA,YAAA,OAMF,SpDqlMF,YoDnlMI,iBAAA,QAWF,eACE,UAAA,MACA,aAAA,KAIF,4BACE,MAAA,KACA,aAAA,EAGF,sBACE,MAAA,KAoDF,SA7CE,cAAA,KAAA,UAAA,KAGA,uBpDskMJ,wBoDpkMM,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,UAAA,KvD+FE,aAAA,4BuDnDN,SA7BE,cAAA,OAAA,UAAA,OAEA,uBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,aAAA,KAGF,wBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,YAAA,MvDuEE,aAAA,kCuD3CA,4BA1DJ,cAAA,KAAA,UAAA,KAGA,0CpDqmMF,2CoDnmMI,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,UAAA,MvD+FE,aAAA,kCuD3CA,2BA1DJ,cAAA,KAAA,UAAA,KAGA,yCpDknMF,0CoDhnMI,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,UAAA,MA+DF,eACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KACA,OAAA,MAAA,KAAA,MAAA,EAGF,cpD2jMJ,eoDzjMM,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KCjJJ,YACE,MAAA,eAGF,aACE,MAAA,gBAGF,cACE,QAAA,MACA,aAAA,KACA,YAAA,KnD0JF,iBAAA,kBAEE,QAAA,MACA,QAAA,IAGE,wBAAA,EAAA,WAAA,EACA,0BAAA,EAAA,eAAA,EAAA,MAAA,EAIJ,iBACE,MAAA,KoDhHA,YCnBF,iBAAA,MAAA,cAAA,MAAA,gBAAA,WDmBE,aCnBF,iBAAA,IAAA,cAAA,IAAA,gBAAA,SDmBE,cCnBF,iBAAA,OAAA,cAAA,OAAA,gBAAA,ODmBE,eCnBF,iBAAA,QAAA,cAAA,QAAA,gBAAA,cDmBE,cCnBF,cAAA,WAAA,gBAAA,aD4BM,+BC5BN,iBAAA,MAAA,cAAA,MAAA,gBAAA,WD4BM,gCC5BN,iBAAA,IAAA,cAAA,IAAA,gBAAA,SD4BM,iCC5BN,iBAAA,OAAA,cAAA,OAAA,gBAAA,ODqCE,WCpCF,kBAAA,MAAA,eAAA,MAAA,YAAA,WDwCE,gBCxBF,oBAAA,MAAA,WAAA,WDoBE,cCpCF,kBAAA,IAAA,eAAA,IAAA,YAAA,SDwCE,mBCxBF,oBAAA,IAAA,WAAA,SDoBE,cCpCF,kBAAA,OAAA,eAAA,OAAA,YAAA,ODwCE,mBCxBF,oBAAA,OAAA,WAAA,ODoBE,eCpCF,kBAAA,QAAA,eAAA,QAAA,YAAA,QDwCE,oBCxBF,oBAAA,QAAA,WAAA,QD8BA,qBC/CA,iBAAA,OAAA,cAAA,OAAA,gBAAA,OACA,kBAAA,OAAA,eAAA,OAAA,YAAA,ODgDE,mBAAA,OAAA,cAAA,OAME,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,E1DqGM,aAAA,4ByDrEF,gBChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,gBChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,gBChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,gBChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,gBChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,gBChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,G1DqGM,aAAA,4ByDrEF,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,EDgCI,eChCJ,0BAAA,EAAA,eAAA,EAAA,MAAA,GD7DA,gBCYA,QAAA,YAAA,QAAA,YAAA,QAAA,KDRA,iBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,iBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,mBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAIA,cCsDF,mBAAA,WAAA,sBAAA,OAAA,mBAAA,IAAA,eAAA,IDtDE,sBCsDF,mBAAA,WAAA,sBAAA,QAAA,mBAAA,YAAA,eAAA,YDtDE,iBCsDF,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,ODtDE,yBCsDF,mBAAA,SAAA,sBAAA,QAAA,mBAAA,eAAA,eAAA,e1D2FM,aAAA,4ByDvIE,uBCfR,QAAA,YAAA,QAAA,YAAA,QAAA,KDmBQ,wBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,wBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,0BACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAIA,qBC2BV,mBAAA,WAAA,sBAAA,OAAA,mBAAA,IAAA,eAAA,ID3BU,6BC2BV,mBAAA,WAAA,sBAAA,QAAA,mBAAA,YAAA,eAAA,YD3BU,wBC2BV,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,OD3BU,gCC2BV,mBAAA,SAAA,sBAAA,QAAA,mBAAA,eAAA,eAAA,gB1D2FM,aAAA,4ByDvIE,sBCfR,QAAA,YAAA,QAAA,YAAA,QAAA,KDmBQ,uBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,uBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAGF,yBACE,iBAAA,EAAA,SAAA,EAAA,EAAA,KAAA,KAAA,EAAA,EAAA,KAIA,oBC2BV,mBAAA,WAAA,sBAAA,OAAA,mBAAA,IAAA,eAAA,ID3BU,4BC2BV,mBAAA,WAAA,sBAAA,QAAA,mBAAA,YAAA,eAAA,YD3BU,uBC2BV,mBAAA,SAAA,sBAAA,OAAA,mBAAA,OAAA,eAAA,OD3BU,+BC2BV,mBAAA,SAAA,sBAAA,QAAA,mBAAA,eAAA,eAAA,gBCxBA,MACE,QAAA,eAGF,WACE,WAAA,OAEF,SACE,WAAA,Q3D2GI,aAAA,kC2D5FJ,qBA7BA,QAAA,gBAnBA,kCAAA,4BAoDA,qBAnDE,QAAA,gB3D2IE,aAAA,4B2DrGF,iBA5BF,QAAA,gB3DsII,yC2DtGF,iBApEF,QAAA,gB3DqKI,aAAA,uD2D5FJ,sBA7BA,QAAA,gBAnBA,yCAAA,4BAoDA,sBAnDE,QAAA,gB3D2IE,aAAA,4B2DrGF,gBA5BF,QAAA,gB3DsII,yC2DtGF,gBApEF,QAAA,gB3DqKI,aAAA,uD2D5FJ,qBA7BA,QAAA,gBAnBA,yCAAA,4BAoDA,qBAnDE,QAAA,gBA0DJ,axDqjNF,eE17ME,SAAA,mBACA,MAAA,cACA,OAAA,cACA,QAAA,YACA,SAAA,iBACA,KAAA,wBACA,YAAA,iBACA,OAAA,YsD3HE,sBAAA,qBtDqIF,SAAA,iBACA,MAAA,eACA,OAAA,eACA,SAAA,kBACA,KAAA,eACA,YAAA,iBFy7MF,mBwD5jNE,oBAEE,QAAA,gB3DsEI,0CGy/MN,mBwDjkNA,oBAKI,QAAA,iB3DmEE,yCG+/MN,mBwDvkNA,oBASI,QAAA,gBAIJ,oBxDgkNF,mBwD9jNI,QAAA,e3DyDI,0C2D3DN,oBxDqkNA,mBwDhkNI,QAAA,gB3DsDE,yC2D3DN,oBxD2kNA,mBwDlkNI,QAAA,iBAKJ,oBACE,QAAA,KAEF,oBACE,QAAA,MAEF,8CACE,oBACE,QAAA,gBAEF,oBACE,QAAA,gBAKJ,aACE,QAAA,KAEF,wCAAA,2BACE,aACE,QAAA,gBAEF,aACE,QAAA,gBAKJ,iBACE,QAAA,KAEF,2BACE,QAAA,MAEF,2BACE,QAAA","file":"foundation.min.css","sourcesContent":["// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group breakpoints\n////\n\n/// Patch to fix issue #12080\n$-zf-size: null;\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 - divide(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 `<meta>` 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 reveal\n////\n\n/// Default background color of a modal.\n/// @type Color\n$reveal-background: $white !default;\n\n/// Default width of a modal, with no class applied.\n/// @type Number\n$reveal-width: 600px !default;\n\n/// Default maximum width of a modal.\n/// @type Number\n$reveal-max-width: $global-width !default;\n\n/// Default padding inside a modal.\n/// @type Number\n$reveal-padding: $global-padding !default;\n\n/// Default border around a modal.\n/// @type Number\n$reveal-border: 1px solid $medium-gray !default;\n\n/// Default radius for modal.\n/// @type Number\n$reveal-radius: $global-radius !default;\n\n/// z-index for modals. The overlay uses this value, while the modal itself uses this value plus one.\n/// @type Number\n$reveal-zindex: 1005 !default;\n\n/// Background color of modal overlays.\n/// @type Color\n$reveal-overlay-background: rgba($black, 0.45) !default;\n\n\n// Placeholder selector for medium-and-up modals\n// Prevents duplicate CSS when defining multiple Reveal sizes\n// This should be in the same breakpoint then `@mixin reveal-modal-width`\n@include breakpoint(medium) {\n %reveal-centered {\n right: auto;\n left: auto;\n margin: 0 auto;\n }\n}\n\n\n/// Adds styles for a modal overlay.\n/// @param {Color} $background [$reveal-overlay-background] - Background color of the overlay.\n@mixin reveal-overlay($background: $reveal-overlay-background) {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: $reveal-zindex;\n\n display: none;\n background-color: $background;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n/// Adds base styles for a modal.\n@mixin reveal-modal-base {\n z-index: $reveal-zindex + 1;\n // Workaround android browser z-index bug\n backface-visibility: hidden;\n\n display: none;\n padding: $reveal-padding;\n\n border: $reveal-border;\n border-radius: $reveal-radius;\n background-color: $reveal-background;\n\n @include disable-mouse-outline;\n\n @include breakpoint(medium) {\n min-height: 0;\n }\n\n // Make sure rows don't have a min-width on them\n .column {\n min-width: 0;\n }\n\n // Strip margins from the last item in the modal\n > :last-child {\n margin-bottom: 0;\n }\n}\n\n/// Adjusts the width of a modal.\n/// @param {Number} $width - Width of the modal. Generally a percentage.\n/// @param {Number} $max-width [$reveal-max-width] - Maximum width of the modal.\n@mixin reveal-modal-width(\n $width: $reveal-width,\n $max-width: $reveal-max-width\n) {\n // Extends must be made outside of breakpoints for compatibility with newer Sass versions (libsass v3.5)\n @extend %reveal-centered;\n @include breakpoint(medium) {\n width: $width;\n max-width: $max-width;\n }\n}\n\n/// Creates a full-screen modal, which stretches the full width and height of the window.\n@mixin reveal-modal-fullscreen {\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n width: 100%;\n max-width: none;\n height: 100%;\n min-height: 100%;\n margin-left: 0;\n\n border: 0;\n border-radius: 0;\n}\n\n@mixin foundation-reveal {\n\n /// Disables the scroll when Reveal is shown to prevent the background from shifting\n html.is-reveal-open {\n position: fixed;\n width: 100%;\n overflow-y: hidden;\n\n &.zf-has-scroll {\n overflow-y: scroll;\n -webkit-overflow-scrolling: touch;\n }\n\n body { // sass-lint:disable-line no-qualifying-elements\n overflow-y: hidden;\n }\n }\n\n // Overlay\n .reveal-overlay {\n @include reveal-overlay;\n }\n\n // Modal container\n .reveal {\n position: relative;\n top: 100px;\n margin-right: auto;\n margin-left: auto;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n @include reveal-modal-base;\n @include reveal-modal-width($reveal-width);\n\n // Remove padding\n &.collapse {\n padding: 0;\n }\n\n // Sizing classes\n &.tiny { @include reveal-modal-width(30%); }\n &.small { @include reveal-modal-width(50%); }\n &.large { @include reveal-modal-width(90%); }\n\n // Full-screen mode\n &.full {\n @include reveal-modal-fullscreen;\n }\n\n @include breakpoint($-zf-zero-breakpoint only) {\n @include reveal-modal-fullscreen;\n }\n\n &.without-overlay {\n position: fixed;\n }\n }\n}\n","// sass-lint:disable no-vendor-prefixes\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: 0; // 1\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 // Disable outline when intent is clearly mouse and touch\n [data-whatintent=\"mouse\"],\n [data-whatintent=\"touch\"],\n [data-whatinput=\"mouse\"],\n [data-whatinput=\"touch\"] {\n *, *:focus {\n outline: none;\n }\n }\n\n // Disable iOS callouts when draggable is false\n [draggable=false] {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n }\n}\n",null,"// 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 `<html>` and `<body>`. 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 safe padding on the body for non-rectangular devices (i.e. phones with notches)\n/// @type Boolean\n$body-safe-padding: false !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 <meta> 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 @if ($body-safe-padding) {\n // using environment variables to account for non-rectangular displays e.g. phones with notches\n padding-top: env(safe-area-inset-top);\n padding-right: env(safe-area-inset-right);\n padding-bottom: env(safe-area-inset-bottom);\n padding-left: env(safe-area-inset-left);\n }\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 <button> styles created by most browsers\n button {\n @include disable-mouse-outline;\n padding: 0;\n appearance: none;\n border: 0;\n border-radius: $global-radius;\n background: transparent;\n line-height: 1;\n cursor: $global-button-cursor;\n }\n\n // Prevent text overflow on pre\n pre {\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n }\n\n // Make reset inherit font-family instead of settings sans-serif\n button,\n input,\n optgroup,\n select,\n textarea {\n font-family: inherit;\n }\n\n // Internal classes to show/hide elements in JavaScript\n .is-visible {\n display: block !important;\n }\n\n .is-hidden {\n display: none !important;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group functions\n////\n\n@use \"sass:color\";\n\n// Patch to fix issue #12080\n$-zf-bp-value: null;\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-style: solid;\n border-width: $triangle-size;\n\n content: '';\n\n @if ($triangle-direction == down) {\n border-bottom-width: 0;\n border-color: $triangle-color transparent transparent;\n }\n @if ($triangle-direction == up) {\n border-top-width: 0;\n border-color: transparent transparent $triangle-color;\n }\n @if ($triangle-direction == right) {\n border-right-width: 0;\n border-color: transparent transparent transparent $triangle-color;\n }\n @if ($triangle-direction == left) {\n border-left-width: 0;\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. <div class=\"docs-example-burger\"></div>\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: divide($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 $red : round(color.channel($color, \"red\", $space: rgb));\n $green : round(color.channel($color, \"green\", $space: rgb));\n $blue : round(color.channel($color, \"blue\", $space: rgb));\n $rgb : 'rgb%28#{$red}, #{$green}, #{$blue}%29';\n\n background-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" width=\"32\" height=\"24\" viewBox=\"0 0 32 24\"><polygon points=\"0,0 32,0 16,24\" style=\"fill: #{$rgb}\"></polygon></svg>');\n\n @media screen and (min-width: 0\\0) {\n @if color.channel($color, \"lightness\", $space: hsl) < 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(divide(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 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 forms\n////\n\n/// Font color of text inputs.\n/// @type Color\n$input-color: $black !default;\n\n/// Font color of placeholder text within text inputs.\n/// @type Color\n$input-placeholder-color: $medium-gray !default;\n\n/// Font family of text inputs.\n/// @type Font\n$input-font-family: inherit !default;\n\n/// Font size of text inputs.\n/// @type Number\n$input-font-size: rem-calc(16) !default;\n\n/// Font weight of text inputs.\n/// @type Keyword\n$input-font-weight: $global-weight-normal !default;\n\n/// Line height of text inputs.\n/// @type Keyword\n$input-line-height: $global-lineheight !default;\n\n/// Background color of text inputs.\n/// @type Color\n$input-background: $white !default;\n\n/// Background color of focused of text inputs.\n/// @type Color\n$input-background-focus: $white !default;\n\n/// Background color of disabled text inputs.\n/// @type Color\n$input-background-disabled: $light-gray !default;\n\n/// Border around text inputs.\n/// @type Border\n$input-border: 1px solid $medium-gray !default;\n\n/// Border around focused text inputs.\n/// @type Color\n$input-border-focus: 1px solid $dark-gray !default;\n\n/// Padding of text inputs.\n/// @type Color\n$input-padding: $form-spacing * 0.5 !default;\n\n/// Box shadow inside text inputs when not focused.\n/// @type Shadow\n$input-shadow: inset 0 1px 2px rgba($black, 0.1) !default;\n\n/// Box shadow outside text inputs when focused.\n/// @type Shadow\n$input-shadow-focus: 0 0 5px $medium-gray !default;\n\n/// Cursor to use when hovering over a disabled text input.\n/// @type Cursor\n$input-cursor-disabled: not-allowed !default;\n\n/// Properties to transition on text inputs.\n/// @type Transition\n$input-transition: box-shadow 0.5s, border-color 0.25s ease-in-out !default;\n\n/// Enables the up/down buttons that Chrome and Firefox add to `<input type='number'>` elements.\n/// @type Boolean\n$input-number-spinners: true !default;\n\n/// Radius for text inputs.\n/// @type Border\n$input-radius: $global-radius !default;\n\n/// Border radius for form buttons, defaulted to global-radius.\n/// @type Number\n$form-button-radius: $global-radius !default;\n\n@mixin form-element {\n $height: ($input-font-size * unitless-calc($input-line-height)) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')) - rem-calc(1);\n\n display: block;\n box-sizing: border-box;\n width: 100%;\n height: $height;\n margin: 0 0 $form-spacing;\n padding: $input-padding;\n\n border: $input-border;\n border-radius: $input-radius;\n background-color: $input-background;\n box-shadow: $input-shadow;\n\n font-family: $input-font-family;\n font-size: $input-font-size;\n font-weight: $input-font-weight;\n line-height: $input-line-height;\n color: $input-color;\n\n @if has-value($input-transition) {\n transition: $input-transition;\n }\n\n // Focus state\n &:focus {\n outline: none;\n border: $input-border-focus;\n background-color: $input-background-focus;\n box-shadow: $input-shadow-focus;\n\n @if has-value($input-transition) {\n transition: $input-transition;\n }\n }\n}\n\n@mixin foundation-form-text {\n // Text inputs\n #{text-inputs()},\n textarea {\n appearance: none;\n @include form-element;\n }\n\n // Text areas\n textarea {\n max-width: 100%;\n\n &[rows] {\n height: auto;\n }\n }\n\n input,\n textarea {\n // Disabled/readonly state\n &:disabled,\n &[readonly] {\n background-color: $input-background-disabled;\n cursor: $input-cursor-disabled;\n }\n }\n\n // Reset styles on button-like inputs\n [type='submit'],\n [type='button'] {\n appearance: none;\n border-radius: $form-button-radius;\n }\n\n // Reset Normalize setting content-box to search elements\n input[type='search'] { // sass-lint:disable-line no-qualifying-elements\n box-sizing: border-box;\n }\n\n // Number input styles\n [type='number'] {\n @if not $input-number-spinners {\n -moz-appearance: textfield; // sass-lint:disable-line no-vendor-prefixes\n\n &::-webkit-inner-spin-button,\n &::-webkit-outer-spin-button {\n -webkit-appearance: none; // sass-lint:disable-line no-vendor-prefixes\n margin: 0;\n }\n }\n }\n\n // Placeholder text\n ::placeholder {\n color: $input-placeholder-color;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n@mixin foundation-form-checkbox {\n [type='file'],\n [type='checkbox'],\n [type='radio'] {\n margin: 0 0 $form-spacing;\n }\n\n // Styles for input/label siblings\n [type='checkbox'] + label,\n [type='radio'] + label {\n display: inline-block;\n vertical-align: baseline;\n\n margin-#{$global-left}: $form-spacing * 0.5;\n margin-#{$global-right}: $form-spacing;\n margin-bottom: 0;\n\n &[for] {\n cursor: pointer;\n }\n }\n\n // Styles for inputs inside labels\n label > [type='checkbox'],\n label > [type='radio'] {\n margin-#{$global-right}: $form-spacing * 0.5;\n }\n\n // Normalize file input width\n [type='file'] {\n width: 100%;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Color for form labels.\n/// @type Color\n$form-label-color: $black !default;\n\n/// Font size for form labels.\n/// @type Number\n$form-label-font-size: rem-calc(14) !default;\n\n/// Font weight for form labels.\n/// @type Keyword\n$form-label-font-weight: $global-weight-normal !default;\n\n/// Line height for form labels. The higher the number, the more space between the label and its input field.\n/// @type Number\n$form-label-line-height: 1.8 !default;\n\n@mixin form-label {\n display: block;\n margin: 0;\n\n font-size: $form-label-font-size;\n font-weight: $form-label-font-weight;\n line-height: $form-label-line-height;\n color: $form-label-color;\n}\n\n@mixin form-label-middle {\n $input-border-width: get-border-value($input-border, width);\n\n margin: 0 0 $form-spacing;\n line-height: $global-lineheight;\n padding: ($form-spacing * 0.5 + rem-calc($input-border-width)) 0;\n}\n\n@mixin foundation-form-label {\n label {\n @include form-label;\n\n &.middle {\n @include form-label-middle;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Default color for help text.\n/// @type Color\n$helptext-color: $black !default;\n\n/// Default font size for help text.\n/// @type Number\n$helptext-font-size: rem-calc(13) !default;\n\n/// Default font style for help text.\n/// @type Keyword\n$helptext-font-style: italic !default;\n\n@mixin foundation-form-helptext {\n .help-text {\n $margin-top: ($form-spacing * 0.5) * -1;\n\n margin-top: $margin-top;\n font-size: $helptext-font-size;\n font-style: $helptext-font-style;\n color: $helptext-color;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Color of labels prefixed to an input.\n/// @type Color\n$input-prefix-color: $black !default;\n\n/// Background color of labels prefixed to an input.\n/// @type Color\n$input-prefix-background: $light-gray !default;\n\n/// Border around labels prefixed to an input.\n/// @type Border\n$input-prefix-border: 1px solid $medium-gray !default;\n\n/// Left/right padding of an pre/postfixed input label\n$input-prefix-padding: 1rem !default;\n\n@mixin foundation-form-prepostfix {\n $height: ($input-font-size * $input-line-height) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')) - rem-calc(1);\n\n .input-group {\n display: if($global-flexbox, flex, table);\n width: 100%;\n margin-bottom: $form-spacing;\n\n @if $global-flexbox {\n align-items: stretch;\n }\n\n > :first-child {\n &, &.input-group-button > * {\n border-radius: if($global-text-direction == rtl, 0 $input-radius $input-radius 0, $input-radius 0 0 $input-radius);\n }\n }\n\n > :last-child {\n &, &.input-group-button > * {\n border-radius: if($global-text-direction == rtl, $input-radius 0 0 $input-radius, 0 $input-radius $input-radius 0);\n }\n }\n }\n\n %input-group-child {\n margin: 0;\n white-space: nowrap;\n\n @if not $global-flexbox {\n display: table-cell;\n vertical-align: middle;\n }\n }\n\n .input-group-label {\n @extend %input-group-child;\n padding: 0 $input-prefix-padding;\n border: $input-prefix-border;\n background: $input-prefix-background;\n\n color: $input-prefix-color;\n text-align: center;\n white-space: nowrap;\n\n @if $global-flexbox {\n display: flex;\n flex: 0 0 auto;\n align-items: center;\n }\n @else {\n width: 1%;\n height: 100%;\n }\n\n @if has-value($input-prefix-border) {\n &:first-child {\n border-#{$global-right}: 0;\n }\n\n &:last-child {\n border-#{$global-left}: 0;\n }\n }\n }\n\n .input-group-field {\n @extend %input-group-child;\n border-radius: 0;\n\n @if $global-flexbox {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n min-width: 0;\n }\n }\n\n .input-group-button {\n @extend %input-group-child;\n padding-top: 0;\n padding-bottom: 0;\n text-align: center;\n\n @if $global-flexbox {\n display: flex;\n flex: 0 0 auto;\n }\n @else {\n width: 1%;\n height: 100%;\n }\n\n a,\n input,\n button,\n label {\n @extend %input-group-child;\n\n @if $global-flexbox {\n align-self: stretch;\n height: auto;\n }\n @else {\n height: $height;\n }\n padding-top: 0;\n padding-bottom: 0;\n font-size: $input-font-size;\n }\n }\n\n // Specificity bump needed to prevent override by buttons\n @if not $global-flexbox {\n .input-group {\n .input-group-button {\n display: table-cell;\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Default border around custom fieldsets.\n/// @type Border\n$fieldset-border: 1px solid $medium-gray !default;\n\n/// Default padding inside custom fieldsets.\n/// @type Number\n$fieldset-padding: rem-calc(20) !default;\n\n/// Default margin around custom fieldsets.\n/// @type Number\n$fieldset-margin: rem-calc(18 0) !default;\n\n/// Default padding between the legend text and fieldset border.\n/// @type Number\n$legend-padding: rem-calc(0 3) !default;\n\n@mixin fieldset {\n margin: $fieldset-margin;\n padding: $fieldset-padding;\n border: $fieldset-border;\n\n legend {\n // Covers up the fieldset's border to create artificial padding\n margin: 0;\n margin-#{$global-left}: rem-calc(-3);\n padding: $legend-padding;\n }\n}\n\n@mixin foundation-form-fieldset {\n fieldset {\n margin: 0;\n padding: 0;\n border: 0;\n }\n\n legend {\n max-width: 100%;\n margin-bottom: $form-spacing * 0.5;\n }\n\n .fieldset {\n @include fieldset;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group forms\n////\n\n/// Background color for select menus.\n/// @type Color\n$select-background: $white !default;\n\n/// Color of the dropdown triangle inside select menus. Set to `transparent` to remove it entirely.\n/// @type Color\n$select-triangle-color: $dark-gray !default;\n\n/// Default radius for select menus.\n/// @type Color\n$select-radius: $global-radius !default;\n\n@mixin form-select {\n $height: ($input-font-size * unitless-calc($input-line-height)) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')) - rem-calc(1);\n\n height: $height;\n margin: 0 0 $form-spacing;\n padding: $input-padding;\n\n appearance: none;\n border: $input-border;\n border-radius: $select-radius;\n background-color: $select-background;\n\n font-family: $input-font-family;\n font-size: $input-font-size;\n font-weight: $input-font-weight;\n line-height: $input-line-height;\n color: $input-color;\n\n @if has-value($input-transition) {\n transition: $input-transition;\n }\n\n @if $select-triangle-color != transparent {\n background-origin: content-box;\n background-position: $global-right (-$form-spacing) center;\n background-repeat: no-repeat;\n background-size: 9px 6px;\n\n padding-#{$global-right}: ($form-spacing * 1.5);\n\n @include background-triangle($select-triangle-color);\n }\n\n // Focus state\n &:focus {\n outline: none;\n border: $input-border-focus;\n background-color: $input-background-focus;\n box-shadow: $input-shadow-focus;\n\n @if has-value($input-transition) {\n transition: $input-transition;\n }\n }\n\n // Disabled state\n &:disabled {\n background-color: $input-background-disabled;\n cursor: $input-cursor-disabled;\n }\n\n // Hide the dropdown arrow shown in newer IE versions\n &::-ms-expand {\n display: none;\n }\n\n &[multiple] {\n height: auto;\n background-image: none;\n }\n &:not([multiple]) {\n padding-top: 0;\n padding-bottom: 0;\n }\n}\n\n@mixin foundation-form-select {\n select {\n @include form-select;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group abide\n////\n\n/// Sets if error styles should be added to inputs.\n/// @type Boolean\n$abide-inputs: true !default;\n\n/// Sets if error styles should be added to labels.\n/// @type Boolean\n$abide-labels: true !default;\n\n/// Background color to use for invalid text inputs.\n/// @type Color\n$input-background-invalid: get-color(alert) !default;\n\n/// Color to use for labels of invalid inputs.\n/// @type Color\n$form-label-color-invalid: get-color(alert) !default;\n\n/// Default font color for form error text.\n/// @type Color\n$input-error-color: get-color(alert) !default;\n\n/// Default font size for form error text.\n/// @type Number\n$input-error-font-size: rem-calc(12) !default;\n\n/// Default font weight for form error text.\n/// @type Keyword\n$input-error-font-weight: $global-weight-bold !default;\n\n/// Styles the background and border of an input field to have an error state.\n///\n/// @param {Color} $background [$alert-color] - Color to use for the background and border.\n/// @param {Number} $background-lighten [10%] - Lightness level of the background color.\n@mixin form-input-error(\n $background: $input-background-invalid,\n $background-lighten: 10%\n) {\n &:not(:focus) {\n border-color: $background;\n background-color: mix($background, $white, $background-lighten);\n\n &::placeholder {\n color: $background;\n }\n }\n}\n\n/// Adds error styles to a form element, using the values in the settings file.\n@mixin form-error {\n display: none;\n margin-top: $form-spacing * -0.5;\n margin-bottom: $form-spacing;\n\n font-size: $input-error-font-size;\n font-weight: $input-error-font-weight;\n color: $input-error-color;\n}\n\n@mixin foundation-form-error {\n @if $abide-inputs {\n // Error class for invalid inputs\n .is-invalid-input {\n @include form-input-error;\n }\n }\n\n @if $abide-labels {\n // Error class for labels of invalid outputs\n .is-invalid-label {\n color: $form-label-color-invalid;\n }\n }\n\n // Form error element\n .form-error {\n @include form-error;\n\n &.is-visible {\n display: block;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group typography-base\n////\n\n// Base Typography\n// - - - - - - - - - - - - - - -\n// These are styles applied to basic HTML tags, including:\n// - Paragraphs <p>\n// - Bold/italics <b> <strong> <i> <em>\n// - Small text <small>\n// - Headings <h1>-<h6>\n// - Anchors <a>\n// - Dividers <hr>\n// - Lists <ul> <ol> <dl>\n// - Blockquotes <blockquote>\n// - Code blocks <code>\n// - Abbreviations <abbr>\n// - Citations <cite>\n// - Keystrokes <kbd>\n\n/// Font family for header elements.\n/// @type String | List\n$header-font-family: $body-font-family !default;\n\n/// Font weight of headers.\n/// @type String\n$header-font-weight: $global-weight-normal !default;\n\n/// Font style (e.g. italicized) of headers.\n/// @type String\n$header-font-style: normal !default;\n\n/// Font stack used for elements that use monospaced type, such as code samples\n/// @type String | List\n$font-family-monospace: Consolas, 'Liberation Mono', Courier, monospace !default;\n\n/// Color of headers.\n/// @type Color\n$header-color: inherit !default;\n\n/// Line height of headers.\n/// @type Number\n$header-lineheight: 1.4 !default;\n\n/// Bottom margin of headers.\n/// @type Number\n$header-margin-bottom: 0.5rem !default;\n\n/// Styles for headings at various screen sizes. Each key is a breakpoint, and each value is a map of heading styles.\n/// @type Map\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) !default;\n\n// $header-styles map is built from $header-sizes in order to ensure downward compatibility\n// when $header-sizes is depreciated, $header-styles needs to get !default values like settings.scss\n@function build-from-header-sizes($header-sizes) {\n @warn 'Note, that $header-sizes has been replaced with $header-styles. $header-sizes still works, but it is going to be depreciated.';\n $header-styles: ();\n @each $size, $headers in $header-sizes {\n $header-map: ();\n @each $header, $font-size in $headers {\n $header-map: map-merge($header-map, ($header: ('font-size': $font-size)));\n }\n $header-styles: map-merge($header-styles, ($size: $header-map));\n }\n @return $header-styles;\n}\n\n// If it exists $headers-sizes is used to build $header-styles. See the documentation.\n@if variable-exists(header-sizes) {\n $header-styles: build-from-header-sizes($header-sizes);\n}\n\n/// Text rendering method of headers.\n/// @type String\n$header-text-rendering: optimizeLegibility !default;\n\n/// Font size of `<small>` elements.\n/// @type Number\n$small-font-size: 80% !default;\n\n/// Color of `<small>` elements when placed inside headers.\n/// @type Color\n$header-small-font-color: $medium-gray !default;\n\n/// Line height of text inside `<p>` elements.\n/// @type Number\n$paragraph-lineheight: 1.6 !default;\n\n/// Bottom margin of paragraphs.\n/// @type Number\n$paragraph-margin-bottom: 1rem !default;\n\n/// Text rendering method for paragraph text.\n/// @type String\n$paragraph-text-rendering: optimizeLegibility !default;\n\n/// Use the `.code-inline` component as default for `<code>` elements.\n/// @type Boolean\n$enable-code-inline: true !default;\n\n/// Default color for links.\n/// @type Color\n$anchor-color: $primary-color !default;\n\n/// Default color for links on hover.\n/// @type Color\n$anchor-color-hover: scale-color($anchor-color, $lightness: -14%) !default;\n\n/// Default text decoration for links.\n/// @type String\n$anchor-text-decoration: none !default;\n\n/// Default text decoration for links on hover.\n/// @type String\n$anchor-text-decoration-hover: none !default;\n\n/// Maximum width of a divider.\n/// @type Number\n$hr-width: $global-width !default;\n\n/// Default border for a divider.\n/// @type List\n$hr-border: 1px solid $medium-gray !default;\n\n/// Default margin for a divider.\n/// @type Number | List\n$hr-margin: rem-calc(20) auto !default;\n\n/// Line height for items in a list.\n/// @type Number\n$list-lineheight: $paragraph-lineheight !default;\n\n/// Bottom margin for items in a list.\n/// @type Number\n$list-margin-bottom: $paragraph-margin-bottom !default;\n\n/// Bullet type to use for unordered lists (e.g., `square`, `circle`, `disc`).\n/// @type String\n$list-style-type: disc !default;\n\n/// Positioning for bullets on unordered list items.\n/// @type String\n$list-style-position: outside !default;\n\n/// Left (or right) margin for lists.\n/// @type Number\n$list-side-margin: 1.25rem !default;\n\n/// Left (or right) margin for a list inside a list.\n/// @type Number\n$list-nested-side-margin: 1.25rem !default;\n\n/// Bottom margin for `<dl>` elements.\n/// @type Number\n$defnlist-margin-bottom: 1rem !default;\n\n/// Font weight for `<dt>` elements.\n/// @type String\n$defnlist-term-weight: $global-weight-bold !default;\n\n/// Spacing between `<dt>` and `<dd>` elements.\n/// @type Number\n$defnlist-term-margin-bottom: 0.3rem !default;\n\n/// Text color of `<blockquote>` elements.\n/// @type Color\n$blockquote-color: $dark-gray !default;\n\n/// Padding inside a `<blockquote>` element.\n/// @type Number | List\n$blockquote-padding: rem-calc(9 20 0 19) !default;\n\n/// Side border for `<blockquote>` elements.\n/// @type List\n$blockquote-border: 1px solid $medium-gray !default;\n\n/// Use the `.cite-block` component as default for `<cite>` elements.\n/// @type Boolean\n$enable-cite-block: true !default;\n\n/// Font family for `<kbd>` elements.\n/// @type String | List\n$keystroke-font: $font-family-monospace !default;\n\n/// Text color for `<kbd>` elements.\n/// @type Color\n$keystroke-color: $black !default;\n\n/// Background color for `<kbd>` elements.\n/// @type Color\n$keystroke-background: $light-gray !default;\n\n/// Padding for `<kbd>` elements.\n/// @type Number | List\n$keystroke-padding: rem-calc(2 4 0) !default;\n\n/// Border radius for `<kbd>` elements.\n/// @type Number | List\n$keystroke-radius: $global-radius !default;\n\n/// Bottom border style for `<abbr>` elements.\n/// @type List\n$abbr-underline: 1px dotted $black !default;\n\n@mixin foundation-typography-base {\n // Typography resets\n div,\n dl,\n dt,\n dd,\n ul,\n ol,\n li,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n pre,\n form,\n p,\n blockquote,\n th,\n td {\n margin: 0;\n padding: 0;\n }\n\n // Paragraphs\n p {\n margin-bottom: $paragraph-margin-bottom;\n\n font-size: inherit;\n line-height: $paragraph-lineheight;\n text-rendering: $paragraph-text-rendering;\n }\n\n // Emphasized text\n em,\n i {\n font-style: italic;\n line-height: inherit;\n }\n\n // Strong text\n strong,\n b {\n font-weight: $global-weight-bold;\n line-height: inherit;\n }\n\n // Small text\n small {\n font-size: $small-font-size;\n line-height: inherit;\n }\n\n // Headings\n h1, .h1,\n h2, .h2,\n h3, .h3,\n h4, .h4,\n h5, .h5,\n h6, .h6 {\n font-family: $header-font-family;\n font-style: $header-font-style;\n font-weight: $header-font-weight;\n color: $header-color;\n text-rendering: $header-text-rendering;\n\n small {\n line-height: 0;\n color: $header-small-font-color;\n }\n }\n\n // Heading styles\n @each $size, $headers in $header-styles {\n @include breakpoint($size) {\n @each $header, $header-defs in $headers {\n $font-size-temp: 1rem;\n #{$header}, .#{$header} {\n\n @if map-has-key($header-defs, font-size) {\n $font-size-temp: rem-calc(map-get($header-defs, font-size));\n font-size: $font-size-temp;\n } @else if map-has-key($header-defs, fs) {\n $font-size-temp: rem-calc(map-get($header-defs, fs));\n font-size: $font-size-temp;\n } @else if $size == $-zf-zero-breakpoint {\n font-size: $font-size-temp;\n }\n @if map-has-key($header-defs, line-height) {\n line-height: unitless-calc(map-get($header-defs, line-height), $font-size-temp);\n } @else if map-has-key($header-defs, lh) {\n line-height: unitless-calc(map-get($header-defs, lh), $font-size-temp);\n } @else if $size == $-zf-zero-breakpoint {\n line-height: unitless-calc($header-lineheight, $font-size-temp);\n }\n\n @if map-has-key($header-defs, margin-top) {\n margin-top: rem-calc(map-get($header-defs, margin-top));\n } @else if map-has-key($header-defs, mt) {\n margin-top: rem-calc(map-get($header-defs, mt));\n } @else if $size == $-zf-zero-breakpoint {\n margin-top: 0;\n }\n @if map-has-key($header-defs, margin-bottom) {\n margin-bottom: rem-calc(map-get($header-defs, margin-bottom));\n } @else if map-has-key($header-defs, mb) {\n margin-bottom: rem-calc(map-get($header-defs, mb));\n } @else if $size == $-zf-zero-breakpoint {\n margin-bottom: rem-calc($header-margin-bottom);\n }\n }\n }\n }\n }\n\n // Links\n a {\n line-height: inherit;\n color: $anchor-color;\n text-decoration: $anchor-text-decoration;\n\n cursor: pointer;\n\n &:hover,\n &:focus {\n color: $anchor-color-hover;\n @if $anchor-text-decoration-hover != $anchor-text-decoration {\n text-decoration: $anchor-text-decoration-hover;\n }\n }\n\n img {\n border: 0;\n }\n }\n\n // Horizontal rule\n hr {\n clear: both;\n\n max-width: $hr-width;\n height: 0;\n margin: $hr-margin;\n\n border-top: 0;\n border-right: 0;\n border-bottom: $hr-border;\n border-left: 0;\n }\n\n // Lists\n ul,\n ol,\n dl {\n margin-bottom: $list-margin-bottom;\n list-style-position: $list-style-position;\n line-height: $list-lineheight;\n }\n\n // List items\n li {\n font-size: inherit;\n }\n\n // Unordered lists\n ul {\n margin-#{$global-left}: $list-side-margin;\n list-style-type: $list-style-type;\n }\n\n // Ordered lists\n ol {\n margin-#{$global-left}: $list-side-margin;\n }\n\n // Nested unordered/ordered lists\n ul, ol {\n & & {\n margin-#{$global-left}: $list-nested-side-margin;\n margin-bottom: 0;\n }\n }\n\n // Definition lists\n dl {\n margin-bottom: $defnlist-margin-bottom;\n\n dt {\n margin-bottom: $defnlist-term-margin-bottom;\n font-weight: $defnlist-term-weight;\n }\n }\n\n // Blockquotes\n blockquote {\n margin: 0 0 $paragraph-margin-bottom;\n padding: $blockquote-padding;\n border-#{$global-left}: $blockquote-border;\n\n &, p {\n line-height: $paragraph-lineheight;\n color: $blockquote-color;\n }\n }\n\n // Inline Citations\n @if ($enable-cite-block == true) {\n cite {\n // Extending a class is not recommended.\n // TODO: Break the typography-base/typography-helpers separation\n @extend %cite-block;\n }\n }\n\n // Abbreviations\n abbr, abbr[title] {\n border-bottom: $abbr-underline;\n cursor: help;\n text-decoration: none;\n }\n\n // Figures\n figure {\n margin: 0;\n }\n\n // Code\n @if ($enable-code-inline == true) {\n code {\n @extend %code-inline;\n }\n }\n\n // Keystrokes\n kbd {\n margin: 0;\n padding: $keystroke-padding;\n\n background-color: $keystroke-background;\n\n font-family: $keystroke-font;\n color: $keystroke-color;\n\n @if has-value($keystroke-radius) {\n border-radius: $keystroke-radius;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group typography-helpers\n////\n\n/// Default font size for lead paragraphs.\n/// @type Number\n$lead-font-size: $global-font-size * 1.25 !default;\n\n/// Default line height for lead paragraphs.\n/// @type String\n$lead-lineheight: 1.6 !default;\n\n/// Default line height for subheaders.\n/// @type Number\n$subheader-lineheight: 1.4 !default;\n\n/// Default font color for subheaders.\n/// @type Color\n$subheader-color: $dark-gray !default;\n\n/// Default font weight for subheaders.\n/// @type String\n$subheader-font-weight: $global-weight-normal !default;\n\n/// Default top margin for subheaders.\n/// @type Number\n$subheader-margin-top: 0.2rem !default;\n\n/// Default bottom margin for subheaders.\n/// @type Number\n$subheader-margin-bottom: 0.5rem !default;\n\n/// Default font size for statistic numbers.\n/// @type Number\n$stat-font-size: 2.5rem !default;\n\n/// Text color for `.cite-block` component.\n/// @type Color\n$cite-color: $dark-gray !default;\n\n/// Font size for `.cite-block` component.\n/// @type Number\n$cite-font-size: rem-calc(13) !default;\n\n/// Pseudo content for `.cite-block` component.\n/// @type String\n$cite-pseudo-content: '\\2014 \\0020' !default;\n\n/// Text color of `.code-inline` and `.code-block` components.\n/// @type Color\n$code-color: $black !default;\n\n/// Font family of `.code-inline` and `.code-block` components.\n/// @type String | List\n$code-font-family: $font-family-monospace !default;\n\n/// Font weight of text in `.code-inline` and `.code-block` components.\n/// @type String\n$code-font-weight: $global-weight-normal !default;\n\n/// Background color of `.code-inline` and `.code-block` components.\n/// @type Color\n$code-background: $light-gray !default;\n\n/// Border around `.code-inline` and `.code-block` components.\n/// @type List\n$code-border: 1px solid $medium-gray !default;\n\n/// Padding around text of the `.code-inline` component.\n/// @type Number | List\n$code-padding: rem-calc(2 5 1) !default;\n\n/// Padding around text of the `.code-block` component.\n/// @type Number | List\n$code-block-padding: 1rem !default;\n\n/// Margin under the `.code-block` component.\n/// @type Number\n$code-block-margin-bottom: 1.5rem !default;\n\n@mixin cite-block {\n display: block;\n color: $cite-color;\n font-size: $cite-font-size;\n\n &:before {\n content: $cite-pseudo-content;\n }\n}\n\n/// Add basic styles for a code helper.\n/// See `code-inline` and `code-block` mixins.\n@mixin code-style {\n border: $code-border;\n background-color: $code-background;\n\n font-family: $code-font-family;\n font-weight: $code-font-weight;\n color: $code-color;\n}\n\n/// Make code helper from the `code-style` mixin inline.\n/// Used to generate `.code-inline`\n@mixin code-inline {\n display: inline;\n max-width: 100%;\n word-wrap: break-word;\n\n padding: $code-padding;\n}\n\n/// Make code helper from the `code-style` mixin a block.\n/// Used to generate `.code-block`\n@mixin code-block {\n display: block;\n overflow: auto;\n white-space: pre;\n\n padding: $code-block-padding;\n margin-bottom: $code-block-margin-bottom;\n}\n\n@mixin foundation-typography-helpers {\n // Use to create a subheading under a main header\n // Make sure you pair the two elements in a <header> element, like this:\n // <header>\n // <h1>Heading</h1>\n // <h2>Subheading</h2>\n // </header>\n .subheader {\n margin-top: $subheader-margin-top;\n margin-bottom: $subheader-margin-bottom;\n\n font-weight: $subheader-font-weight;\n line-height: $subheader-lineheight;\n color: $subheader-color;\n }\n\n // Use to style an introductory lead, deck, blurb, etc.\n .lead {\n font-size: $lead-font-size;\n line-height: $lead-lineheight;\n }\n\n // Use to style a large number to display a statistic\n .stat {\n font-size: $stat-font-size;\n line-height: 1;\n\n p + & {\n margin-top: -1rem;\n }\n }\n\n ul, ol {\n // Use to remove numbers from ordered list & bullets from unordered list\n &.no-bullet {\n margin-#{$global-left}: 0;\n list-style: none;\n }\n }\n\n %cite-block {\n @include cite-block;\n }\n\n .cite-block {\n @extend %cite-block;\n }\n\n %code-inline {\n @include code-style;\n @include code-inline;\n }\n\n .code-inline {\n @extend %code-inline;\n }\n\n .code-block {\n @include code-style;\n @include code-block;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n@mixin foundation-text-alignment {\n @each $size in $breakpoint-classes {\n @include breakpoint($size) {\n @each $align in (left, right, center, justify) {\n @if $size != $-zf-zero-breakpoint {\n .#{$size}-text-#{$align} {\n text-align: $align;\n }\n }\n @else {\n .text-#{$align} {\n text-align: $align;\n }\n }\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n/// If `true`, all elements will have transparent backgrounds when printed, to save on ink.\n/// @type Boolean\n/// @group global\n$print-transparent-backgrounds: true !default;\n\n/// If `true`, displays next to all links their \"href\" when printed.\n/// @type Boolean\n/// @group global\n$print-hrefs: true !default;\n\n// sass-lint:disable-all\n\n@mixin foundation-print-styles {\n .show-for-print { display: none !important; }\n\n @media print {\n * {\n // Ensure a \"black-on-white\" print by removing backgrounds,\n // using black text everywhere and forcing the browser to economize ink.\n @if $print-transparent-backgrounds {\n background: transparent !important;\n color: black !important; // Black prints faster: h5bp.com/s\n print-color-adjust: economy;\n }\n // Otherwise, prevent any economy by the browser.\n @else {\n print-color-adjust: exact;\n }\n\n box-shadow: none !important;\n text-shadow: none !important;\n }\n\n .show-for-print { display: block !important; }\n .hide-for-print { display: none !important; }\n\n table.show-for-print { display: table !important; }\n thead.show-for-print { display: table-header-group !important; }\n tbody.show-for-print { display: table-row-group !important; }\n tr.show-for-print { display: table-row !important; }\n td.show-for-print { display: table-cell !important; }\n th.show-for-print { display: table-cell !important; }\n\n // Display the URL of a link after the text\n a,\n a:visited { text-decoration: underline;}\n @if $print-hrefs {\n a[href]:after { content: ' (' attr(href) ')'; }\n }\n\n // Don't display the URL for images or JavaScript/internal links\n .ir a:after,\n a[href^='javascript:']:after,\n a[href^='#']:after { content: ''; }\n\n // Display what an abbreviation stands for after the text\n abbr[title]:after { content: ' (' attr(title) ')'; }\n\n // Prevent page breaks in the middle of a blockquote or preformatted text block\n pre,\n blockquote {\n border: 1px solid $dark-gray;\n page-break-inside: avoid;\n }\n\n // h5bp.com/t\n thead { display: table-header-group; }\n\n tr,\n img { page-break-inside: avoid; }\n\n img { max-width: 100% !important; }\n\n @page { margin: 0.5cm; }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n // Avoid page breaks after a heading\n h2,\n h3 { page-break-after: avoid; }\n\n // Helper to re-allow page breaks in the middle of certain elements (e.g. pre, blockquote, tr)\n .print-break-inside {\n page-break-inside: auto;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n// Margin Grid classes\n@mixin xy-base-grid-classes {\n\n // Grid Container\n .grid-container {\n @include xy-grid-container;\n\n &.fluid {\n @include xy-grid-container(100%);\n }\n\n &.full {\n @include xy-grid-container(100%, 0);\n }\n }\n\n // Base grid styles\n .grid-x {\n @include xy-grid;\n }\n\n .cell {\n @include xy-cell(full, $gutter-type: none);\n\n &.auto {\n @include xy-cell-base(auto);\n }\n\n &.shrink {\n @include xy-cell-base(shrink);\n }\n\n }\n .grid-x {\n > .auto {\n @include xy-cell-size(auto, $gutter-type: none);\n }\n\n > .shrink {\n @include xy-cell-size(shrink, $gutter-type: none);\n }\n }\n\n // Auto width\n @include -zf-each-breakpoint() {\n // This is a bit of a hack/workaround, see these issues & PRs for the backstory:\n // https://github.com/foundation/foundation-sites/issues/10244\n // https://github.com/foundation/foundation-sites/pull/10222 and\n // https://github.com/foundation/foundation-sites/pull/10164\n .grid-x {\n $str: \"> .#{$-zf-size}-shrink, > .#{$-zf-size}-full\";\n @for $i from 1 through $grid-columns {\n $str: $str + \", > .#{$-zf-size}-#{$i}\";\n }\n #{$str} {\n flex-basis: auto;\n }\n }\n }\n\n @include -zf-each-breakpoint() {\n // Responsive \"auto\" modifier\n @if not($-zf-size == $-zf-zero-breakpoint) {\n .grid-x > .#{$-zf-size}-auto {\n @include xy-cell(auto, $gutter-type: none);\n }\n }\n\n %-xy-cell-base-shrink-horizontal-#{$-zf-size} {\n @include xy-cell-base(shrink);\n }\n\n // Responsive \"shrink\" modifier\n @if not($-zf-size == $-zf-zero-breakpoint) {\n .grid-x > .#{$-zf-size}-shrink {\n @extend %-xy-cell-base-shrink-horizontal-#{$-zf-size};\n @include xy-cell-size(shrink, $gutter-type: none);\n }\n }\n\n // Responsive width modifiers\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n .grid-x > .#{$-zf-size}-#{$i} {\n @extend %-xy-cell-base-shrink-horizontal-#{$-zf-size};\n @include xy-cell-size($i, $gutter-type: none);\n }\n }\n }\n\n // Reset width when using `.grid-margin-x` not on `.grid-x`\n .grid-margin-x:not(.grid-x) > .cell {\n width: auto;\n }\n\n // Reset height when using `.grid-margin-y` not on `.grid-y`\n .grid-margin-y:not(.grid-y) > .cell {\n height: auto;\n }\n}\n\n@mixin -xy-breakpoint-cell-classes($class-breakpoint, $gutter-breakpoint, $vertical) {\n $prefix: if($class-breakpoint == $-zf-zero-breakpoint, '', '#{$class-breakpoint}-');\n > .#{$prefix}auto {\n @include xy-cell-size(auto, $vertical: $vertical);\n }\n\n > .#{$prefix}shrink {\n @include xy-cell-size(shrink, $vertical: $vertical);\n }\n\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n $classname: if($vertical, '.#{$class-breakpoint}-#{$i}', '.#{$class-breakpoint}-#{$i}');\n\n > #{$classname} {\n @include xy-cell-size($i, $vertical: $vertical);\n }\n }\n}\n\n// Margin Grid classes\n@mixin xy-margin-grid-classes(\n $gutter-position: left right,\n $vertical: false,\n $wrapping-selector: '.grid-margin-x'\n){\n #{$wrapping-selector} {\n @include xy-gutters($negative: true, $gutter-position: $gutter-position);\n\n // Base cell styles\n > .cell {\n @include xy-cell($vertical: $vertical, $output: (size gutters));\n }\n\n // base styles need to all be before the auto and shrink styles\n @include -zf-each-breakpoint() {\n @if(type-of($grid-margin-gutters) == 'map' and map-has-key($grid-margin-gutters, $-zf-size) and $-zf-size != $-zf-zero-breakpoint) {\n > .cell {\n @include xy-cell($vertical: $vertical, $output: (size gutters));\n }\n }\n }\n\n @include -zf-each-breakpoint() {\n\n // This is purely for responsive gutters - the margin grid has to go back and adjust widths (or heights)\n // for all prior breakpoints.\n // As their gutter is defined with their width/height, even breakpoint without a new margin must be\n // generated to not having their width/height overrided by re-adjusted smaller breakpoints.\n @if(type-of($grid-margin-gutters) == 'map' and map-has-key($grid-margin-gutters, $-zf-size)) {\n @each $bp in -zf-breakpoints-less-than($-zf-size) {\n @include -xy-breakpoint-cell-classes($bp, $-zf-size, $vertical);\n }\n }\n\n @include -xy-breakpoint-cell-classes($-zf-size, $-zf-size, $vertical);\n }\n }\n}\n\n// Padding Grid classes\n@mixin xy-padding-grid-classes {\n .grid-padding-x {\n\n // Negative margin for nested grids\n .grid-padding-x {\n @include xy-gutters($negative: true);\n }\n\n // Negative margin for grids within `grid-container/grid-container.fluid`\n // This allows margin and padding grids to line up with eachother\n .grid-container:not(.full) > & {\n @include xy-gutters($negative: true);\n }\n\n // Base cell styles\n > .cell {\n @include xy-gutters($gutters: $grid-padding-gutters, $gutter-type: padding);\n }\n }\n}\n\n// Block Grid classes\n@mixin xy-block-grid-classes($margin-grid: true, $padding-grid: true) {\n @if $padding-grid {\n @include -zf-each-breakpoint {\n @for $i from 1 through $xy-block-grid-max {\n .#{$-zf-size}-up-#{$i} {\n @include xy-grid-layout($n: $i, $selector: '.cell', $gutter-type: padding, $output: (size));\n }\n }\n }\n }\n\n @if $margin-grid {\n @include -zf-each-breakpoint {\n @for $i from 1 through $xy-block-grid-max {\n // This is purely for responsive gutters - the margin grid has to go back and adjust widths (or heights)\n // for prior breakpoints based on the responsive gutter.\n @if(type-of($grid-margin-gutters) == 'map' and map-has-key($grid-margin-gutters, $-zf-size)) {\n @each $bp in -zf-breakpoints-less-than($-zf-size) {\n @if(map-has-key($grid-margin-gutters, $bp)) {\n .grid-margin-x.#{$bp}-up-#{$i} {\n @include xy-grid-layout($n: $i, $selector: '.cell', $gutter-type: margin, $output: (size));\n }\n }\n }\n }\n }\n @for $i from 1 through $xy-block-grid-max {\n .grid-margin-x.#{$-zf-size}-up-#{$i} {\n @include xy-grid-layout($n: $i, $selector: '.cell', $gutter-type: margin, $output: (size));\n }\n }\n }\n }\n}\n\n// Collapse classes\n@mixin xy-collapse-grid-classes($margin-grid: true, $padding-grid: true) {\n @each $bp in $breakpoint-classes {\n @if $margin-grid {\n .#{$bp}-margin-collapse {\n @include xy-grid-collapse($gutter-type: margin, $min-breakpoint: $bp);\n }\n }\n\n @if $padding-grid {\n .#{$bp}-padding-collapse {\n @include xy-grid-collapse($gutter-type: padding, $min-breakpoint: $bp);\n }\n }\n }\n}\n\n// Offset classes\n@mixin xy-offset-cell-classes {\n @include -zf-each-breakpoint {\n @for $i from 1 through $grid-columns {\n // Offsets\n $o: $i - 1;\n\n .#{$-zf-size}-offset-#{$o} {\n @include xy-cell-offset($o, $gutters: $grid-padding-gutters, $gutter-type: padding);\n }\n\n .grid-margin-x > .#{$-zf-size}-offset-#{$o} {\n @include xy-cell-offset($o);\n }\n }\n }\n}\n\n// Vertical Grid classes\n@mixin xy-vertical-grid-classes(\n $margin-grid: true,\n $padding-grid: true\n) {\n\n // @include -zf-each-breakpoint() {\n // @if not($-zf-size == $-zf-zero-breakpoint) {\n // }\n // }\n\n .grid-y {\n @include xy-grid(vertical, false);\n\n\n > .cell {\n @include xy-cell-reset();\n }\n\n > .auto {\n @include xy-cell-size(auto, $gutter-type: none, $vertical: true);\n }\n\n > .shrink {\n @include xy-cell-size(shrink, $gutter-type: none, $vertical: true);\n }\n\n\n @include -zf-each-breakpoint() {\n // This is a bit of a hack/workaround, see these issues and PRs for the backstory:\n // https://github.com/foundation/foundation-sites/issues/10244\n // https://github.com/foundation/foundation-sites/pull/10222 and\n // https://github.com/foundation/foundation-sites/pull/10164\n $str: \"> .#{$-zf-size}-shrink, > .#{$-zf-size}-full\";\n @for $i from 1 through $grid-columns {\n $str: $str + \", > .#{$-zf-size}-#{$i}\";\n }\n #{$str} {\n flex-basis: auto;\n }\n }\n\n @include -zf-each-breakpoint() {\n // Responsive \"auto\" modifier\n @if not($-zf-size == $-zf-zero-breakpoint) {\n > .#{$-zf-size}-auto {\n @include xy-cell(auto, $gutter-type: none, $vertical: true);\n }\n }\n\n %-xy-cell-base-shrink-vertical-#{$-zf-size} {\n @include xy-cell-base(shrink);\n }\n\n // Responsive \"shrink\" modifier\n @if not($-zf-size == $-zf-zero-breakpoint) {\n > .#{$-zf-size}-shrink {\n @extend %-xy-cell-base-shrink-vertical-#{$-zf-size};\n @include xy-cell-size(shrink, $gutter-type: none, $vertical: true);\n }\n }\n\n // Responsive width modifiers\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n > .#{$-zf-size}-#{$i} {\n @extend %-xy-cell-base-shrink-vertical-#{$-zf-size};\n @include xy-cell-size($i, $gutter-type: none, $vertical: true);\n }\n }\n\n }\n }\n\n @if $padding-grid {\n .grid-padding-y {\n // Negative margin for nested grids\n .grid-padding-y {\n @include xy-gutters($negative: true, $gutter-position: top bottom);\n }\n\n // Base cell styles\n > .cell {\n @include xy-gutters($gutters: $grid-padding-gutters, $gutter-type: padding, $gutter-position: top bottom);\n }\n }\n }\n\n @if $margin-grid {\n @include xy-margin-grid-classes(top bottom, true, '.grid-margin-y');\n }\n\n}\n\n@mixin xy-frame-grid-classes($vertical-grid: true, $margin-grid: true) {\n // Framed grid styles\n .grid-frame {\n @include xy-grid-frame;\n }\n\n .cell .grid-frame {\n width: 100%; // Same as include with $nested, but with less css\n }\n\n .cell-block {\n @include xy-cell-block();\n }\n\n .cell-block-y {\n @include xy-cell-block(true);\n }\n\n\n .cell-block-container {\n @include xy-cell-block-container();\n }\n\n\n @include -zf-each-breakpoint(false) {\n\n .#{$-zf-size}-grid-frame {\n @include xy-grid-frame;\n }\n\n .cell .#{$-zf-size}-grid-frame {\n width: 100%; // Same as include with $nested, but with less css\n }\n\n .#{$-zf-size}-cell-block {\n @include xy-cell-block();\n }\n\n .#{$-zf-size}-cell-block-container {\n @include xy-cell-block-container();\n }\n\n .#{$-zf-size}-cell-block-y {\n @include xy-cell-block(true);\n }\n }\n\n @if $vertical-grid {\n .grid-y {\n &.grid-frame {\n @include xy-grid-frame(true);\n width: auto;\n }\n\n @include -zf-each-breakpoint(false) {\n &.#{$-zf-size}-grid-frame {\n @include xy-grid-frame(true);\n width: auto;\n }\n\n }\n }\n .cell {\n .grid-y.grid-frame {\n height: 100%; // Same as include with $nested, but with less css\n }\n @include -zf-each-breakpoint(false) {\n .grid-y.#{$-zf-size}-grid-frame {\n height: 100%; // Same as include with $nested, but with less css\n }\n }\n }\n }\n @if $margin-grid {\n @include xy-margin-grid-classes(top bottom, true, '.grid-margin-y');\n .grid-frame.grid-margin-y {\n @include xy-grid-frame(true, false, $grid-margin-gutters, $include-base: false);\n }\n @include -zf-each-breakpoint(false) {\n .grid-margin-y.#{$-zf-size}-grid-frame {\n @include xy-grid-frame(true, false, $grid-margin-gutters, $-zf-size, false);\n }\n }\n }\n}\n\n// Final classes\n@mixin foundation-xy-grid-classes(\n $base-grid: true,\n $margin-grid: true,\n $padding-grid: true,\n $block-grid: true,\n $collapse: true,\n $offset: true,\n $vertical-grid: true,\n $frame-grid: true\n) {\n\n // Base grid styles\n @if($base-grid) {\n @include xy-base-grid-classes();\n }\n\n // Margin grid\n @if($margin-grid) {\n @include xy-margin-grid-classes();\n }\n\n // Padding grid\n @if($padding-grid) {\n @include xy-padding-grid-classes();\n }\n\n // Block grid\n @if($block-grid) {\n @include xy-block-grid-classes($margin-grid, $padding-grid);\n }\n\n // Collapse gutters\n @if($collapse) {\n @include xy-collapse-grid-classes($margin-grid, $padding-grid);\n }\n\n // Offset gutters\n @if($offset) {\n @include xy-offset-cell-classes();\n }\n\n // Vertical grid\n @if($vertical-grid) {\n @include xy-vertical-grid-classes($margin-grid, $padding-grid);\n }\n\n @if ($frame-grid) {\n @include xy-frame-grid-classes($vertical-grid, $margin-grid)\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Creates a max width container, designed to house your grid content.\n///\n/// @param {Number} $width [$grid-container] - a width to limit the container to.\n/// @param {Number} $padding [$grid-container-padding] - paddings of the container.\n@mixin xy-grid-container(\n $width: $grid-container,\n $padding: $grid-container-padding\n) {\n max-width: $width;\n margin-left: auto;\n margin-right: auto;\n\n @include xy-gutters($gutters: $padding, $gutter-type: padding);\n}\n\n/// Creates a container for your flex cells.\n///\n/// @param {Keyword} $direction [horizontal] - Either horizontal or vertical direction of cells within.\n/// @param {Boolean} $wrap [true] - If the cells within should wrap or not.\n@mixin xy-grid(\n $direction: horizontal,\n $wrap: true\n) {\n $direction: if($direction == 'horizontal', row, column);\n $wrap: if($wrap, wrap, nowrap);\n\n display: flex;\n flex-flow: $direction $wrap;\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Create gutters for a cell/container.\n///\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts either margin or padding.\n/// @param {List} $gutter-position [right left] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination.\n/// @param {Boolean} $negative [false] - Whether to apply the gutter as a negative value. Commonly used for nested grids.\n@mixin xy-gutters(\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $gutter-position: right left,\n $negative: false\n) {\n $operator: if($negative, '-', '');\n\n // If we have declared negative gutters, force type to `margin.\n $gutter-type: if($negative, 'margin', $gutter-type);\n\n // Output our margin gutters.\n @if (type-of($gutters) == 'map') {\n @include -zf-breakpoint-value(auto, $gutters) {\n $gutter: rem-calc($-zf-bp-value) * 0.5;\n\n // Loop through each gutter position\n @each $value in $gutter-position {\n #{$gutter-type}-#{$value}: unquote(\"#{$operator}#{$gutter}\");\n }\n }\n }\n @else if (type-of($gutters) == 'number') {\n $gutter: rem-calc($gutters) * 0.5;\n\n // Loop through each gutter position\n @each $value in $gutter-position {\n #{$gutter-type}-#{$value}: unquote(\"#{$operator}#{$gutter}\");\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Returns the appropriate CSS flex value for a cell base.\n///\n/// @param {Keyword} $size [full] - The size of your cell. Accepts `full`, `auto`, `shrink`, `grow`, or any other value representing a cell size (it will be treated as `shrink`).\n///\n/// @returns {List} The cell flex property value.\n@function xy-cell-base($size: full) {\n @if ($size == 'auto') {\n @return 1 1 0;\n }\n @else if ($size == 'grow') {\n @return 1 0 auto;\n }\n @else if ($size == 'shrink' or $size == 'full' or zf-is-fraction($size, $allow-no-denominator: true)) {\n @return 0 0 auto;\n }\n @return null;\n}\n\n/// Calculate the size of a cell gutters.\n///\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, returns the responsive gutters map `$gutters`. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n///\n/// @returns {Number|Map} The cell gutter size or the responsive gutters map.\n@function xy-cell-gutters(\n $gutters: $grid-margin-gutters,\n $breakpoint: null\n) {\n // For `auto`, returns the responsive map `$gutters`.\n @if ($breakpoint == 'auto') {\n @return $gutters;\n }\n\n // Use the contextual breakpoint by default.\n $breakpoint: -zf-current-breakpoint($breakpoint);\n\n @if ($breakpoint) {\n @return -zf-get-bp-val($gutters, $breakpoint);\n }\n @else {\n @return -zf-get-bp-val($gutters, $-zf-zero-breakpoint) or 0;\n }\n}\n\n/// Returns the percentage size of a cell.\n///\n/// @param {Number|List} $size [$grid-columns] - Size to make the cell. You can pass a value in multiple formats, such as `6`, `50%`, `1 of 2` or `1/3`.\n///\n/// @returns {Number} Size of the cell (in percent).\n@function xy-cell-size(\n $size: $grid-columns\n) {\n @return fraction-to-percentage($size, $denominator: $grid-columns);\n}\n\n/// Returns the appropriate CSS value for a cell size.\n///\n/// Gutters-related arguments are required for cells with margin gutters (by default) as the gutter is included in the width.\n///\n/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full`, `auto`, `shrink` or any fraction like `6`, `50%`, `1 of 2` or `1/2`.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, returns a map of sizes adapted to responsive gutters. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n///\n/// @returns {Number|String|Map} The cell sizing property value, or a responsive map of them.\n@function xy-cell-size-css(\n $size: full,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: null\n) {\n $margin-gutter: 0;\n\n @if ($size == 'auto' or $size == 'shrink') {\n @return auto;\n }\n\n // For cells with margin gutters, the gutter is included in the width.\n @if ($gutter-type == 'margin') {\n $margin-gutter: xy-cell-gutters($gutters, $breakpoint);\n @if ($margin-gutter == null) {\n @error 'xy-cell-size: no gutters were found in `$gutters` for \"$breakpoint: #{$breakpoint}\"';\n }\n }\n\n // Calculate the cell size (number)\n $size-raw: if($size == 'full', 100%, xy-cell-size($size));\n\n // Calculate the cell CSS size including gutters (string)\n // If the cell has responsive margin gutters, return a responsive map of sizes.\n @if type-of($margin-gutter) == 'map' {\n $responsive-css-sizes: ();\n\n @each $bp, $mg in $margin-gutter {\n $mgc: rem-calc($mg);\n @if $mgc == 0 {\n // sass-lint:disable zero-unit\n $mgc: 0rem;\n }\n $size-css: if($mg == 0, $size-raw, calc(#{$size-raw} - #{$mg}));\n $responsive-css-sizes: map-merge($responsive-css-sizes, ($bp: $size-css));\n }\n\n @return $responsive-css-sizes;\n }\n // Otherwise, return a single CSS size.\n @else {\n // Make sure that 0 is translated in 0rem for calc()\n $mgc: rem-calc($margin-gutter);\n @if $mgc == 0 {\n // sass-lint:disable zero-unit\n $mgc: 0rem;\n }\n $css-size: if($margin-gutter == 0, $size-raw, calc(#{$size-raw} - #{$mgc}));\n @return $css-size;\n }\n}\n\n/// Sets base flex properties for cells.\n///\n/// @param {Keyword} $size [full] - The size of your cell. Accepts `full`, `auto`, `shrink`, `grow`, or any other value representing a cell size (it will be treated as `shrink`).\n@mixin xy-cell-base($size: full) {\n $base: xy-cell-base($size);\n\n flex: #{$base};\n\n // Set base styles for \"full\" only\n @if($size == 'full') {\n min-height: 0;\n min-width: 0;\n }\n}\n\n/// Resets a cells width (or height if vertical is true) as well as strips its gutters.\n///\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n@mixin xy-cell-reset($vertical: true) {\n $direction: if($vertical == true, height, width);\n #{$direction}: auto;\n max-#{$direction}: none;\n}\n\n/// Sets sizing properties for cells.\n///\n/// Gutters-related arguments are required for cells with margin gutters (by default) as the gutter is included in the width.\n///\n/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full` (100% width), `auto` (use all available space), `shrink` (use only the required space) or any fraction (`6`, `50%`, `1 of 2` or `1/2`...).\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, generates sizes adapted for responsive gutters. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n@mixin xy-cell-size(\n $size: full,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: null,\n $vertical: false\n) {\n $sizes: xy-cell-size-css($size, $gutters, $gutter-type, $breakpoint);\n $direction: if($vertical == true, height, width);\n\n @if (type-of($sizes) == 'map') {\n @include -zf-breakpoint-value(auto, $sizes) {\n #{$direction}: $-zf-bp-value;\n }\n }\n @else {\n #{$direction}: $sizes;\n }\n}\n\n/// Sets gutters properties for cells.\n///\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {List} $gutter-position [null] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination. By default `right left` for horizontal cells and `top bottom` for vertical cells.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, generates responsive gutters. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Direction of the gutters to output. See `$gutter-position`.\n@mixin xy-cell-gutters(\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $gutter-position: null,\n $breakpoint: null,\n $vertical: false\n) {\n // Get the default gutter position according to cell direction\n @if($gutter-position == null) {\n $gutter-position: if($vertical == true, top bottom, left right);\n }\n\n // Get the gutter width for this breakpoint\n $gutter-width: xy-cell-gutters($gutters, $breakpoint);\n @if ($gutter-width == null) {\n @error 'xy-cell-gutters: no gutters were found in `$gutters` for \"$breakpoint: #{$breakpoint}\"';\n }\n\n @if ($gutter-type and $gutter-type != none) {\n @include xy-gutters($gutter-width, $gutter-type, $gutter-position);\n }\n}\n\n/// Creates a cell for your grid.\n///\n/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full` (100% width), `auto` (use all available space), `shrink` (use only the required space) or any fraction (`6`, `50%`, `1 of 2` or `1/2`...).\n/// @param {Boolean} $gutter-output [null] - [DEPRECATED] Whether or not to output gutters.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {List} $gutter-position [null] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination. By default `right left` for horizontal cells and `top bottom` for vertical cells.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If `auto`, generates responsive gutters. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n/// @param {List} $output [(base size gutters)] - Cell parts to output. You will need to generate others parts of the cell seperately, it may not work properly otherwise.\n@mixin xy-cell(\n $size: full,\n $gutter-output: null,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $gutter-position: null,\n $breakpoint: null,\n $vertical: false,\n $output: (base size gutters)\n) {\n // Default for $gutter-output\n @if ($gutter-output != null) {\n @warn 'xy-cell: $gutter-output is deprecated and will be removed. See migration notes at https://git.io/foundation-6-6-0';\n @if ($gutter-output == false) {\n $output: sl-remove($output, gutters);\n }\n }\n\n @if (index($output, base)) {\n @include xy-cell-base($size);\n }\n @if (index($output, size)) {\n @include xy-cell-size($size, $gutters, $gutter-type, $breakpoint, $vertical);\n }\n @if (index($output, gutters)) {\n @include xy-cell-gutters($gutters, $gutter-type, $gutter-position, $breakpoint, $vertical);\n }\n}\n\n/// Creates a single breakpoint sized grid. Used to generate our grid classes.\n///\n/// `xy-cell-static()` is deprecated and will be removed.\n/// Use `xy-cell()` instead with `$output: (size gutters)` to not generate the cell base.\n/// See migration notes at https://git.io/foundation-6-6-0\n///\n/// @deprecated v6.6.0\n///\n/// @param {Keyword|Number} $size [full] - The size of your cell. Can be `full` (100% width), `auto` (use all available space), `shrink` (use only the required space) or any fraction (`6`, `50%`, `1 of 2` or `1/2`...).\n/// @param {Boolean} $gutter-output [true] - Whether or not to output gutters. Always `true` for margin gutters.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Map or single value for gutters.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n@mixin xy-cell-static(\n $size: full,\n $gutter-output: true,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: $-zf-zero-breakpoint,\n $vertical: false\n) {\n @warn 'xy-cell-static() mixin is deprecated and will be removed. Use \"xy-cell()\" instead. See migration notes at https://git.io/foundation-6-6-0';\n\n $gutter: -zf-get-bp-val($gutters, $breakpoint);\n $gutter-position: if($vertical == true, top bottom, left right);\n\n $-gutter-output: if($gutter-type == 'margin', true, $gutter-output);\n $-gutter-margin: if($gutter-type == 'margin', $gutter, 0);\n\n @include -xy-cell-properties($size, $-gutter-margin, $vertical);\n @if ($-gutter-output) {\n @include xy-gutters($gutter, $gutter-type, $gutter-position);\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Sizes child elements so that `$n` number of items appear on each row.\n///\n/// @param {Number} $n - Number of elements to display per row.\n/// @param {String} $selector ['.cell'] - Selector(s) to use for child elements.\n/// @param {Boolean} $gutter-output [null] - [DEPRECATED] Whether or not to output gutters.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] - Map or single value for gutters.\n/// @param {Keyword} $gutter-type [margin] - Type of gutter to output. Accepts `margin`, `padding` or `none`.\n/// @param {List} $gutter-position [null] - The position to apply gutters to. Accepts `top`, `bottom`, `left`, `right` in any combination. By default `right left` for horizontal cells and `top bottom` for vertical cells.\n/// @param {String} $breakpoint [null] - The breakpoint to use for the cell generation. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] - Set to true to output vertical (height) styles rather than widths.\n/// @param {List} $output [(base size gutters)] - Cell parts to output. You will need to generate others parts of the cell seperately, it may not work correctly otherwise.\n@mixin xy-grid-layout(\n $n,\n $selector: '.cell',\n $gutter-output: null,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $gutter-position: null,\n $breakpoint: null,\n $vertical: false,\n $output: (base size gutters)\n) {\n $size: percentage(divide(1, $n));\n\n & > #{$selector} {\n @include xy-cell($size, $gutter-output, $gutters, $gutter-type, $gutter-position, $breakpoint, $vertical, $output);\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Collapses the grid a cells within it.\n///\n/// @param {String} $selector [.cell] - The child element to remove the gutter from.\n/// @param {Keyword} $gutter-type [margin] - The type of gutter to remove.\n/// @param {List} $gutter-position [right left] - The positions to remove gutters from. Accepts `top`, `bottom`, `left`, `right` in any combination.\n/// @param {Keyword} $min-breakpoint [$-zf-zero-breakpoint] - Minimum breakpoint in `$breakpoint-classes` for which to collapse the gutter.\n@mixin xy-grid-collapse(\n $selector: '.cell',\n $gutter-type: margin,\n $gutter-position: right left,\n $min-breakpoint: $-zf-zero-breakpoint\n) {\n // First, lets negate any margins on the top level\n @if ($gutter-type == 'margin') {\n\n @include breakpoint($min-breakpoint) {\n @each $value in $gutter-position {\n margin-#{$value}: 0;\n }\n\n > #{$selector} {\n @each $value in $gutter-position {\n margin-#{$value}: 0;\n }\n }\n }\n\n $excluded-bps: -zf-breakpoints-less-than($min-breakpoint);\n\n // Output new widths to not include gutters\n @each $bp in $breakpoint-classes {\n @if(sl-contain($excluded-bps, $bp)) {\n @include breakpoint($min-breakpoint) {\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n > .#{$bp}-#{$i} {\n @include xy-cell-size($i, $gutter-type: none);\n }\n }\n }\n } @else {\n @include breakpoint($bp) {\n @for $i from 1 through $grid-columns {\n // Sizing (percentage)\n > .#{$bp}-#{$i} {\n @include xy-cell-size($i, $gutter-type: none);\n }\n }\n }\n }\n }\n }\n @else {\n\n @include breakpoint($min-breakpoint) {\n @each $value in $gutter-position {\n margin-#{$value}: 0;\n }\n\n > #{$selector} {\n @each $value in $gutter-position {\n padding-#{$value}: 0;\n }\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group xy-grid\n////\n\n/// Returns the appropriate CSS value to offset a cell.\n///\n/// @param {Number|List} $n - Size to offset by. You can pass in any value accepted by the `xy-cell()` mixin, such as `6`, `50%`, or `1 of 2`.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] Map of gutters or single value to use for responsive gutters.\n/// @param {Keyword} $gutter-type [margin] The type of gutter to use. Can be `margin` or `padding`\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n///\n/// @returns {Number|String} The cell offset property value.\n@function xy-cell-offset(\n $n,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: null\n) {\n $breakpoint: -zf-current-breakpoint($breakpoint, $default: $-zf-zero-breakpoint);\n $size: xy-cell-size($n);\n\n $offset: $size;\n @if ($gutter-type == 'margin') {\n // Make sure that 0 is translated in 0rem for calc()\n $gutter: rem-calc(xy-cell-gutters($gutters, $breakpoint));\n @if $gutter == 0 {\n // sass-lint:disable zero-unit\n $gutter: 0rem;\n }\n $offset: if($gutter == 0, $size, calc(#{$size} + #{$gutter} / 2));\n }\n @return $offset;\n}\n\n/// Offsets a column to the right/bottom by `$n` columns.\n///\n/// @param {Number|List} $n - Size to offset by. You can pass in any value accepted by the `xy-cell()` mixin, such as `6`, `50%`, or `1 of 2`.\n/// @param {Number|Map} $gutters [$grid-margin-gutters] Map of gutters or single value to use for responsive gutters.\n/// @param {Keyword} $gutter-type [margin] The type of gutter to use. Can be `margin` or `padding`\n/// @param {Number|Array|Keyword} $breakpoint [null] - Breakpoint to use for `$gutters`. It can be a breakpoint name, list of breakpoints or `auto` for all breakpoints. If a list is given, media-queries will be generated. If using with the `breakpoint()` mixin this will be set automatically unless manually entered.\n/// @param {Boolean} $vertical [false] Sets the direction of the offset. If set to true will apply margin-top instead.\n@mixin xy-cell-offset(\n $n,\n $gutters: $grid-margin-gutters,\n $gutter-type: margin,\n $breakpoint: null,\n $vertical: false\n) {\n $breakpoint: -zf-current-breakpoint($breakpoint, $default: $-zf-zero-breakpoint);\n $direction: if($vertical, 'top', $global-left);\n\n @include -zf-each-breakpoint-in($breakpoint, $media-queries: 'for-lists') {\n $offset: xy-cell-offset($n, $gutters, $gutter-type);\n margin-#{$direction}: #{$offset};\n }\n}\n","// sass-lint:disable no-vendor-prefixes\n\n/// Modifies a grid to give it \"frame\" behavior (no overflow, no wrap, stretch behavior)\n///\n/// @param {Boolean} $vertical [false] - Is grid vertical or horizontal. Should match grid.\n/// @param {Boolean} $nested [false] - Is grid nested or not. If nested is true this sets the frame to 100% height, otherwise will be 100vh.\n/// @param {Number|Map} $gutters [null] - Map or single value for gutters.\n/// @param {String} $breakpoint [null] - The name of the breakpoint size in your gutters map to get the size from.\n/// @param {Boolean} $include-base [true] - Include the base styles that don't vary per breakpoint.\n@mixin xy-grid-frame(\n $vertical: false,\n $nested: false,\n $gutters: null,\n $breakpoint: null,\n $include-base: true\n) {\n\n @if $include-base {\n overflow: hidden;\n position: relative;\n flex-wrap: nowrap;\n align-items: stretch;\n }\n\n @if $breakpoint == null and type-of($gutters) == 'map' {\n @include -zf-each-breakpoint() {\n @include xy-grid-frame($vertical, $nested, $gutters, $-zf-size, false);\n }\n } @else {\n // Get our gutters if applicable\n $gutter: -zf-get-bp-val($gutters, $breakpoint);\n\n // If we have a gutter, add it to the width/height\n @if $gutter {\n @if $vertical == true {\n $unit: if($nested == true, 100%, 100vh);\n $gutter: rem-calc($gutter);\n // Make sure that 0 is translated in 0rem for calc()\n @if $gutter == 0 {\n // sass-lint:disable zero-unit\n $gutter: 0rem;\n }\n height: calc(#{$unit} + #{$gutter});\n } @else {\n $unit: if($nested == true, 100%, 100vw);\n $gutter: rem-calc($gutter);\n // Make sure that 0 is translated in 0rem for calc()\n @if $gutter == 0 {\n // sass-lint:disable zero-unit\n $gutter: 0rem;\n }\n width: calc(#{$unit} + #{$gutter});\n }\n }\n @else {\n @if $vertical == true {\n height: if($nested == true, 100%, 100vh);\n } @else {\n width: if($nested == true, 100%, 100vw);\n }\n }\n }\n}\n\n/// Modifies a cell to give it \"block\" behavior (overflow auto, inertial scrolling)\n///\n/// @param {Boolean} $vertical [false] - Is grid vertical or horizontal. Should match grid.\n@mixin xy-cell-block(\n $vertical: false\n) {\n $property: if($vertical == true, 'overflow-y', 'overflow-x');\n\n @if $vertical == true {\n overflow-y: auto;\n max-height: 100%;\n min-height: 100%;\n } @else {\n overflow-x: auto;\n max-width: 100%;\n }\n\n -webkit-overflow-scrolling: touch;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n}\n\n/// Container for inside a grid frame containing multiple blocks. Typically used\n/// as a modifier for a `.cell` to allow the cell to pass along flex sizing\n/// constraints / from parents to children.\n@mixin xy-cell-block-container() {\n display: flex;\n flex-direction: column;\n max-height: 100%;\n\n > .grid-x {\n max-height: 100%;\n flex-wrap: nowrap;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group button\n////\n\n/// Font family for button elements.\n/// @type Font\n$button-font-family: inherit !default;\n\n/// Font weight for button elements.\n/// Ignored if null (default)\n/// @type Font-Weight\n$button-font-weight: null !default;\n\n/// Padding inside buttons.\n/// @type List\n$button-padding: 0.85em 1em !default;\n\n/// Margin around buttons.\n/// @type List\n$button-margin: 0 0 $global-margin 0 !default;\n\n/// Default fill for buttons. Can either be `solid` or `hollow`.\n/// @type Keyword\n$button-fill: solid !default;\n\n/// Default background color for buttons.\n/// @type Color\n$button-background: $primary-color !default;\n\n/// Background color on hover for buttons.\n/// @type Color\n$button-background-hover: scale-color($button-background, $lightness: -15%) !default;\n\n/// Font color for buttons.\n/// @type List\n$button-color: $white !default;\n\n/// Alternative font color for buttons.\n/// @type List\n$button-color-alt: $black !default;\n\n/// Border radius for buttons, defaulted to global-radius.\n/// @type Number\n$button-radius: $global-radius !default;\n\n/// Border for buttons, transparent by default\n/// @type List\n$button-border: 1px solid transparent !default;\n\n/// Border width for hollow outline buttons\n/// @type Number\n$button-hollow-border-width: 1px !default;\n\n/// Sizes for buttons.\n/// @type Map\n$button-sizes: (\n tiny: 0.6rem,\n small: 0.75rem,\n default: 0.9rem,\n large: 1.25rem,\n) !default;\n\n/// Coloring classes. A map of classes to output in your CSS, like `.secondary`, `.success`, and so on.\n/// @type Map\n$button-palette: $foundation-palette !default;\n\n/// opacity for a disabled button.\n/// @type List\n$button-opacity-disabled: 0.25 !default;\n\n/// Background color lightness on hover for buttons.\n/// @type Number\n$button-background-hover-lightness: -20% !default;\n\n/// Color lightness on hover for hollow buttons.\n/// @type Number\n$button-hollow-hover-lightness: -50% !default;\n\n// Internal: flip from margin-right to margin-left for defaults\n@if $global-text-direction == 'rtl' {\n $button-margin: 0 0 $global-margin $global-margin !default;\n}\n\n/// transitions for buttons.\n/// @type List\n$button-transition: background-color 0.25s ease-out, color 0.25s ease-out !default;\n\n/// Additional responsive classes for .expanded\n/// @type Boolean\n$button-responsive-expanded: false !default;\n\n// TODO: Document button-base() mixin\n@mixin button-base {\n display: inline-block;\n vertical-align: middle;\n margin: $button-margin;\n border: $button-border;\n border-radius: $button-radius;\n transition: $button-transition;\n font-family: $button-font-family;\n font-size: map-get($button-sizes, default);\n font-weight: $button-font-weight;\n -webkit-appearance: none; // sass-lint:disable-line no-vendor-prefixes\n line-height: 1;\n text-align: center;\n cursor: pointer;\n\n @if (type-of($button-padding) == 'map') {\n @each $size, $padding in $button-padding {\n @include breakpoint($size) {\n padding: $padding;\n }\n }\n }\n @else {\n padding: $button-padding;\n }\n\n @include disable-mouse-outline;\n}\n\n/// Expands a button to make it full-width.\n/// @param {Boolean} $expand [true] - Set to `true` to enable the expand behavior. Set to `false` to reverse this behavior.\n@mixin button-expand($expand: true) {\n @if $expand {\n display: block;\n width: 100%;\n margin-right: 0;\n margin-left: 0;\n }\n @else {\n display: inline-block;\n width: auto;\n margin: $button-margin;\n }\n}\n\n/// Sets the base styles of a hollow or clear button filling according to `$fill`.\n/// See mixin `button-fill-style` for the filling styles.\n/// @param {Keyword} $fill [$button-fill] - Type of filling between `hollow` and `clear`. `solid` has no effects.\n@mixin button-fill(\n $fill: $button-fill\n) {\n @if $fill == hollow {\n @include button-hollow;\n }\n @else if $fill == clear {\n @include button-clear;\n }\n}\n\n/// Sets the visual styles of a solid/hollow/clear button filling according to `$fill`.\n/// See mixins `button-style`, `button-hollow-style` and `button-clear-style` for effects of visual styling parameters.\n/// @param {Keyword} $fill [$button-fill] - Type of filling between `hollow` and `clear`.\n/// @param {Color} $background [$button-background] - -\n/// @param {Color} $background-hover [$button-background-hover] - -\n/// @param {Color} $color [$button-color] - -\n@mixin button-fill-style(\n $fill: $button-fill,\n $background: $button-background,\n $background-hover: $button-background-hover,\n $color: $button-color\n) {\n @if $fill == solid {\n @include button-style($background, $background-hover, $color);\n }\n @else if $fill == hollow {\n @include button-hollow-style($background);\n }\n @else if $fill == clear {\n @include button-clear-style($background);\n }\n}\n\n/// Sets the visual style of a button.\n/// @param {Color} $background [$button-background] - Background color of the button.\n/// @param {Color} $background-hover [$button-background-hover] - Background color of the button on hover. Set to `auto` to have the mixin automatically generate a hover color.\n/// @param {Color} $color [$button-color] - Text color of the button. Set to `auto` to automatically generate a color based on the background color.\n@mixin button-style(\n $background: $button-background,\n $background-hover: $button-background-hover,\n $color: $button-color,\n $background-hover-lightness: $button-background-hover-lightness\n) {\n @if $color == auto {\n $color: color-pick-contrast($background, ($button-color, $button-color-alt));\n }\n\n @if $background-hover == auto {\n $background-hover: scale-color($background, $lightness: $background-hover-lightness);\n }\n\n // Default and disabled states\n &,\n &.disabled, &[disabled],\n &.disabled:hover, &[disabled]:hover,\n &.disabled:focus, &[disabled]:focus {\n background-color: $background;\n color: $color;\n }\n\n &:hover, &:focus {\n background-color: $background-hover;\n color: $color;\n }\n}\n\n/// Sets the base styles of a hollow button.\n/// See mixin `button-hollow-style` for the filling styles.\n@mixin button-hollow {\n &, &.disabled, &[disabled] {\n &, &:hover, &:focus {\n background-color: transparent;\n }\n }\n}\n\n/// Sets the visual style of a hollow button.\n/// @param {Color} $color [$button-background] - Text and border color of the button.\n/// @param {Color} $hover-lightness [$button-hollow-hover-lightness] - Color lightness on hover.\n/// @param {Color} $border-width [$button-hollow-border-width] - Border width of the button.\n@mixin button-hollow-style(\n $color: $button-background,\n $hover-lightness: $button-hollow-hover-lightness,\n $border-width: $button-hollow-border-width\n) {\n $color-hover: scale-color($color, $lightness: $hover-lightness);\n\n // Default and disabled states\n &,\n &.disabled, &[disabled],\n &.disabled:hover, &[disabled]:hover,\n &.disabled:focus, &[disabled]:focus {\n border: $border-width solid $color;\n color: $color;\n }\n\n &:hover, &:focus {\n border-color: $color-hover;\n color: $color-hover;\n }\n}\n\n/// Sets the base styles of a clear button.\n/// See mixin `button-clear-style` for the filling styles.\n@mixin button-clear {\n &, &.disabled, &[disabled] {\n &, &:hover, &:focus {\n border-color: transparent;\n background-color: transparent;\n }\n }\n}\n\n/// Sets the visual style of a clear button.\n/// @param {Color} $color [$button-background] - Text color of the button.\n/// @param {Color} $hover-lightness [$button-hollow-hover-lightness] - Color lightness on hover.\n@mixin button-clear-style(\n $color: $button-background,\n $hover-lightness: $button-hollow-hover-lightness\n) {\n $color-hover: scale-color($color, $lightness: $hover-lightness);\n\n // Default and disabled states\n &,\n &.disabled, &[disabled],\n &.disabled:hover, &[disabled]:hover,\n &.disabled:focus, &[disabled]:focus {\n color: $color;\n }\n\n &:hover, &:focus {\n color: $color-hover;\n }\n}\n\n/// Adds disabled styles to a button by fading the element and reseting the cursor.\n/// @param {Number} $opacity [$button-opacity-disabled] - Opacity of the disabled button.\n@mixin button-disabled(\n $opacity: $button-opacity-disabled\n) {\n opacity: $button-opacity-disabled;\n cursor: not-allowed;\n}\n\n/// Adds a dropdown arrow to a button.\n/// @param {Number} $size [0.4em] - Size of the arrow. We recommend using an `em` value so the triangle scales when used inside different sizes of buttons.\n/// @param {Color} $color [white] - Color of the arrow.\n/// @param {Number} $offset [$button-padding] - Distance between the arrow and the text of the button. Defaults to whatever the right padding of a button is.\n@mixin button-dropdown(\n $size: 0.4em,\n $color: $white,\n $offset: get-side($button-padding, right)\n) {\n &::after {\n @include css-triangle($size, $color, down);\n position: relative;\n top: 0.4em; // Aligns the arrow with the text of the button\n\n display: inline-block;\n float: #{$global-right};\n margin-#{$global-left}: $offset;\n }\n}\n\n/// Adds all styles for a button. For more granular control over styles, use the individual button mixins.\n/// @param {Boolean} $expand [false] - Set to `true` to make the button full-width.\n/// @param {Color} $background [$button-background] - Background color of the button.\n/// @param {Color} $background-hover [$button-background-hover] - Background color of the button on hover. Set to `auto` to have the mixin automatically generate a hover color.\n/// @param {Color} $color [$button-color] - Text color of the button. Set to `auto` to automatically generate a color based on the background color.\n/// @param {Keyword} $style [solid] - Set to `hollow` to create a hollow button. The color defined in `$background` will be used as the primary color of the button.\n@mixin button(\n $expand: false,\n $background: $button-background,\n $background-hover: $button-background-hover,\n $color: $button-color,\n $style: $button-fill\n) {\n @include button-base;\n @include button-fill($style);\n @include button-fill-style($style, $background, $background-hover, $color);\n\n @if $expand {\n @include button-expand;\n }\n}\n\n@mixin foundation-button {\n .button {\n @include button($style: none);\n\n // Sizes\n @each $size, $value in map-remove($button-sizes, default) {\n &.#{$size} {\n font-size: $value;\n }\n }\n\n &.expanded { @include button-expand; }\n\n @if $button-responsive-expanded {\n @each $size in $breakpoint-classes {\n @include breakpoint(#{$size} only) {\n &.#{$size}-only-expanded {\n @include button-expand;\n }\n }\n @if $size != $-zf-zero-breakpoint {\n @include breakpoint(#{$size} down) {\n &.#{$size}-down-expanded {\n @include button-expand;\n }\n }\n\n @include breakpoint(#{$size}) {\n &.#{$size}-expanded {\n @include button-expand;\n }\n }\n }\n }\n }\n\n // Solid, hollow & clear styles\n @each $filling in (solid hollow clear) {\n $selector: if($button-fill == $filling, null, '.#{$filling}');\n\n &#{$selector} {\n @include button-fill($filling);\n @include button-fill-style($filling);\n\n @each $name, $color in $button-palette {\n &.#{\"\" + $name} {\n @include button-fill-style($filling, $color, auto, auto);\n }\n }\n }\n }\n\n // Disabled state\n &.disabled, &[disabled] {\n @include button-disabled;\n }\n\n // Dropdown arrow\n &.dropdown {\n @include button-dropdown;\n\n @if $button-fill == hollow {\n &::after {\n border-top-color: $button-background;\n }\n }\n\n &.hollow, &.clear {\n &::after {\n border-top-color: $button-background;\n }\n\n @each $name, $color in $button-palette {\n &.#{\"\" + $name} {\n &::after {\n border-top-color: $color;\n }\n }\n }\n }\n }\n\n // Button with dropdown arrow only\n &.arrow-only::after {\n top: -0.1em;\n float: none;\n margin-#{$global-left}: 0;\n }\n }\n\n a.button { // sass-lint:disable-line no-qualifying-elements\n &:hover,\n &:focus {\n text-decoration: none;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group button-group\n////\n\n/// Margin for button groups.\n/// @type Number\n$buttongroup-margin: 1rem !default;\n\n/// Margin between buttons in a button group.\n/// @type Number\n$buttongroup-spacing: 1px !default;\n\n/// Selector for the buttons inside a button group.\n/// @type String\n$buttongroup-child-selector: '.button' !default;\n\n/// Maximum number of buttons that can be in an even-width button group. (Only needed when $global-flexbox: false;)\n/// @type Number\n$buttongroup-expand-max: 6 !default;\n\n/// Determines if $button-radius is applied to each button or the button group as a whole. Use $global-radius in _settings.scss to change radius.\n/// @type Boolean\n$buttongroup-radius-on-each: true !default;\n\n/// Add styles for a button group container.\n/// @param {String} $child-selector [$buttongroup-child-selector] - Selector for the buttons inside a button group.\n/// @param {Number} $spacing [$buttongroup-spacing] - Spacing between buttons in a button group.\n@mixin button-group(\n $child-selector: $buttongroup-child-selector,\n $spacing: $buttongroup-spacing\n) {\n margin-bottom: $buttongroup-margin;\n\n @if $global-flexbox {\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n flex-grow: 1;\n\n &::before,\n &::after {\n display: none; // Disable clearfix\n }\n }\n @else {\n font-size: 0;\n }\n\n @include clearfix;\n\n #{$child-selector} {\n margin: 0;\n margin-#{$global-right}: $spacing;\n margin-bottom: $spacing;\n font-size: map-get($button-sizes, default);\n\n @if $global-flexbox {\n flex: 0 0 auto;\n }\n\n &:last-child {\n margin-#{$global-right}: 0;\n }\n\n @if not $buttongroup-radius-on-each {\n border-radius: 0;\n\n &:first-child {\n border-top-#{$global-left}-radius: $button-radius;\n border-bottom-#{$global-left}-radius: $button-radius;\n }\n\n &:last-child {\n border-top-#{$global-right}-radius: $button-radius;\n border-bottom-#{$global-right}-radius: $button-radius;\n }\n }\n }\n}\n\n/// Make buttons bonded without gap between them. Borders between buttons are merged\n/// @param {String} $selector [$buttongroup-child-selector] - Selector for the buttons inside a button group.\n@mixin button-group-no-gaps(\n $selector: $buttongroup-child-selector,\n $border-width: $button-hollow-border-width\n) {\n #{$selector} {\n margin-#{$global-right}: rem-calc(-$border-width);\n\n + #{$selector} {\n border-#{$global-left}-color: transparent;\n }\n }\n}\n\n/// Creates a full-width button group, making each button equal width.\n/// @param {String} $selector [$buttongroup-child-selector] - Selector for the buttons inside a button group.\n/// @param {Number} $spacing [$buttongroup-spacing] - Spacing between buttons in a button group.\n@mixin button-group-expand(\n $selector: $buttongroup-child-selector,\n $spacing: $buttongroup-spacing,\n $count: null\n) {\n @if not $global-flexbox {\n margin-#{$global-right}: -$spacing;\n\n &::before,\n &::after {\n display: none; // Disable clearfix\n }\n }\n\n #{$selector} {\n @if $global-flexbox {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n }\n @else {\n // One child\n &:first-child {\n &:last-child {\n width: calc(100% - #{$spacing});\n }\n }\n\n // Two or more childreen\n @for $i from 2 through $buttongroup-expand-max {\n &:first-child:nth-last-child(#{$i}) {\n &, &:first-child:nth-last-child(#{$i}) ~ #{$selector} {\n display: inline-block;\n width: calc(#{percentage(divide(1, $i))} - #{$spacing});\n margin-#{$global-right}: $spacing;\n\n &:last-child {\n margin-#{$global-right}: $spacing * -$buttongroup-expand-max;\n }\n }\n }\n }\n }\n }\n}\n\n/// Stacks the buttons in a button group.\n/// @param {String} $selector [$buttongroup-child-selector] - Selector for the buttons inside the button group.\n@mixin button-group-stack(\n $selector: $buttongroup-child-selector\n) {\n @if $global-flexbox {\n flex-wrap: wrap;\n }\n\n #{$selector} {\n @if $global-flexbox {\n flex: 0 0 100%;\n }\n @else {\n width: 100%;\n }\n\n &:last-child {\n margin-bottom: 0;\n }\n\n @if not $buttongroup-radius-on-each {\n border-radius: 0;\n\n &:first-child {\n border-top-#{$global-left}-radius: $global-radius;\n border-top-#{$global-right}-radius: $global-radius;\n }\n\n &:last-child {\n border-bottom-#{$global-left}-radius: $global-radius;\n border-bottom-#{$global-right}-radius: $global-radius;\n }\n }\n }\n}\n\n/// Un-stacks the buttons in a button group.\n/// @param {String} $selector [$buttongroup-child-selector] - Selector for the buttons inside the button group.\n@mixin button-group-unstack(\n $selector: $buttongroup-child-selector\n) {\n #{$selector} {\n @if $global-flexbox {\n flex: 0 0 auto;\n }\n @else {\n width: auto;\n }\n margin-bottom: 0;\n\n @if not $buttongroup-radius-on-each {\n &:first-child {\n border-top-#{$global-left}-radius: $global-radius;\n border-top-#{$global-right}-radius: 0;\n border-bottom-#{$global-left}-radius: $global-radius;\n }\n\n &:last-child {\n border-top-#{$global-right}-radius: $global-radius;\n border-bottom-#{$global-right}-radius: $global-radius;\n border-bottom-#{$global-left}-radius: 0;\n }\n }\n\n }\n}\n\n@mixin foundation-button-group {\n .button-group {\n @include button-group;\n\n // Sizes\n @each $size, $value in map-remove($button-sizes, default) {\n &.#{$size} #{$buttongroup-child-selector} {\n font-size: $value;\n }\n }\n\n // Even-width Group\n &.expanded {\n @include button-group-expand;\n }\n\n // Solid, hollow & clear styles\n @each $filling in (solid hollow clear) {\n $base-selector: if($button-fill == $filling, null, '.#{$filling}');\n\n &#{$base-selector} {\n // Do not generate button base styles for the default filling\n @if($button-fill != $filling) {\n #{$buttongroup-child-selector} {\n @include button-fill($filling);\n @include button-fill-style($filling);\n }\n }\n\n @each $name, $color in $button-palette {\n @if($button-fill != $filling) {\n $individual-selector: ' #{$buttongroup-child-selector}.#{\"\" + $name}';\n &.#{\"\" + $name} #{$buttongroup-child-selector}, &#{$individual-selector} {\n @include button-fill-style($filling, $color, auto, auto);\n }\n }\n @else {\n &.#{\"\" + $name} #{$buttongroup-child-selector} {\n @include button-fill-style($filling, $color, auto, auto);\n }\n }\n }\n }\n\n }\n\n &.no-gaps {\n @include button-group-no-gaps;\n }\n\n &.stacked,\n &.stacked-for-small,\n &.stacked-for-medium {\n @include button-group-stack;\n\n &.expanded {\n @include button-group-expand;\n }\n }\n\n &.stacked-for-small {\n @include breakpoint(medium) {\n @include button-group-unstack;\n }\n }\n\n &.stacked-for-medium {\n @include breakpoint(large) {\n @include button-group-unstack;\n }\n }\n\n &.stacked-for-small.expanded {\n @include breakpoint(small only) {\n display: block;\n\n #{$buttongroup-child-selector} {\n display: block;\n margin-#{$global-right}: 0;\n }\n }\n }\n\n &.stacked-for-medium.expanded {\n @include breakpoint(medium down) {\n display: block;\n\n #{$buttongroup-child-selector} {\n display: block;\n margin-#{$global-right}: 0;\n }\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group close-button\n////\n\n/// Default position of the close button. The first value should be `right` or `left`, and the second value should be `top` or `bottom`.\n/// @type List\n$closebutton-position: right top !default;\n\n/// Default z-index for a close button.\n/// @type Number\n$closebutton-z-index: 10 !default;\n\n/// Button size to use as default\n/// @type String\n/// @see $closebutton-size\n/// @see $closebutton-offset-horizontal\n/// @see $closebutton-offset-vertical\n$closebutton-default-size: medium !default;\n\n/// Right (or left) offset(s) for a close button.\n/// @type Number|Map\n$closebutton-offset-horizontal: (\n small: 0.66rem,\n medium: 1rem,\n) !default;\n\n/// Top (or bottom) offset(s) for a close button.\n/// @type Number|Map\n$closebutton-offset-vertical: (\n small: 0.33em,\n medium: 0.5rem,\n) !default;\n\n/// Size(s) of the close button. Used to generate sizing modifiers.\n/// @type Number|Map\n$closebutton-size: (\n small: 1.5em,\n medium: 2em,\n) !default;\n\n/// The line-height of the close button. It affects the spacing of the element.\n/// @type Number\n$closebutton-lineheight: 1 !default;\n\n/// Default color of the close button.\n/// @type Color\n$closebutton-color: $dark-gray !default;\n\n/// Default color of the close button when being hovered on.\n/// @type Color\n$closebutton-color-hover: $black !default;\n\n\n/// Get the size and position for a close button. If the input value is a number, the number is returned. If the input value is a config map and the map has the key `$size`, the value is returned.\n///\n/// @param {Number|Map} $value - A number or map that represents the size or position value(s) of the close button.\n/// @param {Keyword} $size - The size of the close button to use.\n///\n/// @return {Number} The given number or the value found in the map.\n@function -zf-get-size-val($value, $size) {\n // Check if the value is a number\n @if type-of($value) == 'number' {\n // If it is, just return the number\n @return $value;\n }\n\n // Check if the size name exists in the value map\n @else if map-has-key($value, $size) {\n // If it does, return the value\n @return map-get($value, $size);\n }\n}\n\n/// Sets the size and position of a close button.\n/// @param {Keyword} $size [medium] - The size to use. Set to `small` to create a small close button. The 'medium' values defined in `$closebutton-*` variables will be used as the default size and position of the close button.\n@mixin close-button-size($size) {\n $x: nth($closebutton-position, 1);\n $y: nth($closebutton-position, 2);\n\n #{$x}: -zf-get-size-val($closebutton-offset-horizontal, $size);\n #{$y}: -zf-get-size-val($closebutton-offset-vertical, $size);\n font-size: -zf-get-size-val($closebutton-size, $size);\n line-height: -zf-get-size-val($closebutton-lineheight, $size);\n}\n\n/// Adds styles for a close button, using the styles in the settings variables.\n@mixin close-button {\n $x: nth($closebutton-position, 1);\n $y: nth($closebutton-position, 2);\n\n position: absolute;\n z-index: $closebutton-z-index;\n color: $closebutton-color;\n cursor: pointer;\n\n @include disable-mouse-outline;\n\n &:hover,\n &:focus {\n color: $closebutton-color-hover;\n }\n}\n\n@mixin foundation-close-button {\n .close-button {\n // Use by default the placeholder of the default size\n @extend %zf-close-button--#{$closebutton-default-size};\n\n @include close-button;\n\n // Generate a placeholder and a class for each size\n @each $name, $size in $closebutton-size {\n @at-root {\n %zf-close-button--#{$name} {\n @include close-button-size($name);\n }\n }\n\n &.#{$name} {\n @extend %zf-close-button--#{$name};\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group label\n////\n\n/// Default background color for labels.\n/// @type Color\n$label-background: $primary-color !default;\n\n/// Default text color for labels.\n/// @type Color\n$label-color: $white !default;\n\n/// Alternate text color for labels.\n/// @type Color\n$label-color-alt: $black !default;\n\n/// Coloring classes. A map of classes to output in your CSS, like `.secondary`, `.success`, and so on.\n/// @type Map\n$label-palette: $foundation-palette !default;\n\n/// Default font size for labels.\n/// @type Number\n$label-font-size: 0.8rem !default;\n\n/// Default padding inside labels.\n/// @type Number\n$label-padding: 0.33333rem 0.5rem !default;\n\n/// Default radius of labels.\n/// @type Number\n$label-radius: $global-radius !default;\n\n/// Generates base styles for a label.\n@mixin label {\n display: inline-block;\n padding: $label-padding;\n\n border-radius: $label-radius;\n\n font-size: $label-font-size;\n line-height: 1;\n white-space: nowrap;\n cursor: default;\n}\n\n@mixin foundation-label {\n .label {\n @include label;\n\n background: $label-background;\n color: $label-color;\n\n @each $name, $color in $label-palette {\n &.#{\"\" + $name} {\n background: $color;\n color: color-pick-contrast($color, ($label-color, $label-color-alt));\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n/// Adds styles for a progress bar container.\n@mixin progress-container {\n height: $progress-height;\n margin-bottom: $progress-margin-bottom;\n border-radius: $progress-radius;\n background-color: $progress-background;\n}\n\n/// Adds styles for the inner meter of a progress bar.\n@mixin progress-meter {\n position: relative;\n display: block;\n width: 0%;\n height: 100%;\n background-color: $progress-meter-background;\n\n @if has-value($progress-radius) {\n border-radius: $global-radius;\n }\n}\n\n/// Adds styles for text in the progress meter.\n@mixin progress-meter-text {\n @include absolute-center;\n margin: 0;\n font-size: 0.75rem;\n font-weight: bold;\n color: $white;\n white-space: nowrap;\n\n @if has-value($progress-radius) {\n border-radius: $progress-radius;\n }\n}\n\n@mixin foundation-progress-bar {\n // Progress bar\n .progress {\n @include progress-container;\n\n @each $name, $color in $foundation-palette {\n &.#{\"\" + $name} {\n .progress-meter {\n background-color: $color;\n }\n }\n }\n }\n\n // Inner meter\n .progress-meter {\n @include progress-meter;\n }\n\n // Inner meter text\n .progress-meter-text {\n @include progress-meter-text;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n// [TODO] Check how plugin confirms disabled or vertical status\n// [TODO] Check if transition: all; is necessary\n\n////\n/// @group slider\n////\n\n/// Default slider width of a vertical slider. (Doesn't apply to the native slider.)\n/// @type Number\n$slider-width-vertical: 0.5rem !default;\n\n/// Transition properties to apply to the slider handle and fill. (Doesn't apply to the native slider.)\n/// @type Transition\n$slider-transition: all 0.2s ease-in-out !default;\n\n/// Adds the general styles for sliders.\n@mixin slider-container {\n position: relative;\n height: $slider-height;\n margin-top: 1.25rem;\n margin-bottom: 2.25rem;\n\n background-color: $slider-background;\n cursor: pointer;\n user-select: none;\n touch-action: none;\n}\n\n/// Adds the general styles for active fill for sliders.\n@mixin slider-fill {\n position: absolute;\n top: 0;\n left: 0;\n\n display: inline-block;\n max-width: 100%;\n height: $slider-height;\n\n background-color: $slider-fill-background;\n transition: $slider-transition;\n\n &.is-dragging {\n transition: all 0s linear;\n }\n}\n\n/// Adds the general styles for the slider handles.\n@mixin slider-handle {\n left: 0;\n z-index: 1;\n cursor: grab;\n\n display: inline-block;\n width: $slider-handle-width;\n height: $slider-handle-height;\n\n border-radius: $slider-radius;\n background-color: $slider-handle-background;\n transition: $slider-transition;\n touch-action: manipulation;\n\n @include vertical-center;\n @include disable-mouse-outline;\n\n &:hover {\n background-color: scale-color($slider-handle-background, $lightness: -15%);\n }\n\n &.is-dragging {\n transition: all 0s linear;\n cursor: grabbing;\n }\n}\n\n@mixin slider-disabled {\n opacity: $slider-opacity-disabled;\n cursor: not-allowed;\n}\n\n@mixin slider-vertical {\n display: inline-block;\n width: $slider-width-vertical;\n height: 12.5rem;\n margin: 0 1.25rem;\n transform: scale(1, -1);\n\n .slider-fill {\n top: 0;\n width: $slider-width-vertical;\n max-height: 100%;\n }\n\n .slider-handle {\n position: absolute;\n top: 0;\n left: 50%;\n width: $slider-handle-height;\n height: $slider-handle-width;\n transform: translateX(-50%);\n }\n}\n\n@mixin foundation-slider {\n // Container\n .slider {\n @include slider-container;\n }\n\n // Fill area\n .slider-fill {\n @include slider-fill;\n }\n\n // Draggable handle\n .slider-handle {\n @include slider-handle;\n }\n\n // Disabled state\n .slider.disabled,\n .slider[disabled] {\n @include slider-disabled;\n }\n\n // Vertical slider\n .slider.vertical {\n @include slider-vertical;\n }\n\n // RTL support\n @if $global-text-direction == rtl {\n .slider:not(.vertical) {\n transform: scale(-1, 1);\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group switch\n////\n\n/// Background color of a switch.\n/// @type Color\n$switch-background: $medium-gray !default;\n\n/// Background color of a switch on focus.\n/// @type Color\n$switch-background-focus: scale-color($switch-background, $lightness: -10%) !default;\n\n/// Background active color of a switch.\n/// @type Color\n$switch-background-active: $primary-color !default;\n\n/// Background active color of a switch on focus.\n/// @type Color\n$switch-background-active-focus: scale-color($switch-background-active, $lightness: -15%) !default;\n\n/// Height of a switch, with no class applied.\n/// @type Number\n$switch-height: 2rem !default;\n\n/// Height of a switch with .tiny class.\n/// @type Number\n$switch-height-tiny: 1.5rem !default;\n\n/// Height of a switch with .small class.\n/// @type Number\n$switch-height-small: 1.75rem !default;\n\n/// Height of a switch with .large class.\n/// @type Number\n$switch-height-large: 2.5rem !default;\n\n/// Border radius of the switch\n/// @type Number\n$switch-radius: $global-radius !default;\n\n/// border around a modal.\n/// @type Number\n$switch-margin: $global-margin !default;\n\n/// Background color for the switch container and paddle.\n/// @type Color\n$switch-paddle-background: $white !default;\n\n/// Spacing between a switch paddle and the edge of the body.\n/// @type Number\n$switch-paddle-offset: 0.25rem !default;\n\n/// border radius of the switch paddle\n/// @type Number\n$switch-paddle-radius: $global-radius !default;\n\n/// switch transition.\n/// @type Number\n$switch-paddle-transition: all 0.25s ease-out !default;\n\n/// Opacity of a disabled switch.\n/// @type Number\n$switch-opacity-disabled: 0.5 !default;\n\n/// Cursor for a disabled switch.\n/// @type Cursor\n$switch-cursor-disabled: not-allowed !default;\n\n// make them variables\n// ask about accessibility on label\n// change class name for text\n\n/// Adds styles for a switch container. Apply this to a container class.\n@mixin switch-container {\n position: relative;\n margin-bottom: $switch-margin;\n outline: 0;\n\n // These properties cascade down to the switch text\n font-size: rem-calc(14);\n font-weight: bold;\n color: $white;\n\n user-select: none;\n}\n\n/// Adds styles for a switch input. Apply this to an `<input>` within a switch.\n@mixin switch-input {\n position: absolute;\n margin-bottom: 0;\n opacity: 0;\n}\n\n/// Adds styles for the background and paddle of a switch. Apply this to a `<label>` within a switch.\n@mixin switch-paddle {\n $switch-width: $switch-height * 2;\n $paddle-height: $switch-height - ($switch-paddle-offset * 2);\n $paddle-width: $switch-height - ($switch-paddle-offset * 2);\n $paddle-active-offest: $switch-width - $paddle-width - $switch-paddle-offset;\n\n position: relative;\n display: block;\n width: $switch-width;\n height: $switch-height;\n\n border-radius: $switch-radius;\n background: $switch-background;\n transition: $switch-paddle-transition;\n\n // Resetting these <label> presets so type styles cascade down\n font-weight: inherit;\n color: inherit;\n\n cursor: pointer;\n\n // Needed to override specificity\n input + & {\n margin: 0;\n }\n\n // The paddle itself\n &::after {\n position: absolute;\n top: $switch-paddle-offset;\n #{$global-left}: $switch-paddle-offset;\n\n display: block;\n width: $paddle-width;\n height: $paddle-height;\n\n transform: translate3d(0, 0, 0);\n border-radius: $switch-paddle-radius;\n background: $switch-paddle-background;\n transition: $switch-paddle-transition;\n content: '';\n }\n\n // Change the visual style when the switch is active\n input:checked ~ & {\n background: $switch-background-active;\n\n &::after {\n #{$global-left}: $paddle-active-offest;\n }\n }\n\n\n // Change the visual style when the switch is focused\n input:focus-visible ~ & {\n background: $switch-background-focus;\n\n &::after {\n background: $switch-paddle-background;\n }\n }\n\n input:checked:focus-visible ~ & {\n background: $switch-background-active-focus;\n }\n\n\n // indicate a disabled switch\n input:disabled ~ & {\n cursor: $switch-cursor-disabled;\n opacity: $switch-opacity-disabled;\n }\n\n input:focus ~ & {\n @include disable-mouse-outline;\n }\n}\n\n/// Adds base styles for active/inactive text inside a switch. Apply this to text elements inside the switch `<label>`.\n@mixin switch-text {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n}\n\n/// Adds styles for the active state text within a switch.\n@mixin switch-text-active {\n #{$global-left}: 8%;\n display: none;\n\n input:checked + label > & {\n display: block;\n }\n}\n\n/// Adds styles for the inactive state text within a switch.\n@mixin switch-text-inactive {\n #{$global-right}: 15%;\n\n input:checked + label > & {\n display: none;\n }\n}\n\n/// Changes the size of a switch by modifying the size of the body and paddle. Apply this to a switch container.\n/// @param {Number} $font-size [1rem] - Font size of label text within the switch.\n/// @param {Number} $switch-height [2rem] - Height of the switch body.\n/// @param {Number} $paddle-offset [0.25rem] - Spacing between the switch paddle and the edge of the switch body.\n@mixin switch-size(\n $font-size: 1rem,\n $switch-height: 2rem,\n $paddle-offset: 0.25rem\n) {\n\n $switch-width: $switch-height * 2;\n $paddle-width: $switch-height - ($paddle-offset * 2);\n $paddle-height: $switch-height - ($paddle-offset * 2);\n $paddle-active-offest: $switch-width - $paddle-width - $paddle-offset;\n\n height: $switch-height;\n\n .switch-paddle {\n width: $switch-width;\n height: $switch-height;\n font-size: $font-size;\n }\n\n .switch-paddle::after {\n top: $paddle-offset;\n #{$global-left}: $paddle-offset;\n width: $paddle-width;\n height: $paddle-height;\n }\n\n input:checked ~ .switch-paddle::after {\n #{$global-left}: $paddle-active-offest;\n }\n}\n\n@mixin foundation-switch {\n // Container class\n .switch {\n @include switch-container;\n height: $switch-height;\n }\n\n // <input> element\n .switch-input {\n @include switch-input;\n }\n\n // <label> element\n .switch-paddle {\n @include switch-paddle;\n }\n\n // Base label text styles\n %switch-text {\n @include switch-text;\n }\n\n // Active label text styles\n .switch-active {\n @extend %switch-text;\n @include switch-text-active;\n }\n\n // Inactive label text styles\n .switch-inactive {\n @extend %switch-text;\n @include switch-text-inactive;\n }\n\n // Switch sizes\n .switch.tiny {\n @include switch-size(rem-calc(10), $switch-height-tiny, $switch-paddle-offset);\n }\n\n .switch.small {\n @include switch-size(rem-calc(12), $switch-height-small, $switch-paddle-offset);\n }\n\n .switch.large {\n @include switch-size(rem-calc(16), $switch-height-large, $switch-paddle-offset);\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n// sass-lint:disable no-qualifying-elements\n\n////\n/// @group table\n////\n\n@use \"sass:color\";\n\n/// Default color for table background.\n/// @type Color\n$table-background: $white !default;\n\n/// Default scale for darkening the striped table rows and the table border.\n/// @type Number\n$table-color-scale: 5% !default;\n\n/// Default style for table border.\n/// @type List\n$table-border: 1px solid smart-scale($table-background, $table-color-scale) !default;\n\n/// Default padding for table.\n/// @type Number\n$table-padding: rem-calc(8 10 10) !default;\n\n/// Default scale for darkening the table rows on hover.\n/// @type Number\n$table-hover-scale: 2% !default;\n\n/// Default color of standard rows on hover.\n/// @type List\n$table-row-hover: color.adjust($table-background, $lightness: -$table-hover-scale) !default;\n\n/// Default color of striped rows on hover.\n/// @type List\n$table-row-stripe-hover: color.adjust($table-background, $lightness: -($table-color-scale + $table-hover-scale)) !default;\n\n/// If `true`, tables are striped by default and an .unstriped class is created. If `false`, a .striped class is created.\n/// @type Boolean\n$table-is-striped: true !default;\n\n/// Default background color for striped rows.\n/// @type Color\n$table-striped-background: smart-scale($table-background, $table-color-scale) !default;\n\n/// Default value for showing the stripe on rows of the tables, excluding the header and footer. If even, the even rows will have a background color. If odd, the odd rows will have a background color. If empty, or any other value, the table rows will have no striping.\n/// @type Keyword\n$table-stripe: even !default;\n\n/// Default color for header background.\n/// @type Color\n$table-head-background: smart-scale($table-background, $table-color-scale * 0.5) !default;\n\n/// Default color of header rows on hover.\n/// @type List\n$table-head-row-hover: color.adjust($table-head-background, $lightness: -$table-hover-scale) !default;\n\n/// Default color for footer background.\n/// @type Color\n$table-foot-background: smart-scale($table-background, $table-color-scale) !default;\n\n/// Default color of footer rows on hover.\n/// @type List\n$table-foot-row-hover: color.adjust($table-foot-background, $lightness: -$table-hover-scale) !default;\n\n/// Default font color for header.\n/// @type Color\n$table-head-font-color: $body-font-color !default;\n\n/// Default font color for footer.\n/// @type Color\n$table-foot-font-color: $body-font-color !default;\n\n/// Default value for showing the header when using stacked tables.\n/// @type Boolean\n$show-header-for-stacked: false !default;\n\n/// Breakpoint at which stacked table switches from mobile to desktop view.\n/// @type Breakpoint\n$table-stack-breakpoint: medium !default;\n\n@mixin -zf-table-stripe($stripe: $table-stripe) {\n tr {\n // If stripe is set to even, darken the even rows.\n @if $stripe == even {\n &:nth-child(even) {\n border-bottom: 0;\n background-color: $table-striped-background;\n }\n }\n\n // If stripe is set to odd, darken the odd rows.\n @else if $stripe == odd {\n &:nth-child(odd) {\n background-color: $table-striped-background;\n }\n }\n }\n}\n\n@mixin -zf-table-unstripe() {\n tr {\n border-bottom: $table-border;\n background-color: $table-background;\n }\n}\n\n@mixin -zf-table-children-styles($stripe: $table-stripe, $is-striped: $table-is-striped) {\n thead,\n tbody,\n tfoot {\n border: $table-border;\n background-color: $table-background;\n }\n\n // Caption\n caption {\n padding: $table-padding;\n font-weight: $global-weight-bold;\n }\n\n // Table head\n thead {\n background: $table-head-background;\n color: $table-head-font-color;\n }\n\n // Table foot\n tfoot {\n background: $table-foot-background;\n color: $table-foot-font-color;\n }\n\n // Table head and foot\n thead,\n tfoot {\n // Rows within head and foot\n tr {\n background: transparent;\n }\n\n // Cells within head and foot\n th,\n td {\n padding: $table-padding;\n font-weight: $global-weight-bold;\n text-align: #{$global-left};\n }\n }\n\n // Table rows\n tbody {\n th,\n td {\n padding: $table-padding;\n }\n }\n\n // If tables are striped\n @if $is-striped == true {\n tbody {\n @include -zf-table-stripe($stripe);\n }\n\n &.unstriped {\n tbody {\n background-color: $table-background;\n @include -zf-table-unstripe();\n }\n }\n }\n\n // If tables are not striped\n @else if $is-striped == false {\n tbody {\n @include -zf-table-unstripe();\n }\n\n &.striped {\n tbody {\n @include -zf-table-stripe($stripe);\n }\n }\n }\n}\n\n/// Adds the general styles for tables.\n/// @param {Keyword} $stripe [$table-stripe] - Uses keywords even, odd, or none to darken rows of the table. The default value is even.\n/// @param {Boolean} $nest [false] - Needed if you only want to apply this to a specific table.\n@mixin table(\n $stripe: $table-stripe,\n $nest: false\n) {\n border-collapse: collapse;\n width: 100%;\n margin-bottom: $global-margin;\n border-radius: $global-radius;\n\n @if $nest {\n @include -zf-table-children-styles($stripe);\n }\n @else {\n @at-root {\n @include -zf-table-children-styles($stripe);\n }\n }\n}\n\n/// Adds the ability to horizontally scroll the table when the content overflows horizontally.\n@mixin table-scroll {\n display: block;\n width: 100%;\n overflow-x: auto;\n}\n\n/// Slightly darkens the table rows on hover.\n@mixin table-hover {\n thead tr {\n //Darkens the table header rows on hover.\n &:hover {\n background-color: $table-head-row-hover;\n }\n }\n\n tfoot tr {\n //Darkens the table footer rows on hover.\n &:hover {\n background-color: $table-foot-row-hover;\n }\n }\n\n tbody tr {\n //Darkens the non-striped table rows on hover.\n &:hover {\n background-color: $table-row-hover;\n }\n }\n\n @if $table-is-striped == true {\n // Darkens the even striped table rows.\n @if($table-stripe == even) {\n &:not(.unstriped) tr:nth-of-type(even):hover {\n background-color: $table-row-stripe-hover;\n }\n }\n\n // Darkens the odd striped table rows.\n @else if($table-stripe == odd) {\n &:not(.unstriped) tr:nth-of-type(odd):hover {\n background-color: $table-row-stripe-hover;\n }\n }\n }\n\n @else if $table-is-striped == false {\n // Darkens the even striped table rows.\n @if($table-stripe == even) {\n &.striped tr:nth-of-type(even):hover {\n background-color: $table-row-stripe-hover;\n }\n }\n\n // Darkens the odd striped table rows.\n @else if($table-stripe == odd) {\n &.striped tr:nth-of-type(odd):hover {\n background-color: $table-row-stripe-hover;\n }\n }\n }\n}\n\n/// Adds styles for a stacked table. Useful for small-screen layouts.\n/// @param {Boolean} $header [$show-header-for-stacked] - Show the first th of header when stacked.\n@mixin table-stack($header: $show-header-for-stacked) {\n @if $header {\n thead {\n th {\n display: block;\n }\n }\n }\n @else {\n thead {\n display: none;\n }\n }\n\n tfoot {\n display: none;\n }\n\n tr,\n th,\n td {\n display: block;\n }\n\n td {\n border-top: 0;\n }\n}\n\n@mixin foundation-table($nest: false) {\n table {\n @include table($nest: $nest);\n }\n\n table.stack {\n @include breakpoint($table-stack-breakpoint down) {\n @include table-stack;\n }\n }\n\n table.scroll {\n @include table-scroll;\n }\n\n table.hover {\n @include table-hover;\n }\n\n .table-scroll {\n overflow-x: auto;\n\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group badge\n////\n\n/// Default background color for badges.\n/// @type Color\n$badge-background: $primary-color !default;\n\n/// Default text color for badges.\n/// @type Color\n$badge-color: $white !default;\n\n/// Alternate text color for badges.\n/// @type Color\n$badge-color-alt: $black !default;\n\n/// Coloring classes. A map of classes to output in your CSS, like `.secondary`, `.success`, and so on.\n/// @type Map\n$badge-palette: $foundation-palette !default;\n\n/// Default padding inside badges.\n/// @type Number\n$badge-padding: 0.3em !default;\n\n/// Minimum width of a badge.\n/// @type Number\n$badge-minwidth: 2.1em !default;\n\n/// Default font size for badges.\n/// @type Number\n$badge-font-size: 0.6rem !default;\n\n/// Generates the base styles for a badge.\n@mixin badge {\n display: inline-block;\n min-width: $badge-minwidth;\n padding: $badge-padding;\n\n border-radius: 50%;\n\n font-size: $badge-font-size;\n text-align: center;\n}\n\n@mixin foundation-badge {\n .badge {\n @include badge;\n\n background: $badge-background;\n color: $badge-color;\n\n @each $name, $color in $badge-palette {\n &.#{\"\" + $name} {\n background: $color;\n color: color-pick-contrast($color, ($badge-color, $badge-color-alt));\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group breadcrumbs\n////\n\n/// Margin around a breadcrumbs container.\n/// @type Number\n$breadcrumbs-margin: 0 0 $global-margin 0 !default;\n\n/// Font size of breadcrumb links.\n/// @type Number\n$breadcrumbs-item-font-size: rem-calc(11) !default;\n\n/// Color of breadcrumb links.\n/// @type Color\n$breadcrumbs-item-color: $primary-color !default;\n\n/// Color of the active breadcrumb link.\n/// @type Color\n$breadcrumbs-item-color-current: $black !default;\n\n/// Opacity of disabled breadcrumb links.\n/// @type Number\n$breadcrumbs-item-color-disabled: $medium-gray !default;\n\n/// Margin between breadcrumb items.\n/// @type Number\n$breadcrumbs-item-margin: 0.75rem !default;\n\n/// If `true`, makes breadcrumb links uppercase.\n/// @type Boolean\n$breadcrumbs-item-uppercase: true !default;\n\n/// If `true`, adds a seperator between breadcrumb links.\n/// @type Boolean\n$breadcrumbs-item-separator: true !default;\n\n// If it exists $breadcrumbs-item-slash is used to build $breadcrumbs-item-separator. See the documentation.\n@if variable-exists(breadcrumbs-item-slash) {\n $breadcrumbs-item-separator: $breadcrumbs-item-slash;\n}\n\n/// Used character for the breadcrumb separator.\n/// @type Content\n$breadcrumbs-item-separator-item: '/' !default;\n\n/// Used character for the breadcrumb separator in rtl mode.\n/// @type Content\n$breadcrumbs-item-separator-item-rtl: '\\\\' !default;\n\n/// Color of breadcrumb item.\n/// @type Color\n$breadcrumbs-item-separator-color: $medium-gray !default;\n\n// If it exists $breadcrumbs-item-slash-color is used to build $breadcrumbs-item-separator-color. See the documentation.\n@if variable-exists(breadcrumbs-item-slash-color) {\n $breadcrumbs-item-separator-color: $breadcrumbs-item-slash-color;\n}\n\n/// Adds styles for a breadcrumbs container, along with the styles for the `<li>` and `<a>` elements inside of it.\n@mixin breadcrumbs-container {\n margin: $breadcrumbs-margin;\n list-style: none;\n\n @include clearfix;\n\n // Item wrapper\n li {\n float: #{$global-left};\n\n font-size: $breadcrumbs-item-font-size;\n color: $breadcrumbs-item-color-current;\n cursor: default;\n\n @if $breadcrumbs-item-uppercase {\n text-transform: uppercase;\n }\n\n @if $breadcrumbs-item-separator {\n // Need to escape the backslash\n $separator: if($global-text-direction == 'ltr', $breadcrumbs-item-separator-item, $breadcrumbs-item-separator-item-rtl);\n\n &:not(:last-child) {\n &::after {\n position: relative;\n margin: 0 $breadcrumbs-item-margin;\n opacity: 1;\n content: $separator;\n color: $breadcrumbs-item-separator-color;\n }\n }\n }\n @else {\n margin-#{$global-right}: $breadcrumbs-item-margin;\n }\n }\n\n // Page links\n a {\n color: $breadcrumbs-item-color;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n@mixin foundation-breadcrumbs {\n .breadcrumbs {\n @include breadcrumbs-container;\n\n .disabled {\n color: $breadcrumbs-item-color-disabled;\n cursor: not-allowed;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group callout\n////\n\n/// Default background color.\n/// @type Color\n$callout-background: $white !default;\n\n/// Default fade value for callout backgrounds.\n/// @type Number\n$callout-background-fade: 85% !default;\n\n/// Default border style for callouts.\n/// @type List\n$callout-border: 1px solid rgba($black, 0.25) !default;\n\n/// Default bottom margin for callouts.\n/// @type Number\n$callout-margin: 0 0 1rem 0 !default;\n\n/// Sizes for Callout paddings.\n/// @type Map\n$callout-sizes: (\n small: 0.5rem,\n default: 1rem,\n large: 3rem,\n) !default;\n\n/// Default font color for callouts.\n/// @type Color\n$callout-font-color: $body-font-color !default;\n\n/// Default font color for callouts, if the callout has a dark background.\n/// @type Color\n$callout-font-color-alt: $body-background !default;\n\n/// Default border radius for callouts.\n/// @type Color\n$callout-radius: $global-radius !default;\n\n/// Amount to tint links used within colored panels. Set to `false` to disable this feature.\n/// @type Number | Boolean\n$callout-link-tint: 30% !default;\n\n/// Adds basic styles for a callout, including padding and margin.\n@mixin callout-base() {\n position: relative;\n margin: $callout-margin;\n padding: map-get($callout-sizes, default);\n\n border: $callout-border;\n border-radius: $callout-radius;\n\n // Respect the padding, fool.\n > :first-child {\n margin-top: 0;\n }\n\n > :last-child {\n margin-bottom: 0;\n }\n}\n\n/// Generate quick styles for a callout using a single color as a baseline.\n/// @param {Color} $color [$callout-background] - Color to use.\n@mixin callout-style($color: $callout-background) {\n $background: scale-color($color, $lightness: $callout-background-fade);\n\n background-color: $background;\n color: color-pick-contrast($background, ($callout-font-color, $callout-font-color-alt));\n}\n\n@mixin callout-size($padding) {\n padding-top: $padding;\n padding-right: $padding;\n padding-bottom: $padding;\n padding-left: $padding;\n}\n\n\n/// Adds styles for a callout.\n/// @param {Color} $color [$callout-background] - Color to use.\n@mixin callout($color: $callout-background) {\n @include callout-style($color);\n @include callout-base;\n}\n\n@mixin foundation-callout {\n .callout {\n @include callout;\n\n @each $name, $color in $foundation-palette {\n &.#{\"\" + $name} {\n @include callout-style($color);\n }\n }\n\n @each $size, $padding in map-remove($callout-sizes, default) {\n &.#{$size} {\n @include callout-size($padding);\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group card\n////\n\n/// Default background color.\n/// @type Color\n$card-background: $white !default;\n\n/// Default font color for cards.\n/// @type Color\n$card-font-color: $body-font-color !default;\n\n/// Default background.\n/// @type Color\n$card-divider-background: $light-gray !default;\n\n/// Default border style.\n/// @type List\n$card-border: 1px solid $light-gray !default;\n\n/// Default card shadow.\n/// @type List\n$card-shadow: none !default;\n\n/// Default border radius.\n/// @type List\n$card-border-radius: $global-radius !default;\n\n/// Default padding.\n/// @type Number\n$card-padding: $global-padding !default;\n\n/// Default bottom margin.\n/// @type number\n$card-margin-bottom: $global-margin !default;\n\n/// Adds styles for a card container.\n/// @param {Color} $background - Background color of the card.\n/// @param {Color} $color - font color of the card.\n/// @param {Number} $margin - Bottom margin of the card.\n/// @param {List} $border - Border around the card.\n/// @param {List} $radius - border radius of the card.\n/// @param {List} $shadow - box shadow of the card.\n@mixin card-container(\n $background: $card-background,\n $color: $card-font-color,\n $margin: $card-margin-bottom,\n $border: $card-border,\n $radius: $card-border-radius,\n $shadow: $card-shadow\n) {\n @if $global-flexbox {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n }\n\n margin-bottom: $margin;\n\n border: $border;\n border-radius: $radius;\n\n background: $background;\n box-shadow: $shadow;\n\n overflow: hidden;\n color: $color;\n\n & > :last-child {\n margin-bottom: 0;\n }\n}\n\n/// Adds styles for a card divider.\n@mixin card-divider(\n $background: $card-divider-background,\n $padding: $card-padding\n) {\n @if $global-flexbox {\n display: flex;\n flex: 0 1 auto;\n }\n\n padding: $padding;\n background: $background;\n\n & > :last-child {\n margin-bottom: 0;\n }\n}\n\n/// Adds styles for a card section.\n@mixin card-section(\n $padding: $card-padding\n) {\n @if $global-flexbox {\n flex: 1 0 auto;\n }\n\n padding: $padding;\n\n & > :last-child {\n margin-bottom: 0;\n }\n}\n\n@mixin foundation-card {\n .card {\n @include card-container;\n }\n\n .card-divider {\n @include card-divider;\n }\n\n .card-section {\n @include card-section;\n }\n\n // For IE 11 - Flexbug\n // https://github.com/philipwalton/flexbugs/issues/75\n .card-image {\n min-height: 1px;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group dropdown\n////\n\n/// Padding for dropdown panes.\n/// @type List\n$dropdown-padding: 1rem !default;\n\n/// Background for dropdown panes.\n/// @type Color\n$dropdown-background: $body-background !default;\n\n/// Border for dropdown panes.\n/// @type List\n$dropdown-border: 1px solid $medium-gray !default;\n\n/// Font size for dropdown panes.\n/// @type List\n$dropdown-font-size: 1rem !default;\n\n/// Width for dropdown panes.\n/// @type Number\n$dropdown-width: 300px !default;\n\n/// Border radius dropdown panes.\n/// @type Number\n$dropdown-radius: $global-radius !default;\n\n/// Sizes for dropdown panes. Each size is a CSS class you can apply.\n/// @type Map\n$dropdown-sizes: (\n tiny: 100px,\n small: 200px,\n large: 400px,\n) !default;\n\n/// Applies styles for a basic dropdown.\n@mixin dropdown-container {\n position: absolute;\n z-index: 10;\n\n display: none;\n\n width: $dropdown-width;\n padding: $dropdown-padding;\n\n visibility: hidden;\n border: $dropdown-border;\n border-radius: $dropdown-radius;\n background-color: $dropdown-background;\n\n font-size: $dropdown-font-size;\n\n\n // Allow an intermittent state to do positioning before making visible.\n &.is-opening {\n display: block;\n }\n\n &.is-open {\n display: block;\n visibility: visible;\n }\n}\n\n@mixin foundation-dropdown {\n .dropdown-pane {\n @include dropdown-container;\n }\n\n @each $name, $size in $dropdown-sizes {\n .dropdown-pane {\n &.#{$name} {\n width: $size;\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group pagination\n////\n\n/// Font size of pagination items.\n/// @type Number\n$pagination-font-size: rem-calc(14) !default;\n\n/// Default bottom margin of the pagination object.\n/// @type Number\n$pagination-margin-bottom: $global-margin !default;\n\n/// Text color of pagination items.\n/// @type Color\n$pagination-item-color: $black !default;\n\n/// Padding inside of pagination items.\n/// @type Number\n$pagination-item-padding: rem-calc(3 10) !default;\n\n/// Right margin to separate pagination items.\n/// @type Number\n$pagination-item-spacing: rem-calc(1) !default;\n\n/// Default radius for pagination items.\n/// @type Number\n$pagination-radius: $global-radius !default;\n\n/// Background color of pagination items on hover.\n/// @type Color\n$pagination-item-background-hover: $light-gray !default;\n\n/// Background color of pagination item for the current page.\n/// @type Color\n$pagination-item-background-current: $primary-color !default;\n\n/// Text color of the pagination item for the current page.\n/// @type Color\n$pagination-item-color-current: $white !default;\n\n/// Text color of a disabled pagination item.\n/// @type Color\n$pagination-item-color-disabled: $medium-gray !default;\n\n/// Color of the ellipsis in a pagination menu.\n/// @type Color\n$pagination-ellipsis-color: $black !default;\n\n/// If `false`, don't display page number links on mobile, only next/previous links\n/// and optionally current page number.\n/// @type Boolean\n$pagination-mobile-items: false !default;\n\n/// If `true`, display the current page number on mobile even if `$pagination-mobile-items` is set to `false`.\n/// This parameter will only override the visibility setting of the current item for `$pagination-mobile-items: false;`,\n/// it will not affect the current page number visibility when `$pagination-mobile-items` is set to `true`.\n/// @type Boolean\n$pagination-mobile-current-item: false !default;\n\n/// If `true`, arrows are added to the next and previous links of pagination.\n/// @type Boolean\n$pagination-arrows: true !default;\n\n/// Content for the previous arrow when `$pagination-arrows` is `true`\n/// @type String\n$pagination-arrow-previous: '\\00AB' !default;\n\n/// Content for the next arrow when `$pagination-arrows` is `true`\n/// @type String\n$pagination-arrow-next: '\\00BB' !default;\n\n/// Adds styles for a pagination container. Apply this to a `<ul>`.\n@mixin pagination-container (\n $margin-bottom: $pagination-margin-bottom,\n $font-size: $pagination-font-size,\n $spacing: $pagination-item-spacing,\n $radius: $pagination-radius,\n $color: $pagination-item-color,\n $padding: $pagination-item-padding,\n $background-hover: $pagination-item-background-hover\n) {\n margin-#{$global-left}: 0;\n margin-bottom: $margin-bottom;\n @include clearfix;\n\n // List item\n li {\n margin-#{$global-right}: $spacing;\n border-radius: $radius;\n font-size: $font-size;\n\n @if $pagination-mobile-items {\n display: inline-block;\n }\n @else {\n display: none;\n\n &:last-child,\n &:first-child {\n display: inline-block;\n }\n\n @if $pagination-mobile-current-item {\n &.current {\n display: inline-block;\n }\n }\n\n @include breakpoint(medium) {\n display: inline-block;\n }\n }\n }\n\n // Page links\n a,\n button {\n display: block;\n padding: $padding;\n border-radius: $radius;\n color: $color;\n\n &:hover {\n background: $background-hover;\n }\n }\n}\n\n/// Adds styles for the current pagination item. Apply this to an `<a>`.\n@mixin pagination-item-current (\n $padding: $pagination-item-padding,\n $background-current: $pagination-item-background-current,\n $color-current: $pagination-item-color-current\n) {\n padding: $padding;\n background: $background-current;\n color: $color-current;\n cursor: default;\n}\n\n/// Adds styles for a disabled pagination item. Apply this to an `<a>`.\n@mixin pagination-item-disabled (\n $padding: $pagination-item-padding,\n $color: $pagination-item-color-disabled\n) {\n padding: $padding;\n color: $color;\n cursor: not-allowed;\n\n &:hover {\n background: transparent;\n }\n}\n\n/// Adds styles for an ellipsis for use in a pagination list.\n@mixin pagination-ellipsis (\n $padding: $pagination-item-padding,\n $color: $pagination-ellipsis-color\n) {\n padding: $padding;\n content: '\\2026';\n color: $color;\n}\n\n@mixin foundation-pagination {\n .pagination {\n @include pagination-container;\n\n .current {\n @include pagination-item-current;\n }\n\n .disabled {\n @include pagination-item-disabled;\n }\n\n .ellipsis::after {\n @include pagination-ellipsis;\n }\n }\n\n @if $pagination-arrows {\n .pagination-previous a::before,\n .pagination-previous.disabled::before {\n display: inline-block;\n margin-#{$global-right}: 0.5rem;\n content: $pagination-arrow-previous;\n }\n\n .pagination-next a::after,\n .pagination-next.disabled::after {\n display: inline-block;\n margin-#{$global-left}: 0.5rem;\n content: $pagination-arrow-next;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group tooltip\n////\n\n/// Default cursor of the defined term.\n/// @type Keyword\n$has-tip-cursor: help !default;\n\n/// Default font weight of the defined term.\n/// @type Keyword | Number\n$has-tip-font-weight: $global-weight-bold !default;\n\n/// Default border bottom of the defined term.\n/// @type List\n$has-tip-border-bottom: dotted 1px $dark-gray !default;\n\n/// Default color of the tooltip background.\n/// @type Color\n$tooltip-background-color: $black !default;\n\n/// Default color of the tooltip font.\n/// @type Color\n$tooltip-color: $white !default;\n\n/// Default padding of the tooltip background.\n/// @type Number\n$tooltip-padding: 0.75rem !default;\n\n/// Default max width for tooltips.\n/// @type Number\n$tooltip-max-width: 10rem !default;\n\n/// Default font size of the tooltip text. By default, we recommend a smaller font size than the body copy.\n/// @type Number\n$tooltip-font-size: $small-font-size !default;\n\n/// Default pip width for tooltips.\n/// @type Number\n$tooltip-pip-width: 0.75rem !default;\n\n/// Default pip height for tooltips. This is helpful for calculating the distance of the tooltip from the tooltip word.\n/// @type Number\n$tooltip-pip-height: $tooltip-pip-width * 0.866 !default;\n\n/// Default radius for tooltips.\n/// @type Number\n$tooltip-radius: $global-radius !default;\n\n@mixin has-tip {\n position: relative;\n display: inline-block;\n\n border-bottom: $has-tip-border-bottom;\n font-weight: $has-tip-font-weight;\n cursor: $has-tip-cursor;\n}\n\n@mixin tooltip {\n position: absolute;\n top: calc(100% + #{$tooltip-pip-height});\n z-index: 1200;\n\n max-width: $tooltip-max-width;\n padding: $tooltip-padding;\n\n border-radius: $tooltip-radius;\n background-color: $tooltip-background-color;\n font-size: $tooltip-font-size;\n color: $tooltip-color;\n\n &::before {\n position: absolute;\n }\n\n &.bottom {\n &::before {\n @include css-triangle($tooltip-pip-width, $tooltip-background-color, up);\n bottom: 100%;\n }\n\n &.align-center::before {\n left: 50%;\n transform: translateX(-50%);\n }\n }\n\n &.top {\n &::before {\n @include css-triangle($tooltip-pip-width, $tooltip-background-color, down);\n top: 100%;\n bottom: auto;\n }\n\n &.align-center::before {\n left: 50%;\n transform: translateX(-50%);\n }\n }\n\n &.left {\n &::before {\n @include css-triangle($tooltip-pip-width, $tooltip-background-color, right);\n left: 100%;\n }\n\n &.align-center::before {\n bottom: auto;\n top: 50%;\n transform: translateY(-50%);\n }\n }\n\n &.right {\n &::before {\n @include css-triangle($tooltip-pip-width, $tooltip-background-color, left);\n right: 100%;\n left: auto;\n }\n\n &.align-center::before {\n bottom: auto;\n top: 50%;\n transform: translateY(-50%);\n }\n }\n\n &.align-top::before {\n bottom: auto;\n top: 10%;\n }\n\n &.align-bottom::before {\n bottom: 10%;\n top: auto;\n }\n\n &.align-left::before {\n left: 10%;\n right: auto;\n }\n\n &.align-right::before {\n left: auto;\n right: 10%;\n }\n}\n\n@mixin foundation-tooltip {\n .has-tip {\n @include has-tip;\n }\n\n .tooltip {\n @include tooltip;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group accordion\n////\n\n/// Default background color of an accordion group.\n/// @type Color\n$accordion-background: $white !default;\n\n/// If `true`, adds plus and minus icons to the side of each accordion title.\n/// @type Boolean\n$accordion-plusminus: true !default;\n\n/// Content for the plus icon when `$accordion-plusminus` is `true`\n/// @type String\n$accordion-plus-content: '\\002B' !default;\n\n/// Content for the minus icon when `$accordion-plusminus` is `true`\n/// @type String\n$accordion-minus-content: '\\2013' !default;\n\n/// Font size of accordion titles.\n/// @type Number\n$accordion-title-font-size: rem-calc(12) !default;\n\n/// Default text color for items in a Menu.\n/// @type Color\n$accordion-item-color: $primary-color !default;\n\n/// Default background color on hover for items in a Menu.\n/// @type Color\n$accordion-item-background-hover: $light-gray !default;\n\n/// Default padding of an accordion item.\n/// @type Number | List\n$accordion-item-padding: 1.25rem 1rem !default;\n\n/// Default background color of tab content.\n/// @type Color\n$accordion-content-background: $white !default;\n\n/// Default border color of tab content.\n/// @type Color\n$accordion-content-border: 1px solid $light-gray !default;\n\n/// Default text color of tab content.\n/// @type Color\n$accordion-content-color: $body-font-color !default;\n\n/// Default padding for tab content.\n/// @type Number | List\n$accordion-content-padding: 1rem !default;\n\n/// Adds styles for an accordion container. Apply this to the same element that gets `data-accordion`.\n@mixin accordion-container (\n $background: $accordion-background\n) {\n margin-#{$global-left}: 0;\n background: $background;\n list-style-type: none;\n\n &[disabled] {\n .accordion-title {\n cursor: not-allowed;\n }\n }\n}\n\n/// Adds styles for the accordion item. Apply this to the list item within an accordion ul.\n@mixin accordion-item {\n &:first-child > :first-child {\n border-radius: $global-radius $global-radius 0 0;\n }\n\n &:last-child > :last-child {\n border-radius: 0 0 $global-radius $global-radius;\n }\n}\n\n/// Adds styles for the title of an accordion item. Apply this to the link within an accordion item.\n@mixin accordion-title (\n $padding: $accordion-item-padding,\n $font-size: $accordion-title-font-size,\n $color: $accordion-item-color,\n $border: $accordion-content-border,\n $background-hover: $accordion-item-background-hover\n) {\n position: relative;\n display: block;\n padding: $padding;\n\n border: $border;\n border-bottom: 0;\n\n font-size: $font-size;\n line-height: 1;\n color: $color;\n\n :last-child:not(.is-active) > & {\n border-bottom: $border;\n border-radius: 0 0 $global-radius $global-radius;\n }\n\n &:hover,\n &:focus {\n background-color: $background-hover;\n }\n\n @if $accordion-plusminus {\n &::before {\n position: absolute;\n top: 50%;\n #{$global-right}: 1rem;\n margin-top: -0.5rem;\n content: $accordion-plus-content;\n }\n\n .is-active > &::before {\n content: $accordion-minus-content;\n }\n }\n}\n\n/// Adds styles for accordion content. Apply this to the content pane below an accordion item's title.\n@mixin accordion-content (\n $padding: $accordion-content-padding,\n $border: $accordion-content-border,\n $background: $accordion-content-background,\n $color: $accordion-content-color\n) {\n display: none;\n padding: $padding;\n\n border: $border;\n border-bottom: 0;\n background-color: $background;\n\n color: $color;\n\n :last-child > &:last-child {\n border-bottom: $border;\n }\n}\n\n@mixin foundation-accordion {\n .accordion {\n @include accordion-container;\n }\n\n .accordion-item {\n @include accordion-item;\n }\n\n .accordion-title {\n @include accordion-title;\n }\n\n .accordion-content {\n @include accordion-content;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group media-object\n////\n\n/// Bottom margin of a media object.\n/// @type Number\n$mediaobject-margin-bottom: $global-margin !default;\n\n/// Left and right padding on sections within a media object.\n/// @type Number\n$mediaobject-section-padding: $global-padding !default;\n\n/// Width of images within a media object, when the object is stacked vertically. Set to 'auto' to use the image's natural width.\n/// @type Number\n$mediaobject-image-width-stacked: 100% !default;\n\n/// Adds styles for a media object container.\n@mixin media-object-container {\n display: if($global-flexbox, flex, block);\n margin-bottom: $mediaobject-margin-bottom;\n\n @if $global-flexbox {\n flex-wrap: nowrap;\n }\n\n img {\n max-width: none;\n }\n\n @if $global-flexbox {\n &.stack-for-#{$-zf-zero-breakpoint} {\n @include breakpoint($-zf-zero-breakpoint only) {\n flex-wrap: wrap;\n }\n }\n }\n}\n\n/// Adds styles for sections within a media object.\n/// @param {Number} $padding [$mediaobject-section-padding] - Padding between sections.\n@mixin media-object-section($padding: $mediaobject-section-padding) {\n @if $global-flexbox {\n flex: 0 1 auto;\n }\n @else {\n display: table-cell;\n vertical-align: top;\n }\n\n &:first-child {\n padding-#{$global-right}: $padding;\n }\n\n &:last-child:not(:nth-child(2)) {\n padding-#{$global-left}: $padding;\n }\n\n > :last-child {\n margin-bottom: 0;\n }\n\n .stack-for-#{$-zf-zero-breakpoint} & {\n @include breakpoint($-zf-zero-breakpoint only) {\n @include media-object-stack;\n }\n }\n\n @if $global-flexbox {\n &.main-section {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n }\n }\n @else {\n &.middle {\n vertical-align: middle;\n }\n\n &.bottom {\n vertical-align: bottom;\n }\n }\n}\n\n/// Adds styles to stack sections of a media object. Apply this to the section elements, not the container.\n@mixin media-object-stack {\n padding: 0;\n padding-bottom: $mediaobject-section-padding;\n\n @if $global-flexbox {\n flex-basis: 100%;\n max-width: 100%;\n }\n @else {\n display: block;\n }\n\n img {\n width: $mediaobject-image-width-stacked;\n }\n}\n\n@mixin foundation-media-object {\n .media-object {\n @include media-object-container;\n }\n\n .media-object-section {\n @include media-object-section;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group orbit\n////\n\n/// Default color for Orbit's bullets.\n/// @type Color\n$orbit-bullet-background: $medium-gray !default;\n\n/// Default active color for Orbit's bullets.\n/// @type Color\n$orbit-bullet-background-active: $dark-gray !default;\n\n/// Default diameter for Orbit's bullets.\n/// @type Number\n$orbit-bullet-diameter: 1.2rem !default;\n\n/// Default margin between Orbit's bullets.\n/// @type Number\n$orbit-bullet-margin: 0.1rem !default;\n\n/// Default distance from slide region for Orbit's bullets.\n/// @type Number\n$orbit-bullet-margin-top: 0.8rem !default;\n\n/// Default bottom margin from Orbit's bullets to whatever content may lurk below it.\n/// @type Number\n$orbit-bullet-margin-bottom: 0.8rem !default;\n\n/// Default background color for Orbit's caption.\n/// @type Color\n$orbit-caption-background: rgba($black, 0.5) !default;\n\n/// Default padding for Orbit's caption.\n/// @type Number\n$orbit-caption-padding: 1rem !default;\n\n/// Default background color for Orbit's controls when hovered.\n/// @type Color\n$orbit-control-background-hover: rgba($black, 0.5) !default;\n\n/// Default padding for Orbit's controls.\n/// @type Number\n$orbit-control-padding: 1rem !default;\n\n/// Default z-index for Orbit's controls.\n/// @type Number\n$orbit-control-zindex: 10 !default;\n\n/// Adds styles for the outer Orbit wrapper. These styles are used on the `.orbit` class.\n@mixin orbit-wrapper {\n position: relative;\n}\n\n/// Adds styles for the inner Orbit slide container. These styles are used on the `.orbit-container` class.\n@mixin orbit-container {\n position: relative;\n height: 0; // Prevent FOUC by not showing until JS sets height\n margin: 0;\n list-style: none;\n overflow: hidden;\n}\n\n/// Adds styles for the individual slides of an Orbit slider. These styles are used on the `.orbit-slide` class.\n@mixin orbit-slide {\n width: 100%;\n position: absolute;\n\n &.no-motionui {\n &.is-active {\n top: 0;\n left: 0;\n }\n }\n}\n\n@mixin orbit-figure {\n margin: 0;\n}\n\n/// Adds styles for a slide containing an image. These styles are used on the `.orbit-image` class.\n@mixin orbit-image {\n width: 100%;\n max-width: 100%;\n margin: 0;\n}\n\n/// Adds styles for an orbit slide caption. These styles are used on the `.orbit-caption` class.\n@mixin orbit-caption {\n position: absolute;\n bottom: 0;\n width: 100%;\n margin-bottom: 0;\n padding: $orbit-caption-padding;\n\n background-color: $orbit-caption-background;\n color: color-pick-contrast($orbit-caption-background);\n}\n\n/// Adds base styles for the next/previous buttons in an Orbit slider. These styles are shared between the `.orbit-next` and `.orbit-previous` classes in the default CSS.\n@mixin orbit-control {\n z-index: $orbit-control-zindex;\n padding: $orbit-control-padding;\n color: $white;\n @include vertical-center;\n @include disable-mouse-outline;\n\n &:hover,\n &:active,\n &:focus {\n background-color: $orbit-control-background-hover;\n }\n}\n\n/// Adds styles for the Orbit previous button. These styles are used on the `.orbit-previous` class.\n@mixin orbit-previous {\n #{$global-left}: 0;\n}\n\n/// Adds styles for the Orbit next button. These styles are used on the `.orbit-next` class.\n@mixin orbit-next {\n #{$global-left}: auto;\n #{$global-right}: 0;\n}\n\n/// Adds styles for a container of Orbit bullets. /// Adds styles for the Orbit previous button. These styles are used on the `.orbit-bullets` class.\n@mixin orbit-bullets {\n position: relative;\n margin-top: $orbit-bullet-margin-top;\n margin-bottom: $orbit-bullet-margin-bottom;\n text-align: center;\n @include disable-mouse-outline;\n\n button {\n width: $orbit-bullet-diameter;\n height: $orbit-bullet-diameter;\n margin: $orbit-bullet-margin;\n\n border-radius: 50%;\n background-color: $orbit-bullet-background;\n\n &:hover {\n background-color: $orbit-bullet-background-active;\n }\n\n &.is-active {\n background-color: $orbit-bullet-background-active;\n }\n }\n}\n\n@mixin foundation-orbit {\n .orbit {\n @include orbit-wrapper;\n }\n\n .orbit-container {\n @include orbit-container;\n }\n\n .orbit-slide {\n @include orbit-slide;\n }\n\n .orbit-figure {\n @include orbit-figure;\n }\n\n .orbit-image {\n @include orbit-image;\n }\n\n .orbit-caption {\n @include orbit-caption;\n }\n\n %orbit-control {\n @include orbit-control;\n }\n\n .orbit-previous {\n @extend %orbit-control;\n @include orbit-previous;\n }\n\n .orbit-next {\n @extend %orbit-control;\n @include orbit-next;\n }\n\n .orbit-bullets {\n @include orbit-bullets;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group responsive-embed\n////\n\n/// Margin below a responsive embed container.\n/// @type Number\n$responsive-embed-margin-bottom: rem-calc(16) !default;\n\n/// Aspect ratios used to determine padding-bottom of responsive embed containers.\n/// @type Map\n$responsive-embed-ratios: (\n default: 4 by 3,\n widescreen: 16 by 9,\n) !default;\n\n/// Creates a responsive embed container.\n/// @param {String|List} $ratio [default] - Ratio of the container. Can be a key from the `$responsive-embed-ratios` map or a list formatted as `x by y`.\n@mixin responsive-embed($ratio: default) {\n @if type-of($ratio) == 'string' {\n $ratio: map-get($responsive-embed-ratios, $ratio);\n }\n position: relative;\n height: 0;\n margin-bottom: $responsive-embed-margin-bottom;\n padding-bottom: ratio-to-percentage($ratio);\n overflow: hidden;\n\n iframe,\n object,\n embed,\n video {\n position: absolute;\n top: 0;\n #{$global-left}: 0;\n width: 100%;\n height: 100%;\n }\n}\n\n@mixin foundation-responsive-embed {\n .responsive-embed,\n .flex-video {\n @include responsive-embed($ratio: default);\n\n $ratios: map-remove($responsive-embed-ratios, default);\n\n @each $name, $ratio in $ratios {\n &.#{$name} {\n padding-bottom: ratio-to-percentage($ratio);\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group tabs\n////\n\n/// Default margin of the tab bar.\n/// @type Number\n$tab-margin: 0 !default;\n\n/// Default background color of a tab bar.\n/// @type Color\n$tab-background: $white !default;\n\n/// Font color of tab item.\n/// @type Color\n$tab-color: $primary-color !default;\n\n/// Active background color of a tab bar.\n/// @type Color\n$tab-background-active: $light-gray !default;\n\n/// Active font color of tab item.\n/// @type Color\n$tab-active-color: $primary-color !default;\n\n/// Font size of tab items.\n/// @type Number\n$tab-item-font-size: rem-calc(12) !default;\n\n/// Default background color on hover for items in a Menu.\n$tab-item-background-hover: $white !default;\n\n/// Default padding of a tab item.\n/// @type Number\n$tab-item-padding: 1.25rem 1.5rem !default;\n\n/// Default background color of tab content.\n/// @type Color\n$tab-content-background: $white !default;\n\n/// Default border color of tab content.\n/// @type Color\n$tab-content-border: $light-gray !default;\n\n/// Default text color of tab content.\n/// @type Color\n$tab-content-color: $body-font-color !default;\n\n/// Default padding for tab content.\n/// @type Number | List\n$tab-content-padding: 1rem !default;\n\n/// Adds styles for a tab container. Apply this to a `<ul>`.\n@mixin tabs-container (\n $margin: $tab-margin,\n $background: $tab-background,\n $border-color: $tab-content-border\n) {\n margin: $margin;\n border: 1px solid $border-color;\n background: $background;\n list-style-type: none;\n @include clearfix;\n}\n\n/// Augments a tab container to have vertical tabs. Use this in conjunction with `tabs-container()`.\n@mixin tabs-container-vertical {\n > li {\n display: block;\n float: none;\n width: auto;\n }\n}\n\n/// Adds styles for the links within a tab container. Apply this to the `<li>` elements inside a tab container.\n@mixin tabs-title (\n $padding: $tab-item-padding,\n $font-size: $tab-item-font-size,\n $color: $tab-color,\n $color-active: $tab-active-color,\n $background-hover: $tab-item-background-hover,\n $background-active: $tab-background-active\n) {\n float: #{$global-left};\n\n > a {\n display: block;\n padding: $padding;\n font-size: $font-size;\n line-height: 1;\n color: $color;\n @include disable-mouse-outline;\n\n &:hover {\n background: $background-hover;\n color: scale-color($color, $lightness: -14%);\n }\n\n &:focus,\n &[aria-selected='true'] {\n background: $background-active;\n color: $color-active;\n }\n }\n}\n\n/// Adds styles for the wrapper that surrounds a tab group's content panes.\n@mixin tabs-content (\n $background: $tab-content-background,\n $color: $tab-content-color,\n $border-color: $tab-content-border\n) {\n border: 1px solid $border-color;\n border-top: 0;\n background: $background;\n color: $color;\n transition: all 0.5s ease;\n}\n\n/// Augments a tab content container to have a vertical style, by shifting the border around. Use this in conjunction with `tabs-content()`.\n@mixin tabs-content-vertical (\n $border-color: $tab-content-border\n) {\n border: 1px solid $border-color;\n border-#{$global-left}: 0;\n}\n\n/// Adds styles for an individual tab content panel within the tab content container.\n@mixin tabs-panel (\n $padding: $tab-content-padding\n) {\n display: none;\n padding: $padding;\n\n &.is-active {\n display: block;\n }\n}\n\n@mixin foundation-tabs {\n .tabs {\n @include tabs-container;\n }\n\n // Vertical\n .tabs.vertical {\n @include tabs-container-vertical;\n }\n\n // Simple\n .tabs.simple {\n > li > a {\n padding: 0;\n\n &:hover {\n background: transparent;\n }\n }\n }\n\n // Primary color\n .tabs.primary {\n background: $primary-color;\n\n > li > a {\n color: color-pick-contrast($primary-color);\n\n &:hover,\n &:focus {\n background: smart-scale($primary-color);\n }\n }\n }\n\n .tabs-title {\n @include tabs-title;\n }\n\n .tabs-content {\n @include tabs-content;\n }\n\n .tabs-content.vertical {\n @include tabs-content-vertical;\n }\n\n .tabs-panel {\n @include tabs-panel;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group thumbnail\n////\n\n/// Border around thumbnail images.\n/// @type Border\n$thumbnail-border: 4px solid $white !default;\n\n/// Bottom margin for thumbnail images.\n/// @type Length\n$thumbnail-margin-bottom: $global-margin !default;\n\n/// Box shadow under thumbnail images.\n/// @type Shadow\n$thumbnail-shadow: 0 0 0 1px rgba($black, 0.2) !default;\n\n/// Box shadow under thumbnail images.\n/// @type Shadow\n$thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5) !default;\n\n/// Transition proprties for thumbnail images.\n/// @type Transition\n$thumbnail-transition: box-shadow 200ms ease-out !default;\n\n/// Default radius for thumbnail images.\n/// @type Number\n$thumbnail-radius: $global-radius !default;\n\n/// Adds thumbnail styles to an element.\n@mixin thumbnail {\n display: inline-block;\n max-width: 100%;\n margin-bottom: $thumbnail-margin-bottom;\n\n border: $thumbnail-border;\n border-radius: $thumbnail-radius;\n box-shadow: $thumbnail-shadow;\n\n line-height: 0;\n}\n\n@mixin thumbnail-link {\n transition: $thumbnail-transition;\n\n &:hover,\n &:focus {\n box-shadow: $thumbnail-shadow-hover;\n }\n\n image {\n box-shadow: none;\n }\n}\n\n@mixin foundation-thumbnail {\n .thumbnail {\n @include thumbnail;\n }\n\n a.thumbnail {\n @include thumbnail-link;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group menu\n////\n\n/// Margin of a menu.\n/// @type Number\n$menu-margin: 0 !default;\n\n/// Left-hand margin of a nested menu.\n/// @type Number\n$menu-nested-margin: $global-menu-nested-margin !default;\n\n/// Padding for items in a pill menu.\n/// @type Number\n$menu-items-padding: $global-menu-padding !default;\n\n/// margin for items in a simple menu.\n/// @type Number\n$menu-simple-margin: 1rem !default;\n\n/// Text color of an active menu item.\n/// @type Color\n$menu-item-color-active: $white !default;\n\n/// Alternative text color of an active menu item..\n/// @type Color\n$menu-item-color-alt-active: $black !default;\n\n/// Background color of an active menu item.\n/// @type Color\n$menu-item-background-active: get-color(primary) !default;\n\n/// Spacing between an icon and text in a menu item.\n/// @type Number\n$menu-icon-spacing: 0.25rem !default;\n\n/// Backward compatibility for menu state. If true, this duplicate `active` with `is-active`.\n/// But please note that `active` will be removed in upcoming versions.\n/// @type Boolean\n$menu-state-back-compat: true !default;\n\n/// Backward compatibility for menu centered. If true, this duplicate `.menu-centered > .menu` with `.menu.align-center`.\n/// But please note that `menu-centered` will be removed in upcoming versions.\n/// @type Boolean\n$menu-centered-back-compat: true !default;\n\n/// Backward compatibility for using `icon-*` classes without `.icons` classes\n/// But please note that this backward compatibility will be removed in upcoming versions.\n/// @type Boolean\n$menu-icons-back-compat: true !default;\n\n/// Creates the base styles for a Menu.\n@mixin menu-base {\n padding: 0;\n margin: 0;\n list-style: none;\n position: relative;\n\n @if $global-flexbox {\n display: flex;\n flex-wrap: wrap;\n }\n\n li {\n @include disable-mouse-outline;\n }\n\n a,\n .button {\n line-height: 1;\n text-decoration: none;\n display: block;\n padding: $menu-items-padding;\n }\n\n // Reset styles of inner elements\n input,\n select,\n a,\n button {\n margin-bottom: 0;\n }\n\n input {\n display: inline-block;\n }\n}\n\n/// Expands the items of a Menu, so each item is the same width.\n@mixin menu-expand {\n @if $global-flexbox {\n li {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n }\n }\n @else {\n display: table;\n width: 100%;\n\n > li {\n display: table-cell;\n vertical-align: middle;\n }\n }\n}\n\n/// Align menu items.\n@mixin menu-align($alignment) {\n @if $alignment == left {\n @if $global-flexbox {\n justify-content: flex-start;\n }\n @else {\n text-align: $global-left;\n }\n }\n @else if $alignment == right {\n @if $global-flexbox {\n li {\n display: flex;\n justify-content: flex-end;\n\n .submenu li {\n justify-content: flex-start;\n }\n }\n\n &.vertical li {\n display: block;\n text-align: $global-right;\n\n .submenu li {\n text-align: $global-right;\n }\n }\n }\n @else {\n text-align: $global-right;\n\n .submenu li {\n text-align: $global-left;\n }\n\n &.vertical {\n .submenu li {\n text-align: $global-right;\n }\n }\n }\n }\n @else if $alignment == center {\n @if $global-flexbox {\n li {\n display: flex;\n justify-content: center;\n\n .submenu li {\n justify-content: flex-start;\n }\n }\n }\n @else {\n text-align: center;\n\n .submenu li {\n text-align: $global-left;\n }\n }\n }\n}\n\n/// Sets the direction of a Menu.\n/// @param {Keyword} $dir [horizontal] - Direction of the Menu. Can be `horizontal` or `vertical`.\n@mixin menu-direction($dir: horizontal) {\n @if $dir == horizontal {\n @if $global-flexbox {\n flex-wrap: wrap;\n flex-direction: row;\n }\n @else {\n li {\n display: inline-block;\n }\n }\n }\n @else if $dir == vertical {\n @if $global-flexbox {\n flex-wrap: nowrap;\n flex-direction: column;\n }\n @else {\n li {\n display: block;\n }\n }\n }\n @else {\n @warn 'The direction used for menu-direction() must be horizontal or vertical.';\n }\n}\n\n/// Creates a simple Menu, which has no padding or hover state.\n/// @param {Keyword} $dir [$global-left] - Direction of the menu. This effects the side of the `<li>` that receives the margin.\n/// @param {Number} $margin [$menu-simple-margin] - The margin to apply to each `<li>`.\n@mixin menu-simple($dir: $global-left, $margin: $menu-simple-margin) {\n @if $global-flexbox {\n align-items: center;\n }\n\n li + li {\n margin-#{$dir}: $margin;\n }\n\n a {\n padding: 0;\n }\n}\n\n/// Adds styles for a nested Menu, by adding `margin-left` to the menu.\n/// @param {Keyword|Number} $margin [$menu-nested-margin] - Length of the margin.\n/// @param {Keyword} $nested-alignment [left] - Alignment of the nested class\n@mixin menu-nested(\n $margin: $menu-nested-margin,\n $nested-alignment: left\n) {\n @if $nested-alignment == right {\n margin-#{$global-right}: $margin;\n margin-#{$global-left}: 0;\n }\n @else {\n margin-#{$global-right}: 0;\n margin-#{$global-left}: $margin;\n }\n\n}\n\n/// Adds basic styles for icons in menus.\n@mixin menu-icons() {\n @if $global-flexbox {\n a {\n display: flex;\n }\n }\n @else {\n img,\n i,\n svg {\n vertical-align: middle;\n\n + span {\n vertical-align: middle;\n }\n }\n }\n}\n\n/// Align top/bottom icons within a menu.\n/// @param {Keyword} $alignment [center] - Alignment of the icon\n@mixin menu-icon-alignment($alignment: center) {\n @if $global-flexbox {\n &.icon-top,\n &.icon-bottom {\n li a {\n img,\n i,\n svg {\n @if $alignment == left {\n text-align: left;\n }\n\n @else if $alignment == right {\n text-align: right;\n }\n\n @else {\n text-align: center;\n }\n }\n }\n }\n }\n}\n\n/// Adds position classes for icons within a menu.\n@mixin menu-icon-position($position: left, $spacing: $menu-icon-spacing) {\n @if $position == left {\n li a {\n @if $global-flexbox {\n flex-flow: row nowrap;\n }\n\n img,\n i,\n svg {\n margin-#{$global-right}: $spacing;\n\n @if not $global-flexbox {\n display: inline-block;\n }\n }\n }\n }\n @else if $position == right {\n li a {\n @if $global-flexbox {\n flex-flow: row nowrap;\n }\n\n img,\n i,\n svg {\n margin-#{$global-left}: $spacing;\n\n @if not $global-flexbox {\n display: inline-block;\n }\n }\n }\n }\n @else if $position == top {\n li a {\n @if $global-flexbox {\n flex-flow: column nowrap;\n }\n @else {\n text-align: center;\n }\n\n img,\n i,\n svg {\n @if not $global-flexbox {\n display: block;\n margin: 0 auto $spacing;\n }\n @else {\n align-self: stretch;\n margin-bottom: $spacing;\n text-align: center;\n }\n }\n }\n }\n @else if $position == bottom {\n li a {\n @if $global-flexbox {\n flex-flow: column nowrap;\n }\n @else {\n text-align: center;\n }\n\n img,\n i,\n svg {\n @if not $global-flexbox {\n display: block;\n margin: $spacing auto 0;\n }\n @else {\n align-self: stretch;\n margin-bottom: $spacing;\n text-align: center;\n }\n }\n }\n }\n}\n\n@mixin menu-text {\n padding: $global-menu-padding;\n\n font-weight: bold;\n line-height: 1;\n color: inherit;\n}\n\n@mixin menu-state-active {\n background: $menu-item-background-active;\n color: color-pick-contrast($menu-item-background-active, ($menu-item-color-active, $menu-item-color-alt-active));\n}\n\n@mixin foundation-menu {\n .menu {\n @include menu-base;\n\n // Default orientation: horizontal\n &, &.horizontal {\n @include menu-direction(horizontal);\n }\n\n // Vertical orientation modifier\n &.vertical {\n @include menu-direction(vertical);\n @include menu-icon-alignment(left);\n }\n\n // Even-width modifier for horizontal orientation\n &.expanded {\n @include menu-expand;\n @include menu-icon-alignment(left);\n }\n\n // Simple\n &.simple {\n @include menu-simple;\n }\n\n // Breakpoint specific versions\n @include -zf-each-breakpoint($small: false) {\n &.#{$-zf-size}-horizontal {\n @include menu-direction(horizontal);\n }\n\n &.#{$-zf-size}-vertical {\n @include menu-direction(vertical);\n }\n\n &.#{$-zf-size}-expanded {\n @include menu-expand;\n }\n\n &.#{$-zf-size}-simple {\n @include menu-expand;\n }\n }\n\n // Nesting\n &.nested {\n @include menu-nested;\n }\n\n // Icon Base Styles\n &.icons {\n @include menu-icons;\n }\n\n // Backward Compatibility for active state\n @if $menu-icons-back-compat {\n &.icon-top,\n &.icon-right,\n &.icon-bottom,\n &.icon-left {\n @include menu-icons;\n }\n }\n\n // Menu icon position\n // Includes specificity to nested icons with a different position\n &,\n &.nested {\n // Icon Left\n &.icon-left {\n @include menu-icon-position(left);\n }\n\n // Icon Right\n &.icon-right {\n @include menu-icon-position(right);\n }\n\n // Icon Top\n &.icon-top {\n @include menu-icon-position(top);\n }\n\n // Icon Bottom\n &.icon-bottom {\n @include menu-icon-position(bottom);\n }\n }\n\n // Active state\n .is-active > a {\n @include menu-state-active;\n }\n\n // Backward Compatibility for active state\n @if $menu-state-back-compat {\n .active > a {\n @include menu-state-active;\n }\n }\n\n // Align left\n &.align-#{$global-left} {\n @include menu-align(left);\n }\n\n // Align right\n &.align-#{$global-right} {\n @include menu-align(right);\n @include menu-icon-alignment(right);\n\n .nested {\n @include menu-nested($nested-alignment: right);\n }\n }\n\n // Align center\n &.align-center {\n @include menu-align(center);\n }\n\n .menu-text {\n @include menu-text;\n }\n }\n\n @if $menu-centered-back-compat {\n .menu-centered {\n > .menu {\n @if $global-flexbox {\n justify-content: center;\n }\n\n @include menu-align(center);\n }\n }\n }\n\n // Prevent FOUC when using the Responsive Menu plugin\n .no-js [data-responsive-menu] ul {\n display: none;\n }\n}\n","@mixin foundation-menu-icon {\n .menu-icon {\n @include hamburger($color: $titlebar-icon-color, $color-hover: $titlebar-icon-color-hover);\n }\n\n .menu-icon.dark {\n @include hamburger;\n }\n}\n","////\n/// @group accordion-menu\n////\n\n/// Sets accordion menu padding.\n/// @type Number\n$accordionmenu-padding: $global-menu-padding !default;\n\n/// Sets accordion menu nested margin\n/// @type Number\n$accordionmenu-nested-margin: $global-menu-nested-margin !default;\n\n/// Sets accordion menu submenu padding.\n/// @type Number\n$accordionmenu-submenu-padding: $accordionmenu-padding !default;\n\n/// Sets if accordion menus have the default arrow styles.\n/// @type Boolean\n$accordionmenu-arrows: true !default;\n\n/// Sets accordion menu arrow color if arrow is used.\n/// @type Color\n$accordionmenu-arrow-color: $primary-color !default;\n\n/// Sets accordion menu item padding.\n/// @type Color\n$accordionmenu-item-background: null !default;\n\n/// Sets accordion menu item border.\n/// @type Color\n$accordionmenu-border: null !default;\n\n/// Sets accordion menu item padding.\n/// @type Color\n$accordionmenu-submenu-toggle-background: null !default;\n\n/// Sets accordion menu item padding.\n/// @type List\n$accordion-submenu-toggle-border: $accordionmenu-border !default;\n\n/// Sets accordion menu submenu toggle background width.\n/// @type Number\n$accordionmenu-submenu-toggle-width: 40px !default;\n\n/// Sets accordion menu submenu toggle background height.\n/// @type Number\n$accordionmenu-submenu-toggle-height: $accordionmenu-submenu-toggle-width !default;\n\n/// Sets accordion menu arrow size if arrow is used.\n/// @type Length\n$accordionmenu-arrow-size: 6px !default;\n\n@mixin zf-accordion-menu-left-right-arrows {\n .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {\n position: relative;\n\n &::after {\n @include css-triangle($accordionmenu-arrow-size, $accordionmenu-arrow-color, down);\n position: absolute;\n top: 50%;\n margin-top: -1 * ($accordionmenu-arrow-size * 0.5);\n #{$global-right}: 1rem;\n }\n }\n\n &.align-left .is-accordion-submenu-parent > a::after {\n right: 1rem;\n left: auto;\n }\n\n &.align-right .is-accordion-submenu-parent > a::after {\n right: auto;\n left: 1rem;\n }\n}\n@mixin foundation-accordion-menu {\n\n .accordion-menu {\n @if $accordionmenu-border {\n border-bottom: $accordionmenu-border;\n }\n\n li {\n @if $accordionmenu-border {\n border-top: $accordionmenu-border;\n border-right: $accordionmenu-border;\n border-left: $accordionmenu-border;\n }\n width: 100%;\n }\n\n a {\n @if $accordionmenu-item-background {\n background: $accordionmenu-item-background;\n }\n padding: $accordionmenu-padding;\n }\n\n .is-accordion-submenu a {\n padding: $accordionmenu-submenu-padding;\n }\n\n .nested.is-accordion-submenu {\n @include menu-nested($accordionmenu-nested-margin);\n }\n\n &.align-#{$global-right} {\n .nested.is-accordion-submenu {\n @include menu-nested($accordionmenu-nested-margin, right);\n }\n }\n\n @if $accordionmenu-arrows {\n @include zf-accordion-menu-left-right-arrows;\n\n .is-accordion-submenu-parent[aria-expanded='true'] > a::after {\n transform: rotate(180deg);\n transform-origin: 50% 50%;\n }\n }\n }\n\n .is-accordion-submenu li {\n @if $accordionmenu-border {\n border-right: 0;\n border-left: 0;\n }\n }\n\n .is-accordion-submenu-parent {\n position: relative;\n }\n\n .has-submenu-toggle > a {\n margin-#{$global-right}: $accordionmenu-submenu-toggle-width;\n }\n\n // Submenu toggle\n .submenu-toggle {\n position: absolute;\n top: 0;\n #{$global-right}: 0;\n\n width: $accordionmenu-submenu-toggle-width;\n height: $accordionmenu-submenu-toggle-height;\n\n cursor: pointer;\n\n border-#{$global-left}: $accordion-submenu-toggle-border;\n\n @if $accordionmenu-submenu-toggle-background {\n background: $accordionmenu-submenu-toggle-background;\n }\n\n // Add the arrow to the toggle\n &::after {\n @include css-triangle($accordionmenu-arrow-size, $accordionmenu-arrow-color, down);\n\n top: 0;\n bottom: 0;\n margin: auto;\n }\n }\n\n // Rotate the arrow when menu is open\n .submenu-toggle[aria-expanded='true']::after {\n transform: scaleY(-1);\n transform-origin: 50% 50%;\n }\n\n .submenu-toggle-text {\n @include element-invisible;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group drilldown\n////\n\n/// Transition property to use for animating menus.\n/// @type Transition\n$drilldown-transition: transform 0.15s linear !default;\n\n/// Adds arrows to drilldown items with submenus, as well as the back button.\n/// @type Boolean\n$drilldown-arrows: true !default;\n\n/// Sets drilldown menu item padding.\n/// @type Number\n$drilldown-padding: $global-menu-padding !default;\n\n/// Sets drilldown menu nested margin\n/// @type Number\n$drilldown-nested-margin: 0 !default;\n\n/// Background color for drilldown top level items.\n/// @type Color\n$drilldown-background: $white !default;\n\n/// Sets drilldown menu item padding in the submenu.\n/// @type Number\n$drilldown-submenu-padding: $drilldown-padding !default;\n\n/// Background color for drilldown submenus.\n/// @type Color\n$drilldown-submenu-background: $white !default;\n\n/// Sets drilldown arrow color if arrow is used.\n/// @type Color\n$drilldown-arrow-color: $primary-color !default;\n\n/// Sets drilldown arrow size if arrow is used.\n/// @type Length\n$drilldown-arrow-size: 6px !default;\n\n@mixin zf-drilldown-left-right-arrows {\n .is-drilldown-submenu-parent > a {\n position: relative;\n\n &::after {\n @include css-triangle($drilldown-arrow-size, $drilldown-arrow-color, $global-right);\n position: absolute;\n top: 50%;\n margin-top: -1 * $drilldown-arrow-size;\n #{$global-right}: 1rem;\n }\n }\n\n &.align-left .is-drilldown-submenu-parent > a::after {\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);\n right: 1rem;\n left: auto;\n }\n\n &.align-right .is-drilldown-submenu-parent > a::after {\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);\n right: auto;\n left: 1rem;\n }\n\n}\n\n@mixin foundation-drilldown-menu {\n // Applied to the Menu container\n .is-drilldown {\n position: relative;\n overflow: hidden;\n\n li {\n display: block;\n }\n\n &.animate-height {\n transition: height 0.5s;\n }\n }\n\n // The top level <ul>\n .drilldown {\n a {\n padding: $drilldown-padding;\n background: $drilldown-background;\n }\n\n // Applied to submenu <ul>s\n .is-drilldown-submenu {\n position: absolute;\n top: 0;\n #{$global-left}: 100%;\n z-index: -1;\n\n width: 100%;\n background: $drilldown-submenu-background;\n transition: $drilldown-transition;\n\n &.is-active {\n z-index: 1;\n display: block;\n transform: translateX(if($global-text-direction == ltr, -100%, 100%));\n }\n\n &.is-closing {\n transform: translateX(if($global-text-direction == ltr, 100%, -100%));\n }\n\n // Submenu item padding\n a {\n padding: $drilldown-submenu-padding;\n }\n }\n\n .nested.is-drilldown-submenu {\n @include menu-nested($drilldown-nested-margin);\n }\n\n .drilldown-submenu-cover-previous {\n min-height: 100%;\n }\n\n @if $drilldown-arrows {\n @include zf-drilldown-left-right-arrows;\n\n .js-drilldown-back > a::before {\n @include css-triangle($drilldown-arrow-size, $drilldown-arrow-color, $global-left);\n display: inline-block;\n vertical-align: middle;\n margin-#{$global-right}: 0.75rem; // Creates space between the arrow and the text\n }\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group dropdown-menu\n////\n\n/// Enables arrows for items with dropdown menus.\n/// @type Boolean\n$dropdownmenu-arrows: true !default;\n\n/// Sets dropdown menu arrow color if arrow is used.\n/// @type Color\n$dropdownmenu-arrow-color: $anchor-color !default;\n\n/// Sets dropdown menu arrow size if arrow is used.\n/// @type Length\n$dropdownmenu-arrow-size: 6px !default;\n\n/// Sets dropdown menu arrow padding for aligning the arrow correctly.\n/// @type Length\n$dropdownmenu-arrow-padding: 1.5rem !default;\n\n/// Minimum width of dropdown sub-menus.\n/// @type Length\n$dropdownmenu-min-width: 200px !default;\n\n/// Background color for top level items.\n/// @type Color\n$dropdownmenu-background: null !default;\n\n/// Background color for dropdowns.\n/// @type Color\n$dropdownmenu-submenu-background: $white !default;\n\n/// Padding for top level items.\n/// @type Number\n$dropdownmenu-padding: $global-menu-padding !default;\n\n/// Sets dropdown menu nested margin\n/// @type Number\n$dropdownmenu-nested-margin: 0 !default;\n\n/// Padding for sub-menu items.\n/// @type Number\n$dropdownmenu-submenu-padding: $dropdownmenu-padding !default;\n\n/// Border for dropdown sub-menus.\n/// @type List\n$dropdownmenu-border: 1px solid $medium-gray !default;\n\n// Border width for dropdown sub-menus.\n// Used to adjust top margin of a sub-menu if a border is used.\n// @type Length\n$dropdownmenu-border-width: nth($dropdownmenu-border, 1);\n\n/// Text color of an active dropdown menu item. Explicit override for menu defaults\n/// @type Color\n$dropdown-menu-item-color-active: get-color(primary) !default;\n\n/// Background color of an active dropdown menu item. Explicit override for menu defaults\n/// @type Color\n$dropdown-menu-item-background-active: transparent !default;\n\n@mixin zf-dropdown-left-right-arrows {\n > a::after {\n #{$global-right}: 14px;\n }\n\n &.opens-left > a::after {\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);\n right: auto;\n left: 5px;\n }\n\n &.opens-right > a::after {\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);\n }\n}\n\n@mixin dropdown-menu-direction($dir: horizontal) {\n @if $dir == horizontal {\n > li.opens-left { // sass-lint:disable-line no-qualifying-elements\n > .is-dropdown-submenu {\n top: 100%;\n right: 0;\n left: auto;\n }\n }\n\n > li.opens-right { // sass-lint:disable-line no-qualifying-elements\n > .is-dropdown-submenu {\n top: 100%;\n right: auto;\n left: 0;\n }\n }\n\n @if $dropdownmenu-arrows {\n > li.is-dropdown-submenu-parent > a { // sass-lint:disable-line no-qualifying-elements\n position: relative;\n padding-#{$global-right}: $dropdownmenu-arrow-padding;\n }\n\n > li.is-dropdown-submenu-parent > a::after { // sass-lint:disable-line no-qualifying-elements\n @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, down);\n #{$global-right}: 5px;\n #{$global-left}: auto;\n margin-top: -1 * ($dropdownmenu-arrow-size * 0.5);\n }\n }\n }\n @else if $dir == vertical {\n > li {\n .is-dropdown-submenu {\n top: 0;\n }\n\n &.opens-left {\n > .is-dropdown-submenu {\n top: 0;\n right: 100%;\n left: auto;\n }\n }\n\n &.opens-right {\n > .is-dropdown-submenu {\n right: auto;\n left: 100%;\n }\n }\n\n @if $dropdownmenu-arrows {\n @include zf-dropdown-left-right-arrows;\n }\n }\n }\n @else {\n @warn 'The direction used for dropdown-menu-direction() must be horizontal or vertical.';\n }\n}\n\n@mixin foundation-dropdown-menu {\n .dropdown.menu {\n @include dropdown-menu-direction(horizontal);\n\n a {\n @include disable-mouse-outline;\n }\n\n // Top-level item\n > li > a {\n background: $dropdownmenu-background;\n padding: $dropdownmenu-padding;\n }\n\n // Top-level item active state\n > li.is-active > a {\n background: $dropdown-menu-item-background-active;\n color: $dropdown-menu-item-color-active;\n }\n\n .no-js & ul {\n display: none;\n }\n\n .nested.is-dropdown-submenu {\n @include menu-nested($dropdownmenu-nested-margin);\n }\n\n &.vertical {\n @include dropdown-menu-direction(vertical);\n }\n\n @each $size in $breakpoint-classes {\n @if $size != $-zf-zero-breakpoint {\n @include breakpoint($size) {\n &.#{$size}-horizontal {\n @include dropdown-menu-direction(horizontal);\n }\n\n &.#{$size}-vertical {\n @include dropdown-menu-direction(vertical);\n }\n }\n }\n }\n\n &.align-right {\n .is-dropdown-submenu.first-sub {\n top: 100%;\n right: 0;\n left: auto;\n }\n }\n }\n\n .is-dropdown-menu.vertical {\n width: 100px;\n\n &.align-right {\n float: right;\n }\n }\n\n .is-dropdown-submenu-parent {\n position: relative;\n\n a::after {\n position: absolute;\n top: 50%;\n #{$global-right}: 5px;\n #{$global-left}: auto;\n margin-top: -1 * $dropdownmenu-arrow-size;\n }\n\n &.opens-inner > .is-dropdown-submenu {\n\n top: 100%;\n @if $global-text-direction == 'rtl' {\n right: auto;\n }\n @else {\n left: auto;\n }\n }\n\n &.opens-left > .is-dropdown-submenu {\n right: 100%;\n left: auto;\n }\n\n &.opens-right > .is-dropdown-submenu {\n right: auto;\n left: 100%;\n }\n }\n\n .is-dropdown-submenu {\n position: absolute;\n top: 0;\n #{$global-left}: 100%;\n z-index: 1;\n\n display: none;\n min-width: $dropdownmenu-min-width;\n\n border: $dropdownmenu-border;\n background: $dropdownmenu-submenu-background;\n\n .dropdown & a {\n padding: $dropdownmenu-submenu-padding;\n }\n\n .is-dropdown-submenu-parent {\n @if $dropdownmenu-arrows {\n @include zf-dropdown-left-right-arrows;\n }\n }\n\n @if (type-of($dropdownmenu-border-width) == 'number') {\n .is-dropdown-submenu {\n margin-top: (-$dropdownmenu-border-width);\n }\n }\n\n > li {\n width: 100%;\n }\n\n // [TODO] Cut back specificity\n //&:not(.js-dropdown-nohover) > .is-dropdown-submenu-parent:hover > &, // why is this line needed? Opening is handled by JS and this causes some ugly flickering when the sub is re-positioned automatically...\n &.js-dropdown-active {\n display: block;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group off-canvas\n////\n\n/// Width map of a left/right off-canvas panel.\n/// @type Map\n$offcanvas-sizes: (\n small: 250px,\n) !default;\n\n/// Height map of a top/bottom off-canvas panel.\n/// @type Map\n$offcanvas-vertical-sizes: (\n small: 250px,\n) !default;\n\n/// Background color of an off-canvas panel.\n/// @type Color\n$offcanvas-background: $light-gray !default;\n\n/// Box shadow for the off-canvas overlap panel.\n/// @type Shadow\n$offcanvas-shadow: 0 0 10px rgba($black, 0.7) !default;\n\n/// Inner box shadow size for the off-canvas push panel.\n/// @type Number\n$offcanvas-inner-shadow-size: 20px !default;\n\n/// Inner box shadow color for the off-canvas push panel.\n/// @type Color\n$offcanvas-inner-shadow-color: rgba($black, 0.25) !default;\n\n/// Z-index of an off-canvas content overlay.\n/// @type Number\n$offcanvas-overlay-zindex: 11 !default;\n\n/// Z-index of an off-canvas panel with the `push` transition.\n/// @type Number\n$offcanvas-push-zindex: 12 !default;\n\n/// Z-index of an off-canvas panel with the `overlap` transition.\n/// @type Number\n$offcanvas-overlap-zindex: 13 !default;\n\n/// Z-index of an off-canvas panel using the `reveal-for-*` classes or mixin.\n/// @type Number\n$offcanvas-reveal-zindex: 12 !default;\n\n/// Length of the animation on an off-canvas panel.\n/// @type Number\n$offcanvas-transition-length: 0.5s !default;\n\n/// Timing function of the animation on an off-canvas panel.\n/// @type Keyword\n$offcanvas-transition-timing: ease !default;\n\n/// If `true`, a revealed off-canvas will be fixed-position, and scroll with the screen.\n/// @type Bool\n$offcanvas-fixed-reveal: true !default;\n\n/// Background color for the overlay that appears when an off-canvas panel is open.\n/// @type Color\n$offcanvas-exit-background: rgba($white, 0.25) !default;\n\n/// CSS class used for the main content area. The off-canvas mixins use this to target the page content.\n$maincontent-class: 'off-canvas-content' !default;\n\n/// Adds baseline styles for off-canvas. This CSS is required to make the other pieces work.\n@mixin off-canvas-basics {\n\n /// Transform deprecated size settings into map & show warning\n @if variable-exists(offcanvas-size) {\n $offcanvas-sizes: (small: $offcanvas-size, medium: $offcanvas-size) !global;\n @warn '$offcanvas-size is deprecated and not used anymore! Please update your settings and use the map $offcanvas-sizes instead';\n }\n @if variable-exists(offcanvas-vertical-size) {\n $offcanvas-vertical-sizes: (small: $offcanvas-vertical-size, medium: $offcanvas-vertical-size) !global;\n @warn '$offcanvas-vertical-size is deprecated and not used anymore! Please update your settings and use the map $offcanvas-vertical-sizes instead';\n }\n\n // Checks the z-indexes and increase them due to backwards compatibility.\n // This is necessary because the overlay's z-index is new since v6.4 and may be identical to the user custom settings of the push z-index.\n @if $offcanvas-push-zindex <= $offcanvas-overlay-zindex { $offcanvas-push-zindex: $offcanvas-overlay-zindex + 1 !global; }\n @if $offcanvas-overlap-zindex <= $offcanvas-push-zindex { $offcanvas-overlap-zindex: $offcanvas-push-zindex + 1 !global; }\n @if $offcanvas-reveal-zindex <= $offcanvas-overlay-zindex { $offcanvas-reveal-zindex: $offcanvas-overlay-zindex + 1 !global; }\n\n // Hides overflow on body when an off-canvas panel is open.\n .is-off-canvas-open {\n overflow: hidden;\n }\n\n // Off-canvas overlay (generated by JavaScript)\n .js-off-canvas-overlay {\n position: absolute;\n top: 0;\n left: 0;\n z-index: $offcanvas-overlay-zindex;\n\n width: 100%;\n height: 100%;\n\n transition: opacity $offcanvas-transition-length $offcanvas-transition-timing, visibility $offcanvas-transition-length $offcanvas-transition-timing;\n\n background: $offcanvas-exit-background;\n\n opacity: 0;\n visibility: hidden;\n\n overflow: hidden;\n\n &.is-visible {\n opacity: 1;\n visibility: visible;\n }\n\n &.is-closable {\n cursor: pointer;\n }\n\n &.is-overlay-absolute {\n position: absolute;\n }\n\n &.is-overlay-fixed {\n position: fixed;\n }\n }\n}\n\n// Adds basic styles for an off-canvas wrapper.\n@mixin off-canvas-wrapper() {\n position: relative;\n overflow: hidden;\n}\n\n/// Adds basic styles for an off-canvas panel.\n@mixin off-canvas-base(\n $background: $offcanvas-background,\n $transition: $offcanvas-transition-length $offcanvas-transition-timing,\n $fixed: true\n) {\n // Set the off-canvas z-index.\n z-index: $offcanvas-push-zindex;\n transition: transform $transition;\n backface-visibility: hidden;\n background: $background;\n\n @if $fixed == true {\n position: fixed;\n }\n @else {\n position: absolute;\n }\n\n @include disable-mouse-outline;\n\n // Increase CSS specificity\n &.is-transition-push {\n z-index: $offcanvas-push-zindex;\n }\n\n // Hide inactive off-canvas within the content that have the same position\n &.is-closed {\n visibility: hidden;\n }\n\n // Overlap only styles.\n &.is-transition-overlap {\n z-index: $offcanvas-overlap-zindex;\n\n &.is-open {\n box-shadow: $offcanvas-shadow;\n }\n }\n\n // Sets transform to 0 to show an off-canvas panel.\n &.is-open {\n transform: translate(0, 0);\n }\n}\n\n/// Adds styles to position an off-canvas panel to the left/right/top/bottom.\n@mixin off-canvas-position(\n $position: left,\n $orientation: horizontal,\n $sizes: if($orientation == horizontal, $offcanvas-sizes, $offcanvas-vertical-sizes)\n) {\n @if $position == left {\n top: 0;\n left: 0;\n height: 100%;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n width: $size;\n transform: translateX(-$size);\n }\n }\n\n // Sets the position for nested off-canvas element\n @at-root .#{$maincontent-class} .off-canvas.position-#{$position} {\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateX(-$size);\n }\n }\n &.is-transition-overlap.is-open {\n transform: translate(0, 0);\n }\n }\n\n // Sets the open position for the content\n @at-root .#{$maincontent-class}.is-open-#{$position} {\n &.has-transition-push {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateX($size);\n }\n }\n }\n }\n }\n @else if $position == right {\n top: 0;\n right: 0;\n height: 100%;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n width: $size;\n transform: translateX($size);\n }\n }\n\n // Sets the position for nested off-canvas element\n @at-root .#{$maincontent-class} .off-canvas.position-#{$position} {\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateX($size);\n }\n }\n &.is-transition-overlap.is-open {\n transform: translate(0, 0);\n }\n }\n\n // Sets the open position for the content\n @at-root .#{$maincontent-class}.is-open-#{$position} {\n &.has-transition-push {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateX(-$size);\n }\n }\n }\n }\n }\n @else if $position == top {\n top: 0;\n left: 0;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n height: $size;\n transform: translateY(-$size);\n }\n }\n\n // Sets the position for nested off-canvas element\n @at-root .#{$maincontent-class} .off-canvas.position-#{$position} {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateY(-$size);\n }\n }\n &.is-transition-overlap.is-open {\n transform: translate(0, 0);\n }\n }\n\n // Sets the open position for the content\n @at-root .#{$maincontent-class}.is-open-#{$position} {\n &.has-transition-push {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateY($size);\n }\n }\n }\n }\n }\n @else if $position == bottom {\n bottom: 0;\n left: 0;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n height: $size;\n transform: translateY($size);\n }\n }\n\n // Sets the position for nested off-canvas element\n @at-root .#{$maincontent-class} .off-canvas.position-#{$position} {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateY($size);\n }\n }\n &.is-transition-overlap.is-open {\n transform: translate(0, 0);\n }\n }\n\n // Sets the open position for the content\n @at-root .#{$maincontent-class}.is-open-#{$position} {\n &.has-transition-push {\n @each $name, $size in $sizes {\n @include breakpoint($name) {\n transform: translateY(-$size);\n }\n }\n }\n }\n }\n\n // If $offcanvas-inner-shadow-size is set, add inner box-shadow.\n // This mimics the off-canvas panel having a lower z-index, without having to have one.\n @if $offcanvas-inner-shadow-size {\n &.is-transition-push {\n @if $position == left {\n @include inner-side-shadow(right, $offcanvas-inner-shadow-size, $offcanvas-inner-shadow-color);\n }\n @else if $position == right {\n @include inner-side-shadow(left, $offcanvas-inner-shadow-size, $offcanvas-inner-shadow-color);\n }\n @else if $position == top {\n @include inner-side-shadow(bottom, $offcanvas-inner-shadow-size, $offcanvas-inner-shadow-color);\n }\n @else if $position == bottom {\n @include inner-side-shadow(top, $offcanvas-inner-shadow-size, $offcanvas-inner-shadow-color);\n }\n }\n }\n\n}\n\n/// Sets the styles for the content container.\n@mixin off-canvas-content() {\n transform: none;\n backface-visibility: hidden;\n\n // Bind to has-transition-X class to prevent transition for transform:none\n &.has-transition-overlap,\n &.has-transition-push {\n transition: transform $offcanvas-transition-length $offcanvas-transition-timing;\n }\n\n // Transform scope until the element is closed (makes sure transitionend gets triggered)\n &.has-transition-push {\n transform: translate(0, 0);\n }\n\n // Consider element & content, nested in another content\n .off-canvas.is-open {\n transform: translate(0, 0);\n }\n}\n\n/// Adds styles that reveal an off-canvas panel.\n@mixin off-canvas-reveal(\n $position: left,\n $zindex: $offcanvas-reveal-zindex,\n $content: $maincontent-class,\n $breakpoint: small\n) {\n transform: none;\n z-index: $zindex;\n transition: none;\n visibility: visible;\n\n @if not $offcanvas-fixed-reveal {\n position: absolute;\n }\n\n .close-button {\n display: none;\n }\n\n // Consider revealed element is nested in content\n .#{$maincontent-class} & {\n transform: none;\n }\n\n @at-root .#{$content}.has-reveal-#{$position} {\n margin-#{$position}: -zf-get-bp-val($offcanvas-sizes, $breakpoint);\n }\n\n // backwards compatibility (prior to v6.4)\n & ~ .#{$content} {\n margin-#{$position}: -zf-get-bp-val($offcanvas-sizes, $breakpoint);\n }\n}\n\n/// Overrides the off-canvas styles\n@mixin in-canvas() {\n visibility: visible;\n height: auto;\n position: static;\n background: none;\n width: auto;\n overflow: visible;\n transition: none;\n\n // Increase CSS specificity\n &.position-left,\n &.position-right,\n &.position-top,\n &.position-bottom {\n box-shadow: none;\n transform: none;\n }\n\n .close-button {\n display: none;\n }\n}\n\n@mixin foundation-off-canvas {\n @include off-canvas-basics;\n\n // Off-canvas wrapper\n .off-canvas-wrapper {\n @include off-canvas-wrapper;\n }\n\n // Off-canvas container\n .off-canvas {\n @include off-canvas-base;\n\n // Force position absolute for nested off-canvas because fixed doesn't work for push transition within the transform scope.\n // @at-root .#{$maincontent-class} & {\n // // NOTE: since overlap transition is currently forced if nested, there's no need to force position absolute until nested push transition is supported.\n // position: absolute;\n // }\n }\n\n // Off-canvas container with absolute position\n .off-canvas-absolute {\n @include off-canvas-base($fixed: false);\n }\n\n // Off-canvas position classes\n .position-left { @include off-canvas-position(left, horizontal); }\n .position-right { @include off-canvas-position(right, horizontal); }\n .position-top { @include off-canvas-position(top, vertical); }\n .position-bottom { @include off-canvas-position(bottom, vertical); }\n\n .off-canvas-content {\n @include off-canvas-content;\n }\n\n // Reveal off-canvas panel on larger screens\n @each $name, $value in $breakpoint-classes {\n @if $name != $-zf-zero-breakpoint {\n @include breakpoint($name) {\n .position-left.reveal-for-#{$name} {\n @include off-canvas-reveal(left, $offcanvas-reveal-zindex, $maincontent-class, $name);\n }\n\n .position-right.reveal-for-#{$name} {\n @include off-canvas-reveal(right, $offcanvas-reveal-zindex, $maincontent-class, $name);\n }\n\n .position-top.reveal-for-#{$name} {\n @include off-canvas-reveal(top, $offcanvas-reveal-zindex, $maincontent-class, $name);\n }\n\n .position-bottom.reveal-for-#{$name} {\n @include off-canvas-reveal(bottom, $offcanvas-reveal-zindex, $maincontent-class, $name);\n }\n }\n }\n }\n\n // Move in-canvas for larger screens\n @each $name, $value in $breakpoint-classes {\n @if $name != $-zf-zero-breakpoint {\n @include breakpoint($name) {\n .off-canvas.in-canvas-for-#{$name} {\n @include in-canvas;\n }\n }\n }\n }\n}\n\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n@mixin foundation-sticky {\n .sticky-container {\n position: relative;\n }\n\n .sticky {\n position: relative;\n z-index: 0;\n transform: translate3d(0, 0, 0);\n }\n\n .sticky.is-stuck {\n position: fixed;\n z-index: 5;\n width: 100%;\n\n &.is-at-top {\n top: 0;\n }\n\n &.is-at-bottom {\n bottom: 0;\n }\n }\n\n .sticky.is-anchored {\n position: relative;\n right: auto;\n left: auto;\n\n &.is-at-bottom {\n bottom: 0;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group title-bar\n////\n\n/// Background color of a title bar.\n/// @type Color\n$titlebar-background: $black !default;\n\n/// Color of text inside a title bar.\n/// @type Color\n$titlebar-color: $white !default;\n\n/// Padding inside a title bar.\n/// @type Length\n$titlebar-padding: 0.5rem !default;\n\n/// Font weight of text inside a title bar.\n/// @type Weight\n$titlebar-text-font-weight: bold !default;\n\n/// Color of menu icons inside a title bar.\n/// @type Color\n$titlebar-icon-color: $white !default;\n\n/// Color of menu icons inside a title bar on hover.\n/// @type Color\n$titlebar-icon-color-hover: $medium-gray !default;\n\n/// Spacing between the menu icon and text inside a title bar.\n/// @type Length\n$titlebar-icon-spacing: 0.25rem !default;\n\n@mixin foundation-title-bar {\n .title-bar {\n padding: $titlebar-padding;\n background: $titlebar-background;\n color: $titlebar-color;\n\n @if $global-flexbox {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n }\n @else {\n @include clearfix;\n }\n\n .menu-icon {\n margin-#{$global-left}: $titlebar-icon-spacing;\n margin-#{$global-right}: $titlebar-icon-spacing;\n }\n }\n\n @if $global-flexbox {\n .title-bar-left,\n .title-bar-right {\n flex: 1 1 0px; // sass-lint:disable-line zero-unit\n }\n\n .title-bar-right {\n text-align: right;\n }\n }\n @else {\n .title-bar-left {\n float: left;\n }\n\n .title-bar-right {\n float: right;\n text-align: right;\n }\n }\n\n .title-bar-title {\n display: inline-block;\n vertical-align: middle;\n font-weight: $titlebar-text-font-weight;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group top-bar\n////\n\n/// Padding for the top bar.\n/// @type Number\n$topbar-padding: 0.5rem !default;\n\n/// Background color for the top bar. This color also cascades to menus within the top bar.\n/// @type Color\n$topbar-background: $light-gray !default;\n\n/// Background color submenus within the top bar. Usefull if $topbar-background is transparent.\n/// @type Color\n$topbar-submenu-background: $topbar-background !default;\n\n/// Spacing for the top bar title.\n/// @type Number\n$topbar-title-spacing: 0.5rem 1rem 0.5rem 0 !default;\n\n/// Maximum width of `<input>` elements inside the top bar.\n/// @type Number\n$topbar-input-width: 200px !default;\n\n/// Breakpoint at which top bar switches from mobile to desktop view.\n/// @type Breakpoint\n$topbar-unstack-breakpoint: medium !default;\n\n/// Adds styles for a top bar container.\n@mixin top-bar-container {\n padding: $topbar-padding;\n\n @if $global-flexbox {\n display: flex;\n flex-wrap: nowrap;\n justify-content: space-between;\n align-items: center;\n }\n @else {\n @include clearfix;\n }\n\n &,\n ul {\n background-color: $topbar-background;\n }\n\n // Check if $topbar-background is differnt from $topbar-background-submenu\n @if ($topbar-background != $topbar-submenu-background) {\n ul ul {\n background-color: $topbar-submenu-background;\n }\n }\n\n // Restrain width of inputs by default to make them easier to arrange\n input {\n max-width: $topbar-input-width;\n margin-#{$global-right}: 1rem;\n }\n\n // The above styles shouldn't apply to input group fields\n .input-group-field {\n width: 100%;\n margin-#{$global-right}: 0;\n }\n\n input.button { // sass-lint:disable-line no-qualifying-elements\n width: auto;\n }\n}\n\n/// Makes sections of a top bar stack on top of each other.\n@mixin top-bar-stacked {\n @if $global-flexbox {\n flex-wrap: wrap;\n\n // Sub-sections\n .top-bar-left,\n .top-bar-right {\n flex: 0 0 100%;\n max-width: 100%;\n }\n }\n @else {\n // Sub-sections\n .top-bar-left,\n .top-bar-right {\n width: 100%;\n }\n }\n}\n\n/// Undoes the CSS applied by the `top-bar-stacked()` mixin.\n@mixin top-bar-unstack {\n @if $global-flexbox {\n flex-wrap: nowrap;\n\n .top-bar-left {\n flex: 1 1 auto;\n margin-right: auto;\n }\n\n .top-bar-right {\n flex: 0 1 auto;\n margin-left: auto;\n }\n }\n @else {\n .top-bar-left,\n .top-bar-right {\n width: auto;\n }\n }\n}\n\n@mixin foundation-top-bar {\n .top-bar {\n @include top-bar-container;\n }\n .top-bar {\n // Stack on small screens by default\n @include top-bar-stacked;\n }\n // Top bar container\n .top-bar {\n @include breakpoint($topbar-unstack-breakpoint) {\n @include top-bar-unstack;\n }\n\n // Generate classes for stacking on each screen size (defined in $breakpoint-classes)\n @each $size in $breakpoint-classes {\n @if $size != $-zf-zero-breakpoint {\n &.stacked-for-#{$size} {\n @include breakpoint($size down) {\n @include top-bar-stacked;\n }\n }\n }\n }\n }\n\n // Sub-sections\n @if $global-flexbox {\n .top-bar-title {\n flex: 0 0 auto;\n margin: $topbar-title-spacing;\n }\n\n .top-bar-left,\n .top-bar-right {\n flex: 0 0 auto;\n }\n }\n @else {\n .top-bar-title {\n display: inline-block;\n float: left;\n padding: $topbar-title-spacing;\n\n .menu-icon {\n bottom: 2px;\n }\n }\n\n .top-bar-left {\n float: left;\n }\n\n .top-bar-right {\n float: right;\n }\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group float\n////\n\n@mixin foundation-float-classes {\n .float-left {\n float: left !important;\n }\n\n .float-right {\n float: right !important;\n }\n\n .float-center {\n display: block;\n margin-right: auto;\n margin-left: auto;\n }\n\n .clearfix {\n @include clearfix;\n }\n}\n","// Foundation for Sites\n// https://get.foundation\n// Licensed under MIT Open Source\n\n////\n/// @group Flexbox Utilities\n////\n//\n/// Default value for the count of source ordering`\n/// @type Number\n$flex-source-ordering-count: 6 !default;\n\n/// Quickly disable/enable Responsive breakpoints for Vanilla Flex Helpers.\n/// @type Boolean\n$flexbox-responsive-breakpoints: true !default;\n\n@mixin flex-helpers {\n .flex-container {\n @include flex;\n }\n\n .flex-child-auto {\n flex: 1 1 auto;\n }\n\n .flex-child-grow {\n flex: 1 0 auto;\n }\n\n .flex-child-shrink {\n flex: 0 1 auto;\n }\n\n @each $dir, $prop in $-zf-flex-direction {\n .flex-dir-#{$dir} {\n @include flex-direction($prop);\n }\n }\n\n @if ($flexbox-responsive-breakpoints) {\n // Loop through Responsive Breakpoints\n @each $size in $breakpoint-classes {\n @include breakpoint($size) {\n @if $size != $-zf-zero-breakpoint {\n .#{$size}-flex-container {\n @include flex;\n }\n\n .#{$size}-flex-child-auto {\n flex: 1 1 auto;\n }\n\n .#{$size}-flex-child-grow {\n flex: 1 0 auto;\n }\n\n .#{$size}-flex-child-shrink {\n flex: 0 1 auto;\n }\n\n @each $dir, $prop in $-zf-flex-direction {\n .#{$size}-flex-dir-#{$dir} {\n @include flex-direction($prop);\n }\n }\n }\n }\n }\n }\n}\n\n@mixin foundation-flex-classes {\n // Horizontal alignment using justify-content\n @each $hdir, $prop in $-zf-flex-justify {\n .align-#{$hdir} {\n @include flex-align($x: $hdir);\n }\n }\n \n // Horizontal alignment Specifically for Vertical Menu\n @each $hdir, $prop in map-remove($-zf-flex-justify, 'justify', 'spaced') {\n .align-#{$hdir} {\n &.vertical {\n &.menu > li > a {\n @include flex-align($x: $hdir);\n }\n }\n }\n }\n\n // Vertical alignment using align-items and align-self\n @each $vdir, $prop in $-zf-flex-align {\n .align-#{$vdir} {\n @include flex-align($y: $vdir);\n }\n\n .align-self-#{$vdir} {\n @include flex-align-self($y: $vdir);\n }\n }\n\n // Central alignment of content\n .align-center-middle {\n @include flex-align($x: center, $y: middle);\n align-content: center;\n }\n\n // Source ordering\n @include -zf-each-breakpoint {\n @for $i from 1 through $flex-source-ordering-count {\n .#{$-zf-size}-order-#{$i} {\n @include flex-order($i);\n }\n }\n }\n\n // Vanilla Flexbox Helpers\n @include flex-helpers;\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/// Hide an element by default, only displaying it above a certain screen size.\n/// @param {Keyword} $size - Breakpoint to use. **Must be a breakpoint defined in `$breakpoints`.**\n@mixin show-for($size) {\n $size: map-get($breakpoints, $size);\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 $size: -zf-bp-to-em($size) - 0.00125;\n\n @include breakpoint($size down) {\n display: none !important;\n }\n}\n\n/// Hide an element by default, only displaying it within a certain breakpoint.\n/// @param {Keyword} $size - Breakpoint to use. **Must be a breakpoint defined in `$breakpoints`.**\n@mixin show-for-only($size) {\n $lower-bound-size: map-get($breakpoints, $size);\n $upper-bound-size: -zf-map-next($breakpoints, $size);\n\n // more often than not this will be correct, just one time round the loop it won't so set in scope here\n $lower-bound: -zf-bp-to-em($lower-bound-size) - 0.00125;\n // test actual lower-bound-size, if 0 set it to 0em\n @if strip-unit($lower-bound-size) == 0 {\n $lower-bound: -zf-bp-to-em($lower-bound-size);\n }\n\n @if $upper-bound-size == null {\n @media screen and (max-width: $lower-bound) {\n display: none !important;\n }\n }\n @else {\n $upper-bound: -zf-bp-to-em($upper-bound-size);\n\n @media screen and (max-width: $lower-bound), screen and (min-width: $upper-bound) {\n display: none !important;\n }\n }\n}\n\n\n/// Show an element by default, and hide it above a certain screen size.\n/// @param {Keyword} $size - Breakpoint to use. **Must be a breakpoint defined in `$breakpoints`.**\n@mixin hide-for($size) {\n @include breakpoint($size) {\n display: none !important;\n }\n}\n\n/// Show an element by default, and hide it above a certain screen size.\n/// @param {Keyword} $size - Breakpoint to use. **Must be a breakpoint defined in `$breakpoints`.**\n@mixin hide-for-only($size) {\n @include breakpoint($size only) {\n display: none !important;\n }\n}\n\n@mixin foundation-visibility-classes {\n // Basic hiding classes\n .hide {\n display: none !important;\n }\n\n .invisible {\n visibility: hidden;\n }\n .visible {\n visibility: visible;\n }\n\n // Responsive visibility classes\n @each $size in $breakpoint-classes {\n @if $size != $-zf-zero-breakpoint {\n .hide-for-#{$size} {\n @include hide-for($size);\n }\n\n .show-for-#{$size} {\n @include show-for($size);\n }\n }\n\n .hide-for-#{$size}-only {\n @include hide-for-only($size);\n }\n\n .show-for-#{$size}-only {\n @include show-for-only($size);\n }\n }\n\n // Screen reader visibility classes\n // Need a \"hide-for-sr\" class? Add aria-hidden='true' to the element\n .show-for-sr,\n .show-on-focus {\n @include element-invisible;\n }\n\n // Only display the element when it's focused\n .show-on-focus {\n &:active,\n &:focus {\n @include element-invisible-off;\n }\n }\n\n // Landscape and portrait visibility\n .show-for-landscape,\n .hide-for-portrait {\n display: block !important;\n\n @include breakpoint(landscape) {\n display: block !important;\n }\n\n @include breakpoint(portrait) {\n display: none !important;\n }\n }\n\n .hide-for-landscape,\n .show-for-portrait {\n display: none !important;\n\n @include breakpoint(landscape) {\n display: none !important;\n }\n\n @include breakpoint(portrait) {\n display: block !important;\n }\n }\n\n // Dark Mode Visibility\n .show-for-dark-mode {\n display: none;\n }\n .hide-for-dark-mode {\n display: block;\n }\n @media screen and (prefers-color-scheme: dark) {\n .show-for-dark-mode {\n display: block !important;\n }\n .hide-for-dark-mode {\n display: none !important;\n }\n }\n\n // IE10+ Visibility\n .show-for-ie {\n display: none;\n }\n @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n .show-for-ie {\n display: block !important;\n }\n .hide-for-ie {\n display: none !important;\n }\n }\n\n // Sticky Visibility\n .show-for-sticky {\n display: none;\n }\n .is-stuck .show-for-sticky {\n display: block;\n }\n .is-stuck .hide-for-sticky {\n display: none;\n }\n}\n"]}
|