/* ==========================================================================
   TOLLO HEALTH — ORGANIZED CUSTOM CSS
   ==========================================================================
   Refactor policy:
   - Visual output and cascade order are intentionally preserved.
   - Page-specific and responsive overrides remain in their original order.
   - Only exact duplicate declarations inside the same rule were removed.
   - Typography tokens and shared global rules are grouped in the existing
     Design System section below; final QA guards remain at the end.

   CONTENT MAP
   01. Foundation, site shell, header and footer
   02. Homepage and shared section components
   03. Initial responsive rules
   04. Global design system and typography tokens
   05. About page
   06. Contact page
   07. Product pages
   08. Invest page
   09. Health Lives Here pages
   10. Final responsive and QA guards
   ========================================================================== */

@import url("https://fonts.googleapis.com/css?family=Poppins:100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic&display=swap");

:root {
    --th-color-text: #26172c;
    --th-color-muted: #5e5262;
    --th-color-surface: #fffdf9;
    --th-color-section: #f4f0e9;
    --th-color-border: #d8d2cf;
    --th-color-accent: #95328f;
    --th-color-ink: #211024;
    --th-header-padding: clamp(24px, 3.9vw, 56px);
    --th-container: 1180px;
    --th-page-max: 1536px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    color: var(--th-color-text);
    background: var(--th-color-surface);
    font-family: var(--th-font-body);
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
}

a {
    color: inherit;
}

.site-header {
    position: relative;
    z-index: 20;
    background: var(--th-color-surface);
    border-bottom: 1px solid var(--th-color-border);
}

.site-header__inner,
.site-footer__inner,
.section-inner {
    width: min(100% - 40px, var(--th-container));
    margin: 0 auto;
}

.site-header__inner {
    width: 100%;
    max-width: none;
    padding: 0 var(--th-header-padding);
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 96px;
    gap: clamp(28px, 3vw, 48px);
}

.site-header__brand,
.site-footer__brand {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    font-weight: 700;
    text-decoration: none;
}

.site-header__brand img {
    display: block;
    width: clamp(164px, 12.4vw, 178px);
    height: auto;
}

.site-header__nav {
    flex: 1 1 auto;
}

.site-header__nav ul,
.site-footer__nav ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(18px, 1.85vw, 30px);
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-header__nav li {
    position: relative;
}

.site-header__nav a,
.site-footer__nav a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--th-color-text);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
}

.site-header__nav .menu-plus {
    display: inline-flex;
    width: 7px;
    height: 7px;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.site-header__nav .menu-plus img {
    display: block;
    width: 7px;
    height: 7px;
}

.site-header__nav .sub-menu {
    position: absolute;
    z-index: 20;
    top: calc(100% + 20px);
    left: 50%;
    display: grid;
    min-width: 220px;
    justify-items: stretch;
    place-items: stretch;
    gap: 0;
    padding: 12px 0;
    background: #fffdf9;
    border: 1px solid var(--th-color-border);
    box-shadow: 0 18px 36px rgba(36, 21, 44, 0.08);
    opacity: 0;
    pointer-events: none;
    transform: translateX(-50%) translateY(-6px);
    transition: opacity 160ms ease, transform 160ms ease;
}

.site-header__nav li:hover > .sub-menu,
.site-header__nav li:focus-within > .sub-menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

.site-header__nav .sub-menu li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
}

.site-header__nav .sub-menu a {
    display: flex;
    justify-content: flex-start;
    width: 100%;
    padding: 10px 0;
    font-size: 15px;
    text-align: left;
    text-indent: 0;
    white-space: nowrap;
}

.site-header__toggle {
    display: none;
}

.site-header__mobile-invest {
    display: none !important;
}

.site-header__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
}

.site-header__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 118px;
    height: 42px;
    padding: 0 14px;
    color: #fffdf9;
    background: var(--th-color-ink);
    border: 1px solid var(--th-color-ink);
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.site-header__cta--outline {
    color: var(--th-color-ink);
    background: var(--th-color-surface);
}

.site-header__cta-icon {
    font-size: 16px;
    line-height: 1;
}

.entry {
    width: min(100% - 40px, 840px);
    margin: 64px auto;
}

.site-footer {
    color: #fff7ff;
    background: #1c1022;
}

.site-footer__section-inner {
    width: min(100% - 64px, var(--th-page-max));
    margin: 0 auto;
}

.site-footer__newsletter {
    padding: clamp(90px, 9vw, 150px) 0 clamp(92px, 10vw, 158px);
    border-bottom: 1px solid rgba(255, 247, 255, 0.16);
}

.site-footer__newsletter .site-footer__section-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 414px;
    gap: clamp(72px, 12vw, 190px);
    align-items: start;
}

.site-footer__eyebrow,
.site-footer__links h2,
.site-footer__contact h2,
.site-footer__form label,
.site-footer__bottom {
    color: rgba(255, 247, 255, 0.62);
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.24em;
    line-height: 1.25;
    text-transform: uppercase;
}

.site-footer__eyebrow {
    margin: 0 0 58px;
    color: #61b0de;
}

.site-footer__newsletter h2 {
    max-width: 620px;
    margin: 0;
    color: #fffdf9;
    font-family: var(--th-font-display);
    font-size: clamp(52px, 5.2vw, 80px);
    font-weight: 400;
    line-height: 0.98;
}

.site-footer__newsletter h2 em {
    display: block;
    color: #c15dbc;
    font-style: italic;
}

.site-footer__signup {
    padding-top: 78px;
}

.site-footer__signup p {
    margin: 0 0 88px;
    color: #c7bec9;
    font-family: var(--th-font-body);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.55;
}

.site-footer__signup p a {
    color: #fffdf9;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.site-footer__form label {
    display: block;
    margin-bottom: 34px;
    color: #d0c5d2;
}

.site-footer__form-row {
    display: flex;
    align-items: center;
    gap: 24px;
    border-bottom: 1px solid rgba(255, 247, 255, 0.58);
}

.site-footer__form input {
    width: 100%;
    min-width: 0;
    height: 54px;
    padding: 0;
    color: #ffffff;
    background: transparent;
    border: 0;
    font-family: var(--th-font-body);
    font-size: 18px;
    outline: 0;
}

.site-footer__form input::placeholder {
    color: #ffffff;
    opacity: 1;
}

.site-footer__form button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    padding: 0;
    color: #ffffff;
    background: transparent;
    border: 0;
    font-family: var(--th-font-body);
    font-size: 18px;
    font-weight: 800;
    cursor: pointer;
}

.site-footer__main {
    padding: clamp(86px, 8vw, 122px) 0 clamp(96px, 9vw, 140px);
    border-bottom: 1px solid rgba(255, 247, 255, 0.16);
}

.site-footer__main-grid {
    display: grid;
    grid-template-columns: minmax(280px, 1fr) 218px 342px;
    gap: clamp(70px, 10vw, 160px);
    align-items: start;
}

.site-footer__logo img {
    display: block;
    width: min(100%, 362px);
    height: auto;
}

.site-footer__links h2,
.site-footer__contact h2 {
    margin: 0 0 54px;
    color: #c8bdca;
    font-family: var(--th-font-label);
}

.site-footer__links ul {
    display: grid;
    gap: 32px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer__links a,
.site-footer__contact a {
    color: #ffffff;
    font-family: var(--th-font-body);
    font-size: 16px;
    line-height: 1.25;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.site-footer__contact {
    font-style: normal;
}

.site-footer__contact p {
    margin: 0 0 30px;
    color: #ffffff;
    font-family: var(--th-font-body);
    font-size: 16px;
    line-height: 1.55;
}

.site-footer__contact .site-footer__address {
    color: #d2c9d4;
}

.site-footer__bottom {
    color: #c7bcc9;
    padding: 32px 0 90px;
    font-family: var(--th-font-label);
}

.site-footer__bottom .site-footer__section-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}

.site-footer__bottom p {
    margin: 0;
}

.site-footer__bottom a {
    color: #c7bcc9;
    text-decoration: none;
}

.admin-notice {
    width: min(100% - 40px, 840px);
    margin: 48px auto;
    padding: 16px;
    border: 1px solid var(--th-color-border);
    border-radius: 6px;
}

.hero-carousel {
    background: var(--th-color-surface);
}

.contact-page {
    background: var(--th-color-surface);
}

.contact-hero {
    padding: clamp(88px, 8vw, 120px) 0 clamp(66px, 7vw, 94px);
    background: var(--th-color-surface);
}

.contact-hero__inner {
    width: min(100% - 64px, var(--th-page-max));
    max-width: none;
}

.contact-hero__eyebrow {
    margin: 0 0 38px;
    color: #8f2f86;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.2em;
    line-height: 1.2;
    text-transform: uppercase;
}

.contact-hero h1 {
    max-width: 560px;
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(68px, 6vw, 88px);
    font-weight: 400;
    line-height: 0.94;
    letter-spacing: 0;
}

.contact-hero__description {
    max-width: 720px;
    margin-top: 28px;
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 18px;
    line-height: 1.48;
}

.contact-hero__description p {
    margin: 0;
}

.contact-form-section {
    padding: clamp(28px, 4vw, 52px) 0 clamp(36px, 4vw, 70px);
    background: var(--th-color-section);
}

.contact-form-section__inner {
    display: grid;
    grid-template-columns: minmax(0, 1.58fr) minmax(360px, 0.96fr);
    gap: 26px;
    align-items: stretch;
    width: min(100% - 64px, var(--th-page-max));
    max-width: none;
}

.contact-form-section__form-panel {
    padding: 30px 26px 34px;
    background: var(--th-color-surface);
    border: 1px solid var(--th-color-border);
}

.contact-form-section__info-panel {
    padding: 34px 28px 36px;
    color: #fffdf9;
    background: #24152c;
}

.contact-form-section__eyebrow,
.contact-form-section__label {
    margin: 0 0 18px;
    color: #61b0de;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.2em;
    line-height: 1.2;
    text-transform: uppercase;
}

.contact-form-section__info-panel h2 {
    margin: 0 0 24px;
    color: #fffdf9;
    font-family: var(--th-font-display);
    font-size: clamp(42px, 4.2vw, 57px);
    font-weight: 400;
    line-height: 1.02;
}

.contact-form-section__block {
    margin-top: 28px;
}

.contact-form-section__text {
    margin: 0;
    color: #fffdf9;
    font-family: var(--th-font-body);
    font-size: 18px;
    line-height: 1.5;
}

.contact-form-section__text a {
    color: inherit;
    text-decoration: none;
}

.contact-form-section .wpcf7 form {
    margin: 0;
}

.contact-form-section .wpcf7 p {
    margin: 0;
}

.contact-form-section .wpcf7 .cf7-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 16px;
    margin-bottom: 18px;
}

.contact-form-section .wpcf7 .cf7-field {
    display: block;
    margin: 0 0 20px;
}

.contact-form-section .wpcf7 .cf7-field--half {
    margin-bottom: 0;
}

.contact-form-section .wpcf7 .cf7-field label {
    display: block;
    margin: 0 0 10px;
    color: #24152c;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
    line-height: 1.2;
    text-transform: uppercase;
}

.contact-form-section .wpcf7 .wpcf7-form-control-wrap {
    display: block;
}

.contact-form-section .wpcf7 input[type="text"],
.contact-form-section .wpcf7 input[type="email"],
.contact-form-section .wpcf7 input[type="tel"],
.contact-form-section .wpcf7 textarea {
    width: 100%;
    padding: 16px 16px 15px;
    color: #574c5a;
    background: transparent;
    border: 1px solid #7a717b;
    border-radius: 0;
    font-family: var(--th-font-body);
    font-size: 16px;
    line-height: 1.4;
    outline: 0;
    appearance: none;
}

.contact-form-section .wpcf7 textarea {
    min-height: 158px;
    resize: vertical;
}

.contact-form-section .wpcf7 input::placeholder,
.contact-form-section .wpcf7 textarea::placeholder {
    color: #7c727b;
    opacity: 1;
}

.contact-form-section .wpcf7 .wpcf7-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 114px;
    height: 48px;
    margin-top: 10px;
    padding: 0 18px;
    color: #FFFDF9;
    background: #24152c;
    border: 1px solid #24152c;
    font-family: var(--th-font-body);
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
}

.contact-form-section .wpcf7 .wpcf7-response-output {
    margin: 18px 0 0;
    padding: 12px 14px;
    border: 1px solid var(--th-color-border);
}

.about-page {
    background: var(--th-color-surface);
}

.about-hero {
    padding: clamp(72px, 7vw, 104px) 0 clamp(72px, 7vw, 104px);
    background: var(--th-color-surface);
}

.about-hero__inner {
    width: min(100% - 64px, var(--th-page-max));
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(440px, 1.1fr);
    gap: clamp(56px, 7vw, 118px);
    align-items: center;
}

.about-hero__content {
    min-width: 0;
}

.about-hero__eyebrow {
    margin: 0 0 42px;
    color: #61B0DE;
    font-family: var(--th-font-label);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
}

.about-hero h1 {
    max-width: 650px;
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(72px, 6.2vw, 112px);
    font-weight: 400;
    line-height: 1.02;
}

.about-hero__description {
    max-width: 660px;
    margin-top: 48px;
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 22px;
    line-height: 1.55;
}

.about-hero__description p {
    margin: 0;
}

.about-hero__media {
    margin: 0;
    aspect-ratio: 1.24;
    overflow: hidden;
}

.about-hero__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-section {
    padding: clamp(82px, 7vw, 128px) 0;
    background: var(--th-color-surface);
}

.about-section--company {
    background: #f4f0e9;
}

.about-section--portfolio {
    background: #1c1022;
    color: #fffdf9;
}

.about-section--leadership {
    background: var(--th-color-surface);
}

.about-section__inner {
    width: min(100% - 64px, var(--th-page-max));
    max-width: none;
    display: grid;
    grid-template-columns: minmax(260px, 0.42fr) minmax(0, 1fr);
    gap: clamp(56px, 8vw, 140px);
    align-items: start;
}

.about-section__meta {
    display: flex;
    align-items: center;
    gap: 22px;
    padding-top: 12px;
    color: #61b0de;
    font-family: var(--th-font-label);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
}

.about-section__number {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

.about-section__side {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-transform: inherit;
}

.about-section__content {
    max-width: none;
}

.about-section__intro {
    display: flex;
    flex-direction: column;
    gap: 34px;
}

.about-section__eyebrow {
    margin: 0 0 22px;
    color: #8F2F86;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
}

.about-section__subtitle {
    position: relative;
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(58px, 5.2vw, 88px);
    font-weight: 400;
    line-height: 1;
}

.about-section__subtitle::after {
    content: "";
    display: block;
    width: 160px;
    height: 4px;
    margin-top: 42px;
    background: #8f2f86;
}

.about-section__title {
    max-width: 900px;
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(44px, 4.6vw, 76px);
    font-weight: 400;
    line-height: 0.98;
}

.about-section__title--wide {
    max-width: 980px;
}

.about-section__body {
    max-width: none;
    margin-top: 0;
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 22px;
    line-height: 1.55;
}

.about-section__body p {
    margin: 0 0 38px;
}

.about-section--portfolio .about-section__inner,
.about-section--leadership .about-section__inner {
    display: block;
}

.about-section--portfolio .about-section__eyebrow {
    display: none;
}

.about-section--portfolio .about-section__meta,
.about-section--leadership .about-section__meta {
    padding-top: 0;
    margin-bottom: 40px;
}

.about-section--leadership .about-section__meta {
    color: #8f2f86;
}

.about-section--portfolio .about-section__title {
    max-width: 1280px;
    color: #fffdf9;
    font-size: clamp(58px, 5.5vw, 92px);
}

.about-section--portfolio .about-section__body {
    max-width: 1500px;
    margin-top: 28px;
    color: #fffdf9;
    font-size: 22px;
}

.about-section--portfolio .about-section__body p {
    margin-bottom: 0;
}

.about-portfolio-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px 42px;
    margin-top: 72px;
}

.about-portfolio-card {
    padding: 46px 48px 42px;
    background: var(--th-color-surface);
    border: 2px solid #61b0de;
}

.about-portfolio-card:nth-child(2),
.about-portfolio-card:nth-child(4) {
    border-color: #ef7ad7;
}

.about-portfolio-card:nth-child(3) {
    border-color: #f15b61;
}

.about-portfolio-card__code {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 34px;
    color: #24152c;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.26em;
    line-height: 1.2;
}

.about-portfolio-card__code::before {
    content: "";
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #61b0de;
}

.about-portfolio-card:nth-child(2) .about-portfolio-card__code::before,
.about-portfolio-card:nth-child(4) .about-portfolio-card__code::before {
    background: #ef7ad7;
}

.about-portfolio-card:nth-child(3) .about-portfolio-card__code::before {
    background: #f15b61;
}

.about-portfolio-card h3 {
    margin: 0 0 30px;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(34px, 3vw, 52px);
    font-weight: 400;
    line-height: 1.05;
}

.about-portfolio-card__text {
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 22px;
    line-height: 1.48;
}

.about-portfolio-card__text p {
    margin: 0;
}

.about-leadership-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    margin-top: 34px;
}

.about-leadership-card {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    min-height: 214px;
    background: var(--th-color-surface);
    border: 1px solid #574c5a;
}

.about-leadership-card:nth-child(even) {
    background: #f4f0e9;
}

.about-leadership-card:nth-child(3n + 1) .about-leadership-card__visual {
    background: #f4f0e9;
}

.about-leadership-card:nth-child(3n + 2) .about-leadership-card__visual {
    background: #1c1022;
}

.about-leadership-card:nth-child(3n + 3) .about-leadership-card__visual {
    background: #f4f0e9;
}

.about-leadership-card__visual {
    min-height: 214px;
    background: #1c1022;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.about-leadership-card__visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-leadership-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-leadership-card__visual span {
    color: #61b0de;
    font-family: var(--th-font-display);
    font-size: 58px;
    line-height: 1;
}

.about-leadership-card__content {
    padding: 32px 36px 30px;
}

.about-leadership-card__head {
    display: flex;
    justify-content: flex-start;
    gap: 14px;
    margin-bottom: 14px;
}

.about-leadership-card__number {
    color: #8f2f86;
    font-family: var(--th-font-label);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.24em;
    line-height: 1.2;
}

.about-leadership-card__eyebrow {
    color: #8f2f86;
    font-family: var(--th-font-label);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.2em;
    line-height: 1.2;
    text-transform: uppercase;
}

.about-leadership-card h3 {
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(30px, 2.6vw, 42px);
    font-weight: 400;
    line-height: 1.04;
}

.about-leadership-card__role {
    margin: 10px 0 18px;
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.45;
}

.about-leadership-card__bio {
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 15px;
    line-height: 1.55;
}

.about-leadership-card__bio p {
    margin: 0 0 14px;
}

.forzet-page {
    background: var(--th-color-surface);
}

.forzet-page .forzet-hero,
.forzet-page .forzet-intro,
.forzet-page .forzet-science,
.forzet-page .forzet-why-choose,
.forzet-page .forzet-cards-section,
.forzet-page .forzet-cta {
    width: 100%;
}

.forzet-hero {
    display: grid;
    grid-template-columns: minmax(0, 50%) minmax(0, 50%);
    gap: 0;
    align-items: stretch;
    width: 100%;
    min-height: clamp(660px, 74vh, 860px);
    margin: 0;
    padding: 0;
    background: #d8edf5;
}

.forzet-hero__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: clamp(64px, 6vw, 108px) clamp(42px, 6vw, 112px);
}

.forzet-hero__eyebrow,
.forzet-hero__tagline,
.forzet-intro__eyebrow,
.forzet-science__eyebrow,
.forzet-why-choose__eyebrow,
.forzet-cards-section__eyebrow,
.forzet-cta__eyebrow {
    margin: 0 0 26px;
    color: #8f2f86;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.2;
    text-transform: uppercase;
}

.forzet-hero h1 {
    max-width: 620px;
    margin: 0 0 26px;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(56px, 5vw, 86px);
    font-weight: 400;
    line-height: 0.95;
}

.forzet-hero h1 em,
.forzet-science h2 em {
    color: #8f2f86;
    font-size: 0.6em;
    font-style: italic;
}

.forzet-hero__tagline {
    margin-bottom: 30px;
    color: #61b0de;
}

.forzet-hero__description {
    max-width: 620px;
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 18px;
    line-height: 1.55;
}

.forzet-hero__description p {
    margin: 0 0 20px;
}

.forzet-hero__button,
.forzet-intro__button,
.forzet-cta__button {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-width: 144px;
    height: 48px;
    margin-top: 18px;
    padding: 0 18px;
    color: #fffdf9;
    background: var(--th-color-ink);
    border: 1px solid var(--th-color-ink);
    font-family: var(--th-font-body);
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.forzet-hero__button,
.forzet-intro__button {
    color: #24152c;
    background: #61b0de;
    border-color: #61b0de;
}

.forzet-hero__media {
    min-height: 100%;
    overflow: hidden;
    background: #d8edf5;
}

.forzet-hero__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.forzet-intro {
    display: grid;
    grid-template-columns: minmax(360px, 0.72fr) minmax(0, 1fr);
    gap: clamp(64px, 8vw, 148px);
    width: 100%;
    margin: 0;
    padding: clamp(84px, 7vw, 118px) max(32px, calc((100vw - var(--th-page-max)) / 2 + 32px));
    background: #fffdf9;
}

.forzet-intro__left {
    min-width: 0;
}

.forzet-intro__eyebrow {
    color: #8f2f86;
    margin-bottom: 34px;
}

.forzet-intro__brand {
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(62px, 5.6vw, 96px);
    font-weight: 400;
    line-height: 0.98;
}

sup,
sub {
    position: relative;
    font-size: 0.3em;
    line-height: 0;
    vertical-align: baseline;
}

sup {
    top: -0.45em;
}

sub {
    top: 0.18em;
}

.forzet-intro__subtitle {
    margin: 18px 0 0;
    color: #8f2f86;
    font-family: var(--th-font-display);
    font-size: clamp(26px, 2.4vw, 38px);
    font-style: italic;
    line-height: 1.05;
}

.forzet-intro__right {
    min-width: 0;
}

.forzet-intro__title,
.forzet-science h2,
.forzet-cta h2 {
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(44px, 4vw, 68px);
    font-weight: 400;
    line-height: 0.96;
}

.forzet-intro__description,
.forzet-science__content,
.forzet-cta__description {
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 18px;
    line-height: 1.55;
}

.forzet-intro__description {
    margin-top: 28px;
    max-width: 760px;
}

.forzet-intro__description p,
.forzet-science__content p,
.forzet-cta__description p {
    margin: 0 0 20px;
}

.page-id-1330 .forzet-hero h1 {
    max-width: 760px;
    font-size: clamp(44px, 4.2vw, 76px);
}

.page-id-1330 .forzet-intro {
    grid-template-columns: minmax(320px, 0.66fr) minmax(0, 1fr);
    gap: clamp(40px, 5vw, 84px);
}

.page-id-1330 .forzet-intro__brand {
    font-size: clamp(54px, 4.8vw, 84px);
}

.page-id-1330 .forzet-intro__title {
    font-size: clamp(40px, 3.7vw, 60px);
}

.page-id-1330 .forzet-science__inner {
    gap: clamp(36px, 5vw, 80px);
}

.page-id-1330 .forzet-cards-section h2 {
    max-width: 920px;
}

.forzet-science {
    background: #1c1022;
    color: #fffdf9;
}

.forzet-science__inner {
    width: min(100% - 64px, var(--th-page-max));
    margin: 0 auto;
    padding: clamp(94px, 9vw, 144px) 0;
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
    gap: clamp(48px, 7vw, 118px);
    align-items: start;
}

.forzet-science__eyebrow {
    color: #61b0de;
}

.forzet-science h2 {
    color: #fffdf9;
}

.forzet-science__content {
    color: #c7bec9;
    padding-top: 52px;
}

.forzet-why-choose {
    position: relative;
    overflow: hidden;
    background: #f4f0e9;
}

.page-id-1346 .forzet-why-choose::before {
    background: #8F2F86;
}

.page-id-1346 .forzet-why-choose__eyebrow {
    color: #61B0DE;
}

.page-id-1346 .forzet-why-choose h2 {
    color: #F1B7E6;
}

.forzet-why-choose::before {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(244, 240, 233, 0.1), rgba(244, 240, 233, 0.72) 46%, rgba(244, 240, 233, 1) 100%), var(--forzet-why-image, none) center top / cover no-repeat;
    content: "";
}

.forzet-why-choose__inner {
    position: relative;
    width: min(100% - 64px, var(--th-page-max));
    margin: 0 auto;
    padding: clamp(72px, 6.5vw, 112px) 0 clamp(48px, 4.6vw, 68px);
}

.forzet-why-choose__eyebrow {
    margin-bottom: 26px;
}

.forzet-why-choose h2 {
    max-width: 100%;
    margin: 0 0 clamp(34px, 4vw, 52px);
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(44px, 4vw, 68px);
    font-weight: 400;
    line-height: 0.96;
}


.forzet-why-choose__grid {
    display: grid;
    gap: 20px;
}

/* 4 cards: 4 in one row */
.forzet-why-choose--count-4 .forzet-why-choose__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* 5 cards: 3 equal cards on top, 2 wider equal cards below */
.forzet-why-choose--count-5 .forzet-why-choose__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.forzet-why-choose--count-5 .forzet-why-choose__card {
    grid-column: span 2;
}

.forzet-why-choose--count-5 .forzet-why-choose__card:nth-of-type(4),
.forzet-why-choose--count-5 .forzet-why-choose__card:nth-of-type(5) {
    grid-column: span 3;
}

/* 6 cards: 3 + 3 */
.forzet-why-choose--count-6 .forzet-why-choose__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.forzet-why-choose--count-6 .forzet-why-choose__card {
    grid-column: auto;
}


.forzet-why-choose__card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-width: 0;
    min-height: 194px;
    padding: 28px 20px 18px;
    color: #fffdf9;
    background: #24152c;
}

.forzet-why-choose__number {
    position: absolute;
    top: 18px;
    right: 18px;
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    margin: 0;
    color: #fffdf9;
    border: 1px solid #61b0de;
    border-radius: 50%;
    font-family: var(--th-font-label);
    font-size: 10px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1;
}

.forzet-why-choose__card h3 {
    max-width: 230px;
    margin: 0;
    color: #fffdf9;
    font-family: var(--th-font-display);
    font-size: clamp(18px, 1.35vw, 22px);
    font-weight: 400;
    line-height: 1.08;
    overflow-wrap: normal;
    word-break: normal;
}

.forzet-why-choose__dots {
    position: relative;
    display: block;
    width: 64px;
    height: 12px;
    margin-top: 16px;
    border-radius: 0;
    background: none;
}

.forzet-why-choose__dots::before {
    position: absolute;
    top: 5px;
    left: 0;
    width: 42px;
    height: 1px;
    background: rgba(255, 253, 249, 0.42);
    content: "";
}

.forzet-why-choose__dots::after {
    position: absolute;
    top: 2px;
    left: 49px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #f15b61;
    box-shadow: 14px 0 0 #ef7ad7;
    content: "";
}

.forzet-why-choose__cta {
    display: flex;
    grid-column: 1 / span 2;
    grid-row: 2;
    align-items: flex-start;
    justify-content: flex-start;
}

.forzet-why-choose__button {
    display: inline-flex;
    width: fit-content;
    min-height: var(--th-button-height);
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 0 20px;
    color: #fffdf9;
    background: var(--th-color-ink);
    border: 1px solid var(--th-color-ink);
    font-family: var(--th-font-body);
    font-size: var(--th-type-button);
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.forzet-why-choose__button:hover,
.forzet-why-choose__button:focus {
    color: var(--th-color-ink);
    background: transparent;
}


.forzet-cards-section {
    background: #f4f0e9;
}

.forzet-cards-section__inner {
    width: min(100% - 64px, var(--th-page-max));
    margin: 0 auto;
    padding: clamp(72px, 6.5vw, 112px) 0 clamp(48px, 4.6vw, 68px);
}

.forzet-cards-section__eyebrow {
    margin-bottom: 28px;
}

.forzet-cards-section h2 {
    max-width: 100%;
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(44px, 4vw, 68px);
    font-weight: 400;
    line-height: 0.96;
}

.forzet-cards-section__intro,
.forzet-why-choose__intro {
    max-width: 920px;
    margin-top: 26px;
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.55;
}

.forzet-cards-section__intro p,
.forzet-why-choose__intro p {
    margin: 0 0 20px;
}

.forzet-cards-section__intro p:last-child,
.forzet-why-choose__intro p:last-child {
    margin-bottom: 0;
}

.forzet-cards-section__intro a,
.forzet-why-choose__intro a {
    color: #8f2f86;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 767px) {
    .forzet-cards-section__intro,
    .forzet-why-choose__intro {
        margin-top: 20px;
        font-size: 16px;
        line-height: 1.5;
    }
}


.forzet-cards-section__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin-top: 48px;
}

.forzet-cards-section--cols-2 .forzet-cards-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.forzet-cards-section__card {
    display: grid;
    grid-template-columns: 38% minmax(0, 1fr);
    min-width: 0;
    min-height: 194px;
    overflow: hidden;
    background: #fffdf9;
    border: 1px solid #d8d2cf;
}

.forzet-cards-section__media {
    min-width: 0;
    height: 100%;
    overflow: hidden;
    background: #e8e2de;
}

.forzet-cards-section__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 194px;
    object-fit: cover;
    object-position: center;
}

.forzet-cards-section__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding: 20px 20px 18px;
}

.forzet-cards-section__number {
    display: inline-block;
    margin: 0 0 14px;
    color: #61b0de;
    font-family: var(--th-font-label);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 1;
}

.forzet-cards-section__content h3 {
    position: relative;
    margin: 0;
    padding-bottom: 22px;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(19px, 1.35vw, 24px);
    font-weight: 400;
    line-height: 1.08;
    overflow-wrap: normal;
    word-break: normal;
}

.forzet-cards-section__content h3::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 38px;
    height: 2px;
    background: #61b0de;
    content: "";
}

.forzet-cards-section__description {
    margin-top: 14px;
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 14px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.forzet-cards-section__description p {
    margin: 0;
}

.forzet-cta {
    background: #61B0DE;
}

.forzet-cta__inner {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(92px, 8vw, 132px) var(--th-site-side-padding);
}

.forzet-cta__eyebrow {
    color: #170D1C;
}

.forzet-cta h2 {
    max-width: 980px;
    color: #170D1C;
}

.forzet-cta__description {
    max-width: 860px;
    margin-top: 28px;
    color: #170D1C;
}

.forzet-cta__button {
    margin-top: 28px;
    background-color: #170D1C
}

.hero-carousel-panel {
    display: none;
    grid-template-columns: minmax(0, 57.1%) minmax(0, 42.9%);
    min-height: 0;
    overflow: hidden;
    background: var(--th-color-surface);
    border-bottom: 1px solid var(--th-color-border);
}

.hero-carousel-panel.is-active {
    display: grid;
}

.hero-carousel-panel__media {
    position: relative;
    height: auto;
    min-height: 0;
    overflow: hidden;
    background: #180a1d;
}

.hero-carousel-panel__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-carousel-panel__count {
    position: absolute;
    left: 28px;
    bottom: 26px;
    padding: 11px 13px;
    color: #fffdf9;
    background: #180a1d;
    font-family: var(--th-font-label);
    font-size: 12px;
    letter-spacing: 0.22em;
    line-height: 1;
    text-transform: uppercase;
}

.hero-carousel-panel__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(16px, 2vw, 28px) clamp(56px, 7.1vw, 102px);
}

.hero-carousel-panel__eyebrow {
    margin: 0 0 28px;
    color: #8f2f86;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.2em;
    line-height: 1.2;
    text-transform: uppercase;
}

.hero-carousel-panel h1 {
    margin: 0 0 34px;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(54px, 5.2vw, 76px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 0.96;
}

.hero-carousel-panel h1 em {
    color: #8f2f86;
    font-style: italic;
}

.hero-carousel-panel__description {
    max-width: 548px;
    margin-bottom: 38px;
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.48;
}

.hero-carousel-panel__description p {
    margin: 0;
}

.hero-carousel-panel__button {
    display: inline-flex;
    width: fit-content;
    min-width: 142px;
    height: 56px;
    align-items: center;
    justify-content: center;
    gap: 28px;
    padding: 0 21px;
    color: #ffffff;
    background: var(--th-color-ink);
    border-top: 1px solid #24152c;
    font-family: var(--th-font-body);
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

@media (min-width: 1101px) and (max-width: 1440px) {
    .hero-carousel-panel {
        grid-template-columns: minmax(0, 54%) minmax(0, 46%);
    }

    .hero-carousel-panel__content {
        min-width: 0;
        padding-right: clamp(38px, 4.4vw, 64px);
        padding-left: clamp(38px, 4.4vw, 64px);
    }

    .hero-carousel-panel h1 {
        max-width: 100%;
        font-size: clamp(58px, 5.35vw, 72px);
        line-height: 0.94;
        overflow-wrap: normal;
    }

    .hero-carousel-panel__description {
        max-width: 100%;
        font-size: 17px;
        line-height: 1.5;
    }
}

.hero-carousel__tabs {
    display: grid;
    grid-template-columns: 70px repeat(3, minmax(0, 1fr)) 70px;
    min-height: 72px;
    background: var(--th-color-surface);
    border-top: 1px solid var(--th-color-border);
    border-bottom: 1px solid var(--th-color-border);
}

.hero-carousel__tab,
.hero-carousel__arrow {
    color: #24152c;
    background: transparent;
    border: 0;
    border-right: 1px solid var(--th-color-border);
    font-family: var(--th-font-body);
    cursor: pointer;
}

.hero-carousel__arrow:last-child {
    border-right: 0;
}

.hero-carousel__tab {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    font-size: 16px;
    line-height: 1;
}

.hero-carousel__tab span {
    font-weight: 700;
    font-size: 12px;
}

.hero-carousel__tab.is-active::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 3px;
    background: #8f2f86;
    content: "";
}

.hero-carousel__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.definition-slider {
    background: var(--th-color-section);
    border-bottom: 1px solid var(--th-color-border);
}

.definition-slider__slide {
    display: none;
    grid-template-columns: 210px minmax(0, 480px) minmax(0, 620px);
    column-gap: clamp(60px, 7vw, 104px);
    row-gap: 72px;
    width: min(100% - 64px, var(--th-page-max));
    min-height: 760px;
    margin: 0 auto;
    padding: 118px 0 96px;
}

.definition-slider__slide.is-active {
    display: grid;
}

.definition-slider__side {
    display: flex;
    align-items: flex-start;
    gap: 42px;
}

.definition-slider__number {
    display: inline-flex;
    width: 39px;
    height: 39px;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    flex: 0 0 39px;
    border: 1px solid #574c5a;
    border-radius: 999px;
    color: #574c5a;
    font-family: var(--th-font-label);
    font-size: 12px;
}

.definition-slider__side-label {
    margin-top: 68px;
    color: #574c5a;
    font-family: var(--th-font-label);
    font-size: 12px;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
    writing-mode: vertical-rl;
}

.definition-slider__eyebrow {
    margin: 0 0 36px;
    color: #8f2f86;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.2;
    text-transform: uppercase;
}

.definition-slider h2 {
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(58px, 5.35vw, 78px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 0.96;
}

.definition-slider h2 em {
    color: #8f2f86;
    font-style: italic;
}

.definition-slider__body {
    padding-top: 56px;
}

.definition-slider__description {
    max-width: 620px;
    color: #24152c;
    font-family: var(--th-font-body);
    font-size: 20px;
    line-height: 1.6;
}

.definition-slider__description p {
    margin: 0 0 32px;
}

.definition-slider__button {
    display: inline-flex;
    align-items: center;
    gap: 28px;
    margin-top: 28px;
    padding-bottom: 14px;
    color: #24152c;
    border-bottom: 2px solid #24152c;
    font-family: var(--th-font-body);
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.definition-slider__formula {
    grid-column: 2 / 4;
    display: flex;
    align-items: center;
    gap: 27px;
    padding: 25px 0;
    border-top: 1px solid #cfc8d1;
    border-bottom: 1px solid #cfc8d1;
    color: #24152c;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.2;
    text-transform: uppercase;
}

.definition-slider__formula strong {
    color: #8f2f86;
    font: inherit;
}

.mechanism-section {
    background: #24152c;
    border-bottom: 1px solid #fffdf9;
}

.mechanism-section__inner {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    column-gap: clamp(64px, 7.5vw, 112px);
    width: min(100% - 64px, var(--th-page-max));
    min-height: 830px;
    margin: 0 auto;
    padding: 92px 0 138px;
}

.mechanism-section__side {
    display: flex;
    align-items: flex-start;
    gap: 42px;
}

.mechanism-section__number {
    display: inline-flex;
    width: 39px;
    height: 39px;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    flex: 0 0 39px;
    color: #61b0de;
    border: 1px solid #61b0de;
    border-radius: 999px;
    font-family: var(--th-font-label);
    font-size: 12px;
    letter-spacing: 0.08em;
    line-height: 1;
}

.mechanism-section__side-label {
    margin-top: 56px;
    color: #61b0de;
    font-family: var(--th-font-label);
    font-size: 12px;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
    writing-mode: vertical-rl;
}

.mechanism-section__content {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 430px) minmax(420px, 586px);
    column-gap: clamp(72px, 9vw, 128px);
    row-gap: 112px;
}

.mechanism-section__header {
    grid-column: 1 / 3;
    padding-right: 190px;
}

.mechanism-section__eyebrow {
    margin: 0 0 27px;
    color: #61b0de;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.16;
    text-transform: uppercase;
}

.mechanism-section h2 {
    max-width: 100%;
    margin: 0;
    color: #fffdf9;
    font-family: var(--th-font-display);
    font-size: clamp(64px, 6.3vw, 92px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 0.96;
}

.mechanism-section h2 em {
    color: #8f2f86;
    font-style: italic;
}

.mechanism-section__button {
    position: absolute;
    top: 57px;
    right: 0;
    justify-self: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    width: 142px;
    height: 54px;
    color: #24152c;
    background: #fffdf9;
    border-top: 1px solid #24152c;
    font-family: var(--th-font-body);
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.mechanism-section__description {
    grid-column: 1;
    width: min(100%, 390px);
    margin-left: 18px;
    color: #d2c9d4;
    font-family: var(--th-font-body);
    font-size: 20px;
    line-height: 1.53;
}

.mechanism-section__description p {
    margin: 0;
}

.mechanism-section__steps {
    position: relative;
    grid-column: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-self: center;
    gap: 0;
    margin-top: 45px;
    padding: 75px 58px 82px;
    background: rgba(255, 253, 249, 0.06);
    border-top: 1px solid rgba(199, 188, 201, 0.22);
    border-bottom: 1px solid rgba(199, 188, 201, 0.22);
}

.mechanism-section__steps::before {
    position: absolute;
    z-index: 0;
    top: 108px;
    right: calc(58px + ((100% - 116px) / 6));
    left: calc(58px + ((100% - 116px) / 6));
    height: 1px;
    background: #8f2f86;
    content: "";
}

.mechanism-section__step {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-rows: 66px auto;
    justify-items: center;
    gap: 24px;
    color: #c7bcc9;
}

.mechanism-section__step span {
    z-index: 1;
    display: inline-flex;
    width: 66px;
    height: 66px;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    flex: 0 0 66px;
    background: #24152c;
    border: 1px solid rgba(199, 188, 201, 0.56);
    border-radius: 999px;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1;
}

.mechanism-section__step:last-child span {
    color: #61b0de;
    border-color: #61b0de;
}

.mechanism-section__step strong {
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
}

.mechanism-section__step:last-child strong {
    color: #61b0de;
}

.applications-section {
    background: var(--th-color-surface);
    border-bottom: 1px solid var(--th-color-border);
}

.applications-section__inner {
    display: grid;
    grid-template-columns: 160px minmax(0, 1fr);
    column-gap: clamp(54px, 5.8vw, 84px);
    width: min(100% - 64px, var(--th-page-max));
    min-height: 990px;
    margin: 0 auto;
    padding: 164px 0 132px;
}

.applications-section__side {
    display: flex;
    align-items: flex-start;
    gap: 38px;
}

.applications-section__number {
    display: inline-flex;
    width: 41px;
    height: 41px;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    flex: 0 0 41px;
    color: #574c5a;
    border: 1px solid #574c5a;
    border-radius: 999px;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.applications-section__side-label {
    margin-top: 66px;
    color: #574c5a;
    font-family: var(--th-font-label);
    font-size: 12px;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
    writing-mode: vertical-rl;
}

.applications-section__eyebrow {
    margin: 0 0 35px;
    color: #8f2f86;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.2;
    text-transform: uppercase;
}

.applications-section h2 {
    max-width: 1080px;
    margin: 0 0 136px;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(64px, 6.4vw, 92px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.02;
}

.applications-section__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid #574c5a;
    border-bottom: 1px solid #574c5a;
}

.applications-section__card {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    grid-template-rows: auto 1fr;
    column-gap: 30px;
    min-height: 365px;
    padding: 43px 50px 58px 0;
}

.applications-section__card + .applications-section__card {
    padding-right: 50px;
    padding-left: 50px;
    border-left: 1px solid rgba(87, 76, 90, 0.24);
}

.applications-section__counter {
    grid-column: 1;
    margin: 8px 0 0;
    color: #574c5a;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1;
}

.applications-section__card h3 {
    grid-column: 2;
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(32px, 2.7vw, 42px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.08;
}

.applications-section__card-body {
    grid-column: 1 / 3;
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    column-gap: 30px;
    align-items: start;
    padding-top: 62px;
}

.applications-section__card-body img {
    display: block;
    width: 100px;
    height: 100px;
    object-fit: contain;
}

.applications-section__description {
    color: #746b78;
    font-family: var(--th-font-body);
    font-size: 20px;
    line-height: 1.48;
}

.applications-section__description p {
    margin: 0;
}

.product-cta-section {
    overflow: hidden;
    background: #a74f9e;
}

.product-cta-section__inner {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 620px) minmax(360px, 1fr);
    column-gap: clamp(96px, 11vw, 180px);
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    min-height: 710px;
    margin: 0;
    padding: 118px var(--th-site-side-padding) 94px;
}

.product-cta-section__content {
    position: relative;
    z-index: 1;
}

.product-cta-section__eyebrow {
    margin: 0 0 34px;
    color: #61b0de;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.2;
    text-transform: uppercase;
}

.product-cta-section h2 {
    margin: 0 0 58px;
    color: #fffdf9;
    font-family: var(--th-font-display);
    font-size: clamp(62px, 6.1vw, 88px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 0.98;
}

.product-cta-section h2 em {
    color: #e5a4dd;
    font-style: italic;
    line-height: inherit;
}

.product-cta-section__description {
    max-width: 560px;
    margin-bottom: 46px;
    color: #ead6e7;
    font-family: var(--th-font-body);
    font-size: 24px;
    line-height: 1.58;
}

.product-cta-section__description p {
    margin: 0;
}

.product-cta-section__button {
    display: inline-flex;
    width: 142px;
    height: 54px;
    align-items: center;
    justify-content: center;
    gap: 28px;
    color: #24152c;
    background: #fffdf9;
    border-top: 1px solid #24152c;
    font-family: var(--th-font-body);
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.product-cta-section__orbit {
    position: relative;
    align-self: center;
    justify-self: center;
    width: min(44vw, 475px);
    aspect-ratio: 1;
}

.product-cta-section__ring,
.product-cta-section__dot {
    position: absolute;
    display: block;
    border-radius: 999px;
}

.product-cta-section__ring {
    inset: 0;
    border: 2px solid rgba(255, 253, 249, 0.25);
}

.product-cta-section__ring--middle {
    inset: 15%;
}

.product-cta-section__ring--inner {
    inset: 35.5%;
    border-color: #61b0de;
}

.product-cta-section__dot--blue {
    left: 13.5%;
    bottom: 13.5%;
    width: 14px;
    height: 14px;
    background: #61b0de;
}

.product-cta-section__dot--coral {
    top: 12%;
    right: 23%;
    width: 26px;
    height: 26px;
    background: #ff655e;
}

.product-cta-section__dot--pink {
    right: 15%;
    bottom: 36.5%;
    width: 46px;
    height: 46px;
    background: #ee7dd9;
}

.guidance-note-section {
    background: #61b0de;
}

.guidance-note-section__inner {
    display: grid;
    grid-template-columns: 150px minmax(0, 610px) minmax(0, 690px);
    column-gap: clamp(54px, 6vw, 88px);
    width: min(100% - 64px, var(--th-page-max));
    min-height: 572px;
    margin: 0 auto;
    padding: 160px 0 144px;
}

.guidance-note-section__side {
    display: flex;
    align-items: flex-start;
    gap: 38px;
}

.guidance-note-section__number {
    display: inline-flex;
    width: 41px;
    height: 41px;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    flex: 0 0 41px;
    color: #574c5a;
    border: 1px solid #574c5a;
    border-radius: 999px;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.guidance-note-section__side-label {
    margin-top: 66px;
    color: #574c5a;
    font-family: var(--th-font-label);
    font-size: 12px;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
    writing-mode: vertical-rl;
}

.guidance-note-section h2 {
    margin: 0;
    color: #24152c;
    font-family: var(--th-font-display);
    font-size: clamp(72px, 6.6vw, 96px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.08;
}

.guidance-note-section__description {
    max-width: 690px;
    color: #24152c;
    font-family: var(--th-font-body);
    font-size: 28px;
    line-height: 1.42;
}

.guidance-note-section__description p {
    margin: 0;
}

.guidance-note-section__button {
    display: inline-flex;
    width: 100%;
    align-items: center;
    justify-content: flex-start;
    gap: 52px;
    margin-top: 134px;
    padding-bottom: 20px;
    color: #24152c;
    border-bottom: 2px solid #24152c;
    font-family: var(--th-font-body);
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.cookie-banner {
    position: fixed;
    z-index: 1000;
    right: 24px;
    bottom: 24px;
    display: flex;
    width: min(calc(100% - 48px), 480px);
    align-items: center;
    gap: 24px;
    padding: 18px 20px;
    color: #fffdf9;
    background: #24152c;
    border: 1px solid rgba(255, 253, 249, 0.2);
    box-shadow: 0 24px 54px rgba(36, 21, 44, 0.24);
}

.cookie-banner[hidden] {
    display: none;
}

.cookie-banner p {
    margin: 0;
    font-family: var(--th-font-body);
    font-size: 14px;
    line-height: 1.45;
}

.cookie-banner button {
    flex: 0 0 auto;
    height: 42px;
    padding: 0 18px;
    color: #24152c;
    background: #fffdf9;
    border: 0;
    font-family: var(--th-font-body);
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

@media (min-width: 761px) and (max-width: 1100px) {
    .site-header__inner {
        min-height: 80px;
        padding: 0 20px;
        gap: 18px;
    }

    .site-header__brand img {
        width: 145px;
    }

    .site-header__brand {
        order: 1;
    }

    .site-header__nav {
        order: 4;
        display: none;
    }

    .site-header.is-open .site-header__nav {
        display: block;
        position: absolute;
        top: 80px;
        left: 0;
        right: 0;
        max-height: calc(100vh - 80px);
        padding: 24px 20px 28px;
        overflow-y: auto;
        background: var(--th-color-surface);
        border-bottom: 1px solid var(--th-color-border);
        box-shadow: 0 28px 56px rgba(36, 21, 44, 0.12);
    }

    .site-header__nav > ul {
        width: 100%;
        align-items: flex-start;
        justify-content: flex-start;
        flex-direction: column;
        gap: 0;
        margin: 0;
        border-top: 1px solid rgba(36, 21, 44, 0.18);
    }

    .site-header__nav > ul > li {
        width: 100%;
        border-bottom: 1px solid rgba(36, 21, 44, 0.14);
    }

    .site-header__nav a {
        width: 100%;
        justify-content: space-between;
        padding: 15px 0;
        color: #24152c;
        font-family: var(--th-font-body);
        font-size: 17px;
        line-height: 1.1;
    }

    .site-header__nav .sub-menu {
        position: static !important;
        display: none;
        width: 100%;
        min-width: 0;
        place-items: stretch;
        gap: 0;
        margin: -3px 0 12px;
        padding: 6px 0 6px 0 !important;
        background: transparent;
        border: 0;
        box-shadow: none;
        opacity: 1;
        pointer-events: auto;
        transform: none !important;
    }

    .site-header__nav .is-submenu-open > .sub-menu {
        display: block;
    }

    .site-header__nav .sub-menu li {
        display: block !important;
        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 0;
        text-align: left !important;
    }

    .site-header__nav .sub-menu a {
        display: block !important;
        width: 100% !important;
        padding: 10px 0 !important;
        color: #574c5a !important;
        font-size: 15px;
        text-align: left !important;
        text-indent: 0 !important;
    }

    .site-header__mobile-invest {
        display: none !important;
    }

    .contact-hero {
        padding: 72px 0 54px;
    }

    .contact-hero h1 {
        font-size: 60px;
        max-width: 520px;
    }

    .contact-hero__description {
        font-size: 17px;
    }

    .contact-form-section__inner {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .contact-form-section__info-panel {
        max-width: 640px;
    }

    .site-header__actions {
        order: 2;
        margin-left: auto;
    }

    .site-header__cta {
        min-width: 96px;
        height: 44px;
        gap: 8px;
        padding: 0 12px;
        font-size: 13px;
    }

    .site-header__toggle {
        order: 3;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: auto;
        height: 44px;
        padding: 0;
        color: #24152c;
        background: transparent;
        border: 0;
        font-family: var(--th-font-body);
        font-size: 13px;
        font-weight: 500;
    }

    .site-header__toggle > span:not(.site-header__toggle-label) {
        display: none;
    }

    .hero-carousel-panel {
        grid-template-columns: minmax(0, 52%) minmax(0, 48%);
    }

    .hero-carousel-panel__content {
        padding: 42px 40px;
    }

    .hero-carousel-panel__eyebrow {
        margin-bottom: 24px;
        font-size: 10px;
    }

    .hero-carousel-panel h1 {
        margin-bottom: 30px;
        font-size: clamp(50px, 5.8vw, 62px);
        line-height: 0.92;
    }

    .hero-carousel-panel__description {
        margin-bottom: 28px;
        font-size: 15px;
        line-height: 1.5;
    }

    .hero-carousel-panel__button {
        min-width: 116px;
        height: 46px;
        gap: 18px;
        font-size: 14px;
    }

    .hero-carousel__tabs {
        grid-template-columns: 56px repeat(3, minmax(0, 1fr)) 56px;
        min-height: 64px;
    }

    .hero-carousel__tab {
        gap: 10px;
        font-size: 13px;
    }

    .definition-slider__slide,
    .definition-slider__slide.is-active {
        grid-template-columns: 58px minmax(0, 1fr) minmax(0, 1.08fr);
        column-gap: 42px;
        width: min(100% - 64px, var(--th-page-max));
        min-height: auto;
        padding: 82px 0 68px;
    }

    .definition-slider__side {
        gap: 24px;
    }

    .definition-slider h2 {
        font-size: clamp(54px, 6vw, 64px);
    }

    .definition-slider__body {
        padding-top: 0;
    }

    .definition-slider__description {
        font-size: 17px;
        line-height: 1.55;
    }

    .definition-slider__formula {
        grid-column: 1 / 4;
        gap: 18px;
        padding: 20px 0;
        font-size: 10px;
    }

    .mechanism-section__inner {
        grid-template-columns: 58px minmax(0, 1fr);
        width: min(100% - 64px, var(--th-page-max));
        min-height: auto;
        padding: 86px 0 96px;
    }

    .mechanism-section__content {
        grid-template-columns: 1fr;
        row-gap: 54px;
    }

    .mechanism-section__header,
    .mechanism-section__description,
    .mechanism-section__steps {
        grid-column: 1;
    }

    .mechanism-section__header {
        padding-right: 0;
    }

    .mechanism-section h2 {
        font-size: clamp(50px, 6vw, 64px);
    }

    .mechanism-section__button {
        display: none;
    }

    .mechanism-section__description {
        width: auto;
        margin-left: 0;
        font-size: 17px;
        line-height: 1.55;
    }

    .mechanism-section__steps {
        margin-top: 0;
    }

    .applications-section__inner {
        grid-template-columns: 58px minmax(0, 1fr);
        width: min(100% - 64px, var(--th-page-max));
        min-height: auto;
        padding: 86px 0 96px;
    }

    .applications-section h2 {
        margin-bottom: 80px;
        font-size: clamp(46px, 5.4vw, 58px);
    }

    .applications-section__cards {
        gap: 24px;
        border: 0;
    }

    .applications-section__card,
    .applications-section__card + .applications-section__card {
        grid-template-columns: 1fr;
        position: relative;
        min-height: auto;
        padding: 34px 34px 42px;
        border: 1px solid rgba(87, 76, 90, 0.22);
    }

    .applications-section__counter,
    .applications-section__card h3,
    .applications-section__card-body {
        grid-column: auto;
    }

    .applications-section__card h3 {
        max-width: calc(100% - 112px);
        margin-top: 34px;
        font-size: clamp(34px, 4vw, 44px);
    }

    .applications-section__card-body {
        display: block;
        padding-top: 62px;
    }

    .applications-section__card-body img {
        position: absolute;
        top: 36px;
        right: 34px;
        width: 78px;
        height: 78px;
    }

    .applications-section__description {
        font-size: 15px;
        line-height: 1.55;
    }

    .product-cta-section__inner {
        grid-template-columns: minmax(0, 1fr) minmax(260px, 390px);
        width: 100%;
        max-width: none;
        min-height: auto;
        padding: 78px var(--th-site-side-padding);
    }

    .product-cta-section h2 {
        font-size: clamp(54px, 6vw, 66px);
    }

    .product-cta-section__description {
        font-size: 17px;
        line-height: 1.55;
    }

    .product-cta-section__orbit {
        width: min(36vw, 330px);
    }

    .guidance-note-section__inner {
        grid-template-columns: 58px minmax(0, 1fr) minmax(0, 1.2fr);
        width: min(100% - 64px, var(--th-page-max));
        min-height: auto;
        padding: 82px 0;
    }

    .guidance-note-section h2 {
        font-size: clamp(52px, 5.8vw, 64px);
    }

    .guidance-note-section__description {
        font-size: 17px;
        line-height: 1.55;
    }

    .guidance-note-section__button {
        margin-top: 42px;
    }

    .site-footer__section-inner {
        width: min(100% - 64px, var(--th-page-max));
    }

    .site-footer__newsletter .site-footer__section-inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .site-footer__newsletter {
        padding: 78px 0;
    }

    .site-footer__newsletter h2 {
        font-size: clamp(46px, 5.8vw, 60px);
    }

    .site-footer__signup {
        padding-top: 0;
    }

    .site-footer__main-grid {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1fr);
        gap: 56px;
    }

    .forzet-hero,
    .forzet-intro,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner {
        width: min(100% - 64px, var(--th-page-max));
    }

    .forzet-hero,
    .forzet-intro,
    .forzet-science__inner {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 0;
    }

    .forzet-hero {
        min-height: 0;
    }

    .forzet-intro {
        padding: 78px 0;
    }

    .forzet-hero__content,
    .forzet-intro__left,
    .forzet-intro__right,
    .forzet-science__content {
        padding: 0;
    }

    .forzet-hero__media {
        min-height: 540px;
        order: -1;
    }

    .forzet-why-choose__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }


    .forzet-cards-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .forzet-cards-section--cols-2 .forzet-cards-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .forzet-cards-section__card {
        grid-template-columns: 132px minmax(0, 1fr);
    }
}

@media (max-width: 760px) {
    .site-header__inner,
    .site-footer__inner {
        width: min(100% - 24px, var(--th-container));
    }

    .site-header__inner {
        width: 100%;
        min-height: 70px;
        gap: 12px;
        padding: 0 12px;
    }

    .site-header__brand {
        order: 1;
    }

    .site-header__toggle {
        order: 3;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: auto;
        height: 42px;
        padding: 0;
        color: #24152c;
        background: transparent;
        border: 0;
        font-family: var(--th-font-body);
        font-size: 12px;
        font-weight: 500;
        line-height: 1;
    }

    .site-header__toggle > span:not(.site-header__toggle-label) {
        display: none;
    }

    .site-header__nav {
        order: 4;
        display: none;
    }

    .site-header.is-open .site-header__nav {
        display: block;
        position: absolute;
        top: 70px;
        left: 0;
        right: 0;
        max-height: calc(100vh - 70px);
        padding: 18px 18px 24px;
        overflow-y: auto;
        background: var(--th-color-surface);
        border-bottom: 1px solid var(--th-color-border);
        box-shadow: 0 28px 56px rgba(36, 21, 44, 0.12);
    }

    .site-header__brand img {
        width: 96px;
    }

    .site-header__actions {
        order: 2;
        display: flex;
        gap: 6px;
        margin-left: auto;
    }

    .site-header__cta {
        min-width: 82px;
        height: 40px;
        gap: 0;
        padding: 0 12px;
        color: #fffdf9;
        background: var(--th-color-ink);
        border-color: var(--th-color-ink);
        font-size: 12px;
    }

    .site-header__cta--invest {
        display: none;
    }

    .site-header__cta-icon {
        display: none;
    }

    .site-header__nav > ul,
    .site-footer__nav ul,
    .site-footer__inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .site-header__nav > ul {
        width: 100%;
        gap: 0;
        margin: 0;
        border-top: 1px solid rgba(36, 21, 44, 0.18);
    }

    .site-header__nav > ul > li {
        width: 100%;
        border-bottom: 1px solid rgba(36, 21, 44, 0.14);
    }

    .site-header__nav a {
        width: 100%;
        justify-content: space-between;
        padding: 13px 0;
        color: #24152c;
        font-family: var(--th-font-body);
        font-size: 17px;
        line-height: 1.1;
    }

    .site-header__nav .sub-menu {
        position: static !important;
        display: none;
        width: 100%;
        min-width: 0;
        place-items: stretch;
        gap: 0;
        margin: -2px 0 12px;
        padding: 6px 0 6px 0 !important;
        background: transparent;
        border: 0;
        box-shadow: none;
        opacity: 1;
        pointer-events: auto;
        transform: none !important;
    }

    .site-header__nav .is-submenu-open > .sub-menu {
        display: block;
    }

    .site-header__nav .sub-menu li {
        display: block !important;
        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 0;
        text-align: left !important;
    }

    .site-header__nav .sub-menu a {
        display: block !important;
        width: 100% !important;
        padding: 10px 0 !important;
        color: #574c5a !important;
        font-size: 15px;
        text-align: left !important;
        text-indent: 0 !important;
    }

    .site-header__nav .site-header__mobile-invest {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: auto !important;
        min-width: 82px;
        margin-top: 14px;
        min-height: 40px;
        padding: 0 12px;
        color: #fffdf9 !important;
        background: #24152c !important;
        font-family: var(--th-font-body);
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
        text-align: center;
        text-decoration: none;
    }

    .site-header__nav .site-header__mobile-invest span {
        display: block !important;
        color: #fffdf9 !important;
    }

    .site-header__nav .site-header__mobile-invest span[aria-hidden="true"] {
        display: none !important;
    }

    .site-footer__section-inner {
        width: min(100% - 36px, var(--th-page-max));
    }

    .site-footer__newsletter .site-footer__section-inner,
    .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 56px;
    }

    .site-footer__newsletter {
        padding: 72px 0;
    }

    .site-footer__eyebrow {
        margin-bottom: 34px;
    }

    .site-footer__newsletter h2 {
        font-size: 44px;
    }

    .site-footer__signup {
        padding-top: 0;
    }

    .site-footer__signup p {
        margin-bottom: 48px;
    }

    .site-footer__main {
        padding: 72px 0;
    }

    .site-footer__links h2,
    .site-footer__contact h2 {
        margin-bottom: 28px;
    }

    .site-footer__bottom {
        padding-bottom: 48px;
    }

    .site-footer__bottom .site-footer__section-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .hero-carousel-panel {
        grid-template-columns: 1fr;
    }

    .hero-carousel-panel__media {
        min-height: 430px;
    }

    .hero-carousel-panel__content {
        padding: 56px 18px 68px;
    }

    .hero-carousel-panel h1 {
        font-size: 52px;
    }

    .hero-carousel-panel__description {
        font-size: 16px;
    }

    .hero-carousel__tabs {
        grid-template-columns: 42px repeat(3, minmax(0, 1fr)) 42px;
        min-height: 58px;
        overflow: hidden;
    }

    .hero-carousel__tab {
        min-width: 0;
        gap: 6px;
        font-size: 9px;
    }

    .contact-hero {
        padding: 58px 0 36px;
    }

    .contact-hero h1 {
        max-width: 100%;
        font-size: 48px;
    }

    .contact-hero__description {
        max-width: 100%;
        font-size: 16px;
    }

    .contact-form-section {
        padding: 24px 0 36px;
    }

    .contact-form-section__inner {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .contact-form-section__form-panel,
    .contact-form-section__info-panel {
        padding: 24px 18px 28px;
    }

    .contact-form-section__info-panel h2 {
        font-size: 38px;
    }

    .contact-form-section .wpcf7 .cf7-grid {
        grid-template-columns: 1fr;
    }

    .contact-form-section .wpcf7 .wpcf7-submit {
        width: auto;
        min-width: 108px;
    }

    .definition-slider__slide,
    .definition-slider__slide.is-active {
        grid-template-columns: 1fr;
        row-gap: 0;
        width: min(100% - 36px, var(--th-page-max));
        min-height: auto;
        padding: 56px 0;
    }

    .definition-slider__side {
        display: flex;
        align-items: flex-start;
        gap: 18px;
        margin-bottom: 18px;
    }

    .definition-slider__number {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
        font-size: 9px;
    }

    .definition-slider__side-label {
        margin-top: 6px;
        font-size: 9px;
        letter-spacing: 0.22em;
        writing-mode: horizontal-tb;
    }

    .definition-slider__body {
        padding-top: 28px;
    }

    .definition-slider__heading,
    .definition-slider__body {
        grid-column: auto;
    }

    .definition-slider__eyebrow {
        margin-bottom: 18px;
    }

    .definition-slider h2 {
        font-size: 52px;
    }

    .definition-slider__description {
        font-size: 17px;
        line-height: 1.5;
    }

    .definition-slider__description p {
        margin-bottom: 22px;
    }

    .definition-slider__formula {
        grid-column: 1 / -1;
        flex-wrap: nowrap;
        justify-content: space-between;
        gap: 6px;
        margin-top: 34px;
        padding: 16px 0;
        font-size: 8px;
        letter-spacing: 0.12em;
        white-space: nowrap;
    }

    .definition-slider__formula span,
    .definition-slider__formula strong {
        flex: 0 1 auto;
    }

    .mechanism-section__inner,
    .mechanism-section__content,
    .mechanism-section__steps {
        grid-template-columns: 1fr;
    }

    .mechanism-section__inner {
        grid-template-columns: 1fr;
        width: min(100% - 36px, var(--th-page-max));
        min-height: auto;
        padding: 56px 0;
    }

    .mechanism-section__side {
        display: flex;
        align-items: flex-start;
        gap: 18px;
        margin-bottom: 18px;
    }

    .mechanism-section__number {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
        font-size: 9px;
    }

    .mechanism-section__side-label {
        margin-top: 6px;
        font-size: 9px;
        letter-spacing: 0.22em;
        writing-mode: horizontal-tb;
    }

    .mechanism-section__content {
        grid-column: auto;
        display: block;
        padding: 0;
        background: transparent;
        border: 0;
    }

    .mechanism-section__eyebrow {
        margin-bottom: 18px;
    }

    .mechanism-section__header {
        padding-right: 0;
    }

    .mechanism-section h2 {
        font-size: 44px;
        line-height: 1;
    }

    .mechanism-section__button {
        position: static;
        width: 124px;
        height: 48px;
        margin-top: 22px;
    }

    .mechanism-section__description {
        grid-column: auto;
        max-width: none;
        width: auto;
        margin: 28px 0 0;
        font-size: 16px;
        line-height: 1.5;
    }

    .mechanism-section__steps {
        grid-column: auto;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0;
        margin-top: 36px;
        padding: 42px 18px 46px;
        background: rgba(255, 253, 249, 0.06);
        border-top: 1px solid rgba(199, 188, 201, 0.22);
        border-bottom: 1px solid rgba(199, 188, 201, 0.22);
    }

    .mechanism-section__steps::before {
        top: 69px;
        right: calc(18px + ((100% - 36px) / 6));
        left: calc(18px + ((100% - 36px) / 6));
    }

    .mechanism-section__step {
        grid-template-rows: 54px auto;
        gap: 18px;
    }

    .mechanism-section__step span {
        width: 54px;
        height: 54px;
        flex-basis: 54px;
    }

    .mechanism-section__step strong {
        font-size: 9px;
        letter-spacing: 0.14em;
    }

    .applications-section__inner,
    .applications-section__cards,
    .applications-section__card,
    .applications-section__card-body {
        grid-template-columns: 1fr;
    }

    .applications-section__inner {
        grid-template-columns: 1fr;
        width: min(100% - 36px, var(--th-page-max));
        min-height: auto;
        padding: 56px 0;
    }

    .applications-section__side {
        display: flex;
        align-items: flex-start;
        gap: 18px;
        margin-bottom: 18px;
    }

    .applications-section__number {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
        font-size: 9px;
    }

    .applications-section__side-label {
        margin-top: 6px;
        font-size: 9px;
        letter-spacing: 0.22em;
        writing-mode: horizontal-tb;
    }

    .applications-section__content {
        grid-column: auto;
    }

    .applications-section h2 {
        margin-bottom: 42px;
        font-size: 48px;
    }

    .applications-section__card,
    .applications-section__card + .applications-section__card {
        position: relative;
        min-height: auto;
        padding: 30px 0 42px;
        border-left: 0;
    }

    .applications-section__card + .applications-section__card {
        border-top: 1px solid rgba(87, 76, 90, 0.24);
    }

    .applications-section__counter,
    .applications-section__card h3,
    .applications-section__card-body {
        grid-column: auto;
    }

    .applications-section__card-body {
        display: block;
        padding-top: 34px;
    }

    .applications-section__card-body img {
        position: absolute;
        top: 106px;
        right: 0;
        width: 72px;
        height: 72px;
    }

    .applications-section__card h3 {
        max-width: calc(100% - 84px);
        margin-top: 22px;
        font-size: 36px;
        line-height: 1.08;
    }

    .applications-section__description {
        max-width: calc(100% - 84px);
        font-size: 15px;
        line-height: 1.48;
    }

    .product-cta-section__inner {
        grid-template-columns: 1fr;
        width: 100%;
        max-width: none;
        min-height: auto;
        padding: 56px var(--th-site-side-padding);
    }

    .product-cta-section h2 {
        font-size: 52px;
    }

    .product-cta-section__description {
        font-size: 18px;
    }

    .product-cta-section__orbit {
        width: min(84vw, 390px);
        margin-top: 44px;
    }

    .guidance-note-section__inner {
        grid-template-columns: 1fr;
        width: min(100% - 36px, var(--th-page-max));
        min-height: auto;
        padding: 56px 0;
        row-gap: 28px;
    }

    .guidance-note-section__side {
        display: flex;
        align-items: flex-start;
        gap: 18px;
        margin-bottom: 0;
    }

    .guidance-note-section__number {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
        font-size: 9px;
    }

    .guidance-note-section__side-label {
        margin-top: 6px;
        font-size: 9px;
        letter-spacing: 0.22em;
        writing-mode: horizontal-tb;
    }

    .guidance-note-section__title,
    .guidance-note-section__content {
        grid-column: auto;
    }

    .guidance-note-section h2 {
        font-size: 56px;
    }

    .guidance-note-section__description {
        font-size: 17px;
        line-height: 1.5;
    }

    .guidance-note-section__button {
        margin-top: 28px;
    }

    .cookie-banner {
        right: 18px;
        bottom: 18px;
        flex-direction: column;
        align-items: stretch;
    }
}

@media (min-width: 1101px) {
    .site-header__nav > ul {
        justify-content: center;
    }

    .site-header__nav > ul > li > .sub-menu {
        left: 0 !important;
        width: max-content !important;
        min-width: 180px !important;
        padding-right: 18px !important;
        padding-left: 18px !important;
        transform: translateY(-6px) !important;
    }

    .site-header__nav > ul > li:hover > .sub-menu,
    .site-header__nav > ul > li:focus-within > .sub-menu {
        transform: translateY(0) !important;
    }

    .site-header__nav > ul > li > .sub-menu > li {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: left !important;
    }

    .site-header__nav > ul > li > .sub-menu > li > a {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 10px 0 !important;
        text-align: left !important;
        text-indent: 0 !important;
    }
}

@media (max-width: 1100px) {
    .about-hero__inner,
    .about-section__inner {
        grid-template-columns: 1fr;
    }

    .about-hero__media {
        width: min(100%, 720px);
        justify-self: end;
    }

    .about-section__intro {
        gap: 24px;
    }

    .about-section--portfolio .about-portfolio-grid {
        grid-template-columns: 1fr;
    }

    .about-leadership-card {
        grid-template-columns: 180px minmax(0, 1fr);
    }
}

@media (max-width: 760px) {
    .about-hero,
    .about-section {
        padding: 56px 0;
    }

    .about-hero__inner,
    .about-section__inner {
        width: min(100% - 32px, var(--th-page-max));
        gap: 30px;
    }

    .about-hero__eyebrow,
    .about-section__meta,
    .about-section__eyebrow {
        font-size: 11px;
        letter-spacing: 0.18em;
    }

    .about-hero h1,
    .about-section__subtitle,
    .about-section__title,
    .about-section--portfolio .about-section__title {
        font-size: clamp(38px, 13vw, 52px);
    }

    .about-hero__description,
    .about-section__body,
    .about-section--portfolio .about-section__body,
    .about-portfolio-card__text,
    .about-leadership-card__bio,
    .about-leadership-card__role {
        font-size: 16px;
    }

    .about-section__body p {
        margin-bottom: 22px;
    }

    .about-section__subtitle::after {
        width: 120px;
        height: 3px;
        margin-top: 24px;
    }

    .about-portfolio-grid {
        gap: 18px;
        margin-top: 34px;
    }

    .about-portfolio-card {
        padding: 28px 24px 26px;
    }

    .about-portfolio-card h3 {
        font-size: 28px;
    }

    .about-leadership-card {
        grid-template-columns: 1fr;
    }

    .about-leadership-card__visual {
        min-height: 180px;
    }

    .about-leadership-card__content {
        padding: 24px 20px 22px;
    }

    .forzet-hero,
    .forzet-intro,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner {
        width: min(100% - 32px, var(--th-page-max));
    }

    .forzet-hero,
    .forzet-intro,
    .forzet-science__inner {
        grid-template-columns: 1fr;
        gap: 24px;
        padding-top: 0;
    }

    .forzet-intro {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .forzet-hero__content,
    .forzet-intro__left,
    .forzet-intro__right,
    .forzet-science__content {
        padding: 0;
    }

    .forzet-hero__media {
        min-height: 320px;
        order: -1;
    }

    .forzet-hero h1,
    .forzet-intro__title,
    .forzet-science h2,
    .forzet-cta h2 {
        font-size: clamp(36px, 11vw, 48px);
        line-height: 0.98;
    }

    .forzet-hero__description,
    .forzet-intro__subtitle,
    .forzet-intro__description,
    .forzet-science__content,
    .forzet-cta__description {
        font-size: 16px;
        line-height: 1.52;
    }

    .forzet-intro__brand {
        font-size: clamp(42px, 14vw, 58px);
    }

    .forzet-why-choose__grid,
    .forzet-cards-section__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .forzet-why-choose h2,
    .forzet-cards-section h2 {
        font-size: clamp(34px, 10vw, 46px);
    }

    .forzet-why-choose__card {
        grid-column: auto;
        min-height: auto;
        padding: 86px 24px 26px;
    }

    .forzet-why-choose__card:nth-child(4),
    .forzet-why-choose__card:nth-child(5) {
        grid-column: auto;
    }

    .forzet-cards-section__card {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .forzet-cards-section__media {
        aspect-ratio: 1.3;
        min-height: 180px;
    }

    .forzet-cards-section__content {
        padding: 22px 20px 24px;
    }

    .forzet-cards-section__content h3 {
        font-size: 24px;
    }

    .forzet-cta__button,
    .forzet-intro__button,
    .forzet-hero__button {
        min-width: 132px;
        height: 44px;
        font-size: 14px;
    }
}

/* Responsive card refinements */
@media (max-width: 1199px) {
    .forzet-why-choose__grid,
    .forzet-cards-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .forzet-why-choose__card {
        min-height: 190px;
    }

    .forzet-cards-section__card {
        grid-template-columns: 120px minmax(0, 1fr);
    }
}

@media (max-width: 767px) {
    .forzet-why-choose__grid,
    .forzet-cards-section__grid,
    .forzet-cards-section--cols-2 .forzet-cards-section__grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .forzet-cards-section__grid {
        margin-top: 34px;
    }

    .forzet-why-choose__card {
        min-height: 170px;
        padding: 26px 20px 18px;
    }

    .forzet-why-choose__card h3 {
        max-width: calc(100% - 50px);
        font-size: 21px;
    }

    .forzet-cards-section__card {
        grid-template-columns: 110px minmax(0, 1fr);
        min-height: 170px;
    }

    .forzet-cards-section__media img {
        min-height: 170px;
    }

    .forzet-cards-section__content {
        padding: 18px 16px;
    }

    .forzet-cards-section__content h3 {
        font-size: 20px;
    }
}

@media (max-width: 480px) {
    .forzet-cards-section__card {
        grid-template-columns: 96px minmax(0, 1fr);
    }

    .forzet-cards-section__content {
        padding: 16px 14px;
    }

    .forzet-cards-section__content h3 {
        font-size: 18px;
    }
}

/* =========================================================
   UNIFIED HORIZONTAL PAGE PADDING
   Uses the same side rhythm as .forzet-hero__content
   ========================================================= */

:root {
    --th-site-side-padding: clamp(42px, 6vw, 112px);
}

/*
 * Full-width section containers.
 * Their vertical padding, grids and section-specific spacing remain unchanged.
 */
.section-inner,
.site-footer__section-inner,
.contact-hero__inner,
.contact-form-section__inner,
.about-hero__inner,
.about-section__inner,
.forzet-science__inner,
.forzet-why-choose__inner,
.forzet-cards-section__inner,
.forzet-cta__inner,
.definition-slider__slide,
.mechanism-section__inner,
.applications-section__inner,
.guidance-note-section__inner {
    width: 100%;
    max-width: none;
    margin-inline: auto;
    padding-inline: var(--th-site-side-padding);
}

/* This section has no separate inner wrapper. */
.forzet-intro {
    width: 100%;
    max-width: none;
    padding-inline: var(--th-site-side-padding);
}

/* Keep generic WordPress article content readable, but align its outer rhythm. */
.entry {
    width: min(
        calc(100% - (var(--th-site-side-padding) * 2)),
        920px
    );
}

/* Footer sections now align with all page sections. */
.site-footer__newsletter,
.site-footer__main,
.site-footer__bottom {
    padding-inline: 0;
}

@media (max-width: 1023px) {
    :root {
        --th-site-side-padding: 32px;
    }
}

@media (max-width: 767px) {
    :root {
        --th-site-side-padding: 20px;
    }

    .section-inner,
    .site-footer__section-inner,
    .contact-hero__inner,
    .contact-form-section__inner,
    .about-hero__inner,
    .about-section__inner,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner,
    .definition-slider__slide,
    .mechanism-section__inner,
    .applications-section__inner,
    .guidance-note-section__inner,
    .forzet-intro {
        padding-inline: var(--th-site-side-padding);
    }
}

/* =========================================================
   CANONICAL TYPOGRAPHY SYSTEM
   Single source for font families, type scale and text rhythm.
   Section-specific color and layout rules remain in their modules.
   ========================================================= */

:root {
    --th-font-display: Georgia, "Times New Roman", serif;
    --th-font-body: "Helvetica Neue", Helvetica, Arial, sans-serif;
    --th-font-label: "Courier New", Courier, monospace;
    --th-font-mono: var(--th-font-label);

    --th-type-display-xl: clamp(72px, 6.2vw, 92px);
    --th-type-display-lg: clamp(58px, 5.2vw, 80px);
    --th-type-display-md: clamp(44px, 4vw, 68px);
    --th-type-display-sm: clamp(30px, 2.7vw, 42px);
    --th-type-card: clamp(19px, 1.35vw, 24px);

    --th-type-body-lg: 22px;
    --th-type-body: 18px;
    --th-type-body-sm: 16px;
    --th-type-caption: 14px;
    --th-type-label: 12px;
    --th-type-button: 16px;

    --th-leading-display-tight: 1.2;
    --th-leading-display: 1.2;
    --th-leading-heading: 1.05;
    --th-leading-body: 1.55;
    --th-leading-body-compact: 1.45;
    --th-leading-label: 1.2;

    --th-space-3: 28px;
    --th-space-4: 40px;
    --th-space-copy: 20px;
    --th-space-section: clamp(88px, 7.5vw, 128px);
    --th-button-height: 48px;
}

body,
button,
input,
textarea,
select {
    font-family: var(--th-font-body);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    font-family: var(--th-font-display);
    font-weight: 400;
    text-wrap: balance;
}

.contact-page,
.about-page,
.forzet-page,
.invest-page {
    font-family: var(--th-font-body);
}

.contact-page h1,
.contact-page h2,
.about-page h1,
.about-page h2,
.forzet-page h1,
.forzet-page h2,
.invest-page h1,
.invest-page h2 {
    letter-spacing: 0;
}

.th-nowrap {
    white-space: nowrap;
}

.contact-hero h1,
.about-hero h1,
.forzet-hero h1,
.hero-carousel-panel h1,
.invest-hero h1 {
    font-family: var(--th-font-display);
    font-size: var(--th-type-display-xl);
    font-weight: 400;
    line-height: var(--th-leading-display-tight);
}

.forzet-page .forzet-hero h1 {
    font-size: clamp(56px, 5vw, 86px);
    line-height: var(--th-leading-display-tight);
}

body.page-id-1330 .forzet-hero h1,
body.page-id-1344 .forzet-hero h1,
body.page-id-1345 .forzet-hero h1,
body.page-id-1346 .forzet-hero h1 {
    max-width: 760px;
    font-size: clamp(44px, 4.2vw, 76px);
    line-height: var(--th-leading-display-tight);
}

.site-footer__newsletter h2,
.about-section__subtitle,
.about-section--portfolio .about-section__title,
.forzet-intro__brand,
.definition-slider h2 {
    font-family: var(--th-font-display);
    font-size: var(--th-type-display-lg);
    font-weight: 400;
    line-height: var(--th-leading-display);
}

.contact-form-section__info-panel h2,
.about-section__title,
.forzet-intro__title,
.forzet-science h2,
.forzet-why-choose h2,
.forzet-cards-section h2,
.forzet-cta h2,
.mechanism-section h2,
.applications-section h2,
.product-cta-section h2,
.guidance-note-section h2,
.invest-about h2,
.invest-pipeline__head h2,
.invest-opportunity h2,
.invest-use h2,
.invest-final-cta h2 {
    font-family: var(--th-font-display);
    font-size: var(--th-type-display-md);
    font-weight: 400;
    line-height: var(--th-leading-display);
}

.about-portfolio-card h3,
.about-leadership-card h3,
.forzet-why-choose__card h3,
.forzet-cards-section__content h3,
.applications-section__card h3,
.invest-about h3,
.invest-pipeline__side h3 {
    font-family: var(--th-font-display);
    font-size: var(--th-type-card);
    font-weight: 400;
    line-height: var(--th-leading-heading);
}

.contact-hero__description,
.contact-form-section__text,
.about-hero__description,
.about-section__body,
.about-portfolio-card__text,
.forzet-hero__description,
.forzet-intro__description,
.forzet-science__content,
.forzet-why-choose__intro,
.forzet-cards-section__intro,
.forzet-cta__description,
.hero-carousel-panel__description,
.definition-slider__description,
.mechanism-section__description,
.applications-section__description,
.product-cta-section__description,
.guidance-note-section__description,
.invest-hero__description,
.invest-about__description,
.invest-pipeline__body,
.invest-opportunity__head,
.invest-use__description,
.invest-final-cta__description,
.site-footer__signup p {
    font-family: var(--th-font-body);
    font-size: var(--th-type-body-lg);
    line-height: var(--th-leading-body);
}

.about-leadership-card__role,
.about-leadership-card__bio,
.forzet-cards-section__description,
.invest-about__card-text,
.site-footer__links a,
.site-footer__company a,
.site-footer__contact a,
.site-footer__contact p {
    font-family: var(--th-font-body);
    font-size: var(--th-type-body-sm);
    line-height: var(--th-leading-body-compact);
}

.site-footer__eyebrow,
.site-footer__links h2,
.site-footer__company h2,
.site-footer__contact h2,
.site-footer__form label,
.site-footer__bottom,
.contact-hero__eyebrow,
.contact-form-section__eyebrow,
.contact-form-section__label,
.contact-form-section .wpcf7 .cf7-field label,
.about-hero__eyebrow,
.about-section__meta,
.about-section__eyebrow,
.about-portfolio-card__code,
.about-leadership-card__number,
.about-leadership-card__eyebrow,
.forzet-hero__eyebrow,
.forzet-hero__tagline,
.forzet-intro__eyebrow,
.forzet-science__eyebrow,
.forzet-why-choose__eyebrow,
.forzet-cards-section__eyebrow,
.forzet-cta__eyebrow,
.forzet-why-choose__number,
.forzet-cards-section__number,
.hero-carousel-panel__eyebrow,
.hero-carousel-panel__count,
.definition-slider__eyebrow,
.definition-slider__number,
.definition-slider__side-label,
.definition-slider__formula,
.mechanism-section__eyebrow,
.mechanism-section__number,
.mechanism-section__side-label,
.mechanism-section__step span,
.mechanism-section__step strong,
.applications-section__eyebrow,
.applications-section__number,
.applications-section__side-label,
.applications-section__counter,
.product-cta-section__eyebrow,
.guidance-note-section__number,
.guidance-note-section__side-label,
.invest-about__label,
.invest-pipeline__side > p:first-child {
    font-family: var(--th-font-label);
    font-size: var(--th-type-label);
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: var(--th-leading-label);
    text-transform: uppercase;
}

.site-header__nav a,
.site-header__cta,
.forzet-hero__button,
.forzet-intro__button,
.forzet-cta__button,
.hero-carousel-panel__button,
.definition-slider__button,
.mechanism-section__button,
.product-cta-section__button,
.contact-form-section .wpcf7 .wpcf7-submit,
.invest-button,
.invest-final-cta__button,
.site-footer__form input,
.site-footer__form button {
    font-family: var(--th-font-body);
    font-size: var(--th-type-button);
}

.contact-hero__description p,
.contact-form-section__text p,
.about-hero__description p,
.about-section__body p,
.forzet-hero__description p,
.forzet-intro__description p,
.forzet-science__content p,
.forzet-why-choose__intro p,
.forzet-cards-section__intro p,
.forzet-cards-section__description p,
.forzet-cta__description p,
.definition-slider__description p,
.mechanism-section__description p,
.applications-section__description p,
.product-cta-section__description p,
.guidance-note-section__description p,
.invest-hero__description p,
.invest-about__description p,
.invest-about__card-text p,
.invest-pipeline__body p,
.invest-opportunity__head p,
.invest-use__description p,
.invest-final-cta__description p {
    margin-top: 0;
    margin-bottom: var(--th-space-copy);
}

.contact-hero__description p:last-child,
.contact-form-section__text p:last-child,
.about-hero__description p:last-child,
.about-section__body p:last-child,
.forzet-hero__description p:last-child,
.forzet-intro__description p:last-child,
.forzet-science__content p:last-child,
.forzet-why-choose__intro p:last-child,
.forzet-cards-section__intro p:last-child,
.forzet-cards-section__description p:last-child,
.forzet-cta__description p:last-child,
.definition-slider__description p:last-child,
.mechanism-section__description p:last-child,
.applications-section__description p:last-child,
.product-cta-section__description p:last-child,
.guidance-note-section__description p:last-child,
.invest-hero__description p:last-child,
.invest-about__description p:last-child,
.invest-about__card-text p:last-child,
.invest-pipeline__body p:last-child,
.invest-opportunity__head p:last-child,
.invest-use__description p:last-child,
.invest-final-cta__description p:last-child {
    margin-bottom: 0;
}

.forzet-page h1 sup,
.forzet-page h1 sub,
.forzet-page h2 sup,
.forzet-page h2 sub,
.forzet-page h3 sup,
.forzet-page h3 sub,
.invest-page h1 sup,
.invest-page h1 sub,
.invest-page h2 sup,
.invest-page h2 sub,
.invest-page h3 sup,
.invest-page h3 sub {
    display: inline-block;
    font-size: 0.38em;
    line-height: 0;
}

.forzet-page h1 sup,
.forzet-page h2 sup,
.forzet-page h3 sup,
.invest-page h1 sup,
.invest-page h2 sup,
.invest-page h3 sup {
    vertical-align: super;
}

.forzet-page h1 sub,
.forzet-page h2 sub,
.forzet-page h3 sub,
.invest-page h1 sub,
.invest-page h2 sub,
.invest-page h3 sub {
    vertical-align: sub;
}

.forzet-cards-section__description sup,
.forzet-cards-section__description sub,
.forzet-hero__description sup,
.forzet-hero__description sub {
    font-size: 0.58em;
    line-height: 0;
}

.forzet-cards-section__description sup,
.forzet-hero__description sup {
    vertical-align: super;
}

.forzet-cards-section__description sub,
.forzet-hero__description sub {
    vertical-align: sub;
}

@media (min-width: 768px) and (max-width: 1100px) {
    :root {
        --th-type-display-xl: clamp(54px, 6.4vw, 66px);
        --th-type-display-lg: clamp(48px, 5.8vw, 60px);
        --th-type-display-md: clamp(46px, 5.5vw, 58px);
        --th-type-display-sm: clamp(27px, 3vw, 34px);
        --th-type-card: 20px;

        --th-type-body-lg: 17px;
        --th-type-body: 17px;
        --th-type-body-sm: 14px;
        --th-type-caption: 13px;
        --th-type-label: 10px;
        --th-type-button: 15px;

        --th-space-copy: 18px;
        --th-space-section: 80px;
    }
}

@media (max-width: 767px) {
    :root {
        --th-type-display-xl: clamp(42px, 12vw, 50px);
        --th-type-display-lg: clamp(40px, 11vw, 46px);
        --th-type-display-md: clamp(38px, 10.8vw, 44px);
        --th-type-display-sm: 27px;
        --th-type-card: 17px;

        --th-type-body-lg: 15px;
        --th-type-body: 15px;
        --th-type-body-sm: 13px;
        --th-type-caption: 11px;
        --th-type-label: 8px;
        --th-type-button: 14px;

        --th-space-3: 28px;
        --th-space-4: 40px;
        --th-space-copy: 16px;
        --th-space-section: 68px;
        --th-button-height: 46px;
    }
}

/* Responsive reset for dynamic Why Choose card counts */
@media (max-width: 1199px) {
    .forzet-why-choose--count-4 .forzet-why-choose__grid,
    .forzet-why-choose--count-5 .forzet-why-choose__grid,
    .forzet-why-choose--count-6 .forzet-why-choose__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .forzet-why-choose--count-5 .forzet-why-choose__card,
    .forzet-why-choose--count-5 .forzet-why-choose__card:nth-of-type(4),
    .forzet-why-choose--count-5 .forzet-why-choose__card:nth-of-type(5),
    .forzet-why-choose--count-6 .forzet-why-choose__card {
        grid-column: auto;
    }
}

@media (max-width: 767px) {
    .forzet-why-choose--count-4 .forzet-why-choose__grid,
    .forzet-why-choose--count-5 .forzet-why-choose__grid,
    .forzet-why-choose--count-6 .forzet-why-choose__grid {
        grid-template-columns: 1fr;
    }
}

/* Wider imagery for benefit cards */
@media (min-width: 1200px) {
    .forzet-cards-section__card {
        grid-template-columns: 38% minmax(0, 1fr);
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .forzet-cards-section__card {
        grid-template-columns: 34% minmax(0, 1fr);
    }
}

@media (max-width: 767px) {
    .forzet-cards-section__card {
        grid-template-columns: 38% minmax(0, 1fr);
    }

    .forzet-cards-section__media img {
        min-height: 170px;
    }
}

/* =========================================================
   ABOUT PAGE - TABLET 768-1100
   Matched to the supplied 1024px Figma reference
   ========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {
    .about-page {
        --about-tablet-gutter: 48px;
        --about-tablet-section-y: 88px;
    }

    /* Shared tablet container */
    .about-hero__inner,
    .about-section__inner {
        width: 100%;
        max-width: none;
        margin-inline: auto;
        padding-inline: var(--about-tablet-gutter);
    }

    /* Hero: text above full-width image */
    .about-hero {
        padding: 54px 0 66px;
    }

    .about-hero__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .about-hero__content {
        max-width: 880px;
    }

    .about-hero__eyebrow {
        margin-bottom: 28px;
        font-size: 11px;
        letter-spacing: 0.22em;
    }

    .about-hero h1 {
        max-width: 900px;
        font-size: clamp(52px, 6.4vw, 66px);
        line-height: 0.98;
    }

    .about-hero__description {
        max-width: 860px;
        margin-top: 24px;
        font-size: 17px;
        line-height: 1.52;
    }

    .about-hero__media {
        order: initial;
        width: 100%;
        max-width: none;
        aspect-ratio: 1.92;
        justify-self: stretch;
    }

    .about-hero__media img {
        object-position: center;
    }

    /* Standard about sections */
    .about-section {
        padding: var(--about-tablet-section-y) 0;
    }

    .about-section__inner {
        display: block;
    }

    .about-section__meta {
        margin: 0 0 30px;
        padding-top: 0;
        font-size: 11px;
        letter-spacing: 0.22em;
    }

    .about-section__intro {
        display: block;
    }

    .about-section__eyebrow {
        margin-bottom: 18px;
        font-size: 11px;
    }

    .about-section__subtitle,
    .about-section__title,
    .about-section--portfolio .about-section__title {
        max-width: 900px;
        font-size: clamp(48px, 5.7vw, 62px);
        line-height: 0.98;
    }

    .about-section__subtitle::after {
        width: 88px;
        height: 3px;
        margin-top: 24px;
    }

    .about-section__body,
    .about-section--portfolio .about-section__body {
        max-width: 900px;
        margin-top: 34px;
        font-size: 17px;
        line-height: 1.55;
    }

    .about-section__body p {
        margin-bottom: 26px;
    }

    /* Portfolio: heading + 2 x 2 cards */
    .about-section--portfolio .about-section__meta {
        margin-bottom: 28px;
    }

    .about-section--portfolio .about-section__body {
        color: #fffdf9;
    }

    .about-section--portfolio .about-portfolio-grid,
    .about-portfolio-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
        margin-top: 48px;
    }

    .about-portfolio-card {
        min-height: 250px;
        padding: 30px 28px 28px;
    }

    .about-portfolio-card__code {
        margin-bottom: 26px;
        font-size: 10px;
    }

    .about-portfolio-card__code::before {
        width: 12px;
        height: 12px;
    }

    .about-portfolio-card h3 {
        margin-bottom: 20px;
        font-size: clamp(30px, 3.6vw, 38px);
        line-height: 1.03;
    }

    .about-portfolio-card__text {
        font-size: 16px;
        line-height: 1.48;
    }

    /* Leadership */
    .about-section--leadership .about-section__meta {
        margin-bottom: 28px;
    }

    .about-leadership-list {
        gap: 20px;
        margin-top: 42px;
    }

    .about-leadership-card {
        grid-template-columns: 220px minmax(0, 1fr);
        min-height: 250px;
    }

    .about-leadership-card__visual {
        min-height: 250px;
    }

    .about-leadership-card__content {
        padding: 28px 30px 28px;
    }

    .about-leadership-card__head {
        margin-bottom: 12px;
    }

    .about-leadership-card__number,
    .about-leadership-card__eyebrow {
        font-size: 9px;
        letter-spacing: 0.18em;
    }

    .about-leadership-card h3 {
        font-size: clamp(27px, 3vw, 34px);
        line-height: 1.04;
    }

    .about-leadership-card__role {
        margin: 8px 0 15px;
        font-size: 14px;
    }

    .about-leadership-card__bio {
        font-size: 14px;
        line-height: 1.5;
    }

    .about-leadership-card__bio p {
        margin-bottom: 14px;
    }

    .about-leadership-card__visual span {
        font-size: 54px;
    }
}

/* Slightly tighter handling around the exact 1024px canvas */
@media (min-width: 960px) and (max-width: 1100px) {
    .about-page {
        --about-tablet-gutter: 48px;
    }

    .about-hero__media {
        aspect-ratio: 1.94;
    }

    .about-leadership-card {
        grid-template-columns: 228px minmax(0, 1fr);
    }
}

.about-hero__title--tablet {
    display: none;
}

@media (min-width: 768px) and (max-width: 1100px) {
    .about-hero__title--default {
        display: none;
    }

    .about-hero__title--tablet {
        display: block;
        width: 100%;
        max-width: none;
        margin: 0;
        font-size: clamp(44px, 5.4vw, 56px);
        line-height: 1;
        white-space: nowrap;
    }
}

/* =========================================================
   ABOUT PAGE - MOBILE 390
   Matched to the supplied 390px Figma reference
   ========================================================= */

@media (max-width: 767px) {
    .about-page {
        --about-mobile-gutter: 20px;
        --about-mobile-section-y: 58px;
    }

    /* Shared mobile containers */
    .about-hero__inner,
    .about-section__inner {
        width: 100%;
        max-width: none;
        margin-inline: auto;
        padding-inline: var(--about-mobile-gutter);
    }

    /* Hero */
    .about-hero {
        padding: 34px 0 0;
    }

    .about-hero__inner {
        display: flex;
        flex-direction: column;
        gap: 28px;
    }

    .about-hero__content {
        order: 1;
    }

    .about-hero__content {
        max-width: none;
    }

    .about-hero__eyebrow {
        margin-bottom: 20px;
        font-size: 9px;
        letter-spacing: 0.22em;
    }

    /* Mobile keeps the manually broken ACF title */
    .about-hero__title--default {
        display: block;
    }

    .about-hero__title--tablet {
        display: none;
    }

    .about-hero h1,
    .about-hero__title--default {
        max-width: 330px;
        margin: 0;
        font-size: clamp(40px, 12vw, 48px);
        line-height: 0.9;
        white-space: normal;
    }

    .about-hero__description {
        max-width: 338px;
        margin-top: 22px;
        font-size: 15px;
        line-height: 1.42;
    }

    .about-hero__media {
        order: 2;
        width: 100%;
        max-width: none;
        margin: 0;
        aspect-ratio: 1.55;
    }

    .about-hero__media img {
        object-position: center;
    }

    /* Company */
    .about-section {
        padding: var(--about-mobile-section-y) 0;
    }

    .about-section__inner {
        display: block;
    }

    .about-section__meta {
        margin: 0 0 20px;
        padding: 0;
        gap: 14px;
        font-size: 9px;
        letter-spacing: 0.2em;
    }

    .about-section__intro {
        display: block;
    }

    .about-section__eyebrow {
        margin-bottom: 14px;
        font-size: 9px;
    }

    .about-section__subtitle,
    .about-section__title,
    .about-section--portfolio .about-section__title {
        max-width: 340px;
        margin: 0;
        font-size: clamp(38px, 11vw, 46px);
        line-height: 0.94;
    }

    .about-section__subtitle::after {
        width: 60px;
        height: 2px;
        margin-top: 17px;
    }

    .about-section__body,
    .about-section--portfolio .about-section__body {
        max-width: none;
        margin-top: 26px;
        font-size: 15px;
        line-height: 1.48;
    }

    .about-section__body p {
        margin-bottom: 22px;
    }

    /* Portfolio */
    .about-section--portfolio {
        padding-top: 54px;
        padding-bottom: 58px;
    }

    .about-section--portfolio .about-section__meta {
        margin-bottom: 20px;
    }

    .about-section--portfolio .about-section__title {
        max-width: 330px;
    }

    .about-section--portfolio .about-section__body {
        margin-top: 22px;
        color: #fffdf9;
    }

    .about-section--portfolio .about-portfolio-grid,
    .about-portfolio-grid {
        grid-template-columns: 1fr;
        gap: 8px;
        margin-top: 30px;
    }

    .about-portfolio-card {
        min-height: 0;
        padding: 22px 20px 24px;
        border-width: 1px;
    }

    .about-portfolio-card__code {
        gap: 12px;
        margin-bottom: 16px;
        font-size: 9px;
        letter-spacing: 0.2em;
    }

    .about-portfolio-card__code::before {
        width: 9px;
        height: 9px;
    }

    .about-portfolio-card h3 {
        margin-bottom: 14px;
        font-size: 29px;
        line-height: 1;
    }

    .about-portfolio-card__text {
        font-size: 14px;
        line-height: 1.43;
    }

    /* Leadership */
    .about-section--leadership {
        padding-top: 56px;
        padding-bottom: 64px;
    }

    .about-section--leadership .about-section__meta {
        margin-bottom: 20px;
    }

    .about-section--leadership .about-section__title {
        max-width: 300px;
    }

    .about-leadership-list {
        gap: 10px;
        margin-top: 28px;
    }

    .about-leadership-card {
        display: grid;
        grid-template-columns: 1fr;
        min-height: 0;
        border-width: 1px;
    }

    .about-leadership-card__visual {
        width: 100%;
        min-height: 0;
        height: auto;
        aspect-ratio: 1.55;
    }

    .about-leadership-card__visual:has(img) {
        aspect-ratio: 0.92;
    }

    .about-leadership-card__visual img {
        object-position: center 22%;
    }

    .about-leadership-card__visual span {
        font-size: 56px;
    }

    .about-leadership-card__content {
        padding: 20px 18px 24px;
    }

    .about-leadership-card__head {
        flex-wrap: wrap;
        gap: 7px 10px;
        margin-bottom: 10px;
    }

    .about-leadership-card__number,
    .about-leadership-card__eyebrow {
        font-size: 8px;
        letter-spacing: 0.16em;
        line-height: 1.3;
    }

    .about-leadership-card h3 {
        font-size: 27px;
        line-height: 1;
    }

    .about-leadership-card__role {
        margin: 7px 0 13px;
        font-size: 12px;
        line-height: 1.35;
    }

    .about-leadership-card__bio {
        font-size: 13px;
        line-height: 1.43;
    }

    .about-leadership-card__bio p {
        margin-bottom: 14px;
    }

    /*
     * In the mobile reference, initials occupy a compact dark band
     * rather than a tall square.
     */
    .about-leadership-card__visual:not(:has(img)) {
        aspect-ratio: auto;
        min-height: 82px;
        height: 82px;
    }

    /* Footer proportions visible in the About mobile comp */
    .about-page + .site-footer .site-footer__newsletter,
    body:has(.about-page) .site-footer__newsletter {
        padding-top: 58px;
        padding-bottom: 46px;
    }

    body:has(.about-page) .site-footer__newsletter .site-footer__section-inner,
    body:has(.about-page) .site-footer__main-grid {
        gap: 36px;
    }

    body:has(.about-page) .site-footer__newsletter h2 {
        max-width: 320px;
        font-size: 39px;
        line-height: 0.92;
    }

    body:has(.about-page) .site-footer__signup {
        padding-top: 0;
    }

    body:has(.about-page) .site-footer__signup p {
        margin-bottom: 34px;
        font-size: 14px;
    }

    body:has(.about-page) .site-footer__main {
        padding-top: 48px;
        padding-bottom: 52px;
    }

    body:has(.about-page) .site-footer__bottom {
        padding-top: 22px;
        padding-bottom: 30px;
    }
}

@media (max-width: 420px) {
    .about-hero h1,
    .about-hero__title--default {
        font-size: 42px;
    }

    .about-section__subtitle,
    .about-section__title,
    .about-section--portfolio .about-section__title {
        font-size: 40px;
    }
}

/* =========================================================
   CONTACT PAGE - TABLET 768-1100
   Matched to the supplied 1024px Figma reference
   ========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {
    .contact-page {
        --contact-tablet-gutter: 48px;
        --contact-tablet-section-y: 72px;
    }

    /* Shared tablet container */
    .contact-hero__inner,
    .contact-form-section__inner {
        width: 100%;
        max-width: none;
        margin-inline: auto;
        padding-inline: var(--contact-tablet-gutter);
    }

    /* Hero */
    .contact-hero {
        padding: 72px 0 82px;
    }

    .contact-hero__eyebrow {
        margin-bottom: 30px;
        font-size: 11px;
        letter-spacing: 0.22em;
    }

    .contact-hero h1 {
        max-width: none;
        width: 100%;
        font-size: clamp(52px, 6.2vw, 64px);
        line-height: 0.98;
        white-space: nowrap;
    }

    .contact-hero__description {
        max-width: 860px;
        margin-top: 28px;
        font-size: 18px;
        line-height: 1.5;
    }

    /* Form area: stacked form + contact information */
    .contact-form-section {
        padding: 38px 0 54px;
    }

    .contact-form-section__inner {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .contact-form-section__form-panel {
        padding: 38px 34px 40px;
    }

    .contact-form-section__info-panel {
        padding: 44px 36px 48px;
    }

    .contact-form-section__eyebrow,
    .contact-form-section__label {
        margin-bottom: 22px;
        font-size: 11px;
        letter-spacing: 0.2em;
    }

    .contact-form-section__info-panel h2 {
        margin-bottom: 28px;
        font-size: clamp(46px, 5.2vw, 58px);
        line-height: 1;
    }

    .contact-form-section__block {
        margin-top: 30px;
    }

    .contact-form-section__text {
        font-size: 18px;
        line-height: 1.5;
    }

    /* Contact Form 7 */
    .contact-form-section .wpcf7 .cf7-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px 18px;
        margin-bottom: 20px;
    }

    .contact-form-section .wpcf7 .cf7-field {
        margin-bottom: 22px;
    }

    .contact-form-section .wpcf7 .cf7-field label {
        margin-bottom: 12px;
        font-size: 10px;
        letter-spacing: 0.18em;
    }

    .contact-form-section .wpcf7 input[type="text"],
    .contact-form-section .wpcf7 input[type="email"],
    .contact-form-section .wpcf7 input[type="tel"],
    .contact-form-section .wpcf7 textarea {
        padding: 17px 18px 16px;
        font-size: 16px;
    }

    .contact-form-section .wpcf7 textarea {
        min-height: 170px;
    }

    .contact-form-section .wpcf7 .wpcf7-submit {
        min-width: 118px;
        height: 52px;
        margin-top: 8px;
        padding-inline: 20px;
    }

    /* Footer proportions from tablet reference */
    body:has(.contact-page) .site-footer__newsletter {
        padding-top: 78px;
        padding-bottom: 66px;
    }

    body:has(.contact-page) .site-footer__newsletter .site-footer__section-inner {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    body:has(.contact-page) .site-footer__newsletter h2 {
        max-width: 760px;
        font-size: clamp(52px, 5.8vw, 66px);
        line-height: 0.96;
    }

    body:has(.contact-page) .site-footer__signup {
        padding-top: 0;
    }

    body:has(.contact-page) .site-footer__signup p {
        max-width: 760px;
        margin-bottom: 46px;
        font-size: 17px;
    }

    body:has(.contact-page) .site-footer__main {
        padding-top: 70px;
        padding-bottom: 74px;
    }

    body:has(.contact-page) .site-footer__main-grid {
        grid-template-columns: minmax(260px, 1fr) 180px 280px;
        gap: 54px;
    }

    body:has(.contact-page) .site-footer__logo img {
        width: min(100%, 300px);
    }

    body:has(.contact-page) .site-footer__bottom {
        padding-top: 26px;
        padding-bottom: 42px;
    }
}

/* Slightly tighter handling around the exact 1024px canvas */
@media (min-width: 960px) and (max-width: 1100px) {
    .contact-page {
        --contact-tablet-gutter: 48px;
    }

    .contact-form-section__form-panel,
    .contact-form-section__info-panel {
        width: 100%;
    }
}

/* Contact tablet: force both panels to full available width */
@media (min-width: 768px) and (max-width: 1100px) {
    .contact-form-section__inner {
        display: block;
        width: 100%;
        max-width: none;
        margin-inline: auto;
        padding-inline: var(--contact-tablet-gutter);
    }

    .contact-form-section__form-panel,
    .contact-form-section__info-panel {
        width: 100%;
        max-width: none;
        margin: 0;
    }

    .contact-form-section__info-panel {
        margin-top: 28px;
        padding: 48px;
    }
}

.contact-hero__title--tablet {
    display: none;
}

@media (min-width: 768px) and (max-width: 1100px) {
    .contact-hero__title--default {
        display: none;
    }

    .contact-hero__title--tablet {
        display: block;
        width: 100%;
        max-width: none;
        margin: 0;
        font-size: clamp(52px, 6.2vw, 64px);
        line-height: 0.98;
        white-space: nowrap;
    }
}

/* =========================================================
   PRODUCT PAGES - TABLET 768-1100
   Shared by FORZET, Tollovid, Galectovid and other products
   Matched to the supplied 1024px Figma reference
   ========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {
    .forzet-page {
        --product-tablet-gutter: 48px;
        --product-tablet-section-y: 78px;
    }

    /* Shared tablet containers */
    .forzet-intro,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner {
        width: 100%;
        max-width: none;
        margin-inline: auto;
        padding-inline: var(--product-tablet-gutter);
    }

    /* Hero: content first, full-width image below */
    .forzet-hero {
        display: flex;
        flex-direction: column;
        min-height: 0;
    }

    .forzet-hero__content {
        order: 1;
        min-height: 0;
        padding: 72px var(--product-tablet-gutter) 78px;
    }

    .forzet-hero__eyebrow,
    .forzet-hero__tagline,
    .forzet-intro__eyebrow,
    .forzet-science__eyebrow,
    .forzet-why-choose__eyebrow,
    .forzet-cards-section__eyebrow,
    .forzet-cta__eyebrow {
        margin-bottom: 24px;
        font-size: 10px;
        letter-spacing: 0.2em;
    }

    .forzet-hero h1 {
        max-width: 620px;
        margin-bottom: 24px;
        font-size: clamp(58px, 7vw, 72px);
        line-height: 0.93;
    }

    .page-id-1330 .forzet-hero h1 {
        max-width: 680px;
        font-size: clamp(54px, 6.5vw, 68px);
    }

    .forzet-hero__tagline {
        margin-bottom: 26px;
    }

    .forzet-hero__description {
        max-width: 670px;
        font-size: 17px;
        line-height: 1.55;
    }

    .forzet-hero__button {
        margin-top: 24px;
    }

    .forzet-hero__media {
        order: 2;
        min-height: 0;
        aspect-ratio: 1.72;
        width: 100%;
        margin: 0;
    }

    .forzet-hero__media img {
        object-position: center;
    }

    /* Intro: stacked content */
    .forzet-intro,
    .page-id-1330 .forzet-intro {
        display: grid;
        grid-template-columns: 1fr;
        gap: 44px;
        padding-top: var(--product-tablet-section-y);
        padding-bottom: var(--product-tablet-section-y);
    }

    .forzet-intro__brand,
    .page-id-1330 .forzet-intro__brand {
        font-size: clamp(64px, 8vw, 78px);
    }

    .forzet-intro__subtitle {
        margin-top: 12px;
        font-size: 30px;
    }

    .forzet-intro__right {
        max-width: 880px;
    }

    .forzet-intro__title,
    .page-id-1330 .forzet-intro__title {
        font-size: clamp(48px, 6vw, 60px);
        line-height: 0.98;
    }

    .forzet-intro__description {
        max-width: 900px;
        margin-top: 26px;
        font-size: 17px;
    }

    .forzet-intro__button {
        width: 100%;
        max-width: 460px;
        justify-content: space-between;
        margin-top: 26px;
        padding-inline: 22px;
    }

    /* Science */
    .forzet-science__inner,
    .page-id-1330 .forzet-science__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 28px;
        padding-top: 82px;
        padding-bottom: 82px;
    }

    .forzet-science h2 {
        max-width: 620px;
        font-size: clamp(50px, 6vw, 62px);
    }

    .forzet-science__content {
        max-width: 900px;
        padding-top: 0;
        font-size: 17px;
    }

    /* Why choose */
    .forzet-why-choose__inner {
        padding-top: 76px;
        padding-bottom: 72px;
    }

    .forzet-why-choose h2 {
        margin-bottom: 38px;
        font-size: clamp(48px, 5.8vw, 60px);
    }

    .forzet-why-choose--count-4 .forzet-why-choose__grid,
    .forzet-why-choose--count-5 .forzet-why-choose__grid,
    .forzet-why-choose--count-6 .forzet-why-choose__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .forzet-why-choose--count-5 .forzet-why-choose__card,
    .forzet-why-choose--count-5 .forzet-why-choose__card:nth-of-type(4),
    .forzet-why-choose--count-5 .forzet-why-choose__card:nth-of-type(5),
    .forzet-why-choose--count-6 .forzet-why-choose__card {
        grid-column: auto;
    }

    .forzet-why-choose__card {
        min-height: 166px;
        padding: 26px 18px 17px;
    }

    .forzet-why-choose__number {
        top: 14px;
        right: 14px;
        width: 30px;
        height: 30px;
        font-size: 9px;
    }

    .forzet-why-choose__card h3 {
        max-width: 260px;
        font-size: 20px;
    }

    /* Benefits / audience cards */
    .forzet-cards-section__inner {
        padding-top: 76px;
        padding-bottom: 74px;
    }

    .forzet-cards-section h2 {
        max-width: 800px;
        font-size: clamp(48px, 5.8vw, 60px);
    }

    .forzet-cards-section__intro {
        max-width: 800px;
        font-size: 17px;
    }

    .forzet-cards-section__grid,
    .forzet-cards-section--cols-2 .forzet-cards-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        margin-top: 38px;
    }

    .forzet-cards-section__card {
        grid-template-columns: 28% minmax(0, 1fr);
        min-height: 188px;
    }

    .forzet-cards-section__media img {
        min-height: 188px;
    }

    .forzet-cards-section__content {
        padding: 18px 16px 16px;
    }

    .forzet-cards-section__number {
        margin-bottom: 12px;
        font-size: 9px;
    }

    .forzet-cards-section__content h3 {
        padding-bottom: 18px;
        font-size: 19px;
    }

    .forzet-cards-section__description {
        margin-top: 11px;
        font-size: 12px;
        line-height: 1.4;
    }

    /* CTA */
    .forzet-cta__inner {
        padding-top: 82px;
        padding-bottom: 84px;
    }

    .forzet-cta h2 {
        max-width: 860px;
        font-size: clamp(52px, 6.3vw, 66px);
    }

    .forzet-cta__description {
        max-width: 860px;
        font-size: 17px;
    }

    /* Product page footer proportions */
    body:has(.forzet-page) .site-footer__newsletter {
        padding-top: 76px;
        padding-bottom: 66px;
    }

    body:has(.forzet-page) .site-footer__newsletter .site-footer__section-inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    body:has(.forzet-page) .site-footer__newsletter h2 {
        max-width: 820px;
        font-size: clamp(50px, 5.8vw, 64px);
    }

    body:has(.forzet-page) .site-footer__signup {
        padding-top: 0;
    }

    body:has(.forzet-page) .site-footer__signup p {
        max-width: 820px;
        margin-bottom: 42px;
        font-size: 16px;
    }

    body:has(.forzet-page) .site-footer__main {
        padding-top: 68px;
        padding-bottom: 72px;
    }

    body:has(.forzet-page) .site-footer__main-grid {
        grid-template-columns: minmax(250px, 1fr) 170px 270px;
        gap: 48px;
    }

    body:has(.forzet-page) .site-footer__bottom {
        padding-top: 26px;
        padding-bottom: 40px;
    }
}

/* =========================================================
   PRODUCT PAGES - MOBILE 390
   Shared by FORZET, Tollovid, Galectovid and other products
   Matched to the supplied 390px Figma reference
   ========================================================= */

@media (max-width: 767px) {
    .forzet-page {
        --product-mobile-gutter: 20px;
        --product-mobile-section-y: 58px;
    }

    /* Shared mobile containers */
    .forzet-intro,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner {
        width: 100%;
        max-width: none;
        margin-inline: auto;
        padding-inline: var(--product-mobile-gutter);
    }

    /* Hero: text first, full-width image below */
    .forzet-hero {
        display: flex;
        min-height: 0;
        flex-direction: column;
    }

    .forzet-hero__content {
        order: 1;
        min-height: 0;
        padding: 42px var(--product-mobile-gutter) 34px;
    }

    .forzet-hero__media {
        order: 2;
        width: 100%;
        min-height: 0;
        margin: 0;
        aspect-ratio: 1.72;
    }

    .forzet-hero__media img {
        object-position: center;
    }

    .forzet-hero__eyebrow,
    .forzet-hero__tagline,
    .forzet-intro__eyebrow,
    .forzet-science__eyebrow,
    .forzet-why-choose__eyebrow,
    .forzet-cards-section__eyebrow,
    .forzet-cta__eyebrow {
        margin-bottom: 18px;
        font-size: 8px;
        letter-spacing: 0.2em;
        line-height: 1.25;
    }

    .forzet-hero h1,
    .page-id-1330 .forzet-hero h1 {
        max-width: 340px;
        margin-bottom: 16px;
        font-size: clamp(42px, 12vw, 52px);
        line-height: 0.9;
    }

    .forzet-hero__tagline {
        margin-bottom: 18px;
        font-size: 8px;
    }

    .forzet-hero__description {
        max-width: 345px;
        font-size: 15px;
        line-height: 1.42;
    }

    .forzet-hero__description p {
        margin-bottom: 16px;
    }

    .forzet-hero__button {
        min-width: 192px;
        height: 46px;
        justify-content: space-between;
        margin-top: 20px;
        padding-inline: 20px;
        font-size: 14px;
    }

    /* Intro */
    .forzet-intro,
    .page-id-1330 .forzet-intro {
        display: grid;
        grid-template-columns: 1fr;
        gap: 30px;
        padding-top: var(--product-mobile-section-y);
        padding-bottom: var(--product-mobile-section-y);
    }

    .forzet-intro__brand,
    .page-id-1330 .forzet-intro__brand {
        font-size: clamp(48px, 14vw, 58px);
        line-height: 0.92;
    }

    .forzet-intro__subtitle {
        margin-top: 10px;
        font-size: 24px;
        line-height: 1;
    }

    .forzet-intro__title,
    .page-id-1330 .forzet-intro__title {
        font-size: clamp(38px, 11vw, 46px);
        line-height: 0.94;
    }

    .forzet-intro__description {
        max-width: none;
        margin-top: 20px;
        font-size: 15px;
        line-height: 1.43;
    }

    .forzet-intro__button {
        width: 176px;
        min-width: 0;
        height: 48px;
        justify-content: space-between;
        margin-top: 22px;
        padding-inline: 18px;
        font-size: 13px;
        white-space: normal;
    }

    /* Science */
    .forzet-science__inner,
    .page-id-1330 .forzet-science__inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 24px;
        padding-top: 58px;
        padding-bottom: 58px;
    }

    .forzet-science h2 {
        max-width: 330px;
        font-size: clamp(40px, 11vw, 48px);
        line-height: 0.92;
    }

    .forzet-science__content {
        max-width: none;
        padding-top: 0;
        font-size: 15px;
        line-height: 1.44;
    }

    /* Why choose */
    .forzet-why-choose__inner {
        padding-top: 52px;
        padding-bottom: 58px;
    }

    .forzet-why-choose h2 {
        max-width: 330px;
        margin-bottom: 28px;
        font-size: clamp(40px, 11vw, 48px);
        line-height: 0.92;
    }

    .forzet-why-choose--count-4 .forzet-why-choose__grid,
    .forzet-why-choose--count-5 .forzet-why-choose__grid,
    .forzet-why-choose--count-6 .forzet-why-choose__grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .forzet-why-choose--count-5 .forzet-why-choose__card,
    .forzet-why-choose--count-5 .forzet-why-choose__card:nth-of-type(4),
    .forzet-why-choose--count-5 .forzet-why-choose__card:nth-of-type(5),
    .forzet-why-choose--count-6 .forzet-why-choose__card {
        grid-column: auto;
    }

    .forzet-why-choose__card {
        min-height: 126px;
        padding: 42px 20px 16px;
    }

    .forzet-why-choose__number {
        top: 12px;
        right: 14px;
        width: 30px;
        height: 30px;
        font-size: 8px;
    }

    .forzet-why-choose__card h3 {
        max-width: 285px;
        font-size: 20px;
        line-height: 1.02;
    }

    .forzet-why-choose__dots {
        margin-top: 12px;
    }

    /* Key benefits and who can benefit */
    .forzet-cards-section__inner {
        padding-top: 58px;
        padding-bottom: 58px;
    }

    .forzet-cards-section h2 {
        max-width: 340px;
        font-size: clamp(40px, 11vw, 48px);
        line-height: 0.92;
    }

    .forzet-cards-section__intro {
        max-width: none;
        margin-top: 18px;
        font-size: 15px;
        line-height: 1.44;
    }

    .forzet-cards-section__grid,
    .forzet-cards-section--cols-2 .forzet-cards-section__grid {
        grid-template-columns: 1fr;
        gap: 8px;
        margin-top: 30px;
    }

    .forzet-cards-section__card {
        grid-template-columns: 29% minmax(0, 1fr);
        min-height: 150px;
    }

    .forzet-cards-section__media img {
        min-height: 150px;
        object-position: center;
    }

    .forzet-cards-section__content {
        padding: 14px 14px 13px;
    }

    .forzet-cards-section__number {
        margin-bottom: 9px;
        font-size: 8px;
    }

    .forzet-cards-section__content h3 {
        padding-bottom: 15px;
        font-size: 17px;
        line-height: 1.04;
    }

    .forzet-cards-section__content h3::after {
        width: 30px;
        height: 1px;
    }

    .forzet-cards-section__description {
        margin-top: 9px;
        font-size: 11px;
        line-height: 1.35;
    }

    /* CTA */
    .forzet-cta__inner {
        padding-top: 58px;
        padding-bottom: 60px;
    }

    .forzet-cta h2 {
        max-width: 340px;
        font-size: clamp(42px, 12vw, 50px);
        line-height: 0.92;
    }

    .forzet-cta__description {
        max-width: none;
        margin-top: 20px;
        font-size: 15px;
        line-height: 1.42;
    }

    .forzet-cta__button {
        min-width: 212px;
        height: 46px;
        justify-content: space-between;
        margin-top: 22px;
        padding-inline: 20px;
        font-size: 14px;
    }

    /* Product page footer */
    body:has(.forzet-page) .site-footer__newsletter {
        padding-top: 56px;
        padding-bottom: 46px;
    }

    body:has(.forzet-page) .site-footer__newsletter .site-footer__section-inner {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    body:has(.forzet-page) .site-footer__eyebrow {
        margin-bottom: 22px;
        font-size: 8px;
    }

    body:has(.forzet-page) .site-footer__newsletter h2 {
        max-width: 335px;
        font-size: 40px;
        line-height: 0.9;
    }

    body:has(.forzet-page) .site-footer__signup {
        padding-top: 0;
    }

    body:has(.forzet-page) .site-footer__signup p {
        max-width: 340px;
        margin-bottom: 28px;
        font-size: 14px;
        line-height: 1.42;
    }

    body:has(.forzet-page) .site-footer__form label {
        margin-bottom: 16px;
        font-size: 8px;
    }

    body:has(.forzet-page) .site-footer__form input,
    body:has(.forzet-page) .site-footer__form button {
        font-size: 14px;
    }

    body:has(.forzet-page) .site-footer__main {
        padding-top: 46px;
        padding-bottom: 48px;
    }

    body:has(.forzet-page) .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    body:has(.forzet-page) .site-footer__logo img {
        width: 240px;
    }

    body:has(.forzet-page) .site-footer__links h2,
    body:has(.forzet-page) .site-footer__contact h2 {
        margin-bottom: 22px;
        font-size: 8px;
    }

    body:has(.forzet-page) .site-footer__links ul {
        gap: 12px;
    }

    body:has(.forzet-page) .site-footer__links a,
    body:has(.forzet-page) .site-footer__contact a,
    body:has(.forzet-page) .site-footer__contact p {
        font-size: 14px;
        line-height: 1.42;
    }

    body:has(.forzet-page) .site-footer__contact p {
        margin-bottom: 16px;
    }

    body:has(.forzet-page) .site-footer__bottom {
        padding-top: 20px;
        padding-bottom: 26px;
        font-size: 8px;
    }

    body:has(.forzet-page) .site-footer__bottom .site-footer__section-inner {
        align-items: flex-start;
        gap: 20px;
    }
}

@media (max-width: 420px) {
    .forzet-hero h1,
    .page-id-1330 .forzet-hero h1 {
        font-size: 46px;
    }

    .forzet-intro__title,
    .page-id-1330 .forzet-intro__title,
    .forzet-science h2,
    .forzet-why-choose h2,
    .forzet-cards-section h2 {
        font-size: 42px;
    }

    .forzet-cta h2 {
        font-size: 44px;
    }
}

/* =========================================================
   PRODUCT MOBILE CARD FIX
   Keep image on the left and text on the right
   ========================================================= */

@media (max-width: 767px) {
    .forzet-cards-section__card {
        display: flex;
        min-height: 150px;
        align-items: stretch;
        overflow: hidden;
    }

    .forzet-cards-section__media {
        flex: 0 0 34%;
        width: 34%;
        min-width: 0;
        min-height: 150px;
        aspect-ratio: auto;
        overflow: hidden;
    }

    .forzet-cards-section__media img {
        display: block;
        width: 100%;
        height: 100%;
        min-height: 150px;
        object-fit: cover;
        object-position: center;
    }

    .forzet-cards-section__content {
        flex: 1 1 auto;
        width: auto;
        min-width: 0;
        padding: 14px 14px 13px;
        background: #fffdf9;
    }

    .forzet-cards-section__number,
    .forzet-cards-section__content h3,
    .forzet-cards-section__description {
        position: relative;
        z-index: 1;
    }
}

@media (max-width: 420px) {
    .forzet-cards-section__media {
        flex-basis: 32%;
        width: 32%;
    }

    .forzet-cards-section__content {
        padding: 13px 12px;
    }
}

/* =========================================================
   PRODUCT TABLET HERO IMAGE
   Taller frame so the full subject remains visible
   ========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {
    .forzet-hero__media {
        width: 100%;
        min-height: 0;
        margin: 0;
        aspect-ratio: 1.3;
        overflow: hidden;
    }

    .forzet-hero__media img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }
}

/* =========================================================
   PRODUCT TABLET HERO IMAGE - SHOW FULL IMAGE
   Prevent face and body cropping
   ========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {
    .forzet-hero__media {
        width: 100%;
        aspect-ratio: 16 / 9;
        margin: 0;
        overflow: hidden;
    }

    .forzet-hero__media img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
}

/* =========================================================
   HORIZONTAL OVERFLOW FIX
   Prevent product pages from exceeding the viewport width
   ========================================================= */

html,
body {
    max-width: 100%;
    overflow-x: clip;
}

.forzet-page,
.forzet-page main,
.forzet-page section,
.forzet-page .forzet-hero,
.forzet-page .forzet-intro,
.forzet-page .forzet-science,
.forzet-page .forzet-why-choose,
.forzet-page .forzet-cards-section,
.forzet-page .forzet-cta {
    max-width: 100%;
}

.forzet-page img,
.forzet-page svg,
.forzet-page video,
.forzet-page iframe {
    max-width: 100%;
}

.forzet-hero__content,
.forzet-hero__media,
.forzet-intro__left,
.forzet-intro__right,
.forzet-science__inner,
.forzet-science__content,
.forzet-why-choose__inner,
.forzet-cards-section__inner,
.forzet-cta__inner {
    min-width: 0;
}

/* Mobile-specific protection */
@media (max-width: 767px) {
    .forzet-page {
        width: 100%;
        overflow-x: clip;
    }

    .forzet-hero,
    .forzet-hero__content,
    .forzet-hero__media,
    .forzet-intro,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner {
        width: 100%;
        max-width: 100%;
    }

    .forzet-hero__content,
    .forzet-intro,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner {
        padding-right: var(--product-mobile-gutter, 20px);
        padding-left: var(--product-mobile-gutter, 20px);
    }

    .forzet-hero__media {
        margin-right: 0;
        margin-left: 0;
    }

    .forzet-hero__media img {
        width: 100%;
        max-width: 100%;
    }

    .forzet-hero h1,
    .forzet-intro__brand,
    .forzet-intro__title,
    .forzet-science h2,
    .forzet-why-choose h2,
    .forzet-cards-section h2,
    .forzet-cta h2 {
        overflow-wrap: anywhere;
    }

    .forzet-cards-section__card,
    .forzet-why-choose__card {
        max-width: 100%;
    }
}

/* =========================================================
   PRODUCT MOBILE INTRO BRAND
   Keep product name on one line without clipping
   ========================================================= */

@media (max-width: 767px) {
    .forzet-intro__brand,
    .page-id-1330 .forzet-intro__brand {
        width: 100%;
        max-width: none;
        font-size: clamp(34px, 10.5vw, 42px);
        line-height: 1;
        white-space: nowrap;
        overflow-wrap: normal;
        word-break: normal;
    }
}

@media (max-width: 390px) {
    .forzet-intro__brand,
    .page-id-1330 .forzet-intro__brand {
        font-size: 36px;
    }
}

/* =========================================================
   INVEST NOW
   Uses the same container, typography and spacing system
   as the rest of the Tollo Health website.
   ========================================================= */

.invest-page {
    color: var(--th-color-text);
    background: var(--th-color-section);
}

.invest-page h1,
.invest-page h2,
.invest-page h3,
.invest-page h4 {
    margin-top: 0;
    font-family: var(--th-font-display);
    font-weight: 400;
    letter-spacing: 0;
}

.invest-page img {
    display: block;
    width: 100%;
}

.invest-button,
.invest-final-cta__button {
    display: inline-flex;
    width: fit-content;
    min-width: 144px;
    height: 48px;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 0 18px;
    color: #fffdf9;
    background: var(--th-color-ink);
    border: 1px solid var(--th-color-ink);
    font-family: var(--th-font-body);
    font-size: var(--th-type-button);
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.invest-dots {
    position: relative;
    display: inline-block;
    width: 64px;
    height: 12px;
    flex: 0 0 auto;
}

.invest-dots::before {
    position: absolute;
    top: 5px;
    left: 0;
    width: 42px;
    height: 1px;
    background: rgba(36, 21, 44, 0.32);
    content: "";
}

.invest-dots::after {
    position: absolute;
    top: 2px;
    left: 49px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #61b0de;
    box-shadow: 14px 0 0 #cf59b8;
    content: "";
}

/* Hero */
.invest-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    min-height: clamp(660px, 74vh, 860px);
    overflow: hidden;
    background: var(--th-color-surface);
    border-bottom: 1px solid var(--th-color-border);
}

.invest-hero__media {
    min-width: 0;
    overflow: hidden;
    background: #e8e2de;
}

.invest-hero__media img {
    height: 100%;
    object-fit: cover;
}

.invest-hero__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: clamp(64px, 6vw, 108px) clamp(42px, 6vw, 112px);
}

.invest-hero h1 {
    max-width: 720px;
    margin: 0 0 28px;
    color: var(--th-color-text);
    font-size: var(--th-type-display-xl);
    line-height: var(--th-leading-display-tight);
}

.invest-hero h1 em {
    color: var(--th-color-accent);
    font-style: italic;
}

.invest-hero__description,
.invest-about__description,
.invest-opportunity__head,
.invest-use__description,
.invest-final-cta__description,
.invest-pipeline__body {
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: var(--th-type-body-lg);
    line-height: var(--th-leading-body);
}

.invest-hero__description {
    max-width: 620px;
    margin-bottom: 28px;
}

.invest-hero__description p,
.invest-about__description p,
.invest-opportunity__head p,
.invest-use__description p,
.invest-final-cta__description p,
.invest-pipeline__body p {
    margin: 0 0 20px;
}

.invest-about__description p {
    margin-top: 25px;
}

.invest-hero__description p:last-child,
.invest-about__description p:last-child,
.invest-opportunity__head p:last-child,
.invest-use__description p:last-child,
.invest-final-cta__description p:last-child,
.invest-pipeline__body p:last-child {
    margin-bottom: 0;
}

.invest-hero__note {
    max-width: 620px;
    margin: 18px 0 0;
    color: #746b78;
    font-family: var(--th-font-body);
    font-size: var(--th-type-caption);
    line-height: var(--th-leading-body-compact);
}

/* Shared section system */
.invest-about,
.invest-opportunity,
.invest-use {
    background: var(--th-color-section);
}

.invest-about__inner,
.invest-org-chart__inner,
.invest-opportunity__inner,
.invest-use__inner,
.invest-final-cta__inner,
.invest-pipeline__items {
    width: min(100% - 64px, var(--th-page-max));
    margin-right: auto;
    margin-left: auto;
}

.invest-about h2,
.invest-opportunity h2,
.invest-use h2 {
    margin: 0;
    color: var(--th-color-text);
    font-size: var(--th-type-display-md);
    line-height: var(--th-leading-display);
}

/* About */
.invest-about__inner {
    padding: clamp(82px, 7vw, 128px) 0;
}

.invest-about__intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
    gap: clamp(56px, 8vw, 140px);
    align-items: start;
    margin-bottom: clamp(54px, 5vw, 72px);
}

.invest-about__eyebrow {
    margin: 22px 0 0;
    color: var(--th-color-accent);
    font-family: var(--th-font-display);
    font-size: clamp(26px, 2.4vw, 38px);
    font-style: italic;
    line-height: 1.05;
}

.invest-about__media {
    overflow: hidden;
}

.invest-about__media img {
    aspect-ratio: 1.75;
    object-fit: cover;
}

.invest-about h3 {
    max-width: 1120px;
    margin: 0 0 34px;
    color: var(--th-color-text);
    font-size: var(--th-type-display-sm);
    line-height: var(--th-leading-heading);
}

.invest-about__cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
    gap: 20px;
}

.invest-about__card {
    min-width: 0;
    min-height: 194px;
    padding: 28px 28px 26px;
    background: var(--th-color-surface);
    border: 1px solid var(--th-color-border);
}

.invest-about__card-marker {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    color: #61b0de;
    font-family: var(--th-font-mono);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}

.invest-about__card-dot {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #61b0de;
}

.invest-about__card:nth-child(2n) .invest-about__card-dot {
    background: #cf59b8;
}

.invest-about__card:nth-child(3n) .invest-about__card-dot {
    background: #ef5c68;
}

.invest-about__card h4 {
    margin: 18px 0 12px;
    color: var(--th-color-text);
    font-size: var(--th-type-card);
    line-height: var(--th-leading-heading);
}

.invest-about__card-text {
    color: #574c5a;
    font-family: var(--th-font-body);
    font-size: var(--th-type-body-sm);
    line-height: var(--th-leading-body-compact);
}

.invest-about__card-text p {
    margin: 0 0 14px;
}

.invest-about__card-text p:last-child {
    margin-bottom: 0;
}

/* Organization chart */
.invest-org-chart {
    background: var(--th-color-section);
}

.invest-org-chart__inner {
    width: min(100% - 64px, var(--th-page-max));
    margin-right: auto;
    margin-left: auto;
    padding: 0 0 clamp(82px, 7vw, 128px);
}

.invest-org-chart__parent {
    width: min(100%, 320px);
    margin: 0 auto;
    padding: 28px 34px 30px;
    color: #fffdf9;
    background: var(--th-color-ink);
    text-align: center;
}

.invest-org-chart__parent p {
    margin: 0 0 10px;
    color: #61b0de;
    font-family: var(--th-font-label);
    font-size: var(--th-type-label);
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: var(--th-leading-label);
    text-transform: uppercase;
}

.invest-org-chart__parent h3 {
    margin: 0;
    color: #fffdf9;
    font-size: var(--th-type-display-sm);
    line-height: var(--th-leading-heading);
}

.invest-org-chart__branch {
    position: relative;
    width: min(100%, 780px);
    height: 92px;
    margin: 0 auto;
}

.invest-org-chart__branch::before {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    background: #61b0de;
    content: "";
}

.invest-org-chart__branch span {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: #61b0de;
}

.invest-org-chart__branch span::before,
.invest-org-chart__branch span::after {
    position: absolute;
    top: 0;
    width: 1px;
    height: 34px;
    background: #61b0de;
    content: "";
}

.invest-org-chart__branch span::before {
    left: 0;
}

.invest-org-chart__branch span::after {
    right: 0;
}

.invest-org-chart__companies {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.invest-org-chart__company {
    min-width: 0;
    min-height: 132px;
    padding: 28px 28px 26px;
    background: var(--th-color-surface);
    border: 1px solid var(--th-color-border);
}

.invest-org-chart__marker {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 14px;
    color: #61b0de;
    font-family: var(--th-font-label);
    font-size: var(--th-type-label);
    font-weight: 700;
    line-height: 1;
}

.invest-org-chart__dot {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #61b0de;
}

.invest-org-chart__company:nth-child(2n) .invest-org-chart__dot {
    background: #cf59b8;
}

.invest-org-chart__company:nth-child(3n) .invest-org-chart__dot {
    background: #ef5c68;
}

.invest-org-chart__company h3 {
    margin: 0 0 8px;
    color: var(--th-color-text);
    font-size: var(--th-type-display-sm);
    line-height: var(--th-leading-heading);
}

.invest-org-chart__company p {
    margin: 0;
    color: #574c5a;
    font-family: var(--th-font-label);
    font-size: var(--th-type-label);
    font-weight: 700;
    letter-spacing: 0.18em;
    line-height: var(--th-leading-label);
    text-transform: uppercase;
}

/* Pipeline */
.invest-pipeline {
    padding-bottom: clamp(82px, 7vw, 128px);
    background: var(--th-color-section);
}

.invest-pipeline__head {
    padding: clamp(82px, 7vw, 128px) max(32px, calc((100vw - var(--th-page-max)) / 2 + 32px));
    color: #fffdf9;
    background: var(--th-color-ink);
}

.invest-pipeline__head h2 {
    max-width: 1000px;
    margin: 0 0 26px;
    font-size: var(--th-type-display-md);
    line-height: var(--th-leading-display);
}

.invest-pipeline__head p {
    max-width: 820px;
    margin: 0;
    color: #fff;
    font-family: var(--th-font-body);
    font-size: var(--th-type-body-lg);
    line-height: var(--th-leading-body);
}

.invest-pipeline__items {
    display: grid;
    gap: 34px;
    margin-top: clamp(48px, 5vw, 72px);
}

.invest-pipeline__item,
.invest-pipeline__item.is-reversed {
    display: grid;
    grid-template-columns: minmax(280px, 0.38fr) minmax(0, 1fr);
    min-width: 0;
    overflow: hidden;
    background: var(--th-color-surface);
    border: 1px solid var(--th-color-border);
}

.invest-pipeline__side {
    padding: 38px 36px;
    background: var(--th-color-surface);
}

.invest-pipeline__item.is-reversed .invest-pipeline__side {
    color: #fffdf9;
    background: var(--th-color-ink);
}

.invest-pipeline__side p {
    margin: 0 0 22px;
    color: var(--th-color-accent);
    font-family: var(--th-font-label);
    font-size: var(--th-type-label);
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: var(--th-leading-label);
    text-transform: uppercase;
}

.invest-pipeline__item.is-reversed .invest-pipeline__side p {
    color: #61b0de;
}

.invest-pipeline__side h3 {
    margin: 0 0 28px;
    font-size: var(--th-type-display-sm);
    line-height: var(--th-leading-heading);
}

.invest-pipeline__side img {
    aspect-ratio: 1.15;
    object-fit: cover;
}

.invest-pipeline__body {
    align-self: center;
    padding: clamp(38px, 4vw, 64px);
}

.invest-pipeline__body .invest-button {
    margin-top: 28px;
}

/* Opportunity */
.invest-opportunity__inner {
    padding: clamp(92px, 7vw, 120px) 0 clamp(96px, 7.2vw, 128px);
}

.invest-opportunity__head {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1.1fr);
    gap: clamp(56px, 8vw, 128px);
    align-items: start;
    margin-bottom: clamp(54px, 5vw, 72px);
}

.invest-opportunity__head h2 {
    max-width: 620px;
}

.invest-opportunity__head > div:first-child p {
    max-width: 560px;
    margin: 14px 0 0;
    color: var(--th-color-accent);
    font-family: var(--th-font-display);
    font-size: clamp(30px, 2.55vw, 42px);
    font-style: italic;
    line-height: 1.12;
}

.invest-opportunity__head > div:last-child {
    max-width: 760px;
    padding-top: 8px;
    color: #574c5a;
    font-size: var(--th-type-body-lg);
    line-height: var(--th-leading-body);
}

.invest-opportunity__table {
    margin: 0;
    color: var(--th-color-text);
    background: #61b0de;
    border: 1px solid rgba(36, 21, 44, 0.18);
}

.invest-opportunity__table div {
    display: grid;
    grid-template-columns: minmax(280px, 0.68fr) minmax(0, 1.32fr);
    min-height: clamp(92px, 7vw, 132px);
    align-items: center;
    border-bottom: 1px solid rgba(36, 21, 44, 0.16);
}

.invest-opportunity__table div:last-child {
    border-bottom: 0;
}

.invest-opportunity__table dt,
.invest-opportunity__table dd {
    margin: 0;
}

.invest-opportunity__table dt {
    padding: 28px clamp(34px, 3.3vw, 58px);
    font-family: var(--th-font-mono);
    font-size: clamp(14px, 1vw, 18px);
    font-weight: 700;
    line-height: var(--th-leading-label);
    letter-spacing: 0;
}

.invest-opportunity__table dd {
    padding: 28px clamp(34px, 3.6vw, 64px);
    font-family: var(--th-font-display);
    font-size: clamp(30px, 2.25vw, 42px);
    font-weight: 400;
    line-height: 1.05;
}

.invest-opportunity__table div:first-child dd {
    font-family: var(--th-font-body);
    font-size: clamp(18px, 1.35vw, 24px);
    font-weight: 800;
    line-height: var(--th-leading-body-compact);
}

/* Use of funds */
.invest-use__inner {
    display: grid;
    grid-template-columns: minmax(0, 0.78fr) minmax(480px, 0.92fr);
    gap: clamp(72px, 9vw, 150px);
    align-items: start;
    padding: clamp(84px, 7vw, 116px) 0 clamp(96px, 7vw, 128px);
}

.invest-use__description {
    max-width: 660px;
    margin-top: 36px;
}

.invest-use__list {
    margin: 0;
    padding: 0;
    background: var(--th-color-surface);
    border: 1px solid var(--th-color-border);
    list-style: none;
}

.invest-use__list li {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    min-height: clamp(92px, 7vw, 126px);
    align-items: center;
    padding: 24px clamp(34px, 4vw, 58px);
    color: var(--th-color-text);
    font-family: var(--th-font-display);
    font-size: clamp(30px, 2.35vw, 42px);
    line-height: var(--th-leading-heading);
    border-bottom: 1px solid var(--th-color-border);
}

.invest-use__list li:last-child {
    border-bottom: 0;
}

.invest-use__list span {
    color: var(--th-color-accent);
    font-family: var(--th-font-mono);
    font-size: var(--th-type-label);
    font-weight: 700;
    line-height: 1;
}

/* Final CTA */
.invest-final-cta {
    color: #fffdf9;
    background: var(--th-color-ink);
}

.invest-final-cta__inner {
    padding: clamp(108px, 9vw, 152px) 0 clamp(92px, 8vw, 126px);
}

.invest-final-cta h2 {
    max-width: 1240px;
    margin: 0 0 42px;
    color: #fffdf9;
    font-size: var(--th-type-display-md);
    line-height: var(--th-leading-display);
}

.invest-final-cta__highlight {
    max-width: 1260px;
    margin: 0 0 48px;
    color: #61b0de;
    font-family: var(--th-font-display);
    font-size: clamp(38px, 3.6vw, 58px);
    font-style: italic;
    line-height: 1.08;
}

.invest-final-cta__description {
    max-width: 1160px;
    margin-bottom: 42px;
    color: #fffdf9;
    font-size: var(--th-type-body-lg);
    line-height: var(--th-leading-body);
}

.invest-final-cta__button {
    display: inline-flex;
    min-width: min(100%, 390px);
    min-height: 64px;
    justify-content: space-between;
    padding: 22px 34px;
    color: var(--th-color-ink);
    background: var(--th-color-surface);
    border-color: var(--th-color-surface);
}

.invest-final-cta__disclaimer {
    max-width: none;
    width: 100vw;
    margin: clamp(104px, 9vw, 148px) 50% clamp(-126px, -8vw, -92px);
    padding: clamp(48px, 4.5vw, 66px) max(32px, calc((100vw - var(--th-page-max)) / 2 + 32px));
    color: #746b78;
    background: var(--th-color-section);
    font-family: var(--th-font-body);
    font-size: var(--th-type-caption);
    line-height: var(--th-leading-body-compact);
    text-align: center;
    transform: translateX(-50%);
}

.invest-final-cta__disclaimer p {
    max-width: 1280px;
    margin: 0 auto;
}

/* =========================================================
   INVEST NOW - TABLET 1024 ALIGNMENT
   Matches the supplied 1024px tablet design.
   ========================================================= */
@media (min-width: 768px) and (max-width: 1100px) {
    .invest-page {
        overflow-x: clip;
    }

    .invest-about__inner,
    .invest-org-chart__inner,
    .invest-opportunity__inner,
    .invest-use__inner,
    .invest-final-cta__inner,
    .invest-pipeline__items {
        width: calc(100% - 96px);
        max-width: none;
    }

    /* Hero: image first, text below */
    .invest-hero {
        display: flex;
        min-height: 0;
        flex-direction: column;
    }

    .invest-hero__media {
        order: 1;
        width: 100%;
        height: clamp(390px, 42vw, 430px);
    }

    .invest-hero__media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }

    .invest-hero__content {
        order: 2;
        padding: 72px 48px 64px;
    }

    .invest-hero h1 {
        max-width: 760px;
        margin-bottom: 26px;
        font-size: var(--th-type-display-xl);
        line-height: var(--th-leading-display-tight);
    }

    .invest-hero__description,
    .invest-hero__note {
        max-width: 900px;
    }

    .invest-hero__description {
        margin-bottom: 26px;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-hero__note {
        margin-top: 20px;
        font-size: 12px;
        line-height: 1.45;
    }

    /* About */
    .invest-about__inner {
        padding: 86px 0 96px;
    }

    .invest-org-chart__inner {
        width: calc(100% - 96px);
        max-width: none;
        padding-bottom: 94px;
    }

    .invest-org-chart__parent {
        width: min(100%, 300px);
    }

    .invest-org-chart__branch {
        width: calc(100% - 180px);
        height: 72px;
    }

    .invest-org-chart__companies {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 16px;
    }

    .invest-org-chart__company {
        min-height: 118px;
        padding: 22px 20px 20px;
    }

    .invest-about__intro {
        display: flex;
        flex-direction: column;
        gap: 30px;
        margin-bottom: 58px;
    }

    .invest-about h2,
    .invest-opportunity h2,
    .invest-use h2 {
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
    }

    .invest-about__eyebrow {
        margin-top: 16px;
        font-size: 28px;
        line-height: 1.12;
    }

    .invest-about__description {
        max-width: 920px;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-about__media {
        width: 100%;
        margin-top: 8px;
    }

    .invest-about__media img {
        aspect-ratio: 2.05;
        object-position: center center;
    }

    .invest-about h3 {
        max-width: 760px;
        margin-bottom: 34px;
        font-size: var(--th-type-display-sm);
        line-height: var(--th-leading-heading);
    }

    .invest-about__cards {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .invest-about__card {
        min-height: 0;
        padding: 26px 26px 28px;
    }

    .invest-about__card h4 {
        margin: 16px 0 12px;
        font-size: var(--th-type-card);
        line-height: var(--th-leading-heading);
    }

    .invest-about__card-text {
        font-size: var(--th-type-body-sm);
        line-height: var(--th-leading-body-compact);
    }

    /* Pipeline */
    .invest-pipeline {
        padding-bottom: 94px;
    }

    .invest-pipeline__head {
        padding: 84px 48px 78px;
    }

    .invest-pipeline__head h2 {
        margin-bottom: 18px;
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
    }

    .invest-pipeline__head p {
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-pipeline__items {
        gap: 34px;
        margin-top: 48px;
    }

    .invest-pipeline__item,
    .invest-pipeline__item.is-reversed {
        grid-template-columns: 1fr;
    }

    .invest-pipeline__side {
        padding: 34px 38px 0;
    }

    .invest-pipeline__item.is-reversed .invest-pipeline__side {
        padding-bottom: 34px;
    }

    .invest-pipeline__item.is-reversed .invest-pipeline__side img {
        display: block;
        width: 100%;
    }

    .invest-pipeline__side p {
        margin-bottom: 18px;
    }

    .invest-pipeline__side h3 {
        margin-bottom: 26px;
        font-size: var(--th-type-display-sm);
        line-height: var(--th-leading-heading);
    }

    .invest-pipeline__side img {
        aspect-ratio: 2.25;
        object-position: center center;
    }

    .invest-pipeline__body {
        padding: 40px 38px 42px;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-pipeline__body .invest-button {
        margin-top: 26px;
    }

    /* Opportunity */
    .invest-opportunity__inner {
        padding: 92px 0 104px;
    }

    .invest-opportunity__head {
        display: block;
        margin-bottom: 42px;
    }

    .invest-opportunity__head h2 {
        max-width: 100%;
    }

    .invest-opportunity__head > div:first-child p {
        max-width: 100%;
        margin-top: 12px;
        font-size: 27px;
        line-height: 1.12;
    }

    .invest-opportunity__head > div:last-child {
        max-width: 900px;
        padding-top: 26px;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-opportunity__table div {
        grid-template-columns: 36% 64%;
        min-height: 86px;
    }

    .invest-opportunity__table dt {
        padding: 24px 28px;
        font-size: 13px;
    }

    .invest-opportunity__table dd {
        padding: 24px 30px;
        font-size: 28px;
    }

    .invest-opportunity__table div:first-child dd {
        font-size: 16px;
    }

    /* Use of funds */
    .invest-use__inner {
        display: block;
        padding: 92px 0 104px;
    }

    .invest-use__description {
        max-width: 900px;
        margin: 28px 0 38px;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-use__list li {
        grid-template-columns: 58px minmax(0, 1fr);
        min-height: 88px;
        padding: 22px 28px;
        font-size: var(--th-type-card);
    }

    /* Final CTA and disclaimer */
    .invest-final-cta__inner {
        padding: 94px 0 0;
    }

    .invest-final-cta h2 {
        max-width: 880px;
        margin-bottom: 30px;
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
    }

    .invest-final-cta__highlight {
        max-width: 880px;
        margin-bottom: 34px;
        font-size: 31px;
        line-height: 1.15;
    }

    .invest-final-cta__description {
        max-width: 880px;
        margin-bottom: 32px;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-final-cta__button {
        min-width: 294px;
        min-height: 54px;
        padding: 18px 24px;
    }

    .invest-final-cta__disclaimer {
        width: 100vw;
        margin: 84px 50% 0;
        padding: 38px 48px;
        font-size: 11px;
        line-height: 1.45;
        text-align: center;
        transform: translateX(-50%);
    }

    .invest-final-cta__disclaimer p {
        max-width: 920px;
    }
}
/* =========================================================
   INVEST NOW - MOBILE 390 FINAL ALIGNMENT
   Image-first hero, full-bleed pipeline heading and Figma spacing.
   ========================================================= */
@media (max-width: 767px) {
    .invest-page {
        overflow-x: clip;
    }

    /* Hero: full-width image first, copy underneath */
    .invest-hero {
        display: flex;
        flex-direction: column;
        min-height: 0;
        background: var(--th-color-surface);
    }

    .invest-hero__media {
        order: 1;
        width: 100%;
        height: clamp(220px, 61vw, 250px);
        min-height: 0;
    }

    .invest-hero__media img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }

    .invest-hero__content {
        order: 2;
        padding: 48px 22px 54px;
    }

    .invest-hero h1 {
        max-width: 340px;
        margin: 0 0 22px;
        font-size: var(--th-type-display-xl);
        line-height: var(--th-leading-display-tight);
        letter-spacing: -0.02em;
    }

    .invest-hero__description {
        max-width: 340px;
        margin: 0 0 24px;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-hero .invest-button {
        width: 100%;
        min-height: 48px;
        margin-top: 0;
        padding: 14px 18px;
    }

    .invest-hero__note {
        max-width: 340px;
        margin-top: 16px;
        font-size: 10px;
        line-height: 1.45;
    }

    /* Global mobile section rhythm */
    .invest-about__inner,
    .invest-org-chart__inner,
    .invest-opportunity__inner,
    .invest-use__inner,
    .invest-final-cta__inner,
    .invest-pipeline__items {
        width: calc(100% - 44px);
        max-width: none;
    }

    .invest-about__inner,
    .invest-org-chart__inner,
    .invest-opportunity__inner,
    .invest-use__inner {
        padding-top: 68px;
        padding-bottom: 72px;
    }

    .invest-org-chart__inner {
        width: calc(100% - 44px);
        max-width: none;
        padding-top: 0;
    }

    .invest-org-chart__parent {
        width: min(100%, 220px);
        padding: 22px 24px 24px;
    }

    .invest-org-chart__branch {
        display: none;
    }

    .invest-org-chart__companies {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 18px;
    }

    .invest-org-chart__company {
        min-height: 0;
        padding: 22px 20px 20px;
    }

    .invest-about h2,
    .invest-opportunity h2,
    .invest-use h2 {
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
        letter-spacing: -0.015em;
    }

    .invest-about__eyebrow,
    .invest-opportunity__head > div:first-child p {
        font-size: 23px;
        line-height: 1.08;
    }

    .invest-about__description,
    .invest-opportunity__head > p:not(:first-child),
    .invest-use__description {
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-about__intro {
        gap: 24px;
        margin-bottom: 40px;
    }

    .invest-about__media img {
        aspect-ratio: 1.75;
        object-fit: cover;
    }

    .invest-about h3 {
        margin: 42px 0 28px;
        font-size: var(--th-type-display-sm);
        line-height: var(--th-leading-heading);
    }

    .invest-about__card {
        padding: 22px 20px 24px;
    }

    .invest-about__card h4 {
        margin: 14px 0 10px;
        font-size: var(--th-type-card);
        line-height: var(--th-leading-heading);
    }

    .invest-about__card-text {
        font-size: var(--th-type-body-sm);
        line-height: var(--th-leading-body-compact);
    }

    /* Full-bleed dark section heading */
    .invest-pipeline {
        padding-bottom: 72px;
    }

    .invest-pipeline__head {
        width: 100vw;
        margin-left: calc(50% - 50vw);
        padding: 58px 22px 54px;
        background: #1c1022;
    }

    .invest-pipeline__head h2 {
        max-width: 320px;
        margin: 0 0 18px;
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
        letter-spacing: -0.015em;
    }

    .invest-pipeline__head p {
        max-width: 310px;
        margin: 0;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-pipeline__items {
        gap: 20px;
        margin-top: 20px;
    }

    .invest-pipeline__item,
    .invest-pipeline__item.is-reversed {
        grid-template-columns: 1fr;
    }

    .invest-pipeline__side {
        padding: 26px 20px 0;
    }

    .invest-pipeline__item.is-reversed .invest-pipeline__side {
        padding: 26px 20px 20px;
    }

    .invest-pipeline__side p {
        margin-bottom: 14px;
        font-size: 10px;
    }

    .invest-pipeline__side h3 {
        margin-bottom: 20px;
        font-size: var(--th-type-display-sm);
        line-height: var(--th-leading-heading);
    }

    .invest-pipeline__side img,
    .invest-pipeline__item.is-reversed .invest-pipeline__side img {
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 1.58;
        object-fit: cover;
        object-position: center;
    }

    .invest-pipeline__body {
        padding: 28px 20px 30px;
        font-size: var(--th-type-body-lg);
        line-height: var(--th-leading-body);
    }

    .invest-pipeline__body p {
        margin-bottom: 16px;
    }

    .invest-pipeline__body .invest-button {
        width: 100%;
        min-height: 44px;
        margin-top: 20px;
        padding: 13px 15px;
    }

    /* Opportunity and use-of-funds */
    .invest-opportunity__head {
        gap: 18px;
        margin-bottom: 30px;
    }

    .invest-opportunity__table dt,
    .invest-opportunity__table dd {
        padding-right: 18px;
        padding-left: 18px;
    }

    .invest-opportunity__table dt {
        padding-top: 16px;
        padding-bottom: 6px;
        font-size: 10px;
    }

    .invest-opportunity__table dd {
        padding-top: 0;
        padding-bottom: 18px;
        font-size: 19px;
        line-height: 1.18;
    }

    .invest-use__inner {
        gap: 28px;
    }

    .invest-use__list li {
        grid-template-columns: 34px minmax(0, 1fr);
        min-height: 64px;
        padding: 15px 18px;
    }

    /* Final CTA and disclaimer */
    .invest-final-cta__inner {
        padding-top: 64px;
        padding-bottom: 0;
    }

    .invest-final-cta h2 {
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
    }

    .invest-final-cta__highlight {
        font-size: 24px;
        line-height: 1.1;
    }

    .invest-final-cta__button {
        width: 100%;
        min-width: 0;
        min-height: 48px;
        padding: 14px 16px;
    }

    .invest-final-cta__disclaimer {
        width: 100vw;
        margin: 52px 50% 0;
        padding: 34px 22px;
        font-size: 9px;
        line-height: 1.45;
        transform: translateX(-50%);
    }
}
/* =========================================================
   FINAL SITE CONSISTENCY PASS - 2026-08-04
   Keeps homepage as the scale reference for the rest of site.
   ========================================================= */

html,
body,
.landing-page-content,
.homepage-content,
.about-page,
.contact-page,
.forzet-page,
.invest-page {
    max-width: 100%;
    overflow-x: clip;
}

@media (min-width: 1101px) {
    .forzet-hero {
        align-items: stretch;
    }

    .forzet-hero__content {
        padding-top: clamp(76px, 6vw, 108px);
        padding-bottom: clamp(76px, 6vw, 108px);
    }

    .forzet-hero__media,
    .forzet-hero__media img {
        min-height: 100%;
    }

    .forzet-intro__brand,
    .forzet-intro__title,
    .forzet-science h2,
    .forzet-why-choose h2,
    .forzet-cards-section h2,
    .forzet-cta h2,
    .about-section__title,
    .about-section__subtitle,
    .invest-about h2,
    .invest-about h3,
    .invest-opportunity h2,
    .invest-use h2,
    .invest-final-cta h2 {
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
    }

    .invest-about__card-text {
        font-size: var(--th-type-body-sm);
        line-height: var(--th-leading-body-compact);
    }
}

/* Final container alignment: page sections follow the same width as footer. */
.contact-hero__inner,
.contact-form-section__inner,
.about-hero__inner,
.about-section__inner,
.forzet-science__inner,
.forzet-why-choose__inner,
.forzet-cards-section__inner,
.forzet-cta__inner,
.definition-slider__slide,
.mechanism-section__inner,
.applications-section__inner,
.guidance-note-section__inner,
.invest-about__inner,
.invest-org-chart__inner,
.invest-opportunity__inner,
.invest-use__inner,
.invest-final-cta__inner,
.invest-pipeline__items {
    width: 100%;
    max-width: none;
    padding-right: var(--th-site-side-padding);
    padding-left: var(--th-site-side-padding);
}

@media (max-width: 1023px) {
    .contact-hero__inner,
    .contact-form-section__inner,
    .about-hero__inner,
    .about-section__inner,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner,
    .definition-slider__slide,
    .mechanism-section__inner,
    .applications-section__inner,
    .guidance-note-section__inner,
    .invest-about__inner,
    .invest-org-chart__inner,
    .invest-opportunity__inner,
    .invest-use__inner,
    .invest-final-cta__inner,
    .invest-pipeline__items {
        width: 100%;
        padding-right: 32px;
        padding-left: 32px;
    }
}

@media (max-width: 767px) {
    .contact-hero__inner,
    .contact-form-section__inner,
    .about-hero__inner,
    .about-section__inner,
    .forzet-science__inner,
    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner,
    .definition-slider__slide,
    .mechanism-section__inner,
    .applications-section__inner,
    .guidance-note-section__inner,
    .invest-about__inner,
    .invest-org-chart__inner,
    .invest-opportunity__inner,
    .invest-use__inner,
    .invest-final-cta__inner,
    .invest-pipeline__items {
        width: 100%;
        padding-right: 20px;
        padding-left: 20px;
    }
}

@media (min-width: 768px) and (max-width: 1100px) {
    .forzet-hero h1,
    .invest-hero h1 {
        font-size: var(--th-type-display-xl);
        line-height: var(--th-leading-display-tight);
    }

    .forzet-intro__brand,
    .forzet-intro__title,
    .forzet-science h2,
    .forzet-why-choose h2,
    .forzet-cards-section h2,
    .forzet-cta h2,
    .invest-about h2,
    .invest-about h3,
    .invest-opportunity h2,
    .invest-use h2,
    .invest-final-cta h2 {
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
    }

    .forzet-hero__content,
    .invest-hero__content {
        padding-top: 72px;
        padding-bottom: 72px;
    }

    .invest-about__card-text {
        font-size: var(--th-type-body-sm);
        line-height: var(--th-leading-body-compact);
    }
}

@media (max-width: 767px) {
    .forzet-hero__content,
    .invest-hero__content {
        padding-top: 54px;
        padding-bottom: 54px;
    }

    .forzet-hero h1,
    .invest-hero h1 {
        font-size: var(--th-type-display-xl);
        line-height: var(--th-leading-display-tight);
    }

    .forzet-intro__brand,
    .page-id-1330 .forzet-intro__brand,
    .forzet-intro__title,
    .forzet-science h2,
    .forzet-why-choose h2,
    .forzet-cards-section h2,
    .forzet-cta h2,
    .contact-hero h1,
    .about-hero h1,
    .about-section__title,
    .about-section__subtitle,
    .invest-about h2,
    .invest-about h3,
    .invest-opportunity h2,
    .invest-use h2,
    .invest-final-cta h2 {
        font-size: var(--th-type-display-md);
        line-height: var(--th-leading-display);
    }

    .forzet-intro__brand,
    .page-id-1330 .forzet-intro__brand {
        white-space: normal;
    }

    .forzet-why-choose__inner,
    .forzet-cards-section__inner,
    .forzet-cta__inner,
    .invest-about__inner,
    .invest-opportunity__inner,
    .invest-use__inner,
    .invest-final-cta__inner,
    .invest-pipeline__items {
        padding-top: var(--th-space-section);
        padding-bottom: var(--th-space-section);
    }

    .invest-about__card {
        min-height: 0;
        padding: 24px 22px;
    }

    .invest-about__card-text {
        font-size: var(--th-type-body-sm);
        line-height: var(--th-leading-body-compact);
    }
}

/* Product page section rhythm: keep repeated card sections from drifting too tall. */
.forzet-why-choose__inner,
.forzet-cards-section__inner {
    padding-top: clamp(52px, 4.2vw, 68px);
    padding-bottom: clamp(42px, 3.6vw, 58px);
}

.forzet-cards-section__eyebrow,
.forzet-why-choose__eyebrow {
    margin-bottom: 24px;
}

.forzet-cards-section__grid {
    margin-top: 34px;
    row-gap: 34px;
}

.forzet-why-choose__grid {
    margin-top: 34px;
}

.forzet-page .mechanism-section__inner {
    min-height: auto;
    padding-top: clamp(72px, 6vw, 96px);
    padding-bottom: clamp(72px, 6vw, 96px);
}

@media (min-width: 768px) and (max-width: 1100px) {
    .forzet-why-choose__cta {
        grid-column: 1;
        grid-row: 2;
    }

    .forzet-why-choose__inner,
    .forzet-cards-section__inner {
        padding-top: 52px;
        padding-bottom: 46px;
    }

    .forzet-cards-section__grid,
    .forzet-why-choose__grid {
        margin-top: 34px;
    }
}

@media (max-width: 767px) {
    .forzet-why-choose__cta {
        grid-column: 1;
        grid-row: auto;
    }

    .forzet-why-choose__button {
        width: 100%;
    }

    .forzet-why-choose__inner,
    .forzet-cards-section__inner {
        padding-top: 44px;
        padding-bottom: 40px;
    }

    .forzet-cards-section__eyebrow,
    .forzet-why-choose__eyebrow {
        margin-bottom: 18px;
    }

    .forzet-cards-section__grid,
    .forzet-why-choose__grid {
        margin-top: 28px;
        row-gap: 24px;
    }
}

.invest-final-cta__description {
    color: #d2c9d4;
}

/* Invest page rhythm: reduce stacked whitespace between consecutive sections. */
.invest-pipeline {
    padding-bottom: clamp(46px, 4vw, 64px);
}

.invest-pipeline__items {
    margin-top: clamp(34px, 3vw, 46px);
    gap: 28px;
}

.invest-opportunity__inner {
    padding-top: clamp(52px, 4.2vw, 68px);
    padding-bottom: clamp(46px, 4vw, 64px);
}

.invest-opportunity__head {
    gap: clamp(42px, 5vw, 84px);
    margin-bottom: clamp(34px, 3vw, 46px);
}

.invest-use__inner {
    gap: clamp(48px, 6vw, 96px);
    padding-top: clamp(52px, 4.2vw, 68px);
    padding-bottom: clamp(56px, 4.8vw, 76px);
}

.invest-final-cta__inner {
    padding-top: clamp(72px, 6vw, 100px);
    padding-bottom: clamp(72px, 6vw, 100px);
}

@media (max-width: 767px) {
    .invest-pipeline {
        padding-bottom: 40px;
    }

    .invest-opportunity__inner,
    .invest-use__inner,
    .invest-final-cta__inner {
        padding-top: 44px;
        padding-bottom: 42px;
    }

    .invest-opportunity__head,
    .invest-use__inner {
        gap: 28px;
    }
}

/* Dark section copy contrast. */
.forzet-science,
.mechanism-section,
.invest-pipeline,
.invest-final-cta {
    color: #d2c9d4;
}

.forzet-science__content,
.forzet-science__content p,
.mechanism-section__description,
.mechanism-section__description p,
.invest-pipeline__body,
.invest-pipeline__body p,
.invest-final-cta__description,
.invest-final-cta__description p {
    color: #d2c9d4;
}

/* Homepage product-style hero variant. */
.forzet-hero--homepage {
    background: #3156d3;
}

.forzet-hero--homepage .forzet-hero__content {
    color: #fff;
}

.forzet-hero--homepage .forzet-hero__eyebrow {
    color: #61b0de;
}

.forzet-hero--homepage h1,
.forzet-hero--homepage .forzet-hero__description,
.forzet-hero--homepage .forzet-hero__description p {
    color: #fff;
}

.forzet-hero--homepage h1 {
    margin-bottom: var(--th-space-4);
}

.forzet-hero--homepage h1 em {
    color: #f1b7e6;
}

.forzet-hero--homepage .forzet-hero__button {
    color: #000;
    background: #fff;
    border-color: #fff;
}

/* Keep contact card copy readable on the shared dark surface. */
.contact-form-section__info-panel,
.contact-form-section__info-panel .contact-form-section__text,
.contact-form-section__info-panel .contact-form-section__text a {
    color: #d2c9d4;
}

/* QA final pass: site-wide navigation, footer, and section consistency. */
.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
}

.admin-bar .site-header {
    top: 32px;
}

@media (max-width: 782px) {
    .admin-bar .site-header {
        top: 46px;
    }
}

.site-header__inner {
    max-width: none;
}

.site-header__nav > ul {
    justify-content: center;
}

.site-header__nav--invest > ul {
    justify-content: flex-end;
}

.site-header__cta {
    min-height: 50px;
    padding: 0 22px;
    font-size: 16px;
    line-height: 1;
}

@media (min-width: 1101px) {
    .site-header__nav > ul > li.menu-item-has-children::after {
        content: "";
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        height: 24px;
        display: block;
    }

    .site-header__nav > ul > li > .sub-menu {
        left: 0;
        right: auto;
        min-width: 230px;
        width: max-content;
        padding: 18px 22px;
        transform: translateY(8px);
    }

    .site-header__nav > ul > li:hover > .sub-menu,
    .site-header__nav > ul > li:focus-within > .sub-menu,
    .site-header__nav > ul > li > .sub-menu:hover,
    .site-header__nav > ul > li.is-submenu-open > .sub-menu {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
        visibility: visible;
    }

    .site-header__nav > ul > li > .sub-menu > li > a {
        justify-content: flex-start;
        width: 100%;
        padding: 10px 20px;
        text-align: left;
        white-space: nowrap;
    }
}

.site-footer .site-footer__section-inner {
    width: 100%;
    max-width: none;
    padding-inline: var(--th-site-side-padding);
}

.site-footer .site-footer__main-grid {
    grid-template-columns: minmax(320px, 1.15fr) minmax(190px, .72fr) minmax(170px, .62fr) minmax(250px, .88fr);
    gap: clamp(48px, 5vw, 104px);
    justify-content: stretch;
}

.site-footer .site-footer__logo {
    justify-self: start;
}

@media (min-width: 1101px) {
    body:has(.about-page) .site-footer .site-footer__section-inner,
    body:has(.contact-page) .site-footer .site-footer__section-inner,
    body:has(.forzet-page) .site-footer .site-footer__section-inner {
        width: 100%;
        max-width: none;
        padding-inline: var(--th-site-side-padding);
    }

    body:has(.about-page) .site-footer .site-footer__main-grid,
    body:has(.contact-page) .site-footer .site-footer__main-grid,
    body:has(.forzet-page) .site-footer .site-footer__main-grid {
        grid-template-columns: minmax(320px, 1.15fr) minmax(190px, .72fr) minmax(170px, .62fr) minmax(250px, .88fr);
        gap: clamp(48px, 5vw, 104px);
        justify-content: stretch;
    }
}

.site-footer__company h2 {
    margin: 0 0 54px;
    color: #c8bdca;
    font-family: var(--th-font-label);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.24em;
    line-height: 1.25;
    text-transform: uppercase;
}

.site-footer__company ul {
    display: grid;
    gap: 32px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer__company a {
    color: #fff;
    font-family: var(--th-font-body);
    font-size: 16px;
    line-height: 1.25;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.site-footer__form-note {
    color: #c7bec9;
    font-size: 13px;
    line-height: 1.35;
    margin: 12px 0 0;
}

@media (max-width: 1100px) {
    .site-footer__main-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 44px;
    }
}

@media (max-width: 767px) {
    .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }
}

.forzet-hero--homepage .forzet-hero__button {
    color: #fff;
    background: transparent;
    border-color: #fff;
    margin-top: var(--th-space-4);
}

.forzet-hero--homepage .forzet-hero__button:hover,
.forzet-hero--homepage .forzet-hero__button:focus {
    color: #3156d3;
    background: #fff;
}

.forzet-hero--homepage h2 {
    max-width: 620px;
    margin: 0 0 58px;
    color: #fff;
    font-family: var(--th-font-display);
    font-size: clamp(62px, 6.1vw, 88px);
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0;
}

.forzet-hero--homepage h2 em {
    color: #e5a4dd;
    font-style: italic;
    line-height: inherit;
}

.forzet-page .forzet-hero h1,
.product-cta-section h2 {
    line-height: 1.2;
}

.product-cta-section {
    width: 100vw;
    max-width: none;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}

.product-cta-section__inner {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    padding-right: var(--th-site-side-padding);
    padding-left: var(--th-site-side-padding);
}

.forzet-science__content,
.forzet-science__content p,
.mechanism-section__description,
.mechanism-section__description p,
.invest-pipeline__body,
.invest-pipeline__body p,
.invest-final-cta__description,
.invest-final-cta__description p {
    color: #d2c9d4 !important;
}

/* Invest pipeline cards alternate light/dark side panels; keep body copy readable on both. */
.invest-pipeline__item:not(.is-reversed) .invest-pipeline__side h3 {
    color: #24152c;
}

.invest-pipeline__body,
.invest-pipeline__body p {
    color: #574c5a !important;
}

.forzet-intro,
.forzet-science,
.forzet-why-choose,
.forzet-cards-section,
.forzet-cta,
.invest-about,
.invest-opportunity,
.invest-use,
.invest-final-cta {
    overflow-x: clip;
}

.forzet-intro {
    padding-top: clamp(58px, 5vw, 82px);
    padding-bottom: clamp(58px, 5vw, 82px);
}

.forzet-science {
    padding-top: clamp(64px, 5vw, 86px);
    padding-bottom: clamp(64px, 5vw, 86px);
}

.invest-final-cta__inner {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    padding-right: var(--th-site-side-padding);
    padding-left: var(--th-site-side-padding);
}

.invest-final-cta__disclaimer {
    box-sizing: border-box;
    width: 100vw;
    margin-right: 50%;
    margin-left: 50%;
    padding-right: max(var(--th-site-side-padding), calc((100vw - var(--th-page-max)) / 2 + var(--th-site-side-padding)));
    padding-left: max(var(--th-site-side-padding), calc((100vw - var(--th-page-max)) / 2 + var(--th-site-side-padding)));
    transform: translateX(-50%);
}

.invest-pipeline__head {
    box-sizing: border-box;
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    padding-right: var(--th-site-side-padding);
    padding-left: var(--th-site-side-padding);
}

.invest-about__description {
    margin-top: var(--th-space-3);
}

/* Health Lives Here keeps its imported Elementor design system inside our Tollo shell. */
body.elementor-page-1409 {
    --e-global-color-primary: #1D3667;
    --e-global-color-secondary: #D92429;
    --e-global-color-text: #1D4667;
    --e-global-color-accent: #BE1E2D;
    --e-global-color-4e6d699: #FFFFFF;
    --e-global-typography-primary-font-family: "Roboto Slab";
    --e-global-typography-primary-font-size: 30px;
    --e-global-typography-primary-font-weight: 900;
    --e-global-typography-secondary-font-family: "Roboto Slab";
    --e-global-typography-secondary-font-weight: 700;
    --e-global-typography-text-font-family: "Roboto";
    --e-global-typography-text-font-weight: 500;
    --e-global-typography-accent-font-family: "Roboto";
    --e-global-typography-accent-font-weight: 500;
}

body.elementor-page-1409 .elementor-invisible {
    visibility: visible !important;
    opacity: 1 !important;
    animation: none !important;
}

body.elementor-page-1409 .elementor-invisible *,
body.elementor-page-1409 .animated,
body.elementor-page-1409 .animated * {
    visibility: visible !important;
    opacity: 1 !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-5a5ef35c .elementor-button {
    color: #FFFFFF !important;
    background-color: #D92429 !important;
    border-color: #D92429 !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-5a5ef35c .elementor-button:hover,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-5a5ef35c .elementor-button:focus {
    color: #FFFFFF !important;
    background-color: #1D3667 !important;
    border-color: #1D3667 !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-65a1431d .elementor-heading-title,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-77b79ea4 .elementor-heading-title {
    color: #1C244B !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-450e2009,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-450e2009 p,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-23acc010,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-23acc010 p,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-38759f3,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-38759f3 p {
    color: #FFFFFF !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-7c9bbb18,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-7c9bbb18 p,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-3f85b65,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-3f85b65 p,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-07cea9c,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-07cea9c p,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-7502f3c9,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-7502f3c9 p {
    color: #324A6D !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-6da911ee .elementor-heading-title,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-6da911ee .elementor-cta__title {
    color: #FFFFFF !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-96c3eb6 .elementor-cta__title,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-cb81dce .elementor-cta__title,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-c776191 .elementor-cta__title {
    font-family: "Roboto Slab", sans-serif !important;
    font-size: 30px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    color: #FFFFFF !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-6da911ee .elementor-cta__description,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-6da911ee .elementor-cta__description p {
    color: #ECECEC !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2d2cb628,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2d2cb628 .elementor-heading-title,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2d2cb628 .elementor-widget-text-editor,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2d2cb628 .elementor-widget-text-editor p,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-227e421e,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-227e421e .elementor-heading-title,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-227e421e .elementor-widget-text-editor,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-227e421e .elementor-widget-text-editor p,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-227e421e .elementor-image-box-title,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-227e421e .elementor-image-box-description,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-152d6116,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-152d6116 .wpr-promo-box-title,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-152d6116 .wpr-promo-box-description,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-152d6116 .wpr-promo-box-description p {
    color: #FFFFFF !important;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-e6fd405 .elementor-image-box-description,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-ee2a6f7 .elementor-image-box-description {
    color: #FFFFFF !important;
}

body.elementor-page-1409 .elementor-widget-heading .elementor-heading-title,
body.elementor-page-1409 .elementor-widget-call-to-action .elementor-cta__title {
    font-family: "Roboto Slab", sans-serif;
    font-weight: 900;
}

body.elementor-page-1409 .elementor-widget-text-editor,
body.elementor-page-1409 .elementor-widget-call-to-action .elementor-cta__description,
body.elementor-page-1409 .wpr-promo-box-description {
    font-family: "Roboto", sans-serif;
    font-weight: 500;
}

body.elementor-page-1409 .elementor-widget-image .widget-image-caption,
body.elementor-page-1409 .wpr-promo-box-title {
    font-family: "Poppins", sans-serif;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-482a348 {
    overflow: hidden;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-483c998,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-acb7de3 {
    width: min(50%, 520px) !important;
    align-items: center;
    justify-content: center;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2dc0f2e,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-9020108 {
    text-align: center;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2dc0f2e img,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-9020108 img {
    width: min(100%, 360px) !important;
    height: auto !important;
    max-height: 470px !important;
    object-fit: contain;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-d3ef16e,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-24363b9 {
    align-items: end;
    gap: 28px;
}

body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-b126cd2 img,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-4a9ff77 img,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2bcfe95 img,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-69bf0c1 img,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-fb5c2f6 img,
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-47033f8 img {
    width: auto !important;
    max-width: 190px !important;
    max-height: 230px !important;
    object-fit: contain;
}

@media (max-width: 1024px) {
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-483c998,
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-acb7de3 {
        width: 100% !important;
    }

    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2dc0f2e img,
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-9020108 img {
        max-width: 300px !important;
        max-height: 390px !important;
    }
}

@media (max-width: 767px) {
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2dc0f2e img,
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-9020108 img {
        max-width: 240px !important;
        max-height: 310px !important;
    }

    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-b126cd2 img,
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-4a9ff77 img,
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-2bcfe95 img,
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-69bf0c1 img,
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-fb5c2f6 img,
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-47033f8 img {
        max-width: 118px !important;
        max-height: 150px !important;
    }
}

.forzet-cta__inner {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    padding-right: var(--th-site-side-padding);
    padding-left: var(--th-site-side-padding);
}

.invest-about__card {
    padding-bottom: 28px;
}

.invest-about__card-button {
    margin-top: 28px;
}

/* Health Lives Here Partners page inside the Tollo shell. */
body.elementor-page-1529 {
    --e-global-color-primary: #1D3667;
    --e-global-color-secondary: #D92429;
    --e-global-color-text: #1D4667;
    --e-global-color-accent: #BE1E2D;
    --e-global-typography-primary-font-family: "Roboto Slab";
    --e-global-typography-primary-font-weight: 900;
    --e-global-typography-text-font-family: "Roboto";
    --e-global-typography-text-font-weight: 700;
}

body.elementor-page-1529 .elementor-1529 {
    color: #1D4667;
    font-family: "Roboto", sans-serif;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-f0c22b7 {
    margin-top: 0 !important;
    background: url("../../../../uploads/2026/07/hlh-mobile.webp") bottom center / cover no-repeat;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-f0c22b7,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-2c80706 {
    min-height: 330px;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-2c80706 {
    justify-content: center;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-0eafd9c .elementor-heading-title,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-12ebb3a,
body.elementor-page-1529 .elementor-1529 .e-12ebb3a-fdab42c {
    font-family: "Roboto Slab", sans-serif !important;
    font-weight: 900 !important;
    color: #FFFFFF !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-615f716,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-615f716 p {
    color: #FFFFFF !important;
    font-family: "Roboto", sans-serif !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-b4986a4 {
    padding-top: 30px;
    padding-bottom: 18px;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-839351e,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-5dd1553c {
    background-image: linear-gradient(148deg, #BE1E2D 59%, #f2295b 100%) !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-72373fe > .e-con-inner {
    max-width: 1180px;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-5252f59a {
    width: min(100%, 1340px);
    margin-right: auto;
    margin-left: auto;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-6f3e922,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-1892a9dd,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-5888ede3,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-445b941,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-48c46860 {
    justify-content: center;
    min-height: 265px !important;
    padding: 42px 54px !important;
    box-shadow: none;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-1892a9dd,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-5888ede3,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-445b941,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-48c46860 {
    width: calc(50% - 10px) !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44bf2612,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-52573d11,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-433d4b6b,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-6e477767 {
    display: flex;
    min-height: 86px;
    align-items: center;
    justify-content: center;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44bf2612 img,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-52573d11 img,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-433d4b6b img,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-6e477767 img {
    width: auto !important;
    max-width: 220px !important;
    max-height: 76px !important;
    object-fit: contain;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44bf2612 img {
    max-width: 72px !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-433d4b6b img,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-6e477767 img {
    max-width: 160px !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-121c7f4,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-121c7f4 p,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44e922ea,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44e922ea p,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-3fee0cee,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-3fee0cee p,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-7280da99,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-7280da99 p,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-428bd6c1,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-428bd6c1 p {
    color: #1D4667 !important;
    font-family: "Roboto", sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

@media (max-width: 1024px) {
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-f0c22b7,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-2c80706 {
        min-height: 300px;
    }

    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-1892a9dd,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-5888ede3,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-445b941,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-48c46860 {
        width: 100% !important;
    }
}

@media (max-width: 767px) {
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-f0c22b7,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-2c80706 {
        min-height: 520px;
    }

    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-6f3e922,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-1892a9dd,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-5888ede3,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-445b941,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-48c46860 {
        min-height: 240px !important;
        padding: 30px 24px !important;
    }

    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-615f716,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-615f716 p {
        font-size: 18px !important;
    }

    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-121c7f4,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-121c7f4 p,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44e922ea,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44e922ea p,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-3fee0cee,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-3fee0cee p,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-7280da99,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-7280da99 p,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-428bd6c1,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-428bd6c1 p {
        font-size: 15px !important;
    }
}

/* Responsive footer guard: keep the desktop grid from leaking into smaller viewports. */
@media (min-width: 768px) and (max-width: 1100px) {
    .site-footer .site-footer__main-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 44px;
    }

    .site-footer .site-footer__main-grid > * {
        min-width: 0;
        width: auto;
        max-width: 100%;
    }
}

@media (max-width: 767px) {
    .site-footer .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .site-footer .site-footer__main-grid > * {
        min-width: 0;
        width: auto;
        max-width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 1100px) {
    body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-b797ed2 {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

/* Keep the added Company footer column aligned with the original footer columns. */
.site-footer__company {
    min-width: 0;
    font-style: normal;
}

@media (max-width: 1100px) {
    body:has(.about-page) .site-footer .site-footer__main-grid,
    body:has(.contact-page) .site-footer .site-footer__main-grid,
    body:has(.forzet-page) .site-footer .site-footer__main-grid,
    .site-footer .site-footer__main-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 44px 34px;
    }

    body:has(.about-page) .site-footer .site-footer__main-grid > *,
    body:has(.contact-page) .site-footer .site-footer__main-grid > *,
    body:has(.forzet-page) .site-footer .site-footer__main-grid > *,
    .site-footer .site-footer__main-grid > * {
        min-width: 0;
        width: auto;
        max-width: 100%;
    }

    .site-footer .site-footer__logo {
        grid-column: 1 / -1;
    }

    .site-footer .site-footer__links h2,
    .site-footer .site-footer__company h2,
    .site-footer .site-footer__contact h2 {
        margin-bottom: 30px;
        font-size: 13px;
    }

    .site-footer .site-footer__company h2 {
        margin-bottom: 30px;
    }

    .site-footer .site-footer__links ul,
    .site-footer .site-footer__company ul {
        gap: 22px;
    }
}

@media (max-width: 767px) {
    body:has(.about-page) .site-footer .site-footer__main-grid,
    body:has(.contact-page) .site-footer .site-footer__main-grid,
    body:has(.forzet-page) .site-footer .site-footer__main-grid,
    .site-footer .site-footer__main-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .site-footer .site-footer__logo {
        grid-column: auto;
    }

    .site-footer .site-footer__links h2,
    .site-footer .site-footer__company h2,
    .site-footer .site-footer__contact h2 {
        margin-bottom: 24px;
        font-size: 11px;
    }

    .site-footer .site-footer__company h2 {
        margin-bottom: 24px;
    }

    .site-footer .site-footer__links ul,
    .site-footer .site-footer__company ul {
        gap: 12px;
    }

    .site-footer .site-footer__company a {
        font-size: 14px;
        line-height: 1.42;
    }
}

/* Final mobile footer heading size guard. */
@media (max-width: 767px) {
    body:has(.about-page) .site-footer .site-footer__links h2,
    body:has(.about-page) .site-footer .site-footer__company h2,
    body:has(.about-page) .site-footer .site-footer__contact h2,
    body:has(.contact-page) .site-footer .site-footer__links h2,
    body:has(.contact-page) .site-footer .site-footer__company h2,
    body:has(.contact-page) .site-footer .site-footer__contact h2,
    body:has(.forzet-page) .site-footer .site-footer__links h2,
    body:has(.forzet-page) .site-footer .site-footer__company h2,
    body:has(.forzet-page) .site-footer .site-footer__contact h2,
    .site-footer .site-footer__links h2,
    .site-footer .site-footer__company h2,
    .site-footer .site-footer__contact h2 {
        margin-bottom: 24px;
        font-size: 11px;
    }
}

/* Final mechanism height guard: this section should fit content, not reserve a huge frame. */
.mechanism-section,
.mechanism-section__inner {
    min-height: 0;
}

.mechanism-section__inner {
    padding-top: clamp(72px, 6vw, 96px);
    padding-bottom: clamp(72px, 6vw, 96px);
}

/* Stable Elementor hero image fallbacks for imported Health Lives Here pages. */
body.elementor-page-1409 .elementor-1409 .elementor-element.elementor-element-d5253ea {
    background-image: url("../../../../uploads/2026/07/hlh-desktop-v3.webp") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-f0c22b7,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-f0c22b7 {
    margin-top: 0 !important;
    background-image: url("../../../../uploads/2026/07/hlh-mobile.webp") !important;
    background-position: bottom center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-f0c22b7,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-2c80706 {
    min-height: 330px;
}

body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-2c80706 {
    justify-content: center;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-0eafd9c .elementor-heading-title,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-12ebb3a,
body.elementor-page-1580 .elementor-1580 .e-12ebb3a-fdab42c,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-615f716,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-615f716 p {
    color: #FFFFFF !important;
}

@media (max-width: 1024px) {
    body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-f0c22b7,
    body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-2c80706 {
        min-height: 300px;
    }
}

@media (max-width: 767px) {
    body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-f0c22b7,
    body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-2c80706 {
        min-height: 520px;
    }
}

/* Product hero QA: Tollovid, Galectovid, Galectovid MCAS and Chondrovid share the Chondrovid hero type scale. */
body.page-id-1330 .forzet-hero h1,
body.page-id-1344 .forzet-hero h1,
body.page-id-1345 .forzet-hero h1,
body.page-id-1346 .forzet-hero h1 {
    max-width: 760px;
    font-size: clamp(44px, 4.2vw, 76px);
}

@media (min-width: 768px) and (max-width: 1100px) {
    body.page-id-1330 .forzet-hero h1,
    body.page-id-1344 .forzet-hero h1,
    body.page-id-1345 .forzet-hero h1,
    body.page-id-1346 .forzet-hero h1 {
        max-width: 680px;
        font-size: clamp(54px, 6.5vw, 68px);
    }
}

@media (max-width: 767px) {
    body.page-id-1330 .forzet-hero h1,
    body.page-id-1344 .forzet-hero h1,
    body.page-id-1345 .forzet-hero h1,
    body.page-id-1346 .forzet-hero h1 {
        max-width: 340px;
        font-size: clamp(42px, 12vw, 52px);
    }
}

@media (max-width: 420px) {
    body.page-id-1330 .forzet-hero h1,
    body.page-id-1344 .forzet-hero h1,
    body.page-id-1345 .forzet-hero h1,
    body.page-id-1346 .forzet-hero h1 {
        font-size: 46px;
    }
}


/* Definition slider CTA spacing */
@media (min-width: 768px) and (max-width: 1100px) {
    .definition-slider__button {
        margin-top: 24px;
    }
}

@media (max-width: 767px) {
    .definition-slider__button {
        margin-top: 22px;
    }
}

/* Final global heading line-height guard.
   Kept at the end so legacy page/section rules cannot override it. */
h1 {
    line-height: 1.04 !important;
}

h2 {
    line-height: 1.06 !important;
}

h1 sup,
h2 sup,
h1 sub,
h2 sub {
    font-size: 0.45em !important;
    line-height: 0 !important;
}

h1 sup,
h2 sup {
    vertical-align: super;
}

h1 sub,
h2 sub {
    vertical-align: sub;
}

@media (min-width: 768px) and (max-width: 1100px) {
    h1 {
        line-height: 1.06 !important;
    }

    h2 {
        line-height: 1.08 !important;
    }
}

@media (max-width: 767px) {
    h1 {
        line-height: 1.08 !important;
    }

    h2 {
        line-height: 1.10 !important;
    }
}

/* Partners card lock: keep the four partner cards and logo slots equal. */
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-1892a9dd,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-5888ede3,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-445b941,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-48c46860,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-1892a9dd,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-5888ede3,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-445b941,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-48c46860 {
    display: flex !important;
    width: calc(50% - 10px) !important;
    min-height: 300px !important;
    height: 300px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 28px !important;
    padding: 40px 54px !important;
    overflow: hidden !important;
    box-shadow: none !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44bf2612,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-52573d11,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-433d4b6b,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-6e477767,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-44bf2612,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-52573d11,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-433d4b6b,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-6e477767 {
    display: flex !important;
    width: 100% !important;
    min-height: 104px !important;
    height: 104px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44bf2612 img,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-52573d11 img,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-433d4b6b img,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-6e477767 img,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-44bf2612 img,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-52573d11 img,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-433d4b6b img,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-6e477767 img {
    display: block !important;
    width: auto !important;
    max-width: 240px !important;
    max-height: 82px !important;
    object-fit: contain !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44bf2612 img,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-44bf2612 img {
    max-width: 82px !important;
    max-height: 92px !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-433d4b6b img,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-6e477767 img,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-433d4b6b img,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-6e477767 img {
    max-width: 190px !important;
}

body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-121c7f4,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-44e922ea,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-3fee0cee,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-7280da99,
body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-428bd6c1,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-121c7f4,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-44e922ea,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-3fee0cee,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-7280da99,
body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-428bd6c1 {
    margin: 0 !important;
}

@media (max-width: 1024px) {
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-1892a9dd,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-5888ede3,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-445b941,
    body.elementor-page-1529 .elementor-1529 .elementor-element.elementor-element-48c46860,
    body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-1892a9dd,
    body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-5888ede3,
    body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-445b941,
    body.elementor-page-1580 .elementor-1580 .elementor-element.elementor-element-48c46860 {
        width: 100% !important;
        height: auto !important;
        min-height: 260px !important;
        padding: 34px 28px !important;
    }
}

/* Homepage carousel headline scale. */
.hero-carousel-panel h1 {
    font-size: clamp(54px, 5.2vw, 76px);
    line-height: 0.96 !important;
}

@media (min-width: 761px) and (max-width: 1100px) {
    .hero-carousel-panel h1 {
        font-size: clamp(44px, 5vw, 58px);
    }
}

@media (max-width: 760px) {
    .hero-carousel-panel h1 {
        font-size: clamp(40px, 11vw, 50px);
    }
}

/* Homepage carousel motion: make autoplay and drag changes read as a carousel. */
.hero-carousel {
    cursor: grab;
}

.hero-carousel.is-dragging {
    cursor: grabbing;
}

.hero-carousel__slides {
    display: grid;
    overflow: hidden;
}

.hero-carousel-panel {
    display: grid;
    grid-area: 1 / 1;
    opacity: 0;
    pointer-events: none;
    transform: translateX(34px);
    transition: opacity 420ms ease, transform 520ms ease;
}

.hero-carousel[data-hero-direction="prev"] .hero-carousel-panel {
    transform: translateX(-34px);
}

.hero-carousel-panel.is-active {
    z-index: 1;
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
}

@media (prefers-reduced-motion: reduce) {
    .hero-carousel-panel {
        transition: none;
    }
}

/* ========================================================================== 
   INVEST — ORGANIZATION CHART / FIGMA ALIGNMENT
   ========================================================================== */
@media (min-width: 1101px) {
    /* Reduce the oversized empty space left by the About section. */
    .invest-about__inner {
        padding-bottom: clamp(46px, 3.8vw, 58px);
    }

    .invest-org-chart__inner {
        padding-top: 0;
        padding-bottom: clamp(58px, 4.5vw, 68px);
    }

    .invest-org-chart__parent {
        width: min(100%, 300px);
        padding: 20px 28px 22px;
    }

    .invest-org-chart__parent p {
        margin-bottom: 8px;
        font-size: 10px;
    }

    .invest-org-chart__parent h3 {
        font-size: clamp(32px, 2.35vw, 38px);
        line-height: 1;
    }

    /* Connector ends align with the centres of the first and third cards. */
    .invest-org-chart__branch {
        width: min(calc(66.666% - 14px), 900px);
        height: 76px;
    }

    .invest-org-chart__branch span::before,
    .invest-org-chart__branch span::after {
        height: 24px;
    }

    .invest-org-chart__companies {
        gap: 20px;
    }

    .invest-org-chart__company {
        min-height: 90px;
        padding: 18px 22px 17px;
    }

    .invest-org-chart__marker {
        gap: 11px;
        margin-bottom: 9px;
        font-size: 10px;
    }

    .invest-org-chart__dot {
        width: 9px;
        height: 9px;
    }

    .invest-org-chart__company h3 {
        margin-bottom: 5px;
        font-size: clamp(28px, 2.15vw, 34px);
        line-height: 1;
    }

    .invest-org-chart__company p {
        font-size: 9px;
        letter-spacing: 0.17em;
        line-height: 1.15;
    }
}

/* ========================================================================== 
   INVEST — ORGANIZATION CHART / TYPOGRAPHY + CONNECTOR FINAL FIX
   ========================================================================== */
@media (min-width: 1101px) {
    .invest-org-chart__parent {
        width: min(100%, 300px);
        padding: 22px 30px 24px;
    }

    .invest-org-chart__parent p {
        margin-bottom: 10px;
        font-size: var(--th-type-label);
        line-height: var(--th-leading-label);
    }

    .invest-org-chart__parent h3 {
        font-family: var(--th-font-display);
        font-size: clamp(38px, 2.8vw, 44px);
        font-weight: 400;
        line-height: 0.98;
    }

    /*
     * For three equal cards with a 20px gap, this width places both ends
     * exactly over the horizontal centres of the first and third cards.
     */
    .invest-org-chart__branch {
        width: calc(66.666666% + 14px);
        max-width: none;
        height: 76px;
    }

    .invest-org-chart__branch::before {
        height: 56px;
    }

    .invest-org-chart__branch span {
        bottom: 20px;
    }

    .invest-org-chart__branch span::before,
    .invest-org-chart__branch span::after {
        top: 0;
        height: 20px;
    }

    .invest-org-chart__company {
        min-height: 104px;
        padding: 22px 24px 20px;
    }

    .invest-org-chart__marker {
        gap: 12px;
        margin-bottom: 11px;
        font-size: var(--th-type-label);
        line-height: 1;
    }

    .invest-org-chart__dot {
        width: 10px;
        height: 10px;
    }

    .invest-org-chart__company h3 {
        margin-bottom: 7px;
        font-family: var(--th-font-display);
        font-size: clamp(34px, 2.55vw, 40px);
        font-weight: 400;
        line-height: 0.98;
    }

    .invest-org-chart__company p {
        font-size: var(--th-type-label);
        letter-spacing: 0.18em;
        line-height: var(--th-leading-label);
    }
}

/* ========================================================================== 
   INVEST — ORGANIZATION CHART / LONGER THREE-WAY CONNECTORS
   ========================================================================== */
@media (min-width: 1101px) {
    /*
     * Increase the connector area so the three company cards sit lower,
     * matching the longer vertical branches shown in the Figma layout.
     */
    .invest-org-chart__branch {
        height: 112px;
    }

    /* Centre line now continues all the way to the middle company card. */
    .invest-org-chart__branch::before {
        top: 0;
        height: 112px;
    }

    /* Horizontal rail sits above the cards, leaving longer drops below it. */
    .invest-org-chart__branch span {
        bottom: 38px;
    }

    /* Left and right drops connect the rail to the outer cards. */
    .invest-org-chart__branch span::before,
    .invest-org-chart__branch span::after {
        top: 0;
        height: 38px;
    }

    /* Keep the card row directly under the connector ends. */
    .invest-org-chart__companies {
        margin-top: 0;
    }
}

/* ========================================================================== 
   INVEST — ORGANIZATION CHART / MOBILE VERTICAL TREE (FIGMA)
   ========================================================================== */
@media (max-width: 767px) {
    .invest-org-chart__inner {
        position: relative;
        width: calc(100% - 44px);
        padding-top: 0;
        padding-bottom: 72px;
    }

    .invest-org-chart__parent {
        width: min(100%, 220px);
        padding: 20px 22px 22px;
    }

    .invest-org-chart__parent p {
        margin-bottom: 8px;
        font-size: 9px;
        line-height: 1.15;
    }

    .invest-org-chart__parent h3 {
        font-family: var(--th-font-display);
        font-size: 32px;
        font-weight: 400;
        line-height: 1;
    }

    /*
     * From the centre of the parent card, go down and then left to the
     * vertical mobile trunk positioned beside the company cards.
     */
    .invest-org-chart__branch {
        position: relative;
        display: block;
        width: 50%;
        height: 20px;
        margin: 0 auto 0 0;
    }

    .invest-org-chart__branch::before {
        top: 0;
        right: 0;
        left: auto;
        width: 1px;
        height: 20px;
    }

    .invest-org-chart__branch span {
        right: 0;
        bottom: 0;
        left: 0;
        height: 1px;
    }

    .invest-org-chart__branch span::before,
    .invest-org-chart__branch span::after {
        display: none;
    }

    .invest-org-chart__companies {
        position: relative;
        display: grid;
        grid-template-columns: 1fr;
        gap: 24px;
        margin: 0 0 0 20px;
    }

    /* Continuous vertical trunk ending at the centre of the final card. */
    .invest-org-chart__companies::before {
        position: absolute;
        top: 0;
        bottom: 39px;
        left: -20px;
        width: 1px;
        background: #61b0de;
        content: "";
    }

    .invest-org-chart__company {
        position: relative;
        min-height: 78px;
        padding: 15px 14px 14px;
    }

    /* A short branch from the trunk into every company card. */
    .invest-org-chart__company::before {
        position: absolute;
        top: 50%;
        left: -20px;
        width: 20px;
        height: 1px;
        background: #61b0de;
        content: "";
        transform: translateY(-0.5px);
    }

    .invest-org-chart__marker {
        gap: 9px;
        margin-bottom: 8px;
        font-size: 9px;
        line-height: 1;
    }

    .invest-org-chart__dot {
        width: 9px;
        height: 9px;
    }

    .invest-org-chart__company h3 {
        margin-bottom: 5px;
        font-family: var(--th-font-display);
        font-size: 30px;
        font-weight: 400;
        line-height: 1;
    }

    .invest-org-chart__company p {
        font-size: 8px;
        letter-spacing: 0.16em;
        line-height: 1.15;
    }
}

/* ========================================================================== 
   INVEST — ORGANIZATION CHART / MOBILE CONNECTOR FINAL ALIGNMENT
   ========================================================================== */
@media (max-width: 767px) {
    /* Leave visible breathing room between the top elbow and the first card. */
    .invest-org-chart__branch {
        margin-bottom: 18px;
    }

    /* The trunk is built in card-sized segments so it ends at the last elbow. */
    .invest-org-chart__companies::before {
        display: none;
    }

    .invest-org-chart__company::after {
        position: absolute;
        z-index: 0;
        top: calc(-24px - 50%);
        bottom: 50%;
        left: -20px;
        width: 1px;
        background: #61b0de;
        content: "";
    }

    /* First segment begins at the upper horizontal connector, not at card edge. */
    .invest-org-chart__company:first-child::after {
        top: -18px;
    }

    /* Horizontal elbows remain above the card background. */
    .invest-org-chart__company::before {
        z-index: 1;
    }
}

/* =========================================================
   INVEST PAGE — MOBILE LAYOUT REPAIR
   Restores single-column section structure after later global overrides.
   ========================================================= */
@media (max-width: 767px) {
    .invest-page,
    .invest-page main,
    .invest-page section {
        min-width: 0;
        max-width: 100%;
    }

    .invest-about__inner,
    .invest-org-chart__inner,
    .invest-pipeline__items,
    .invest-opportunity__inner,
    .invest-use__inner,
    .invest-final-cta__inner {
        box-sizing: border-box;
        width: 100%;
        max-width: none;
        margin-right: auto;
        margin-left: auto;
        padding-right: 20px;
        padding-left: 20px;
    }

    /* About section */
    .invest-about__intro {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 24px;
        margin-bottom: 38px;
    }

    .invest-about__intro > * {
        min-width: 0;
    }

    .invest-about__eyebrow {
        margin-top: 0;
    }

    .invest-about__media,
    .invest-about__media img {
        width: 100%;
    }

    .invest-about__cards {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }

    .invest-about__card {
        width: 100%;
        min-height: 0;
    }

    /* Product pipeline */
    .invest-pipeline__items {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .invest-pipeline__item,
    .invest-pipeline__item.is-reversed {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        width: 100%;
    }

    .invest-pipeline__side,
    .invest-pipeline__body {
        min-width: 0;
        width: 100%;
    }

    /* Opportunity section */
    .invest-opportunity__head {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 22px;
    }

    .invest-opportunity__head > div {
        min-width: 0;
        max-width: none;
    }

    .invest-opportunity__head > div:last-child {
        padding-top: 0;
    }

    .invest-opportunity__table div {
        grid-template-columns: minmax(0, 1fr);
        min-height: 0;
    }

    .invest-opportunity__table dt {
        padding: 17px 18px 6px;
    }

    .invest-opportunity__table dd,
    .invest-opportunity__table div:first-child dd {
        padding: 0 18px 18px;
    }

    /* Use of investment section */
    .invest-use__inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 30px;
    }

    .invest-use__inner > * {
        min-width: 0;
        max-width: none;
    }

    .invest-use__description {
        margin-top: 22px;
    }

    .invest-use__list {
        width: 100%;
    }

    .invest-use__list li {
        grid-template-columns: 32px minmax(0, 1fr);
        width: 100%;
        min-height: 68px;
        padding: 16px 18px;
        font-size: clamp(23px, 7vw, 30px);
    }

    /* Final CTA */
    .invest-final-cta__inner {
        display: block;
    }

    .invest-final-cta h2,
    .invest-final-cta__highlight,
    .invest-final-cta__description {
        max-width: none;
    }

    .invest-final-cta__disclaimer {
        box-sizing: border-box;
    }
}

/* =========================================================
   INVEST PAGE — MOBILE SECTION SPACING FIX
   Removes the oversized gap between the final pipeline card
   and "The Opportunity" section.
   ========================================================= */
@media (max-width: 767px) {
    .invest-pipeline {
        padding-bottom: 18px;
    }

    .invest-opportunity__inner {
        padding-top: 28px;
    }
}