/* =========================================================
   Demo Hero Section — the pitch on the left, the form on the right

   The column pair is the product hero's, at Figma's widths for this
   page: 680 for the copy, 460 for the form card, 64 between them
   inside the 1204 container. Stored as a ratio rather than two fixed
   widths so both columns narrow together.

   The form card is the only genuinely new thing on this page — the
   project had no form controls at all before it.

   Used on: demo.html
   ========================================================= */

.demo-hero-section {
    background-color: var(--color-white);
}

.demo-hero-section .demo-hero-section-wrapper {
    padding-block: var(--section-padding);
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row {
    --demo-gap: 64px;
    --demo-content: 0.596;
    /* 680 / (680 + 460) */
    gap: var(--demo-gap);
    align-items: flex-start;
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content {
    flex: 1 1 calc((100% - var(--demo-gap)) * var(--demo-content));
    min-width: 0;
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-form {
    flex: 1 1 calc((100% - var(--demo-gap)) * (1 - var(--demo-content)));
    min-width: 0;
}

/* ---------- Left column ---------- */

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content h1 {
    margin-top: var(--space-smm);
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content .accent-bar {
    margin-top: var(--space-smm);
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content .demo-hero-section-subline {
    margin-top: var(--space-sl);
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content .demo-hero-section-subline h3,
.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content .demo-hero-section-subline .h3,
.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content .demo-hero-section-subtitle h3,
.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content .demo-hero-section-subtitle .h3 {
    color: var(--color-teal-700);
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content .demo-hero-section-subtitle {
    margin-top: var(--space-llg);
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content ul {
    gap: 14px;
    margin-top: 30px;
}

.demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content ul li {
    font-weight: var(--font-weight-semibold);
}

.demo-hero-section-card form .demo-hero-section-fields {
    gap: var(--space-sm) !important;
}

.demo-hero-section-card form .demo-hero-section-fields p:last-child {
    position: relative !important;
}

.demo-hero-section-card form .demo-hero-section-fields .demo-hero-section-pair {
    gap: var(--space-xm) !important;
}

.demo-hero-section-card form .demo-hero-section-fields .demo-hero-section-pair .demo-hero-section-field {
    width: 100% !important;
}

.demo-hero-section-card form button[type="submit"] {
    margin-top: 4px !important;
    width: 100% !important;
}

.demo-hero-section-card form span.arrow-icon {
    font-family: var(--font-mono);
    font-weight: var(--font-weight-medium);
    width: 11px;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    align-content: stretch;
}

.demo-hero-section-card form span.arrow-icon img {
    max-width: 100%;
    height: auto;
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(103%) contrast(103%);
}


@media (max-width: 1199px) {
    .demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row {
        --demo-gap: var(--space-xl);
    }
}

@media (max-width:991px) {
    .demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row {
        flex-direction: column;
    }

    .demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-content,
    .demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-form {
        flex: 0 0 auto;
        width: 100%;
    }
}

@media (max-width:767px) {
    .demo-hero-section .demo-hero-section-wrapper .demo-hero-section-row .demo-hero-section-form .demo-hero-section-card {
        padding: 20px;
    }

    .demo-hero-section-card form .demo-hero-section-fields .demo-hero-section-pair {
        flex-wrap: wrap;
    }
}