@codeforamerica/marcomms-design-system 1.1.0 → 1.1.2
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.
- package/dist/index.js +1 -1
- package/package.json +14 -15
- package/src/core/colors.mdx +1 -1
- package/src/core/grid.mdx +1 -1
- package/src/core/grid.scss +402 -7
- package/src/core/typography.mdx +1 -1
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
(()=>{"use strict";const n=globalThis,e=n.ShadowRoot&&(void 0===n.ShadyCSS||n.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,t=Symbol(),r=new WeakMap;class i{constructor(n,e,r){if(this._$cssResult$=!0,r!==t)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=n,this.t=e}get styleSheet(){let n=this.o;const t=this.t;if(e&&void 0===n){const e=void 0!==t&&1===t.length;e&&(n=r.get(t)),void 0===n&&((this.o=n=new CSSStyleSheet).replaceSync(this.cssText),e&&r.set(t,n))}return n}toString(){return this.cssText}}const o=(n,...e)=>{const r=1===n.length?n[0]:e.reduce(((e,t,r)=>e+(n=>{if(!0===n._$cssResult$)return n.cssText;if("number"==typeof n)return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(t)+n[r+1]),n[0]);return new i(r,n,t)},a=(t,r)=>{if(e)t.adoptedStyleSheets=r.map((n=>n instanceof CSSStyleSheet?n:n.styleSheet));else for(const e of r){const r=document.createElement("style"),i=n.litNonce;void 0!==i&&r.setAttribute("nonce",i),r.textContent=e.cssText,t.appendChild(r)}},s=e?n=>n:n=>n instanceof CSSStyleSheet?(n=>{let e="";for(const t of n.cssRules)e+=t.cssText;return(n=>new i("string"==typeof n?n:n+"",void 0,t))(e)})(n):n,{is:l,defineProperty:c,getOwnPropertyDescriptor:d,getOwnPropertyNames:h,getOwnPropertySymbols:u,getPrototypeOf:p}=Object,f=globalThis,v=f.trustedTypes,m=v?v.emptyScript:"",g=f.reactiveElementPolyfillSupport,b=(n,e)=>n,w={toAttribute(n,e){switch(e){case Boolean:n=n?m:null;break;case Object:case Array:n=null==n?n:JSON.stringify(n)}return n},fromAttribute(n,e){let t=n;switch(e){case Boolean:t=null!==n;break;case Number:t=null===n?null:Number(n);break;case Object:case Array:try{t=JSON.parse(n)}catch(n){t=null}}return t}},y=(n,e)=>!l(n,e),x={attribute:!0,type:String,converter:w,reflect:!1,hasChanged:y};Symbol.metadata??=Symbol("metadata"),f.litPropertyMetadata??=new WeakMap;class k extends HTMLElement{static addInitializer(n){this._$Ei(),(this.l??=[]).push(n)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(n,e=x){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(n,e),!e.noAccessor){const t=Symbol(),r=this.getPropertyDescriptor(n,t,e);void 0!==r&&c(this.prototype,n,r)}}static getPropertyDescriptor(n,e,t){const{get:r,set:i}=d(this.prototype,n)??{get(){return this[e]},set(n){this[e]=n}};return{get(){return r?.call(this)},set(e){const o=r?.call(this);i.call(this,e),this.requestUpdate(n,o,t)},configurable:!0,enumerable:!0}}static getPropertyOptions(n){return this.elementProperties.get(n)??x}static _$Ei(){if(this.hasOwnProperty(b("elementProperties")))return;const n=p(this);n.finalize(),void 0!==n.l&&(this.l=[...n.l]),this.elementProperties=new Map(n.elementProperties)}static finalize(){if(this.hasOwnProperty(b("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(b("properties"))){const n=this.properties,e=[...h(n),...u(n)];for(const t of e)this.createProperty(t,n[t])}const n=this[Symbol.metadata];if(null!==n){const e=litPropertyMetadata.get(n);if(void 0!==e)for(const[n,t]of e)this.elementProperties.set(n,t)}this._$Eh=new Map;for(const[n,e]of this.elementProperties){const t=this._$Eu(n,e);void 0!==t&&this._$Eh.set(t,n)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(n){const e=[];if(Array.isArray(n)){const t=new Set(n.flat(1/0).reverse());for(const n of t)e.unshift(s(n))}else void 0!==n&&e.push(s(n));return e}static _$Eu(n,e){const t=e.attribute;return!1===t?void 0:"string"==typeof t?t:"string"==typeof n?n.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((n=>this.enableUpdating=n)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((n=>n(this)))}addController(n){(this._$EO??=new Set).add(n),void 0!==this.renderRoot&&this.isConnected&&n.hostConnected?.()}removeController(n){this._$EO?.delete(n)}_$E_(){const n=new Map,e=this.constructor.elementProperties;for(const t of e.keys())this.hasOwnProperty(t)&&(n.set(t,this[t]),delete this[t]);n.size>0&&(this._$Ep=n)}createRenderRoot(){const n=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return a(n,this.constructor.elementStyles),n}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((n=>n.hostConnected?.()))}enableUpdating(n){}disconnectedCallback(){this._$EO?.forEach((n=>n.hostDisconnected?.()))}attributeChangedCallback(n,e,t){this._$AK(n,t)}_$EC(n,e){const t=this.constructor.elementProperties.get(n),r=this.constructor._$Eu(n,t);if(void 0!==r&&!0===t.reflect){const i=(void 0!==t.converter?.toAttribute?t.converter:w).toAttribute(e,t.type);this._$Em=n,null==i?this.removeAttribute(r):this.setAttribute(r,i),this._$Em=null}}_$AK(n,e){const t=this.constructor,r=t._$Eh.get(n);if(void 0!==r&&this._$Em!==r){const n=t.getPropertyOptions(r),i="function"==typeof n.converter?{fromAttribute:n.converter}:void 0!==n.converter?.fromAttribute?n.converter:w;this._$Em=r,this[r]=i.fromAttribute(e,n.type),this._$Em=null}}requestUpdate(n,e,t){if(void 0!==n){if(t??=this.constructor.getPropertyOptions(n),!(t.hasChanged??y)(this[n],e))return;this.P(n,e,t)}!1===this.isUpdatePending&&(this._$ES=this._$ET())}P(n,e,t){this._$AL.has(n)||this._$AL.set(n,e),!0===t.reflect&&this._$Em!==n&&(this._$Ej??=new Set).add(n)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(n){Promise.reject(n)}const n=this.scheduleUpdate();return null!=n&&await n,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[n,e]of this._$Ep)this[n]=e;this._$Ep=void 0}const n=this.constructor.elementProperties;if(n.size>0)for(const[e,t]of n)!0!==t.wrapped||this._$AL.has(e)||void 0===this[e]||this.P(e,this[e],t)}let n=!1;const e=this._$AL;try{n=this.shouldUpdate(e),n?(this.willUpdate(e),this._$EO?.forEach((n=>n.hostUpdate?.())),this.update(e)):this._$EU()}catch(e){throw n=!1,this._$EU(),e}n&&this._$AE(e)}willUpdate(n){}_$AE(n){this._$EO?.forEach((n=>n.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(n)),this.updated(n)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(n){return!0}update(n){this._$Ej&&=this._$Ej.forEach((n=>this._$EC(n,this[n]))),this._$EU()}updated(n){}firstUpdated(n){}}k.elementStyles=[],k.shadowRootOptions={mode:"open"},k[b("elementProperties")]=new Map,k[b("finalized")]=new Map,g?.({ReactiveElement:k}),(f.reactiveElementVersions??=[]).push("2.0.4");const z=globalThis,j=z.trustedTypes,E=j?j.createPolicy("lit-html",{createHTML:n=>n}):void 0,S="$lit$",_=`lit$${Math.random().toFixed(9).slice(2)}$`,P="?"+_,A=`<${P}>`,$=document,O=()=>$.createComment(""),C=n=>null===n||"object"!=typeof n&&"function"!=typeof n,T=Array.isArray,U="[ \t\n\f\r]",L=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,M=/-->/g,H=/>/g,N=RegExp(`>|${U}(?:([^\\s"'>=/]+)(${U}*=${U}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),R=/'/g,I=/"/g,B=/^(?:script|style|textarea|title)$/i,F=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),q=F(1),V=F(2),D=(F(3),Symbol.for("lit-noChange")),W=Symbol.for("lit-nothing"),Z=new WeakMap,K=$.createTreeWalker($,129);function J(n,e){if(!T(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==E?E.createHTML(e):e}const X=(n,e)=>{const t=n.length-1,r=[];let i,o=2===e?"<svg>":3===e?"<math>":"",a=L;for(let e=0;e<t;e++){const t=n[e];let s,l,c=-1,d=0;for(;d<t.length&&(a.lastIndex=d,l=a.exec(t),null!==l);)d=a.lastIndex,a===L?"!--"===l[1]?a=M:void 0!==l[1]?a=H:void 0!==l[2]?(B.test(l[2])&&(i=RegExp("</"+l[2],"g")),a=N):void 0!==l[3]&&(a=N):a===N?">"===l[0]?(a=i??L,c=-1):void 0===l[1]?c=-2:(c=a.lastIndex-l[2].length,s=l[1],a=void 0===l[3]?N:'"'===l[3]?I:R):a===I||a===R?a=N:a===M||a===H?a=L:(a=N,i=void 0);const h=a===N&&n[e+1].startsWith("/>")?" ":"";o+=a===L?t+A:c>=0?(r.push(s),t.slice(0,c)+S+t.slice(c)+_+h):t+_+(-2===c?e:h)}return[J(n,o+(n[t]||"<?>")+(2===e?"</svg>":3===e?"</math>":"")),r]};class Y{constructor({strings:n,_$litType$:e},t){let r;this.parts=[];let i=0,o=0;const a=n.length-1,s=this.parts,[l,c]=X(n,e);if(this.el=Y.createElement(l,t),K.currentNode=this.el.content,2===e||3===e){const n=this.el.content.firstChild;n.replaceWith(...n.childNodes)}for(;null!==(r=K.nextNode())&&s.length<a;){if(1===r.nodeType){if(r.hasAttributes())for(const n of r.getAttributeNames())if(n.endsWith(S)){const e=c[o++],t=r.getAttribute(n).split(_),a=/([.?@])?(.*)/.exec(e);s.push({type:1,index:i,name:a[2],strings:t,ctor:"."===a[1]?tn:"?"===a[1]?rn:"@"===a[1]?on:en}),r.removeAttribute(n)}else n.startsWith(_)&&(s.push({type:6,index:i}),r.removeAttribute(n));if(B.test(r.tagName)){const n=r.textContent.split(_),e=n.length-1;if(e>0){r.textContent=j?j.emptyScript:"";for(let t=0;t<e;t++)r.append(n[t],O()),K.nextNode(),s.push({type:2,index:++i});r.append(n[e],O())}}}else if(8===r.nodeType)if(r.data===P)s.push({type:2,index:i});else{let n=-1;for(;-1!==(n=r.data.indexOf(_,n+1));)s.push({type:7,index:i}),n+=_.length-1}i++}}static createElement(n,e){const t=$.createElement("template");return t.innerHTML=n,t}}function G(n,e,t=n,r){if(e===D)return e;let i=void 0!==r?t._$Co?.[r]:t._$Cl;const o=C(e)?void 0:e._$litDirective$;return i?.constructor!==o&&(i?._$AO?.(!1),void 0===o?i=void 0:(i=new o(n),i._$AT(n,t,r)),void 0!==r?(t._$Co??=[])[r]=i:t._$Cl=i),void 0!==i&&(e=G(n,i._$AS(n,e.values),i,r)),e}class Q{constructor(n,e){this._$AV=[],this._$AN=void 0,this._$AD=n,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(n){const{el:{content:e},parts:t}=this._$AD,r=(n?.creationScope??$).importNode(e,!0);K.currentNode=r;let i=K.nextNode(),o=0,a=0,s=t[0];for(;void 0!==s;){if(o===s.index){let e;2===s.type?e=new nn(i,i.nextSibling,this,n):1===s.type?e=new s.ctor(i,s.name,s.strings,this,n):6===s.type&&(e=new an(i,this,n)),this._$AV.push(e),s=t[++a]}o!==s?.index&&(i=K.nextNode(),o++)}return K.currentNode=$,r}p(n){let e=0;for(const t of this._$AV)void 0!==t&&(void 0!==t.strings?(t._$AI(n,t,e),e+=t.strings.length-2):t._$AI(n[e])),e++}}class nn{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(n,e,t,r){this.type=2,this._$AH=W,this._$AN=void 0,this._$AA=n,this._$AB=e,this._$AM=t,this.options=r,this._$Cv=r?.isConnected??!0}get parentNode(){let n=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===n?.nodeType&&(n=e.parentNode),n}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(n,e=this){n=G(this,n,e),C(n)?n===W||null==n||""===n?(this._$AH!==W&&this._$AR(),this._$AH=W):n!==this._$AH&&n!==D&&this._(n):void 0!==n._$litType$?this.$(n):void 0!==n.nodeType?this.T(n):(n=>T(n)||"function"==typeof n?.[Symbol.iterator])(n)?this.k(n):this._(n)}O(n){return this._$AA.parentNode.insertBefore(n,this._$AB)}T(n){this._$AH!==n&&(this._$AR(),this._$AH=this.O(n))}_(n){this._$AH!==W&&C(this._$AH)?this._$AA.nextSibling.data=n:this.T($.createTextNode(n)),this._$AH=n}$(n){const{values:e,_$litType$:t}=n,r="number"==typeof t?this._$AC(n):(void 0===t.el&&(t.el=Y.createElement(J(t.h,t.h[0]),this.options)),t);if(this._$AH?._$AD===r)this._$AH.p(e);else{const n=new Q(r,this),t=n.u(this.options);n.p(e),this.T(t),this._$AH=n}}_$AC(n){let e=Z.get(n.strings);return void 0===e&&Z.set(n.strings,e=new Y(n)),e}k(n){T(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let t,r=0;for(const i of n)r===e.length?e.push(t=new nn(this.O(O()),this.O(O()),this,this.options)):t=e[r],t._$AI(i),r++;r<e.length&&(this._$AR(t&&t._$AB.nextSibling,r),e.length=r)}_$AR(n=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);n&&n!==this._$AB;){const e=n.nextSibling;n.remove(),n=e}}setConnected(n){void 0===this._$AM&&(this._$Cv=n,this._$AP?.(n))}}class en{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(n,e,t,r,i){this.type=1,this._$AH=W,this._$AN=void 0,this.element=n,this.name=e,this._$AM=r,this.options=i,t.length>2||""!==t[0]||""!==t[1]?(this._$AH=Array(t.length-1).fill(new String),this.strings=t):this._$AH=W}_$AI(n,e=this,t,r){const i=this.strings;let o=!1;if(void 0===i)n=G(this,n,e,0),o=!C(n)||n!==this._$AH&&n!==D,o&&(this._$AH=n);else{const r=n;let a,s;for(n=i[0],a=0;a<i.length-1;a++)s=G(this,r[t+a],e,a),s===D&&(s=this._$AH[a]),o||=!C(s)||s!==this._$AH[a],s===W?n=W:n!==W&&(n+=(s??"")+i[a+1]),this._$AH[a]=s}o&&!r&&this.j(n)}j(n){n===W?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,n??"")}}class tn extends en{constructor(){super(...arguments),this.type=3}j(n){this.element[this.name]=n===W?void 0:n}}class rn extends en{constructor(){super(...arguments),this.type=4}j(n){this.element.toggleAttribute(this.name,!!n&&n!==W)}}class on extends en{constructor(n,e,t,r,i){super(n,e,t,r,i),this.type=5}_$AI(n,e=this){if((n=G(this,n,e,0)??W)===D)return;const t=this._$AH,r=n===W&&t!==W||n.capture!==t.capture||n.once!==t.once||n.passive!==t.passive,i=n!==W&&(t===W||r);r&&this.element.removeEventListener(this.name,this,t),i&&this.element.addEventListener(this.name,this,n),this._$AH=n}handleEvent(n){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,n):this._$AH.handleEvent(n)}}class an{constructor(n,e,t){this.element=n,this.type=6,this._$AN=void 0,this._$AM=e,this.options=t}get _$AU(){return this._$AM._$AU}_$AI(n){G(this,n)}}const sn=z.litHtmlPolyfillSupport;sn?.(Y,nn),(z.litHtmlVersions??=[]).push("3.2.1");class ln extends k{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const n=super.createRenderRoot();return this.renderOptions.renderBefore??=n.firstChild,n}update(n){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(n),this._$Do=((n,e,t)=>{const r=t?.renderBefore??e;let i=r._$litPart$;if(void 0===i){const n=t?.renderBefore??null;r._$litPart$=i=new nn(e.insertBefore(O(),n),n,void 0,t??{})}return i._$AI(n),i})(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return D}}ln._$litElement$=!0,ln.finalized=!0,globalThis.litElementHydrateSupport?.({LitElement:ln});const cn=globalThis.litElementPolyfillSupport;var dn;cn?.({LitElement:ln}),(globalThis.litElementVersions??=[]).push("4.1.1");const hn=o(dn||(dn=function(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}(["\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n }\n\n *:focus-visible,\n *:target {\n outline: var(--focus-outline);\n position: relative;\n }\n"])));var un,pn,fn,vn,mn,gn,bn,wn,yn,xn,kn;function zn(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function jn(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}class En extends ln{render(){return q(un||(un=zn(["\n <style>\n :host {\n --size: var(--spacing-layout-",", 8rem);\n }\n </style>\n <picture>\n ","\n </picture>\n "])),this.size||"4",this.imageUrl?q(pn||(pn=zn(['\n <img\n src="','"\n loading="lazy"\n alt="','"\n />\n '])),this.imageUrl,this.altText):W)}}function Sn(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function _n(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}jn(En,"properties",{imageUrl:{},altText:{},size:{}}),jn(En,"styles",[hn,o(fn||(fn=zn(["\n :host {\n --bg-color: var(--blue-20);\n\n display: inline-block;\n max-width: 100%;\n }\n\n picture {\n aspect-ratio: 1 / 1;\n background-color: var(--bg-color);\n border-radius: 50%;\n display: block;\n max-width: 100%;\n overflow: hidden;\n width: var(--size);\n }\n\n img {\n display: block;\n height: 100%;\n object-fit: cover;\n width: 100%;\n }\n "])))]),customElements.get("cfa-avatar")||customElements.define("cfa-avatar",En);class Pn extends ln{constructor(){super(),this.shape="1"}blobTemplate(){let n;switch(this.shape){case"1":n=q(vn||(vn=Sn(['<svg\n width="628"\n height="577"\n viewBox="0 0 628 577"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M304.482 3.44206C399.413 -5.50752 504.225 1.17063 567.446 72.5295C633.526 147.115 639.549 256.491 613.992 352.793C589.57 444.814 526.084 523.087 438.164 559.679C355.477 594.092 265.039 570.416 184.315 531.621C103.504 492.784 22.0294 438.546 3.59029 350.826C-14.5863 264.355 39.2746 183.666 97.1329 116.868C151.394 54.223 221.956 11.2221 304.482 3.44206Z"\n />\n </svg>'])));break;case"2":n=q(mn||(mn=Sn(['<svg\n width="580"\n height="592"\n viewBox="0 0 580 592"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n d="M238.814 591.215C210.461 592.077 182.849 587.767 155.66 580.979C60.4457 557.059 4.05766 489.933 0.460672 390.376C-2.50155 306.442 8.71258 223.693 37.2769 144.499C73.2468 44.6185 170.894 -12.5948 276.159 2.81295C358.996 14.9883 437.177 39.3389 499.172 100.108C588.039 187.167 604.437 293.512 544.346 402.767C514.618 456.855 477.59 505.988 426.386 541.544C369.892 580.656 304.723 587.767 238.814 591.215Z"\n />\n </svg>'])));break;case"3":n=q(gn||(gn=Sn(['<svg\n width="620"\n height="613"\n viewBox="0 0 620 613"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M619.142 301.769C615.581 212.393 536.92 153.752 466.654 98.7402C397.998 44.9883 323.934 -10.5844 236.421 2.12929C141.656 15.8965 53.9975 76.8338 15.687 164.256C-20.6955 247.277 16.2818 336.243 54.5575 417.127C92.4807 497.265 137.965 580.831 224.139 604.752C314.166 629.742 409.183 593.817 484.092 536.359C559.738 478.336 622.883 395.641 619.142 301.769Z"\n />\n </svg>'])));break;case"4":n=q(bn||(bn=Sn(['<svg\n width="656"\n height="566"\n viewBox="0 0 656 566"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M332.011 564.695C235.808 569.34 135.091 552.4 71.2946 488.381C4.66596 421.518 -10.0767 327.738 8.2158 239.764C27.3773 147.61 73.5054 52.3693 169.88 14.2546C263.181 -22.6447 364.8 21.5179 455.491 62.8734C540.631 101.698 627.337 150.367 649.771 233.088C672.265 316.032 626.78 399.503 564.43 464.569C505.684 525.875 422.382 560.331 332.011 564.695Z"\n />\n </svg>'])));break;default:n=q(wn||(wn=Sn(['<svg\n width="628"\n height="577"\n viewBox="0 0 628 577"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M304.482 3.44206C399.413 -5.50752 504.225 1.17063 567.446 72.5295C633.526 147.115 639.549 256.491 613.992 352.793C589.57 444.814 526.084 523.087 438.164 559.679C355.477 594.092 265.039 570.416 184.315 531.621C103.504 492.784 22.0294 438.546 3.59029 350.826C-14.5863 264.355 39.2746 183.666 97.1329 116.868C151.394 54.223 221.956 11.2221 304.482 3.44206Z"\n />\n </svg>'])))}return n}render(){return q(yn||(yn=Sn([' <div class="blob">',"</div> "])),this.blobTemplate())}}_n(Pn,"properties",{color:{},shape:{},styles:{}}),_n(Pn,"styles",[hn,o(xn||(xn=Sn(["\n :host {\n --color: var(--blue-20);\n\n display: block;\n }\n\n .blob,\n svg {\n height: 100%;\n width: 100%;\n }\n\n svg path {\n fill: var(--color, #fff);\n }\n "])))]),customElements.get("cfa-blob")||customElements.define("cfa-blob",Pn);const An=o(kn||(kn=function(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}(['\n .cfa-button,\n a.cfa-button, \n .cfa-button > a,\n .wp-block-button > * {\n --bg-color: var(--white);\n --border-color: transparent;\n --font-family: var(--font-family-sans-serif);\n --font-size: var(--font-size-base);\n --hover-bg-color: var(--blue-20);\n --hover-border-color: var(--border-color);\n --line-height: var(--line-height-base);\n --text-color: var(--purple-80);\n\n background-color: var(--bg-color);\n border: var(--hairline) solid var(--border-color);\n border-radius: var(--rounded-corners);\n box-shadow: var(--shadow-small);\n color: var(--text-color);\n cursor: pointer;\n display: block;\n font-family: var(--font-family);\n font-size: var(--font-size);\n font-weight: bold;\n padding: var(--spacing-component-2) var(--spacing-component-3);\n text-align: center;\n text-decoration: none;\n transition: background-color 0.5s, box-shadow 0.5s;\n\n &:hover {\n background-color: var(--hover-bg-color);\n border-color: var(--hover-border-color);\n box-shadow: var(--shadow-medium);\n color: var(--text-color);\n }\n\n & cfa-icon {\n line-height: 1em;\n }\n }\n\n @media (max-width: 768px) {\n .cfa-button, \n a.cfa-button, \n .cfa-button > a,\n .wp-block-button > * {\n width: 100%;\n \n & + & {\n margin-block-start: var(--spacing-layout-half);\n }\n }\n\n .wp-block-button {\n width: 100%;\n }\n }\n\n @media (min-width: 768px) {\n .cfa-button, \n a.cfa-button, \n .cfa-button > a,\n .wp-block-button > * {\n display: inline-block;\n\n & {\n margin-block: var(--spacing-component-2);\n margin-inline-end: var(--spacing-component-2);\n }\n }\n }\n\n // Themes / variants\n\n .cfa-button--primary,\n a.cfa-button--primary,\n .cfa-button--primary > a,\n .wp-block-button.is-style-primary > * {\n --bg-color: var(--red-60);\n --hover-bg-color: var(--red-80);\n --text-color: var(--white,);\n }\n\n .cfa-button--outline,\n a.cfa-button--outline,\n .cfa-button--outline > a,\n .wp-block-button.is-style-outline > * {\n --border-color: var(--black-20);\n --bg-color: transparent;\n }\n\n .cfa-button--outline-white,\n a.cfa-button--outline-white,\n .cfa-button--outline-white > a,\n .wp-block-button.is-style-outline-white > * {\n --border-color: var(--white);\n --bg-color: transparent;\n --hover-bg-color: var(--black-20);\n --shadow-color: var(--white-20);\n --text-color: var(--white);\n }\n\n .cfa-button--prominent-link,\n a.cfa-button--prominent-link,\n .cfa-button--prominent-link > a,\n .wp-block-button.is-style-prominent-link > * {\n --accent-color: var(--purple-60);\n\n background: unset;\n box-shadow: unset;\n color: inherit;\n font-weight: bold;\n padding: 0;\n text-decoration: underline;\n text-decoration-color: var(--accent-color);\n text-decoration-thickness: var(--medium);\n text-underline-offset: 0.4em;\n transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out; \n\n &:hover {\n --accent-color: var(--red-60);\n \n background: unset;\n box-shadow: unset;\n }\n\n &::after {\n @include icon.icon;\n \n content: "arrow_right_alt";\n display: inline-block;\n padding-inline-start: 0.1em;\n text-decoration: none;\n transition: transform 0.2s ease-in-out;\n width: 1em;\n }\n\n &:hover::after {\n transform: translateX(0.3em);\n }\n\n cfa-icon {\n text-decoration: none;\n }\n }\n\n // Sizes\n\n .cfa-button--sm,\n a.cfa-button--sm,\n .cfa-button--sm > a {\n --font-size: var(--font-size-small);\n --line-height: var(--line-height-small);\n }\n\n .cfa-button--md,\n a.cfa-button--md,\n .cfa-button--md > a {\n --font-size: var(--font-size-base);\n --line-height: var(--line-height-base);\n }\n'])));var $n,On,Cn;function Tn(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}class Un extends ln{render(){return q($n||($n=Tn(['\n <span class="icon">\n <slot></slot>\n </span>\n '])))}}!function(n,e,t){(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t}(Un,"styles",[hn,o(On||(On=Tn(['\n :host {\n --size: 1.2em;\n\n vertical-align: middle;\n }\n\n .icon {\n -webkit-font-feature-settings: "liga";\n direction: ltr;\n display: inline-block;\n font-family: "Material Symbols Rounded";\n font-size: var(--size);\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n text-transform: none;\n white-space: nowrap;\n word-wrap: normal;\n }\n '])))]),customElements.get("cfa-icon")||customElements.define("cfa-icon",Un);const Ln=o(Cn||(Cn=function(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}(['\n .serif {\n font-family: var(--font-family-serif) !important;\n }\n\n .sans-serif {\n font-family: var(--font-family-sans-serif) !important;\n }\n\n .normal {\n font-weight: normal !important;\n }\n\n .strong {\n font-weight: bold !important;\n }\n\n italic {\n font-style: italic !important;\n }\n\n .display 1 {\n font-family: var(--font-family-display-1);\n font-size: var(--font-size-display-1);\n font-weight: var(--font-weight-display-1);\n letter-spacing: var(--letter-spacing-display-1);\n line-height: var(--line-height-display-1);\n }\n\n .display-2 {\n font-family: var(--font-family-display-2);\n font-size: var(--font-size-display-2);\n font-weight: var(--font-weight-display-2);\n letter-spacing: var(--letter-spacing-display-2);\n line-height: var(--line-height-display-2);\n }\n\n .h1 {\n font-family: var(--font-family-h1);\n font-size: var(--font-size-h1);\n font-weight: var(--font-weight-h1);\n letter-spacing: var(--letter-spacing-h1);\n line-height: var(--line-height-h1);\n }\n\n .h2 {\n font-family: var(--font-family-h2);\n font-size: var(--font-size-h2);\n font-weight: var(--font-weight-h2);\n letter-spacing: var(--letter-spacing-h2);\n line-height: var(--line-height-h2);\n }\n\n .h3 {\n font-family: var(--font-family-h3);\n font-size: var(--font-size-h3);\n font-weight: var(--font-weight-h3);\n letter-spacing: var(--letter-spacing-h3);\n line-height: var(--line-height-h3);\n }\n\n .h4 {\n font-family: var(--font-family-h4);\n font-size: var(--font-size-h4);\n font-weight: var(--font-weight-h4);\n letter-spacing: var(--letter-spacing-h4);\n line-height: var(--line-height-h4);\n }\n\n .eyebrow {\n font-family: var(--font-family-eyebrow);\n font-size: var(--font-size-eyebrow);\n font-weight: var(--font-weight-eyebrow);\n letter-spacing: var(--letter-spacing-eyebrow);\n line-height: var(--line-height-eyebrow);\n text-transform: uppercase;\n }\n\n .eyebrow-with-line {\n align-items: center;\n color: var(--text-color);\n display: flex;\n font-family: var(--font-family-eyebrow);\n font-size: var(--font-size-eyebrow);\n font-weight: var(--font-weight-eyebrow);\n letter-spacing: var(--letter-spacing-eyebrow);\n line-height: var(--line-height-eyebrow);\n margin-block-end: var(--spacing-layout-half);\n position: relative;\n text-transform: uppercase;\n }\n\n .eyebrow-with-line::after {\n border-block-end: var(--hairline) solid var(--text-color);\n content: "";\n flex-grow: 1;\n margin-left: var(--spacing-component-3);\n }\n\n .small {\n font-size: var(--font-size-small);\n letter-spacing: var(--letter-spacing-small);\n line-height: var(--line-height-small);\n }\n\n .subtle {\n color: var(--text-color-subtle);\n }\n'])));var Mn,Hn,Nn,Rn,In,Bn,Fn,qn,Vn,Dn,Wn,Zn,Kn,Jn,Xn,Yn,Gn,Qn,ne,ee,te,re,ie,oe,ae,se,le,ce,de,he,ue,pe,fe,ve,me,ge,be,we,ye,xe,ke,ze,je,Ee,Se,_e,Pe,Ae,$e,Oe,Ce,Te,Ue,Le,Me,He,Ne,Re,Ie,Be,Fe,qe,Ve,De,We,Ze,Ke,Je,Xe,Ye,Ge,Qe,nt,et,tt,rt,it,ot,at,st,lt,ct,dt,ht,ut,pt,ft,vt,mt,gt,bt,wt,yt,xt,kt,zt,jt,Et,St,_t,Pt,At,$t,Ot,Ct,Tt,Ut,Lt,Mt,Ht,Nt,Rt,It,Bt,Ft,qt;function Vt(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Dt(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}class Wt extends ln{render(){return q(Mn||(Mn=Vt(['\n <div class="label small strong" color="','">\n <slot />\n </div>\n '])),this.color)}}function Zt(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}Dt(Wt,"properties",{color:""}),Dt(Wt,"styles",[hn,Ln,o(Hn||(Hn=Vt(['\n .label {\n --background-color: var(--gray-20);\n --text-color: var(--black, #000);\n\n background-color: var(--background-color);\n color: var(--text-color);\n display: inline-block;\n line-height: 1em;\n padding: var(--spacing-component-2) var(--spacing-component-3);\n }\n\n .label[color="white"] {\n --background-color: var(--white, #fff);\n box-shadow: var(--shadow-small);\n }\n\n .label[color="purple"] {\n --background-color: var(--purple-20);\n }\n\n .label[color="red"] {\n --background-color: var(--red-20);\n }\n\n .label[color="blue"] {\n --background-color: var(--blue-20);\n }\n\n .label[color="green"] {\n --background-color: var(--green-20);\n }\n\n .label[color="yellow"] {\n --background-color: var(--yellow-20);\n }\n '])))]),customElements.get("cfa-label")||customElements.define("cfa-label",Wt);class Kt extends ln{render(){return q(Nn||(Nn=Zt([" <slot /> "])))}}function Jt(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Xt(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}!function(n,e,t){(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t}(Kt,"styles",[hn,o(Rn||(Rn=Zt(["\n :host {\n --bg-color: var(--gray-20);\n --text-color: var(--gray-80);\n\n background-color: var(--bg-color);\n border-radius: var(--spacing-component-3);\n color: var(--text-color);\n display: inline-block;\n font-size: var(--font-size-small);\n font-weight: bold;\n line-height: 1;\n margin-right: var(--spacing-component-1);\n padding: var(--spacing-component-1) var(--spacing-component-2);\n vertical-align: middle;\n }\n "])))]),customElements.get("cfa-pill")||customElements.define("cfa-pill",Kt);class Yt extends ln{render(){return q(In||(In=Jt(["\n <blockquote>\n <slot />\n </blockquote>\n "])))}}function Gt(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Qt(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Xt(Yt,"properties",{}),Xt(Yt,"styles",[hn,o(Bn||(Bn=Jt(["\n :host {\n --color: var(--purple-60);\n\n display: block;\n }\n blockquote {\n border-inline-start: var(--thick) solid var(--color);\n color: var(--color);\n font-size: var(--font-size-h3);\n font-weight: 600;\n line-height: var(--line-height-h3);\n margin: 0;\n padding: var(--spacing-layout-half) var(--spacing-layout-1);\n }\n p {\n margin: 0;\n }\n p + p {\n margin-block-start: var(--spacing-layout-half);\n }\n "])))]),customElements.get("cfa-pullquote")||customElements.define("cfa-pullquote",Yt);class nr extends ln{render(){return q(Fn||(Fn=Gt(['\n <figure>\n <blockquote>\n <slot name="text"></slot>\n </blockquote>\n <figcaption>\n <slot name="attribution"></slot>\n </figcaption>\n </figure>\n '])))}}function er(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function tr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Qt(nr,"properties",{text:{},attribution:{}}),Qt(nr,"styles",[hn,o(qn||(qn=Gt(['\n :host {\n --attribution-color: var(--purple-60);\n }\n\n figure {\n margin-inline: auto;\n max-width: var(--column-span-8);\n position: relative;\n }\n\n blockquote {\n font-family: var(--font-family-serif);\n font-size: var(--font-size-h3);\n line-height: var(--line-height-h3);\n padding: 0;\n margin: 0;\n position: relative;\n }\n\n blockquote::before {\n color: var(--attribution-color);\n content: "“";\n display: block;\n font-size: var(--font-size-display-1);\n left: -0.5em;\n line-height: 1;\n position: absolute;\n top: 0;\n width: 0.25em;\n }\n\n ::slotted(*) {\n display: inline;\n }\n\n figcaption {\n color: var(--attribution-color);\n font-size: var(--font-size-small);\n line-height: var(--line-height-small);\n font-weight: 600;\n margin-block-start: var(--spacing-layout-half);\n margin-inline: 0;\n position: relative;\n }\n\n figcaption::before {\n background-color: currentColor;\n content: "";\n display: inline-block;\n vertical-align: middle;\n height: var(--hairline);\n width: var(--spacing-component-4);\n margin-inline-end: var(--spacing-component-2);\n }\n '])))]),customElements.get("cfa-quote")||customElements.define("cfa-quote",nr);class rr extends ln{constructor(){super()}iconTemplate(n){switch(n){case"bluesky":return q(Vn||(Vn=er(['\n <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 568 501">\n <path class="st0" d="M123.1,33.7c65.1,48.9,135.2,148,160.9,201.2,25.7-53.2,95.8-152.3,160.9-201.2,47-35.3,123.1-62.6,123.1,24.3s-9.9,145.7-15.8,166.6c-20.3,72.5-94.2,90.9-159.9,79.7,114.9,19.6,144.1,84.3,81,149.1-119.9,123-172.3-30.9-185.7-70.3-2.5-7.2-3.6-10.6-3.6-7.7,0-2.9-1.2.5-3.6,7.7-13.4,39.4-65.8,193.3-185.7,70.3-63.1-64.8-33.9-129.5,81-149.1-65.7,11.2-139.6-7.3-159.9-79.7C9.9,203.7,0,75.3,0,57.9,0-28.9,76.1-1.6,123.1,33.7Z"/>\n </svg>\n '])));case"dropbox":return q(Dn||(Dn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16.5"\n viewBox="0 0 528 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M264.4 116.3l-132 84.3 132 84.3-132 84.3L0 284.1l132.3-84.3L0 116.3 132.3 32l132.1 84.3zM131.6 395.7l132-84.3 132 84.3-132 84.3-132-84.3zm132.8-111.6l132-84.3-132-83.6L395.7 32 528 116.3l-132.3 84.3L528 284.8l-132.3 84.3-131.3-85z"\n />\n </svg>\n '])));case"facebook":return q(Wn||(Wn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16"\n viewBox="0 0 512 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M512 256C512 114.6 397.4 0 256 0S0 114.6 0 256C0 376 82.7 476.8 194.2 504.5V334.2H141.4V256h52.8V222.3c0-87.1 39.4-127.5 125-127.5c16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1c-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H287V510.1C413.8 494.8 512 386.9 512 256h0z"\n />\n </svg>\n '])));case"github":return q(Zn||(Zn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="15.5"\n viewBox="0 0 496 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"\n />\n </svg>\n '])));case"google-drive":return q(Kn||(Kn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16"\n viewBox="0 0 512 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M339 314.9L175.4 32h161.2l163.6 282.9H339zm-137.5 23.6L120.9 480h310.5L512 338.5H201.5zM154.1 67.4L0 338.5 80.6 480 237 208.8 154.1 67.4z"\n />\n </svg>\n '])));case"google":return q(Jn||(Jn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="15.25"\n viewBox="0 0 488 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z"\n />\n </svg>\n '])));case"instagram":return q(Xn||(Xn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="14"\n viewBox="0 0 448 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"\n />\n </svg>\n '])));case"linkedin":return q(Yn||(Yn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="14"\n viewBox="0 0 448 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"\n />\n </svg>\n '])));case"reddit":return q(Gn||(Gn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16"\n viewBox="0 0 512 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M0 256C0 114.6 114.6 0 256 0S512 114.6 512 256s-114.6 256-256 256L37.1 512c-13.7 0-20.5-16.5-10.9-26.2L75 437C28.7 390.7 0 326.7 0 256zM349.6 153.6c23.6 0 42.7-19.1 42.7-42.7s-19.1-42.7-42.7-42.7c-20.6 0-37.8 14.6-41.8 34c-34.5 3.7-61.4 33-61.4 68.4l0 .2c-37.5 1.6-71.8 12.3-99 29.1c-10.1-7.8-22.8-12.5-36.5-12.5c-33 0-59.8 26.8-59.8 59.8c0 24 14.1 44.6 34.4 54.1c2 69.4 77.6 125.2 170.6 125.2s168.7-55.9 170.6-125.3c20.2-9.6 34.1-30.2 34.1-54c0-33-26.8-59.8-59.8-59.8c-13.7 0-26.3 4.6-36.4 12.4c-27.4-17-62.1-27.7-100-29.1l0-.2c0-25.4 18.9-46.5 43.4-49.9l0 0c4.4 18.8 21.3 32.8 41.5 32.8zM177.1 246.9c16.7 0 29.5 17.6 28.5 39.3s-13.5 29.6-30.3 29.6s-31.4-8.8-30.4-30.5s15.4-38.3 32.1-38.3zm190.1 38.3c1 21.7-13.7 30.5-30.4 30.5s-29.3-7.9-30.3-29.6c-1-21.7 11.8-39.3 28.5-39.3s31.2 16.6 32.1 38.3zm-48.1 56.7c-10.3 24.6-34.6 41.9-63 41.9s-52.7-17.3-63-41.9c-1.2-2.9 .8-6.2 3.9-6.5c18.4-1.9 38.3-2.9 59.1-2.9s40.7 1 59.1 2.9c3.1 .3 5.1 3.6 3.9 6.5z"\n />\n </svg>\n '])));case"soundcloud":return q(Qn||(Qn=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="20"\n viewBox="0 0 640 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M111.4 256.3l5.8 65-5.8 68.3c-.3 2.5-2.2 4.4-4.4 4.4s-4.2-1.9-4.2-4.4l-5.6-68.3 5.6-65c0-2.2 1.9-4.2 4.2-4.2 2.2 0 4.1 2 4.4 4.2zm21.4-45.6c-2.8 0-4.7 2.2-5 5l-5 105.6 5 68.3c.3 2.8 2.2 5 5 5 2.5 0 4.7-2.2 4.7-5l5.8-68.3-5.8-105.6c0-2.8-2.2-5-4.7-5zm25.5-24.1c-3.1 0-5.3 2.2-5.6 5.3l-4.4 130 4.4 67.8c.3 3.1 2.5 5.3 5.6 5.3 2.8 0 5.3-2.2 5.3-5.3l5.3-67.8-5.3-130c0-3.1-2.5-5.3-5.3-5.3zM7.2 283.2c-1.4 0-2.2 1.1-2.5 2.5L0 321.3l4.7 35c.3 1.4 1.1 2.5 2.5 2.5s2.2-1.1 2.5-2.5l5.6-35-5.6-35.6c-.3-1.4-1.1-2.5-2.5-2.5zm23.6-21.9c-1.4 0-2.5 1.1-2.5 2.5l-6.4 57.5 6.4 56.1c0 1.7 1.1 2.8 2.5 2.8s2.5-1.1 2.8-2.5l7.2-56.4-7.2-57.5c-.3-1.4-1.4-2.5-2.8-2.5zm25.3-11.4c-1.7 0-3.1 1.4-3.3 3.3L47 321.3l5.8 65.8c.3 1.7 1.7 3.1 3.3 3.1 1.7 0 3.1-1.4 3.1-3.1l6.9-65.8-6.9-68.1c0-1.9-1.4-3.3-3.1-3.3zm25.3-2.2c-1.9 0-3.6 1.4-3.6 3.6l-5.8 70 5.8 67.8c0 2.2 1.7 3.6 3.6 3.6s3.6-1.4 3.9-3.6l6.4-67.8-6.4-70c-.3-2.2-2-3.6-3.9-3.6zm241.4-110.9c-1.1-.8-2.8-1.4-4.2-1.4-2.2 0-4.2 .8-5.6 1.9-1.9 1.7-3.1 4.2-3.3 6.7v.8l-3.3 176.7 1.7 32.5 1.7 31.7c.3 4.7 4.2 8.6 8.9 8.6s8.6-3.9 8.6-8.6l3.9-64.2-3.9-177.5c-.4-3-2-5.8-4.5-7.2zm-26.7 15.3c-1.4-.8-2.8-1.4-4.4-1.4s-3.1 .6-4.4 1.4c-2.2 1.4-3.6 3.9-3.6 6.7l-.3 1.7-2.8 160.8s0 .3 3.1 65.6v.3c0 1.7 .6 3.3 1.7 4.7 1.7 1.9 3.9 3.1 6.4 3.1 2.2 0 4.2-1.1 5.6-2.5 1.7-1.4 2.5-3.3 2.5-5.6l.3-6.7 3.1-58.6-3.3-162.8c-.3-2.8-1.7-5.3-3.9-6.7zm-111.4 22.5c-3.1 0-5.8 2.8-5.8 6.1l-4.4 140.6 4.4 67.2c.3 3.3 2.8 5.8 5.8 5.8 3.3 0 5.8-2.5 6.1-5.8l5-67.2-5-140.6c-.2-3.3-2.7-6.1-6.1-6.1zm376.7 62.8c-10.8 0-21.1 2.2-30.6 6.1-6.4-70.8-65.8-126.4-138.3-126.4-17.8 0-35 3.3-50.3 9.4-6.1 2.2-7.8 4.4-7.8 9.2v249.7c0 5 3.9 8.6 8.6 9.2h218.3c43.3 0 78.6-35 78.6-78.3 .1-43.6-35.2-78.9-78.5-78.9zm-296.7-60.3c-4.2 0-7.5 3.3-7.8 7.8l-3.3 136.7 3.3 65.6c.3 4.2 3.6 7.5 7.8 7.5 4.2 0 7.5-3.3 7.5-7.5l3.9-65.6-3.9-136.7c-.3-4.5-3.3-7.8-7.5-7.8zm-53.6-7.8c-3.3 0-6.4 3.1-6.4 6.7l-3.9 145.3 3.9 66.9c.3 3.6 3.1 6.4 6.4 6.4 3.6 0 6.4-2.8 6.7-6.4l4.4-66.9-4.4-145.3c-.3-3.6-3.1-6.7-6.7-6.7zm26.7 3.4c-3.9 0-6.9 3.1-6.9 6.9L227 321.3l3.9 66.4c.3 3.9 3.1 6.9 6.9 6.9s6.9-3.1 6.9-6.9l4.2-66.4-4.2-141.7c0-3.9-3-6.9-6.9-6.9z"\n />\n </svg>\n '])));case"threads":return q(ne||(ne=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="14"\n viewBox="0 0 448 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M331.5 235.7c2.2 .9 4.2 1.9 6.3 2.8c29.2 14.1 50.6 35.2 61.8 61.4c15.7 36.5 17.2 95.8-30.3 143.2c-36.2 36.2-80.3 52.5-142.6 53h-.3c-70.2-.5-124.1-24.1-160.4-70.2c-32.3-41-48.9-98.1-49.5-169.6V256v-.2C17 184.3 33.6 127.2 65.9 86.2C102.2 40.1 156.2 16.5 226.4 16h.3c70.3 .5 124.9 24 162.3 69.9c18.4 22.7 32 50 40.6 81.7l-40.4 10.8c-7.1-25.8-17.8-47.8-32.2-65.4c-29.2-35.8-73-54.2-130.5-54.6c-57 .5-100.1 18.8-128.2 54.4C72.1 146.1 58.5 194.3 58 256c.5 61.7 14.1 109.9 40.3 143.3c28 35.6 71.2 53.9 128.2 54.4c51.4-.4 85.4-12.6 113.7-40.9c32.3-32.2 31.7-71.8 21.4-95.9c-6.1-14.2-17.1-26-31.9-34.9c-3.7 26.9-11.8 48.3-24.7 64.8c-17.1 21.8-41.4 33.6-72.7 35.3c-23.6 1.3-46.3-4.4-63.9-16c-20.8-13.8-33-34.8-34.3-59.3c-2.5-48.3 35.7-83 95.2-86.4c21.1-1.2 40.9-.3 59.2 2.8c-2.4-14.8-7.3-26.6-14.6-35.2c-10-11.7-25.6-17.7-46.2-17.8H227c-16.6 0-39 4.6-53.3 26.3l-34.4-23.6c19.2-29.1 50.3-45.1 87.8-45.1h.8c62.6 .4 99.9 39.5 103.7 107.7l-.2 .2zm-156 68.8c1.3 25.1 28.4 36.8 54.6 35.3c25.6-1.4 54.6-11.4 59.5-73.2c-13.2-2.9-27.8-4.4-43.4-4.4c-4.8 0-9.6 .1-14.4 .4c-42.9 2.4-57.2 23.2-56.2 41.8l-.1 .1z"\n />\n </svg>\n '])));case"twitter":return q(ee||(ee=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16"\n viewBox="0 0 512 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"\n />\n </svg>\n '])));case"wikipedia":return q(te||(te=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="20"\n viewBox="0 0 640 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M640 51.2l-.3 12.2c-28.1 .8-45 15.8-55.8 40.3-25 57.8-103.3 240-155.3 358.6H415l-81.9-193.1c-32.5 63.6-68.3 130-99.2 193.1-.3 .3-15 0-15-.3C172 352.3 122.8 243.4 75.8 133.4 64.4 106.7 26.4 63.4 .2 63.7c0-3.1-.3-10-.3-14.2h161.9v13.9c-19.2 1.1-52.8 13.3-43.3 34.2 21.9 49.7 103.6 240.3 125.6 288.6 15-29.7 57.8-109.2 75.3-142.8-13.9-28.3-58.6-133.9-72.8-160-9.7-17.8-36.1-19.4-55.8-19.7V49.8l142.5 .3v13.1c-19.4 .6-38.1 7.8-29.4 26.1 18.9 40 30.6 68.1 48.1 104.7 5.6-10.8 34.7-69.4 48.1-100.8 8.9-20.6-3.9-28.6-38.6-29.4 .3-3.6 0-10.3 .3-13.6 44.4-.3 111.1-.3 123.1-.6v13.6c-22.5 .8-45.8 12.8-58.1 31.7l-59.2 122.8c6.4 16.1 63.3 142.8 69.2 156.7L559.2 91.8c-8.6-23.1-36.4-28.1-47.2-28.3V49.6l127.8 1.1 .2 .5z"\n />\n </svg>\n '])));case"youtube":return q(re||(re=er(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="18"\n viewBox="0 0 576 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M549.7 124.1c-6.3-23.7-24.8-42.3-48.3-48.6C458.8 64 288 64 288 64S117.2 64 74.6 75.5c-23.5 6.3-42 24.9-48.3 48.6-11.4 42.9-11.4 132.3-11.4 132.3s0 89.4 11.4 132.3c6.3 23.7 24.8 41.5 48.3 47.8C117.2 448 288 448 288 448s170.8 0 213.4-11.5c23.5-6.3 42-24.2 48.3-47.8 11.4-42.9 11.4-132.3 11.4-132.3s0-89.4-11.4-132.3zm-317.5 213.5V175.2l142.7 81.2-142.7 81.2z"\n />\n </svg>\n '])));default:return""}}render(){return q(ie||(ie=er(['\n <span class="social-icon ','" aria-hidden="true">\n ',"\n </span>\n "])),this.icon,this.iconTemplate(this.icon))}}function ir(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function or(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}tr(rr,"properties",{icon:""}),tr(rr,"styles",[hn,o(oe||(oe=er(["\n .social-icon {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n }\n\n svg {\n fill: currentColor;\n height: 1em;\n vertical-align: -0.125em;\n width: 1em;\n }\n "])))]),customElements.define("cfa-social-icon",rr);class ar extends ln{constructor(){super(),this.animated=!0}firstUpdated(){const n=this.shadowRoot.querySelector(".stat");new IntersectionObserver((n=>{n.forEach((n=>{n.isIntersecting&&n.target.classList.add("is-visible")}))}),{rootMargin:"0px 0px -20% 0px"}).observe(n)}render(){return q(ae||(ae=ir(['\n <div class="stat ','">\n <div class="above-label strong">','</div>\n <div class="figure display-2">\n <span>','</span>\n </div>\n <div class="below-label strong">',"</div>\n </div>\n "])),this.animated?"is-animated":"",this.beforeLabel,this.figure,this.afterLabel)}}function sr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function lr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}or(ar,"properties",{beforeLabel:{},figure:{},afterLabel:{},animated:{}}),or(ar,"styles",[hn,Ln,o(se||(se=ir(["\n :host {\n --text-color: var(--text-dark);\n --highlight-color: var(--purple-20);\n --highlight-thickness: var(--spacing-layout-half);\n\n align-self: center;\n display: block;\n margin-inline: auto;\n }\n .stat {\n align-items: center;\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n text-align: center;\n }\n .figure {\n min-width: var(--spacing-layout-3);\n padding-inline: var(--spacing-component-2);\n }\n .figure > span {\n background-image: linear-gradient(\n var(--highlight-color),\n var(--highlight-color)\n );\n background-size: 100% var(--highlight-thickness);\n background-position: bottom 0.15em left;\n background-repeat: no-repeat;\n padding-inline: 0.25em;\n }\n /* Animation */\n @media (prefers-reduced-motion: no-preference) {\n .stat.is-animated .figure > span {\n background-size: 0% var(--highlight-thickness);\n transition: background-size 1s ease;\n }\n .stat.is-animated.is-visible .figure > span {\n background-size: 100% var(--highlight-thickness);\n }\n }\n "])))]),customElements.get("cfa-stat")||customElements.define("cfa-stat",ar);class cr extends ln{constructor(){super(),this.open=!1}toggle(){this.open=!this.open}handleKeyPress(n){"Enter"!==n.key&&" "!==n.key||this.toggle()}render(){return q(le||(le=sr(['\n <div class="item">\n <div\n class="header"\n role="button"\n aria-expanded=','\n tabindex="0"\n @click=',"\n @keypress=",'\n >\n <div class="title">\n <slot name="title"></slot>\n </div>\n <span class="icon" aria-hidden="true">\n ','\n </span>\n </div>\n <div\n class="body ','"\n role="region"\n aria-hidden=',"\n >\n <slot></slot>\n </div>\n </div>\n "])),this.open?"true":"false",this.toggle,this.handleKeyPress,this.open?q(ce||(ce=sr(["<cfa-icon>expand_less</cfa-icon>"]))):q(de||(de=sr(["<cfa-icon>expand_more</cfa-icon>"]))),this.open?"open":"",this.open?"false":"true")}}lr(cr,"properties",{open:{type:Boolean}}),lr(cr,"styles",[hn,o(ue||(ue=sr(["\n :host {\n --color: var(--purple-60);\n --hover-bg-color: var(--blue-20);\n\n display: block;\n }\n\n .item {\n border-bottom: var(--thin) solid var(--black-20);\n max-width: var(--column-span-8);\n margin-inline: auto;\n background-color: var(--bg-color);\n }\n\n .header {\n align-items: center;\n color: var(--color);\n cursor: pointer;\n display: flex;\n flex-direction: row;\n padding-block: var(--spacing-component-3);\n }\n\n .header:hover {\n background-color: var(--hover-bg-color);\n box-shadow:\n var(--spacing-component-3) 0 var(--blue-20),\n calc(-1 * var(--spacing-component-3)) 0 var(--blue-20);\n }\n\n .header:focus {\n outline: none;\n }\n\n .title {\n flex: 1;\n }\n\n .title ::slotted(*) {\n font-family: var(--font-family-sans-serif) !important;\n font-size: var(--base-font-size) !important;\n }\n\n .icon {\n flex: 0;\n }\n\n .body {\n opacity: 0;\n max-height: 0;\n overflow: hidden;\n }\n\n .body.open {\n max-height: unset;\n opacity: 1;\n padding-block: var(--spacing-layout-half) var(--spacing-layout-1);\n }\n\n .body ::slotted(*) {\n margin-block-start: 0 !important;\n }\n "])))]);class dr extends ln{render(){return q(he||(he=sr(['\n <div role="tablist">\n <slot></slot>\n </div>\n '])))}}function hr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function ur(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}lr(dr,"styles",o(pe||(pe=sr(["\n :host {\n display: block;\n }\n "])))),customElements.get("cfa-accordion-item")||customElements.define("cfa-accordion-item",cr),customElements.get("cfa-accordion")||customElements.define("cfa-accordion",dr);class pr extends ln{firstUpdated(){const n=this.shadowRoot.querySelector(".content"),e=n=>{n.classList.toggle("is-overflowing",n.scrollWidth>n.clientWidth)};"ResizeObserver"in window&&new ResizeObserver((n=>{e(n[0].target)})).observe(n),"MutationObserver"in window&&new MutationObserver((()=>{e(n)})).observe(n,{childList:!0}),e(n)}render(){return q(fe||(fe=hr(['\n <div class="bar">\n <div class="content">\n <slot></slot>\n </div>\n </div>\n '])))}}function fr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function vr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}ur(pr,"properties",{theme:{}}),ur(pr,"styles",[hn,o(ve||(ve=hr(['\n :host {\n --bg-color: var(--purple-80);\n --text-color: var(--white);\n --link-color: var(--white);\n --link-hover-color: var(--white);\n --scrollbar-color: var(--white);\n --spacing: var(--spacing-layout-half);\n\n display: block;\n }\n\n .bar {\n background-color: var(--bg-color);\n color: var(--text-color);\n\n a {\n color: var(--link-color);\n }\n\n a:hover {\n color: var(--link-hover-color);\n }\n }\n\n .content {\n display: flex;\n column-gap: var(--spacing);\n justify-content: center; \n overflow-x: auto;\n overflow-y: hidden;\n padding-bottom: var(--spacing-layout-half);\n padding-top: var(--spacing-layout-half);\n scrollbar-color: var(--scrollbar-color) var(--bg-color);\n scrollbar-width: thin;\n\n &::before,\n &::after {\n content: "";\n flex-basis: calc(var(--outer-margin) - var(--spacing));\n flex-shrink: 0;\n }\n }\n \n .content.is-overflowing {\n justify-content: start; \n }\n\n ::slotted(*) {\n max-width: none !important;\n white-space: nowrap !important;\n }\n '])))]),customElements.get("cfa-bar")||customElements.define("cfa-bar",pr);class mr extends ln{render(){return q(me||(me=fr(['\n <div class="box ','">\n <slot />\n </div>\n '])),this.theme?"box--"+this.theme:"")}}function gr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function br(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}vr(mr,"properties",{theme:{}}),vr(mr,"styles",[hn,o(ge||(ge=fr(["\n :host {\n --bg-color: var(--white);\n --padding: var(--spacing-component-4);\n --shadow: var(--shadow-small);\n --text-color: var(--black);\n\n display: flex;\n flex: 1;\n }\n\n .box {\n background-color: var(--bg-color);\n box-shadow: var(--shadow);\n color: var(--text-color, #000);\n display: flex;\n flex-direction: column;\n gap: var(--spacing-layout-half);\n padding: var(--padding);\n width: 100%;\n }\n\n .box--rounded {\n border-radius: var(--spacing-layout-half, 0.5rem);\n }\n\n ::slotted(*) {\n --spacing: var(--spacing-layout-half);\n\n max-width: 100%;\n }\n "])))]),customElements.get("cfa-box")||customElements.define("cfa-box",mr);class wr extends ln{handleSlotchange(n){const e=n.target.assignedNodes({flatten:!0});console.log(e);const t=this.shadowRoot.querySelector(".breadcrumbs");t.innerHTML="",e.forEach((n=>{"UL"===n.tagName&&n.querySelectorAll("li").forEach((n=>{t.appendChild(n.cloneNode(!0))}))}))}render(){return q(be||(be=gr(["\n <slot @slotchange=",'></slot>\n <ul class="breadcrumbs"></ul>\n '])),this.handleSlotchange)}}function yr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}br(wr,"properties",{}),br(wr,"styles",[hn,o(we||(we=gr(['\n slot {\n display: none;\n }\n\n :host {\n display: block;\n }\n\n .breadcrumbs {\n margin: 0;\n margin-inline: calc(-1 * var(--outer-margin));\n overflow-x: auto;\n overflow-y: hidden;\n padding: 0;\n scrollbar-width: none;\n white-space: nowrap;\n }\n\n .breadcrumbs::before,\n .breadcrumbs::after {\n content: "";\n display: inline-block;\n width: var(--outer-margin);\n }\n\n .breadcrumbs > * {\n display: inline-block;\n font-size: var(--font-size-small);\n font-weight: 600;\n line-height: var(--line-height-small);\n margin: 0;\n padding: 0;\n }\n\n .breadcrumbs > *:not(:last-child)::after {\n content: "/";\n opacity: 0.5;\n padding-inline: 0.75em;\n }\n\n .breadcrumbs a {\n color: var(--link-color);\n text-decoration: none;\n }\n '])))]),customElements.get("cfa-breadcrumbs")||customElements.define("cfa-breadcrumbs",wr);class xr extends ln{render(){return q(ye||(ye=yr(['\n <div class="callout">\n <div class="icon">\n <cfa-icon>info</cfa-icon>\n </div>\n <div class="text">\n <slot></slot>\n </div>\n </div>\n '])))}}function kr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function zr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}!function(n,e,t){(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t}(xr,"styles",[hn,o(xe||(xe=yr(["\n :host {\n --background: var(--white);\n --icon-color: var(--purple-80);\n --link-color: var(--base-link-color);\n --link-hover-color: var(--base-link-hover-color);\n --text-color: var(--black);\n\n display: block;\n }\n\n .callout {\n align-items: flex-start;\n background: var(--background);\n box-shadow: var(--shadow-medium);\n color: var(--text-color);\n display: flex;\n flex-direction: row;\n gap: var(--spacing-component-2);\n padding: var(--spacing-component-3);\n }\n\n .icon {\n color: var(--icon-color);\n flex-direction: column;\n flex-grow: 0;\n font-size: var(--font-size-h3);\n height: 100%;\n margin-block-start: -0.075em;\n margin-inline-end: var(--spacing-component-2);\n }\n\n .callout + .callout {\n margin-top: var(--spacing-layout-half);\n }\n "])))]),customElements.get("cfa-callout")||customElements.define("cfa-callout",xr);class jr extends ln{visualTemplate(){let n;return"image"===this.visualType?n=q(ke||(ke=kr(['\n <div class="visual image">\n <div class="fallback-image">\n ',"\n </div>\n ","\n </div>\n "])),V(ze||(ze=kr(['\n <svg \n width="1600" \n height="900" \n viewBox="0 0 1600 900" \n fill="none" \n preserveAspectRatio="xMinYMin slice"\n xmlns="http://www.w3.org/2000/svg"\n >\n <g clip-path="url(#clip0)">\n <rect width="1600" height="900" fill="#2B1A78"/>\n <path fill-rule="evenodd" clip-rule="evenodd" d="M1218.12 -444.87C1375.54 -448.403 1528.96 -379.695 1624.93 -254.874C1718.97 -132.569 1729.75 28.0324 1697.74 178.942C1664.98 333.396 1596.67 491.622 1452.8 556.721C1311.8 620.52 1155.18 556.724 1017.04 486.944C883.26 419.362 752.204 329.485 715.393 184.213C677.697 35.4535 737.759 -117.225 833.568 -237.116C929.253 -356.852 1064.86 -441.431 1218.12 -444.87Z" fill="#5650BE"/>\n <path fill-rule="evenodd" clip-rule="evenodd" d="M372.893 247.378C457.708 243.989 548.299 262.758 600.503 329.652C652.21 395.908 640.741 485.984 623.238 568.169C605.287 652.459 579.269 741.096 503.945 783.041C424.143 827.479 324.366 822.072 243.48 779.638C165.755 738.862 118.175 659.045 102.906 572.65C88.5877 491.632 114.457 410.294 167.015 346.974C218.23 285.272 292.743 250.581 372.893 247.378Z" fill="#5650BE"/>\n </g>\n <defs>\n <clipPath id="clip0">\n <rect width="1600" height="900" fill="white"/>\n </clipPath>\n </defs>\n </svg>\n ']))),this.visualUrl?q(je||(je=kr(['\n <picture>\n <source srcset="','" />\n <img\n src="','"\n alt="','"\n loading="lazy"\n onerror="this.style.display=\'none\'"\n />\n </picture>\n '])),this.visualUrl,this.visualThumbnailUrl,this.visualAltText):W):"logo"===this.visualType&&(n=q(Ee||(Ee=kr(['\n <div class="visual logo">\n <picture>\n <source srcset="','" />\n <img\n src="','"\n alt="','"\n loading="lazy"\n />\n </picture>\n </div>\n '])),this.visualUrl,this.visualThumbnailUrl,this.visualAltText)),n}cardContentTemplate(){return q(Se||(Se=kr(["\n ",'\n <div class="content">\n <div class="header">\n <div>\n ',"\n ","\n </div>\n ",'\n </div>\n <div class="body">\n ',"\n ","\n ","\n </div>\n </div>\n "])),this.visualTemplate(),this.eyebrow?q(_e||(_e=kr([' <div class="eyebrow">',"</div> "])),this.eyebrow):W,this.title?q(Pe||(Pe=kr([' <div class="h3 title">',"</div> "])),this.title):W,this.label?q(Ae||(Ae=kr(['\n <div>\n <cfa-label color="green">',"</cfa-label>\n </div>\n "])),this.label):W,this.text?q($e||($e=kr([' <div class="small" .innerHTML="','"></div> '])),this.text):W,this.metaText?q(Oe||(Oe=kr(['\n <div\n class="meta-text small"\n .innerHTML="','"\n ></div>\n '])),this.metaText):W,this.actionLabel?q(Ce||(Ce=kr([' <div class="action-label">',"</div> "])),this.actionLabel):W)}render(){return q(Te||(Te=kr(["\n ","\n "])),this.linkUrl?q(Ue||(Ue=kr(['\n <a\n href="','"\n target="','"\n rel="','"\n class="card ','"\n >\n ',"\n </a>\n "])),this.linkUrl,this.linkTarget,"_blank"==this.linkTarget?"noopener":W,this.theme?"card--"+this.theme:"",this.cardContentTemplate()):q(Le||(Le=kr(['\n <div class="card ','">\n ',"\n </div>\n "])),this.theme?"card--"+this.theme:"",this.cardContentTemplate()))}}function Er(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Sr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}zr(jr,"properties",{theme:{},linkUrl:{},linkTarget:{},visualType:{},visualUrl:{},visualThumbnailUrl:{},visualAltText:{},eyebrow:{},label:{},title:{},text:{},metaText:{},actionLabel:{}}),zr(jr,"styles",[hn,Ln,o(Me||(Me=kr(['\n :host {\n --action-border-color: var(--purple-20);\n --action-border-hover-color: var(--red-60);\n --action-text-color: var(--purple-60);\n --action-text-hover-color: var(--red-60);\n --bg-color: var(--white);\n --padding: var(--spacing-component-4);\n --text-color: var(--black);\n\n display: flex;\n flex-direction: column;\n margin-inline: auto;\n max-width: 100%;\n width: 100%;\n }\n\n .card,\n a.card {\n box-shadow: var(--shadow-small);\n border: var(--hairline) solid var(--gray-20);\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n flex: 1;\n height: 100%;\n text-decoration: none;\n transition: 500ms;\n }\n\n a.card:hover {\n --action-color: var(--action-hover-color);\n\n box-shadow: var(--shadow-medium);\n }\n\n .content {\n background-color: var(--bg-color);\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n padding: var(--padding);\n }\n\n .header {\n align-items: start;\n display: flex;\n flex-direction: column;\n gap: var(--spacing-layout-half);\n margin-block-end: var(--spacing-layout-half);\n }\n\n .body {\n display: flex;\n flex-flow: column nowrap;\n gap: var(--spacing-layout-half);\n height: 100%;\n text-align: var(--text-alignment, start);\n }\n\n .eyebrow {\n color: var(--purple-60);\n }\n\n .eyebrow + * {\n margin-block-start: var(--spacing-component-2);\n }\n\n .meta-text {\n color: var(--gray-60);\n }\n\n .action-label {\n align-self: flex-start;\n color: var(--action-text-color);\n display: inline-block;\n font-size: var(--font-size-small);\n font-weight: bold;\n margin-block-start: auto;\n padding-block-start: var(--spacing-component-3);\n }\n\n a:hover .action-label {\n color: var(--action-text-hover-color);\n }\n\n .action-label::after {\n background: linear-gradient(\n to top,\n var(--action-border-hover-color) 0% 50%,\n var(--action-border-color) 50% 100%\n );\n background-position: 0% 0%;\n background-size: 100% 200%;\n content: "";\n display: block;\n height: var(--spacing-component-2);\n transition: background-position 0.3s;\n }\n\n a:hover .action-label::after {\n background-position: 0% 100%;\n }\n\n .visual {\n box-sizing: border-box;\n display: flex;\n height: auto;\n height: var(--spacing-layout-7);\n position: relative;\n width: 100%;\n }\n\n img {\n height: 100%;\n object-fit: cover;\n width: 100%;\n }\n\n .fallback-image {\n background-color: var(--purple-80);\n position: absolute;\n inline-start: 0;\n block-start: 0;\n width: 100%;\n height: 100%;\n z-index: 0;\n }\n\n .fallback-image svg {\n height: 100%;\n width: 100%;\n }\n\n .visual picture {\n position: relative;\n z-index: 1;\n width: 100%;\n }\n\n .image::after {\n block-end: 0;\n block-start: 0;\n bottom: 0;\n box-shadow: inset 0 -50px 50px -50px var(--black-60);\n content: "";\n inline-end: 0;\n inline-start: 0;\n position: absolute;\n z-index: 2;\n }\n\n .logo {\n background-color: var(--white, #fff);\n box-sizing: border-box;\n border-block-end: 1px solid var(--gray-20);\n padding: var(--spacing-component-5);\n }\n\n .logo img {\n object-fit: contain;\n }\n\n /* --- */\n\n /* Theme: Compact Card */\n\n .card--compact {\n --padding: var(--spacing-component-3);\n }\n\n .card--compact .title {\n font-size: var(--font-size-h4);\n line-height: var(--line-height-h4);\n }\n\n .card--compact .action-label {\n padding-block-start: 0;\n }\n\n /* --- */\n\n /* Theme: Horizontal Card */\n\n @media (min-width: 768px) {\n .card--horizontal,\n a.card--horizontal {\n align-items: stretch;\n flex-direction: row;\n }\n\n .card--horizontal .visual {\n aspect-ratio: initial;\n height: auto;\n flex: 0 0 50%;\n }\n\n .card--horizontal .logo {\n border-block-end: 0;\n border-inline-end: 1px solid var(--gray-20);\n }\n }\n\n /* --- */\n\n /* Theme: Horizontal Compact Card */\n\n @media (min-width: 768px) {\n .card--horizontal-compact,\n a.card--horizontal-compact {\n align-items: stretch;\n flex-direction: row;\n }\n\n .card--horizontal-compact .visual {\n aspect-ratio: initial;\n flex: 0 0 34%;\n height: auto;\n position: relative;\n }\n\n .card--horizontal-compact .image picture {\n position: absolute;\n height: 100%;\n width: 100%;\n }\n\n .card--horizontal-compact .logo {\n border-block-end: 0;\n border-right: 1px solid var(--gray-20);\n padding: var(--spacing-component-4);\n }\n }\n\n .card--horizontal-compact,\n a.card--horizontal-compact {\n --padding: var(--spacing-component-3);\n }\n\n .card--horizontal-compact .body {\n gap: var(--spacing-component-2);\n }\n\n .card--horizontal-compact .header {\n margin-block-end: var(--spacing-component-2);\n }\n\n .card--horizontal-compact .title {\n font-size: var(--font-size-h4);\n line-height: var(--line-height-h4);\n }\n\n .card--horizontal-compact .action-label {\n padding-block-start: var(--spacing-component-2);\n }\n '])))]),customElements.define("cfa-card",jr);class _r extends ln{cardContentTemplate(){let n;return n=this.imageUrl?q(He||(He=Er([' <img src="','" alt="','" /> '])),this.imageUrl,this.name):q(Ne||(Ne=Er([" "," "])),this.name),n}render(){return q(Re||(Re=Er(["\n ","\n "])),this.linkUrl?q(Ie||(Ie=Er(['\n <a\n href="','"\n target="','"\n rel="','"\n class="card"\n >\n ',"\n </a>\n "])),this.linkUrl,this.linkTarget||"_self","_blank"==this.linkTarget?"noopener noreferrer":W,this.cardContentTemplate()):q(Be||(Be=Er([' <div class="card">',"</div> "])),this.cardContentTemplate()))}}function Pr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Ar(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Sr(_r,"properties",{name:{},imageUrl:{},linkUrl:{},linkTarget:{}}),Sr(_r,"styles",[hn,Ln,o(Fe||(Fe=Er(["\n :host {\n --bg-color: var(--blue-20);\n --text-color: var(--black);\n\n align-items: stretch;\n display: flex;\n flex-direction: row;\n }\n\n .card {\n align-items: center;\n background-color: var(--white);\n border: var(--hairline) solid var(--black-10);\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n font-size: var(--font-size-h3);\n font-weight: bold;\n justify-content: center;\n line-height: var(--line-height-h4);\n margin-inline: auto;\n max-width: 100%;\n min-height: var(--spacing-layout-8);\n padding: var(--spacing-component-5);\n text-align: center;\n text-decoration: none;\n transition: box-shadow 1s;\n width: var(--column-span-4);\n }\n\n a.card {\n box-shadow: var(--shadow-small);\n color: var(--text-color);\n }\n\n a.card:hover {\n box-shadow: var(--shadow-medium);\n }\n\n img {\n aspect-ratio: 2 / 1;\n object-fit: contain;\n width: 100%;\n }\n "])))]),customElements.get("cfa-logo-card")||customElements.define("cfa-logo-card",_r);class $r extends ln{handleSlotchange(n){const e=n.target.assignedNodes({flatten:!0}),t=this.shadowRoot.querySelector("ul");t.innerHTML="",e.forEach((n=>{"UL"===n.tagName&&n.querySelectorAll("li").forEach((n=>{t.appendChild(n.cloneNode(!0))}))}))}render(){return q(qe||(qe=Pr(["\n <slot @slotchange=",'></slot>\n <nav data-font-size="','">\n <ul></ul>\n </nav>\n '])),this.handleSlotchange,this.fontSize)}}function Or(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Cr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Ar($r,"properties",{fontSize:{}}),Ar($r,"styles",[hn,o(Ve||(Ve=Pr(['\n :host {\n --link-color: var(--purple-80);\n --link-hover-color: var(--purple-80);\n\n display: block;\n font-family: var(--font-family-sans-serif);\n }\n\n slot {\n display: none;\n }\n\n nav {\n font-size: var(--font-size-base);\n line-height: var(--line-height-base);\n }\n\n nav[data-font-size="small"] {\n font-size: var(--font-size-small);\n line-height: var(--line-height-small);\n }\n\n nav[data-font-size="large"] {\n font-size: var(--font-size-h3);\n line-height: var(--line-height-h3);\n }\n\n ul {\n display: flex;\n flex-direction: row;\n gap: var(--spacing-component-1);\n list-style: none;\n margin: 0;\n padding: 0;\n }\n\n li {\n flex-shrink: 0;\n margin: 0;\n padding: 0;\n }\n\n li.is-active a {\n box-shadow: inset 0 calc(-1 * var(--medium)) var(--link-hover-color);\n }\n\n a {\n box-shadow: 0;\n color: var(--link-color);\n display: block;\n font-weight: bold;\n height: 100%;\n padding: var(--spacing-component-2) var(--spacing-component-3);\n text-decoration: none;\n transition: box-shadow 0.25s ease-in-out;\n }\n\n a:hover {\n box-shadow: inset 0 calc(-1 * var(--medium)) var(--link-hover-color);\n }\n '])))]),customElements.get("cfa-nav")||customElements.define("cfa-nav",$r);class Tr extends ln{handleSlotchange(n){const e=n.target.assignedNodes({flatten:!0}),t=this.shadowRoot.querySelector("ul"),r=[];e.forEach((n=>{"UL"===n.tagName&&n.querySelectorAll("li").forEach((n=>{var e;t.appendChild(n.cloneNode(!0));const i=null===(e=n.querySelector("a"))||void 0===e?void 0:e.getAttribute("href");i&&i.startsWith("#")&&r.push(i.substring(1))}))})),window.addEventListener("scroll",(()=>this.updateActiveNav(r)))}updateActiveNav(n){const e=window.scrollY;let t=null;if(n.forEach((n=>{const r=document.getElementById(n);r&&r.offsetTop<=e+256&&(t=n)})),this.shadowRoot.querySelectorAll("li a").forEach((n=>{n.classList.remove("is-active")})),t){const n=this.shadowRoot.querySelector('li a[href*="#'.concat(t,'"]'));n&&n.classList.add("is-active")}}render(){return q(De||(De=Or(["\n <slot @slotchange=","></slot>\n <nav>\n <ul>\n <li><strong>On this page:  </strong></li>\n </ul>\n </nav>\n "])),this.handleSlotchange)}}function Ur(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Lr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Cr(Tr,"properties",{fontSize:{}}),Cr(Tr,"styles",[hn,o(We||(We=Or(["\n :host {\n --bg-color: var(--white);\n --link-color: var(--purple-80);\n --link-hover-color: var(--purple-80);\n\n background-color: var(--bg-color);\n display: block;\n padding-block: var(--spacing-layout-1);\n display: block;\n font-family: var(--font-family-sans-serif);\n font-size: var(--font-size-small);\n line-height: var(--font-size-small);\n }\n\n slot {\n display: none;\n }\n\n nav {\n }\n\n ul {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-layout-half);\n margin: 0;\n padding: 0 var(--outer-margin);\n min-height: var(--spacing-layout-2);\n }\n\n li {\n display: block;\n }\n\n a {\n background-color: var(--purple-10);\n border-radius: var(--rounded-corners);\n color: var(--link-color);\n display: block;\n position: relative;\n padding: var(--spacing-layout-half);\n text-decoration: none;\n }\n\n a:hover {\n background-color: var(--blue-20);\n color: var(--link-hover-color);\n }\n\n a:active {\n background-color: var(--blue-40);\n color: var(--link-color);\n }\n\n @media (min-width: 768px) {\n :host {\n box-shadow: var(--shadow-small);\n padding-block: var(--spacing-component-2);\n position: sticky;\n top: 0;\n z-index: 3;\n }\n\n nav {\n align-items: center;\n display: flex;\n flex-direction: row;\n margin-inline: auto;\n max-width: var(--grid-max-width);\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n }\n\n ul {\n align-items: center;\n display: flex;\n flex-direction: row;\n gap: var(--spacing-component-2);\n }\n\n a,\n li {\n max-width: none;\n white-space: nowrap;\n }\n\n a.is-active {\n background-color: var(--blue-40);\n }\n }\n "])))]),customElements.get("cfa-page-nav")||customElements.define("cfa-page-nav",Tr);class Mr extends ln{render(){return q(Ze||(Ze=Ur(['\n <nav>\n <div class="next">\n ','\n </div>\n <div class="previous">\n ',"\n </div>\n </nav>\n "])),this.nextUrl?q(Ke||(Ke=Ur(['\n <a href="','" class="cfa-button">\n <span class="small label"\n >Next <cfa-icon>arrow_forward</cfa-icon></span\n ><br />\n <span class="title normal">',"</span>\n </a>\n "])),this.nextUrl,this.nextTitle):"",this.previousUrl?q(Je||(Je=Ur(['\n <a\n href="','"\n class="cfa-button cfa-button--outline"\n >\n <span class="small label"\n ><cfa-icon>arrow_back</cfa-icon> Previous</span\n ><br />\n <span class="title normal">',"</span>\n </a>\n "])),this.previousUrl,this.previousTitle):"")}}function Hr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Nr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Lr(Mr,"properties",{previousTitle:{},previousUrl:{},nextTitle:{},nextUrl:{}}),Lr(Mr,"styles",[hn,Ln,An,o(Xe||(Xe=Ur(["\n :host {\n display: block;\n }\n\n * {\n box-sizing: border-box;\n text-wrap: comfortable;\n }\n\n nav {\n display: flex;\n flex-direction: column;\n column-gap: var(--gutter-width);\n row-gap: var(--spacing-layout-half);\n }\n\n nav > * > * {\n width: 100%;\n }\n\n @media (min-width: 768px) {\n nav {\n flex-direction: row-reverse;\n justify-content: space-between;\n }\n\n a {\n min-width: var(--column-span-4);\n }\n\n .next a {\n text-align: end;\n }\n\n .previous a {\n text-align: start;\n }\n }\n "])))]),customElements.get("cfa-pager")||customElements.define("cfa-pager",Mr);class Rr extends ln{constructor(){super(),this.previousLabel="Previous",this.nextLabel="Next",this.page=1,this.totalPages=1}render(){return q(Ye||(Ye=Hr(['\n <div class="pagination">\n <div class="previous">\n ','\n </div>\n <div class="status">Page '," of ",'</div>\n <div class="next">\n ',"\n </div>\n </div>\n "])),this.page>1?q(Ge||(Ge=Hr(['\n <button class="cfa-button" @click="','">\n <cfa-icon>arrow_back</cfa-icon> ',"\n </button>\n "])),this.handlePreviousPage,this.previousLabel):"",this.page,this.totalPages,this.page<this.totalPages?q(Qe||(Qe=Hr(['\n <button class="cfa-button" @click="','">\n '," <cfa-icon>arrow_forward</cfa-icon>\n </button>\n "])),this.handleNextPage,this.nextLabel):"")}handleNextPage(){if(this.page<this.totalPages){this.page++;const n=new CustomEvent("page-change",{bubbles:!0,cancelable:!0,detail:this.page});this.dispatchEvent(n)}}handlePreviousPage(){if(this.page>1){this.page--;const n=new CustomEvent("page-change",{bubbles:!0,cancelable:!0,detail:this.page});this.dispatchEvent(n)}}}function Ir(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Br(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Nr(Rr,"properties",{page:{type:Number},totalPages:{type:Number},previousLabel:{},nextLabel:{}}),Nr(Rr,"styles",[hn,An,o(nt||(nt=Hr(["\n :host {\n display: block;\n }\n\n .pagination {\n align-items: center;\n display: flex;\n flex-direction: row;\n gap: var(--gutter-width);\n justify-content: space-between;\n }\n\n .pagination > * {\n flex: 1;\n }\n\n .status {\n font-size: var(--font-size-small);\n line-height: var(-line-height-small);\n color: var(--gray-60);\n text-align: center;\n }\n\n @media (max-width: 768px) {\n .status {\n display: none;\n }\n }\n\n .previous {\n text-align: left;\n }\n\n .next {\n text-align: right;\n }\n "])))]),customElements.get("cfa-pagination")||customElements.define("cfa-pagination",Rr);class Fr extends ln{render(){var n,e;return q(et||(et=Ir(['\n <div class="card ','">\n \x3c!-- Link overlay pseudo-element so we can do nested links within the card --\x3e\n ','\n <div class="avatar">\n ','\n </div>\n <div class="details">\n <div>\n <div class="name h4">\n ',"\n </div>\n ",'\n </div>\n <div class="title small">\n ',"\n </div>\n ","\n </div>\n </div>\n "])),this.linkUrl?"has-link":"",this.linkUrl?q(tt||(tt=Ir(['\n <a\n href="','"\n target="','"\n rel="','"\n class="link-overlay"\n tabindex="-1"\n >\n </a>\n '])),this.linkUrl,this.linkTarget||"_self","_blank"==this.linkTarget?"noopener":W):"",this.linkUrl?q(rt||(rt=Ir(['\n <a\n href="','"\n target="','"\n rel="','"\n >\n <cfa-avatar\n imageUrl="','"\n altText="Avatar photo of ','"\n size="3"\n >\n </cfa-avatar>\n </a>\n '])),this.linkUrl,this.linkTarget||"_self","_blank"==this.linkTarget?"noopener":W,this.imageUrl,this.name):q(it||(it=Ir(['\n <cfa-avatar\n imageUrl="','"\n altText="Avatar photo of ','"\n size="3"\n >\n </cfa-avatar>\n '])),this.imageUrl,this.name),this.linkUrl?q(ot||(ot=Ir(['\n <a\n href="','"\n target="','"\n rel="','"\n >\n ',"\n </a>\n "])),this.linkUrl,this.linkTarget||"_self","_blank"==this.linkTarget?"noopener":W,this.name.trim()):q(at||(at=Ir([" "," "])),this.name.trim()),this.pronouns?q(st||(st=Ir([' <span class="pronouns small">(',")</span> "])),this.pronouns):"",[null===(n=this.title)||void 0===n?void 0:n.trim(),null===(e=this.company)||void 0===e?void 0:e.trim()].filter(Boolean).join(", "),this.linkedInUrl||this.twitterHandle?q(lt||(lt=Ir(['\n <div class="social">\n ',"\n ","\n </div>\n "])),this.linkedInUrl?q(ct||(ct=Ir(['\n <a\n href="','"\n target="_blank"\n rel="noopener"\n title="View ','\'s profile on LinkedIn"\n >\n <cfa-social-icon icon="linkedin" />\n </a>\n '])),this.linkedInUrl,this.name):W,this.twitterHandle?q(dt||(dt=Ir(['\n <a\n href="https://twitter.com/','"\n target="_blank"\n rel="noopener"\n title="View ','\'s profile on X (Twitter)"\n >\n <cfa-social-icon icon="twitter" />\n </a>\n '])),this.twitterHandle,this.name):W):W)}}function qr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Vr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Br(Fr,"properties",{name:{type:"string"},title:{type:"string"},company:{type:"string"},pronouns:{type:"string"},imageUrl:{type:"string"},imageAltText:{type:"string"},linkUrl:{type:"string"},linkedInUrl:{type:"string"},twitterHandle:{type:"string"}}),Br(Fr,"styles",[hn,Ln,o(ht||(ht=Ir(['\n :host {\n display: block;\n }\n\n .card {\n border-radius: var(--rounded-corners);\n position: relative;\n display: flex;\n flex-direction: row;\n margin-inline: auto;\n max-width: 100%;\n text-align: start;\n width: var(--column-span-4);\n transform: translate(0, 0); // hack to ensure pseudo element is stacked above parent background\n }\n\n .card.has-link::before {\n border-radius: var(--rounded-corners);\n bottom: calc(-1 * var(--thick));\n content: "";\n height: calc(100% + 2 * var(--thick)));\n left: calc(-1 * var(--thick));\n position: absolute;\n right: calc(-1 * var(--thick));\n top: calc(-1 * var(--thick));\n width: calc(100% + 2 * var(--thick)));\n z-index: -1;\n transition: \n background-color 0.5s ease-in-out,\n box-shadow 0.5s ease-in-out;\n }\n\n .card.has-link:hover::before,\n .card.has-link:focus-visible::before {\n background-color: var(--white);\n box-shadow: var(--shadow-medium);\n }\n\n .card.has-link .name a {\n box-shadow: 0;\n color: var(--purple-80);\n transition: box-shadow 0.5s ease-in-out;\n }\n\n .card.has-link:hover .name a {\n box-shadow: inset 0 calc(-1 * var(--thick)) 0 0 var(--purple-20);\n }\n\n a {\n position: relative;\n text-decoration: none;\n z-index: 1;\n }\n\n a.link-overlay {\n position: static;\n }\n\n a.link-overlay::before {\n content: "";\n position: absolute;\n z-index: 0;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n }\n \n .avatar {\n flex-grow: 0;\n }\n\n .name {\n display: inline-block;\n }\n\n .pronouns {\n color: var(--purple-60);\n }\n \n .details {\n color: var(--black);\n flex-grow: 1;\n padding-block-start: var(--spacing-component-2);\n padding-inline-start: var(--spacing-component-2);\n }\n\n .social {\n font-size: 0.9rem;\n margin-block-start: var(--spacing-component-1);\n }\n \n .social a {\n align-items: center;\n border-radius: 10000px;\n color: var(--purple-80);\n display: inline-flex;\n height: var(--spacing-component-4);\n justify-content: center;\n margin: calc(-1 * var(--spacing-component-2));\n width: var(--spacing-component-4);\n }\n\n .social a:hover {\n background-color: var(--purple-20);\n }\n\n .social > a + a {\n margin-inline-start: var(--spacing-component-2);\n }\n '])))]),customElements.get("cfa-person-card")||customElements.define("cfa-person-card",Fr);class Dr extends ln{render(){return q(ut||(ut=qr(['\n <a\n href="','"\n target="','"\n class="promo\n "\n >\n ',"\n ","\n ","\n </a>\n "])),this.linkUrl||"javascript:void(0)",this.linkTarget||W,this.heading?q(pt||(pt=qr([' <div class="h4 sans-serif">',"</div> "])),this.heading):W,this.text?q(ft||(ft=qr([' <div class="small">',"</div> "])),this.text):W,this.actionLabel?q(vt||(vt=qr(['\n <div class="action-label small strong">\n '," <cfa-icon>arrow_forward</cfa-icon>\n </div>\n "])),this.actionLabel):W)}}function Wr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Zr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Vr(Dr,"properties",{heading:{},text:{},actionLabel:{},linkUrl:{},linkTarget:{}}),Vr(Dr,"styles",[hn,Ln,o(mt||(mt=qr(["\n :host {\n --bg-color: var(--blue-20);\n --padding: var(--spacing-component-4);\n --text-color: var(--black);\n --action-label-color: var(--purple-60);\n --action-label-hover-color: var(--red-60);\n\n display: block;\n }\n\n .promo,\n a.promo {\n background-color: var(--bg-color);\n box-shadow: var(--shadow-small);\n color: var(--text-color, #000);\n display: flex;\n flex-direction: column;\n gap: var(--spacing-layout-half);\n padding: var(--padding);\n text-align: center;\n text-decoration: none;\n transition: box-shadow 0.2s ease-in-out;\n width: 100%;\n }\n\n a.promo:hover {\n box-shadow: var(--shadow-medium);\n }\n\n .action-label {\n color: var(--action-label-color);\n }\n\n a.promo:hover .action-label {\n color: var(--action-label-hover-color);\n }\n "])))]),customElements.get("cfa-promo")||customElements.define("cfa-promo",Dr);class Kr extends ln{constructor(){super(),this.showLabel="Show more",this.hideLabel="Show less",this.showIcon="expand_more",this.hideIcon="expand_less",this.expanded=!1}render(){return q(gt||(gt=Wr(['\n <slot\n id="content"\n class="content ','"\n aria-labelledby="button"\n ?hidden="','"\n ></slot>\n <div class="controls">\n <button\n @click="','"\n aria-expanded="','"\n aria-controls="content"\n >\n ',"\n <cfa-icon>","</cfa-icon>\n </button>\n </div>\n "])),this.expanded?"is-expanded":"is-collapsed",!this.expanded,(()=>this.expanded=!this.expanded),this.expanded,this.expanded?this.hideLabel:this.showLabel,this.expanded?this.hideIcon:this.showIcon)}}function Jr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Xr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Zr(Kr,"properties",{showLabel:{type:String},hideLabel:{type:String},showIcon:{type:String},hideIcon:{type:String},expanded:{type:Boolean,reflect:!0}}),Zr(Kr,"styles",[hn,o(bt||(bt=Wr(["\n :host {\n --color: var(--purple-60);\n --hover-color: var(--red-60);\n --margin-top: var(--spacing-layout-half) !important;\n\n display: flex;\n flex-direction: column;\n row-gap: var(--spacing-between, 1rem);\n }\n\n :host([expanded]) {\n --margin-top: var(--spacing) !important;\n }\n\n button {\n background: transparent;\n border: none;\n color: var(--color);\n cursor: pointer;\n font: inherit;\n font-size: var(--font-size-small, 0.8rem);\n font-weight: bold;\n color: var(--)\n line-height: normal;\n margin: 0;\n overflow: visible;\n padding: 0;\n width: auto;\n }\n\n button:hover {\n color: var(--hover-color);\n }\n "])))]),customElements.get("cfa-reveal")||customElements.define("cfa-reveal",Kr);class Yr extends ln{constructor(){super(),this.linkUrl="javascript:void(0);",this.linkTarget="_self"}render(){return q(wt||(wt=Jr(['\n <a href="','" target="','" class="slide">\n <div class="image">\n ','\n </div>\n <div class="content">\n <slot></slot>\n </div>\n </a>\n '])),this.linkUrl,this.linkTarget,this.imageUrl?q(yt||(yt=Jr(['\n <img\n src="','"\n alt="','"\n loading="lazy"\n onerror="this.style.display=\'none\'"\n />\n '])),this.imageUrl,this.imageAltText):"")}}function Gr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Qr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Xr(Yr,"properties",{imageUrl:{},imageAltText:{},linkUrl:{},linkTarget:{}}),Xr(Yr,"styles",[hn,o(xt||(xt=Jr(['\n :host {\n --background: var(--white, #fff);\n --width: var(--column-span-12);\n }\n\n .slide {\n background: var(--background);\n box-shadow: var(--shadow-small);\n color: inherit;\n display: flex;\n flex-direction: column;\n height: 100%;\n justify-content: stretch;\n margin-inline: auto;\n max-width: var(--width);\n text-decoration: none;\n transition: box-shadow 0.2s ease-in-out;\n width: 100%;\n }\n\n .slide:hover,\n .slide:focus {\n box-shadow: var(--shadow-medium);\n }\n\n .image {\n background-image: url("https://codeforamerica.org/wp-content/themes/cfa-core/static/images/bg-placeholder-03.svg");\n background-position: center center;\n background-size: cover;\n height: var(--spacing-layout-9);\n position: relative;\n }\n\n .image::after {\n bottom: 0;\n box-shadow: inset 0 -50px 50px -50px var(--black-40);\n content: "";\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 2;\n }\n\n .image img {\n height: 100%;\n object-fit: cover;\n width: 100%;\n }\n\n .content {\n align-items: center;\n box-sizing: border-box;\n display: flex;\n padding: var(--spacing-component-4);\n }\n\n @media (min-width: 1024px) {\n .slide {\n flex-direction: row;\n min-height: calc(12 * var(--spacing-layout-1));\n }\n\n .slide > * {\n flex-basis: 50%;\n }\n\n .image {\n height: auto;\n }\n\n .image::after {\n box-shadow: inset -50px -50px 50px -50px var(--black-20);\n }\n }\n '])))]),customElements.get("cfa-slide")||customElements.define("cfa-slide",Yr);class ni extends ln{constructor(){super(),this.active=!1,this.panelId=""}firstUpdated(){this.addEventListener("keydown",this._onKeyDown)}_onKeyDown(n){const e=Array.from(this.parentElement.querySelectorAll("cfa-tab")),t=e.indexOf(this);let r;switch(n.key){case"ArrowLeft":r=(t-1+e.length)%e.length,e[r].shadowRoot.querySelector("button").focus();break;case"ArrowRight":r=(t+1)%e.length,e[r].shadowRoot.querySelector("button").focus();break;case"Home":e[0].shadowRoot.querySelector("button").focus();break;case"End":e[e.length-1].shadowRoot.querySelector("button").focus()}}render(){return q(kt||(kt=Gr(['\n <button\n role="tab"\n aria-selected="','"\n aria-controls="','"\n class="','"\n tabindex="','"\n >\n <slot></slot>\n </button>\n '])),this.active?"true":"false",this.panelId,this.active?"active":"",this.active?"0":"-1")}}function ei(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function ti(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Qr(ni,"properties",{active:{type:Boolean},panelId:{type:String}}),Qr(ni,"styles",[hn,Ln,o(zt||(zt=Gr(["\n button {\n background: none;\n border: 0;\n box-shadow: inset 0 calc(-1 * var(--hairline)) 0 0 var(--gray-40);\n color: var(--gray-80);\n cursor: pointer;\n font-family: var(--font-family-sans-serif);\n font-size: var(--font-size-small);\n font-weight: normal;\n padding: var(--spacing-component-2) var(--spacing-component-3)\n calc(var(--spacing-component-2) + var(--medium));\n }\n button:focus {\n background-color: var(--focus-color);\n outline: none;\n }\n button:not(.active):hover {\n box-shadow: inset 0 calc(-1 * var(--medium)) 0 0 var(--purple-40);\n color: var(--black);\n }\n button.active {\n box-shadow: inset 0 calc(-1 * var(--medium)) 0 0 var(--purple-60);\n color: var(--black);\n font-weight: bold;\n }\n "])))]),customElements.get("cfa-tab")||customElements.define("cfa-tab",ni);class ri extends ln{constructor(){super()}firstUpdated(){this.addEventListener("click",this._onTabClick),this.setAttribute("role","tablist"),this._setInitialAriaAttributes()}_setInitialAriaAttributes(){this.querySelectorAll("cfa-tab").forEach(((n,e)=>{n.setAttribute("role","tab"),n.setAttribute("aria-selected","false"),n.setAttribute("tabindex","-1"),0===e&&(n.setAttribute("aria-selected","true"),n.setAttribute("tabindex","0"))}))}_onTabClick(n){const e=n.target.closest("cfa-tab");e&&this._setActiveTab(e)}_setActiveTab(n){this.querySelectorAll("cfa-tab").forEach((n=>{n.removeAttribute("active"),n.setAttribute("aria-selected","false"),n.setAttribute("tabindex","-1")})),n.setAttribute("active",""),n.setAttribute("aria-selected","true"),n.setAttribute("tabindex","0");let e=n.id;e&&e.startsWith("tab-")&&(e=e.substring(4)),console.log("Tab changed event dispatched with ID:",e),this.dispatchEvent(new CustomEvent("tab-changed",{detail:{id:e},bubbles:!0,composed:!0}))}render(){return q(jt||(jt=ei(['\n <div class="tab-list" role="tablist">\n <slot></slot>\n </div>\n '])))}}function ii(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function oi(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}ti(ri,"properties",{}),ti(ri,"styles",[hn,An,o(Et||(Et=ei(['\n :host {\n display: block;\n width: calc(100% + var(--outer-margin));\n }\n\n .tab-list {\n display: flex;\n flex-direction: row;\n line-height: 1;\n margin-inline-start: calc(-1 * var(--outer-margin));\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n white-space: nowrap;\n }\n\n .tab-list::before {\n content: "";\n min-width: var(--outer-margin);\n }\n\n .tab-list::after {\n border-bottom: var(--hairline) solid var(--gray-40);\n content: "";\n flex-grow: 1;\n margin-right: var(--outer-margin);\n }\n\n ::slotted(*) {\n max-width: none !important;\n white-space: nowrap !important;\n }\n '])))]),customElements.get("cfa-tab-list")||customElements.define("cfa-tab-list",ri);class ai extends ln{tileContentTemplate(){return q(St||(St=ii(["\n ",'\n\n <div class="title h3">',"</div>\n\n \x3c!-- Description --\x3e\n ","\n\n \x3c!-- Action label --\x3e\n ","\n "])),this.imageUrl?q(_t||(_t=ii(['\n <picture>\n <cfa-blob></cfa-blob>\n <img\n src="','"\n alt="','"\n load="lazy"\n />\n </picture>\n '])),this.imageUrl,this.imageAltText):W,this.title,this.description?q(Pt||(Pt=ii([' <p class="small">',"</p> "])),this.description):W,this.actionLabel?q(At||(At=ii(['\n <div class="label small strong">\n '," <cfa-icon>arrow_forward</cfa-icon>\n </div>\n "])),this.actionLabel):W)}render(){return q($t||($t=ii(["\n <style>\n cfa-blob {\n --color: var(--blob-color);\n }\n </style>\n ","\n "])),this.linkUrl?q(Ot||(Ot=ii(['\n <a\n href="','"\n target="','"\n rel="','"\n class="tile"\n >\n ',"\n </a>\n "])),this.linkUrl,this.linkTarget,"_blank"==this.linkTarget?"noopener":W,this.tileContentTemplate()):q(Ct||(Ct=ii([' <div class="tile">',"</div> "])),this.tileContentTemplate()))}}function si(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}oi(ai,"properties",{title:{type:String},description:{type:String},actionLabel:{type:String},linkUrl:{type:String},linkTarget:{type:String},imageUrl:{type:String},imageThumbnailUrl:{type:String},imageAltText:{type:String}}),oi(ai,"styles",[hn,Ln,o(Tt||(Tt=ii(["\n :host {\n --bg-color: var(--white);\n --title-color: var(--purple-60);\n --text-color: var(--black);\n --action-label-color: var(--purple-80);\n --action-label-hover-highlight: var(--purple-20);\n --blob-color: var(--purple-20);\n\n align-items: stretch;\n display: flex;\n text-align: center;\n width: 100%;\n }\n\n .tile {\n background-color: var(--bg-color);\n border-radius: var(--spacing-component-2);\n border: var(--hairline) solid var(--black-20);\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n max-width: var(--column-span-6);\n padding: var(--spacing-component-4);\n text-decoration: none;\n transition:\n box-shadow 0.5s ease-in-out,\n border-color 0.5s ease-in-out;\n width: 100%;\n }\n\n a.tile:hover {\n box-shadow: var(--shadow-medium);\n border-color: rgba(0, 0, 0, 0);\n }\n\n picture {\n display: grid;\n place-items: center;\n padding-block-end: var(--spacing-layout-1);\n }\n\n picture > * {\n height: var(--spacing-layout-4);\n grid-area: 1 / 1;\n }\n\n cfa-blob {\n transition: scale 0.5s ease-in-out;\n }\n\n a.tile:hover cfa-blob {\n scale: 1.2;\n }\n\n img {\n object-fit: contain;\n z-index: 2;\n }\n\n .title {\n color: var(--title-color);\n }\n\n .label {\n color: var(--action-label-color);\n display: inline-block;\n margin-block-start: auto;\n padding-block-start: var(--spacing-layout-half);\n }\n "])))]),customElements.get("cfa-tile")||customElements.define("cfa-tile",ai);class li extends ln{render(){return q(Ut||(Ut=si(['\n <div class="label eyebrow-with-line">Transcript</div>\n <div class="text">\n <slot />\n </div>\n '])))}}function ci(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function di(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}!function(n,e,t){(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t}(li,"styles",[hn,Ln,o(Lt||(Lt=si(["\n :host {\n --label-color: var(--purple-60);\n\n display: block;\n max-width: var(--column-span-8);\n }\n\n .label {\n --text-color: var(--label-color);\n }\n\n .text {\n background-color: var(--white);\n border: var(--hairline) solid var(--black-20);\n color: var(--black);\n height: calc(12 * var(--spacing-layout-1));\n overflow: auto;\n padding: var(--spacing-component-3);\n }\n "])))]),customElements.get("cfa-transcript")||customElements.define("cfa-transcript",li);class hi extends ln{render(){return q(Mt||(Mt=ci(['\n <a\n href="','"\n target="','"\n style="\n --accent-color: var(--',");\n --background-color: var(--",');\n "\n >\n ','\n <picture class="','">\n <source srcset="','" />\n <img\n src="','"\n alt="','"\n loading="lazy"\n />\n </picture>\n <div class="content">\n <slot></slot>\n </div>\n </a>\n '])),this.linkUrl?this.linkUrl:"javascript:void(0)",this.linkTarget,this.accentColor,this.backgroundColor,"illustration"==this.visualType?q(Ht||(Ht=ci(['\n <svg\n class="blob"\n width="100%"\n height="100%"\n viewBox="0 400 991 404"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M497.987 2.71228C593.074 -5.64211 690.176 4.03525 773.161 49.603C862.779 98.8136 944.454 170.47 976.005 265.197C1007.51 359.787 986.265 464.701 941.165 554.018C899.88 635.781 820.242 689.107 738.82 734.926C664.711 776.63 583.712 800.173 497.987 803.413C409.179 806.769 320.068 796.454 243.046 753.664C159.74 707.382 90.0067 640.005 51.1477 555.166C9.37056 463.956 -21.746 356.515 19.2012 264.956C59.2648 175.372 169.027 143.121 256.962 94.9565C334.013 52.7538 409.754 10.4645 497.987 2.71228Z"\n />\n </svg>\n ']))):"",this.visualType,this.visualUrl,this.visualThumbnailUrl,this.visualAltText)}}function ui(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function pi(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}di(hi,"properties",{accentColor:"",backgroundColor:"",linkUrl:"",linkTarget:"",visualType:"",visualUrl:"",visualThumbnailUrl:"",visualAltText:""}),di(hi,"styles",[hn,o(Nt||(Nt=ci(['\n :host {\n --accent-color: var(--white);\n --background-color: var(--black);\n --text-color: var(--white);\n\n display: block;\n }\n\n a {\n align-items: center;\n background-color: var(--background-color);\n box-shadow: var(--shadow-medium);\n color: var(--text-color);\n display: grid;\n grid-template-areas:\n "visual"\n "content";\n grid-template-columns: auto;\n grid-template-rows: var(--spacing-layout-8) auto;\n text-decoration: none;\n }\n\n .blob {\n fill: var(--accent-color);\n grid-area: visual;\n height: 100%;\n width: 100%;\n }\n\n picture {\n grid-area: visual;\n height: 100%;\n width: 100%;\n z-index: 1;\n }\n\n picture img {\n object-fit: cover;\n object-position: center center;\n height: 100%;\n width: 100%;\n }\n\n picture.illustration img {\n object-fit: contain;\n }\n\n .content {\n padding: var(--spacing-layout-1, 1rem) var(--outer-margin, 1rem);\n }\n\n @media (min-width: 768px) {\n a {\n grid-template-columns: 33% minmax(50%, var(--column-span-6)) auto;\n grid-template-rows: auto;\n grid-template-areas: "visual" "content";\n }\n\n .content {\n text-align: start;\n }\n\n picture {\n max-height: calc(var(--spacing-layout-1) * 12);\n }\n }\n\n @media (prefers-reduced-motion: no-preference) {\n .blob path {\n animation: float 10s ease-in-out infinite;\n z-index: 0;\n }\n }\n\n @keyframes float {\n 0% {\n transform: translatex(0) translatey(0) rotate(0);\n }\n 50% {\n transform: translatex(2px) translatey(-4px) rotate(4deg);\n }\n 100% {\n transform: translatex(0) translatey(0) rotate(0);\n }\n }\n '])))]),customElements.get("cfa-banner")||customElements.define("cfa-banner",hi);class fi extends ln{constructor(){super(),this.atScrollStart=!0,this.atScrollEnd=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("focusin",(n=>{""===n.target.slot&&n.target.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})}))}scrollPrevious(){const n=this.shadowRoot.querySelector(".carousel"),e=this.shadowRoot.querySelector("slot").assignedElements()[0].clientWidth;n.scrollBy({left:-e,behavior:"smooth"})}scrollNext(){const n=this.shadowRoot.querySelector(".carousel"),e=this.shadowRoot.querySelector("slot").assignedElements()[0].clientWidth;n.scrollBy({left:e,behavior:"smooth"})}handleScroll(n){0===n.target.scrollLeft?this.atScrollStart=!0:this.atScrollStart=!1,Math.round(n.target.scrollLeft+n.target.clientWidth)>=Math.round(n.target.scrollWidth)?this.atScrollEnd=!0:this.atScrollEnd=!1}render(){return q(Rt||(Rt=ui(['\n <div class="carousel" @scroll=','>\n <div class="spacer"></div>\n <slot></slot>\n <div class="spacer"></div>\n </div>\n <div class="controls">\n <button\n class="previous ','"\n @click="','"\n >\n <cfa-icon>arrow_back</cfa-icon>\n </button>\n <button\n class="next ','"\n @click="','"\n >\n <cfa-icon>arrow_forward</cfa-icon>\n </button>\n </div>\n '])),this.handleScroll,this.atScrollStart?"disabled":"",this.scrollPrevious,this.atScrollEnd?"disabled":"",this.scrollNext)}}function vi(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function mi(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}pi(fi,"properties",{atScrollStart:{type:Boolean},atScrollEnd:{type:Boolean}}),pi(fi,"styles",[hn,o(It||(It=ui(["\n :host {\n --slide-width-mobile: 75vw;\n --slide-width-desktop: var(--column-span-3);\n\n display: block;\n scrollbar-color: transparent transparent;\n scrollbar-width: 0px;\n scroll-behavior: smooth;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n }\n\n :host(:focus) {\n outline: none !important;\n }\n\n ::-webkit-scrollbar {\n background: transparent;\n width: 0px;\n }\n\n .carousel {\n display: flex;\n gap: var(--spacing-layout-1);\n overflow-x: scroll;\n scroll-snap-type: x mandatory;\n padding-block-start: var(--spacing-layout-half);\n padding-block-end: var(--spacing-layout-1);\n }\n\n .controls {\n margin-block-start: calc(-1 * var(--spacing-layout-half));\n margin-block-end: var(--spacing-layout-1);\n text-align: center;\n }\n\n .controls > * + * {\n margin-inline-start: var(--spacing-layout-half);\n }\n\n .controls button {\n background: transparent;\n border: none;\n border-radius: 50%;\n color: var(--purple-80);\n cursor: pointer;\n font-size: var(--font-size-large, 1.25rem);\n height: var(--spacing-layout-2);\n transition: background-color 0.2s ease-in-out;\n width: var(--spacing-layout-2);\n }\n\n .controls button:hover,\n .controls button:focus {\n background-color: var(--white, #fff);\n }\n\n .controls button:focus {\n outline: var(--focus-outline);\n }\n\n .controls button.disabled {\n color: var(--black-20);\n cursor: default;\n }\n\n .controls button.disabled:hover,\n .controls button.disabled:focus {\n background: transparent;\n outline: none;\n }\n\n ::slotted(*) {\n flex: 0 0 var(--slide-width-mobile);\n margin-block: var(--spacing-layout-1);\n scroll-snap-align: center;\n }\n\n @media (min-width: 1024px) {\n ::slotted(*) {\n flex: 0 0 var(--slide-width-desktop);\n }\n\n .spacer {\n flex: 0 0\n calc((100vw - var(--column-span-12)) / 2 - var(--outer-margin));\n }\n }\n "])))]),customElements.get("cfa-carousel")||customElements.define("cfa-carousel",fi);class gi extends ln{render(){return q(Bt||(Bt=vi(['\n <div class="cta">\n <div class="blob">\n <cfa-blob></cfa-blob>\n </div>\n <div class="content">\n <slot />\n </div>\n </div>\n '])))}}mi(gi,"properties",{}),mi(gi,"styles",[hn,o(Ft||(Ft=vi(["\n :host {\n --bg-color: var(--purple-60);\n --link-color: var(--white);\n --link-hover-color: var(--white);\n --spacing: var(--spacing-layout-1);\n --text-color: var(--white);\n\n background-color: var(--bg-color);\n display: block;\n }\n\n a {\n color: var(--link-color);\n }\n\n a:hover {\n color: var(--link-hover-color);\n }\n\n .cta {\n display: grid;\n }\n\n .cta > * {\n grid-area: 1 / 1;\n }\n\n .content {\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n gap: var(--spacing);\n margin-inline: auto;\n max-width: var(--column-span-8);\n padding: var(--spacing-layout-4) var(--outer-margin);\n position: relative;\n spacing: var(--spacing-layout-2);\n text-align: center;\n }\n\n .blob {\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\n }\n\n cfa-blob {\n --color: var(--purple-80);\n\n overflow: hidden;\n position: absolute;\n height: 120%;\n width: 140%;\n top: -10%;\n left: -20%;\n }\n\n @media (min-width: 768px) {\n cfa-blob {\n left: auto;\n width: 100%;\n height: 200%;\n top: -50%;\n }\n }\n\n ::slotted(*) {\n margin-block: 0 !important;\n }\n "])))]),customElements.get("cfa-cta")||customElements.define("cfa-cta",gi);const bi=o(qt||(qt=function(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}(["\n .wrapper {\n box-sizing: border-box;\n margin: 0 auto;\n max-width: var(--grid-max-width);\n }\n\n .container-fluid {\n margin-inline: auto;\n padding-inline: var(--outer-margin);\n }\n"])));var wi,yi;function xi(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function ki(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}class zi extends ln{render(){return q(wi||(wi=xi(['\n <div class="container-fluid wrapper">\n <div class="layout layout--','">\n <slot name="content-area-1"></slot>\n <slot name="content-area-2"></slot>\n <slot name="content-area-3"></slot>\n </div>\n </div>\n '])),this.theme)}}ki(zi,"properties",{theme:{}}),ki(zi,"styles",[hn,bi,o(yi||(yi=xi(['\n :host {\n --column-gap: var(--gutter-width);\n --row-gap: var(--spacing-layout-1);\n\n display: block;\n }\n\n .layout {\n display: flex;\n flex-direction: column;\n row-gap: var(--row-gap);\n }\n\n /* Theme: one (full-width) */\n @media (min-width: 768px) {\n .layout {\n column-gap: var(--column-gap);\n display: grid;\n grid-template-areas: "content-area-1" "content-area-2" "content-area-3" "content-area-4";\n row-gap: var(--row-gap);\n }\n\n .content-area-1 {\n grid-area: content-area-1;\n }\n .content-area-2 {\n grid-area: content-area-2;\n }\n .content-area-3 {\n grid-area: content-area-3;\n }\n }\n\n @media (min-width: 768px) {\n .layout--one {\n grid-template-columns: 1fr;\n grid-template-areas: "content-area-1";\n }\n }\n\n /* Theme: one-one */\n @media (min-width: 768px) {\n .layout--one-one {\n grid-template-columns: 1fr 1fr;\n grid-template-areas: "content-area-1 content-area-2";\n }\n }\n\n /* Theme: one-two */\n @media (min-width: 768px) {\n .layout--one-two {\n grid-template-columns: 1fr 2fr;\n grid-template-areas: "content-area-1 content-area-2";\n }\n }\n\n /* Theme: two-one */\n @media (min-width: 768px) {\n .layout--two-one {\n grid-template-columns: 2fr 1fr;\n grid-template-areas: "content-area-1 content-area-2";\n }\n }\n\n /* Theme: one-one-one */\n @media (min-width: 768px) {\n .layout--one-one-one {\n grid-template-columns: 1fr 1fr 1fr;\n grid-template-areas: "content-area-1 content-area-2 content-area-3";\n }\n }\n\n /* Theme: one-one-two */\n @media (min-width: 768px) {\n .layout--one-one-two {\n grid-template-columns: 1fr 1fr 2fr;\n grid-template-areas: "content-area-1 content-area-2 content-area-3";\n }\n }\n\n /* Theme: one-two-one */\n @media (min-width: 768px) {\n .layout--one-two-one {\n grid-template-columns: 1fr 2fr 1fr;\n grid-template-areas: "content-area-1 content-area-2 content-area-3";\n }\n }\n\n /* Theme: two-one-one */\n @media (min-width: 768px) {\n .layout--two-one-one {\n grid-template-columns: 2fr 1fr 1fr;\n grid-template-areas: "content-area-1 content-area-2 content-area-3";\n }\n }\n '])))]),customElements.define("cfa-flexible-layout",zi),customElements.get("cfa-flexible-layout")||customElements.define("cfa-flexible-layout",zi)})();
|
|
2
|
+
(()=>{"use strict";const n=globalThis,e=n.ShadowRoot&&(void 0===n.ShadyCSS||n.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,t=Symbol(),r=new WeakMap;class i{constructor(n,e,r){if(this._$cssResult$=!0,r!==t)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=n,this.t=e}get styleSheet(){let n=this.o;const t=this.t;if(e&&void 0===n){const e=void 0!==t&&1===t.length;e&&(n=r.get(t)),void 0===n&&((this.o=n=new CSSStyleSheet).replaceSync(this.cssText),e&&r.set(t,n))}return n}toString(){return this.cssText}}const o=(n,...e)=>{const r=1===n.length?n[0]:e.reduce((e,t,r)=>e+(n=>{if(!0===n._$cssResult$)return n.cssText;if("number"==typeof n)return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(t)+n[r+1],n[0]);return new i(r,n,t)},a=(t,r)=>{if(e)t.adoptedStyleSheets=r.map(n=>n instanceof CSSStyleSheet?n:n.styleSheet);else for(const e of r){const r=document.createElement("style"),i=n.litNonce;void 0!==i&&r.setAttribute("nonce",i),r.textContent=e.cssText,t.appendChild(r)}},s=e?n=>n:n=>n instanceof CSSStyleSheet?(n=>{let e="";for(const t of n.cssRules)e+=t.cssText;return(n=>new i("string"==typeof n?n:n+"",void 0,t))(e)})(n):n,{is:l,defineProperty:c,getOwnPropertyDescriptor:d,getOwnPropertyNames:h,getOwnPropertySymbols:u,getPrototypeOf:p}=Object,f=globalThis,v=f.trustedTypes,m=v?v.emptyScript:"",g=f.reactiveElementPolyfillSupport,b=(n,e)=>n,w={toAttribute(n,e){switch(e){case Boolean:n=n?m:null;break;case Object:case Array:n=null==n?n:JSON.stringify(n)}return n},fromAttribute(n,e){let t=n;switch(e){case Boolean:t=null!==n;break;case Number:t=null===n?null:Number(n);break;case Object:case Array:try{t=JSON.parse(n)}catch(n){t=null}}return t}},y=(n,e)=>!l(n,e),x={attribute:!0,type:String,converter:w,reflect:!1,useDefault:!1,hasChanged:y};Symbol.metadata??=Symbol("metadata"),f.litPropertyMetadata??=new WeakMap;class k extends HTMLElement{static addInitializer(n){this._$Ei(),(this.l??=[]).push(n)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(n,e=x){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(n)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(n,e),!e.noAccessor){const t=Symbol(),r=this.getPropertyDescriptor(n,t,e);void 0!==r&&c(this.prototype,n,r)}}static getPropertyDescriptor(n,e,t){const{get:r,set:i}=d(this.prototype,n)??{get(){return this[e]},set(n){this[e]=n}};return{get:r,set(e){const o=r?.call(this);i?.call(this,e),this.requestUpdate(n,o,t)},configurable:!0,enumerable:!0}}static getPropertyOptions(n){return this.elementProperties.get(n)??x}static _$Ei(){if(this.hasOwnProperty(b("elementProperties")))return;const n=p(this);n.finalize(),void 0!==n.l&&(this.l=[...n.l]),this.elementProperties=new Map(n.elementProperties)}static finalize(){if(this.hasOwnProperty(b("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(b("properties"))){const n=this.properties,e=[...h(n),...u(n)];for(const t of e)this.createProperty(t,n[t])}const n=this[Symbol.metadata];if(null!==n){const e=litPropertyMetadata.get(n);if(void 0!==e)for(const[n,t]of e)this.elementProperties.set(n,t)}this._$Eh=new Map;for(const[n,e]of this.elementProperties){const t=this._$Eu(n,e);void 0!==t&&this._$Eh.set(t,n)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(n){const e=[];if(Array.isArray(n)){const t=new Set(n.flat(1/0).reverse());for(const n of t)e.unshift(s(n))}else void 0!==n&&e.push(s(n));return e}static _$Eu(n,e){const t=e.attribute;return!1===t?void 0:"string"==typeof t?t:"string"==typeof n?n.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(n=>this.enableUpdating=n),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(n=>n(this))}addController(n){(this._$EO??=new Set).add(n),void 0!==this.renderRoot&&this.isConnected&&n.hostConnected?.()}removeController(n){this._$EO?.delete(n)}_$E_(){const n=new Map,e=this.constructor.elementProperties;for(const t of e.keys())this.hasOwnProperty(t)&&(n.set(t,this[t]),delete this[t]);n.size>0&&(this._$Ep=n)}createRenderRoot(){const n=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return a(n,this.constructor.elementStyles),n}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(n=>n.hostConnected?.())}enableUpdating(n){}disconnectedCallback(){this._$EO?.forEach(n=>n.hostDisconnected?.())}attributeChangedCallback(n,e,t){this._$AK(n,t)}_$ET(n,e){const t=this.constructor.elementProperties.get(n),r=this.constructor._$Eu(n,t);if(void 0!==r&&!0===t.reflect){const i=(void 0!==t.converter?.toAttribute?t.converter:w).toAttribute(e,t.type);this._$Em=n,null==i?this.removeAttribute(r):this.setAttribute(r,i),this._$Em=null}}_$AK(n,e){const t=this.constructor,r=t._$Eh.get(n);if(void 0!==r&&this._$Em!==r){const n=t.getPropertyOptions(r),i="function"==typeof n.converter?{fromAttribute:n.converter}:void 0!==n.converter?.fromAttribute?n.converter:w;this._$Em=r;const o=i.fromAttribute(e,n.type);this[r]=o??this._$Ej?.get(r)??o,this._$Em=null}}requestUpdate(n,e,t){if(void 0!==n){const r=this.constructor,i=this[n];if(t??=r.getPropertyOptions(n),!((t.hasChanged??y)(i,e)||t.useDefault&&t.reflect&&i===this._$Ej?.get(n)&&!this.hasAttribute(r._$Eu(n,t))))return;this.C(n,e,t)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(n,e,{useDefault:t,reflect:r,wrapped:i},o){t&&!(this._$Ej??=new Map).has(n)&&(this._$Ej.set(n,o??e??this[n]),!0!==i||void 0!==o)||(this._$AL.has(n)||(this.hasUpdated||t||(e=void 0),this._$AL.set(n,e)),!0===r&&this._$Em!==n&&(this._$Eq??=new Set).add(n))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(n){Promise.reject(n)}const n=this.scheduleUpdate();return null!=n&&await n,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[n,e]of this._$Ep)this[n]=e;this._$Ep=void 0}const n=this.constructor.elementProperties;if(n.size>0)for(const[e,t]of n){const{wrapped:n}=t,r=this[e];!0!==n||this._$AL.has(e)||void 0===r||this.C(e,void 0,t,r)}}let n=!1;const e=this._$AL;try{n=this.shouldUpdate(e),n?(this.willUpdate(e),this._$EO?.forEach(n=>n.hostUpdate?.()),this.update(e)):this._$EM()}catch(e){throw n=!1,this._$EM(),e}n&&this._$AE(e)}willUpdate(n){}_$AE(n){this._$EO?.forEach(n=>n.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(n)),this.updated(n)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(n){return!0}update(n){this._$Eq&&=this._$Eq.forEach(n=>this._$ET(n,this[n])),this._$EM()}updated(n){}firstUpdated(n){}}k.elementStyles=[],k.shadowRootOptions={mode:"open"},k[b("elementProperties")]=new Map,k[b("finalized")]=new Map,g?.({ReactiveElement:k}),(f.reactiveElementVersions??=[]).push("2.1.1");const z=globalThis,j=z.trustedTypes,E=j?j.createPolicy("lit-html",{createHTML:n=>n}):void 0,_="$lit$",S=`lit$${Math.random().toFixed(9).slice(2)}$`,P="?"+S,$=`<${P}>`,A=document,O=()=>A.createComment(""),C=n=>null===n||"object"!=typeof n&&"function"!=typeof n,T=Array.isArray,U="[ \t\n\f\r]",L=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,M=/-->/g,H=/>/g,N=RegExp(`>|${U}(?:([^\\s"'>=/]+)(${U}*=${U}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),R=/'/g,I=/"/g,B=/^(?:script|style|textarea|title)$/i,F=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),q=F(1),V=F(2),D=(F(3),Symbol.for("lit-noChange")),W=Symbol.for("lit-nothing"),Z=new WeakMap,K=A.createTreeWalker(A,129);function J(n,e){if(!T(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==E?E.createHTML(e):e}const X=(n,e)=>{const t=n.length-1,r=[];let i,o=2===e?"<svg>":3===e?"<math>":"",a=L;for(let e=0;e<t;e++){const t=n[e];let s,l,c=-1,d=0;for(;d<t.length&&(a.lastIndex=d,l=a.exec(t),null!==l);)d=a.lastIndex,a===L?"!--"===l[1]?a=M:void 0!==l[1]?a=H:void 0!==l[2]?(B.test(l[2])&&(i=RegExp("</"+l[2],"g")),a=N):void 0!==l[3]&&(a=N):a===N?">"===l[0]?(a=i??L,c=-1):void 0===l[1]?c=-2:(c=a.lastIndex-l[2].length,s=l[1],a=void 0===l[3]?N:'"'===l[3]?I:R):a===I||a===R?a=N:a===M||a===H?a=L:(a=N,i=void 0);const h=a===N&&n[e+1].startsWith("/>")?" ":"";o+=a===L?t+$:c>=0?(r.push(s),t.slice(0,c)+_+t.slice(c)+S+h):t+S+(-2===c?e:h)}return[J(n,o+(n[t]||"<?>")+(2===e?"</svg>":3===e?"</math>":"")),r]};class Y{constructor({strings:n,_$litType$:e},t){let r;this.parts=[];let i=0,o=0;const a=n.length-1,s=this.parts,[l,c]=X(n,e);if(this.el=Y.createElement(l,t),K.currentNode=this.el.content,2===e||3===e){const n=this.el.content.firstChild;n.replaceWith(...n.childNodes)}for(;null!==(r=K.nextNode())&&s.length<a;){if(1===r.nodeType){if(r.hasAttributes())for(const n of r.getAttributeNames())if(n.endsWith(_)){const e=c[o++],t=r.getAttribute(n).split(S),a=/([.?@])?(.*)/.exec(e);s.push({type:1,index:i,name:a[2],strings:t,ctor:"."===a[1]?tn:"?"===a[1]?rn:"@"===a[1]?on:en}),r.removeAttribute(n)}else n.startsWith(S)&&(s.push({type:6,index:i}),r.removeAttribute(n));if(B.test(r.tagName)){const n=r.textContent.split(S),e=n.length-1;if(e>0){r.textContent=j?j.emptyScript:"";for(let t=0;t<e;t++)r.append(n[t],O()),K.nextNode(),s.push({type:2,index:++i});r.append(n[e],O())}}}else if(8===r.nodeType)if(r.data===P)s.push({type:2,index:i});else{let n=-1;for(;-1!==(n=r.data.indexOf(S,n+1));)s.push({type:7,index:i}),n+=S.length-1}i++}}static createElement(n,e){const t=A.createElement("template");return t.innerHTML=n,t}}function G(n,e,t=n,r){if(e===D)return e;let i=void 0!==r?t._$Co?.[r]:t._$Cl;const o=C(e)?void 0:e._$litDirective$;return i?.constructor!==o&&(i?._$AO?.(!1),void 0===o?i=void 0:(i=new o(n),i._$AT(n,t,r)),void 0!==r?(t._$Co??=[])[r]=i:t._$Cl=i),void 0!==i&&(e=G(n,i._$AS(n,e.values),i,r)),e}class Q{constructor(n,e){this._$AV=[],this._$AN=void 0,this._$AD=n,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(n){const{el:{content:e},parts:t}=this._$AD,r=(n?.creationScope??A).importNode(e,!0);K.currentNode=r;let i=K.nextNode(),o=0,a=0,s=t[0];for(;void 0!==s;){if(o===s.index){let e;2===s.type?e=new nn(i,i.nextSibling,this,n):1===s.type?e=new s.ctor(i,s.name,s.strings,this,n):6===s.type&&(e=new an(i,this,n)),this._$AV.push(e),s=t[++a]}o!==s?.index&&(i=K.nextNode(),o++)}return K.currentNode=A,r}p(n){let e=0;for(const t of this._$AV)void 0!==t&&(void 0!==t.strings?(t._$AI(n,t,e),e+=t.strings.length-2):t._$AI(n[e])),e++}}class nn{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(n,e,t,r){this.type=2,this._$AH=W,this._$AN=void 0,this._$AA=n,this._$AB=e,this._$AM=t,this.options=r,this._$Cv=r?.isConnected??!0}get parentNode(){let n=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===n?.nodeType&&(n=e.parentNode),n}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(n,e=this){n=G(this,n,e),C(n)?n===W||null==n||""===n?(this._$AH!==W&&this._$AR(),this._$AH=W):n!==this._$AH&&n!==D&&this._(n):void 0!==n._$litType$?this.$(n):void 0!==n.nodeType?this.T(n):(n=>T(n)||"function"==typeof n?.[Symbol.iterator])(n)?this.k(n):this._(n)}O(n){return this._$AA.parentNode.insertBefore(n,this._$AB)}T(n){this._$AH!==n&&(this._$AR(),this._$AH=this.O(n))}_(n){this._$AH!==W&&C(this._$AH)?this._$AA.nextSibling.data=n:this.T(A.createTextNode(n)),this._$AH=n}$(n){const{values:e,_$litType$:t}=n,r="number"==typeof t?this._$AC(n):(void 0===t.el&&(t.el=Y.createElement(J(t.h,t.h[0]),this.options)),t);if(this._$AH?._$AD===r)this._$AH.p(e);else{const n=new Q(r,this),t=n.u(this.options);n.p(e),this.T(t),this._$AH=n}}_$AC(n){let e=Z.get(n.strings);return void 0===e&&Z.set(n.strings,e=new Y(n)),e}k(n){T(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let t,r=0;for(const i of n)r===e.length?e.push(t=new nn(this.O(O()),this.O(O()),this,this.options)):t=e[r],t._$AI(i),r++;r<e.length&&(this._$AR(t&&t._$AB.nextSibling,r),e.length=r)}_$AR(n=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);n!==this._$AB;){const e=n.nextSibling;n.remove(),n=e}}setConnected(n){void 0===this._$AM&&(this._$Cv=n,this._$AP?.(n))}}class en{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(n,e,t,r,i){this.type=1,this._$AH=W,this._$AN=void 0,this.element=n,this.name=e,this._$AM=r,this.options=i,t.length>2||""!==t[0]||""!==t[1]?(this._$AH=Array(t.length-1).fill(new String),this.strings=t):this._$AH=W}_$AI(n,e=this,t,r){const i=this.strings;let o=!1;if(void 0===i)n=G(this,n,e,0),o=!C(n)||n!==this._$AH&&n!==D,o&&(this._$AH=n);else{const r=n;let a,s;for(n=i[0],a=0;a<i.length-1;a++)s=G(this,r[t+a],e,a),s===D&&(s=this._$AH[a]),o||=!C(s)||s!==this._$AH[a],s===W?n=W:n!==W&&(n+=(s??"")+i[a+1]),this._$AH[a]=s}o&&!r&&this.j(n)}j(n){n===W?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,n??"")}}class tn extends en{constructor(){super(...arguments),this.type=3}j(n){this.element[this.name]=n===W?void 0:n}}class rn extends en{constructor(){super(...arguments),this.type=4}j(n){this.element.toggleAttribute(this.name,!!n&&n!==W)}}class on extends en{constructor(n,e,t,r,i){super(n,e,t,r,i),this.type=5}_$AI(n,e=this){if((n=G(this,n,e,0)??W)===D)return;const t=this._$AH,r=n===W&&t!==W||n.capture!==t.capture||n.once!==t.once||n.passive!==t.passive,i=n!==W&&(t===W||r);r&&this.element.removeEventListener(this.name,this,t),i&&this.element.addEventListener(this.name,this,n),this._$AH=n}handleEvent(n){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,n):this._$AH.handleEvent(n)}}class an{constructor(n,e,t){this.element=n,this.type=6,this._$AN=void 0,this._$AM=e,this.options=t}get _$AU(){return this._$AM._$AU}_$AI(n){G(this,n)}}const sn=z.litHtmlPolyfillSupport;sn?.(Y,nn),(z.litHtmlVersions??=[]).push("3.3.1");const ln=globalThis;class cn extends k{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const n=super.createRenderRoot();return this.renderOptions.renderBefore??=n.firstChild,n}update(n){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(n),this._$Do=((n,e,t)=>{const r=t?.renderBefore??e;let i=r._$litPart$;if(void 0===i){const n=t?.renderBefore??null;r._$litPart$=i=new nn(e.insertBefore(O(),n),n,void 0,t??{})}return i._$AI(n),i})(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return D}}cn._$litElement$=!0,cn.finalized=!0,ln.litElementHydrateSupport?.({LitElement:cn});const dn=ln.litElementPolyfillSupport;var hn;dn?.({LitElement:cn}),(ln.litElementVersions??=[]).push("4.2.1");const un=o(hn||(hn=function(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}(["\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n }\n\n *:focus-visible,\n *:target {\n outline: var(--focus-outline);\n position: relative;\n }\n"])));var pn,fn,vn,mn,gn,bn,wn,yn,xn,kn,zn;function jn(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function En(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}class _n extends cn{render(){return q(pn||(pn=jn(["\n <style>\n :host {\n --size: var(--spacing-layout-",", 8rem);\n }\n </style>\n <picture>\n ","\n </picture>\n "])),this.size||"4",this.imageUrl?q(fn||(fn=jn(['\n <img\n src="','"\n loading="lazy"\n alt="','"\n />\n '])),this.imageUrl,this.altText):W)}}function Sn(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Pn(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}En(_n,"properties",{imageUrl:{},altText:{},size:{}}),En(_n,"styles",[un,o(vn||(vn=jn(["\n :host {\n --bg-color: var(--blue-20);\n\n display: inline-block;\n max-width: 100%;\n }\n\n picture {\n aspect-ratio: 1 / 1;\n background-color: var(--bg-color);\n border-radius: 50%;\n display: block;\n max-width: 100%;\n overflow: hidden;\n width: var(--size);\n }\n\n img {\n display: block;\n height: 100%;\n object-fit: cover;\n width: 100%;\n }\n "])))]),customElements.get("cfa-avatar")||customElements.define("cfa-avatar",_n);class $n extends cn{constructor(){super(),this.shape="1"}blobTemplate(){let n;switch(this.shape){case"1":n=q(mn||(mn=Sn(['<svg\n width="628"\n height="577"\n viewBox="0 0 628 577"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M304.482 3.44206C399.413 -5.50752 504.225 1.17063 567.446 72.5295C633.526 147.115 639.549 256.491 613.992 352.793C589.57 444.814 526.084 523.087 438.164 559.679C355.477 594.092 265.039 570.416 184.315 531.621C103.504 492.784 22.0294 438.546 3.59029 350.826C-14.5863 264.355 39.2746 183.666 97.1329 116.868C151.394 54.223 221.956 11.2221 304.482 3.44206Z"\n />\n </svg>'])));break;case"2":n=q(gn||(gn=Sn(['<svg\n width="580"\n height="592"\n viewBox="0 0 580 592"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n d="M238.814 591.215C210.461 592.077 182.849 587.767 155.66 580.979C60.4457 557.059 4.05766 489.933 0.460672 390.376C-2.50155 306.442 8.71258 223.693 37.2769 144.499C73.2468 44.6185 170.894 -12.5948 276.159 2.81295C358.996 14.9883 437.177 39.3389 499.172 100.108C588.039 187.167 604.437 293.512 544.346 402.767C514.618 456.855 477.59 505.988 426.386 541.544C369.892 580.656 304.723 587.767 238.814 591.215Z"\n />\n </svg>'])));break;case"3":n=q(bn||(bn=Sn(['<svg\n width="620"\n height="613"\n viewBox="0 0 620 613"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M619.142 301.769C615.581 212.393 536.92 153.752 466.654 98.7402C397.998 44.9883 323.934 -10.5844 236.421 2.12929C141.656 15.8965 53.9975 76.8338 15.687 164.256C-20.6955 247.277 16.2818 336.243 54.5575 417.127C92.4807 497.265 137.965 580.831 224.139 604.752C314.166 629.742 409.183 593.817 484.092 536.359C559.738 478.336 622.883 395.641 619.142 301.769Z"\n />\n </svg>'])));break;case"4":n=q(wn||(wn=Sn(['<svg\n width="656"\n height="566"\n viewBox="0 0 656 566"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M332.011 564.695C235.808 569.34 135.091 552.4 71.2946 488.381C4.66596 421.518 -10.0767 327.738 8.2158 239.764C27.3773 147.61 73.5054 52.3693 169.88 14.2546C263.181 -22.6447 364.8 21.5179 455.491 62.8734C540.631 101.698 627.337 150.367 649.771 233.088C672.265 316.032 626.78 399.503 564.43 464.569C505.684 525.875 422.382 560.331 332.011 564.695Z"\n />\n </svg>'])));break;default:n=q(yn||(yn=Sn(['<svg\n width="628"\n height="577"\n viewBox="0 0 628 577"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M304.482 3.44206C399.413 -5.50752 504.225 1.17063 567.446 72.5295C633.526 147.115 639.549 256.491 613.992 352.793C589.57 444.814 526.084 523.087 438.164 559.679C355.477 594.092 265.039 570.416 184.315 531.621C103.504 492.784 22.0294 438.546 3.59029 350.826C-14.5863 264.355 39.2746 183.666 97.1329 116.868C151.394 54.223 221.956 11.2221 304.482 3.44206Z"\n />\n </svg>'])))}return n}render(){return q(xn||(xn=Sn([' <div class="blob">',"</div> "])),this.blobTemplate())}}Pn($n,"properties",{color:{},shape:{},styles:{}}),Pn($n,"styles",[un,o(kn||(kn=Sn(["\n :host {\n --color: var(--blue-20);\n\n display: block;\n }\n\n .blob,\n svg {\n height: 100%;\n width: 100%;\n }\n\n svg path {\n fill: var(--color, #fff);\n }\n "])))]),customElements.get("cfa-blob")||customElements.define("cfa-blob",$n);const An=o(zn||(zn=function(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}(['\n .cfa-button,\n a.cfa-button, \n .cfa-button > a,\n .wp-block-button > * {\n --bg-color: var(--white);\n --border-color: transparent;\n --font-family: var(--font-family-sans-serif);\n --font-size: var(--font-size-base);\n --hover-bg-color: var(--blue-20);\n --hover-border-color: var(--border-color);\n --line-height: var(--line-height-base);\n --text-color: var(--purple-80);\n\n background-color: var(--bg-color);\n border: var(--hairline) solid var(--border-color);\n border-radius: var(--rounded-corners);\n box-shadow: var(--shadow-small);\n color: var(--text-color);\n cursor: pointer;\n display: block;\n font-family: var(--font-family);\n font-size: var(--font-size);\n font-weight: bold;\n padding: var(--spacing-component-2) var(--spacing-component-3);\n text-align: center;\n text-decoration: none;\n transition: background-color 0.5s, box-shadow 0.5s;\n\n &:hover {\n background-color: var(--hover-bg-color);\n border-color: var(--hover-border-color);\n box-shadow: var(--shadow-medium);\n color: var(--text-color);\n }\n\n & cfa-icon {\n line-height: 1em;\n }\n }\n\n @media (max-width: 768px) {\n .cfa-button, \n a.cfa-button, \n .cfa-button > a,\n .wp-block-button > * {\n width: 100%;\n \n & + & {\n margin-block-start: var(--spacing-layout-half);\n }\n }\n\n .wp-block-button {\n width: 100%;\n }\n }\n\n @media (min-width: 768px) {\n .cfa-button, \n a.cfa-button, \n .cfa-button > a,\n .wp-block-button > * {\n display: inline-block;\n\n & {\n margin-block: var(--spacing-component-2);\n margin-inline-end: var(--spacing-component-2);\n }\n }\n }\n\n // Themes / variants\n\n .cfa-button--primary,\n a.cfa-button--primary,\n .cfa-button--primary > a,\n .wp-block-button.is-style-primary > * {\n --bg-color: var(--red-60);\n --hover-bg-color: var(--red-80);\n --text-color: var(--white,);\n }\n\n .cfa-button--outline,\n a.cfa-button--outline,\n .cfa-button--outline > a,\n .wp-block-button.is-style-outline > * {\n --border-color: var(--black-20);\n --bg-color: transparent;\n }\n\n .cfa-button--outline-white,\n a.cfa-button--outline-white,\n .cfa-button--outline-white > a,\n .wp-block-button.is-style-outline-white > * {\n --border-color: var(--white);\n --bg-color: transparent;\n --hover-bg-color: var(--black-20);\n --shadow-color: var(--white-20);\n --text-color: var(--white);\n }\n\n .cfa-button--prominent-link,\n a.cfa-button--prominent-link,\n .cfa-button--prominent-link > a,\n .wp-block-button.is-style-prominent-link > * {\n --accent-color: var(--purple-60);\n\n background: unset;\n box-shadow: unset;\n color: inherit;\n font-weight: bold;\n padding: 0;\n text-decoration: underline;\n text-decoration-color: var(--accent-color);\n text-decoration-thickness: var(--medium);\n text-underline-offset: 0.4em;\n transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out; \n\n &:hover {\n --accent-color: var(--red-60);\n \n background: unset;\n box-shadow: unset;\n }\n\n &::after {\n @include icon.icon;\n \n content: "arrow_right_alt";\n display: inline-block;\n padding-inline-start: 0.1em;\n text-decoration: none;\n transition: transform 0.2s ease-in-out;\n width: 1em;\n }\n\n &:hover::after {\n transform: translateX(0.3em);\n }\n\n cfa-icon {\n text-decoration: none;\n }\n }\n\n // Sizes\n\n .cfa-button--sm,\n a.cfa-button--sm,\n .cfa-button--sm > a {\n --font-size: var(--font-size-small);\n --line-height: var(--line-height-small);\n }\n\n .cfa-button--md,\n a.cfa-button--md,\n .cfa-button--md > a {\n --font-size: var(--font-size-base);\n --line-height: var(--line-height-base);\n }\n'])));var On,Cn,Tn;function Un(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}class Ln extends cn{render(){return q(On||(On=Un(['\n <span class="icon">\n <slot></slot>\n </span>\n '])))}}!function(n,e,t){(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t}(Ln,"styles",[un,o(Cn||(Cn=Un(['\n :host {\n --size: 1.2em;\n\n vertical-align: middle;\n }\n\n .icon {\n -webkit-font-feature-settings: "liga";\n direction: ltr;\n display: inline-block;\n font-family: "Material Symbols Rounded";\n font-size: var(--size);\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n text-transform: none;\n white-space: nowrap;\n word-wrap: normal;\n }\n '])))]),customElements.get("cfa-icon")||customElements.define("cfa-icon",Ln);const Mn=o(Tn||(Tn=function(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}(['\n .serif {\n font-family: var(--font-family-serif) !important;\n }\n\n .sans-serif {\n font-family: var(--font-family-sans-serif) !important;\n }\n\n .normal {\n font-weight: normal !important;\n }\n\n .strong {\n font-weight: bold !important;\n }\n\n italic {\n font-style: italic !important;\n }\n\n .display 1 {\n font-family: var(--font-family-display-1);\n font-size: var(--font-size-display-1);\n font-weight: var(--font-weight-display-1);\n letter-spacing: var(--letter-spacing-display-1);\n line-height: var(--line-height-display-1);\n }\n\n .display-2 {\n font-family: var(--font-family-display-2);\n font-size: var(--font-size-display-2);\n font-weight: var(--font-weight-display-2);\n letter-spacing: var(--letter-spacing-display-2);\n line-height: var(--line-height-display-2);\n }\n\n .h1 {\n font-family: var(--font-family-h1);\n font-size: var(--font-size-h1);\n font-weight: var(--font-weight-h1);\n letter-spacing: var(--letter-spacing-h1);\n line-height: var(--line-height-h1);\n }\n\n .h2 {\n font-family: var(--font-family-h2);\n font-size: var(--font-size-h2);\n font-weight: var(--font-weight-h2);\n letter-spacing: var(--letter-spacing-h2);\n line-height: var(--line-height-h2);\n }\n\n .h3 {\n font-family: var(--font-family-h3);\n font-size: var(--font-size-h3);\n font-weight: var(--font-weight-h3);\n letter-spacing: var(--letter-spacing-h3);\n line-height: var(--line-height-h3);\n }\n\n .h4 {\n font-family: var(--font-family-h4);\n font-size: var(--font-size-h4);\n font-weight: var(--font-weight-h4);\n letter-spacing: var(--letter-spacing-h4);\n line-height: var(--line-height-h4);\n }\n\n .eyebrow {\n font-family: var(--font-family-eyebrow);\n font-size: var(--font-size-eyebrow);\n font-weight: var(--font-weight-eyebrow);\n letter-spacing: var(--letter-spacing-eyebrow);\n line-height: var(--line-height-eyebrow);\n text-transform: uppercase;\n }\n\n .eyebrow-with-line {\n align-items: center;\n color: var(--text-color);\n display: flex;\n font-family: var(--font-family-eyebrow);\n font-size: var(--font-size-eyebrow);\n font-weight: var(--font-weight-eyebrow);\n letter-spacing: var(--letter-spacing-eyebrow);\n line-height: var(--line-height-eyebrow);\n margin-block-end: var(--spacing-layout-half);\n position: relative;\n text-transform: uppercase;\n }\n\n .eyebrow-with-line::after {\n border-block-end: var(--hairline) solid var(--text-color);\n content: "";\n flex-grow: 1;\n margin-left: var(--spacing-component-3);\n }\n\n .small {\n font-size: var(--font-size-small);\n letter-spacing: var(--letter-spacing-small);\n line-height: var(--line-height-small);\n }\n\n .subtle {\n color: var(--text-color-subtle);\n }\n'])));var Hn,Nn,Rn,In,Bn,Fn,qn,Vn,Dn,Wn,Zn,Kn,Jn,Xn,Yn,Gn,Qn,ne,ee,te,re,ie,oe,ae,se,le,ce,de,he,ue,pe,fe,ve,me,ge,be,we,ye,xe,ke,ze,je,Ee,_e,Se,Pe,$e,Ae,Oe,Ce,Te,Ue,Le,Me,He,Ne,Re,Ie,Be,Fe,qe,Ve,De,We,Ze,Ke,Je,Xe,Ye,Ge,Qe,nt,et,tt,rt,it,ot,at,st,lt,ct,dt,ht,ut,pt,ft,vt,mt,gt,bt,wt,yt,xt,kt,zt,jt,Et,_t,St,Pt,$t,At,Ot,Ct,Tt,Ut,Lt,Mt,Ht,Nt,Rt,It,Bt,Ft,qt,Vt;function Dt(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Wt(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}class Zt extends cn{render(){return q(Hn||(Hn=Dt(['\n <div class="label small strong" color="','">\n <slot />\n </div>\n '])),this.color)}}function Kt(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}Wt(Zt,"properties",{color:""}),Wt(Zt,"styles",[un,Mn,o(Nn||(Nn=Dt(['\n .label {\n --background-color: var(--gray-20);\n --text-color: var(--black, #000);\n\n background-color: var(--background-color);\n color: var(--text-color);\n display: inline-block;\n line-height: 1em;\n padding: var(--spacing-component-2) var(--spacing-component-3);\n }\n\n .label[color="white"] {\n --background-color: var(--white, #fff);\n box-shadow: var(--shadow-small);\n }\n\n .label[color="purple"] {\n --background-color: var(--purple-20);\n }\n\n .label[color="red"] {\n --background-color: var(--red-20);\n }\n\n .label[color="blue"] {\n --background-color: var(--blue-20);\n }\n\n .label[color="green"] {\n --background-color: var(--green-20);\n }\n\n .label[color="yellow"] {\n --background-color: var(--yellow-20);\n }\n '])))]),customElements.get("cfa-label")||customElements.define("cfa-label",Zt);class Jt extends cn{render(){return q(Rn||(Rn=Kt([" <slot /> "])))}}function Xt(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Yt(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}!function(n,e,t){(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t}(Jt,"styles",[un,o(In||(In=Kt(["\n :host {\n --bg-color: var(--gray-20);\n --text-color: var(--gray-80);\n\n background-color: var(--bg-color);\n border-radius: var(--spacing-component-3);\n color: var(--text-color);\n display: inline-block;\n font-size: var(--font-size-small);\n font-weight: bold;\n line-height: 1;\n margin-right: var(--spacing-component-1);\n padding: var(--spacing-component-1) var(--spacing-component-2);\n vertical-align: middle;\n }\n "])))]),customElements.get("cfa-pill")||customElements.define("cfa-pill",Jt);class Gt extends cn{render(){return q(Bn||(Bn=Xt(["\n <blockquote>\n <slot />\n </blockquote>\n "])))}}function Qt(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function nr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Yt(Gt,"properties",{}),Yt(Gt,"styles",[un,o(Fn||(Fn=Xt(["\n :host {\n --color: var(--purple-60);\n\n display: block;\n }\n blockquote {\n border-inline-start: var(--thick) solid var(--color);\n color: var(--color);\n font-size: var(--font-size-h3);\n font-weight: 600;\n line-height: var(--line-height-h3);\n margin: 0;\n padding: var(--spacing-layout-half) var(--spacing-layout-1);\n }\n p {\n margin: 0;\n }\n p + p {\n margin-block-start: var(--spacing-layout-half);\n }\n "])))]),customElements.get("cfa-pullquote")||customElements.define("cfa-pullquote",Gt);class er extends cn{render(){return q(qn||(qn=Qt(['\n <figure>\n <blockquote>\n <slot name="text"></slot>\n </blockquote>\n <figcaption>\n <slot name="attribution"></slot>\n </figcaption>\n </figure>\n '])))}}function tr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function rr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}nr(er,"properties",{text:{},attribution:{}}),nr(er,"styles",[un,o(Vn||(Vn=Qt(['\n :host {\n --attribution-color: var(--purple-60);\n }\n\n figure {\n margin-inline: auto;\n max-width: var(--column-span-8);\n position: relative;\n }\n\n blockquote {\n font-family: var(--font-family-serif);\n font-size: var(--font-size-h3);\n line-height: var(--line-height-h3);\n padding: 0;\n margin: 0;\n position: relative;\n }\n\n blockquote::before {\n color: var(--attribution-color);\n content: "“";\n display: block;\n font-size: var(--font-size-display-1);\n left: -0.5em;\n line-height: 1;\n position: absolute;\n top: 0;\n width: 0.25em;\n }\n\n ::slotted(*) {\n display: inline;\n }\n\n figcaption {\n color: var(--attribution-color);\n font-size: var(--font-size-small);\n line-height: var(--line-height-small);\n font-weight: 600;\n margin-block-start: var(--spacing-layout-half);\n margin-inline: 0;\n position: relative;\n }\n\n figcaption::before {\n background-color: currentColor;\n content: "";\n display: inline-block;\n vertical-align: middle;\n height: var(--hairline);\n width: var(--spacing-component-4);\n margin-inline-end: var(--spacing-component-2);\n }\n '])))]),customElements.get("cfa-quote")||customElements.define("cfa-quote",er);class ir extends cn{constructor(){super()}iconTemplate(n){switch(n){case"bluesky":return q(Dn||(Dn=tr(['\n <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 568 501">\n <path class="st0" d="M123.1,33.7c65.1,48.9,135.2,148,160.9,201.2,25.7-53.2,95.8-152.3,160.9-201.2,47-35.3,123.1-62.6,123.1,24.3s-9.9,145.7-15.8,166.6c-20.3,72.5-94.2,90.9-159.9,79.7,114.9,19.6,144.1,84.3,81,149.1-119.9,123-172.3-30.9-185.7-70.3-2.5-7.2-3.6-10.6-3.6-7.7,0-2.9-1.2.5-3.6,7.7-13.4,39.4-65.8,193.3-185.7,70.3-63.1-64.8-33.9-129.5,81-149.1-65.7,11.2-139.6-7.3-159.9-79.7C9.9,203.7,0,75.3,0,57.9,0-28.9,76.1-1.6,123.1,33.7Z"/>\n </svg>\n '])));case"dropbox":return q(Wn||(Wn=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16.5"\n viewBox="0 0 528 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M264.4 116.3l-132 84.3 132 84.3-132 84.3L0 284.1l132.3-84.3L0 116.3 132.3 32l132.1 84.3zM131.6 395.7l132-84.3 132 84.3-132 84.3-132-84.3zm132.8-111.6l132-84.3-132-83.6L395.7 32 528 116.3l-132.3 84.3L528 284.8l-132.3 84.3-131.3-85z"\n />\n </svg>\n '])));case"facebook":return q(Zn||(Zn=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16"\n viewBox="0 0 512 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M512 256C512 114.6 397.4 0 256 0S0 114.6 0 256C0 376 82.7 476.8 194.2 504.5V334.2H141.4V256h52.8V222.3c0-87.1 39.4-127.5 125-127.5c16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1c-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H287V510.1C413.8 494.8 512 386.9 512 256h0z"\n />\n </svg>\n '])));case"github":return q(Kn||(Kn=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="15.5"\n viewBox="0 0 496 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"\n />\n </svg>\n '])));case"google-drive":return q(Jn||(Jn=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16"\n viewBox="0 0 512 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M339 314.9L175.4 32h161.2l163.6 282.9H339zm-137.5 23.6L120.9 480h310.5L512 338.5H201.5zM154.1 67.4L0 338.5 80.6 480 237 208.8 154.1 67.4z"\n />\n </svg>\n '])));case"google":return q(Xn||(Xn=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="15.25"\n viewBox="0 0 488 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z"\n />\n </svg>\n '])));case"instagram":return q(Yn||(Yn=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="14"\n viewBox="0 0 448 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"\n />\n </svg>\n '])));case"linkedin":return q(Gn||(Gn=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="14"\n viewBox="0 0 448 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"\n />\n </svg>\n '])));case"reddit":return q(Qn||(Qn=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16"\n viewBox="0 0 512 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M0 256C0 114.6 114.6 0 256 0S512 114.6 512 256s-114.6 256-256 256L37.1 512c-13.7 0-20.5-16.5-10.9-26.2L75 437C28.7 390.7 0 326.7 0 256zM349.6 153.6c23.6 0 42.7-19.1 42.7-42.7s-19.1-42.7-42.7-42.7c-20.6 0-37.8 14.6-41.8 34c-34.5 3.7-61.4 33-61.4 68.4l0 .2c-37.5 1.6-71.8 12.3-99 29.1c-10.1-7.8-22.8-12.5-36.5-12.5c-33 0-59.8 26.8-59.8 59.8c0 24 14.1 44.6 34.4 54.1c2 69.4 77.6 125.2 170.6 125.2s168.7-55.9 170.6-125.3c20.2-9.6 34.1-30.2 34.1-54c0-33-26.8-59.8-59.8-59.8c-13.7 0-26.3 4.6-36.4 12.4c-27.4-17-62.1-27.7-100-29.1l0-.2c0-25.4 18.9-46.5 43.4-49.9l0 0c4.4 18.8 21.3 32.8 41.5 32.8zM177.1 246.9c16.7 0 29.5 17.6 28.5 39.3s-13.5 29.6-30.3 29.6s-31.4-8.8-30.4-30.5s15.4-38.3 32.1-38.3zm190.1 38.3c1 21.7-13.7 30.5-30.4 30.5s-29.3-7.9-30.3-29.6c-1-21.7 11.8-39.3 28.5-39.3s31.2 16.6 32.1 38.3zm-48.1 56.7c-10.3 24.6-34.6 41.9-63 41.9s-52.7-17.3-63-41.9c-1.2-2.9 .8-6.2 3.9-6.5c18.4-1.9 38.3-2.9 59.1-2.9s40.7 1 59.1 2.9c3.1 .3 5.1 3.6 3.9 6.5z"\n />\n </svg>\n '])));case"soundcloud":return q(ne||(ne=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="20"\n viewBox="0 0 640 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M111.4 256.3l5.8 65-5.8 68.3c-.3 2.5-2.2 4.4-4.4 4.4s-4.2-1.9-4.2-4.4l-5.6-68.3 5.6-65c0-2.2 1.9-4.2 4.2-4.2 2.2 0 4.1 2 4.4 4.2zm21.4-45.6c-2.8 0-4.7 2.2-5 5l-5 105.6 5 68.3c.3 2.8 2.2 5 5 5 2.5 0 4.7-2.2 4.7-5l5.8-68.3-5.8-105.6c0-2.8-2.2-5-4.7-5zm25.5-24.1c-3.1 0-5.3 2.2-5.6 5.3l-4.4 130 4.4 67.8c.3 3.1 2.5 5.3 5.6 5.3 2.8 0 5.3-2.2 5.3-5.3l5.3-67.8-5.3-130c0-3.1-2.5-5.3-5.3-5.3zM7.2 283.2c-1.4 0-2.2 1.1-2.5 2.5L0 321.3l4.7 35c.3 1.4 1.1 2.5 2.5 2.5s2.2-1.1 2.5-2.5l5.6-35-5.6-35.6c-.3-1.4-1.1-2.5-2.5-2.5zm23.6-21.9c-1.4 0-2.5 1.1-2.5 2.5l-6.4 57.5 6.4 56.1c0 1.7 1.1 2.8 2.5 2.8s2.5-1.1 2.8-2.5l7.2-56.4-7.2-57.5c-.3-1.4-1.4-2.5-2.8-2.5zm25.3-11.4c-1.7 0-3.1 1.4-3.3 3.3L47 321.3l5.8 65.8c.3 1.7 1.7 3.1 3.3 3.1 1.7 0 3.1-1.4 3.1-3.1l6.9-65.8-6.9-68.1c0-1.9-1.4-3.3-3.1-3.3zm25.3-2.2c-1.9 0-3.6 1.4-3.6 3.6l-5.8 70 5.8 67.8c0 2.2 1.7 3.6 3.6 3.6s3.6-1.4 3.9-3.6l6.4-67.8-6.4-70c-.3-2.2-2-3.6-3.9-3.6zm241.4-110.9c-1.1-.8-2.8-1.4-4.2-1.4-2.2 0-4.2 .8-5.6 1.9-1.9 1.7-3.1 4.2-3.3 6.7v.8l-3.3 176.7 1.7 32.5 1.7 31.7c.3 4.7 4.2 8.6 8.9 8.6s8.6-3.9 8.6-8.6l3.9-64.2-3.9-177.5c-.4-3-2-5.8-4.5-7.2zm-26.7 15.3c-1.4-.8-2.8-1.4-4.4-1.4s-3.1 .6-4.4 1.4c-2.2 1.4-3.6 3.9-3.6 6.7l-.3 1.7-2.8 160.8s0 .3 3.1 65.6v.3c0 1.7 .6 3.3 1.7 4.7 1.7 1.9 3.9 3.1 6.4 3.1 2.2 0 4.2-1.1 5.6-2.5 1.7-1.4 2.5-3.3 2.5-5.6l.3-6.7 3.1-58.6-3.3-162.8c-.3-2.8-1.7-5.3-3.9-6.7zm-111.4 22.5c-3.1 0-5.8 2.8-5.8 6.1l-4.4 140.6 4.4 67.2c.3 3.3 2.8 5.8 5.8 5.8 3.3 0 5.8-2.5 6.1-5.8l5-67.2-5-140.6c-.2-3.3-2.7-6.1-6.1-6.1zm376.7 62.8c-10.8 0-21.1 2.2-30.6 6.1-6.4-70.8-65.8-126.4-138.3-126.4-17.8 0-35 3.3-50.3 9.4-6.1 2.2-7.8 4.4-7.8 9.2v249.7c0 5 3.9 8.6 8.6 9.2h218.3c43.3 0 78.6-35 78.6-78.3 .1-43.6-35.2-78.9-78.5-78.9zm-296.7-60.3c-4.2 0-7.5 3.3-7.8 7.8l-3.3 136.7 3.3 65.6c.3 4.2 3.6 7.5 7.8 7.5 4.2 0 7.5-3.3 7.5-7.5l3.9-65.6-3.9-136.7c-.3-4.5-3.3-7.8-7.5-7.8zm-53.6-7.8c-3.3 0-6.4 3.1-6.4 6.7l-3.9 145.3 3.9 66.9c.3 3.6 3.1 6.4 6.4 6.4 3.6 0 6.4-2.8 6.7-6.4l4.4-66.9-4.4-145.3c-.3-3.6-3.1-6.7-6.7-6.7zm26.7 3.4c-3.9 0-6.9 3.1-6.9 6.9L227 321.3l3.9 66.4c.3 3.9 3.1 6.9 6.9 6.9s6.9-3.1 6.9-6.9l4.2-66.4-4.2-141.7c0-3.9-3-6.9-6.9-6.9z"\n />\n </svg>\n '])));case"threads":return q(ee||(ee=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="14"\n viewBox="0 0 448 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M331.5 235.7c2.2 .9 4.2 1.9 6.3 2.8c29.2 14.1 50.6 35.2 61.8 61.4c15.7 36.5 17.2 95.8-30.3 143.2c-36.2 36.2-80.3 52.5-142.6 53h-.3c-70.2-.5-124.1-24.1-160.4-70.2c-32.3-41-48.9-98.1-49.5-169.6V256v-.2C17 184.3 33.6 127.2 65.9 86.2C102.2 40.1 156.2 16.5 226.4 16h.3c70.3 .5 124.9 24 162.3 69.9c18.4 22.7 32 50 40.6 81.7l-40.4 10.8c-7.1-25.8-17.8-47.8-32.2-65.4c-29.2-35.8-73-54.2-130.5-54.6c-57 .5-100.1 18.8-128.2 54.4C72.1 146.1 58.5 194.3 58 256c.5 61.7 14.1 109.9 40.3 143.3c28 35.6 71.2 53.9 128.2 54.4c51.4-.4 85.4-12.6 113.7-40.9c32.3-32.2 31.7-71.8 21.4-95.9c-6.1-14.2-17.1-26-31.9-34.9c-3.7 26.9-11.8 48.3-24.7 64.8c-17.1 21.8-41.4 33.6-72.7 35.3c-23.6 1.3-46.3-4.4-63.9-16c-20.8-13.8-33-34.8-34.3-59.3c-2.5-48.3 35.7-83 95.2-86.4c21.1-1.2 40.9-.3 59.2 2.8c-2.4-14.8-7.3-26.6-14.6-35.2c-10-11.7-25.6-17.7-46.2-17.8H227c-16.6 0-39 4.6-53.3 26.3l-34.4-23.6c19.2-29.1 50.3-45.1 87.8-45.1h.8c62.6 .4 99.9 39.5 103.7 107.7l-.2 .2zm-156 68.8c1.3 25.1 28.4 36.8 54.6 35.3c25.6-1.4 54.6-11.4 59.5-73.2c-13.2-2.9-27.8-4.4-43.4-4.4c-4.8 0-9.6 .1-14.4 .4c-42.9 2.4-57.2 23.2-56.2 41.8l-.1 .1z"\n />\n </svg>\n '])));case"twitter":return q(te||(te=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="16"\n viewBox="0 0 512 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"\n />\n </svg>\n '])));case"wikipedia":return q(re||(re=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="20"\n viewBox="0 0 640 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M640 51.2l-.3 12.2c-28.1 .8-45 15.8-55.8 40.3-25 57.8-103.3 240-155.3 358.6H415l-81.9-193.1c-32.5 63.6-68.3 130-99.2 193.1-.3 .3-15 0-15-.3C172 352.3 122.8 243.4 75.8 133.4 64.4 106.7 26.4 63.4 .2 63.7c0-3.1-.3-10-.3-14.2h161.9v13.9c-19.2 1.1-52.8 13.3-43.3 34.2 21.9 49.7 103.6 240.3 125.6 288.6 15-29.7 57.8-109.2 75.3-142.8-13.9-28.3-58.6-133.9-72.8-160-9.7-17.8-36.1-19.4-55.8-19.7V49.8l142.5 .3v13.1c-19.4 .6-38.1 7.8-29.4 26.1 18.9 40 30.6 68.1 48.1 104.7 5.6-10.8 34.7-69.4 48.1-100.8 8.9-20.6-3.9-28.6-38.6-29.4 .3-3.6 0-10.3 .3-13.6 44.4-.3 111.1-.3 123.1-.6v13.6c-22.5 .8-45.8 12.8-58.1 31.7l-59.2 122.8c6.4 16.1 63.3 142.8 69.2 156.7L559.2 91.8c-8.6-23.1-36.4-28.1-47.2-28.3V49.6l127.8 1.1 .2 .5z"\n />\n </svg>\n '])));case"youtube":return q(ie||(ie=tr(['\n <svg\n xmlns="http://www.w3.org/2000/svg"\n height="16"\n width="18"\n viewBox="0 0 576 512"\n >\n \x3c!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--\x3e\n <path\n d="M549.7 124.1c-6.3-23.7-24.8-42.3-48.3-48.6C458.8 64 288 64 288 64S117.2 64 74.6 75.5c-23.5 6.3-42 24.9-48.3 48.6-11.4 42.9-11.4 132.3-11.4 132.3s0 89.4 11.4 132.3c6.3 23.7 24.8 41.5 48.3 47.8C117.2 448 288 448 288 448s170.8 0 213.4-11.5c23.5-6.3 42-24.2 48.3-47.8 11.4-42.9 11.4-132.3 11.4-132.3s0-89.4-11.4-132.3zm-317.5 213.5V175.2l142.7 81.2-142.7 81.2z"\n />\n </svg>\n '])));default:return""}}render(){return q(oe||(oe=tr(['\n <span class="social-icon ','" aria-hidden="true">\n ',"\n </span>\n "])),this.icon,this.iconTemplate(this.icon))}}function or(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function ar(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}rr(ir,"properties",{icon:""}),rr(ir,"styles",[un,o(ae||(ae=tr(["\n .social-icon {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n }\n\n svg {\n fill: currentColor;\n height: 1em;\n vertical-align: -0.125em;\n width: 1em;\n }\n "])))]),customElements.define("cfa-social-icon",ir);class sr extends cn{constructor(){super(),this.animated=!0}firstUpdated(){const n=this.shadowRoot.querySelector(".stat");new IntersectionObserver(n=>{n.forEach(n=>{n.isIntersecting&&n.target.classList.add("is-visible")})},{rootMargin:"0px 0px -20% 0px"}).observe(n)}render(){return q(se||(se=or(['\n <div class="stat ','">\n <div class="above-label strong">','</div>\n <div class="figure display-2">\n <span>','</span>\n </div>\n <div class="below-label strong">',"</div>\n </div>\n "])),this.animated?"is-animated":"",this.beforeLabel,this.figure,this.afterLabel)}}function lr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function cr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}ar(sr,"properties",{beforeLabel:{},figure:{},afterLabel:{},animated:{}}),ar(sr,"styles",[un,Mn,o(le||(le=or(["\n :host {\n --text-color: var(--text-dark);\n --highlight-color: var(--purple-20);\n --highlight-thickness: var(--spacing-layout-half);\n\n align-self: center;\n display: block;\n margin-inline: auto;\n }\n .stat {\n align-items: center;\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n text-align: center;\n }\n .figure {\n min-width: var(--spacing-layout-3);\n padding-inline: var(--spacing-component-2);\n }\n .figure > span {\n background-image: linear-gradient(\n var(--highlight-color),\n var(--highlight-color)\n );\n background-size: 100% var(--highlight-thickness);\n background-position: bottom 0.15em left;\n background-repeat: no-repeat;\n padding-inline: 0.25em;\n }\n /* Animation */\n @media (prefers-reduced-motion: no-preference) {\n .stat.is-animated .figure > span {\n background-size: 0% var(--highlight-thickness);\n transition: background-size 1s ease;\n }\n .stat.is-animated.is-visible .figure > span {\n background-size: 100% var(--highlight-thickness);\n }\n }\n "])))]),customElements.get("cfa-stat")||customElements.define("cfa-stat",sr);class dr extends cn{constructor(){super(),this.open=!1}toggle(){this.open=!this.open}handleKeyPress(n){"Enter"!==n.key&&" "!==n.key||this.toggle()}render(){return q(ce||(ce=lr(['\n <div class="item">\n <div\n class="header"\n role="button"\n aria-expanded=','\n tabindex="0"\n @click=',"\n @keypress=",'\n >\n <div class="title">\n <slot name="title"></slot>\n </div>\n <span class="icon" aria-hidden="true">\n ','\n </span>\n </div>\n <div\n class="body ','"\n role="region"\n aria-hidden=',"\n >\n <slot></slot>\n </div>\n </div>\n "])),this.open?"true":"false",this.toggle,this.handleKeyPress,this.open?q(de||(de=lr(["<cfa-icon>expand_less</cfa-icon>"]))):q(he||(he=lr(["<cfa-icon>expand_more</cfa-icon>"]))),this.open?"open":"",this.open?"false":"true")}}cr(dr,"properties",{open:{type:Boolean}}),cr(dr,"styles",[un,o(pe||(pe=lr(["\n :host {\n --color: var(--purple-60);\n --hover-bg-color: var(--blue-20);\n\n display: block;\n }\n\n .item {\n border-bottom: var(--thin) solid var(--black-20);\n max-width: var(--column-span-8);\n margin-inline: auto;\n background-color: var(--bg-color);\n }\n\n .header {\n align-items: center;\n color: var(--color);\n cursor: pointer;\n display: flex;\n flex-direction: row;\n padding-block: var(--spacing-component-3);\n }\n\n .header:hover {\n background-color: var(--hover-bg-color);\n box-shadow:\n var(--spacing-component-3) 0 var(--blue-20),\n calc(-1 * var(--spacing-component-3)) 0 var(--blue-20);\n }\n\n .header:focus {\n outline: none;\n }\n\n .title {\n flex: 1;\n }\n\n .title ::slotted(*) {\n font-family: var(--font-family-sans-serif) !important;\n font-size: var(--base-font-size) !important;\n }\n\n .icon {\n flex: 0;\n }\n\n .body {\n opacity: 0;\n max-height: 0;\n overflow: hidden;\n }\n\n .body.open {\n max-height: unset;\n opacity: 1;\n padding-block: var(--spacing-layout-half) var(--spacing-layout-1);\n }\n\n .body ::slotted(*) {\n margin-block-start: 0 !important;\n }\n "])))]);class hr extends cn{render(){return q(ue||(ue=lr(['\n <div role="tablist">\n <slot></slot>\n </div>\n '])))}}function ur(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function pr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}cr(hr,"styles",o(fe||(fe=lr(["\n :host {\n display: block;\n }\n "])))),customElements.get("cfa-accordion-item")||customElements.define("cfa-accordion-item",dr),customElements.get("cfa-accordion")||customElements.define("cfa-accordion",hr);class fr extends cn{firstUpdated(){const n=this.shadowRoot.querySelector(".content"),e=n=>{n.classList.toggle("is-overflowing",n.scrollWidth>n.clientWidth)};"ResizeObserver"in window&&new ResizeObserver(n=>{e(n[0].target)}).observe(n),"MutationObserver"in window&&new MutationObserver(()=>{e(n)}).observe(n,{childList:!0}),e(n)}render(){return q(ve||(ve=ur(['\n <div class="bar">\n <div class="content">\n <slot></slot>\n </div>\n </div>\n '])))}}function vr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function mr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}pr(fr,"properties",{theme:{}}),pr(fr,"styles",[un,o(me||(me=ur(['\n :host {\n --bg-color: var(--purple-80);\n --text-color: var(--white);\n --link-color: var(--white);\n --link-hover-color: var(--white);\n --scrollbar-color: var(--white);\n --spacing: var(--spacing-layout-half);\n\n display: block;\n }\n\n .bar {\n background-color: var(--bg-color);\n color: var(--text-color);\n\n a {\n color: var(--link-color);\n }\n\n a:hover {\n color: var(--link-hover-color);\n }\n }\n\n .content {\n display: flex;\n column-gap: var(--spacing);\n justify-content: center; \n overflow-x: auto;\n overflow-y: hidden;\n padding-bottom: var(--spacing-layout-half);\n padding-top: var(--spacing-layout-half);\n scrollbar-color: var(--scrollbar-color) var(--bg-color);\n scrollbar-width: thin;\n\n &::before,\n &::after {\n content: "";\n flex-basis: calc(var(--outer-margin) - var(--spacing));\n flex-shrink: 0;\n }\n }\n \n .content.is-overflowing {\n justify-content: start; \n }\n\n ::slotted(*) {\n max-width: none !important;\n white-space: nowrap !important;\n }\n '])))]),customElements.get("cfa-bar")||customElements.define("cfa-bar",fr);class gr extends cn{render(){return q(ge||(ge=vr(['\n <div class="box ','">\n <slot />\n </div>\n '])),this.theme?"box--"+this.theme:"")}}function br(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function wr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}mr(gr,"properties",{theme:{}}),mr(gr,"styles",[un,o(be||(be=vr(["\n :host {\n --bg-color: var(--white);\n --padding: var(--spacing-component-4);\n --shadow: var(--shadow-small);\n --text-color: var(--black);\n\n display: flex;\n flex: 1;\n }\n\n .box {\n background-color: var(--bg-color);\n box-shadow: var(--shadow);\n color: var(--text-color, #000);\n display: flex;\n flex-direction: column;\n gap: var(--spacing-layout-half);\n padding: var(--padding);\n width: 100%;\n }\n\n .box--rounded {\n border-radius: var(--spacing-layout-half, 0.5rem);\n }\n\n ::slotted(*) {\n --spacing: var(--spacing-layout-half);\n\n max-width: 100%;\n }\n "])))]),customElements.get("cfa-box")||customElements.define("cfa-box",gr);class yr extends cn{handleSlotchange(n){const e=n.target.assignedNodes({flatten:!0});console.log(e);const t=this.shadowRoot.querySelector(".breadcrumbs");t.innerHTML="",e.forEach(n=>{"UL"===n.tagName&&n.querySelectorAll("li").forEach(n=>{t.appendChild(n.cloneNode(!0))})})}render(){return q(we||(we=br(["\n <slot @slotchange=",'></slot>\n <ul class="breadcrumbs"></ul>\n '])),this.handleSlotchange)}}function xr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}wr(yr,"properties",{}),wr(yr,"styles",[un,o(ye||(ye=br(['\n slot {\n display: none;\n }\n\n :host {\n display: block;\n }\n\n .breadcrumbs {\n margin: 0;\n margin-inline: calc(-1 * var(--outer-margin));\n overflow-x: auto;\n overflow-y: hidden;\n padding: 0;\n scrollbar-width: none;\n white-space: nowrap;\n }\n\n .breadcrumbs::before,\n .breadcrumbs::after {\n content: "";\n display: inline-block;\n width: var(--outer-margin);\n }\n\n .breadcrumbs > * {\n display: inline-block;\n font-size: var(--font-size-small);\n font-weight: 600;\n line-height: var(--line-height-small);\n margin: 0;\n padding: 0;\n }\n\n .breadcrumbs > *:not(:last-child)::after {\n content: "/";\n opacity: 0.5;\n padding-inline: 0.75em;\n }\n\n .breadcrumbs a {\n color: var(--link-color);\n text-decoration: none;\n }\n '])))]),customElements.get("cfa-breadcrumbs")||customElements.define("cfa-breadcrumbs",yr);class kr extends cn{render(){return q(xe||(xe=xr(['\n <div class="callout">\n <div class="icon">\n <cfa-icon>info</cfa-icon>\n </div>\n <div class="text">\n <slot></slot>\n </div>\n </div>\n '])))}}function zr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function jr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}!function(n,e,t){(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t}(kr,"styles",[un,o(ke||(ke=xr(["\n :host {\n --background: var(--white);\n --icon-color: var(--purple-80);\n --link-color: var(--base-link-color);\n --link-hover-color: var(--base-link-hover-color);\n --text-color: var(--black);\n\n display: block;\n }\n\n .callout {\n align-items: flex-start;\n background: var(--background);\n box-shadow: var(--shadow-medium);\n color: var(--text-color);\n display: flex;\n flex-direction: row;\n gap: var(--spacing-component-2);\n padding: var(--spacing-component-3);\n }\n\n .icon {\n color: var(--icon-color);\n flex-direction: column;\n flex-grow: 0;\n font-size: var(--font-size-h3);\n height: 100%;\n margin-block-start: -0.075em;\n margin-inline-end: var(--spacing-component-2);\n }\n\n .callout + .callout {\n margin-top: var(--spacing-layout-half);\n }\n "])))]),customElements.get("cfa-callout")||customElements.define("cfa-callout",kr);class Er extends cn{visualTemplate(){let n;return"image"===this.visualType?n=q(ze||(ze=zr(['\n <div class="visual image">\n <div class="fallback-image">\n ',"\n </div>\n ","\n </div>\n "])),V(je||(je=zr(['\n <svg \n width="1600" \n height="900" \n viewBox="0 0 1600 900" \n fill="none" \n preserveAspectRatio="xMinYMin slice"\n xmlns="http://www.w3.org/2000/svg"\n >\n <g clip-path="url(#clip0)">\n <rect width="1600" height="900" fill="#2B1A78"/>\n <path fill-rule="evenodd" clip-rule="evenodd" d="M1218.12 -444.87C1375.54 -448.403 1528.96 -379.695 1624.93 -254.874C1718.97 -132.569 1729.75 28.0324 1697.74 178.942C1664.98 333.396 1596.67 491.622 1452.8 556.721C1311.8 620.52 1155.18 556.724 1017.04 486.944C883.26 419.362 752.204 329.485 715.393 184.213C677.697 35.4535 737.759 -117.225 833.568 -237.116C929.253 -356.852 1064.86 -441.431 1218.12 -444.87Z" fill="#5650BE"/>\n <path fill-rule="evenodd" clip-rule="evenodd" d="M372.893 247.378C457.708 243.989 548.299 262.758 600.503 329.652C652.21 395.908 640.741 485.984 623.238 568.169C605.287 652.459 579.269 741.096 503.945 783.041C424.143 827.479 324.366 822.072 243.48 779.638C165.755 738.862 118.175 659.045 102.906 572.65C88.5877 491.632 114.457 410.294 167.015 346.974C218.23 285.272 292.743 250.581 372.893 247.378Z" fill="#5650BE"/>\n </g>\n <defs>\n <clipPath id="clip0">\n <rect width="1600" height="900" fill="white"/>\n </clipPath>\n </defs>\n </svg>\n ']))),this.visualUrl?q(Ee||(Ee=zr(['\n <picture>\n <source srcset="','" />\n <img\n src="','"\n alt="','"\n loading="lazy"\n onerror="this.style.display=\'none\'"\n />\n </picture>\n '])),this.visualUrl,this.visualThumbnailUrl,this.visualAltText):W):"logo"===this.visualType&&(n=q(_e||(_e=zr(['\n <div class="visual logo">\n <picture>\n <source srcset="','" />\n <img\n src="','"\n alt="','"\n loading="lazy"\n />\n </picture>\n </div>\n '])),this.visualUrl,this.visualThumbnailUrl,this.visualAltText)),n}cardContentTemplate(){return q(Se||(Se=zr(["\n ",'\n <div class="content">\n <div class="header">\n <div>\n ',"\n ","\n </div>\n ",'\n </div>\n <div class="body">\n ',"\n ","\n ","\n </div>\n </div>\n "])),this.visualTemplate(),this.eyebrow?q(Pe||(Pe=zr([' <div class="eyebrow">',"</div> "])),this.eyebrow):W,this.title?q($e||($e=zr([' <div class="h3 title">',"</div> "])),this.title):W,this.label?q(Ae||(Ae=zr(['\n <div>\n <cfa-label color="green">',"</cfa-label>\n </div>\n "])),this.label):W,this.text?q(Oe||(Oe=zr([' <div class="small" .innerHTML="','"></div> '])),this.text):W,this.metaText?q(Ce||(Ce=zr(['\n <div\n class="meta-text small"\n .innerHTML="','"\n ></div>\n '])),this.metaText):W,this.actionLabel?q(Te||(Te=zr([' <div class="action-label">',"</div> "])),this.actionLabel):W)}render(){return q(Ue||(Ue=zr(["\n ","\n "])),this.linkUrl?q(Le||(Le=zr(['\n <a\n href="','"\n target="','"\n rel="','"\n class="card ','"\n >\n ',"\n </a>\n "])),this.linkUrl,this.linkTarget,"_blank"==this.linkTarget?"noopener":W,this.theme?"card--"+this.theme:"",this.cardContentTemplate()):q(Me||(Me=zr(['\n <div class="card ','">\n ',"\n </div>\n "])),this.theme?"card--"+this.theme:"",this.cardContentTemplate()))}}function _r(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Sr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}jr(Er,"properties",{theme:{},linkUrl:{},linkTarget:{},visualType:{},visualUrl:{},visualThumbnailUrl:{},visualAltText:{},eyebrow:{},label:{},title:{},text:{},metaText:{},actionLabel:{}}),jr(Er,"styles",[un,Mn,o(He||(He=zr(['\n :host {\n --action-border-color: var(--purple-20);\n --action-border-hover-color: var(--red-60);\n --action-text-color: var(--purple-60);\n --action-text-hover-color: var(--red-60);\n --bg-color: var(--white);\n --padding: var(--spacing-component-4);\n --text-color: var(--black);\n\n display: flex;\n flex-direction: column;\n margin-inline: auto;\n max-width: 100%;\n width: 100%;\n }\n\n .card,\n a.card {\n box-shadow: var(--shadow-small);\n border: var(--hairline) solid var(--gray-20);\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n flex: 1;\n height: 100%;\n text-decoration: none;\n transition: 500ms;\n }\n\n a.card:hover {\n --action-color: var(--action-hover-color);\n\n box-shadow: var(--shadow-medium);\n }\n\n .content {\n background-color: var(--bg-color);\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n padding: var(--padding);\n }\n\n .header {\n align-items: start;\n display: flex;\n flex-direction: column;\n gap: var(--spacing-layout-half);\n margin-block-end: var(--spacing-layout-half);\n }\n\n .body {\n display: flex;\n flex-flow: column nowrap;\n gap: var(--spacing-layout-half);\n height: 100%;\n text-align: var(--text-alignment, start);\n }\n\n .eyebrow {\n color: var(--purple-60);\n }\n\n .eyebrow + * {\n margin-block-start: var(--spacing-component-2);\n }\n\n .meta-text {\n color: var(--gray-60);\n }\n\n .action-label {\n align-self: flex-start;\n color: var(--action-text-color);\n display: inline-block;\n font-size: var(--font-size-small);\n font-weight: bold;\n margin-block-start: auto;\n padding-block-start: var(--spacing-component-3);\n }\n\n a:hover .action-label {\n color: var(--action-text-hover-color);\n }\n\n .action-label::after {\n background: linear-gradient(\n to top,\n var(--action-border-hover-color) 0% 50%,\n var(--action-border-color) 50% 100%\n );\n background-position: 0% 0%;\n background-size: 100% 200%;\n content: "";\n display: block;\n height: var(--spacing-component-2);\n transition: background-position 0.3s;\n }\n\n a:hover .action-label::after {\n background-position: 0% 100%;\n }\n\n .visual {\n box-sizing: border-box;\n display: flex;\n height: auto;\n height: var(--spacing-layout-7);\n position: relative;\n width: 100%;\n }\n\n img {\n height: 100%;\n object-fit: cover;\n width: 100%;\n }\n\n .fallback-image {\n background-color: var(--purple-80);\n position: absolute;\n inline-start: 0;\n block-start: 0;\n width: 100%;\n height: 100%;\n z-index: 0;\n }\n\n .fallback-image svg {\n height: 100%;\n width: 100%;\n }\n\n .visual picture {\n position: relative;\n z-index: 1;\n width: 100%;\n }\n\n .image::after {\n block-end: 0;\n block-start: 0;\n bottom: 0;\n box-shadow: inset 0 -50px 50px -50px var(--black-60);\n content: "";\n inline-end: 0;\n inline-start: 0;\n position: absolute;\n z-index: 2;\n }\n\n .logo {\n background-color: var(--white, #fff);\n box-sizing: border-box;\n border-block-end: 1px solid var(--gray-20);\n padding: var(--spacing-component-5);\n }\n\n .logo img {\n object-fit: contain;\n }\n\n /* --- */\n\n /* Theme: Compact Card */\n\n .card--compact {\n --padding: var(--spacing-component-3);\n }\n\n .card--compact .title {\n font-size: var(--font-size-h4);\n line-height: var(--line-height-h4);\n }\n\n .card--compact .action-label {\n padding-block-start: 0;\n }\n\n /* --- */\n\n /* Theme: Horizontal Card */\n\n @media (min-width: 768px) {\n .card--horizontal,\n a.card--horizontal {\n align-items: stretch;\n flex-direction: row;\n }\n\n .card--horizontal .visual {\n aspect-ratio: initial;\n height: auto;\n flex: 0 0 50%;\n }\n\n .card--horizontal .logo {\n border-block-end: 0;\n border-inline-end: 1px solid var(--gray-20);\n }\n }\n\n /* --- */\n\n /* Theme: Horizontal Compact Card */\n\n @media (min-width: 768px) {\n .card--horizontal-compact,\n a.card--horizontal-compact {\n align-items: stretch;\n flex-direction: row;\n }\n\n .card--horizontal-compact .visual {\n aspect-ratio: initial;\n flex: 0 0 34%;\n height: auto;\n position: relative;\n }\n\n .card--horizontal-compact .image picture {\n position: absolute;\n height: 100%;\n width: 100%;\n }\n\n .card--horizontal-compact .logo {\n border-block-end: 0;\n border-right: 1px solid var(--gray-20);\n padding: var(--spacing-component-4);\n }\n }\n\n .card--horizontal-compact,\n a.card--horizontal-compact {\n --padding: var(--spacing-component-3);\n }\n\n .card--horizontal-compact .body {\n gap: var(--spacing-component-2);\n }\n\n .card--horizontal-compact .header {\n margin-block-end: var(--spacing-component-2);\n }\n\n .card--horizontal-compact .title {\n font-size: var(--font-size-h4);\n line-height: var(--line-height-h4);\n }\n\n .card--horizontal-compact .action-label {\n padding-block-start: var(--spacing-component-2);\n }\n '])))]),customElements.define("cfa-card",Er);class Pr extends cn{cardContentTemplate(){let n;return n=this.imageUrl?q(Ne||(Ne=_r([' <img src="','" alt="','" /> '])),this.imageUrl,this.name):q(Re||(Re=_r([" "," "])),this.name),n}render(){return q(Ie||(Ie=_r(["\n ","\n "])),this.linkUrl?q(Be||(Be=_r(['\n <a\n href="','"\n target="','"\n rel="','"\n class="card"\n >\n ',"\n </a>\n "])),this.linkUrl,this.linkTarget||"_self","_blank"==this.linkTarget?"noopener noreferrer":W,this.cardContentTemplate()):q(Fe||(Fe=_r([' <div class="card">',"</div> "])),this.cardContentTemplate()))}}function $r(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Ar(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Sr(Pr,"properties",{name:{},imageUrl:{},linkUrl:{},linkTarget:{}}),Sr(Pr,"styles",[un,Mn,o(qe||(qe=_r(["\n :host {\n --bg-color: var(--blue-20);\n --text-color: var(--black);\n\n align-items: stretch;\n display: flex;\n flex-direction: row;\n }\n\n .card {\n align-items: center;\n background-color: var(--white);\n border: var(--hairline) solid var(--black-10);\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n font-size: var(--font-size-h3);\n font-weight: bold;\n justify-content: center;\n line-height: var(--line-height-h4);\n margin-inline: auto;\n max-width: 100%;\n min-height: var(--spacing-layout-8);\n padding: var(--spacing-component-5);\n text-align: center;\n text-decoration: none;\n transition: box-shadow 1s;\n width: var(--column-span-4);\n }\n\n a.card {\n box-shadow: var(--shadow-small);\n color: var(--text-color);\n }\n\n a.card:hover {\n box-shadow: var(--shadow-medium);\n }\n\n img {\n aspect-ratio: 2 / 1;\n object-fit: contain;\n width: 100%;\n }\n "])))]),customElements.get("cfa-logo-card")||customElements.define("cfa-logo-card",Pr);class Or extends cn{handleSlotchange(n){const e=n.target.assignedNodes({flatten:!0}),t=this.shadowRoot.querySelector("ul");t.innerHTML="",e.forEach(n=>{"UL"===n.tagName&&n.querySelectorAll("li").forEach(n=>{t.appendChild(n.cloneNode(!0))})})}render(){return q(Ve||(Ve=$r(["\n <slot @slotchange=",'></slot>\n <nav data-font-size="','">\n <ul></ul>\n </nav>\n '])),this.handleSlotchange,this.fontSize)}}function Cr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Tr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Ar(Or,"properties",{fontSize:{}}),Ar(Or,"styles",[un,o(De||(De=$r(['\n :host {\n --link-color: var(--purple-80);\n --link-hover-color: var(--purple-80);\n\n display: block;\n font-family: var(--font-family-sans-serif);\n }\n\n slot {\n display: none;\n }\n\n nav {\n font-size: var(--font-size-base);\n line-height: var(--line-height-base);\n }\n\n nav[data-font-size="small"] {\n font-size: var(--font-size-small);\n line-height: var(--line-height-small);\n }\n\n nav[data-font-size="large"] {\n font-size: var(--font-size-h3);\n line-height: var(--line-height-h3);\n }\n\n ul {\n display: flex;\n flex-direction: row;\n gap: var(--spacing-component-1);\n list-style: none;\n margin: 0;\n padding: 0;\n }\n\n li {\n flex-shrink: 0;\n margin: 0;\n padding: 0;\n }\n\n li.is-active a {\n box-shadow: inset 0 calc(-1 * var(--medium)) var(--link-hover-color);\n }\n\n a {\n box-shadow: 0;\n color: var(--link-color);\n display: block;\n font-weight: bold;\n height: 100%;\n padding: var(--spacing-component-2) var(--spacing-component-3);\n text-decoration: none;\n transition: box-shadow 0.25s ease-in-out;\n }\n\n a:hover {\n box-shadow: inset 0 calc(-1 * var(--medium)) var(--link-hover-color);\n }\n '])))]),customElements.get("cfa-nav")||customElements.define("cfa-nav",Or);class Ur extends cn{handleSlotchange(n){const e=n.target.assignedNodes({flatten:!0}),t=this.shadowRoot.querySelector("ul"),r=[];e.forEach(n=>{"UL"===n.tagName&&n.querySelectorAll("li").forEach(n=>{var e;t.appendChild(n.cloneNode(!0));const i=null===(e=n.querySelector("a"))||void 0===e?void 0:e.getAttribute("href");i&&i.startsWith("#")&&r.push(i.substring(1))})}),window.addEventListener("scroll",()=>this.updateActiveNav(r))}updateActiveNav(n){const e=window.scrollY;let t=null;if(n.forEach(n=>{const r=document.getElementById(n);r&&r.offsetTop<=e+256&&(t=n)}),this.shadowRoot.querySelectorAll("li a").forEach(n=>{n.classList.remove("is-active")}),t){const n=this.shadowRoot.querySelector('li a[href*="#'.concat(t,'"]'));n&&n.classList.add("is-active")}}render(){return q(We||(We=Cr(["\n <slot @slotchange=","></slot>\n <nav>\n <ul>\n <li><strong>On this page:  </strong></li>\n </ul>\n </nav>\n "])),this.handleSlotchange)}}function Lr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Mr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Tr(Ur,"properties",{fontSize:{}}),Tr(Ur,"styles",[un,o(Ze||(Ze=Cr(["\n :host {\n --bg-color: var(--white);\n --link-color: var(--purple-80);\n --link-hover-color: var(--purple-80);\n\n background-color: var(--bg-color);\n display: block;\n padding-block: var(--spacing-layout-1);\n display: block;\n font-family: var(--font-family-sans-serif);\n font-size: var(--font-size-small);\n line-height: var(--font-size-small);\n }\n\n slot {\n display: none;\n }\n\n nav {\n }\n\n ul {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-layout-half);\n margin: 0;\n padding: 0 var(--outer-margin);\n min-height: var(--spacing-layout-2);\n }\n\n li {\n display: block;\n }\n\n a {\n background-color: var(--purple-10);\n border-radius: var(--rounded-corners);\n color: var(--link-color);\n display: block;\n position: relative;\n padding: var(--spacing-layout-half);\n text-decoration: none;\n }\n\n a:hover {\n background-color: var(--blue-20);\n color: var(--link-hover-color);\n }\n\n a:active {\n background-color: var(--blue-40);\n color: var(--link-color);\n }\n\n @media (min-width: 768px) {\n :host {\n box-shadow: var(--shadow-small);\n padding-block: var(--spacing-component-2);\n position: sticky;\n top: 0;\n z-index: 3;\n }\n\n nav {\n align-items: center;\n display: flex;\n flex-direction: row;\n margin-inline: auto;\n max-width: var(--grid-max-width);\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n }\n\n ul {\n align-items: center;\n display: flex;\n flex-direction: row;\n gap: var(--spacing-component-2);\n }\n\n a,\n li {\n max-width: none;\n white-space: nowrap;\n }\n\n a.is-active {\n background-color: var(--blue-40);\n }\n }\n "])))]),customElements.get("cfa-page-nav")||customElements.define("cfa-page-nav",Ur);class Hr extends cn{render(){return q(Ke||(Ke=Lr(['\n <nav>\n <div class="next">\n ','\n </div>\n <div class="previous">\n ',"\n </div>\n </nav>\n "])),this.nextUrl?q(Je||(Je=Lr(['\n <a href="','" class="cfa-button">\n <span class="small label"\n >Next <cfa-icon>arrow_forward</cfa-icon></span\n ><br />\n <span class="title normal">',"</span>\n </a>\n "])),this.nextUrl,this.nextTitle):"",this.previousUrl?q(Xe||(Xe=Lr(['\n <a\n href="','"\n class="cfa-button cfa-button--outline"\n >\n <span class="small label"\n ><cfa-icon>arrow_back</cfa-icon> Previous</span\n ><br />\n <span class="title normal">',"</span>\n </a>\n "])),this.previousUrl,this.previousTitle):"")}}function Nr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Rr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Mr(Hr,"properties",{previousTitle:{},previousUrl:{},nextTitle:{},nextUrl:{}}),Mr(Hr,"styles",[un,Mn,An,o(Ye||(Ye=Lr(["\n :host {\n display: block;\n }\n\n * {\n box-sizing: border-box;\n text-wrap: comfortable;\n }\n\n nav {\n display: flex;\n flex-direction: column;\n column-gap: var(--gutter-width);\n row-gap: var(--spacing-layout-half);\n }\n\n nav > * > * {\n width: 100%;\n }\n\n @media (min-width: 768px) {\n nav {\n flex-direction: row-reverse;\n justify-content: space-between;\n }\n\n a {\n min-width: var(--column-span-4);\n }\n\n .next a {\n text-align: end;\n }\n\n .previous a {\n text-align: start;\n }\n }\n "])))]),customElements.get("cfa-pager")||customElements.define("cfa-pager",Hr);class Ir extends cn{constructor(){super(),this.previousLabel="Previous",this.nextLabel="Next",this.page=1,this.totalPages=1}render(){return q(Ge||(Ge=Nr(['\n <div class="pagination">\n <div class="previous">\n ','\n </div>\n <div class="status">Page '," of ",'</div>\n <div class="next">\n ',"\n </div>\n </div>\n "])),this.page>1?q(Qe||(Qe=Nr(['\n <button class="cfa-button" @click="','">\n <cfa-icon>arrow_back</cfa-icon> ',"\n </button>\n "])),this.handlePreviousPage,this.previousLabel):"",this.page,this.totalPages,this.page<this.totalPages?q(nt||(nt=Nr(['\n <button class="cfa-button" @click="','">\n '," <cfa-icon>arrow_forward</cfa-icon>\n </button>\n "])),this.handleNextPage,this.nextLabel):"")}handleNextPage(){if(this.page<this.totalPages){this.page++;const n=new CustomEvent("page-change",{bubbles:!0,cancelable:!0,detail:this.page});this.dispatchEvent(n)}}handlePreviousPage(){if(this.page>1){this.page--;const n=new CustomEvent("page-change",{bubbles:!0,cancelable:!0,detail:this.page});this.dispatchEvent(n)}}}function Br(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Fr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Rr(Ir,"properties",{page:{type:Number},totalPages:{type:Number},previousLabel:{},nextLabel:{}}),Rr(Ir,"styles",[un,An,o(et||(et=Nr(["\n :host {\n display: block;\n }\n\n .pagination {\n align-items: center;\n display: flex;\n flex-direction: row;\n gap: var(--gutter-width);\n justify-content: space-between;\n }\n\n .pagination > * {\n flex: 1;\n }\n\n .status {\n font-size: var(--font-size-small);\n line-height: var(-line-height-small);\n color: var(--gray-60);\n text-align: center;\n }\n\n @media (max-width: 768px) {\n .status {\n display: none;\n }\n }\n\n .previous {\n text-align: left;\n }\n\n .next {\n text-align: right;\n }\n "])))]),customElements.get("cfa-pagination")||customElements.define("cfa-pagination",Ir);class qr extends cn{render(){var n,e;return q(tt||(tt=Br(['\n <div class="card ','">\n \x3c!-- Link overlay pseudo-element so we can do nested links within the card --\x3e\n ','\n <div class="avatar">\n ','\n </div>\n <div class="details">\n <div>\n <div class="name h4">\n ',"\n </div>\n ",'\n </div>\n <div class="title small">\n ',"\n </div>\n ","\n </div>\n </div>\n "])),this.linkUrl?"has-link":"",this.linkUrl?q(rt||(rt=Br(['\n <a\n href="','"\n target="','"\n rel="','"\n class="link-overlay"\n tabindex="-1"\n >\n </a>\n '])),this.linkUrl,this.linkTarget||"_self","_blank"==this.linkTarget?"noopener":W):"",this.linkUrl?q(it||(it=Br(['\n <a\n href="','"\n target="','"\n rel="','"\n >\n <cfa-avatar\n imageUrl="','"\n altText="Avatar photo of ','"\n size="3"\n >\n </cfa-avatar>\n </a>\n '])),this.linkUrl,this.linkTarget||"_self","_blank"==this.linkTarget?"noopener":W,this.imageUrl,this.name):q(ot||(ot=Br(['\n <cfa-avatar\n imageUrl="','"\n altText="Avatar photo of ','"\n size="3"\n >\n </cfa-avatar>\n '])),this.imageUrl,this.name),this.linkUrl?q(at||(at=Br(['\n <a\n href="','"\n target="','"\n rel="','"\n >\n ',"\n </a>\n "])),this.linkUrl,this.linkTarget||"_self","_blank"==this.linkTarget?"noopener":W,this.name.trim()):q(st||(st=Br([" "," "])),this.name.trim()),this.pronouns?q(lt||(lt=Br([' <span class="pronouns small">(',")</span> "])),this.pronouns):"",[null===(n=this.title)||void 0===n?void 0:n.trim(),null===(e=this.company)||void 0===e?void 0:e.trim()].filter(Boolean).join(", "),this.linkedInUrl||this.twitterHandle?q(ct||(ct=Br(['\n <div class="social">\n ',"\n ","\n </div>\n "])),this.linkedInUrl?q(dt||(dt=Br(['\n <a\n href="','"\n target="_blank"\n rel="noopener"\n title="View ','\'s profile on LinkedIn"\n >\n <cfa-social-icon icon="linkedin" />\n </a>\n '])),this.linkedInUrl,this.name):W,this.twitterHandle?q(ht||(ht=Br(['\n <a\n href="https://twitter.com/','"\n target="_blank"\n rel="noopener"\n title="View ','\'s profile on X (Twitter)"\n >\n <cfa-social-icon icon="twitter" />\n </a>\n '])),this.twitterHandle,this.name):W):W)}}function Vr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Dr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Fr(qr,"properties",{name:{type:"string"},title:{type:"string"},company:{type:"string"},pronouns:{type:"string"},imageUrl:{type:"string"},imageAltText:{type:"string"},linkUrl:{type:"string"},linkedInUrl:{type:"string"},twitterHandle:{type:"string"}}),Fr(qr,"styles",[un,Mn,o(ut||(ut=Br(['\n :host {\n display: block;\n }\n\n .card {\n border-radius: var(--rounded-corners);\n position: relative;\n display: flex;\n flex-direction: row;\n margin-inline: auto;\n max-width: 100%;\n text-align: start;\n width: var(--column-span-4);\n transform: translate(0, 0); // hack to ensure pseudo element is stacked above parent background\n }\n\n .card.has-link::before {\n border-radius: var(--rounded-corners);\n bottom: calc(-1 * var(--thick));\n content: "";\n height: calc(100% + 2 * var(--thick)));\n left: calc(-1 * var(--thick));\n position: absolute;\n right: calc(-1 * var(--thick));\n top: calc(-1 * var(--thick));\n width: calc(100% + 2 * var(--thick)));\n z-index: -1;\n transition: \n background-color 0.5s ease-in-out,\n box-shadow 0.5s ease-in-out;\n }\n\n .card.has-link:hover::before,\n .card.has-link:focus-visible::before {\n background-color: var(--white);\n box-shadow: var(--shadow-medium);\n }\n\n .card.has-link .name a {\n box-shadow: 0;\n color: var(--purple-80);\n transition: box-shadow 0.5s ease-in-out;\n }\n\n .card.has-link:hover .name a {\n box-shadow: inset 0 calc(-1 * var(--thick)) 0 0 var(--purple-20);\n }\n\n a {\n position: relative;\n text-decoration: none;\n z-index: 1;\n }\n\n a.link-overlay {\n position: static;\n }\n\n a.link-overlay::before {\n content: "";\n position: absolute;\n z-index: 0;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n }\n \n .avatar {\n flex-grow: 0;\n }\n\n .name {\n display: inline-block;\n }\n\n .pronouns {\n color: var(--purple-60);\n }\n \n .details {\n color: var(--black);\n flex-grow: 1;\n padding-block-start: var(--spacing-component-2);\n padding-inline-start: var(--spacing-component-2);\n }\n\n .social {\n font-size: 0.9rem;\n margin-block-start: var(--spacing-component-1);\n }\n \n .social a {\n align-items: center;\n border-radius: 10000px;\n color: var(--purple-80);\n display: inline-flex;\n height: var(--spacing-component-4);\n justify-content: center;\n margin: calc(-1 * var(--spacing-component-2));\n width: var(--spacing-component-4);\n }\n\n .social a:hover {\n background-color: var(--purple-20);\n }\n\n .social > a + a {\n margin-inline-start: var(--spacing-component-2);\n }\n '])))]),customElements.get("cfa-person-card")||customElements.define("cfa-person-card",qr);class Wr extends cn{render(){return q(pt||(pt=Vr(['\n <a\n href="','"\n target="','"\n class="promo\n "\n >\n ',"\n ","\n ","\n </a>\n "])),this.linkUrl||"javascript:void(0)",this.linkTarget||W,this.heading?q(ft||(ft=Vr([' <div class="h4 sans-serif">',"</div> "])),this.heading):W,this.text?q(vt||(vt=Vr([' <div class="small">',"</div> "])),this.text):W,this.actionLabel?q(mt||(mt=Vr(['\n <div class="action-label small strong">\n '," <cfa-icon>arrow_forward</cfa-icon>\n </div>\n "])),this.actionLabel):W)}}function Zr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Kr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Dr(Wr,"properties",{heading:{},text:{},actionLabel:{},linkUrl:{},linkTarget:{}}),Dr(Wr,"styles",[un,Mn,o(gt||(gt=Vr(["\n :host {\n --bg-color: var(--blue-20);\n --padding: var(--spacing-component-4);\n --text-color: var(--black);\n --action-label-color: var(--purple-60);\n --action-label-hover-color: var(--red-60);\n\n display: block;\n }\n\n .promo,\n a.promo {\n background-color: var(--bg-color);\n box-shadow: var(--shadow-small);\n color: var(--text-color, #000);\n display: flex;\n flex-direction: column;\n gap: var(--spacing-layout-half);\n padding: var(--padding);\n text-align: center;\n text-decoration: none;\n transition: box-shadow 0.2s ease-in-out;\n width: 100%;\n }\n\n a.promo:hover {\n box-shadow: var(--shadow-medium);\n }\n\n .action-label {\n color: var(--action-label-color);\n }\n\n a.promo:hover .action-label {\n color: var(--action-label-hover-color);\n }\n "])))]),customElements.get("cfa-promo")||customElements.define("cfa-promo",Wr);class Jr extends cn{constructor(){super(),this.showLabel="Show more",this.hideLabel="Show less",this.showIcon="expand_more",this.hideIcon="expand_less",this.expanded=!1}render(){return q(bt||(bt=Zr(['\n <slot\n id="content"\n class="content ','"\n aria-labelledby="button"\n ?hidden="','"\n ></slot>\n <div class="controls">\n <button\n @click="','"\n aria-expanded="','"\n aria-controls="content"\n >\n ',"\n <cfa-icon>","</cfa-icon>\n </button>\n </div>\n "])),this.expanded?"is-expanded":"is-collapsed",!this.expanded,()=>this.expanded=!this.expanded,this.expanded,this.expanded?this.hideLabel:this.showLabel,this.expanded?this.hideIcon:this.showIcon)}}function Xr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function Yr(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Kr(Jr,"properties",{showLabel:{type:String},hideLabel:{type:String},showIcon:{type:String},hideIcon:{type:String},expanded:{type:Boolean,reflect:!0}}),Kr(Jr,"styles",[un,o(wt||(wt=Zr(["\n :host {\n --color: var(--purple-60);\n --hover-color: var(--red-60);\n --margin-top: var(--spacing-layout-half) !important;\n\n display: flex;\n flex-direction: column;\n row-gap: var(--spacing-between, 1rem);\n }\n\n :host([expanded]) {\n --margin-top: var(--spacing) !important;\n }\n\n button {\n background: transparent;\n border: none;\n color: var(--color);\n cursor: pointer;\n font: inherit;\n font-size: var(--font-size-small, 0.8rem);\n font-weight: bold;\n color: var(--)\n line-height: normal;\n margin: 0;\n overflow: visible;\n padding: 0;\n width: auto;\n }\n\n button:hover {\n color: var(--hover-color);\n }\n "])))]),customElements.get("cfa-reveal")||customElements.define("cfa-reveal",Jr);class Gr extends cn{constructor(){super(),this.linkUrl="javascript:void(0);",this.linkTarget="_self"}render(){return q(yt||(yt=Xr(['\n <a href="','" target="','" class="slide">\n <div class="image">\n ','\n </div>\n <div class="content">\n <slot></slot>\n </div>\n </a>\n '])),this.linkUrl,this.linkTarget,this.imageUrl?q(xt||(xt=Xr(['\n <img\n src="','"\n alt="','"\n loading="lazy"\n onerror="this.style.display=\'none\'"\n />\n '])),this.imageUrl,this.imageAltText):"")}}function Qr(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function ni(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}Yr(Gr,"properties",{imageUrl:{},imageAltText:{},linkUrl:{},linkTarget:{}}),Yr(Gr,"styles",[un,o(kt||(kt=Xr(['\n :host {\n --background: var(--white, #fff);\n --width: var(--column-span-12);\n }\n\n .slide {\n background: var(--background);\n box-shadow: var(--shadow-small);\n color: inherit;\n display: flex;\n flex-direction: column;\n height: 100%;\n justify-content: stretch;\n margin-inline: auto;\n max-width: var(--width);\n text-decoration: none;\n transition: box-shadow 0.2s ease-in-out;\n width: 100%;\n }\n\n .slide:hover,\n .slide:focus {\n box-shadow: var(--shadow-medium);\n }\n\n .image {\n background-image: url("https://codeforamerica.org/wp-content/themes/cfa-core/static/images/bg-placeholder-03.svg");\n background-position: center center;\n background-size: cover;\n height: var(--spacing-layout-9);\n position: relative;\n }\n\n .image::after {\n bottom: 0;\n box-shadow: inset 0 -50px 50px -50px var(--black-40);\n content: "";\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 2;\n }\n\n .image img {\n height: 100%;\n object-fit: cover;\n width: 100%;\n }\n\n .content {\n align-items: center;\n box-sizing: border-box;\n display: flex;\n padding: var(--spacing-component-4);\n }\n\n @media (min-width: 1024px) {\n .slide {\n flex-direction: row;\n min-height: calc(12 * var(--spacing-layout-1));\n }\n\n .slide > * {\n flex-basis: 50%;\n }\n\n .image {\n height: auto;\n }\n\n .image::after {\n box-shadow: inset -50px -50px 50px -50px var(--black-20);\n }\n }\n '])))]),customElements.get("cfa-slide")||customElements.define("cfa-slide",Gr);class ei extends cn{constructor(){super(),this.active=!1,this.panelId=""}firstUpdated(){this.addEventListener("keydown",this._onKeyDown)}_onKeyDown(n){const e=Array.from(this.parentElement.querySelectorAll("cfa-tab")),t=e.indexOf(this);let r;switch(n.key){case"ArrowLeft":r=(t-1+e.length)%e.length,e[r].shadowRoot.querySelector("button").focus();break;case"ArrowRight":r=(t+1)%e.length,e[r].shadowRoot.querySelector("button").focus();break;case"Home":e[0].shadowRoot.querySelector("button").focus();break;case"End":e[e.length-1].shadowRoot.querySelector("button").focus()}}render(){return q(zt||(zt=Qr(['\n <button\n role="tab"\n aria-selected="','"\n aria-controls="','"\n class="','"\n tabindex="','"\n >\n <slot></slot>\n </button>\n '])),this.active?"true":"false",this.panelId,this.active?"active":"",this.active?"0":"-1")}}function ti(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function ri(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}ni(ei,"properties",{active:{type:Boolean},panelId:{type:String}}),ni(ei,"styles",[un,Mn,o(jt||(jt=Qr(["\n button {\n background: none;\n border: 0;\n box-shadow: inset 0 calc(-1 * var(--hairline)) 0 0 var(--gray-40);\n color: var(--gray-80);\n cursor: pointer;\n font-family: var(--font-family-sans-serif);\n font-size: var(--font-size-small);\n font-weight: normal;\n padding: var(--spacing-component-2) var(--spacing-component-3)\n calc(var(--spacing-component-2) + var(--medium));\n }\n button:focus {\n background-color: var(--focus-color);\n outline: none;\n }\n button:not(.active):hover {\n box-shadow: inset 0 calc(-1 * var(--medium)) 0 0 var(--purple-40);\n color: var(--black);\n }\n button.active {\n box-shadow: inset 0 calc(-1 * var(--medium)) 0 0 var(--purple-60);\n color: var(--black);\n font-weight: bold;\n }\n "])))]),customElements.get("cfa-tab")||customElements.define("cfa-tab",ei);class ii extends cn{constructor(){super()}firstUpdated(){this.addEventListener("click",this._onTabClick),this.setAttribute("role","tablist"),this._setInitialAriaAttributes()}_setInitialAriaAttributes(){this.querySelectorAll("cfa-tab").forEach((n,e)=>{n.setAttribute("role","tab"),n.setAttribute("aria-selected","false"),n.setAttribute("tabindex","-1"),0===e&&(n.setAttribute("aria-selected","true"),n.setAttribute("tabindex","0"))})}_onTabClick(n){const e=n.target.closest("cfa-tab");e&&this._setActiveTab(e)}_setActiveTab(n){this.querySelectorAll("cfa-tab").forEach(n=>{n.removeAttribute("active"),n.setAttribute("aria-selected","false"),n.setAttribute("tabindex","-1")}),n.setAttribute("active",""),n.setAttribute("aria-selected","true"),n.setAttribute("tabindex","0");let e=n.id;e&&e.startsWith("tab-")&&(e=e.substring(4)),console.log("Tab changed event dispatched with ID:",e),this.dispatchEvent(new CustomEvent("tab-changed",{detail:{id:e},bubbles:!0,composed:!0}))}render(){return q(Et||(Et=ti(['\n <div class="tab-list" role="tablist">\n <slot></slot>\n </div>\n '])))}}function oi(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function ai(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}ri(ii,"properties",{}),ri(ii,"styles",[un,An,o(_t||(_t=ti(['\n :host {\n display: block;\n width: calc(100% + var(--outer-margin));\n }\n\n .tab-list {\n display: flex;\n flex-direction: row;\n line-height: 1;\n margin-inline-start: calc(-1 * var(--outer-margin));\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n white-space: nowrap;\n }\n\n .tab-list::before {\n content: "";\n min-width: var(--outer-margin);\n }\n\n .tab-list::after {\n border-bottom: var(--hairline) solid var(--gray-40);\n content: "";\n flex-grow: 1;\n margin-right: var(--outer-margin);\n }\n\n ::slotted(*) {\n max-width: none !important;\n white-space: nowrap !important;\n }\n '])))]),customElements.get("cfa-tab-list")||customElements.define("cfa-tab-list",ii);class si extends cn{tileContentTemplate(){return q(St||(St=oi(["\n ",'\n\n <div class="title h3">',"</div>\n\n \x3c!-- Description --\x3e\n ","\n\n \x3c!-- Action label --\x3e\n ","\n "])),this.imageUrl?q(Pt||(Pt=oi(['\n <picture>\n <cfa-blob></cfa-blob>\n <img\n src="','"\n alt="','"\n load="lazy"\n />\n </picture>\n '])),this.imageUrl,this.imageAltText):W,this.title,this.description?q($t||($t=oi([' <p class="small">',"</p> "])),this.description):W,this.actionLabel?q(At||(At=oi(['\n <div class="label small strong">\n '," <cfa-icon>arrow_forward</cfa-icon>\n </div>\n "])),this.actionLabel):W)}render(){return q(Ot||(Ot=oi(["\n <style>\n cfa-blob {\n --color: var(--blob-color);\n }\n </style>\n ","\n "])),this.linkUrl?q(Ct||(Ct=oi(['\n <a\n href="','"\n target="','"\n rel="','"\n class="tile"\n >\n ',"\n </a>\n "])),this.linkUrl,this.linkTarget,"_blank"==this.linkTarget?"noopener":W,this.tileContentTemplate()):q(Tt||(Tt=oi([' <div class="tile">',"</div> "])),this.tileContentTemplate()))}}function li(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}ai(si,"properties",{title:{type:String},description:{type:String},actionLabel:{type:String},linkUrl:{type:String},linkTarget:{type:String},imageUrl:{type:String},imageThumbnailUrl:{type:String},imageAltText:{type:String}}),ai(si,"styles",[un,Mn,o(Ut||(Ut=oi(["\n :host {\n --bg-color: var(--white);\n --title-color: var(--purple-60);\n --text-color: var(--black);\n --action-label-color: var(--purple-80);\n --action-label-hover-highlight: var(--purple-20);\n --blob-color: var(--purple-20);\n\n align-items: stretch;\n display: flex;\n text-align: center;\n width: 100%;\n }\n\n .tile {\n background-color: var(--bg-color);\n border-radius: var(--spacing-component-2);\n border: var(--hairline) solid var(--black-20);\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n max-width: var(--column-span-6);\n padding: var(--spacing-component-4);\n text-decoration: none;\n transition:\n box-shadow 0.5s ease-in-out,\n border-color 0.5s ease-in-out;\n width: 100%;\n }\n\n a.tile:hover {\n box-shadow: var(--shadow-medium);\n border-color: rgba(0, 0, 0, 0);\n }\n\n picture {\n display: grid;\n place-items: center;\n padding-block-end: var(--spacing-layout-1);\n }\n\n picture > * {\n height: var(--spacing-layout-4);\n grid-area: 1 / 1;\n }\n\n cfa-blob {\n transition: scale 0.5s ease-in-out;\n }\n\n a.tile:hover cfa-blob {\n scale: 1.2;\n }\n\n img {\n object-fit: contain;\n z-index: 2;\n }\n\n .title {\n color: var(--title-color);\n }\n\n .label {\n color: var(--action-label-color);\n display: inline-block;\n margin-block-start: auto;\n padding-block-start: var(--spacing-layout-half);\n }\n "])))]),customElements.get("cfa-tile")||customElements.define("cfa-tile",si);class ci extends cn{render(){return q(Lt||(Lt=li(['\n <div class="label eyebrow-with-line">Transcript</div>\n <div class="text">\n <slot />\n </div>\n '])))}}function di(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function hi(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}!function(n,e,t){(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t}(ci,"styles",[un,Mn,o(Mt||(Mt=li(["\n :host {\n --label-color: var(--purple-60);\n\n display: block;\n max-width: var(--column-span-8);\n }\n\n .label {\n --text-color: var(--label-color);\n }\n\n .text {\n background-color: var(--white);\n border: var(--hairline) solid var(--black-20);\n color: var(--black);\n height: calc(12 * var(--spacing-layout-1));\n overflow: auto;\n padding: var(--spacing-component-3);\n }\n "])))]),customElements.get("cfa-transcript")||customElements.define("cfa-transcript",ci);class ui extends cn{render(){return q(Ht||(Ht=di(['\n <a\n href="','"\n target="','"\n style="\n --accent-color: var(--',");\n --background-color: var(--",');\n "\n >\n ','\n <picture class="','">\n <source srcset="','" />\n <img\n src="','"\n alt="','"\n loading="lazy"\n />\n </picture>\n <div class="content">\n <slot></slot>\n </div>\n </a>\n '])),this.linkUrl?this.linkUrl:"javascript:void(0)",this.linkTarget,this.accentColor,this.backgroundColor,"illustration"==this.visualType?q(Nt||(Nt=di(['\n <svg\n class="blob"\n width="100%"\n height="100%"\n viewBox="0 400 991 404"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n fill-rule="evenodd"\n clip-rule="evenodd"\n d="M497.987 2.71228C593.074 -5.64211 690.176 4.03525 773.161 49.603C862.779 98.8136 944.454 170.47 976.005 265.197C1007.51 359.787 986.265 464.701 941.165 554.018C899.88 635.781 820.242 689.107 738.82 734.926C664.711 776.63 583.712 800.173 497.987 803.413C409.179 806.769 320.068 796.454 243.046 753.664C159.74 707.382 90.0067 640.005 51.1477 555.166C9.37056 463.956 -21.746 356.515 19.2012 264.956C59.2648 175.372 169.027 143.121 256.962 94.9565C334.013 52.7538 409.754 10.4645 497.987 2.71228Z"\n />\n </svg>\n ']))):"",this.visualType,this.visualUrl,this.visualThumbnailUrl,this.visualAltText)}}function pi(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function fi(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}hi(ui,"properties",{accentColor:"",backgroundColor:"",linkUrl:"",linkTarget:"",visualType:"",visualUrl:"",visualThumbnailUrl:"",visualAltText:""}),hi(ui,"styles",[un,o(Rt||(Rt=di(['\n :host {\n --accent-color: var(--white);\n --background-color: var(--black);\n --text-color: var(--white);\n\n display: block;\n }\n\n a {\n align-items: center;\n background-color: var(--background-color);\n box-shadow: var(--shadow-medium);\n color: var(--text-color);\n display: grid;\n grid-template-areas:\n "visual"\n "content";\n grid-template-columns: auto;\n grid-template-rows: var(--spacing-layout-8) auto;\n text-decoration: none;\n }\n\n .blob {\n fill: var(--accent-color);\n grid-area: visual;\n height: 100%;\n width: 100%;\n }\n\n picture {\n grid-area: visual;\n height: 100%;\n width: 100%;\n z-index: 1;\n }\n\n picture img {\n object-fit: cover;\n object-position: center center;\n height: 100%;\n width: 100%;\n }\n\n picture.illustration img {\n object-fit: contain;\n }\n\n .content {\n padding: var(--spacing-layout-1, 1rem) var(--outer-margin, 1rem);\n }\n\n @media (min-width: 768px) {\n a {\n grid-template-columns: 33% minmax(50%, var(--column-span-6)) auto;\n grid-template-rows: auto;\n grid-template-areas: "visual" "content";\n }\n\n .content {\n text-align: start;\n }\n\n picture {\n max-height: calc(var(--spacing-layout-1) * 12);\n }\n }\n\n @media (prefers-reduced-motion: no-preference) {\n .blob path {\n animation: float 10s ease-in-out infinite;\n z-index: 0;\n }\n }\n\n @keyframes float {\n 0% {\n transform: translatex(0) translatey(0) rotate(0);\n }\n 50% {\n transform: translatex(2px) translatey(-4px) rotate(4deg);\n }\n 100% {\n transform: translatex(0) translatey(0) rotate(0);\n }\n }\n '])))]),customElements.get("cfa-banner")||customElements.define("cfa-banner",ui);class vi extends cn{constructor(){super(),this.atScrollStart=!0,this.atScrollEnd=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("focusin",n=>{""===n.target.slot&&n.target.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})})}scrollPrevious(){const n=this.shadowRoot.querySelector(".carousel"),e=this.shadowRoot.querySelector("slot").assignedElements()[0].clientWidth;n.scrollBy({left:-e,behavior:"smooth"})}scrollNext(){const n=this.shadowRoot.querySelector(".carousel"),e=this.shadowRoot.querySelector("slot").assignedElements()[0].clientWidth;n.scrollBy({left:e,behavior:"smooth"})}handleScroll(n){0===n.target.scrollLeft?this.atScrollStart=!0:this.atScrollStart=!1,Math.round(n.target.scrollLeft+n.target.clientWidth)>=Math.round(n.target.scrollWidth)?this.atScrollEnd=!0:this.atScrollEnd=!1}render(){return q(It||(It=pi(['\n <div class="carousel" @scroll=','>\n <div class="spacer"></div>\n <slot></slot>\n <div class="spacer"></div>\n </div>\n <div class="controls">\n <button\n class="previous ','"\n @click="','"\n >\n <cfa-icon>arrow_back</cfa-icon>\n </button>\n <button\n class="next ','"\n @click="','"\n >\n <cfa-icon>arrow_forward</cfa-icon>\n </button>\n </div>\n '])),this.handleScroll,this.atScrollStart?"disabled":"",this.scrollPrevious,this.atScrollEnd?"disabled":"",this.scrollNext)}}function mi(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function gi(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}fi(vi,"properties",{atScrollStart:{type:Boolean},atScrollEnd:{type:Boolean}}),fi(vi,"styles",[un,o(Bt||(Bt=pi(["\n :host {\n --slide-width-mobile: 75vw;\n --slide-width-desktop: var(--column-span-3);\n\n display: block;\n scrollbar-color: transparent transparent;\n scrollbar-width: 0px;\n scroll-behavior: smooth;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n }\n\n :host(:focus) {\n outline: none !important;\n }\n\n ::-webkit-scrollbar {\n background: transparent;\n width: 0px;\n }\n\n .carousel {\n display: flex;\n gap: var(--spacing-layout-1);\n overflow-x: scroll;\n scroll-snap-type: x mandatory;\n padding-block-start: var(--spacing-layout-half);\n padding-block-end: var(--spacing-layout-1);\n }\n\n .controls {\n margin-block-start: calc(-1 * var(--spacing-layout-half));\n margin-block-end: var(--spacing-layout-1);\n text-align: center;\n }\n\n .controls > * + * {\n margin-inline-start: var(--spacing-layout-half);\n }\n\n .controls button {\n background: transparent;\n border: none;\n border-radius: 50%;\n color: var(--purple-80);\n cursor: pointer;\n font-size: var(--font-size-large, 1.25rem);\n height: var(--spacing-layout-2);\n transition: background-color 0.2s ease-in-out;\n width: var(--spacing-layout-2);\n }\n\n .controls button:hover,\n .controls button:focus {\n background-color: var(--white, #fff);\n }\n\n .controls button:focus {\n outline: var(--focus-outline);\n }\n\n .controls button.disabled {\n color: var(--black-20);\n cursor: default;\n }\n\n .controls button.disabled:hover,\n .controls button.disabled:focus {\n background: transparent;\n outline: none;\n }\n\n ::slotted(*) {\n flex: 0 0 var(--slide-width-mobile);\n margin-block: var(--spacing-layout-1);\n scroll-snap-align: center;\n }\n\n @media (min-width: 1024px) {\n ::slotted(*) {\n flex: 0 0 var(--slide-width-desktop);\n }\n\n .spacer {\n flex: 0 0\n calc((100vw - var(--column-span-12)) / 2 - var(--outer-margin));\n }\n }\n "])))]),customElements.get("cfa-carousel")||customElements.define("cfa-carousel",vi);class bi extends cn{render(){return q(Ft||(Ft=mi(['\n <div class="cta">\n <div class="blob">\n <cfa-blob></cfa-blob>\n </div>\n <div class="content">\n <slot />\n </div>\n </div>\n '])))}}gi(bi,"properties",{}),gi(bi,"styles",[un,o(qt||(qt=mi(["\n :host {\n --bg-color: var(--purple-60);\n --link-color: var(--white);\n --link-hover-color: var(--white);\n --spacing: var(--spacing-layout-1);\n --text-color: var(--white);\n\n background-color: var(--bg-color);\n display: block;\n }\n\n a {\n color: var(--link-color);\n }\n\n a:hover {\n color: var(--link-hover-color);\n }\n\n .cta {\n display: grid;\n }\n\n .cta > * {\n grid-area: 1 / 1;\n }\n\n .content {\n color: var(--text-color);\n display: flex;\n flex-direction: column;\n gap: var(--spacing);\n margin-inline: auto;\n max-width: var(--column-span-8);\n padding: var(--spacing-layout-4) var(--outer-margin);\n position: relative;\n spacing: var(--spacing-layout-2);\n text-align: center;\n }\n\n .blob {\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\n }\n\n cfa-blob {\n --color: var(--purple-80);\n\n overflow: hidden;\n position: absolute;\n height: 120%;\n width: 140%;\n top: -10%;\n left: -20%;\n }\n\n @media (min-width: 768px) {\n cfa-blob {\n left: auto;\n width: 100%;\n height: 200%;\n top: -50%;\n }\n }\n\n ::slotted(*) {\n margin-block: 0 !important;\n }\n "])))]),customElements.get("cfa-cta")||customElements.define("cfa-cta",bi);const wi=o(Vt||(Vt=function(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}(["\n .wrapper {\n box-sizing: border-box;\n margin: 0 auto;\n max-width: var(--grid-max-width);\n }\n\n .container-fluid {\n margin-inline: auto;\n padding-inline: var(--outer-margin);\n }\n"])));var yi,xi;function ki(n,e){return e||(e=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(e)}}))}function zi(n,e,t){return(e=function(n){var e=function(n){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var t=e.call(n,"string");if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(n);return"symbol"==typeof e?e:e+""}(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}class ji extends cn{render(){return q(yi||(yi=ki(['\n <div class="container-fluid wrapper">\n <div class="layout layout--','">\n <slot name="content-area-1"></slot>\n <slot name="content-area-2"></slot>\n <slot name="content-area-3"></slot>\n </div>\n </div>\n '])),this.theme)}}zi(ji,"properties",{theme:{}}),zi(ji,"styles",[un,wi,o(xi||(xi=ki(['\n :host {\n --column-gap: var(--gutter-width);\n --row-gap: var(--spacing-layout-1);\n\n display: block;\n }\n\n .layout {\n display: flex;\n flex-direction: column;\n row-gap: var(--row-gap);\n }\n\n /* Theme: one (full-width) */\n @media (min-width: 768px) {\n .layout {\n column-gap: var(--column-gap);\n display: grid;\n grid-template-areas: "content-area-1" "content-area-2" "content-area-3" "content-area-4";\n row-gap: var(--row-gap);\n }\n\n .content-area-1 {\n grid-area: content-area-1;\n }\n .content-area-2 {\n grid-area: content-area-2;\n }\n .content-area-3 {\n grid-area: content-area-3;\n }\n }\n\n @media (min-width: 768px) {\n .layout--one {\n grid-template-columns: 1fr;\n grid-template-areas: "content-area-1";\n }\n }\n\n /* Theme: one-one */\n @media (min-width: 768px) {\n .layout--one-one {\n grid-template-columns: 1fr 1fr;\n grid-template-areas: "content-area-1 content-area-2";\n }\n }\n\n /* Theme: one-two */\n @media (min-width: 768px) {\n .layout--one-two {\n grid-template-columns: 1fr 2fr;\n grid-template-areas: "content-area-1 content-area-2";\n }\n }\n\n /* Theme: two-one */\n @media (min-width: 768px) {\n .layout--two-one {\n grid-template-columns: 2fr 1fr;\n grid-template-areas: "content-area-1 content-area-2";\n }\n }\n\n /* Theme: one-one-one */\n @media (min-width: 768px) {\n .layout--one-one-one {\n grid-template-columns: 1fr 1fr 1fr;\n grid-template-areas: "content-area-1 content-area-2 content-area-3";\n }\n }\n\n /* Theme: one-one-two */\n @media (min-width: 768px) {\n .layout--one-one-two {\n grid-template-columns: 1fr 1fr 2fr;\n grid-template-areas: "content-area-1 content-area-2 content-area-3";\n }\n }\n\n /* Theme: one-two-one */\n @media (min-width: 768px) {\n .layout--one-two-one {\n grid-template-columns: 1fr 2fr 1fr;\n grid-template-areas: "content-area-1 content-area-2 content-area-3";\n }\n }\n\n /* Theme: two-one-one */\n @media (min-width: 768px) {\n .layout--two-one-one {\n grid-template-columns: 2fr 1fr 1fr;\n grid-template-areas: "content-area-1 content-area-2 content-area-3";\n }\n }\n '])))]),customElements.define("cfa-flexible-layout",ji),customElements.get("cfa-flexible-layout")||customElements.define("cfa-flexible-layout",ji)})();
|
package/package.json
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codeforamerica/marcomms-design-system",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2",
|
|
4
4
|
"main": "src/index.js",
|
|
5
|
+
"dependencies": {
|
|
6
|
+
"lit": "^3.2.1",
|
|
7
|
+
"lit-html": "^3.2.1"
|
|
8
|
+
},
|
|
5
9
|
"devDependencies": {
|
|
6
10
|
"@babel/cli": "^7.26.4",
|
|
7
11
|
"@babel/core": "^7.26.0",
|
|
@@ -11,35 +15,30 @@
|
|
|
11
15
|
"@babel/preset-typescript": "^7.26.0",
|
|
12
16
|
"@eslint/js": "^9.17.0",
|
|
13
17
|
"@semantic-release/changelog": "^6.0.3",
|
|
14
|
-
"@storybook/addon-a11y": "^
|
|
15
|
-
"@storybook/addon-
|
|
16
|
-
"@storybook/addon-
|
|
17
|
-
"@storybook/
|
|
18
|
-
"@storybook/addon-interactions": "^8.5.8",
|
|
19
|
-
"@storybook/addon-links": "^8.5.8",
|
|
20
|
-
"@storybook/html": "^8.5.8",
|
|
18
|
+
"@storybook/addon-a11y": "^9.1.3",
|
|
19
|
+
"@storybook/addon-docs": "^9.1.3",
|
|
20
|
+
"@storybook/addon-links": "^9.1.3",
|
|
21
|
+
"@storybook/html": "^9.1.3",
|
|
21
22
|
"@storybook/preset-scss": "^1.0.3",
|
|
22
23
|
"@storybook/testing-library": "^0.2.2",
|
|
23
|
-
"@storybook/web-components": "^
|
|
24
|
-
"@storybook/web-components-
|
|
24
|
+
"@storybook/web-components": "^9.1.3",
|
|
25
|
+
"@storybook/web-components-vite": "^9.1.3",
|
|
25
26
|
"autoprefixer": "^10.4.20",
|
|
26
27
|
"babel-loader": "^9.2.1",
|
|
27
28
|
"chromatic": "^11.20.2",
|
|
28
29
|
"commitizen": "^4.3.1",
|
|
29
30
|
"copy-webpack-plugin": "^12.0.2",
|
|
30
31
|
"css-loader": "7.1.2",
|
|
31
|
-
"cz-conventional-changelog": "^3.
|
|
32
|
+
"cz-conventional-changelog": "^3.0.1",
|
|
32
33
|
"dompurify": "^3.2.3",
|
|
33
34
|
"eslint": "^9.17.0",
|
|
34
35
|
"eslint-config-prettier": "^9.1.0",
|
|
35
36
|
"eslint-plugin-prettier": "^5.2.1",
|
|
36
|
-
"eslint-plugin-storybook": "^
|
|
37
|
+
"eslint-plugin-storybook": "^9.1.3",
|
|
37
38
|
"flexboxgrid-sass": "^8.0.5",
|
|
38
39
|
"globals": "^15.14.0",
|
|
39
40
|
"he": "^1.2.0",
|
|
40
41
|
"intersection-observer": "^0.12.2",
|
|
41
|
-
"lit": "^3.2.1",
|
|
42
|
-
"lit-html": "^3.2.1",
|
|
43
42
|
"mini-css-extract-plugin": "^2.9.2",
|
|
44
43
|
"postcss": "^8.4.49",
|
|
45
44
|
"postcss-loader": "^8.1.1",
|
|
@@ -50,7 +49,7 @@
|
|
|
50
49
|
"sass": "^1.83.0",
|
|
51
50
|
"sass-loader": "^16.0.4",
|
|
52
51
|
"semantic-release": "^24.2.7",
|
|
53
|
-
"storybook": "^
|
|
52
|
+
"storybook": "^9.1.3",
|
|
54
53
|
"style-loader": "^4.0.0",
|
|
55
54
|
"webpack": "^5.97.1",
|
|
56
55
|
"webpack-cli": "^6.0.1",
|
package/src/core/colors.mdx
CHANGED
package/src/core/grid.mdx
CHANGED
package/src/core/grid.scss
CHANGED
|
@@ -1,6 +1,401 @@
|
|
|
1
1
|
@use "sass:math";
|
|
2
|
+
@use "sass:list";
|
|
3
|
+
@use "sass:meta";
|
|
4
|
+
|
|
5
|
+
// Flexbox Mixins
|
|
6
|
+
// http://philipwalton.github.io/solved-by-flexbox/
|
|
7
|
+
// https://github.com/philipwalton/solved-by-flexbox
|
|
8
|
+
//
|
|
9
|
+
// Copyright (c) 2013 Brian Franco
|
|
10
|
+
//
|
|
11
|
+
// Permission is hereby granted, free of charge, to any person obtaining a
|
|
12
|
+
// copy of this software and associated documentation files (the
|
|
13
|
+
// "Software"), to deal in the Software without restriction, including
|
|
14
|
+
// without limitation the rights to use, copy, modify, merge, publish,
|
|
15
|
+
// distribute, sublicense, and/or sell copies of the Software, and to
|
|
16
|
+
// permit persons to whom the Software is furnished to do so, subject to
|
|
17
|
+
// the following conditions:
|
|
18
|
+
// The above copyright notice and this permission notice shall be included
|
|
19
|
+
// in all copies or substantial portions of the Software.
|
|
20
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
21
|
+
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
22
|
+
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
23
|
+
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
24
|
+
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
25
|
+
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
26
|
+
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
27
|
+
//
|
|
28
|
+
// This is a set of mixins for those who want to mess around with flexbox
|
|
29
|
+
// using the native support of current browsers. For full support table
|
|
30
|
+
// check: http://caniuse.com/flexbox
|
|
31
|
+
//
|
|
32
|
+
// Basically this will use:
|
|
33
|
+
//
|
|
34
|
+
// * Fallback, old syntax (IE10, mobile webkit browsers - no wrapping)
|
|
35
|
+
// * Final standards syntax (FF, Safari, Chrome, IE11, Opera)
|
|
36
|
+
//
|
|
37
|
+
// This was inspired by:
|
|
38
|
+
//
|
|
39
|
+
// * http://dev.opera.com/articles/view/advanced-cross-browser-flexbox/
|
|
40
|
+
//
|
|
41
|
+
// With help from:
|
|
42
|
+
//
|
|
43
|
+
// * http://w3.org/tr/css3-flexbox/
|
|
44
|
+
// * http://the-echoplex.net/flexyboxes/
|
|
45
|
+
// * http://msdn.microsoft.com/en-us/library/ie/hh772069(v=vs.85).aspx
|
|
46
|
+
// * http://css-tricks.com/using-flexbox/
|
|
47
|
+
// * http://dev.opera.com/articles/view/advanced-cross-browser-flexbox/
|
|
48
|
+
// * https://developer.mozilla.org/en-us/docs/web/guide/css/flexible_boxes
|
|
49
|
+
|
|
50
|
+
//----------------------------------------------------------------------
|
|
51
|
+
|
|
52
|
+
// Flexbox Containers
|
|
53
|
+
//
|
|
54
|
+
// The 'flex' value causes an element to generate a block-level flex
|
|
55
|
+
// container box.
|
|
56
|
+
//
|
|
57
|
+
// The 'inline-flex' value causes an element to generate a inline-level
|
|
58
|
+
// flex container box.
|
|
59
|
+
//
|
|
60
|
+
// display: flex | inline-flex
|
|
61
|
+
//
|
|
62
|
+
// http://w3.org/tr/css3-flexbox/#flex-containers
|
|
63
|
+
//
|
|
64
|
+
// (Placeholder selectors for each type, for those who rather @extend)
|
|
65
|
+
|
|
66
|
+
@mixin flexbox {
|
|
67
|
+
display: -webkit-box;
|
|
68
|
+
display: -webkit-flex;
|
|
69
|
+
display: -moz-flex;
|
|
70
|
+
display: -ms-flexbox;
|
|
71
|
+
display: flex;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
%flexbox { @include flexbox; }
|
|
75
|
+
|
|
76
|
+
//----------------------------------
|
|
77
|
+
|
|
78
|
+
@mixin inline-flex {
|
|
79
|
+
display: -webkit-inline-box;
|
|
80
|
+
display: -webkit-inline-flex;
|
|
81
|
+
display: -moz-inline-flex;
|
|
82
|
+
display: -ms-inline-flexbox;
|
|
83
|
+
display: inline-flex;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
%inline-flex { @include inline-flex; }
|
|
87
|
+
|
|
88
|
+
//----------------------------------------------------------------------
|
|
89
|
+
|
|
90
|
+
// Flexbox Direction
|
|
91
|
+
//
|
|
92
|
+
// The 'flex-direction' property specifies how flex items are placed in
|
|
93
|
+
// the flex container, by setting the direction of the flex container's
|
|
94
|
+
// main axis. This determines the direction that flex items are laid out in.
|
|
95
|
+
//
|
|
96
|
+
// Values: row | row-reverse | column | column-reverse
|
|
97
|
+
// Default: row
|
|
98
|
+
//
|
|
99
|
+
// http://w3.org/tr/css3-flexbox/#flex-direction-property
|
|
100
|
+
|
|
101
|
+
@mixin flex-direction($value: row) {
|
|
102
|
+
@if $value == row-reverse {
|
|
103
|
+
-webkit-box-direction: reverse;
|
|
104
|
+
-webkit-box-orient: horizontal;
|
|
105
|
+
} @else if $value == column {
|
|
106
|
+
-webkit-box-direction: normal;
|
|
107
|
+
-webkit-box-orient: vertical;
|
|
108
|
+
} @else if $value == column-reverse {
|
|
109
|
+
-webkit-box-direction: reverse;
|
|
110
|
+
-webkit-box-orient: vertical;
|
|
111
|
+
} @else {
|
|
112
|
+
-webkit-box-direction: normal;
|
|
113
|
+
-webkit-box-orient: horizontal;
|
|
114
|
+
}
|
|
115
|
+
-webkit-flex-direction: $value;
|
|
116
|
+
-moz-flex-direction: $value;
|
|
117
|
+
-ms-flex-direction: $value;
|
|
118
|
+
flex-direction: $value;
|
|
119
|
+
}
|
|
120
|
+
// Shorter version:
|
|
121
|
+
@mixin flex-dir($args...) { @include flex-direction($args...); }
|
|
122
|
+
|
|
123
|
+
//----------------------------------------------------------------------
|
|
124
|
+
|
|
125
|
+
// Flexbox Wrap
|
|
126
|
+
//
|
|
127
|
+
// The 'flex-wrap' property controls whether the flex container is single-line
|
|
128
|
+
// or multi-line, and the direction of the cross-axis, which determines
|
|
129
|
+
// the direction new lines are stacked in.
|
|
130
|
+
//
|
|
131
|
+
// Values: nowrap | wrap | wrap-reverse
|
|
132
|
+
// Default: nowrap
|
|
133
|
+
//
|
|
134
|
+
// http://w3.org/tr/css3-flexbox/#flex-wrap-property
|
|
135
|
+
|
|
136
|
+
@mixin flex-wrap($value: nowrap) {
|
|
137
|
+
// No Webkit Box fallback.
|
|
138
|
+
-webkit-flex-wrap: $value;
|
|
139
|
+
-moz-flex-wrap: $value;
|
|
140
|
+
@if $value == nowrap {
|
|
141
|
+
-ms-flex-wrap: none;
|
|
142
|
+
} @else {
|
|
143
|
+
-ms-flex-wrap: $value;
|
|
144
|
+
}
|
|
145
|
+
flex-wrap: $value;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
//----------------------------------------------------------------------
|
|
149
|
+
|
|
150
|
+
// Flexbox Flow (shorthand)
|
|
151
|
+
//
|
|
152
|
+
// The 'flex-flow' property is a shorthand for setting the 'flex-direction'
|
|
153
|
+
// and 'flex-wrap' properties, which together define the flex container's
|
|
154
|
+
// main and cross axes.
|
|
155
|
+
//
|
|
156
|
+
// Values: <flex-direction> | <flex-wrap>
|
|
157
|
+
// Default: row nowrap
|
|
158
|
+
//
|
|
159
|
+
// http://w3.org/tr/css3-flexbox/#flex-flow-property
|
|
160
|
+
|
|
161
|
+
@mixin flex-flow($values: (row nowrap)) {
|
|
162
|
+
// No Webkit Box fallback.
|
|
163
|
+
-webkit-flex-flow: $values;
|
|
164
|
+
-moz-flex-flow: $values;
|
|
165
|
+
-ms-flex-flow: $values;
|
|
166
|
+
flex-flow: $values;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
//----------------------------------------------------------------------
|
|
170
|
+
|
|
171
|
+
// Flexbox Order
|
|
172
|
+
//
|
|
173
|
+
// The 'order' property controls the order in which flex items appear within
|
|
174
|
+
// their flex container, by assigning them to ordinal groups.
|
|
175
|
+
//
|
|
176
|
+
// Default: 0
|
|
177
|
+
//
|
|
178
|
+
// http://w3.org/tr/css3-flexbox/#order-property
|
|
179
|
+
|
|
180
|
+
@mixin order($int: 0) {
|
|
181
|
+
-webkit-box-ordinal-group: $int + 1;
|
|
182
|
+
-webkit-order: $int;
|
|
183
|
+
-moz-order: $int;
|
|
184
|
+
-ms-flex-order: $int;
|
|
185
|
+
order: $int;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
//----------------------------------------------------------------------
|
|
189
|
+
|
|
190
|
+
// Flexbox Grow
|
|
191
|
+
//
|
|
192
|
+
// The 'flex-grow' property sets the flex grow factor. Negative numbers
|
|
193
|
+
// are invalid.
|
|
194
|
+
//
|
|
195
|
+
// Default: 0
|
|
196
|
+
//
|
|
197
|
+
// http://w3.org/tr/css3-flexbox/#flex-grow-property
|
|
198
|
+
|
|
199
|
+
@mixin flex-grow($int: 0) {
|
|
200
|
+
-webkit-box-flex: $int;
|
|
201
|
+
-webkit-flex-grow: $int;
|
|
202
|
+
-moz-flex-grow: $int;
|
|
203
|
+
-ms-flex-positive: $int;
|
|
204
|
+
flex-grow: $int;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
//----------------------------------------------------------------------
|
|
208
|
+
|
|
209
|
+
// Flexbox Shrink
|
|
210
|
+
//
|
|
211
|
+
// The 'flex-shrink' property sets the flex shrink factor. Negative numbers
|
|
212
|
+
// are invalid.
|
|
213
|
+
//
|
|
214
|
+
// Default: 1
|
|
215
|
+
//
|
|
216
|
+
// http://w3.org/tr/css3-flexbox/#flex-shrink-property
|
|
217
|
+
|
|
218
|
+
@mixin flex-shrink($int: 1) {
|
|
219
|
+
-webkit-flex-shrink: $int;
|
|
220
|
+
-moz-flex-shrink: $int;
|
|
221
|
+
-ms-flex-negative: $int;
|
|
222
|
+
flex-shrink: $int;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
//----------------------------------------------------------------------
|
|
226
|
+
|
|
227
|
+
// Flexbox Basis
|
|
228
|
+
//
|
|
229
|
+
// The 'flex-basis' property sets the flex basis. Negative lengths are invalid.
|
|
230
|
+
//
|
|
231
|
+
// Values: Like "width"
|
|
232
|
+
// Default: auto
|
|
233
|
+
//
|
|
234
|
+
// http://www.w3.org/TR/css3-flexbox/#flex-basis-property
|
|
235
|
+
|
|
236
|
+
@mixin flex-basis($value: auto) {
|
|
237
|
+
-webkit-flex-basis: $value;
|
|
238
|
+
-moz-flex-basis: $value;
|
|
239
|
+
-ms-flex-preferred-size: $value;
|
|
240
|
+
flex-basis: $value;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
//----------------------------------------------------------------------
|
|
244
|
+
|
|
245
|
+
// Flexbox "Flex" (shorthand)
|
|
246
|
+
//
|
|
247
|
+
// The 'flex' property specifies the components of a flexible length: the
|
|
248
|
+
// flex grow factor and flex shrink factor, and the flex basis. When an
|
|
249
|
+
// element is a flex item, 'flex' is consulted instead of the main size
|
|
250
|
+
// property to determine the main size of the element. If an element is
|
|
251
|
+
// not a flex item, 'flex' has no effect.
|
|
252
|
+
//
|
|
253
|
+
// Values: none | <flex-grow> <flex-shrink> || <flex-basis>
|
|
254
|
+
// Default: See individual properties (1 1 0).
|
|
255
|
+
//
|
|
256
|
+
// http://w3.org/tr/css3-flexbox/#flex-property
|
|
257
|
+
|
|
258
|
+
@mixin flex($fg: 1, $fs: null, $fb: null) {
|
|
259
|
+
|
|
260
|
+
// Set a variable to be used by box-flex properties
|
|
261
|
+
$fg-boxflex: $fg;
|
|
262
|
+
|
|
263
|
+
// Box-Flex only supports a flex-grow value so let's grab the
|
|
264
|
+
// first item in the list and just return that.
|
|
265
|
+
@if meta.type-of($fg) == 'list' {
|
|
266
|
+
$fg-boxflex: list.nth($fg, 1);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
-webkit-box-flex: $fg-boxflex;
|
|
270
|
+
-webkit-flex: $fg $fs $fb;
|
|
271
|
+
-moz-box-flex: $fg-boxflex;
|
|
272
|
+
-moz-flex: $fg $fs $fb;
|
|
273
|
+
-ms-flex: $fg $fs $fb;
|
|
274
|
+
flex: $fg $fs $fb;
|
|
275
|
+
}
|
|
2
276
|
|
|
3
|
-
|
|
277
|
+
//----------------------------------------------------------------------
|
|
278
|
+
|
|
279
|
+
// Flexbox Justify Content
|
|
280
|
+
//
|
|
281
|
+
// The 'justify-content' property aligns flex items along the main axis
|
|
282
|
+
// of the current line of the flex container. This is done after any flexible
|
|
283
|
+
// lengths and any auto margins have been resolved. Typically it helps distribute
|
|
284
|
+
// extra free space leftover when either all the flex items on a line are
|
|
285
|
+
// inflexible, or are flexible but have reached their maximum size. It also
|
|
286
|
+
// exerts some control over the alignment of items when they overflow the line.
|
|
287
|
+
//
|
|
288
|
+
// Note: 'space-*' values not supported in older syntaxes.
|
|
289
|
+
//
|
|
290
|
+
// Values: flex-start | flex-end | center | space-between | space-around
|
|
291
|
+
// Default: flex-start
|
|
292
|
+
//
|
|
293
|
+
// http://w3.org/tr/css3-flexbox/#justify-content-property
|
|
294
|
+
|
|
295
|
+
@mixin justify-content($value: flex-start) {
|
|
296
|
+
@if $value == flex-start {
|
|
297
|
+
-webkit-box-pack: start;
|
|
298
|
+
-ms-flex-pack: start;
|
|
299
|
+
} @else if $value == flex-end {
|
|
300
|
+
-webkit-box-pack: end;
|
|
301
|
+
-ms-flex-pack: end;
|
|
302
|
+
} @else if $value == space-between {
|
|
303
|
+
-webkit-box-pack: justify;
|
|
304
|
+
-ms-flex-pack: justify;
|
|
305
|
+
} @else if $value == space-around {
|
|
306
|
+
-ms-flex-pack: distribute;
|
|
307
|
+
} @else {
|
|
308
|
+
-webkit-box-pack: $value;
|
|
309
|
+
-ms-flex-pack: $value;
|
|
310
|
+
}
|
|
311
|
+
-webkit-justify-content: $value;
|
|
312
|
+
-moz-justify-content: $value;
|
|
313
|
+
justify-content: $value;
|
|
314
|
+
}
|
|
315
|
+
// Shorter version:
|
|
316
|
+
@mixin flex-just($args...) { @include justify-content($args...); }
|
|
317
|
+
|
|
318
|
+
//----------------------------------------------------------------------
|
|
319
|
+
|
|
320
|
+
// Flexbox Align Items
|
|
321
|
+
//
|
|
322
|
+
// Flex items can be aligned in the cross axis of the current line of the
|
|
323
|
+
// flex container, similar to 'justify-content' but in the perpendicular
|
|
324
|
+
// direction. 'align-items' sets the default alignment for all of the flex
|
|
325
|
+
// container's items, including anonymous flex items. 'align-self' allows
|
|
326
|
+
// this default alignment to be overridden for individual flex items. (For
|
|
327
|
+
// anonymous flex items, 'align-self' always matches the value of 'align-items'
|
|
328
|
+
// on their associated flex container.)
|
|
329
|
+
//
|
|
330
|
+
// Values: flex-start | flex-end | center | baseline | stretch
|
|
331
|
+
// Default: stretch
|
|
332
|
+
//
|
|
333
|
+
// http://w3.org/tr/css3-flexbox/#align-items-property
|
|
334
|
+
|
|
335
|
+
@mixin align-items($value: stretch) {
|
|
336
|
+
@if $value == flex-start {
|
|
337
|
+
-webkit-box-align: start;
|
|
338
|
+
-ms-flex-align: start;
|
|
339
|
+
} @else if $value == flex-end {
|
|
340
|
+
-webkit-box-align: end;
|
|
341
|
+
-ms-flex-align: end;
|
|
342
|
+
} @else {
|
|
343
|
+
-webkit-box-align: $value;
|
|
344
|
+
-ms-flex-align: $value;
|
|
345
|
+
}
|
|
346
|
+
-webkit-align-items: $value;
|
|
347
|
+
-moz-align-items: $value;
|
|
348
|
+
align-items: $value;
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
//----------------------------------
|
|
352
|
+
|
|
353
|
+
// Flexbox Align Self
|
|
354
|
+
//
|
|
355
|
+
// Values: auto | flex-start | flex-end | center | baseline | stretch
|
|
356
|
+
// Default: auto
|
|
357
|
+
|
|
358
|
+
@mixin align-self($value: auto) {
|
|
359
|
+
// No Webkit Box Fallback.
|
|
360
|
+
-webkit-align-self: $value;
|
|
361
|
+
-moz-align-self: $value;
|
|
362
|
+
@if $value == flex-start {
|
|
363
|
+
-ms-flex-item-align: start;
|
|
364
|
+
} @else if $value == flex-end {
|
|
365
|
+
-ms-flex-item-align: end;
|
|
366
|
+
} @else {
|
|
367
|
+
-ms-flex-item-align: $value;
|
|
368
|
+
}
|
|
369
|
+
align-self: $value;
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
//----------------------------------------------------------------------
|
|
373
|
+
|
|
374
|
+
// Flexbox Align Content
|
|
375
|
+
//
|
|
376
|
+
// The 'align-content' property aligns a flex container's lines within the
|
|
377
|
+
// flex container when there is extra space in the cross-axis, similar to
|
|
378
|
+
// how 'justify-content' aligns individual items within the main-axis. Note,
|
|
379
|
+
// this property has no effect when the flexbox has only a single line.
|
|
380
|
+
//
|
|
381
|
+
// Values: flex-start | flex-end | center | space-between | space-around | stretch
|
|
382
|
+
// Default: stretch
|
|
383
|
+
//
|
|
384
|
+
// http://w3.org/tr/css3-flexbox/#align-content-property
|
|
385
|
+
|
|
386
|
+
@mixin align-content($value: stretch) {
|
|
387
|
+
// No Webkit Box Fallback.
|
|
388
|
+
-webkit-align-content: $value;
|
|
389
|
+
-moz-align-content: $value;
|
|
390
|
+
@if $value == flex-start {
|
|
391
|
+
-ms-flex-line-pack: start;
|
|
392
|
+
} @else if $value == flex-end {
|
|
393
|
+
-ms-flex-line-pack: end;
|
|
394
|
+
} @else {
|
|
395
|
+
-ms-flex-line-pack: $value;
|
|
396
|
+
}
|
|
397
|
+
align-content: $value;
|
|
398
|
+
}
|
|
4
399
|
|
|
5
400
|
$base-font-size: 20px;
|
|
6
401
|
|
|
@@ -129,9 +524,9 @@ $name: xs;
|
|
|
129
524
|
|
|
130
525
|
|
|
131
526
|
@each $breakpoint in $breakpoints {
|
|
132
|
-
$name: nth($breakpoint, 1);
|
|
133
|
-
$size: nth($breakpoint, 2);
|
|
134
|
-
$container: nth($breakpoint, 3);
|
|
527
|
+
$name: list.nth($breakpoint, 1);
|
|
528
|
+
$size: list.nth($breakpoint, 2);
|
|
529
|
+
$container: list.nth($breakpoint, 3);
|
|
135
530
|
@media only screen and (min-width: $size) {
|
|
136
531
|
.container {
|
|
137
532
|
width: $container;
|
|
@@ -228,8 +623,8 @@ $name: xs;
|
|
|
228
623
|
}
|
|
229
624
|
|
|
230
625
|
@each $breakpoint in $breakpoints {
|
|
231
|
-
$name: nth($breakpoint, 1);
|
|
232
|
-
$size: nth($breakpoint, 2);
|
|
626
|
+
$name: list.nth($breakpoint, 1);
|
|
627
|
+
$size: list.nth($breakpoint, 2);
|
|
233
628
|
@media only screen and (min-width: $size) {
|
|
234
629
|
@for $i from 1 through 3 {
|
|
235
630
|
.row-#{$name}-#{$i} {
|
|
@@ -248,7 +643,7 @@ $name: xs;
|
|
|
248
643
|
}
|
|
249
644
|
|
|
250
645
|
@each $breakpoint in $breakpoints {
|
|
251
|
-
$name: nth($breakpoint, 1);
|
|
646
|
+
$name: list.nth($breakpoint, 1);
|
|
252
647
|
|
|
253
648
|
// Stop Flexbox Grid alignment from affecting text-alignment
|
|
254
649
|
.start-xs,
|
package/src/core/typography.mdx
CHANGED