﻿:root {
  --sans: 'montserrat', sans-serif;
  --serif: 'bitter', serif;
  --primary: #BC0013;
  --body: #222222;
  --body-alt: #666666;
  --background: #ffffff;
  --background-alt: #F5F5F5;
  --border: #888888;
  --border-alt: #BABABA;
  --amber: #FF4500;
  --gold: #F9BF3B;
  --green: #00AA00;
  --teal: #007A7C;
  --blue: #1E90FF;
  --purple: #7462E0;
  --magenta: #DB0A5B;
  --black: #000000;
  --dark: #101010;
  --white: #ffffff;
  /*@media (prefers-color-scheme: dark) {
        --body: #FFFFFF;
        --body-alt: #AAAAAA;
        --background: #101010;
        --background-alt: #222222;
        --primary: #ff0000;
        --border: #CCCCCC;
    }*/ }

.our-bloggers .blogger-list .blogger, .content-item, .page-content .adv-download,
.page-intro .adv-download, .stretched-link, .webpage-item {
  position: relative; }
  .our-bloggers .blogger-list .blogger a:first-of-type:after, .content-item a:first-of-type:after, .page-content .adv-download a:first-of-type:after,
  .page-intro .adv-download a:first-of-type:after, .stretched-link a:first-of-type:after, .webpage-item a:first-of-type:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .our-bloggers .blogger-list .blogger a:first-of-type:focus, .content-item a:first-of-type:focus, .page-content .adv-download a:first-of-type:focus,
  .page-intro .adv-download a:first-of-type:focus, .stretched-link a:first-of-type:focus, .webpage-item a:first-of-type:focus {
    outline: none; }

.our-bloggers .blogger-list .blogger a:first-of-type:focus:after, .content-item a:first-of-type:focus:after, .page-content .adv-download a:first-of-type:focus:after,
.page-intro .adv-download a:first-of-type:focus:after, .stretched-link a:first-of-type:focus:after, .webpage-item a:first-of-type:focus:after, input:focus,
button:focus,
select:focus, a:focus {
  outline: 0.125rem solid var(--primary);
  outline-offset: .125rem; }

.author {
  display: flex;
  gap: 1rem;
  align-items: center; }
  .author .author-image {
    width: 4rem;
    aspect-ratio: 1/1;
    border-radius: 50%;
    flex: 0 0;
    filter: grayscale(100%);
    object-fit: contain;
    align-self: flex-start; }
  .author .author-info {
    display: flex;
    flex-direction: column; }
    .author .author-info .author-name {
      font-size: 1rem;
      font-weight: 600;
      margin: 0; }
      .author .author-info .author-name a {
        /*color: $body;*/
        position: relative; }
    .author .author-info .author-title {
      font-size: 0.8rem;
      line-height: 1.25;
      font-weight: 400;
      margin: .25rem 0 0;
      color: var(--body-alt); }
    .author .author-info .author-contacts {
      margin: .5rem 0 0;
      padding: 0;
      list-style-type: none;
      display: flex;
      gap: 1rem;
      flex-wrap: wrap; }
      .author .author-info .author-contacts li {
        margin: 0;
        padding: 0;
        font-size: 0.8rem;
        line-height: 1.25; }
        .author .author-info .author-contacts li a {
          position: relative;
          color: var(--body); }

.breadcrumb {
  margin: 0;
  padding: 1rem 0;
  border-bottom: 1px solid var(--border);
  font-size: 0.8rem;
  line-height: 1.25; }
  .breadcrumb a {
    color: var(--body-alt); }

.our-bloggers {
  display: flex;
  flex-direction: column;
  gap: 1rem; }
  .our-bloggers .our-bloggers-title {
    margin: 0; }
  .our-bloggers .blogger-list {
    display: flex;
    flex-direction: column;
    gap: .5rem; }
    .our-bloggers .blogger-list .blogger {
      display: flex;
      align-items: center;
      gap: .5rem; }
      .our-bloggers .blogger-list .blogger .blogger-img {
        width: 2.5rem;
        aspect-ratio: 1 / 1;
        border-radius: 50%;
        flex: 0 0; }
      .our-bloggers .blogger-list .blogger .blogger-name {
        flex: 1 0;
        margin: 0; }
        .our-bloggers .blogger-list .blogger .blogger-name a {
          color: var(--body); }

.content-badge {
  padding: .25rem .5rem;
  display: block;
  font-weight: 600;
  text-transform: uppercase;
  background: var(--primary);
  color: var(--background);
  position: relative;
  text-decoration: none; }
  .content-badge.content-badge-news {
    background: var(--primary);
    color: var(--white); }
    .content-badge.content-badge-news:focus {
      outline-color: var(--primary); }
  .content-badge.content-badge-topics {
    background: var(--amber);
    color: var(--dark); }
    .content-badge.content-badge-topics:focus {
      outline-color: var(--amber); }
  .content-badge.content-badge-features {
    background: var(--gold);
    color: var(--dark); }
    .content-badge.content-badge-features:focus {
      outline-color: var(--gold); }
  .content-badge.content-badge-webinars {
    background: var(--green);
    color: var(--dark); }
    .content-badge.content-badge-webinars:focus {
      outline-color: var(--green); }
  .content-badge.content-badge-whitepapers {
    background: var(--teal);
    color: var(--white); }
    .content-badge.content-badge-whitepapers:focus {
      outline-color: var(--teal); }
  .content-badge.content-badge-events {
    background: var(--purple);
    color: var(--white); }
    .content-badge.content-badge-events:focus {
      outline-color: var(--purple); }
  .content-badge.content-badge-directory {
    background: var(--magenta);
    color: var(--white); }
    .content-badge.content-badge-directory:focus {
      outline-color: var(--magenta); }
  .content-badge.content-badge-profiles {
    background: var(--primary);
    color: var(--white); }
    .content-badge.content-badge-profiles:focus {
      outline-color: var(--primary); }
  .content-badge.content-badge-digital-editions {
    background: var(--primary);
    color: var(--white); }
    .content-badge.content-badge-digital-editions:focus {
      outline-color: var(--primary); }
  .content-badge.content-badge-podcasts {
    background: var(--blue);
    color: var(--white); }
    .content-badge.content-badge-podcasts:focus {
      outline-color: var(--blue); }
  .content-badge.content-badge-infosec {
    background: var(--primary);
    color: var(--white); }
    .content-badge.content-badge-infosec:focus {
      outline-color: var(--primary); }
  .content-badge.content-badge-nextgen {
    background: var(--gold);
    color: var(--dark); }
    .content-badge.content-badge-nextgen:focus {
      outline-color: var(--gold); }

.content-item {
  background: var(--background-alt);
  display: flex;
  flex-direction: column;
  align-items: center; }
  .content-item .content-thumb {
    display: block;
    width: 100%;
    background: var(--background);
    object-fit: cover;
    aspect-ratio: 16/9;
    flex: 0 0 auto; }
  .content-item .calendar-date {
    display: none; }
  .content-item .content-info {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    padding: 1rem;
    margin-right: auto; }
    .content-item .content-info .content-meta {
      display: flex;
      flex-direction: row;
      text-transform: uppercase;
      font-size: 0.8rem;
      align-items: center;
      gap: .5rem;
      color: var(--body-alt);
      order: 0;
      flex-wrap: wrap; }
      .content-item .content-info .content-meta .content-badge {
        order: 0; }
      .content-item .content-info .content-meta :empty {
        display: none; }
    .content-item .content-info .content-headline {
      margin: 0;
      font-size: 1.5625rem;
      order: 1; }
      .content-item .content-info .content-headline a {
        color: var(--body);
        /*&:hover, &:focus {
                    color: $primary;
                }*/ }
        .content-item .content-info .content-headline a:hover {
          text-decoration: underline; }
    .content-item .content-info + .content-teaser {
      padding-top: 0; }
  .content-item .content-teaser {
    padding: 1rem;
    margin: 0;
    font-size: 1rem;
    margin-right: auto;
    order: 2; }
  .content-item.content-md .content-headline {
    font-size: 1rem; }
  .content-item.content-sm {
    flex-direction: row-reverse; }
    .content-item.content-sm .content-info .content-headline {
      font-size: 1rem; }
    .content-item.content-sm .content-thumb {
      width: 7.5rem;
      flex: 0 0 7.5rem;
      align-self: stretch;
      aspect-ratio: 1/1; }
    .content-item.content-sm .content-calendar {
      display: flex;
      width: 7.5rem;
      flex: 0 0 7.5rem;
      align-self: stretch;
      flex-direction: column;
      background: var(--background);
      border: 1px solid var(--background-alt);
      align-items: center;
      justify-content: center;
      line-height: 1;
      gap: .25rem;
      aspect-ratio: 1/1; }
      .content-item.content-sm .content-calendar .content-calendar-day {
        font-size: 2.44141rem;
        color: var(--primary);
        font-weight: 700;
        padding: 0 1rem; }
      .content-item.content-sm .content-calendar .content-calendar-month {
        font-size: 1rem;
        font-weight: 600;
        padding: 0 1rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        width: 100%;
        box-sizing: border-box;
        text-align: center; }
    .content-item.content-sm .content-ranking {
      display: flex;
      width: 6rem;
      flex: 0 0 6rem;
      align-self: stretch;
      flex-direction: column;
      background: var(--background);
      border: 1px solid var(--border-alt);
      align-items: center;
      justify-content: center;
      line-height: 1;
      aspect-ratio: 1/1;
      font-size: 2.44141rem;
      color: var(--body);
      font-weight: 700; }
    .content-item.content-sm .content-teaser {
      padding: 0; }
  .content-item.content-outline {
    border: 1px solid var(--border-alt);
    background: var(--background); }
    .content-item.content-outline.content-outline-news {
      border-color: var(--primary); }
    .content-item.content-outline.content-outline-topics {
      border-color: var(--amber); }
    .content-item.content-outline.content-outline-features {
      border-color: var(--gold); }
    .content-item.content-outline.content-outline-webinars {
      border-color: var(--green); }
    .content-item.content-outline.content-outline-whitepapers {
      border-color: var(--teal); }
    .content-item.content-outline.content-outline-events {
      border-color: var(--purple); }
    .content-item.content-outline.content-outline-directory {
      border-color: var(--magenta); }
    .content-item.content-outline.content-outline-profiles {
      border-color: var(--primary); }
    .content-item.content-outline.content-outline-digital-editions {
      border-color: var(--primary); }
    .content-item.content-outline.content-outline-podcasts {
      border-color: var(--blue); }
    .content-item.content-outline.content-outline-infosec {
      border-color: var(--primary); }
    .content-item.content-outline.content-outline-nextgen {
      border-color: var(--gold); }
  .content-item.content-reverse .content-thumb {
    order: 0; }
  .content-item.content-reverse .content-info {
    order: 1; }
  .content-item.content-reverse .content-teaser {
    order: 2;
    padding-top: 0; }
  .content-item.content-feature {
    background: var(--body);
    color: var(--background); }
    .content-item.content-feature .content-info .content-meta {
      color: var(--background-alt); }
    .content-item.content-feature .content-info .content-headline a {
      color: var(--background); }
    .content-item.content-feature.content-feature-news {
      background: var(--primary);
      color: var(--white); }
      .content-item.content-feature.content-feature-news .content-info .content-meta {
        color: var(--white); }
        .content-item.content-feature.content-feature-news .content-info .content-meta .content-badge {
          color: var(--primary);
          background: var(--white); }
      .content-item.content-feature.content-feature-news .content-info .content-headline a {
        color: var(--white); }
    .content-item.content-feature.content-feature-topics {
      background: var(--amber);
      color: var(--dark); }
      .content-item.content-feature.content-feature-topics .content-info .content-meta {
        color: var(--dark); }
        .content-item.content-feature.content-feature-topics .content-info .content-meta .content-badge {
          color: var(--amber);
          background: var(--dark); }
      .content-item.content-feature.content-feature-topics .content-info .content-headline a {
        color: var(--dark); }
    .content-item.content-feature.content-feature-features {
      background: var(--gold);
      color: var(--dark); }
      .content-item.content-feature.content-feature-features .content-info .content-meta {
        color: var(--dark); }
        .content-item.content-feature.content-feature-features .content-info .content-meta .content-badge {
          color: var(--gold);
          background: var(--dark); }
      .content-item.content-feature.content-feature-features .content-info .content-headline a {
        color: var(--dark); }
    .content-item.content-feature.content-feature-webinars {
      background: var(--green);
      color: var(--dark); }
      .content-item.content-feature.content-feature-webinars .content-info .content-meta {
        color: var(--dark); }
        .content-item.content-feature.content-feature-webinars .content-info .content-meta .content-badge {
          color: var(--green);
          background: var(--dark); }
      .content-item.content-feature.content-feature-webinars .content-info .content-headline a {
        color: var(--dark); }
    .content-item.content-feature.content-feature-whitepapers {
      background: var(--teal);
      color: var(--white); }
      .content-item.content-feature.content-feature-whitepapers .content-info .content-meta {
        color: var(--white); }
        .content-item.content-feature.content-feature-whitepapers .content-info .content-meta .content-badge {
          color: var(--teal);
          background: var(--white); }
      .content-item.content-feature.content-feature-whitepapers .content-info .content-headline a {
        color: var(--white); }
    .content-item.content-feature.content-feature-events {
      background: var(--purple);
      color: var(--white); }
      .content-item.content-feature.content-feature-events .content-info .content-meta {
        color: var(--white); }
        .content-item.content-feature.content-feature-events .content-info .content-meta .content-badge {
          color: var(--purple);
          background: var(--white); }
      .content-item.content-feature.content-feature-events .content-info .content-headline a {
        color: var(--white); }
    .content-item.content-feature.content-feature-directory {
      background: var(--magenta);
      color: var(--white); }
      .content-item.content-feature.content-feature-directory .content-info .content-meta {
        color: var(--white); }
        .content-item.content-feature.content-feature-directory .content-info .content-meta .content-badge {
          color: var(--magenta);
          background: var(--white); }
      .content-item.content-feature.content-feature-directory .content-info .content-headline a {
        color: var(--white); }
    .content-item.content-feature.content-feature-profiles {
      background: var(--primary);
      color: var(--white); }
      .content-item.content-feature.content-feature-profiles .content-info .content-meta {
        color: var(--white); }
        .content-item.content-feature.content-feature-profiles .content-info .content-meta .content-badge {
          color: var(--primary);
          background: var(--white); }
      .content-item.content-feature.content-feature-profiles .content-info .content-headline a {
        color: var(--white); }
    .content-item.content-feature.content-feature-digital-editions {
      background: var(--primary);
      color: var(--white); }
      .content-item.content-feature.content-feature-digital-editions .content-info .content-meta {
        color: var(--white); }
        .content-item.content-feature.content-feature-digital-editions .content-info .content-meta .content-badge {
          color: var(--primary);
          background: var(--white); }
      .content-item.content-feature.content-feature-digital-editions .content-info .content-headline a {
        color: var(--white); }
    .content-item.content-feature.content-feature-podcasts {
      background: var(--blue);
      color: var(--white); }
      .content-item.content-feature.content-feature-podcasts .content-info .content-meta {
        color: var(--white); }
        .content-item.content-feature.content-feature-podcasts .content-info .content-meta .content-badge {
          color: var(--blue);
          background: var(--white); }
      .content-item.content-feature.content-feature-podcasts .content-info .content-headline a {
        color: var(--white); }
    .content-item.content-feature.content-feature-infosec {
      background: var(--primary);
      color: var(--white); }
      .content-item.content-feature.content-feature-infosec .content-info .content-meta {
        color: var(--white); }
        .content-item.content-feature.content-feature-infosec .content-info .content-meta .content-badge {
          color: var(--primary);
          background: var(--white); }
      .content-item.content-feature.content-feature-infosec .content-info .content-headline a {
        color: var(--white); }
    .content-item.content-feature.content-feature-nextgen {
      background: var(--gold);
      color: var(--dark); }
      .content-item.content-feature.content-feature-nextgen .content-info .content-meta {
        color: var(--dark); }
        .content-item.content-feature.content-feature-nextgen .content-info .content-meta .content-badge {
          color: var(--gold);
          background: var(--dark); }
      .content-item.content-feature.content-feature-nextgen .content-info .content-headline a {
        color: var(--dark); }
  .content-item.content-blank {
    background: var(--background);
    align-items: start; }
    .content-item.content-blank .content-thumb,
    .content-item.content-blank .content-ranking,
    .content-item.content-blank .content-calendar {
      align-self: start; }
    .content-item.content-blank .content-info {
      padding: 0 1rem; }
    .content-item.content-blank .content-teaser {
      padding: 0 1rem; }
    .content-item.content-blank.content-sm .content-info {
      padding: 0 1rem; }
    .content-item.content-blank.content-sm .content-teaser {
      padding: 0; }

.content-grid {
  display: flex;
  flex-direction: column;
  gap: 1rem; }
  .content-grid ol {
    display: grid;
    gap: 1rem;
    list-style: none;
    margin: 0;
    padding: 0; }
    .content-grid ol li {
      display: block;
      margin: 0;
      padding: 0; }
      .content-grid ol li .content-item {
        height: 100%; }
  .content-grid.content-grid-1 ol {
    grid-template-columns: repeat(1, minmax(0, 1fr)); }
  @media (min-width: 0) {
    .content-grid.content-grid-xxs-1 ol {
      grid-template-columns: repeat(1, minmax(0, 1fr)); } }
  @media (min-width: 24.75rem) {
    .content-grid.content-grid-xs-1 ol {
      grid-template-columns: repeat(1, minmax(0, 1fr)); } }
  @media (min-width: 48rem) {
    .content-grid.content-grid-sm-1 ol {
      grid-template-columns: repeat(1, minmax(0, 1fr)); } }
  @media (min-width: 51.5rem) {
    .content-grid.content-grid-md-1 ol {
      grid-template-columns: repeat(1, minmax(0, 1fr)); } }
  @media (min-width: 71.25rem) {
    .content-grid.content-grid-lg-1 ol {
      grid-template-columns: repeat(1, minmax(0, 1fr)); } }
  @media (min-width: 76.25rem) {
    .content-grid.content-grid-xl-1 ol {
      grid-template-columns: repeat(1, minmax(0, 1fr)); } }
  .content-grid.content-grid-2 ol {
    grid-template-columns: repeat(2, minmax(0, 1fr)); }
  @media (min-width: 0) {
    .content-grid.content-grid-xxs-2 ol {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (min-width: 24.75rem) {
    .content-grid.content-grid-xs-2 ol {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (min-width: 48rem) {
    .content-grid.content-grid-sm-2 ol {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (min-width: 51.5rem) {
    .content-grid.content-grid-md-2 ol {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (min-width: 71.25rem) {
    .content-grid.content-grid-lg-2 ol {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (min-width: 76.25rem) {
    .content-grid.content-grid-xl-2 ol {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  .content-grid.content-grid-3 ol {
    grid-template-columns: repeat(3, minmax(0, 1fr)); }
  @media (min-width: 0) {
    .content-grid.content-grid-xxs-3 ol {
      grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  @media (min-width: 24.75rem) {
    .content-grid.content-grid-xs-3 ol {
      grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  @media (min-width: 48rem) {
    .content-grid.content-grid-sm-3 ol {
      grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  @media (min-width: 51.5rem) {
    .content-grid.content-grid-md-3 ol {
      grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  @media (min-width: 71.25rem) {
    .content-grid.content-grid-lg-3 ol {
      grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  @media (min-width: 76.25rem) {
    .content-grid.content-grid-xl-3 ol {
      grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  .content-grid.content-grid-4 ol {
    grid-template-columns: repeat(4, minmax(0, 1fr)); }
  @media (min-width: 0) {
    .content-grid.content-grid-xxs-4 ol {
      grid-template-columns: repeat(4, minmax(0, 1fr)); } }
  @media (min-width: 24.75rem) {
    .content-grid.content-grid-xs-4 ol {
      grid-template-columns: repeat(4, minmax(0, 1fr)); } }
  @media (min-width: 48rem) {
    .content-grid.content-grid-sm-4 ol {
      grid-template-columns: repeat(4, minmax(0, 1fr)); } }
  @media (min-width: 51.5rem) {
    .content-grid.content-grid-md-4 ol {
      grid-template-columns: repeat(4, minmax(0, 1fr)); } }
  @media (min-width: 71.25rem) {
    .content-grid.content-grid-lg-4 ol {
      grid-template-columns: repeat(4, minmax(0, 1fr)); } }
  @media (min-width: 76.25rem) {
    .content-grid.content-grid-xl-4 ol {
      grid-template-columns: repeat(4, minmax(0, 1fr)); } }
  .content-grid.content-grid-reduced-gap ol {
    gap: .5rem; }

.cpe-panel {
  background: var(--background);
  border: 1px solid var(--border-alt); }
  .cpe-panel .heading {
    padding: 1rem;
    border-bottom: 1px solid var(--border-alt); }
  .cpe-panel .cpe-partner {
    display: flex;
    gap: 1rem;
    align-items: center;
    padding: 1rem;
    border-bottom: 1px solid var(--border-alt); }
    .cpe-panel .cpe-partner .cpe-partner-logo {
      width: 6rem;
      max-width: 50%;
      aspect-ratio: 16/9;
      flex: 0 0 auto; }
      .cpe-panel .cpe-partner .cpe-partner-logo svg {
        width: 100%;
        aspect-ratio: 16/9; }
    .cpe-panel .cpe-partner .cpe-partner-credits {
      margin-left: auto;
      font-size: 1.95313rem; }

.dfp {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: var(--background-alt);
  /*&.sticky-ad {
        position: sticky;

        @each $breakpoint, $gap in $gaps {
            @include media-breakpoint-up($breakpoint) {
                top: 4.25rem + $gap;
            }
        }
    }*/ }
  @media (min-width: 0) {
    .dfp {
      padding-bottom: 1rem; } }
  @media (min-width: 24.75rem) {
    .dfp {
      padding-bottom: 1.5rem; } }
  @media (min-width: 48rem) {
    .dfp {
      padding-bottom: 1.5rem; } }
  @media (min-width: 51.5rem) {
    .dfp {
      padding-bottom: 2rem; } }
  @media (min-width: 71.25rem) {
    .dfp {
      padding-bottom: 1.5rem; } }
  @media (min-width: 76.25rem) {
    .dfp {
      padding-bottom: 2rem; } }
  .dfp:before {
    content: 'Advertisement';
    text-transform: uppercase;
    padding: 0 0 .25rem;
    font-size: 0.64rem;
    width: 100%;
    color: var(--body-alt);
    background: var(--background); }
    @media (min-width: 0) {
      .dfp:before {
        margin-bottom: 1rem; } }
    @media (min-width: 24.75rem) {
      .dfp:before {
        margin-bottom: 1.5rem; } }
    @media (min-width: 48rem) {
      .dfp:before {
        margin-bottom: 1.5rem; } }
    @media (min-width: 51.5rem) {
      .dfp:before {
        margin-bottom: 2rem; } }
    @media (min-width: 71.25rem) {
      .dfp:before {
        margin-bottom: 1.5rem; } }
    @media (min-width: 76.25rem) {
      .dfp:before {
        margin-bottom: 2rem; } }

.footer-ad-row {
  display: flex;
  flex-direction: column;
  padding: .5rem 0;
  justify-content: center;
  border-top: 1px solid var(--border-alt);
  position: sticky;
  bottom: 0;
  z-index: 5000001;
  background: var(--background-alt); }
  .footer-ad-row .leaderboard {
    padding-bottom: 0;
    flex: 0 0 auto;
    background: none; }
    .footer-ad-row .leaderboard:before {
      display: none; }

.footer {
  background: var(--background-alt); }
  .footer .footer-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .footer .footer-links > div {
      display: flex;
      flex-direction: column;
      gap: 1rem; }
    .footer .footer-links ul {
      margin: 0;
      padding: 0;
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: .5rem; }
      .footer .footer-links ul li {
        margin: 0;
        padding: 0;
        display: block;
        font-size: 0.8rem; }
  .footer .footer-social-links {
    padding: 0;
    margin: 0;
    display: flex;
    gap: .5rem;
    list-style: none; }
    @media (min-width: 48rem) {
      .footer .footer-social-links {
        justify-content: end; } }
    @media (min-width: 71.25rem) {
      .footer .footer-social-links {
        justify-content: start; } }
    .footer .footer-social-links li {
      display: block;
      margin: 0;
      padding: 0; }
      .footer .footer-social-links li a {
        border: 1px solid var(--primary);
        padding: 1rem;
        display: block;
        width: 4rem;
        box-sizing: border-box;
        text-align: center;
        font-size: 0;
        border-radius: .25rem; }
        .footer .footer-social-links li a svg {
          width: 100%;
          display: block;
          fill: var(--primary); }
        .footer .footer-social-links li a:hover {
          background: var(--primary); }
          .footer .footer-social-links li a:hover svg {
            fill: var(--background); }
        .footer .footer-social-links li a.share-other svg {
          fill: none;
          stroke: var(--primary); }
        .footer .footer-social-links li a.share-other:hover svg {
          fill: none;
          stroke: var(--background); }
  .footer .footer-magazine-logo {
    display: block;
    width: 50%; }
    @media (min-width: 48rem) {
      .footer .footer-magazine-logo {
        width: 100%; } }
    .footer .footer-magazine-logo svg {
      fill: var(--body);
      width: 100%; }
  .footer .legal-footer ul {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: .5rem;
    margin: 0;
    padding: 0;
    list-style: none; }
    @media (min-width: 48rem) {
      .footer .legal-footer ul {
        flex-direction: row; } }
    .footer .legal-footer ul li {
      margin: 0;
      padding: 0;
      font-size: 0.8rem; }

button {
  cursor: pointer;
  font-family: inherit;
  background: none;
  border: none;
  padding: 0; }

.form-control {
  border: 1px solid var(--border);
  background: var(--background);
  padding: 0.75rem 1rem;
  font-size: 1rem;
  line-height: 1;
  color: var(--body);
  font-family: inherit;
  box-sizing: border-box;
  width: 100%;
  border-radius: .25rem; }

.form-button {
  border: 1px solid var(--primary);
  background: var(--primary);
  padding: 0.75rem 1rem;
  font-size: 1rem;
  line-height: 1;
  color: var(--background);
  font-family: inherit;
  font-weight: 600;
  flex: 0 0 auto;
  cursor: pointer;
  box-sizing: border-box;
  border-radius: .25rem; }
  .form-button:hover {
    background: var(--background);
    color: var(--primary);
    text-decoration: none; }
  .form-button.with-icon {
    padding: 0.5rem;
    display: inline-block;
    font-size: 0;
    line-height: 1; }
    .form-button.with-icon svg {
      width: 1.5rem;
      height: 1.5rem;
      stroke: var(--background); }
    .form-button.with-icon:hover svg {
      stroke: var(--primary); }
  p .form-button {
    display: inline-block; }

.form-panels {
  display: flex;
  flex-direction: column;
  gap: .5rem; }

fieldset {
  margin: 0;
  padding: 0;
  border: none; }

.form-panel {
  background: var(--background-alt);
  border: none;
  padding: 1rem;
  margin: 0;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1rem; }
  .form-panel legend {
    margin: 0 0 0 -1rem;
    padding: 1rem 1rem 0;
    display: table;
    width: 100%;
    background: var(--background-alt); }
  .form-panel .form-buttons {
    padding-top: 1rem; }
  .form-panel .validation-summary {
    color: var(--primary);
    font-family: 700; }
  .form-panel.black-form-panel {
    background: var(--primary);
    color: var(--background); }
    .form-panel.black-form-panel a {
      color: var(--background); }
    .form-panel.black-form-panel legend {
      background: var(--primary);
      color: var(--background); }
    .form-panel.black-form-panel .validation-summary {
      color: var(--background); }
    .form-panel.black-form-panel .form-button {
      border-color: var(--background); }
    .form-panel.black-form-panel *:focus {
      outline-color: var(--background); }

.control-group {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem; }
  @media (min-width: 71.25rem) {
    .control-group {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  .control-group .control-field {
    grid-column: span 2; }
    .control-group .control-field.control-field-split {
      grid-column: span 1; }

.control-field .control-label {
  display: block;
  font-weight: 600;
  line-height: 1.25;
  margin-bottom: .5rem; }

.control-field .help-text {
  display: block;
  margin-top: .5rem;
  font-size: 0.8rem;
  line-height: 1.5; }
  .control-field .help-text p {
    margin: .5rem 0 0;
    font-size: inherit;
    line-height: inherit; }
  .control-field .help-text ul {
    margin: .5rem 0 0 -1.5rem;
    font-size: inherit;
    line-height: inherit; }

.control-field.has-error input, .control-field.has-error select, .control-field.has-preval input, .control-field.has-preval select {
  border-color: var(--primary); }

.control-field.has-error .error-message,
.control-field.has-error .preval-message, .control-field.has-preval .error-message,
.control-field.has-preval .preval-message {
  display: block;
  margin: .5rem 0 0;
  color: var(--primary);
  font-size: 0.8rem;
  font-weight: 600; }

ol.radio-button-list {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 1rem; }
  @media (min-width: 71.25rem) {
    ol.radio-button-list.radio-button-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      align-items: start; } }
  ol.radio-button-list li {
    margin: 0;
    padding: 0;
    display: flex;
    gap: 1rem;
    align-items: center;
    flex: 1; }
    ol.radio-button-list li input {
      width: 2rem;
      height: 2rem;
      margin: 0;
      flex: 0 0 2rem;
      align-self: start;
      border-radius: .25rem;
      border: 1px solid var(--border);
      background: var(--background);
      appearance: none; }
      ol.radio-button-list li input[type=radio] {
        border-radius: 50%; }
      ol.radio-button-list li input:checked {
        border-color: var(--primary);
        background-color: var(--primary);
        background-image: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 12L10.2426 16.2426L18.727 7.75732" stroke="%23ffffff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain; }
    ol.radio-button-list li label {
      line-height: 1.5; }

.container {
  margin: 0 auto;
  box-sizing: border-box; }
  @media (min-width: 0) {
    .container {
      padding: 0 1rem; } }
  @media (min-width: 24.75rem) {
    .container {
      padding: 0 1.5rem; } }
  @media (min-width: 48rem) {
    .container {
      padding: 0 1.5rem; } }
  @media (min-width: 51.5rem) {
    .container {
      padding: 0 2rem; } }
  @media (min-width: 71.25rem) {
    .container {
      padding: 0 1.5rem; } }
  @media (min-width: 76.25rem) {
    .container {
      padding: 0 2rem; } }
  @media (min-width: 0) {
    .container {
      max-width: 100%; } }
  @media (min-width: 24.75rem) {
    .container {
      max-width: 100%; } }
  @media (min-width: 48rem) {
    .container {
      max-width: 48rem; } }
  @media (min-width: 51.5rem) {
    .container {
      max-width: 51.5rem; } }
  @media (min-width: 71.25rem) {
    .container {
      max-width: 71.25rem; } }
  @media (min-width: 76.25rem) {
    .container {
      max-width: 76.25rem; } }
  .container.container-fluid {
    max-width: 100%; }
  .container .grid {
    display: grid;
    grid-template-columns: 1fr; }
    @media (min-width: 0) {
      .container .grid {
        gap: 1rem; } }
    @media (min-width: 24.75rem) {
      .container .grid {
        gap: 1.5rem; } }
    @media (min-width: 48rem) {
      .container .grid {
        gap: 1.5rem; } }
    @media (min-width: 51.5rem) {
      .container .grid {
        gap: 2rem; } }
    @media (min-width: 71.25rem) {
      .container .grid {
        gap: 1.5rem; } }
    @media (min-width: 76.25rem) {
      .container .grid {
        gap: 2rem; } }
    @media (min-width: 48rem) {
      .container .grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (min-width: 71.25rem) {
      .container .grid {
        grid-template-columns: repeat(6, minmax(0, 1fr)); } }
    .container .grid [class*="col-"] {
      display: flex;
      flex-direction: column; }
      .container .grid [class*="col-"] > * {
        flex: 0; }
      @media (min-width: 0) {
        .container .grid [class*="col-"] {
          gap: 1rem; } }
      @media (min-width: 24.75rem) {
        .container .grid [class*="col-"] {
          gap: 1.5rem; } }
      @media (min-width: 51.5rem) {
        .container .grid [class*="col-"] {
          gap: 2rem; } }
      @media (min-width: 71.25rem) {
        .container .grid [class*="col-"] {
          gap: 1.5rem; } }
      @media (min-width: 76.25rem) {
        .container .grid [class*="col-"] {
          gap: 2rem; } }
    .container .grid .col-1 {
      grid-column: span 1; }
      @media (min-width: 48rem) {
        .container .grid .col-1 {
          grid-column: span 2; } }
      @media (min-width: 71.25rem) {
        .container .grid .col-1 {
          grid-column: span 6; } }
    .container .grid .col-1-2 {
      grid-column: span 1; }
      @media (min-width: 71.25rem) {
        .container .grid .col-1-2 {
          grid-column: span 3; } }
    .container .grid .col-1-3 {
      grid-column: span 1; }
      @media (min-width: 71.25rem) {
        .container .grid .col-1-3 {
          grid-column: span 2; } }
    .container .grid .col-2-3 {
      grid-column: span 1; }
      .container .grid .col-2-3 .grid {
        grid-template-columns: 1fr; }
      @media (min-width: 71.25rem) {
        .container .grid .col-2-3 {
          grid-column: span 4; }
          .container .grid .col-2-3 .grid {
            grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (min-width: 71.25rem) and (min-width: 48rem) {
      .container .grid .col-2-3 .grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)); } }

.grid-list {
  display: grid;
  grid-template-columns: 1fr; }
  @media (min-width: 0) {
    .grid-list {
      gap: 1rem; } }
  @media (min-width: 24.75rem) {
    .grid-list {
      gap: 1.5rem; } }
  @media (min-width: 48rem) {
    .grid-list {
      gap: 1.5rem; } }
  @media (min-width: 51.5rem) {
    .grid-list {
      gap: 2rem; } }
  @media (min-width: 71.25rem) {
    .grid-list {
      gap: 1.5rem; } }
  @media (min-width: 76.25rem) {
    .grid-list {
      gap: 2rem; } }

@media (min-width: 0) {
  .section {
    padding-top: 1rem;
    padding-bottom: 1rem; } }

@media (min-width: 24.75rem) {
  .section {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem; } }

@media (min-width: 48rem) {
  .section {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem; } }

@media (min-width: 51.5rem) {
  .section {
    padding-top: 2rem;
    padding-bottom: 2rem; } }

@media (min-width: 71.25rem) {
  .section {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem; } }

@media (min-width: 76.25rem) {
  .section {
    padding-top: 2rem;
    padding-bottom: 2rem; } }

.section.section-no-pad {
  padding-top: 0;
  padding-bottom: 0; }

.section.section-no-pad-top {
  padding-top: 0; }

.section.section-no-pad-bottom {
  padding-bottom: 0; }

.header-ad-row {
  display: flex;
  flex-direction: column;
  padding: .5rem 0;
  justify-content: center;
  border-bottom: 1px solid var(--border-alt);
  position: relative;
  z-index: 5000001;
  background: var(--background); }
  .header-ad-row .leaderboard {
    padding-bottom: 0;
    flex: 0 0 auto;
    background: none; }
    .header-ad-row .leaderboard:before {
      display: none; }

header {
  position: sticky;
  top: 0;
  padding: 1rem 0;
  z-index: 5000000;
  background: var(--background);
  box-shadow: 0 0 0.25rem 0 rgba(0, 0, 0, 0.5); }
  @media (min-width: 51.5rem) {
    header {
      padding: 2rem 0;
      box-shadow: none;
      position: relative; } }
  header .header-logo-row {
    display: flex;
    flex-direction: row;
    align-items: center; }
    header .header-logo-row .menu-controls {
      display: block;
      order: 0;
      margin-right: auto; }
      @media (min-width: 48rem) {
        header .header-logo-row .menu-controls {
          width: 25%; } }
      @media (min-width: 51.5rem) {
        header .header-logo-row .menu-controls {
          display: none; } }
      header .header-logo-row .menu-controls .pullout-open {
        width: 2rem;
        height: 2rem;
        padding: 0;
        overflow: hidden;
        display: block;
        border: none;
        background: none;
        cursor: pointer; }
        header .header-logo-row .menu-controls .pullout-open svg {
          width: 100%;
          height: 100%;
          stroke: var(--body); }
        header .header-logo-row .menu-controls .pullout-open:hover svg {
          stroke: var(--primary); }
    header .header-logo-row .infosec-logo {
      display: block;
      order: 1;
      margin-right: auto;
      margin-left: -2rem; }
      @media (min-width: 51.5rem) {
        header .header-logo-row .infosec-logo {
          margin-left: 0; } }
      header .header-logo-row .infosec-logo svg {
        display: block;
        width: 14rem;
        fill: var(--body); }
        @media (min-width: 48rem) {
          header .header-logo-row .infosec-logo svg {
            width: 18rem; } }
        @media (min-width: 51.5rem) {
          header .header-logo-row .infosec-logo svg {
            width: 22rem; } }
      header .header-logo-row .infosec-logo:hover svg .logo-lock {
        fill: var(--primary); }
    header .header-logo-row .sec-menu {
      display: none; }
      @media (min-width: 48rem) {
        header .header-logo-row .sec-menu {
          display: block;
          width: 30%;
          order: 2; }
          header .header-logo-row .sec-menu .profile-links {
            margin: 0;
            padding: 0;
            display: flex;
            justify-content: end;
            gap: .5rem; }
            header .header-logo-row .sec-menu .profile-links li {
              list-style-type: none;
              margin: 0;
              padding: 0; }
              header .header-logo-row .sec-menu .profile-links li a {
                display: inline-block;
                color: var(--background);
                background: var(--primary);
                padding: .5rem .75rem;
                border: 1px solid var(--primary);
                text-decoration: none;
                font-size: 0.8rem; } }
        @media (min-width: 48rem) and (min-width: 51.5rem) {
          header .header-logo-row .sec-menu .profile-links li a {
            font-size: 1rem;
            padding: .75rem 1rem; } }
      @media (min-width: 48rem) {
                header .header-logo-row .sec-menu .profile-links li a:hover, header .header-logo-row .sec-menu .profile-links li a:focus {
                  background: var(--background);
                  color: var(--primary); } }

nav {
  display: none; }
  @media (min-width: 51.5rem) {
    nav {
      margin: 0 auto;
      display: block;
      background: var(--primary);
      position: sticky;
      top: 0;
      z-index: 5000000; }
      nav .nav-row {
        position: relative; }
        nav .nav-row ul {
          margin: 0;
          padding: 0;
          display: flex;
          align-items: center; }
          nav .nav-row ul li {
            margin: 0;
            padding: 0;
            list-style-type: none; }
            nav .nav-row ul li.nav-home a, nav .nav-row ul li.nav-home button, nav .nav-row ul li.nav-search a, nav .nav-row ul li.nav-search button {
              width: 1.5rem;
              height: 1.5rem;
              border-radius: 50%;
              display: block;
              padding: .5rem;
              box-sizing: content-box; }
              nav .nav-row ul li.nav-home a svg, nav .nav-row ul li.nav-home button svg, nav .nav-row ul li.nav-search a svg, nav .nav-row ul li.nav-search button svg {
                width: 100%;
                height: 100%;
                stroke: var(--background); }
              nav .nav-row ul li.nav-home a:hover, nav .nav-row ul li.nav-home a.active, nav .nav-row ul li.nav-home button:hover, nav .nav-row ul li.nav-home button.active, nav .nav-row ul li.nav-search a:hover, nav .nav-row ul li.nav-search a.active, nav .nav-row ul li.nav-search button:hover, nav .nav-row ul li.nav-search button.active {
                background: var(--background); }
                nav .nav-row ul li.nav-home a:hover svg, nav .nav-row ul li.nav-home a.active svg, nav .nav-row ul li.nav-home button:hover svg, nav .nav-row ul li.nav-home button.active svg, nav .nav-row ul li.nav-search a:hover svg, nav .nav-row ul li.nav-search a.active svg, nav .nav-row ul li.nav-search button:hover svg, nav .nav-row ul li.nav-search button.active svg {
                  stroke: var(--body); }
              nav .nav-row ul li.nav-home a:focus, nav .nav-row ul li.nav-home button:focus, nav .nav-row ul li.nav-search a:focus, nav .nav-row ul li.nav-search button:focus {
                outline-color: var(--background); }
            nav .nav-row ul li.nav-home {
              display: none; } }
          @media (min-width: 51.5rem) and (min-width: 71.25rem) {
            nav .nav-row ul li.nav-home {
              display: block; } }
  @media (min-width: 51.5rem) {
            nav .nav-row ul li.nav-search {
              display: block;
              margin-left: auto; }
            nav .nav-row ul li .nav-bar-link {
              display: block;
              padding: 0;
              color: var(--background);
              position: relative;
              background: none;
              border: none;
              font-size: 1rem;
              padding: 1.5rem 0.5rem;
              height: 100%;
              line-height: 1; } }
          @media (min-width: 51.5rem) and (min-width: 71.25rem) {
            nav .nav-row ul li .nav-bar-link {
              padding: 1.5rem 0.75rem; } }
  @media (min-width: 51.5rem) {
              nav .nav-row ul li .nav-bar-link:before {
                content: '';
                position: absolute;
                bottom: .5rem;
                height: .25rem;
                width: calc(100% - 0.5rem * 2);
                display: none;
                background: var(--background); } }
            @media (min-width: 51.5rem) and (min-width: 71.25rem) {
              nav .nav-row ul li .nav-bar-link:before {
                width: calc(100% - 0.75rem * 2); } }
  @media (min-width: 51.5rem) {
              nav .nav-row ul li .nav-bar-link:after {
                position: absolute;
                top: 100%;
                left: 50%;
                transform: translateX(-50%);
                width: 0;
                height: 0;
                border-left: .5rem solid transparent;
                border-right: .5rem solid transparent;
                border-bottom: 0.5rem solid var(--background);
                content: '';
                display: none;
                transition: all .3s linear; }
              nav .nav-row ul li .nav-bar-link.nav-highlight:not(:hover):not(:focus):not(.active):before {
                display: block;
                background: var(--background);
                bottom: 1rem; }
              nav .nav-row ul li .nav-bar-link:hover, nav .nav-row ul li .nav-bar-link:focus, nav .nav-row ul li .nav-bar-link.active {
                text-decoration: none;
                padding-bottom: 1rem;
                border-bottom: 0.5rem solid var(--primary); }
                nav .nav-row ul li .nav-bar-link:hover:before, nav .nav-row ul li .nav-bar-link:focus:before, nav .nav-row ul li .nav-bar-link.active:before {
                  display: block; }
              nav .nav-row ul li .nav-bar-link:focus {
                outline-color: var(--background);
                outline-offset: 0; }
              nav .nav-row ul li .nav-bar-link.active {
                background: var(--background);
                color: var(--body); }
                nav .nav-row ul li .nav-bar-link.active:after {
                  display: block; }
              nav .nav-row ul li .nav-bar-link:hover {
                background: var(--background);
                color: var(--body); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-news:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-news.active:before {
                background: var(--primary); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-topics:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-topics.active:before {
                background: var(--amber); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-features:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-features.active:before {
                background: var(--gold); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-webinars:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-webinars.active:before {
                background: var(--green); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-whitepapers:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-whitepapers.active:before {
                background: var(--teal); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-events:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-events.active:before {
                background: var(--purple); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-directory:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-directory.active:before {
                background: var(--magenta); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-profiles:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-profiles.active:before {
                background: var(--primary); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-digital-editions:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-digital-editions.active:before {
                background: var(--primary); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-podcasts:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-podcasts.active:before {
                background: var(--blue); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-infosec:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-infosec.active:before {
                background: var(--primary); }
              nav .nav-row ul li .nav-bar-link.nav-bar-link-nextgen:hover:before, nav .nav-row ul li .nav-bar-link.nav-bar-link-nextgen.active:before {
                background: var(--gold); }
            nav .nav-row ul li .mega-drop {
              background: var(--background);
              position: absolute;
              width: 100%;
              left: 0;
              top: 100%;
              box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.25);
              z-index: 5000000;
              color: var(--body);
              padding: 1.5rem;
              font-size: 0.8rem;
              display: none;
              opacity: 0;
              box-sizing: border-box;
              grid-gap: 1rem;
              transition: opacity .5s linear; }
              nav .nav-row ul li .mega-drop li {
                display: block; }
                nav .nav-row ul li .mega-drop li .main-link {
                  font-size: 1.25rem;
                  line-height: 1.25;
                  font-weight: 600;
                  position: relative;
                  padding-left: 1rem;
                  color: var(--body);
                  display: block;
                  margin-bottom: 1rem; }
                  nav .nav-row ul li .mega-drop li .main-link:before {
                    content: '';
                    display: block;
                    width: .5rem;
                    height: 100%;
                    background: var(--primary);
                    position: absolute;
                    top: 0;
                    left: 0; }
                  nav .nav-row ul li .mega-drop li .main-link:hover, nav .nav-row ul li .mega-drop li .main-link:focus {
                    color: var(--primary); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-news:before {
                    background: var(--primary); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-topics:before {
                    background: var(--amber); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-features:before {
                    background: var(--gold); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-webinars:before {
                    background: var(--green); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-whitepapers:before {
                    background: var(--teal); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-events:before {
                    background: var(--purple); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-directory:before {
                    background: var(--magenta); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-profiles:before {
                    background: var(--primary); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-digital-editions:before {
                    background: var(--primary); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-podcasts:before {
                    background: var(--blue); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-infosec:before {
                    background: var(--primary); }
                  nav .nav-row ul li .mega-drop li .main-link.main-link-nextgen:before {
                    background: var(--gold); }
                nav .nav-row ul li .mega-drop li .more-link {
                  font-size: 0.8rem;
                  line-height: 1.25;
                  margin-top: 1rem;
                  display: block; }
                nav .nav-row ul li .mega-drop li .nav-item {
                  display: flex;
                  background: var(--background-alt);
                  position: relative;
                  align-items: center;
                  margin-top: .5rem; }
                  nav .nav-row ul li .mega-drop li .nav-item .nav-thumb {
                    width: 50px;
                    min-height: 50px;
                    flex: 0 0 auto;
                    object-fit: cover;
                    background: var(--background);
                    align-self: stretch; }
                  nav .nav-row ul li .mega-drop li .nav-item.nav-item-block {
                    flex-direction: column; }
                    nav .nav-row ul li .mega-drop li .nav-item.nav-item-block .nav-thumb {
                      width: 100%;
                      min-height: auto;
                      aspect-ratio: 16/9; }
                  nav .nav-row ul li .mega-drop li .nav-item .nav-item-content {
                    padding: .5rem;
                    display: flex;
                    flex-direction: column;
                    gap: .25rem;
                    font-size: 0.8rem;
                    line-height: 1.25; }
                  nav .nav-row ul li .mega-drop li .nav-item .nav-date {
                    font-size: 0.64rem;
                    color: var(--body-alt); }
                  nav .nav-row ul li .mega-drop li .nav-item .nav-headline {
                    color: var(--body); }
                    nav .nav-row ul li .mega-drop li .nav-item .nav-headline:after {
                      content: '';
                      position: absolute;
                      top: 0;
                      left: 0;
                      width: 100%;
                      height: 100%; }
                    nav .nav-row ul li .mega-drop li .nav-item .nav-headline:hover, nav .nav-row ul li .mega-drop li .nav-item .nav-headline:focus {
                      color: var(--primary); }
                    nav .nav-row ul li .mega-drop li .nav-item .nav-headline:focus {
                      outline: none; }
                      nav .nav-row ul li .mega-drop li .nav-item .nav-headline:focus:after {
                        outline: 0.125rem solid var(--primary);
                        outline-offset: .125rem; }
              nav .nav-row ul li .mega-drop.mega-drop-topics {
                grid-template-columns: repeat(4, 1fr);
                align-items: stretch; }
                nav .nav-row ul li .mega-drop.mega-drop-topics li a {
                  display: flex;
                  height: 100%;
                  background: var(--background-alt);
                  padding: 1rem;
                  align-items: center;
                  box-sizing: border-box;
                  color: var(--body); }
                  nav .nav-row ul li .mega-drop.mega-drop-topics li a:hover, nav .nav-row ul li .mega-drop.mega-drop-topics li a:focus {
                    color: var(--primary); }
                  nav .nav-row ul li .mega-drop.mega-drop-topics li a:focus {
                    outline: 0.125rem solid var(--primary);
                    outline-offset: .125rem; }
              nav .nav-row ul li .mega-drop.mega-drop-features {
                grid-template-columns: repeat(3, 1fr);
                align-items: start; }
              nav .nav-row ul li .mega-drop.mega-drop-search form {
                display: flex;
                gap: .5rem; }
            nav .nav-row ul li .active + .mega-drop {
              display: grid;
              opacity: 1; } }

.pullout-menu {
  width: 100%;
  box-sizing: border-box;
  top: 0;
  bottom: 0;
  left: 0;
  position: fixed;
  overflow: auto;
  z-index: 5000002;
  font-size: 1rem;
  line-height: 1.25;
  display: none; }
  .pullout-menu:before {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--body);
    opacity: .85;
    content: '';
    z-index: 0; }
  .pullout-menu.open {
    display: block; }
  @media (min-width: 51.5rem) {
    .pullout-menu {
      display: none; } }
  .pullout-menu .pullout-close {
    position: fixed;
    top: 1rem;
    left: 17rem;
    width: 2rem;
    height: 2rem;
    padding: 0;
    background: none;
    border: none;
    cursor: pointer; }
    .pullout-menu .pullout-close svg {
      display: block;
      width: 100%;
      height: 100%;
      stroke: var(--background); }
    .pullout-menu .pullout-close:hover svg {
      stroke: var(--primary); }
  .pullout-menu ul {
    margin: 0;
    padding: 0;
    width: 16rem;
    background: var(--background);
    position: relative; }
    .pullout-menu ul li {
      margin: 0;
      padding: 0;
      border-bottom: 1px solid var(--background-alt); }
      .pullout-menu ul li a {
        display: block;
        padding: 1rem;
        color: var(--body);
        position: relative; }
        .pullout-menu ul li a:hover {
          color: var(--primary); }
        .pullout-menu ul li a:focus {
          outline-offset: -.25rem; }
        .pullout-menu ul li a:after {
          content: '';
          position: absolute;
          top: .5rem;
          right: .5rem;
          height: calc(100% - 1rem);
          width: .25rem; }
        .pullout-menu ul li a.colour-news:after {
          background: var(--primary); }
        .pullout-menu ul li a.colour-topics:after {
          background: var(--amber); }
        .pullout-menu ul li a.colour-features:after {
          background: var(--gold); }
        .pullout-menu ul li a.colour-webinars:after {
          background: var(--green); }
        .pullout-menu ul li a.colour-whitepapers:after {
          background: var(--teal); }
        .pullout-menu ul li a.colour-events:after {
          background: var(--purple); }
        .pullout-menu ul li a.colour-directory:after {
          background: var(--magenta); }
        .pullout-menu ul li a.colour-profiles:after {
          background: var(--primary); }
        .pullout-menu ul li a.colour-digital-editions:after {
          background: var(--primary); }
        .pullout-menu ul li a.colour-podcasts:after {
          background: var(--blue); }
        .pullout-menu ul li a.colour-infosec:after {
          background: var(--primary); }
        .pullout-menu ul li a.colour-nextgen:after {
          background: var(--gold); }
  .pullout-menu .profile-links:before,
  .pullout-menu .search-box:before,
  .pullout-menu .section-links:before,
  .pullout-menu .topic-links:before {
    display: block;
    background: var(--primary);
    padding: 1rem;
    color: var(--background);
    font-weight: 600; }
  .pullout-menu .search-box li {
    padding: 1rem; }
    .pullout-menu .search-box li form {
      display: flex;
      gap: .5rem; }
  .pullout-menu .profile-links:before {
    content: 'Members'; }
  .pullout-menu .search-box:before {
    content: 'Search'; }
  .pullout-menu .section-links:before {
    content: 'Sections'; }
  .pullout-menu .topic-links:before {
    content: 'Topics'; }

.page-content h1, .page-content h2, .page-content h3, .page-content h4, .page-content h5, .page-content .h1, .page-content .h2, .page-content .h3, .page-content .h4, .page-content .h5, .page-content p,
.page-intro h1,
.page-intro h2,
.page-intro h3,
.page-intro h4,
.page-intro h5,
.page-intro .h1,
.page-intro .h2,
.page-intro .h3,
.page-intro .h4,
.page-intro .h5,
.page-intro p {
  margin-bottom: 1rem; }
  .page-content h1:empty, .page-content h1:blank, .page-content h2:empty, .page-content h2:blank, .page-content h3:empty, .page-content h3:blank, .page-content h4:empty, .page-content h4:blank, .page-content h5:empty, .page-content h5:blank, .page-content .h1:empty, .page-content .h1:blank, .page-content .h2:empty, .page-content .h2:blank, .page-content .h3:empty, .page-content .h3:blank, .page-content .h4:empty, .page-content .h4:blank, .page-content .h5:empty, .page-content .h5:blank, .page-content p:empty, .page-content p:blank,
  .page-intro h1:empty,
  .page-intro h1:blank,
  .page-intro h2:empty,
  .page-intro h2:blank,
  .page-intro h3:empty,
  .page-intro h3:blank,
  .page-intro h4:empty,
  .page-intro h4:blank,
  .page-intro h5:empty,
  .page-intro h5:blank,
  .page-intro .h1:empty,
  .page-intro .h1:blank,
  .page-intro .h2:empty,
  .page-intro .h2:blank,
  .page-intro .h3:empty,
  .page-intro .h3:blank,
  .page-intro .h4:empty,
  .page-intro .h4:blank,
  .page-intro .h5:empty,
  .page-intro .h5:blank,
  .page-intro p:empty,
  .page-intro p:blank {
    display: none; }

.page-content hr,
.page-intro hr {
  border: none;
  height: 1px;
  overflow: hidden;
  clear: both;
  background: var(--border);
  margin: 0 0 1rem; }

.page-content table,
.page-intro table {
  border-collapse: collapse;
  min-width: 100%; }
  .page-content table th,
  .page-intro table th {
    padding: 1rem;
    color: var(--primary);
    font-weight: 700;
    font-size: 1.2em;
    background: var(--background);
    text-align: center;
    border: 1px solid var(--border); }
  .page-content table td,
  .page-intro table td {
    padding: 1rem;
    border: 1px solid var(--border); }

.page-content .table-wrapper,
.page-intro .table-wrapper {
  overflow: auto;
  width: 100%;
  margin-bottom: 1rem; }

.page-content .blockquote,
.page-intro .blockquote {
  margin: 0 0 1rem;
  padding: 0 2rem;
  display: block;
  font-family: var(--serif);
  font-weight: 700;
  font-size: 1.95313rem;
  line-height: 1.25;
  font-style: italic;
  color: var(--body);
  text-align: center;
  box-sizing: border-box; }
  .page-content .blockquote cite,
  .page-intro .blockquote cite {
    font-family: var(--sans);
    font-size: 1rem;
    font-style: normal;
    display: block;
    color: var(--body-alt);
    margin-top: .5rem;
    text-transform: uppercase; }
  @media (min-width: 71.25rem) {
    .page-content .blockquote.blockquote-left,
    .page-intro .blockquote.blockquote-left {
      width: 50%;
      margin: 0 .5rem 1rem 0;
      padding: 1rem 0.5rem 1rem 0;
      float: left; }
    .page-content .blockquote.blockquote-right,
    .page-intro .blockquote.blockquote-right {
      width: 50%;
      margin: 0 0 1rem .5rem;
      padding: 1rem 0 1rem .5rem;
      float: left; } }

.page-content ul,
.page-intro ul {
  margin: 0 0 1rem;
  padding: 0;
  counter-reset: li;
  display: flex;
  flex-direction: column;
  list-style: none;
  border-bottom: 1px solid var(--border-alt); }
  .page-content ul li,
  .page-intro ul li {
    margin: 0;
    padding: 1rem 0 1rem 1.75rem;
    border-top: 1px solid var(--border-alt);
    font-size: 1rem;
    line-height: 1.5;
    position: relative;
    display: block; }
    .page-content ul li:before,
    .page-intro ul li:before {
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      content: '';
      width: 0;
      height: 0;
      border-top: .75rem solid transparent;
      border-bottom: .75rem solid transparent;
      border-left: 0.75rem solid var(--primary); }
    .page-content ul li > :last-child,
    .page-intro ul li > :last-child {
      margin: 0; }

.page-content ol,
.page-intro ol {
  margin: 0 0 1rem;
  padding: 0;
  counter-reset: li;
  display: flex;
  flex-direction: column;
  list-style: none;
  border-bottom: 1px solid var(--border-alt); }
  .page-content ol li,
  .page-intro ol li {
    margin: 0;
    padding: 1rem 0 1rem 3.5rem;
    font-size: 1rem;
    line-height: 1.5;
    border-top: 1px solid var(--border-alt);
    position: relative;
    display: block; }
    .page-content ol li:before,
    .page-intro ol li:before {
      position: absolute;
      top: 0;
      left: 0;
      width: 3rem;
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      counter-increment: li;
      content: counter(li) ".";
      color: var(--primary);
      font-size: 1.25rem;
      font-weight: 700;
      line-height: 1;
      text-align: center; }
    .page-content ol li > :last-child,
    .page-intro ol li > :last-child {
      margin: 0; }

.page-content a,
.page-intro a {
  text-decoration: underline; }

.page-content .embeds,
.page-intro .embeds {
  position: relative; }
  .page-content .embeds iframe,
  .page-intro .embeds iframe {
    position: absolute;
    top: 0;
    left: 0; }

.page-content .webinar-embed,
.page-intro .webinar-embed {
  margin: 0 0 1rem;
  height: 0;
  padding-bottom: 100%;
  clear: left;
  position: relative; }
  .page-content .webinar-embed object,
  .page-content .webinar-embed iframe,
  .page-intro .webinar-embed object,
  .page-intro .webinar-embed iframe {
    position: absolute;
    width: 100%;
    height: 100%; }

.page-content .adv-download,
.page-intro .adv-download {
  display: flex;
  border: 1px solid var(--primary);
  border-radius: .25rem;
  flex-direction: column;
  margin: 0 0 1rem; }
  @media (min-width: 71.25rem) {
    .page-content .adv-download,
    .page-intro .adv-download {
      align-items: center;
      flex-direction: row; } }
  .page-content .adv-download .adv-download-img,
  .page-intro .adv-download .adv-download-img {
    width: 12rem;
    flex: 0; }
  .page-content .adv-download .adv-download-name,
  .page-intro .adv-download .adv-download-name {
    flex: 1;
    padding: 1rem;
    font-weight: 600; }
    .page-content .adv-download .adv-download-name a,
    .page-intro .adv-download .adv-download-name a {
      text-decoration: none; }
  .page-content .adv-download:hover,
  .page-intro .adv-download:hover {
    background: var(--primary);
    color: var(--background); }
    .page-content .adv-download:hover a,
    .page-intro .adv-download:hover a {
      color: var(--background); }

.page-content .media,
.page-intro .media {
  margin: 0 0 1rem 0;
  clear: left; }
  .page-content .media img,
  .page-intro .media img {
    display: block;
    width: 100%; }
  .page-content .media.media-left,
  .page-intro .media.media-left {
    box-sizing: border-box; }
    @media (min-width: 24.75rem) {
      .page-content .media.media-left,
      .page-intro .media.media-left {
        width: 50%;
        margin: 0 .5rem 1rem 0;
        padding-right: .5rem;
        float: left; } }
    @media (min-width: 48rem) {
      .page-content .media.media-left,
      .page-intro .media.media-left {
        width: 100%;
        margin: 0 0 1rem 0;
        padding-right: 0;
        float: none; } }
    @media (min-width: 71.25rem) {
      .page-content .media.media-left,
      .page-intro .media.media-left {
        width: 50%;
        margin: 0 .5rem 1rem 0;
        padding-right: .5rem;
        float: left; } }
  .page-content .media .media-caption,
  .page-intro .media .media-caption {
    padding: 1rem;
    background: var(--background-alt);
    line-height: 1.5; }

.page-content > :last-child,
.page-intro > :last-child {
  margin-bottom: 0; }

.page-content .content-module:last-child > :last-child,
.page-intro .content-module:last-child > :last-child {
  margin-bottom: 0; }

.pagination {
  padding: 0;
  text-transform: uppercase;
  display: flex;
  justify-content: center;
  gap: .5rem;
  font-size: 1.25rem; }

h1, h2, h3, h4, p {
  margin: 0; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5 {
  font-weight: 600;
  line-height: 1.25; }

h1, .h1 {
  font-size: 2.44141rem;
  font-weight: 700; }

h2, .h2 {
  font-size: 1.95313rem;
  font-weight: 700; }

h3, .h3 {
  font-size: 1.5625rem; }

h4, .h4 {
  font-size: 1.25rem; }

h5, .h5 {
  font-size: 1rem; }

p {
  line-height: 1.5; }

.small {
  font-size: 0.8rem;
  line-height: 1.5; }

.x-small {
  font-size: 0.64rem;
  line-height: 1.5; }

.intro {
  font-family: var(--serif);
  font-size: 1.25rem;
  line-height: 1.25; }

a {
  text-decoration: none;
  color: var(--primary); }
  a:hover {
    text-decoration: underline; }
  a img {
    border: none; }

.d-none {
  display: none !important; }

.d-block {
  display: block !important; }

.d-inline-block {
  display: inline-block !important; }

.d-flex {
  display: flex !important; }

.d-inline {
  display: inline !important; }

@media (min-width: 0) {
  .d-xxs-none {
    display: none !important; }
  .d-xxs-block {
    display: block !important; }
  .d-xxs-inline-block {
    display: inline-block !important; }
  .d-xxs-flex {
    display: flex !important; }
  .d-xxs-inline {
    display: inline !important; } }

@media (min-width: 24.75rem) {
  .d-xs-none {
    display: none !important; }
  .d-xs-block {
    display: block !important; }
  .d-xs-inline-block {
    display: inline-block !important; }
  .d-xs-flex {
    display: flex !important; }
  .d-xs-inline {
    display: inline !important; } }

@media (min-width: 48rem) {
  .d-sm-none {
    display: none !important; }
  .d-sm-block {
    display: block !important; }
  .d-sm-inline-block {
    display: inline-block !important; }
  .d-sm-flex {
    display: flex !important; }
  .d-sm-inline {
    display: inline !important; } }

@media (min-width: 51.5rem) {
  .d-md-none {
    display: none !important; }
  .d-md-block {
    display: block !important; }
  .d-md-inline-block {
    display: inline-block !important; }
  .d-md-flex {
    display: flex !important; }
  .d-md-inline {
    display: inline !important; } }

@media (min-width: 71.25rem) {
  .d-lg-none {
    display: none !important; }
  .d-lg-block {
    display: block !important; }
  .d-lg-inline-block {
    display: inline-block !important; }
  .d-lg-flex {
    display: flex !important; }
  .d-lg-inline {
    display: inline !important; } }

@media (min-width: 76.25rem) {
  .d-xl-none {
    display: none !important; }
  .d-xl-block {
    display: block !important; }
  .d-xl-inline-block {
    display: inline-block !important; }
  .d-xl-flex {
    display: flex !important; }
  .d-xl-inline {
    display: inline !important; } }

.order-0 {
  order: 0 !important; }

@media (min-width: 0) {
  .order-xxs-0 {
    order: 0 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-0 {
    order: 0 !important; } }

@media (min-width: 48rem) {
  .order-sm-0 {
    order: 0 !important; } }

@media (min-width: 51.5rem) {
  .order-md-0 {
    order: 0 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-0 {
    order: 0 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-0 {
    order: 0 !important; } }

.order-1 {
  order: 1 !important; }

@media (min-width: 0) {
  .order-xxs-1 {
    order: 1 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-1 {
    order: 1 !important; } }

@media (min-width: 48rem) {
  .order-sm-1 {
    order: 1 !important; } }

@media (min-width: 51.5rem) {
  .order-md-1 {
    order: 1 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-1 {
    order: 1 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-1 {
    order: 1 !important; } }

.order-2 {
  order: 2 !important; }

@media (min-width: 0) {
  .order-xxs-2 {
    order: 2 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-2 {
    order: 2 !important; } }

@media (min-width: 48rem) {
  .order-sm-2 {
    order: 2 !important; } }

@media (min-width: 51.5rem) {
  .order-md-2 {
    order: 2 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-2 {
    order: 2 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-2 {
    order: 2 !important; } }

.order-3 {
  order: 3 !important; }

@media (min-width: 0) {
  .order-xxs-3 {
    order: 3 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-3 {
    order: 3 !important; } }

@media (min-width: 48rem) {
  .order-sm-3 {
    order: 3 !important; } }

@media (min-width: 51.5rem) {
  .order-md-3 {
    order: 3 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-3 {
    order: 3 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-3 {
    order: 3 !important; } }

.order-4 {
  order: 4 !important; }

@media (min-width: 0) {
  .order-xxs-4 {
    order: 4 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-4 {
    order: 4 !important; } }

@media (min-width: 48rem) {
  .order-sm-4 {
    order: 4 !important; } }

@media (min-width: 51.5rem) {
  .order-md-4 {
    order: 4 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-4 {
    order: 4 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-4 {
    order: 4 !important; } }

.order-5 {
  order: 5 !important; }

@media (min-width: 0) {
  .order-xxs-5 {
    order: 5 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-5 {
    order: 5 !important; } }

@media (min-width: 48rem) {
  .order-sm-5 {
    order: 5 !important; } }

@media (min-width: 51.5rem) {
  .order-md-5 {
    order: 5 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-5 {
    order: 5 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-5 {
    order: 5 !important; } }

.order-6 {
  order: 6 !important; }

@media (min-width: 0) {
  .order-xxs-6 {
    order: 6 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-6 {
    order: 6 !important; } }

@media (min-width: 48rem) {
  .order-sm-6 {
    order: 6 !important; } }

@media (min-width: 51.5rem) {
  .order-md-6 {
    order: 6 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-6 {
    order: 6 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-6 {
    order: 6 !important; } }

.order-7 {
  order: 7 !important; }

@media (min-width: 0) {
  .order-xxs-7 {
    order: 7 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-7 {
    order: 7 !important; } }

@media (min-width: 48rem) {
  .order-sm-7 {
    order: 7 !important; } }

@media (min-width: 51.5rem) {
  .order-md-7 {
    order: 7 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-7 {
    order: 7 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-7 {
    order: 7 !important; } }

.order-8 {
  order: 8 !important; }

@media (min-width: 0) {
  .order-xxs-8 {
    order: 8 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-8 {
    order: 8 !important; } }

@media (min-width: 48rem) {
  .order-sm-8 {
    order: 8 !important; } }

@media (min-width: 51.5rem) {
  .order-md-8 {
    order: 8 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-8 {
    order: 8 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-8 {
    order: 8 !important; } }

.order-9 {
  order: 9 !important; }

@media (min-width: 0) {
  .order-xxs-9 {
    order: 9 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-9 {
    order: 9 !important; } }

@media (min-width: 48rem) {
  .order-sm-9 {
    order: 9 !important; } }

@media (min-width: 51.5rem) {
  .order-md-9 {
    order: 9 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-9 {
    order: 9 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-9 {
    order: 9 !important; } }

.order-10 {
  order: 10 !important; }

@media (min-width: 0) {
  .order-xxs-10 {
    order: 10 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-10 {
    order: 10 !important; } }

@media (min-width: 48rem) {
  .order-sm-10 {
    order: 10 !important; } }

@media (min-width: 51.5rem) {
  .order-md-10 {
    order: 10 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-10 {
    order: 10 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-10 {
    order: 10 !important; } }

.order-11 {
  order: 11 !important; }

@media (min-width: 0) {
  .order-xxs-11 {
    order: 11 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-11 {
    order: 11 !important; } }

@media (min-width: 48rem) {
  .order-sm-11 {
    order: 11 !important; } }

@media (min-width: 51.5rem) {
  .order-md-11 {
    order: 11 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-11 {
    order: 11 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-11 {
    order: 11 !important; } }

.order-12 {
  order: 12 !important; }

@media (min-width: 0) {
  .order-xxs-12 {
    order: 12 !important; } }

@media (min-width: 24.75rem) {
  .order-xs-12 {
    order: 12 !important; } }

@media (min-width: 48rem) {
  .order-sm-12 {
    order: 12 !important; } }

@media (min-width: 51.5rem) {
  .order-md-12 {
    order: 12 !important; } }

@media (min-width: 71.25rem) {
  .order-lg-12 {
    order: 12 !important; } }

@media (min-width: 76.25rem) {
  .order-xl-12 {
    order: 12 !important; } }

.mb-0 {
  margin-bottom: 0 !important; }

.sr-only:not(:focus):not(:active) {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px; }

.webpage-item {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1rem 1rem 0;
  margin: 0;
  border-top: 1px solid var(--border-alt);
  box-sizing: border-box;
  /*&:before {
        content: '';
        width: 100%;
        background: $border-alt;
        height: 1px;
        top: calc(-1rem - 1px);
        position: absolute;
    }*/ }
  .webpage-item:last-child {
    border-bottom: 1px solid var(--border-alt);
    /*margin-bottom: calc(1rem + 1px);

        &:after {
            content: '';
            width: 100%;
            background: $border-alt;
            height: 1px;
            bottom: calc(-1rem - 1px);
            position: absolute;
        }*/ }
  .webpage-item .webpage-thumb {
    display: none;
    aspect-ratio: 1 / 1;
    flex: 0 0 auto;
    width: 3.75rem;
    object-fit: cover;
    align-self: start; }
    @media (min-width: 71.25rem) {
      .webpage-item .webpage-thumb {
        display: block;
        width: 7.75rem; } }
    .webpage-item .webpage-thumb.cover-thumb {
      aspect-ratio: 3 / 4; }
  .webpage-item .webpage-info {
    display: flex;
    flex-direction: column;
    gap: .5rem; }
    .webpage-item .webpage-info .webpage-meta {
      display: block;
      color: var(--body-alt);
      font-size: 0.8rem;
      text-transform: uppercase;
      order: 0; }
    .webpage-item .webpage-info .webpage-title {
      margin: 0;
      order: 1; }
      .webpage-item .webpage-info .webpage-title a {
        color: var(--body); }
    .webpage-item .webpage-info .webpage-summary {
      margin: 0;
      order: 2; }
    .webpage-item .webpage-info .webpage-sponsors {
      order: 4;
      margin-top: .5rem; }
      .webpage-item .webpage-info .webpage-sponsors:before {
        content: 'Brought to you by';
        font-size: 0.8rem;
        display: block;
        text-transform: uppercase;
        margin-bottom: .5rem; }
      .webpage-item .webpage-info .webpage-sponsors ol {
        margin: 0;
        padding: 0;
        list-style: none;
        display: flex;
        gap: .5rem;
        flex-wrap: wrap; }
      .webpage-item .webpage-info .webpage-sponsors li {
        padding: 0;
        margin: 0; }
      .webpage-item .webpage-info .webpage-sponsors a {
        position: relative;
        z-index: 10;
        font-weight: 600; }
    .webpage-item .webpage-info .webpage-authors {
      order: 3; }
      .webpage-item .webpage-info .webpage-authors:before {
        content: 'Written by';
        font-size: 0.8rem;
        display: block;
        text-transform: uppercase;
        margin-bottom: .5rem; }
      .webpage-item .webpage-info .webpage-authors ol {
        margin: 0;
        padding: 0;
        list-style: none;
        display: grid;
        gap: .5rem;
        grid-template-columns: 1fr; }
        @media (min-width: 71.25rem) {
          .webpage-item .webpage-info .webpage-authors ol {
            grid-template-columns: repeat(2, minmax(0, 1fr)); } }
      .webpage-item .webpage-info .webpage-authors li {
        padding: 0;
        margin: 0; }
        @media (min-width: 71.25rem) {
          .webpage-item .webpage-info .webpage-authors li:only-child {
            grid-column: span 2; } }

.webpages-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none; }

.whats-hot .whats-hot-heading {
  padding: 1rem 1rem 0;
  background: var(--background-alt); }

.whats-hot .whats-hot-tabs {
  display: flex;
  padding: 1rem 1rem 0;
  margin: 0;
  background: var(--background-alt);
  list-style: none;
  gap: .25rem;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden; }
  @media (min-width: 71.25rem) {
    .col-2-3 .whats-hot .whats-hot-tabs {
      gap: .5rem; } }
  .whats-hot .whats-hot-tabs li {
    padding: 0;
    margin: 0;
    flex: 1;
    display: block; }
    .whats-hot .whats-hot-tabs li button {
      padding: .5rem;
      border: 1px solid var(--body);
      border-bottom: none;
      background: var(--body);
      color: var(--background);
      font-size: 0.8rem;
      font-weight: 600;
      width: 100%;
      height: 100%;
      box-sizing: border-box; }
      .whats-hot .whats-hot-tabs li button:hover {
        background: var(--primary);
        border-color: var(--primary); }
      @media (min-width: 71.25rem) {
        .col-2-3 .whats-hot .whats-hot-tabs li button {
          font-size: 1rem;
          padding: 1rem; } }
    .whats-hot .whats-hot-tabs li.active button {
      background: var(--background);
      border-color: var(--border-alt);
      color: var(--body);
      font-weight: 700; }
      .whats-hot .whats-hot-tabs li.active button:hover {
        color: var(--primary);
        border-color: var(--primary); }

.whats-hot .whats-hot-stories {
  padding-top: .5rem; }
  @media (min-width: 71.25rem) {
    .col-2-3 .whats-hot .whats-hot-stories {
      padding-top: 1rem; } }
  .whats-hot .whats-hot-stories .tab-panel {
    display: none; }
    .whats-hot .whats-hot-stories .tab-panel.active {
      display: grid;
      grid-template-columns: 1fr;
      gap: .5rem; }
      @media (min-width: 71.25rem) {
        .col-2-3 .whats-hot .whats-hot-stories .tab-panel.active {
          grid-template-columns: 1fr 1fr;
          gap: 1rem; } }

body {
  margin: 0 auto;
  padding: 0;
  background: var(--background);
  font-family: var(--sans);
  color: var(--body);
  font-size: 1rem; }

.whiteout {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: red;
  z-index: 20000;
  display: none; }

.global-header {
  display: none; }

.launch-auditorium {
  padding: 2.75rem 2rem;
  margin: 1rem 0;
  background: #DF362F; }
  @media screen and (max-width: 550px) {
    .launch-auditorium {
      padding: 1.5rem 1.5rem;
      position: relative; } }
  .launch-auditorium a {
    font-size: 2.5rem;
    color: white;
    text-decoration: none;
    display: inline-block; }
    @media screen and (max-width: 768px) {
      .launch-auditorium a {
        font-size: 1.75rem;
        margin-right: 2rem; } }
  .launch-auditorium .launch-auditorium-icon {
    width: 2.5rem;
    margin-left: 1rem;
    display: inline-block;
    vertical-align: bottom; }
    @media screen and (max-width: 768px) {
      .launch-auditorium .launch-auditorium-icon {
        position: absolute;
        right: 1rem;
        top: 50%;
        margin-top: -0.7rem;
        width: 1.75rem; } }
  .launch-auditorium .launch-auditorium-logo {
    margin-top: -1.5rem;
    float: right;
    display: inline-block; }
    @media only screen and (max-width: 964px) {
      .launch-auditorium .launch-auditorium-logo {
        display: none; } }

.gsc-control-cse {
  padding: 0 !important;
  font-family: var(--sans) !important; }
  .gsc-control-cse .gsc-input-box {
    border: 1px solid var(--border) !important;
    border-radius: .25rem !important; }
    .gsc-control-cse .gsc-input-box .gsib_a {
      padding: .75rem 1rem !important; }
      .gsc-control-cse .gsc-input-box .gsib_a input {
        font-family: inherit !important; }
    .gsc-control-cse .gsc-input-box .gscb_a {
      color: var(--body-alt) !important; }
      .gsc-control-cse .gsc-input-box .gscb_a:hover {
        color: var(--primary) !important; }
  .gsc-control-cse button.gsc-search-button {
    padding: .75rem 1rem !important;
    background: var(--primary) !important;
    border: 1px solid var(--primary) !important;
    border-radius: .25rem; }
    .gsc-control-cse button.gsc-search-button svg {
      width: 1rem !important;
      height: 1rem !important;
      fill: var(--background) !important;
      border: 1px solid var(--primary) !important; }
    .gsc-control-cse button.gsc-search-button:hover {
      background: var(--background) !important; }
      .gsc-control-cse button.gsc-search-button:hover svg {
        fill: var(--primary) !important;
        border: 1px solid var(--background) !important; }
  .gsc-control-cse .gsc-adBlock {
    display: none; }
  .gsc-control-cse .gsc-results {
    border-top: 1px solid var(--border-alt) !important;
    width: 100% !important;
    padding: 0 !important; }
    .gsc-control-cse .gsc-results .gsc-result {
      padding: 1rem 0 !important;
      border: none !important;
      border-bottom: 1px solid var(--border-alt) !important; }
  .gsc-control-cse .gsc-above-wrapper-area {
    border: none !important; }
    .gsc-control-cse .gsc-above-wrapper-area .gsc-result-info {
      font-size: 1rem !important;
      color: var(--body-alt);
      padding: 1rem 0 !important; }
  .gsc-control-cse .gsc-cursor-box {
    font-family: var(--sans) !important;
    font-size: 1.25rem !important;
    text-align: center;
    margin: 1rem !important; }
    .gsc-control-cse .gsc-cursor-box .gsc-cursor-page {
      color: var(--primary) !important; }
      .gsc-control-cse .gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page {
        color: var(--body) !important; }
  .gsc-control-cse .gs-result {
    padding: 0 !important; }
    .gsc-control-cse .gs-result .gsc-thumbnail-inside {
      padding: 0 !important; }
    .gsc-control-cse .gs-result .gsc-url-top {
      font-size: 0.8rem !important;
      color: var(--body-alt) !important;
      padding: 0 !important;
      margin-top: .5rem !important; }
      .gsc-control-cse .gs-result .gsc-url-top * {
        color: inherit !important; }
    .gsc-control-cse .gs-result .gsc-table-result {
      padding: 0 !important;
      margin-top: .5rem !important; }
      .gsc-control-cse .gs-result .gsc-table-result .gs-snippet {
        font-family: var(--sans) !important;
        font-size: 1rem !important;
        line-height: 1.5 !important; }
    .gsc-control-cse .gs-result .gs-image {
      display: block;
      border: 1px solid var(--border-alt); }
      .gsc-control-cse .gs-result .gs-image > img {
        border: none !important; }
    .gsc-control-cse .gs-result .gs-title {
      overflow: visible; }
      .gsc-control-cse .gs-result .gs-title * {
        font-size: 1.25rem !important;
        font-weight: 600 !important;
        line-height: 1.25 !important; }
      .gsc-control-cse .gs-result .gs-title a {
        color: var(--primary) !important;
        display: block !important; }
        .gsc-control-cse .gs-result .gs-title a:hover {
          text-decoration: underline !important; }
        .gsc-control-cse .gs-result .gs-title a b {
          color: var(--background);
          background: var(--primary); }
  .gsc-control-cse .gcsc-find-more-on-google {
    color: var(--primary) !important; }
    .gsc-control-cse .gcsc-find-more-on-google .gcsc-find-more-on-google-magnifier {
      fill: var(--primary) !important; }
