@layer reset, framework, base, layout, components, utilities;
@layer framework {
  /* Bulma Utilities */
  :root {
    --bulma-control-radius: var(--bulma-radius);
    --bulma-control-radius-small: var(--bulma-radius-small);
    --bulma-control-border-width: 1px;
    --bulma-control-height: 2.5em;
    --bulma-control-line-height: 1.5;
    --bulma-control-padding-vertical: calc(0.5em - 1px);
    --bulma-control-padding-horizontal: calc(0.75em - 1px);
    --bulma-control-size: var(--bulma-size-normal);
    --bulma-control-focus-shadow-l: 50%;
  }
}
:root {
  --spacing-xs: 0.25rem;
  --spacing-s: 0.5rem;
  --spacing-m: 1rem;
  --spacing-l: 1.25rem;
  --spacing-xl: 1.5rem;
  --spacing-xxl: 2rem;
  --spacing-xxxl: 3rem;
  --spacing-hxl: 4rem;
}

@media only screen and (width <= 380px) {
  :root {
    --spacing-xs: 0.25rem;
    --spacing-s: 0.25rem;
    --spacing-m: 0.5rem;
    --spacing-l: 0.75rem;
    --spacing-xl: 1rem;
    --spacing-xxl: 1.5rem;
    --spacing-xxxl: 2rem;
    --spacing-hxl: 3rem;
  }
}
@media only screen and (width >= 769px) {
  :root {
    --spacing-xs: 0.25rem;
    --spacing-s: 0.75rem;
    --spacing-m: 1rem;
    --spacing-l: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-xxl: 3rem;
    --spacing-xxxl: 4rem;
    --spacing-hxl: 6rem;
  }
}
@media only screen and (width >= 1024px) {
  :root {
    --spacing-xs: 0.25rem;
    --spacing-s: 0.75rem;
    --spacing-m: 1rem;
    --spacing-l: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-xxl: 3rem;
    --spacing-xxxl: 4rem;
    --spacing-hxl: 6rem;
  }
}
@layer components {
  #fundsheader {
    border-bottom: 1px solid #e8e8e8;
    position: sticky;
    -webkit-position: sticky;
    inset-block-start: 110px;
    top: 110px;
    left: 0;
    background: #fff;
    padding-top: 15px;
    z-index: 100;
  }
  @media (width <= 1024px) {
    #fundsheader {
      margin: 0 3rem !important;
      max-width: 100% !important;
      top: 0;
      inset-block-start: 0;
    }
  }
  @media (width <= 767px) {
    #fundsheader {
      display: flex;
      flex-direction: row !important;
      margin: 0 1rem !important;
      top: 20px;
    }
  }
  @media (width <= 1024px) {
    #fundsheader .column {
      margin: 0 !important;
    }
  }
  @media (width <= 767px) {
    #fundsheader .column.mindful-list-indicator {
      flex-shrink: 3;
    }
    #fundsheader .column.mindful-list-indicator img {
      width: 16px;
      height: 16px;
    }
  }
  @media (width <= 767px) {
    #fundsheader .column.fund-list-name {
      flex-grow: 3;
    }
  }
  @media (width <= 767px) {
    #fundsheader .column.fund-list-returns {
      flex-grow: 3;
      text-align: left !important;
    }
  }
  #fundsheader a {
    font-weight: 400;
    font-size: 16px;
    padding: 25px 15px;
    text-decoration: none;
    transition: all 0.7s ease;
    position: relative;
  }
  #fundsheader a span {
    vertical-align: bottom;
    opacity: 0.4;
    margin-left: 5px;
    transition: all 0.3s ease;
  }
  #fundsheader a.name {
    text-align: left;
  }
  #fundsheader a div.notice {
    position: absolute;
    opacity: 0;
    display: none;
  }
  #fundsheader a:hover span {
    opacity: 1;
  }
  #fundsheader a:hover div.notice {
    display: block;
    opacity: 1;
    bottom: 80%;
    left: 10%;
    margin-bottom: 10px;
    background: #fff;
    border-radius: 10px;
    text-align: left;
    padding: 20px;
    line-height: 130%;
    width: 120%;
    font-size: 14px;
    z-index: 700;
    color: #333;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
  }
  #fundsheader a:hover div.notice .is-col {
    text-align: center;
  }
  @media (width <= 1080px) {
    #fundsheader a:hover div.notice {
      display: none;
    }
  }
  #fundsheader a:hover div.notice img {
    max-width: 30px;
    height: auto;
    display: inline-block;
  }
  #fundsheader a:hover div.notice::after {
    bottom: -20px;
    left: 30%;
    border: solid transparent;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    border-top-color: #fff;
    border-width: 10px;
    margin-left: -10px;
  }
  #fundslist {
    list-style: none;
    padding: 0 !important;
    margin: 0;
  }
  @media (width <= 1024px) {
    #fundslist {
      margin: 0 3rem !important;
    }
  }
  @media (width <= 767px) {
    #fundslist {
      margin: 0 1rem !important;
    }
  }
  @media (width <= 1024px) {
    #fundslist .columns {
      max-width: 100% !important;
    }
  }
  @media (width <= 767px) {
    #fundslist .columns {
      display: flex;
      flex-direction: row !important;
    }
  }
  @media (width <= 1024px) {
    #fundslist .columns .column {
      margin: 0 !important;
    }
  }
  @media (width <= 767px) {
    #fundslist .columns .column.mindful-list-indicator {
      flex-shrink: 3;
    }
    #fundslist .columns .column.mindful-list-indicator img {
      width: 16px;
      height: 16px;
    }
  }
  @media (width <= 767px) {
    #fundslist .columns .column.fund-list-name {
      flex-grow: 3;
    }
    #fundslist .columns .column.fund-list-name h2 {
      font-size: 1rem !important;
    }
  }
  @media (width <= 767px) {
    #fundslist .columns .column.fund-list-link {
      flex-shrink: 3;
    }
    #fundslist .columns .column.fund-list-link .icon {
      font-size: 16px !important;
      width: 16px !important;
      height: 16px !important;
    }
  }
  #fundslist li {
    overflow: hidden;
    border-bottom: 1px solid #fff;
    background: #f4f4f4;
  }
  #fundslist li:nth-child(2n+1) {
    background: #fff;
  }
  #fundslist li section {
    text-decoration: none;
    color: #333;
    transition: all 1s ease;
    align-items: center;
  }
  #fundslist li section .mindful-fund {
    width: 32px;
    height: 32px;
    margin: 5px;
    opacity: 0.7;
    transition: all 0.3s ease;
  }
  #fundslist li section:hover {
    background: rgba(51, 175, 158, 0.2);
  }
  #fundslist li section:hover .mindful-fund {
    opacity: 1;
  }
  #fundslist li section .open {
    text-align: right;
  }
  #fundslist li section .open a {
    display: inline-block;
    font-size: 32px;
    width: 32px;
    height: 32px;
    margin-right: 1rem;
    color: #39499c;
  }
  #fundslist li section form {
    display: inline-block;
    margin: 12px 0;
  }
  #fundslist li section button {
    display: inline-block;
    background: none;
    border: none;
    color: #666;
    padding: 0 !important;
    font-size: 24px;
    cursor: pointer;
    min-width: 0;
    position: relative;
    top: 5px;
    margin-left: 10px;
  }
}
:root {
  --font-brand: "Brown", sans-serif;
  --font-ui: "Inter", system-ui, sans-serif;
  --text-heading-font: var(--font-brand);
  --text-body-font: var(--font-ui);
  --text-data-font: var(--font-ui);
  --text-label-font: var(--font-ui);
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-ui-strong: 580;
  --weight-semibold: 650;
  --weight-bold: 700;
  --type-h1-font-size: 2rem;
  --type-h1-line-height: 2.6rem;
  --type-h1-font-weight: 700;
  --type-h1-letter-spacing: 0;
  --type-h2-font-size: 1.75rem;
  --type-h2-line-height: 2.275rem;
  --type-h2-font-weight: 700;
  --type-h2-letter-spacing: 0;
  --type-h3-font-size: 1.5rem;
  --type-h3-line-height: 1.95rem;
  --type-h3-font-weight: 700;
  --type-h3-letter-spacing: 0;
  --type-h4-font-size: 1.375rem;
  --type-h4-line-height: 1.7875rem;
  --type-h4-font-weight: 700;
  --type-h4-letter-spacing: 0;
  --type-h5-font-size: 1.125rem;
  --type-h5-line-height: 1.4625rem;
  --type-h5-font-weight: 700;
  --type-h5-letter-spacing: 0;
  --type-body-font-size: 1rem;
  --type-body-line-height: 1.6rem;
  --type-body-font-weight: 400;
  --type-body-letter-spacing: 0;
  --type-button-font-size: 1rem;
  --type-button-line-height: 1.6rem;
  --type-button-font-weight: 700;
  --type-button-letter-spacing: 0;
  --type-small-font-size: 0.8rem;
  --type-small-line-height: 1.2813rem;
  --type-small-font-weight: 400;
  --type-small-letter-spacing: 0;
  --type-tiny-font-size: 0.6938rem;
  --type-tiny-line-height: 1.1125rem;
  --type-tiny-font-weight: 400;
  --type-tiny-letter-spacing: 0;
  --type-eyebrow-l-font-size: 1rem;
  --type-eyebrow-l-line-height: 1.6rem;
  --type-eyebrow-l-font-weight: 800;
  --type-eyebrow-l-letter-spacing: 0.08em;
  --type-eyebrow-m-font-size: 0.8rem;
  --type-eyebrow-m-line-height: 1.2813rem;
  --type-eyebrow-m-font-weight: 800;
  --type-eyebrow-m-letter-spacing: 0.05em;
}

@media only screen and (width > 768px) {
  :root {
    --type-h1-font-size: 2.9875rem;
    --type-h1-line-height: 3.8813rem;
    --type-h1-font-weight: 700;
    --type-h1-letter-spacing: 0;
    --type-h2-font-size: 2.4875rem;
    --type-h2-line-height: 3.2313rem;
    --type-h2-font-weight: 700;
    --type-h2-letter-spacing: 0;
    --type-h3-font-size: 2.075rem;
    --type-h3-line-height: 2.7rem;
    --type-h3-font-weight: 700;
    --type-h3-letter-spacing: 0;
    --type-h4-font-size: 1.725rem;
    --type-h4-line-height: 2.2437rem;
    --type-h4-font-weight: 700;
    --type-h4-letter-spacing: 0;
    --type-h5-font-size: 1.4375rem;
    --type-h5-line-height: 1.8687rem;
    --type-h5-font-weight: 700;
    --type-h5-letter-spacing: 0;
    --type-body-font-size: 1rem;
    --type-body-line-height: 1.6rem;
    --type-body-font-weight: 400;
    --type-body-letter-spacing: 0;
    --type-button-font-size: 1rem;
    --type-button-line-height: 1.6rem;
    --type-button-font-weight: 700;
    --type-button-letter-spacing: 0;
    --type-small-font-size: 0.8313rem;
    --type-small-line-height: 1.3313rem;
    --type-small-font-weight: 400;
    --type-small-letter-spacing: 0;
    --type-tiny-font-size: 0.6938rem;
    --type-tiny-line-height: 1.1125rem;
    --type-tiny-font-weight: 400;
    --type-tiny-letter-spacing: 0;
    --type-eyebrow-l-font-size: 1rem;
    --type-eyebrow-l-line-height: 1.6rem;
    --type-eyebrow-l-font-weight: 800;
    --type-eyebrow-l-letter-spacing: 0.08em;
    --type-eyebrow-m-font-size: 0.8rem;
    --type-eyebrow-m-line-height: 1.2813rem;
    --type-eyebrow-m-font-weight: 800;
    --type-eyebrow-m-letter-spacing: 0.05em;
  }
}
@layer framework {
  :root {
    --bulma-control-radius: var(--bulma-radius);
    --bulma-control-radius-small: var(--bulma-radius-small);
    --bulma-control-border-width: 1px;
    --bulma-control-height: 2.5em;
    --bulma-control-line-height: 1.5;
    --bulma-control-padding-vertical: calc(0.5em - 1px);
    --bulma-control-padding-horizontal: calc(0.75em - 1px);
    --bulma-control-size: var(--bulma-size-normal);
    --bulma-control-focus-shadow-l: 50%;
  }
  .modal-close {
    --bulma-delete-dimensions: 1.25rem;
    --bulma-delete-background-l: 0%;
    --bulma-delete-background-alpha: 0.5;
    --bulma-delete-color: var(--bulma-white);
    appearance: none;
    background-color: hsla(var(--bulma-scheme-h), var(--bulma-scheme-s), var(--bulma-delete-background-l), var(--bulma-delete-background-alpha));
    border: none;
    border-radius: var(--bulma-radius-rounded);
    cursor: pointer;
    pointer-events: auto;
    display: inline-flex;
    flex-grow: 0;
    flex-shrink: 0;
    font-size: 1em;
    height: var(--bulma-delete-dimensions);
    max-height: var(--bulma-delete-dimensions);
    max-width: var(--bulma-delete-dimensions);
    min-height: var(--bulma-delete-dimensions);
    min-width: var(--bulma-delete-dimensions);
    outline: none;
    position: relative;
    vertical-align: top;
    width: var(--bulma-delete-dimensions);
  }
  .modal-close::before, .modal-close::after {
    background-color: var(--bulma-delete-color);
    content: "";
    display: block;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
    transform-origin: center center;
  }
  .modal-close::before {
    height: 2px;
    width: 50%;
  }
  .modal-close::after {
    height: 50%;
    width: 2px;
  }
  .modal-close:hover, .modal-close:focus {
    --bulma-delete-background-alpha: 0.4;
  }
  .modal-close:active {
    --bulma-delete-background-alpha: 0.5;
  }
  .is-small.modal-close {
    --bulma-delete-dimensions: 1rem;
  }
  .is-medium.modal-close {
    --bulma-delete-dimensions: 1.5rem;
  }
  .is-large.modal-close {
    --bulma-delete-dimensions: 2rem;
  }
  .modal, .modal-background {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
  }
  .modal {
    --bulma-modal-z: 40;
    --bulma-modal-background-background-color: hsla(var(--bulma-scheme-h), var(--bulma-scheme-s), var(--bulma-scheme-invert-l), 0.86);
    --bulma-modal-content-width: 28rem;
    --bulma-modal-content-margin-mobile: 1.25rem;
    --bulma-modal-content-spacing-mobile: 10rem;
    --bulma-modal-content-spacing-tablet: 2.5rem;
    --bulma-modal-close-dimensions: 2.5rem;
    --bulma-modal-close-right: 1.25rem;
    --bulma-modal-close-top: 1.25rem;
    --bulma-modal-card-spacing: 2.5rem;
    --bulma-modal-card-head-background-color: var(--bulma-scheme-main);
    --bulma-modal-card-head-padding: 2rem;
    --bulma-modal-card-head-radius: var(--bulma-radius-large);
    --bulma-modal-card-title-color: var(--bulma-text-strong);
    --bulma-modal-card-title-line-height: 1;
    --bulma-modal-card-title-size: var(--bulma-size-4);
    --bulma-modal-card-foot-background-color: var(--bulma-scheme-main-bis);
    --bulma-modal-card-foot-radius: var(--bulma-radius-large);
    --bulma-modal-card-body-background-color: var(--bulma-scheme-main);
    --bulma-modal-card-body-padding: 2rem;
  }
  .modal {
    align-items: center;
    display: none;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    position: fixed;
    z-index: var(--bulma-modal-z);
  }
  .modal.is-active {
    display: flex;
  }
  .modal-background {
    background-color: var(--bulma-modal-background-background-color);
  }
  .modal-content,
  .modal-card {
    margin: 0 var(--bulma-modal-content-margin-mobile);
    max-height: calc(100vh - var(--bulma-modal-content-spacing-mobile));
    overflow: auto;
    position: relative;
    width: 100%;
  }
  @media screen and (min-width: 769px) {
    .modal-content,
    .modal-card {
      margin: 0 auto;
      max-height: calc(100vh - var(--bulma-modal-content-spacing-tablet));
      width: var(--bulma-modal-content-width);
    }
  }
  .modal-close {
    background: none;
    height: var(--bulma-modal-close-dimensions);
    inset-inline-end: var(--bulma-modal-close-right);
    position: fixed;
    top: var(--bulma-modal-close-top);
    width: var(--bulma-modal-close-dimensions);
  }
  .modal-card {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - var(--bulma-modal-card-spacing));
    overflow: hidden;
    overflow-y: visible;
  }
  .modal-card-head,
  .modal-card-foot {
    align-items: center;
    display: flex;
    flex-shrink: 0;
    justify-content: flex-start;
    padding: var(--bulma-modal-card-head-padding);
    position: relative;
  }
  .modal-card-head {
    background-color: var(--bulma-modal-card-head-background-color);
    border-start-start-radius: var(--bulma-modal-card-head-radius);
    border-start-end-radius: var(--bulma-modal-card-head-radius);
    box-shadow: var(--bulma-shadow);
  }
  .modal-card-title {
    color: var(--bulma-modal-card-title-color);
    flex-grow: 1;
    flex-shrink: 0;
    font-size: var(--bulma-modal-card-title-size);
    line-height: var(--bulma-modal-card-title-line-height);
  }
  .modal-card-foot {
    background-color: var(--bulma-modal-card-foot-background-color);
    border-end-start-radius: var(--bulma-modal-card-foot-radius);
    border-end-end-radius: var(--bulma-modal-card-foot-radius);
  }
  .modal-card-body {
    -webkit-overflow-scrolling: touch;
    background-color: var(--bulma-modal-card-body-background-color);
    flex-grow: 1;
    flex-shrink: 1;
    overflow: auto;
    padding: var(--bulma-modal-card-body-padding);
  }
}
@layer components {
  .info-button {
    display: inline-flex;
    align-items: flex-start;
    justify-content: stretch;
    width: 24px;
    flex-shrink: 0;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    appearance: none;
    border-radius: 50%;
    background-color: none;
    background-clip: padding-box;
    cursor: pointer;
    color: rgb(65, 81, 201);
    text-decoration: transparent;
    line-height: 0;
    vertical-align: middle;
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .info-button::-moz-focus-inner {
    border: 0;
    padding: 0;
  }
  .info-button:hover {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.15), 0 2px 4px -1px rgba(0, 0, 0, 0.1);
  }
  .info-button .info-button-glyph {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    user-select: none;
  }
  .info-button .info-button-glyph svg {
    display: block;
    flex-shrink: 0;
  }
  /* Tweaks to modal defaults */
  .modal {
    z-index: 500;
  }
  .modal-background {
    background-color: rgba(10, 10, 10, 0.7);
  }
  .modal-card {
    border: 4px solid rgb(21.0594059406, 30.8871287129, 120.7405940594);
    border-radius: 0.75rem;
    position: relative;
  }
  @media only screen and (width <= 768px) {
    .modal-card {
      width: calc(100% - 2rem);
    }
  }
  .modal-card button {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background-color: rgb(21.0594059406, 30.8871287129, 120.7405940594) !important;
  }
  .modal-card-head {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    background: #fff !important;
    border: none !important;
  }
  .modal-card-head .tag {
    font-size: 0.75rem;
  }
  .modal-card-head .tag:first-of-type {
    margin-left: 2rem;
  }
  .modal-card-head .tag.alcohol, .modal-card-head .tag.tobacco, .modal-card-head .tag.adult-entertainment, .modal-card-head .tag.adult-entertainmentpornography, .modal-card-head .tag.gambling {
    background-color: #a8a0ff;
  }
  .modal-card-head .tag.animal-testing, .modal-card-head .tag.animal-welfare-issues, .modal-card-head .tag.controversies, .modal-card-head .tag.factory-farming, .modal-card-head .tag.high-intensity-poultry, .modal-card-head .tag.fur-and-speciality-leather, .modal-card-head .tag.fur-speciality-leather, .modal-card-head .tag.fur-and-leather {
    background-color: #dd4d7d;
    color: white;
  }
  .modal-card-head .tag.firearms, .modal-card-head .tag.small-arms, .modal-card-head .tag.military-weapons, .modal-card-head .tag.military-contracting, .modal-card-head .tag.controversial-weapons, .modal-card-head .tag.nuclear-weapons {
    background-color: #7f4350;
    color: white;
  }
  .modal-card-head .tag.fossil-fuel-power-generation, .modal-card-head .tag.coal-generation, .modal-card-head .tag.shale-energy, .modal-card-head .tag.oil-and-gas-generation, .modal-card-head .tag.fossil-fuel-production, .modal-card-head .tag.thermal-coal-production, .modal-card-head .tag.arctic-oil-and-gas, .modal-card-head .tag.oil-sands {
    background: #2b358a;
    color: white;
  }
  .modal-card-head .tag.gmos, .modal-card-head .tag.pesticides, .modal-card-head .tag.highly-hazardous-pesticides, .modal-card-head .tag.highly-hazardous-chemicals, .modal-card-head .tag.environmental-damage, .modal-card-head .tag.deforestation, .modal-card-head .tag.palm-oil {
    background-color: #57c7a9;
    color: white;
  }
  .modal-card-head .tag.human-rights, .modal-card-head .tag.human-rights-abuses, .modal-card-head .tag.labour-rights, .modal-card-head .tag.labour-rights-violations, .modal-card-head .tag.war-conflict, .modal-card-head .tag.war-and-conflict, .modal-card-head .tag.public-safety, .modal-card-head .tag.public-safety-issues, .modal-card-head .tag.business-ethics {
    background-color: #feba57;
  }
  .modal-card-body {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
  .modal-card-body p:not(:last-child) {
    margin-bottom: 1rem;
  }
  .modal-card-body h5 {
    font-size: 1rem;
    line-height: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
  }
  @media only screen and (width > 768px) {
    .modal-card-body h5 {
      font-size: 1rem;
      line-height: 1.6rem;
      font-weight: 400;
      letter-spacing: 0;
    }
  }
  .modal-card-body h5 {
    font-weight: 800;
  }
}
@layer components {
  #fundsheader {
    border-bottom-color: rgb(214, 213, 211);
    background: rgb(255, 255, 255);
  }
  #fundsheader .column.fund-list-concerns,
  #fundsheader .column.fund-list-disclosure,
  #fundsheader .column.fund-list-fund-type {
    font-weight: 400;
    font-size: 16px;
    padding: 25px 15px;
  }
  #fundsheader .column.fund-list-header-with-icon {
    gap: 0.5rem;
  }
  #fundsheader .fund-list-name .fund-list-name-content,
  #fundslist .fund-list-name .fund-list-name-content {
    padding: var(--spacing-m);
  }
  #fundslist .column.fund-list-concerns .fund-list-concerns-mobile-info {
    margin-inline-start: 0.5rem;
  }
  @media (width <= 767px) {
    #fundsheader .column.fund-list-concerns {
      flex-grow: 3;
      text-align: left !important;
    }
  }
  #fundslist li {
    background: rgb(247, 247, 247);
    border-bottom-color: rgb(255, 255, 255);
  }
  #fundslist li:nth-child(2n+1) {
    background: rgb(255, 255, 255);
  }
  #fundslist li section {
    color: rgb(83, 81, 77);
  }
  #fundslist li section .open a {
    color: rgb(15, 22, 86);
  }
  @media (width <= 767px) {
    #fundslist .columns .column.fund-list-concerns {
      flex-grow: 3;
      text-align: left !important;
    }
  }
}
