/*
 Theme Name:   Enfold Child
 Description:  Enfold Child Theme
 Author:       Exact Match Click
 Author URI:   http://exactmatchclick.com
 Template:     enfold
 Version:      1.0.1
 */

/* =========================================================
   CONTACT PAGE
   Temporary Launch Contact Panel
   Remove when Contact Form 7 is implemented.
   ========================================================= */

.gb-contact-direct {
    display: grid;
    gap: 22px;
    margin: 42px 0;
}

.gb-contact-direct-item {
    padding: 26px 30px;
    border: 1px solid rgba(216,170,78,.22);
    border-radius: 18px;
    background: linear-gradient(
        180deg,
        rgba(255,255,255,.05) 0%,
        rgba(255,255,255,.02) 100%
    );
    transition: border-color .25s ease,
                transform .25s ease,
                box-shadow .25s ease;
}

.gb-contact-direct-item:hover {
    border-color: rgba(216,170,78,.45);
    transform: translateY(-2px);
    box-shadow: 0 16px 40px rgba(4,24,46,.08);
}

.gb-contact-direct-item span {
    display: block;
    margin-bottom: 8px;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #D8AA4E;
}

.gb-contact-direct-item a {
    color: #04182E;
    font-size: 1.15rem;
    font-weight: 600;
    text-decoration: none;
    word-break: break-word;
    transition: color .25s ease;
}

.gb-contact-direct-item a:hover {
    color: #D8AA4E;
}

.gb-contact-launch-note {
    margin-top: 36px;
    padding-top: 28px;
    border-top: 1px solid rgba(4,24,46,.08);
}

.gb-contact-launch-note p {
    margin: 0;
    font-size: .95rem;
    line-height: 1.8;
    color: #5A6776;
}


/* =========================================================
   Responsive
   ========================================================= */

@media only screen and (max-width: 767px) {

    .gb-contact-direct-item {
        padding: 22px;
    }

    .gb-contact-direct-item a {
        font-size: 1rem;
    }

}


/* =========================================================
   GENBIO MOBILE/TABLET STICKY HEADER
   ---------------------------------------------------------
   Enfold disables the sticky header below 990px by setting
   the header to position: relative.

   We prefer the header to remain fixed across all devices.

   To restore Enfold's default behavior, simply comment out
   this entire block.
   ========================================================= */

@media only screen and (max-width: 767px) {

    .responsive #top #wrap_all #header {
        position: fixed;
    }

}

@media only screen and (min-width: 768px) and (max-width: 989px) {

    .responsive.html_mobile_menu_tablet #top #wrap_all #header {
        position: fixed;
    }

}


/* =========================================================
   GENBIO HEADER GRID ALIGNMENT

   Aligns the Enfold logo/navigation container with the same
   content grid used throughout the custom GenBio layouts.

   Desktop grid:
   max-width 1420px
   24px minimum side gutters

   Mobile grid:
   18px side gutters
   ========================================================= */

.responsive #header_main .av-logo-container {
    width: min(calc(100% - 48px), 1420px);
    max-width: none;

    margin-right: auto;
    margin-left: auto;

    padding-right: 0;
    padding-left: 0;
}

.responsive #header_main .av-logo-container .inner-container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}


/* Keep logo and hamburger aligned to opposite grid edges */

.responsive #header_main .logo {
    left: 0;
}

.responsive #header_main .main_menu {
    right: 0;
}


/* =========================================================
   TABLET

   Retains the same 24px side gutters used by most custom
   GenBio section containers.
   ========================================================= */

@media screen and (max-width: 1100px) {

    .responsive #header_main .av-logo-container {
        width: calc(100% - 48px);
    }

}


/* =========================================================
   MOBILE

   Matches custom page containers using:
   width: calc(100% - 36px);
   ========================================================= */

@media screen and (max-width: 767px) {

    .responsive #header_main .av-logo-container {
        width: calc(100% - 36px);
    }

}


/* =========================================================
   GLOBAL PAGE CTA
   ========================================================= */

.gb-home-cta {
    padding: clamp(80px, 8vw, 120px) 0;
    color: var(--genbio-white);
    background:
        radial-gradient(
            circle at 82% 28%,
            rgba(32, 94, 140, 0.22),
            transparent 34%
        ),
        linear-gradient(
            140deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-home-cta-inner {
    width: min(calc(100% - 48px), 1420px);
    margin: 0 auto;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
}

.gb-home-eyebrow {
    margin: 0 0 18px;

    color: var(--genbio-gold-light);

    font-size: 0.76rem;
    font-weight: 700;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-home-cta h2 {
    max-width: 760px;
    margin: 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.3rem, 4vw, 4.25rem);
    font-weight: 400;
    line-height: 1.12;
    letter-spacing: -.02em;
}

.gb-home-link {
    display: inline-flex;
    align-items: center;
    gap: 14px;

    padding: 18px 34px;

    border: 1px solid var(--genbio-gold);
    border-radius: 999px;

    color: var(--genbio-gold-light);
    background: rgba(255,255,255,.03);

    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-decoration: none;
    text-transform: uppercase;

    transition:
        transform var(--genbio-transition),
        background-color var(--genbio-transition),
        box-shadow var(--genbio-transition);
}

.gb-home-link:hover,
.gb-home-link:focus-visible {
    transform: translateY(-2px);

    background: rgba(216,170,78,.08);

    box-shadow:
        0 0 0 1px rgba(216,170,78,.15),
        0 12px 30px rgba(0,0,0,.18);
}

.gb-home-link span {
    font-size: 1.15rem;

    transition: transform var(--genbio-transition);
}

.gb-home-link:hover span,
.gb-home-link:focus-visible span {
    transform: translateX(4px);
}

@media screen and (max-width: 900px) {

    .gb-home-cta-inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .gb-home-link {
        width: 100%;
        justify-content: center;
    }

}
/* =========================================================
   CONTACT FORM 7 INTEGRATION
   ========================================================= */

.gb-contact-form-panel .wpcf7 {
    margin: 0;
}

.gb-contact-form-panel .wpcf7-form {
    margin: 0;
}

.gb-contact-form-panel .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.gb-contact-form-panel .wpcf7 input[type="text"],
.gb-contact-form-panel .wpcf7 input[type="email"],
.gb-contact-form-panel .wpcf7 select,
.gb-contact-form-panel .wpcf7 textarea {
    width: 100%;

    margin: 0;
    padding: 14px 15px;

    border: 1px solid rgba(4, 24, 46, 0.2);
    border-radius: 7px;

    color: #142333;
    background: #ffffff;

    font-family: Arial, Helvetica, sans-serif;
    font-size: 1rem;
    line-height: 1.45;

    box-shadow: none;
}

.gb-contact-form-panel .wpcf7 textarea {
    min-height: 170px;
    resize: vertical;
}

.gb-contact-form-panel .wpcf7 input:focus,
.gb-contact-form-panel .wpcf7 select:focus,
.gb-contact-form-panel .wpcf7 textarea:focus {
    border-color: #9c6a1f;
    outline: 0;

    box-shadow:
        0 0 0 3px
        rgba(216, 170, 78, 0.13);
}

.gb-contact-form-panel .wpcf7-not-valid {
    border-color: #9f3535 !important;
}

.gb-contact-form-panel .wpcf7-not-valid-tip {
    margin-top: 7px;

    color: #8f2f2f;

    font-size: 0.76rem;
    line-height: 1.45;
}

.gb-contact-form-panel .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}

.gb-contact-form-panel .wpcf7-acceptance label {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    gap: 12px;

    cursor: pointer;
}

.gb-contact-form-panel .wpcf7-acceptance input {
    width: 17px;
    height: 17px;

    margin: 3px 0 0;

    accent-color: #9c6a1f;
}

.gb-contact-form-panel .wpcf7-acceptance .wpcf7-list-item-label {
    color: #66727d;

    font-size: 0.78rem;
    line-height: 1.6;
}

.gb-contact-submit-wrap {
    position: relative;
}

.gb-contact-form-panel .wpcf7-submit.gb-contact-submit {
    width: 100%;
    min-height: 58px;

    margin: 0;
    padding: 0 54px 0 22px;

    border: 1px solid var(--genbio-gold);
    border-radius: 999px;

    color: var(--genbio-gold-light) !important;

    background:
        linear-gradient(
            135deg,
            var(--genbio-navy),
            var(--genbio-navy-deep)
        );

    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;

    cursor: pointer;

    transition:
        transform var(--genbio-transition),
        box-shadow var(--genbio-transition);
}

.gb-contact-submit-wrap::after {
    content: "→";

    position: absolute;
    top: 50%;
    right: 22px;

    color: var(--genbio-gold-light);

    font-size: 1.25rem;
    line-height: 1;

    pointer-events: none;

    transform: translateY(-50%);

    transition:
        transform var(--genbio-transition);
}

.gb-contact-submit-wrap:hover::after,
.gb-contact-submit-wrap:focus-within::after {
    transform:
        translate(4px, -50%);
}

.gb-contact-form-panel .wpcf7-submit.gb-contact-submit:hover,
.gb-contact-form-panel .wpcf7-submit.gb-contact-submit:focus-visible {
    transform: translateY(-2px);

    box-shadow:
        0 14px 32px
        rgba(4, 24, 46, 0.17);
}

.gb-contact-form-panel .wpcf7-spinner {
    position: absolute;
    right: 58px;
    bottom: 17px;

    margin: 0;
}

.gb-contact-form-panel .wpcf7-response-output {
    margin:
        24px
        0
        0 !important;

    padding: 14px 16px !important;

    border:
        1px solid
        rgba(156, 106, 31, 0.3) !important;

    border-radius: 7px;

    color: #53616e;
    background: #ffffff;

    font-size: 0.85rem;
    line-height: 1.55;
}

.gb-contact-form-panel form.sent .wpcf7-response-output {
    border-color:
        rgba(55, 112, 71, 0.4) !important;

    color: #315f3c;
    background: #f5faf6;
}

.gb-contact-form-panel form.invalid .wpcf7-response-output,
.gb-contact-form-panel form.failed .wpcf7-response-output,
.gb-contact-form-panel form.unaccepted .wpcf7-response-output {
    border-color:
        rgba(159, 53, 53, 0.4) !important;

    color: #7d2929;
    background: #fff7f7;
}

/* =========================================================
   CONTACT PAGE

   Unique namespaces:
   gb-contact
   gb-contact-route
   gb-contact-form
   gb-contact-expectations
   gb-contact-notice
   ========================================================= */

.gb-contact {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: #142333;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(216, 170, 78, 0.1),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f3ea 100%
        );
}

.gb-contact-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}


/* =========================================================
   PAGE TITLE
   ========================================================= */

.gb-contact-header {
    max-width: 1120px;

    margin-bottom:
        clamp(76px, 8vw, 124px);
}

.gb-contact-eyebrow,
.gb-contact-kicker {
    margin:
        0
        0
        18px;

    color: var(--genbio-gold-light);

    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-contact-eyebrow.dark,
.gb-contact-kicker {
    color: #9c6a1f;
}

h1.gb-contact-title {
    max-width: 1050px;

    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.9rem, 5vw, 5.2rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

h1.gb-contact-title span {
    color: #9c6a1f;
}

.gb-contact-intro {
    max-width: 820px;

    margin:
        30px
        0
        0;

    color: #53616e;

    font-size:
        clamp(1rem, 1.25vw, 1.18rem);

    line-height: 1.75;
}


/* =========================================================
   CONTACT LAYOUT
   ========================================================= */

.gb-contact-layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.85fr)
        minmax(460px, 1.15fr);

    gap:
        clamp(60px, 8vw, 125px);

    align-items: start;
}

.gb-contact-information > h2,
.gb-contact-form-heading h2,
.gb-contact-expectations-header h2,
.gb-contact-notice h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-weight: 400;
    line-height: 1.12;

    letter-spacing: -0.025em;
}

.gb-contact-information > h2 {
    margin-bottom: 27px;

    color: var(--genbio-navy);

    font-size:
        clamp(2rem, 3.4vw, 3.65rem);
}

.gb-contact-information > p {
    margin:
        0
        0
        36px;

    color: #53616e;

    font-size: 1rem;
    line-height: 1.76;
}


/* =========================================================
   INQUIRY ROUTES
   ========================================================= */

.gb-contact-routes {
    border-top:
        1px solid
        rgba(156, 106, 31, 0.27);
}

.gb-contact-route {
    display: grid;
    grid-template-columns:
        52px
        minmax(0, 1fr);

    gap: 20px;

    padding:
        23px
        0;

    border-bottom:
        1px solid
        rgba(156, 106, 31, 0.21);
}

.gb-contact-route > span {
    color: #9c6a1f;

    font-size: 0.7rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-contact-route h3 {
    margin:
        0
        0
        7px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 1.24rem;
    font-weight: 400;
    line-height: 1.25;
}

.gb-contact-route p {
    margin: 0;

    color: #5b6874;

    font-size: 0.91rem;
    line-height: 1.65;
}


/* =========================================================
   CONTACT FORM PANEL
   ========================================================= */

.gb-contact-form-panel {
    padding:
        clamp(34px, 5vw, 64px);

    border:
        1px solid
        rgba(156, 106, 31, 0.25);

    border-radius: 20px;

    background:
        rgba(255, 255, 255, 0.82);

    box-shadow:
        0
        24px
        60px
        rgba(4, 24, 46, 0.08);
}

.gb-contact-form-heading {
    margin-bottom: 40px;
}

.gb-contact-form-heading h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2rem, 3.1vw, 3.25rem);
}

.gb-contact-form-heading > p:last-child {
    margin:
        20px
        0
        0;

    color: #5b6874;

    font-size: 0.91rem;
    line-height: 1.65;
}


/* =========================================================
   FORM ELEMENTS
   ========================================================= */

.gb-contact-form {
    margin: 0;
}

.gb-contact-field-row {
    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 20px;
}

.gb-contact-field {
    margin-bottom: 22px;
}

.gb-contact-field label {
    display: block;

    margin-bottom: 9px;

    color: var(--genbio-navy);

    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.gb-contact-field label span {
    color: #9c6a1f;
}

.gb-contact-field input,
.gb-contact-field select,
.gb-contact-field textarea {
    width: 100%;

    margin: 0;
    padding:
        14px
        15px;

    border:
        1px solid
        rgba(4, 24, 46, 0.2);

    border-radius: 7px;

    color: #142333;
    background: #ffffff;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 1rem;
    line-height: 1.45;

    box-shadow: none;

    transition:
        border-color var(--genbio-transition),
        box-shadow var(--genbio-transition);
}

.gb-contact-field textarea {
    min-height: 170px;

    resize: vertical;
}

.gb-contact-field input:focus,
.gb-contact-field select:focus,
.gb-contact-field textarea:focus {
    border-color: #9c6a1f;

    outline: 0;

    box-shadow:
        0
        0
        0
        3px
        rgba(216, 170, 78, 0.13);
}

.gb-contact-consent {
    display: grid;
    grid-template-columns:
        20px
        minmax(0, 1fr);

    gap: 12px;

    margin:
        4px
        0
        28px;
}

.gb-contact-consent input {
    width: 17px;
    height: 17px;

    margin-top: 3px;

    accent-color: #9c6a1f;
}

.gb-contact-consent label {
    color: #66727d;

    font-size: 0.78rem;
    line-height: 1.6;
}


/* =========================================================
   SUBMIT BUTTON
   ========================================================= */

.gb-contact-submit {
    width: 100%;
    min-height: 58px;

    padding:
        0
        22px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    border:
        1px solid
        var(--genbio-gold);

    border-radius: 999px;

    color: var(--genbio-gold-light);
    background:
        linear-gradient(
            135deg,
            var(--genbio-navy),
            var(--genbio-navy-deep)
        );

    font-size: 0.76rem;
    font-weight: 700;

    letter-spacing: 0.06em;
    text-transform: uppercase;

    cursor: pointer;

    transition:
        transform var(--genbio-transition),
        box-shadow var(--genbio-transition);
}

.gb-contact-submit:hover,
.gb-contact-submit:focus-visible {
    transform:
        translateY(-2px);

    box-shadow:
        0
        14px
        32px
        rgba(4, 24, 46, 0.17);
}

.gb-contact-submit-arrow {
    font-size: 1.25rem;

    transition:
        transform
        var(--genbio-transition);
}

.gb-contact-submit:hover .gb-contact-submit-arrow,
.gb-contact-submit:focus-visible .gb-contact-submit-arrow {
    transform:
        translateX(4px);
}


/* =========================================================
   EXPECTATIONS
   ========================================================= */

.gb-contact-expectations {
    padding:
        clamp(96px, 9vw, 150px)
        0;

    color: #142333;
    background: #ffffff;
}

.gb-contact-expectations-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-contact-expectations-header {
    max-width: 970px;

    margin-bottom:
        clamp(58px, 7vw, 88px);
}

.gb-contact-expectations-header h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.4rem, 4.1vw, 4.5rem);
}

.gb-contact-expectations-list {
    margin: 0;
    padding: 0;

    display: grid;
    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    list-style: none;

    border-top:
        1px solid
        rgba(156, 106, 31, 0.26);
}

.gb-contact-expectations-list li {
    min-height: 300px;

    padding:
        30px
        24px;

    border-right:
        1px solid
        rgba(156, 106, 31, 0.2);
}

.gb-contact-expectations-list li:last-child {
    border-right: 0;
}

.gb-contact-expectations-list > li > span {
    display: block;

    margin-bottom: 65px;

    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-contact-expectations-list strong {
    display: block;

    margin-bottom: 17px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.25rem, 1.8vw, 1.7rem);

    font-weight: 400;
    line-height: 1.25;
}

.gb-contact-expectations-list p {
    margin: 0;

    color: #596773;

    font-size: 0.9rem;
    line-height: 1.68;
}


/* =========================================================
   IMPORTANT NOTICE
   ========================================================= */

.gb-contact-notice {
    position: relative;

    padding:
        clamp(88px, 8vw, 136px)
        0;

    overflow: hidden;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 30%,
            rgba(35, 92, 132, 0.28),
            transparent 36%
        ),
        linear-gradient(
            140deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-contact-notice::before {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background-image:
        url("https://genbioinc.com/wp-content/themes/enfold-child/assets/hero-overlay-molecule.svg");

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0.04;
}

.gb-contact-notice-inner {
    position: relative;
    z-index: 1;

    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(0, 1.1fr);

    gap:
        clamp(55px, 8vw, 125px);
}

.gb-contact-notice h2 {
    color: #ffffff;

    font-size:
        clamp(2.3rem, 3.9vw, 4.2rem);
}

.gb-contact-notice-copy p {
    margin:
        0
        0
        21px;

    color: var(--genbio-muted);

    font-size: 1rem;
    line-height: 1.76;
}


/* =========================================================
   ENFOLD HARDENING
   ========================================================= */

.gb-contact h1,
.gb-contact h2,
.gb-contact h3,
.gb-contact-expectations h2,
.gb-contact-expectations h3,
.gb-contact-notice h2 {
    text-transform: none;
}

.gb-contact p,
.gb-contact h1,
.gb-contact h2,
.gb-contact h3,
.gb-contact-expectations p,
.gb-contact-expectations h2,
.gb-contact-notice p,
.gb-contact-notice h2 {
    margin-top: 0;
}

.gb-contact button,
.gb-contact input,
.gb-contact select,
.gb-contact textarea {
    font-family:
        Arial,
        Helvetica,
        sans-serif;
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 1050px) {

    .gb-contact-layout {
        grid-template-columns: 1fr;

        gap: 70px;
    }

    .gb-contact-information {
        max-width: 800px;
    }

    .gb-contact-form-panel {
        max-width: 850px;
    }

    .gb-contact-expectations-list {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-contact-expectations-list li {
        border-bottom:
            1px solid
            rgba(156, 106, 31, 0.2);
    }

    .gb-contact-expectations-list li:nth-child(2n) {
        border-right: 0;
    }
}


/* =========================================================
   MEDIUM SCREEN
   ========================================================= */

@media screen and (max-width: 900px) {

    .gb-contact-notice-inner {
        grid-template-columns: 1fr;

        gap: 45px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-contact,
    .gb-contact-expectations {
        padding:
            82px
            0;
    }

    .gb-contact-inner,
    .gb-contact-expectations-inner,
    .gb-contact-notice-inner {
        width:
            calc(100% - 36px);
    }

    .gb-contact-header {
        margin-bottom: 68px;
    }

    h1.gb-contact-title {
        font-size:
            clamp(2.35rem, 10vw, 3.35rem);
    }

    .gb-contact-field-row {
        grid-template-columns: 1fr;

        gap: 0;
    }

    .gb-contact-form-panel {
        padding:
            32px
            22px;
    }

    .gb-contact-expectations-list {
        grid-template-columns: 1fr;
    }

    .gb-contact-expectations-list li {
        min-height: auto;

        padding:
            30px
            0;

        border-right: 0;
    }

    .gb-contact-expectations-list > li > span {
        margin-bottom: 30px;
    }

    .gb-contact-notice {
        padding:
            80px
            0;
    }
}

/* =========================================================
   NEWSROOM PAGE

   Unique namespaces:
   gb-newsroom
   gb-news-category
   gb-news-feature
   gb-news-empty
   gb-news-guidelines
   ========================================================= */

.gb-newsroom {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: #142333;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(216, 170, 78, 0.1),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f3ea 100%
        );
}

.gb-newsroom-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}


/* =========================================================
   PAGE TITLE
   ========================================================= */

.gb-newsroom-header {
    max-width: 1140px;

    margin-bottom:
        clamp(76px, 8vw, 124px);
}

.gb-newsroom-eyebrow,
.gb-newsroom-kicker {
    margin:
        0
        0
        18px;

    color: var(--genbio-gold-light);

    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-newsroom-eyebrow.dark,
.gb-newsroom-kicker {
    color: #9c6a1f;
}

h1.gb-newsroom-title {
    max-width: 1100px;

    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.9rem, 5vw, 5.2rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

h1.gb-newsroom-title span {
    color: #9c6a1f;
}

.gb-newsroom-intro {
    max-width: 850px;

    margin:
        30px
        0
        0;

    color: #53616e;

    font-size:
        clamp(1rem, 1.25vw, 1.18rem);

    line-height: 1.75;
}


/* =========================================================
   NEWSROOM OVERVIEW
   ========================================================= */

.gb-newsroom-overview {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(390px, 0.9fr);

    gap:
        clamp(60px, 9vw, 145px);

    align-items: center;
}

.gb-newsroom-overview-copy {
    max-width: 690px;
}

.gb-newsroom-overview-copy h2 {
    margin:
        0
        0
        30px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2rem, 3.4vw, 3.7rem);

    font-weight: 400;
    line-height: 1.14;

    letter-spacing: -0.02em;
}

.gb-newsroom-overview-copy p {
    margin:
        0
        0
        21px;

    color: #53616e;

    font-size: 1.01rem;
    line-height: 1.76;
}


/* =========================================================
   EDITORIAL MARK
   ========================================================= */

.gb-newsroom-mark {
    position: relative;

    min-height: 440px;

    display: flex;
    align-items: center;
    justify-content: center;

    border:
        1px solid
        rgba(156, 106, 31, 0.22);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(216, 170, 78, 0.13),
            rgba(216, 170, 78, 0.025) 38%,
            transparent 70%
        );
}

.gb-newsroom-mark::before,
.gb-newsroom-mark::after {
    content: "";

    position: absolute;

    border:
        1px solid
        rgba(156, 106, 31, 0.12);

    border-radius: 50%;
}

.gb-newsroom-mark::before {
    inset: 14%;
}

.gb-newsroom-mark::after {
    inset: 28%;
}

.gb-newsroom-mark-line {
    position: absolute;

    width: 76%;
    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(156, 106, 31, 0.4),
            transparent
        );
}

.gb-newsroom-mark-center {
    position: relative;
    z-index: 2;

    width: 210px;
    height: 210px;

    padding: 28px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    border:
        1px solid
        rgba(216, 170, 78, 0.42);

    border-radius: 50%;

    text-align: center;

    background:
        linear-gradient(
            145deg,
            var(--genbio-navy),
            var(--genbio-navy-deep)
        );

    box-shadow:
        0
        24px
        60px
        rgba(4, 24, 46, 0.18);
}

.gb-newsroom-mark-center small,
.gb-newsroom-mark-center span {
    color: var(--genbio-gold-light);

    font-size: 0.66rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.gb-newsroom-mark-center strong {
    display: block;

    margin:
        8px
        0;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 2rem;
    font-weight: 400;
}


/* =========================================================
   NEWSROOM CATEGORIES
   ========================================================= */

.gb-news-categories {
    padding:
        clamp(96px, 9vw, 150px)
        0;

    color: #142333;
    background: #ffffff;
}

.gb-news-categories-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-news-categories-header {
    max-width: 970px;

    margin-bottom:
        clamp(58px, 7vw, 90px);
}

.gb-news-categories-header h2,
.gb-news-feature-header h2,
.gb-news-guidelines h2,
.gb-news-contact h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-weight: 400;
    line-height: 1.1;

    letter-spacing: -0.025em;
}

.gb-news-categories-header h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.4rem, 4.1vw, 4.5rem);
}

.gb-news-category-grid {
    display: grid;
    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 20px;
}

.gb-news-category {
    min-height: 410px;

    padding: 29px;

    display: flex;
    flex-direction: column;

    border:
        1px solid
        rgba(156, 106, 31, 0.23);

    border-radius: 18px;

    background:
        linear-gradient(
            155deg,
            rgba(247, 243, 234, 0.68),
            rgba(255, 255, 255, 0.94)
        );
}

.gb-news-category-number {
    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-news-category-icon {
    width: 72px;
    height: 72px;

    margin:
        44px
        0
        28px;

    color: #9c6a1f;
}

.gb-news-category-icon svg {
    width: 100%;
    height: 100%;

    fill: none;
    stroke: currentColor;
    stroke-width: 2.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.gb-news-category h3 {
    margin:
        0
        0
        18px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.45rem, 2vw, 2rem);

    font-weight: 400;
    line-height: 1.2;
}

.gb-news-category p {
    margin:
        0
        0
        24px;

    color: #586672;

    font-size: 0.94rem;
    line-height: 1.7;
}

.gb-news-category small {
    display: block;

    margin-top: auto;

    padding-top: 18px;

    border-top:
        1px solid
        rgba(156, 106, 31, 0.17);

    color: #7b8791;

    font-size: 0.69rem;
    line-height: 1.58;
}


/* =========================================================
   LATEST NEWS / EMPTY STATE
   ========================================================= */

.gb-news-feature {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 20%,
            rgba(35, 92, 132, 0.28),
            transparent 36%
        ),
        linear-gradient(
            140deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-news-feature::before {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background-image:
        url("https://genbioinc.com/wp-content/themes/enfold-child/assets/hero-overlay-molecule.svg");

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0.04;
}

.gb-news-feature-inner {
    position: relative;
    z-index: 1;

    width:
        min(
            calc(100% - 48px),
            1240px
        );

    margin: 0 auto;
}

.gb-news-feature-header {
    max-width: 900px;

    margin-bottom: 60px;
}

.gb-news-feature-header h2 {
    color: #ffffff;

    font-size:
        clamp(2.4rem, 4.2vw, 4.6rem);
}

.gb-news-feature-header > p:last-child {
    max-width: 790px;

    margin:
        27px
        0
        0;

    color: var(--genbio-muted);

    font-size: 1.02rem;
    line-height: 1.75;
}

.gb-news-empty {
    max-width: 820px;

    padding:
        clamp(42px, 6vw, 76px);

    border:
        1px solid
        rgba(216, 170, 78, 0.25);

    border-radius: 20px;

    background:
        linear-gradient(
            150deg,
            rgba(255, 255, 255, 0.075),
            rgba(255, 255, 255, 0.025)
        );
}

.gb-news-empty-symbol {
    width: 75px;

    margin-bottom: 42px;
}

.gb-news-empty-symbol span {
    display: block;

    height: 1px;

    margin-bottom: 9px;

    background:
        var(--genbio-gold-light);
}

.gb-news-empty-symbol span:nth-child(2) {
    width: 72%;
}

.gb-news-empty-symbol span:nth-child(3) {
    width: 46%;
}

.gb-news-empty-label {
    margin:
        0
        0
        14px;

    color: var(--genbio-gold-light);

    font-size: 0.7rem;
    font-weight: 700;

    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.gb-news-empty h3 {
    margin:
        0
        0
        20px;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2rem, 3.4vw, 3.5rem);

    font-weight: 400;
    line-height: 1.13;
}

.gb-news-empty > p:last-child {
    max-width: 660px;

    margin: 0;

    color: var(--genbio-muted);

    font-size: 1rem;
    line-height: 1.75;
}


/* =========================================================
   EDITORIAL STANDARDS
   ========================================================= */

.gb-news-guidelines {
    padding:
        clamp(88px, 8vw, 136px)
        0;

    color: #142333;

    background:
        linear-gradient(
            180deg,
            #f7f3ea,
            #ffffff
        );
}

.gb-news-guidelines-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(0, 0.75fr)
        minmax(0, 1.25fr);

    gap:
        clamp(55px, 8vw, 125px);
}

.gb-news-guidelines h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.3rem, 3.9vw, 4.2rem);
}

.gb-news-guidelines-list {
    border-top:
        1px solid
        rgba(156, 106, 31, 0.26);
}

.gb-news-guidelines-list article {
    display: grid;
    grid-template-columns:
        54px
        minmax(0, 1fr);

    gap: 20px;

    padding:
        24px
        0;

    border-bottom:
        1px solid
        rgba(156, 106, 31, 0.2);
}

.gb-news-guidelines-list article > span {
    color: #9c6a1f;

    font-size: 0.7rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-news-guidelines-list strong {
    display: block;

    margin-bottom: 7px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 1.2rem;
    font-weight: 400;
}

.gb-news-guidelines-list p {
    margin: 0;

    color: #5b6874;

    font-size: 0.93rem;
    line-height: 1.68;
}


/* =========================================================
   CONTACT CTA
   ========================================================= */

.gb-news-contact {
    padding:
        clamp(82px, 8vw, 128px)
        0;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 50%,
            rgba(35, 92, 132, 0.26),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-news-contact-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 50px;
}

.gb-news-contact h2 {
    max-width: 790px;

    color: #ffffff;

    font-size:
        clamp(2.2rem, 3.8vw, 4.1rem);
}

.gb-newsroom-link {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;

    gap: 12px;

    color: var(--genbio-gold-light) !important;

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.06em;
    text-decoration: none !important;
    text-transform: uppercase;
}

.gb-newsroom-link span {
    transition:
        transform
        var(--genbio-transition);
}

.gb-newsroom-link:hover span,
.gb-newsroom-link:focus-visible span {
    transform:
        translateX(4px);
}


/* =========================================================
   ENFOLD HARDENING
   ========================================================= */

.gb-newsroom h1,
.gb-newsroom h2,
.gb-news-categories h2,
.gb-news-categories h3,
.gb-news-feature h2,
.gb-news-feature h3,
.gb-news-guidelines h2,
.gb-news-contact h2 {
    text-transform: none;
}

.gb-newsroom p,
.gb-newsroom h1,
.gb-newsroom h2,
.gb-news-categories p,
.gb-news-categories h2,
.gb-news-categories h3,
.gb-news-feature p,
.gb-news-feature h2,
.gb-news-feature h3,
.gb-news-guidelines p,
.gb-news-guidelines h2,
.gb-news-contact p,
.gb-news-contact h2 {
    margin-top: 0;
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 1100px) {

    .gb-newsroom-overview {
        grid-template-columns: 1fr;

        gap: 65px;
    }

    .gb-newsroom-mark {
        width: min(100%, 600px);

        margin: 0 auto;
    }

    .gb-news-category-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }
}


/* =========================================================
   MEDIUM SCREEN
   ========================================================= */

@media screen and (max-width: 900px) {

    .gb-news-guidelines-inner {
        grid-template-columns: 1fr;

        gap: 48px;
    }

    .gb-news-contact-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-newsroom,
    .gb-news-categories,
    .gb-news-feature {
        padding:
            82px
            0;
    }

    .gb-newsroom-inner,
    .gb-news-categories-inner,
    .gb-news-feature-inner,
    .gb-news-guidelines-inner,
    .gb-news-contact-inner {
        width:
            calc(100% - 36px);
    }

    .gb-newsroom-header {
        margin-bottom: 68px;
    }

    h1.gb-newsroom-title {
        font-size:
            clamp(2.35rem, 10vw, 3.35rem);
    }

    .gb-newsroom-mark {
        min-height: 350px;
    }

    .gb-newsroom-mark-center {
        width: 160px;
        height: 160px;

        padding: 20px;
    }

    .gb-newsroom-mark-center strong {
        font-size: 1.55rem;
    }

    .gb-news-category-grid {
        grid-template-columns: 1fr;
    }

    .gb-news-category {
        min-height: 370px;

        padding: 26px;
    }

    .gb-news-empty {
        padding:
            36px
            26px;
    }

    .gb-news-guidelines {
        padding:
            80px
            0;
    }

    .gb-news-contact {
        padding:
            78px
            0;
    }
}

/* =========================================================
   INVESTOR INFORMATION PAGE
   Unique namespaces:
   gb-investor, gb-investor-resource and gb-disclosure
   ========================================================= */

.gb-investor {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: #142333;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(216, 170, 78, 0.1),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f3ea 100%
        );
}

.gb-investor-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}


/* =========================================================
   PAGE TITLE
   ========================================================= */

.gb-investor-header {
    max-width: 1140px;

    margin-bottom:
        clamp(76px, 8vw, 124px);
}

.gb-investor-eyebrow,
.gb-investor-kicker {
    margin:
        0
        0
        18px;

    color: var(--genbio-gold-light);

    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-investor-eyebrow.dark,
.gb-investor-kicker {
    color: #9c6a1f;
}

h1.gb-investor-title {
    max-width: 1100px;

    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.9rem, 5vw, 5.2rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

h1.gb-investor-title span {
    color: #9c6a1f;
}

.gb-investor-intro {
    max-width: 850px;

    margin:
        30px
        0
        0;

    color: #53616e;

    font-size:
        clamp(1rem, 1.25vw, 1.18rem);

    line-height: 1.75;
}


/* =========================================================
   CORPORATE OVERVIEW
   ========================================================= */

.gb-investor-overview {
    display: grid;
    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(330px, 0.95fr);

    gap:
        clamp(60px, 9vw, 145px);

    align-items: start;
}

.gb-investor-overview-copy {
    max-width: 690px;
}

.gb-investor-overview-copy h2 {
    margin:
        0
        0
        30px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2rem, 3.4vw, 3.7rem);

    font-weight: 400;
    line-height: 1.14;

    letter-spacing: -0.02em;
}

.gb-investor-overview-copy p {
    margin:
        0
        0
        21px;

    color: #53616e;

    font-size: 1.01rem;
    line-height: 1.76;
}

.gb-investor-facts {
    margin: 0;

    border-top:
        1px solid
        rgba(156, 106, 31, 0.3);
}

.gb-investor-fact {
    display: grid;
    grid-template-columns:
        minmax(110px, 0.7fr)
        minmax(0, 1.3fr);

    gap: 24px;

    padding:
        24px
        0;

    border-bottom:
        1px solid
        rgba(156, 106, 31, 0.23);
}

.gb-investor-fact dt {
    color: #7a8792;

    font-size: 0.68rem;
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.gb-investor-fact dd {
    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.15rem, 1.65vw, 1.55rem);

    line-height: 1.35;
}


/* =========================================================
   CORPORATE RESOURCES
   ========================================================= */

.gb-investor-resources {
    padding:
        clamp(96px, 9vw, 150px)
        0;

    color: #142333;
    background: #ffffff;
}

.gb-investor-resources-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-investor-resources-header {
    max-width: 960px;

    margin-bottom:
        clamp(58px, 7vw, 90px);
}

.gb-investor-resources-header h2,
.gb-disclosure-header h2,
.gb-investor-qualification h2,
.gb-investor-cta h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-weight: 400;
    line-height: 1.1;

    letter-spacing: -0.025em;
}

.gb-investor-resources-header h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.4rem, 4.1vw, 4.5rem);
}

.gb-investor-resources-header > p:last-child {
    max-width: 790px;

    margin:
        27px
        0
        0;

    color: #53616e;

    font-size: 1.02rem;
    line-height: 1.75;
}

.gb-investor-resource-grid {
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 20px;
}

.gb-investor-resource {
    min-height: 380px;

    padding: 30px;

    display: flex;
    flex-direction: column;

    border:
        1px solid
        rgba(156, 106, 31, 0.23);

    border-radius: 18px;

    background:
        linear-gradient(
            155deg,
            rgba(247, 243, 234, 0.65),
            rgba(255, 255, 255, 0.9)
        );
}

.gb-investor-resource-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    margin-bottom: 58px;
}

.gb-investor-resource-top > span {
    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-investor-resource-top small {
    padding:
        7px
        10px;

    border:
        1px solid
        rgba(156, 106, 31, 0.27);

    border-radius: 999px;

    color: #9c6a1f;
    background:
        rgba(216, 170, 78, 0.06);

    font-size: 0.58rem;
    font-weight: 700;
    line-height: 1;

    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.gb-investor-resource h3 {
    margin:
        0
        0
        18px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.5rem, 2.1vw, 2.05rem);

    font-weight: 400;
    line-height: 1.2;
}

.gb-investor-resource > p {
    margin:
        0
        0
        28px;

    color: #586672;

    font-size: 0.94rem;
    line-height: 1.7;
}

.gb-investor-resource a,
.gb-investor-resource-status {
    margin-top: auto;

    padding-top: 19px;

    border-top:
        1px solid
        rgba(156, 106, 31, 0.18);

    color: #9c6a1f !important;

    font-size: 0.71rem;
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: 0.06em;
    text-decoration: none !important;
    text-transform: uppercase;
}

.gb-investor-resource a {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 14px;
}

.gb-investor-resource a span {
    transition:
        transform
        var(--genbio-transition);
}

.gb-investor-resource a:hover span,
.gb-investor-resource a:focus-visible span {
    transform:
        translateX(4px);
}

.gb-investor-resource-status {
    color: #7b8791;
}


/* =========================================================
   CONTROLLED DISCLOSURE
   ========================================================= */

.gb-disclosure {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 20%,
            rgba(35, 92, 132, 0.28),
            transparent 36%
        ),
        linear-gradient(
            140deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-disclosure::before {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background-image:
        url("https://genbioinc.com/wp-content/themes/enfold-child/assets/hero-overlay-molecule.svg");

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0.04;
}

.gb-disclosure-inner {
    position: relative;
    z-index: 1;

    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-disclosure-header {
    max-width: 980px;

    margin-bottom:
        clamp(58px, 7vw, 90px);
}

.gb-disclosure-header h2 {
    color: #ffffff;

    font-size:
        clamp(2.4rem, 4.2vw, 4.6rem);
}

.gb-disclosure-header > p:last-child {
    max-width: 810px;

    margin:
        27px
        0
        0;

    color: var(--genbio-muted);

    font-size: 1.02rem;
    line-height: 1.75;
}

.gb-disclosure-list {
    margin: 0;
    padding: 0;

    display: grid;
    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    list-style: none;

    border-top:
        1px solid
        rgba(216, 170, 78, 0.32);
}

.gb-disclosure-list li {
    min-height: 300px;

    padding:
        29px
        24px;

    border-right:
        1px solid
        rgba(216, 170, 78, 0.19);

    border-bottom:
        1px solid
        rgba(216, 170, 78, 0.19);
}

.gb-disclosure-list li:nth-child(4n) {
    border-right: 0;
}

.gb-disclosure-list span {
    display: block;

    margin-bottom: 62px;

    color: var(--genbio-gold-light);

    font-size: 0.71rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-disclosure-list strong {
    display: block;

    margin-bottom: 17px;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.25rem, 1.8vw, 1.7rem);

    font-weight: 400;
    line-height: 1.25;
}

.gb-disclosure-list p {
    margin: 0;

    color: var(--genbio-muted);

    font-size: 0.89rem;
    line-height: 1.68;
}


/* =========================================================
   QUALIFICATION
   ========================================================= */

.gb-investor-qualification {
    padding:
        clamp(88px, 8vw, 136px)
        0;

    color: #142333;

    background:
        linear-gradient(
            180deg,
            #f7f3ea,
            #ffffff
        );
}

.gb-investor-qualification-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(0, 1.1fr);

    gap:
        clamp(55px, 8vw, 125px);

    align-items: start;
}

.gb-investor-qualification h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.25rem, 3.8vw, 4.1rem);
}

.gb-investor-qualification-copy p {
    margin:
        0
        0
        21px;

    color: #53616e;

    font-size: 1rem;
    line-height: 1.76;
}


/* =========================================================
   CTA
   ========================================================= */

.gb-investor-cta {
    padding:
        clamp(82px, 8vw, 128px)
        0;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 50%,
            rgba(35, 92, 132, 0.26),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-investor-cta-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 50px;
}

.gb-investor-cta h2 {
    max-width: 760px;

    color: #ffffff;

    font-size:
        clamp(2.2rem, 3.8vw, 4.1rem);
}

.gb-investor-link {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;

    gap: 12px;

    color: var(--genbio-gold-light) !important;

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.06em;
    text-decoration: none !important;
    text-transform: uppercase;
}

.gb-investor-link span {
    transition:
        transform
        var(--genbio-transition);
}

.gb-investor-link:hover span,
.gb-investor-link:focus-visible span {
    transform:
        translateX(4px);
}


/* =========================================================
   ENFOLD HARDENING
   ========================================================= */

.gb-investor h1,
.gb-investor h2,
.gb-investor-resources h2,
.gb-investor-resources h3,
.gb-disclosure h2,
.gb-disclosure h3,
.gb-investor-qualification h2,
.gb-investor-cta h2 {
    text-transform: none;
}

.gb-investor p,
.gb-investor h1,
.gb-investor h2,
.gb-investor-resources p,
.gb-investor-resources h2,
.gb-investor-resources h3,
.gb-disclosure p,
.gb-disclosure h2,
.gb-investor-qualification p,
.gb-investor-qualification h2,
.gb-investor-cta p,
.gb-investor-cta h2 {
    margin-top: 0;
}

.gb-investor-facts,
.gb-investor-facts dt,
.gb-investor-facts dd {
    margin-top: 0;
    margin-bottom: 0;
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 1100px) {

    .gb-investor-overview {
        grid-template-columns: 1fr;

        gap: 64px;
    }

    .gb-investor-facts {
        max-width: 760px;
    }

    .gb-investor-resource-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-disclosure-list {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-disclosure-list li:nth-child(4n) {
        border-right:
            1px solid
            rgba(216, 170, 78, 0.19);
    }

    .gb-disclosure-list li:nth-child(2n) {
        border-right: 0;
    }
}


/* =========================================================
   MEDIUM SCREEN
   ========================================================= */

@media screen and (max-width: 900px) {

    .gb-investor-qualification-inner {
        grid-template-columns: 1fr;

        gap: 45px;
    }

    .gb-investor-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-investor,
    .gb-investor-resources,
    .gb-disclosure {
        padding:
            82px
            0;
    }

    .gb-investor-inner,
    .gb-investor-resources-inner,
    .gb-disclosure-inner,
    .gb-investor-qualification-inner,
    .gb-investor-cta-inner {
        width:
            calc(100% - 36px);
    }

    .gb-investor-header {
        margin-bottom: 68px;
    }

    h1.gb-investor-title {
        font-size:
            clamp(2.35rem, 10vw, 3.35rem);
    }

    .gb-investor-fact {
        grid-template-columns: 1fr;

        gap: 8px;
    }

    .gb-investor-resource-grid,
    .gb-disclosure-list {
        grid-template-columns: 1fr;
    }

    .gb-investor-resource {
        min-height: 340px;

        padding: 26px;
    }

    .gb-disclosure-list li {
        min-height: auto;

        padding:
            30px
            0;

        border-right: 0 !important;
    }

    .gb-disclosure-list span {
        margin-bottom: 30px;
    }

    .gb-investor-qualification {
        padding:
            80px
            0;
    }

    .gb-investor-cta {
        padding:
            78px
            0;
    }
}

/* =========================================================
   STRATEGIC PARTNERSHIPS PAGE
   Page-specific classes use gb-partnerships,
   gb-partner, and gb-collaboration namespaces.
   ========================================================= */

.gb-partnerships {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: #142333;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(216, 170, 78, 0.1),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f3ea 100%
        );
}

.gb-partnerships-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}


/* =========================================================
   PAGE TITLE
   ========================================================= */

.gb-partnerships-header {
    max-width: 1140px;

    margin-bottom:
        clamp(76px, 8vw, 124px);
}

.gb-partnerships-eyebrow,
.gb-partnerships-kicker {
    margin:
        0
        0
        18px;

    color: var(--genbio-gold-light);

    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-partnerships-eyebrow.dark,
.gb-partnerships-kicker {
    color: #9c6a1f;
}

h1.gb-partnerships-title {
    max-width: 1100px;

    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.9rem, 5vw, 5.2rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

h1.gb-partnerships-title span {
    color: #9c6a1f;
}

.gb-partnerships-intro {
    max-width: 850px;

    margin:
        30px
        0
        0;

    color: #53616e;

    font-size:
        clamp(1rem, 1.25vw, 1.18rem);

    line-height: 1.75;
}


/* =========================================================
   OVERVIEW
   ========================================================= */

.gb-partnerships-overview {
    display: grid;
    grid-template-columns:
        minmax(0, 0.95fr)
        minmax(460px, 1.05fr);

    gap:
        clamp(60px, 9vw, 145px);

    align-items: center;
}

.gb-partnerships-overview-copy {
    max-width: 680px;
}

.gb-partnerships-overview-copy h2 {
    margin:
        0
        0
        30px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2rem, 3.4vw, 3.7rem);

    font-weight: 400;
    line-height: 1.14;

    letter-spacing: -0.02em;
}

.gb-partnerships-overview-copy p {
    margin:
        0
        0
        21px;

    color: #53616e;

    font-size: 1.01rem;
    line-height: 1.76;
}


/* =========================================================
   COLLABORATION ECOSYSTEM
   ========================================================= */

.gb-partnerships-visual {
    position: relative;

    width: min(100%, 600px);
    min-height: 590px;

    margin: 0 auto;

    border:
        1px solid
        rgba(156, 106, 31, 0.2);

    border-radius: 50%;

    background:
        radial-gradient(
            circle at center,
            rgba(216, 170, 78, 0.14),
            rgba(216, 170, 78, 0.025) 35%,
            transparent 68%
        );
}

.gb-partnerships-visual::before,
.gb-partnerships-visual::after {
    content: "";

    position: absolute;

    border:
        1px solid
        rgba(156, 106, 31, 0.13);

    border-radius: 50%;
}

.gb-partnerships-visual::before {
    inset: 15%;
}

.gb-partnerships-visual::after {
    inset: 30%;
}

.gb-partnerships-center {
    position: absolute;
    z-index: 4;

    top: 50%;
    left: 50%;

    width: 184px;
    height: 184px;

    padding: 24px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    border:
        1px solid
        rgba(216, 170, 78, 0.42);

    border-radius: 50%;

    text-align: center;

    background:
        linear-gradient(
            145deg,
            var(--genbio-navy),
            var(--genbio-navy-deep)
        );

    box-shadow:
        0
        24px
        60px
        rgba(4, 24, 46, 0.18);

    transform:
        translate(-50%, -50%);
}

.gb-partnerships-center span {
    display: block;

    margin-bottom: 8px;

    color: var(--genbio-gold-light);

    font-size: 0.69rem;
    font-weight: 700;

    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.gb-partnerships-center strong {
    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.3;
}

.gb-partnerships-orbit {
    position: absolute;
    z-index: 3;

    width: 150px;

    padding: 15px;

    border:
        1px solid
        rgba(156, 106, 31, 0.28);

    border-radius: 12px;

    text-align: center;

    background:
        rgba(255, 255, 255, 0.86);

    box-shadow:
        0
        16px
        38px
        rgba(4, 24, 46, 0.08);
}

.gb-partnerships-orbit::after {
    content: "";

    position: absolute;
    z-index: -1;

    top: 50%;
    left: 50%;

    width: 110px;
    height: 1px;

    background:
        rgba(156, 106, 31, 0.25);

    transform-origin: left center;
}

.gb-partnerships-orbit span {
    display: block;

    margin-bottom: 6px;

    color: #9c6a1f;

    font-size: 0.65rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-partnerships-orbit p {
    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 0.94rem;
    line-height: 1.3;
}

.gb-partnerships-orbit-one {
    top: 8%;
    left: 50%;

    transform:
        translateX(-50%);
}

.gb-partnerships-orbit-one::after {
    top: 100%;
    left: 50%;

    transform:
        rotate(90deg);
}

.gb-partnerships-orbit-two {
    top: 48%;
    right: 1%;

    transform:
        translateY(-50%);
}

.gb-partnerships-orbit-two::after {
    top: 50%;
    left: 0;

    transform:
        rotate(180deg);
}

.gb-partnerships-orbit-three {
    bottom: 7%;
    left: 50%;

    transform:
        translateX(-50%);
}

.gb-partnerships-orbit-three::after {
    top: 0;
    left: 50%;

    transform:
        rotate(-90deg);
}

.gb-partnerships-orbit-four {
    top: 48%;
    left: 1%;

    transform:
        translateY(-50%);
}

.gb-partnerships-orbit-four::after {
    top: 50%;
    left: 100%;

    transform:
        rotate(0deg);
}


/* =========================================================
   AREAS OF ENGAGEMENT
   ========================================================= */

.gb-collaboration {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 20%,
            rgba(35, 92, 132, 0.28),
            transparent 36%
        ),
        linear-gradient(
            140deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-collaboration::before {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background-image:
        url("https://genbioinc.com/wp-content/themes/enfold-child/assets/hero-overlay-molecule.svg");

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0.045;
}

.gb-collaboration-inner {
    position: relative;
    z-index: 1;

    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-collaboration-header {
    max-width: 980px;

    margin-bottom:
        clamp(58px, 7vw, 90px);
}

.gb-collaboration-header h2,
.gb-partnership-process-header h2,
.gb-partnership-principles h2,
.gb-partnerships-cta h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-weight: 400;
    line-height: 1.1;

    letter-spacing: -0.025em;
}

.gb-collaboration-header h2 {
    color: #ffffff;

    font-size:
        clamp(2.4rem, 4.2vw, 4.6rem);
}

.gb-collaboration-header > p:last-child {
    max-width: 800px;

    margin:
        27px
        0
        0;

    color: var(--genbio-muted);

    font-size: 1.02rem;
    line-height: 1.75;
}

.gb-collaboration-grid {
    display: grid;
    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 18px;
}

.gb-collaboration-card {
    min-height: 455px;

    padding: 27px;

    display: flex;
    flex-direction: column;

    border:
        1px solid
        rgba(216, 170, 78, 0.24);

    border-radius: 18px;

    background:
        linear-gradient(
            150deg,
            rgba(255, 255, 255, 0.075),
            rgba(255, 255, 255, 0.025)
        );
}

.gb-collaboration-number {
    color: var(--genbio-gold-light);

    font-size: 0.7rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-collaboration-icon {
    width: 76px;
    height: 76px;

    margin:
        43px
        0
        28px;

    color: var(--genbio-gold-light);
}

.gb-collaboration-icon svg {
    width: 100%;
    height: 100%;

    fill: none;
    stroke: currentColor;
    stroke-width: 2.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.gb-collaboration-card h3 {
    margin:
        0
        0
        17px;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.3rem, 1.8vw, 1.8rem);

    font-weight: 400;
    line-height: 1.22;
}

.gb-collaboration-card p {
    margin:
        0
        0
        24px;

    color: var(--genbio-muted);

    font-size: 0.9rem;
    line-height: 1.68;
}

.gb-collaboration-card small {
    display: block;

    margin-top: auto;

    padding-top: 18px;

    border-top:
        1px solid
        rgba(216, 170, 78, 0.17);

    color:
        rgba(215, 224, 232, 0.68);

    font-size: 0.69rem;
    line-height: 1.58;
}


/* =========================================================
   ENGAGEMENT PROCESS
   ========================================================= */

.gb-partnership-process {
    padding:
        clamp(96px, 9vw, 150px)
        0;

    color: #142333;

    background:
        #ffffff;
}

.gb-partnership-process-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-partnership-process-header {
    max-width: 980px;

    margin-bottom:
        clamp(58px, 7vw, 88px);
}

.gb-partnership-process-header h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.4rem, 4.1vw, 4.5rem);
}

.gb-partnership-process-list {
    margin: 0;
    padding: 0;

    display: grid;
    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    list-style: none;

    border-top:
        1px solid
        rgba(156, 106, 31, 0.26);
}

.gb-partnership-process-list li {
    min-height: 315px;

    padding:
        30px
        24px;

    border-right:
        1px solid
        rgba(156, 106, 31, 0.2);
}

.gb-partnership-process-list li:last-child {
    border-right: 0;
}

.gb-partnership-process-list span {
    display: block;

    margin-bottom: 72px;

    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-partnership-process-list strong {
    display: block;

    margin-bottom: 18px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.2rem, 1.75vw, 1.65rem);

    font-weight: 400;
    line-height: 1.25;
}

.gb-partnership-process-list p {
    margin: 0;

    color: #596773;

    font-size: 0.89rem;
    line-height: 1.68;
}


/* =========================================================
   COLLABORATION PRINCIPLES
   ========================================================= */

.gb-partnership-principles {
    padding:
        clamp(88px, 8vw, 136px)
        0;

    color: var(--genbio-white);

    background:
        linear-gradient(
            135deg,
            var(--genbio-navy),
            var(--genbio-navy-mid)
        );
}

.gb-partnership-principles-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(0, 0.95fr)
        minmax(0, 1.05fr);

    gap:
        clamp(55px, 8vw, 125px);

    align-items: start;
}

.gb-partnership-principles h2 {
    color: #ffffff;

    font-size:
        clamp(2.3rem, 3.9vw, 4.25rem);
}

.gb-partnership-principles-copy p {
    margin:
        0
        0
        21px;

    color: var(--genbio-muted);

    font-size: 1rem;
    line-height: 1.76;
}


/* =========================================================
   CTA
   ========================================================= */

.gb-partnerships-cta {
    padding:
        clamp(82px, 8vw, 128px)
        0;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 50%,
            rgba(35, 92, 132, 0.26),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-partnerships-cta-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 50px;
}

.gb-partnerships-cta h2 {
    max-width: 760px;

    color: #ffffff;

    font-size:
        clamp(2.2rem, 3.8vw, 4.1rem);
}

.gb-partnerships-link {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;

    gap: 12px;

    color: var(--genbio-gold-light) !important;

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.06em;
    text-decoration: none !important;
    text-transform: uppercase;
}

.gb-partnerships-link span {
    transition:
        transform
        var(--genbio-transition);
}

.gb-partnerships-link:hover span,
.gb-partnerships-link:focus-visible span {
    transform:
        translateX(4px);
}


/* =========================================================
   ENFOLD HARDENING
   ========================================================= */

.gb-partnerships h1,
.gb-partnerships h2,
.gb-collaboration h2,
.gb-collaboration h3,
.gb-partnership-process h2,
.gb-partnership-principles h2,
.gb-partnerships-cta h2 {
    text-transform: none;
}

.gb-partnerships p,
.gb-partnerships h1,
.gb-partnerships h2,
.gb-collaboration p,
.gb-collaboration h2,
.gb-collaboration h3,
.gb-partnership-process p,
.gb-partnership-process h2,
.gb-partnership-principles p,
.gb-partnership-principles h2,
.gb-partnerships-cta p,
.gb-partnerships-cta h2 {
    margin-top: 0;
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 1100px) {

    .gb-partnerships-overview {
        grid-template-columns: 1fr;

        gap: 70px;
    }

    .gb-collaboration-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-collaboration-card:last-child {
        grid-column:
            1 / -1;

        min-height: 360px;
    }

    .gb-partnership-process-list {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-partnership-process-list li {
        border-bottom:
            1px solid
            rgba(156, 106, 31, 0.2);
    }

    .gb-partnership-process-list li:nth-child(2n) {
        border-right: 0;
    }

    .gb-partnership-process-list li:last-child {
        grid-column:
            1 / -1;

        border-right: 0;
    }
}


/* =========================================================
   MEDIUM SCREEN
   ========================================================= */

@media screen and (max-width: 900px) {

    .gb-partnership-principles-inner {
        grid-template-columns: 1fr;

        gap: 45px;
    }

    .gb-partnerships-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-partnerships,
    .gb-collaboration,
    .gb-partnership-process {
        padding:
            82px
            0;
    }

    .gb-partnerships-inner,
    .gb-collaboration-inner,
    .gb-partnership-process-inner,
    .gb-partnership-principles-inner,
    .gb-partnerships-cta-inner {
        width:
            calc(100% - 36px);
    }

    .gb-partnerships-header {
        margin-bottom: 68px;
    }

    h1.gb-partnerships-title {
        font-size:
            clamp(2.35rem, 10vw, 3.35rem);
    }

    .gb-partnerships-visual {
        min-height: 500px;
    }

    .gb-partnerships-center {
        width: 150px;
        height: 150px;

        padding: 19px;
    }

    .gb-partnerships-center strong {
        font-size: 1.05rem;
    }

    .gb-partnerships-orbit {
        width: 125px;

        padding: 11px;
    }

    .gb-partnerships-orbit::after {
        width: 72px;
    }

    .gb-partnerships-orbit p {
        font-size: 0.79rem;
    }

    .gb-collaboration-grid,
    .gb-partnership-process-list {
        grid-template-columns: 1fr;
    }

    .gb-collaboration-card,
    .gb-collaboration-card:last-child {
        grid-column: auto;

        min-height: 390px;
    }

    .gb-partnership-process-list li,
    .gb-partnership-process-list li:last-child {
        grid-column: auto;

        min-height: auto;

        padding:
            30px
            0;

        border-right: 0;
    }

    .gb-partnership-process-list span {
        margin-bottom: 30px;
    }

    .gb-partnership-principles {
        padding:
            80px
            0;
    }

    .gb-partnerships-cta {
        padding:
            78px
            0;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media screen and (max-width: 430px) {

    .gb-partnerships-visual {
        min-height: 455px;
    }

    .gb-partnerships-orbit {
        width: 112px;
    }

    .gb-partnerships-orbit-one {
        top: 4%;
    }

    .gb-partnerships-orbit-three {
        bottom: 4%;
    }

    .gb-partnerships-orbit-two {
        right: -2%;
    }

    .gb-partnerships-orbit-four {
        left: -2%;
    }
}

/* =========================================================
   INTELLECTUAL PROPERTY PAGE
   All page-specific rules are scoped to gb-ip classes.
   ========================================================= */

.gb-ip {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: #142333;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(216, 170, 78, 0.1),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f3ea 100%
        );
}

.gb-ip-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}


/* =========================================================
   PAGE TITLE
   ========================================================= */

.gb-ip-header {
    max-width: 1140px;

    margin-bottom:
        clamp(76px, 8vw, 124px);
}

.gb-ip-eyebrow,
.gb-ip-kicker {
    margin:
        0
        0
        18px;

    color: var(--genbio-gold-light);

    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-ip-eyebrow.dark,
.gb-ip-kicker {
    color: #9c6a1f;
}

h1.gb-ip-title {
    max-width: 1100px;

    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.9rem, 5vw, 5.2rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

h1.gb-ip-title span {
    color: #9c6a1f;
}

.gb-ip-intro {
    max-width: 850px;

    margin:
        30px
        0
        0;

    color: #53616e;

    font-size:
        clamp(1rem, 1.25vw, 1.18rem);

    line-height: 1.75;
}


/* =========================================================
   OVERVIEW
   ========================================================= */

.gb-ip-overview {
    display: grid;
    grid-template-columns:
        minmax(0, 0.95fr)
        minmax(420px, 1.05fr);

    gap:
        clamp(60px, 9vw, 145px);

    align-items: center;
}

.gb-ip-overview-copy {
    max-width: 680px;
}

.gb-ip-overview-copy h2 {
    margin:
        0
        0
        30px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2rem, 3.4vw, 3.7rem);

    font-weight: 400;
    line-height: 1.14;

    letter-spacing: -0.02em;
}

.gb-ip-overview-copy p {
    margin:
        0
        0
        21px;

    color: #53616e;

    font-size: 1.01rem;
    line-height: 1.76;
}


/* =========================================================
   NETWORK VISUAL
   Pure CSS. No additional asset required.
   ========================================================= */

.gb-ip-network {
    position: relative;

    min-height: 510px;

    border:
        1px solid
        rgba(156, 106, 31, 0.22);

    border-radius: 50%;

    background:
        radial-gradient(
            circle at center,
            rgba(216, 170, 78, 0.13),
            rgba(216, 170, 78, 0.03) 32%,
            transparent 68%
        );
}

.gb-ip-network::before,
.gb-ip-network::after {
    content: "";

    position: absolute;

    border:
        1px solid
        rgba(156, 106, 31, 0.13);

    border-radius: 50%;
}

.gb-ip-network::before {
    inset: 12%;
}

.gb-ip-network::after {
    inset: 25%;
}

.gb-ip-network-center {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 190px;
    height: 190px;

    padding: 28px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    border:
        1px solid
        rgba(216, 170, 78, 0.38);

    border-radius: 50%;

    text-align: center;

    background:
        linear-gradient(
            145deg,
            var(--genbio-navy),
            var(--genbio-navy-deep)
        );

    transform:
        translate(-50%, -50%);

    box-shadow:
        0
        24px
        60px
        rgba(4, 24, 46, 0.18);
}

.gb-ip-network-center span {
    display: block;

    margin-bottom: 8px;

    color: var(--genbio-gold-light);

    font-size: 0.7rem;
    font-weight: 700;

    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.gb-ip-network-center strong {
    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 1.28rem;
    font-weight: 400;
    line-height: 1.3;
}

.gb-ip-node {
    position: absolute;
    z-index: 3;

    width: 18px;
    height: 18px;

    border:
        3px solid
        #ffffff;

    border-radius: 50%;

    background: var(--genbio-gold);

    box-shadow:
        0
        0
        0
        1px
        rgba(156, 106, 31, 0.3);
}

.gb-ip-node-one {
    top: 11%;
    left: 47%;
}

.gb-ip-node-two {
    top: 27%;
    right: 12%;
}

.gb-ip-node-three {
    right: 17%;
    bottom: 17%;
}

.gb-ip-node-four {
    bottom: 9%;
    left: 39%;
}

.gb-ip-node-five {
    bottom: 28%;
    left: 9%;
}

.gb-ip-node-six {
    top: 23%;
    left: 13%;
}

.gb-ip-line {
    position: absolute;
    z-index: 1;

    height: 1px;

    background:
        rgba(156, 106, 31, 0.28);

    transform-origin: left center;
}

.gb-ip-line-one {
    top: 15%;
    left: 49%;

    width: 34%;

    transform:
        rotate(30deg);
}

.gb-ip-line-two {
    top: 31%;
    right: 15%;

    width: 31%;

    transform:
        rotate(104deg);
}

.gb-ip-line-three {
    right: 17%;
    bottom: 20%;

    width: 35%;

    transform:
        rotate(151deg);
}

.gb-ip-line-four {
    bottom: 13%;
    left: 41%;

    width: 36%;

    transform:
        rotate(212deg);
}

.gb-ip-line-five {
    bottom: 30%;
    left: 12%;

    width: 31%;

    transform:
        rotate(282deg);
}

.gb-ip-line-six {
    top: 27%;
    left: 16%;

    width: 34%;

    transform:
        rotate(333deg);
}


/* =========================================================
   INNOVATION FRAMEWORK
   ========================================================= */

.gb-ip-framework {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 22%,
            rgba(35, 92, 132, 0.28),
            transparent 36%
        ),
        linear-gradient(
            140deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-ip-framework::before {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background-image:
        url("https://genbioinc.com/wp-content/themes/enfold-child/assets/hero-overlay-molecule.svg");

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0.045;
}

.gb-ip-framework-inner {
    position: relative;
    z-index: 1;

    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-ip-framework-header {
    max-width: 940px;

    margin-bottom:
        clamp(58px, 7vw, 90px);
}

.gb-ip-framework-header h2,
.gb-ip-portfolio-header h2,
.gb-ip-diligence-heading h2,
.gb-ip-cta h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-weight: 400;
    line-height: 1.1;

    letter-spacing: -0.025em;
}

.gb-ip-framework-header h2 {
    color: #ffffff;

    font-size:
        clamp(2.4rem, 4.2vw, 4.6rem);
}

.gb-ip-framework-header > p:last-child {
    max-width: 790px;

    margin:
        27px
        0
        0;

    color: var(--genbio-muted);

    font-size: 1.02rem;
    line-height: 1.75;
}

.gb-ip-framework-list {
    margin: 0;
    padding: 0;

    display: grid;
    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    list-style: none;

    border-top:
        1px solid
        rgba(216, 170, 78, 0.32);
}

.gb-ip-framework-list li {
    min-height: 320px;

    padding:
        30px
        24px;

    border-right:
        1px solid
        rgba(216, 170, 78, 0.2);
}

.gb-ip-framework-list li:last-child {
    border-right: 0;
}

.gb-ip-framework-list span {
    display: block;

    margin-bottom: 76px;

    color: var(--genbio-gold-light);

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-ip-framework-list strong {
    display: block;

    margin-bottom: 18px;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.25rem, 1.8vw, 1.7rem);

    font-weight: 400;
    line-height: 1.25;
}

.gb-ip-framework-list p {
    margin: 0;

    color: var(--genbio-muted);

    font-size: 0.9rem;
    line-height: 1.68;
}


/* =========================================================
   PORTFOLIO ELEMENTS
   ========================================================= */

.gb-ip-portfolio {
    padding:
        clamp(96px, 9vw, 150px)
        0;

    color: #142333;
    background: #ffffff;
}

.gb-ip-portfolio-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-ip-portfolio-header {
    max-width: 950px;

    margin-bottom:
        clamp(58px, 7vw, 88px);
}

.gb-ip-portfolio-header h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.4rem, 4.1vw, 4.5rem);
}

.gb-ip-category-grid {
    display: grid;
    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    border-top:
        1px solid
        rgba(156, 106, 31, 0.26);
}

.gb-ip-category {
    min-height: 390px;

    padding:
        32px
        clamp(21px, 2.5vw, 38px)
        32px
        0;

    border-right:
        1px solid
        rgba(156, 106, 31, 0.2);
}

.gb-ip-category + .gb-ip-category {
    padding-left:
        clamp(21px, 2.5vw, 38px);
}

.gb-ip-category:last-child {
    border-right: 0;
}

.gb-ip-category-number {
    display: block;

    margin-bottom: 62px;

    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-ip-category h3 {
    margin:
        0
        0
        18px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.45rem, 2vw, 2rem);

    font-weight: 400;
    line-height: 1.2;
}

.gb-ip-category p {
    margin:
        0
        0
        24px;

    color: #586672;

    font-size: 0.94rem;
    line-height: 1.7;
}

.gb-ip-category small {
    display: block;

    color: #7b8791;

    font-size: 0.72rem;
    line-height: 1.6;
}


/* =========================================================
   DILIGENCE SECTION
   ========================================================= */

.gb-ip-diligence {
    padding:
        clamp(88px, 8vw, 136px)
        0;

    color: #142333;

    background:
        linear-gradient(
            180deg,
            #f7f3ea,
            #ffffff
        );
}

.gb-ip-diligence-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(0, 1.1fr);

    gap:
        clamp(55px, 8vw, 125px);

    align-items: start;
}

.gb-ip-diligence-heading h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.25rem, 3.8vw, 4.1rem);
}

.gb-ip-diligence-copy p {
    margin:
        0
        0
        21px;

    color: #53616e;

    font-size: 1rem;
    line-height: 1.76;
}


/* =========================================================
   CLOSING CTA
   ========================================================= */

.gb-ip-cta {
    padding:
        clamp(82px, 8vw, 128px)
        0;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 50%,
            rgba(35, 92, 132, 0.26),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-ip-cta-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 50px;
}

.gb-ip-cta h2 {
    max-width: 780px;

    color: #ffffff;

    font-size:
        clamp(2.2rem, 3.8vw, 4.1rem);
}

.gb-ip-link {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;

    gap: 12px;

    color: var(--genbio-gold-light) !important;

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.06em;
    text-decoration: none !important;
    text-transform: uppercase;
}

.gb-ip-link span {
    transition:
        transform
        var(--genbio-transition);
}

.gb-ip-link:hover span,
.gb-ip-link:focus-visible span {
    transform:
        translateX(4px);
}


/* =========================================================
   ENFOLD HARDENING
   ========================================================= */

.gb-ip h1,
.gb-ip h2,
.gb-ip h3,
.gb-ip-framework h2,
.gb-ip-framework h3,
.gb-ip-portfolio h2,
.gb-ip-portfolio h3,
.gb-ip-diligence h2,
.gb-ip-cta h2 {
    text-transform: none;
}

.gb-ip p,
.gb-ip h1,
.gb-ip h2,
.gb-ip h3,
.gb-ip-framework p,
.gb-ip-framework h2,
.gb-ip-portfolio p,
.gb-ip-portfolio h2,
.gb-ip-portfolio h3,
.gb-ip-diligence p,
.gb-ip-diligence h2,
.gb-ip-cta p,
.gb-ip-cta h2 {
    margin-top: 0;
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 1100px) {

    .gb-ip-overview {
        grid-template-columns: 1fr;

        gap: 65px;
    }

    .gb-ip-network {
        width: min(100%, 620px);

        margin: 0 auto;
    }

    .gb-ip-framework-list {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-ip-framework-list li {
        border-bottom:
            1px solid
            rgba(216, 170, 78, 0.2);
    }

    .gb-ip-framework-list li:nth-child(2n) {
        border-right: 0;
    }

    .gb-ip-category-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-ip-category {
        border-bottom:
            1px solid
            rgba(156, 106, 31, 0.2);
    }

    .gb-ip-category:nth-child(2n) {
        border-right: 0;
    }

    .gb-ip-category:last-child {
        grid-column:
            1 / -1;

        padding-left: 0;

        border-right: 0;
    }
}


/* =========================================================
   MEDIUM SCREEN
   ========================================================= */

@media screen and (max-width: 900px) {

    .gb-ip-diligence-inner {
        grid-template-columns: 1fr;

        gap: 45px;
    }

    .gb-ip-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-ip,
    .gb-ip-framework,
    .gb-ip-portfolio {
        padding:
            82px
            0;
    }

    .gb-ip-inner,
    .gb-ip-framework-inner,
    .gb-ip-portfolio-inner,
    .gb-ip-diligence-inner,
    .gb-ip-cta-inner {
        width:
            calc(100% - 36px);
    }

    .gb-ip-header {
        margin-bottom: 68px;
    }

    h1.gb-ip-title {
        font-size:
            clamp(2.35rem, 10vw, 3.35rem);
    }

    .gb-ip-network {
        min-height: 350px;
    }

    .gb-ip-network-center {
        width: 148px;
        height: 148px;

        padding: 20px;
    }

    .gb-ip-network-center strong {
        font-size: 1.05rem;
    }

    .gb-ip-framework-list,
    .gb-ip-category-grid {
        grid-template-columns: 1fr;
    }

    .gb-ip-framework-list li {
        min-height: auto;

        padding:
            30px
            0;

        border-right: 0;
    }

    .gb-ip-framework-list span {
        margin-bottom: 30px;
    }

    .gb-ip-category,
    .gb-ip-category + .gb-ip-category,
    .gb-ip-category:last-child {
        min-height: auto;

        padding:
            30px
            0;

        border-right: 0;
        border-bottom:
            1px solid
            rgba(156, 106, 31, 0.2);
    }

    .gb-ip-category-number {
        margin-bottom: 30px;
    }

    .gb-ip-diligence {
        padding:
            80px
            0;
    }

    .gb-ip-cta {
        padding:
            78px
            0;
    }
}

/* =========================================================
   LEADERSHIP PAGE
   ========================================================= */

.gb-leadership {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: #142333;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(216, 170, 78, 0.1),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f3ea 100%
        );
}

.gb-leadership-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}


/* =========================================================
   PAGE TITLE
   ========================================================= */

.gb-leadership-header {
    max-width: 1120px;

    margin-bottom:
        clamp(74px, 8vw, 120px);
}

.gb-leadership-eyebrow,
.gb-leadership-kicker {
    margin:
        0
        0
        18px;

    color: #9c6a1f;

    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-leadership-eyebrow.dark {
    color: #9c6a1f;
}

h1.gb-leadership-title {
    max-width: 1080px;

    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.9rem, 5vw, 5.2rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

h1.gb-leadership-title span {
    color: #9c6a1f;
}

.gb-leadership-intro {
    max-width: 820px;

    margin:
        30px
        0
        0;

    color: #53616e;

    font-size:
        clamp(1rem, 1.25vw, 1.18rem);

    line-height: 1.75;
}


/* =========================================================
   EXECUTIVE GROUP
   ========================================================= */

.gb-leadership-group {
    margin-bottom:
        clamp(88px, 9vw, 145px);
}

.gb-leadership-group-header {
    max-width: 780px;

    margin-bottom: 46px;
}

.gb-leadership-group-header h2,
.gb-leadership-feature-copy h2,
.gb-leadership-advisors-header h2,
.gb-leadership-cta h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-weight: 400;
    line-height: 1.12;

    letter-spacing: -0.02em;
}

.gb-leadership-group-header h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.1rem, 3.5vw, 3.8rem);
}

.gb-leadership-grid {
    display: grid;

    gap: 24px;
}

.gb-leadership-grid-two {
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
}

.gb-leader-card {
    display: grid;
    grid-template-columns:
        minmax(150px, 0.65fr)
        minmax(0, 1.35fr);

    min-height: 390px;

    overflow: hidden;

    border:
        1px solid
        rgba(156, 106, 31, 0.24);

    border-radius: 18px;

    background:
        rgba(255, 255, 255, 0.72);
}

.gb-leader-portrait {
    min-height: 100%;

    background:
        radial-gradient(
            circle at 50% 38%,
            rgba(216, 170, 78, 0.2),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            var(--genbio-navy),
            var(--genbio-navy-deep)
        );
}

.gb-leader-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--genbio-gold-light);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2rem, 4vw, 4rem);

    letter-spacing: 0.05em;
}

.gb-leader-copy {
    padding:
        clamp(28px, 4vw, 52px);
}

.gb-leader-category {
    margin:
        0
        0
        15px;

    color: #9c6a1f;

    font-size: 0.67rem;
    font-weight: 700;

    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.gb-leader-copy h3 {
    margin:
        0
        0
        10px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.75rem, 2.7vw, 2.8rem);

    font-weight: 400;
    line-height: 1.16;
}

.gb-leader-title {
    margin:
        0
        0
        24px;

    color: #9c6a1f;

    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.gb-leader-copy > p:last-child,
.gb-leadership-feature-copy > p {
    color: #53616e;

    font-size: 0.98rem;
    line-height: 1.72;
}


/* =========================================================
   FEATURED SCIENTIFIC LEADERSHIP
   ========================================================= */

.gb-leadership-feature {
    display: grid;
    grid-template-columns:
        minmax(300px, 0.85fr)
        minmax(0, 1.15fr);

    min-height: 560px;

    overflow: hidden;

    border-radius: 20px;

    background:
        #ffffff;

    box-shadow:
        0
        22px
        55px
        rgba(4, 24, 46, 0.08);
}

.gb-leadership-feature-portrait {
    min-height: 560px;
}

.gb-leadership-feature-copy {
    padding:
        clamp(48px, 7vw, 100px);

    display: flex;
    flex-direction: column;
    justify-content: center;
}

.gb-leadership-feature-copy h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.3rem, 4vw, 4.4rem);

    margin-bottom: 14px;
}

.gb-leadership-feature-copy > p {
    margin:
        0
        0
        20px;
}


/* =========================================================
   ADVISORS
   ========================================================= */

.gb-leadership-advisors {
    padding:
        clamp(96px, 9vw, 150px)
        0;

    color: #142333;
    background: #ffffff;
}

.gb-leadership-advisors-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-leadership-advisors-header {
    max-width: 930px;

    margin-bottom:
        clamp(54px, 7vw, 86px);
}

.gb-leadership-advisors-header h2 {
    color: var(--genbio-navy);

    font-size:
        clamp(2.35rem, 4vw, 4.4rem);
}

.gb-leadership-advisors-header > p:last-child {
    max-width: 790px;

    margin:
        26px
        0
        0;

    color: #53616e;

    font-size: 1.02rem;
    line-height: 1.75;
}

.gb-advisor-categories {
    display: grid;
    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    border-top:
        1px solid
        rgba(156, 106, 31, 0.26);
}

.gb-advisor-categories article {
    min-height: 275px;

    padding:
        32px
        clamp(22px, 2.7vw, 40px)
        32px
        0;

    border-right:
        1px solid
        rgba(156, 106, 31, 0.2);
}

.gb-advisor-categories article + article {
    padding-left:
        clamp(22px, 2.7vw, 40px);
}

.gb-advisor-categories article:last-child {
    border-right: 0;
}

.gb-advisor-categories span {
    display: block;

    margin-bottom: 48px;

    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-advisor-categories h3 {
    margin:
        0
        0
        17px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.4rem, 2vw, 1.95rem);

    font-weight: 400;
    line-height: 1.2;
}

.gb-advisor-categories p {
    margin: 0;

    color: #5b6874;

    font-size: 0.94rem;
    line-height: 1.7;
}


/* =========================================================
   CTA
   ========================================================= */

.gb-leadership-cta {
    padding:
        clamp(82px, 8vw, 128px)
        0;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 78% 50%,
            rgba(35, 92, 132, 0.26),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-leadership-cta-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 50px;
}

.gb-leadership-cta h2 {
    max-width: 760px;

    color: var(--genbio-white);

    font-size:
        clamp(2.2rem, 3.8vw, 4.1rem);
}

.gb-leadership-link {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;

    gap: 12px;

    color: var(--genbio-gold-light) !important;

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.06em;
    text-decoration: none !important;
    text-transform: uppercase;
}

.gb-leadership-link span {
    transition:
        transform
        var(--genbio-transition);
}

.gb-leadership-link:hover span,
.gb-leadership-link:focus-visible span {
    transform: translateX(4px);
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 1100px) {

    .gb-leadership-grid-two {
        grid-template-columns: 1fr;
    }

    .gb-leader-card {
        min-height: 340px;
    }

    .gb-advisor-categories {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-advisor-categories article:nth-child(2) {
        border-right: 0;
    }

    .gb-advisor-categories article:nth-child(-n+2) {
        border-bottom:
            1px solid
            rgba(156, 106, 31, 0.2);
    }
}

@media screen and (max-width: 900px) {

    .gb-leadership-feature {
        grid-template-columns: 1fr;
    }

    .gb-leadership-feature-portrait {
        min-height: 430px;
    }

    .gb-leadership-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-leadership,
    .gb-leadership-advisors {
        padding:
            82px
            0;
    }

    .gb-leadership-inner,
    .gb-leadership-advisors-inner,
    .gb-leadership-cta-inner {
        width:
            calc(100% - 36px);
    }

    .gb-leadership-header {
        margin-bottom: 68px;
    }

    h1.gb-leadership-title {
        font-size:
            clamp(2.35rem, 10vw, 3.35rem);
    }

    .gb-leader-card {
        grid-template-columns: 1fr;

        min-height: 0;
    }

    .gb-leader-portrait {
        min-height: 300px;
    }

    .gb-leadership-feature-portrait {
        min-height: 360px;
    }

    .gb-leadership-feature-copy {
        padding:
            42px
            26px;
    }

    .gb-advisor-categories {
        grid-template-columns: 1fr;
    }

    .gb-advisor-categories article,
    .gb-advisor-categories article + article {
        min-height: auto;

        padding:
            30px
            0;

        border-right: 0;

        border-bottom:
            1px solid
            rgba(156, 106, 31, 0.2);
    }

    .gb-advisor-categories span {
        margin-bottom: 28px;
    }

    .gb-leadership-cta {
        padding:
            78px
            0;
    }
}

/* =========================================================
   ABOUT PAGE
   ========================================================= */

.gb-about {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: #142333;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(216, 170, 78, 0.1),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f3ea 100%
        );
}

.gb-about-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}


/* =========================================================
   ABOUT PAGE TITLE
   ========================================================= */

.gb-about-header {
    max-width: 1120px;

    margin-bottom:
        clamp(72px, 8vw, 120px);
}

.gb-about-eyebrow {
    margin:
        0
        0
        18px;

    color: var(--genbio-gold-light);

    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-about-eyebrow.dark {
    color: #9c6a1f;
}

h1.gb-about-title {
    max-width: 1080px;

    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.9rem, 5vw, 5.2rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

h1.gb-about-title span {
    color: #9c6a1f;
}

.gb-about-intro {
    max-width: 800px;

    margin:
        30px
        0
        0;

    color: #53616e;

    font-size:
        clamp(1rem, 1.25vw, 1.2rem);

    line-height: 1.75;
}


/* =========================================================
   COMPANY OVERVIEW
   ========================================================= */

.gb-about-overview {
    display: grid;
    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(320px, 0.85fr);

    gap:
        clamp(60px, 9vw, 140px);

    align-items: start;
}

.gb-about-story {
    max-width: 720px;
}

.gb-about-kicker {
    margin:
        0
        0
        18px;

    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.gb-about-story h2 {
    margin:
        0
        0
        30px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2rem, 3.3vw, 3.6rem);

    font-weight: 400;
    line-height: 1.15;

    letter-spacing: -0.02em;
}

.gb-about-story p {
    margin:
        0
        0
        21px;

    color: #53616e;

    font-size: 1.02rem;
    line-height: 1.76;
}


/* =========================================================
   CORPORATE FACTS
   ========================================================= */

.gb-about-facts {
    margin: 0;

    border-top:
        1px solid
        rgba(156, 106, 31, 0.3);
}

.gb-about-fact {
    display: grid;
    grid-template-columns:
        minmax(105px, 0.7fr)
        minmax(0, 1.3fr);

    gap: 24px;

    padding:
        25px
        0;

    border-bottom:
        1px solid
        rgba(156, 106, 31, 0.24);
}

.gb-about-fact dt {
    color: #7a8792;

    font-size: 0.69rem;
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.gb-about-fact dd {
    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.2rem, 1.7vw, 1.6rem);

    line-height: 1.35;
}


/* =========================================================
   SCIENTIFIC PHILOSOPHY
   ========================================================= */

.gb-about-philosophy {
    position: relative;

    padding:
        clamp(92px, 10vw, 160px)
        0;

    overflow: hidden;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 75% 42%,
            rgba(35, 92, 132, 0.26),
            transparent 36%
        ),
        linear-gradient(
            140deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-about-philosophy::before {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background-image:
        url("https://genbioinc.com/wp-content/themes/enfold-child/assets/hero-overlay-molecule.svg");

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0.055;
}

.gb-about-philosophy-inner {
    position: relative;
    z-index: 1;

    width:
        min(
            calc(100% - 48px),
            1160px
        );

    margin: 0 auto;
}

.gb-about-philosophy blockquote {
    max-width: 1050px;

    margin:
        30px
        0
        26px;

    color: var(--genbio-white);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.4rem, 4.7vw, 5rem);

    font-weight: 400;
    line-height: 1.12;

    letter-spacing: -0.025em;
}

.gb-about-philosophy-note {
    max-width: 720px;

    margin: 0;

    color:
        rgba(215, 224, 232, 0.72);

    font-size: 0.76rem;
    line-height: 1.65;
}


/* =========================================================
   ABOUT PILLARS
   ========================================================= */

.gb-about-pillars {
    padding:
        clamp(96px, 9vw, 150px)
        0;

    color: #142333;
    background: #ffffff;
}

.gb-about-pillars-inner {
    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-about-pillars-header {
    max-width: 950px;

    margin-bottom:
        clamp(55px, 7vw, 88px);
}

.gb-about-pillars-header h2 {
    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.35rem, 4vw, 4.4rem);

    font-weight: 400;
    line-height: 1.1;

    letter-spacing: -0.025em;
}

.gb-about-pillars-grid {
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    border-top:
        1px solid
        rgba(156, 106, 31, 0.26);
}

.gb-about-pillar {
    min-height: 300px;

    padding:
        34px
        clamp(24px, 3vw, 46px)
        34px
        0;

    border-right:
        1px solid
        rgba(156, 106, 31, 0.2);
}

.gb-about-pillar + .gb-about-pillar {
    padding-left:
        clamp(24px, 3vw, 46px);
}

.gb-about-pillar:last-child {
    border-right: 0;
}

.gb-about-pillar > span {
    display: block;

    margin-bottom: 55px;

    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-about-pillar h3 {
    margin:
        0
        0
        18px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.55rem, 2.2vw, 2.15rem);

    font-weight: 400;
    line-height: 1.2;
}

.gb-about-pillar p {
    margin: 0;

    color: #5b6874;

    font-size: 0.98rem;
    line-height: 1.72;
}


/* =========================================================
   CORPORATE APPROACH
   ========================================================= */

.gb-about-process {
    padding:
        clamp(88px, 8vw, 135px)
        0;

    color: var(--genbio-white);

    background:
        linear-gradient(
            135deg,
            var(--genbio-navy),
            var(--genbio-navy-mid)
        );
}

.gb-about-process-inner {
    width:
        min(
            calc(100% - 48px),
            1280px
        );

    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(0, 1.1fr);

    gap:
        clamp(55px, 8vw, 125px);

    align-items: center;
}

.gb-about-process-heading h2 {
    margin: 0;

    color: var(--genbio-white);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.4rem, 4vw, 4.4rem);

    font-weight: 400;
    line-height: 1.08;
}

.gb-about-process-copy p {
    margin:
        0
        0
        20px;

    color: var(--genbio-muted);

    font-size: 1rem;
    line-height: 1.75;
}

.gb-about-link {
    display: inline-flex;
    align-items: center;

    gap: 12px;

    margin-top: 20px;

    color: var(--genbio-gold-light) !important;

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.06em;
    text-decoration: none !important;
    text-transform: uppercase;
}

.gb-about-link span {
    transition:
        transform
        var(--genbio-transition);
}

.gb-about-link:hover span,
.gb-about-link:focus-visible span {
    transform:
        translateX(4px);
}


/* =========================================================
   ABOUT TABLET
   ========================================================= */

@media screen and (max-width: 1024px) {

    .gb-about-overview {
        grid-template-columns: 1fr;

        gap: 62px;
    }

    .gb-about-story {
        max-width: 800px;
    }

    .gb-about-facts {
        max-width: 760px;
    }

    .gb-about-process-inner {
        grid-template-columns: 1fr;

        gap: 45px;
    }
}


/* =========================================================
   ABOUT MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-about,
    .gb-about-pillars {
        padding:
            82px
            0;
    }

    .gb-about-inner,
    .gb-about-philosophy-inner,
    .gb-about-pillars-inner,
    .gb-about-process-inner {
        width:
            calc(100% - 36px);
    }

    .gb-about-header {
        margin-bottom: 68px;
    }

    h1.gb-about-title {
        font-size:
            clamp(2.35rem, 10vw, 3.35rem);
    }

    .gb-about-fact {
        grid-template-columns: 1fr;

        gap: 8px;
    }

    .gb-about-philosophy {
        padding:
            86px
            0;
    }

    .gb-about-philosophy blockquote {
        font-size:
            clamp(2.2rem, 9.5vw, 3.3rem);
    }

    .gb-about-pillars-grid {
        grid-template-columns: 1fr;
    }

    .gb-about-pillar,
    .gb-about-pillar + .gb-about-pillar {
        min-height: auto;

        padding:
            30px
            0;

        border-right: 0;

        border-bottom:
            1px solid
            rgba(156, 106, 31, 0.2);
    }

    .gb-about-pillar > span {
        margin-bottom: 30px;
    }

    .gb-about-process {
        padding:
            80px
            0;
    }
}

/* =========================================================
   RESEARCH PROGRAMS
   ========================================================= */

h1.gb-programs-title {
    color:#fff;
    margin: 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(2.9rem, 4.5vw, 4.9rem);
    font-weight: 400;
    line-height: 1.08;
    letter-spacing: -.025em;

    max-width: 980px;
}

.gb-programs-title span {
    color: var(--genbio-gold-light);
}

.gb-programs {
    position: relative;

    padding:
        clamp(96px, 9vw, 150px)
        0;

    overflow: hidden;

    color: var(--genbio-white);

    background:
        radial-gradient(
            circle at 82% 18%,
            rgba(30, 86, 128, 0.3),
            transparent 35%
        ),
        radial-gradient(
            circle at 12% 82%,
            rgba(216, 170, 78, 0.08),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}

.gb-programs::before {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background-image:
        url("https://genbioinc.com/wp-content/themes/enfold-child/assets/hero-overlay-molecule.svg");

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0.06;
}

.gb-programs-inner {
    position: relative;
    z-index: 2;

    width:
        min(
            calc(100% - 48px),
            1420px
        );

    margin: 0 auto;
}

.gb-programs-header {
    max-width: 980px;

    margin:
        0 auto
        clamp(58px, 7vw, 92px);

    text-align: center;
}

.gb-programs-eyebrow {
    margin:
        0
        0
        18px;

    color: var(--genbio-gold-light);

    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-programs-header h2 {
    margin: 0;

    color: var(--genbio-white);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.5rem, 4.4vw, 4.8rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

.gb-programs-intro {
    max-width: 820px;

    margin:
        28px auto
        0;

    color: var(--genbio-muted);

    font-size:
        clamp(1rem, 1.25vw, 1.16rem);

    line-height: 1.75;
}


/* =========================================================
   PROGRAM GRID
   ========================================================= */

.gb-programs-grid {
    display: grid;
    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 20px;
}

.gb-program-card {
    position: relative;

    min-width: 0;
    min-height: 470px;

    padding: 28px;

    display: flex;
    flex-direction: column;

    overflow: hidden;

    border:
        1px solid
        rgba(216, 170, 78, 0.26);

    border-radius: 18px;

    background:
        linear-gradient(
            155deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.025)
        );

    box-shadow:
        0
        22px
        55px
        rgba(0, 0, 0, 0.18);

    transition:
        transform var(--genbio-transition),
        border-color var(--genbio-transition),
        background-color var(--genbio-transition);
}

.gb-program-card::after {
    content: "";

    position: absolute;

    right: -90px;
    bottom: -90px;

    width: 220px;
    height: 220px;

    border:
        1px solid
        rgba(216, 170, 78, 0.1);

    border-radius: 50%;

    pointer-events: none;
}

.gb-program-card:hover {
    border-color:
        rgba(216, 170, 78, 0.52);

    background:
        linear-gradient(
            155deg,
            rgba(255, 255, 255, 0.09),
            rgba(255, 255, 255, 0.035)
        );

    transform:
        translateY(-4px);
}

.gb-program-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;
}

.gb-program-number {
    color: var(--genbio-gold-light);

    font-size: 0.74rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-program-status {
    padding:
        7px
        11px;

    border:
        1px solid
        rgba(216, 170, 78, 0.34);

    border-radius: 999px;

    color: var(--genbio-gold-light);
    background:
        rgba(216, 170, 78, 0.06);

    font-size: 0.62rem;
    font-weight: 700;
    line-height: 1;

    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gb-program-symbol {
    width: 82px;
    height: 82px;

    margin:
        42px
        0
        28px;

    color: var(--genbio-gold-light);
}

.gb-program-symbol svg {
    width: 100%;
    height: 100%;

    fill: none;
    stroke: currentColor;
    stroke-width: 2.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.gb-program-card h3 {
    margin:
        0
        0
        18px;

    color: var(--genbio-white);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.45rem, 2vw, 1.95rem);

    font-weight: 400;
    line-height: 1.2;
}

.gb-program-card > p {
    margin:
        0
        0
        30px;

    color: var(--genbio-muted);

    font-size: 0.94rem;
    line-height: 1.7;
}

.gb-program-meta {
    margin-top: auto;

    padding-top: 20px;

    border-top:
        1px solid
        rgba(216, 170, 78, 0.18);
}

.gb-program-meta span {
    display: block;

    margin-bottom: 6px;

    color:
        rgba(215, 224, 232, 0.68);

    font-size: 0.66rem;

    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gb-program-meta strong {
    display: block;

    color: var(--genbio-gold-light);

    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1.45;
}


/* =========================================================
   PROGRAM DISCLAIMER
   ========================================================= */

.gb-programs-note {
    max-width: 920px;

    margin:
        52px auto
        0;

    padding-top: 26px;

    border-top:
        1px solid
        rgba(216, 170, 78, 0.18);

    text-align: center;
}

.gb-programs-note p {
    margin: 0;

    color:
        rgba(215, 224, 232, 0.72);

    font-size: 0.78rem;
    line-height: 1.65;
}


/* =========================================================
   PROGRAMS TABLET
   ========================================================= */

@media screen and (max-width: 1100px) {

    .gb-programs-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .gb-program-card {
        min-height: 430px;
    }
}


/* =========================================================
   PROGRAMS MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-programs {
        padding:
            82px
            0;
    }

    .gb-programs-inner {
        width:
            calc(100% - 36px);
    }

    .gb-programs-header {
        margin-bottom: 52px;

        text-align: left;
    }

    .gb-programs-header h2 {
        font-size:
            clamp(2.25rem, 10vw, 3.2rem);
    }

    .gb-programs-intro {
        margin-left: 0;
    }

    .gb-programs-grid {
        grid-template-columns: 1fr;

        gap: 18px;
    }

    .gb-program-card {
        min-height: 390px;

        padding: 25px;
    }

    .gb-program-symbol {
        margin-top: 34px;
    }

    .gb-programs-note {
        margin-top: 40px;

        text-align: left;
    }
}

/* =========================================================
   GENBIO HOMEPAGE
   Client-approved homepage direction
   Updated: August 1, 2026
   ========================================================= */

:root {
    --genbio-navy: #04182e;
    --genbio-navy-deep: #020d1a;
    --genbio-navy-mid: #08233e;
    --genbio-gold: #d8aa4e;
    --genbio-gold-light: #f2d487;
    --genbio-white: #ffffff;
    --genbio-muted: #d7e0e8;
    --genbio-header-height: 84px;
    --genbio-content-max: 1520px;
    --genbio-transition: 180ms ease;
}


/* =========================================================
   LOCAL RESET
   Scoped to this homepage only
   ========================================================= */

.genbio-home,
.genbio-home *,
.genbio-home *::before,
.genbio-home *::after {
    box-sizing: border-box;
}

.genbio-home {
    width: 100%;
    margin: 0;
    padding: 0;

    color: var(--genbio-white);
    background: var(--genbio-navy-deep);

    font-family:
        Arial,
        Helvetica,
        sans-serif;
}

.genbio-home img {
    display: block;
    max-width: 100%;
}

.genbio-home a {
    color: inherit;
}


/* Remove Enfold spacing around this page block */

.genbio-home,
.genbio-home .gb-hero {
    margin-top: 0;
}


/* =========================================================
   HERO
   ========================================================= */

.gb-hero {
    position: relative;

    display: grid;
    grid-template-columns:
        minmax(0, 68%)
        minmax(0, 32%);

    width: 100%;

    /*
     * Height is allowed to grow if the content needs more room.
     * This prevents the button from being clipped on laptops.
     */
    min-height: clamp(760px, 88vh, 920px);
    height: auto;

    overflow: hidden;

    isolation: isolate;

    background:
        radial-gradient(
            circle at 44% 46%,
            rgba(21, 72, 110, 0.24),
            transparent 43%
        ),
        linear-gradient(
            135deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
}


/* Molecular texture */

.gb-hero::after {
    content: "";

    position: absolute;
    z-index: 3;

    inset: 0;

    pointer-events: none;

    background-image:
        url("https://genbioinc.com/wp-content/themes/enfold-child/assets/hero-overlay-molecule.svg");

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0.11;
}


/* =========================================================
   HERO CONTENT PANEL
   ========================================================= */

h1#gb-hero-title {
    color: #fff;
}

.gb-hero__content {
    position: relative;
    z-index: 5;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;

    min-width: 0;
    min-height: clamp(760px, 88vh, 920px);

    /*
     * Extra bottom padding reserves room for the feature row.
     * This keeps the CTA visible on shorter desktop screens.
     */
    padding:
        calc(var(--genbio-header-height) + 48px)
        clamp(36px, 6.1vw, 118px)
        174px;
/*
    background:
        radial-gradient(
            circle at 76% 48%,
            rgba(23, 71, 106, 0.34),
            transparent 50%
        ),
        linear-gradient(
            135deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );
*/
}


/*
 * Navy chevron extension.
 *
 * The primary panel ends at 68%, but this element extends the
 * navy background underneath the gold divider. The divider and
 * navy panel therefore follow the same visual shape.
 */


/*
 * One uninterrupted background covers both the main panel
 * and the chevron extension, eliminating the visible seam.
 */
.gb-hero__content::before {
    content: "";

    position: absolute;
    z-index: -1;

    top: 0;
    right: -120px;
    bottom: 0;
    left: 0;

    pointer-events: none;

    background:
        radial-gradient(
            circle at 66% 48%,
            rgba(23, 71, 106, 0.34),
            transparent 50%
        ),
        linear-gradient(
            135deg,
            var(--genbio-navy-deep),
            var(--genbio-navy)
        );

    -webkit-clip-path: polygon(
        0 0,
        calc(100% - 106px) 0,
        calc(100% - 20px) 50%,
        calc(100% - 106px) 100%,
        0 100%
    );

    clip-path: polygon(
        0 0,
        calc(100% - 106px) 0,
        calc(100% - 20px) 50%,
        calc(100% - 106px) 100%,
        0 100%
    );
}

/*
.gb-hero__content::after {
    content: "";

    position: absolute;
    z-index: -1;

    top: 0;
    right: -120px;
    bottom: 0;

    width: 122px;

    pointer-events: none;

    background:
        linear-gradient(
            180deg,
            var(--genbio-navy-deep) 0%,
            var(--genbio-navy) 50%,
            var(--genbio-navy-deep) 100%
        );

    -webkit-clip-path:
        polygon(
            0 0,
            12% 0,
            82% 50%,
            12% 100%,
            0 100%
        );

    clip-path:
        polygon(
            0 0,
            12% 0,
            82% 50%,
            12% 100%,
            0 100%
        );
}

*/

/* =========================================================
   HERO TYPOGRAPHY
   ========================================================= */

.gb-hero__eyebrow {
    margin: 0 0 20px;

    color: var(--genbio-gold-light);

    font-size: clamp(0.72rem, 1vw, 0.9rem);
    font-weight: 400;
    line-height: 1.4;

    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.gb-hero__title {
    max-width: 820px;

    margin: 0;

    color: var(--genbio-white);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(3rem, 5vw, 5.5rem);
    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

.gb-hero__title span {
    color: var(--genbio-gold-light);
}

.gb-hero__copy {
    max-width: 670px;

    margin: 28px 0 0;

    color: var(--genbio-muted);

    font-size: clamp(1rem, 1.15vw, 1.22rem);
    line-height: 1.75;
}


/* =========================================================
   PRIMARY CTA BUTTON
   Namespaced to avoid Enfold button conflicts
   ========================================================= */

.gb-hero__button {
    position: relative;
    z-index: 10;

    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;

    flex: 0 0 auto;

    width: auto;
    min-width: 306px;
    min-height: 58px;

    margin: 30px 0 0;
    padding: 0 18px 0 26px;

    overflow: hidden;

    border: 1px solid var(--genbio-gold);
    border-radius: 999px;

    visibility: visible;
    opacity: 1;

    color: var(--genbio-gold-light) !important;
    background: rgba(2, 13, 26, 0.58);

    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.03);

    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1;

    letter-spacing: 0.04em;
    text-align: left;
    text-decoration: none !important;
    text-transform: uppercase;

    transition:
        transform var(--genbio-transition),
        background-color var(--genbio-transition),
        box-shadow var(--genbio-transition);
}

.gb-hero__button::before {
    content: "";

    position: absolute;

    top: 0;
    left: -70%;

    width: 44%;
    height: 100%;

    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(242, 212, 135, 0.24),
            transparent
        );

    transform: skewX(-20deg);

    transition: left 520ms ease;
}

.gb-hero__button:hover,
.gb-hero__button:focus-visible {
    color: var(--genbio-gold-light) !important;

    background: rgba(216, 170, 78, 0.08);

    box-shadow:
        0 0 0 1px rgba(216, 170, 78, 0.14),
        0 0 24px rgba(216, 170, 78, 0.2);

    transform: translateY(-2px);
}

.gb-hero__button:hover::before,
.gb-hero__button:focus-visible::before {
    left: 132%;
}

.gb-hero__button-label {
    position: relative;
    z-index: 2;
}

.gb-hero__button-divider {
    position: relative;
    z-index: 2;

    flex: 0 0 1px;

    width: 1px;
    height: 26px;

    margin-left: auto;

    background: rgba(216, 170, 78, 0.65);
}

.gb-hero__button-arrow {
    position: relative;
    z-index: 2;

    flex: 0 0 28px;

    width: 28px;
    height: 18px;

    object-fit: contain;

    transition:
        transform var(--genbio-transition);
}

.gb-hero__button:hover .gb-hero__button-arrow,
.gb-hero__button:focus-visible .gb-hero__button-arrow {
    transform: translateX(4px);
}


/* =========================================================
   HERO DNA VISUAL
   ========================================================= */

.gb-hero__visual {
    position: relative;
    z-index: 1;

    min-width: 0;
    min-height: clamp(760px, 88vh, 920px);

    overflow: hidden;

    background: var(--genbio-navy-deep);
}

.gb-hero__visual::before {
    content: "";

    position: absolute;
    z-index: 2;

    inset: 0;

    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            var(--genbio-navy) 0%,
            rgba(4, 24, 46, 0.58) 18%,
            transparent 50%
        ),
        linear-gradient(
            180deg,
            rgba(2, 13, 26, 0.04),
            rgba(2, 13, 26, 0.18)
        );
}

.gb-hero__visual picture,
.gb-hero__visual img {
    width: 100%;
    height: 100%;
}

.gb-hero__visual img {
    object-fit: cover;
    object-position: 62% center;
}


/* =========================================================
   GOLD DIVIDER
   Exactly aligned with the navy chevron extension
   ========================================================= */

.gb-hero__divider {
    position: absolute;
    z-index: 6;

    top: 0;
    bottom: 0;

    left: calc(68% - 1px);

    width: 120px;
    height: 100%;

    max-width: none;

    object-fit: fill;

    pointer-events: none;

    filter:
        drop-shadow(
            0 0 7px
            rgba(216, 170, 78, 0.26)
        );
}

/* Tablet and below */
@media screen and (max-width: 766px) {

.genbio-home img.gb-hero__divider {
    display: none;
    }

}

/* =========================================================
   HERO FEATURE ROW
   ========================================================= */

.gb-hero__features {
    position: absolute;
    z-index: 7;

    bottom: 42px;
    left: clamp(36px, 6.1vw, 118px);

    width: min(59%, 790px);

    display: grid;
    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 20px;
}

.gb-hero-feature {
    min-width: 0;

    text-align: center;
}

.gb-hero-feature img {
    width: 40px;
    height: 40px;

    margin: 0 auto 10px;

    object-fit: contain;
}

.gb-hero-feature p {
    margin: 0;

    color: #eef3f7;

    font-size: 0.72rem;
    line-height: 1.45;
}



/* =========================================================
   OUR SCIENCE
   ========================================================= */

.gb-science {
    position: relative;

    padding:
        clamp(92px, 9vw, 150px)
        0;

    overflow: hidden;

    color: #142333;
    background:
        radial-gradient(
            circle at 84% 20%,
            rgba(216, 170, 78, 0.1),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f3ea 100%
        );
}

.gb-science-inner {
    width: min(
        calc(100% - 48px),
        1420px
    );

    margin: 0 auto;
}

.gb-science-header {
    max-width: 970px;

    margin:
        0 auto
        clamp(58px, 7vw, 92px);

    text-align: center;
}

.gb-science-eyebrow {
    margin:
        0
        0
        18px;

    color: #9c6a1f;

    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gb-science-header h2 {
    margin: 0;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(2.5rem, 4.4vw, 4.8rem);

    font-weight: 400;
    line-height: 1.08;

    letter-spacing: -0.025em;
}

.gb-science-intro {
    max-width: 790px;

    margin:
        28px auto
        0;

    color: #526270;

    font-size:
        clamp(1rem, 1.25vw, 1.18rem);

    line-height: 1.75;
}

.gb-science-layout {
    display: grid;
    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(0, 1.1fr);

    gap:
        clamp(48px, 7vw, 110px);

    align-items: center;
}

.gb-science-copy {
    max-width: 590px;
}

.gb-science-copy > h3 {
    margin:
        0
        0
        24px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.9rem, 3vw, 3rem);

    font-weight: 400;
    line-height: 1.2;
}

.gb-science-copy > p {
    margin:
        0
        0
        20px;

    color: #53616e;

    font-size: 1.02rem;
    line-height: 1.75;
}

.gb-science-principles {
    margin-top: 38px;
}

.gb-science-principle {
    display: grid;
    grid-template-columns:
        54px
        minmax(0, 1fr);

    gap: 18px;

    padding:
        20px
        0;

    border-top:
        1px solid
        rgba(156, 106, 31, 0.22);
}

.gb-science-principle:last-child {
    border-bottom:
        1px solid
        rgba(156, 106, 31, 0.22);
}

.gb-science-principle > span {
    color: #9c6a1f;

    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: 0.08em;
}

.gb-science-principle strong {
    display: block;

    margin-bottom: 5px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 1.18rem;
    font-weight: 400;
}

.gb-science-principle p {
    margin: 0;

    color: #63717e;

    font-size: 0.92rem;
    line-height: 1.6;
}


/* =========================================================
   SCIENCE WORKFLOW
   ========================================================= */

.gb-science-workflow {
    position: relative;

    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;

    margin: 0;
    padding: 0;

    list-style: none;
}

.gb-science-workflow::before {
    content: "";

    position: absolute;

    top: 50%;
    left: 50%;

    width: 70%;
    height: 70%;

    pointer-events: none;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(216, 170, 78, 0.14),
            transparent 68%
        );

    transform:
        translate(-50%, -50%);
}

.gb-science-workflow li {
    position: relative;
    z-index: 1;

    min-height: 180px;

    padding: 30px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    overflow: hidden;

    border:
        1px solid
        rgba(156, 106, 31, 0.24);

    border-radius: 18px;

    background:
        rgba(255, 255, 255, 0.72);

    box-shadow:
        0
        18px
        45px
        rgba(4, 24, 46, 0.06);

    transition:
        transform var(--genbio-transition),
        border-color var(--genbio-transition),
        box-shadow var(--genbio-transition);
}

.gb-science-workflow li::after {
    content: "";

    position: absolute;

    right: -46px;
    bottom: -46px;

    width: 130px;
    height: 130px;

    border:
        1px solid
        rgba(216, 170, 78, 0.18);

    border-radius: 50%;
}

.gb-science-workflow li:hover {
    border-color:
        rgba(156, 106, 31, 0.48);

    box-shadow:
        0
        22px
        55px
        rgba(4, 24, 46, 0.09);

    transform:
        translateY(-3px);
}

.gb-science-workflow span {
    color: #9c6a1f;

    font-size: 0.72rem;
    font-weight: 700;

    letter-spacing: 0.1em;
}

.gb-science-workflow strong {
    max-width: 230px;

    color: var(--genbio-navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(1.2rem, 1.7vw, 1.55rem);

    font-weight: 400;
    line-height: 1.3;
}


/* =========================================================
   SCIENCE TABLET
   ========================================================= */

@media screen and (max-width: 1024px) {

    .gb-science-layout {
        grid-template-columns: 1fr;

        gap: 58px;
    }

    .gb-science-copy {
        max-width: 780px;
    }
}


/* =========================================================
   SCIENCE MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-science {
        padding:
            82px
            0;
    }

    .gb-science-inner {
        width:
            calc(100% - 36px);
    }

    .gb-science-header {
        margin-bottom: 54px;

        text-align: left;
    }

    .gb-science-header h2 {
        font-size:
            clamp(2.25rem, 10vw, 3.2rem);
    }

    .gb-science-intro {
        margin-left: 0;
    }

    .gb-science-layout {
        gap: 48px;
    }

    .gb-science-workflow {
        grid-template-columns: 1fr;
    }

    .gb-science-workflow li {
        min-height: 145px;

        padding: 25px;
    }
}

/* =========================================================
   LAPTOP / SHORT DESKTOP HEIGHT
   Keeps the CTA and feature row visible
   ========================================================= */

@media screen and (min-width: 1200px) and (max-height: 850px) {

    .gb-hero,
    .gb-hero__content,
    .gb-hero__visual {
        min-height: 760px;
    }

    .gb-hero__content {
        justify-content: flex-start;

        padding-top:
            calc(var(--genbio-header-height) + 54px);

        padding-bottom: 158px;
    }

    .gb-hero__eyebrow {
        margin-bottom: 14px;
    }

    .gb-hero__title {
        font-size: clamp(2.9rem, 4.5vw, 4.7rem);
    }

    .gb-hero__copy {
        margin-top: 20px;

        line-height: 1.58;
    }

    .gb-hero__button {
        margin-top: 22px;
    }

    .gb-hero__features {
        bottom: 30px;
    }
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 1199px) {

    :root {
        --genbio-header-height: 76px;
    }

    .gb-hero {
        grid-template-columns:
            minmax(0, 61%)
            minmax(0, 39%);
    }

    .gb-hero__content {
        padding-right:
            clamp(30px, 5vw, 70px);

        padding-left:
            clamp(30px, 5vw, 70px);
    }

    .gb-hero__content::after {
        right: -104px;

        width: 106px;
    }

    .gb-hero__title {
        font-size:
            clamp(2.75rem, 5vw, 4.4rem);
    }

    .gb-hero__divider {
        left: calc(61% - 1px);

        width: 104px;
    }

    .gb-hero__features {
        left: clamp(30px, 5vw, 70px);

        width: 54%;

        gap: 12px;
    }

    .gb-hero-feature p {
        font-size: 0.65rem;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .gb-hero {
        display: block;

        min-height: 790px;
        height: auto;

        background:
            var(--genbio-navy-deep);
    }

    .gb-hero::after {
        opacity: 0.07;
    }

    .gb-hero__visual {
        position: absolute;

        inset: 0;

        min-height: 790px;
    }

    .gb-hero__visual::before {
        background:
            linear-gradient(
                180deg,
                rgba(2, 13, 26, 0.66) 0%,
                rgba(4, 24, 46, 0.82) 47%,
                rgba(4, 24, 46, 0.96) 77%,
                var(--genbio-navy) 100%
            ),
            linear-gradient(
                90deg,
                rgba(4, 24, 46, 0.34),
                transparent
            );
    }

    .gb-hero__visual img {
        object-position: 67% center;
    }

    .gb-hero__content {
        min-height: 790px;

        justify-content: flex-start;

        padding:
            calc(var(--genbio-header-height) + 70px)
            24px
            218px;

        background:
            linear-gradient(
                180deg,
                rgba(2, 13, 26, 0.12),
                rgba(4, 24, 46, 0.28)
            );
    }

    .gb-hero__content::after {
        display: none;
    }

    .gb-hero__eyebrow {
        max-width: 180px;

        margin-bottom: 14px;

        line-height: 1.5;
    }

    .gb-hero__title {
        font-size:
            clamp(2.35rem, 11vw, 3.35rem);

        line-height: 1.12;
    }

    .gb-hero__copy {
        max-width: 480px;

        margin-top: 22px;

        font-size: 0.98rem;
        line-height: 1.65;
    }

    .gb-hero__button {
        width: 100%;
        min-width: 0;

        margin-top: 28px;
    }

    .gb-hero__divider {
        display: none;
    }

    .gb-hero__features {
        right: 20px;
        bottom: 28px;
        left: 20px;

        width: auto;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap:
            16px
            10px;
    }

    .gb-hero-feature {
        display: flex;
        align-items: center;

        gap: 8px;

        text-align: left;
    }

    .gb-hero-feature img {
        flex: 0 0 32px;

        width: 32px;
        height: 32px;

        margin: 0;
    }

    .gb-hero-feature p {
        font-size: 0.61rem;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media screen and (max-width: 420px) {

    .gb-hero__content {
        padding-right: 20px;
        padding-left: 20px;
    }

    .gb-hero__title {
        font-size:
            clamp(2.15rem, 10.4vw, 2.75rem);
    }

    .gb-hero__copy {
        font-size: 0.92rem;
    }

    .gb-hero__features {
        right: 16px;
        left: 16px;
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .genbio-home *,
    .genbio-home *::before,
    .genbio-home *::after {
        animation-duration:
            0.01ms !important;

        animation-iteration-count:
            1 !important;

        transition-duration:
            0.01ms !important;
    }
}


/* Global Styles build date 7/29/2026 */
 html p {color:#01040e;}
 
 h6.genbio-accent-section-small-box-title{
 color:#b99758;
 }
 
 html .genbio-accent-section-small-box {
    padding: 15px;
    border: 1px solid;
    border-color: #000;
    border-radius: 3px;
    background:#fff;
}


 h2.genbio-accent-title {
    margin-bottom: 25px;
}

span.genbio-underline-accent {
    display: inline-block;
    background-image: url("https://genbioinc.com/wp-content/uploads/2026/07/GenBio-Accent-Text.png");
    background-repeat: no-repeat;
    background-size: 150% 13px;
    background-position: bottom center;
    padding-bottom: 7px;
}

 .genbio-big-accent-button-holder {
    padding: 10px 0;
}

a.genbio-big-accent-button-link:hover {
    background: #5b7032;
    border:3px solid #719430;
}

a.genbio-big-accent-button-link {
    background: #719430;
    padding: 8px;
    color: #fff;
    border-radius: 5px;
    border:3px solid #719430;
}

 .template-page .entry-content-wrapper h1.genbio-main-accent-title {
    text-transform: none;
    color: #fff;
    font-size: 2em;
}

 .genbio-accent-section-holder .content {
    padding-top: 15px;
    padding-bottom: 15px;
}

.genbio-accent-section h3 {
    color: #fff;
    font-weight: 300;
}

.genbio-hero-left-inner,.genbio-hero-left-inner h2,.genbio-hero-left-inner h3, .genbio-hero-left-inner p {
    color: #fff;
}


 /* Global Styles build date 7/26/2026 */

html {
    animation: avia-fadein 2.8s ease-in-out forwards !important;
}


.genbio-hero-container:after {
    content: "";
    width: 50px;
    height: 50px;
    bottom:5px;
    right:5px;
    background-image: url(https://genbioinc.com/wp-content/uploads/2020/04/genbio-icon-transparent.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
}

.genbio-hero-left-inner-image {
    text-align: center;
    background: #fff;
    border-radius: 3px 3px 0px 0px;
}

html .genbio-hero-left-inner-bottom {
    margin-top: 5px;
    background: #f5f5f5;
    padding: 5px;
    margin-left: -18px;
    margin-right: -18px;
    padding: 0 18px;
    border-top: 1px solid;
    border-color: #000;
    padding-top:15px;
}


.genbio-hero-left-inner {
    font-size:2em;
}

.genbio-hero-section-block .container {
    min-width:100%;
    padding:0;
}


.genbio-hero-container {
    -ms-box-orient: horizontal;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: wrap;
    -ms-flex-flow: wrap;
    flex-flow: wrap;
}

.genbio-hero-right {
background-image: url(https://genbioinc.com/wp-content/uploads/2026/07/Hero-Right-Image.png);
background-size: cover;
background-repeat: no-repeat;
overflow: hidden;
}


.genbio-hero-left, .genbio-hero-right,.genbio-hero-left-inner, .genbio-hero-right-inner{
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.genbio-hero-left, .genbio-hero-right {
    align-items: center;
    display: flex;
    padding-top:5vh;
    padding-bottom:5vh;
}


@media screen 
and (min-width : 1px) 
and (max-width : 568px) {
.genbio-hero-left, .genbio-hero-right,.genbio-hero-left-inner, .genbio-hero-right-inner{
float: none;
width: 100%;
 }
.genbio-hero-left{
    padding-left:7.5%;
    padding-right:7.5%;
  }
.genbio-hero-right,.genbio-hero-right-inner{
display:none;
 }
}


@media screen 
and (min-width : 569px) 
and (max-width : 767px) {
.genbio-hero-left{
float: none;
width: 100%;
}
.genbio-hero-left{
    padding-left:7.5%;
    padding-right:7.5%;
 }
.genbio-hero-left-inner{
     width:100%;
}
.genbio-hero-right,.genbio-hero-right-inner{
display:none;
 }
.genbio-hero-right-inner{
     width:100%;
 }
}


@media screen 
and (min-width : 768px) 
and (max-width : 1200px) {
.genbio-hero-left{
float: left;
width: 70%;
 }
.genbio-hero-left{
    padding-left:50px;
}
.genbio-hero-left-inner{
     margin:0 auto;
}
.genbio-hero-right{
float: left;
width: 30%;
 }
.genbio-hero-right-inner{
    margin:0 auto;
 }
}


@media screen and (min-width: 1201px){
.genbio-hero-left{
float: left;
width: 80%;
}
.genbio-hero-left{
    padding-left:50px;
}
.genbio-hero-left-inner{
    margin:0 auto;
}
.genbio-hero-right{
float: left;
width: 20%;
 }
.genbio-hero-right-inner{
     width:100%;
 }
.genbio-hero-left-inner {
    padding: 15px;
  }
}