@charset "UTF-8";

/* IMPORTANT NOTE ------------------ */
/* 
Most changes should be made to the variables within the mds-variables css file. Refer to that file or even the Figma file to see what all the token values are.
*/

/* Sitewide Reset and Accessiblity Styles -- */
/* ---------------------------------------- */
/* --------------------------------------- */
/* -------------------------------- (°_°) */

*, ::after, ::before {
    box-sizing: border-box;
    transition: var(--mds-anim-fast);
}

:focus {
    outline: 3px solid var(--border-focused);
    outline-offset: 1px;
    transition: var(--mds-anim-fast);
}

:focus:not(:focus-visible) {
  outline: none;
}

:focus-visible {
  outline: 3px solid var(--border-focused);
  outline-offset: 1px;
  transition: var(--mds-anim-fast);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap; /* prevents text wrapping */
  border: 0;
}





/* Sitewide Styles --------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100svh;
    position: relative;
    font-size: 16px;
    font-family: var(--mds-font);
    font-weight: var(--mds-fw-regular);
    background-color: var(--background-secondary);
    margin: 0;
}

body.nav-open {overflow: hidden;}

/* This allows anchor links to be at top of page under the navigation. This helps compensate for the height of the nav. */
body * {scroll-margin-top: 85px;}

main {
    background-color: transparent;
    padding: 1px 0;
    margin-top: -1px;
}

hr {
    margin: 1.5rem 0;
    color: var(--divider);
    opacity: 1;
}




/* Sitewide Text Styles ---------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

a {
    text-decoration: none;
    transition: var(--mds-anim-normal);
}

a:hover{
    transition: var(--mds-anim-normal);
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--mds-font);
    font-weight: var(--mds-fw-bold);
    font-optical-sizing: auto;
    color: var(--text-primary);
    line-height: var(--mds-lh-header);
    text-wrap: pretty;
}

h1 {font-size: var(--mds-fs-h1-global);}
h2 {font-size: var(--mds-fs-h2-global);}
h3 {font-size: var(--mds-fs-h3-global);}
h4 {font-size: var(--mds-fs-h4-global);}
h5 {font-size: var(--mds-fs-h5-global);}
h6 {font-size: var(--mds-fs-h6-global);}

/* No Longer Using 
h1.article {font-size: var(--mds-h1-article-fs);}
h2.article {font-size: var(--mds-h2-article-fs);}
h3.article {font-size: var(--mds-h3-article-fs);}
h4.article {font-size: var(--mds-h4-article-fs);}
h5.article {font-size: var(--mds-h5-article-fs);}
h6.article {font-size: var(--mds-h6-article-fs);}
*/

h1.display, h2.display, h3.display, h4.display, h5.display, h6.display {
    font-weight: var(--mds-fw-regular);
}

h1.display {font-size: var(--mds-fs-h1-display);}
h2.display {font-size: var(--mds-fs-h2-display);}
h3.display {font-size: var(--mds-fs-h3-display);}
h4.display {font-size: var(--mds-fs-h4-display);}
h5.display {font-size: var(--mds-fs-h5-display);}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: var(--text-primary);
    text-decoration: none;
}

h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
    color: var(--text-primary-hover);
/*    text-decoration: underline;*/
    text-decoration: none;
}

p.xl, p.lg, p, p.sm, span.xl, span.lg, span, span.sm, li {
    line-height: var(--mds-lh-body);
    font-weight: var(--mds-fw-regular);
    color: var(--text-primary);
    margin-bottom: 0; 
}

p.xl {font-size: var(--mds-fs-6);}
p.lg {font-size: var(--mds-fs-5);}
p {font-size: var(--mds-fs-4);}
p.sm {font-size: var(--mds-fs-3);}

p.xl a, p.lg a, p a, p.sm a {
    text-decoration: underline;
    color: var(--text-primary-hover);
}

caption, figcaption, .caption{
    font-size: var(--mds-fs-3);
    color: var(--text-tertiary);
}

caption.lg, figcaption.lg{font-size: var(--mds-fs-4);}
caption.sm, figcaption.sm{font-size: var(--mds-fs-2);}

label{
    font-size: var(--mds-fs-4);
    color: var(--text-primary);
}

label.lg{font-size: var(--mds-fs-5);}
label.sm{font-size: var(--mds-fs-3);}

strong, b {font-weight: var(--mds-fw-bold);}

ol, ul {
    padding-left: 1rem;
}

.list-style-none{
    list-style-type: none;
    padding: 0;
}
/*
ul{
    list-style: none;
    padding: 0;
    margin: 0;
}

li{
    display: flex;
    align-items: center;
}

li::before {
    content: "";
    width: var(--mds-spacing-2);
    height: var(--mds-spacing-2);
    border-radius: var(--mds-radius-round);
    margin-right: 0.5em;
    background-color: var(--text-primary-65pct);
}
*/




/* Sitewide Image Styles --------- */
/* -----------------------------  */
/* ----------------------------- */
/* ---------------------- (°_°) */

img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    font-style: italic;
    background-repeat: no-repeat;
    background-size: cover;
    shape-margin: var(--mds-padding-smedium);
}




/* Sitewide Icon Styles ---------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.fill{transition: var(--mds-anim-normal);}
.fill:hover{transition: var(--mds-anim-normal);}

.fill--clr-1{fill: var(--text-primary);}
.fill--clr-2{fill: var(--text-primary-contrastText);}




/* Button Styles ----------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */


/* Default Button ---------------- */
/* ------------------------------ */

[type="button"], [type="reset"], [type="submit"], button, a.btn, .btn {
    display: inline-flex;
    position: relative;
    column-gap: var(--mds-spacing-4);
    align-items: center;
    justify-content: center;
    padding: var(--mds-spacing-4) var(--mds-spacing-5);
    min-width: 24px;
    min-height: 24px;
    font-family: var(--mds-font);
    font-size: var(--mds-fs-4);
    line-height: var(--mds-lh-dense);
    white-space: nowrap;
    text-decoration: none;
    color: var(--text-primary-contrastText);
    background: var(--btn-primary);
    border: 1px solid var(--btn-primary);
    border-radius: var(--mds-radius-sm);
    box-shadow: none;
    transition: var(--mds-anim-normal);
    flex-shrink: 0;
}

a.btn:hover, .btn:hover{
    color: var(--text-primary-contrastText);
    background: var(--btn-primary-hover);
    border: 1px solid var(--btn-primary-hover);
    transition: var(--mds-anim-normal) ;
}

a.btn:focus, .btn:focus{
    color: var(--text-primary-contrastText);
    background: var(--btn-primary-active);
    border: 1px solid var(--btn-primary-active);
    outline: 3px solid var(--border-focused);
    transition: var(--mds-anim-normal);
}

a.btn.btn:active, button.btn.btn:active{
    color: var(--text-primary-contrastText);
    background: var(--btn-primary-active);
    border: 1px solid var(--btn-primary-active);
    transition: var(--mds-anim-normal);
}

.btn svg, .btn .icon{
    max-width: var(--mds-spacing-6); max-height: var(--mds-spacing-6);
}


/* CTA Button -------------------- */
/* ------------------------------ */

a.btn--cta, .btn--cta {
    color: var(--text-primary-contrastText);
    background: transparent;
    border: 1px solid var(--btn-cta);
}

.btn--cta * {
    position: relative;
    z-index: 2;
}

a.btn--cta::after, .btn--cta::after {
    content: '';
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: -1;
    background: 
      linear-gradient(
          0deg, 
          #107BA9 0%,
          #0693CC 25%,
          #3CABD9 100%
      );
    opacity: 1;
    transition: var(--mds-anim-normal);
}

a.btn--cta:hover, .btn--cta:hover {
    color: var(--text-primary-contrastText);
    background: var(--btn-cta-hover);
    border: 1px solid var(--mds-primary-blue-80);
    box-shadow: var(--mds-shadow-xs);
}

a.btn--cta::after:hover, .btn--cta::after:hover, a.btn--cta::after:focus, .btn--cta::after:focus, a.btn--cta::after:active, .btn--cta::after:active {
    opacity: 0;
    transition: var(--mds-anim-normal);
}

a.btn--cta:focus, .btn--cta:focus {
    color: var(--text-primary-contrastText);
    background: var(--btn-cta-hover);
    border: 1px solid var(--mds-primary-blue-80);
    outline: 3px solid var(--border-focused);
    box-shadow: var(--mds-shadow-xs);
}

a.btn.btn--cta:active, button.btn.btn--cta:active {
    color: var(--text-primary-contrastText);
    background: var(--btn-cta-hover);
    border: 1px solid var(--mds-primary-blue-80);
    box-shadow: var(--mds-shadow-xs);
}


/* Primary Button ---------------- */
/* ------------------------------ */
/* 
These classes are not needed as they are the same as the default btn class. Left here for reference.

a.btn--primary, .btn--primary {}
a.btn--primary:hover, .btn--primary:hover {}
a.btn--primary .fill--clr-1, .btn--primary .fill--clr-1 {}
a.btn--primary:hover .fill--clr-1, .btn--primary:hover .fill--clr-1 {}
*/


/* Primary Reverse Button -------- */
/* ------------------------------ */

a.btn--primary-rev, .btn--primary-rev {
    color: var(--btn-primary-rev-contrastText);
    background: var(--btn-primary-rev);
    border: 1px solid var(--btn-primary-rev);
}

a.btn--primary-rev:hover, .btn--primary-rev:hover {
    color: var(--btn-primary-rev-contrastText);
    background: var(--btn-primary-rev-hover);
    border: 1px solid var(--btn-primary-rev-hover);
    box-shadow: var(--mds-shadow-xs);
}

a.btn--primary-rev:focus, .btn--primary-rev:focus {
    color: var(--btn-primary-rev-contrastText);
    background: var(--btn-primary-rev-active);
    border: 1px solid var(--btn-primary-rev-active);
    outline: 3px solid var(--border-focused);
    box-shadow: var(--mds-shadow-xs);
}

a.btn.btn--primary-rev:active, button.btn.btn--primary-rev:active {
    color: var(--btn-primary-rev-contrastText);
    background: var(--btn-primary-rev-active);
    border: 1px solid var(--btn-primary-rev-active);
    box-shadow: var(--mds-shadow-xs);
}

a.btn--primary-rev .fill--clr-1, .btn--primary-rev .fill--clr-1 {fill: var(--text-primary-contrastText);}
a.btn--primary-rev:hover .fill--clr-1, .btn--primary-rev:hover .fill--clr-1 {fill: var(--btn-primary-rev-contrastText);}


/* Primary Outlined Button ------- */
/* ------------------------------ */

a.btn--primary-outlined, .btn--primary-outlined{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid var(--btn-primary);
}

a.btn--primary-outlined:hover, .btn--primary-outlined:hover{
    color: var(--text-primary);
    background: var(--btn-primary);
    border: 1px solid var(--btn-primary);
}

a.btn--primary-outlined:focus, .btn--primary-outlined:focus{
    color: var(--text-primary);
    background: var(--btn-primary);
    border: 1px solid var(--btn-primary);
    outline: 3px solid var(--border-focused);
}

a.btn.btn--primary-outlined:active, button.btn.btn--primary-outlined:active{
    color: var(--text-primary);
    background: var(--btn-primary);
    border: 1px solid var(--btn-primary);
}

a.btn--primary-outlined .fill--clr-1, .btn--primary-outlined .fill--clr-1 {fill: var(--text-primary);}

a.btn--primary-outlined:hover .fill--clr-1, .btn--primary-outlined:hover .fill--clr-1 {fill: var(--text-primary-contrastText);}


/* Primary Outlined Reversed Button ------- */
/* --------------------------------------- */

a.btn--primary-outlined-rev, .btn--primary-outlined-rev{
    color: var(--text-primary-contrastText);
    background: transparent;
    border: 1px solid var(--btn-primary-rev);
}

a.btn--primary-outlined-rev:hover, .btn--primary-outlined-rev:hover{
    color: var(--text-primary);
    background: var(--btn-primary-rev);
    border: 1px solid var(--btn-primary-rev);
}

a.btn--primary-outlined-rev:focus, .btn--primary-outlined-rev:focus{
    color: var(--text-primary);
    background: var(--btn-primary-rev);
    border: 1px solid var(--btn-primary-rev);
    outline: 3px solid var(--border-focused);
}

a.btn.btn--primary-outlined-rev:active, button.btn.btn--primary-outlined-rev:active{
    color: var(--text-primary);
    background: var(--btn-primary-rev);
    border: 1px solid var(--btn-primary-rev);
}

a.btn--primary-outlined-rev .fill--clr-1, .btn--primary-outlined-rev .fill--clr-1 {fill: var(--text-primary-contrastText);}
a.btn--primary-outlined-rev:hover .fill--clr-1, .btn--primary-outlined-rev:hover .fill--clr-1 {fill: var(--text-primary);}


/* Primary Text Button ----------- */
/* ------------------------------ */

a.btn--primary-text, .btn--primary-text{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    padding: var(--mds-spacing-4) 0;
}

a.btn--primary-text:hover, .btn--primary-text:hover{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    text-decoration: underline;
}

a.btn--primary-text:focus, .btn--primary-text:focus{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    outline: 3px solid var(--border-focused);
    text-decoration: underline;
}

a.btn.btn--primary-text:active, button.btn.btn--primary-text:active{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    text-decoration: underline;
}

a.btn--primary-text .fill--clr-1, .btn--primary-text .fill--clr-1 {fill: var(--text-primary);}
a.btn--primary-text:hover .fill--clr-1, .btn--primary-text:hover .fill--clr-1 {fill: var(--text-primary);}


/* Primary Outlined Text Button ------ */
/* ---------------------------------- */

a.btn--primary-text, .btn--primary-text{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    padding: var(--mds-spacing-4) 0;
}

a.btn--primary-text:hover, .btn--primary-text:hover{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    text-decoration: underline;
}

a.btn--primary-text:focus, .btn--primary-text:focus{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    outline: 3px solid var(--border-focused);
    text-decoration: underline;
}

a.btn.btn--primary-text:active, button.btn.btn--primary-text:active{
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    text-decoration: underline;
}

a.btn--primary-text .fill--clr-1, .btn--primary-text .fill--clr-1 {fill: var(--text-primary);}
a.btn--primary-text:hover .fill--clr-1, .btn--primary-text:hover .fill--clr-1 {fill: var(--text-primary);}


/* Secondary Button -------------- */
/* ------------------------------ */

a.btn--secondary, .btn--secondary {
    color: var(--text-secondary);
    background: var(--btn-secondary);
    border: 1px solid var(--btn-secondary);
}

a.btn--secondary:hover, .btn--secondary:hover {
    color: var(--text-secondary);
    background: var(--btn-secondary-hover);
    border: 1px solid var(--btn-secondary-hover);
    box-shadow: var(--mds-shadow-xs);
}

a.btn--secondary:focus, .btn--secondary:focus {
    color: var(--text-secondary);
    background: var(--btn-secondary-hover);
    border: 1px solid var(--btn-secondary-hover);
    outline: 3px solid var(--border-focused);
    box-shadow: var(--mds-shadow-xs);
}

a.btn.btn--secondary:active, button.btn.btn--secondary:active {
    color: var(--text-secondary);
    background: var(--btn-secondary-active);
    border: 1px solid var(--btn-secondary-active);
    box-shadow: var(--mds-shadow-xs);
}

a.btn--secondary .fill--clr-1, .btn--secondary .fill--clr-1 {
    fill: var(--text-secondary);
}

a.btn--secondary:hover .fill--clr-1, .btn--secondary:hover .fill--clr-1 {
    fill: var(--text-secondary);
}


/* Secondary Outlined Button ----- */
/* ------------------------------ */

a.btn--secondary-outlined, .btn--secondary-outlined {
    color: var(--text-secondary);
    background: transparent;
    border: 1px solid var(--btn-secondary);
}

a.btn--secondary-outlined:hover, .btn--secondary-outlined:hover {
    color: var(--text-secondary);
    background: var(--btn-secondary-hover);
    border: 1px solid var(--btn-secondary-hover);
}

a.btn--secondary-outlined:focus, .btn--secondary-outlined:focus {
    color: var(--text-secondary);
    background: var(--btn-secondary-hover);
    border: 1px solid var(--btn-secondary-hover);
    outline: 3px solid var(--border-focused);
}

a.btn.btn--secondary-outlined:active, button.btn.btn--secondary-outlined:active {
    color: var(--text-secondary);
    background: var(--btn-secondary-active);
    border: 1px solid var(--btn-secondary-active);
}

a.btn--secondary-outlined .fill--clr-1, .btn--secondary-outlined .fill--clr-1 {fill: var(--text-secondary);}
a.btn--secondary-outlined:hover .fill--clr-1, .btn--secondary-outlined:hover .fill--clr-1 {fill: var(--text-secondary);}


/* Secondary Text Button --------- */
/* ------------------------------ */

a.btn--secondary-text, .btn--secondary-text {
    color: var(--text-secondary);
    background: transparent;
    border: 1px solid transparent;
    padding: inherit 0;
}

a.btn--secondary-text:hover, .btn--secondary-text:hover {
    color: var(--text-secondary-hover);
    background: transparent;
    border: 1px solid transparent;
}

a.btn--secondary-text:focus, .btn--secondary-text:focus {
    color: var(--text-secondary-hover);
    background: transparent;
    border: 1px solid transparent;
    outline: 3px solid var(--border-focused);
}

a.btn.btn--secondary-text:active, button.btn.btn--secondary-text:active {
    color: var(--text-secondary-active);
    background: var(--btn-secondary-active);
    border: 1px solid var(--btn-secondary-active);
}

a.btn--secondary-text .fill--clr-1, .btn--secondary-text .fill--clr-1 {fill: var(--text-secondary);}
a.btn--secondary-text:hover .fill--clr-1, .btn--secondary-text:hover .fill--clr-1 {fill: var(--text-secondary-hover);} 


/* Button Links --------- */
/* ------------------------------ */
a.btn--link, .btn--link {
    color: var(--text-primary);
    background-color: transparent;
    border: 1px solid transparent;
}

a.btn--link:hover, .btn--link:hover {
    text-decoration: underline;
    color: var(--text-primary-hover);
    background-color: transparent;
    border: 1px solid transparent;
    box-shadow: 0 0 0 transparent;
}

a.btn--link .fill--clr-1, .btn--link .fill--clr-1 {
    fill: var(--text-secondary);
}

a.btn--link:hover .fill--clr-1, .btn--link:hover .fill--clr-1 {
    fill: var(--text-secondary-hover);
}


/* Button Size Variants ---------------- */
/* (Must come after other variants ---- */

a.btn--xs, .btn--xs{
    font-size: var(--mds-fs-3);
    padding: 0 var(--mds-spacing-4);
}

.btn--xs svg, .btn--xs .icon{
    max-width: var(--mds-spacing-3); max-height: var(--mds-spacing-3);
}

a.btn--sm, .btn--sm{
    font-size: var(--mds-fs-3);
    padding: var(--mds-spacing-2) var(--mds-spacing-4);
}

.btn--sm svg, .btn--sm .icon{
    max-width: var(--mds-spacing-5); max-height: var(--mds-spacing-5);
}

a.btn--lg, .btn--lg{
    font-size: var(--mds-fs-5);
    padding: var(--mds-spacing-5) var(--mds-spacing-6);
    column-gap: var(--mds-padding-smedium);
}

.btn--lg svg, .btn--lg .icon{
    max-width: var(--mds-spacing-3); max-height: var(--mds-spacing-3);
}

a.btn--icon-only, .btn--icon-only{
    padding: var(--mds-spacing-4);
}

a.btn--icon-only.btn--xs, .btn--icon-only.btn--xs{
    padding: 0;
}

a.btn--icon-only.btn--sm, .btn--icon-only.btn--sm{
    padding: var(--mds-spacing-2);
}

a.btn--icon-only.btn--lg, .btn--icon-only.btn--lg{
    padding: var(--mds-spacing-5);
}



/* Button Row -------------------- */
/* ------------------------------ */

.btn-row{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: var(--mds-gutter-xs);
    flex-wrap: wrap;
}



/* Dropdown Styles ------------------ */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.dropdown{
    position: relative;
    display: flex;
}

.dropdown button[aria-expanded="false"] .icon{
    transform: rotate(0deg);
    transition: var(--mds-anim-fast);
}

.dropdown button[aria-expanded="true"] .icon{
    transform: rotate(180deg);
    transition: var(--mds-anim-fast);
}

.dropdown .btn--secondary-outlined[aria-expanded="true"] {
    color: var(--text-secondary);
    background: var(--btn-secondary-hover);
    border: 1px solid var(--btn-secondary-hover);
}



/* Popover Styles ---------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.popover{
    /* display revert is for overriding BS */
    display: revert;
    margin: 0;
    max-width: max-content;
    position: absolute;
    inset: auto;
    border: 0;
    padding: var(--mds-spacing-3) 0;
    border-radius: var(--mds-radius-md);
    background: white;
    justify-items: flex-start;
    box-shadow: var(--mds-shadow-xs), var(--mds-shadow-sm);
    overflow: visible;
}

[popover]:-internal-popover-in-top-layer::backdrop {
    background-color: rgba(0,0,0,0.05);
}

.popover:popover-open{
    display: grid;
}

.popover .btn{
    padding: var(--mds-spacing-4) var(--mds-spacing-5);
    text-align: left;
}

.popover--profile{
/*  position-anchor: --profile-avatar;*/
    margin: 0;
    position: absolute;
    inset: auto;
    top: auto; top: calc(anchor(bottom) + 4px);
    right: calc(var(--bs-gutter-x) * .5); right: anchor(right);
    border: 0;
    padding: var(--mds-spacing-3) 0;
    border-radius: var(--mds-radius-md);
    background: white;
    justify-items: flex-start;
    box-shadow: var(--mds-shadow-sm);
    overflow: visible;
}

/*
.popover--profile::after{
    content: '';
    position: absolute;
    bottom: calc(100% - 10px);
    right: 0;
    background: url(../images/popover-point.svg);
    width: 34px;
    height: 28px;
}
*/

.popover--specialty-menu{
    top: calc(anchor(bottom) + 4px);
    left: anchor(left);
}

.popover--post-actions{
    top: calc(anchor(bottom) + 4px);
    right: anchor(right);
}




/* Badge Styles ------------------ */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.badge-row{
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    width: 100%;
}


/* Default Badge ---------------- */
/* ------------------------------ */

a.badge, button.badge, .badge {
    display: inline-flex;
    column-gap: var(--mds-gutter-xs);
    align-items: center;
    justify-content: center;
    padding: var(--mds-padding-xs) var(--mds-padding-sm);
    min-width: var(--mds-spacing-8);
    min-height: var(--mds-spacing-7);
    font-family: var(--mds-font);
    font-weight: var(--mds-fw-regular);
    line-height: 1.1;
    white-space: nowrap;
    text-decoration: none;
    color: var(--text-primary);
    background-color: var(--badge-primary);
    border: 1px solid var(--badge-primary);
    border-radius: var(--mds-radius-round);
    transition: var(--mds-anim-normal);
}

a.badge:hover, button.badge:hover, .badge:hover{
    color: var(--text-primary);
    background-color: var(--badge-primary-hover);
    border: 1px solid var(--badge-primary-hover);
    transition: var(--mds-anim-normal);
}

a.badge:focus, .badge:focus{
    color: var(--text-primary);
    background-color: var(--badge-primary-hover);
    border: 1px solid var(--badge-primary-hover);
    outline: 3px solid var(--border-focused);
    transition: var(--mds-anim-normal);
}

a.badge:active, .badge:active{
    color: var(--text-primary);
    background-color: var(--badge-primary-active);
    border: 1px solid var(--badge-primary-active);
    transition: var(--mds-anim-normal);
}

.badge svg, .badge .icon{
    max-width: var(--mds-spacing-5); max-height: var(--mds-spacing-5);
}


/* CTA Badge ---------------- */
/* ------------------------------ */

a.badge--cta, .badge--cta {
    color: var(--text-primary-contrastText);
    background-color: var(--badge-cta);
    border: 1px solid var(--badge-cta);
}

a.badge--cta:hover, .badge--cta:hover {
    color: var(--text-primary-contrastText);
    background-color: var(--badge-cta-hover);
    border: 1px solid var(--badge-cta-hover);
}

a.badge--cta:focus, .badge--cta:focus {
    color: var(--text-primary-contrastText);
    background-color: var(--badge-cta-hover);
    border: 1px solid var(--badge-cta-hover);
    outline: 3px solid var(--border-focused);
}

a.badge--cta:active, .badge--cta:active {
    color: var(--text-primary-contrastText);
    background-color: var(--badge-cta-active);
    border: 1px solid var(--badge-cta-active);
}


/* Primary Badge ----------------- */
/* ------------------------------ */

a.badge--primary, .badge--primary {
    color: var(--text-primary);
    background-color: var(--badge-primary);
    border: 1px solid var(--badge-primary);
}

a.badge--primary:hover, .badge--primary:hover {
    color: var(--text-primary);
    background-color: var(--badge-primary-hover);
    border: 1px solid var(--badge-primary-hover);
}

a.badge--primary:focus, .badge--primary:focus {
    color: var(--text-primary);
    background-color: var(--badge-primary-hover);
    border: 1px solid var(--badge-primary-hover);
    outline: 3px solid var(--border-focused);
}

a.badge--primary:active, .badge--primary:active {
    color: var(--text-primary);
    background-color: var(--badge-primary-active);
    border: 1px solid var(--badge-primary-active);
}


/* Primary Outlined Badge -------- */
/* ------------------------------ */

a.badge--primary-outlined, .badge--primary-outlined {
    color: var(--text-primary);
    background-color: transparent;
    border: 1px solid var(--badge-primary-hover);
}

a.badge--primary-outlined:hover, .badge--primary-outlined:hover {
    color: var(--text-primary);
    background-color: var(--badge-primary-hover);
    border: 1px solid var(--badge-primary-hover);
}

a.badge--primary-outlined:focus, .badge--primary-outlined:focus {
    color: var(--text-primary);
    background-color: var(--badge-primary-hover);
    border: 1px solid var(--badge-primary-hover);
    outline: 3px solid var(--border-focused);
}

a.badge--primary-outlined:active, .badge--primary-outlined:active {
    color: var(--text-primary);
    background-color: var(--badge-primary-active);
    border: 1px solid var(--badge-primary-active);
}


/* Badge Size Variants ----------- */
/* ------------------------------ */

a.badge--xs, .badge--xs{
    font-size: var(--mds-fs-2);
    padding: 0 var(--mds-spacing-3);
    column-gap: var(--mds-spacing-2);
}

a.badge--sm, .badge--sm{
    font-size: var(--mds-fs-3);
    padding: var(--mds-spacing-2) var(--mds-spacing-4);
    column-gap: var(--mds-spacing-2);
}




/* Avatar Styles ------------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.avatar {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--mds-spacing-10); height: var(--mds-spacing-10);
    min-width: 0; 
    min-height: 0;
    padding: 0;
    background-color: var(--avatar-background);
    border: 0px solid transparent;
    overflow: visible;
    border-radius: var(--mds-radius-round);
    font-size: var(--mds-fs-3);
    color: var(--text-primary-contrastText);
}

.avatar:has(svg) {
    padding: 0.5rem;
}

.avatar img.avatar__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: relative;
    z-index: 1;
}

.avatar .avatar-text,
.avatar .avatar-icon {
    font-size: 0.6em;
}

.avatar .avatar-icon {
    font-style: normal;
}

/* Sizes */
.avatar--xxl {
    min-width: var(--mds-spacing-25);
    min-height: var(--mds-spacing-25);
    font-size: var(--mds-fs-7);
}

.avatar--xl { 
    width: var(--mds-spacing-17); height: var(--mds-spacing-17); 
    font-size: var(--mds-fs-7); 
}
.avatar--lg { 
    width: var(--mds-spacing-12); height: var(--mds-spacing-12); 
    font-size: var(--mds-fs-5);
}
.avatar--md { 
    width: var(--mds-spacing-10); 
    height: var(--mds-spacing-10); 
    font-size: var(--mds-fs-3);
}
.avatar--sm { 
    width: var(--mds-spacing-8); height: var(--mds-spacing-8); 
    font-size: var(--mds-fs-2);
}
.avatar--xs { 
    width: 1.125rem; height: 1.125rem; 
    font-size: var(--mds-fs-1);
}


/* Badge */
.avatar-badge {
    position: absolute;
    bottom: 0;
    right: 0;
    width: .5em;
    height: .5em;
    border: 1px solid #fff;
    background-color: var(--mds-utility-green-80);
    border-radius: var(--mds-radius-round);
    z-index: 2;
}

.avatar.has-badge .avatar-badge {
  display: inline-block;
}

.avatar:not(.has-badge) .avatar-badge {
  display: none;
}

.avatar--profile{
    transform: scale(1);
    transition: var(--mds-anim-fast);
}

.avatar--profile:hover{
    transform: scale(1.025);
    transition: var(--mds-anim-fast);
}

.brand-nav .avatar--profile{
    anchor-name: --profile-avatar;
}



/* Card Styles ------------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background-color: var(--card-backgrounds-primary);
    backdrop-filter: blur(1rem);
    padding: var(--mds-padding-md);
    bottom: 0;
    border-radius: var(--mds-radius-md);
    border: 1px solid transparent;
    overflow: hidden; overflow: clip;
    box-shadow: var(--mds-shadow-xs);
    transition: var(--mds-anim-normal);
}

.card:hover {
    /*bottom: var(--mds-spacing-2);*/
    bottom: 0;
    box-shadow: 0 0 0 transparent;
    transition: var(--mds-anim-normal); 
}

/* Eon's card block code : START */
.card__header {
    display: flex;
    padding: 0 1rem;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-bottom: 1px solid var(--border-regular);
}

.card__body {
    display: flex;
    flex-direction: column;
    padding: 0 var(--mds-padding-smedium);
    gap: var(--mds-gutter-sm);
    justify-content: center;
    align-items: flex-start;
}

.card__footer {
    display: flex;
    padding: 0 var(--mds-padding-smedium) 0 var(--mds-padding-smedium);
    flex-direction: column;
    align-items: flex-end;
    gap: 0.625rem;
    align-self: stretch;
}

.card--promo-list .card__footer {
    padding: var(--mds-padding-smedium) var(--mds-padding-smedium) 0 var(--mds-padding-smedium);
    border-top: 1px solid var(--border-regular);
}

.card--promo-list {
    padding: var(--mds-padding-smedium) 0 var(--mds-padding-smedium); 0;
    gap: var(--mds-gutter-sm);
}
/* Eon's card block code : END */



/* Card Size Variants ------------ */
/* ------------------------------ */

.card--xs {
    padding: var(--mds-padding-xs);
}

.card--sm {
    padding: var(--mds-padding-sm);
}

.card--lg {
    padding: var(--mds-padding-lg);
}

.card--xl {
    padding: var(--mds-padding-xl);
}

.card--p-none {
    padding: 0;
}





/* Card Surface Variants --------- */
/* ------------------------------ */

.card-surface--secondary{background-color: var(--card-backgrounds-secondary);}

.card-surface--gradient-10{
    background: 
        radial-gradient(
            1253.01% 343.82% at -10.18% -53.79%, 
            var(--mds-gradient-blue-10, #FFF) 0%, 
            var(--mds-gradient-blue-20, #BEE1F0) 65%)
        ;
}

.card-surface--gradient-50{
    background: 
        radial-gradient(
            1563.29% 807.52% at -6.58% -321.71%, 
            var(--mds-gradient-blue-20, #BEE1F0) 20.76%, 
            var(--mds-gradient-blue-30, #0D93CC) 71.46%, 
            var(--mds-primary-blue-80, #126386) 100%)
        ;
}

.card-surface--gradient-90{
    background: 
        radial-gradient(
            1449.63% 249.38% at -42.6% -71.67%, 
            var(--mds-primary-blue-30, #8FC8E0) 0%, 
            var(--mds-gradient-blue-30, #0D93CC) 51.77%, 
            var(--mds-gradient-blue-40, #1A4152) 100%)
        ;
}


/* TEST FOR GLASSY CARD EFFECT */
/* Found here: https://www.youtube.com/watch?v=dsZ7RN9ItR4 */

/* Version 1 below is good for non-transparent BG */
.card--glassy-opaque{
    background: 
        radial-gradient(circle at 50% 250%, var(), var()) padding-box,
        linear-gradient(var(), var()) border-box;
}

/* Version 2 below is good for transparent BG */
.card--glassy-transparent{
    --border-width: 1px;
    border-radius: var();
    position: relative;
    background: hsl(from var(--card-backgrounds-primary) h s l / 0.75);
    backdrop-filter: blur(1rem);
}

.card--glassy-transparent::before{
    content: '';
    position: absolute;
    z-index: -1;
    inset: 0;
    border-radius: inherit;
    background: 
        radial-gradient(circle at 50% 250%, var(), var()) padding-box,
        linear-gradient(var(), var()) border-box;
    border: var(--border-width) solid transparent;
    mask: 
        linear-gradient(black, black) border-box,
        linear-gradient(black, black) padding-box;
    mask-composite: subtract;
}
/* TEST FOR GLASSY CARD EFFECT */


/* Base thumbnail */
.thumbnail {
    display: block;
    position: relative;
    aspect-ratio: 16 / 9;
    width: 100%;
    border: 1px solid var(--mds-secondary-grey-10);
    border-radius: var(--mds-radius-md);
    background: var(--mds-bg-grey);
    overflow: hidden;
    transition: var(--mds-anim-fast);
}

.thumbnail img {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center center;
  transform: scale(1);
  transition: .25s ease-in-out;
}

/* ----------------------------- */
/* Variants */
/* ----------------------------- */

/* Video */
.thumbnail--video .icon--top-left {
    position: absolute;
    z-index: 3;
    top: 1.25em;
    left: 1.25em;
    width: 10%;
    aspect-ratio: 1 / 1;
    max-width: var(--mds-spacing-15);
}
.thumbnail--video .icon--top-left svg {
    width: 100%;
    height: 100%;
}

.thumbnail--video .icon--top-left .fill-clr-1{
    fill: var(--background-primary);
}

.thumbnail--video .icon--top-left .fill-clr-2{
    fill: var(--text-primary);
}

/* Audio */
.thumbnail--audio {
    background: #111; /* fallback bg */
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    max-height: 200px;   /* constrain audio thumbnail height */
    aspect-ratio: auto;  /* let height control instead of 16:9 */
}

.thumbnail--audio img {
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Article */
.thumbnail--article img {
  /* base image already covers this case */
}

/* ----------------------------- */
/* Shared Timer (Video + Audio) */
/* ----------------------------- */
.thumbnail-timer {
    position: absolute;
    bottom: var(--mds-spacing-5);
    right: var(--mds-spacing-5);
    padding: var(--mds-spacing-2) var(--mds-spacing-4);
    background: var(--text-secondary);
    color: white;
    font-size: 0.8rem;
    font-weight: 500;
    border-radius: var(--mds-radius-sm);
}


/* Content Teaser Card Styles ---- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.content-teaser {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--mds-gutter-smedium);
    padding: 0 0 var(--mds-padding-smedium) 0;
    border-radius: var(--mds-radius-md);
    border: 1px solid var(--mds-secondary-grey-10);
    background: var(--background-primary);
    overflow: hidden;
    width: 100%;
    transition: var(--mds-anim-fast);
    box-shadow: none;
}

.post .content-teaser:hover{
    box-shadow: none;
}

.content-teaser:hover .thumbnail--video .icon--top-left {
    transform: scale(1.04);
    transition: var(--mds-anim-fast);
}

.content-teaser .thumbnail {
    border: 0px solid transparent;
    border-radius: 0;
}

.content-teaser .content-teaser__header, .card__body-info {
    display: flex;
    width: 100%;
    padding: 0 var(--mds-padding-smedium);
    flex-direction: column;
    align-items: flex-start;
    gap: var(--mds-spacing-1);
    align-self: stretch;
}

.card__body-content-types {
    display: flex;
    padding: 0;
    flex-direction: column;
    align-items: flex-start;
    /*gap: var(--mds-gutter-smedium);*/
    align-self: stretch;
}

.card__body-content {
    display: flex;
    padding: 0 var(--mds-padding-smedium);
    flex-direction: column;
    align-items: flex-start;
    gap: var(--mds-gutter-smedium);
    align-self: stretch;
}

.content-teaser__title-row, .card__body-title-row {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    align-self: stretch;
    justify-content: space-between;
}

.card__body-horz-list {
    display: flex;
    padding-bottom: var(--mds-gutter-xs);
    align-items: center;
    align-content: center;
    gap: 0.75rem var(--mds-padding-sm);
    align-self: stretch;
    flex-wrap: wrap;
}

.card--stretched-link .stretched-link {
    position: absolute;
    z-index: 1;
    pointer-events: auto;
    top: 0; right: 0; bottom: 0; left: 0;
}

.stretched-link-safe {
    position: relative;
    z-index: 2;
    pointer-events: auto;
    cursor: pointer;
}

.content-teaser:not(:has(.thumbnail)) .content-teaser__header {
  padding-top: var(--mds-padding-smedium);
}

@media(max-width: 425px) {
    .card__icon-wrapper {
        top: 0.25rem;
        left: 0.5rem;   
    }

    .card__body-header {
        flex-direction: row;
        align-items: flex-start;
        padding: var(--padding--smedium, 0.75rem) var(--padding--smedium, 0.75rem) 0 var(--padding--smedium, 0.75rem);
        gap: 0.75rem var(--gutter--smedium, 0.75rem);
    }

    .thumbnail {
        flex: 0 1 118px;
        min-width: 118px;
        order: 2;
        width: auto;
    }

    .card__body-info {
        padding: 0;
        flex: 0 1 215px;
        min-width: 215px;
        order: 1;
        width: auto;
    }

    .card__body-content {
        padding: var(--mds-padding-smedium);
    }
}

.horz-list__item--by + .horz-list__item::before {
    display: none;
}


/* Accordion Styles -------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */


.accordion {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--mds-spacing-1);
    padding: 0;
    /*  
    This was for the accordion on the About Page, turned off but may need a special class for that page's accordion, not for all
    padding: var(--mds-spacing-1) 0 0 0;
    */
    /*background-color: var(--background-secondary);*/
    /*border-radius: var(--mds-radius-sm);*/
}

.accordion-button {
    white-space: normal;
    line-height: 1.4;
    padding: var(--mds-padding-sm) var(--mds-padding-md);
    background-color: var(--background-primary);

    &:not(.collapsed) {
        color: var(--text-primary);
        background-color: var(--mds-secondary-grey-10);
        box-shadow: none;

        &::after {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23173440'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
            transform: var();
        }
    }

    &:focus {
        z-index: 3;
        border-color: none;
        outline: 0;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }
}

.accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23687B83'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.accordion-item {
    border: none;
    border-radius: var(--mds-radius-sm);
}

.accordion-item:first-of-type {
    border-radius: var(--mds-radius-sm);
}

.accordion-item:first-of-type>.accordion-header .accordion-button {
    border-radius: var(--mds-radius-sm) var(--mds-radius-sm) 0 0;
}

.accordion-item:last-of-type>.accordion-header .accordion-button {
    border-radius: 0 0 var(--mds-radius-sm) var(--mds-radius-sm);
}

.accordion-body {
    display: flex;
    flex-direction: column;
    gap: var(--mds-gutter-xs);
    background-color: var(--mds-secondary-grey-10);
    padding: 0 var(--mds-padding-md) var(--mds-padding-sm) var(--mds-padding-md);
}

.accordion-body p:first-of-type {
    border-top: 1px solid rgba(23, 52, 64, 0.18);
    padding-top: var(--mds-padding-sm);
}

    




/* Footer Styles ----------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

footer {
    display: grid;
    align-items: center;
    margin-top: auto;
    background: var(--background-primary);
    padding: var(--mds-padding-lg);
    min-height: 10.188rem;
}

footer .container-fluid{
    display: grid;
    grid-template-columns: 200px 1fr 200px;
    gap: var(--mds-gutter-lg);
    align-items: center;
}

/* footer__left and contents styles */
.footer__left{
    display: grid;
    justify-content: flex-start;
}

.footer__left .footer__logo{
    margin: 0
}

/* footer__center and contents styles */
.footer__center{
    display: grid;
    justify-content: center;
    text-align: center;
}

.nav.nav--footer{
    justify-content: center;
}

.nav__menu {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
    gap: .5rem 1.5rem;
}

.nav--footer .nav__menu{
    /* flex-wrap: wrap;
    justify-content: center;
    gap: 0 1.5rem; */
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 1.5rem;
}


/* footer__right and contents styles */
.footer__right{
    display: grid;
    justify-content: flex-end;
}

.footer__socials, .footer__social-logos{
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer__socials, .footer__social-logos{gap: .75rem;}

.footer__social-logos .logo, .footer__social-logos .logo:hover .fill{
    transition: var(--mds-anim-fast); 
}

.footer__social-logos .logo{
    height: 20px;
    max-height: 100%;
}

.footer__social-logos .logo:hover .fill{
    fill: var(--text-primary-hover);
}


@media (max-width: 992px) {
    footer .container-fluid, .footer__left, .footer__right{
        justify-content: center;
    }
    
    footer .container-fluid{
        grid-template-columns: 1fr;
    }
}





/* Footer Styles ----------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.section--full-width-ad{
    background-color: transparent;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    border-top: 0px solid transparent;
    border-bottom: 0px solid transparent;
}

.banner-ad{
    display: grid;
    margin: 0px auto;
    text-align: center;
    justify-content: center;
    align-items: center;
    background-color: transparent;
    border-bottom: transparent;
    padding: 0;
}

.banner-ad.banner-ad--728x90{
    grid-template-columns: auto auto;
}
    
.banner-ad__text{
    display: inline-block;
    font-size: 8px;
    line-height: 1.1;
    letter-spacing: .025rem;
    text-transform: uppercase;
    text-align: center;
    padding: .35rem .05rem;
    height: auto;
}
.banner-ad--728x90 .banner-ad__text{
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    margin: 0px -0.5px 0px 0px;
    padding: .05rem .35rem;
}

.banner-ad__image-wrapper{}

.banner-ad__image{}










.test-card--fordemoONLY{
    min-height: 200px;
    width: 100%;
    background: rgba(255,255,255,0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

/*
.area--feed-1 .card, .area--feed-2 .card, .area--feed-3 .card{
    min-height: 800px;
}
*/



/* Feed Page Styles -------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.page-layout{
    display: grid;
}

.content-area, .content-area .position-sticky{
    display: flex;
    flex-direction: column;
    gap: var(--mds-gutter-md);
}


.content-area .position-sticky{
    position: sticky;
    top: calc(var(--nav-height) + 1rem);
}

.page-layout--feed{
    grid-template-areas:
        "user   feed-main   aside";
    grid-template-columns: 12.5rem 1fr 18.875rem;
    grid-gap: var(--mds-gutter-md);
    padding-bottom: 1.5rem;
}

.area--feed-col {
    grid-area: feed-main;
    position: relative;
    display: grid;
    grid-template-areas:
        "feed-filters"
        "feed-1"
        "feed-2"
        "feed-3"
        "feed-4"
        "ad-3"
        "feed-5";
    padding: 0;
    grid-gap: var(--mds-gutter-md);
    height: 100%;
    grid-template-rows: auto auto auto auto auto 1fr;
}

.area--aside{
    grid-area: aside;
    position: relative;
    display: grid;
    grid-template-areas:
        "aside__top"
        "aside__bottom";
    grid-template-rows: auto 1fr;
    grid-gap: var(--mds-gutter-md);
    align-content: flex-start;
}

.aside-grouping--1, 
.aside-grouping--2, 
.aside-grouping--2 > .position-sticky{
    display: grid;
    grid-gap: var(--mds-gutter-md) 0;
}

.aside-grouping--1{
    grid-area: aside__top;
    grid-template-areas:
        /*"promo-1"*/
        "ad-1"
        "promo-2";
    grid-template-rows: auto auto;
}

.aside-grouping--2{
    grid-area: aside__bottom;
}

.aside-grouping--2 > .position-sticky{
    grid-template-areas:
        /*"promo-2"*/
        "ad-2"
        "footer";
    grid-template-rows: auto auto;
    align-content: flex-start;
    max-height: max-content;
}

.area--user{grid-area: user;}
.area--feed-filters{grid-area: feed-filters;}
.area--feed-1{grid-area: feed-1; /*grid-row: span 4;*/}
.area--feed-2{grid-area: feed-2;}
.area--feed-3{grid-area: feed-3;}
.area--feed-4{grid-area: feed-4;}
.area--feed-5{grid-area: feed-5;}
.area--promo-1{grid-area: promo-1;}
.area--promo-2{grid-area: promo-2;}
.area--ad-1{grid-area: ad-1;}
.area--ad-2{grid-area: ad-2;}
.area--footer{grid-area: footer; /*grid-row: span 2;*/}

.area--ad-1{position: relative;}

.area--ad-2{
    position: relative;
    /*min-height: 150vh;
    min-height: 150svh;*/
}

.page-layout--feed .area--ad-2{
    /* min-height: 300vh;
    min-height: 300svh; */
    min-height: 0;
}

@media (max-width: 966px) {
    .page-layout--feed{
        grid-template-areas:
            "user   feed-filters"
            "user   feed-1"
            "user   ad-1"
            "user   feed-2"
            "user   ad-2"
            "user   feed-3"
            "user   promo-2"
            "user   feed-4"
            "user   ad-3"
            "user   feed-5"
            "user   footer";
        grid-template-columns: 12.5rem 1fr;
        grid-template-rows: repeat(13, auto);
    }

    .area--feed-col, 
    .area--feed-aside, 
    .aside-grouping--1, 
    .aside-grouping--2,
    .aside-grouping--2 > .position-sticky{
        display: contents;
    }
    
    .area--ad-1, .area--ad-2{
        min-height: auto;
        min-height: auto;
    }
}

@media (max-width: 634px) {
    .page-layout--feed{
        grid-template-areas:
            "user"
            "feed-filters"
            "feed-1"
            "ad-1"
            "feed-2"
            "ad-2"
            "feed-3"
            "promo-1"
            "feed-4"
            "promo-2"
            "feed-5"
            "footer";
        grid-template-columns: 1fr;
        grid-template-rows: repeat(11, auto);
    }
}



/* Component - Feed Filters Styles ------- */
/* -------------------------------------- */
/* ------------------------------------- */
/* ------------------------------ (°_°) */

.feed-filters{
    display: grid;
    grid-gap: var(--mds-gutter-xs) var(--mds-gutter-sm);
}

.feed-filters__row-right .os-scrollbar-horizontal {
    height: 8px !important;
    padding: var(--os-padding-perpendicular) var(--mds-gutter-xs);
}

.feed-filters__row-right .os-scrollbar-track, .feed-filters__row-right .os-scrollbar-track:hover {
    background: var(--divider);
}

.feed-filters__row-right .os-scrollbar-horizontal .os-scrollbar-handle {
    min-width: 20px !important;
    border-radius: 3px;
}

.feed-filters__row-left, .feed-filters__row-right, .feed-filters__row-overflow{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: var(--mds-gutter-xs);
}

.feed-filters__row{
    display: grid;
    width: 100%;
}

.feed-filters__row:has(.feed-filters__row-left + .feed-filters__row-right){
    grid-gap: var(--mds-gutter-xs);
}

.feed-filters__row:has(.feed-filters__row-left .feed-filters__row-overflow){
    grid-template-columns: 1fr auto;
}

.feed-filters__row:has(.feed-filters__row-right .feed-filters__row-overflow){
    grid-template-columns: auto 1fr;
}

/*.feed-filters__row:has(.feed-filters__row-left .feed-filters__row-overflow) .feed-filters__row-left,*/ 
.feed-filters__row:has(.feed-filters__row-right .feed-filters__row-overflow) .feed-filters__row-right{
    overflow-y: scroll;
    margin-left: calc(-1 * var(--mds-gutter-xs));
    margin-right: calc(-1 * var(--mds-gutter-xs));
    padding-left: var(--mds-gutter-xs);
    padding-right: var(--mds-gutter-xs);
    width: calc(100% + (2 * var(--mds-gutter-xs)));
    
    /* accomodates horizontal scrollbar */
    margin-bottom: -8px;
    padding-bottom: 8px;
    
    /* configurable fade width */
    --fade-l: var(--mds-gutter-xs, 6px);
    --fade-r: var(--mds-gutter-xs, 6px);

    /* WebKit/Blink (Chrome, Safari, new Edge) */
    -webkit-mask-image: linear-gradient(
        to right,
        transparent 0,
        #000 var(--fade-l),
        #000 calc(100% - var(--fade-r)),
        transparent 100%
    );
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;

    /* Standards (Firefox, others) */
    mask-image: linear-gradient(
        to right,
        transparent 0,
        #000 var(--fade-l),
        #000 calc(100% - var(--fade-r)),
        transparent 100%
    );
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
    mask-mode: match-source; /* use alpha channel of gradient */
}

/* Optional: if masking isn’t supported, approximate with a background overlay. This requires a known background color behind the element. */
@supports not (mask-image: linear-gradient(#000, #000)) {
    .feed-filters__row-left:has(.feed-filters__row-overflow), .feed-filters__row-right:has(.feed-filters__row-overflow) {
        position: relative;
        /* Ensure the element establishes a containing block for ::before */
        overflow: visible; 
        /* content can overflow; the overlay sits on top */
    }
    .feed-filters__row-left:has(.feed-filters__row-overflow)::before, .feed-filters__row-right:has(.feed-filters__row-overflow)::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        /* Replace var(--mds-bg-grey, #f7fafd) with your page/container bg color */
        background:
        linear-gradient(to right, var(--mds-bg-grey, #f7fafd), transparent var(--fade)) left / 50% 100% no-repeat,
        linear-gradient(to left, var(--mds-bg-grey, #f7fafd), transparent var(--fade)) right / 50% 100% no-repeat;
        /* This visually “fades” into the page bg when true transparency isn’t available */
    }
}

.feed-filters .dropdown .btn--secondary-outlined[aria-expanded="true"] {
    color: var(--text-secondary-contrastText);
    background: var(--btn-primary-hover);
    border: 1px solid var(--btn-primary-hover);
}
.feed-filters .dropdown .btn--secondary-outlined[aria-expanded="true"] span{
    color: var(--text-secondary-contrastText);
}

.feed-filters .dropdown .btn--secondary-outlined[aria-expanded="true"] .fill--clr-1{
    fill: var(--text-secondary-contrastText);
}

#specialty-menu fieldset{
    padding: var(--mds-padding-xs) var(--mds-padding-smedium);
    column-count: 2;
    column-width: 150px;
    gap: var(--mds-padding-xs);
}

#specialty-menu .checkbox{
    display: grid;
    grid-template-columns: auto 1fr;
    grid-gap: var(--mds-gutter-xs);
    padding: var(--mds-spacing-1) 0;
}



/* Component - Feed Right Rail Footer Styles ------- */

.footer__right-rail {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--mds-gutter-md);
}

.footer__right-rail .nav__link.btn{
    padding-left: 0;
    padding-right: 0;
}




/* Tab Styles ----------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.mds-tabs {
    display: flex;
    flex-direction: column;
    background: var(--background-primary);
    width: 100%;
}

.mds-tabs__list {
    display: flex;
    gap: var(--mds-spacing-8);
    padding: 0 var(--mds-padding-smedium);
    border-bottom: 1px solid var(--border-regular);
    margin: 0;
    list-style: none;
}

.mds-tabs__item {
    margin: 0;
}

.mds-tabs--vertical {
    flex-direction: row;
}

.mds-tabs--vertical .mds-tabs__list {
    flex-direction: column;
}

.mds-tabs--vertical .mds-tabs__panels {
    flex: 1;
    padding: 1rem;
}

.mds-tabs__tab {
    appearance: none;
    border: 0;
    background: transparent;
    color: var(--text-secondary);
    padding: 0 0.125rem 0.25rem 0.125rem;
    font: 500 14px/1.2 ui-sans-serif, system-ui;
    border-radius: 0;
    cursor: pointer;
    transition: background var(--mds-anim-fast), color var(--mds-anim-fast);
    width: 100%;
    text-align: left;

    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.mds-tabs__icon {
    display: inline-flex;
    flex-shrink: 0;
    width: 1rem;
    height: 1rem;
    fill: currentColor;
}

.mds-tabs__label {
    flex: 1;
}

.mds-tabs__tab:hover {
    color: var(--text-primary-hover);
}

.mds-tabs__tab:focus-visible {
    outline: none;
    box-shadow: var(--mds-primary-blue-50);
}

.mds-tabs__tab[aria-selected="true"] {
    color: var(--text-primary-selected);
    border-bottom: 2px solid var(--mds-primary-blue-50);
}

.mds-tabs__tab[disabled],
.mds-tabs__tab[aria-disabled="true"] {
    color: var(--text-secondary);
    opacity: var(--disabled);
    cursor: not-allowed;
    pointer-events: none;
}

.mds-tabs__panels {
    position: relative;
    padding: var(--mds-padding-smedium);
    padding-bottom: 0;
}

.mds-tabs__panel[hidden] {
    display: none;
}

.mds-fade {
    opacity: 0;
    transition: opacity var(--mds-anim-fast);
}

.mds-fade.mds-show {
    opacity: 1;
}


.page-layout--article .mds-tabs__panel h2 {
    margin-top: 2rem;
}

.page-layout--article .mds-tabs__panel h3 {
    margin-top: 1.5rem;
}

.page-layout--article .mds-tabs__panel h4 {
    margin-top: 1.125rem;
}

.page-layout--article .mds-tabs__panel h5 {
    margin-top: 1rem;
}

.page-layout--article .mds-tabs__panel h6 {
    margin-top: .75rem;
}

.page-layout--article .mds-tabs__panel p {
    margin-bottom: 1rem;
}

.page-layout--article:first-child .mds-tabs__panel h2:first-child, .page-layout--article:first-child .mds-tabs__panel h3:first-child, .page-layout--article:first-child .mds-tabs__panel h4:first-child, .page-layout--article:first-child .mds-tabs__panel h5:first-child, .page-layout--article:first-child .mds-tabs__panel h6:first-child {
    margin-top: 0;
}

.mds-tabs__panels #summary p, .mds-tabs__panels #takeaways ul, .mds-tabs__panels #takeaways ol {
  /* default fallback styles */
  position: relative;
  max-height: calc((var(--mds-lh-body)) * 3);
  overflow: hidden;
}

#summary.mds-tabs__panel{
   display: flex;
   column-gap: var(--mds-gutter-smedium);
}

.btn--audio-preview {
   flex: 1 0 auto;
   box-shadow: var(--mds-shadow-sm) !important;
}

@supports (-webkit-line-clamp: 1) {
  .mds-tabs__panels #summary p, .mds-tabs__panels #takeaways ul, .mds-tabs__panels #takeaways ol {
    /* use the clamp approach in supporting browsers */
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    /* optionally override or remove fade overlay */
  }
}

.mds-tabs__panels #takeaways ul, .mds-tabs__panels #takeaways ol{
    margin-bottom: 0;
}

.mds-tabs__panels #takeaways ul li:nth-child(n+4), .mds-tabs__panels #takeaways ol li:nth-child(n+4){
    display: none;
}

.mds-tabs .btn.mds-tabs__read-more-btn,
.mds-tabs .btn.mds-tabs__read-more-btn:hover,
.mds-tabs .btn.mds-tabs__read-more-btn:active {
    background: linear-gradient(90deg, hsl(210 60 98 / .0) 0%, hsl(210 60 98 / 1) 35%);
    position: absolute;
    bottom: calc((var(--mds-padding-smedium) - var(--mds-spacing-4) - 2px) * -1);
    right: calc(var(--mds-padding-smedium) - var(--mds-spacing-4));
    padding: var(--mds-spacing-4) var(--mds-spacing-4) var(--mds-spacing-4) var(--mds-spacing-10);  
    color: var(--text-secondary);
    font-weight: var(--mds-fw-semibold);
    border: 0px solid transparent;
}

.mds-tabs .btn.mds-tabs__read-more-btn:hover{
    color: var(--text-secondary-hover);
}
    





/* Tabbed Header Styles */
/* Not on MDSpire. Keeping in case it gets added.*/
/*
.tab-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    margin-bottom: 1rem;
}

.tab-header__title{
    font-weight: 600;
    color: white;
    background-color: var(--jadpro-primary-clr);
    padding: 0.375rem 1rem .5rem 1rem;
    margin: 0;
}

.tab-header .tab-header__hr{
    width: 100%;
    height: 2px;
    margin: 0;
    border: 0px;
    background-color: var(--jadpro-primary-clr);
    border-radius: 3rem;
    position: relative;
}

.tab-header--top .tab-header__title{
    order: 1;
    border-radius: .5rem .5rem 0 0;
}

.tab-header--top .tab-header__hr{
    order: 2;
    bottom: 1px;
}

.tab-header--bottom .tab-header__title{
    order: 2;
    border-radius:  0 0 .5rem .5rem;
}

.tab-header--bottom .tab-header__hr{
    top: 1px;
}
*/

    



/* Breadcrumb Styles */

.breadcrumb__link {
    color: var(--jadpro-primary-clr);
    text-decoration: underline;
}

.breadcrumb__link:hover {
    color: var(--jadpro-primary-50);
    text-decoration: underline;
}

.breadcrumb__current {
    color: var(--jadpro-primary-clr);
    text-decoration: none;
}

.breadcrumb__current:hover {
    color: var(--jadpro-primary-clr);
    text-decoration: underline;
}

    



/* Video Container Styles */

.video-embed-container {
    box-shadow: none;
    background: var(--jadpro-body-text);
    border-radius: .5rem;
    overflow: hidden;
}

    



/* Pagination Styles */

.page-item{
    flex: 1 1 auto;
    text-align: center;
}

.page-link{
    padding: .5rem .5rem;
}

.page-item a.page-link {
    color: var(--jadpro-body-text);
    text-decoration: none;
    background-color: white;
    border-top: 2px solid white;
    border-bottom: 2px solid white;
    border-right: 2px solid var(--jadpro-bg-clr);
    border-left: 2px solid var(--jadpro-bg-clr);
    margin-left: calc(var(--bs-border-width) * -2);
    transition: all .15s ease-in-out;
}

.page-item:not(:first-child) .page-link {
    margin-left: calc(var(--bs-border-width) * -2);
}

.page-item a.page-link:hover {
    color: white;
    background-color: var(--jadpro-primary-clr);
    border-color: var(--jadpro-primary-clr);
    text-decoration: none;
}

.page-item:first-child .page-link{
    border-left: 2px solid transparent;
}

.page-item:last-child .page-link{
    border-right: 2px solid transparent;
}

.pagination__dots{
    margin-left: calc(var(--bs-border-width) * -2);
    color: var(--jadpro-body-text);
    text-decoration: none;
    background-color: white;
    border-top: 2px solid transparent;
    border-bottom: 2px solid transparent;
    border-right: 2px solid var(--jadpro-bg-clr);
    border-left: 2px solid var(--jadpro-bg-clr);
}

.page-item.active .page-link {
    cursor: default;
    pointer-events: none;
    z-index: 3;
    color: white;
    background-color: var(--jadpro-primary-clr);
    border-color: var(--jadpro-primary-clr);
}

.page-item.active .page-link:hover {
    background-color: var(--jadpro-primary-clr);
    border-color: var(--jadpro-primary-clr);
    text-decoration: none;
}

.page-item.disabled .page-link {
    color: var(--jadpro-primary-20);
}

@media (max-width: 900px) {nav.max-width .pagination .page-item:nth-last-child(12){display: none;}}
@media (max-width: 850px) {nav.max-width .pagination .page-item:nth-last-child(11){display: none;}}
@media (max-width: 800px) {nav.max-width .pagination .page-item:nth-last-child(10){display: none;}}
@media (max-width: 750px) {nav.max-width .pagination .page-item:nth-last-child(9){display: none;}}
@media (max-width: 700px) {nav.max-width .pagination .page-item:nth-last-child(8){display: none;}}
@media (max-width: 650px) {nav.max-width .pagination .page-item:nth-last-child(7){display: none;}}
@media (max-width: 600px) {nav.max-width .pagination .page-item:nth-last-child(6){display: none;}}
@media (max-width: 550px) {nav.max-width .pagination .page-item:nth-last-child(5){display: none;}}





/* Component - Post Styles ------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.post {
    display: grid;
    grid-template-rows: auto;
    grid-gap: var(--mds-gutter-sm);
    anchor-scope: --post; 
}

.post:hover {
    bottom: 0;
    box-shadow: var(--mds-shadow-sm);
    transition: var(--mds-anim-normal);
}

/* Eon's code block : START */

.post .content-teaser, .post .mds-tabs {
    background: var(--background-secondary);
}

.post p, .post li {
    color: var(--text-secondary);
}

.post__header {
    display: flex;
    gap: var(--mds-gutter-sm);
    align-items: center;
    justify-content: space-between;
}

.post__body {
    display: flex;
    flex-direction: column;
    gap: var(--mds-gutter-sm);
    justify-content: center;
    align-items: center;
}

.post__body > div {
    width: 100%;
}

.post__profile {
    display: flex;
    gap: var(--mds-spacing-5);
    align-items: center;
    justify-content: flex-start;
}

/* Eon's code block : END */


.post .dropdown button {
    anchor-name: --actions-btn;
}

/* Fallback when anchors aren’t supported */
@supports not (anchor-name: --a) {
  .post .dropdown { position: relative; }
  .popover--post-actions { top: 100%; right: 0; }
}




/* Component - Profile Header Styles ------- */
/* ---------------------------------------- */
/* --------------------------------------- */
/* -------------------------------- (°_°) */

.profile {
    padding: 0;
}

.profile__name, .profile__name a{
    text-decoration: none;
    color: var(--text-primary);
}

.profile__name a:hover{
    color: var(--text-primary-hover);
}

/* Eon's list-profile code : START */
.list-profile {
    display: flex;
    padding-bottom: 1rem;
    align-items: flex-start;
    align-content: space-between;
    column-gap: 0.5rem;
    align-self: stretch;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--border-regular);
}

.list-profile:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.list-profile__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--mds-gutter-sm);
    flex: 1 0 0;
}
/* Eon's list-profile code : END */


/* Pattern - Horizontal List Styles -------- */
/* ---------------------------------------- */
/* --------------------------------------- */
/* -------------------------------- (°_°) */

.horz-list, .profile__supportive-info{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
    justify-content: flex-start;
    list-style: none;
    padding: 0;
    margin: 0;
    overflow: hidden;
}

.horz-list__item, .profile__supportive-info-item{
    position: relative;
    left: calc((-1 * var(--mds-spacing-2)) + -.3rem);
    display: flex;
    align-items: center;
    font-size: var(--mds-fs-2);
    color: var(--text-secondary);
}

.horz-list__item::before, .profile__supportive-info-item::before {
    content: "";
    width: var(--mds-spacing-2);
    height: var(--mds-spacing-2);
    border-radius: var(--mds-radius-round);
    margin-right: 0.5em;
    background-color: var(--text-primary-65pct);
}








/* Layout Styles --------------------------------- */
/* ---------------------------------------- (°_°) */


.grid{display: grid;}

.grid--2col{grid-template-columns: repeat(2, 1fr) !important;}
.grid--4col{grid-template-columns: repeat(4, 1fr) !important;}
.grid--9col{grid-template-columns: repeat(9, 1fr) !important;}
.grid--12col{grid-template-columns: repeat(12, 1fr) !important;}

.grid-span--1col{grid-column: span 1;}
.grid-span--2col{grid-column: span 2;}
.grid-span--3col{grid-column: span 3;}
.grid-span--4col{grid-column: span 4;}
.grid-span--5col{grid-column: span 5;}
.grid-span--6col{grid-column: span 6;}
.grid-span--7col{grid-column: span 7;}
.grid-span--8col{grid-column: span 8;}
.grid-span--9col{grid-column: span 9;}
.grid-span--10col{grid-column: span 10;}
.grid-span--11col{grid-column: span 11;}
.grid-span--12col{grid-column: span 12;}

.grid--12col__1-3{grid-column: 1/3;}
.grid--12col__1-4{grid-column: 1/4;}
.grid--12col__3-7{grid-column: 3/7;}
.grid--12col__4-7{grid-column: 4/7;}
.grid--12col__7-13{grid-column: 7/13;}

.gap-1 {gap: .25rem !important;}
.gap-2 {gap: .5rem !important;}
.gap-3 {gap: 1rem !important;}
.gap-4 {gap: 1.5rem !important;}
.gap-4 {gap: 1.5rem !important;}
.gap-5 {gap: 2rem !important;}
.gap-6 {gap: 2.5rem !important;}
.gap-7 {gap: 3rem !important;}

.col-count-2{
    column-count: 2;
    column-gap: 1.5rem;
}

.col-count-3{
    column-count: 3;
    column-gap: 1.5rem;
}

.grid__content-col .grid{
    align-items: flex-start;
}

@media (max-width: 750px) { 
    .col-count-2{
        column-count: 1;
    }
}

.sidebar-column .sticky-top {/*top: 101px;*/}
.sticky-top {/*top: 101px;*/}

@media (max-width: 1280px){.sticky-top {/*top: 126px;*/}}
@media (max-width: 576px) {.sticky-top {/*top: 101px;*/}}












/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* Navigation Styles */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */



/* All Pub Sites Structural Styles */

/* Navigation Styles ------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */




/* All Pub Sites Nav Styles */

nav {
  position: relative;
  top: auto;
  background: none;
}

.nav{
    display: flex;
    width: 100%;
}

.navbar{
    width: 100%;
}

.navbar > .container-fluid{
    flex-wrap: wrap;
    position: relative;
    padding-top: var(--mds-padding-sm);
    padding-bottom: var(--mds-padding-sm);
}

.navbar__left, .navbar__center, .navbar__right{
    transition: var(--mds-anim-normal); 
}

.navbar__left{
    display: flex;
    align-items: center;
    column-gap: 1rem;
    height: 100%;
    order: 3;
    border-left: 0px solid var(--divider);
    /* For phase 2
    order: 1;
    */
}

.navbar__center{
    order: 1;
    /* For phase 2
    order: 2;
    */
}

.navbar__right{
    display: flex;
    align-items: center;
    column-gap: 1rem;
    order: 2;
    /* For phase 2
    order: 3;
    */
}

.navbar__logo, .navbar__logo a{
    display: block;
}

.navbar__logo-img{
    display: block;
    max-width: min-content;
}

.navbar__left{
    display: flex;
    align-items: center;
    column-gap: 1rem;
    margin: auto 0;
}

.navbar__right{
    display: flex;
    align-items: center;
    column-gap: 1rem;
}

.navbar-toggler--hamburger{
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
    z-index: 3;
}

.navbar-toggler--hamburger::before, .navbar-toggler--hamburger::after  {
    content: '';
    display: block;
    width: 20px;
    position: absolute;
    -webkit-transition: all .3s ease;
    -ms-transition: all .3s ease;
    transition: all .3s ease;
}

.navbar-toggler--hamburger::before {
    height: 2px;
    background: #BCBEC0;
}

.navbar-toggler--hamburger::after {
    border-top: 2px solid #BCBEC0;
    border-bottom: 2px solid #BCBEC0;
    height: 14px;
}

.navbar-toggler:focus{
    box-shadow: none;
}

.navbar-toggler--hamburger.menu-open::before, .navbar-toggler--hamburger.menu-open::after {
    width: 19px;
    -webkit-transition: all .3s ease;
    -ms-transition: all .3s ease;
    transition: all .3s ease;
}

.navbar-toggler--hamburger.menu-open::before {
    background: #3B3B3C;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.navbar-toggler--hamburger.menu-open::after {
    border: 0;
    height: 2px;
    border-top: 0px solid transparent;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.navbar-toggler--hamburger:hover::before, .navbar-toggler--hamburger.menu-open::before {
    background: #3B3B3C;
    -webkit-transition: all .3s ease;
    -ms-transition: all .3s ease;
    transition: all .3s ease;
}

.navbar-toggler--hamburger:hover::after {
    border-top: 2px solid #3B3B3C;
    border-bottom: 2px solid #3B3B3C;
}

.navbar-collapse.show{
    display: flex;
}

.navbar-nav .dropdown-menu ul{
    list-style: none;
    padding-left: 0;
}

.navbar--megamenu{
    position: relative;
}

.navbar--megamenu > .container-fluid, .navbar--megamenu .navbar__left, .navbar--megamenu .navbar-collapse, .navbar--megamenu .navbar-nav, .navbar--megamenu .navbar-nav .nav-item{
    position: initial;
    height: 100%;
}

.navbar--megamenu .navbar-nav{
    width: 100%;
}

.navbar--megamenu .navbar-nav .nav-link{
    display: flex;
    align-items: center;
    height: 100%;
}

.navbar--megamenu .navbar-nav .dropdown-menu--megamenu{
    width: 100%;
    border-radius: 0;
    border: 0;
}

.dropdown-menu__megamenu-section{}


/* Umbrella Nav Styles */

.umbrella-nav{
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 44px;
    background: #EAEBEB;
    border-bottom: 1px solid #BCBEC0; 
    z-index: 1250;
    position: relative;
}

.umbrella-nav .navbar__left {
    order: 1;
}

.umbrella-nav .navbar__center {
    order: 2;
}

.umbrella-nav .navbar__right {
    order: 3;
}

.umbrella-nav__specialty-logo{

}

.umbrella-nav .navbar__logo{
    margin: auto;
}

.umbrella-nav .navbar__logo-img{
    width: 100px;
}

.umbrella-nav .specialties-menu-toggle{
    align-items: center;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    color: var(--secondary-gray-90);
    font-weight: 300; 
    margin: auto;
    gap: 0;
    padding: .25rem .5rem;
    min-width: 31px;
    min-height: 31px;
}

.umbrella-nav .specialties-menu-toggle:hover, .umbrella-nav .specialties-menu-toggle.show{
    color: var(--primary-clr-1);
}

.umbrella-nav .specialties-menu-toggle.dropdown-toggle::after {
    top: auto;
}

.umbrella-nav .btn__sign-in, .umbrella-nav .btn__sign-in a{
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    color: var(--secondary-gray-90);
    font-weight: 300;
    text-decoration: none;
}

.umbrella-nav .btn__sign-in:hover, .umbrella-nav .btn__sign-in:hover > a{
    color: var(--jadpro-primary-clr);
    text-decoration: none;
}

.umbrella-nav .btn__sign-in path{
    transition: .2s ease-in-out;
}

.umbrella-nav .btn__sign-in:hover path{
    fill: var(--jadpro-primary-clr);
    transition: .2s ease-in-out;
}

.umbrella-nav .btn__sign-in .dropdown-toggle::after{
    content: none;
}

.btn__sign-in.dropdown{
    color: var(--jadpro-body-text);
}

.btn__sign-in.dropdown:hover .dropdown-toggle{
    color: var(--jadpro-primary-clr);
}

.btn__sign-in.dropdown:hover .btn_sign-in-icon path{
    fill: var(--jadpro-primary-clr);
}

.btn__sign-in.dropdown .dropdown-menu {
    padding: 0;
    top: 99%;
    right: 0;
    margin-top: 0;
    left: auto;
    min-width: 100%;
    border: 1px solid #BCBEC0;
    overflow: hidden;
}

.btn__sign-in.dropdown:hover .dropdown-menu {
    display: block;
}

.btn__sign-in.dropdown .dropdown-menu .dropdown-item{
    padding: .25rem .5rem;
    min-width: 31px;
    min-height: 31px;
}

.umbrella-nav .btn--advertise{
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    color: var(--secondary-gray-90);
    font-weight: 300;
    text-decoration: none;
    border-left: 1px solid var(--secondary-gray-40);
    border-radius: 0;
    padding: .85rem .5rem .85rem 1.5rem;
    height: 100%;
    gap: 0;
}

.umbrella-nav .btn--advertise:hover{
    border-left: 1px solid var(--secondary-gray-40);
    text-decoration: none;
}

@media (max-width: 576px) {
    .btn--advertise .mobile-hide{
        display: none;
    }
}

.specialties-menu {
    font-family: "Poppins", sans-serif;
    z-index: 1240;
    padding: 4rem 2rem 4.5rem 2rem;
    border-top: 1px solid #BCBEC0;
    border-bottom: 1px solid #BCBEC0;
}

.specialties-menu.show {
    top: 100%;
}

.specialties-menu__list{
    column-count: 3;
    margin-bottom: 0;
}




/* Pub Nav Styles */

.brand-nav{
    display: flex;
    align-items: center;
    width: 100%;
    background: white;
    border-bottom: 1.5px solid var(--jadpro-primary-clr);
    position: sticky;
    top: 0;
    z-index: 1230;
}

.brand-nav .navbar{
    min-height: 80px;
}

.brand-nav .navbar__logo-img{
    width: 150px;
}

.brand-nav .navbar-toggler--hamburger::before {
    height: 2px;
    background: var(--jadpro-primary-50);
}

.brand-nav .navbar-toggler--hamburger::after {
    border-top: 2px solid var(--jadpro-primary-50);
    border-bottom: 2px solid var(--jadpro-primary-50);
    height: 14px;
}

.brand-nav .navbar-toggler--hamburger:hover::before, .brand-nav .navbar-toggler--hamburger.menu-open::before {
    background: var(--jadpro-primary-clr);
}

.brand-nav .navbar-toggler--hamburger:hover::after {
    border-top: 2px solid var(--jadpro-primary-clr);
    border-bottom: 2px solid var(--jadpro-primary-clr);
}

.brand-nav .navbar-toggler--hamburger.menu-open::after{
    border-top: 0px solid transparent;
    border-bottom: 2px solid var(--jadpro-primary-clr);
    height: 2px;
}

.brand-nav .navbar-toggler--hamburger.menu-open:hover::before {
    background: var(--jadpro-secondary-clr);
}

.brand-nav .navbar-toggler--hamburger.menu-open:hover::after {
    border-bottom: 2px solid var(--jadpro-secondary-clr);
}

.navbar-toggler__icon::after {
    background-color: var(--jadpro-light-clr);
    border-radius: .5rem;
}

.brand-nav .navbar-toggler .fill--clr-1{
    fill: var(--jadpro-body-clr);
    transition: .2s ease-in-out;
}

.brand-nav .navbar-toggler:hover .fill--clr-1{
    fill: var(--jadpro-primary-clr);
    transition: .2s ease-in-out;
}

/* This is overriding umbrella styles. Adjust umbrella html/css to have custom class for original styles so the following is  */
.navbar-toggler__icon-inner::before, .navbar-toggler__icon-inner::after {
    content: none;
}

.brand-nav .navbar-nav .nav-link{
    font-family: var(--jadpro-body-font);
    font-size: 1rem;
    color: var(--jadpro-body-clr);
    padding: .5rem 1rem;
    min-height: 24px;
    text-decoration: none;
}

.brand-nav .navbar-nav .nav-link:hover, .brand-nav .navbar-nav .dropdown-toggle.show{
    color: var(--jadpro-secondary-clr);
    text-decoration: none;
}

.dropdown-toggle::after {
    display: inline-block;
    color: var(--mds-primary-blue-90);
    font-size: .75rem;
    margin-left: .15em;
    vertical-align: .255em;
    font-family: 'Material Icons';
    content: "\e5cf";
    border: none;
    line-height: 0;
    position: relative;
    opacity: .5;
    text-decoration: none;
    transition: all 0.25s ease-in-out;
}

.dropdown-toggle:hover::after, .dropdown-toggle.show::after {
    color: var(--mds-primary-blue-90);
}

.dropdown-menu[data-bs-popper] {
    top: 99%;
    left: 0;
    margin-top: 0;
}

.umbrella-nav .navbar__right .btn.btn--ntwk {
    display: none;
}

.umbrella-nav .navbar .navbar__right .dropdown-menu.show {
    display: flex;
    padding: var(--mds-padding-sm);
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: var(--Padding, 16px);
    border: none;
    border-radius: var(--mds-radius-sm);
    background: #E4EAF3;
}

.umbrella-nav .navbar .navbar__right .dropdown-menu .dropdown-item {
    color: var(--text-primary, rgba(0, 0, 0, 0.87));
    font-size: var(--mds-fs-3);
    font-style: normal;
    font-weight: var(--mds-fw-medium);
}

.dropdown-item{
    display: flex;
    align-items: center;
    column-gap: .5rem;
    white-space: normal;
}

.brand-nav .dropdown-toggle::after {
    color: var(--jadpro-primary-50);
    opacity: 1;
    top: 1px;
}

.brand-nav .dropdown-toggle:hover::after, .dropdown-toggle.show::after {
    color: var(--jadpro-secondary-clr);
    opacity: 1;
    transition: all 0.25s ease-in-out;
}

.brand-nav .navbar-nav .dropdown-menu {
    padding: 2.5rem 0;
    background-color: var(--jadpro-gray-10);
    border-bottom: 1.5px solid var(--jadpro-primary-clr);
}

.brand-nav .dropdown-menu--megamenu > *{
    display: grid;
    grid-gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(242px, 1fr));
}

.dropdown-menu__megamenu-section ul {
    padding: .5rem 0;
}

.dropdown-menu__megamenu-section-header{
    display: flex;
    column-gap: .5rem;
    align-items: center;
    padding-bottom: .25rem;
    border-bottom: 2px solid var(--jadpro-secondary-clr);
    text-decoration: none;
}

.dropdown-menu__megamenu-section-header:hover{
    color: inherit;
    text-decoration: none;
}

.dropdown-menu__megamenu-section-header--empty{
    border-bottom: 0px solid transparent;
}

.dropdown-menu__megamenu-title{
    font-size: 1.125rem;
    margin-bottom: 0.125rem;
}

.brand-nav .navbar-nav .dropdown-menu ul{

}

.brand-nav .dropdown-item {
    padding: .5rem 1.5rem;
    color: var(--jadpro-body-text);
}

.brand-nav .dropdown-item .fill--clr-1{
    fill: var(--jadpro-body-text);
}

.brand-nav .dropdown-item:hover .fill--clr-1{
    fill: var(--jadpro-primary-clr);
}

.brand-nav .dropdown-item:hover {
    color: var(--jadpro-primary-clr);
    background-color: transparent;
    text-decoration: none;
}

.brand-nav .dropdown-item:hover span {
    text-decoration: underline;
}

.dropdown-item--view-all::after {
    display: inline-block;
    color: var(--jadpro-primary-clr);
    font-size: .75rem;
    margin-left: .15em;
    vertical-align: .255em;
    font-family: 'Material Icons';
    content: "\e5cf";
    border: none;
    line-height: 0;
    position: relative;
    top: auto;
    opacity: .5;
    text-decoration: none;
    transform: rotate(-90deg);
    transition: all 0.25s ease-in-out;
}

.dropdown-item--view-all:hover::after {
    text-decoration: none;
    transition: all 0.25s ease-in-out;
}

.brand-nav .btn--search {
    color: var(--jadpro-body-text);
    text-decoration: none;
}

.brand-nav .btn--search:hover {
    color: var(--jadpro-secondary-clr);
    text-decoration: none;
}

 .mobile-search-cta{
    display: flex;
    justify-content: space-between;
    width: calc(100% - 2rem);
    padding-top: 1rem;
    margin: 0 1rem 1rem 1rem;
    border-top: 1px solid var(--jadpro-primary-20);
}

.mobile-search-cta .btn--search {
    color: var(--jadpro-body-clr);
}


@media (min-width: 992px) {
/*
    .brand-nav .navbar-nav .dropdown-menu {
        box-shadow: var(--shadow-sm);
    }
*/
}

@media (min-width: 768px) {
    .navbar-expand-md .navbar-nav {
        position: inherit;
    }
}

@media (min-width: 576px){
    .mobile-search-cta{
        display: none;
    }
}

@media (max-width: 1280px) { 
    .brand-nav .navbar__left{
        /* width: 100%; */
        position: relative;
    }

    .brand-nav .navbar-nav .dropdown-menu--megamenu {
        width: calc(100% + 1.5rem);
        margin: 0 -.75rem;
    }

    .brand-nav .navbar__right{
        /* width: calc(100% + 1.5rem); */
        background-color: var(--jadpro-primary-clr);
        /*padding: .5rem .75rem;*/
        padding: 0 .75rem;
        margin: 0 -.75rem;
        justify-content: space-between;
    }

    .brand-nav .btn--search {
        color: white;
        text-decoration: none;
        background: transparent;
    }

    .brand-nav .btn--search:hover {
        color: var(--jadpro-secondary-clr);
    }

    .brand-nav .navbar__right .btn, .mobile-search-cta .btn{
        /*
        padding: .25rem .5rem;
        min-height: 24px;
        font-size: .85rem;
        */
        min-height: 24px;
        padding: .25rem 0;
    }

    .brand-nav .navbar__right .btn__span, .mobile-search-cta .btn__span{
        padding: .125rem .35rem;
        font-size: .85rem;
        border-radius: .35rem;
        transition: .2s ease-in-out;
    }

    .navbar__right .btn--light:hover {
        color: var(--jadpro-primary-clr);
    }

    .brand-nav .navbar__right .btn--light, .brand-nav .navbar__right .btn--primary{
        background-color: transparent;
        border: 0px solid transparent;
    }
    
    .brand-nav .navbar__right .btn--light .btn__span{
        background-color: var(--jadpro-light-clr);
        border: 1px solid var(--jadpro-light-clr);
    }

    .brand-nav .navbar__right .btn--primary .btn__span{
        background-color: var(--jadpro-secondary-clr);
        border: 1px solid var(--jadpro-secondary-clr);
    }

    .brand-nav .navbar__right .btn--light:hover .btn__span, .brand-nav .navbar__right .btn--primary:hover .btn__span{
        color: var(--jadpro-primary-clr);
        background-color: white;
        border: 1px solid white;
        box-shadow: var(--shadow-sm);
        transition: .2s ease-in-out;
    }
}

@media (max-width: 992px) {
    .brand-nav  .grid-span--1col, .brand-nav .grid-span--2col, .brand-nav .grid-span--3col, .brand-nav .grid-span--4col, .brand-nav .grid-span--5col, .brand-nav .grid-span--6col, .brand-nav .grid-span--7col, .brand-nav .grid-span--8col, .brand-nav .grid-span--9col, .brand-nav .grid-span--10col, .brand-nav .grid-span--11col, .brand-nav .grid-span--12col{
        grid-column: span 12;
    }

    .brand-nav .col-count-2, .brand-nav .col-count-3{
        column-count: 1;
    }

    .brand-nav .navbar__left{
        /* width: 100%; */
        justify-content: space-between;
    }

    .brand-nav .navbar-collapse {
        flex-direction: column;
        align-items: flex-start;
        width: calc(100% + 1.5rem);
        height: auto;
        margin: 0 -.75rem;
        position: absolute;
        top: 80px;
        background: white;
        border-bottom: 1.5px solid var(--jadpro-primary-clr);
        transition: all .2s ease-in-out;
    }

    .white-bottom-overlay{
        width: 100%;
        position: relative;
        transition: all .2s ease-in-out;
    }

    .white-bottom-overlay::after {
        content: '';
        height: 2rem;
        position: absolute;
        bottom: 0;
        right: 0;
        left: 0;
        background: linear-gradient(rgba(255,255,255,0.0), rgba(255,255,255,1));
        pointer-events: none;
        transition: all .3s ease-in-out;
    }

    .white-bottom-overlay::before {
        content: '';
        height: 2rem;
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        background: linear-gradient(rgba(255,255,255,1), rgba(255,255,255,0));
        pointer-events: none;
        transition: all .2s ease-in-out;
    }

    .brand-nav .navbar-nav{
        display: flex;
        align-items: flex-start;
        height: auto;
        /* max-height: calc(70vh - 55px); */
        /* max-height: calc(100vh - 125.7px); */
        max-height:  calc(100vh - 125.7px - 51px);
        overflow-y: auto;
        padding: 0.5rem 0 1.5rem 0;
    }

    .brand-nav .navbar-nav .nav-item{
        width: 100%;
    }

    .brand-nav .navbar-nav .dropdown-menu {
        padding: 1rem 0;
        border-bottom: 1.5px solid transparent;
    }

    .brand-nav .navbar-nav .dropdown-menu--megamenu {
        width: 100%;
        margin: 0;
    }

    .brand-nav .dropdown-menu--megamenu > * {
        grid-template-columns: 1fr !important;
    }

    .brand-nav .grid--12col__1-3, .brand-nav .grid--12col__3-7, .brand-nav .grid--12col__7-13{
        grid-column: span 12;
    }

    .dropdown-menu__megamenu-section-header--empty{
        display: none;
    }
}

@media (max-width: 576px){
    .umbrella-nav .navbar__right .btn.btn--ntwk {
        display: block;
    }

    .umbrella-nav .navbar__right .btn.btn--mdspire, .umbrella-nav .navbar__right .btn.btn--conexiant, .umbrella-nav .navbar__right .btn.btn--conexiant-solutions {
        display: none;
    }

    .brand-nav .btn--search {
        color: var(--jadpro-dark-clr);
    }
}


/* Pub Search Modal Styles */


.modal-backdrop {
    background: linear-gradient(180deg, rgba(2, 10, 16,.97) 10%, rgba(2, 10, 16,.6) 100%);
    z-index: 1290 !important;
}

#searchModal form, .search form{
    display: flex;
    align-items: stretch;
    border-radius: var(--mds-radius-md);
    overflow: hidden;
}

#searchModal .form-control, .search .form-control{
    padding: var(--mds-padding-sm) var(--mds-padding-smedium);
    color: var(--text-primary);
    background-color: var(--background-primary);
    border: 0px solid transparent;
    border-radius: 0;
    transition: .2s ease-in-out;
}

#searchModal .form-control::placeholder, .search {
    color: var(--text-primary-65pct);
}


#searchModal .form-control:focus, 
#searchModal .form-control:active, 
#searchModal .form-control:focus-within,
.search .form-control:focus,
.search .form-control:active,
.search .form-control:focus-within{
    background-color: var(--background-primary);
    color: var(--text-primary);
    border: 0px solid transparent;
    transition: .2s ease-in-out;
}

#searchModal form button, .search form button{
    position: relative;
    inset: auto;
    border: none;
    background: var(--background-dark);
    padding: var(--mds-padding-xs) var(--mds-padding-sm);
    border-radius: 0;
}

#searchModal form button:hover, .search form button:hover{
    background: var(--background-primary);
    transition: .2s ease-in-out;
}

#searchModal form button svg, .search form button svg{
    position: relative;
    right: auto;
    top: auto;
    height: 20px;
    overflow: visible;
}

#searchModal button path, .search button path{
    fill: var(--text-primary-contrastText);
    transition: .2s ease-in-out;
}

#searchModal button:hover path, .search button:hover path{
    fill: var(--text-primary);
    transition: .2s ease-in-out;
}

#searchModal form svg:hover path, .search form svg:hover path{
    fill: var(--text-primary);
}

#searchModal .btn-close, .search .btn-close{
    border-radius: .35rem;
    min-width: 24px;
    min-height: 24px;
}

#searchModal .btn-close:hover, .search .btn-close:hover{
    background-color: var(--jadpro-secondary-clr);
    transition: .2s ease-in-out;
}













/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* Homepage Styles */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */

.featured-articles{
    align-items: flex-start;
}

.featured-articles__secondary{
    height: 100%;
}












/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* Subpage Styles */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */



/* Article Page Styles */

.page-layout--article {
    display: grid;
    grid-template-areas:
        "article            aside"
        "list-container     aside";
    grid-template-columns: 1fr 18.875rem;
    grid-template-rows: auto 1fr;
    grid-gap: var(--mds-gutter-xl) var(--mds-gutter-md);
    padding-bottom: 1.5rem;
}

.page-layout--article .article{
    grid-area: article;
    position: relative;
    display: grid;
    grid-template-areas:
        "article-header"
        "article-body-1"
        "article-body-2"
        "article-body-3";
    padding: 0;
}

.page-layout--article .article > *{
    padding-left: var(--mds-padding-article-body);
    padding-right: var(--mds-padding-article-body);
    background-color: var(--background-primary);
}

.page-layout--article .article > :first-child{
    padding-top: var(--mds-padding-article-body);
    border-radius: var(--mds-radius-md) var(--mds-radius-md) 0 0; 
}

.page-layout--article .article .mds-tabs__panel{
    padding-left: calc(var(--mds-padding-article-body) + var(--mds-padding-xl));
    padding-right: calc(var(--mds-padding-article-body) + var(--mds-padding-xl));
}

.page-layout--article .article .panel-full-article--3, .panel-summary, .panel-takeaways, .panel-listen {
    padding-bottom: var(--mds-padding-xl);
}

.page-layout--article .article .panel-full-article--3{
    border-radius:  0 0 var(--mds-radius-md) var(--mds-radius-md); 
}

.panel-full-article--1, .panel-summary, .panel-takeaways, .panel-listen{
    padding-top: var(--mds-padding-md);
}

.article .article__header{
    grid-area: article-header; 
    border: none;
    margin: 0;
}
.panel-full-article--1{grid-area: article-body-1;}
.panel-full-article--2{grid-area: article-body-2;}
.panel-full-article--3{grid-area: article-body-3;}
.area--list-container {grid-area: list-container;}

.mds-tabs--article {
    margin: .5rem 0 0 0;
}

.mds-tabs--article .mds-tabs__list {
    padding: 0 0;
}

.panels--article-body {
    padding: 0 var(--mds-padding-xxl);
}


.area--list-container{
    gap: var(--mds-gutter-sm);
}

.area--list-container h2, .area--list-container h3, .area--list-container h4, .area--list-container h5{
    margin-top: var(--mds-padding-lg);
    margin-bottom: var(--mds-gutter-xs);
}

.area--list-container h2:first-of-type, .area--list-container h3:first-of-type, .area--list-container h4:first-of-type, .area--list-container h5:first-of-type{
    margin-top: 0;
}

.list-card {
    display: flex;
    flex-direction: row;
    min-height: 9.375rem;
    padding: var(--mds-padding-lg);
    justify-content: center;
    align-items: center;
    gap: var(--mds-gutter-lg);
    align-self: stretch;
}

.list-card .card__copy {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    order: 1;
}

.list-card .thumbnail--article {
    aspect-ratio: 287.00/161.44;
    order: 2;
    max-width: 300px;
}

.list-card .thumbnail--article img {
    border-radius: 0.25rem;
    width: 100%;
    aspect-ratio: 16 / 9;
    transition: .2s ease-in-out;
}

.list-card .card__copy h5 {
    margin-bottom: 0;
}

.list-card .card__copy p {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    align-self: stretch;
}

/*
@media (min-width: 970px) {
    .page-layout--article .area--ad-1{
        min-height: 100svh;
    }
}
*/

@media (max-width: 970px) {
    .page-layout--article {
        grid-template-areas:
        "article-header"
        "article-body-1"
        "ad-1"
        "article-body-2"
        "ad-2"
        "article-body-3"
        "promo-1"
        "promo-2"
        "list-container"    
        "footer";
        grid-template-columns: 1fr;
        grid-template-rows: repeat(10, auto);
    }

    .page-layout--article .article, .area--aside{
        display: contents;
    }

    .mds-tabs__panel{
        box-shadow: var(--mds-shadow-xs);
    }

    .panel-full-article--1, .panel-summary, .panel-takeaways, .panel-listen{
        margin-top: calc(-1 * var(--mds-gutter-xl));
    }

    .page-layout--article .area--ad-1 , .page-layout--article .area--ad-2 {
        margin-top: calc(-1 * var(--mds-gutter-xl));
        margin-bottom: calc(-1 * var(--mds-gutter-xl));
        padding: var(--mds-padding-xl) var(--mds-padding-article-body);
        padding-top: calc(var(--mds-padding-xl) - .25rem);
        background-color: var(--background-primary);
    }
}

@media (max-width: 560px) {
    .page-layout--article .article .mds-tabs__panel{
        padding-left: var(--mds-padding-article-body);
        padding-right: var(--mds-padding-article-body);
    }
}










/* OLD Styles */
.article {
    background-color: white;
    border-radius: 0.35rem;
    border: 0px solid transparent;
    padding: 2.5rem;
    position: relative;
}

article p {
    color: var(--jadpro-body-clr);
}

.article__header{
    margin: 0 0 var(--mds-padding-md) 0;
    border-bottom: 0;
}

.actions-bar{
    display: flex;
    justify-content: space-between;
    gap: .5rem;
    padding: .5rem 0;
    border-top: 1px solid var(--secondary-clr-1-50);
    overflow-x: auto;
}

.article__aside-actions-bar{
    display: grid;
    grid-gap: .5rem;
}

.article__header-socials{
    display: flex;
    align-items: center;
    gap: .5rem;
    justify-content: flex-start;
    position: absolute;
    top: var(--mds-padding-xl);
    right: var(--mds-padding-xl);
}

.article__header-badges{
    display: flex;
    gap: .5rem
}

.authors-list {
    margin: 2rem 0;
    line-height: 31px;
    font-size: .65rem;
}

.article__header .author-name, .article__header a.author-name {
    color: var(--jadpro-gray-80);
}

.article__header a.author-name:hover {
    color: var(--jadpro-primary-clr);
}

.article__header h1 {
    margin-top: var(--mds-padding-lg);
    margin-bottom: var(--mds-padding-smedium);
}

.article__header .article__teaser {
    margin-bottom: 1rem;
}

.article__header .horz-list {
    margin: 1.5rem 0;
}

@media (max-width: 560px) {
    .article__header h1 {
        margin-top: var(--mds-padding-md);
        margin-bottom: var(--mds-padding-xs);
    }
}


/* Override styles : START */
/* These are overriding styles on umbrella.css. Fix specificity war and then remove these */
.article-container .article-header button.btn--light {
    line-height: 1;
    font-size: .75rem;
    padding: .25rem .5rem;
    color: var(--jadpro-body-text);
    background-color: var(--jadpro-light-clr);
    border: 1px solid var(--jadpro-light-clr);
}

.article-container .article-header button.btn--light:hover {
    color: white;
    background-color: var(--jadpro-primary-clr);
    border: 1px solid var(--jadpro-primary-clr);
}

.article-container .article-header .authors-list button.btn--link {
    line-height: 1;
    font-size: .75rem;
    padding: .25rem .5rem;
    color: var(--jadpro-primary-clr);
    background-color: transparent;
    border: 1px solid transparent;
}

.article-container .article-header .authors-list button.btn--link:hover {
    background-color: transparent;
}
/* Override styles : END */

.article__header-title{
    font-size: 3rem;
    font-family: var(--jadpro-header-font);
    font-weight: 700;
    margin-top: .75rem;
}

.article__teaser {
    font-size: 1.25rem;
}

.article-content h2, .article-content h2.article__title {
    font-size: 2rem;
    font-family: var(--jadpro-header-font);
    font-weight: 700;
    margin-top: 2.5rem;
}

.article-content h3, .article-content h3.article__title {
    font-size: 1.5rem;
    font-family: var(--jadpro-header-font);
    font-weight: 700;
    margin-top: 1.5rem;
}

.article-content h4, .article-content h4.article__title {
    font-size: 1.125rem;
    font-family: var(--jadpro-body-font);
    font-weight: 800;
    margin-top: 2rem;
}

.article-content h5, .article-content .article__title h5{
    font-size: 1rem;
    font-family: var(--jadpro-body-font);
    font-weight: 800;
    margin-top: 1.5rem;
}

.article-content p{
    font-size: 1rem;
}

.article-content hr{
    margin: 1rem 0;
}

.article__callout {
    background-color: var(--jadpro-primary-10);
    border: 1px solid transparent;
    padding: 1rem 1.5rem;
    margin: 1.5rem 0;
    border-radius: .5rem;
}

.article__callout h2:first-child, .article__callout h3:first-child, .article__callout h4:first-child, .article__callout h5:first-child, .article__callout p:first-child, .article__callout ul:first-child {
  margin-top: 0;
}

.article-content figcaption, .figure__caption, .article__caption {
    font-size: .85rem;
    color: var(--jadpro-gray-60);
    padding-top: .5rem;
    padding-bottom: .5rem;
    margin-bottom: 0;
    border-bottom: 1px solid var(--jadpro-gray-30);
}

.article__info-section .article__title {
    padding-top: 2rem;
    border-top: 1px solid var(--jadpro-gray-30);
    line-height: 1;
    margin-bottom: 1rem;
}

.article__reference-list {
    padding: 0;
    list-style: none;
    
}

/* Not styled yet. Work on when there is extra time */
.article__reference-list--numbers li::before{
    padding: 1.5rem;
    list-style: none;
}

.article__reference-list--numbers li::before{

}
/* Not styled yet. Work on when there is extra time */

.article__reference{
    position: relative;
    overflow: hidden;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--jadpro-gray-30);
}

.article__reference:last-child{
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0px solid transparent;
}

.article__reference .article__reference-content{
    margin-bottom: 0;
}

.article__reference-buttons{
    display: flex;
    flex-wrap: wrap;
    gap: 0 .25rem;
    margin: .75rem 0 0 0;
    position: relative;
    left: calc(-1rem - 1px);
    overflow: hidden;
}

.article__reference-button{
    margin: 0 0 0 .5rem;
    padding: 0 0 0 .5rem;
    border-left: 1px solid var(--jadpro-gray-30);
    line-height: 1;
    break-inside: avoid-column;
    display: inline-flex;
    gap: .5rem;
    align-items: center;
}



.article__author-card {
    display: flex;
    flex-direction: row;
    grid-gap: 1rem;
    min-height: 20px;
    padding: 1rem 1.5rem;
    margin-bottom: 1.5rem;
    background-color: var(--jadpro-primary-10);
    border: 0px solid transparent;
}


@media (max-width: 650px) {
    .article__header-socials {
        position: relative;
        top: auto;
        right: auto;
        margin: var(--mds-padding-md) 0;
    }
}




/* Takeaways Styles -------------- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.number-of-takeaways{
    font-weight: var(--mds-fw-bold);
}

.panel-takeaways ul {
    display: grid;
    grid-gap: var(--mds-gutter-sm);
}

.panel-takeaways ul .card{
    display: grid;
    grid-template-columns: var(--mds-fs-h4-display) 1fr;
    grid-template-rows: auto auto;
    align-items: center;
    padding: var(--mds-padding-lg);
    box-shadow: 0 0 0 transparent;
    border: 1px solid var(--mds-secondary-grey-10);
}

.panel-takeaways ul .card .display{
    grid-row: 1/3;
    grid-column: 1/2;
    margin: 0;
    line-height: 0.65;
    font-size: var(--mds-fs-h1-display);
    color: var(--mds-secondary-purple-60);
}

.panel-takeaways ul .card h5.header{
    grid-row: 1/2;
    grid-column: 2/3;
    margin: 0;
}
.panel-takeaways ul .card p{
    grid-row: 1/3;
    grid-column: 2/3;
    margin-bottom: 0;
}


/* Search Results Page Styles ---- */
/* ------------------------------ */
/* ----------------------------- */
/* ---------------------- (°_°) */

.page-layout--search{
    grid-template-areas:
        "search-bar     search-bar      search-bar"
        "filters        results         aside";
    grid-template-columns: 12.5rem 1fr 18.875rem;
    grid-template-rows: auto 1fr;
    grid-gap: var(--mds-gutter-md);
    padding-bottom: 1.5rem;
}

.area--search-bar{grid-area: search-bar;}
.area--search-filters{
    grid-area: filters;
    gap: var(--mds-gutter-sm);
}
.area--results-col{grid-area: results;}
.area--results-1{grid-area: results-1;}
.area--results-2{grid-area: results-2;}
.area--results-3{grid-area: results-3;}
.area--results-4{grid-area: results-4;}
.area--results-5{grid-area: results-5;}

/*
.page-layout--search .area--aside {
    grid-template-areas:
        "ad-1"
        "promo-1"
        "ad-2"
        "footer";
    grid-template-rows: auto auto auto 1fr;
}
*/

.area--search-filters .position-sticky{
    height: 100%;
    max-height: 90svh;
    overflow-y: scroll;
}

.area--results-col .search-filters__toggle-btn, 
.area--search-filters .search-filters__toggle-btn-close{
    display: none;
}

.area--results-col-header{
    display: flex;
    gap: var(--mds-gutter-md);
    justify-content: space-between;
    align-items: flex-end;
}

@media (max-width: 966px) {
    .page-layout--search{
        grid-template-areas:
            "search-bar     search-bar"
            "filters        results-1"
            "filters        ad-1"
            "filters        results-2"
            "filters        ad-2"
            "filters        results-3"
            "filters        promo-2"
            "filters        results-4"
            "filters        ad-3"
            "filters        results-5"
            "filters        footer";
        grid-template-columns: 12.5rem 1fr;
        grid-template-rows: repeat(11, auto);
    }

    .area--results-col {
        display: contents;
    }
}

@media (max-width: 634px) {
    .page-layout--search{
        position: relative;
        grid-template-areas:
            "search-bar"
            "results-1"
            "ad-1"
            "results-2"
            "ad-2"
            "results-3"
            "promo-2"
            "results-4"
            "ad-3"
            "results-5"
            "footer";
        grid-template-columns: 1fr;
        grid-template-rows: repeat(11, auto);
    }

    .area--results-col .search-filters__toggle-btn{
        display: inline-flex;
    }
    
    .area--search-filters .search-filters__toggle-btn-close{
        display: inline-flex;
        position: absolute;
        top: var(--mds-padding-lg);
        right: var(--mds-padding-lg);
    }
    
    .area--search-filters {
        position: fixed;
        inset: 0 auto 0 -100%;
        z-index: 1400;
        width: 100%;
        max-width: 60vw;
        transition: left .25s ease;
    }
    
    .area--search-filters .position-sticky{
        padding: var(--mds-padding-lg);
        background-color: var(--background-secondary);
        box-shadow: var(--mds-shadow-md);
        border-radius: 0;
        width: 100%;
        max-height: 100svh;
    }
    
    .area--search-filters.is-open {
        /* revealed: left = 0% */
        inset: 0 auto 0 0%;
    }

    /* Backdrop created by JS */
    .search-filters__backdrop {
        position: fixed;
        inset: 0;
        z-index: 1399; /* just below the panel */
        background: rgba(0,0,0,.4);
        opacity: 0;
        pointer-events: none;
        transition: opacity .2s ease;
    }
    
    .search-filters__backdrop.is-open {
        opacity: 1;
        pointer-events: auto;
    }

    /* Prevent background scroll when panel is open */
    body.filters-open {
        overflow: hidden;
    }
}

.search{
    display: flex;
    justify-content: center;
    padding: var(--mds-padding-xl);
    background: var(--card-backgrounds-gradient-90);    
    border: 1px solid var(--border-emphasis);
}

.search__max-width-wrapper{
    display: grid;
    grid-gap: var(--mds-gutter-sm);
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.area--search-filters .checkbox{
    border-bottom: 1px solid var(--divider);
}

.accordion.accordion--filters{
    gap: var(--mds-gutter-sm);
}

.accordion--filters .accordion-item{
    background-color: transparent;
}

.accordion--filters .accordion-button{
    border-radius: var(--mds-radius-sm) !important;
    box-shadow: var(--mds-shadow-xs);
}

.accordion__filter-btn-list .btn{
    padding-left: 0;
    padding-right: 0;
}

.accordion--filters .accordion-body {
    background-color: transparent;
    margin: 0 var(--mds-padding-xs) var(--mds-padding-md) var(--mds-padding-xs);
    padding: var(--mds-padding-xs) 0 0 0;
}


.accordion__filter-btn-list {
    display: grid;
    grid-gap: var(--mds-gutter-xs);
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.checkbox{
    position: relative;
    display: flex;
    padding-bottom: var(--mds-padding-xs);
}

/* Hide the checkbox visually but keep it accessible */
.accordion--filters input[type="checkbox"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0; /* invisible but clickable */
    margin: 0;
    cursor: pointer;
}

/* Style the label to look like regular clickable text */

.accordion--filters .checkbox label {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: var(--mds-gutter-xs);
    font-size: var(--mds-fs-3);
    width: 100%;
    cursor: pointer;
}

.accordion--filters .checkbox:hover label span {
    color: var(--text-primary-hover);
    transition: var(--mds-anim-normal);
}

/* Optional: add a visual cue when checked */
.accordion--filters input[type="checkbox"]:checked + label span {
    font-weight: var(--mds-fw-semibold);
    text-decoration: underline;
}

.results-number{
    color: var(--text-tertiary);
}

.area--search-filters .position-sticky p:first-child, .search__result-findings{
    color: var(--text-tertiary);
}

.search__result-findings-num, .search__result-findings-term{
    font-weight: var(--mds-fw-semibold);
    color: var(--text-secondary);
}

#activeFilters .accordion-body{
    margin: 0 0 var(--mds-padding-md) 0;
}

#activeFilters .accordion__filter-btn-list{
    display: flex;
    flex-wrap: wrap;
    gap: var(--mds-gutter-xs);
}

#activeFilters .checkbox {
    border-bottom: 1px solid var(--divider);
    font-size: var(--mds-fs-3);
    padding: 0 var(--mds-spacing-4);
    border: 1px solid var(--btn-secondary);
    min-width: 24px;
    min-height: 24px;
    border-radius: var(--mds-radius-sm);
    line-height: var(--mds-lh-dense);
}

#activeFilters .checkbox label{
    align-items: center;
}

#activeFilters .checkbox label svg, #activeFilters .checkbox label .icon{
    max-width: var(--mds-spacing-4); max-height: var(--mds-spacing-4);
}






.additional-links{
    display: flex;
    align-items: center;
    gap: 1rem;
}








.list-item--podcast{
    gap: 1rem;
}

.list-item--podcast .card__copy{
    order: 2;
    overflow: auto;
}

.list-item--podcast .list-thumb {
    order: 1;
    margin: 0 0 1.5rem 0rem;
    transition: .2s ease-in-out;
}

.list-item--podcast .list-thumb {
    aspect-ratio: 1/1;
}

.list-item--podcast .list-thumb img, .list-item--podcast .thumb-image img {
    border-radius: 0.25rem;
    width: 100%;
    aspect-ratio: 1/1;
    transition: .2s ease-in-out;
}



/* About Page Styles */

.brand-nav--promo-launch .navbar__left, .brand-nav--promo-launch .navbar__right {
    display: none;
}

.brand-nav--promo-launch .navbar__center {
    margin: 0 auto;
}

.top-bg-image {
    position: absolute;
    inset: 0 0 auto 0;
    z-index: -1;
}

.top-bg-image--shapes {
    margin: 0 auto;

    transform: translateX(-50%);
    max-width: 1200px;
    width: 100%;
    height: auto;
    inset: 0 50% auto 50%;
}

.top-bg-image--gradient {
    width: 100vw;
    height: 840px;
    object-fit: cover;
    --fade: 100%;
    -webkit-mask-image: linear-gradient(to top, transparent 0, #000 var(--fade), #000 calc(100% - var(--fade)), transparent 100%);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-image: linear-gradient(to top, transparent 50%, #000 var(--fade), #000 calc(100% - var(--fade)), transparent 100%);
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
    mask-mode: match-source;
}

.mds-bg-grey {
    background-color: var(--background-secondary);
}

.page-layout--about-us {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 var(--mds-padding-lg) var(--mds-padding-xl) var(--mds-padding-lg);
}

.area--about-us-body {
    gap: var(--mds-gutter-xxl);
}



.page-layout--about-us h5.display {
    max-width: 35ch;
    text-align: center;
}

.page-layout--about-us .content-teaser {
    border: 0;
    gap: 0;
}

.area--about-us-header {
    padding: var(--mds-padding-xxl) 0;
}

.area--about-us-body {
    width: 100%;
    max-width: 700px;
    padding: var(--mds-padding-xs) var(--mds-padding-md);
}

.about-us__intro {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--mds-gutter-sm);
}

.about-us__featured {
    display: flex;
    align-items: flex-start;
    gap: var(--mds-gutter-md);
    align-self: stretch;
}

.about--featured {
    padding: 0;
    min-width: 201.33px;
    border: 0;
    align-self: stretch;
}

.about-us__featured .thumbnail {
    border: none;
    aspect-ratio: auto;
}

.about-us__featured .content-teaser__header {
    padding: var(--mds-padding-smedium);
}

.about-us__cta {
    display: flex;
    flex-direction: row;
    padding-top: var(--mds-padding-xs);
    align-items: flex-start;
    gap: var(--mds-gutter-md);
    align-self: stretch;
}

.about-us__cta .card {
    width: 100%;
    min-width: 314px;
}

.about-us__form {
    background-color: var(--background-dark);
    padding: var(--mds-padding-md);
    border-radius: var(--mds-radius-md);
}

.about-us__form .card__body-title-row {
    flex-direction: column;
    gap: var(--mds-gutter-xs); 
}

.about-us__upcoming .card__body-title-row h5 {
    margin-bottom: 0;
}

.about-us__form .card__body-title-row h5, .about-us__form .card__body-title-row p {
    color: var(--text-primary-contrastText);
    margin-bottom: 0;
}

.about-us__upcoming {
    padding: 0;
    border: none;
}

.about-us__upcoming .card__body-title-row {
    padding: var(--mds-padding-md);
}

.accordion {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--mds-spacing-1);
    padding: var(--mds-spacing-1) 0 0 0;
    background-color: var(--background-secondary);
    /*border-radius: var(--mds-radius-sm);*/
}

.accordion-button {
    white-space: normal;
    line-height: 1.4;
    padding: var(--mds-padding-sm) var(--mds-padding-md);


    &:not(.collapsed) {
        color: var(--text-primary);
        background-color: var(--mds-secondary-grey-10);
        box-shadow: none;

        &::after {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23173440'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
            transform: var();
        }
    }

    &:focus {
        z-index: 3;
        border-color: none;
        outline: 0;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }
}

.accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23687B83'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.accordion-item {
    border: none;
    border-radius: var(--mds-radius-sm);
}

.accordion-item:first-of-type {
    border-radius: var(--mds-radius-sm);
}

.accordion-item:last-of-type {
    border-radius: var(--mds-radius-sm);
}

.accordion-body {
    display: flex;
    flex-direction: column;
    gap: var(--mds-gutter-xs);

    background-color: var(--mds-secondary-grey-10);
    padding: 0 var(--mds-padding-md) var(--mds-padding-sm) var(--mds-padding-md);
}

.accordion-body p:first-of-type {
    border-top: 1px solid rgba(23, 52, 64, 0.18);
    padding-top: var(--mds-padding-sm);
}

@media (max-width: 768px) {
    .about-us__cta {
        flex-direction: column;
    }

    .about-us__featured {
        flex-wrap: wrap;
    }

    .about-us__featured .content-teaser {
        flex-direction: row;
        padding: 0;
    }

    .about-us__featured .content-teaser__header {
        order: 1;
        z-index: 2;
        background: linear-gradient(90deg, white 80%, transparent);
    }

    .about-us__featured .thumbnail {
        order: 2;
        height: 100%;
        overflow: visible;
        z-index: 1;
    }

    
    .about-us__featured .thumbnail img {
        /*overflow: visible;*/
        transform: scale(1.02);
    }

    .about-us__cta .card {
        min-width: auto;
        width: 100%;
    }
}


@media (max-width: 425px) {
    .about-us__featured .content-teaser {
        flex-direction: column;
    }

    .about-us__featured .content-teaser__header {
        order: 2;
    }

    .about-us__featured .thumbnail {
        order: 1;
        width: 100%;
    }
}

/* MDSpire Marketo Form Styling : START */
/* ------------------------------------ */
.about-us__form-body {
    width: 100%
}

.about-us__form-body #mktoForm_3209.mktoForm {
    width: 100% !important;
    max-width: 100% !important;
}

.about-us__form-body form.mktoForm {
    padding-top: var(--mds-padding-smedium);
}

/* Target only the form inside your wrapper */
.about-us__form-body .mktoForm {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.about-us__form-body .mktoForm .mktoFieldDescriptor {
    margin-bottom: 0 !important;
}

.about-us__form-body .mktoForm .mktoFormCol, .about-us__form-body .mktoForm .mktoFieldWrap {
    float: none !important;
    width: 100%;
    display: block;
}

/* Input fields */
.about-us__form-body .mktoForm input[type="text"],
.about-us__form-body .mktoForm input[type="email"] {
    width: 100% !important;
    padding: var(--mds-padding-sm) var(--mds-padding-sm);
    border: 1px solid var(--border-regular);
    border-radius: var(--mds-radius-sm);
    font-size: 1rem;
    background: #fff;
    box-sizing: border-box;
    
    font-family: var(--mds-font);
}

.about-us__form-body .mktoForm input[type="text"]:focus,
.about-us__form-body .mktoForm input[type="email"]:focus,
.about-us__form-body .mktoForm textarea:focus,
.about-us__form-body .mktoForm select:focus {
    border-color: var(--border-focused);
    box-shadow: 0 0 0 1px var(--btn-focusedBorder);
    outline: none;
}

/* Placeholder styling */
.about-us__form-body form.mktoForm input::placeholder {
    color: #888;
}

.about-us__form-body .mktoForm .mktoLabel {
    display: none !important; /* hide labels */
}

.about-us__form-body form.mktoForm .mktoOffset, .about-us__form-body form.mktoForm .mktoGutter {
    display: none;
}

.about-us__form-body .mktoForm .mktoButtonWrap {
    margin-left: 0 !important;
}

/* Submit button */
.about-us__form-body .mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
    background: var(--btn-cta);
    color: var(--text-primary-contrastText);
    border: none;
    padding: var(--mds-padding-sm) var(--mds-padding-smedium);
    border-radius: var(--mds-radius-md);

    font-family: var(--mds-font);
    font-size: var(--mds-fs-4);
    font-weight: var(--mds-fw-regular);
    cursor: pointer;
    transition: background 0.3s ease;
    width: 100%;
}

/* Hover state */
.about-us__form-body .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover {
    background: var(--btn-cta-hover);
    border: none;
}

@media only screen and (max-width: 480px) {
    .about-us__form-body .mktoForm, 
    .about-us__form-body .mktoForm * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        padding: 0;
    }

    .about-us__form-body .mktoForm input[type=url], 
    .about-us__form-body .mktoForm input[type=text], 
    .about-us__form-body .mktoForm input[type=date], 
    .about-us__form-body .mktoForm input[type=tel], 
    .about-us__form-body .mktoForm input[type=email], 
    .about-us__form-body .mktoForm input[type=number], 
    .about-us__form-body .mktoForm textarea.mktoField, 
    .about-us__form-body .mktoForm select.mktoField {
        width: 100%;
        height: auto;
        line-height: 1.5em;
        font-size: 1rem;
    }
}

/* ---------------------------------- */
/* MDSpire Marketo Form Styling : END */


