@media (min-width: 1025px) {
    /* Default desktop grid: form (larger) then image (smaller) */
    .get-started-today-content {
        grid-template-columns: minmax(0, 54.83%) minmax(0, 45.17%);
    }

    /* When layout is reversed (visual swap), make the second column larger */
    .get-started-today-content.layout-reversed {
        grid-template-columns: minmax(0, 45.17%) minmax(0, 54.83%);
    }

    /* Force visual placement so widths apply regardless of DOM order */
    .get-started-today-content .get-started-today-form {
        grid-column: 1;
    }

    .get-started-today-content .get-started-today-image {
        grid-column: 2;
    }

    .get-started-today-content.layout-reversed .get-started-today-form {
        grid-column: 2;
    }

    .get-started-today-content.layout-reversed .get-started-today-image {
        grid-column: 1;
    }

    /* Preserve previous dark-variant overrides for compatibility */
    .form-dark-bg .get-started-today-content.layout-reversed {
        grid-template-columns: minmax(0, 45.17%) minmax(0, 54.83%) !important;
    }

    .form-dark-bg .get-started-today-content:not(.layout-reversed) {
        grid-template-columns: minmax(0, 54.83%) minmax(0, 45.17%) !important;
    }
}

@media (min-width: 1024px) {
    .get-started-today-description {
        max-width: 23.5rem;
        /* 376px */
    }
}

/* Editor overflow fix for get started today block */
.block-editor-block-list__layout .get-started-today-block,
.editor-styles-wrapper .get-started-today-block,
.wp-block-acf-get-started-today .get-started-today-block {
    max-width: 100%;
    overflow-x: hidden;
}

.get-started-today-block {
    background-color: var(--color-surface-muted);
    /* Page bg per mobile screenshot */
    padding: 0;
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
}

.get-started-today-content {
    max-width: 100%;
    margin: 0;
    display: grid;
    grid-template-columns: minmax(0, 54.83%) minmax(0, 45.17%);
    gap: 0;
    align-items: stretch;
    width: 100%;
    box-sizing: border-box;

    min-width: 0;
}



.get-started-today-form {
    background-color: var(--form-bg-color, var(--color-getstarted-form-bg));
    /* Use CSS variable with fallback */
    padding: 5rem 3.75rem 5rem 9.375rem;
    /* Standard 9.375rem left padding */
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
    overflow-x: hidden;
    width: 100%;
}

/* .label-inner {
        color: var(--color-gray-ui);
    } */

/* Align content with 1728px container on large screens */
@media (min-width: 1729px) {
    .get-started-today-form {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        padding-left: calc((100vw - 1728px) / 2 + clamp(6rem, 15.046vw, 16.25rem));
        padding-right: 6.5rem;
    }

    .layout-reversed .get-started-today-form {
        /* justify-content: flex-start; */
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        padding-right: calc((100vw - 1728px) / 2 + clamp(6rem, 15.046vw, 16.25rem)) !important;
        padding-left: 6.5rem !important;
    }

}

@media (min-width: 1541px) and (max-width: 1728px) {
    .get-started-today-form {
        padding: 5rem 6.5rem 5rem clamp(6rem, 15.046vw, 16.25rem) !important;
    }

    .layout-reversed .get-started-today-form {
        padding: 5rem clamp(6rem, 15.046vw, 16.25rem) 5rem 6.5rem !important;
    }
}

/* Adjust padding for reversed layout (form on right) */
.layout-reversed .get-started-today-form {
    padding: 5rem 9.375rem 5rem 3.75rem;
    /* 9.375rem right padding, 3.75rem left padding */
}

/* Contact Form 7 Checkbox Alignment */
.get-started-today-block .wpcf7-list-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin: 0;
    /* Ensure the list item and label are clickable */
    pointer-events: auto;
    cursor: pointer;
    /* padding-left: 16px;  Add indent spacing */
}

/* Make sure the label wrapper is clickable */
.get-started-today-block .wpcf7-list-item label {
    cursor: pointer;
    pointer-events: auto;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.get-started-today-block .wpcf7-list-item input[type="checkbox"] {
    width: 1.125rem;
    height: 1.125rem;
    margin: 0;
    flex-shrink: 0;
    align-self: flex-start;
    position: relative;
    /* top: 0.4375rem; */
    top: 0.1875rem;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: none;
    background-color: transparent;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    border: 0.0625rem solid var(--color-gray-border);
    border-radius: 0.125rem;
    outline: none;
    transition: background-image 0.2s ease, border-color 0.2s ease;
    /* Ensure checkbox is clickable and functional */
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
    /* Make sure it's not hidden */
    visibility: visible;
    display: block;
}

/* Checked state on light background - use GS token + external mask so the fill is theme-driven */
.get-started-today-block .wpcf7-list-item input[type="checkbox"]:checked {
    /* use the GS-specific token so designers can override checkbox color */
    background-color: var(--color-gs-checkbox);
    /* use the approved SVG asset as the mask so the fill follows the theme token */
    -webkit-mask-image: url('../../../images/hero_get_started_select_check_box.svg');
    mask-image: url('../../../images/hero_get_started_select_check_box.svg');
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    /* keep a visible border when checked so the box remains defined */
    border: 0.0625rem solid var(--color-gray-border);
    color: var(--color-gs-checkbox);
}

/* Dark background - unchecked state (empty checkbox with border) */
.form-dark-bg .wpcf7-list-item input[type="checkbox"] {
    background-image: none;
    background-color: transparent;
    border: 0.0625rem solid var(--color-white);
}

/* Dark background - checked state (with checkmark) */
.form-dark-bg .wpcf7-list-item input[type="checkbox"]:checked {
    background-color: var(--color-white);
    /* use the SVG mask for consistency with hero block */
    -webkit-mask-image: url('../../../images/hero_get_started_select_check_box.svg');
    mask-image: url('../../../images/hero_get_started_select_check_box.svg');
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    /* remove border for clean hero block style */
    border: none;
    color: var(--color-white);
}

.wpcf7-list-item-label {
    font-family: 'Outfit', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 0.75rem;
    line-height: 1rem;
    letter-spacing: 0;
    /* color: var(--color-primary-dark) !important; */
    margin: 0;
    cursor: pointer;
    word-wrap: break-word;
    overflow-wrap: break-word;
    flex: 1;
}

/* Add indent spacing using pseudo-elements */
.get-started-today-block .wpcf7-list-item-label::before,
.get-started-today-block .wpcf7-list-item-label::after {
    content: " ";

}

.get-started-today-block .wpcf7-list-item-label p {
    margin: 0;
    line-height: 1.4;
    display: inline;
}

span.label-inner a {
    color: var(--color-green-primary);
}

.get-started-today-heading {
    font-family: 'Outfit', sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 2rem;
    /* Desktop */
    line-height: 2.5rem;
    letter-spacing: 0;
    color: var(--color-getstarted-heading);
    margin: 0 0 1.5rem 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.get-started-today-description {
    font-family: 'Outfit', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1rem;
    line-height: 1.5rem;
    letter-spacing: 0;
    color: var(--color-getstarted-heading);
    margin: 0 0 2rem 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Dark background text color adjustments */
/* When dark background is selected, make text white for both Form Left and Form Right layouts */
.form-dark-bg .get-started-today-description {
    color: var(--color-white) !important;
}


.form-dark-bg .get-started-today-heading {
    color: var(--color-white) !important;
}

/* CF7 label text color for dark backgrounds */
.form-dark-bg .wpcf7-list-item-label,
.form-dark-bg .wpcf7-list-item-label p,
.form-dark-bg .get-started-today-block label,
.form-dark-bg .wpcf7-form label {
    color: var(--color-gray-ui) !important;
}


/* CF7 label text color for dark backgrounds */
.wpcf7-list-item-label,
.wpcf7-list-item-label p,
.get-started-today-block label,
.wpcf7-form label {
    color: var(--color-get-started-list-item-label) !important;
}


/* Contact Form 7 Response Output Styling for Dark Background */
.form-dark-bg .wpcf7-response-output {
    color: var(--color-white) !important;
}

/* Ensure dark background styling works on mobile for both layouts */
@media (max-width: 1024px) {

    .form-dark-bg .get-started-today-heading,
    .form-dark-bg .get-started-today-description {
        color: var(--color-white) !important;
    }

    .form-dark-bg .wpcf7-list-item-label,
    .form-dark-bg .wpcf7-list-item-label p,
    .form-dark-bg .get-started-today-block label,
    .form-dark-bg .wpcf7-form label {
        color: var(--color-gray-ui) !important;
    }

    .form-dark-bg .wpcf7-response-output {
        color: var(--color-white) !important;
    }
}

.get-started-today-form-fields {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.get-started-today-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    /* padding-bottom: 16px; */
}

.get-started-today-form-field {
    display: flex;
    flex-direction: column;
    min-width: 0;
    box-sizing: border-box;
}

.get-started-today-form-field input,
.get-started-today-form-field select {
    width: 100%;
    max-width: 100%;
    height: 3.5rem;
    border-radius: 0.5rem;
    justify-content: space-between;
    opacity: 1;
    border-width: 0.0625rem;
    padding: 1rem;
    border: 0.0625rem solid var(--color-gray-border);
    /* Medium Gray */
    font-family: 'Outfit', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.125rem;
    line-height: 1.625rem;
    letter-spacing: 0;
    vertical-align: middle;
    background-color: var(--color-white);
    color: var(--color-black-soft);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    box-sizing: border-box;
    min-width: 0;
}

.get-started-today-form-field input:focus,
.get-started-today-form-field select:focus {
    outline: none;
    border-color: var(--color-accent-blue);
    /* Primary Two */
    box-shadow: var(--textarea-focus-shadow);
}

.get-started-today-form-field select:disabled {
    background-color: var(--color-neutral-100) !important;
    color: var(--color-text-caption) !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
    border-color: var(--color-neutral-150) !important;
}

.get-started-today-form-field select:disabled option {
    color: var(--color-text-caption) !important;
    background-color: var(--color-white) !important;
}

/* CF7 Select disabled state */
.wpcf7-form-control.wpcf7-select:disabled {
    background-color: var(--color-neutral-100) !important;
    color: var(--color-text-caption) !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
}

.get-started-today-form-field input::placeholder {
    color: var(--color-text-caption);
}

.get-started-today-form-field select {
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg width='15' height='8' viewBox='0 0 15 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.29167 7.45833L0.25 1.41667C0.166667 1.33333 0.104167 1.24306 0.0625 1.14583C0.0208333 1.04861 0 0.944445 0 0.833333C0 0.611111 0.0763889 0.416667 0.229167 0.25C0.381944 0.0833333 0.583333 0 0.833333 0H13.5C13.75 0 13.9514 0.0833333 14.1042 0.25C14.2569 0.416667 14.3333 0.611111 14.3333 0.833333C14.3333 0.888889 14.25 1.08333 14.0833 1.41667L8.04167 7.45833C7.90278 7.59722 7.76389 7.69445 7.625 7.75C7.48611 7.80556 7.33333 7.83333 7.16667 7.83333C7 7.83333 6.84722 7.80556 6.70833 7.75C6.56944 7.69445 6.43056 7.59722 6.29167 7.45833Z' fill='%23141A1E'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 0.9375rem 0.5rem;
    height: auto;
    min-height: 3.5rem;
    line-height: 1.25rem;
    padding-right: 2.1875rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    appearance: none;
    white-space: normal;
    overflow-wrap: anywhere;
    text-overflow: clip;
    color: rgb(104, 116, 124);
    background-position: right 1.25rem center;
}

.get-started-today-form-field select option {
    white-space: normal;
}

.get-started-today-form-checkbox {
    display: flex;
    align-items: flex-start;
    /* gap: 0.75rem; */
    margin-top: 0.5rem;
    color: var(--color-get-started-list-item-label);
    margin-bottom: 0.5rem;
    /* padding-left: 16px; /* Add indent spacing */
    /* margin: 20px 0; */
}

.get-started-today-form-checkbox input[type="checkbox"] {
    width: 1.125rem;
    height: 1.125rem;
    margin: 0;
    flex-shrink: 0;
    margin-top: 0;
    align-self: flex-start;
    position: relative;
    top: 0;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: none;
    background-color: transparent;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    border: 0.0625rem solid var(--color-gray-border);
    border-radius: 0.125rem;
    outline: none;
    transition: background-image 0.2s ease, border-color 0.2s ease;
    /* Ensure checkbox is clickable and functional */
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
    visibility: visible;
    display: block;
}

/* Checked state on light background - use GS token + mask so the fill is theme-driven */
.get-started-today-form-checkbox input[type="checkbox"]:checked {
    background-color: var(--color-gs-checkbox);
    /* use the approved SVG asset as the mask so the fill follows the theme token */
    -webkit-mask-image: url('../../../images/hero_get_started_select_check_box.svg');
    mask-image: url('../../../images/hero_get_started_select_check_box.svg');
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    /* keep a visible border when checked so the box remains defined */
    border: 0.0625rem solid var(--color-gray-border);
}

/* Dark background - unchecked state (empty checkbox with border) */
.form-dark-bg .get-started-today-form-checkbox input[type="checkbox"] {
    background-image: none;
    background-color: transparent;
    border: 0.0625rem solid var(--color-white);
}

/* Dark background - checked state (with checkmark) */
.form-dark-bg .get-started-today-form-checkbox input[type="checkbox"]:checked {
    background-color: var(--color-white);
    /* use the same SVG mask as hero block for consistency */
    -webkit-mask-image: url('../../../images/hero_get_started_select_check_box.svg');
    mask-image: url('../../../images/hero_get_started_select_check_box.svg');
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    /* match hero block styling - no border */
    border: none;
    color: var(--color-white);
}

.get-started-today-disclaimer {
    font-size: 0.75rem;
    color: var(--color-primary-dark);
    line-height: 1.4;
    margin: 0;
    cursor: pointer;
    word-wrap: break-word;
    overflow-wrap: break-word;
    flex: 1;
}

.get-started-today-disclaimer p {
    margin: 0;
    line-height: 1.4;
    display: inline;
}

.get-started-today-disclaimer p {
    margin: 0;
}

.get-started-today-submit {
    width: 100%;
    max-width: 15.3125rem;
    background-color: var(--color-getstarted-button);
    color: var(--color-white);
    border: none;
    border-radius: 6.25rem;
    padding: 1.1875rem 2rem;
    font-family: 'Outfit', sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 1.125rem;
    line-height: 1.5rem;
    letter-spacing: 0;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.15s ease-in-out;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    position: relative;
    /* margin-top: 20px; */
}

/* Image Left / Form Right variant – use dark text color on button */
.layout-reversed .get-started-today-submit {
    color: var(--color-white);
    background-color: var(--color-getstarted-button);
}

/* Add arrow icon after button text for custom form */
.get-started-today-submit::after {
    content: '';
    width: 0.875rem;
    height: 0.875rem;
    background-image: url('../../../images/arrow_forward_white.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    opacity: 1;
    filter: brightness(1) contrast(1);
    margin-left: 0.5rem;
}

/* Image Left / Form Right layout - use dark arrow SVG */
.layout-reversed .get-started-today-submit::after {
    width: 1.5rem;
    height: 1.5rem;
    /* color the arrow from the GS checkbox token so themes control arrow color */
    background-color: var(--color-white);
    -webkit-mask-image: url('../../../images/arrow_forward_mask.svg');
    mask-image: url('../../../images/arrow_forward_mask.svg');
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    background-size: 100% 100%;
    filter: none;
}

/* Remove arrow if it's already in the content (from previous implementation) */
.get-started-today-submit img.get-started-today-submit-arrow {
    display: none;
}

/* CF7 Submit Button - Add arrow icon */
.get-started-today-block .wpcf7-submit,
.get-started-today-block input[type="submit"].wpcf7-submit {
    position: relative;
}

.get-started-today-block .wpcf7-submit::after,
.get-started-today-block input[type="submit"].wpcf7-submit::after {
    content: '';
    width: 1.25rem;
    height: 1.25rem;
    background-image: url('../../../images/arrow_forward_white.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    opacity: 1;
    filter: brightness(1) contrast(1);
    margin-left: 0.5rem;
    vertical-align: middle;
}

.get-started-today-submit:hover {
    background-color: var(--color-green-cta);
}

.get-started-today-submit:focus {
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(108, 185, 44, 0.25);
}

.get-started-today-image {
    background-color: var(--color-gray-bootstrap);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    min-width: 0;
}

.get-started-today-image img {
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    min-width: 0;
}

.get-started-today-image-placeholder {
    color: var(--color-text-caption);
    font-size: 1.2rem;
    font-weight: 500;
}

/* WYSIWYG Content Styles */
.get-started-today-wysiwyg-content {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    box-sizing: border-box;
}

/* Make iframes responsive and fit the container */
.get-started-today-wysiwyg-content iframe {
    width: 100% !important;
    height: 100% !important;
    min-height: 25rem;
    border: 0;
    display: block;
}

/* Responsive iframe heights */
@media (min-width: 768px) and (max-width: 1023px) {

    /* Tablet: Maintain 4:3 aspect ratio */
    .get-started-today-wysiwyg-content iframe {
        aspect-ratio: 4 / 3;
        min-height: 31.25rem;
        max-height: 37.5rem;
        width: 100%;
    }
}

@media (min-width: 1024px) {
    .get-started-today-wysiwyg-content iframe {
        min-height: 43.5rem;
        width: 100%;
        min-width: 59.375rem;
    }

    /* .label-inner {
        color: var(--color-gray-ui) ;
    } */
}



/* General content styling within WYSIWYG */
.get-started-today-wysiwyg-content p,
.get-started-today-wysiwyg-content h1,
.get-started-today-wysiwyg-content h2,
.get-started-today-wysiwyg-content h3,
.get-started-today-wysiwyg-content h4,
.get-started-today-wysiwyg-content h5,
.get-started-today-wysiwyg-content h6 {
    margin: 0 0 1em 0;
    padding: 0 1.25rem;
}

.get-started-today-wysiwyg-content img:not([class*="wp-image"]) {
    max-width: 100%;
    height: auto;
    display: block;
}

.sr-only {
    position: absolute;
    width: 0.0625rem;
    height: 0.0625rem;
    padding: 0;
    margin: -0.0625rem;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Block Alignment Support */
.get-started-today-block.alignwide {
    max-width: 75rem;
    margin-left: auto;
    margin-right: auto;
}

.get-started-today-block.alignfull {
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

/* Fix for editor - prevent overflow */
.block-editor-block-list__layout .get-started-today-block.alignfull,
.editor-styles-wrapper .get-started-today-block.alignfull,
.wp-block-acf-get-started-today .get-started-today-block.alignfull {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

/* Responsive Design */
@media (min-width: 1025px) {

    .get-started-today-form,
    .layout-reversed .get-started-today-form {
        padding-top: 7.5rem !important;
        padding-bottom: 7.5rem !important;
    }
}

@media (min-width: 1281px) and (max-width: 1540px) {
    .get-started-today-form {
        padding-right: 5rem;
    }

    .layout-reversed .get-started-today-form {
        padding-left: 5rem;
    }
}

@media (min-width: 1025px) and (max-width: 1280px) {
    .get-started-today-form {
        padding-left: 5rem;
        padding-right: 4rem;
        max-width: 100%;
        box-sizing: border-box;
    }

    .layout-reversed .get-started-today-form {
        padding-right: 5rem;
        padding-left: 4rem;
        max-width: 100%;
        box-sizing: border-box;
    }
}

@media (max-width: 1160px) {
    .get-started-today-form-row {
        gap: 1rem;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {

    /* Tablet styles here */
    .get-started-today-form {
        padding: 5rem 3.75rem 5rem 3.125rem;
        max-width: 100%;
        box-sizing: border-box;
    }
}

@media (max-width: 1024px) {
    .get-started-today-content {
        grid-template-columns: 1fr;
        max-width: 100%;
        overflow-x: hidden;
    }

    .get-started-today-form {
        /* padding: 3.75rem 1rem; */
        padding: 3.75rem 1rem 5rem;
        display: flex;
        flex-direction: column;
        /* align-items: center; */
        max-width: 100%;
        width: 100%;
        box-sizing: border-box;
    }

    /* Mobile styles for Image Left / Form Right layout */
    .layout-reversed .get-started-today-form {
        align-items: flex-start;
        /* padding: 60px 16px; */
        padding: 3.75rem 1rem 5rem;
    }

    /* Shared text width on mobile - responsive */
    .get-started-today-heading,
    .get-started-today-description {
        width: 100%;
        box-sizing: border-box;
    }

    /* Remove max-width constraint for Image Left / Form Right layout on mobile */
    .layout-reversed .get-started-today-heading {
        font-family: 'Outfit', sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size: 2rem;
        line-height: 2.5rem;
        letter-spacing: 0;
        max-width: 100%;
        width: 100%;
    }

    .layout-reversed .get-started-today-description {
        font-family: 'Outfit', sans-serif;
        font-weight: 300;
        font-style: normal;
        font-size: 1rem;
        line-height: 1.5rem;
        letter-spacing: 0;
        max-width: 100%;
        width: 100%;
    }

    /* Ensure form fields are left-aligned for Image Left / Form Right layout */
    .layout-reversed .get-started-today-form-fields {
        align-items: flex-start;
        width: 100%;
    }

    .get-started-today-form-fields {
        gap: 1.5rem;
    }

    /* Mobile only: apply spacing directly on checkbox row */
    .get-started-today-form-checkbox {
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
    }

    .get-started-today-heading {
        font-family: 'Outfit', sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size: 2rem;
        line-height: 2.5rem;
        letter-spacing: 0;
        margin-bottom: 1.5rem;
        padding-left: 1rem;
        /* margin-right: 2rem !important; */
        padding-right: 1rem;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }

    .get-started-today-description {
        font-family: 'Outfit', sans-serif;
        font-weight: 300;
        font-style: normal;
        font-size: 1rem;
        line-height: 1.5rem;
        letter-spacing: 0;
        margin-bottom: 2rem;
        padding-left: 1rem;
        padding-right: 1rem;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }

    /* Center submit button on mobile for default layout */
    .get-started-today-submit {
        display: block;
        margin: 0rem auto 0;
        width: 100%;
        max-width: 15rem;
        box-sizing: border-box;
    }

    /* Left-align submit button for Image Left / Form Right layout on mobile */
    .layout-reversed .get-started-today-submit {
        font-family: 'Outfit', sans-serif;
        font-weight: 500;
        font-style: normal;
        font-size: 1.125rem;
        line-height: 1.5rem;
        letter-spacing: 0;
        text-align: center;
        width: 16.25rem;
        height: 3.5rem;
        opacity: 1;
        gap: 0.5rem;
        border-radius: 6.25rem;
        padding-top: 0.625rem;
        padding-right: 2rem;
        padding-bottom: 0.6875rem;
        padding-left: 3rem;
        white-space: nowrap;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    /* Center arrow icon on mobile for Image Left / Form Right layout */
    .layout-reversed .get-started-today-submit::after {
        margin-left: 0;
        margin-right: 0;
        display: inline-block;
        vertical-align: middle;
        flex-shrink: 0;
    }

    .get-started-today-form-row {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        width: 100%;
        max-width: 100%;
    }

    /* Keep state + zipcode in a two-column row (Row 3) - only if space allows */
    .get-started-today-form-row:nth-of-type(3) {
        grid-template-columns: 1fr 1fr;
        /* gap: 1.5rem; */
        gap: 1rem;
    }

    .get-started-today-image {
        display: flex;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .get-started-today-form {
        order: 1;
    }

    .get-started-today-image {
        order: 2;
        width: 100%;
        min-height: 0;
    }

    .get-started-today-image img {
        height: 30.625rem;
        min-height: 0;
        object-fit: contain;
    }
}

@media (max-width: 767.98px) {
    .get-started-today-image {
        display: none;
    }
}


@media (max-width: 480px) {
    .get-started-today-form {
        /* padding: 40px 16px; */
        padding: 3.75rem 1rem 5rem;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .get-started-today-form-fields {
        gap: 1.5rem;
    }

    /* Make heading/description fully responsive on very small screens */
    .get-started-today-heading,
    .get-started-today-description {
        max-width: 100%;
        width: 100%;
        /* padding: 0 8px; */
        box-sizing: border-box;
    }

    .get-started-today-heading {
        font-family: 'Outfit', sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size: 2rem;
        line-height: 2.5rem;
        letter-spacing: 0;
    }

    /* Keep state and zipcode side by side on all mobile screens */
    .get-started-today-form-row:nth-of-type(3) {
        grid-template-columns: 1fr 1fr;
        /* gap: 1.5rem; */
        gap: 1rem;
    }

    .get-started-today-submit {
        max-width: 15rem;
        width: 100%;
    }
}

/* Extra small devices - prevent any overflow */
@media (max-width: 320px) {
    .get-started-today-form {
        /* padding: 32px 12px; */
        padding: 3.75rem 1rem 5rem;
    }

    .get-started-today-heading,
    .get-started-today-description {
        padding: 0 0.25rem;
    }

    .get-started-today-form-fields {
        gap: 1.5rem;
    }

    .get-started-today-form-row {
        gap: 1.5rem;
    }
}

/* Editor Preview Styles */
.wp-block-acf-get-started-today .get-started-today-block {
    border: 0.125rem dashed var(--color-border-medium);
    position: relative;
}

.wp-block-acf-get-started-today .get-started-today-block::after {
    content: "📝 Get Started Today - Contact form with image";
    position: absolute;
    top: 0.625rem;
    right: 0.625rem;
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 0.5rem 0.75rem;
    font-size: 0.6875rem;
    border-radius: 0.25rem;
    z-index: 10;
    font-weight: 500;
    max-width: 17.5rem;
    text-align: center;
    line-height: 1.3;
}

/* Hide CF7 Akismet honeypot field on frontend for this block */
.get-started-today-block label>textarea[name="_wpcf7_ak_hp_textarea"],
.get-started-today-block textarea[name="_wpcf7_ak_hp_textarea"],
.get-started-today-block [name="_wpcf7_ak_hp_textarea"] {
    position: absolute;
    left: -624.9375rem;
    width: 0.0625rem;
    height: 0.0625rem;
    opacity: 0;
    pointer-events: none;
}



/* 🔥 Force remove uppercase from CF7 selects */
.get-started-today-block select,
.get-started-today-block .wpcf7-form-control.wpcf7-select,
.get-started-today-block select option {
    text-transform: none !important;
}

select,
option {
    text-transform: none !important;
}

/* Confirmation Message H2 Styling */
.confirmation-message h2 {
    width: 39.5rem;
}

/* Tablet: 100% width */
@media (max-width: 1024px) {
    .confirmation-message h2 {
        width: 100%;
    }
}

/* Mobile: 100% width */
@media (max-width: 768px) {
    .confirmation-message h2 {
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .get-started-today-form-row {
        grid-template-columns: 1fr 1fr !important;
    }
}



.get-started-dark-form-field textarea {
    max-width: 100%;
    border-radius: 0.5rem;
    justify-content: space-between;
    opacity: 1;
    border-width: 0.0625rem;
    padding: 1rem;
    border: 0.0625rem solid var(--color-gray-border);
    font-family: 'Outfit', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.125rem;
    line-height: 1.625rem;
    letter-spacing: 0;
    vertical-align: middle;
    background-color: var(--color-white);
    color: var(--color-black-soft);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    box-sizing: border-box;
    min-width: 0;
}

.form-dark-bg .get-started-dark-form-field textarea {
    max-width: 100%;
    border-radius: 0.5rem;
    justify-content: space-between;
    opacity: 1;
    border-width: 0.0625rem;
    padding: 1rem;
    border: 0.0625rem solid var(--color-gray-border);
    font-family: 'Outfit', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.125rem;
    line-height: 1.625rem;
    letter-spacing: 0;
    vertical-align: middle;
    background-color: var(--color-white);
    color: var(--color-black-soft);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    box-sizing: border-box;
    min-width: 0;
}

.get-started-dark-form-field textarea:focus {
    outline: none;
    border-color: var(--color-accent-blue);
    box-shadow: var(--textarea-focus-shadow);
}

.form-dark-bg .get-started-dark-form-field textarea:focus {
    outline: none;
    border-color: var(--color-accent-blue);
    box-shadow: var(--textarea-focus-shadow);
}