.body { font-family: var(--text-ff-body);color: var(--text-default);line-height: var(--text-lh-default);font-size: var(--text-size-default);text-wrap: pretty;overflow-x: clip; }
.h1-style { font-family: var(--text-ff-display);color: var(--text-primary);font-size: var(--text-size-3xl);font-weight: var(--text-weight-normal);line-height: var(--text-lh-tight);letter-spacing: var(--text-ls-default);margin-block: 0 var(--space-s); }
.h2-style { font-family: var(--text-ff-display);color: var(--text-default);font-size: var(--text-size-xxl);font-weight: var(--text-weight-normal);line-height: var(--text-lh-tight);letter-spacing: var(--text-ls-default);margin-block: 0 var(--space-s); }
.h3-style { font-family: var(--text-ff-display);font-size: var(--text-size-m);font-weight: var(--text-weight-normal);letter-spacing: var(--text-ls-wide);text-transform: uppercase;margin-block: 0 var(--space-s); }
.h4-style { font-family: var(--text-ff-display);font-weight: var(--text-weight-normal);font-size: var(--text-size-l);letter-spacing: var(--text-ls-wide);margin-block: 0 var(--space-s); }
.h5-style { font-family: var(--text-ff-display);color: var(--text-primary);font-size: var(--text-size-m);font-weight: var(--text-weight-normal);letter-spacing: var(--text-ls-wide);text-transform: uppercase;margin-block: 0 var(--space-s); }
.h6-style { font-family: var(--text-ff-display);color: var(--text-aux);font-size: var(--text-size-s);font-weight: var(--text-weight-normal);margin-block: 0 var(--space-s);letter-spacing: var(--text-ls-wide); }
A { color: var(--text-link);text-decoration: underline currentColor;text-underline-offset: .05em;transition: var(--link-transition);cursor: pointer; }
A:hover { text-decoration-color: transparent;color: inherit; }
.button { font-family: var(--rm-text);color: var(--rm-color);font-size: var(--rm-text-size);font-weight: var(--rm-text-weight);text-transform: var(--rm-text-tt);letter-spacing: var(--rm-text-ls);line-height: var(--text-lh-default);padding: var(--rm-padding);display: inline-flex;flex-direction: row;flex-wrap: nowrap;align-items: center;transition: var(--rm-transition);margin-block-start: var(--space-m);cursor: pointer;align-self: start;padding-inline-end: var(--_rm-padding-end, 0);background: transparent;border: none; }
.button:hover { --rm-color: var(--text-link);color: var(--rm-color);--_icon-scale-value: -1; }
.button:after { content: var(--rm-icon);font-family: var(--icon-font);color: var(--rm-icon-color);font-size: 1.25em;display: inline-flex;justify-content: center;margin-inline: var(--rm-icon-gap) 0;transition: background var(--time-250) var(--ease-1), transform var(--time-700) var(--ease-elastic-in-out-3);align-items: center;line-height: .875;font-weight: var(--text-weight-normal);width: .5ch;transform: scaleX(var(--_icon-scale-value, 1)); }
.style-54615 .submit-button { margin: 0;font-family: var(--icon-font);font-size: 1.5rem; }
.style-54615 .search-text { background: var(--gray-light);border: none;border-radius: 0;width: clamp(10rem, 50%, 100%); }
.style-54615 .search-container { display: flex;justify-content: center;gap: 1.5rem;margin-block-end: 2rem; }
.style-54642 .h2-style { font-size: clamp(var(--text-size-l), min(15cqw, 10vw), var(--size-64));padding-bottom: var(--space-xs);position: relative;margin-block: 0 var(--space-s); }
.style-54642 .h2-style:after { content: "";position: relative;display: block;height: var(--border-size-1);background-color: var(--border-color);width: min(70cqw, 30rem);inset-block-end: 0;justify-self: center;top: var(--space-xs); }
.style-54642 { text-align: center;--_subhead-align: center; }
.style-54617 .h2-style { font-size: clamp(var(--text-size-l), min(15cqw, 10vw), var(--size-64));margin-block: 0 var(--space-xs); }
.style-54660 A { display: flex;flex-direction: row;flex-wrap: nowrap;align-items: center;text-decoration: none;color: var(--nav-color);font-family: var(--btn-text);font-size: var(--btn-text-size);font-weight: var(--btn-text-weight);line-height: var(--text-lh-tight);letter-spacing: var(--btn-text-ls);text-transform: var(--btn-text-tt);margin: 0;transition: var(--btn-transition); }
.style-54660 A:hover { --btn-icon-bg: var(--link-color); }
.style-54660 { --btn-direction: row;--btn-wrap: wrap;grid-row-start: 3; }
.style-54660 .long-description { font-size: var(--text-size-s);padding: 0;grid-area: 2 / 2 / span 1 / -1;margin-block-start: var(--space-s); }
.style-54660 A.links-urllink { grid-area: 1 / 2 / span 1 / -1; }
.style-54660 A.links-urllink:before { content: "";position: absolute;inset: 0; }
.style-54660 li.group { container-type: normal;display: grid;grid-template: 1fr auto / auto 1fr;gap: 0 var(--space-m);align-items: center;position: relative;width: clamp(9rem, 30cqw, var(--cnt-width-6)); }
.style-54660 li.group:hover { --btn-bg: var(--bg-default);--btn-color: var(--link-color);--btn-shadow: none;--btn-icon-bg: var(--link-color);--_icon-rotate: -315deg; }
.style-54660 li.group:before { grid-area: 1 / 1 / -1 / span 1;display: flex;place-content: center;place-items: center;content: var(--_icon, "north_east");font-family: var(--icon-font);color: var(--btn-color);background-color: var(--btn-bg);background: linear-gradient(var(--btn-bg),var(--btn-bg)) padding-box,linear-gradient(to bottom, color-mix(in srgb, var(--link-color) 60%, #ffffff),var(--link-color)) border-box;border: var(--btn-border);border-radius: var(--radius-circle);box-shadow: var(--btn-shadow);line-height: 1;height: 1.75em;font-size: var(--text-size-default);aspect-ratio: 1;font-weight: var(--text-weight-bold);transition: var(--btn-transition);place-self: start center;z-index: 1;pointer-events: none;transform: rotate(var(--_icon-rotate, 0deg)); }
.style-54660 div.content-wrap { text-align: left; }
.style-54659 .h2-style { font-family: var(--text-ff-display);color: inherit;font-size: clamp(var(--text-size-xxl), 6.25vw, var(--size-96));font-weight: var(--text-weight-semibold);line-height: var(--text-lh-tight);margin-block: 0 var(--space-s); }
.style-54659 { grid-row-start: 2;width: min(100%, 34rem); }
.style-54620 .h2-style { color: inherit;font-size: var(--text-size-xl);margin-block-end: var(--space-xs); }
.style-54620 { padding: var(--space-xl);border: var(--border-size-1) solid var(--border-color); }
.style-54671 { font-family: var(--text-ff-display);color: light-dark(var(--text-primary), var(--text-default));letter-spacing: var(--text-ls-default);line-height: var(--text-lh-tight); }
.style-54671 div.content-wrap { font-size: var(--text-size-xl); }
.style-54619 .h2-style { color: inherit;font-size: var(--text-size-xl);margin-block-end: var(--space-xs); }
.style-54619 { --text-aux: var(--gray-dark);--text-secondary: var(--color-2);--text-link: var(--link-color);background-color: var(--block-gray);padding: var(--space-xl);border-radius: var(--radius-m);color: var(--text-default); }
.style-54631 .h2-style { color: inherit;font-size: var(--text-size-xl);margin-block-end: var(--space-xs); }
.style-54631 .h4-style { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-20);letter-spacing: var(--text-ls-default);text-transform: none;margin: 0;display: inline; }
.style-54631 .brief-description { display: inline; }
.style-54631 li.group { padding-inline-start: var(--space-m);position: relative; }
.style-54631 li.group:before { content: "";display: block;position: absolute;top: .5em;left: 0;height: max(.25rem, 4px);width: max(.25rem, 4px);background-color: var(--block-primary); }
.style-54632 .h2-style { color: inherit;font-size: var(--text-size-xl);margin-block-end: var(--space-xs); }
.style-54632 .h4-style { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-20);letter-spacing: var(--text-ls-default);text-transform: none;margin: 0; }
.style-54632 .h4-style:hover { --btn-icon-bg: var(--text-default); }
.style-54632 .h4-style A { display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: start;gap: var(--space-m);padding: var(--space-m) 0; }
.style-54632 .h4-style A:before { display: flex;align-items: center;justify-content: center;content: "add_circle";font-family: var(--icon-font);color: var(--btn-icon-bg);line-height: 1;align-self: start;box-sizing: border-box;aspect-ratio: 1;margin-block-start: .05ch;width: 1rem;height: 1rem;font-size: 1em;font-variation-settings: 'FILL' 1, 'wght' 700, 'GRAD' 200, 'opsz' 24;transition: color var(--time-250) var(--ease-1), transform var(--time-500) var(--ease-spring-3);transform: rotate(var(--_icon-rotate, 0));transform-origin: calc(50% - .5px) center; }
.style-54632 li.group { border-block-end: var(--border-size-1) solid var(--border-color); }
.style-54632 li.group:first-child { border-block-start: var(--border-size-1) solid var(--border-color); }
.style-54674 .h2-style { color: inherit;font-size: var(--text-size-xl);margin-block-end: var(--space-xs); }
.style-54674 .h4-style { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-20);letter-spacing: var(--text-ls-default);text-transform: none;margin: 0; }
.style-54674 .h4-style:hover { --btn-icon-bg: var(--text-default); }
.style-54674 A { padding: var(--space-m) 0;font-weight: var(--text-weight-bold);text-decoration: none;display: flex;gap: var(--space-s);color: var(--text-default);align-items: center; }
.style-54674 A:hover { color: var(--text-link);--_icon-color: var(--text-default); }
.style-54674 A:before { content: var(--_icon, "cloud_download");font-family: var(--icon-font);font-variation-settings: 'FILL' 1, 'wght' 800;color: var(--_icon-color, var(--link-color));font-size: var(--text-size-l);transition: inherit; }
.style-54674 { --btn-gap: 0; }
.style-54674 .h4-style A { display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: start;gap: var(--space-m);padding: var(--space-m) 0; }
.style-54674 .h4-style A:before { display: flex;align-items: center;justify-content: center;content: "add";font-family: var(--icon-font);color: var(--btn-icon-color);line-height: 1;align-self: center;aspect-ratio: 1;padding: .125em;font-size: .75em;font-weight: var(--text-weight-bold);background-color: var(--btn-icon-bg);border-radius: var(--radius-circle);transition: background var(--time-250) var(--ease-1), transform var(--time-500) var(--ease-spring-3);transform: rotate(var(--_icon-rotate, 0));margin-block-start: .1em; }
.style-54674 .long-description { margin-block-end: var(--space-m); }
.style-54674 A.links-urllink { --_icon: "link"; }
.style-54674 A.links-urllink:before { font-variation-settings: 'FILL' 1, 'wght' 500; }
.style-54674 li.group { border-block-end: var(--border-size-1) solid var(--border-color); }
.style-54674 li.group:first-child { border-block-start: var(--border-size-1) solid var(--border-color); }
.style-54643 .h1-style { color: light-dark(var(--text-invert), var(--text-default)); }
.style-54643 .h2-style { color: inherit;font-family: var(--text-ff-display);font-size: var(--text-size-xl);font-weight: var(--text-weight-normal);letter-spacing: var(--text-ls-wide);text-transform: uppercase;margin-block-end: var(--space-xs); }
.style-54643 .h5-style { color: light-dark(var(--text-invert), var(--text-default)); }
.style-54643 .button { color: inherit; }
.style-54643 .button:hover { color: var(--link-color); }
.style-54643 { color-scheme: dark only;color: var(--text-default);background-color: var(--block-primary);padding: var(--space-xl);border-radius: var(--radius-m);--link-color: var(--text-secondary);--text-link: var(--link-color);--rm-icon-color: var(--link-color);--text-label: var(--gray-lighter);--border-color: var(--gray); }
.style-54643 .date-icon { background: var(--bg-secondary);color: var(--text-invert); }
.style-54621 .h2-style { font-size: var(--text-size-l);margin-block-end: var(--space-xs);order: 1;padding: 0 var(--space-m); }
.style-54621 { position: relative;line-height: var(--text-lh-tight);color: var(--text-primary); }
.style-54621 div.content-wrap { order: 0;font-family: var(--text-ff-display);font-size: var(--text-size-xl);color: var(--text-aux);z-index: 1;padding: var(--space-s);position: relative; }
.style-54621 div.content-wrap:before { content: open-quote;font-size: 10rem;color: var(--border-color);position: absolute;inset: 0 auto auto -.05em;line-height: .7;height: var(--size-48);z-index: -1; }
.style-54621 div.content-wrap:after { content: close-quote;font-size: 10rem;color: var(--border-color);position: absolute;inset: auto 0 0 auto;line-height: .7;height: var(--size-48);z-index: -1; }
.style-54618 .photo figure { gap: var(--space-s); }
.style-54616 .h2-style { color: inherit;font-size: var(--text-size-xl);margin-block-end: var(--space-xs); }
.style-54625 A { display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: space-between;align-content: stretch;align-items: center;gap: var(--space-s);position: relative;text-decoration: none;color: var(--btn-color);background-color: var(--btn-bg);border: var(--btn-border);border-radius: var(--btn-radius);font-family: var(--btn-text);font-size: var(--btn-text-size);font-weight: var(--btn-text-weight);text-align: center;line-height: var(--btn-text-lh);letter-spacing: var(--btn-text-ls);text-transform: var(--btn-text-tt);padding: var(--btn-padding);padding-inline: var(--space-m);box-shadow: var(--btn-shadow);flex: 1 1 100%;margin: 0;transition: var(--btn-transition); }
.style-54625 A:hover { --btn-bg: var(--bg-default);--btn-border: var(--border-size-2) solid currentColor;--btn-color: var(--link-color);--btn-shadow: none;--btn-icon-bg: var(--link-color);--_icon-scale-value: -1; }
.style-54625 A:after { content: "arrow_right_alt";font-family: var(--icon-font);font-size: 1.25em;font-weight: var(--text-weight-normal);transform: scaleX(var(--_icon-scale-value, 1));transition: background var(--time-250) var(--ease-1), transform var(--time-700) var(--ease-elastic-in-out-3);text-indent: 5%; }
.style-54625 { --btn-direction: row;--btn-wrap: wrap;--btn-justify: center;--link-color: light-dark(var(--text-primary), var(--text-default)); }
.style-54625 li.group { container-type: normal; }
.style-54624 A { display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: space-between;align-content: stretch;align-items: center;gap: var(--space-s);position: relative;text-decoration: none;color: var(--btn-color);background-color: var(--btn-bg);border: var(--btn-border);border-radius: var(--btn-radius);font-family: var(--btn-text);font-size: var(--btn-text-size);font-weight: var(--btn-text-weight);text-align: center;line-height: var(--btn-text-lh);letter-spacing: var(--btn-text-ls);text-transform: var(--btn-text-tt);padding: var(--btn-padding);padding-inline: var(--space-m);box-shadow: var(--btn-shadow);flex: 1 1 100%;margin: 0;transition: var(--btn-transition); }
.style-54624 A:hover { --btn-bg: var(--bg-default);--btn-border: var(--border-size-2) solid currentColor;--btn-color: var(--link-color);--btn-shadow: none;--btn-icon-bg: var(--link-color);--_icon-scale-value: -1; }
.style-54624 A:after { content: "arrow_right_alt";font-family: var(--icon-font);font-size: 1.25em;font-weight: var(--text-weight-normal);transform: scaleX(var(--_icon-scale-value, 1));transition: background var(--time-250) var(--ease-1), transform var(--time-700) var(--ease-elastic-in-out-3);text-indent: 5%; }
.style-54624 { --btn-direction: row;--btn-wrap: wrap;--link-color: light-dark(var(--text-primary), var(--text-default)); }
.style-54624 li.group { container-type: normal; }
.style-54622 A { display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: center;align-content: stretch;align-items: center;gap: var(--space-s);position: relative;text-decoration: none;color: var(--btn-color);background-color: var(--btn-bg);border: var(--btn-border);border-radius: var(--btn-radius);font-family: var(--btn-text);font-size: var(--btn-text-size);font-weight: var(--btn-text-weight);text-align: center;line-height: var(--btn-text-lh);letter-spacing: var(--btn-text-ls);text-transform: var(--btn-text-tt);padding: var(--btn-padding);box-shadow: var(--btn-shadow);flex: 1 1 100%;margin: 0;transition: var(--btn-transition); }
.style-54622 A:hover { --btn-bg: var(--bg-default);--btn-border: var(--border-size-2) solid currentcolor;--btn-color: var(--link-color);--btn-shadow: var(--shadow-6);--_icon-scale-value: -1; }
.style-54622 A:after { content: "arrow_right_alt";font-family: var(--icon-font);font-size: 1.25em;font-weight: var(--text-weight-normal);transform: scaleX(var(--_icon-scale-value, 1));transition: background var(--time-250) var(--ease-1), transform var(--time-700) var(--ease-elastic-in-out-3);text-indent: 5%; }
.style-54622 { margin-block-end: var(--block-margin);--link-color: light-dark(var(--text-primary), var(--text-default)); }
.style-54623 A { display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: center;align-content: stretch;align-items: center;gap: var(--space-s);position: relative;text-decoration: none;background-color: var(--btn-bg);border: var(--btn-border);border-radius: var(--btn-radius);font-family: var(--btn-text);color: var(--link-color);font-size: var(--btn-text-size);font-weight: var(--btn-text-weight);text-align: center;line-height: var(--btn-text-lh);letter-spacing: var(--btn-text-ls);text-transform: var(--btn-text-tt);padding: var(--btn-padding);box-shadow: var(--btn-shadow);flex: 1 1 100%;margin: 0;transition: var(--btn-transition); }
.style-54623 A:hover { --btn-bg: var(--bg-default);--btn-border: var(--border-size-2) solid currentColor;--btn-shadow: var(--shadow-6);--_icon-scale-value: -1;--btn-color: light-dark(var(--link-color), var(--text-default)); }
.style-54623 A:after { content: "arrow_right_alt";font-family: var(--icon-font);font-size: 1.25em;font-weight: var(--text-weight-normal);transform: scaleX(var(--_icon-scale-value, 1));transition: background var(--time-250) var(--ease-1), transform var(--time-700) var(--ease-elastic-in-out-3);text-indent: 5%; }
.style-54623 { --btn-bg: var(--_btn-secondary, var(--block-secondary));--btn-border: var(--border-size-2) solid var(--btn-bg);--btn-color: var(--_btn-secondary-text, var(--link-color));--link-color: light-dark(var(--text-primary), var(--text-default)); }
.style-54669 { display: var(--_bc-display, block); }
.style-54639 .h1-style { color: inherit;font-size: clamp(var(--text-size-3xl), 4.5vw, var(--size-96)); }
.style-54639 { padding-inline: min(4rem, 3.33vw);text-align: center;grid-row: 2/-1;position: relative;text-shadow: var(--text-shadow-3); }
.style-54639 .pagetitle hgroup { font-size: var(--text-size-l); }
.style-54648 .h2-style { color: inherit;font-size: var(--text-size-l);margin-block-end: var(--space-s); }
.style-54648 A { text-decoration: none; }
.style-54648 { --block-margin-end: var(--space-l);--btn-gap: var(--space-m);--link-image-width: auto; }
.style-54648 .link-image { width: auto;max-width: var(--size-128);--space-m: 0; }
.style-54645 { font-size: var(--text-size-s); }
.style-54647 A { font-family: var(--rm-text);color: var(--text-link);font-weight: var(--rm-text-weight);text-transform: var(--rm-text-tt);letter-spacing: var(--rm-text-ls);line-height: var(--text-lh-tight);text-decoration: underline transparent;text-underline-offset: .3em;padding-block: var(--size-12); }
.style-54647 A:hover { color: color-mix(in srgb, var(--text-link) 60%, transparent);text-decoration: underline currentColor; }
.style-54647 { --btn-direction: row;--btn-gap: var(--space-xl);--btn-justify: end; }
.style-54647 A.links-urllink { display: block; }
.style-54647 li.group { container-type: unset; }
.style-54647 div.content-wrap { margin-block: calc(var(--size-12) * -1); }
.style-54649 { max-width: 20rem; }
.style-54646 .h2-style { font-size: var(--text-size-l);margin-block-end: var(--space-s); }
.style-54646 A { text-decoration: none;inline-size: var(--size-32);transition: opacity var(--time-250) var(--ease-1); }
.style-54646 A:hover { --btn-bg: var(--text-link);--btn-color: var(--link-color);--btn-shadow: none;--border-color: var(--bg-secondary);opacity: .5; }
.style-54646 { --btn-direction: row;--btn-justify: start;--btn-gap: var(--space-s);--text-link: var(--link-color);--margin-block-end: var(--space-l); }
.style-54646 .link-image { --space-m: 0;block-size: var(--text-size-m);aspect-ratio: 1;object-fit: contain; }
.style-54646 li.group { container-type: unset; }
.style-54651 { margin-block-end: 0; }
.style-54676 { container-type: unset;font-family: var(--nav-text);font-size: var(--nav-text-size);letter-spacing: var(--text-ls-extrawide);text-transform: var(--nav-text-tt);padding-inline: var(--space-m); }
.style-54676 .submit-button:hover { color: inherit; }
.style-54676 .search-text { text-align: end; }
.style-54676 div.content-wrap { gap: var(--space-m);justify-content: end; }
.style-54653 A { display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: center;align-content: stretch;align-items: center;gap: var(--space-s);position: relative;text-decoration: none;color: var(--btn-color);background-color: var(--btn-bg);background: linear-gradient(var(--btn-bg),var(--btn-bg)) padding-box,linear-gradient(to bottom, color-mix(in srgb, var(--link-color) 60%, #ffffff),var(--link-color)) border-box;border: var(--btn-border);border-radius: var(--btn-radius);font-family: var(--icon-font);font-size: var(--btn-text-size);font-weight: var(--btn-text-weight);text-align: center;line-height: 0;letter-spacing: var(--btn-text-ls);text-transform: var(--btn-text-tt);padding: var(--btn-padding);box-shadow: var(--btn-shadow);flex: 1 1 100%;margin: 0;width: 0;box-sizing: border-box;transition: var(--btn-transition);text-indent: .125em; }
.style-54653 A:hover { --btn-bg: var(--block-primary);--btn-color: var(--text-secondary);--btn-shadow: none; }
.style-54653 { container-type: unset;--btn-text-size: var(--text-size-m);--btn-radius: var(--radius-circle);--link-color: var(--block-secondary);--btn-bg: var(--block-secondary);margin: 0;--btn-padding: calc(var(--size-18) - var(--border-size-1)); }
.style-54653 li.group { container-type: unset; }
.style-54670 .h2-style { scroll-margin-block-start: var(--space-xxl); }
.style-54670 .h4-style { grid-area: title;font-family: var(--text-ff-body);font-size: var(--text-size-m);font-weight: var(--text-weight-bold);letter-spacing: var(--text-ls-extrawide);text-transform: uppercase;margin-block: 0 var(--space-s);scroll-margin-block-start: var(--space-xxl); }
.style-54670 .h5-style { color: inherit; }
.style-54670 .long-description { grid-area: long; }
.style-54670 .brief-description { grid-area: short;padding-block-end: var(--space-l); }
.style-54626 .h2-style { font-family: var(--text-ff-body);font-size: var(--text-size-s);font-style: normal;text-transform: uppercase;font-weight: var(--text-weight-bold);letter-spacing: var(--text-ls-wide); }
.style-54626 { font-size: var(--text-size-xs);font-style: italic;border-top: var(--border-size-1) solid var(--border-color);padding-top: var(--space-s); }
.style-54630 .h4-style { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);letter-spacing: var(--text-ls-default);text-transform: none; }
.style-54630 { --_card-style: true;--_card-num: 3;--_min-width: 14.5rem;--_gap-width: var(--gutter-width);text-align: center; }
.style-54630 .long-description { color: light-dark(var(--gray-dark), #ffffff); }
.style-54630 .brief-description { color: light-dark(var(--gray-dark), #ffffff); }
.style-54630 A.links-urllink { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);text-decoration: none;letter-spacing: var(--text-ls-default);text-transform: none;line-height: 1;font-size: var(--text-size-l);margin-block: 0 var(--space-s); }
.style-54630 li.group { text-align: left;background: var(--block-gray);align-content: start; }
.style-54629 .h4-style { grid-column: 2 / span 1;grid-row: 2/span 1;letter-spacing: var(--text-ls-default);text-transform: none;margin: 0;z-index: 2; }
.style-54629 A { grid-row: 1 / -1;grid-column: 1 / -1; }
.style-54629 .button { grid-row: 1 / -1;grid-column: 1 / -1;margin: 0;display: block; }
.style-54629 { text-align: center;container-name: flexBlock;--text-link: var(--text-default); }
.style-54629 time { grid-column: 2 / span 1;grid-row: 3 / span 1; }
.style-54629 .readmore { z-index: 1;opacity: 0; }
.style-54629 .category-description:hover { transition: opacity 0.25s, display 0.25s;transition-behavior: allow-discrete; }
.style-54629 .link-image { --space-m: 0;opacity: var(--_img-opacity, 1);transform: scale(var(--_img-scale, 1));transition: opacity var(--time-500) var(--ease-1),
transform var(--time-500) var(--ease-1); }
.style-54629 .h4-style A { color: inherit; }
.style-54629 .h4-style A:after { content: "";position: absolute;inset: 0;width: unset;margin: 0; }
.style-54629 .long-description { grid-row: -3/span 1;grid-column: 2/ span 1;overflow: hidden;position: relative;margin: 0; }
.style-54629 .brief-description { grid-row: 5/span 1;grid-column: 2/ span 1;position: relative;margin: 0;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden; }
.style-54629 .author { grid-column: 2 / span 1;grid-row: 4 / span 1; }
.style-54629 .news img { grid-row: 1 / -1;grid-column: 1 / -1;max-width: unset;--space-m: 0;opacity: var(--_img-opacity, 1);transform: scale(var(--_img-scale, 1));transition: opacity var(--time-500) var(--ease-1),
transform var(--time-500) var(--ease-1); }
.style-54629 .lists img { grid-row: 1 / -1;grid-column: 1 / -1;max-width: unset;--space-m: 0; }
.style-54629 A.links-urllink { grid-column: 2 / span 1;grid-row: -6/span 1;font-family: var(--text-ff-display);font-weight: var(--text-weight-normal);font-size: var(--text-size-l);letter-spacing: var(--text-ls-default);line-height: var(--text-lh-tight);position: relative;color: inherit;text-decoration: none;z-index: 1; }
.style-54629 li.group { position: relative;display: grid;gap: 0 var(--space-s);grid-template: var(--space-l) 1fr auto auto auto auto var(--space-l) / var(--space-l) 1fr var(--space-l);align-items: end;transition: box-shadow 2s var(--ease-spring-4);box-shadow: var(--btn-shadow);text-align: left;background-color: var(--bg-primary);overflow: clip;color-scheme: dark only;color: var(--text-default); }
.style-54629 li.group:hover { --_desc-height: 1.2;--_desc-display: flex;--_desc-opacity: 1;--_desc-transition: opacity var(--time-500) var(--ease-1) var(--time-500), line-height var(--time-500) var(--ease-elastic-in-out-5);--btn-bg: var(--bg-default);--btn-color: var(--link-color);--btn-shadow: var(--shadow-6);--btn-icon-bg: var(--link-color);--_img-opacity: .2;--_img-scale: 1.1;--_blur: var(--space-xs); }
.style-54629 li.group:after { content: "";position: absolute;inset: 0;height: 100%;width: 100%;background: linear-gradient(to top, rgba(0,0,0,.7) 0%, transparent min(15rem, 80%));pointer-events: none;backdrop-filter: blur(var(--_blur, 0));transition: backdrop-filter var(--time-500) var(--ease-1); }
.style-54684 .h4-style { letter-spacing: var(--text-ls-default);font-size: var(--text-size-xl);text-transform: none;margin: 0; }
.style-54684 { --_card-style: true;--_card-num: 3;--_min-width: 14.5rem;--_gap-width: var(--gutter-width);text-align: center; }
.style-54684 .long-description { color: light-dark(var(--gray-dark), #ffffff); }
.style-54684 .brief-description { color: light-dark(var(--gray-dark), #ffffff);text-transform: uppercase;letter-spacing: var(--text-ls-default); }
.style-54684 .lists img { aspect-ratio: 1;object-fit: contain;max-width: var(--size-96);border-radius: var(--radius-round);background: var(--block-primary);box-sizing: border-box; }
.style-54673 .h2-style { font-family: var(--text-ff-body);font-size: var(--text-size-m);font-weight: var(--text-weight-bold);letter-spacing: var(--text-ls-wide);text-transform: uppercase;margin-block-end: 0;background-color: var(--block-primary);color: var(--text-invert);padding: var(--space-m);border-radius: var(--radius-s) var(--radius-s) 0 0; }
.style-54673 { --cnt-text-align: start; }
.style-54673 .department-label { display: block;text-align: center;text-transform: uppercase;letter-spacing: var(--text-ls-wide);margin-block-end: var(--space-l); }
.style-54673 .grade-label { display: block;text-align: center;text-transform: uppercase;letter-spacing: var(--text-ls-wide);margin-block-end: var(--space-l); }
.style-54673 .letter-label { display: block;text-align: center;text-transform: uppercase;letter-spacing: var(--text-ls-wide);margin-block-end: var(--space-l); }
.style-54673 .letter-selector { display: block;margin: 0 auto; }
.style-54673 .team-label { display: block;text-align: center;text-transform: uppercase;letter-spacing: var(--text-ls-wide);margin-block-end: var(--space-l); }
.style-54673 .season-label { display: block;text-align: center;text-transform: uppercase;letter-spacing: var(--text-ls-wide);margin-block-end: var(--space-l); }
.style-54673 .school-level-label { display: block;text-align: center;text-transform: uppercase;letter-spacing: var(--text-ls-wide);margin-block-end: var(--space-l); }
.style-54675 .sub2 .acc-l2-item > a { font-family: var(--nav-text);font-size: var(--nav-text-size);font-weight: var(--nav-text-weight);text-transform: var(--nav-text-tt);letter-spacing: var(--nav-text-ls);line-height: var(--text-lh-tight); }
.style-54675 .acc-level2 { --nav-text-weight: var(--text-weight-normal);border-block: var(--border-size-1) solid var(--border-color); }
.style-54675 .acc-level3 { border-block: var(--border-size-1) solid var(--border-color); }
.style-54637 .l1-item:hover { color: var(--text-link); }
.style-54637 .l2-item:first-child { --_item-border: none; }
.style-54637 .l3-item:first-child { --_item-border: none; }
.style-54637 .level1 { justify-content: center; }
.style-54637 .level1:before { display: none; }
.style-54637 .level1:after { display: none; }
.style-54637 .level2 { --nav-text-weight: var(--text-weight-normal); }
.style-54678 .l1-item { grid-column: 1 / span 1;position: unset;transition: opacity var(--time-500) var(--ease-1); }
.style-54678 .l1-item > a { grid-template-columns: auto auto;justify-content: start;gap: var(--space-xs);padding-inline-end: var(--space-m) !important; }
.style-54678 .l1-item > a .arrow { --nav-text-size: var(--size-32); }
.style-54678 .l2-item > a { box-sizing: border-box;--nav-text-size: 2rem; }
.style-54678 .l3-item > a { box-sizing: border-box;--nav-text-size: 2rem; }
.style-54678 .level1 { --nav-text: var(--text-ff-display);--nav-text-tt: none;--nav-text-size: var(--text-size-xxl);--nav-text-ls: var(--text-ls-default);--nav-padding: var(--size-12) 0;--nav-box-padding: 0 0 0 var(--space-xxl);--nav-box-bg: transparent;--nav-box-shadow: none;--nav-box-border: inherit;display: grid;grid-template-columns: 1fr 1fr; }
.style-54678 .level2 { --nav-text-size: 1rem;left: 0% !important;right: 100% !important;grid-column: 2 / -1;box-sizing: border-box;bottom: 0;border-inline-start: var(--border-size-1) solid var(--border-color);padding-inline-start: var(--space-xxl); }
.style-54679 .nav-menu { padding-block-start: var(--space-l);--nav-text-size: var(--text-size-m);max-width: 50%; }
.style-54679 .l1-item { transition: opacity var(--time-250) var(--ease-1); }
.style-54679 .level1 { padding-block-start: var(--space-l);border-block-start: var(--border-size-1) solid var(--border-color); }
.style-54654 .nav-menu { --nav-padding: var(--space-m) 1.5vw;--nav-radius: var(--btn-radius);--nav-color: var(--text-invert);--nav-color-hover: var(--nav-color);--nav-text-weight: var(--text-weight-medium);--nav-icon: "lock";--nav-icon-gap: var(--space-m);--nav-text-ls: var(--text-ls-extrawide);color-scheme: light only;font-variation-settings: 'FILL' 1; }
.style-54654 .l1-item:hover { --_login-icon-anim: login-icon-backward;--nav-bg: var(--btn-bg); }
.style-54654 .l1-item > a { grid-template-columns: auto auto;justify-content: center; }
.style-54654 .l1-item > a:after { content: var(--nav-icon);letter-spacing: 0;color: inherit;font-family: var(--icon-font);font-size: var(--nav-icon-size);font-weight: var(--text-weight-normal);background: var(--nav-icon-bg);border-radius: var(--nav-icon-radius);line-height: 1;align-content: center;height: 1em;animation: var(--_login-icon-anim, login-icon-forward) var(--time-700) var(--ease-elastic-in-out-3) forwards; }
.style-54654 .level1 { flex-direction: column; }
.style-54654 .level2 { display: none !important; }
.style-54677 .mega-menu-panel { background: var(--bg-primary);inset: 0 !important;height: 100dvh;z-index: -1;--border-color: var(--gray-light); }
.style-54677 .mega-menu-panel-inner { padding-block: var(--size-96) var(--space-xxl);padding-inline: var(--space-xxl);box-sizing: border-box;height: 100%;--text-link: var(--text-default);--text-secondary: var(--text-default);--btn-bg: var(--gray-darker);--link-color: var(--bg-primary);--btn-shadow: none;padding-block-start: var(--space-xxl);color: var(--text-default);color-scheme: dark only; }
.style-54677 .mega-menu-item.l1-item { display: grid;grid-template-columns: 1fr var(--size-24);grid-template-rows: 1fr;gap: var(--space-m); }
.style-54677 .mega-menu-item.l1-item:hover { --_micon-end-transform: scaleX(.8); }
.style-54677 .mega-menu-item.l1-item:before { content: "";background: currentColor;grid-column: 2 / -1;grid-row: 1 / -1;height: var(--border-size-2);align-self: start;margin-block-start: var(--size-18);transition: transform var(--time-700) var(--ease-elastic-in-out-1), margin var(--time-200) var(--ease-1);transform-origin: left; }
.style-54677 .mega-menu-item.l1-item:after { content: "";background: currentColor;grid-column: 2 / -1;grid-row: 1 / -1;height: var(--border-size-2);align-self: end;margin-block-end: var(--size-18);transition: transform var(--time-700) var(--ease-elastic-in-out-1), margin var(--time-200) var(--ease-1);transform-origin: left;transform: var(--_micon-end-transform); }
.style-54677 .mega-menu-item.l1-item > a { display: grid;grid-template-rows: subgrid;grid-template-columns: subgrid;grid-row: 1 / -1;grid-column: 1 / -1; }
.style-54677 .mega-menu-item.l1-item > a:after { content: "";background: currentColor;grid-column: 2 / -1;grid-row: 2 / span 1;height: var(--border-size-2);align-self: center;transition: transform var(--time-700) var(--ease-elastic-in-out-1), opacity var(--time-250) var(--ease-1);transform-origin: left; }
.style-54677 .menu-type-mega.nav-menu { z-index: 99; }
.style-54677 .mega-level1 { --nav-padding: var(--space-m) 0;--nav-color-hover: var(--nav-color);--nav-text-weight: var(--text-weight-medium);--nav-icon: "";--nav-icon-gap: var(--space-m);--nav-text-ls: var(--text-ls-extrawide);position: unset; }
.style-54655 .nav-menu { --block-margin-end: 0;--nav-icon-color: currentColor;--nav-text-size: var(--text-size-l);--nav-text-tt: none;--nav-text-ls: 0;--nav-gap: var(--space-xxl);--nav-box-padding: var(--space-m) var(--space-xl); }
.style-54655 .l1-item { color: var(--text-default);text-decoration-color: transparent; }
.style-54655 .l1-item:hover { text-decoration-color: var(--text-link); }
.style-54655 .l1-item:after { display: none; }
.style-54655 .l1-item > a { font-family: var(--nav-text);color: var(--nav-color);font-size: var(--nav-text-size);font-weight: var(--nav-text-weight);text-transform: var(--nav-text-tt);letter-spacing: var(--nav-text-ls);line-height: var(--text-lh-tight);padding: var(--nav-padding) !important;display: inline-flex;flex-direction: row;flex-wrap: nowrap;align-items: start;cursor: pointer;gap: var(--nav-icon-gap);text-decoration: underline;text-underline-offset: 5px;text-decoration-thickness: var(--border-size-2);text-decoration-color: inherit; }
.style-54655 .l1-item.active { text-decoration-color: var(--text-link); }
.style-54655 .l2-item { --_item-border: var(--border-size-1) solid var(--border-color);position: relative; }
.style-54655 .l2-item:hover { color: var(--text-link); }
.style-54655 .l2-item > a { font-family: var(--nav-text);color: var(--nav-color);font-size: var(--nav-text-size);font-weight: var(--nav-text-weight);text-transform: var(--nav-text-tt);letter-spacing: var(--nav-text-ls);line-height: var(--text-lh-tight);padding: var(--nav-padding) !important;display: inline-flex;flex-direction: row;flex-wrap: nowrap;align-items: start;cursor: pointer;gap: var(--nav-icon-gap);text-decoration: none;border-top: var(--_item-border);max-width: 13rem; }
.style-54655 .l2-item > a:after { content: var(--nav-icon);font-family: var(--icon-font);color: var(--nav-icon-color);font-size: 1.25em;width: .5em;display: var(--nav-icon-display);justify-content: center;gap: var(--space-xs);transition: inherit;align-items: start;line-height: .875; }
.style-54655 .l2-item.active { color: var(--text-link); }
.style-54655 .l3-item:hover { color: var(--link-color); }
.style-54655 .l3-item:first-child { --_item-border: none; }
.style-54655 .l3-item > a { font-family: var(--nav-text);color: var(--nav-color);font-size: var(--nav-text-size);font-weight: var(--nav-text-weight);text-transform: var(--nav-text-tt);letter-spacing: var(--nav-text-ls);line-height: var(--text-lh-tight);padding: var(--nav-padding) !important;display: inline-flex;flex-direction: row;flex-wrap: nowrap;align-items: start;cursor: pointer;gap: var(--nav-icon-gap);text-decoration: none;border-top: var(--_item-border); }
.style-54655 .l3-item > a:after { content: "expand_more";font-family: var(--icon-font);color: var(--nav-icon-color);font-size: 1.25em;width: .5em;display: var(--nav-icon-display);justify-content: center;gap: var(--space-xs);transition: inherit;align-items: start;line-height: .875; }
.style-54655 .l3-item.active { --ind-color: var(--color-2);color: var(--link-color); }
.style-54655 .level1 { display: flex;flex-direction: row;flex-wrap: wrap;gap: calc(var(--nav-gap) / 2) var(--nav-gap);justify-content: end; }
.style-54655 .level1:before { display: none; }
.style-54655 .level1:after { display: none; }
.style-54655 .level2 { color-scheme: only-light;inset-block-start: 100%;color: var(--text-default);background-color: var(--nav-box-bg);padding: var(--nav-box-padding);border-radius: var(--nav-box-radius);border: var(--nav-box-border);box-shadow: var(--nav-box-shadow);--text-default: var(--gray-darker);--text-link: var(--link-color);--nav-icon: "chevron_right";--nav-text-size: var(--text-size-normal);--nav-text-tt: none;--nav-text-ls: 0;--nav-padding: var(--space-m) 0;width: max-content; }
.style-54655 .level3 { color: var(--text-default);background-color: var(--nav-box-bg);padding: var(--nav-box-padding);border-radius: var(--nav-box-radius);border: var(--nav-box-border);box-shadow: var(--nav-box-shadow);--nav-icon: "chevron_right";--nav-text-tt: none;--nav-text-ls: 0;--nav-padding: var(--space-m) 0; }
.style-54652 .nav-menu { --block-margin-end: 0;--nav-icon-color: currentColor; }
.style-54652 .l1-item { color: var(--text-default);text-decoration-color: transparent; }
.style-54652 .l1-item:hover { text-decoration-color: var(--text-link); }
.style-54652 .l1-item:after { display: none; }
.style-54652 .l1-item > a { font-family: var(--nav-text);color: var(--nav-color);font-size: var(--nav-text-size);font-weight: var(--nav-text-weight);text-transform: var(--nav-text-tt);letter-spacing: var(--nav-text-ls);line-height: var(--text-lh-tight);padding: var(--nav-padding) !important;display: inline-flex;flex-direction: row;flex-wrap: nowrap;align-items: start;cursor: pointer;gap: var(--nav-icon-gap);text-decoration: underline;text-underline-offset: 5px;text-decoration-thickness: var(--border-size-2);text-decoration-color: inherit; }
.style-54652 .l1-item > a:after { content: var(--nav-icon);font-family: var(--icon-font);color: var(--nav-icon-color);font-size: 1.25em;width: .5em;display: var(--nav-icon-display);justify-content: center;gap: var(--space-xs);transition: inherit;align-items: start;line-height: .875;text-decoration: none;text-decoration-color: transparent;overflow-y: clip; }
.style-54652 .l1-item.active { text-decoration-color: var(--text-link); }
.style-54652 .l2-item { --_item-border: var(--border-size-1) solid var(--border-color); }
.style-54652 .l2-item:hover { color: var(--text-link); }
.style-54652 .l2-item:first-child { --_item-border: none; }
.style-54652 .l2-item > a { font-family: var(--nav-text);color: var(--nav-color);font-size: var(--nav-text-size);font-weight: var(--nav-text-weight);text-transform: var(--nav-text-tt);letter-spacing: var(--nav-text-ls);line-height: var(--text-lh-tight);padding: var(--nav-padding) !important;display: inline-flex;flex-direction: row;flex-wrap: nowrap;align-items: start;cursor: pointer;gap: var(--nav-icon-gap);text-decoration: none;border-top: var(--_item-border); }
.style-54652 .l2-item > a:after { content: var(--nav-icon);font-family: var(--icon-font);color: var(--nav-icon-color);font-size: 1.25em;width: .5em;display: var(--nav-icon-display);justify-content: center;gap: var(--space-xs);transition: inherit;align-items: start;line-height: .875; }
.style-54652 .l2-item.active { color: var(--text-link); }
.style-54652 .l3-item:hover { color: var(--link-color); }
.style-54652 .l3-item:first-child { --_item-border: none; }
.style-54652 .l3-item > a { font-family: var(--nav-text);color: var(--nav-color);font-size: var(--nav-text-size);font-weight: var(--nav-text-weight);text-transform: var(--nav-text-tt);letter-spacing: var(--nav-text-ls);line-height: var(--text-lh-tight);padding: var(--nav-padding) !important;display: inline-flex;flex-direction: row;flex-wrap: nowrap;align-items: start;cursor: pointer;gap: var(--nav-icon-gap);text-decoration: none;border-top: var(--_item-border); }
.style-54652 .l3-item > a:after { content: "expand_more";font-family: var(--icon-font);color: var(--nav-icon-color);font-size: 1.25em;width: .5em;display: var(--nav-icon-display);justify-content: center;gap: var(--space-xs);transition: inherit;align-items: start;line-height: .875; }
.style-54652 .l3-item.active { --ind-color: var(--color-2);color: var(--link-color); }
.style-54652 .level1 { display: flex;flex-direction: row;flex-wrap: wrap;gap: calc(var(--nav-gap) / 2) var(--nav-gap);justify-content: end; }
.style-54652 .level1:before { display: none; }
.style-54652 .level1:after { display: none; }
.style-54652 .level2 { color-scheme: only-light;inset-block-start: 100%;color: var(--text-default);background-color: var(--nav-box-bg);padding: var(--nav-box-padding);border-radius: var(--nav-box-radius);border: var(--nav-box-border);box-shadow: var(--nav-box-shadow);--text-default: var(--gray-darker);--text-link: var(--link-color);--nav-icon: "chevron_right";--nav-text-tt: none;--nav-text-ls: 0;--nav-padding: var(--space-m) 0; }
.style-54652 .level3 { color: var(--text-default);background-color: var(--nav-box-bg);padding: var(--nav-box-padding);border-radius: var(--nav-box-radius);border: var(--nav-box-border);box-shadow: var(--nav-box-shadow);--nav-icon: "chevron_right";--nav-text-tt: none;--nav-text-ls: 0;--nav-padding: var(--space-m) 0; }
.style-54664 .h2-style { text-align: center; }
.style-54664 .carousel figure { color-scheme: dark only;overflow: clip; }
.style-54664 .carousel figure:hover { --_icon-opacity: 1;--_icon-position: 0;--_blur: blur(var(--size-8)); }
.style-54664 .carousel figure:before { content: "";position: absolute;inset: 0;height: 100%;background: linear-gradient(to top, rgba(0, 0, 0, .7) 0%, transparent min(15rem, 80%));pointer-events: none;grid-row: 1/-1;align-self: end;backdrop-filter: var(--_blur, none);transition: backdrop-filter var(--time-250) var(--ease-1); }
.style-54664 .carousel figure:after { color-scheme: light only;display: flex;position: absolute;place-content: center;place-items: center;content: "north" !important;font-family: var(--icon-font);color: var(--btn-color);background-color: var(--btn-bg);background: linear-gradient(var(--btn-bg), var(--btn-bg)) padding-box, linear-gradient(to bottom, color-mix(in srgb, var(--link-color) 60%, #ffffff), var(--link-color)) border-box;border: var(--btn-border);border-radius: var(--radius-circle);box-shadow: var(--btn-shadow);line-height: 1;height: 1.75em;font-size: var(--text-size-default);aspect-ratio: 1;font-weight: var(--text-weight-bold);transition: var(--btn-transition);z-index: 1;pointer-events: none;margin-block-end: var(--space-m);margin-inline-start: var(--space-l);inset: auto auto 0 0;transform: translateY(var(--_icon-position, 200%));opacity: var(--_icon-opacity, 0); }
.style-54664 .carousel figure img { height: 100%;object-fit: cover; }
.style-54664 .carousel .h4-style.crl-title { margin: 0;font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--text-size-l);letter-spacing: var(--text-ls-default);text-transform: none;padding: var(--space-m) 0 0;color: var(--text-invert);text-decoration: none; }
.style-54664 .carousel.flex-horizontal .flex-direction-nav .flex-prev { margin: 0;position: relative;inset: 0; }
.style-54664 .carousel.flex-horizontal .flex-direction-nav .flex-next { margin: 0;position: relative;inset: 0; }
.style-54664 .carousel .caption-spacing.crl-inner-details { position: relative;margin: 0;padding: var(--space-l);align-items: end; }
.style-54664 .carousel .caption-spacing.crl-inner-details:hover { --_rm-padding: var(--size-48); }
.style-54664 .carousel .crl-readmore { padding-block-end: var(--_rm-padding, var(--space-xs));transition: padding var(--time-700) var(--ease-elastic-in-out-3);color: inherit; }
.style-54664 .carousel .crl-readmore:before { position: absolute;inset: 0;content: "";width: auto;margin: 0; }
.style-54663 .h4-style { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-56);letter-spacing: var(--text-ls-default);text-transform: none;margin-block: 0 var(--space-xs); }
.style-54663 .link-image { margin-block-end: var(--space-m); }
.style-54663 .brief-description { font-size: var(--text-size-xs);font-weight: var(--text-weight-bold);text-transform: uppercase;letter-spacing: var(--text-ls-wide);line-height: var(--text-lh-tight); }
.style-54663 .lists img { height: var(--size-56);width: auto;object-fit: contain; }
.style-54663 .carousel.flex-horizontal .flex-direction-nav .flex-prev { margin: 0;position: relative;inset: 0; }
.style-54663 .carousel.flex-horizontal .flex-direction-nav .flex-next { margin: 0;position: relative;inset: 0; }
.style-54663 A.links-urllink { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-20);letter-spacing: var(--text-ls-default);text-transform: none;text-decoration: none; }
.style-54663 .carousel .text-slide { text-align: center; }
.style-54628 .h2-style { text-align: center; }
.style-54628 .carousel figure:before { content: "";position: absolute;inset: 0;height: 100%;background: linear-gradient(to top, rgba(0, 0, 0, .7) 0%, transparent 80%);pointer-events: none;grid-row: 1/span 2;max-height: 15rem;align-self: end; }
.style-54628 .carousel .h4-style.crl-title { margin: 0;font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--text-size-l);letter-spacing: var(--text-ls-default);text-transform: none;padding: var(--space-m);color: var(--text-invert);text-decoration: none; }
.style-54628 .carousel.flex-horizontal .flex-direction-nav .flex-prev { margin: 0;position: relative;inset: 0; }
.style-54628 .carousel.flex-horizontal .flex-direction-nav .flex-next { margin: 0;position: relative;inset: 0; }
.style-54628 .carousel .caption-spacing.crl-inner-details { position: relative; }
.style-54656 .h2-style { text-align: center; }
.style-54656 .h4-style { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-20);letter-spacing: var(--text-ls-default);text-transform: none; }
.style-54656 .link-image { margin-block-end: var(--space-m); }
.style-54656 .carousel.flex-horizontal .flex-direction-nav .flex-prev { margin: 0;position: relative;inset: 0; }
.style-54656 .carousel.flex-horizontal .flex-direction-nav .flex-next { margin: 0;position: relative;inset: 0; }
.style-54656 A.links-urllink { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-20);letter-spacing: var(--text-ls-default);text-transform: none;text-decoration: none; }
.style-54627 .carousel figure:before { content: "";position: absolute;inset: 0;height: 100%;background: linear-gradient(to top, rgba(0, 0, 0, .7) 0%, transparent 80%);pointer-events: none;grid-row: 1/span 2;max-height: 15rem;align-self: end;z-index: 1; }
.style-54627 .carousel .h4-style.crl-title { margin: 0;font-family: var(--text-ff-display);font-weight: var(--text-weight-normal);font-size: var(--text-size-l);letter-spacing: var(--text-ls-default);text-transform: none;padding: var(--space-m);color: var(--text-default);text-decoration: none;color-scheme: dark only; }
.style-54627 .carousel .crl-image-count { color: var(--text-default); }
.style-54627 .carousel .crl-counter-separator { background: var(--link-color);font-size: 0;height: var(--border-size-2);width: var(--size-48); }
.style-54627 .carousel.flex-horizontal .flex-direction-nav .flex-prev { margin: 0;position: relative;inset: 0; }
.style-54627 .carousel.flex-horizontal .flex-direction-nav .flex-next { margin: 0;position: relative;inset: 0; }
.style-54627 .carousel .caption-spacing.crl-inner-details { position: relative;z-index: 1; }
.style-54657 .h4-style { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-20);letter-spacing: var(--text-ls-default);text-transform: none; }
.style-54657 .carousel.flex-horizontal .flex-direction-nav .flex-prev { margin: 0;position: relative;inset: 0; }
.style-54657 .carousel.flex-horizontal .flex-direction-nav .flex-next { margin: 0;position: relative;inset: 0; }
.style-54657 A.links-urllink { font-family: var(--text-ff-display);font-weight: var(--text-weight-semibold);font-size: var(--size-20);letter-spacing: var(--text-ls-default);text-transform: none;text-decoration: none; }
.style-54657 .carousel .text-slide { padding: var(--space-xl) !important;border-radius: var(--radius-m);background-color: var(--block-gray); }
.style-54640 { position: relative;background: var(--gray-darker);--text-hover: light-dark(var(--text-invert), var(--text-default));--text-link: rgb(from var(--text-hover) r g b / .5); }
.style-54640 .carousel.flexslider { padding: 0; }
.style-54640 .carousel figure { grid-template-rows: 1fr;align-content: center; }
.style-54640 .carousel figure img { height: 100%;width: 100%;object-fit: cover;z-index: -1;opacity: .7; }
.style-54640 .carousel .h4-style.crl-title { font-size: clamp(var(--text-size-3xl), 4.5vw, var(--size-96));align-self: end;margin: 0; }
.style-54640 .carousel .crl-caption { height: fit-content;align-self: start;margin: 0;font-size: var(--text-size-l); }
.style-54640 .carousel .caption-spacing.crl-inner-details { align-items: center;text-align: center;grid-template-rows: auto auto;box-sizing: border-box;text-shadow: var(--text-shadow-3); }
.style-54661 { position: relative;margin-block-end: var(--block-margin-end);flex-direction: column; }
.style-54661:before { position: absolute;inset: var(--size-96) calc(-50vw + 50cqw) 0;display: block;background-color: var(--block-primary-lighter);width: clamp(110cqw, 100vw - (var(--size-96) *2), 110rem);margin: 0 auto; }
.style-54668 { position: relative;color-scheme: dark only;color: var(--text-default);background: var(--bg-secondary);padding: var(--size-128) var(--space-l) var(--size-80);width: 100vw;align-self: center;justify-content: center;box-sizing: border-box; }
.style-54668:before { position: absolute;inset: 0 calc(-50vw + 50cqw);display: block;background-color: var(--bg-secondary);margin: 0 auto; }
.style-54658 { position: relative;color: var(--text-default)
color-scheme: dark only;grid-row: 1 / span 2;overflow: clip; }
.style-54636 { padding-block: var(--space-l);background-color: var(--block-gray); }
.style-54638 { position: relative;color: var(--text-default);--border-color: var(--color-2);--block-margin-end: 0;background-color: var(--bg-primary);grid-row: 1 / span 2;color-scheme: dark only; }
.style-54634 { padding-block: var(--size-64) var(--size-80);background-color: var(--bg-default);color: var(--text-default); }
.style-54635 { background-color: var(--gray-darker);color-scheme: light; }
.style-54644 { --text-link: var(--text-default);--text-secondary: var(--text-default);--btn-bg: var(--gray-darker);--link-color: var(--bg-primary);--btn-shadow: none;padding-block-start: var(--space-xxl);background-color: var(--bg-primary);color: var(--text-default);--border-color: rgb(from var(--gray-light) r g b / .5);color-scheme: dark only; }
.style-54650 { grid-row-start: 1;z-index: 83;color-scheme: dark only; }
.style-54672 { border-block-start: var(--border-size-1) solid rgb(from var(--border-color) r g b / 50%);padding-block-start: var(--space-l); }
.style-54680 { position: relative;padding-block: 4.5rem 1.5rem;z-index: 1;color-scheme: dark;color: var(--text-default);--_btn-secondary: color-mix(in srgb, var(--gray-darker) 80%, black);--_btn-secondary-text: var(--text-default)); }
.style-54680:before { position: absolute;display: block;content: "";inset: 0 -50vw;background: var(--gray-darker);z-index: -1; }
.style-54633 { position: relative;padding-block: 4.5rem 1.5rem;z-index: 1;--block-gray: #ffffff;--border-color: var(--gray); }
.style-54633:before { position: absolute;display: block;content: "";inset: 0 -50vw;background: var(--bg-gray-light);z-index: -1;--block-gray: #ffffff; }
.style-54681 { position: relative;padding-block: 4.5rem 1.5rem;z-index: 1;color-scheme: dark;color: var(--text-default);--border-color: rgb(from var(--gray-light) r g b / .5);--block-gray: var(--bg-gray);--block-primary: var(--block-primary-light);--btn-bg: var(--block-primary);--bg-default: var(--bg-primary); }
.style-54681:before { position: absolute;display: block;content: "";inset: 0 -50vw;background: var(--bg-primary);z-index: -1; }
.style-54683 { align-items: end; }
.style-54682 { align-items: center; }
.style-54613 .mm-container { background: transparent; }
.style-54613 .mm-button-container { --rm-icon-color: var(--text-default);--btn-padding: var(--space-s);color: var(--bg-default);background: transparent;--_mm-nav-bg-h: var(--bg-primary); }
.style-54613 .mm-button { color: currentColor; }
.style-54613 .mm-button:hover { color: inherit; }
.style-54613 .mm-button:before { font-size: var(--nav-size); }
.style-54613 .mm-button:after { font-size: 1.5em;color: currentColor;transform: none;line-height: 0;--rm-icon: var(--mm-icon); }
.style-54613 .mm-button .icon { display: none; }
.style-54613 .mm-login-button { display: grid;grid-template-columns: auto auto;align-content: stretch;align-items: center;gap: var(--nav-icon-gap);justify-content: center;background: var(--nav-bg);color: inherit;font-family: var(--nav-text);font-size: var(--nav-text-size);font-weight: var(--nav-text-weight);text-decoration: none;text-transform: var(--nav-text-tt);letter-spacing: var(--nav-text-ls)
.2em;line-height: var(--text-lh-tight);padding: var(--nav-padding) /*!important*/;border-radius: var(--nav-radius);border: var(--nav-border);box-shadow: var(--nav-shadow); }
.style-54613 .mm-login-button:hover { --btn-bg: var(--bg-default);--btn-color: var(--link-color);--btn-shadow: none;--btn-icon-bg: var(--link-color);--icon-font: var(--icon-font-filled); }
.style-54613 .mm-login-button:before { display: none; }
.style-54613 .mm-login-button:after { content: var(--nav-icon);letter-spacing: 0;color: inherit;font-family: var(--icon-font);font-size: var(--nav-icon-size);font-weight: var(--text-weight-normal);background: var(--nav-icon-bg);border-radius: var(--nav-icon-radius);line-height: 1;align-content: center;height: 1em;animation: var(--_login-icon-anim, login-icon-forward) var(--time-700) var(--ease-elastic-in-out-3) forwards; }
/*------------------------------------------------------------------
[BBSWS CSS Site Shell]

Version:    3.0
School Name:    Whittier Christian High School
Project Type:   QS Theme - Ascend

[Table of Contents]

    1. Custom Properties
    2. Default Overwrites
    3. Universal Styling
    4. Flex Framework Conversion
    5. Site Specific Components
    6. Media Queries
    7. Keyframe Animations

------------------------------------------------------------------*/

/*------------------------------------------------------------------
    [1. Custom Properties]
------------------------------------------------------------------*/
/* @property --btn-bg {
    syntax: "<color>";
    inherits: true;
    initial-value: light-dark(var(--link-color), var(--soft-purple));
} */
/* @property --border-color {
    syntax: "<color>";
    inherits: true;
    initial-value: transparent;
} */
:root {
    /*Primitives*/ 
        /*Brand*/
            /*Colors*/
            --red: #ce102e;
            --yellow: #ffc72c;
            --platinum: #d0d8d8;
            --concrete: #73747;
            /* --violet: #b061f2;
            --jurple: #7a04dd;
            --soft-purple: #c898fa; */
    
            /*Color Assignments*/
            --color-1: var(--red);
            --color-2: var(--yellow);
            --color-3: var(--platinum);
            /*Fonts*/
            --brand-font-1: "Bebas Neue", sans-serif;
            --brand-font-2: "Montserrat", sans-serif;
            --icon-font: 'Material Symbols Outlined', sans-serif; 
    
            /*Role Tokens*/
            --link-color: light-dark(var(--red), var(--yellow));
            --link-image-width: 100%;
    
        /*Colors*/
            /*Main Color*/
            --color-1-dark: color-mix(in srgb, var(--color-1) 75%, black);
            --color-1-darker: color-mix(in srgb, var(--color-1) 50%, black);
            --color-1-light: color-mix(in srgb, var(--color-1) 32%, white);
            --color-1-lighter: color-mix(in srgb, var(--color-1) 8%, white);
    
            /*Secondary Color*/
            --color-2-dark: color-mix(in srgb, var(--color-2) 75%, black);
            --color-2-darker: color-mix(in srgb, var(--color-2) 50%, black);
            --color-2-light: color-mix(in srgb, var(--color-2) 32%, white);
            --color-2-lighter: color-mix(in srgb, var(--color-2) 8%, white);
    
            /*Tertiary Color*/
            --color-3-dark: color-mix(in srgb, var(--color-3) 75%, black);
            --color-3-darker: color-mix(in srgb, var(--color-3) 50%, black);
            --color-3-light: color-mix(in srgb, var(--color-3) 32%, white);
            --color-3-lighter: color-mix(in srgb, var(--color-3) 8%, white);
    
            /*Neutrals*/
            --gray: #999999;
            --gray-dark: color-mix(in srgb, var(--gray) 66.5%, black); /*#666666*/
            --gray-darker: color-mix(in srgb, var(--gray) 33%, black); /*#333333*/
            --gray-light: color-mix(in srgb, var(--gray) 20%, white); /*#EBEBEB*/
            --gray-lighter: color-mix(in srgb, var(--gray) 6%, white); /*#F9F9F9*/
    
        /*Size and Spacing*/
            /*Size*/
            --size-1: 1px;
            --size-2: 2px;
            --size-4: .25rem;
            --size-8: .5rem;
            --size-10: .625rem;
            --size-12: .75rem;
            --size-14: .875rem;
            --size-16: 1rem;
            --size-18: 1.125rem;
            --size-20: 1.25rem;
            --size-24: 1.5rem;
            --size-32: 2rem;
            --size-40: 2.5rem;
            --size-48: 3rem;
            --size-56: 3.5rem;
            --size-64: 4rem;
            --size-80: 5rem;
            --size-96: 6rem;
            --size-112: 7rem;
            --size-128: 8rem;
    
            /*Space*/
            --space-xs: .25em;
            --space-s: .5em;
            --space-m: 1em;
            --space-l: 1.5em;
            --space-xl: 2em;
            --space-xxl: 3em;
    
            /*SWS Columns*/
            --gutter-width: 15px;
            --gutter-width-collapse: var(--gutter-width);/*Collapses to 0 at mobile device sizes*/
            --column-width: 35px;
            --cnt-width-full: calc((var(--gutter-width) * 23) + (var(--column-width) * 24));
            --cnt-width-23: calc((var(--gutter-width) * 22) + (var(--column-width) * 23));
            --cnt-width-22: calc((var(--gutter-width) * 21) + (var(--column-width) * 22));
            --cnt-width-21: calc((var(--gutter-width) * 20) + (var(--column-width) * 21));
            --cnt-width-20: calc((var(--gutter-width) * 19) + (var(--column-width) * 20));
            --cnt-width-19: calc((var(--gutter-width) * 18) + (var(--column-width) * 19));
            --cnt-width-18: calc((var(--gutter-width) * 17) + (var(--column-width) * 18));
            --cnt-width-17: calc((var(--gutter-width) * 16) + (var(--column-width) * 17));
            --cnt-width-16: calc((var(--gutter-width) * 15) + (var(--column-width) * 16));
            --cnt-width-15: calc((var(--gutter-width) * 14) + (var(--column-width) * 15));
            --cnt-width-14: calc((var(--gutter-width) * 13) + (var(--column-width) * 14));
            --cnt-width-13: calc((var(--gutter-width) * 12) + (var(--column-width) * 13));
            --cnt-width-12: calc((var(--gutter-width) * 11) + (var(--column-width) * 12));
            --cnt-width-11: calc((var(--gutter-width) * 10) + (var(--column-width) * 11));
            --cnt-width-10: calc((var(--gutter-width) * 9) + (var(--column-width) * 10));
            --cnt-width-9: calc((var(--gutter-width) * 8) + (var(--column-width) * 9));
            --cnt-width-8: calc((var(--gutter-width) * 7) + (var(--column-width) * 8));
            --cnt-width-7: calc((var(--gutter-width) * 6) + (var(--column-width) * 7));
            --cnt-width-6: calc((var(--gutter-width) * 5) + (var(--column-width) * 6));
            --cnt-width-5: calc((var(--gutter-width) * 4) + (var(--column-width) * 5));
            --cnt-width-4: calc((var(--gutter-width) * 3) + (var(--column-width) * 4));
            --cnt-width-3: calc((var(--gutter-width) * 2) + (var(--column-width) * 3));
            --cnt-width-2: calc((var(--gutter-width) * 1) + (var(--column-width) * 2));
            --cnt-width-1: calc((var(--gutter-width) * 0) + (var(--column-width) * 1));
            
    
    
    /*Semantic Tokens*/
        /*Text*/
            /*Colors*/
            --text-default: light-dark(var(--gray-darker), #ffffff);
            --text-invert: light-dark(#ffffff, var(--gray-darker));
            --text-link: var(--link-color);
            --text-hover: var(--text-default);
            --text-primary: light-dark(var(--color-1), var(--color-2));;
            --text-secondary: light-dark(var(--color-2), var(--color-2));
            --text-tertiary: light-dark(var(--color-3), var(--color-3-light));
            --text-label: light-dark(var(--gray-dark), var(--gray-light));
            
            /*Size*/
            --text-size-xs: max(12px, var(--size-12));
            --text-size-s: max(14px, var(--size-14));
            --text-size-default: var(--size-16);
            --text-size-m: var(--size-18);
            --text-size-l: var(--size-24);
            --text-size-xl: var(--size-32);
            --text-size-xxl: var(--size-48);
            --text-size-3xl: var(--size-64);
    
            /*Line-height*/
            --text-lh-default: 1.5;
            --text-lh-tight: 1;
            --text-lh-2x: 2;
    
            /*Weights*/
            --text-weight-thin: 100;
            --text-weight-light: 300;
            --text-weight-normal: 400;
            --text-weight-medium: 500;
            --text-weight-semibold: 600;
            --text-weight-bold: 700;
            --text-weight-extrabold: 800;
            --text-weight-black: 900;
    
            /*Spacing*/
            --text-ls-default: .05em;
            --text-ls-wide: .1em;
            --text-ls-extrawide: .2em;
    
            /*Font Family*/
            --text-ff-body: var(--brand-font-2);
            --text-ff-display: var(--brand-font-1);
            /*--text-ff-display: var(--brand-font-2);*/
        
        /*Backgrounds*/
            --bg-default: light-dark(#ffffff, var(--gray-darker));
            --bg-primary: var(--color-1);
                --bg-primary-light: var(--color-1-light);
                --bg-primary-lighter: var(--color-1-lighter);
                --bg-primary-dark: var(--color-1-dark);
                --bg-primary-darker: var(--color-1-darker);
            --bg-secondary: var(--color-2);
                --bg-secondary-light: var(--color-2-light);
                --bg-secondary-lighter: var(--color-2-lighter);
                --bg-secondary-dark: var(--color-2-dark);
                --bg-secondary-darker: var(--color-2-darker);
            --bg-tertiary: var(--color-3);
                --bg-tertiary-light: var(--color-3-light);
                --bg-tertiary-lighter: var(--color-3-lighter);
                --bg-tertiary-dark: var(--color-3-dark);
                --bg-tertiary-darker: var(--color-3-darker);
            --bg-link: light-dark(var(--bg-primary), var(--bg-primary));
            --bg-clear: transparent;
            --bg-gray: var(--gray);
                --bg-gray-light: var(--gray-light);
                --bg-gray-lighter: var(--gray-lighter);
                --bg-gray-dark: var(--gray-dark);
                --bg-gray-darker: var(--gray-darker);
            
        /*Borders*/
            /*Colors*/
            --border-color: light-dark(var(--gray-light), var(--gray-dark));
            --border-primary: var(--text-primary);
            --border-secondary: var(--text-secondary);
            --border-tertiary: var(--text-tertiary);
            --border-link: var(--text-link);
            --border-hover: var(--text-hover);
            --border-clear: transparent;
    
            /*Width*/
            --border-size-1: var(--size-1);
            --border-size-2: var(--size-2);
            --border-size-4: var(--size-4);
            --border-size-8: var(--size-8);
            --border-size-16: var(--size-16);
            --border-size-32: var(--size-32);
    
        /*Border Radius*/
            --radius-xs: var(--size-4);
            --radius-s: var(--size-8);
            --radius-m: var(--size-16);
            --radius-l: var(--size-24);
            --radius-xl: var(--size-32);
            --radius-round: 99rem;
            --radius-circle: 100%;
    
        /*Shadows*/
            --shadow-color: 220 3% 7%;
            --shadow-strength: 1%;
            --inner-shadow-highlight: inset 0 -.5px 0 0 light-dark(#ffffff, #000000), inset 0 .5px 0 0 light-dark(rgba(0,0,0,.06667), rgba(255,255,255,.06667));
            --shadow-1: 0 1px 2px -1px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 9%));
            --shadow-2: 0 3px 5px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 7px 14px -5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%));
            --shadow-3: 0 -1px 3px 0 hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 1px 2px -5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 2px 5px -5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 4%)), 0 4px 12px -5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%)), 0 12px 15px -5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 7%));
            --shadow-4: 0 -2px 5px 0 hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 1px 1px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 2px 2px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 5px 5px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 4%)), 0 9px 9px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%)), 0 16px 16px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 6%));
            --shadow-5: 0 -1px 2px 0 hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 2px 1px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 5px 5px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 10px 10px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 4%)), 0 20px 20px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%)), 0 40px 40px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 7%));
            --shadow-6: 0 -1px 2px 0 hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 3px 2px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 7px 5px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 12px 10px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 4%)), 0 22px 18px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%)), 0 41px 33px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 6%)), 0 100px 80px -2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 7%));
            --inner-shadow-0: inset 0 0 0 1px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 9%));
            --inner-shadow-1: inset 0 1px 2px 0 hsl(var(--shadow-color) / calc(var(--shadow-strength) + 9%)), var(--inner-shadow-highlight);
            --inner-shadow-2: inset 0 1px 4px 0 hsl(var(--shadow-color) / calc(var(--shadow-strength) + 9%)), var(--inner-shadow-highlight);
            --inner-shadow-3: inset 0 2px 8px 0 hsl(var(--shadow-color) / calc(var(--shadow-strength) + 9%)), var(--inner-shadow-highlight);
            --inner-shadow-4: inset 0 2px 14px 0 hsl(var(--shadow-color) / calc(var(--shadow-strength) + 9%)), var(--inner-shadow-highlight);
            --text-shadow-1: 0 1px 2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 9%));
            --text-shadow-2: 0 3px 5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 7px 14px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%));
            --text-shadow-3: 0 -1px 3px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 1px 2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 2px 5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 4%)), 0 4px 12px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%)), 0 12px 15px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 7%));
            --text-shadow-4: 0 -2px 5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 1px 1px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 2px 2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 5px 5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 4%)), 0 9px 9px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%)), 0 16px 16px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 6%));
            --text-shadow-5: 0 -1px 2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 2px 1px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 5px 5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 10px 10px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 4%)), 0 20px 20px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%)), 0 40px 40px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 7%));
            --text-shadow-6: 0 -1px 2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 2%)), 0 3px 2px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 7px 5px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 3%)), 0 12px 10px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 4%)), 0 22px 18px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 5%)), 0 41px 33px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 6%)), 0 100px 80px hsl(var(--shadow-color) / calc(var(--shadow-strength) + 7%));
    
        /*Transitions*/
            /*Easing*/
            --ease-1: cubic-bezier(.25, 0, .5, 1);
            --ease-2: cubic-bezier(.25, 0, .4, 1);
            --ease-3: cubic-bezier(.25, 0, .3, 1);
            --ease-4: cubic-bezier(.25, 0, .2, 1);
            --ease-5: cubic-bezier(.25, 0, .1, 1);
            --ease-in-1: cubic-bezier(.25, 0, 1, 1);
            --ease-in-2: cubic-bezier(.5, 0, 1, 1);
            --ease-in-3: cubic-bezier(.7, 0, 1, 1);
            --ease-in-4: cubic-bezier(.9, 0, 1, 1);
            --ease-in-5: cubic-bezier(1, 0, 1, 1);
            --ease-out-1: cubic-bezier(0, 0, .75, 1);
            --ease-out-2: cubic-bezier(0, 0, .5, 1);
            --ease-out-3: cubic-bezier(0, 0, .3, 1);
            --ease-out-4: cubic-bezier(0, 0, .1, 1);
            --ease-out-5: cubic-bezier(0, 0, 0, 1);
            --ease-in-out-1: cubic-bezier(.1, 0, .9, 1);
            --ease-in-out-2: cubic-bezier(.3, 0, .7, 1);
            --ease-in-out-3: cubic-bezier(.5, 0, .5, 1);
            --ease-in-out-4: cubic-bezier(.7, 0, .3, 1);
            --ease-in-out-5: cubic-bezier(.9, 0, .1, 1);
            --ease-elastic-out-1: cubic-bezier(.5, .75, .75, 1.25);
            --ease-elastic-out-2: cubic-bezier(.5, 1, .75, 1.25);
            --ease-elastic-out-3: cubic-bezier(.5, 1.25, .75, 1.25);
            --ease-elastic-out-4: cubic-bezier(.5, 1.5, .75, 1.25);
            --ease-elastic-out-5: cubic-bezier(.5, 1.75, .75, 1.25);
            --ease-elastic-in-1: cubic-bezier(.5, -.25, .75, 1);
            --ease-elastic-in-2: cubic-bezier(.5, -.5, .75, 1);
            --ease-elastic-in-3: cubic-bezier(.5, -.75, .75, 1);
            --ease-elastic-in-4: cubic-bezier(.5, -1, .75, 1);
            --ease-elastic-in-5: cubic-bezier(.5, -1.25, .75, 1);
            --ease-elastic-in-out-1: cubic-bezier(.5, -.1, .1, 1.5);
            --ease-elastic-in-out-2: cubic-bezier(.5, -.3, .1, 1.5);
            --ease-elastic-in-out-3: cubic-bezier(.5, -.5, .1, 1.5);
            --ease-elastic-in-out-4: cubic-bezier(.5, -.7, .1, 1.5);
            --ease-elastic-in-out-5: cubic-bezier(.5, -.9, .1, 1.5);
            --ease-step-1: steps(2);
            --ease-step-2: steps(3);
            --ease-step-3: steps(4);
            --ease-step-4: steps(7);
            --ease-step-5: steps(10);
            --ease-elastic-1: var(--ease-elastic-out-1);
            --ease-elastic-2: var(--ease-elastic-out-2);
            --ease-elastic-3: var(--ease-elastic-out-3);
            --ease-elastic-4: var(--ease-elastic-out-4);
            --ease-elastic-5: var(--ease-elastic-out-5);
            --ease-squish-1: var(--ease-elastic-in-out-1);
            --ease-squish-2: var(--ease-elastic-in-out-2);
            --ease-squish-3: var(--ease-elastic-in-out-3);
            --ease-squish-4: var(--ease-elastic-in-out-4);
            --ease-squish-5: var(--ease-elastic-in-out-5);
            --ease-spring-1: linear( 0, .006, .025 2.8%, .101 6.1%, .539 18.9%, .721 25.3%, .849 31.5%, .937 38.1%, .968 41.8%, .991 45.7%, 1.006 50.1%, 1.015 55%, 1.017 63.9%, 1.001 );
            --ease-spring-2: linear( 0, .007, .029 2.2%, .118 4.7%, .625 14.4%, .826 19%, .902, .962, 1.008 26.1%, 1.041 28.7%, 1.064 32.1%, 1.07 36%, 1.061 40.5%, 1.015 53.4%, .999 61.6%, .995 71.2%, 1 );
            --ease-spring-3: linear( 0, .009, .035 2.1%, .141 4.4%, .723 12.9%, .938 16.7%, 1.017, 1.077, 1.121, 1.149 24.3%, 1.159, 1.163, 1.161, 1.154 29.9%, 1.129 32.8%, 1.051 39.6%, 1.017 43.1%, .991, .977 51%, .974 53.8%, .975 57.1%, .997 69.8%, 1.003 76.9%, 1 );
            --ease-spring-4: linear( 0, .009, .037 1.7%, .153 3.6%, .776 10.3%, 1.001, 1.142 16%, 1.185, 1.209 19%, 1.215 19.9% 20.8%, 1.199, 1.165 25%, 1.056 30.3%, 1.008 33%, .973, .955 39.2%, .953 41.1%, .957 43.3%, .998 53.3%, 1.009 59.1% 63.7%, .998 78.9%, 1 );
            --ease-spring-5: linear( 0, .01, .04 1.6%, .161 3.3%, .816 9.4%, 1.046, 1.189 14.4%, 1.231, 1.254 17%, 1.259, 1.257 18.6%, 1.236, 1.194 22.3%, 1.057 27%, .999 29.4%, .955 32.1%, .942, .935 34.9%, .933, .939 38.4%, 1 47.3%, 1.011, 1.017 52.6%, 1.016 56.4%, 1 65.2%, .996 70.2%, 1.001 87.2%, 1 );
            --ease-bounce-1: linear( 0, .004, .016, .035, .063, .098, .141, .191, .25, .316, .391 36.8%, .563, .766, 1 58.8%, .946, .908 69.1%, .895, .885, .879, .878, .879, .885, .895, .908 89.7%, .946, 1 );
            --ease-bounce-2: linear( 0, .004, .016, .035, .063, .098, .141 15.1%, .25, .391, .562, .765, 1, .892 45.2%, .849, .815, .788, .769, .757, .753, .757, .769, .788, .815, .85, .892 75.2%, 1 80.2%, .973, .954, .943, .939, .943, .954, .973, 1 );
            --ease-bounce-3: linear( 0, .004, .016, .035, .062, .098, .141 11.4%, .25, .39, .562, .764, 1 30.3%, .847 34.8%, .787, .737, .699, .672, .655, .65, .656, .672, .699, .738, .787, .847 61.7%, 1 66.2%, .946, .908, .885 74.2%, .879, .878, .879, .885 79.5%, .908, .946, 1 87.4%, .981, .968, .96, .957, .96, .968, .981, 1 );
            --ease-bounce-4: linear( 0, .004, .016 3%, .062, .141, .25, .391, .562 18.2%, 1 24.3%, .81, .676 32.3%, .629, .595, .575, .568, .575, .595, .629, .676 48.2%, .811, 1 56.2%, .918, .86, .825, .814, .825, .86, .918, 1 77.2%, .94 80.6%, .925, .92, .925, .94 87.5%, 1 90.9%, .974, .965, .974, 1 );
            --ease-bounce-5: linear( 0, .004, .016 2.5%, .063, .141, .25 10.1%, .562, 1 20.2%, .783, .627, .534 30.9%, .511, .503, .511, .534 38%, .627, .782, 1 48.7%, .892, .815, .769 56.3%, .757, .753, .757, .769 61.3%, .815, .892, 1 68.8%, .908 72.4%, .885, .878, .885, .908 79.4%, 1 83%, .954 85.5%, .943, .939, .943, .954 90.5%, 1 93%, .977, .97, .977, 1 );
    
            /*Duration*/
            --time-50: 50ms;
            --time-100: 100ms;
            --time-150: 150ms;
            --time-200: 200ms;
            --time-250: 250ms;
            --time-300: 300ms;
            --time-350: 350ms;
            --time-400: 400ms;
            --time-450: 450ms;
            --time-500: 500ms;
            --time-550: 550ms;
            --time-600: 600ms;
            --time-700: 700ms;
            --time-800: 700ms;
            --time-900: 700ms;
            --time-1000: 1000ms;
    
            /*Animations*/
            --animation-fade-in: fade-in var(--time-500) var(--ease-3);
            --animation-fade-in-bloom: fade-in-bloom 2s var(--ease-3);
            --animation-fade-out: fade-out var(--time-500) var(--ease-3);
            --animation-fade-out-bloom: fade-out-bloom 2s var(--ease-3);
            --animation-scale-up: scale-up var(--time-500) var(--ease-3);
            --animation-scale-down: scale-down var(--time-500) var(--ease-3);
            --animation-slide-out-up: slide-out-up var(--time-500) var(--ease-3);
            --animation-slide-out-down: slide-out-down var(--time-500) var(--ease-3);
            --animation-slide-out-right: slide-out-right var(--time-500) var(--ease-3);
            --animation-slide-out-left: slide-out-left var(--time-500) var(--ease-3);
            --animation-slide-in-up: slide-in-up var(--time-500) var(--ease-3);
            --animation-slide-in-down: slide-in-down var(--time-500) var(--ease-3);
            --animation-slide-in-right: slide-in-right var(--time-500) var(--ease-3);
            --animation-slide-in-left: slide-in-left var(--time-500) var(--ease-3);
            --animation-shake-x: shake-x var(--time-700) var(--ease-out-5);
            --animation-shake-y: shake-y var(--time-700) var(--ease-out-5);
            --animation-shake-z: shake-z var(--time-1000) var(--ease-in-out-3);
            --animation-spin: spin 2s linear infinite;
            --animation-ping: ping 5s var(--ease-out-3) infinite;
            --animation-blink: blink var(--time-1000) var(--ease-out-3) infinite;
            --animation-float: float 3s var(--ease-in-out-3) infinite;
            --animation-bounce: bounce 2s var(--ease-squish-2) infinite;
            --animation-pulse: pulse 2s var(--ease-out-3) infinite;
            
            
    /*Components*/
    
        /*Blocks*/
            --block-default: var(--bg-clear);
            --block-primary: light-dark(var(--bg-primary), var(--bg-primary));
                --block-primary-light: light-dark(var(--bg-primary-light), var(--bg-primary-dark));
                --block-primary-lighter: light-dark(var(--bg-primary-lighter), var(--bg-primary-darker));
                --block-primary-dark: light-dark(var(--bg-primary-dark), var(--bg-primary-light));
                --block-primary-darker: light-dark(var(--bg-primary-darker), var(--bg-primary-lighter));
            --block-secondary: light-dark(var(--bg-secondary), var(--bg-secondary));
                --block-secondary-light: light-dark(var(--bg-secondary-light), var(--bg-secondary-dark));
                --block-secondary-lighter: light-dark(var(--bg-secondary-lighter), var(--bg-secondary-darker));
                --block-secondary-dark: light-dark(var(--bg-secondary-dark), var(--bg-secondary-light));
                --block-secondary-darker: light-dark(var(--bg-secondary-darker), var(--bg-secondary-lighter));
            --block-tertiary: light-dark(var(--bg-tertiary), var(--bg-tertiary));
                --block-tertiary-light: light-dark(var(--bg-tertiary-light), var(--bg-tertiary-dark));
                --block-tertiary-lighter: light-dark(var(--bg-tertiary-lighter), var(--bg-tertiary-darker));
                --block-tertiary-dark: light-dark(var(--bg-tertiary-dark), var(--bg-tertiary-light));
                --block-tertiary-darker: light-dark(var(--bg-tertiary-darker), var(--bg-tertiary-lighter));
            --block-gray: light-dark(var(--bg-gray-light), var(--bg-gray-dark));
            --block-link: var(--bg-link);
            --block-border: var(--border-size-1) solid var(--border-color);
            --block-radius: var(--radius-l);
            --block-padding: var(--space-xl);
            --block-margin-end: var(--space-xxl);
        
    
        /*Buttons*/
            --btn-bg:var(--block-link);
            --btn-color: light-dark(var(--text-invert), var(--text-default));
            --btn-text: var(--text-ff-display);
            --btn-text-size: var(--text-size-m) /*var(--text-size-s)*/;
            --btn-text-weight: var(--text-weight-normal);
            --btn-text-tt: uppercase;
            --btn-text-ls: var(--text-ls-extrawide);
            --btn-text-lh: var(--text-lh-default);
            --btn-padding: max((25px - 1em) / 2, var(--size-4)) var(--space-xs);
            --btn-radius: var(--radius-s);
            --btn-border: var(--border-size-2) solid transparent;
            --btn-shadow: var(--shadow-3);
            --btn-gap: var(--space-s);
    
            --btn-icon: "chevron_right";
            --btn-icon-bg: var(--link-color);
            --btn-icon-color: var(--text-invert);
            --btn-icon-size: var(--btn-size);
            --btn-icon-radius: var(--radius-circle);
            --btn-icon-gap: var(--space-s);
    
            --btn-direction: column;
            --btn-wrap: var(--btn-wra);
            --btn-justify: start;
            --btn-align-content: start;
            --btn-align-items: stretch;
    
            --btn-transition: 
                border var(--time-250) var(--ease-1), 
                color var(--time-250) var(--ease-1), 
                box-shadow var(--time-500) var(--ease-spring-4), 
                background var(--time-250) var(--ease-1),
                transform var(--time-700) var(--ease-elastic-in-out-3), 
                opacity var(--time-250) var(--ease-1);
            --link-transition: 
                color var(--time-250) var(--ease-1), 
                text-decoration var(--time-250) var(--ease-1), 
                background var(--time-250) var(--ease-1);
    
    
        /*Read More*/
            --rm-bg: var(--bg-clear);
            --rm-color: inherit;
            --rm-text: var(--text-ff-display);
            --rm-text-size: var(--text-size-m) /*var(--text-size-s)*/;
            --rm-text-weight: var(--text-weight-normal);
            --rm-text-tt: uppercase;
            --rm-text-ls: var(--text-ls-extrawide);
            --rm-padding: var(--space-xs) 0;
            --rm-radius: 0;
            --rm-border: 0 solid var(--border-clear);
            --rm-shadow: none;
            --rm-gap: var(--space-m);
    
            --rm-icon: "arrow_right_alt";
            --rm-icon-bg: var(--bg-clear);
            --rm-icon-color: var(--text-link);
            --rm-icon-size: 1em;
            --rm-icon-radius: 0;
            --rm-icon-gap: var(--size-8);
    
            --rm-transition: color var(--time-250) var(--ease-1), margin var(--time-700) var(--ease-spring-4), padding var(--time-700) var(--ease-spring-4);
    
        /*Navigation*/
            --nav-bg: var(--bg-clear);
            --nav-color: var(--text-default);
            --nav-color-hover: var(--text-link);
            --nav-text: var(--text-ff-display);
            --nav-text-size: var(--text-size-m) /*var(--text-size-s)*/;
            --nav-text-weight: var(--text-weight-normal);
            --nav-text-tt: uppercase;
            --nav-text-ls: var(--text-ls-wide);
            --nav-padding: var(--space-s) 0;
            --nav-radius: 0;
            --nav-border: 0 solid var(--border-clear);
            --nav-shadow: none;
            --nav-gap: 0 var(--space-xl);
    
            --nav-icon-display: none;
            --nav-icon: "expand_more";
            --nav-icon-bg: var(--bg-clear);
            --nav-icon-color: var(--text-link);
            --nav-icon-size: calc(var(--nav-text-size) * 1.5);
            --nav-icon-radius: 0;
            --nav-icon-gap: 0;
    
            --nav-box-bg: var(--bg-default);
            --nav-box-border: none;
            --nav-box-radius: 0;
            --nav-box-padding: var(--space-s) var(--space-m);
            --nav-box-shadow: var(--shadow-5);
    
        /*Pager Arrows and Shapes*/
            /*Arrows*/
            --arrow-bg: var(--bg-link);
            --arrow-color: var(--text-invert);
            --arrow-size: var(--text-size-xl);
            --arrow-radius: var(--radius-circle);
            --arrow-border: var(--border-size-1) solid var(--border-clear);
            --arrow-shadow: none;
            --arrow-gap: var(--space-m);
    
            /*Pager*/
            --pager-default: var(--bg-clear);
            --pager-hover: var(--bg-link);
            --pager-active: var(--bg-link);
            --pager-color: var(--text-invert);
            --pager-text: var(--text-ff-body);
            --pager-text-size: var(--text-size-s);
            --pager-text-weight: var(--text-weight-bold);
            --pager-text-ls: var(--text-ls-extrawide);
            --pager-padding: var(--space-xs);
            --pager-radius: var(--radius-circle);
            --pager-border: var(--border-size-1) solid var(--border-clear);
            --pager-shadow: none;
            --pager-gap: var(--space-s);
    
            /*Tables*/
            --table-th-bg: var(--block-primary);
            --table-th-color: light-dark(var(--text-invert), var(--text-default));
            --table-th-text: var(--text-ff-display);
            --table-th-size: var(--text-size-m) /*var(--text-size-s)*/;
            --table-th-weight: var(--text-weight-bold);
            --table-th-ls: var(--text-ls-wide);
            --table-th-lh: var(--text-lh-tight);
            --table-th-padding: var(--space-s) var(--space-l);
            --table-th-tt: uppercase;
            --table-th-radius-start: var(--radius-xs) 0 0 var(--radius-xs);
            --table-th-radius-end: 0 var(--radius-xs) var(--radius-xs) 0;
            --table-th-border: none;
            --table-td-bg: var(--block-default);
            --table-td-bg-alt: var(--block-gray);
            --table-td-color: var(--text-label);
            --table-td-text: var(--text-ff-body);
            --table-td-size: var(--text-size-s);
            --table-td-weight: var(--text-weight-normal);
            --table-td-ls: var(--text-ls-default);
            --table-td-lh: var(--text-lh-tight);
            --table-td-padding: var(--space-m) var(--space-l);
            --table-td-tt: none;
            --table-td-radius-start: var(--radius-xs) 0 0 var(--radius-xs);
            --table-td-radius-end: 0 var(--radius-xs) var(--radius-xs) 0;
            --table-td-border: none;
    }
    
    /*------------------------------------------------------------------
        [2. Default Overwrites]
    ------------------------------------------------------------------*/
    figure{margin:0;}
    .no-bullets li ul {margin: 0;}
    .no-bullets li.group:first-child {margin-block-start: 0;}
    .downloads ul li {padding: unset; margin: unset;}
    .lists ul>li {margin: unset;}
    .news ul li {margin:unset}
    .affinity ul li {margin: unset;}
    :is(.announcement, .faq) ul li .h4-style {margin-block: 0 var(--space-s);}
    li {line-height: inherit;}
    @layer{.links .custom-long-description {padding: unset;}}
    [class] .content-wrap>ul>li img:is(.left, .right) {float: none; margin: unset;}
    /*[class] .button {display: var(--rm-display-mode); justify-self: start;}*/
    ul, ol {margin: 0;}
    .slides:after {display:none;}
    .nav-menu ul li.has-sub-menu > a {--nav-icon-display: inline-flex;}
    .nav-menu ul .submenu a {--nav-icon-display: none; display: flex;}
    /* .links .carousel li a img {margin-block-end: var(--space-m)} */
    hr {border-block-start-color: var(--border-color); border-block-end:0; margin-block: var(--space-s);}
    
    /*------------------------------------------------------------------
        [3. Universal Styling]
    ------------------------------------------------------------------*/
    
    /*-Global Items-*/
        html{
            scroll-behavior: smooth;
            transition-behavior: allow-discrete;
            interpolate-size: allow-keywords;
        } /*Sets the scroll behavior to smooth so anchor links don't jump across the page, but rather "animate" smoothly across the page*/
        html:not(.styler){
        font-size: 16px;
        }/*Sets main font size here while not effecting the styler*/
        
        /* .button:not(input):last-child {
            margin-block-end: calc(var(--rm-margin-top) * -2)
        } */
        .search-text::placeholder {
            color: inherit;
            font-family: inherit;
        } /*Styles search placeholder text color to inherit properly*/
        .content-wrap > ul,
        :where(ul.no-bullets, ul.no-bullets li ul, .video-list),
        div.athleticscheduleitemalert {
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            gap: var(--space-m);
            align-items: stretch;
        } /*Sets parent ul for "group" elements to a flex container by default*/
        .h4-style {
            a {
                display: block;
                text-decoration: none;
                color: var(--text-default);
                &:hover {
                    color: var(--text-link);
                }
            }
        } /*Default styling for title links to counter SWS inconsistancies*/
        div:not([class]):not([id]):has(span[class*="name"]) {
            font-family: var(--text-ff-display);
            font-weight: var(--text-weight-semibold);
            font-size: var(--size-20);
            letter-spacing: var(--text-ls-default);
            margin-block: 0 var(--space-s);
        } /*Default styling for affinity related Name content to counter SWS inconsistancies*/
        time, .author {
            color: var(--text-label);
            font-size: var(--text-size-s);
            line-height: 1;
            margin-block-end: var(--space-s);
        } /*Global styling for time and author text*/
        label.checkbox {
            display: grid;
            grid-template-columns: 1em auto;
            gap: var(--space-s);
            align-items:center;
            justify-content: start;
        }
        input[type="checkbox"] {
            appearance: none;
            border: var(--border-size-1) solid var(--border-color);
            border-radius: 0;
            background-color: var(--bg-clear);
            height:var(--size-14);
            width: var(--size-14);
            display: grid;
            place-content: center;
            margin-block-start: var(--space-xs);
            align-self: start;
    
            &::before {
                content:"";
                width: var(--size-8);
                height: var(--size-8);
                transform: var(--_checkbox-scale, scale(0));
                transition: transform var(--time-500) var(--ease-spring-4);
                box-shadow: inset 1em 1em var(--link-color);
            }
            &:checked {
                --_checkbox-scale: scale(1);
            }
        } /*Default styling for checkboxes to fall better inline with site styling by default*/
        .txt-block {
            margin-block-end: var(--space-xxl);
            &:last-child {
                margin-block-end: 0;
            }
        } /*Custom class for style guide or test content*/
        .long-description:empty{
            display:none;
        } /*Forces empty long descriptions to not appear and take up space*/
    
    /*-Global Container Queries-*/
        :where([class*="block"]:not(:has(nav))) {
            container-name: cntBlock;
            container-type: inline-size;
            &:is(.page-block) {
                margin-block-end: var(--block-margin-end);
            }
            
        } /*Sets elements with "block" in the class with a container name, size context as well as adds a block end margin by default rather than adding it the style*/
        .group {
            container-name: group;
            container-type: inline-size;
        } /*Sets group elements in the class with a container name, and size context*/
    /*-Carousels-*/
        .carousel {
            .flex-direction-nav a{
                background: transparent;
                color: var(--text-link);
                border-radius: var(--btn-icon-radius);
                font-family: var(--icon-font);
                font-size: 0;
                text-indent: 0;
                height: 2.5rem;
                width: 2.5rem;
                text-decoration: none;
                -webkit-transition: none;
                transition: var(--btn-transition);
                &:hover {
                    color: var(--text-hover);
                }
                &.flex-prev::before {
                    text-indent: -.0625em;
                    height: 100%;
                    width: 100%;
                    display: flex;
                    flex-direction: row;
                    align-items: center;
                    justify-content: center;
                    content:"arrow_left_alt";
                    font-size: var(--size-40);
                }
                &.flex-next::before {
                    text-indent: .0625em;
                    height: 100%;
                    width: 100%;
                    display: flex;
                    flex-direction: row;
                    align-items: center;
                    justify-content: center;
                    content:"arrow_right_alt";
                    font-size: var(--size-40);
                }
            }
            .aria-live-region {
                display: none;
            }
            display: grid;
            grid-template-columns: [slides-start pager-start arrows-start]1fr[slides-end pager-end arrows-end];
            grid-template-rows: [slides-start pager-start]auto[slides-end pager-end arrows-start]auto[arrows-end];
            padding-block-end: calc(var(--size-64) + (var(--border-size-1) * 2));
    
            &:is(.pager-position-bottom){
                &:is(.pager-location-outside){
                    grid-template-rows: [slides-start arrows-start]auto[slides-end arrows-end pager-start]auto[pager-end];
                }
                &:is(.pager-location-inside){
                    grid-template-rows: [slides-start arrows-start]auto[pager-start]auto[slides-end arrows-end pager-end];
                    .flex-control-nav {
                        padding: var(--space-s);
                    }
                }
            }
            &:is(.pager-position-top){
                &:is(.pager-location-outside){
                    grid-template-rows: [pager-start]auto[pager-end slides-start arrows-start]auto[slides-end arrows-end];
                    margin-block-start: 0;
                }
                &:is(.pager-location-inside){
                    grid-template-rows: [pager-start slides-start arrows-start]auto[pager-end]auto[slides-end arrows-end];
                    .flex-control-nav { 
                        padding: var(--space-s);
                    }
                }
            }
            &:is(.pager-position-left){
                grid-template-rows: [slides-start pager-start arrows-start]1fr[slides-end pager-end arrows-end];
                &:is(.pager-location-outside) {
                    grid-template-columns: [pager-start]auto[pager-end slides-start arrows-start]auto[slides-end arrows-end];
                    margin-inline-start: 0;
                }
                &:is(.pager-location-inside) {
                    grid-template-columns: [pager-start slides-start arrows-start]auto[pager-end]auto[slides-end arrows-end];
                }
            }
            &:is(.pager-position-right){
                grid-template-rows: [slides-start pager-start arrows-start]1fr[slides-end pager-end arrows-end];
                &:is(.pager-location-outside) {
                    grid-template-columns: [slides-start arrows-start]auto[slides-end arrows-end pager-start]auto[pager-end];
                    margin-inline-end: 0;
                }
                &:is(.pager-location-inside) {
                    grid-template-columns: [slides-start arrows-start]auto[pager-start]auto[pager-end slides-end arrows-end];
                    margin-inline-end: 0;
                }
            }
            &:not(.arrows) {
                grid-template-rows: [slides-start pager-start arrows-start]auto[slides-end pager-end arrows-end];
            }
            .details {
                line-height: var(--text-lh-default);
            }
            .custom-link-photo {
                text-decoration: none;
                :is(img, .carousel.flexslider.carousel-type-text img:not(.left, .right)) {
                    width: 100%;
                }
            }
            &:is(.flexslider) {
                background:transparent;
                border: none;
                margin: 0;
                -webkit-border-radius: 0;
                -moz-border-radius: 0;
                -o-border-radius: 0;
                border-radius: 0;
                -webkit-box-shadow: none;
                -moz-box-shadow: none;
                -o-box-shadow: none;
                box-shadow: none;
            }
            ul.slides,
            .flex-viewport {
                grid-area: slides;
                padding-block-end: var(--space-xs);
                min-height: min-content;
                .text-slide {
                    padding: 0;
                    &:is(.events &) {
                        padding: var(--space-m);
                    }
                }
            }
            
            /*Multi Item Carousels*/
            .flex-viewport .slides{
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: start;
                li {
                    padding-inline: var(--space-s);
                    &.group {
                    float: none !important;
                    }
                }
            }
            &:has(.flex-viewport) {
                margin-inline: calc(var(--space-s) * -1);
                .flex-direction-nav {
                    padding-inline: var(--space-s);
                }
            }
    
            /* &:is(.animation-fade) {
                ul.slides {
                    overflow:initial;
                }
            } */
    
            /*Carousel Item Defaults*/
            figure {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                align-items: stretch;
                gap: var(--space-l);
                .details {
                    .crl-inner-details {
                        color:var(--text-default);
                        margin: 0;
                        padding: var(--_caption-padding, 0);
                        padding-block-end: var(--_caption-padding-end, 0);
                        background: transparent;
                    }
                }
            }
            &:is(.caption-position-bottom) {
                --_caption-padding-end: var(--space-s);
            }
            &:is(.caption-location-inside) {
                --_caption-padding: var(--space-l);
                --_caption-padding-end: var(--_caption-padding);
                --text-default: var(--text-invert);
                --h4-color: var(--text-default);
                --rm-color: var(--text-default);
                --border-color: var(--border-color);
                --text-label: var(--gray-dark);
                color: var(--text-invert);
                figcaption {
                    background: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
                }
            }
            &:is([class*="pager-position"]):is([class*="pager-location"]) .flex-control-nav {
                /* position: relative; */
                bottom: unset;
                left: unset;
                right: unset;
                top: var(--space-xl);
                display: flex;
                flex-direction:var(--_pager-direction, row);
                justify-content: var(--_pager-alignment, center);
                gap: var(--space-m);
                grid-area:pager;
                justify-self: center;
                box-sizing: border-box;
                padding: var(--pager-padding, 0);
                width:fit-content;
                margin-inline: var(--size-48);
                z-index: 1;
                li {
                    margin: 0;
                    display: block;
                    a {
                        width: var(--text-size-s);
                        height: var(--text-size-s);
                        background-color: transparent;
                        font-size: 0;
                        border: var(--border-size-2) solid currentColor;
                        color: var(--text-label);
                        box-shadow: none;
                        box-sizing: border-box;
                        &.flex-active {
                            color: var(--link-color);
                            background-color: currentcolor;
                        }
                    }
                }
            }
            &:is([class*="show-counter"]) {
                .crl-counter {
                    margin: 0 var(--size-48);
                    left: unset;
                    width: fit-content;
                    background: transparent;
                    font-family: var(--text-ff-display);
                    font-size: var(--text-size-m) /*var(--text-size-s)*/;
                    font-weight: var(--text-weight-bold);
                    color: var(--text-label);
                    display: flex !important;
                    gap: 1em;
                    align-items: center;
                    padding: 0;
                    justify-self: center;
                    z-index: 1;
                    [class*="current"] {
                        color: var(--text-default);
                    }
                    .separator {
                        background: var(--link-color);
                        font-size: 0;
                        height: var(--border-size-2);
                        width: var(--size-48);
                        margin-block-start:.05rem;
                    }
                }
                &:is(.carousel-position-bottonm) {
    
                }
            }
            .flex-direction-nav {
                grid-area: arrows;
                position: absolute;
                display:flex;
                flex-direction: row;
                flex-wrap:nowrap;
                align-items: center;
                justify-content: space-between;
                gap: var(--space-m);
                padding-block-start: var(--space-l);
                inset: 100% 0 auto 0;
            }
            &:is(.pager-alignment-left) {
                --_pager-alignment: start;
            }
            &:is(.pager-alignment-right) {
                --_pager-alignment: end;
            }
            &:is(.pager-alignment-top) {
                --_pager-alignment: start;
                --_pager-direction: column;
            }
            &:is(.pager-alignment-bottom) {
                --_pager-alignment: end;
                --_pager-direction: column;
            }
            &:is(.pager-location-inside) {
                --_pager-padding: var(--space-s);
            }
        } /*Major Overwrites to default carousel layouts and behavior.
    /*-Affinity Content-*/
        .affinity,
        .departmentfaculty,
        .athleticteamcoach {
            .group {
                &::before, &::after {
                    display: none;
                }
                display: grid;
                grid-template-columns: [img-start detail-start] 1fr [img-end detail-end];
                grid-template-rows: [img-start] auto [img-end detail-start] auto [detail-end];
                gap: var(--space-m);
    
                &:has(.left) {
                    grid-template-columns: [img-start] clamp(6.25rem, 35%, 12.5rem) [img-end detail-start] 1fr [detail-end];
                    grid-template-rows: [img-start detail-start] auto [img-end detail-end]
                }
                &:has(.right) {
                    grid-template-columns:  [detail-start] 1fr [detail-end img-start] clamp(6.25rem, 35%, 12.5rem) [img-end];
                    grid-template-rows: [img-start detail-start] auto [img-end detail-end];
                }
                :is(img) {
                    grid-area: img;
                    width: 100%;
                    &:not(:last-child, .left, .right) {
                        margin-block-end: var(--space-m);
                    } 
                 }
                 .details {
                    display: block;
                    grid-area: detail;
                 }
                 .h4-style span {
                    display: inline-block;
                 }
                 :is(.business-name, .job-title, .education, .email, .bus-phone) {
                    font-size: var(--text-size-s);
                    color: var(--text-label);
                    font-family: var(--text-ff-body);
                    overflow-wrap: break-word;
                    word-break: break-all;
                    &:is(span) {
                        display: block;
                    }
                 }
            }
            @container (width < 14.6875rem) {
                .group:has(.left, .right) {
                    grid-template-columns: [img-start detail-start] 1fr [img-end detail-end];
                    grid-template-rows: [img-start] auto [img-end detail-start] auto [detail-end];
                    img {
                        width: 100%;
                    }
                }
            }
        } /*Default layout formating for Affinity related content*/
    /*-Announcements-*/
        .announcement {
            .group {
                margin: 0;
            }
            time {
                margin: var(--h4-margin);
            }
            .button,
            .button:is(.readmore, .view-comments) {
                justify-self: start;
                display: inline-flex;
            }
    
        } /*Providing consistant layout and element spacing for Announcements so that they behave inline with other content*/
    
    /*-Annual Fund-*/
        .annualfund {
            .chart {
                width: 100%;
                margin: 0;
                max-width: unset;
                display: grid;
                grid-template-columns: [left-scale-start] auto [left-scale-end chart-start] 1fr [chart-end right-scale-start] auto [right-scale-end];
                gap: .5rem;
    
                .scale{
                    float: none;
                    width: auto;
                    z-index: 1;
    
                    &:is(.left) {
                        grid-area: left-scale;
                        text-align: right;
                        li::after {
                            inset-inline-start: calc(100% + var(--size-4));
                        }
                    }
                    &:is(.right) {
                        grid-area: right-scale;
                        text-align: left;
                        li::after {
                            inset-inline-end: calc(100% + var(--size-4));
                        }
                    }
                    
                    li {
                        margin-block-end: 0;
                        line-height: 1;
                        padding-block: .325rem;
                        font-size: var(--text-size-xs);
                        font-family: var(--text-ff-body);
                        color: var(--text-label);
                        line-height: var(--text-lh-tight);
                        letter-spacing: var(--text-ls-default);
                        font-weight: var(--text-weight-bold);
                        text-transform: none;
                        
                        span {
                            float: none;
                            text-align: inherit !important;
                            width: 100% !important;
                        }
                        &::after {
                            content: "";
                            display: block;
                            position: absolute;
                            width: var(--size-16);
                            height: var(--border-size-1);
                            background-color: var(--border-color);
                            inset-block: 50%;
    
                        }
                    }
                }
                .bar-container-outer {
                    position: relative;
                    float: none;
                    width: unset;
                    bottom: unset !important;
                    display: flex;
                    flex-direction: column;
                    justify-content: center;
                    flex-wrap: nowrap;
                    grid-area: chart;
                    padding-block: 9px;
    
                    .bar-container {
                        height: calc(100% - 5px) !important;
                        border: var(--border-size-1) solid var(--border-color);
                        background-color: transparent;
                        border-radius:var(--radius-s);
                        overflow: clip;
                    }
                    .bar {
                        inset-block-start: calc(var(--border-size-1) + (var(--border-size-1) * 2));
                        background-color: var(--block-primary);
                        padding-bottom: calc(var(--border-size-1) * 2)
                    }
                }
            }
            .detail {
                padding-block-start: var(--space-m);
                display: block;
                color: var(--text-label);
                font-size: var(--text-size-s);
    
                .goal {
                    font-size: var(--size-24);
                    color: var(--text-secondary);
                }
            }
        } /*Default layout and styling for Annual Fund charts*/
    
    /*-Audio-*/
        .audio {
            figure {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: var(--space-m);
            }
        } /*Minor layout formating for Audio content*/
    
    /*-Downloads and Links -*/
        :is(.downloads, .links) {
            .content-wrap {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: var(--space-m);
            }
    
            ul.no-bullets {
                display: flex;
                gap: var(--btn-gap, var(--space-m));
                flex-direction: var(--btn-direction, column);
                flex-wrap: var(--btn-wrap, nowrap);
                justify-content: var(--btn-justify, start);
                align-content: var(--btn-align-content, start);
                align-items: var(--btn-align-items, stretch);
            }
            .subcategory-group:not(:first-child) {
                margin-block-start: var(--space-m);
            }
            .group {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                
            }
    
            :where(.links-imglink) {
                display: block;
                    .link-image {
                        inline-size: var(--link-image-width);
                        margin: 0;
                        margin-block-end: var(--space-m);
                    }
            }
            
        }
        :where(.downloads, .links) {
            :where(A:not(.custom-link-photo)) {
                text-decoration: none;
                @layer {
                    color: var(--title-link-color);
                    font-family: var(--h4-font-family);
                    font-size: var(--h4-font-size);
                    font-weight: var(--h4-font-weight);
                    letter-spacing: var(--h4-letter-spacing);
                    line-height: var(--h4-line-height);
                    text-transform: var(--h4-text-transform);
                    margin: var(--h4-margin);
                    
                    &:hover {
                        color: var(--title-link-color-h);
                    }
                } 
            }
        } /*Adds layout and interactivity stylinf for downloads and links so that they behave consistantly with eachother*/
    /*-Events-*/
        .events,
        .calendareventlist {
            --_details-padding: var(--size-16);
            .group:not(:has(.text-slide)),
            .text-slide {
                box-sizing: border-box;
                border: var(--border-size-1) solid var(--border-color);
                padding: var(--space-xl);
    
            }
            .date-icon {
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                justify-content: start;
                align-items: stretch;
                float: none;
                gap: 1ch;
                text-align: start;
                background: light-dark(var(--bg-primary), var(--bg-primary));
                color: light-dark(var(--text-invert), var(--text-default));
                grid-column: 1 / span 1;
                grid-row: 1 / span 2;
                padding: var(--space-s) var(--space-l);
                margin-block-end: var(--space-m);
                width: fit-content;
                font-family: var(--text-ff-display);
                font-size: var(--text-size-m) /*var(--text-size-s)*/;
                font-weight: var(--text-weight-bold);
                letter-spacing: var(--text-ls-extrawide);
                text-transform: uppercase;
    
            } /*Updated default formatting and styling for date icons. Consider overwritting this under theme components, or simply move portions of this syntax there*/
            .event-detail {
                margin: 0;
                time {
                    letter-spacing: var(--text-ls-extrawide);
                    &:has([class*="time"])::before {
                        content:"schedule";
                        font-family: var(--icon-font);
                        font-weight: var(--text-weight-normal);
                        vertical-align: bottom;
                    }
                    &:has(~ .location) {
                        align-self: end;
                    }
                    &:is(.date-icon + .event-detail > &) {
                        /* .start-date {
                            display: none;
                        } */
                        &:has(.start-date:only-child) {
                            display: none;
                        }
                    }
                }
                .location, .contact-info {
                    margin-block-start: var(--space-xs);
                    font-size: var(--text-size-s);
                    color: var(--text-label);
                    font-style:italic;
                }
                .h4-style {
                    font-family: var(--text-ff-display);
                    font-weight: var(--text-weight-normal);
                    font-size: var(--text-size-l);
                    letter-spacing: var(--text-ls-default);
                    text-transform: none;
                }
                :is(.location, .contact-info, .registration, [class*="schedule"]) {
                    &:is([class*="cancelled"]) {
                        color: #cc0000;
                    }
                }
            } /*Deault styling for event detail wrapper element and items. This styling takes effect when no date icon is present*/
        } /*Formatting and style updates for Event related content. See specific comments above for details*/
    
    /*-Lists & News-*/
        .lists,
        .news,
        .newsarchivelist {
            :is(.group, .text-slide):has(img) {
                :is(img, .carousel.flexslider.carousel-type-text img):not(.left, .right) {
                    width: 100%;
                    margin-block-end: var(--space-m);
                    &:last-child {
                        margin-block-end: 0;
                    }
                }
                &:has(.left, .right) {
                    display: grid;
                    grid-template-rows: [img-start] repeat(1000, auto) [img-end];
                    gap: 0 var(--space-m);
    
                    :is(h4, div, a) {
                        grid-row-end: span 1;
                    }
                    :is(img) {
                        grid-area: img;
                        grid-row: 1 / -1;
                        width: 100%;
                    }
                }
                &:has(.left) {
                    grid-template-columns: [img-start] clamp(6.25rem, 35%, 12.5rem) [img-end detail-start] 1fr [detail-end];
                }
                &:has(.right) {
                    grid-template-columns: [detail-start] 1fr [detail-end img-start] clamp(6.25rem, 35%, 12.5rem) [img-end];
                }
            } /*Formats list and news group items with a grid syntax for updated layout and better scalability. Logic here adjusts based on the item's image position which is set via the styler ui by default*/
            time:has(+ .author) {
                margin-block-end: 0;
            } /*Removes margin from time element if it's followed by an author element.*/
            .button,
            .button:is(.readmore, .view-comments) {
                justify-self: start;
                display: inline-flex;
            }/*Adjusts flex justification for read more type buttons for these content types*/
            @container (width <= 20.9375rem) {
                :is(.group, .text-slide):has(img:is(.left, .right)) {
                    grid-template-columns: [img-start detail-start] 1fr [img-end detail-end];
                    grid-template-rows: [img-start] auto [img-end detail-start] auto [detail-end];   
                    img {
                        width: 100%;
                        margin-block-end: 0;
                        + * {
                            margin-block-start: var(--space-m);
                        }
                    }
                }
             }/*Container query that adjusts group item layout if they are housed in a narrow column. Custom props are not passible in the declaration so a raw unit is used. Default is set to 20.9375rem (335px at full desktop) or smaller*/
        } /*Formatting and style updates for List and News related content. See specific comments above for details*/
    
    /*-Text Content-*/
        .text {
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            align-items: stretch;
        } /*Flex container syntax for text content. allows for reordering content and header as desired within the target style itself*/
    
    /*-Photos & Video-*/
        .photo,
        .video {
            figure {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: var(--space-m);
            }
            figcaption {
                p {
                    margin: 0;
                    font-size: var(--text-size-xs);
                    color: var(--text-label);
                    font-style: italic;
                }
                .title {
                    font-family: var(--text-ff-body);
                    font-size: var(--text-size-xs);
                    font-weight: var(--text-weight-bold);
                    line-height: var(--text-lh-tight);
                    letter-spacing: var(--text-ls-wide);
                    text-transform: uppercase;
                    color: var(--text-label);
                    margin-block-end: var(--space-m);
                }
            }
            img {
                width: 100%;
            }
        } /*Default styling updates for photo/video content types*/
    /*Pickers*/
        div:is([class*="team"], [class*="directory"], [class*="dept"], [class*="department"]):not([class*="nav"]) {
            --cnt-flex-align: space-evenly;
            @container cntBlock (width < 20.9375rem) {
                --cnt-flex-align: stretch;
            }
            .h2-style {
                text-align: var(--cnt-text-align);
            }
            .table:not(table) {
                display: block;
                margin-block-end: var(--space-xxl);
                &:last-child {
                    margin-block-end: 0;
                }
                .table-row {
                    display: flex;
                    flex-direction: row;
                    flex-wrap: wrap;
                    justify-content: var(--cnt-flex-align);
                    gap:var(--space-m);
                    padding-block-end: var(--space-xl);
                    border-block-end: var(--border-color) solid var(--border-size-1);
                    .table-cell {
                        display: block;
                        padding-inline-end: 0;
                        text-align: var(--cnt-text-align);
                    }
                }
            }
        } /*Updates layout syntax and formatting for picker style elements*/
        :where(select, input, textarea) {
            border: var(--border-size-1) solid var(--border-link);
            border-radius: var(--radius-xs);
            font-family: var(--text-ff-body);
            font-size: var(--text-size-default);
            padding: var(--space-xs);
        } 
        :where(label) {
            color: var(--text-label);
            font-size: var(--text-size-s);
            line-height: 1;
        } /*Updated default styling for form related ui elements to fall inline with other updated defaults*/
    /*Directory*/
        .facultystaffdirectory .faculty-staff-list {
            > ul {
                display: grid;
                grid-auto-rows: 1fr auto;
                gap: var(--size-16);
                --_item-width: calc(100cqw / 8 - 1rem);
                grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--_item-width)), 1fr));
                @container(min-width: 950px) {
                    .group {
                        &:nth-child(4n + 1):last-child {
                            grid-column: 4 / span 2;
                        }
                        &:nth-last-child(2):has(~ &:nth-child(4n+2):last-child) {
                            grid-column: 3 / span 2;
                        }
                        &:nth-last-child(3):has(~ &:nth-child(4n+3):last-child) {
                            grid-column: 2 / span 2;
                        }
                    }
                }
                @container(734px <= width <= 949px) {
                    --_item-width: calc(100cqw / 6 - 1rem);
                    .group {
                        &:nth-child(3n+1):last-child {
                            grid-column: 3 / span 2;
                        }
                        &:nth-last-child(2):has(~ &:nth-child(3n+2):last-child) {
                            grid-column: 2 / span 2;
                        }
                    }
                }
                @container(540px  < width < 734px) {
                    --_item-width: calc(100cqw / 4 - 1rem);
                    .group {
                        &:last-child:nth-child(odd) {
                            grid-column: 2 / span 2;
                        }
                    }
                }
                @container(max-width: 540px) {
                    --_item-width: var(--size-96);
                    grid-template-columns: var(--_item-width) 1fr;
                    .group {
                        grid-template-columns: subgrid;
                        grid-template-rows: 1fr;
                        grid-row: span 1;
                        gap: var(--space-m);
    
                        .directory-photo {
                            grid-column: 1 / span 1;
                        }
                        .directory-details {
                            grid-column: 2 / -1;
                            grid-row: 1 / -1
    
                        }
                    }
                }
            } /*Grid syntax and logic for faculty listings. By default faculty "cards" are center aligned in a scalable grid*/
            .group {
                &::before, &::after {
                    display: none;
                }
                display: grid;
                grid-template-columns: subgrid;
                grid-template-rows: subgrid;
                grid-row: span 2;
                grid-column: span 2;
                container-type: unset;
                margin-block-end: 0;
                overflow: clip;
                /*Formats group elements, or faculty cards with a grid syntax that leverages subgrid for consistantly aligned sub items*/
                &:not(:has(.directory-photo))::before {
                    content: "person";
                    display: block;
                    background: var(--block-tertiary-lighter);
                    color: var(--text-primary);
                    font-family: var(--icon-font);
                    font-size: calc(var(--_item-width) * 2 + 1rem);
                    aspect-ratio: 4/5;
                    font-variation-settings: 'FILL' 1;
                    line-height: 1.2;
                    grid-column: 1 / -1;
    
                    @container(max-width: 540px) {
                        font-size: var(--_item-width);
                        grid-column: 1 / span 1;
                    }
                } /*Placeholder thumbnail "image" for faculty members without a photo*/
                .directory-photo {
                    display: block;
                    grid-row: 1 / span 1;
                    grid-column: 1 / -1;
                    aspect-ratio: 4/5;
                    img {
                        width: 100%;
                        height: 100%;
                        object-fit: cover;
                        margin: 0;
                    } 
                } /*Faculty photo layout and sizing syntax*/
                .directory-details {
                    grid-column: 1 / -1;
                    grid-row: 2 / -1;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                } /*Default layout syntax for faculty detail information*/
                .h4-style span {
                    display: inline-block;
                } /*Adjustments for faculty name items when the initial .h4-style is broken up into individual span elements. This simply prevents them from stacking by default*/
                :is(.business-name, .job-title, .education, .email, .bus-phone) {
                    font-size: var(--text-size-s);
                    color: var(--text-label);
                } /*Default size and color updates for auxillary faculty detail information elements*/
            }
        } /*Updated defaults for faculty list type of content, distinct from affinity. See specifc comments for details*/
    
    /*Header Widget*/
        :is([class*="block"]):has(.header) {
            margin-block-end: 0;
        } /*Removes updated default bottom margin on header widgets*/
    
    /*Media Widget*/
        .media{
            figure {
            &::before, &::after {
                display: none;
            }
            display: grid;
            grid-template-columns: [img-start detail-start] 1fr [img-end detail-end];
            grid-template-rows: [img-start] auto [img-end detail-start] auto [detail-end];
            gap: var(--space-m);
    
            &:has(.left) {
                grid-template-columns: [img-start] clamp(6.25rem, 40%, 12.5rem) [img-end detail-start] 1fr [detail-end];
                grid-template-rows: [img-start detail-start] auto [img-end detail-end]
            }
            &:has(.right) {
                grid-template-columns:  [detail-start] 1fr [detail-end img-start] clamp(6.25rem, 40%, 12.5rem) [img-end];
                grid-template-rows: [img-start detail-start] auto [img-end detail-end];
            }
            :is(img) {
                grid-area: img;
                width: 100%;
                max-width: unset;
                }
                figcaption {
                display: block;
                grid-area: detail;
                p {
                    margin: 0;
                }
                .play-button {
                    img {
                        display: none;
                    }
                    margin: 0
                }
                }
                .h4-style span {
                display: inline-block;
                }
                :is(.description, .caption, .file-count) {
                font-size: var(--text-size-s);
                color: var(--text-label);
                }
            }
            @container (width < 14.6875rem) {
            .group:has(.left, .right) {
                grid-template-columns: [img-start detail-start] 1fr [img-end detail-end];
                grid-template-rows: [img-start] auto [img-end detail-start] auto [detail-end];
                
                img {
                    width: 100%;
                }
            }
    
            }
        } /*Updated default layout and minor styling syntax for media widget elements*/
    
    /*Page Titles*/
        hgroup {
                .page-title:not(/*.page-title-level-1,*/ :last-child) {
                    display: none;
                }
        } /*Updates to display behavior for page title widgets. defaults to hiding all page title elements except the current page title*/
    
    /*Recent Games*/
        .athleticrecentgames {
                .container-fluid {
                    padding: 0;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    gap: var(--space-m);
                    align-items: stretch;
                }
                .game {
                    margin: 0;
                    border: var(--border-size-1) solid var(--border-color);
                    background: #ffffff;
                    &:is(.Away) {
                        .row-fluid:has(.schedule-date)::after {
                            content:"Away";
                        }
                    }
                    &:is(.Home) {
                        .row-fluid:has(.schedule-date)::after {
                            content:"Home";
                        }    
                    }
                    .row-fluid {
                        [class*="span"],
                        .ath-schedule-col {
                            width: 100%;
                            margin-inline-start: 0;
    
                        }
                        &:has(.schedule-date) {
                            &::before {
                                display: none;
                            }
                            &::after {
                                line-height: 1.5rem;
                            }
                            display: flex;
                            flex-direction: row;
                            flex-wrap: nowrap;
                            gap: var(--space-m);
                            justify-content: space-between;
                            background:var(--block-secondary);
                            color: var(--text-invert);
                            box-sizing: border-box;
                            padding: var(--space-s) var(--space-m);
                            .schedule-date {
                                color: inherit;
                                font-family: var(--text-ff-display);
                                font-size: var(--text-size-l);
                                font-weight: var(--text-weight-normal);
                                letter-spacing: var(--text-ls-default);
                                line-height: var(--text-lh-tight);
                                margin: 0;
                                font-variant-numeric: lining-nums;
    
                            }
                        }
                        &:has(.ath-game-info) {
                            display: flex;
                            flex-direction: column;
                            flex-wrap: nowrap;
                            justify-content: stretch;
                            padding: var(--space-m);
                            box-sizing: border-box;
                            .ath-game-info {
                                display: grid;
                                grid-template-columns: 1fr auto;
                                gap: 0 var(--space-m);
                                .schedule-title {
                                    font-family: var(--text-ff-body);
                                    font-size: var(--text-size-m);
                                    font-weight: var(--text-weight-bold);
                                    letter-spacing: var(--text-ls-extrawide);
                                    text-transform: uppercase;
                                    margin-block: 0 var(--space-s);
                                
                                }
                                .row-fluid:has([class*="rescheduled"], [class*="practice"], [class*="cancelled"]) {
                                    grid-column: 2 / span 1;
                                    [class*="rescheduled"], [class*="practice"] {
                                        font-size: var(--text-size-s);
                                        font-style: italic;
                                        color: var(--text-label);
                                    }
                                    [class*="cancelled"] {
                                        font-size: var(--text-size-s);
                                        font-style: italic;
                                        color: #cc0000;
                                    }
                                }
                                .left {
                                    grid-column: 1 / span 1;
                                }
                                .right {
                                    grid-column: 2 / span 1;
                                }
    
                            }
                        }
                        span:has(.schedule-highlights) {
                            justify-items: end;
                        }
                    }
                    .opponents {
                        display: grid;
                        grid-template-columns: 1fr auto;
                        padding-inline: var(--space-m);
                        box-sizing: border-box;
                        gap: 0 1fr;
                        > div {
                            float: none !important;
                            width: 100% !important; /*Needed to overwrite page engine inline styling for these items*/
                        }
                        br {
                            display:none;
                        }
                    }
                }
        } /*Updates to layout, display behavior, and minor style adjustments to the default Recent Games widget. Includes logic to account for when specific elements are either present or vacant*/
    
    /*Search*/
        .search {
            .content-wrap {
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                gap: var(--space-s);
                color: var(--text-default);
    
                .search-box{
                    border: none;
                    padding: 0;
                    background: transparent;
                    font-family: inherit;
                    color: var(--text-default);
                    &::placeholder {
                        font-family: inherit;
                        font-size: inherit;
                        color: inherit;
                        font-style: inherit;
                    }
                }
                .button {
                    margin: 0;
                    text-transform: none;
                    font-family: var(--icon-font);
                    font-size: var(--text-size-l);
                    letter-spacing: 0;
                    font-weight: var(--text-weight-normal);
                    border: none;
                    background: transparent;
                    :is(&::before, &::after) {
                        display: none;
                    }
                }
            }
        } /*Updates to layout and display behavior of search elements. Brings visuals inline with other defaults*/
    
    /*Team List*/
        .team-list {
            &::before, &::after {
                display: none;
            }
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            gap: var(--space-m);
    
            .column {
                display: flex;
                flex-direction: column;
                align-items: start;
                gap: var(--space-s);
                width: auto;
                min-width: unset;
                padding: 0;
                flex: 1 1 max-content;
            }
            .h3-style {
                font-family: var(--text-ff-display);
                font-size: var(--text-size-m);
                font-weight: var(--text-weight-normal);
                letter-spacing: var(--text-ls-extrawide);
                color: inherit;
                text-transform: uppercase;
                margin-block: 0 var(--space-s);
                
            }
            .team-link {
                font-family: var(--rm-text);
                color: var(--rm-color);
                font-size: var(--rm-text-size);
                font-weight: var(--rm-text-weight);
                text-transform: var(--rm-text-tt);
                letter-spacing: var(--rm-text-ls);
                line-height: var(--text-lh-tight);
                text-decoration: none;
                padding: var(--rm-padding);
                display: inline-flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: center;
                transition: var(--rm-transition);
                cursor: pointer;
                
                &::after {
                    content: var(--rm-icon);
                    font-family: var(--icon-font);
                    color: var(--rm-icon-color);
                    font-size: 1.5em;
                    display: inline-flex;
                    justify-content: center;
                    margin-inline: var(--rm-icon-gap) 0;
                    transition: background var(--time-250) var(--ease-1), transform var(--time-700) var(--ease-elastic-in-out-3);
                    align-items: center;
                    line-height: .875;
                    font-weight: var(--text-weight-normal);
                    width: .5ch;
                    transform: scaleX(var(--_icon-scale-value, 1));
                    
                }
                &:hover {
                    --rm-color: var(--text-link);
                    color: var(--rm-color);
                    --_icon-scale-value: -1;
                    
                }
            }
        } /*Updates to layout and display behavior for the Team List widget. Mainly sets the list to display in a more responsive flex container, and styles links to use minor read more button styling*/
    
    /*Upcoming Games*/
        .athleticupcominggames,
        .athleticteamschedule {
            .content-wrap {
                padding: 0;
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: var(--space-m);
                align-items: stretch;
            }
            .game {
                margin: 0;
                border: var(--border-size-1) solid var(--border-color);
                display: grid;
                grid-template-columns: 1fr auto;
                gap: 0 var(--space-m);
                background: #ffffff;
                .ath-row {
                    padding-inline-start: var(--space-m);
                    grid-column: 1 / span 1;
                    &:has(time) {
                        grid-column: 1 / -1;
                        grid-row: 1 / span 1;
                        display: flex;
                        flex-direction: row;
                        flex-wrap: nowrap;
                        align-items: center;
                        gap: var(--space-m);
                        background-color: var(--block-secondary);
                        color: var(--text-invert);
                        padding: var(--space-s) var(--space-m);
                        .game-date {
                            flex: 1 1 100%;
                            display: flex;
                            flex-direction: row;
                            flex-wrap: nowrap;
                            justify-content: space-between;
                            align-items: center;
                            gap: var(--space-m);
                            margin-block-end: 0;
                            color: inherit;
                            .schedule-date {
                                color: inherit;
                                font-family: var(--text-ff-display);
                                font-size: var(--text-size-l);
                                font-weight: var(--text-weight-normal);
                                letter-spacing: var(--text-ls-default);
                                line-height: var(--text-lh-tight);
                                margin: 0;
                                font-variant-numeric: lining-nums;
                            }
                            .schedule-time {
                                font-weight: var(--text-weight-bold);
                                letter-spacing: var(--text-ls-wide);
                            }
                        }
                        .schedule-site {
                            font-size: var(--text-size-s);
                            font-weight: var(--text-weight-bold);
                            letter-spacing: var(--text-ls-wide);
                            &:empty {
                                display: none;
                            }
                        }
                        &::before, &::after {
                            display: none;
                        }
                        + .ath-row {
                            padding-block-start: var(--space-m);
                        }
                    } 
                    &:has(.game-category, .game-status) {
                        grid-column: 2 / -1;
                        grid-row: 2 / span 100;
                        padding: var(--space-m) var(--space-m) var(--space-m) 0;
                        div {
                            display: block;
                            float: none;
                            text-align: end;
                            font-size: var(--text-size-s);
                            font-style: italic;
                            color: var(--text-label);
                            &:is([class*="cancelled"]){
                                color: #cc0000;
                            }
                        }
                        + .ath-row {
                            padding-block-start: var(--space-m);
                        }
                    }
                    &:has(.schedule-title) {
                        .schedule-title {
                            display: block;
                        }
                        .league-status {
                            float: none;
                            text-align: start;
                            font-size: var(--text-size-xs);
                            font-style: italic;
                            color: var(--text-label);
                        }
                        &:not(:last-child) {
                            padding-block-end: var(--space-s);
                        }
                    }
                    &:has(.schedule-vs) {
                        font-size: var(--text-size-s);
                        .schedule-vs {
                            font-style: italic;
                            color: var(--text-label);
                        }
                        .opponents {
                            display: flex;
                            flex-direction: row;
                            flex-wrap: wrap;
                            gap: .5rem var(--space-m);
                            .opponent {
                                display: inline-block;
                                width: auto;
                                .schedule-opponent {
                                    display: block;
                                    width: max-content;
                                }
                            }
                        }
                    }
                    &:has(.schedule-location, .schedule-buttons) {
                        padding-block-start: var(--space-s);
                        .schedule-location {
                            font-size: var(--text-size-s);
                            font-style: italic;
                            color: var(--text-label);
                        }
                        .schedule-buttons {
                            float: none;
                        }
                    }
                    &:is(:last-child) {
                        padding-block-end: var(--space-m)
                    }
                }
            }
        } /*Updates to layout and display behavior for the Upcoming Games widget, and athletic schedules. Cleans up the layuout defaults into something more managable, and brings some styling inline with other defaults*/
    
    /*Calendar*/
        a.ical-feed {
           background-color: var(--block-link);
           font-size: 0;
           line-height:18px; 
           display: flex;
        }/*Updates to default appearance of the calendar's iCal feed button to match branding and other defaults*/
        .calendargrid,
        .calendarfilter {
            .grid-control-bar {
                float: none;
                text-align: start;
            }
            .button-group{
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                gap: var(--space-s) var(--space-m);
                align-items: center;
                
                li {
                    display: flex;
                    margin: 0;
                }
                .button {
                    margin: 0;
                    &.active {
                        background-color: unset;
                        color: var(--rm-color);
                    }
                }
            }
            .page-calendar-grid {
                form {
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    gap: var(--space-s);
                }
            }
            .grid-filter,
            .calendar-filter-form {
                &::before, &::after {
                    display: none;
                }
                display: flex;
                flex-direction:column;
                flex-wrap: nowrap;
                gap: var(--space-m);
    
                .filter-list {
                    &::before, &::after {
                        display: none;
                    }
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    gap: var(--space-m);
    
                }
                .filter-group {
                    &::before, &::after {
                        display: none;
                    }
                    display: flex;
                    flex-direction:row;
                    flex-wrap: wrap;
                    gap: var(--space-m) var(--space-l);
                }
                .filter-group-title {
                    margin: 0;
                    flex: 1 1 100%;
                    display: flex;
                    justify-content: space-between;
                    align-items:center;
                }
                .filter-group-list {
                    margin: 0;
                    min-width: unset;
                    padding: 0;
                    float: none;
                }
                .collapse-btn {
                    position: relative;

                    border-color: var(--border-link);
                    border-width: var(--border-size-2) 0 0 var(--border-size-2);
                    margin-block-start: 0;
                    float: none;
                    padding: 0;
                    inline-size: var(--size-8);
                    block-size: var(--size-8);
                    vertical-align: middle;
                    transform: rotate(45deg);
                    transition: transform var(--time-700) var(--ease-spring-3), inset-block-start var(--time-500) var(--ease-spring-3);
                    &.hide {
                        transform: rotate(225deg);
                        inset-block-start: -25%
                    }
                }
                .filter-item {
                    .checkbox {
                        grid-auto-flow: column;
                    }
                }
            }
            .calendar-grid-buttons {
                &::before, &::after {
                    display: none;
                }
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                gap: var(--space-s);
                justify-content: space-between;
                align-items: center;
                li {
                    display: block;
                    flex: 1 1 max-content;
                    .calendar-button {
                        margin: 0;
                        font-family: var(--icon-font);
                        font-size: 2rem;
                    }
                    .selected-date {
                        margin: 0;
                    }
                }
            }
            .large-calendar-grid {
                display: grid;
                grid-template-columns: repeat(7, calc(100cqw / 7));
                grid-template-rows: repeat(6, auto);
                border: var(--border-size-1) solid var(--border-color);
                min-width: unset;
                background: var(--block-tertiary-lighter);
                .calendar-header {
                    grid-row: 1 / span 1;
                    grid-column: 1 / -1;
                    display: grid;
                    grid-template-columns: subgrid;
                    background: var(--block-primary);
                    color: var(--text-invert);
                    li {
                        display: block;
                        font-family: var(--text-ff-display);
                        font-size: var(--text-size-m) /*var(--text-size-s)*/;
                        font-weight: var(--text-weight-bold);
                        line-height: var(--text-lh-tight);
                        letter-spacing: var(--text-ls-wide);
                        text-transform: uppercase;
                        background: transparent;
                        border: none;
                        min-width: unset;
                        min-height: unset;
                        padding: var(--space-s);
                        text-transform: uppercase;
                    
                    }
                }
                .calendar-days {
                    display: grid;
                    grid-template-columns: subgrid;
                    grid-column: 1 / -1;
                    width: unset;
                    border-block-start: var(--border-size-1) solid var(--border-color);
                    min-height: 4.5rem;
                }
                .calendar-list {
                    grid-column: 1 / -1;
                    border: none;
                    border-block-start: var(--border-size-1) solid var(--border-color);
                }
                .calendar-days,
                .calendar-list {
                    > :is(li, div) {
                        &:not(:first-child) {
                            border-inline-start: var(--border-size-1) solid var(--border-color);
                        }
                        border:none;
                        background-color: transparent;
                        min-height: unset;
                        min-width: unset;
                        &:is(.current-month) {
                            background-color: var(--block-default);
                        }
                        &:is(.has-events) {
                            --_calendar-date-bg: var(--block-primary);
                            --_calendar-date-color: var(--text-invert);
                        }
                        &:is(.active) {
                            --_calendar-date-bg: var(--block-link);
                            --_calendar-date-color: var(--text-invert);
                        }
                        .day {
                            min-height: unset;
                            padding: var(--space-s);
                            box-sizing: border-box;
                            color: var(--text-default);
                            display: flex;
                            flex-direction: column;
                            flex-wrap: nowrap;
                            gap: var(--space-s);
                        }
                        .date {
                            padding: var(--space-s);
                            background: var(--_calendar-date-bg, transparent);
                            color: var(--_calendar-date-color, inherit);
                            font-family: var(--text-ff-body);
                            font-size: var(--text-size-s);
                            font-weight: var(--text-weight-bold);
                            line-height: var(--text-lh-tight);
                            letter-spacing: var(--text-ls-wide);
                            text-transform: none;
                            transition: var(--link-transition);
                            cursor: pointer;
                            &:hover {
                                --_calendar-date-bg: var(--block-link);
                                --_calendar-date-color: var(--text-invert);
                            }   
                        }
                        .event-data {
                            display: flex;
                            flex-direction: column;
                            flex-wrap: nowrap;
                            padding: 0;
                            font-size: var(--text-size-s);
                            --h4-font-size: 1.125em;
                            .event {
                                margin: 0;
                                &:not(:first-child) {
                                    padding-block-start: var(--space-s);
                                    margin-block-start: var(--space-s);
                                    border-block-start: var(--border-size-1) solid var(--border-color);
                                }  
                            }
                            @media (max-width: 979px) {
                                display: none;
                            }
                        }
                        .more-details {
                            font-family: var(--rm-text);
                            color: var(--rm-color);
                            font-size: var(--text-size-xs);
                            font-weight: var(--rm-text-weight);
                            text-transform: var(--rm-text-tt);
                            text-decoration: none;
                            letter-spacing: var(--rm-text-ls);
                            line-height: var(--text-lh-tight);
                            padding: var(--rm-padding);
                            display: inline-flex;
                            flex-direction: row;
                            flex-wrap: nowrap;
                            align-items: center;
                            transition: var(--rm-transition);
                            margin-block-start: var(--space-m);
                            cursor: pointer;
                            
                            &::after {
                                content: var(--rm-icon);
                                font-family: var(--icon-font);
                                color: var(--rm-icon-color);
                                font-size: 1.5em;
                                display: inline-flex;
                                justify-content: center;
                                margin-inline: var(--rm-icon-gap) 0;
                                transition: background var(--time-250) var(--ease-1), transform var(--time-700) var(--ease-elastic-in-out-3);
                                align-items: center;
                                line-height: .875;
                                font-weight: var(--text-weight-normal);
                                width: .5ch;
                                transform: scaleX(var(--_icon-scale-value, 1));
                                                         
    
                            }
                            &:hover {
                                --rm-color: var(--text-link);
                                color: var(--rm-color);
                                --_icon-scale-value: -1;
                                
                            }
                        }
                        
                        
                    }
                }
            }
        }
        .calendardatepicker {
            form {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: var(--space-m);
            }
            .button-group {
                float: none;
                text-align: start;
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                gap: var(--space-s);
                align-items: center;
                
                li {
                    display: block;
                    margin: 0;
                }
                .button {
                    margin: 0;
                    &.active {
                        background-color: unset;
                        color: var(--rm-color);
                    }
                }
            }
            .month-select {
                margin: 0;
            }
            .month-pager {
                margin: var(--space-m) 0 0 0;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items:center;
                justify-content: space-between;
                .prev-button,
                .next-button {
                    font-family: var(--icon-font);
                    float: none;
                    font-size: 1.5rem;
                    text-decoration: none;
                    margin: 0;
                    
                }
                .today-button {
                    font-size: var(--rm-text-size);
                    font-weight: var(--rm-text-weight);
                    text-transform: var(--rm-text-tt);
                    letter-spacing: var(--rm-text-ls);
                    text-decoration: none;
                    margin: 0;
                    align-self: center;
                }
            }
            .calendar-grid {
                &::before, &::after {
                    display: none;
                }
                padding: 0;
                background: transparent;
                display: grid;
                grid-template-columns: repeat(7, 1fr);
                /*grid-template-rows: repeat(6, auto);*/
                border: var(--border-size-1) solid var(--border-color);
                .calendar-header{
                    &::before, &::after {
                        display: none;
                    }
                    grid-column: 1 / -1;
                    display: grid;
                    grid-template-columns: subgrid;
                    background-color: var(--block-primary);
                    color: light-dark(var(--text-invert), var(--text-default));
                    .day-header {
                        display: block;
                        font-size: var(--text-size-s);
                        font-weight: var(--text-weight-bold);
                        line-height: var(--text-lh-tight);
                        letter-spacing: var(--text-ls-wide);
                        text-transform: uppercase;
                        background: transparent;
                        border: none;
                        min-width: unset;
                        min-height: unset;
                        padding: var(--space-s);
                        text-transform: uppercase;
                        float: none;
                        width: unset;
                        span {
                            height: unset;
                            margin: unset;
                            background-color: transparent;
                        }
                    }
                }
                .calendar-days {
                    &::before, &::after {
                        display: none;
                    }
                    grid-column: 1 / -1;
                    grid-row: 2 / span var(--_weeks, 5);
                    display: grid;
                    grid-template-columns: subgrid;
                    grid-template-rows: subgrid;
                    &:has(.week5){
                        --_weeks: 6;
                    }
                    .day {
                        float: none;
                        width: unset;
                        &:is(.has-events) {
                            --_day-picker-color: var(--link-color);
                        }
                        &:is(.today) {
                            --_day-picker-bg: var(--block-primary);
                            --_day-picker-color: var(--text-invert);
                        }
                        &:is(.selected-day) {
                            --_day-picker-color: light-dark(var(--text-invert), var(--text-default));
                            --_day-picker-bg: var(--block-link);
                        }
                        &:is(.other-month) {
                            background: rgb(from var(--block-gray) r g b / .5);
                            --_day-picker-color: var(--text-label);
                        }
    
                        a {
                            font-size: var(--text-size-s);
                            font-weight: var(--text-weight-bold);
                            line-height: var(--text-lh-tight);
                            letter-spacing: var(--text-ls-default);
                            border: none;
                            height: unset;
                            margin: var(--space-s);
                            padding: var(--space-s);
                            text-transform: uppercase;
                            background: var(--_day-picker-bg, transparent);
                            color: var(--_day-picker-color, inherit);
    
                            &:hover {
                                --_day-picker-color: light-dark(var(--text-invert), var(--text-default));
                                --_day-picker-bg: var(--block-link);
                            }
                        }
                    }
                }
            }
        }/*Updates to default calendar page items. Mainly layout and display behavior to make it far more responsive with modern layout strategies (flex and grid), and some style updates to bring elements inline with other defaults*/
    /*News Archive*/
        .newsarchivedatepicker {
            .datepicker-control {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: var(--space-m);
            }
            .container-fluid {
                padding: 0;
            }
            .year-container{
                .row-fluid {
                    &::before, &::after {
                        display: none;
                    }
                    display: grid;
                    grid-template-columns: 1fr 1fr 1fr;
                    text-align: center;
                    :empty {
                        display: none;
                    }
                    :is(span, a) {
                        width: unset;
                        min-height: unset;
                        margin: 0;
                        float: none;
                        align-self: center;
                        line-height: 1;
                    }
                    .prev-year,
                    .next-year {
                        font-family: var(--icon-font);
                        font-size: 1.5rem;
                        text-decoration: none;
                    }
                }
            }
            .month-container {
                .row-fluid {
                    &::before, &::after {
                        display: none;
                    }
                    display: flex;
                    flex-direction: row;
                    flex-wrap: wrap;
                    gap: var(--space-m);
                }
                .span12 {
                    width: unset;
                    margin: 0;
                    float: none;
                    flex: 1 1 max-content;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    gap: var(--space-m);
                }
                button {
                    display: flex;
                    flex-direction: row;
                    flex-wrap: nowrap;
                    justify-content: center;
                    align-content: stretch;
                    align-items: center;
                    gap: var(--space-s);
                    position: relative;
                    text-decoration: none;
                    color: var(--btn-color);
                    background-color: var(--btn-bg);
                    border: var(--btn-border);
                    border-radius: var(--btn-radius);
                    font-family: var(--btn-text);
                    font-size: var(--btn-text-size);
                    font-weight: var(--btn-text-weight);
                    text-align: center;
                    line-height: var(--btn-text-lh);
                    letter-spacing: var(--btn-text-ls);
                    text-transform: var(--btn-text-tt);
                    padding: var(--btn-padding);
                    box-shadow: var(--btn-shadow);
                    flex: 1 1 100%;
                    margin: 0;
                    transition: var(--btn-transition);                    
                    
                    &:is(.selected-month) {
                        --btn-bg: var(--_btn-secondary, var(--block-secondary));
                        --btn-color: var(--_btn-secondary-text, var(--link-color));            
                    }
    
                    &:hover {
                        --btn-bg: var(--bg-default);
                        --btn-border: var(--border-size-2) solid currentcolor;
                        --btn-color: var(--link-color);
                        --btn-shadow: var(--shadow-6);                        
                    }
                }
            }
        } /*Updates to default news archive page items. Mainly layout and display behavior to make it far more responsive with modern layout strategies (flex and grid), and some style updates to bring elements inline with other defaults*/
    
    /*School Store*/
        .storeproducts {
            .content-wrap {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                gap: var(--space-m);
            }
            .row-fluid {
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                gap: var(--space-m);
                justify-content: center;
                &:is(form > &) {
                    justify-content: space-between;
                }
                &::before, &::after {
                    display: none;
                }
                [class*="span"] {
                    width: auto;
                    margin: 0;
                    float: none;
                    &:is(:empty) {
                        display: none;
                    }
                }
                .button {
                    margin: 0;
                }
            }
            .container-fluid {
                padding: 0;
                .no-bullets {
                    gap: var(--space-m);
                    /* li:has(hr) {
                        display: none;
                    } */
                }
                .group {
                    &::before, &::after {
                        display: none;
                    }
                    display: grid;
                    grid-template-columns: [img-start detail-start cart-start] 1fr [img-end detail-end cart-end];
                    grid-template-rows: [img-start] auto [img-end detail-start] auto [detail-end cart-start] auto [cart-end];
                    gap: var(--space-m) 0;
        
                    &:has(.left) {
                        grid-template-columns: [img-start] clamp(6.25rem, 35%, 12.5rem) [img-end detail-start cart-start] 1fr [detail-end cart-end];
                        grid-template-rows: [img-start detail-start] auto [detail-end cart-start] auto [img-end cart-end]
                    }
                    &:has(.right) {
                        grid-template-columns:  [detail-start cart-start] 1fr [detail-end cart-end img-start] clamp(6.25rem, 35%, 12.5rem) [img-end];
                        grid-template-rows: [img-start detail-start] auto [detail-end cart-start] auto [img-end cart-end];
                    }
                     .h4-style span {
                        display: inline-block;
                     }
                     .row-fluid {
                        display: grid;
                        grid-template-columns: subgrid;
                        grid-template-rows: subgrid;
                        grid-row: 1 / -1;
                        grid-column: 1 / -1;
    
                        div:has(img) {
                            grid-area: img;
                            width: 100%;
                            img {
                                width: 100%;
                            }
                         }
                         div:has(.item-name) {
                            grid-area: detail;
                            display: flex;
                            flex-direction: column;
                            flex-wrap: nowrap;
                         }
                         div:has(.item-price) {
                            grid-area: cart;
                         }
                     }
                }
                @container (width < 14.6875rem) {
                    .group:has(.left, .right) {
                        grid-template-columns: [img-start detail-start cart-start] 1fr [img-end detail-end cart-end];
                        grid-template-rows: [img-start] auto [img-end detail-start] auto [detail-end cart-start] auto [cart-end];
                        img {
                            width: 100%;
                        }
                    }
                }
            }
            .featured {
                font-family: var(--text-ff-body);
                color: light-dark(var(--text-primary), var(--text-invert));
                font-style: italic;
                font-size: var(--text-size-s);
                line-height: 1;
                margin: 0;
            }
            .item-name {
                margin: 0;
            }
            .item-description {
                font-family: var(--text-ff-body);
                font-size: var(--text-size-default);
                font-weight: var(--text-weight-normal);
                color: var(--text-default);
                margin: var(--space-m) 0 0 0;
            }
            .button.addl-info {
                margin-block-start: var(--space-m);
    
            }
            .item-price {
                display:inline-block;
                font-family: var(--text-ff-body);
                color: var(--text-default);
                font-weight: var(--text-weight-normal);
                line-height: var(--text-lh-tight);
                font-size: var(--text-size-default);
                margin: 0;
                &:is(.linethrough) {
                    color: var(--text-label);
                    font-style: italic;
                }
            }
            .item-sale-price {
                display:inline-block;
                font-family: var(--text-ff-body);
                font-weight: var(--text-weight-normal);
                font-size: var(--text-size-default);
                line-height: var(--text-lh-tight);
                color: light-dark(crimson, lightcoral);
                margin: 0;
            }
            .item-sale-label {
                font-family: var(--text-ff-body);
                font-size: var(--text-size-s);
                font-weight: var(--text-weight-normal);
                font-style: italic;
                color: var(--text-label);
                margin: 0;
            }
            .button.add-to-cart {
                justify-self: start;
                margin-block-start: var(--space-m);
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                justify-content: center;
                align-content: stretch;
                align-items: center;
                gap: var(--space-s);
                position: relative;
                text-decoration: none;
                color: var(--btn-color);
                background-color: var(--btn-bg);
                border: var(--btn-border);
                border-radius: var(--btn-radius);
                font-family: var(--btn-text);
                font-size: var(--text-size-s) /*var(--text-size-xs)*/;
                font-weight: var(--btn-text-weight);
                text-align: center;
                line-height: var(--text-lh-tight);
                letter-spacing: var(--btn-text-ls);
                text-transform: var(--btn-text-tt);
                padding: var(--space-m);
                box-shadow: var(--btn-shadow);
                flex: 1 1 100%;
                transition: var(--btn-transition);
                color-scheme: light only;
                &:hover {
                    --btn-bg: var(--bg-default);
                    --btn-color: var(--link-color);
                    --btn-shadow: none;
                }
                &::before, &::after {
                    display: none;
                }
            }
        } /*Updates to default display behavior to school store related elements. Minor styling updates to bring elements inline with other defaults*/
    /*Mobile Navigation*/
        .page-block:has(.mobilemenu) {
            --mm-icon: "menu";
            --mm-icon-close: "close";
            --nav-padding: var(--space-m);
            position: absolute;
            pointer-events: none;
            inset: 0 0 auto 0;
            z-index: 99; /*Sets up default icons and mobile menu positioning, as well as setting a high z-index to ensure this sits ontop of everything*/
            .mm {
                display: grid;
                grid-template: auto 1fr / 1fr;
            }
            &:has(.dl-menuopen) {
                --mm-icon: var(--mm-icon-close);
                .mm-button-container {
                    background-color: var(--_mm-nav-bg-h, var(--bg-secondary));
                }
                
            }/*Sets up mobile menu as a grid element, updates the menu icon to the close state when the menu is open rather than relying on SWS's unreliable implementation, and gives the top bar a background color when the menu is open*/
            .mm-button-container {
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                justify-content: stretch;
                position: relative;
                background: var(--_mm-nav-bg, transparent);
                transition: background var(--time-250) var(--ease-1);
                grid-area:  1 / 1 / span 1 / -1;
                z-index: 99;
                pointer-events: initial;
                > li {
                    width: 100%;
                    align-content: center;
                }/*Sets up main bar with open and login buttons as a flex container, provides minor transition syntax the background to change color when the menu is open*/
                .mm-button {
                    margin: 0;
                    aspect-ratio: 1;
                    display: inline-flex !important;
                    justify-content: center;
                    --rm-icon-gap: 0;
                    background: none;
                    &::before {
                        padding: var(--space-s);
                        content: var(--mm-icon);
                    }
                }/*Updates to default mobile menu open button display behavior and visuals*/
                .mm-login-button {
                    height: auto;
                    span.label {
                        margin-block-start: 0;
                        display: block;
                    }
                }/*Updates to default mobile menu login button display behavior*/ 
            }
            .mm-container {
                background: var(--bg-default);
                left: 0;
                inset-block-start: -110%;
                grid-area: 2 / 1 / -1 / -1;
                transition: inset-block-start var(--time-500) var(--ease-5) var(--time-250), opacity var(--time-250) var(--ease-1);
                position: relative;
                pointer-events: initial;
                &.dl-menuopen {
                    inset-block-start: 0;
                }
            } /*Sets mobile menu item container's position and gives minor updates to its entry animation*/
            .mm-item {
                .mm-text {
                    font-family: var(--nav-text);
                    color: var(--nav-color);
                    background: var(--nav-bg);
                    font-size: var(--nav-text-size);
                    font-weight: var(--nav-text-weight);
                    text-transform: var(--nav-text-tt);
                    letter-spacing: var(--nav-text-ls);
                    line-height: var(--text-lh-tight);
                    padding: var(--nav-padding);
                    flex: 1 1 auto;
    
                    &:hover {
                        background: var(--nav-bg);
                        color: var(--text-link);
                        text-decoration: none;
                    }
                }
                &.active-item {
                    > .mm-text {
                        color: var(--text-link);
                    }
                }/*Updates to default mobile menu item styling to fall inline with other defaults*/
                div:has(.mm-sub-ind) {
                    padding: 0;
                    display: block;
                    .mm-sub-ind {
                        display: flex;
                        background-image: none;
                        float: none;
                        font-size: 0;
                        color: var(--text-link);
                        text-indent: unset;
                        padding: .625rem;
                        transition: transform var(--time-700) var(--ease-spring-5);
                        &::before {
                            content: var(--_mm-sub-ind, "chevron_right");
                            font-family: var(--icon-font);
                            font-size: var(--size-24);
    
                            aspect-ratio: 1;
                            height: 100%;
                            line-height: 100%;
                            
                        }
                        &.subIndClicked {
                            transform: rotate(90deg);
                        }
                    }
                }/*Updates to mobile menu submenu container and items*/
                .dl-submenu {
                    --nav-icon: "chevron_right";
                    --nav-text-size: var(--text-size-default);
                    --nav-text-tt: none;
                    --nav-text-ls: 0;
                    --nav-padding: var(--space-m) 0;
                    height: 0;
                    opacity: 0;
                    
                    transition:display var(--time-500) var(--ease-1), opacity var(--time-250) var(--ease-1), height var(--time-700) var(--ease-spring-1);
                    transition-behavior: allow-discrete;
                    interpolate-size: allow-keywords;
                    .mm-item {
                        padding-inline-start: var(--space-xl);
                    }
                    &.dl-submenuOpen {
                        opacity: 1;
                        height: auto;
    
                        @starting-style {
                            opacity: 0;
                            height: 0;
                        }
                    }
                }/*Updates to mobile menu submenu indicator*/
            }
        } /*Updates to default display and styling of the mobile menu. See specific comments for details*/
    /*Breadcrumbs*/
        .breadcrumb {
            ul {
                display: flex;
                flex-direction: row;
                flex-wrap:wrap;
                align-items: center;
                gap: var(--space-s);
                li {
                    padding: 0;
                    display: block;
                    font-family: var(--nav-text);
                    font-size: var(--nav-text-size);
                    font-weight: var(--nav-text-weight);
                    text-transform: var(--nav-text-tt);
                    letter-spacing: var(--nav-text-ls);
                    line-height: var(--text-lh-tight);
                    a {
                        display: block;
                        color: var(--nav-color);
                        padding: var(--nav-padding);
                        cursor: pointer;
                        text-decoration: none;
                        &:hover {
                            --nav-color: var(--link-color);
                        }
                    }
                    &.separator {
                        margin: 0;
                        padding: var(--nav-padding);
                    }
                    &.current-crumb {
                        padding: var(--nav-padding);
                        color: var(--link-color);
                    }
                    .home-link {
                        font-family: var(--icon-font);
                        font-size: var(--text-size-l);
                        font-variation-settings: 'FILL' 1;
                        padding: 0;
                    }
                }
            }
    
        }
    /*Menus*/
        :where(nav[class*="menu"]) {
            .menu-item {
                color: var(--nav-color);
                > a {
                    background: var(--nav-bg);
                    color: inherit;
                    font-family: var(--nav-text);
                    font-size: var(--nav-text-size);
                    font-weight: var(--nav-text-weight);
                    text-decoration: none;
                    text-transform: var(--nav-text-tt);
                    letter-spacing: var(--nav-text-ls);
                    line-height: var(--text-lh-tight);
                    padding: var(--nav-padding) /*!important*/;
                    border-radius: var(--nav-radius);
                    border: var(--nav-border);
                    box-shadow: var(--nav-shadow);
                }
                &:is(.active, :hover) {
                    color: var(--nav-color-hover);
                }
            }
            .submenu {
                color: var(--nav-color);
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                gap: var(--nav-gap);
                background: var(--nav-box-bg);
                border: var(--nav-box-border);
                padding: var(--nav-box-padding);
                border-radius: var(--nav-box-radius);
                box-shadow: var(--nav-box-shadow);
                &:is(.menu-type-horizontal.menu-direction-down &) {
                    flex-direction: column;
                    flex-wrap: nowrap;
                    --nav-padding: var(--space-m) var(--space-l);
                    --nav-box-padding: var(--space-s) 0;
                    --nav-icon: "chevron_right";
                    .menu-item > a {
                        justify-content: space-between;
                    }
                }
            }
        }
        nav[class*="menu"] {
            ul li.has-sub-menu a {
                padding: var(--nav-padding);
            }
            .menu-item > a :is(.arrow, .icon) {
                background: transparent;
                position: relative;
                inline-size: fit-content;
                /* block-size: fit-content; */
                align-items: center;
                min-inline-size: unset;
                min-block-size: unset;
                border: none;
                inset: 0;
                display: flex;
                text-align: end;
                margin: 0;
                &::before {
                    content: var(--nav-icon);
                    color: var(--nav-icon-color);
                    font-family: var(--icon-font);
                    font-size: var(--nav-icon-size);
                    font-weight: var(--text-weight-normal);
                    background: var(--nav-icon-bg);
                    border-radius: var(--nav-icon-radius);
                    line-height: 1;
                    align-content: center;
                    width: var(--nav-text-size);
                    height: 1em;
                }
            }
        }
        /*Horizontal*/
        nav[class*="menu"] {
            
        }
        .menu-type-horizontal {
            > ul {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                gap: var(--nav-gap);
            }
            .menu-item {
                > :where(a) {
                    display: grid;
                    grid-template-columns: 1fr auto;
                    align-content: stretch;
                    align-items: center;
                    gap: var(--nav-icon-gap);
                }
            }
        }
        /*Vertical*/
        .menu-type-vertical {
            .menu-item {
                > :where(a) {
                    --nav-icon: "chevron_right";
                    --nav-icon-size: var(--size-24);
                    display: grid;
                    grid-template-columns: 1fr auto;
                    width: 100%;
                    align-content: stretch;
                    align-items: center;
                }
            }
        }
        /*Accordion*/
        .menu-accordion {
            .menu-item {
                padding: 0;
                display: flex;
                flex-direction: column;
                > a {
                    --nav-icon: "chevron_right";
                    --nav-icon-size: var(--size-24);
                    display: grid;
                    grid-template-columns: 1fr auto;
                    width: 100%;
                    align-content: stretch;
                    align-items: center;
                    min-block-size: var(--_nav-ind-height, var(--size-32));
                    .toggle {
                        position: relative;
                        inset: 0;
                        margin: 0;
                        min-height: fit-content;
                        min-width: fit-content;
                        display: flex;
                        transition: transform var(--time-500) var(--ease-spring-3);
                        .arrow, .icon {
                            text-align: center;
                            &::before {
                                width: 1em;
                                aspect-ratio: 1;
                            }
                        }
                        &:is(.menu-item.on > a > &) {
                            transform: rotate(90deg);
                            
                        }
                    }
                }
                &:has(.submenu) .submenu {
                    --nav-gap: 0;
                    --nav-box-bg: var(--block-default);
                    --nav-box-border: none;
                    --nav-box-padding: 0;
                    --nav-box-radius: 0;
                    --nav-box-shadow: none;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    padding-inline-start: var(--space-m);
                }
            }
        }
    /*-Detail Pages-*/
        /*Announcement, Event, List, News*/
            .announcementdetail,
            .eventdetail,
            .listdetail,
            .newsdetailtext{
                .content-wrap {
                    display: flex;
                    flex-direction: row;
                    flex-wrap: wrap;
                    gap: 0 var(--space-m);
                }
                .h4-style {
                    margin: 0;
                    font-family: var(--text-ff-display);
                    color: var(--text-primary);
                    font-size: var(--text-size-xxl);
                    font-weight: var(--text-weight-normal);
                    line-height: var(--text-lh-tight);
                    margin-block: 0 var(--space-s);
                    flex: 1 1 100%;
                }
                time {
                    color: var(--text-default);
                    font-weight: var(--text-weight-bold);
                    letter-spacing: var(--text-ls-extrawide);
                    margin: 0;
                    flex: 1 1 100%;
                }
                .location {
                    padding-inline: var(--_details-padding);
                    font-size: var(--text-size-s);
                    color: var(--text-label);
                    font-style: italic;
                    flex: 1 1 100%;
                }
                .contact-info,
                .registration {
                    margin-block-start: var(--space-s);
                }
                .brief-description,
                .long-description,
                .description {
                    flex: 1 1 100%;
                    margin-block-start: var(--space-m);
                }
            } /*Updates to the default styling and display behavior for the main content on Announcements, Event, List, and News detail pages*/
    
            .newscommentlist {
                .sort-button {
                    margin-block: 0 var(--space-s);
                    --rm-icon: "swap_vert";
                    img {
                        display: none;
                    }
                    &::before {
                        order: 1;
                        margin-inline: var(--_rm-padding-start, var(--rm-icon-gap)) 0;
                    }
                }/*adjustments sort button on News detail page comment list to better align with site defaults*/
                [class*="name"] {
                    font-family: var(--text-ff-display);
                    font-weight: var(--text-weight-semibold);
                    font-size: var(--size-18);
                }
                .post-date {
                    color: var(--text-default);
                    font-size: var(--text-size-s);
                    font-weight: var(--text-weight-bold);
                    letter-spacing: var(--text-ls-extrawide);
                }
                .comment {
                    margin-block-start: var(--space-s);
                }/*Minor styling adjustments for News detail page comments to better align with site defaults*/
            } /*Updates to News detail page comment list. See specific comments for details*/
            .newscommententry {
                label {
                    color: var(--text-label);
                    font-size: var(--text-size-s);
                    line-height: 1;
                }
            } /*Adjustments to News detail page comment entry form labels*/
        
        /*Curriculum*/
            .coursedetail {
                > div {
                    margin-block-end: var(--space-l);
                    .dept-or-grade-desc {
                        font-family: var(--text-ff-display);
                        color: var(--text-primary);
                        font-size: var(--text-size-xxl);
                        font-weight: var(--text-weight-normal);
                        line-height: var(--text-lh-tight);
                        margin-block: 0 var(--space-s);
                    }
                }
            }/*Updates to default Curriculum detail page course detail information styling to better align with site defaults*/
        /*Team*/
            [class*="block"]:has(.athleticteampicker) {
                &:has(+ [class*="block"] .athleticteamnavigation) {
                    display: block !important;
                    --block-margin-end: 0;
                }
            } /*Ensures Team Picker Remains present when slecting a different tab from the team navigation*/
            .athleticteamnavigation {
                margin: 0;
                .team-nav-content {
                    margin: 0;
                    display: grid !important;
                    grid-template-rows: 0fr;
                    overflow:hidden;
                    opacity: 0;
                    transition: opacity var(--time-500) var(--ease-1), grid-template-rows var(--time-500) var(--ease-spring-1);
                    &[style=""] {
                        grid-template-rows: 1fr;
                        opacity: 1;
                        .page-block {
                            visibility: visible;
                        }
                    }
                    .page-block {
                        min-height: 0;
                        margin: 0;
                        visibility: hidden;
                        transition: visibility var(--time-500) var(--ease-spring-1);
                    }
                }
            }/*Handles layout and slide/fade animation of the new team schedule and team roster*/
            .page-row:has(.athleticteamnavigation) + .page-row {
                .page-block {
                    opacity: 1;
                    transition: opacity var(--time-250) var(--ease-1), display var(--time-250) var(--ease-1) allow-discrete;
                    &[style="display: none;"] {
                        opacity: 0;
                    }
                    @starting-style {
                        opacity: 1;
                        display: block;
                    }
                }
            }/*Handles transitions for team detail content if the athletic navigation widget is in place*/
            .team-nav {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                justify-content: var(--cnt-flex-align);
                gap: 1.5rem;
                padding: var(--space-l);
    
                button {
                    font-family: var(--nav-text);
                    color: var(--nav-color);
                    font-size: var(--nav-text-size);
                    font-weight: var(--nav-text-weight);
                    text-transform: var(--nav-text-tt);
                    letter-spacing: var(--nav-text-ls);
                    line-height: var(--text-lh-tight);
                    padding: var(--nav-padding) !important;
                    display: inline-flex;
                    flex-direction: row;
                    flex-wrap: nowrap;
                    align-items: start;
                    transition: var(--rm-transition);
                    cursor: pointer;
                    gap: var(--nav-icon-gap);
                    text-decoration: none;
                    &:hover,
                    &:is(.active) {
                        color: var(--text-link);
                    }
                }
            }/*Updates to the layout and display behavior for the Team detail page navigation widget to better align with site default navigation behavior*/
            .athleticteaminfo {
                .team-name {
                    font-family: var(--text-ff-display);
                    color: var(--text-primary);
                    font-size: var(--text-size-xxl);
                    font-weight: var(--text-weight-normal);
                    line-height: var(--text-lh-tight);
                    margin-block: 0 var(--space-s);
                }
            }/*Styles Team Name inline with .h2-style defaults*/
            .athleticteamschedulenew,
            .athleticteamrosternew {
                display: grid;
                grid-template-columns: 1fr auto;
                position: relative;
                .print-schedule-button,
                .print-roster-button {
                    float: none !important;
                    position: absolute;
                    inset-inline-end: 0;
                    inset-block-start: 0;
                }
                .h2-style {
                    display: block !important;
                }
                #athletic-schedule-data,
                #athletic-roster-data {
                    grid-column: 1 / -1;
                    overflow-x: auto !important;
                    th {
                        background: var(--table-th-bg); 
                        color: var(--table-th-color);
                        font-family: var(--table-th-text); 
                        font-size: var(--table-th-size); 
                        font-weight: var(--table-th-weight);
                        letter-spacing: var(--table-th-ls); 
                        line-height: var(--table-th-lh); 
                        padding: var(--table-th-padding); 
                        text-transform: var(--table-th-tt); 
                        border: var(--table-th-border);
                        text-align: start;
                        &:first-of-type {
                            border-radius: var(--table-th-radius-start);
                        }
                        &:last-of-type {
                            border-radius: var(--table-th-radius-end);
                        }
                    } 
                    .table-striped tbody tr {
                        &:nth-of-type(odd),
                        &:nth-of-type(even) {
                            background: transparent;
                        }
                    }
                    td {
                        vertical-align: middle;
                        background: var(--table-td-bg); 
                        color: var(--table-td-color);
                        font-family: var(--table-td-text); 
                        font-size: var(--table-td-size); 
                        font-weight: var(--table-td-weight);
                        letter-spacing: var(--table-td-ls); 
                        line-height: var(--table-td-lh); 
                        padding: var(--table-td-padding); 
                        text-transform: var(--table-td-tt); 
                        border: var(--table-td-border);
                        text-align: start;
                        &:first-of-type {
                            border-radius: var(--table-td-radius-start);
                        }
                        &:last-of-type {
                            border-radius: var(--table-td-radius-end);
                        }
                        &:is(tr:nth-of-type(even) &) {
                            --table-td-bg: var(--table-td-bg-alt);
                        }
                        &.opponent-col:not(.opp-data) {
                            font-size: 0;
                            opacity: 0;
                        }
                        a {
                            text-decoration: none;
                            font-weight: var(--table-th-weight);
                        }
                    }
                    .table-cell {
                        display:block;
                        padding: 0;
                    }
                    .schedule-highlights {
                        float: inline-start;
                    }
                    .player-detail-item {
                        display: flex;
                        flex-direction: row;
                        gap: var(--space-m);
                        align-items: center;
                        .teamCaptain {
                            display: flex;
                            background: var(--bg-primary);
                            color: var(--text-secondary);
                            font-size: var(--text-size-xs);
                            font-weight: var(--text-weight-bold);
                            margin: 0;
                            padding: 0;
                            line-height: 1;
                            border-radius: var(--radius-circle);
                            height: var(--space-l);
                            width: var(--space-l);
                            &:is(label) {
                                background: transparent;
                                font-size: inherit;
                                color: inherit;
                                font-weight: inherit;
                                margin: unset;
                                padding: unset;
                                line-height: inherit;
                                border-radius: unset;
                                place-content: center;
                                place-items: center;
                                text-indent: -.1em;
                            }
                        }
                    }
                }
            }/*Cleans up and updates formatting and layout syntax for new athletics roster and schedule*/
            .athleticteamstatistics {
                .title {
                    font-family: var(--text-ff-display);
                    font-weight: var(--text-weight-semibold);
                    font-size: var(--size-20);
                    letter-spacing: var(--text-ls-default);
                    margin-block-end: var(--space-m);
                    text-align:var(--cnt-text-align);
                }
                table {
                    border-collapse: collapse;
                    width:100cqw;
                }
                th {
                    background: var(--table-th-bg); 
                    color: var(--table-th-color);
                    font-family: var(--table-th-text); 
                    font-size: var(--table-th-size); 
                    font-weight: var(--table-th-weight);
                    letter-spacing: var(--table-th-ls); 
                    line-height: var(--table-th-lh); 
                    padding: var(--table-th-padding); 
                    text-transform: var(--table-th-tt); 
                    border: var(--table-th-border);
                    text-align: start;
                    &:first-of-type {
                        border-radius: var(--table-th-radius-start);
                    }
                    &:last-of-type {
                        border-radius: var(--table-th-radius-end);
                    }
                } 
                td {
                    vertical-align: middle;
                    background: var(--table-td-bg); 
                    color: var(--table-td-color);
                    font-family: var(--table-td-text); 
                    font-size: var(--table-td-size); 
                    font-weight: var(--table-td-weight);
                    letter-spacing: var(--table-td-ls); 
                    line-height: var(--table-td-lh); 
                    padding: var(--table-td-padding); 
                    text-transform: var(--table-td-tt); 
                    border: var(--table-td-border);
                    text-align: start;
                    &:first-of-type {
                        border-radius: var(--table-td-radius-start);
                    }
                    &:last-of-type {
                        border-radius: var(--table-td-radius-end);
                    }
                    &:is(tr:nth-of-type(even) &) {
                        --table-td-bg: var(--table-td-bg-alt);
                    }
                }
            }/*Updated default styling and layout for team statistics*/
    
    /*------------------------------------------------------------------
        [4. Flex Framework Conversion]
    ------------------------------------------------------------------*/
    
       :is(.region, .layout-region, .page-region) {
            display: flex;
            flex-direction: column;
            flex-wrap:nowrap;
            .container,
            .full-width {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: start;
                width: unset;
                box-sizing: border-box;
                align-items: center;
                width: 100cqw;
            }
            .container {
                @media (max-width: 767px) {
                    align-items: stretch;
                    padding-inline: var(--space-m);
                }
            }
            .full-width {
                --gutter-width: 1.2658227848101267%;
                --cnt-width: 2.9535864978902953%;
            }
            :is([class*="first"]):not([class*="offset"]) {
                margin-inline-start:0;
            }
            :is(.row, .layout-row, .page-row) {
                margin-inline-start: 0;
                @layer flex-row {
                    display: flex;
                    flex-direction: row;
                    flex-wrap: wrap;
                }
            }
            :is(.col, .layout-col, .page-col) {
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                float: none;
            }
        }   
    
    /*------------------------------------------------------------------
        [5. Site Specific Components]
    ------------------------------------------------------------------*/
    
    /*Utilities*/
        :root {
        /*Alignments*/
        --cnt-text-align: center;
        --cnt-flex-align: center;
        --cnt-grid-align: center;
        }
        @container cntBlock (width < 20.9375rem) {
            .content {
                --cnt-text-align: start;
                --cnt-flex-align: start;
                --cnt-grid-align: start;
            }
        }
        /*Button Classes*/
        a[class*="button"] {
            text-decoration: none;
            font-family: var(--rm-text);
            color: var(--rm-color);
            font-size: var(--rm-text-size);
            font-weight: var(--rm-text-weight);
            text-transform: var(--rm-text-tt);
            letter-spacing: var(--rm-text-ls);
            line-height: var(--text-lh-default);
            padding: var(--rm-padding);
            display: inline-flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: center;
            transition: var(--rm-transition);
            margin-block-start: var(--space-m);
            cursor: pointer;
            align-self: start;
            padding-inline-end: var(--_rm-padding-end, 0);
            &::after {
                content: var(--rm-icon);
                font-family: var(--icon-font);
                color: var(--rm-icon-color);
                font-size: 1.25em;
                display: inline-flex;
                justify-content: center;
                margin-inline: var(--rm-icon-gap) 0;
                transition: background var(--time-250) var(--ease-1), transform var(--time-700) var(--ease-elastic-in-out-3);
                align-items: center;
                line-height: .875;
                font-weight: var(--text-weight-normal);
                width: .5ch;
                transform: scaleX(var(--_icon-scale-value, 1));            
            }
            &:hover {
                --rm-color: var(--text-link);
                color: var(--rm-color);
                --_icon-scale-value: -1;            
            }
            &:is(.carousel &) {
                display: inline-flex;
            }
            &:is([class*="today"], [class*="prev"], [class*="next"]) {
                &::before, &::after {
                    display: none;
                }
            }
        }
        /* .flex-direction-nav {        
            &::before {
                content:"";
                height: var(--border-size-1);
                background-color: var(--border-color);
                flex: 1 1 100%;
            }
        } */
        /*Button Styles*/
        :is(.style-54622 , .style-54623 ):has(+ .style-54622 , + .style-54623 ),
        :is(.style-54624 , .style-54625 ):has(+ .style-54624 , + .style-54625 ) {
            margin-block-end: var(--space-m);
        }
        /*Subheadings-*/
        .h2-style:has(span) {
            display: grid;
            > span {
                color: var(--text-primary);
                font-size: var(--text-size-s);
                font-family: var(--text-ff-body);
                font-weight: var(--text-weight-semibold);
                text-transform: uppercase;
                line-height: var(--text-lh-tight);
                letter-spacing: var(--text-ls-wide);
                display: block;
                justify-self: var(--_subhead-align, start);
                padding-block-end: var(--space-s);
                border-block-end: var(--border-size-1) solid var(--border-color);
                margin-block-end: var(--space-m);
    
                &::after {
                    display: table;
                    content:"";
                }
            }
        }
        /*Grid and Card Layout Styling*/
        :is(.style-54629 , .style-54630 ) { /*Add Desired Style Class Numbers here */
            .content {
                container-name: flexBlock;
                container-type: inline-size;
            }
            .content-wrap > ul, 
            :is(ul.no-bullets, ul.no-bullets li ul, .video-list), 
            div.athleticscheduleitemalert {
                --card-basis: calc((100% / var(--card-count, 1)) - ((var(--gutter-width)*(var(--card-count, 1) - 1)) / var(--card-count, 1)));
                flex-direction: row;
                flex-wrap: wrap;
                gap: var(--gutter-width);
                justify-content: center;
                :where(li.group) {
                    container-type: normal;
                    flex: 1 1 var(--card-basis);
                }
            }
    
            .group > *:not(img, .links-imglink, .h4-style:has(a)) {
                position: relative;
                z-index: 1;
            }
    
            @media(min-width:1200px){
                @container flexBlock (width > 935px){
                    .content-wrap {
                        --card-count: 3;
                        li.group:nth-child(n+4) {
                            flex-grow: 0;
                        }
                    }
                }
                @container flexBlock (width <= 935px) {
                    .content-wrap {
                        --card-count: 2;
                        li.group:nth-child(n+3) {
                            flex-grow: 0;
                        }
                    }
                }
                @container flexBlock (width <= 485px) {
                    .content-wrap {
                        --card-count: 1;
                    }
                }
            }
            @media(width < 1200px){
                @container flexBlock (width >= 950px){
                    .content-wrap {
                        --card-count: 3;
                        li.group:nth-child(n+4) {
                            flex-grow: 0;
                        }
                    }
                }
                @container flexBlock (width < 950px) {
                    .content-wrap {
                        --card-count: 2;
                        li.group:nth-child(n+3) {
                            flex-grow: 0;
                        }
                    }
                }
                @container flexBlock (width < 380px) {
                    .content-wrap {
                        --card-count: 1;
                    }
                }
            }
            @media(width < 980px) {
                @container flexBlock (width < 980px) {
                    .content-wrap {
                        --card-count: 2;
                        li.group:nth-child(n+3) {
                            flex-grow: 0;
                        }
                    }
                }
                @container flexBlock (width < 455px) {
                    .content-wrap {
                        --card-count: 1;
                        li.group:nth-child(n+2) {
                            flex-grow: 0;
                        }
                    }
                }
            }
            @media(width < 768px){
                @container flexBlock (width < 768px) {
                    .content-wrap {
                        --card-count: 1;
                        li.group:nth-child(n+2) {
                            flex-grow: 0;
                        }
                    }
                }
            }
    
        }
        .style-54630 {
            --_gap-space: var(--space-l);
            .group {
                display: grid;
                grid-template-columns: auto [detail-start]1fr[detail-end] auto;
                gap: 0 var(--_gap-space);
                &:not(:has(.text-slide)) {
                    padding: 0;
                }
                > * {
                    grid-column: 2 / span 1;
                    &:is(img, .links-imglink) {
                        grid-column: 1 / -1;
                        + *{
                            margin-block-start: var(--space-xs);
                        }
                    }
                    &:first-child:not(img, .links-imglink) {
                        margin-block-start: var(--_gap-space);
                    }
                    &:last-child:not(img, .links-imglink),
                    &:has(+ *:empty:last-child) {
                        margin-block-end: var(--_gap-space);
                    }
                }
            }
        }
        /*Icon Statistics*/
        .style-54684 {
            .lists .content-wrap> ul {
                display: grid;
                grid-auto-rows: 1fr auto auto auto;
                gap: var(--space-m);
                --_item-width: calc(100cqw / 8 - 1rem);
                grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--_item-width)), 1fr));
                @container(min-width: 950px) {
                    .group {
                        &:nth-child(4n + 1):last-child {
                            grid-column: 4 / span 2;
                        }
                        &:nth-last-child(2):has(~ &:nth-child(4n+2):last-child) {
                            grid-column: 3 / span 2;
                        }
                        &:nth-last-child(3):has(~ &:nth-child(4n+3):last-child) {
                            grid-column: 2 / span 2;
                        }
                    }
                }
                @container(734px <= width <= 949px) {
                    --_item-width: calc(100cqw / 6 - 1rem);
                    .group {
                        &:nth-child(3n+1):last-child {
                            grid-column: 3 / span 2;
                        }
                        &:nth-last-child(2):has(~ &:nth-child(3n+2):last-child) {
                            grid-column: 2 / span 2;
                        }
                    }
                }
                @container(540px  < width < 734px) {
                    --_item-width: calc(100cqw / 4 - 1rem);
                    .group {
                        &:last-child:nth-child(odd) {
                            grid-column: 2 / span 2;
                        }
                    }
                }
                @container(max-width: 540px) {
                    --_item-width: var(--size-96);
                    grid-template-columns: var(--_item-width) 1fr;
                    .group {
                        grid-template-columns: subgrid;
                        grid-template-rows: auto auto auto 1fr;
                        grid-row: span 1;
                        justify-items: start;
                        img{
                            grid-column: 1 / span 1;
                            grid-row: 1 / -1;
                            --space-m: 0;
    
                        }
                        > *:not(img) {
                            grid-column: 2 / -1;
                            
    
                        }
                    }
                }
            }
            .group {
                &::before, &::after {
                    display: none;
                }
                display: grid;
                grid-template-columns: subgrid;
                grid-template-rows: subgrid;
                grid-row: span 4;
                grid-column: span 2;
                container-type: unset;
                margin-block-end: 0;
                overflow: clip;
                justify-items: center;
                > * {
                    grid-column: 1 / -1;
                }
            }
        } /*Updated defaults for faculty list type of content, distinct from affinity. See specifc comments for details*/
        /*Expandable List*/
        .lists,
        .coursedetail{
            .content-wrap>ul:has(.hide) {
                gap: 0;
                .hide {
                    padding: 0 0 var(--space-m) var(--size-40);
                }
                .on-state a{
                    --btn-icon-bg: var(--text-default);
                    --_icon-rotate: 135deg;
                    color: var(--text-link)
                }
            }
        }
        /*Directory Style*/
        .style-54673 {
            div:is([class*="team"], [class*="directory"], [class*="dept"], [class*="department"]):not([class*="nav"]) {
                & .table:not(table) {
                    .table-row {
                        --text-aux: var(--gray-dark);
                        --text-secondary: var(--color-2);
                        --text-link: var(--link-color);
                        background-color: var(--block-gray);
                        padding: var(--space-xl);
                        border-radius: var(--radius-s);
                        color: var(--text-default);
                        border: none;
                    }
                }
                &:has(h2) .table:not(table) .table-row{
                    border-radius: 0 0 var(--space-s) var(--space-s);
                }
            }
        }
        /*Content Tables*/
        .cnt-table {
            border-collapse: collapse; 
            width: 100%;
            table-layout: fixed;
            background-color: var(--block-default);
            thead {            
                    th {
                        background: var(--table-th-bg); 
                        color: var(--table-th-color);
                        font-family: var(--table-th-text); 
                        font-size: var(--table-th-size); 
                        font-weight: var(--table-th-weight);
                        letter-spacing: var(--table-th-ls); 
                        line-height: var(--table-th-lh); 
                        padding: var(--table-th-padding); 
                        text-transform: var(--table-th-tt); 
                        border: var(--table-th-border);
                        text-align: start;
                        &:first-of-type {
                            border-radius: var(--table-th-radius-start);
                        }
                        &:last-of-type {
                            border-radius: var(--table-th-radius-end);
                        }
                    }
            }
            tbody tr {
                td {
                    background: var(--table-td-bg); 
                    color: var(--table-td-color);
                    font-family: var(--table-td-text); 
                    font-size: var(--table-td-size); 
                    font-weight: var(--table-td-weight);
                    letter-spacing: var(--table-td-ls); 
                    line-height: var(--table-td-lh); 
                    padding: var(--table-td-padding); 
                    text-transform: var(--table-td-tt); 
                    border: var(--table-td-border);
                    &:first-of-type {
                        border-radius: var(--table-td-radius-start);
                    }
                    &:last-of-type {
                        border-radius: var(--table-td-radius-end);
                    }
                }
                &:nth-of-type(even) {
                    --table-td-bg: var(--table-td-bg-alt);
                }
            }
        }
        /*Modal Windows*/
        #pageengine-modal {
            border-radius: var(--radius-m);
            box-shadow: var(--shadow-6);
            inset: 0;
            width: fit-content !important;
            height: fit-content !important;
            max-width: var(--cnt-width-full);
            max-height: 95vh !important;
            margin: var(--space-l);
            padding: var(--space-l);
            a.modalCloseImg {
                width: var(--size-32);
                height: var(--size-32);
                inset-inline-end: -.5em;
                inset-block-start: -.5em;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                justify-content: center;
                align-content: stretch;
                align-items: center;
                gap: var(--space-s);
                text-decoration: none;
                color: var(--btn-color);
                background-color: var(--btn-bg);
                background: linear-gradient(var(--btn-bg),var(--btn-bg)) padding-box,linear-gradient(to bottom, color-mix(in srgb, var(--link-color) 60%, #ffffff),var(--link-color)) border-box;
                border: var(--btn-border);
                border-radius: var(--btn-radius);
                box-shadow: var(--btn-shadow);
                flex: 1 1 100%;
                margin: 0;
                transition: var(--btn-transition);
                color-scheme: light only;
                &:hover {
                    --btn-bg: var(--bg-default);
                    --btn-color: var(--link-color);
                    --btn-shadow: none;
                }
                &::after {
                    content: "close";
                    font-family: var(--icon-font);
                }
                
    
            }
            .container-modal {
                max-height: unset;
                overflow-y: auto;
            }
            .athletic-roster-new-member-details {
                width: fit-content !important;
            }
        }
    
    /*-Page Layout-*/
        .layout {
            display:grid;
            grid-template-columns: 1fr;
            container-name:layout;
            container-type: inline-size;
            .layout-region {
                grid-column: 1 / -1;
            }
            position: relative;
        }
    /*Specialty Row styles*/
        .style-54680 ,
        .style-54633 ,
        .style-54681 {
            & + .row:not(&) {
                margin-block-start: var(--size-80);
            }
            &:first-child {
                margin-block-start: calc(var(--size-64) * -1);
            }
            &:last-child {
                margin-block-end: calc(var(--size-80) * -1);
            }
            &:is(.page-row:not(&) + &) {
                margin-block-start: var(--space-l);
            }
            
        }
        :is(.style-54680, .style-54633, .style-54633) {
            + & {
                padding-block-start: 0;
            }
        }
    /*-Main Nav Region-*/
        .style-54650 {
            .layout-row {
                display: grid;
                grid-template: [logo-start search-start menu-start login-start]auto[logo-end search-end menu-end login-end] / [logo-start]clamp(var(--size-128), 18.75cqw, 18.75rem)[logo-end]1fr[search-start]auto[search-end menu-start]auto[menu-end login-start]auto[login-end];
                gap: var(--space-l);
                padding: var(--space-xl) var(--space-xxl) 0;
                box-sizing: border-box;
                align-items: center;
                &::before,
                &::after {
                    display: none;
                }
                .col {
                    width: auto;
                    margin-inline-start: 0;
                    grid-row: 1 / -1;
                    &:has(.logo) {
                        grid-area: logo;
                    }
                    &:has(.search) {
                        grid-area: search;
                    }
                    &:has(.megamenu) {
                        grid-area: menu;
                    }
                    &:has(.style-54654 ) {
                        grid-area: login;
                    }
                }
                @media(976px >= width >= 767px) {
                    .first-col {
                        grid-area: 1 / 1 / span 1 / span 1;
                    }
                }
                @media (width <= 767px) {
                    grid-template: auto / 18.75rem 1fr;
                    padding: 0 var(--space-m);
                }
            }
            @media (width <= 767px) {
                padding-block-start: var(--size-56);
            }
        }
        .style-54676 {
            .search-text::placeholder {
                text-transform: var(--nav-text-tt);
                letter-spacing: var(--text-ls-extrawide);
                font-weight: var(--text-weight-medium);
            }
        }
        .style-54677 {
            .mega-menu-item.l1-item.open {
                &::before {
                    transform: rotate(45deg);
                    margin-inline-end: var(--size-1);
                    pointer-events: none;
                }
                &::after {
                    transform: rotate(-45deg);
                    margin-inline-end: var(--size-1);
                    pointer-events: none;
                }
                a::after {
                    transform: translateX(100%);
                    opacity: 0;
                    pointer-events: none;
                }
            }
            .mega-menu-panel {
                transition: opacity var(--time-250) var(--ease-1), display var(--time-500) var(--ease-1) allow-discrete;
                /* display: none !important; */
                opacity: 0;
                &:is(.open > &) {
                    opacity: 1;
                    /* display: block !important */
                }
            }
            .panel {
                height: 100%;
            }
            .panel-row {
                height: 100%;
                display: flex; 
                flex-direction: row;
                flex-wrap: wrap;
                gap: var(--space-xxl);
                place-content: center;
                place-items: center;
                &::before, 
                &::after {
                    display: none;
                }
                .col [class*="block"] {
                    container-type: unset;
    
                }
            }
            .style-54648 {
                margin-block-end: var(--space-xxl);
            }
        }
        .style-54678 ,
        .style-54679 {
            ul.menu-container {
                & > li {
                    opacity: 1;
                    .submenu {
                        pointer-events: none;
                        opacity: 0
                    }
                }
                &:has(.active):not(:hover) {
                    & > li {
                        opacity: .5;
                        .active {
                            opacity: 1;
                        }
                    }
                    & > li.active {
                        opacity: 1;
                        .submenu {
                            pointer-events: initial;
                            opacity: 1;
                        }
                    }
                }
                &:hover {
                    & > li {
                        opacity: 1;
                        .submenu {
                            pointer-events: initial;
                            opacity: 1;
                        }
                    }
                    & > li:not(:hover) {
                        opacity:.5;
                        .submenu {
                            pointer-events: none;
                            opacity: 0;
                        }
                    }
                }
            }
            /* ul.level1 li.l1-item {
                > .submenu {
                    pointer-events: none;
                    &:is(:hover > &, .active > &) {
                        pointer-events: initial;
                        opacity: 1;
                    }
                }
                &:hover > .submenu {
                    pointer-events: initial;
                }
            } */
            ul.level1 li.l1-item:focus-within>.submenu {
                left: 0 !important;
            }
        }
    /*-Page Banner-*/
        .style-54638 {
            .layout-col {
                display: grid;
                grid-template: 1fr auto / 1fr;
                height: clamp(21.875rem, 26.25vw, 26.25rem);
                div {
                    height: 100%;
                }
                .layout-block {
                    grid-column: 1/-1;
                }
                &:has(.style-54640 ) {
                    height: clamp(21.875rem, 40vw, 40rem);
                    .layout-block:has(.region) {
                        grid-row: 1/-1;
                    }
                    .style-54640 {
                        .carousel.flexslider {
                            opacity: 1;
                        }
                        figcaption, 
                        .flex-direction-nav {
                            display: none;
                        }
                    }
                }
            }
        }
    
        .style-54640 ,
        .style-54641 {
            :is(div, ul, li, figure) {
                height: 100%;
            }
            :has(.animation-fade) ul.slides {
                overflow:hidden;
            }
            .carousel {
                grid-template-rows: [slides-start page-start arrows-start] 1fr [slides-end pager-end arrows-end];
                &:is(.caption-location-inside) figcaption {
                    position:relative;
                    background: transparent;
                    grid-row: 1 / -1;
                }
                .flex-direction-nav {
                    grid-row: 1 / -1;
                    inset: 0;
                }
            }

        }
    
    /*-Page Title-*/
        hgroup {
            div.page-title:only-child {
                color: inherit;
                font-size: clamp(var(--text-size-3xl), 6.25vw, var(--size-96));
                margin-block: 0 clamp(var(--text-size-3xl), 6.25vw, var(--size-96));
                font-family: var(--text-ff-display);
                font-weight: var(--text-weight-normal);
                line-height: var(--text-lh-tight);
    
            }
        }
    /*-Breadcrumb-*/
        html:not(.styler) {
            .style-54669 {
                --_bc-display: none;
                @media (width <= 767px) {
                    --_bc-display: block;
                }
            }
        }
    /*-Footer-*/
        .style-54644 {
            .layout-row {
                display: grid;
                grid-auto-columns: .6fr 1fr .4fr;
                grid-auto-flow:column;
                width: var(--cnt-width-full);
                gap: 0 var(--space-xxl);
                &::before, &::after {
                    display: none;
                }
                .col {
                    width: auto;
                    margin: 0;
                }
                @media(976px >= width >= 767px) {
                    grid-auto-flow:dense;
                    --block-margin-end: var(--space-m);
                    .col:has(.style-54647 ) {
                        grid-column: 2/span 1;
                        grid-row: 1/span 2;
                        text-align: end;
                    }
                    .style-54647 {
                        padding-inline-start: 0;
                        border-inline-start: 0;
                    }
                    .col:has(.style-54646 ) {
                        grid-column: 1/span 2;
                        grid-row: 3/span 1;
                    }
                }
                @media(width < 767px) {
                    grid-auto-flow:dense;
                    --block-margin-end: var(--space-xl);
                    .style-54647 {
                        padding-inline-start: 0;
                        border-inline-start: 0;
                    }
                    .style-54646 {
                        --btn-justify: start;
                        text-align: start;
                    }
                }
            }
            .layout-block {
                margin-block-end: var(--block-margin-end);
            }
        }
    
    /*-HP Components-*/
        /*Hero Region*/
        .style-54658 {
            .layout-col {
                display: grid;
                grid-template: 1fr auto / 1fr;
                height: clamp(21.875rem, 26.25vw, 26.25rem);
                div {
                    height: 100%;
                }
                .layout-block {
                    grid-column: 1/-1;
                }
                &:has(.style-54640 ) {
                    height: clamp(21.875rem, 100vw, 100dvh);
                    .layout-block:has(.region) {
                        grid-row: 1/-1;
                    }
                    .page-col {
                       display: grid;
                       grid-template: 1fr repeat(2, auto) / var(--size-128) 1fr var(--size-128); /*Increase repeat number for additional content within the hero section. Default is 2)*/
                       
                        @media(976px >= width >= 767px) {
                            grid-template-columns:var(--size-64) 1fr var(--size-64);
                        }
    
                        @media(width <= 767px) {
                            grid-template-columns:var(--space-m) 1fr var(--space-m);
                        }
    
                       .page-block {
                            grid-column: 2 / span 1;
                            grid-row-end: span 1;
                            position: relative;
                            &:is(.style-54640 ) {
                            grid-area: 1 / 1 / -1 / -1;
                            }
                            @media(976px >= width >= 767px) {
                                justify-self: center;
                                text-align: center;
                                width:100%;
                                --btn-justify: center;
                            }
                            &:last-child:not(.style-54640 ) {
                                margin-block-end: var(--size-96);
                                @media(width >= 767px) {
                                    margin-block-end: var(--size-56);
                                }
                            }
                        }
                    }
                }
            }
        }
    /*-Multi Item Carousel - Images-*/
        [class*="block"]:has(.carousel-photo, .link-image, .media-player) {
            figure {
                display: grid;
                grid-template-columns: 1fr;
                /* grid-template-rows: auto auto 1fr; */
                align-content: start;
                gap: 0;
                .carousel-photo,
                .link-image,
                .media-player {
                    grid-column: 1/-1;
                    grid-row: 1 / span 2;
                }
                .details {
                        display: grid;
                        @layer _carousel-details {
                        grid-template-columns: 1fr;
                        grid-template-rows: subgrid;
                        grid-row: 2 / span 5;
                        grid-column: 1 / -1;
                        gap: 0;
                        }
                }
                .crl-inner-details {
                    display: grid;
                    grid-template-rows: subgrid;
                    grid-row: 1 / -1;
                    gap: 0;
                    margin: 0;
                    > .h4-style + * {
                        margin-block-start: var(--space-l);
                    }
                }
            }
        }
    
    /*-Theme Animations-*/
    
    
    /*------------------------------------------------------------------
        [6. Media Queries]
    ------------------------------------------------------------------*/
    
    /*Full Desktop*/
        @media(min-width:1200px){
    
        }
    
    /*Small Desktop*/
        @media(max-width:1199px) and (min-width:980px){
            html:not(.styler){font-size: 14px;}
            .body{font-size:inherit;}/*adjusts body font globally but excludes styler view*/
            
            :root,
            .body {
            /*widths*/
                --gutter-width: 10px;
                --column-width:30px;
            }
        }
    
    /*Tablet*/
        @media(max-width:979px) and (min-width:768px){
            html:not(.styler){font-size: 14px;}
            .body{font-size:inherit;}/*adjusts body font globally but excludes styler view*/
    
            :root,
            .body {
            /*widths*/
                --gutter-width: 10px;
                --column-width:21px;
            }
        }
    
    /*Mobile*/
        @media(max-width:767px){
    
        html:not(.styler){font-size: calc(10px + 1vw);}
        .body{font-size:inherit;}/*adjusts body font globally but excludes styler view*/
    
        :root,
        .body {
            /*Site Framework Widths*/
                --gutter-width: .625rem;
                --gutter-width-collapse: 0;
                --column-width: 2.125rem;
                --cnt-width-full: 100%;
                --cnt-width-23: 100%;
                --cnt-width-22: 100%;
                --cnt-width-21: 100%;
                --cnt-width-20: 100%;
                --cnt-width-19: 100%;
                --cnt-width-18: 100%;
                --cnt-width-17: 100%;
                --cnt-width-16: 100%;
                --cnt-width-15: 100%;
                --cnt-width-14: 100%;
                --cnt-width-13: 100%;
                --cnt-width-12: 100%;
                --cnt-width-11: 100%;
                --cnt-width-10: 100%;
                --cnt-width-9: 100%;
                --cnt-width-8: 100%;
                --cnt-width-7: 100%;
                --cnt-width-6: 100%;
                --cnt-width-5: 100%;
                --cnt-width-4: 100%;
                --cnt-width-3: 100%;
                --cnt-width-2: 100%;
                --cnt-width-1: 100%;
            }
        }
    
    /*------------------------------------------------------------------
        [7. Animation Keyframes]
    ------------------------------------------------------------------*/
    
        @view-transition {
            navigation: auto;
        }
        @keyframes fade-in {
            to {
                opacity: 1
            }
        }
        @keyframes fade-in-bloom {
            0% {
                opacity: 0;
                filter: brightness(1) blur(20px)
            }
    
            /* 10% { opacity: 1; filter: brightness(2) blur(10px) } */
            100% {
                opacity: 1;
                filter: brightness(1) blur(0);
            }
        }
        @keyframes fade-out {
            to {
                opacity: 0
            }
        }
        @keyframes fade-out-bloom {
            100% {
                opacity: 0;
                filter: brightness(1) blur(20px)
            }
    
            /* 10% { opacity: 1; filter: brightness(2) blur(10px) } */
            0% {
                opacity: 1;
                filter: brightness(1) blur(0)
            }
        }
        @keyframes scale-up {
            to {
                transform: scale(1.25)
            }
        }
        @keyframes scale-down {
            to {
                transform: scale(.75)
            }
        }
        @keyframes slide-out-up {
            to {
                transform: translateY(calc(var(--_distance, 100%) * -1))
            }
        }
        @keyframes slide-out-down {
            to {
                transform: translateY(var(--_distance, 100%))
            }
        }
        @keyframes slide-out-right {
            to {
                transform: translateX(var(--_distance, 100%))
            }
        }
        @keyframes slide-out-left {
            to {
                transform: translateX(calc(var(--_distance, 100%) * -1))
            }
        }
        @keyframes slide-in-up {
            from {
                transform: translateY(var(--_distance, 100%))
            }
        }
        @keyframes slide-in-down {
            from {
                transform: translateY(calc(var(--_distance, 100%) * -1))
            }
        }
        @keyframes slide-in-right {
            from {
                transform: translateX(calc(var(--_distance, 100%) * -1))
            }
        }
        @keyframes slide-in-left {
            from {
                transform: translateX(var(--_distance, 100%))
            }
        }
        @keyframes shake-x {
            0%,
            100% {
                transform: translateX(0%)
            }
    
            20% {
                transform: translateX(-5%)
            }
    
            40% {
                transform: translateX(5%)
            }
    
            60% {
                transform: translateX(-5%)
            }
    
            80% {
                transform: translateX(5%)
            }
        }
        @keyframes shake-y {
    
            0%,
            100% {
                transform: translateY(0%)
            }
    
            20% {
                transform: translateY(-5%)
            }
    
            40% {
                transform: translateY(5%)
            }
    
            60% {
                transform: translateY(-5%)
            }
    
            80% {
                transform: translateY(5%)
            }
        }
        @keyframes shake-z {
            0%,
            100% {
                transform: rotate(0deg)
            }
    
            20% {
                transform: rotate(-2deg)
            }
    
            40% {
                transform: rotate(2deg)
            }
    
            60% {
                transform: rotate(-2deg)
            }
    
            80% {
                transform: rotate(2deg)
            }
        }
        @keyframes spin {
            to {
                transform: rotate(1turn)
            }
        }
        @keyframes ping {
    
            90%,
            100% {
                transform: scale(2);
                opacity: 0;
            }
        }
        @keyframes blink {
            0%,
            100% {
                opacity: 1
            }
    
            50% {
                opacity: .5
            }
        }
        @keyframes float {
            50% {
                transform: translateY(-25%)
            }
        }
        @keyframes bounce {
            25% {
                transform: translateY(-20%)
            }
    
            40% {
                transform: translateY(-3%)
            }
    
            0%,
            60%,
            100% {
                transform: translateY(0)
            }
        }
        @keyframes pulse {
            50% {
                transform: scale(.9, .9)
            }
        }
        @keyframes animcounter {
            from {
                --anim-iteration: 0;
            }
    
            to {
                --anim-iteration: 1;
            }
        }
        @keyframes login-icon-forward {
            from {
                transform: scaleX(1);
                content: "lock_open"
            }
            50% {
                content: "lock"
            }
            to {
                transform: scaleX(-1);
                content: "lock"
            }
        }
        @keyframes login-icon-backward {
            from {
                transform: scaleX(-1);
                content: "lock"
            }
            50% {
                content: "lock_open"
            }
            to {
                transform: scaleX(1);
                content: "lock_open"
            }
        }
        @keyframes menu-bar-bounce-entry {
            50% {
                transform: scaleX(1.2);
            }
        }
        @keyframes menu-bar-bounce-exit {
            50% {
                transform: scaleX(1.2);
            }
        }
        @keyframes menu-bar-retract-entry {
            from {
                transform: scaleX(1);
            }
            50% {
                transform: scaleX(1.2);
            }
            to {
                transform: scaleX(.8);
            }
        }
        @keyframes menu-bar-retract-exit {
            from {
                transform: scaleX(.8);
            }
            50% {
                transform: scaleX(1.2);
            }
            to {
                transform: scaleX(1);
            }
        }
        @media (--OSdark) {
            @keyframes fade-in-bloom {
                0% {
                    opacity: 0;
                    filter: brightness(1) blur(20px)
                }
    
                10% {
                    opacity: 1;
                    filter: brightness(0.5) blur(10px)
                }
    
                100% {
                    opacity: 1;
                    filter: brightness(1) blur(0)
                }
            }
        }
        @media (--OSdark) {
            @keyframes fade-out-bloom {
                100% {
                    opacity: 0;
                    filter: brightness(1) blur(20px)
                }
    
                10% {
                    opacity: 1;
                    filter: brightness(0.5) blur(10px)
                }
    
                0% {
                    opacity: 1;
                    filter: brightness(1) blur(0)
                }
            }
        }
        @media (prefers-reduced-motion) {
            ::view-transition-group(*),
            ::view-transition-old(*),
            ::view-transition-new(*) {
                animation: none !important;
            }
        }
