.hd-intake {
    --hd-gold: #d8a44b;
    --hd-ink: #101010;
    --hd-muted: #686868;
    --hd-line: #e6e2da;
    max-width: 920px;
    margin: 0 auto;
    color: var(--hd-ink);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

.hd-intake__header {
    margin-bottom: 42px;
}

.hd-intake__eyebrow {
    color: #a86f12;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.hd-intake h1 {
    margin: 8px 0 14px;
    max-width: 780px;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.02;
}

.hd-intake__header > p:not(.hd-intake__eyebrow) {
    max-width: 700px;
    font-size: 18px;
    line-height: 1.6;
}

.hd-intake__form {
    display: grid;
    gap: 24px;
}

.hd-intake__branch {
    display: grid;
    gap: 24px;
}

.hd-intake__branch[hidden],
.hd-intake__common[hidden],
.hd-intake__kyphosis-only[hidden],
.hd-intake__conditional-card[hidden] {
    display: none !important;
}

.hd-intake__common {
    display: grid;
    gap: 24px;
}

.hd-intake fieldset {
    margin: 0;
    padding: 30px;
    border: 1px solid var(--hd-line);
    border-radius: 22px;
    background: #fff;
}

.hd-intake legend {
    padding: 0 10px;
    font-size: 20px;
    font-weight: 700;
}

.hd-intake label {
    display: block;
    margin-bottom: 18px;
    font-weight: 650;
}

.hd-intake label > span {
    color: #b64936;
}

.hd-intake input:not([type="radio"], [type="checkbox"], [type="range"]),
.hd-intake select,
.hd-intake textarea {
    box-sizing: border-box;
    display: block;
    width: 100%;
    margin-top: 9px;
    padding: 14px 15px;
    border: 1px solid #cbc7bf;
    border-radius: 11px;
    background: #fff;
    color: var(--hd-ink);
    font: inherit;
}

.hd-intake textarea {
    resize: vertical;
}

.hd-intake input:focus,
.hd-intake select:focus,
.hd-intake textarea:focus {
    outline: 3px solid rgba(216, 164, 75, .24);
    border-color: var(--hd-gold);
}

.hd-intake__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.hd-intake__choices {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.hd-intake__choices label {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    padding: 13px 17px;
    border: 1px solid var(--hd-line);
    border-radius: 999px;
}

.hd-intake__check-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 14px;
    margin: 10px 0 24px;
}

.hd-intake__check-grid label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0;
    padding: 12px 13px;
    border: 1px solid var(--hd-line);
    border-radius: 12px;
    font-size: 15px;
    font-weight: 550;
    line-height: 1.35;
}

.hd-intake__check-grid input {
    flex: 0 0 auto;
    margin-top: 3px;
}

.hd-intake__scale-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}

.hd-intake__range {
    margin: 0 !important;
    padding: 17px;
    border: 1px solid var(--hd-line);
    border-radius: 14px;
    background: #fbfaf7;
}

.hd-intake__range-title {
    display: block;
    min-height: 42px;
    color: var(--hd-ink) !important;
}

.hd-intake__range input {
    display: block;
    width: 100%;
    margin: 15px 0 8px;
}

.hd-intake__range-labels {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    color: var(--hd-muted) !important;
    font-weight: 500;
}

.hd-intake__range-labels small:last-child {
    text-align: right;
}

.hd-intake__branch-note,
.hd-intake__helper {
    margin: 4px 0 0;
    color: var(--hd-muted);
    font-size: 14px;
    font-weight: 550;
}

.hd-intake__safety {
    margin-top: 24px;
    padding: 22px;
    border: 1px solid #edcf97;
    border-radius: 16px;
    background: #fff9ed;
}

.hd-intake__safety h3,
.hd-intake__conditional-card h3 {
    margin: 0 0 8px;
    font-size: 18px;
}

.hd-intake__safety > p {
    margin: 0 0 14px;
    color: #6c5223;
}

.hd-intake__safety .hd-intake__check-grid {
    margin-bottom: 0;
}

.hd-intake__conditional-card,
.hd-intake__kyphosis-only {
    margin: 20px 0;
    padding: 20px;
    border: 1px solid var(--hd-line);
    border-radius: 16px;
    background: #f8f8f6;
}

.hd-intake__notice,
.hd-intake__error {
    padding: 18px 20px;
    border-radius: 14px;
    background: #fff4dc;
    color: #6c4610;
}

.hd-intake__error {
    margin-bottom: 20px;
    background: #fde9e5;
    color: #8a2d20;
}

.hd-intake__consent {
    display: flex !important;
    grid-template-columns: none;
    align-items: flex-start;
    gap: 11px !important;
    font-size: 14px;
    font-weight: 500 !important;
}

.hd-intake__consent input {
    flex: 0 0 auto;
    margin-top: 3px;
}

.hd-intake__legal-section,
.hd-intake__marketing {
    padding: 24px;
    border: 1px solid var(--hd-line);
    border-radius: 18px;
    background: #fff;
}

.hd-intake__legal-heading,
.hd-intake__marketing {
    text-align: left;
}

.hd-intake__legal-heading h2,
.hd-intake__marketing h2 {
    margin: 2px 0 12px;
    font-size: 22px;
    line-height: 1.25;
}

.hd-intake__legal-kicker {
    margin: 0;
    color: #a56b16;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.hd-intake__legal {
    margin: 14px 0 18px;
    overflow: hidden;
    border: 1px solid var(--hd-line);
    border-radius: 14px;
    background: #f8f8f6;
}

.hd-intake__legal summary {
    padding: 16px 18px;
    color: var(--hd-ink);
    font-size: 15px;
    font-weight: 750;
    cursor: pointer;
}

.hd-intake__legal-content {
    padding: 0 18px 16px;
    color: var(--hd-muted);
    font-size: 13px;
    line-height: 1.65;
}

.hd-intake__legal-content p {
    margin: 0 0 11px;
}

.hd-intake__legal-content p:last-child {
    margin-bottom: 0;
}

.hd-intake__marketing > p:not(.hd-intake__legal-kicker) {
    margin: 0;
    color: var(--hd-muted);
    font-size: 14px;
    line-height: 1.6;
}

.hd-intake__marketing-choices {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 18px 0 14px;
}

.hd-intake__marketing-choices label {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 48px;
    padding: 11px 13px;
    border: 1px solid var(--hd-line);
    border-radius: 12px;
    background: #f8f8f6;
    font-size: 13px;
    font-weight: 650;
}

.hd-intake__marketing-choices input {
    flex: 0 0 auto;
}

.hd-intake__marketing-note {
    font-size: 12px !important;
}

.hd-intake button[type="submit"] {
    min-height: 58px;
    padding: 16px 28px;
    border: 0;
    border-radius: 12px;
    background: var(--hd-ink);
    color: #fff;
    font: inherit;
    font-size: 17px;
    font-weight: 750;
    cursor: pointer;
}

.hd-intake__honeypot {
    position: absolute !important;
    left: -9999px !important;
}

.hd-intake-success {
    max-width: 760px;
    margin: 24px auto;
    padding: 38px;
    border-radius: 24px;
    background: #f4f8f1;
    text-align: center;
}

@media (max-width: 680px) {
    .hd-intake__grid,
    .hd-intake__scale-grid {
        grid-template-columns: 1fr;
    }

    .hd-intake__check-grid {
        grid-template-columns: 1fr;
    }

    .hd-intake__legal-section,
    .hd-intake__marketing {
        padding: 20px 16px;
    }

    .hd-intake__marketing-choices {
        grid-template-columns: 1fr;
    }

    .hd-intake fieldset {
        padding: 22px 17px;
        border-radius: 17px;
    }

    .hd-intake h1 {
        font-size: 38px;
    }

    .hd-intake__header {
        margin-bottom: 28px;
    }
}
