   /* Restore the intended rem sizing on the GN page. */
html:has(body.gn-page) {
   font-size: 100%;
}

body.gn-page {
   font-size: 17px;
}
a, button {
    outline: none;
    transition: all .3s;
}
p.pad-50 {
    padding: 50px 0px 0px 0px;
}
.section.poppins.apply {
    margin-top: 80px;
}
.hover-underline .card-title {
    -webkit-background-position: 0 calc(100% - 2px);
    background: linear-gradient(90deg, #fdd900, #c99a2c) 0 calc(100% - 2px) / 0 3px no-repeat;
    transition: background-size .4s cubic-bezier(.8, 0, .2, 1);
    display: inline;
}
.hover-underline .card-title:hover {
    background-size: 100% 3px;
}
.text-truncate-2 {
    -webkit-line-clamp: 2;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    max-height: 3em;
    display: -webkit-box;
    overflow: hidden;
}
   .gn-page {
      --gn-gold: #c99a2c;
      --gn-brightgold: #fdd900;
      --gn-charcoal: #353535;
      --gn-ink: #353535;
      --gn-paper: #f6f3ed;
      --gn-lightpaper: #fffdf8;
      --gn-darkpaper:#646464;
      --gn-border: #dedbd3;
      margin: 0;
      color: var(--gn-ink);
      background: #fff;
      font-family: "AvertaStdPE", Helvetica, sans-serif;
      font-size: 17px;
      line-height: 1.65;
   }
   .gn-page * {
      box-sizing: border-box;
   }
   .gn-page img {
      max-width: 100%;
      display: block;
   }
   .gn-page a {
      color: inherit;
      text-underline-offset: 4px;
   }
   .gn-page [hidden] {
      display: none !important;
   }
   .gn-page h1,
   .gn-page h2,
   .gn-page h3,
   .gn-page h4,
   .gn-page p {
      margin: 0;
   }
   .gn-page h1,
   .gn-page h2 {
      /*font-family: Vollkorn, Georgia, serif;*/
      font-weight: 800;
      line-height: 1.08;
      letter-spacing: -0.015em;
      
   }
   .gn-page h2 {
      font-size: clamp(2rem, 3.2vw, 2.9rem);
   }
   .gn-page h3 {
      font-size: 1.7rem;
      line-height: 1.25;
      letter-spacing: -0.025em;
      margin-bottom: 20px;
   }
   .gn-page h4 {
      font-size: 1.1rem;
      line-height: 1.4;
      margin-bottom: 5px;
   }
   .gn-page p + p {
      margin-top: 1rem;
   }
   .gn-wrap {
      width: min(1180px, calc(100% - 74px));
      margin-inline: auto;
   }
   .gn-eyebrow {
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      line-height: 1.5;
      color: var(--gn-gold);
   }
   .gn-page a:focus-visible,
   .gn-page summary:focus-visible {
      outline: 3px solid #176caa;
      outline-offset: 6px;
   }
   .gn-page main:focus {
      outline: none;
   }
   .gn-skip {
      position: absolute;
      top: 8px;
      left: 8px;
      transform: translateY(-160%);
      z-index: 10;
      background: #fff;
      padding: 10px 18px;
   }
   .gn-skip:focus {
      transform: translateY(0);
   }
   .gn-header {
      color: #fff;
      /* background: var(--gn-charcoal);
      border-bottom: 1px solid #ffffff26; */
   }
   .gn-header-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 32px;
      min-height: 105px;
   }
   .gn-logo {
      width: 230px;
      height: auto;
   }
   .gn-header nav {
      display: flex;
      gap: 25px;
      font-size: 0.8rem;
      font-weight: 700;
   }
   .gn-header nav a {
      text-decoration: none;
   }
   .gn-header nav a:hover {
      text-decoration: underline;
   }
   
   .gn-partner {
    align-self: flex-start;
    background: #fff;
    transform: translateY(-16px);
   padding: 25px 18px 18px;
    border-radius: 0 0 4px 4px;
    flex-shrink: 0;
}
   .gn-partner img {
      width: 150px;
      height: auto;
   }
   .gn-hero {
      position: relative;
      isolation: isolate;
      overflow: hidden;
      color: #fff;
      background: #252b24;
      /* min-height: 580px; */
      min-height: 100vh;
      display: flex;
      align-items: center;
   }
   .gn-hero-photo {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: 64% center;
      z-index: -2;
   }
   .gn-hero::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -1;
      background: linear-gradient(
         90deg,
         rgba(22, 25, 22, 0.94) 0%,
         rgba(22, 25, 22, 0.84) 40%,
         rgba(22, 25, 22, 0.24) 75%,
         rgba(22, 25, 22, 0.15)
      );
   }
   .gn-hero-content {
      padding-block: 66px;
   }
   .gn-hero .gn-eyebrow {
      margin-bottom: 20px;
      font-size: 17px;
   }
   .gn-hero h1 {
      font-size: clamp(2.8rem, 4.5vw, 4.3rem);
      max-width: 800px;
   }
   .gn-hero h1 em {
      font-style: normal;
      color: #c99a2c;
   }
   .gn-hero-copy {
      max-width: 620px;
      margin: 25px 0 28px;
      font-size: 1.02rem;
      line-height: 1.7;
   }
   .gn-center {
      text-align: center;
   }
    .gn-padding {
      padding:25px;
   }
   .gn-button {
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
      min-height: 52px;
      padding: 13px 23px;
      background: var(--gn-gold);
      color: #202020 !important;
      text-decoration: none;
      font-size: 0.9rem;
      font-weight: 700;
      border: 1px solid transparent;
      border-radius: 3px;
      transition: background 0.18s;
   }
   .gn-button:hover {
      background: #e1b854;
   }
   .gn-button span {
      font-size: 1.3rem;
   }
   .gn-hero-note {
      max-width: 565px;
      font-size: 0.75rem;
      line-height: 1.6;
      color: #e5e4df;
      margin-top: 20px !important;
   }
   .gn-hero-label {
      position: absolute;
      right: 40px;
      bottom: 22px;
      font-size: 1rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-shadow: 0 1px 8px #000;
   }
   .gn-section {
      padding: 72px 0;
   }
   .gn-section-heading {
      text-align: center;
      max-width: 800px;
      margin: 0 auto 38px;
   }
   section#honors-difference {
    padding-top: 10px;
}
   .gn-section-heading .gn-eyebrow {
      margin-bottom: 13px;
   }
   .gn-section-heading > p:last-child {
      margin-top: 18px;
      color: #595959;
   }
   .gn-steps {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      list-style: none;
      margin: 0 0 48px;
      padding: 0;
   }
   .gn-steps li + li {
      border-left: 1px solid var(--gn-border);
   }
   .gn-steps a {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      text-decoration: none;
      gap: 12px;
      padding: 6px 20px;
   }
   .gn-number {
      font-family: "AvertaStdPE", sans-serif;
      font-size: 1.7rem;
      font-weight:700;
      width: 58px;
      height: 58px;
      display: grid;
      place-items: center;
      background: var(--gn-charcoal);
      border-radius: 50%;
      border: 1px solid #3d3935;
    color: #fdd900;
   }
   .gn-steps strong {
      font-size: 1rem;
      line-height: 1.4;
   }
   .gn-steps a > span:last-child {
      font-size: 0.78rem;
      color: #666;
      line-height: 1.5;
   }
   .gn-steps a:hover strong {
      text-decoration: underline;
      text-underline-offset: 5px;
   }
   .gn-action-grid {
      display: grid;
      grid-template-columns: 1.08fr 1fr;
      gap: 24px;
      align-items: stretch;
   }
   .gn-form-card,
   .gn-transcript-card {
      padding: 36px;
      border-radius: 10px;
      scroll-margin-top: 25px;
      box-shadow: 0 10px 15px #30303024;
   }
   .gn-form-card {
      /*border: 2px solid var(--gn-gold);*/
      border-top: 20px solid var(--gn-gold);
      background: #fff;
      /* box-shadow: 0 10px 35px #30303008; */
      box-shadow: 0 10px 15px #30303024;
   }
   .gn-transcript-card {
      background: var(--gn-lightpaper);
      /*border: 2px var(--gn-charcoal) solid;*/
      border-top: 20px solid var(--gn-charcoal);
   }
   .gn-action-grid .gn-eyebrow {
      font-size: 0.68rem;
      margin-bottom: 12px;
   }
   .gn-action-grid h3 {
      font-size: 1.65rem;
      margin-bottom: 16px;
   }
   .gn-action-grid p {
      font-size: 0.9rem;
   }
   .gn-form-fallback {
      margin-top: 24px;
      text-align: center;
      background: var(--gn-lightpaper);
      border: 2px dashed #c99a2c;
      padding: 30px 22px;
      border-radius: 10px;
   }
   .gn-form-symbol {
      display: block;
      font-size: 2rem;
      line-height: 1;
      color: #c99a2c;
      margin-bottom: 14px;
   }
   .gn-form-fallback p {
      margin: 10px 0 20px;
   }
   .gn-small {
      font-size: 0.76rem !important;
      line-height: 1.6;
      margin-top: 22px !important;
   }
   .gn-text-link {
      display: inline-flex;
      gap: 14px;
      align-items: center;
      font-weight: 700;
      font-size: 0.88rem;
      text-decoration: underline;
   }
   .gn-transcript-card > .gn-text-link {
      margin-top: 20px;
   }

   /* textlink animation*/
a:active span.gn-link-label {
    color: #c99a2c;
}
   .gn-page .gn-text-link {
   text-decoration: none;
}
a.gn-text-link.gn-text-link-large
 {
    font-size: 17px;
    margin-top: 10px;
}
.gn-text-link .gn-link-label {
   background-image: linear-gradient(currentColor, currentColor);
   background-position: left bottom;
   background-repeat: no-repeat;
   background-size: 0% 2px;
   padding-bottom: 3px;
   transition: background-size 0.25s ease;
}
.gn-text-link:active {
    color:#4b4b4b;
}
/* Reveal the underline */
.gn-text-link:is(:hover, :focus-visible) .gn-link-label {
   background-size: 100% 2px;
}
.gn-text-link::after {
   content: "\f0a9"; /* circle-arrow-right */
   font-family: var(--fa-family-sharp, "Font Awesome 6 Sharp");
   font-weight: 400; /* Regular */
   font-style: normal;
   display: inline-block;
   flex-shrink: 0;
   line-height: 1;
   transition: transform 0.25s ease;
}

.gn-text-link:is(:hover, :focus-visible)::after {
   transform: translateX(5px);
}

@media (prefers-reduced-motion: reduce) {
   .gn-text-link::after {
      transition: none;
   }

   .gn-text-link:is(:hover, :focus-visible)::after {
      transform: none;
   }
}
/*end link animation*/
   .gn-note {
      margin-top: 28px;
      padding-top: 24px;
      border-top: 1px solid #d9d3c8;
   }
   .gn-note h4 {
      margin-bottom: 10px;
   }
   .gn-resource-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 20px;
   }
   .gn-resources {
      background: #f8f8f6;
      border-top: 1px solid #eee;
   }
   .gn-resource {
      background: #fff;
      padding: 27px 25px;
      border: 1px solid #e4e2dc;
      display: flex;
      flex-direction: column;
      border-radius: 10px;
      border-top: 10px solid var(--gn-charcoal);
      box-shadow: 0 10px 15px #30303024;
   }
   .gn-card-index {
      font-size: 0.65rem;
      text-transform: uppercase;
      letter-spacing: 0.09em;
      color: #6c6c6c;
      font-weight: 700;
      margin-bottom: 10px;
   }
   .gn-resource h3 {
      font-size: 1.25rem;
      /*min-height: 3.2rem;*/
   }
   .gn-resource p {
      font-size: 0.85rem;
      margin: 15px 0 25px;
      color: #555;
   }
   .gn-resource .gn-text-link {
      margin-top: auto;
      font-size: 0.79rem;
   }
   .gn-welcome-band {
      display: grid;
      grid-template-columns: 1fr 1fr;
      background: var(--gn-charcoal);
      color: #fff;
   }
   .gn-welcome-media {
      min-height: 355px;
      position: relative;
   }
   .gn-welcome-media > img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: 38% center;
      position: absolute;
      inset: 0;
   }
   .gn-welcome-media iframe {
      border: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      inset: 0;
   }
   .gn-welcome-message {
      padding: 108px clamp(32px, 5vw, 80px);
      max-width: 680px;
      align-self: center;
   }
   .gn-welcome-message .gn-eyebrow {
      margin-bottom: 16px;
   }
   .gn-welcome-message p:not(.gn-eyebrow) {
      font-size: 0.94rem;
      margin: 23px 0;
   }
   .gn-welcome-message .gn-text-link {
      color: #c99a2c;
   }
   .gn-about-intro {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 60px;
      align-items: center;
   }
   .gn-about-intro .gn-eyebrow {
      color: #c99a2c;
      margin-bottom: 17px;
   }
   .gn-about-intro > p {
      font-size: 0.95rem;
      color: #555;
   }
   .gn-pillars {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 40px;
      margin-top: 55px;
   }
   .gn-pillars article {
      border-top: 2px solid var(--gn-gold);
      /* padding-top: 23px; */
      padding-top:0px;
   }
   .gn-pillars article > span {
      font-family: Vollkorn,Georgia, serif;
      font-size: 1.7rem;
      color: #ffffff;
          background: url(bookmark.svg) no-repeat;
    background-size: cover;
    background-position-y: bottom;
    margin-top: -1px;
    display: inline-block;
    padding: 5px;
    padding-bottom: 15px;
   }
   .gn-pillars h3 {
      margin: 16px 0;
   }
   .gn-pillars p {
      font-size: 0.88rem;
      color: #555;
   }
   .gn-closing {
      padding: 48px 0;
      background: var(--gn-paper);
      border-top: 1px solid #e8e2d6;
   }
   .gn-closing > .gn-wrap {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 35px;
   }
   .gn-closing .gn-eyebrow {
      margin-bottom: 12px;
   }
   .gn-closing h2 {
      font-size: 2.4rem;
   }
   .gn-closing p:last-child {
      margin-top: 12px;
      font-size: 0.9rem;
   }
   .gn-footer {
      padding: 40px 0;
      background: var(--gn-charcoal);
      color: #fff;
   }
   .gn-footer > .gn-wrap {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 25px;
   }
   .gn-footer address,
   .gn-footer p {
      font-size: 0.75rem;
      line-height: 1.8;
      font-style: normal;
   }
   .gn-footer p {
      text-align: right;
   }
   .gn-footer p span {
      color: #c99a2c;
   }
   #next-steps,
   #connect,
   #transcripts,
   #next-steps-form {
      scroll-margin-top: 25px;
   }
   #gn-form-mount:empty {
      display: none;
   }
   #gn-form-mount {
      margin-top: 24px;
   }
   .gn-form-status {
      padding: 18px;
      background: var(--gn-paper);
      font-size: 0.9rem;
   }
   .gn-form-external {
      margin-top: 18px;
   }
   .gn-submitted {
      padding: 25px;
      background: var(--gn-paper);
      border-left: 4px solid var(--gn-gold);
      margin-top: 24px;
   }
   .gn-submitted h4 {
      margin-bottom: 10px;
   }
   @media (min-width: 1600px) {
      .gn-hero {
         /* min-height: 650px; */
         min-height: 100vh;
      }
   }
   @media (max-width: 1050px) {
      .gn-header nav {
         display: none;
      }
      .gn-resource-grid {
         grid-template-columns: repeat(2, 1fr);
      }
      .gn-resource h3 {
         min-height: 0;
      }
      .gn-hero::before {
         background: linear-gradient(
            90deg,
            #161916ed,
            #161916b8 55%,
            #16191640
         );
      }
      .gn-hero-label {
         display: none;
      }
      .gn-form-card,
      .gn-transcript-card {
         padding: 28px;
      }
      .gn-footer > .gn-wrap {
         flex-wrap: wrap;
      }
      .gn-footer p {
         text-align: left;
      }
   }
   @media (max-width: 720px) {
      .gn-wrap {
         width: calc(100% - 56px);
      }
      .gn-header-inner {
         min-height: 86px;
         gap: 18px;
      }
      .gn-logo {
         width: 170px;
      }
      .gn-partner {
         transform: translateY(-16px);
         padding: 25px 18px 18px;
         width: 130px;
      }
      .gn-partner img {
         width: 100%;
      }
      .gn-hero {
         min-height: 0;
      }
      .gn-hero-content {
         padding: 50px 0;
      }
      .gn-hero::before {
         background: #161916ca;
      }
      .gn-hero-photo {
         object-position: 64% center;
      }
      .gn-hero h1 {
         font-size: 2.8rem;
      }
      .gn-hero-copy {
         font-size: 0.96rem;
      }
      .gn-hero-note {
         font-size: 0.73rem;
      }
      .gn-section {
         padding: 48px 0;
      }
      .gn-section-heading {
         margin-bottom: 30px;
      }
      .gn-steps {
         grid-template-columns: repeat(2, 1fr);
         gap: 25px 0;
         margin-bottom: 32px;
      }
      .gn-steps li + li {
         border: 0;
      }
      .gn-steps li:nth-child(even) {
         border-left: 1px solid var(--gn-border);
      }
      .gn-steps a {
         padding: 0 9px;
      }
      .gn-steps strong {
         font-size: 0.91rem;
      }
      .gn-action-grid,
      .gn-welcome-band,
      .gn-about-intro {
         grid-template-columns: 1fr;
      }
      .gn-welcome-media {
         min-height: 280px;
      }
      .gn-welcome-message {
         padding: 38px 24px;
      }
      .gn-about-intro {
         gap: 24px;
      }
      .gn-pillars {
         grid-template-columns: 1fr;
         gap: 30px;
         margin-top: 32px;
      }
      .gn-pillars h3 {
         /*display: inline-block;*/
         /*margin: 0 0 12px 14px;*/
      }
      .gn-pillars article > span {
         font-size: 1.2rem;
      }
      .gn-closing > .gn-wrap {
         flex-direction: column;
         align-items: flex-start;
         gap: 24px;
      }
      .gn-closing h2 {
         font-size: 2rem;
      }
      .gn-footer > .gn-wrap {
         align-items: flex-start;
         flex-direction: column;
      }
      .gn-footer img {
         width: 180px;
      }
   }
   @media (max-width: 420px) {
      .gn-logo {
         width: 145px;
      }
      .gn-partner {
         width: 120px;
         transform: translateY(-16px);
         padding: 25px 18px 18px;
      }
      .gn-header-inner {
         gap: 10px;
      }
      .gn-resource-grid {
         grid-template-columns: 1fr;
      }
      .gn-form-card,
      .gn-transcript-card {
         padding: 24px;
      }
      .gn-hero h1 {
         font-size: 2.4rem;
      }
      .gn-button {
         gap: 16px;
         font-size: 0.82rem;
      }
   }
   @media (prefers-reduced-motion: reduce) {
      .gn-page * {
         transition: none !important;
         scroll-behavior: auto !important;
      }
   }
   @media print {
      .gn-header nav,
      .gn-button,
      .gn-form-fallback {
         display: none;
      }
      .gn-hero {
         color: #000;
         min-height: 0;
      }
      .gn-hero::before,
      .gn-hero-photo,
      .gn-hero-label {
         display: none;
      }
      .gn-hero h1 em,
      .gn-hero .gn-eyebrow,
      .gn-hero-note {
         color: #333;
      }
      .gn-section {
         padding: 25px 0;
      }
      .gn-resource,
      .gn-action-grid section,
      .gn-pillars article {
         break-inside: avoid;
      }
      .gn-welcome-band {
         color: #000;
         background: #eee;
      }
      .gn-welcome-message .gn-text-link {
         color: #333;
      }
   }

   /* Header overlay: the hero image extends behind the co-branded header. */
   .gn-page {
      position: relative;
      --gn-header-height: 105px;
   }
   .gn-header {
      position: absolute;
      inset: 0 0 auto;
      z-index: 3;
      /* background: linear-gradient(180deg, rgba(15, 18, 15, 0.86), rgba(15, 18, 15, 0.32));
      border-bottom: 1px solid rgba(255, 255, 255, 0.2); */
   }
   .gn-header-inner {
      min-height: var(--gn-header-height);
      padding-block: 16px;
   }
   .gn-hero {
      padding-top: var(--gn-header-height);
      /* min-height: calc(580px + var(--gn-header-height)); */
      min-height: 100vh;
   }
   .gn-header a:focus-visible {
      outline-color: #c99a2c;
   }
   @media (min-width: 1600px) {
       .gn-hero { 
         /*min-height: calc(650px + var(--gn-header-height));  */
      min-height: 100vh;
      }
   }
   @media (max-width: 720px) {
      .gn-page { --gn-header-height: 86px; }
      .gn-header-inner { padding-block: 12px; }
      .gn-header-inner > a { flex: 0 1 170px; min-width: 0; }
      .gn-header .gn-logo { width: 100%; }
      .gn-partner { flex: 0 1 150px; min-width: 0; }
      /* .gn-hero { min-height: 0; } */
   }
   @media (max-width: 420px) {
      .gn-header-inner > a { flex-basis: 145px; }
      .gn-partner { flex-basis: 138px; }
   }
   @media print {
      .gn-header { position: static; background: var(--gn-charcoal); }
      .gn-hero { padding-top: 0; min-height: 0; }
   }
   /* Smooth growth on hover. */
.gn-form-card,
.gn-transcript-card,
.gn-number,
.gn-resource {
   transition: transform 0.2s ease;
}

/* Apply hover effects on devices with a mouse. */
@media (hover: hover) and (pointer: fine) {
   .gn-form-card:hover,
   .gn-transcript-card:hover,
   .gn-resource:hover {
      transform: scale(1.025);
   }

   /* Grow the number when its entire step link is hovered. */
   .gn-steps a:hover .gn-number {
      transform: scale(1.12);
   }
}

/* Also respond to keyboard focus. */
.gn-form-card:focus-within,
.gn-transcript-card:focus-within,
.gn-resource:focus-within {
   transform: scale(1.025);
}

.gn-steps a:focus-visible .gn-number {
   transform: scale(1.12);
}

/* Respect reduced-motion preferences. */
@media (prefers-reduced-motion: reduce) {
   .gn-form-card,
   .gn-transcript-card,
   .gn-number,
   .gn-resource {
      transition: none;
      transform: none;
   }
}

#footerSpace {
    background-color: var(--gn-paper);
    /*background-image: unset !important;*/
}
/*fast facts*/
.gn-fast-facts {
   background: #fff;
}

.gn-page .gn-fast-facts .gn-section-heading {
   margin-bottom: 48px;
}

.gn-facts-grid {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   gap: 44px 64px;
}

.gn-fact {
   min-width: 0;
}

.gn-page .gn-fact-value {
   display: flex;
   align-items: flex-end;
   width: fit-content;
   min-width: 175px;
   min-height: 90px;
   margin: 0;
   padding-bottom: 12px;
   border-bottom: 2px solid var(--gn-gold, #c99a2c);
   color: var(--gn-gold, #c99a2c);
   font-family: Vollkorn, Georgia, serif;
   font-size: clamp(48px, 5vw, 64px);
   font-weight: 400;
   line-height: 1;
   letter-spacing: -0.03em;
}

.gn-page .gn-fact-value-text {
   font-size: 30px;
   line-height: 1.05;
   letter-spacing: 0;
}

.gn-fact-unit {
   margin-left: 8px;
   font-size: 26px;
   letter-spacing: 0;
}

.gn-page .gn-fact-description {
   max-width: 300px;
   margin: 24px 0 0;
   color: var(--gn-charcoal, #303030);
   font-size: 17px;
   line-height: 1.65;
}

/* start studentvideo section*/
.gn-student-feature {
   background: var(--gn-paper, #f6f3ed);
}

.gn-student-feature-inner {
   display: grid;
   grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
   align-items: center;
   gap: clamp(32px, 6vw, 88px);
   max-width: 1050px;
}

/* Preserve the YouTube Short's vertical proportions. */
.gn-student-video {
   width: 100%;
   aspect-ratio: 9 / 16;
   overflow: hidden;
   border-radius: 12px;
   background: #161616;
   box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16);
}

.gn-student-video iframe {
   display: block;
   width: 100%;
   height: 100%;
   border: 0;
}

.gn-student-message {
   min-width: 0;
}

.gn-page .gn-student-message .gn-eyebrow {
   margin: 0 0 18px;
   font-size: 12px;
}

.gn-page .gn-student-message h2 {
   margin: 0;
   font-family: 'AvertaStdPE', Georgia, serif;
   font-size: clamp(34px, 3.8vw, 50px);
   line-height: 1.1;
}

.gn-page .gn-student-copy {
   margin: 24px 0 0;
   color: var(--gn-charcoal, #303030);
   font-size: 17px;
   line-height: 1.7;
}

.gn-student-actions {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   gap: 24px;
   margin-top: 30px;
}

@media (max-width: 720px) {
   .gn-student-feature-inner {
      grid-template-columns: minmax(0, 1fr);
      gap: 36px;
   }

   .gn-student-video {
      max-width: 340px;
      margin-inline: auto;
   }
   .gn-student-actions {
       justify-content: center;
   }
}

@media (max-width: 420px) {
   .gn-student-actions {
      flex-direction: column;
      align-items: flex-start;
   }
}
/* end studentvideo section */

/* text content section */
.gn-textcontent-feature {
   background: var(--gn-paper, #f6f3ed);
}

.gn-textcontent-feature-inner {
   display: grid;
   grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
   align-items: flex-start;
   gap: clamp(32px, 6vw, 88px);
   max-width: 1050px;
}

.gn-textcontent-media {
   width: 100%;
   min-width: 0;
   overflow: hidden;
   border-radius: 12px;
   background: #161616;
   box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16);
}

.gn-textcontent-media--portrait {
   aspect-ratio: 9 / 16;
}

.gn-textcontent-media--landscape {
   aspect-ratio: 16 / 9;
}

.gn-textcontent-media--square {
   aspect-ratio: 1 / 1;
}

.gn-textcontent-media iframe,
.gn-textcontent-media img {
   display: block;
   width: 100%;
   height: 100%;
   border: 0;
}

.gn-textcontent-media img {
   object-fit: cover;
}

.gn-textcontent-content {
   min-width: 0;
}

.gn-page .gn-textcontent-content .gn-eyebrow {
   margin: 0 0 18px;
   font-size: 12px;
}

.gn-page .gn-textcontent-content h2 {
   margin: 0;
   font-family: Vollkorn, Georgia, serif;
   font-size: clamp(34px, 3.8vw, 50px);
   line-height: 1.1;
}

.gn-page .gn-textcontent-copy {
   margin: 24px 0 0;
   color: var(--gn-charcoal, #303030);
   font-size: 17px;
   line-height: 1.7;
}

.gn-textcontent-actions {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   gap: 24px;
   margin-top: 30px;
}

@media (max-width: 720px) {
   .gn-textcontent-feature-inner {
      grid-template-columns: minmax(0, 1fr);
      gap: 36px;
   }

   .gn-textcontent-media {
      max-width: 340px;
      margin-inline: auto;
   }
}

@media (max-width: 420px) {
   .gn-textcontent-actions {
      flex-direction: column;
      align-items: flex-start;
   }
}
/* end text content section */

/* start GN Tabs section */

.gn-tabs-feature {
   background: #fff;
}

.gn-tabs-feature > .gn-wrap > .gn-eyebrow {
   margin-bottom: 24px;
}

.gn-tabs-intro {
   display: grid;
   grid-template-columns: 1.5fr 1fr;
   align-items: center;
   gap: 48px;
   margin-bottom: 56px;
}

.gn-page .gn-tabs-intro h2 {
   margin: 0;
   font-family: Vollkorn, Georgia, serif;
   font-size: clamp(32px, 3.8vw, 50px);
   line-height: 1.15;
}

.gn-page .gn-tabs-intro > p {
   margin: 0;
   color: #595959;
   font-size: 18px;
   line-height: 1.7;
}

.gn-tabs {
   background: var(--gn-paper, #f6f3ed);
   border-radius: 10px;
}

.gn-tabs [hidden] {
   display: none !important;
}
button#gn-tab-first {
    border-radius: 8px 0px 0px 0px;
}

button#gn-tab-senior {
    border-radius: 0px 8px 0px 0px;
}

.gn-tabs-nav {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   border-bottom: 1px solid var(--gn-border, #dedbd3);
}

.gn-tabs .gn-tab {
   appearance: none;
   display: flex;
   flex-direction: column;
   justify-content: center;
   gap: 16px;
   min-width: 0;
   min-height: 135px;
   height: auto;
   margin: 0;
   padding: 24px 28px;
   border: 0;
   border-bottom: 3px solid transparent;
   border-radius: 0;
   background: transparent;
   color: #595959;
   font-family: inherit;
   font-weight: 400;
   text-align: left;
   text-transform: none;
   white-space: normal;
   cursor: pointer;
   transition: background-color 0.2s ease, color 0.2s ease;
}

.gn-tab-label {
   font-size: 12px;
   line-height: 1.5;
   letter-spacing: 0.1em;
   text-transform: uppercase;
}

.gn-tab-title {
   font-family: Vollkorn, Georgia, serif;
   font-size: clamp(22px, 2.3vw, 30px);
   line-height: 1.2;
   letter-spacing: -0.02em;
}

.gn-tabs .gn-tab:hover {
   background: #eae5db;
   color: #262626;
}

.gn-tabs .gn-tab[aria-selected="true"] {
   background: var(--gn-charcoal, #303030);
   color: #fff;
   border-bottom-color: var(--gn-gold, #c99a2c);
}

/* Inset focus outline stays visible inside the tab. */
.gn-tabs .gn-tab:focus-visible {
   outline: 3px solid var(--gn-gold, #c99a2c);
   outline-offset: -7px;
}

.gn-tab-panel {
   padding: 44px 48px;
}

.gn-tab-panel:focus-visible {
   outline: 3px solid #756022;
   outline-offset: -6px;
}

.gn-tab-panel-grid {
   display: grid;
   grid-template-columns: 1.1fr 1fr;
   gap: 48px;
}

.gn-page .gn-tab-panel-copy h3 {
   margin: 0 0 20px;
   font-family: Vollkorn, Georgia, serif;
   font-size: clamp(26px, 2.7vw, 36px);
   font-weight: 700;
   line-height: 1.2;
}

.gn-page .gn-tab-panel-copy p {
   /*margin: 0;*/
   font-size: 18px;
   line-height: 1.7;
}

.gn-tab-panel-aside {
   padding-left: 32px;
   border-left: 2px solid var(--gn-gold, #c99a2c);
}

.gn-page .gn-tab-panel-aside h4 {
   margin: 0 0 18px;
   font-size: 12px;
   font-weight: 700;
   line-height: 1.5;
   letter-spacing: 0.1em;
   text-transform: uppercase;
}

.gn-tab-panel-aside ul {
   list-style: none;
   margin: 0;
   padding: 0;
}

.gn-tab-panel-aside li {
   margin: 0;
   font-size: 17px;
   line-height: 1.7;
}

.gn-tab-panel-aside li + li {
   margin-top: 6px;
}

@media (max-width: 720px) {
   .gn-tabs-intro {
      grid-template-columns: 1fr;
      gap: 22px;
      margin-bottom: 32px;
   }

   .gn-tabs .gn-tab {
      justify-content: flex-start;
      min-height: 110px;
      padding: 18px 12px;
      gap: 10px;
   }

   .gn-tab-label {
      font-size: 10px;
      letter-spacing: 0.04em;
   }

   .gn-tab-title {
      font-size: 20px;
   }

   .gn-tab-panel {
      padding: 30px 24px;
   }

   .gn-tab-panel-grid {
      grid-template-columns: 1fr;
      gap: 28px;
   }

   .gn-tab-panel-aside {
      padding: 24px 0 0;
      border-left: 0;
      border-top: 2px solid var(--gn-gold, #c99a2c);
   }
}

@media (max-width: 420px) {
   .gn-tabs .gn-tab {
      padding: 16px 9px;
   }

   .gn-tab-title {
      font-size: 17px;
   }

   .gn-tab-panel {
      padding: 26px 20px;
   }
}

@media (prefers-reduced-motion: reduce) {
   .gn-tabs .gn-tab {
      transition: none;
   }
}
/* End GN Tabs */

/* Start Quote Carousel */
.gn-quotes-feature {
   background: #fff;
}

.gn-quotes-feature,
.gn-quotes-feature * {
   box-sizing: border-box;
}

.gn-quotes-carousel {
   position: relative;
   min-width: 0;
}

.gn-quotes-feature [hidden] {
   display: none !important;
}

.gn-quotes-slider {
   width: 100%;
   min-width: 0;
}

/* Display all quotes if Owl is unavailable. */
.gn-quotes-slider.owl-carousel:not(.owl-loaded) {
   display: block;
}

.gn-quotes-slider:not(.owl-loaded) > .gn-quote-slide + .gn-quote-slide {
   margin-top: 48px;
}

.gn-quote-slide {
   min-width: 0;
}

.gn-quotes-layout {
   display: grid;
   grid-template-columns: repeat(12, minmax(0, 1fr));
   align-items: center;
}

/* Portrait on the left. */
.gn-quotes-photo {
   grid-column: 1 / 7;
   grid-row: 1;
   position: relative;
   align-self: stretch;
   min-width: 0;
   min-height: 580px;
   background: #e7e3da;
   border-radius: 8px;
}

.gn-quotes-feature .gn-quotes-photo img {
   position: absolute;
   inset: 0;
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center top;
   border-radius: 8px;
}

/* Quote overlaps the portrait on the right. */
.gn-quotes-card {
   grid-column: 6 / -1;
   grid-row: 1;
   position: relative;
   z-index: 1;
   min-width: 0;
   margin-block: 48px;
   padding: clamp(28px, 4vw, 52px);
   /*border-top: 4px solid var(--gn-gold, #c99a2c);*/
   background: var(--gn-charcoal, #303030);
   color: #fff;
   border-radius:8px;
}

.gn-quotes-feature .gn-quotes-label {
   display: flex;
   align-items: center;
   gap: 12px;
   margin: 0 0 24px;
   color: #ead5a0;
   color:#c99a2c;
   font-size: 12px;
   font-weight: 700;
   line-height: 1.5;
   letter-spacing: 0.08em;
   text-transform: uppercase;
}

.gn-quotes-label > span {
   font-family: Georgia, serif;
   font-size: 54px;
   line-height: 0.7;
   transform: translateY(8px);
}

.gn-quotes-feature .gn-quote,
.gn-quotes-feature .gn-quote blockquote {
   margin: 0;
   padding: 0;
   border: 0;
   background: transparent;
   color: inherit;
}

.gn-quotes-feature .gn-quote blockquote::before,
.gn-quotes-feature .gn-quote blockquote::after {
   content: none;
}

.gn-quotes-feature .gn-quote blockquote p {
   margin: 0;
   color: #fff;
   font-family: Vollkorn, Georgia, serif;
   font-size: clamp(20px, 1.9vw, 26px);
   font-style: normal;
   font-weight: 400;
   line-height: 1.55;
   overflow-wrap: break-word;
}

.gn-quote figcaption {
   position: relative;
   margin-top: 28px;
   padding-top: 22px;
}

.gn-quote figcaption::before {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   width: 100px;
   height: 3px;
   background: var(--gn-gold, #c99a2c);
}

.gn-quote-name {
   display: block;
   font-size: 17px;
   font-weight: 700;
   line-height: 1.5;
}

.gn-quote-year {
   display: block;
   margin-top: 3px;
   color: #e1ded7;
   font-size: 14px;
   line-height: 1.5;
}

/* Navigation below the slider. */
.gn-quotes-controls {
   display: flex;
   align-items: center;
   justify-content: flex-end;
   gap: 16px;
   padding: 16px 6px 6px;
}

.gn-quotes-feature .gn-quotes-arrow {
   appearance: none;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   flex: 0 0 44px;
   width: 44px;
   height: 44px;
   margin: 0;
   padding: 0;
   border: 1px solid #777;
   border-radius: 50%;
   background: #fff;
   color: #303030;
   font-family: inherit;
   font-size: 24px;
   font-weight: 400;
   line-height: 1;
   letter-spacing: 0;
   text-transform: none;
   cursor: pointer;
   transition: background-color 0.2s ease, color 0.2s ease;
}

.gn-quotes-feature .gn-quotes-arrow:hover:not([aria-disabled="true"]) {
   border-color: var(--gn-gold, #c99a2c);
   background: var(--gn-gold, #c99a2c);
   color: #202020;
}

.gn-quotes-feature .gn-quotes-arrow:focus-visible {
   outline: 3px solid #756022;
   outline-offset: 4px;
}

.gn-quotes-feature .gn-quotes-arrow[aria-disabled="true"] {
   opacity: 0.4;
   cursor: default;
}

.gn-quotes-count {
   min-width: 55px;
   color: #303030;
   font-size: 15px;
   font-weight: 700;
   line-height: 1.5;
   text-align: center;
}

.gn-quotes-sr-only {
   position: absolute;
   width: 1px;
   height: 1px;
   margin: -1px;
   padding: 0;
   overflow: hidden;
   clip-path: inset(50%);
   white-space: nowrap;
   border: 0;
}

/* Mobile: portrait above quote, retaining a small overlap. */
@media (max-width: 800px) {
   .gn-quotes-layout {
      grid-template-columns: minmax(0, 1fr);
   }

   .gn-quotes-photo {
      grid-column: 1;
      grid-row: 1;
      min-height: 0;
      height: 360px;
   }

   .gn-quotes-card {
      grid-column: 1;
      grid-row: 2;
      margin: -48px 18px 0;
      padding: 30px;
   }
}

@media (max-width: 480px) {
   .gn-quotes-photo {
      height: 300px;
   }

   .gn-quotes-card {
      margin-inline: 8px;
      padding: 26px 22px;
   }

   .gn-quotes-feature .gn-quote blockquote p {
      font-size: 20px;
   }

   .gn-quotes-controls {
      justify-content: center;
   }
}

@media (prefers-reduced-motion: reduce) {
   .gn-quotes-feature .owl-stage,
   .gn-quotes-feature .owl-height,
   .gn-quotes-feature .gn-quotes-arrow {
      transition: none !important;
   }
}

/* Print every testimonial. */
@media print {
   .gn-quotes-feature .owl-stage-outer {
      overflow: visible !important;
      height: auto !important;
   }

   .gn-quotes-feature .owl-stage {
      width: auto !important;
      transform: none !important;
   }

   .gn-quotes-feature .owl-item {
      float: none !important;
      width: 100% !important;
      margin-bottom: 24px;
      break-inside: avoid;
   }

   .gn-quotes-feature .gn-quotes-layout {
      display: block;
   }

   .gn-quotes-feature .gn-quotes-photo,
   .gn-quotes-feature .gn-quotes-controls {
      display: none !important;
   }

   .gn-quotes-feature .gn-quotes-card {
      margin: 0;
      padding: 20px;
      background: #fff;
      color: #000;
   }

   .gn-quotes-feature .gn-quote blockquote p,
   .gn-quotes-feature .gn-quotes-label,
   .gn-quotes-feature .gn-quote-year {
      color: #000;
   }
}

.gn-quotes-feature .gn-quotes-arrow {
   flex: 0 0 50px;
   width: 50px;
   height: 50px;
   border: 1px solid #d5c7a7;
   border-radius: 50%;
   background: #f6f3ed;
   color: #303030;
   box-shadow: 0 3px 8px rgba(0, 0, 0, 0.06);
   transition:
      background-color 0.2s ease,
      border-color 0.2s ease,
      box-shadow 0.2s ease;
}

.gn-quotes-arrow svg {
   display: block;
   flex-shrink: 0;
   transition: transform 0.2s ease;
}

.gn-quotes-feature .gn-quotes-arrow:hover:not([aria-disabled="true"]) {
   background: var(--gn-gold, #c99a2c);
   border-color: var(--gn-gold, #c99a2c);
   color: #202020;
   box-shadow: 0 5px 12px rgba(0, 0, 0, 0.12);
}

.gn-quotes-arrow[data-gn-quote-prev]:hover:not([aria-disabled="true"]) svg {
   transform: translateX(-3px);
}

.gn-quotes-arrow[data-gn-quote-next]:hover:not([aria-disabled="true"]) svg {
   transform: translateX(3px);
}

.gn-quotes-feature .gn-quotes-arrow:focus-visible {
   outline: 3px solid #756022;
   outline-offset: 4px;
}

.gn-quotes-feature .gn-quotes-arrow[aria-disabled="true"] {
   opacity: 0.4;
   box-shadow: none;
   cursor: default;
}

.gn-quotes-feature .gn-quotes-slider.owl-drag {
   cursor: grab;
}

.gn-quotes-feature .gn-quotes-slider.owl-grab {
   cursor: grabbing;
}

@media (prefers-reduced-motion: reduce) {
   .gn-quotes-feature .gn-quotes-arrow,
   .gn-quotes-arrow svg {
      transition: none;
   }

   .gn-quotes-feature .gn-quotes-arrow svg {
      transform: none;
   }
}
/* end Quote Carousel */
/* Start Summit Section */
.gn-tray {
    padding: 40px 0px;
    border-radius: 20px;
    max-width: 1200px;
    margin: auto;
    background-color: #000000c7;
}
.gn-summit-feature {
   background: var(--gn-paper, #f6f3ed);
   background-image: url(../../../academics/honors/_assets/next/honors-event-bg-1.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right;
    color: var(--gn-paper);
    padding-left:20px;
    padding-right:20px;
}

.gn-summit-feature,
.gn-summit-feature * {
   box-sizing: border-box;
}

.gn-summit-heading {
   max-width: 950px;
   margin-bottom: 40px;
}

.gn-summit-feature .gn-summit-heading .gn-eyebrow {
   margin: 0 0 16px;
   color: var(--gn-brightgold);
   font-size: 12px;
}

.gn-summit-feature .gn-summit-heading h2 {
   margin: 0;
   font-family: AvertaStdPE, Arial, serif;
   font-size: clamp(32px, 3.8vw, 48px);
   font-weight: 800;
   line-height: 1.12;
    /*border-left: 5px solid #fdd900;*/
    /*padding-left: 20px;*/
}
.gn-summit-feature .gn-summit-heading h2 {
   position: relative;
   border-left: 0;
   padding-left: 58px;
}
.gn-summit-feature .gn-details-box {
    margin-top: 25px;
    border-top: 4px solid #c99a2c;
    padding-top: 20px;
    max-width: 400px;
}
#gn-summit-title::before {
   content: "";
   position: absolute;
   top: 0.15em;
   left: 0;
   width: 44px;
   height: 44px;
   background-color: #fdd900;

   -webkit-mask: url("../../../academics/honors/_assets/next/bookmark-regular-full.svg")
                 center / contain no-repeat;
   mask: url("../../../academics/honors/_assets/next/bookmark-regular-full.svg")
         center / contain no-repeat;
}

/* Two columns of descriptive text. */
.gn-summit-text-grid {
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: clamp(28px, 5vw, 64px);
}

.gn-summit-feature .gn-summit-text-grid h3 {
   margin: 0 0 18px;
   font-family: Vollkorn, Georgia, serif;
   font-size: 28px;
   font-weight: 500;
   line-height: 1.25;
}

.gn-summit-feature .gn-summit-text-grid p {
   margin: 18px 0px;
   font-size: 17px;
   line-height: 1.75;
}

.gn-summit-feature .gn-summit-text-grid p + p {
   margin-top: 18px;
}



/* Three equal-height award cards. */
.gn-summit-awards {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   gap: 24px;
   margin-top: 44px;
}

.gn-summit-award-card {
   min-width: 0;
   padding: 30px;
   border-top: 4px solid var(--gn-darkpaper);
    border-radius: 6px;
   background: var(--gn-charcoal, #303030);
   color: #fff;
}

.gn-summit-feature .gn-summit-award-label {
   margin: 0 0 20px;
   color: #ead5a0;
   font-size: 12px;
   font-weight: 700;
   line-height: 1.5;
   letter-spacing: 0.08em;
   text-transform: uppercase;
}

.gn-summit-feature .gn-summit-award-value {
   margin: 0;
   color: #fff;
   font-family: Vollkorn, Georgia, serif;
   font-size: clamp(32px, 3vw, 42px);
   font-weight: 500;
   line-height: 1.15;
   letter-spacing: -0.03em;
}

.gn-summit-award-value span {
   display: inline-block;
   font-family: "AvertaStdPE", Arial, sans-serif;
   font-size: 16px;
   font-weight: 400;
   letter-spacing: 0;
}

.gn-summit-feature .gn-summit-award-description {
   margin: 20px 0 0;
   color: #ece9e2;
   font-size: 16px;
   line-height: 1.65;
}

/* Highlight the award for all other invited students. */
.gn-summit-award-card--gold {
   border-top-color: var(--gn-charcoal, #303030);
   background: var(--gn-gold, #c99a2c);
   border-top: 4px solid var(--gn-brightgold);
}

.gn-summit-feature .gn-summit-award-card--gold
.gn-summit-award-label,
.gn-summit-feature .gn-summit-award-card--gold
.gn-summit-award-value,
.gn-summit-feature .gn-summit-award-card--gold
.gn-summit-award-description {
   color: #202020;
}

@media (max-width: 800px) {
   .gn-summit-awards {
      grid-template-columns: 1fr;
      gap: 18px;
      margin-top: 32px;
   }
}

@media (max-width: 640px) {
   .gn-summit-text-grid {
      grid-template-columns: 1fr;
      gap: 28px;
   }

   .gn-summit-award-card {
      padding: 26px;
   }
}
/*End Summit Section */


/* start Books scroller */
/* Scoped to this component; load after Owl Carousel and your site CSS. */
section.gn-books-feature.gn-section {padding-top:0;padding-bottom:25px;}
.gn-books-feature { 10px 64px clamp(18px, 3vw, 56px); background: #fff; color: #353535; }
.gn-books-feature .gn-books-wrap { width: 100%; max-width: 1440px; margin-inline: auto; min-width: 0; }
.gn-books-feature .gn-books-heading { margin: 0; text-align: center; font-family: AvertaStdPE, Arial, sans-serif; font-size: clamp(32px, 3.8vw, 48px); font-weight: 800; line-height: 1.15; color: #353535; }
.gn-books-feature .gn-books-region { min-width: 0; }
.gn-books-feature .gn-book-card { margin: 0; padding: 0 6px 12px; text-align: center; }
.gn-books-feature .gn-book-cover { height: 290px; padding: 18px 10px 12px; display: flex; align-items: flex-end; justify-content: center; box-sizing: border-box; }
.gn-books-feature .gn-book-cover img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; transform-origin: center bottom; transition: transform 240ms ease, filter 240ms ease; }
@media (hover: hover) and (pointer: fine) {
  .gn-books-feature .gn-book-card:hover .gn-book-cover img { transform: scale(1.045); filter: drop-shadow(0 7px 6px rgb(0 0 0 / 16%)); }
}
.gn-books-feature .gn-book-title { margin: 12px 0 5px; padding: 0; border: 0; font-family: AvertaStdPE, Arial, sans-serif; font-size: 18px; font-weight: 600; line-height: 1.4; color: #353535; overflow-wrap: anywhere; }
.gn-books-feature .gn-book-author { margin: 0; font-family: AvertaStdPE, Arial, sans-serif; font-size: 16px; line-height: 1.5; color: #595959; }
.gn-books-feature .gn-books-dots { display: flex; justify-content: center; flex-wrap: wrap; gap: 0; margin-top: 30px; }
.gn-books-feature .gn-books-dots[hidden] { display: none; }
.gn-books-feature .gn-books-dot { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-width: 44px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; box-shadow: none; cursor: pointer; }
.gn-books-feature .gn-books-dot::before { content: ""; width: 12px; height: 12px; border-radius: 50%; background: #dedede; transition: background-color 160ms ease, transform 160ms ease; }
.gn-books-feature .gn-books-dot[aria-current="true"]::before { background: #252525; transform: scale(1.15); }
.gn-books-feature .gn-books-dot:hover::before { background: #353535; }
.gn-books-feature .gn-books-dot:focus-visible { outline: 3px solid #896719; outline-offset: -4px; }
.gn-books-feature .gn-books-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
/* Readable grid when JavaScript or Owl is unavailable. */
.gn-books-feature .gn-books-slider:not(.owl-loaded) { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 28px; }
@media (max-width: 599px) {
  .gn-books-feature { padding-block: 44px; }
  .gn-books-feature .gn-book-cover { height: 235px; }
  .gn-books-feature .gn-book-title { font-size: 17px; }
  .gn-books-feature .gn-book-author { font-size: 15px; }
  .gn-books-feature .gn-books-dots { margin-top: 18px; }
  .gn-books-feature .gn-books-slider:not(.owl-loaded) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .gn-books-feature .gn-book-cover img, .gn-books-feature .gn-books-dot::before { transition: none; }
  .gn-books-feature .gn-book-card:hover .gn-book-cover img { transform: none; }
}
@media print {
  .gn-books-feature .gn-books-dots { display: none; }
  .gn-books-feature .owl-stage { width: auto !important; transform: none !important; display: grid; grid-template-columns: repeat(3, 1fr); }
  .gn-books-feature .owl-item { width: auto !important; float: none; break-inside: avoid; }
  .gn-books-feature .owl-stage-outer { overflow: visible; }
}

/* Centered section introduction. */
.gn-books-feature .gn-books-header { margin: 0 auto 28px; text-align: center; }
.gn-books-feature .gn-books-eyebrow {margin: 0 0 12px;}
.gn-books-feature .gn-books-description { max-width: 720px; margin: 16px auto 0; font-family: AvertaStdPE, Arial, sans-serif; font-size: 18px; line-height: 1.6; color: #595959; text-align: center; }
@media print { .gn-books-feature .owl-item.cloned { display: none !important; } }

/* end Books scroller */
/* start Logo Scroller */
/* Full-width, continuously moving logo carousel. */
.gn-logo-feature,
.gn-logo-feature * { box-sizing: border-box; }
.gn-logo-feature.gn-section {
 position: relative;
 width: var(--gn-logo-viewport, 100%);
 max-width: none;
 margin-inline: calc((100% - var(--gn-logo-viewport, 100%)) / 2);
 padding: 80px clamp(18px, 3vw, 56px);
 overflow: clip;
 color: #303030;
 margin-bottom: 0px;
}
.gn-logo-feature [hidden] { display: none !important; }
.gn-logo-shell { width: 100%; max-width: none; margin: 0; padding: 0; }
.gn-logo-heading { max-width: 1180px; margin: 0 auto 28px;text-align:center; }
.gn-logo-feature .gn-logo-heading .gn-eyebrow { margin: 0 0 12px; font-size: 12px; }
.gn-logo-feature .gn-logo-heading h2 { margin: 0; color: #303030; font-size: clamp(28px, 3vw, 42px); line-height: 1.15; }
.gn-logo-region { min-width: 0;margin: 40px 0px;}
.gn-logo-slider { width: 100%; min-width: 0; }
.gn-logo-slider.owl-carousel:not(.owl-loaded) { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 24px; }
.gn-logo-feature .gn-logo-link {
 display: flex; align-items: center; justify-content: center;
 width: 100%; height: 140px; min-height: 44px; padding: 20px;
 /* border: 1px solid #e0dbd0; border-radius: 8px; background: #fff; */
 color: #303030; text-decoration: none;
}
h2#gn-logo-title {
    margin-bottom: 15px;
}
.gn-logo-feature .gn-logo-link img { display: block; width: 100%; max-width: 175px; height: 94px; object-fit: contain; }
.gn-logo-feature .gn-logo-link:hover { border-color: #896719; }
.gn-logo-feature .gn-logo-link:focus-visible { outline: 3px solid #896719; outline-offset: -5px; }
.gn-logo-controls { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 24px; padding-block: 5px; }
.gn-logo-feature .gn-logo-arrow {
 appearance: none; display: inline-flex; align-items: center; justify-content: center;
 width: 46px; height: 46px; min-width: 46px; margin: 0; padding: 0;
 border: 1px solid #d5c7a7; border-radius: 50%; background: #fff; color: #303030;
 line-height: 1; cursor: pointer; transition: background-color .2s ease;
}
.gn-logo-arrow svg { display: block; flex-shrink: 0; }
.gn-logo-feature .gn-logo-arrow:hover { background: #c99a2c; border-color: #c99a2c; }
.gn-logo-feature .gn-logo-arrow:focus-visible { outline: 3px solid #896719; outline-offset: 4px; }
/* Movement is frame-driven; a CSS stage transition would prevent instant hover pause. */
.gn-logo-slider .owl-stage { will-change: transform; }
.gn-logo-slider.owl-drag { cursor: grab; }
.gn-logo-slider.owl-grab { cursor: grabbing; }
.gn-logo-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 599px) {
 .gn-logo-feature.gn-section { padding-block: 44px; margin-bottom: 40px;}
 .gn-logo-feature .gn-logo-link { height: 120px; padding: 12px; }
 .gn-logo-feature .gn-logo-link img { height: 80px; }
 .gn-logo-slider.owl-carousel:not(.owl-loaded) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
 .gn-logo-slider .owl-stage,
 .gn-logo-feature .gn-logo-arrow { transition: none !important; }
}
@media print {
 .gn-logo-feature.gn-section { width: 100%; margin-inline: 0; padding: 24px 0; overflow: visible; }
 .gn-logo-feature .owl-stage-outer { overflow: visible !important; }
 .gn-logo-feature .owl-stage { display: block; width: auto !important; transform: none !important; }
 .gn-logo-feature .owl-item { float: none; display: inline-block; width: 30% !important; margin: 1% !important; break-inside: avoid; }
 .gn-logo-feature .owl-item.cloned, .gn-logo-controls { display: none !important; }
}
/* end Logo Scroller */
/* start Works Section */
section.gn-works-feature.gn-section {
    background: #353535 url(asfalt-light.png) repeat;
margin-top:0px;
    
}
.gn-works-feature {
   background: var(--gn-charcoal, #303030);
   color: #fff;
}

.gn-works-feature,
.gn-works-feature * {
   box-sizing: border-box;
}

.gn-works-feature [hidden] {
   display: none !important;
}

.gn-works-layout {
   display: grid;
   grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.5fr);
   align-items: center;
   gap: clamp(32px, 5vw, 64px);
}

.gn-works-intro,
.gn-works-projects {
   min-width: 0;
}

.gn-works-feature .gn-works-intro .gn-eyebrow {
   margin: 0 0 24px;
   font-size: 12px;
}

.gn-works-feature .gn-works-intro h2 {
   margin: 0 0 28px;
   color: #fff;
   font-family: "AvertaStdPE", Arial, sans-serif;
   font-size: clamp(38px, 4.5vw, 60px);
   font-weight: 900;
   line-height: .8;
}

.gn-works-intro h2 em {
   display: block;
   margin-block: 8px;
   color: #c99a2c;
   font-family: Vollkorn, Georgia, serif;
   font-weight: 500;
}

.gn-works-feature .gn-works-intro &gt; p:not(.gn-eyebrow) {
   margin: 0;
   color: #c99a2c;
   font-size: 17px;
   line-height: 1.75;
}

.gn-works-feature .gn-works-intro &gt; p + p {
   margin-top: 18px;
}

.gn-works-feature .gn-works-all {
   display: inline-flex;
   align-items: center;
   gap: 12px;
   min-height: 44px;
   margin-top: 24px;
   color: #c99a2c;
   font-size: 15px;
   font-weight: 700;
   text-decoration: underline;
   text-underline-offset: 5px;
}

.gn-works-feature .gn-works-all:hover {
   color: #fff;
}

.gn-works-feature .gn-works-projects-heading {
   margin: 0 0 20px;
   color: #fff;
   font-size: 14px;
   font-weight: 700;
   letter-spacing: 0.08em;
   text-transform: uppercase;
}

.gn-works-slider {
   width: 100%;
   min-width: 0;
}

/* Readable layout before initialization or if Owl is unavailable. */
.gn-works-slider.owl-carousel:not(.owl-loaded) {
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 20px;
}

/* Keep all cards the same height. */
.gn-works-slider .owl-stage {
   display: flex;
}

.gn-works-slider .owl-item {
   display: flex;
   float: none;
}

.gn-project-card {
   position: relative;
   isolation: isolate;
   display: flex;
   align-items: flex-end;
   width: 100%;
   min-height: 540px;
   overflow: hidden;
   border-radius: 10px;
   background: #171717;
}

/* Full-card photo with a dark readability overlay. */
.gn-works-feature .gn-project-photo {
   position: absolute;
   inset: 0;
   z-index: -2;
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center top;
}

.gn-project-card::before {
   content: "";
   position: absolute;
   inset: 0;
   z-index: -1;
   background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.05) 0%,
      rgba(0, 0, 0, 0.35) 30%,
      rgba(0, 0, 0, 0.92) 65%,
      #000 100%
   );
}

.gn-project-content {
   width: 100%;
   min-width: 0;
   padding: 26px;
}

.gn-works-feature .gn-project-name {
   margin: 0 0 8px;
   color: #fff;
   font-size: 24px;
   font-weight: 800;
   line-height: 1.2;
   letter-spacing: -0.02em;
}

.gn-works-feature .gn-project-major {
   margin: 0 0 18px;
   color: #c99a2c;
   font-size: 14px;
   font-weight: 700;
   line-height: 1.5;
}

.gn-works-feature .gn-project-title {
   margin: 0;
   color: #fff;
   font-family: Vollkorn, Georgia, serif;
   font-size: 21px;
   line-height: 1.4;
}

.gn-works-feature .gn-project-link {
   display: inline-flex;
   align-items: center;
   gap: 12px;
   min-height: 44px;
   margin-top: 24px;
   color: #fff;
   font-size: 12px;
   font-weight: 700;
   line-height: 1.4;
   letter-spacing: 0.06em;
   text-decoration: none;
   text-transform: uppercase;
}

.gn-project-link-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   flex: 0 0 44px;
   width: 44px;
   height: 44px;
   border: 1px solid #fff;
   border-radius: 50%;
   font-size: 24px;
   transition: background-color 0.2s ease, color 0.2s ease;
}

.gn-project-link:hover .gn-project-link-icon {
   border-color: #c99a2c;
   background: #c99a2c;
   color: #202020;
}

.gn-works-controls,
.gn-works-navigation {
   display: flex;
   align-items: center;
   gap: 14px;
}

.gn-works-controls {
   justify-content: space-between;
   flex-wrap: wrap;
   padding: 20px 5px 5px;
}

.gn-works-feature .gn-works-hint {
   margin: 0;
   color: #ddd8cd;
   font-size: 12px;
}

.gn-works-count {
   min-width: 64px;
   color: #fff;
   font-size: 14px;
   text-align: center;
}

.gn-works-feature .gn-works-arrow {
   appearance: none;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 46px;
   height: 46px;
   margin: 0;
   padding: 0;
   border: 1px solid #d5c7a7;
   border-radius: 50%;
   background: #fff;
   color: #303030;
   line-height: 1;
   cursor: pointer;
   transition: background-color 0.2s ease;
}

.gn-works-arrow svg {
   display: block;
   flex-shrink: 0;
}

.gn-works-feature .gn-works-arrow:hover:not([aria-disabled="true"]) {
   background: #c99a2c;
   border-color: #c99a2c;
}

.gn-works-feature .gn-works-arrow[aria-disabled="true"] {
   opacity: 0.4;
   cursor: default;
}

.gn-works-feature a:focus-visible,
.gn-works-feature button:focus-visible {
   outline: 3px solid #99a2c;
   outline-offset: 4px;
}

.gn-works-slider.owl-drag {
   cursor: grab;
}

.gn-works-slider.owl-grab {
   cursor: grabbing;
}

.gn-works-sr-only {
   position: absolute;
   width: 1px;
   height: 1px;
   margin: -1px;
   padding: 0;
   overflow: hidden;
   clip-path: inset(50%);
   white-space: nowrap;
   border: 0;
}

@media (max-width: 1000px) {
   .gn-works-layout {
      grid-template-columns: minmax(0, 1fr);
      gap: 36px;
   }

   .gn-works-intro {
      max-width: 760px;
   }
}

@media (max-width: 599px) {
   .gn-works-slider.owl-carousel:not(.owl-loaded) {
      grid-template-columns: 1fr;
   }

   .gn-project-card {
      min-height: 520px;
   }

   .gn-works-controls {
      justify-content: center;
   }

   .gn-works-feature .gn-works-hint {
      width: 100%;
      text-align: center;
   }
}

@media (prefers-reduced-motion: reduce) {
   .gn-works-feature .owl-stage,
   .gn-project-link-icon,
   .gn-works-feature .gn-works-arrow {
      transition: none !important;
   }
}
/* end Works Section */
/* start Cards Section */
/* Reusable cards carousel: matched to the Honors test page, 2026-10-20. */
h2#gn-faculty-title {
    font-family: Vollkorn;
    font-style: italic;
    font-weight: 700;
    font-size: 4.5rem;
}
.gn-cards-feature.gn-section {
    background: #353535 url("https://www.geneva.edu/landing/niche-admissions/_assets/asfalt-light.png") repeat;
/*margin-top:70px;*/
    
}
.gn-cards-feature {
   background: var(--gn-charcoal, #303030);
   color: #fff;
}

.gn-cards-feature,
.gn-cards-feature * {
   box-sizing: border-box;
}

.gn-cards-feature [hidden] {
   display: none !important;
}

.gn-cards-layout {
   display: grid;
   grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.5fr);
   align-items: center;
   gap: clamp(32px, 5vw, 64px);
}

.gn-cards-intro,
.gn-cards-projects {
   min-width: 0;
}

.gn-cards-feature .gn-cards-intro .gn-eyebrow {
   margin: 0 0 24px;
   color: #c99a2c;
   font-size: 12px;
}

.gn-cards-feature .gn-cards-intro h2 {
   margin: 0 0 28px;
   color: #fff;
   font-family: "AvertaStdPE", Arial, sans-serif;
   font-size: clamp(38px, 4.5vw, 60px);
   font-weight: 900;
   line-height: .8;
}

.gn-cards-intro h2 em {
   display: block;
   margin-block: 8px;
   color: #c99a2c;
   font-family: Vollkorn, Georgia, serif;
   font-weight: 500;
}

.gn-cards-feature .gn-cards-intro > p:not(.gn-eyebrow) {
   margin: 0;
   color: #fff;
   font-size: 17px;
   line-height: 1.75;
}

.gn-cards-feature .gn-cards-intro > p + p {
   margin-top: 18px;
}

.gn-cards-feature .gn-cards-all {
   display: inline-flex;
   align-items: center;
   gap: 12px;
   min-height: 44px;
   margin-top: 24px;
   color: #c99a2c;
   font-size: 15px;
   font-weight: 700;
   text-decoration: underline;
   text-underline-offset: 5px;
}

.gn-cards-feature .gn-cards-all:hover {
   color: #fff;
}

.gn-cards-feature .gn-cards-projects-heading {
   margin: 0 0 20px;
   color: #fff;
   font-size: 14px;
   font-weight: 700;
   letter-spacing: 0.08em;
   text-transform: uppercase;
}

.gn-cards-slider {
   width: 100%;
   min-width: 0;
}

/* Readable layout before initialization or if Owl is unavailable. */
.gn-cards-slider.owl-carousel:not(.owl-loaded) {
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 20px;
}

/* Keep all cards the same height. */
.gn-cards-slider .owl-stage {
   display: flex;
}

.gn-cards-slider .owl-item {
   display: flex;
   float: none;
}

.gn-card {
   position: relative;
   isolation: isolate;
   display: flex;
   align-items: flex-end;
   width: 100%;
   min-height: 540px;
   overflow: hidden;
   border-radius: 10px;
   background: #171717;
}

/* Full-card photo with a dark readability overlay. */
.gn-cards-feature .gn-card-photo {
   position: absolute;
   inset: 0;
   z-index: -2;
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center top;
}

.gn-card::before {
   content: "";
   position: absolute;
   inset: 0;
   z-index: -1;
   background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.05) 0%,
      rgba(0, 0, 0, 0.35) 30%,
      rgba(0, 0, 0, 0.92) 65%,
      #000 100%
   );
}

.gn-card-content {
   width: 100%;
   min-width: 0;
   padding: 26px;
}

.gn-cards-feature .gn-card-name {
   margin: 0 0 8px;
   color: #fff;
   font-size: 24px;
   font-weight: 800;
   line-height: 1.2;
   letter-spacing: -0.02em;
}

.gn-cards-feature .gn-card-role {
   margin: 0 0 18px;
   color: #c99a2c;
   font-size: 14px;
   font-weight: 700;
   line-height: 1.5;
}

.gn-cards-feature .gn-card-title {
   margin: 0;
   color: #fff;
   font-family: Vollkorn, Georgia, serif;
   font-size: 21px;
   line-height: 1.4;
}

.gn-cards-feature .gn-card-link {
   display: inline-flex;
   align-items: center;
   gap: 12px;
   min-height: 44px;
   margin-top: 24px;
   color: #fff;
   font-size: 12px;
   font-weight: 700;
   line-height: 1.4;
   letter-spacing: 0.06em;
   text-decoration: none;
   text-transform: uppercase;
}

.gn-card-link-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   flex: 0 0 44px;
   width: 44px;
   height: 44px;
   border: 1px solid #fff;
   border-radius: 50%;
   font-size: 24px;
   transition: background-color 0.2s ease, color 0.2s ease;
}

.gn-card-link:hover .gn-card-link-icon {
   border-color: #c99a2c;
   background: #c99a2c;
   color: #202020;
}

.gn-cards-controls,
.gn-cards-navigation {
   display: flex;
   align-items: center;
   gap: 14px;
}

.gn-cards-controls {
   justify-content: space-between;
   flex-wrap: wrap;
   padding: 20px 5px 5px;
}

.gn-cards-feature .gn-cards-hint {
   margin: 0;
   color: #ddd8cd;
   font-size: 12px;
}

.gn-cards-count {
   min-width: 64px;
   color: #fff;
   font-size: 14px;
   text-align: center;
}

.gn-cards-feature .gn-cards-arrow {
   appearance: none;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 46px;
   height: 46px;
   margin: 0;
   padding: 0;
   border: 1px solid #d5c7a7;
   border-radius: 50%;
   background: #fff;
   color: #303030;
   line-height: 1;
   cursor: pointer;
   transition: background-color 0.2s ease;
}

.gn-cards-arrow svg {
   display: block;
   flex-shrink: 0;
}

.gn-cards-feature .gn-cards-arrow:hover:not([aria-disabled="true"]) {
   background: #c99a2c;
   border-color: #c99a2c;
}

.gn-cards-feature .gn-cards-arrow[aria-disabled="true"] {
   opacity: 0.4;
   cursor: default;
}

.gn-cards-feature a:focus-visible,
.gn-cards-feature button:focus-visible {
   outline: 3px solid #c99a2c;
   outline-offset: 4px;
}

.gn-cards-slider.owl-drag {
   cursor: grab;
}

.gn-cards-slider.owl-grab {
   cursor: grabbing;
}

.gn-cards-sr-only {
   position: absolute;
   width: 1px;
   height: 1px;
   margin: -1px;
   padding: 0;
   overflow: hidden;
   clip-path: inset(50%);
   white-space: nowrap;
   border: 0;
}

@media (max-width: 1000px) {
   .gn-cards-layout {
      grid-template-columns: minmax(0, 1fr);
      gap: 36px;
   }

   .gn-cards-intro {
      max-width: 760px;
   }
}

@media (max-width: 599px) {
   .gn-cards-slider.owl-carousel:not(.owl-loaded) {
      grid-template-columns: 1fr;
   }

   .gn-card {
      min-height: 520px;
   }

   .gn-cards-controls {
      justify-content: center;
   }

   .gn-cards-feature .gn-cards-hint {
      width: 100%;
      text-align: center;
   }
}

@media (prefers-reduced-motion: reduce) {
   .gn-cards-feature .owl-stage,
   .gn-card-link-icon,
   .gn-cards-feature .gn-cards-arrow {
      transition: none !important;
   }
}

/* Optional desktop reversal; mobile always starts with the introduction. */
.gn-cards-intro { grid-column: 1; grid-row: 1; }
.gn-cards-projects { grid-column: 2; grid-row: 1; }
.gn-cards-feature--carousel-left .gn-cards-layout {
  grid-template-columns: minmax(0, 1.5fr) minmax(0, .9fr);
}
.gn-cards-feature--carousel-left .gn-cards-intro { grid-column: 2; }
.gn-cards-feature--carousel-left .gn-cards-projects { grid-column: 1; }
.gn-cards-feature .gn-card-courses {
  list-style: none; margin: 0; padding: 0;
  color: #fff; font-family: Vollkorn, Georgia, serif;
  font-size: 21px; line-height: 1.4;
}
.gn-cards-feature .gn-card-courses li { margin: 0;font-size:15px; color: inherit; }
.gn-cards-feature .gn-card-courses li + li { margin-top: 6px; }
.gn-cards-feature .gn-card-courses-label {
  margin: 0 0 8px; color: #ddd8cd;
  font-size: 11px; line-height: 1.5; letter-spacing: .06em;
  text-transform: uppercase; font-weight: 700;
}
.gn-card-link-icon svg { width: 18px; height: 18px; flex-shrink: 0; }
/* Keep the source's visual treatment while restoring a valid focus color. */
.gn-cards-feature a:focus-visible,
.gn-cards-feature button:focus-visible { outline-color: #eacb7d; }
@media (max-width: 1000px) {
 .gn-cards-feature .gn-cards-layout { grid-template-columns: minmax(0, 1fr); }
 .gn-cards-feature .gn-cards-intro { grid-column: 1; grid-row: 1; }
 .gn-cards-feature .gn-cards-projects { grid-column: 1; grid-row: 2; }
}
@media print {
 .gn-cards-slider .owl-stage-outer { overflow: visible !important; }
 .gn-cards-slider .owl-stage { display: block !important; width: auto !important; transform: none !important; }
 .gn-cards-slider .owl-item { display: block !important; float: none !important; width: auto !important; margin: 0 0 20px !important; break-inside: avoid; }
 .gn-cards-feature .gn-cards-layout { display: block; }
 .gn-cards-controls { display: none !important; }
}


/* LIGHT CARD CAROUSEL THEME */

/* contain photo on lightmode. */
.gn-cards-feature--light .gn-card img {
   object-fit: contain;
}

.gn-cards-feature.gn-cards-feature--light {
   --gn-cards-light-ink: #353535;
   --gn-cards-light-accent: #896719;

   background: var(--gn-paper, #f6f3ed);
   color: var(--gn-cards-light-ink);
}

/* Introduction and carousel heading. */
.gn-cards-feature--light .gn-cards-intro h2,
.gn-cards-feature--light .gn-cards-projects-heading {
   color: var(--gn-cards-light-ink);
}

.gn-cards-feature--light .gn-cards-intro > p:not(.gn-eyebrow) {
   color: var(--gn-cards-light-ink);
}

.gn-cards-feature--light .gn-cards-intro .gn-eyebrow {
   /*color: var(--gn-cards-light-accent);*/
}

.gn-cards-feature--light .gn-cards-intro h2 em {
   color: var(--gn-gold, #c99a2c);
}

/* Photo cards: fade into white instead of black. */
.gn-cards-feature--light .gn-card {
   background: #fff;
   box-shadow: inset 0 0 0 1px rgba(53, 53, 53, 0.15);
}

.gn-cards-feature--light .gn-card::before {
   background: linear-gradient(
      to bottom,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.15) 28%,
      rgba(255, 255, 255, 0.97) 60%,
      #fff 100%
   );
}

/* Card text. */
.gn-cards-feature--light .gn-card-name,
.gn-cards-feature--light .gn-card-title,
.gn-cards-feature--light .gn-card-courses,
.gn-cards-feature--light .gn-card-courses-label {
   color: var(--gn-cards-light-ink);
}

.gn-cards-feature--light .gn-card-role {
   color: var(--gn-cards-light-accent);
}

/* Card links and circular chevron icons. */
.gn-cards-feature--light .gn-card-link {
   color: var(--gn-cards-light-ink);
}

.gn-cards-feature--light .gn-card-link-icon {
   border-color: #b8ae9a;
   background: rgba(255, 255, 255, 0.7);
   color: var(--gn-cards-light-ink);
}

.gn-cards-feature--light .gn-card-link:hover .gn-card-link-icon {
   border-color: var(--gn-gold, #c99a2c);
   background: var(--gn-gold, #c99a2c);
   color: #202020;
}

/* Navigation and supporting links. */
.gn-cards-feature--light .gn-cards-count,
.gn-cards-feature--light .gn-cards-hint {
   color: var(--gn-cards-light-ink);
}

.gn-cards-feature--light .gn-cards-arrow {
   border-color: #d5c7a7;
   background: #fff;
   color: var(--gn-cards-light-ink);
}

.gn-cards-feature--light .gn-cards-arrow:hover:not([aria-disabled="true"]) {
   border-color: var(--gn-gold, #c99a2c);
   background: var(--gn-gold, #c99a2c);
   color: #202020;
}

.gn-cards-feature--light .gn-cards-all {
   color: var(--gn-cards-light-accent);
}

.gn-cards-feature--light .gn-cards-all:hover {
   color: var(--gn-cards-light-ink);
}

/* Visible keyboard focus against the light background. */
.gn-cards-feature--light a:focus-visible,
.gn-cards-feature--light button:focus-visible {
   outline: 3px solid var(--gn-cards-light-accent);
   outline-offset: 4px;
}
/*end Cards Section */
/* start Fast Facts */
@media (max-width: 900px) {
   .gn-facts-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 36px;
   }
}

@media (max-width: 540px) {
   .gn-facts-grid {
      /*grid-template-columns: 1fr;*/
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 32px;
   }

   .gn-page .gn-fact-value {
      min-height: 0;
   }

   .gn-page .gn-fact-description {
      max-width: none;
      margin-top: 18px;
   }
}
/* end fast facts */
/*Image Feature*/
.gn-image-feature {
   padding: 80px 0;
   background: var(--gn-charcoal, #303030);
}

.gn-image-feature-inner {
   display: grid;
   grid-template-columns: repeat(12, minmax(0, 1fr));
   align-items: center;
}

/* Image occupies the right-hand portion of the layout. */
.gn-image-feature-media {
   grid-column: 3 / -1;
   grid-row: 1;
   min-width: 0;
}

.gn-image-feature-media img {
   display: block;
   width: 100%;
   height: 600px;
   object-fit: cover;
   object-position: center;
   border-radius: 20px;
}
/* Desktop: text right, image left. */
.gn-image-feature--text-right .gn-image-feature-media {
   grid-column: 1 / 11;
}

.gn-image-feature--text-right .gn-image-feature-card {
   grid-column: 7 / -1;
}
/* Card overlaps the image while extending to its left or right */
section.gn-image-feature {
    background: #353535 url(asfalt-light.png) repeat;
}
.gn-image-feature-card {
   grid-column: 1 / 7;
   grid-row: 1;
   position: relative;
   z-index: 1;
   margin-block: 48px;
   padding: clamp(28px, 4vw, 48px);
   background: #fffffff5;
   color: var(--gn-charcoal, #303030);
   /*border-top: 10px solid var(--gn-gold, #c99a2c);*/
   box-shadow: 0 16px 40px rgba(0, 0, 0, 0.18);
   border-radius: 20px;
}

.gn-page .gn-image-feature-card .gn-eyebrow {
   margin: 0 0 16px;
   font-size: 12px;
}

.gn-page .gn-image-feature-card h2 {
   margin: 0;
   font-family: 'AvertaStdPE', sans-serif;
   font-size: clamp(32px, 3.4vw, 46px);
   line-height: 1.1;
}

.gn-page .gn-image-feature-copy {
   margin: 24px 0 0;
   font-size: 17px;
   line-height: 1.7;
}

.gn-image-feature-actions {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   gap: 22px;
   margin-top: 28px;
}

/* Stack the photo above the card, retaining a small overlap. */
@media (max-width: 800px) {
   .gn-image-feature {
      padding: 48px 0;
   }

   .gn-image-feature-inner {
      grid-template-columns: minmax(0, 1fr);
   }

   .gn-image-feature-media {
      grid-column: 1;
      grid-row: 1;
   }

   .gn-image-feature-media img {
      height: 360px;
   }

   .gn-image-feature-card {
      grid-column: 1;
      grid-row: 2;
      margin: -48px 18px 0;
      padding: 30px;
   }
}

@media (max-width: 480px) {
   .gn-image-feature-media img {
      height: 280px;
   }

   .gn-image-feature-card {
      margin-inline: 10px;
      padding: 26px 22px;
   }

   .gn-image-feature-actions {
      flex-direction: column;
      align-items: flex-start;
      gap: 20px;
   }
}
/* end image Feature*/
/* start Gallery */
/* Load AFTER your site and Owl styles. This is a separate component. */
.gn-story-carousel { --gn-story-photo-height: 600px; padding: 80px 0; background: #353535; color: #303030; background: #353535 url(asfalt-light.png) repeat;}
.gn-story-carousel *, .gn-story-carousel *::before, .gn-story-carousel *::after { box-sizing: border-box; }
.gn-story-carousel .gn-story-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.gn-story-carousel .gn-story-layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: center; }
.gn-story-carousel .gn-story-media { grid-column: 3 / -1; grid-row: 1; min-width: 0; overflow: hidden; border-radius: 20px; height: var(--gn-story-photo-height); background: #4a4a4a; }
.gn-story-carousel .gn-story-photo, .gn-story-carousel .gn-story-photo img { height: var(--gn-story-photo-height); cursor:grab;}
.gn-story-carousel .gn-story-photo img { display: block; width: 100%; object-fit: cover; object-position: center; }
.gn-story-carousel .gn-story-card { grid-column: 1 / 7; grid-row: 1; position: relative; z-index: 2; min-width: 0; margin-block: 48px; padding: clamp(28px, 4vw, 48px); /* Legacy WebKit (Safari 4-5, Chrome 1-9) */
background: -webkit-gradient(linear, left top, right top, color-stop(33%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(255, 255, 255, 0.7)));

/* Old WebKit (Safari 5.1-6, Chrome 10-25) */
background: -webkit-linear-gradient(left, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 0.7) 100%);

/* Old Firefox (3.6-15) */
background: -moz-linear-gradient(left, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 0.7) 100%);

/* Old Opera (11.1-12) */
background: -o-linear-gradient(left, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 0.7) 100%);

/* Modern Standard (Chrome, Edge, Firefox, Safari, Opera) */
background: linear-gradient(to right, rgba(255, 255, 255, 1) 33%, rgba(255, 255, 255, 0.7) 100%);
color: #303030; box-shadow: 0 16px 40px rgb(0 0 0 / 18%); border-radius: 20px; }
.gn-story-carousel .owl-stage { transition-timing-function: cubic-bezier(.22, 1, .36, 1) !important; }
.gn-story-carousel .gn-story-text .owl-stage { display: flex; align-items: stretch; }
.gn-story-carousel .gn-story-text .owl-item { float: none; flex: 0 0 auto; }
.gn-story-carousel .gn-story-panel { padding: 3px; }
.gn-story-carousel .gn-story-eyebrow { margin: 0 0 16px; font-size: 12px; line-height: 1.5; letter-spacing: .12em; text-transform: uppercase; color: var(--gn-gold); }
.gn-story-carousel .gn-story-heading { margin: 0; padding: 0; border: 0; font-family: AvertaStdPE, Arial, sans-serif; font-size: clamp(32px, 3.4vw, 46px); font-weight: 800; line-height: 1.1; color: #303030; }
.gn-story-carousel .gn-story-copy { margin: 24px 0 0; font-family: AvertaStdPE, Arial, sans-serif; font-size: 17px; line-height: 1.7; color: #303030; }
.gn-story-carousel .gn-story-actions { display: flex; flex-wrap: wrap; gap: 22px; align-items: center; margin-top: 28px; }
.gn-story-carousel .gn-story-panel a:focus-visible { outline: 3px solid #896719; outline-offset: 3px; }
.gn-story-carousel .gn-story-controls { display: flex; justify-content: center; align-items: center; gap: 16px; margin-top: 24px; }
.gn-story-carousel .gn-story-controls[hidden] { display: none; }
.gn-story-carousel .gn-story-arrow { display: inline-flex; align-items: center; justify-content: center; width: 46px; min-width: 46px; height: 46px; padding: 0; margin: 0; border: 1px solid #e0dbd0; border-radius: 50%; background: #fff; color: #353535; cursor: pointer; box-shadow: none; transition: background-color 180ms ease, border-color 180ms ease; }
.gn-story-carousel .gn-story-arrow:hover { background: #fdd900; border-color: #fdd900; }
.gn-story-carousel .gn-story-arrow:focus-visible { outline: 3px solid #fdd900; outline-offset: 5px; }
.gn-story-carousel .gn-story-count { min-width: 44px; text-align: center; font-family: AvertaStdPE, Arial, sans-serif; font-size: 15px; line-height: 1.4; color: #fff; }
.gn-story-carousel .gn-story-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.gn-story-carousel.gn-story-ready [data-gn-story-swipe] { touch-action: pan-y pinch-zoom; }
.gn-story-carousel.gn-story-ready .gn-story-media img { user-select: none; -webkit-user-drag: none; }
.gn-story-carousel--text-right .gn-story-media { grid-column: 1 / 11; }
.gn-story-carousel--text-right .gn-story-card { grid-column: 7 / -1; }
.gn-story-carousel .owl-carousel:not(.owl-loaded) { display: block; }
.gn-story-carousel:not(.gn-story-ready) .gn-story-photo + .gn-story-photo { margin-top: 16px; }
.gn-story-carousel:not(.gn-story-ready) .gn-story-panel + .gn-story-panel { margin-top: 32px; padding-top: 24px; border-top: 1px solid #ccc; }
.gn-story-carousel:not(.gn-story-ready) .gn-story-media { height: auto; }
@media (max-width: 800px) {
  .gn-story-carousel { --gn-story-photo-height: 360px; padding: 48px 0; }
  .gn-story-carousel .gn-story-layout { grid-template-columns: minmax(0, 1fr); }
  .gn-story-carousel .gn-story-media { grid-column: 1; grid-row: 1; }
  .gn-story-carousel .gn-story-card { grid-column: 1; grid-row: 2; margin: -48px 18px 0; padding: 30px; }
  .gn-story-carousel .gn-story-controls { margin-top: 26px; }
}
@media (max-width: 480px) {
  .gn-story-carousel { --gn-story-photo-height: 280px; }
  .gn-story-carousel .gn-story-wrap { width: calc(100% - 28px); }
  .gn-story-carousel .gn-story-card { margin-inline: 10px; padding: 26px 22px; }
  .gn-story-carousel .gn-story-actions { flex-direction: column; align-items: flex-start; gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .gn-story-carousel .owl-stage, .gn-story-carousel .gn-story-arrow { transition-duration: 0s !important; }
}
@media print {
  .gn-story-carousel { background: white; padding: 0; }
  .gn-story-carousel .gn-story-layout { display: block; }
  .gn-story-carousel .gn-story-media { height: auto; cursor: se-resize;}
  .gn-story-carousel .gn-story-card { margin: 0; box-shadow: none; }
  .gn-story-carousel .owl-stage { width: auto !important; transform: none !important; display: block !important; }
  .gn-story-carousel .owl-item { width: auto !important; float: none; }
  .gn-story-carousel .owl-item.cloned { display: none !important; }
  .gn-story-carousel .owl-stage-outer { overflow: visible; }
  .gn-story-carousel .gn-story-controls { display: none; }
}

/* end Gallery */