.demo-content__container {
    max-width: var(--container-width);
    margin-inline: auto;
    padding-inline: var(--space-md, 2rem);
}

.demo-content__container .wp-block-heading{
    margin: 1rem 0rem !important;
}

.demo-content__container .wp-block-column{
    padding: 1rem !important;
}

.demo-content .fluentform .ff-el-form-control {
    width: 100%;
    height: 3.375rem;

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

    padding: 0 1rem;

    border-radius: 0.5rem;
    border: 1px solid #8AA2CC;
    background: #FFF;

    color: #8AA2CC;

    font-family: "Swiza", sans-serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.25rem;

    box-sizing: border-box;
}

/* Fluent Forms' own default stylesheet targets select.ff-el-form-control:not([size]):not([multiple])
   with a height rule that outranks the class selector above, so it must be matched/overridden explicitly */
.demo-content .fluentform select.ff-el-form-control:not([size]):not([multiple]) {
    height: 3.375rem !important;
    padding: 0 1rem;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%238AA2CC' stroke-width='2'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1rem;
}


.demo-content .fluentform .ff-el-form-control::placeholder {
    color: #8AA2CC;
    opacity: 1;
}

.demo-content .fluentform .ff-el-form-control {
    color: var(--Blue, #001E5A);
}

.demo-content .fluentform textarea.ff-el-form-control {
    width: 100%;
    min-height: 10rem;
    height: auto;

    padding: 1rem;

    resize: vertical;

    box-sizing: border-box;
}

.demo-content .fluentform .ff-el-group {
    padding: 1rem 0 0 0;
}

.demo-content .fluentform button.ff-btn-submit {
    display: flex;
    width: 8.5625rem;
    height: 3.4375rem;

    padding: 1rem 1.25rem;

    justify-content: center;
    align-items: center;
    gap: 0.625rem;

    box-sizing: border-box;

    border: none;
    border-radius: 0.5rem;

    background: var(--Orange, #FF7D00) !important;

    color: #FFF !important;

    font-family: "Swiza", sans-serif !important;
    font-size: 1rem !important;
    font-style: normal;
    font-weight: 600 !important;
    line-height: 1.4rem !important;

    cursor: pointer;
    opacity: 1 !important;
    transition: all 0.3s ease;
}

.demo-content .fluentform button.ff-btn-submit:hover {
    background: #FFA233 !important;
    border-color: #FFA233 !important;
    color: #FFF !important;
}

.demo-content .fluentform input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;

    width: 1.5rem !important;
    height: 1.5rem !important;

    margin: 0;

    border-radius: 0.25rem;
    border: 1px solid var(--Soft-Blue-2, #8AA2CC);
    background: #FFF;

    cursor: pointer;
    flex: 0 0 1.5rem;

    box-sizing: border-box;
}

.demo-content .fluentform input[type="checkbox"]:checked {
    background-color: var(--Blue, #001E5A);
    border-color: var(--Blue, #001E5A);

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8l3 3 7-7' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1rem;
}

.demo-content .fluentform .ff-el-form-check-label {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    color: #5270A3;
    font-family: "Swiza", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
}

.demo-content .fluentform .ff-el-form-check-input {
    width: 1.5rem !important;
    height: 1.5rem !important;
    margin: 0 !important;
    flex: 0 0 1.5rem;
}

.demo-content .fluentform .ff-btn-submit {
    width: 9rem !important;
    height: 3.4375rem !important;

    padding: 1rem 1.25rem;

    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;

    box-sizing: border-box;
    border-radius: 0.5rem;
    background: var(--Orange, #FF7D00);

    color: #FFF;
    font-family: "Swiza", sans-serif;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4rem;
}

.demo-content .fluentform .ff-el-form-check_container.ff-el-form-check-inline .ff-el-form-check,
.demo-content .fluentform .ff_custom_html {
    color: #5270A3;
    font-family: "Swiza", sans-serif;
    font-size: 0.875rem;
    line-height: 1.25rem;
}

.demo-content .fluentform .ff_custom_html a {
    color: var(--Blue, #001E5A);
    text-decoration: underline;
}

.demo-content .fluentform .ff-t-container {
    display: flex;
    gap: 1rem;
}

.demo-content .fluentform .ff-t-cell {
    flex: 1;
}

/* content */
.demo-content {
    padding: 0;
}

.demo-content h2.wp-block-heading {
    color: var(--Blue, #001E5A);
    font-family: "Swiza", sans-serif;
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 2.8125rem;
}

.demo-content p.wp-block-paragraph {
    margin: 1rem 0;
    color: var(--Blue, #001E5A);
    font-family: "Swiza", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
}
.demo-content .fluentform p,
.demo-content .fluentform div,
.demo-content .fluentform label {
    color: #5270A3 !important;
}
.demo-content .wp-block-columns > .wp-block-column:last-child {
    background-color: #EEF0F3 !important;
    padding: 2rem !important;
}

/* list styles */
.demo-content ul {
    list-style: none;
    padding-left: 0;
    margin-left:15px;
}

.demo-content ul li {
    position: relative;
    padding-left: 30px;
    margin-bottom: 14px;
    color: #001E5A;
}

/* Green circle */
.demo-content ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1px;
    width: 22px;
    height: 22px;
    background: #6FC36A;
    border-radius: 50%;
}

/* White checkmark */
.demo-content ul li::after {
    content: "";
    position: absolute;
    left: 7px;
    top: 6px;
    width: 5px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
/* Apply page (page-apply.php) reuses the Demo page layout and form styling:
   full page width, so editor columns (text | form) split like on Demo. */
.apply-content {
    padding-top: 3rem;
    padding-bottom: 5rem;
}

/* Columns block with its own background colour (e.g. the grey box on the
   Apply page, set in the editor): the text column gets the same inner
   spacing as the form column instead of touching the box edge. */
body .demo-content .wp-block-columns.has-background {
    padding: 0 !important;
}

body .demo-content .wp-block-columns.has-background > .wp-block-column,
body .demo-content__container .wp-block-columns.has-background > .wp-block-column:first-child {
    padding: 2rem !important;
}

@media (min-width: 782px) {
    body .demo-content .wp-block-columns.has-background > .wp-block-column,
    body .demo-content__container .wp-block-columns.has-background > .wp-block-column:first-child {
        padding: 3rem !important;
    }
}

/* Same when the grey background sits on a Group (or any other) block that
   wraps the columns, instead of on the Columns block itself. */
body .demo-content .has-background:not(.wp-block-columns):not(.wp-block-column) {
    padding: 2rem !important;
    box-sizing: border-box;
}

body .demo-content .has-background:not(.wp-block-columns):not(.wp-block-column) .wp-block-column:first-child {
    padding-left: 0 !important;
}

@media (min-width: 782px) {
    body .demo-content .has-background:not(.wp-block-columns):not(.wp-block-column) {
        padding: 3rem !important;
    }
}

/* Apply page: same look as Contact - text on white on the left, only the
   form column grey on the right. If the editor content wraps the two
   columns inside another Columns/Column block (nested), the outer column
   would otherwise pick up the grey "form column" style and turn the whole
   area grey, with the text stuck to its edge. */
body .demo-content .wp-block-columns > .wp-block-column:has(> .wp-block-columns),
body .demo-content .wp-block-columns > .wp-block-column:last-child:has(> .wp-block-columns) {
    background: transparent !important;
    padding: 0 !important;
}
