/* Voordelenkaarten: only block-specific layout and card treatments.
 * Shared Gutenberg typography and color tokens remain authoritative.
 */
.luxa-block-benefits .luxa-block-benefits__header {
    max-width: 820px;
    margin-bottom: 38px;
}
.luxa-block-benefits.luxa-design-align-center .luxa-block-benefits__header {
    margin-inline: auto;
}
.luxa-block-benefits .luxa-block-benefits__grid {
    display: grid;
    grid-template-columns: repeat(var(--luxa-benefits-cols, 3), minmax(0, 1fr));
    gap: var(--luxa-benefits-gap, 24px);
    margin: 0;
    padding: 0;
    list-style: none;
}
/* Each style is an independent preset; extra controls only set variables when selected. */
.luxa-block-benefits--elevated {
    --luxa-benefits-card-bg: #fffefa;
    --luxa-benefits-card-border: rgb(125 93 49 / .11);
    --luxa-benefits-card-top: 1px;
    --luxa-benefits-card-top-color: var(--luxa-benefits-card-border);
    --luxa-benefits-card-shadow: 0 18px 38px rgb(49 33 16 / .115);
    --luxa-benefits-card-shadow-hover: 0 22px 44px rgb(49 33 16 / .15);
}
.luxa-block-benefits--outlined {
    --luxa-benefits-card-bg: transparent;
    --luxa-benefits-card-border: rgb(155 117 65 / .50);
    --luxa-benefits-card-top: 1px;
    --luxa-benefits-card-top-color: var(--luxa-benefits-card-border);
    --luxa-benefits-card-shadow: none;
    --luxa-benefits-card-shadow-hover: none;
}
.luxa-block-benefits--minimal {
    --luxa-benefits-card-bg: transparent;
    --luxa-benefits-card-border: transparent;
    --luxa-benefits-card-top: 0px;
    --luxa-benefits-card-top-color: transparent;
    --luxa-benefits-card-shadow: none;
    --luxa-benefits-card-shadow-hover: none;
}
.luxa-block-benefits--editorial {
    --luxa-benefits-card-bg: #f6efe4;
    --luxa-benefits-card-border: #e2d4c0;
    --luxa-benefits-card-top: 3px;
    --luxa-benefits-card-top-color: #b18a4e;
    --luxa-benefits-card-shadow: 0 7px 20px rgb(49 33 16 / .035);
    --luxa-benefits-card-shadow-hover: 0 10px 26px rgb(49 33 16 / .065);
}
.luxa-block-benefits.luxa-block--dark {
    --luxa-benefits-card-bg: #302821;
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #f9f3eb);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #d9cabb);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #e2c27d);
}
.luxa-block-benefits.luxa-block--dark.luxa-block-benefits--outlined,
.luxa-block-benefits.luxa-block--dark.luxa-block-benefits--minimal {
    --luxa-benefits-card-bg: transparent;
}
.luxa-block-benefits.luxa-block--dark.luxa-block-benefits--editorial {
    --luxa-benefits-card-bg: #3a3028;
    --luxa-benefits-card-border: #63503b;
}
.luxa-block-benefits .luxa-block-benefits__card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding: var(--luxa-benefits-padding, 28px);
    border: 1px solid var(--luxa-benefits-card-border, transparent);
    border-top-width: var(--luxa-benefits-card-top, 1px);
    border-top-color: var(--luxa-benefits-card-top-color, var(--luxa-benefits-card-border));
    border-radius: var(--luxa-benefits-radius, 18px);
    background: var(--luxa-benefits-card-bg, #fffefa);
    box-shadow: var(--luxa-benefits-card-shadow, none);
    color: var(--luxa-benefits-card-ink, var(--luxa-block-ink));
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.luxa-block-benefits .luxa-block-benefits__card:hover {
    transform: translateY(-2px);
    box-shadow: var(--luxa-benefits-card-shadow-hover, none);
}
.luxa-block-benefits--outlined .luxa-block-benefits__card:hover {
    border-color: #aa854f;
}
.luxa-block-benefits.luxa-block-benefits--minimal .luxa-block-benefits__card {
    padding: 4px 0;
    border: 0;
}
.luxa-block-benefits--minimal .luxa-block-benefits__card:hover {
    transform: none;
}
.luxa-block-benefits .luxa-block-benefits__visual {
    display: block;
    width: 100%;
    margin: 0 0 24px;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: max(0px, calc(var(--luxa-benefits-radius, 18px) - 6px));
    background: rgb(137 115 85 / .10);
}
.luxa-block-benefits--ratio-1-1 .luxa-block-benefits__visual {
    aspect-ratio: 1 / 1;
}
.luxa-block-benefits--ratio-16-9 .luxa-block-benefits__visual {
    aspect-ratio: 16 / 9;
}
.luxa-block-benefits .luxa-block-benefits__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.luxa-block-benefits--fit-contain .luxa-block-benefits__image {
    object-fit: contain;
}
.luxa-block-benefits .luxa-block-benefits__icon {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    margin: 0 0 22px;
    border: 1px solid rgb(183 143 75 / .36);
    border-radius: 15px;
    background: rgb(214 182 111 / .12);
    color: #9a7337;
    font: 600 26px/1 Georgia, serif;
}
.luxa-block-benefits.luxa-block--dark .luxa-block-benefits__icon {
    border-color: rgb(226 194 125 / .45);
    background: rgb(226 194 125 / .13);
    color: #e2c27d;
}
.luxa-block-benefits .luxa-block-benefits__label {
    display: block;
    margin: 0 0 12px;
    font-family: var(--luxa-type-override-label-font, var(--luxa-type-label-font, var(--luxa-font-body, system-ui, sans-serif)));
    font-size: var(--luxa-type-override-label-size-desktop, var(--luxa-type-label-size-desktop, 12px));
    font-weight: var(--luxa-type-override-label-weight, var(--luxa-type-label-weight, 750));
    line-height: var(--luxa-type-override-label-line-height, var(--luxa-type-label-line-height, 1.4));
    letter-spacing: var(--luxa-type-override-label-tracking, var(--luxa-type-label-tracking, .12em));
    color: var(--luxa-benefits-card-label, var(--luxa-type-override-label-color, var(--luxa-type-label-color, #a47b3a)));
    text-transform: uppercase;
    overflow-wrap: anywhere;
}
.luxa-block-benefits .luxa-block-benefits__card-title {
    margin: 0;
    color: var(--luxa-benefits-card-ink, var(--luxa-type-override-card-color, var(--luxa-type-h3-color, var(--luxa-block-ink))));
    font-family: var(--luxa-type-override-card-font, var(--luxa-type-h3-font, var(--luxa-font-heading, Georgia, serif)));
    font-size: var(--luxa-type-override-card-size-desktop, var(--luxa-type-h3-size-desktop, 26px));
    font-weight: var(--luxa-type-override-card-weight, var(--luxa-type-h3-weight, 650));
    line-height: var(--luxa-type-override-card-line-height, var(--luxa-type-h3-line-height, 1.22));
    letter-spacing: var(--luxa-type-override-card-tracking, var(--luxa-type-h3-tracking, -.02em));
    overflow-wrap: anywhere;
}
.luxa-block-benefits .luxa-block-benefits__card-body {
    margin: 13px 0 0;
    color: var(--luxa-benefits-card-muted, var(--luxa-type-override-body-color, var(--luxa-type-body-color, var(--luxa-block-muted))));
    font-family: var(--luxa-type-override-body-font, var(--luxa-type-body-font, var(--luxa-font-body, system-ui, sans-serif)));
    font-size: var(--luxa-type-override-body-size-desktop, var(--luxa-type-body-size-desktop, 16px));
    font-weight: var(--luxa-type-override-body-weight, var(--luxa-type-body-weight, 400));
    line-height: var(--luxa-type-override-body-line-height, var(--luxa-type-body-line-height, 1.65));
    letter-spacing: var(--luxa-type-override-body-tracking, var(--luxa-type-body-tracking, normal));
    overflow-wrap: anywhere;
}
.luxa-block-benefits .luxa-block-benefits__card-link {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    padding-top: 24px;
    color: var(--luxa-type-override-button-color, var(--luxa-type-button-color, #896229));
    font-family: var(--luxa-type-override-button-font, var(--luxa-type-button-font, var(--luxa-font-body, system-ui, sans-serif)));
    font-size: var(--luxa-type-override-button-size-desktop, var(--luxa-type-button-size-desktop, 14px));
    font-weight: var(--luxa-type-override-button-weight, var(--luxa-type-button-weight, 700));
    line-height: var(--luxa-type-override-button-line-height, var(--luxa-type-button-line-height, 1.4));
    letter-spacing: var(--luxa-type-override-button-tracking, var(--luxa-type-button-tracking, normal));
    text-decoration: none;
}
.luxa-block-benefits.luxa-block--dark .luxa-block-benefits__card-link {
    color: var(--luxa-type-override-button-color, var(--luxa-type-button-color, #e2c27d));
}
.luxa-block-benefits .luxa-block-benefits__card-link:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
}
.luxa-block-benefits .luxa-block-benefits__card-link:focus-visible {
    outline: 2px solid #c99f55;
    outline-offset: 5px;
}
.luxa-block-benefits .luxa-block-benefits__footer {
    margin-top: 36px;
}
.luxa-block-benefits.luxa-design-align-center .luxa-block-benefits__footer {
    justify-content: center;
}
.luxa-block-benefits__empty {
    padding: 42px 24px;
    border: 1px dashed #bfae92;
    border-radius: 12px;
    color: var(--luxa-block-muted);
    text-align: center;
}
.luxa-block-editor.luxa-block-benefits .luxa-block-benefits__card:hover {
    transform: none;
}
.luxa-block-editor.luxa-block-benefits .luxa-block-benefits__card-title,
.luxa-block-editor.luxa-block-benefits .luxa-block-benefits__card-body {
    min-height: 1.2em;
}
@media (max-width: 960px) and (min-width: 641px) {
    .luxa-block-benefits .luxa-block-benefits__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .luxa-block-benefits .luxa-block-benefits__grid {
        grid-template-columns: repeat(var(--luxa-benefits-mobile-cols, 1), minmax(0, 1fr));
        gap: clamp(14px, 4vw, var(--luxa-benefits-gap, 24px));
    }
    .luxa-block-benefits .luxa-block-benefits__header {
        margin-bottom: 26px;
    }
    .luxa-block-benefits .luxa-block-benefits__card {
        padding: min(var(--luxa-benefits-padding, 28px), 22px);
    }
    .luxa-block-benefits .luxa-block-benefits__card-title {
        font-size: var(--luxa-type-override-card-size-mobile, var(--luxa-type-h3-size-mobile, var(--luxa-type-override-card-size-desktop, var(--luxa-type-h3-size-desktop, 23px))));
    }
    .luxa-block-benefits .luxa-block-benefits__card-body {
        font-size: var(--luxa-type-override-body-size-mobile, var(--luxa-type-body-size-mobile, var(--luxa-type-override-body-size-desktop, var(--luxa-type-body-size-desktop, 15px))));
    }
    .luxa-block-benefits .luxa-block-benefits__label {
        font-size: var(--luxa-type-override-label-size-mobile, var(--luxa-type-label-size-mobile, var(--luxa-type-override-label-size-desktop, var(--luxa-type-label-size-desktop, 12px))));
    }
    .luxa-block-benefits .luxa-block-benefits__card-link {
        font-size: var(--luxa-type-override-button-size-mobile, var(--luxa-type-button-size-mobile, var(--luxa-type-override-button-size-desktop, var(--luxa-type-button-size-desktop, 14px))));
    }
}
@media (prefers-reduced-motion: reduce) {
    .luxa-block-benefits .luxa-block-benefits__card {
        transition: none;
        transform: none;
    }
}


/* Advanced finish overrides are opt-in: auto classes intentionally set nothing. */
.luxa-block-benefits.luxa-benefits-surface-ivory {
    --luxa-benefits-card-bg: #fffcf7;
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #2d2721);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #695f55);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #966c33);
}
.luxa-block-benefits.luxa-benefits-surface-white {
    --luxa-benefits-card-bg: #fff;
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #29241f);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #685e54);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #966c33);
}
.luxa-block-benefits.luxa-benefits-surface-transparent {
    --luxa-benefits-card-bg: transparent;
}
.luxa-block-benefits.luxa-benefits-surface-espresso {
    --luxa-benefits-card-bg: #28221e;
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #faf3e9);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #d3c6b9);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #e1bc75);
    --luxa-benefits-card-border: rgb(235 213 178 / .20);
    --luxa-benefits-card-top-color: #c69c5e;
}
.luxa-block-benefits.luxa-benefits-surface-charcoal {
    --luxa-benefits-card-bg: #2b2c2d;
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #fbf6ef);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #d6d3ce);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #e5c48d);
    --luxa-benefits-card-border: rgb(242 236 223 / .22);
    --luxa-benefits-card-top-color: #c69c5e;
}
.luxa-block-benefits.luxa-benefits-shadow-none {
    --luxa-benefits-card-shadow: none;
    --luxa-benefits-card-shadow-hover: none;
}
.luxa-block-benefits.luxa-benefits-shadow-soft {
    --luxa-benefits-card-shadow: 0 9px 25px rgb(49 33 16 / .06);
    --luxa-benefits-card-shadow-hover: 0 12px 29px rgb(49 33 16 / .095);
}
.luxa-block-benefits.luxa-benefits-shadow-raised {
    --luxa-benefits-card-shadow: 0 18px 42px rgb(49 33 16 / .16);
    --luxa-benefits-card-shadow-hover: 0 22px 48px rgb(49 33 16 / .20);
}
.luxa-block-benefits.luxa-benefits-border-none {
    --luxa-benefits-card-border: transparent;
    --luxa-benefits-card-top-color: transparent;
}
.luxa-block-benefits.luxa-benefits-border-soft {
    --luxa-benefits-card-border: rgb(126 99 65 / .20);
    --luxa-benefits-card-top-color: rgb(126 99 65 / .20);
}
.luxa-block-benefits.luxa-benefits-border-strong {
    --luxa-benefits-card-border: rgb(158 123 72 / .60);
    --luxa-benefits-card-top-color: rgb(158 123 72 / .60);
}
.luxa-block-benefits.luxa-benefits-card-align-center .luxa-block-benefits__card {
    text-align: center;
    align-items: center;
}
.luxa-block-benefits.luxa-benefits-card-align-right .luxa-block-benefits__card {
    text-align: right;
    align-items: flex-end;
}
.luxa-block-benefits.luxa-benefits-card-align-center .luxa-block-benefits__card-link {
    align-self: center;
}
.luxa-block-benefits.luxa-benefits-card-align-right .luxa-block-benefits__card-link {
    align-self: flex-end;
}
.luxa-block-benefits.luxa-benefits-icon-align-left .luxa-block-benefits__icon { align-self: flex-start; }
.luxa-block-benefits.luxa-benefits-icon-align-center .luxa-block-benefits__icon { align-self: center; }
.luxa-block-benefits.luxa-benefits-icon-align-right .luxa-block-benefits__icon { align-self: flex-end; }
.luxa-block-benefits .luxa-block-benefits__icon .luxa-icon-svg {
    width: var(--luxa-benefits-icon-size, 26px);
    height: var(--luxa-benefits-icon-size, 26px);
}
.luxa-block-benefits.luxa-benefits-icon-shape-circle .luxa-block-benefits__icon { border-radius: 50%; }
.luxa-block-benefits.luxa-benefits-icon-shape-outlined .luxa-block-benefits__icon { background: transparent; }
.luxa-block-benefits.luxa-benefits-icon-shape-bare .luxa-block-benefits__icon {
    width: auto;
    height: auto;
    flex-basis: auto;
    border: none;
    border-radius: 0;
    background: none;
}
.luxa-block-benefits.luxa-benefits-icon-color-gold .luxa-block-benefits__icon { color: #a47b3a; }
.luxa-block-benefits.luxa-benefits-icon-color-dark .luxa-block-benefits__icon { color: #29241f; }
.luxa-block-benefits.luxa-benefits-icon-color-muted .luxa-block-benefits__icon { color: #81786e; }
.luxa-block-benefits.luxa-benefits-surface-espresso .luxa-block-benefits__icon,
.luxa-block-benefits.luxa-benefits-surface-charcoal .luxa-block-benefits__icon {
    background: rgb(226 194 125 / .11);
    border-color: rgb(226 194 125 / .3);
    color: #e2c27d;
}
.luxa-block-benefits.luxa-benefits-surface-espresso.luxa-benefits-icon-shape-bare .luxa-block-benefits__icon,
.luxa-block-benefits.luxa-benefits-surface-charcoal.luxa-benefits-icon-shape-bare .luxa-block-benefits__icon {
    background: none;
    border: none;
}
.luxa-block-benefits.luxa-benefits-surface-espresso.luxa-benefits-icon-shape-outlined .luxa-block-benefits__icon,
.luxa-block-benefits.luxa-benefits-surface-charcoal.luxa-benefits-icon-shape-outlined .luxa-block-benefits__icon {
    background: none;
}
.luxa-block-benefits.luxa-benefits-surface-espresso.luxa-benefits-icon-color-muted .luxa-block-benefits__icon,
.luxa-block-benefits.luxa-benefits-surface-charcoal.luxa-benefits-icon-color-muted .luxa-block-benefits__icon {
    color: #d0c0ac;
}
.luxa-block-benefits.luxa-benefits-surface-espresso .luxa-block-benefits__card-link,
.luxa-block-benefits.luxa-benefits-surface-charcoal .luxa-block-benefits__card-link {
    color: var(--luxa-type-override-button-color, #e2c27d);
}
@media (prefers-reduced-motion: reduce) {
    .luxa-block-benefits .luxa-block-benefits__card:hover { transform: none; }
}


/* Optional V4 editorial composition. Existing stacked benefits are untouched. */
.luxa-block-benefits.luxa-benefits-background-silk,
.luxa-block-benefits.luxa-benefits-background-curves {
    overflow: clip;
    isolation: isolate;
}
.luxa-block-benefits.luxa-benefits-background-silk {
    background-image:
        radial-gradient(ellipse 50% 60% at 105% 0%, rgb(202 169 129 / .22), transparent 75%),
        radial-gradient(ellipse 65% 60% at -10% 105%, rgb(184 145 97 / .16), transparent 78%),
        linear-gradient(135deg, rgb(255 253 247 / .45), transparent 60%);
}
.luxa-block-benefits.luxa-benefits-background-curves {
    background-image:
        radial-gradient(ellipse 65% 70% at 95% -12%, rgb(203 179 150 / .19), transparent 75%),
        radial-gradient(ellipse 75% 65% at -15% 112%, rgb(188 146 97 / .12), transparent 80%);
}
.luxa-block-benefits.luxa-benefits-background-silk::before,
.luxa-block-benefits.luxa-benefits-background-curves::before {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
    width: min(84vw, 1400px);
    height: clamp(220px, 25vw, 460px);
    left: -18%;
    bottom: -30%;
    border: 1px solid rgb(186 145 88 / .18);
    border-radius: 50%;
    transform: rotate(-9deg);
    background: linear-gradient(165deg, rgb(241 217 185 / .15), transparent 70%);
}
.luxa-block-benefits.luxa-benefits-background-silk::after,
.luxa-block-benefits.luxa-benefits-background-curves::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: 0;
    width: min(55vw, 900px);
    height: clamp(160px, 22vw, 380px);
    right: -17%;
    top: -29%;
    border-bottom: 1px solid rgb(172 125 69 / .19);
    border-radius: 50%;
    transform: rotate(12deg);
    background: linear-gradient(145deg, transparent 45%, rgb(220 192 153 / .11));
}
.luxa-block-benefits.luxa-benefits-background-curves::before {
    border-color: rgb(178 130 64 / .3);
    background: none;
}
.luxa-block-benefits.luxa-benefits-background-curves::after {
    border-bottom-color: rgb(178 130 64 / .28);
    background: none;
}
.luxa-block-benefits.luxa-benefits-background-silk > .luxa-block__container,
.luxa-block-benefits.luxa-benefits-background-curves > .luxa-block__container {
    position: relative;
    z-index: 1;
}
.luxa-block-benefits.luxa-benefits-heading-accent .luxa-block-benefits__header .luxa-block__eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;
}
.luxa-block-benefits.luxa-benefits-heading-accent .luxa-block-benefits__header .luxa-block__eyebrow::after {
    content: "";
    display: block;
    flex: 0 0 54px;
    height: 1px;
    background: #b18a4e;
}
.luxa-block-benefits.luxa-benefits-type-serif .luxa-block-benefits__header .luxa-block__heading {
    font-family: var(--luxa-type-override-heading-font, Georgia, "Times New Roman", serif);
    letter-spacing: -.035em;
}
.luxa-block-benefits.luxa-benefits-type-serif .luxa-block-benefits__card-title {
    font-family: var(--luxa-type-override-card-font, Georgia, "Times New Roman", serif);
    letter-spacing: -.02em;
}
.luxa-block-benefits.luxa-benefits-title-rule .luxa-block-benefits__card-title::after {
    content: "";
    display: block;
    width: 46px;
    height: 2px;
    background: #bd9450;
    margin-top: 15px;
}
.luxa-block-benefits.luxa-benefits-title-rule.luxa-benefits-card-align-center .luxa-block-benefits__card-title::after {
    margin-inline: auto;
}
.luxa-block-benefits.luxa-benefits-title-rule.luxa-benefits-card-align-right .luxa-block-benefits__card-title::after {
    margin-left: auto;
}
.luxa-block-benefits.luxa-benefits-icon-floating .luxa-block-benefits__icon {
    box-shadow: 0 7px 13px rgb(56 37 16 / .13), inset 0 1px 1px rgb(255 255 255 / .62);
}
.luxa-block-benefits.luxa-benefits-icon-floating.luxa-benefits-icon-shape-bare .luxa-block-benefits__icon {
    box-shadow: none;
}
@media (min-width: 961px) {
    .luxa-block-benefits.luxa-benefits-layout-split > .luxa-block__container {
        display: grid;
        grid-template-columns: minmax(0, var(--luxa-benefits-copy-width, 38%)) minmax(0, 1fr);
        grid-template-rows: minmax(0, 1fr) auto auto minmax(0, 1fr);
        column-gap: clamp(30px, 4vw, 72px);
        row-gap: 0;
        align-items: stretch;
    }
    .luxa-block-benefits.luxa-benefits-layout-split .luxa-block-benefits__header {
        grid-column: 1;
        grid-row: 2;
        max-width: none;
        min-width: 0;
        margin: 0;
        align-self: end;
    }
    .luxa-block-benefits.luxa-benefits-layout-split .luxa-block-benefits__grid,
    .luxa-block-benefits.luxa-benefits-layout-split .luxa-block-benefits__empty {
        grid-column: 2;
        grid-row: 1 / 5;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-self: center;
        min-width: 0;
    }
    .luxa-block-benefits.luxa-benefits-layout-split .luxa-block-benefits__footer {
        grid-column: 1;
        grid-row: 3;
        margin: 22px 0 0;
        align-self: start;
    }
    .luxa-block-benefits.luxa-benefits-layout-split.luxa-benefits-copy-align-start > .luxa-block__container {
        grid-template-rows: auto auto minmax(0, 1fr);
    }
    .luxa-block-benefits.luxa-benefits-layout-split.luxa-benefits-copy-align-start .luxa-block-benefits__header {
        grid-row: 1;
        align-self: start;
    }
    .luxa-block-benefits.luxa-benefits-layout-split.luxa-benefits-copy-align-start .luxa-block-benefits__footer {
        grid-row: 2;
    }
    .luxa-block-benefits.luxa-benefits-layout-split.luxa-benefits-copy-align-start .luxa-block-benefits__grid,
    .luxa-block-benefits.luxa-benefits-layout-split.luxa-benefits-copy-align-start .luxa-block-benefits__empty {
        grid-row: 1 / 4;
    }
}
@media (max-width: 960px) {
    /* Below desktop the copy leads and the benefit cards follow. */
    .luxa-block-benefits.luxa-benefits-layout-split .luxa-block-benefits__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .luxa-block-benefits.luxa-benefits-layout-split .luxa-block-benefits__header {
        margin-bottom: 30px;
    }
}
@media (max-width: 640px) {
    .luxa-block-benefits.luxa-benefits-layout-split .luxa-block-benefits__grid {
        grid-template-columns: repeat(var(--luxa-benefits-mobile-cols, 1), minmax(0, 1fr));
    }
    .luxa-block-benefits.luxa-benefits-background-silk::before,
    .luxa-block-benefits.luxa-benefits-background-curves::before {
        width: 160vw;
        bottom: -12%;
    }
    .luxa-block-benefits.luxa-benefits-background-silk::after,
    .luxa-block-benefits.luxa-benefits-background-curves::after {
        width: 100vw;
        right: -45%;
    }
}


/* ==========================================================================
   V5 LuxaLife Signature collection — four fully styled, opt-in card presets.
   No changes to existing card variants, saved content, block layout or icon IDs.
   "auto" lets the preset control each dimension; manual finishes take precedence.
   ========================================================================== */

/* Layered surfaces, safe readable ink and neutral metadata are preset-specific.
   A deliberate manual surface selection replaces the entire visual finish. */
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-surface-auto {
    /* The dark portal sidebar uses cool charcoal with a warm, offset gold light
       source, rather than the flat brown/black fill of the original preset.
       Move the glow INSIDE the card viewport so it remains visible at 2:1. */
    --luxa-benefits-card-bg:
        radial-gradient(ellipse 100% 120% at -9% 78%, rgb(178 128 43 / .29) 0%, rgb(125 92 47 / .12) 45%, transparent 74%),
        radial-gradient(ellipse 83% 70% at 105% -18%, rgb(198 156 96 / .11), transparent 76%),
        linear-gradient(152deg, #20201d 0%, #101112 58%, #1b1917 100%);
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #faf4e9);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #ddd1c0);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #e1bc7e);
}
.luxa-block-benefits.luxa-block-benefits--bronze.luxa-benefits-surface-auto {
    --luxa-benefits-card-bg:
        radial-gradient(ellipse 90% 80% at 2% 0%, rgb(199 136 69 / .24), transparent 62%),
        linear-gradient(143deg, #453327 0%, #33271f 50%, #211d1b 100%);
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #fff3e5);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #e3d1c1);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #f0c78d);
}
.luxa-block-benefits.luxa-block-benefits--champagne.luxa-benefits-surface-auto {
    --luxa-benefits-card-bg:
        radial-gradient(ellipse 100% 80% at 5% -14%, rgb(255 255 255 / .95), transparent 68%),
        linear-gradient(146deg, #fffdf9, #f1e5d4 100%);
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #302820);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #625546);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #966d35);
}
.luxa-block-benefits.luxa-block-benefits--pearl.luxa-benefits-surface-auto {
    --luxa-benefits-card-bg:
        radial-gradient(ellipse 100% 92% at 100% 0%, rgb(234 218 196 / .47), transparent 64%),
        linear-gradient(150deg, #fff, #f7f5f0 75%, #f1ede6);
    --luxa-benefits-card-ink: var(--luxa-type-override-card-color, #2c2925);
    --luxa-benefits-card-muted: var(--luxa-type-override-body-color, #625e58);
    --luxa-benefits-card-label: var(--luxa-type-override-label-color, #8c682f);
}
/* Borders and shadows use independently overridable "auto" channels. */
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-border-auto {
    --luxa-benefits-card-border: rgb(195 150 86 / .28);
    --luxa-benefits-card-top: 1px;
    --luxa-benefits-card-top-color: rgb(218 168 100 / .36);
}
.luxa-block-benefits.luxa-block-benefits--bronze.luxa-benefits-border-auto {
    --luxa-benefits-card-border: rgb(228 174 112 / .42);
    --luxa-benefits-card-top: 2px;
    --luxa-benefits-card-top-color: #cda069;
}
.luxa-block-benefits.luxa-block-benefits--champagne.luxa-benefits-border-auto {
    --luxa-benefits-card-border: rgb(191 150 96 / .45);
    --luxa-benefits-card-top: 2px;
    --luxa-benefits-card-top-color: #c59a5c;
}
.luxa-block-benefits.luxa-block-benefits--pearl.luxa-benefits-border-auto {
    --luxa-benefits-card-border: rgb(193 178 157 / .48);
    --luxa-benefits-card-top: 1px;
    --luxa-benefits-card-top-color: rgb(190 156 105 / .6);
}
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-shadow-auto {
    --luxa-benefits-card-shadow: 0 16px 42px rgb(28 23 19 / .2), inset 0 1px rgb(255 244 218 / .07);
    --luxa-benefits-card-shadow-hover: 0 22px 50px rgb(28 23 19 / .26), inset 0 1px rgb(255 244 218 / .09);
}
.luxa-block-benefits.luxa-block-benefits--bronze.luxa-benefits-shadow-auto {
    --luxa-benefits-card-shadow: 0 17px 42px rgb(67 39 21 / .2), inset 0 1px rgb(255 224 179 / .1);
    --luxa-benefits-card-shadow-hover: 0 22px 49px rgb(67 39 21 / .26), inset 0 1px rgb(255 224 179 / .13);
}
.luxa-block-benefits.luxa-block-benefits--champagne.luxa-benefits-shadow-auto {
    --luxa-benefits-card-shadow: 0 16px 38px rgb(118 80 45 / .105), inset 0 1px rgb(255 255 255 / .84);
    --luxa-benefits-card-shadow-hover: 0 21px 45px rgb(118 80 45 / .14), inset 0 1px rgb(255 255 255 / .94);
}
.luxa-block-benefits.luxa-block-benefits--pearl.luxa-benefits-shadow-auto {
    --luxa-benefits-card-shadow: 0 16px 42px rgb(65 55 42 / .08), inset 0 1px #fff;
    --luxa-benefits-card-shadow-hover: 0 21px 47px rgb(65 55 42 / .125), inset 0 1px #fff;
}
/* Signature surfaces receive a restrained inset frame rather than a flat tile.
   Content is never hidden underneath the decorative line. */
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-surface-auto .luxa-block-benefits__card,
.luxa-block-benefits.luxa-block-benefits--bronze.luxa-benefits-surface-auto .luxa-block-benefits__card,
.luxa-block-benefits.luxa-block-benefits--champagne.luxa-benefits-surface-auto .luxa-block-benefits__card,
.luxa-block-benefits.luxa-block-benefits--pearl.luxa-benefits-surface-auto .luxa-block-benefits__card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-surface-auto .luxa-block-benefits__card::before,
.luxa-block-benefits.luxa-block-benefits--bronze.luxa-benefits-surface-auto .luxa-block-benefits__card::before,
.luxa-block-benefits.luxa-block-benefits--champagne.luxa-benefits-surface-auto .luxa-block-benefits__card::before,
.luxa-block-benefits.luxa-block-benefits--pearl.luxa-benefits-surface-auto .luxa-block-benefits__card::before {
    content: "";
    position: absolute;
    inset: 6px;
    border-radius: max(0px, calc(var(--luxa-benefits-radius, 18px) - 6px));
    border: 1px solid var(--luxa-signature-inner-line, rgb(255 255 255 / .11));
    pointer-events: none;
    z-index: 0;
}
.luxa-block-benefits:is(.luxa-block-benefits--noir, .luxa-block-benefits--bronze,
    .luxa-block-benefits--champagne, .luxa-block-benefits--pearl)
    .luxa-block-benefits__card > * {
    position: relative;
    z-index: 1;
}
.luxa-block-benefits.luxa-block-benefits--noir {
    --luxa-signature-inner-line: rgb(225 180 113 / .12);
}
/* Portal-inspired diagonal gold hairline. This is intentionally faint but
   recognizable at real card sizes, not an opaque ornament across text. */
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-surface-auto .luxa-block-benefits__card::after {
    content: "";
    position: absolute;
    left: -10%;
    bottom: 7%;
    width: 134%;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgb(191 145 76 / .29) 24%,
        rgb(203 154 82 / .31) 68%, transparent 100%);
    box-shadow: 0 1px 5px rgb(185 135 64 / .08);
    transform: rotate(-8deg);
    transform-origin: left center;
    pointer-events: none;
    z-index: 0;
}
.luxa-block-benefits.luxa-block-benefits--bronze {
    --luxa-signature-inner-line: rgb(244 199 132 / .13);
}
.luxa-block-benefits.luxa-block-benefits--champagne {
    --luxa-signature-inner-line: rgb(255 255 255 / .75);
}
.luxa-block-benefits.luxa-block-benefits--pearl {
    --luxa-signature-inner-line: rgb(255 255 255 / .9);
}
/* Icon medallions are a deliberate part of the presets, but user-selected
   icon shape, size, alignment and color remain available. */
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-surface-auto .luxa-block-benefits__icon,
.luxa-block-benefits.luxa-block-benefits--bronze.luxa-benefits-surface-auto .luxa-block-benefits__icon {
    background: linear-gradient(150deg, rgb(231 186 122 / .17), rgb(199 155 91 / .04));
    border-color: rgb(235 195 129 / .39);
    /* Icon depth is controlled exclusively by the existing "Icoon diepte" option. */
}
.luxa-block-benefits.luxa-block-benefits--champagne.luxa-benefits-surface-auto .luxa-block-benefits__icon {
    background: linear-gradient(145deg, #fffefb, #f5e7d0);
    border-color: rgb(191 147 85 / .38);
    /* Icon depth remains optional. */
}
.luxa-block-benefits.luxa-block-benefits--pearl.luxa-benefits-surface-auto .luxa-block-benefits__icon {
    background: linear-gradient(145deg, #fff, #f4f1e9);
    border-color: rgb(187 162 124 / .32);
    /* Icon depth remains optional. */
}
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-surface-auto.luxa-benefits-icon-color-gold .luxa-block-benefits__icon,
.luxa-block-benefits.luxa-block-benefits--bronze.luxa-benefits-surface-auto.luxa-benefits-icon-color-gold .luxa-block-benefits__icon {
    color: #e5be7c;
}
.luxa-block-benefits.luxa-block-benefits--noir.luxa-benefits-surface-auto.luxa-benefits-icon-color-muted .luxa-block-benefits__icon,
.luxa-block-benefits.luxa-block-benefits--bronze.luxa-benefits-surface-auto.luxa-benefits-icon-color-muted .luxa-block-benefits__icon {
    color: #cdbba2;
}
/* A bare icon or outlined icon must still honor its explicit shape choice. */
.luxa-block-benefits:is(.luxa-block-benefits--noir, .luxa-block-benefits--bronze,
    .luxa-block-benefits--champagne, .luxa-block-benefits--pearl).luxa-benefits-icon-shape-bare
    .luxa-block-benefits__icon {
    background: none;
    box-shadow: none;
    border: none;
}
.luxa-block-benefits:is(.luxa-block-benefits--noir, .luxa-block-benefits--bronze,
    .luxa-block-benefits--champagne, .luxa-block-benefits--pearl).luxa-benefits-icon-shape-outlined
    .luxa-block-benefits__icon {
    background: transparent;
}
.luxa-block-benefits:is(.luxa-block-benefits--noir, .luxa-block-benefits--bronze)
    .luxa-block-benefits__card-link {
    color: var(--luxa-type-override-button-color, #e9c489);
}
/* Harmonized supporting titles: global/user font settings retain priority. */
.luxa-block-benefits.luxa-block-benefits--bronze .luxa-block-benefits__card-title,
.luxa-block-benefits.luxa-block-benefits--champagne .luxa-block-benefits__card-title {
    font-family: var(--luxa-type-override-card-font, Georgia, "Times New Roman", serif);
    font-weight: var(--luxa-type-override-card-weight, 600);
    letter-spacing: -.025em;
}
.luxa-block-benefits:is(.luxa-block-benefits--noir, .luxa-block-benefits--bronze)
    .luxa-block-benefits__card-title::after {
    background: #cfaa70;
}
.luxa-block-benefits:is(.luxa-block-benefits--champagne, .luxa-block-benefits--pearl)
    .luxa-block-benefits__card-title::after {
    background: #b88b4c;
}
