/* back-to-top */
/* back-to-top: plugin presentation; site design stays in published page/region CSS. */
.nexus-back-top {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-width: var(--back-size);
    height: var(--back-size);
    padding: 0 12px;
    max-width: calc(100vw - 2 * var(--back-x));
    border: 0;
    background: var(--back-bg);
    color: var(--back-fg);
    cursor: pointer;
    line-height: 1.25;
    font-weight: 600;
    transition: background-color .15s;
}

.nexus-back-top[hidden] {
    display: none;
}

.nexus-back-top[data-floating=true] {
    position: fixed;
    bottom: calc(var(--back-y) + env(safe-area-inset-bottom,0px) + var(--nexus-bottom-nav-height,0px));
    z-index: 44;
}

.nexus-back-top[data-floating=true][data-position=left] {
    left: max(var(--back-x),env(safe-area-inset-left,0px));
}

.nexus-back-top[data-floating=true][data-position=right] {
    right: max(var(--back-x),env(safe-area-inset-right,0px));
}

.nexus-back-top[data-shape=circle] {
    border-radius: 999px;
}

.nexus-back-top[data-shape=rounded] {
    border-radius: 12px;
}

.nexus-back-top[data-shape=square] {
    border-radius: 0;
}

.nexus-back-top[data-shadow=true] {
    box-shadow: 0 3px 14px var(--site-shadow,#0f172a33);
}

.nexus-back-top:hover {
    background: var(--back-hover);
}

.nexus-back-top:focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 3px;
}

.nexus-back-top svg {
    flex: none;
}

.nexus-back-top span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media print {
    .nexus-back-top {
        display: none !important;
    }
}

.nexus-back-top[data-presentation-profile=editorial] {
    box-shadow: none;
}

.nexus-back-top[data-presentation-profile=compact] {
    padding-inline: 8px;
}

.nexus-back-top[data-presentation-profile=marketplace] {
    outline: 1px solid color-mix(in srgb,currentColor 25%,transparent);
    outline-offset: 2px;
}

.nexus-back-top[data-presentation-profile=minimal] {
    border: 1px solid currentColor;
    background: var(--site-surface,#fff);
    color: var(--site-primary,#0f172a);
    box-shadow: none;
}

/* breadcrumbs */
/* breadcrumbs: locale-selectable presentation; colours stay in site design tokens. */
.nexus-breadcrumbs {
    max-width: 100%;
    overflow: hidden;
    border-bottom: 1px solid var(--site-border,#e8eeeb);
    background: color-mix(in srgb,var(--site-canvas,#f8fafc) 88%,transparent);
}

.nexus-breadcrumbs__list {
    display: flex;
    width: 100%;
    max-width: 80rem;
    margin: 0 auto;
    padding: .75rem 1rem;
    flex-wrap: nowrap;
    align-items: center;
    gap: .25rem .5rem;
    color: var(--site-muted,#64748b);
    font-size: .875rem;
    line-height: 1.5;
    list-style: none;
}

.nexus-breadcrumbs__item {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: .5rem;
}

.nexus-breadcrumbs__item:last-child {
    flex: 1 1 auto;
    overflow: hidden;
}

.nexus-breadcrumbs a {
    color: inherit;
    text-decoration: none;
}

.nexus-breadcrumbs a:hover {
    color: var(--site-accent,#047857);
    text-decoration: underline;
    text-underline-offset: .2em;
}

.nexus-breadcrumbs a:focus-visible {
    border-radius: .25rem;
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: 3px;
}

.nexus-breadcrumbs__separator {
    color: color-mix(in srgb,var(--site-muted,#64748b) 45%,transparent);
}

.nexus-breadcrumbs__current {
    display: block;
    max-width: 100%;
    overflow: hidden;
    color: var(--site-text,#1e293b);
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nexus-breadcrumbs[data-presentation-profile=editorial] {
    border-block: 1px solid var(--site-border,#e8eeeb);
    background: var(--site-surface,#fff);
}

.nexus-breadcrumbs[data-presentation-profile=editorial] .nexus-breadcrumbs__list {
    max-width: 87.5rem;
    padding-block: 1rem;
    letter-spacing: .015em;
}

.nexus-breadcrumbs[data-presentation-profile=compact] .nexus-breadcrumbs__list {
    padding-block: .45rem;
    font-size: .8125rem;
}

.nexus-breadcrumbs[data-presentation-profile=marketplace] {
    background: var(--site-canvas,#f4f6f5);
}

.nexus-breadcrumbs[data-presentation-profile=marketplace] .nexus-breadcrumbs__list {
    max-width: 90rem;
}

.nexus-breadcrumbs[data-presentation-profile=marketplace] .nexus-breadcrumbs__current {
    color: var(--site-primary,#173c32);
}

.nexus-breadcrumbs[data-presentation-profile=minimal] {
    border: 0;
    background: transparent;
}

.nexus-breadcrumbs[data-presentation-profile=minimal] .nexus-breadcrumbs__list {
    padding-block: .5rem;
    padding-inline: 0;
}

@media (max-width:767px) {
    .nexus-breadcrumbs__list {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .nexus-breadcrumbs__list::-webkit-scrollbar {
        display: none;
    }

    .nexus-breadcrumbs__item {
        flex: none;
    }

    .nexus-breadcrumbs__current {
        max-width: 58vw;
    }
}

/* shared/media-dialog */
/* shared/media-dialog: plugin presentation; site design stays in published page/region CSS. */
@media (any-hover:hover) {
    .nexus-lightbox-thumbs {
        cursor: grab;
    }
    .nexus-lightbox-thumbs button {
        cursor: inherit;
    }
}

.nexus-lightbox-thumbs img {
    -webkit-user-drag: none;
}

.nexus-lightbox {
    position: fixed;
    inset: 0;
    margin: auto;
    width: 96vw;
    max-width: 1800px;
    height: 94dvh;
    max-height: 94dvh;
    padding: 0;
    border: 0;
    border-radius: 16px;
    background: var(--site-lightbox,var(--site-primary,#101a17));
    color: #fff;
    overflow: hidden;
}

.nexus-lightbox::backdrop {
    background: rgba(0,0,0,.8);
}

.nexus-lightbox-shell {
    display: grid;
    grid-template-rows: auto minmax(0,1fr);
    height: 100%;
}

.nexus-lightbox-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
}

.nexus-lightbox-controls button {
    border: 1px solid #ffffff50;
    border-radius: 8px;
    padding: 8px 14px;
}

.nexus-lightbox-body {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    min-height: 0;
}

.nexus-lightbox-body.has-inquiry {
    grid-template-columns: minmax(0,1fr) 340px;
}

.nexus-lightbox-media {
    display: grid;
    grid-template-rows: minmax(0,1fr) auto;
    min-height: 0;
    min-width: 0;
    padding: 0 12px 12px;
    gap: 10px;
}

.nexus-lightbox-stage {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 0;
    overflow: auto;
    touch-action: pan-y;
}

.nexus-lightbox-stage>img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.nexus-lightbox-stage>iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.nexus-lightbox-thumbs {
    display: flex;
    overflow-x: auto;
    gap: 8px;
    padding: 3px;
    scrollbar-width: thin;
}

.nexus-lightbox-thumbs button {
    flex: 0 0 72px;
    height: 54px;
    border: 2px solid transparent;
    border-radius: 6px;
    overflow: hidden;
}

.nexus-lightbox-thumbs button[aria-current=true] {
    border-color: var(--site-accent,#68d391);
}

.nexus-lightbox-thumbs img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.nexus-lightbox-inquiry {
    background: var(--site-canvas,#f8faf9);
    color: var(--site-primary,#162c25);
    min-height: 0;
    overflow: auto;
    padding: 12px;
    scrollbar-width: thin;
}

.nexus-lightbox-inquiry [data-media-inquiry] {
    position: static;
    max-height: none;
    overflow: visible;
}

.nexus-lightbox-inquiry [data-nexus-plugin=content-list] {
    padding: 0;
}

.nexus-lightbox-inquiry [data-nexus-plugin=contact-form] {
    padding-bottom: 0;
}

@media (max-width:767px) {
    .nexus-lightbox {
        width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        border-radius: 0;
    }
    .nexus-lightbox-body.has-inquiry {
        grid-template-columns: 1fr;
        overflow-y: auto;
        display: block;
    }
    .nexus-lightbox-body.has-inquiry .nexus-lightbox-media {
        height: 60dvh;
    }
    .nexus-lightbox-inquiry {
        overflow: visible;
    }
    .nexus-lightbox-controls {
        gap: 6px;
        padding: 10px;
    }
    .nexus-lightbox-controls button {
        padding: 8px;
        font-size: 13px;
    }
}

.nexus-lightbox-viewport {
    position: relative;
    display: grid;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

html.nexus-media-dialog-open {
    overflow: hidden;
    overscroll-behavior: none;
}

html.nexus-media-dialog-open body {
    overflow: hidden;
    overscroll-behavior: none;
}

.nexus-lightbox-status {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 24px 72px;
    text-align: center;
    overflow: auto;
}

.nexus-lightbox-status[hidden],
.nexus-lightbox-status button[hidden] {
    display: none;
}

.nexus-lightbox-status button {
    min-height: 44px;
    padding: 10px 18px;
    border: 1px solid #ffffff80;
    border-radius: 8px;
    background: var(--site-primary,#173c32);
    color: #fff;
    cursor: pointer;
}

.nexus-lightbox-zoom {
    overflow: hidden;
    touch-action: none;
    user-select: none;
    cursor: zoom-in;
}

.nexus-lightbox-zoom[data-zoomed=true] {
    cursor: grab;
}

.nexus-lightbox-zoom[data-zoomed=true]:active {
    cursor: grabbing;
}

.nexus-lightbox-zoom>img {
    transform-origin: center;
    will-change: transform;
    pointer-events: none;
}

.nexus-lightbox-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: grid;
    place-items: center;
    width: 52px;
    height: 64px;
    border: 2px solid white;
    border-radius: 12px;
    background: var(--site-control-overlay,#064e3be8);
    color: white;
    font-size: 28px;
    box-shadow: 0 3px 16px #0008;
    cursor: pointer;
    z-index: 2;
}

.nexus-lightbox-arrow.is-previous {
    left: 12px;
}

.nexus-lightbox-arrow.is-next {
    right: 12px;
}

.nexus-lightbox-arrow[hidden] {
    display: none;
}

.nexus-lightbox-arrow:hover {
    background: var(--site-primary,#022c22);
}

.nexus-lightbox button:focus-visible {
    outline: 3px solid var(--site-border,#6ee7b7);
    outline-offset: 3px;
}

.nexus-lightbox-controls {
    flex-wrap: wrap;
}

.nexus-lightbox-controls button {
    min-width: 44px;
    min-height: 44px;
}

.nexus-lightbox-controls button:disabled {
    opacity: .35;
    cursor: default;
}

@media (max-width:767px) {
    .nexus-lightbox-arrow {
        width: 44px;
        height: 56px;
        font-size: 23px;
    }
    .nexus-lightbox-arrow.is-previous {
        left: 6px;
    }
    .nexus-lightbox-arrow.is-next {
        right: 6px;
    }
}

.nexus-lightbox-controls {
    position: relative;
    min-height: 68px;
    padding-right: 72px;
    justify-content: flex-start;
}

.nexus-lightbox-controls>.nexus-modal-close {
    position: absolute;
    top: 12px;
    right: 12px;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    font-size: 30px;
    line-height: 1;
    background: var(--site-primary,#173c32);
    color: #fff;
}

.nexus-lightbox-inquiry [data-contact-advisor] [data-content-card] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: .75rem;
}

.nexus-lightbox-inquiry [data-contact-advisor] [data-content-image] {
    height: 200px !important;
    width: 100%;
    grid-row: auto;
}

.nexus-lightbox-inquiry [data-contact-advisor] [data-content-image] img {
    object-fit: contain;
}

.nexus-lightbox-inquiry [data-contact-advisor] [data-content-title] {
    min-height: 0;
    text-align: center;
}

.nexus-lightbox-inquiry [data-contact-advisor] [data-content-details] {
    grid-template-columns: 1fr;
}

.nexus-media-inquiry-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 48px;
    margin-top: 1rem;
    padding: .8rem 1rem;
    border-radius: .75rem;
    background: var(--site-accent,#047857);
    color: #fff;
    font-weight: 600;
    text-decoration: none;
}

.nexus-media-inquiry-button:focus-visible {
    outline: 3px solid var(--site-accent,#059669);
    outline-offset: 3px;
}

.nexus-media-contact-actions {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(min(100%,9rem),1fr));
    align-items: stretch;
    gap: 8px;
    margin-top: 12px;
    min-width: 0;
}

.nexus-media-contact-actions>a {
    min-width: 0;
    min-height: 44px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 8px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}

.nexus-media-contact-actions>a>span {
    min-width: 0;
    overflow-wrap: normal;
    word-break: normal;
}

.nexus-media-whatsapp-button {
    background: #16a34a;
    color: #fff;
}

/* Blade has an icon span followed by a label; native cards supply one label
   span. Only the separate icon may be constrained to a square. */
.nexus-media-whatsapp-button>span:first-child:not(:only-child) {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    background: transparent;
    box-shadow: none;
    color: inherit;
}

.nexus-media-whatsapp-button>span:last-child {
    width: auto;
    height: auto;
    white-space: nowrap;
}

.nexus-media-whatsapp-button svg {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
}

.nexus-media-whatsapp-button:focus-visible {
    outline: 3px solid var(--site-accent,#059669);
    outline-offset: 3px;
}

/* shared/phone-input */
/* Shared international phone input used by plugin-owned telephone fields. */
.nexus-phone-input {
    position: relative;
    display: flex;
    width: 100%;
    min-width: 0;
    direction: ltr;
}

.nexus-phone-input > .nexus-phone-input__country {
    position: absolute;
    z-index: 2;
    inset-block: 1px;
    inset-inline-start: 1px;
    display: inline-flex;
    min-width: 3.65rem;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    padding: .5rem .7rem;
    border: 0;
    border-inline-end: 1px solid var(--site-border,#cbd5e1);
    border-radius: .7rem 0 0 .7rem;
    background: color-mix(in srgb,var(--site-surface,#fff) 82%,transparent);
    color: var(--site-text,#0f172a);
    font: inherit;
    cursor: pointer;
}

.nexus-phone-input > .nexus-phone-input__country:hover {
    background: var(--site-canvas,#f1f5f9);
}

.nexus-phone-input > .nexus-phone-input__country:focus-visible {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: 2px;
}

.nexus-phone-input__flag {
    font-size: 1.15rem;
    line-height: 1;
}

.nexus-phone-input__chevron {
    font-size: .65rem;
    opacity: .65;
}

.nexus-phone-input > input[type="tel"] {
    min-width: 0;
    padding-inline-start: 4.4rem !important;
}

.nexus-phone-input__panel {
    position: fixed;
    z-index: 100000;
    display: none;
    width: min(22rem,calc(100vw - 1rem));
    max-height: min(22rem,calc(100vh - 1rem));
    overflow: hidden;
    flex-direction: column;
    border: 1px solid var(--site-border,#cbd5e1);
    border-radius: .9rem;
    background: var(--site-surface,#fff);
    color: var(--site-text,#0f172a);
    box-shadow: 0 18px 48px rgb(15 23 42 / 18%);
}

.nexus-phone-input__panel[data-open="true"] {
    display: flex;
}

.nexus-phone-input__search-wrap {
    padding: .65rem;
    border-bottom: 1px solid var(--site-border,#e2e8f0);
}

.nexus-phone-input__search {
    width: 100%;
    min-height: 44px;
    padding: .65rem .8rem;
    border: 1px solid var(--site-border,#cbd5e1);
    border-radius: .65rem;
    background: var(--site-surface,#fff);
    color: var(--site-text,#0f172a);
    font: inherit;
}

.nexus-phone-input__search:focus {
    border-color: var(--site-accent,#047857);
    outline: 2px solid color-mix(in srgb,var(--site-accent,#047857) 24%,transparent);
}

.nexus-phone-input__options {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: .35rem;
}

.nexus-phone-input__option {
    display: grid;
    width: 100%;
    min-height: 44px;
    grid-template-columns: 1.5rem minmax(0,1fr) auto;
    align-items: center;
    gap: .65rem;
    padding: .6rem .7rem;
    border: 0;
    border-radius: .55rem;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.nexus-phone-input__option:hover,
.nexus-phone-input__option[aria-selected="true"] {
    background: var(--site-canvas,#f1f5f9);
}

.nexus-phone-input__option:focus-visible {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: -2px;
}

.nexus-phone-input__name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nexus-phone-input__code {
    color: var(--site-muted,#64748b);
    font-variant-numeric: tabular-nums;
}

.nexus-phone-input__empty {
    padding: 1rem;
    color: var(--site-muted,#64748b);
    text-align: center;
}

@media (max-width: 639px) {
    .nexus-phone-input__panel {
        width: calc(100vw - 1rem);
    }
}

/* shared/form-controls */
/* Shared decorative SVG controls. Semantic labels and native validation stay in their owner. */
[data-nexus-plugin], form[data-field-icon-position] {
    --form-icon-text: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M3%204h18v3H3zm0%206h18v3H3zm0%206h12v3H3z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-name: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22m4%2015%2010-10%205%205L9%2020H4v-5Zm11-11%202-2%205%205-2%202-5-5ZM12%2020h10v2H12z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-email: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M2%205h20l-10%208L2%205Zm0%202.5%2010%208%2010-8V20H2V7.5Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel-right: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel-left: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cg%20transform%3D%22translate%2824%200%29%20scale%28-1%201%29%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-number: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M8%202h3l-1%206h5l1-6h3l-1%206h4v3h-5l-1%204h5v3h-5l-1%204h-3l1-4H8l-1%204H4l1-4H1v-3h5l1-4H2V8h5l1-6Zm1%209-1%204h5l1-4H9Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-date: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M6%202h3v3h6V2h3v3h4v6H2V5h4V2ZM2%2013h20v9H2v-9Zm4%203v3h3v-3H6Zm5%200v3h3v-3h-3Zm5%200v3h3v-3h-3Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-url: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22m7%206%202-2a6%206%200%200%201%209%208l-2%202-2-2%202-2a3%203%200%200%200-5-4L9%208%207%206Zm10%2012-2%202a6%206%200%200%201-9-8l2-2%202%202-2%202a3%203%200%200%200%205%204l2-2%202%202ZM8%2014l6-6%202%202-6%206-2-2Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-textarea: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M2%203h20v16H9l-7%204V3Zm4%204v2h12V7H6Zm0%205v2h9v-2H6Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-password: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M6%2010V7a6%206%200%200%201%2012%200v3h3v12H3V10h3Zm3%200h6V7a3%203%200%200%200-6%200v3Zm2%204v5h2v-5h-2Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-chevron: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22m4%208%208%209%208-9H4Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel: var(--form-icon-tel-left); /* Right-hand field icon faces into the input. */
    --form-icon-cell-right: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2044%2044%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22%23f6f7f9%22%20d%3D%22M0%200h44v44H0z%22%2F%3E%3Cpath%20stroke%3D%22%23e2e5e9%22%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M0%200v44%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-cell-left: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2044%2044%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22%23f6f7f9%22%20d%3D%22M0%200h44v44H0z%22%2F%3E%3Cpath%20stroke%3D%22%23e2e5e9%22%20vector-effect%3D%22non-scaling-stroke%22%20d%3D%22M44%200v44%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-cell: var(--form-icon-cell-right);
    --form-icon-cell-width: 2.75rem;
    --form-icon-edge: right;
    --form-icon-inset: 0rem;
    --form-icon-offset: .8125rem;
    --form-input-left: 1rem;
    --form-input-right: 3.5rem;
}
[data-field-icon-style=outline] {
    --form-icon-text: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%206h16M4%2012h16M4%2018h10%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-name: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m4%2016%2011-11%204%204L8%2020H4v-4Zm9-9%204%204M12%2020h8%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-email: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m3%206%209%207%209-7%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel-right: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel-left: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22translate%2824%200%29%20scale%28-1%201%29%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-number: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m9%203-2%2018m10-18-2%2018M3%209h18M2%2015h18%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-date: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M7%203v4m10-4v4M3%2011h18m-11%205h4%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-url: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m10%2014%204-4m-5%206-2%202a4%204%200%200%201-6-6l4-4m10%201%202-2a4%204%200%200%201%206%206l-4%204%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-textarea: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%204h18v14H9l-6%204V4Z%22%2F%3E%3Cpath%20d%3D%22M7%208h10M7%2012h7%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-password: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%2210%22%20width%3D%2214%22%20height%3D%2211%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2010V7a4%204%200%200%201%208%200v3m-4%204v3%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-chevron: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E");
}
[data-field-icon-style=rounded] {
    --form-icon-text: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%224%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2210%22%20width%3D%2218%22%20height%3D%224%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2216%22%20width%3D%2212%22%20height%3D%224%22%20rx%3D%222%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-name: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%22.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m4%2015%2010-10%205%205L9%2020H4v-5Zm11-11%202-2%205%205-2%202-5-5ZM12%2020h10v2H12z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-email: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M5%204h14a3%203%200%200%201%203%203v10a3%203%200%200%201-3%203H5a3%203%200%200%201-3-3V7a3%203%200%200%201%203-3Z%22%2F%3E%3Cpath%20d%3D%22m5%207%207%206%207-6%22%20fill%3D%22none%22%20stroke%3D%22%23f6f7f9%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel-right: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%22.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel-left: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%22.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22translate%2824%200%29%20scale%28-1%201%29%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-number: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%22.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%202h3l-1%206h5l1-6h3l-1%206h4v3h-5l-1%204h5v3h-5l-1%204h-3l1-4H8l-1%204H4l1-4H1v-3h5l1-4H2V8h5l1-6Zm1%209-1%204h5l1-4H9Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-date: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%22.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%202h3v3h6V2h3v3h4v6H2V5h4V2ZM2%2013h20v9H2v-9Zm4%203v3h3v-3H6Zm5%200v3h3v-3h-3Zm5%200v3h3v-3h-3Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-url: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%22.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m7%206%202-2a6%206%200%200%201%209%208l-2%202-2-2%202-2a3%203%200%200%200-5-4L9%208%207%206Zm10%2012-2%202a6%206%200%200%201-9-8l2-2%202%202-2%202a3%203%200%200%200%205%204l2-2%202%202ZM8%2014l6-6%202%202-6%206-2-2Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-textarea: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M6%203h12a4%204%200%200%201%204%204v8a4%204%200%200%201-4%204H9l-6%204V7a4%204%200%200%201%203-4Z%22%2F%3E%3Cpath%20d%3D%22M7%208h10M7%2013h6%22%20fill%3D%22none%22%20stroke%3D%22%23f6f7f9%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-password: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%22.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%2010V7a6%206%200%200%201%2012%200v3h3v12H3V10h3Zm3%200h6V7a3%203%200%200%200-6%200v3Zm2%204v5h2v-5h-2Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-chevron: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%20fill%3D%22none%22%20stroke%3D%22%2364748b%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
}
[data-field-icon-style=duotone] {
    --form-icon-text: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22M3%204h18v3H3zm0%206h18v3H3zm0%206h12v3H3z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-name: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22m4%2015%2010-10%205%205L9%2020H4v-5Zm11-11%202-2%205%205-2%202-5-5ZM12%2020h10v2H12z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-email: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22M2%205h20l-10%208L2%205Zm0%202.5%2010%208%2010-8V20H2V7.5Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-tel-right: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-tel-left: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cg%20transform%3D%22translate%2824%200%29%20scale%28-1%201%29%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-number: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22M8%202h3l-1%206h5l1-6h3l-1%206h4v3h-5l-1%204h5v3h-5l-1%204h-3l1-4H8l-1%204H4l1-4H1v-3h5l1-4H2V8h5l1-6Zm1%209-1%204h5l1-4H9Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-date: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22M6%202h3v3h6V2h3v3h4v6H2V5h4V2ZM2%2013h20v9H2v-9Zm4%203v3h3v-3H6Zm5%200v3h3v-3h-3Zm5%200v3h3v-3h-3Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-url: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22m7%206%202-2a6%206%200%200%201%209%208l-2%202-2-2%202-2a3%203%200%200%200-5-4L9%208%207%206Zm10%2012-2%202a6%206%200%200%201-9-8l2-2%202%202-2%202a3%203%200%200%200%205%204l2-2%202%202ZM8%2014l6-6%202%202-6%206-2-2Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-textarea: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22M2%203h20v16H9l-7%204V3Zm4%204v2h12V7H6Zm0%205v2h9v-2H6Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-password: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22M6%2010V7a6%206%200%200%201%2012%200v3h3v12H3V10h3Zm3%200h6V7a3%203%200%200%200-6%200v3Zm2%204v5h2v-5h-2Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-chevron: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%2364748b%22%20opacity%3D%22.15%22%2F%3E%3Cg%20transform%3D%22translate%283%203%29%20scale%28.75%29%22%3E%3Cpath%20d%3D%22m4%208%208%209%208-9H4Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
[data-field-icon-style=minimal] {
    --form-icon-text: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M4%207h16v2H4zm0%208h10v2H4z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-name: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22m5%2014%2010-10%204%204L9%2018H5v-4Zm11-11%202-2%204%204-2%202-4-4Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-email: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M2%206h20l-10%209L2%206Zm0%204%203%203v5h14v-5l3-3v11H2V10Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel-right: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-tel-left: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cg%20transform%3D%22translate%2824%200%29%20scale%28-1%201%29%22%3E%3Cpath%20d%3D%22M16%203h3c1%200%202%201%202%202v3l-5%202-2-3a14%2014%200%200%200-6%206l3%202-2%205H6c-2%200-3-2-2-4C6%2010%2010%206%2016%203Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    --form-icon-number: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M8%202h3l-1%206h5l1-6h3l-1%206h4v3h-5l-1%204h5v3h-5l-1%204h-3l1-4H8l-1%204H4l1-4H1v-3h5l1-4H2V8h5l1-6Zm1%209-1%204h5l1-4H9Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-date: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M6%202h3v3h6V2h3v3h4v6H2V5h4V2ZM2%2013h20v9H2v-9Zm4%203v3h3v-3H6Zm5%200v3h3v-3h-3Zm5%200v3h3v-3h-3Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-url: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22m7%206%202-2a6%206%200%200%201%209%208l-2%202-2-2%202-2a3%203%200%200%200-5-4L9%208%207%206Zm10%2012-2%202a6%206%200%200%201-9-8l2-2%202%202-2%202a3%203%200%200%200%205%204l2-2%202%202ZM8%2014l6-6%202%202-6%206-2-2Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-textarea: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M2%204h20v13H9l-7%205V4Z%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-password: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22M6%2010V7a6%206%200%200%201%2012%200v3h3v12H3V10h3Zm3%200h6V7a3%203%200%200%200-6%200v3Zm2%204v5h2v-5h-2Z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E");
    --form-icon-chevron: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2364748b%22%3E%3Cpath%20d%3D%22m7%2010%205%205%205-5H7Z%22%2F%3E%3C%2Fsvg%3E");
}
[data-field-icon-position=left] {
    --form-icon-tel: var(--form-icon-tel-right);
    --form-icon-edge: left;
    --form-icon-cell: var(--form-icon-cell-left);
    --form-input-left: 3.5rem;
    --form-input-right: 1rem;
}
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) :is(input:not([type]),input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=datetime-local],input[type=month],input[type=time],input[type=url],input[type=password],select,textarea) {
    --form-control-icon: var(--form-icon-text);
    background-image: var(--form-control-icon),var(--form-icon-cell) !important;
    background-repeat: no-repeat !important;
    background-position: var(--form-icon-edge) var(--form-icon-offset) center,var(--form-icon-edge) var(--form-icon-inset) center !important;
    background-size: 1.125rem 1.125rem,var(--form-icon-cell-width) 100% !important;
    background-origin: padding-box !important;
    background-clip: padding-box !important;
    padding-left: var(--form-input-left) !important;
    padding-right: var(--form-input-right) !important;
    box-sizing: border-box;
}
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) input[type=email] { --form-control-icon: var(--form-icon-email); }
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) input[type=tel] { --form-control-icon: var(--form-icon-tel); }
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) input[type=number] { --form-control-icon: var(--form-icon-number); }
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) input[type=url] { --form-control-icon: var(--form-icon-url); }
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) input[type=password] { --form-control-icon: var(--form-icon-password); }
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) :is(input[type=date],input[type=datetime-local],input[type=month],input[type=time]) { --form-control-icon: var(--form-icon-date); }
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) :is(input[autocomplete=name],input[autocomplete=given-name],input[autocomplete=family-name]) { --form-control-icon: var(--form-icon-name); }
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) textarea {
    --form-control-icon: var(--form-icon-textarea);
}
/* A select's chevron is its decorative icon and retains its familiar affordance. */
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) select { --form-control-icon: var(--form-icon-chevron); appearance: none; }
/* Native browser affordances retain their own space next to the decorative cell. */
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) :is(input[type=number],input[type=date],input[type=datetime-local],input[type=month],input[type=time]) {
    --form-icon-cell-width: 4.5rem;
    --form-icon-offset: 2.5625rem;
    --form-input-right: 4.875rem;
}
/* Country selection stays on the physical left. In left mode the phone icon follows the flag. */
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) .nexus-phone-input > input[type=tel] { padding-left: 4.4rem !important; padding-inline-start: 4.4rem !important; }
:is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i])[data-field-icon-position=left] .nexus-phone-input > input[type=tel],
[data-field-icon-position=left] :is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) .nexus-phone-input > input[type=tel] {
    --form-icon-inset: 3.65rem;
    --form-icon-offset: 4.4625rem;
    padding-left: 7rem !important;
    padding-inline-start: 7rem !important;
}
[data-field-icon-position=left] :is(input[type=number],input[type=date],input[type=datetime-local],input[type=month],input[type=time]) {
    --form-icon-inset: 0rem;
    --form-icon-offset: .8125rem;
    --form-icon-cell-width: 2.75rem;
    --form-input-right: 2.5rem;
}
@media (forced-colors: active) {
    :is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) :is(input,select,textarea) { background-image: none !important; }
    :is(form[data-nexus-plugin][method=post i], form[data-field-icon-position][method=post i], [data-nexus-plugin] form[method=post i]) select { appearance: auto; }
}

/* shared/form-validation */
[data-live-validation-field] [data-field-error] {
    display: block;
    min-height: 1.15rem;
    margin-top: .4rem;
    color: var(--site-danger,#b42318);
    font-size: .78rem;
    font-weight: 600;
    line-height: 1.4;
}

[data-live-validation-field] [data-field-error][hidden] {
    visibility: hidden;
}

/* Validation marks only the bottom edge; normal field borders and dimensions remain stable. */
[data-live-validation-field]:is([data-validation-state="invalid"],[data-validation-state="warning"]) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea,fieldset) {
    border-color: var(--site-border,#e2e5e9) !important;
    border-bottom: 1px solid var(--site-danger,#b42318) !important;
    outline: 0 !important;
    box-shadow: none !important;
}
[data-live-validation-field][data-validation-state="warning"] [data-field-error] {
    color: var(--site-warning,#b45309);
}
/* Choice groups have one underline, rather than a ring around every choice. */
[data-live-validation-field]:is([data-validation-state="invalid"],[data-validation-state="warning"]):has(input[type="checkbox"],input[type="radio"]) {
    border-bottom: 1px solid var(--site-danger,#b42318);
}

[data-live-validation-field][data-validation-state="valid"] input:not([type="checkbox"]):not([type="radio"]):not(:placeholder-shown),
[data-live-validation-field][data-validation-state="valid"] select:valid,
[data-live-validation-field][data-validation-state="valid"] textarea:not(:placeholder-shown) {
    border-color: color-mix(in srgb,var(--site-accent,#047857) 62%,transparent);
}

/* contact-form */
/* contact-form: plugin presentation; site design stays in published page/region CSS. */
.nexus-contact-form {
    container-type: inline-size;
}

.nexus-contact-card {
    border-color: var(--site-border,#e2e8f0);
    background: var(--site-surface,#fff);
    color: var(--site-text,var(--site-primary,#0f172a));
}

.nexus-contact-advisor-section {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: .875rem;
}

.nexus-contact-advisor-action {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 48px;
    padding: .875rem 1rem;
    border: 1px solid var(--site-accent,#047857);
    border-radius: .875rem;
    background: var(--site-accent,#047857);
    color: var(--site-on-accent,#fff);
    font-weight: 600;
    text-align: center;
    text-decoration: none;
}

.nexus-contact-advisor-action:hover {
    filter: brightness(.95);
}

.nexus-contact-advisor-action:focus-visible {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: 3px;
}

.nexus-contact-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
    gap: 1rem;
}

.nexus-contact-shell > * {
    min-width: 0;
}

@container (min-width: 64rem) {
    .nexus-contact-shell[data-has-advisor="true"]:has(> [data-contact-advisor]:not([hidden])) {
        grid-template-columns: minmax(20rem,.72fr) minmax(0,1.28fr);
        align-items: start;
    }

    .nexus-contact-shell[data-has-advisor="true"] > [data-contact-advisor] {
        align-self: start;
    }

    .nexus-contact-form .nexus-contact-shell[data-has-advisor="true"] > .nexus-contact-card .nexus-contact-body {
        grid-template-columns: minmax(0,1fr);
        gap: 1.5rem;
    }
}

.nexus-contact-body {
    display: grid;
    min-width: 0;
    gap: 1.5rem;
}

.nexus-contact-intro,
.nexus-contact-body > form {
    min-width: 0;
}

@container (min-width: 56rem) {
    .nexus-contact-form[data-contact-layout=split][data-contact-modal=false] .nexus-contact-body {
        grid-template-columns: minmax(15rem,.8fr) minmax(0,1.2fr);
        gap: clamp(2rem,5cqi,4.5rem);
        align-items: start;
    }
}

.nexus-contact-layout {
    container-type: inline-size;
}

.nexus-contact-fields {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

.nexus-contact-field {
    min-width: 0;
}

/* Choice controls share the form's existing field style and site variables. */
.nexus-contact-choice-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: 1fr;
    gap: .75rem;
    max-height: 20rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: .25rem;
    scrollbar-gutter: stable;
}

.nexus-contact-choice {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: .75rem;
    min-width: 0;
    min-height: 56px;
    height: 100%;
    padding: .875rem 1rem;
    border: 1px solid var(--site-border,#cbd5e1);
    border-radius: .75rem;
    background: var(--site-surface,#fff);
    color: var(--site-text,#0f172a);
    font-weight: 500;
    line-height: 1.5;
    cursor: pointer;
}

.nexus-contact-choice > input {
    flex: 0 0 auto;
    width: 1.125rem;
    height: 1.125rem;
    margin: 0;
    accent-color: var(--site-primary,#0f172a);
}

.nexus-contact-choice > span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.nexus-contact-form[data-field-style=soft] .nexus-contact-choice {
    background: var(--site-canvas,#f8fafc);
}

.nexus-contact-form[data-field-style=underline] .nexus-contact-choice {
    border-radius: 0;
}

.nexus-contact-choice:has(input:checked),
.nexus-contact-form[data-field-style=soft] .nexus-contact-choice:has(input:checked) {
    border-color: var(--site-primary,#0f172a);
    box-shadow: inset 0 0 0 1px var(--site-primary,#0f172a);
    background: color-mix(in srgb,var(--site-primary,#0f172a) 7%,var(--site-surface,#fff));
}

.nexus-contact-choice:has(input:focus-visible) {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: 2px;
}

.nexus-contact-choice:has(input:disabled) {
    opacity: .6;
    cursor: default;
}

.nexus-contact-field[data-field-type=checkbox] > label {
    min-height: 44px;
    cursor: pointer;
}

@container (min-width: 28rem) {
    .nexus-contact-choice-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@container (min-width: 44rem) {
    .nexus-contact-choice-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.nexus-contact-field :is(input,select,textarea):not([type=checkbox]):not([type=radio]) {
    box-sizing: border-box;
    min-height: 3rem;
    padding-inline: 1rem;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.nexus-contact-field :is(input,select,textarea):not([type=checkbox]):not([type=radio]):focus-visible {
    border-color: var(--site-accent,#047857);
    outline: 0;
    box-shadow: 0 0 0 3px color-mix(in srgb,var(--site-accent,#047857) 24%,transparent);
}

.nexus-contact-field [data-field-error][hidden] {
    display: block;
    visibility: hidden;
}

.nexus-contact-field[hidden],
[data-contact-step][hidden] {
    display: none !important;
}

/* Fallback for server errors when shared live validation is unavailable. */
.nexus-contact-field [aria-invalid="true"]:not([type=checkbox]):not([type=radio]) {
    border-color: var(--site-border,#e2e5e9);
    border-bottom: 1px solid var(--site-danger,#b91c1c);
    outline: 0;
    box-shadow: none;
}

@container (min-width: 32rem) {
    .nexus-contact-fields {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .nexus-contact-field[data-field-width="full"] {
        grid-column: 1 / -1;
    }
}

.nexus-contact-step-navigation {
    margin-bottom: 1.5rem;
}

.nexus-contact-step-navigation[hidden] {
    display: none;
}

.nexus-contact-step-list {
    display: flex;
    flex-wrap: wrap;
    gap: .625rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.nexus-contact-step-list > li {
    flex: 1 1 10rem;
    min-width: 0;
}

.nexus-contact-step-link {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: .625rem;
    width: 100%;
    min-height: 48px;
    height: 100%;
    padding: .625rem .75rem;
    border: 1px solid var(--site-border,#cbd5e1);
    border-radius: .75rem;
    background: var(--site-surface,#fff);
    color: var(--site-text,#0f172a);
    font: inherit;
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.4;
    text-align: start;
    cursor: pointer;
}

.nexus-contact-step-label {
    min-width: 0;
    overflow-wrap: anywhere;
}

.nexus-contact-step-number {
    display: inline-flex;
    flex: 0 0 1.75rem;
    align-items: center;
    justify-content: center;
    height: 1.75rem;
    border: 1px solid var(--site-border,#cbd5e1);
    border-radius: 50%;
    font-size: .75rem;
}

.nexus-contact-step-link[data-step-state=current] {
    border-color: var(--site-primary,#0f172a);
    box-shadow: inset 0 0 0 1px var(--site-primary,#0f172a);
    background: color-mix(in srgb,var(--site-primary,#0f172a) 7%,var(--site-surface,#fff));
}

.nexus-contact-step-link[data-step-state=current] .nexus-contact-step-number {
    border-color: var(--site-primary,#0f172a);
    background: var(--site-primary,#0f172a);
    color: var(--site-on-primary,#fff);
}

.nexus-contact-step-link[data-step-state=upcoming] {
    color: var(--site-muted,#64748b);
    background: var(--site-canvas,#f8fafc);
    cursor: default;
}

.nexus-contact-step-link:focus-visible {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: 3px;
}

[data-nexus-contact][aria-busy=true] :is(.nexus-contact-step-link,.nexus-contact-step-back,.nexus-contact-step-next) {
    cursor: wait;
}

.nexus-contact-step-heading {
    margin-bottom: 1.25rem;
}

.nexus-contact-step-progress {
    margin: 0 0 .5rem;
    color: var(--site-accent,#047857);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.nexus-contact-step-title {
    margin: 0;
    color: var(--site-text,var(--site-primary,#0f172a));
    font-family: var(--site-heading-font,inherit);
    font-size: clamp(1.25rem,3cqi,1.625rem);
    font-weight: 700;
    line-height: 1.2;
}

.nexus-contact-step-subtitle {
    max-width: 60ch;
    margin: .625rem 0 0;
    color: var(--site-muted,#64748b);
    font-size: .925rem;
    line-height: 1.55;
}

.nexus-contact-step-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: .75rem;
    margin-top: 1.25rem;
}

.nexus-contact-step-back,
.nexus-contact-step-next {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: .625rem;
    padding: .75rem 1.25rem;
    border-radius: .75rem;
    font-weight: 700;
}

.nexus-contact-step-back > span[aria-hidden="true"],
.nexus-contact-step-next > span[aria-hidden="true"] {
    display: inline-block;
    width: 1em;
    overflow: hidden;
    font-size: 0;
    line-height: 1;
    text-align: center;
}

.nexus-contact-step-back > span[aria-hidden="true"]::before { content: "←"; font-size: 1rem; }
.nexus-contact-step-next > span[aria-hidden="true"]::before { content: "→"; font-size: 1rem; }
[dir="rtl"] .nexus-contact-step-back > span[aria-hidden="true"]::before { content: "→"; }
[dir="rtl"] .nexus-contact-step-next > span[aria-hidden="true"]::before { content: "←"; }

.nexus-contact-step-back {
    margin-inline-end: auto;
    border: 1px solid var(--site-border,#cbd5e1);
    background: var(--site-surface,#fff);
    color: var(--site-primary,#0f172a);
}

.nexus-contact-step-next {
    border: 1px solid var(--site-primary,#0f172a);
    background: var(--site-primary,#0f172a);
    color: var(--site-on-primary,#fff);
}

.nexus-contact-step-back:hover {
    background: var(--site-canvas,#f8fafc);
}

.nexus-contact-step-next:hover {
    filter: brightness(1.08);
}

.nexus-contact-step-back:focus-visible,
.nexus-contact-step-next:focus-visible {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: 3px;
}

.nexus-contact-form[data-button-style=full] .nexus-contact-step-actions button[type=submit] {
    width: auto;
    min-width: min(100%,12rem);
}

@container (max-width: 31.999rem) {
    .nexus-contact-step-actions > * {
        flex: 1 1 calc(50% - .375rem);
    }
}

[data-contact-advisor] {
    container-type: inline-size;
    min-width: 0;
}

a[href*="#contact-form-"] {
    gap: .5rem;
}

a[href*="#contact-form-"]:not(:has(svg))::before,
[data-nexus-plugin=contact-form] button[type=submit]:not(:has(svg))::before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 1.15rem;
    height: 1.15rem;
    flex: none;
    background: currentColor;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M8 3H5v18h14V3h-3M9 2h6v4H9zM8 10h8M8 14h8M8 18h5'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}

[data-nexus-plugin=contact-form] button[type=submit] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
}

[data-contact-modal=true].is-modal-enhanced {
    padding-top: 0;
    padding-bottom: 0;
}

[data-contact-modal=true].is-modal-enhanced>[data-contact-modal-panel] {
    display: none;
}

.nexus-contact-modal-trigger:not([hidden]) {
    display: flex;
    min-height: 52px;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border: 1px solid var(--site-primary,#065f46);
    border-radius: 12px;
    background: var(--site-primary,#065f46);
    color: #fff;
    font-weight: 600;
}

.nexus-contact-modal-trigger:hover {
    background: var(--site-primary,#064e3b);
}

.nexus-contact-modal-trigger:focus-visible {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: 3px;
}

.nexus-lightbox.nexus-contact-dialog {
    width: min(var(--contact-modal-width,560px),calc(100vw - 32px));
    max-width: 960px;
    height: fit-content;
    max-height: calc(100dvh - 32px);
    background: var(--site-surface,#fff);
    color: var(--site-primary,#0b2239);
}

.nexus-contact-dialog.is-wide {
    --contact-modal-width: 960px;
}

/* The existing panel moves outside its page container while the dialog is open. */
@media (min-width: 768px) {
    .nexus-contact-dialog.is-wide .nexus-contact-shell[data-has-advisor="true"]:has(> [data-contact-advisor]:not([hidden])) {
        grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
        align-items: start;
    }
}

.nexus-contact-dialog .nexus-lightbox-shell {
    display: flex;
    flex-direction: column;
    height: auto;
    max-height: calc(100dvh - 32px);
}

.nexus-contact-dialog .nexus-lightbox-controls {
    flex: none;
}

.nexus-contact-dialog .nexus-lightbox-body {
    display: block;
    min-height: 0;
    flex: 0 1 auto;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.nexus-contact-dialog .nexus-lightbox-viewport {
    display: block;
}

.nexus-contact-dialog .nexus-lightbox-media {
    display: block;
    padding: 0;
    gap: 0;
}

.nexus-contact-dialog .nexus-lightbox-stage {
    display: block;
    overflow: visible;
    touch-action: pan-y;
    padding: 16px;
}

.nexus-contact-dialog [data-contact-modal-panel]>div {
    height: auto;
    border: 0;
    padding: 0;
    box-shadow: none;
}

.nexus-contact-dialog [data-contact-heading] {
    display: none;
}

.nexus-contact-dialog [data-nexus-contact] [data-form-feedback]:empty {
    min-height: 0;
    margin: 0;
}

.nexus-contact-dialog-title {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
    min-width: 0;
    overflow-wrap: anywhere;
}

@media (max-width:767px) {
    .nexus-contact-dialog-title {
        font-size: 18px;
    }
}

.nexus-contact-form[data-presentation-profile=editorial]>div:last-child{border-radius:3px;box-shadow:0 18px 45px color-mix(in srgb,var(--site-primary,#0b2239) 8%,transparent)}
.nexus-contact-form[data-presentation-profile=compact]{padding-block:.75rem}
.nexus-contact-form[data-presentation-profile=compact]>div:last-child{border-radius:.75rem}
.nexus-contact-form[data-presentation-profile=compact] [data-nexus-contact]{gap:.75rem}
.nexus-contact-form[data-presentation-profile=marketplace]>div:last-child{border-top:4px solid var(--site-accent,#047857);border-radius:.75rem}
.nexus-contact-form[data-presentation-profile=minimal]>div:last-child{border-color:transparent;border-radius:0;background:transparent;box-shadow:none;padding-inline:0}

.nexus-contact-form[data-content-width=narrow] {
    max-width: 42rem;
    margin-inline: auto;
}

.nexus-contact-form[data-content-width=standard] {
    max-width: 64rem;
    margin-inline: auto;
}

.nexus-contact-form[data-content-width=wide] {
    max-width: 80rem;
    margin-inline: auto;
}

.nexus-contact-form[data-heading-alignment=center] .nexus-contact-intro {
    text-align: center;
}

.nexus-contact-form[data-field-style=soft] .nexus-contact-field :is(input,select,textarea):not([type=checkbox]):not([type=radio]) {
    border-color: transparent;
    background: var(--site-canvas,#f1f5f9);
    box-shadow: inset 0 0 0 1px transparent;
}

.nexus-contact-form[data-field-style=soft] .nexus-contact-field :is(input,select,textarea):not([type=checkbox]):not([type=radio]):focus {
    border-color: var(--site-accent,#047857);
    background: var(--site-surface,#fff);
}

.nexus-contact-form[data-field-style=underline] .nexus-contact-field :is(input,select,textarea):not([type=checkbox]):not([type=radio]) {
    border-width: 0 0 1px;
    border-radius: 0;
    padding-inline: 0;
    background: transparent;
    box-shadow: none;
}

.nexus-contact-form[data-button-style=outline] button[type=submit] {
    border: 1px solid var(--site-primary,#0f172a);
    background: transparent;
    color: var(--site-primary,#0f172a);
}

.nexus-contact-form[data-button-style=full] button[type=submit] {
    width: 100%;
    border-radius: .75rem;
    background: var(--site-primary,#0f172a);
}

.nexus-contact-form[data-presentation-profile=marketplace] [data-contact-heading] {
    font-family: var(--site-font-heading,inherit);
    font-weight: 700;
}

.nexus-contact-form[data-presentation-profile=minimal] button[type=submit] {
    border-radius: .375rem;
}

/* Submission feedback belongs to the form plugin in both frontend engines. */
[data-nexus-contact] button[type=submit][aria-busy=true] {
    cursor: progress;
    opacity: .85;
}
[data-nexus-contact] button[type=submit][aria-busy=true] > svg {
    display: none;
}
[data-nexus-contact] button[type=submit][aria-busy=true]::before {
    content: "";
    display: inline-block;
    box-sizing: border-box;
    flex: none;
    width: 1.15rem;
    height: 1.15rem;
    border: 2px solid currentColor;
    border-inline-end-color: transparent;
    border-radius: 50%;
    background: transparent;
    mask: none;
    animation: nexus-contact-submitting .75s linear infinite;
}
@keyframes nexus-contact-submitting {
    to { transform: rotate(360deg); }
}
[data-nexus-contact] [data-form-feedback][data-feedback-state]:not(:empty) {
    display: grid;
    grid-template-columns: 1.5rem minmax(0, 1fr);
    align-items: start;
    gap: .75rem;
    margin-block-start: 1rem;
    padding: 1rem 1.125rem;
    border: 1px solid;
    border-radius: .75rem;
    font-size: 1rem;
    line-height: 1.6;
    font-weight: 600;
    overflow-wrap: anywhere;
}
[data-nexus-contact] [data-form-feedback][data-feedback-state=success]:not(:empty) {
    background: var(--contact-success-background, #ecfdf5);
    color: var(--contact-success-color, #065f46);
    border-color: var(--contact-success-border, #a7f3d0);
}
[data-nexus-contact] [data-form-feedback][data-feedback-state=error]:not(:empty) {
    background: var(--contact-error-background, #fff1f2);
    color: var(--contact-error-color, #9f1239);
    border-color: var(--contact-error-border, #fecdd3);
}
[data-nexus-contact] [data-form-feedback][data-feedback-state]:not(:empty)::before {
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    margin-block-start: .05rem;
    background: currentColor;
}
[data-nexus-contact] [data-form-feedback][data-feedback-state=success]:not(:empty)::before {
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
[data-nexus-contact] [data-form-feedback][data-feedback-state=error]:not(:empty)::before {
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v6M12 17h.01'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
@media (prefers-reduced-motion: reduce) {
    [data-nexus-contact] button[type=submit][aria-busy=true]::before { animation: none; }
}

/* shared/plugin-tools */
[data-nexus-tool]{--tool-accent:var(--nexus-primary,#126b70);--tool-bg:var(--nexus-surface,#fff);--tool-ink:var(--nexus-text,#183437);--tool-line:var(--nexus-border,#dce4e4);background:var(--tool-bg);color:var(--tool-ink);border:1px solid var(--tool-line);border-radius:1rem;padding:clamp(1rem,3vw,1.7rem);min-width:0;margin-block:1rem}
[data-nexus-tool] [hidden]{display:none!important}
[data-nexus-tool] .nexus-tool-heading{margin-block-end:1rem}
[data-nexus-tool] .nexus-tool-heading h2{font:inherit;font-size:1.3rem;font-weight:700;margin:0 0 .45rem}
[data-nexus-tool] .nexus-tool-heading p{margin:0;line-height:1.6;opacity:.8}
[data-nexus-tool] .nexus-tool-controls{display:flex;align-items:end;flex-wrap:wrap;gap:.75rem;margin-block:1rem}
[data-nexus-tool] label.nexus-tool-control{display:grid;gap:.4rem;min-width:0;flex:1 1 10rem}
[data-nexus-tool] button.nexus-tool-control,[data-nexus-tool] .nexus-tool-button,[data-nexus-tool] input.nexus-tool-control,[data-nexus-tool] select.nexus-tool-control{font:inherit;min-height:44px;border:1px solid var(--tool-line);border-radius:.65rem;padding:.65rem .85rem;background:var(--tool-bg);color:var(--tool-ink);max-width:100%;box-sizing:border-box}
[data-nexus-tool] button.nexus-tool-control,[data-nexus-tool] .nexus-tool-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;text-decoration:none;cursor:pointer;white-space:normal}
[data-nexus-tool] button.nexus-tool-control:hover,[data-nexus-tool] .nexus-tool-button:hover,[data-nexus-tool] [aria-pressed=true]{border-color:var(--tool-accent);color:var(--tool-accent)}
[data-nexus-tool] .nexus-tool-control:focus-visible,[data-nexus-tool] .nexus-tool-button:focus-visible{outline:3px solid var(--tool-accent);outline-offset:3px}
[data-nexus-tool] .nexus-tool-control:disabled{opacity:.5;cursor:not-allowed}
[data-nexus-tool] .nexus-tool-grid{display:grid;grid-template-columns:repeat(var(--tool-columns,2),minmax(0,1fr));gap:1rem;align-items:stretch}
[data-nexus-tool] .nexus-tool-card{min-width:0;display:flex;flex-direction:column;gap:.75rem;height:100%;padding:1rem;border:1px solid var(--tool-line);border-radius:.85rem;box-sizing:border-box}
[data-nexus-tool] .nexus-tool-card h3{font:inherit;font-weight:700;font-size:1.1rem;line-height:1.4;margin:0;min-height:2.8em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
[data-nexus-tool] .nexus-tool-card p{margin:0;line-height:1.55;min-height:3.1em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
[data-nexus-tool] .nexus-tool-actions{margin-block-start:auto;display:flex;flex-wrap:wrap;gap:.6rem}
[data-nexus-tool] .nexus-tool-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:.6rem}
[data-nexus-tool] [data-tool-status]{min-height:1.5em;margin-block:.7rem 0;font-size:.9rem;line-height:1.5}
[data-nexus-tool] .nexus-tool-muted{font-size:.9rem;opacity:.75}
@media(max-width:760px){[data-nexus-tool] .nexus-tool-grid{grid-template-columns:1fr}}

[data-nexus-tool] .nexus-tool-form{margin-block-start:1.5rem;padding-block-start:1.5rem;border-top:1px solid var(--tool-line)}
[data-nexus-tool] fieldset.nexus-tool-controls{border:0;padding:0;min-width:0}
[data-nexus-tool] .nexus-tool-controls input[type=checkbox]{min-height:auto;width:1.2rem;height:1.2rem;accent-color:var(--tool-accent)}
[data-nexus-tool] a{overflow-wrap:anywhere}
@media(min-width:761px) and (max-width:1050px){[data-nexus-tool] .nexus-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(min-width:761px) and (max-width:1050px){[data-nexus-tool][data-columns="1"] .nexus-tool-grid{grid-template-columns:1fr}}

/* content-bookmarks */
:is([data-bookmarks],[data-bookmark-panel]) .nexus-bookmark-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-block-end:1rem}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-bookmark-toolbar:empty{display:none}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-bookmark-toolbar label{flex:0 1 14rem}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-bookmark-count{font-size:.9rem;flex:1 1 10rem;min-height:1.5em;font-variant-numeric:tabular-nums}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-bookmark-toolbar label.nexus-bookmark-search{flex:1 1 17rem}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-bookmark-results{display:block;margin-block:1rem;font-size:.9rem;min-height:1.5em;font-variant-numeric:tabular-nums}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-bookmark-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-block-start:1rem}
:is([data-bookmarks],[data-bookmark-panel]) [data-bookmark-page]{min-width:8ch;text-align:center;font-variant-numeric:tabular-nums}
:is([data-bookmarks],[data-bookmark-panel])[data-layout=list] .nexus-tool-grid{grid-template-columns:minmax(0,1fr)}
:is([data-bookmarks],[data-bookmark-panel])[data-compact="1"]{padding:1rem}
:is([data-bookmarks],[data-bookmark-panel])[data-compact="1"] .nexus-tool-grid{gap:.65rem}
:is([data-bookmarks],[data-bookmark-panel])[data-compact="1"] .nexus-tool-card{padding:.75rem;gap:.5rem}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-tool-card h3,:is([data-bookmarks],[data-bookmark-panel]) .nexus-tool-card p{max-height:2.8em;overflow-wrap:anywhere}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-tool-card p{max-height:3.1em}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-tool-card h3 a:focus-visible{outline:2px solid var(--tool-accent);outline-offset:-2px}
:is([data-bookmarks],[data-bookmark-panel]) [aria-pressed=true]{background:color-mix(in srgb,var(--tool-accent) 9%,var(--tool-bg));font-weight:700}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-tool-grid:empty{display:none}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-tool-grid[aria-busy=true]:empty{display:grid;min-height:6rem}
:is([data-bookmarks],[data-bookmark-panel]) .nexus-tool-grid[aria-busy=true]:empty::before{content:"";grid-column:1/-1;min-height:6rem;border:1px solid var(--tool-line);border-radius:.85rem;background:color-mix(in srgb,var(--tool-line) 25%,var(--tool-bg))}
:is([data-bookmarks],[data-bookmark-panel]) [data-bookmark-retry]{margin-block-start:1rem}
:is([data-bookmarks],[data-bookmark-panel]) [data-tool-status]:focus-visible{outline:2px solid var(--tool-accent);outline-offset:3px}
@media(max-width:520px){:is([data-bookmarks],[data-bookmark-panel]) .nexus-bookmark-toolbar label{flex-basis:100%}}

/* The launcher uses the existing media dialog; the list panel moves, never clones. */
.nexus-bookmark-launcher{display:inline-flex;min-width:0;flex-shrink:0}
.nexus-bookmark-launcher [data-bookmark-panel][hidden]{display:none!important}
.nexus-bookmark-launch{position:relative;display:inline-grid;place-items:center;box-sizing:border-box;width:36px;height:36px;min-width:36px;min-height:36px;padding:6px;border:1px solid var(--site-border,#dce4e4);border-radius:9px;background:transparent;color:var(--site-text,#183437);cursor:pointer}
.nexus-bookmark-launch svg{width:20px;height:20px}
.nexus-bookmark-launch [data-bookmark-total]{position:absolute;top:-3px;right:-3px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 3px;border-radius:999px;background:var(--site-primary,#183437);color:var(--site-on-primary,#fff);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}
.nexus-bookmark-launch:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:767px){.nexus-bookmark-launch{width:44px;height:44px;min-width:44px;min-height:44px;padding:10px;border-radius:12px}}
.nexus-lightbox.nexus-bookmark-dialog{width:min(1080px,94vw);height:min(820px,90dvh);max-width:100vw;max-height:100dvh;background:var(--site-surface,#fff);color:var(--site-text,#183437)}
.nexus-bookmark-dialog .nexus-lightbox-controls{position:relative;min-height:64px;padding-inline-end:76px;border-bottom:1px solid var(--site-border,#dce4e4)}
.nexus-bookmark-dialog .nexus-lightbox-controls strong{overflow-wrap:anywhere}
.nexus-bookmark-dialog .nexus-modal-close{color:var(--site-text,#183437);background:var(--site-canvas,#f4f6f6);border-color:var(--site-border,#dce4e4)}
.nexus-bookmark-dialog .nexus-lightbox-media{padding:0;display:flex;flex-direction:column}
.nexus-bookmark-dialog .nexus-lightbox-viewport{flex:1}
.nexus-bookmark-dialog .nexus-lightbox-stage{display:block;overflow:auto;overscroll-behavior:contain}
.nexus-bookmark-dialog [data-bookmark-panel]{margin:0;border:0;border-radius:0;width:100%;min-height:100%}
.nexus-bookmark-price{min-height:1.5em}
@media(max-width:640px){.nexus-lightbox.nexus-bookmark-dialog{width:100vw;height:100dvh;border-radius:0}.nexus-bookmark-dialog .nexus-lightbox-controls{padding-inline-start:16px}}

/* shared/slider */
/* shared/slider: plugin presentation; site design stays in published page/region CSS. */
@media (any-hover:hover) {
    [data-gallery-track] {
        cursor: grab;
    }
    [data-gallery-track] a {
        cursor: inherit;
    }
}

[data-gallery-track] img {
    -webkit-user-drag: none;
}

[data-gallery-track].nexus-slider-dragging,
.nexus-lightbox-thumbs.nexus-slider-dragging {
    scroll-snap-type: none !important;
    scroll-behavior: auto !important;
    cursor: grabbing;
    user-select: none;
    -webkit-user-select: none;
}

.nexus-slider-dragging * {
    cursor: grabbing !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

/* content-list */
/* content-list: plugin presentation; site design stays in published page/region CSS. */
.nexus-content-list {
    container-name: nexus-content-list;
    container-type: inline-size;
}
.nexus-content-list [data-contact-profile][data-profile-image-shape=circle] > [data-content-image] {
    width: min(100%, var(--content-profile-image-size, 240px));
    height: auto;
    aspect-ratio: 1;
    border-radius: 50%;
    align-self: center;
}

/* Use the component's actual space: a desktop sidebar is still a narrow card.
   Without container-query support, profiles keep the default stacked layout. */
@container nexus-content-list (min-width: 640px) {
    .nexus-content-list .nexus-content-grid[data-columns="1"] > [data-profile-layout=split] {
        display: grid;
        grid-template-columns: minmax(0, min(32%, var(--content-profile-image-size, 240px))) minmax(0, 1fr);
        grid-template-rows: auto auto 1fr auto;
        column-gap: clamp(1.5rem, 4cqi, 3rem);
        row-gap: .75rem;
        align-items: start;
    }
    .nexus-content-list .nexus-content-grid[data-columns="1"] > [data-profile-layout=split] > [data-content-image] {
        grid-column: 1;
        grid-row: 1 / 5;
        width: 100%;
        align-self: start;
    }
    .nexus-content-list .nexus-content-grid[data-columns="1"] > [data-profile-layout=split] > :not([data-content-image]) {
        grid-column: 2;
    }
    .nexus-content-list .nexus-content-grid[data-columns="1"] > [data-profile-layout=split] > [data-content-title] {
        grid-row: 1;
    }
    .nexus-content-list .nexus-content-grid[data-columns="1"] > [data-profile-layout=split] > [data-content-excerpt] {
        grid-row: 2;
    }
    .nexus-content-list .nexus-content-grid[data-columns="1"] > [data-profile-layout=split] > [data-content-details] {
        grid-row: 3;
        flex-direction: row;
        flex-wrap: wrap;
        margin-top: 0;
    }
    .nexus-content-list [data-profile-layout=split] > [data-content-details] > a {
        flex: 1 1 160px;
        min-width: 0;
    }
    .nexus-content-list [data-profile-layout=split] > [data-content-details] > :not(a) {
        flex-basis: 100%;
    }
    .nexus-content-list .nexus-content-grid[data-columns="1"] > [data-profile-layout=split] > [data-content-action] {
        grid-row: 4;
        align-self: end;
    }
}

@media (min-width:1024px) {
    .nexus-content-grid[data-center-first=true]:not([data-first-row=true])>article:first-child {
        grid-column: 2;
        grid-row: 1;
    }
    .nexus-content-grid[data-center-first=true]:not([data-first-row=true])>article:nth-child(2) {
        grid-column: 1;
        grid-row: 1;
    }
    .nexus-content-grid[data-center-first=true]:not([data-first-row=true])>article:nth-child(3) {
        grid-column: 3;
        grid-row: 1;
    }
}

@media (min-width:768px) {
    .nexus-content-grid[data-first-row=true]>article:first-child {
        grid-column: 1/-1;
        justify-self: center;
        width: calc((100% - 1.5rem)/2);
    }
}

@media (min-width:1024px) {
    .nexus-content-grid[data-first-row=true]>article:first-child {
        width: calc((100% - 3rem)/3);
    }
}

.nexus-content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
}

.nexus-content-grid > article {
    min-width: 0;
    height: 100%;
}

@media (min-width: 768px) {
    .nexus-content-grid:not([data-columns="1"]) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .nexus-content-grid[data-columns="3"] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .nexus-content-grid[data-columns="4"] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

.nexus-content-list[data-presentation-profile=editorial] .nexus-content-card {
    border-color: transparent;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
    background: transparent;
}

.nexus-content-list[data-presentation-profile=editorial] [data-content-image] {
    border-radius: 0;
}

.nexus-content-list[data-presentation-profile=editorial] [data-content-title] {
    font-family: ui-serif, Georgia, Cambria, "Times New Roman", serif;
    font-size: 1.35rem;
    line-height: 1.25;
}

.nexus-content-list[data-presentation-profile=editorial] [data-content-action] {
    width: max-content;
    border-top: 0;
    border-bottom: 1px solid currentColor;
    padding-top: .25rem;
}

.nexus-content-list[data-presentation-profile=compact] {
    padding-block: .75rem;
}

.nexus-content-list[data-presentation-profile=compact] .nexus-content-grid {
    gap: .875rem;
}

.nexus-content-list[data-presentation-profile=compact] .nexus-content-card {
    gap: .65rem;
    border-radius: .7rem;
    padding: .85rem;
}

.nexus-content-list[data-presentation-profile=compact] [data-content-image] {
    border-radius: .5rem;
}

.nexus-content-list[data-presentation-profile=compact] [data-content-title],
.nexus-content-list[data-presentation-profile=compact] [data-content-excerpt] {
    min-height: 1.5rem;
    -webkit-line-clamp: 1;
}

.nexus-content-list[data-presentation-profile=marketplace] .nexus-content-card {
    border-radius: .85rem;
    border-top: 4px solid var(--site-accent, #047857);
    box-shadow: 0 10px 28px color-mix(in srgb, var(--site-primary, #0f172a) 9%, transparent);
}

.nexus-content-list[data-presentation-profile=marketplace] [data-content-action] {
    color: var(--site-accent, #047857);
}

.nexus-content-list[data-presentation-profile=minimal] .nexus-content-grid {
    gap: 2rem;
}

.nexus-content-list[data-presentation-profile=minimal] .nexus-content-card {
    border: 0;
    border-radius: 0;
    padding-inline: 0;
    box-shadow: none;
    background: transparent;
}

.nexus-content-list[data-presentation-profile=minimal] [data-content-image] {
    border-radius: 0;
}

/* Appearance is selected by trusted Site Plugin settings. CSS provides reusable
   primitives only; tenant and locale choices remain in site_plugin_entries. */
.nexus-content-list[data-section-surface=transparent] { background: transparent; }
.nexus-content-list[data-section-surface=surface] { background: var(--site-surface,#fff); color: var(--site-text,#0f172a); }
.nexus-content-list[data-section-surface=soft] { background: var(--site-soft,#eef4f1); color: var(--site-text,#0f172a); }
.nexus-content-list[data-section-surface=primary] { background: var(--site-primary,#0f3d3e); color: var(--site-on-primary,#fff); }

.nexus-content-list[data-section-spacing=none] { padding: 0; }
.nexus-content-list[data-section-spacing=compact] { padding: .75rem; }
.nexus-content-list[data-section-spacing=standard] { padding: 1.5rem; }
.nexus-content-list[data-section-spacing=spacious] { padding: clamp(2rem,5cqi,3.5rem); }

.nexus-content-list[data-section-radius=none] { border-radius: 0; }
.nexus-content-list[data-section-radius=small] { border-radius: .5rem; }
.nexus-content-list[data-section-radius=medium] { border-radius: 1rem; }
.nexus-content-list[data-section-radius=large] { border-radius: 1.5rem; }

.nexus-content-list[data-section-border=none] { border: 0; }
.nexus-content-list[data-section-border=outline] { border: 1px solid var(--site-border,#dce7e2); }
.nexus-content-list[data-section-border=accent-top] {
    border: 1px solid var(--site-border,#dce7e2);
    border-top: 4px solid var(--site-accent,#0f766e);
}

.nexus-content-list[data-section-shadow=none] { box-shadow: none; }
.nexus-content-list[data-section-shadow=soft] { box-shadow: 0 18px 50px color-mix(in srgb,var(--site-primary,#0f3d3e) 8%,transparent); }
.nexus-content-list[data-section-shadow=raised] { box-shadow: 0 24px 70px color-mix(in srgb,var(--site-primary,#0f3d3e) 16%,transparent); }

.nexus-content-list[data-heading-alignment=center] > :is(h2,p) { margin-inline: auto; text-align: center; }
.nexus-content-list[data-content-alignment=center] [data-content-card] { align-items: stretch; }
.nexus-content-list[data-content-alignment=center] :is([data-content-title],[data-content-excerpt]) { text-align: center; }
.nexus-content-list[data-content-alignment=center] [data-content-image] { align-self: center; }

.nexus-content-list[data-card-surface=transparent] [data-content-card] { background: transparent; color: inherit; }
.nexus-content-list[data-card-surface=surface] [data-content-card] { background: var(--site-surface,#fff); color: var(--site-text,#0f172a); }
.nexus-content-list[data-card-surface=soft] [data-content-card] { background: var(--site-soft,#eef4f1); color: var(--site-text,#0f172a); }
.nexus-content-list[data-card-surface=primary] [data-content-card] { background: var(--site-primary,#0f3d3e); color: var(--site-on-primary,#fff); }

.nexus-content-list[data-card-radius=none] [data-content-card] { border-radius: 0; }
.nexus-content-list[data-card-radius=small] [data-content-card] { border-radius: .5rem; }
.nexus-content-list[data-card-radius=medium] [data-content-card] { border-radius: 1rem; }
.nexus-content-list[data-card-radius=large] [data-content-card] { border-radius: 1.5rem; }

.nexus-content-list[data-card-border=none] [data-content-card] { border: 0; box-shadow: none; }
.nexus-content-list[data-card-border=outline] [data-content-card] { border: 1px solid var(--site-border,#dce7e2); }
.nexus-content-list[data-card-border=accent-top] [data-content-card] {
    border: 1px solid var(--site-border,#dce7e2);
    border-top: 4px solid var(--site-accent,#0f766e);
}

.nexus-content-list[data-card-shadow=none] [data-content-card] { box-shadow: none; }
.nexus-content-list[data-card-shadow=soft] [data-content-card] { box-shadow: 0 10px 28px color-mix(in srgb,var(--site-primary,#0f172a) 9%,transparent); }
.nexus-content-list[data-card-shadow=raised] [data-content-card] { box-shadow: 0 18px 48px color-mix(in srgb,var(--site-primary,#0f172a) 17%,transparent); }

.nexus-content-list[data-image-border=none] [data-content-image] { border: 0; }
.nexus-content-list[data-image-border=subtle] [data-content-image] { border: 3px solid color-mix(in srgb,var(--site-primary,#0f3d3e) 16%,transparent); }
.nexus-content-list[data-image-border=accent] [data-content-image] { border: 3px solid var(--site-accent,#0f766e); }

.nexus-content-list[data-detail-layout=stacked] [data-content-details] { display: grid; grid-template-columns: minmax(0,1fr); width: 100%; }
.nexus-content-list[data-detail-layout=grid] [data-content-details] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; }

.nexus-content-list[data-card-style=profile] [data-content-card] { height: auto; }
.nexus-content-list[data-card-style=profile] [data-content-title] { min-height: 0; }
.nexus-content-list[data-card-style=profile] [data-content-excerpt] { min-height: 0; }

.nexus-content-list[data-action-style=link] [data-content-action] { width: max-content; }
.nexus-content-list[data-action-style=outline] [data-content-action],
.nexus-content-list[data-action-style=solid] [data-content-action] {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    margin-top: 1rem;
    padding: .7rem 1rem;
    border: 1px solid var(--site-primary,#0f3d3e);
    border-radius: 999px;
    font-weight: 700;
    text-align: center;
}
.nexus-content-list[data-action-style=outline] [data-content-action] { background: transparent; color: var(--site-primary,#0f3d3e); }
.nexus-content-list[data-action-style=solid] [data-content-action] { background: var(--site-primary,#0f3d3e); color: var(--site-on-primary,#fff); }

/* Compact profiles keep contact details beside the identity block. Only the
   final action absorbs spare row height, so names and roles do not drift apart. */
.nexus-content-list[data-card-style=profile] [data-content-card][data-profile-compact=true] {
    height: 100%;
    gap: .75rem;
}
.nexus-content-list[data-card-style=profile] [data-profile-compact=true] > [data-content-title],
.nexus-content-list[data-card-style=profile] [data-profile-compact=true] > [data-content-excerpt] {
    margin: 0;
    min-height: 1.5rem;
    max-height: 1.5rem;
    line-height: 1.5rem;
    -webkit-line-clamp: 1;
}
.nexus-content-list[data-card-style=profile] [data-profile-compact=true] > [data-content-details] {
    margin-top: 0;
    min-height: 0;
    gap: .5rem;
}
.nexus-content-list[data-card-style=profile] [data-profile-compact=true] > [data-content-details] > a {
    min-width: 0;
    overflow-wrap: anywhere;
}
.nexus-content-list[data-card-style=profile] [data-profile-compact=true] > [data-content-action] {
    margin-top: auto;
    padding-top: .75rem;
}

.nexus-content-reviews[data-presentation-profile=editorial] .nexus-content-review {
    border-radius: 0;
    border-inline-start: 3px solid var(--site-accent, #047857);
    box-shadow: none;
}

.nexus-content-reviews[data-presentation-profile=compact] .nexus-content-review {
    min-height: 230px;
    padding: 1rem;
}

.nexus-content-reviews[data-presentation-profile=marketplace] .nexus-content-review {
    border: 1px solid color-mix(in srgb, var(--site-accent, #047857) 24%, #e2e8f0);
    box-shadow: 0 10px 28px color-mix(in srgb, var(--site-primary, #0f172a) 8%, transparent);
}

.nexus-content-reviews[data-presentation-profile=minimal] .nexus-content-review {
    border-radius: 0;
    box-shadow: none;
}

.nexus-content-metadata[data-presentation-profile=marketplace] {
    border-inline-start: 3px solid var(--site-accent, #047857);
    padding-inline-start: 1rem;
}

.nexus-content-metadata[data-presentation-profile=minimal] {
    padding-block: 0;
}

.nexus-content-list .nexus-content-languages {
    display: grid;
    gap: .4rem;
    padding-block: .35rem .6rem;
}
.nexus-content-list .nexus-content-languages-label {
    color: var(--site-muted, #64748b);
    font-size: .75rem;
    line-height: 1.4;
}
.nexus-content-list .nexus-content-languages ul {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.nexus-content-list .nexus-content-languages li {
    border: 1px solid var(--site-border, #e2e8f0);
    border-radius: .35rem;
    padding: .2rem .45rem;
    color: var(--site-text, #0f172a);
    font-size: .75rem;
    line-height: 1.4;
}
.nexus-content-action-context{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Review styles select presentation only; CMS remains the content owner. */
.nexus-content-reviews { --review-ink: var(--site-primary,#142b3d); --review-muted: var(--site-muted,#64748b); }
.nexus-content-review-heading { margin: 0 0 .75rem; font-size: clamp(1.5rem,3cqi,2.5rem); line-height: 1.2; font-weight: 700; letter-spacing: -.025em; overflow-wrap: anywhere; }
.nexus-content-review-subtitle { max-width: 60ch; margin: 0 0 1.5rem; color: var(--review-muted); line-height: 1.65; }
.nexus-content-review-gallery { min-width: 0; }
.nexus-content-review-controls { display: flex; justify-content: flex-end; gap: .65rem; margin-block: 0 1rem; }
.nexus-content-review-control {
    display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px;
    border: 1px solid var(--site-border,#e2e8f0); border-radius: 50%; background: var(--site-surface,#fff);
    color: var(--review-ink); font-size: 1.3rem; cursor: pointer; transition: background-color .15s,color .15s;
}
.nexus-content-review-control:hover { background: var(--review-ink); color: var(--site-on-primary,#fff); }
.nexus-content-review-control:focus-visible, .nexus-content-review-items:focus-visible {
    outline: 2px solid var(--site-accent,#0f766e); outline-offset: 4px;
}
.nexus-content-review-items { gap: 1.25rem; align-items: stretch; }
.nexus-content-review-items[data-reviews-display=slider] {
    display: flex; overflow-x: auto; padding-block: .25rem 1rem; scroll-snap-type: x mandatory;
    overscroll-behavior-inline: contain; scrollbar-width: thin; scrollbar-color: var(--site-border,#cbd5e1) transparent;
}
.nexus-content-review-items[data-reviews-display=slider] > .nexus-content-review {
    width: min(360px,88cqi); flex-shrink: 0; scroll-snap-align: start;
}
.nexus-content-review-items[data-reviews-display=grid] { display: grid; grid-template-columns: minmax(0,1fr); }
.nexus-content-review {
    position: relative; display: grid; grid-template-areas: "author" "rating" "text" "meta";
    grid-template-rows: 3rem 1.25rem minmax(9rem,1fr) 1.5rem; gap: 1rem;
    min-width: 0; min-height: 340px; padding: 1.5rem; border: 1px solid var(--site-border,#e2e8f0);
    border-radius: 1.25rem; background: var(--site-surface,#fff); color: var(--site-text,#1e293b);
    box-shadow: 0 6px 22px color-mix(in srgb,var(--review-ink) 5%,transparent);
}
.nexus-content-review-quote { display: none; pointer-events: none; }
.nexus-content-review-author { grid-area: author; display: flex; align-items: center; gap: .85rem; min-width: 0; }
.nexus-content-review-author > .nexus-content-review-name {
    margin: 0; min-width: 0; flex: 1; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden; overflow-wrap: anywhere; height: 3rem; line-height: 1.5rem; font-size: 1rem; font-weight: 700;
}
.nexus-content-review-avatar {
    display: flex; align-items: center; justify-content: center; width: 48px; height: 48px;
    flex: 0 0 48px; border-radius: 50%; object-fit: cover; font-weight: 700; font-size: 1rem;
    background: color-mix(in srgb,var(--review-ink) 9%,#fff); color: var(--review-ink);
}
.nexus-content-review-rating {
    grid-area: rating; display: flex; align-items: center; gap: .6rem; margin: 0; min-width: 0;
    white-space: nowrap; line-height: 1.25rem; font-size: .75rem; font-weight: 600; color: var(--review-muted);
}
.nexus-content-review-rating > :first-child { letter-spacing: .08em; color: #b7791f; font-size: 1rem; }
.nexus-content-review-text {
    grid-area: text; margin: 0; align-self: start; height: 9rem; min-width: 0; overflow: hidden;
    display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow-wrap: anywhere;
    font-size: .98rem; line-height: 1.5rem; color: var(--review-muted);
}
.nexus-content-review-meta {
    grid-area: meta; align-self: end; display: flex; gap: .5rem; min-width: 0; overflow: hidden;
    line-height: 1.5rem; font-size: .75rem; color: var(--review-muted); white-space: nowrap; text-overflow: ellipsis;
}
.nexus-content-review-meta a { text-decoration: underline; text-underline-offset: 3px; }
/* Editorial: generous quotation, comment first, author signature below. */
.nexus-content-reviews[data-review-style=editorial] .nexus-content-review {
    grid-template-areas: "rating" "text" "author" "meta";
    grid-template-rows: 2.5rem minmax(9rem,1fr) 4rem 1.5rem;
    padding: 1.75rem; border-radius: .5rem 1.5rem 1.5rem 1.5rem;
}
.nexus-content-reviews[data-review-style=editorial] .nexus-content-review-quote,
.nexus-content-reviews[data-review-style=contrast] .nexus-content-review-quote {
    display: block; position: absolute; inset-block-start: 1rem; inset-inline-start: 1.5rem;
    font: 5.5rem/1 Georgia,serif; color: color-mix(in srgb,var(--review-ink) 22%,transparent);
}
.nexus-content-reviews[data-review-style=editorial] .nexus-content-review-rating,
.nexus-content-reviews[data-review-style=contrast] .nexus-content-review-rating { justify-content: flex-end; align-self: start; }
.nexus-content-reviews[data-review-style=editorial] .nexus-content-review-author {
    border-top: 1px solid var(--site-border,#e2e8f0); padding-block-start: 1rem;
}
.nexus-content-reviews[data-review-style=editorial] .nexus-content-review-text { font-size: 1.06rem; color: var(--site-text,#1e293b); }
/* Portrait: circular identity, centered composition and a tinted upper band. */
.nexus-content-reviews[data-review-style=portrait] .nexus-content-review {
    grid-template-rows: 7.5rem 1.25rem minmax(9rem,1fr) 1.5rem; text-align: center;
    background: linear-gradient(color-mix(in srgb,var(--review-ink) 6%,var(--site-surface,#fff)) 0 5rem,var(--site-surface,#fff) 5rem);
    border-radius: 1.5rem; padding-block-start: 2rem;
}
.nexus-content-reviews[data-review-style=portrait] .nexus-content-review-author { flex-direction: column; justify-content: center; gap: .75rem; }
.nexus-content-reviews[data-review-style=portrait] .nexus-content-review-name { flex: 0 0 3rem; width: 100%; }
.nexus-content-reviews[data-review-style=portrait] .nexus-content-review-avatar { width: 64px; height: 64px; flex-basis: 64px; border: 4px solid var(--site-surface,#fff); font-size: 1.2rem; }
.nexus-content-reviews[data-review-style=portrait] :is(.nexus-content-review-rating,.nexus-content-review-meta) { justify-content: center; }
/* Split: identity on a narrow rail, review and source date in the main column. */
.nexus-content-reviews[data-review-style=split] .nexus-content-review {
    grid-template-areas: "author rating" "author text" "author meta";
    grid-template-columns: 5rem minmax(0,1fr); grid-template-rows: 1.25rem minmax(9rem,1fr) 1.5rem;
    min-height: 280px; gap: 1.25rem; border-radius: 1rem;
}
.nexus-content-reviews[data-review-style=split] .nexus-content-review-author {
    align-self: stretch; flex-direction: column; gap: 1rem; padding-inline-end: 1rem;
    border-inline-end: 1px solid var(--site-border,#e2e8f0); text-align: center;
}
.nexus-content-reviews[data-review-style=split] .nexus-content-review-name { flex: 0 0 4.5rem; height: 4.5rem; -webkit-line-clamp: 3; font-size: .875rem; }
.nexus-content-reviews[data-review-style=split] .nexus-content-review-avatar { width: 52px; height: 52px; flex-basis: 52px; }
.nexus-content-reviews[data-review-style=split] .nexus-content-review-meta { border-top: 1px solid var(--site-border,#e2e8f0); padding-block-start: .25rem; }
/* Minimal: open spacing, typography and a single rule instead of boxed decoration. */
.nexus-content-reviews[data-review-style=minimal] .nexus-content-review {
    padding: 1.5rem .75rem; border: 0; border-block-end: 2px solid color-mix(in srgb,var(--review-ink) 25%,transparent);
    border-radius: 0; background: transparent; box-shadow: none;
}
.nexus-content-reviews[data-review-style=minimal] .nexus-content-review-avatar { background: transparent; border: 1px solid var(--site-border,#cbd5e1); border-radius: .75rem; }
.nexus-content-reviews[data-review-style=minimal] .nexus-content-review-text { color: var(--site-text,#1e293b); }
/* Contrast: strong site-color surface with an inverted author signature. */
.nexus-content-reviews[data-review-style=contrast] .nexus-content-review {
    grid-template-areas: "rating" "text" "author" "meta"; grid-template-rows: 2.5rem minmax(9rem,1fr) 4rem 1.5rem;
    background: var(--review-ink); color: var(--site-on-primary,#fff); border-color: transparent; padding: 1.75rem;
    box-shadow: none;
}
.nexus-content-reviews[data-review-style=contrast] .nexus-content-review-quote { color: color-mix(in srgb,var(--site-on-primary,#fff) 35%,transparent); }
.nexus-content-reviews[data-review-style=contrast] :is(.nexus-content-review-text,.nexus-content-review-meta,.nexus-content-review-rating) { color: color-mix(in srgb,var(--site-on-primary,#fff) 85%,transparent); }
.nexus-content-reviews[data-review-style=contrast] .nexus-content-review-rating > :first-child { color: #f5c66c; }
.nexus-content-reviews[data-review-style=contrast] .nexus-content-review-author { border-top: 1px solid color-mix(in srgb,var(--site-on-primary,#fff) 20%,transparent); padding-block-start: 1rem; }
.nexus-content-reviews[data-review-style=contrast] .nexus-content-review-avatar { background: var(--site-on-primary,#fff); color: var(--review-ink); }
@container nexus-content-list (min-width: 600px) {
    .nexus-content-review-items[data-reviews-display=slider] > .nexus-content-review { width: 380px; }
    .nexus-content-reviews[data-review-style=split] .nexus-content-review-items[data-reviews-display=slider] > .nexus-content-review { width: 500px; }
    .nexus-content-review-items[data-reviews-display=grid]:not([data-columns="1"]) { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@container nexus-content-list (min-width: 960px) {
    .nexus-content-review-items[data-reviews-display=grid][data-columns="3"] { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .nexus-content-review-items[data-reviews-display=grid][data-columns="4"] { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (prefers-reduced-motion:reduce) { .nexus-content-review-control { transition: none; } }

/* content-share */
.nexus-content-share{box-sizing:border-box;width:100%;min-width:0;color:var(--site-text,#173738);--share-justify:flex-start;--share-text:start}
.nexus-content-share [hidden]{display:none!important}
.nexus-content-share[data-surface="card"]{padding:20px 24px;border:1px solid var(--site-border,#dce5e2);border-radius:14px;background:var(--site-surface,#fff)}
.nexus-content-share[data-alignment="center"]{--share-justify:center;--share-text:center}
.nexus-content-share[data-alignment="end"]{--share-justify:flex-end;--share-text:end}
.nexus-content-share-bar{display:flex;align-items:center;justify-content:var(--share-justify);flex-wrap:wrap;gap:12px 20px;min-width:0}
.nexus-content-share-heading{font-weight:650;line-height:1.5;overflow-wrap:anywhere;text-align:var(--share-text)}
.nexus-content-share-actions{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:var(--share-justify);gap:10px;min-width:0;max-width:100%}
.nexus-content-share[data-layout="stack"] .nexus-content-share-bar{flex-direction:column;align-items:stretch}
.nexus-content-share-actions .nexus-content-share-action{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;max-width:100%;padding:10px 16px;border:1px solid var(--site-border,#dce5e2);border-radius:10px;background:var(--site-surface,#fff);color:inherit;font:inherit;font-size:.9rem;font-weight:600;line-height:1.4;white-space:normal;overflow-wrap:anywhere;text-align:center;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}
.nexus-content-share-action svg{flex-shrink:0}
.nexus-content-share[data-button-style="soft"] .nexus-content-share-action{background:var(--site-soft,#eef4f2);border-color:transparent}
.nexus-content-share-actions .nexus-content-share-action:disabled{opacity:.55;cursor:not-allowed}
.nexus-content-share-action[aria-disabled="true"]{opacity:.6;cursor:wait}
@media(hover:hover){.nexus-content-share-actions .nexus-content-share-action:not(:disabled):hover{background:var(--site-soft,#eef4f2);border-color:var(--site-primary,#12686b)}}
.nexus-content-share :is(a,button,input):focus-visible{outline:3px solid var(--site-primary,#12686b);outline-offset:3px}
.nexus-content-share-status{margin:8px 0 0;min-height:3em;font-size:.8rem;line-height:1.5;color:var(--site-muted,#5b706f);text-align:var(--share-text)}
.nexus-content-share-manual{display:grid;gap:8px;margin-top:12px;font-size:.85rem;line-height:1.5;min-width:0}
.nexus-content-share-manual input{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--site-border,#dce5e2);border-radius:8px;background:var(--site-surface,#fff);color:var(--site-text,#173738);font:inherit;font-size:16px}
@media(max-width:480px){.nexus-content-share[data-surface="card"]{padding:16px}.nexus-content-share-actions{width:100%}.nexus-content-share-action{flex:1 1 auto}}
@media(prefers-reduced-motion:reduce){.nexus-content-share-actions .nexus-content-share-action{transition:none}}

/* content-toc */
/* Owned by content-toc. Site colors come from the central design tokens. */
.nexus-toc { box-sizing:border-box; padding:1rem 1.25rem; border:1px solid var(--site-border,#dce3e5); border-radius:.8rem; background:var(--site-soft,#f4f7f7); color:var(--site-text,#18363b); max-width:100%; min-width:0; overflow-wrap:anywhere; }
.nexus-toc[hidden] { display:none!important; }
.nexus-toc[data-surface="plain"] { padding:.25rem 0; border:0; border-radius:0; background:transparent; }
.nexus-toc summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:44px; cursor:pointer; font-weight:700; list-style:none; }
.nexus-toc summary::-webkit-details-marker { display:none; }
.nexus-toc-chevron { flex-shrink:0; }
.nexus-toc details[open] .nexus-toc-chevron { transform:rotate(180deg); }
.nexus-toc-subtitle { margin:.5rem 0; line-height:1.5; }
.nexus-toc-links { list-style:none; padding:0; margin:.5rem 0 0; counter-reset:toc; }
.nexus-toc[data-height-limited="true"] .nexus-toc-links { max-height:var(--toc-max-height); overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding:.25rem; }
.nexus-toc-links li { margin:0; padding:0; }
.nexus-toc-links a { display:flex; gap:.5rem; align-items:center; min-height:44px; padding:.5rem .75rem; border-inline-start:3px solid transparent; line-height:1.45; color:inherit; font-weight:500; text-decoration:none; }
.nexus-toc-links[data-numbered="true"] a::before { counter-increment:toc; content:counter(toc) "."; flex:0 0 3ch; font-variant-numeric:tabular-nums; opacity:.7; }
.nexus-toc-link-label { min-width:0; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:2.9em; max-height:2.9em; }
.nexus-toc-links a[aria-current="location"] { border-color:var(--site-accent,#267d80); background:var(--site-surface,#fff); }
.nexus-toc-links a:hover { background:var(--site-surface,#fff); }
.nexus-toc-links [data-indent="1"] { margin-inline-start:1rem; }
.nexus-toc-links [data-indent="2"] { margin-inline-start:2rem; }
.nexus-toc :focus-visible { outline:3px solid var(--site-accent,#267d80); outline-offset:2px; }
@media (min-width:64rem) { .nexus-toc[data-sticky="true"] { position:sticky; top:var(--toc-offset,96px); align-self:start; z-index:2; } }
@media print { .nexus-toc[data-sticky="true"] { position:static; } .nexus-toc[data-height-limited="true"] .nexus-toc-links { max-height:none; overflow:visible; } .nexus-toc-link-label { display:block; min-height:0; max-height:none; } }

/* cookie-consent */
.nexus-cookie-consent {
    position: fixed;
    inset-inline: 0;
    bottom: 0;
    z-index: 50;
    padding: 1rem;
}
.nexus-cookie-consent[hidden] { display: none; }
.nexus-cookie-consent__card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    max-width: 64rem;
    margin-inline: auto;
    padding: 1.25rem;
    border: 1px solid var(--site-border,#e2e8f0);
    border-radius: 1rem;
    background: var(--site-surface,#fff);
    color: var(--site-text,#0f172a);
    box-shadow: 0 18px 48px rgba(15,23,42,.18);
}
.nexus-cookie-consent__copy h2 { margin: 0 0 .25rem; font-size: 1rem; font-weight: 700; }
.nexus-cookie-consent__copy p { margin: 0; font-size: .875rem; line-height: 1.55; color: var(--site-muted,#475569); }
.nexus-cookie-consent__copy a { color: inherit; font-weight: 600; text-decoration: underline; }
.nexus-cookie-consent__actions { display: flex; flex: none; gap: .75rem; }
.nexus-cookie-consent__actions button {
    min-height: 44px;
    padding: .65rem 1rem;
    border: 1px solid var(--site-border,#cbd5e1);
    border-radius: .75rem;
    background: var(--site-surface,#fff);
    color: inherit;
    cursor: pointer;
    font-weight: 600;
}
.nexus-cookie-consent__actions .is-primary { background: var(--site-primary,#0f766e); color: #fff; border-color: transparent; }
.nexus-cookie-consent__actions button:focus-visible { outline: 3px solid var(--site-primary,#0f766e); outline-offset: 3px; }
@media (max-width: 640px) {
    .nexus-cookie-consent__card { align-items: stretch; flex-direction: column; }
    .nexus-cookie-consent__actions { display: grid; grid-template-columns: 1fr 1fr; }
}
@media print { .nexus-cookie-consent { display: none !important; } }

/* shared/selector */
/* shared/selector: plugin presentation; site design stays in published page/region CSS. */
.nexus-header-selector {
    position: relative;
    flex: none;
    font-size: 13px;
    line-height: 1.25;
}

.nexus-header-selector>summary {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 36px;
    padding: 7px 10px;
    border: 1px solid currentColor;
    border-radius: 9px;
    list-style: none;
    cursor: pointer;
    white-space: nowrap;
}

.nexus-header-selector>summary::-webkit-details-marker {
    display: none;
}

.nexus-header-selector>summary::marker {
    content: "";
}

.nexus-header-selector>summary svg {
    flex: none;
    transition: transform .2s;
}

.nexus-header-selector[open]>summary svg {
    transform: rotate(180deg);
}

.nexus-header-selector__options {
    position: absolute;
    inset-inline-end: 0;
    top: calc(100% + 6px);
    z-index: 90;
    min-width: 104px;
    max-height: 60dvh;
    overflow-y: auto;
    padding: 6px;
    background: var(--site-surface,#fff);
    color: var(--site-primary,#0b2239);
    border: 1px solid var(--site-border,#e2e8f0);
    border-radius: 12px;
    box-shadow: 0 10px 28px var(--site-shadow,#0b223929);
    overscroll-behavior: contain;
}

/* Popovers enter the browser's top layer, so a one-line/scrollable topbar
   cannot clip the menu or turn the opened menu into part of its scroll area. */
.nexus-header-selector__options[popover] {
    position: fixed;
    inset: auto;
    width: max-content;
    max-width: calc(100vw - 16px);
    margin: 0;
}

.nexus-header-selector__options form {
    width: 100%;
    margin: 0;
}

.nexus-header-selector__options a,
.nexus-header-selector__options button {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 40px;
    padding: 8px 12px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: start;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
}

.nexus-header-selector__options a:hover,
.nexus-header-selector__options a[aria-current],
.nexus-header-selector__options button:hover,
.nexus-header-selector__options button[aria-current] {
    background: var(--site-soft,#ecfdf5);
    color: var(--site-primary,#065f46);
}

.nexus-header-selector>summary:focus-visible,
.nexus-header-selector__options a:focus-visible,
.nexus-header-selector__options button:focus-visible {
    outline: 2px solid var(--site-accent,#34d399);
    outline-offset: 2px;
}

@media (max-width:767px) {
    .nexus-header-selector[data-nexus-plugin][data-presentation-profile]>summary {
        min-height: 44px;
        padding: 8px;
    }
    .nexus-header-selector__options a,
    .nexus-header-selector__options button {
        min-height: 44px;
    }
}

@media (prefers-reduced-motion:reduce) {
    .nexus-header-selector>summary svg {
        transition: none;
    }
}

/* currency-rates */
/* currency-rates owns its presentation profiles; selector mechanics stay in shared/selector. */
.nexus-currency-switcher[data-presentation-profile="editorial"] > summary {
    min-height: 34px;
    border-width: 0 0 1px;
    border-radius: 0;
    padding-inline: .25rem;
    font-family: var(--site-heading-font, inherit);
    font-weight: 700;
}

.nexus-currency-switcher[data-presentation-profile="compact"] > summary {
    min-height: 32px;
    border-radius: .5rem;
    padding: 5px 8px;
    font-size: .75rem;
    font-weight: 700;
}

.nexus-currency-switcher[data-presentation-profile="marketplace"] > summary {
    border-color: var(--site-border, #dbe5df);
    background: var(--site-soft, #ecfdf5);
    color: var(--site-primary, #065f46);
    font-weight: 700;
}

.nexus-currency-switcher[data-presentation-profile="marketplace"] .nexus-header-selector__options :is(a, button)[aria-current="true"] {
    background: var(--site-primary, #065f46);
    color: #fff;
}

.nexus-currency-switcher[data-presentation-profile="minimal"] > summary {
    min-height: 32px;
    border: 0;
    border-radius: 0;
    padding-inline: 0;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .06em;
}

/* device-contact */
/* device-contact: plugin presentation; site design stays in published page/region CSS. */
.nexus-contact-dialog [data-contact-modal-panel]>[data-device-recipient] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 16px;
    padding: 12px;
    border: 1px solid var(--site-hover,#d1fae5);
    border-radius: 12px;
    background: var(--site-soft,#ecfdf5);
    color: var(--site-primary,#064e3b);
}

.nexus-device-recipient>img {
    width: 64px;
    height: 64px;
    object-fit: contain;
    border-radius: 50%;
    flex: none;
}

.nexus-device-recipient>div {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    overflow-wrap: anywhere;
}

.nexus-contact-stepped [data-contact-field][hidden],
.nexus-contact-stepped button[hidden],
.nexus-contact-dialog [data-device-recipient][hidden] {
    display: none !important;
}

.nexus-contact-stepped [data-contact-field] {
    grid-column: 1/-1;
}

.nexus-contact-step-label {
    margin: 0 0 16px;
    font-size: 13px;
    font-weight: 600;
    color: var(--site-accent,#047857);
}

.nexus-contact-step-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
}

.nexus-contact-step-actions button[type=submit] {
    margin-inline-start: auto;
}

.nexus-contact-step-actions button {
    min-height: 44px;
    padding: 10px 24px;
    border-radius: 12px;
    background: var(--site-accent,#047857);
    color: #fff;
    font-weight: 600;
}

.nexus-contact-step-actions button:focus-visible {
    outline: 3px solid var(--site-border,#6ee7b7);
    outline-offset: 3px;
}

/* floating-contact */
/* floating-contact: plugin presentation; site design stays in published page/region CSS. */
[data-nexus-plugin="floating-contact"].fixed {
    bottom: calc(1.5rem + var(--nexus-bottom-nav-height,0px));
}

[data-nexus-plugin="floating-contact"][data-presentation-profile=editorial] {
    border-radius: 3px;
}

[data-nexus-plugin="floating-contact"][data-presentation-profile=compact] {
    gap: .5rem;
    padding: .75rem;
}

[data-nexus-plugin="floating-contact"][data-presentation-profile=marketplace] {
    outline: 2px solid color-mix(in srgb,#25d366 35%,white);
    outline-offset: 2px;
}

[data-nexus-plugin="floating-contact"][data-presentation-profile=minimal] {
    border: 1px solid currentColor;
    background: var(--site-surface,#fff);
    color: var(--site-primary,#0f172a);
    box-shadow: none;
}

/* locale-switcher */
/* locale-switcher owns only its profiles; selector mechanics stay in shared/selector. */
.nexus-locale-switcher > summary > span {
    max-width: 11rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nexus-locale-switcher .nexus-header-selector__options a {
    white-space: nowrap;
    text-align: start;
    unicode-bidi: plaintext;
}

@media (max-width: 767px) {
    .nexus-locale-switcher > summary > span {
        max-width: 8rem;
    }
}

.nexus-locale-switcher[data-presentation-profile=editorial]>summary {
    border-width: 0 0 1px;
    border-radius: 0;
    padding-inline: .25rem;
}

.nexus-locale-switcher[data-presentation-profile=editorial]:not(details) a {
    border-bottom: 1px solid transparent;
    padding: .3rem .1rem;
    text-decoration: none;
}

.nexus-locale-switcher[data-presentation-profile=editorial]:not(details) a:is(:hover,[aria-current=page]) {
    border-bottom-color: currentColor;
}

.nexus-locale-switcher[data-presentation-profile=compact]>summary {
    min-height: 32px;
    border-radius: .5rem;
    padding: 5px 8px;
    font-size: .75rem;
}

.nexus-locale-switcher[data-presentation-profile=compact]:not(details) {
    gap: .35rem;
    font-size: .75rem;
}

.nexus-locale-switcher[data-presentation-profile=marketplace]>summary {
    border-color: var(--site-border,#dbe5df);
    background: var(--site-soft,#ecfdf5);
    color: var(--site-primary,#065f46);
    font-weight: 700;
}

.nexus-locale-switcher[data-presentation-profile=marketplace]:not(details) a {
    border: 1px solid var(--site-border,#dbe5df);
    border-radius: .55rem;
    padding: .45rem .6rem;
    text-decoration: none;
}

.nexus-locale-switcher[data-presentation-profile=marketplace]:not(details) a[aria-current=page] {
    background: var(--site-primary,#065f46);
    color: #fff;
}

.nexus-locale-switcher[data-presentation-profile=minimal]>summary {
    min-height: 32px;
    border: 0;
    border-radius: 0;
    padding-inline: 0;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .07em;
}

.nexus-locale-switcher[data-presentation-profile=minimal]:not(details) {
    gap: .65rem;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .07em;
}

/* Row direction is stable; only the native-language text carries its own bidi direction. */
.nexus-locale-switcher .nexus-header-selector__options a,
.nexus-locale-modal-options a {
    direction:ltr; text-align:left; unicode-bidi:isolate;
    display:grid; grid-template-columns:2.8rem minmax(0,1fr) auto; gap:.75rem; align-items:center;
}
.nexus-locale-code { direction:ltr; unicode-bidi:isolate; font-size:.75rem; font-weight:750; letter-spacing:.04em; }
.nexus-locale-name { min-width:0; text-align:left; unicode-bidi:isolate; }
.nexus-locale-check { color:var(--site-primary,#334155); font-size:1rem; }
.nexus-locale-modal-selector { position:relative; flex:none; font-size:13px; }
.nexus-locale-modal-selector > summary { display:flex; align-items:center; justify-content:center; gap:6px; min-height:44px; padding:6px 8px; border:0; border-radius:9px; list-style:none; cursor:pointer; font-weight:650; }
.nexus-locale-modal-selector > summary::-webkit-details-marker { display:none; }
.nexus-locale-modal-selector > summary:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.nexus-locale-modal-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; padding:1.25rem; margin:0; }
.nexus-locale-modal-options a { min-height:62px; padding:.8rem 1rem; border:1px solid var(--site-border,#e2e5e9); border-radius:12px; background:var(--site-surface,#fff); color:var(--site-text,#263440)!important; text-decoration:none; font-size:.95rem; line-height:1.4; }
.nexus-locale-modal-options a:hover,
.nexus-locale-modal-options a[aria-current=page] { border-color:var(--site-primary,#334155); background:var(--site-canvas,#f5f6f8); }
.nexus-locale-modal-options a:focus-visible { outline:2px solid var(--site-primary,#334155); outline-offset:3px; }
.nexus-locale-modal-selector[open] > nav { position:absolute; z-index:90; inset-inline-end:0; top:100%; width:min(30rem,90vw); background:var(--site-surface,#fff); border:1px solid var(--site-border,#e2e5e9); border-radius:14px; }
.nexus-locale-dialog.nexus-lightbox { width:min(640px,calc(100vw - 24px)); height:auto; max-height:min(700px,calc(100dvh - 32px)); background:var(--site-surface,#fff); color:var(--site-text,#263440); border-radius:18px; }
.nexus-locale-dialog .nexus-lightbox-shell { height:auto; max-height:inherit; }
.nexus-locale-dialog .nexus-lightbox-controls { padding:1rem 1.25rem; border-bottom:1px solid var(--site-border,#e2e5e9); }
.nexus-locale-dialog.nexus-lightbox .nexus-modal-close { order:2; flex:none; min-width:44px; min-height:44px; border-color:var(--site-border,#e2e5e9); background:#fff; color:#263440; }
.nexus-locale-dialog .nexus-modal-close:focus-visible { outline:2px solid var(--site-primary,#334155); outline-offset:2px; }
.nexus-locale-dialog-title { order:1; margin:0; font-size:1.2rem; font-weight:700; line-height:1.4; }
.nexus-locale-dialog .nexus-lightbox-viewport { max-height:calc(100dvh - 132px); overflow:auto; overscroll-behavior:contain; }
.nexus-locale-dialog .nexus-lightbox-stage { display:block; height:auto; min-width:0; min-height:0; }
@media(max-width:420px) {
 .nexus-locale-modal-options { padding:.85rem; gap:.5rem; }
 .nexus-locale-modal-options a { grid-template-columns:2rem minmax(0,1fr) auto; gap:.4rem; min-height:54px; padding:.65rem .6rem; font-size:.82rem; }
}
@media(max-width:320px) { .nexus-locale-modal-options { grid-template-columns:minmax(0,1fr); } }

/* shared/navigation */
/* shared/navigation: plugin presentation; site design stays in published page/region CSS. */
html {
    scroll-padding-top: calc(var(--nexus-fixed-header-height,0px) + 1rem);
    scroll-padding-bottom: calc(var(--nexus-bottom-nav-height,0px) + 1rem);
}

html[data-nexus-bottom-nav] body {
    padding-bottom: var(--nexus-bottom-nav-height,0px);
}

@media (min-width:1024px) {
    .nexus-desktop-header-fixed {
        position: fixed !important;
        top: 0 !important;
        left: var(--nexus-fixed-left,0px) !important;
        width: var(--nexus-fixed-width,100%) !important;
        z-index: 50 !important;
        background: var(--site-surface,#fff);
        box-shadow: 0 3px 16px var(--site-shadow,#0f172a14);
        margin-top: 0 !important;
    }
}

@media print {
    .nexus-desktop-header-fixed {
        position: static !important;
    }
    body {
        padding-bottom: 0;
    }
}

/* menu-manager */
/* menu-manager: plugin presentation; site design stays in published page/region CSS. */
.nexus-site-menu,
.nexus-site-menu__list {
    margin: 0;
    padding: 0;
}

.nexus-site-menu__list {
    list-style: none;
}

.nexus-site-menu__level-1 {
    display: flex;
    align-items: center;
    gap: .35rem;
}

.nexus-site-menu__item {
    position: relative;
}

.nexus-site-menu__link {
    display: flex;
    min-height: 2.5rem;
    align-items: center;
    border-radius: .75rem;
    padding: .55rem .8rem;
    text-decoration: none;
    color: inherit;
    white-space: nowrap;
}

.nexus-site-menu__link:hover,
.nexus-site-menu__link:focus-visible,
.nexus-site-menu__link[aria-current=page] {
    background: var(--menu-hover-background,var(--site-soft,rgba(23,60,50,.08)));
    outline: none;
}

.nexus-site-menu__item>.nexus-site-menu__list {
    position: absolute;
    inset-inline-start: 0;
    top: calc(100% + .25rem);
    z-index: 80;
    display: none;
    min-width: 14rem;
    border: 1px solid var(--site-hover,rgba(23,60,50,.1));
    border-radius: 1rem;
    background: var(--menu-submenu-background,#fff);
    padding: .45rem;
    box-shadow: 0 18px 45px var(--site-shadow,rgba(16,47,40,.18));
}

.nexus-site-menu__item>.nexus-site-menu__list .nexus-site-menu__list {
    inset-inline-start: calc(100% + .25rem);
    top: 0;
}

.nexus-site-menu__item:hover>.nexus-site-menu__list,
.nexus-site-menu__item:focus-within>.nexus-site-menu__list {
    display: block;
}

.nexus-site-menu__link {
    gap: .5rem;
}

.nexus-site-menu__chevron {
    flex-shrink: 0;
}

.nexus-site-menu__level-1 {
    flex-wrap: wrap;
}

.nexus-site-menu__item>.nexus-site-menu__list {
    top: 100%;
}

.nexus-site-menu__item>.nexus-site-menu__list .nexus-site-menu__list {
    inset-inline-start: 100%;
    top: 0;
}

@media (max-width: 767px) {
    .nexus-site-menu__level-1 {
        display: grid;
        gap: .15rem;
    }
    .nexus-site-menu__item>.nexus-site-menu__list,
.nexus-site-menu__item>.nexus-site-menu__list .nexus-site-menu__list {
        position: static;
        display: block;
        min-width: 0;
        border: 0;
        border-inline-start: 2px solid var(--site-hover,rgba(23,60,50,.12));
        border-radius: 0;
        background: transparent;
        padding-block: .1rem;
        padding-inline: .75rem 0;
        box-shadow: none;
    }
    .nexus-site-menu__link {
        white-space: normal;
    }
}

.nexus-menu-content {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.nexus-mobile-toggle {
    display: none;
    border: 1px solid var(--site-border,#cbd5e1);
    border-radius: 8px;
    padding: 8px 14px;
}

.nexus-submenu-toggle {
    display: none;
}

.nexus-menu-socials {
    display: flex;
    align-items: center;
    gap: 6px;
}

.nexus-menu-socials a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid var(--site-border,#e2e8f0);
    border-radius: 50%;
}

.nexus-site-menu.is-enhanced .has-children>.nexus-site-menu__link {
    padding-inline-end: 34px;
}

.nexus-site-menu.is-enhanced .nexus-site-menu__chevron {
    display: none;
}

.nexus-site-menu.is-enhanced .nexus-submenu-toggle {
    display: block;
    position: absolute;
    inset-inline-end: 0;
    top: 3px;
    width: 32px;
    height: 34px;
    border-radius: 6px;
}

.nexus-site-menu .has-children.is-open>.nexus-site-menu__list {
    display: block;
}

@media (max-width:767px) {
    .nexus-site-menu {
        width: 100%;
    }
    .nexus-menu-content {
        display: block;
    }
    .nexus-site-menu.is-enhanced[data-mobile-collapsible=true]>.nexus-mobile-toggle {
        display: flex;
    }
    .nexus-site-menu.is-enhanced[data-mobile-collapsible=true]:not(.is-open)>.nexus-menu-content {
        display: none;
    }
    .nexus-site-menu.is-enhanced .has-children:not(.is-open)>.nexus-site-menu__list {
        display: none;
    }
    .nexus-menu-socials {
        padding: 12px 0;
    }
    .nexus-menu-content>.nexus-site-menu__list {
        margin-top: 8px;
    }
}

.nexus-mobile-toggle {
    align-items: center;
    justify-content: center;
    gap: 8px;
}

/*
 * Keep collapsible navigation closed during the first paint. The asset runtime
 * enhances the menu after deferred JavaScript loads, so relying on
 * `.is-enhanced` here exposes the complete tree for a moment on slower
 * connections. Breakpoint attributes are server-rendered and therefore safe
 * to use before JavaScript is available.
 */
@media (max-width:1023px) {
    [data-mobile-header] .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint=auto],
    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1024"] {
        width: auto;
        position: static;
    }

    [data-mobile-header] .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint=auto] > .nexus-mobile-toggle,
    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1024"] > .nexus-mobile-toggle {
        display: flex;
        width: 44px;
        height: 44px;
        padding: 8px;
    }

    [data-mobile-header] .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint=auto] > .nexus-mobile-toggle .nexus-mobile-toggle-label,
    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1024"] > .nexus-mobile-toggle .nexus-mobile-toggle-label {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
    }

    [data-mobile-header] .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint=auto] > .nexus-menu-content,
    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1024"] > .nexus-menu-content {
        display: none;
    }
}

@media (max-width:1279px) {
    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1280"] {
        width: auto;
        position: static;
    }

    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1280"] > .nexus-mobile-toggle {
        display: flex;
        width: 44px;
        height: 44px;
        padding: 8px;
    }

    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1280"] > .nexus-mobile-toggle .nexus-mobile-toggle-label {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
    }

    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1280"] > .nexus-menu-content {
        display: none;
    }
}

@media (max-width:1535px) {
    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1536"] {
        width: auto;
        position: static;
    }

    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1536"] > .nexus-mobile-toggle {
        display: flex;
        width: 44px;
        height: 44px;
        padding: 8px;
    }

    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1536"] > .nexus-mobile-toggle .nexus-mobile-toggle-label {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
    }

    .nexus-site-menu[data-mobile-collapsible=true][data-mobile-breakpoint="1536"] > .nexus-menu-content {
        display: none;
    }
}

@media (max-width:1023px) {
    [data-mobile-header] .nexus-site-menu.is-enhanced {
        width: auto;
        position: static;
    }
    [data-mobile-header] .nexus-site-menu.is-enhanced[data-mobile-collapsible=true]>.nexus-mobile-toggle {
        display: flex;
        width: 40px;
        height: 40px;
        padding: 8px;
    }
    [data-mobile-header] .nexus-mobile-toggle-label {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
    }
    [data-mobile-header] .nexus-site-menu.is-enhanced[data-mobile-collapsible=true]:not(.is-open)>.nexus-menu-content {
        display: none;
    }
    [data-mobile-header] .nexus-site-menu.is-enhanced[data-mobile-collapsible=true]>.nexus-menu-content {
        position: absolute;
        top: 100%;
        inset-inline: 0;
        z-index: 85;
        max-height: 70dvh;
        overflow-y: auto;
        background: var(--site-surface,#fff);
        border-bottom: 1px solid var(--site-border,#dbe3df);
        box-shadow: 0 12px 18px var(--site-shadow,#102f281a);
        padding: 12px;
        display: block;
    }
    [data-mobile-header] .nexus-site-menu__level-1 {
        display: block;
    }
    [data-mobile-header] .nexus-site-menu__item>.nexus-site-menu__list,
[data-mobile-header] .nexus-site-menu__item>.nexus-site-menu__list .nexus-site-menu__list {
        position: static;
        min-width: 0;
        border: 0;
        border-inline-start: 2px solid var(--site-border,#dbe3df);
        box-shadow: none;
        border-radius: 0;
        padding-block: 4px;
        padding-inline: 12px 0;
    }
    [data-mobile-header] .nexus-site-menu.is-enhanced .has-children:not(.is-open)>.nexus-site-menu__list {
        display: none;
    }
    [data-mobile-header] .nexus-site-menu__link {
        white-space: normal;
    }
}

.nexus-site-menu.is-enhanced .nexus-submenu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0;
    height: 42px;
    line-height: 1;
}

.nexus-submenu-toggle svg {
    display: block;
    transition: transform .2s;
}

.nexus-submenu-toggle[aria-expanded=true] svg {
    transform: rotate(180deg);
}

.nexus-submenu-overview {
    display: none;
}

.nexus-site-menu .nexus-submenu-overview .nexus-menu-directional-arrow {
    display: inline-block;
    flex: 0 0 auto;
    width: 1em;
    overflow: hidden;
    font-size: 0;
    line-height: 1;
    text-align: center;
}

.nexus-site-menu .nexus-submenu-overview .nexus-menu-directional-arrow::before {
    content: "→";
    font-size: .95rem;
}

[dir="rtl"] .nexus-site-menu .nexus-submenu-overview .nexus-menu-directional-arrow::before {
    content: "←";
}

@media (max-width:1023px) {
    [data-mobile-header] .nexus-site-menu__level-1 {
        display: grid;
        gap: 8px;
    }
    [data-mobile-header] .nexus-site-menu__level-1>.nexus-site-menu__item {
        border: 1px solid var(--site-border,#e2e8e5);
        border-radius: 12px;
        background: var(--site-surface,#fff);
    }
    [data-mobile-header] .nexus-site-menu__link {
        min-height: 48px;
        padding: 12px 14px;
        font-size: 15px;
    }
    [data-mobile-header] .nexus-site-menu.is-enhanced .nexus-submenu-toggle {
        height: 48px;
        width: 44px;
    }
    [data-mobile-header] .nexus-site-menu .has-children.is-open>.nexus-site-menu__link {
        background: var(--site-soft,#eaf4ef);
        color: var(--site-primary,#14523b);
        font-weight: 600;
    }
    [data-mobile-header] .nexus-submenu-overview {
        display: block;
        font-size: 13px;
        color: var(--site-primary,#176448);
    }
    [data-mobile-header] .nexus-menu-socials {
        padding: 14px 0 0;
        border-top: 1px solid var(--site-border,#dbe5df);
        margin-top: 14px;
        justify-content: center;
        gap: 12px;
    }
}

@media (max-width:767px) {
    .nexus-submenu-overview {
        display: block;
    }
    .nexus-menu-content {
        border-radius: 14px;
        padding: var(--menu-mobile-padding,12px);
        background: var(--menu-mobile-background,var(--site-canvas,#f8faf9));
    }
    .nexus-site-menu__link {
        min-height: 48px;
    }
    .nexus-site-menu.is-enhanced .nexus-submenu-toggle {
        height: 48px;
    }
}

.nexus-mobile-parent {
    display: none;
}

.nexus-mobile-menu-dialog {
    position: fixed;
    inset-block: 0;
    inset-inline: auto 0;
    margin: 0;
    width: min(100%,32rem);
    max-width: 100%;
    height: 100dvh;
    max-height: none;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: var(--site-surface,#fff);
    color: var(--site-primary,#0b2239);
    overscroll-behavior: contain;
    opacity: 0;
    transform: translateX(2.25rem);
    transition:
        opacity .2s ease,
        transform .38s cubic-bezier(.22,1,.36,1);
}

.nexus-mobile-menu-dialog[open] {
    display: flex;
    flex-direction: column;
}

.nexus-mobile-menu-dialog.is-ready {
    opacity: 1;
    transform: translateX(0);
}

.nexus-mobile-menu-dialog:dir(rtl) {
    transform: translateX(-2.25rem);
}

.nexus-mobile-menu-dialog.is-ready:dir(rtl) {
    transform: translateX(0);
}

.nexus-mobile-menu-dialog::backdrop {
    background: rgb(4 22 18 / .44);
    opacity: 0;
    transition: opacity .25s ease;
    backdrop-filter: blur(3px);
}

.nexus-mobile-menu-dialog.is-ready::backdrop {
    opacity: 1;
}

.nexus-mobile-menu-heading {
    direction: ltr;
    display: grid;
    grid-template-columns: 44px minmax(0,1fr) 44px;
    flex: none;
    align-items: center;
    gap: 10px;
    min-height: calc(68px + env(safe-area-inset-top,0px));
    padding: calc(12px + env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) 12px max(14px,env(safe-area-inset-left,0px));
    border-bottom: 1px solid var(--site-border,#e2e8f0);
    background: var(--menu-mobile-heading-background,color-mix(in srgb,var(--site-surface,#fff) 92%,transparent));
    color: var(--menu-mobile-heading-color,var(--site-primary,#0b2239));
    box-shadow: 0 1px 0 rgb(15 23 42 / .02);
    backdrop-filter: blur(16px);
}

.nexus-mobile-menu-title {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    min-width: 0;
    overflow: hidden;
    color: var(--site-primary,#0b2239);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nexus-mobile-menu-back,
.nexus-mobile-menu-close {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 44px;
    height: 44px;
    border: 1px solid var(--site-border,#dbe5df);
    border-radius: 12px;
    background: var(--site-canvas,#f1f5f3);
    font-size: 30px;
    line-height: 1;
    color: var(--site-primary,#123c31);
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
    transition:
        color .16s ease,
        background-color .16s ease,
        transform .16s ease,
        opacity .16s ease;
}

.nexus-mobile-menu-back {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    border-color: transparent;
    background: transparent;
    font-size: inherit;
}

.nexus-mobile-menu-close {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
}

.nexus-mobile-menu-back:disabled {
    pointer-events: none;
    opacity: 0;
}

.nexus-mobile-menu-back:active,
.nexus-mobile-menu-close:active {
    transform: scale(.92);
}

.nexus-mobile-menu-dialog .nexus-menu-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: stretch;
    flex-wrap: nowrap;
    position: static;
    min-height: 0;
    max-height: none;
    overflow: hidden;
    margin: 0;
    padding: 0;
    background:
        radial-gradient(circle at 100% 0,color-mix(in srgb,var(--site-accent,#047857) 8%,transparent),transparent 42%),
        var(--menu-mobile-background,var(--site-canvas,#f7faf8));
    border: 0;
    border-radius: 0;
    box-shadow: none;
    gap: 0;
}

.nexus-mobile-menu-stage {
    --nexus-menu-drag: 0px;
    position: relative;
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    touch-action: pan-y;
    isolation: isolate;
}

.nexus-mobile-menu-dialog .nexus-mobile-menu-panel {
    position: absolute;
    inset: 0;
    display: grid;
    align-content: start;
    gap: 6px;
    width: 100%;
    min-width: 0;
    height: 100%;
    margin: 0;
    padding: 16px max(14px,env(safe-area-inset-right,0px)) calc(22px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    scrollbar-width: thin;
    scrollbar-color: color-mix(in srgb,var(--site-primary,#0b2239) 24%,transparent) transparent;
    opacity: 0;
    transform: translateX(16%);
    pointer-events: none;
    transition:
        transform .38s cubic-bezier(.22,1,.36,1),
        opacity .2s ease;
    will-change: transform,opacity;
}

.nexus-mobile-menu-dialog .nexus-mobile-menu-panel.is-panel-current {
    z-index: 2;
    opacity: 1;
    transform: translateX(var(--nexus-menu-drag));
    pointer-events: auto;
}

.nexus-mobile-menu-dialog .nexus-mobile-menu-panel.is-panel-before {
    z-index: 1;
    opacity: 0;
    transform: translateX(-16%);
}

.nexus-mobile-menu-dialog .nexus-mobile-menu-panel.is-panel-after {
    z-index: 1;
    opacity: 0;
    transform: translateX(16%);
}

.nexus-mobile-menu-dialog:dir(rtl) .nexus-mobile-menu-panel.is-panel-before {
    transform: translateX(16%);
}

.nexus-mobile-menu-dialog:dir(rtl) .nexus-mobile-menu-panel.is-panel-after {
    transform: translateX(-16%);
}

.nexus-mobile-menu-dialog .nexus-mobile-menu-panel>.nexus-site-menu__item {
    position: relative;
    min-width: 0;
    border-bottom: 1px solid color-mix(in srgb,var(--site-border,#dbe5df) 82%,transparent);
    background: transparent;
}

.nexus-mobile-menu-dialog .nexus-site-menu__link {
    min-height: 56px;
    padding: 14px 10px;
    border-radius: 12px;
    white-space: normal;
    color: var(--site-primary,#0b2239);
    font-size: 16px;
    font-weight: 580;
    line-height: 1.35;
    text-align: start;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
    transition:
        color .16s ease,
        background-color .16s ease,
        transform .16s ease;
}

.nexus-mobile-menu-dialog .nexus-site-menu__link:active {
    transform: scale(.985);
}

.nexus-mobile-menu-dialog .nexus-site-menu__link[aria-current=page] {
    background: color-mix(in srgb,var(--site-accent,#047857) 11%,var(--site-surface,#fff));
    color: var(--site-accent,#047857);
    font-weight: 700;
}

.nexus-mobile-menu-dialog .nexus-site-menu__link[aria-current=page]::before {
    content: "";
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: currentColor;
}

.nexus-mobile-menu-dialog .has-children>a.nexus-site-menu__link,
.nexus-mobile-menu-dialog .nexus-submenu-toggle {
    display: none;
}

.nexus-mobile-menu-dialog .nexus-mobile-parent {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    border: 0;
    background: transparent;
    font-weight: 650;
}

.nexus-mobile-parent svg {
    flex: none;
    transform: rotate(-90deg);
    transition: transform .2s ease;
}

[dir=rtl] .nexus-mobile-menu-dialog .nexus-mobile-parent svg,
.nexus-mobile-menu-dialog:dir(rtl) .nexus-mobile-parent svg {
    transform: rotate(90deg);
}

.nexus-mobile-menu-dialog .nexus-mobile-parent:hover,
.nexus-mobile-menu-dialog .nexus-mobile-parent:focus-visible {
    background: color-mix(in srgb,var(--site-accent,#047857) 7%,var(--site-surface,#fff));
}

.nexus-mobile-menu-dialog .has-current-descendant>.nexus-mobile-parent {
    color: var(--site-accent,#047857);
}

.nexus-mobile-menu-dialog .has-current-descendant>.nexus-mobile-parent::before {
    content: "";
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    margin-inline-end: -7px;
    border-radius: 999px;
    background: currentColor;
}

.nexus-mobile-menu-dialog .nexus-site-menu__item>.nexus-site-menu__list {
    min-width: 100%;
    margin: 0;
    padding: 16px max(14px,env(safe-area-inset-right,0px)) calc(22px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
}

.nexus-mobile-menu-dialog .nexus-submenu-overview {
    display: block;
    margin-bottom: 8px;
    border: 0;
    border-radius: 14px;
    background: color-mix(in srgb,var(--site-accent,#047857) 9%,var(--site-surface,#fff));
    color: var(--site-accent,#047857);
    font-size: 14px;
}

.nexus-mobile-menu-dialog .nexus-submenu-overview .nexus-site-menu__link {
    min-height: 52px;
    padding-inline: 14px;
}

.nexus-mobile-menu-dialog .nexus-menu-socials {
    flex: 0 0 auto;
    margin: 0;
    padding: 12px max(14px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));
    border-top: 1px solid var(--site-border,#e2e8f0);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    background: var(--site-surface,#fff);
    transition: opacity .18s ease,transform .25s ease;
}

.nexus-mobile-menu-dialog:not([data-menu-depth="0"]) .nexus-menu-socials {
    position: absolute;
    inset-inline: 0;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    pointer-events: none;
}

.nexus-mobile-menu-dialog .nexus-menu-socials a {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--site-canvas,#f1f5f3);
    color: var(--site-primary,#065f46);
    transition: background-color .16s ease,transform .16s ease;
}

.nexus-mobile-menu-dialog .nexus-menu-socials a:active {
    transform: scale(.92);
}

.nexus-mobile-menu-dialog button:focus-visible,
.nexus-mobile-menu-dialog a:focus-visible {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: -3px;
}

@media (max-width:1023px) {
    [data-mobile-header] .nexus-site-menu.is-enhanced[data-mobile-collapsible=true]>.nexus-mobile-toggle {
        width: 44px;
        height: 44px;
    }
}

.nexus-site-menu.is-enhanced .nexus-mobile-menu-dialog .nexus-submenu-toggle {
    display: none;
}

@media (max-width:639px) {
    .nexus-mobile-menu-dialog {
        inset: 0;
        width: 100%;
        max-width: none;
    }
}

@media (prefers-reduced-motion:reduce) {
    .nexus-mobile-menu-dialog,
    .nexus-mobile-menu-dialog::backdrop,
    .nexus-mobile-menu-dialog .nexus-mobile-menu-panel,
    .nexus-mobile-menu-dialog .nexus-menu-socials,
    .nexus-mobile-parent svg {
        transition: none;
    }
}

@media (max-width:1023px) {
    [data-mobile-header] {
        display: flex;
        align-items: center;
        flex-wrap: nowrap;
        gap: 8px;
        padding: 12px;
        position: relative;
    }
    [data-mobile-header] [data-header-brand] {
        flex: 1 1 auto;
        min-width: 0;
        margin-inline-end: auto;
    }
    [data-mobile-header] [data-header-brand] img {
        display: block;
        width: auto;
        max-width: 100%;
        max-height: var(--header-logo-mobile-height,40px);
        height: auto;
    }
    [data-mobile-header] [data-header-search],
[data-mobile-header] [data-header-menu],
[data-mobile-header] [data-header-contact] {
        flex: 0 0 auto;
        width: auto;
        min-width: 0;
    }
    [data-header-contact] [data-contact-display=inline] {
        width: 44px;
        height: 44px;
        padding: 8px;
        box-shadow: none;
    }
}

@media (min-width:1024px) {
    [data-header-contact] {
        display: none;
    }
}

[data-header-socials] {
    display: flex;
    align-items: center;
    flex: none;
}

[data-header-socials]:empty {
    display: none;
}

[data-header-socials] .nexus-menu-socials {
    display: flex;
    flex-wrap: nowrap;
    gap: 2px;
    padding: 0;
    margin: 0;
    border: 0;
}

[data-header-socials] .nexus-menu-socials a {
    width: 32px;
    height: 40px;
    border: 0;
    border-radius: 8px;
    color: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
}

[data-header-socials] .nexus-menu-socials a:hover {
    background: rgb(255 255 255 / .12);
    color: #fff;
}

[data-header-socials] .nexus-menu-socials a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 1px;
}

[data-header-actions] {
    display: flex;
    flex: none;
    align-items: center;
    gap: 8px;
}

[data-header-actions]>:is(a,button) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: none;
    border-radius: 12px;
}

[data-header-actions] [data-contact-display=inline] {
    padding: 10px;
    box-shadow: none;
}

[data-header-actions] [data-contact-open-key] {
    border: 1px solid var(--site-border,#a7d8c5);
    background: var(--site-soft,#ecfdf5);
    color: var(--site-primary,#065f46);
}

[data-header-actions] [data-contact-open-key]:hover {
    background: var(--site-hover,#d1fae5);
}

[data-header-actions]>:is(a,button):focus-visible {
    outline: 2px solid var(--site-accent,#047857);
    outline-offset: 2px;
}

@media (max-width:1023px) {
    [data-mobile-header] {
        gap: 6px;
    }
    [data-mobile-header] [data-header-brand] {
        order: 1;
    }
    [data-mobile-header] [data-header-search] {
        order: 2;
    }
    [data-mobile-header] [data-header-actions] {
        order: 3;
        gap: 4px;
    }
    [data-mobile-header] [data-header-menu] {
        order: 4;
    }
}

/* Trusted presentation profiles. Menu content remains in its locale-owned entry. */
@media (min-width:1024px) {
    .nexus-site-menu[data-presentation-profile=editorial] > .nexus-menu-content .nexus-site-menu__level-1 {
        gap: clamp(.65rem,1.7vw,2rem);
    }
    .nexus-site-menu[data-presentation-profile=editorial] > .nexus-menu-content .nexus-site-menu__link {
        min-height: 2.75rem;
        border-radius: 0;
        padding-inline: 0;
        background: transparent;
        font-size: .875rem;
        font-weight: 600;
    }
    .nexus-site-menu[data-presentation-profile=editorial] > .nexus-menu-content .nexus-site-menu__level-1>.nexus-site-menu__item>.nexus-site-menu__link::after {
        content: "";
        position: absolute;
        inset-inline: 0;
        bottom: .15rem;
        height: 1px;
        background: currentColor;
        transform: scaleX(0);
        transform-origin: center;
        transition: transform .2s ease;
    }
    .nexus-site-menu[data-presentation-profile=editorial] > .nexus-menu-content .nexus-site-menu__level-1>.nexus-site-menu__item>.nexus-site-menu__link:is(:hover,:focus-visible,[aria-current=page])::after {
        transform: scaleX(1);
    }
    .nexus-site-menu[data-presentation-profile=compact] > .nexus-menu-content .nexus-site-menu__level-1 {
        gap: .15rem;
    }
    .nexus-site-menu[data-presentation-profile=compact] > .nexus-menu-content .nexus-site-menu__link {
        min-height: 2.25rem;
        padding: .4rem .55rem;
        border-radius: .5rem;
        font-size: .8125rem;
    }
    .nexus-site-menu[data-presentation-profile=marketplace] > .nexus-menu-content .nexus-site-menu__level-1 {
        gap: .25rem;
    }
    .nexus-site-menu[data-presentation-profile=marketplace] > .nexus-menu-content .nexus-site-menu__link {
        min-height: 2.65rem;
        border: 1px solid transparent;
        border-radius: .65rem;
        font-weight: 650;
    }
    .nexus-site-menu[data-presentation-profile=marketplace] > .nexus-menu-content .nexus-site-menu__level-1>.nexus-site-menu__item>.nexus-site-menu__link:is(:hover,:focus-visible,[aria-current=page]) {
        border-color: var(--site-border,#dbe5df);
        background: var(--site-soft,#ecfdf5);
    }
    .nexus-site-menu[data-presentation-profile=minimal] > .nexus-menu-content .nexus-site-menu__level-1 {
        gap: clamp(.6rem,1.4vw,1.5rem);
    }
    .nexus-site-menu[data-presentation-profile=minimal] > .nexus-menu-content .nexus-site-menu__link {
        min-height: 2.5rem;
        border-radius: 0;
        padding-inline: .15rem;
        background: transparent;
        font-size: .75rem;
        font-weight: 700;
        letter-spacing: .055em;
        text-transform: uppercase;
    }
}

.nexus-site-menu[dir=rtl] .nexus-site-menu__chevron,
.nexus-site-menu:dir(rtl) .nexus-site-menu__chevron {
    transform: scaleX(-1);
}

.nexus-site-menu[data-presentation-profile=editorial] .nexus-mobile-menu-dialog .nexus-site-menu__level-1>.nexus-site-menu__item {
    border-inline: 0;
    border-radius: 0;
}
.nexus-site-menu[data-presentation-profile=compact] .nexus-mobile-menu-dialog .nexus-site-menu__link {
    min-height: 46px;
    padding-block: 11px;
    font-size: 15px;
}
.nexus-site-menu[data-presentation-profile=marketplace] .nexus-mobile-menu-dialog .nexus-site-menu__level-1>.nexus-site-menu__item {
    box-shadow: 0 4px 12px color-mix(in srgb,var(--site-primary,#0b2239) 7%,transparent);
}
.nexus-site-menu[data-presentation-profile=minimal] .nexus-mobile-menu-dialog .nexus-site-menu__level-1>.nexus-site-menu__item {
    border-inline: 0;
    border-top: 0;
    border-radius: 0;
}

/* Opt-in menu widths use the same dialog and preserve the legacy automatic default. */
.nexus-site-menu.is-enhanced.has-custom-breakpoint.is-collapsed-layout {
    width: auto;
    position: static;
}
.nexus-site-menu.is-enhanced.has-custom-breakpoint.is-collapsed-layout > .nexus-mobile-toggle {
    display: flex;
    width: 44px;
    height: 44px;
    padding: 8px;
}
.nexus-site-menu.is-enhanced.has-custom-breakpoint.is-collapsed-layout > .nexus-mobile-toggle .nexus-mobile-toggle-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
}
.nexus-site-menu.is-enhanced.has-custom-breakpoint.is-collapsed-layout > .nexus-menu-content {
    display: none;
}
.nexus-site-menu.is-enhanced.has-custom-breakpoint:not(.is-collapsed-layout) > .nexus-mobile-toggle {
    display: none;
}
.nexus-site-menu.is-enhanced.has-custom-breakpoint:not(.is-collapsed-layout) > .nexus-menu-content {
    display: flex;
}

/* Reserve an end column for the submenu control in every desktop profile. */
@media (min-width:1024px) {
    .nexus-site-menu.is-enhanced:not([data-menu-layout=groups])[data-presentation-profile] > .nexus-menu-content .has-children > .nexus-site-menu__link {
        padding-inline-end: 1.85rem !important;
    }

    .nexus-site-menu.is-enhanced:not([data-menu-layout=groups]) .has-children > .nexus-submenu-toggle {
        inset-inline-end: -.05rem;
        top: 50%;
        z-index: 2;
        width: 1.75rem;
        transform: translateY(-50%);
    }

    .nexus-site-menu:not([data-menu-layout=groups]) .nexus-site-menu__level-1 > .submenu-layout-mega > .nexus-site-menu__list {
        position: absolute;
        inset-inline: auto;
        left: var(--nexus-mega-inline-start,0);
        top: calc(100% + var(--nexus-mega-block-gap,0px));
        z-index: 90;
        width: var(--nexus-mega-width,100vw);
        max-width: none;
        box-sizing: border-box;
        grid-template-columns: repeat(auto-fit,minmax(13rem,1fr));
        gap: .5rem;
        border-inline: 0;
        border-radius: 0 0 1rem 1rem;
        padding-block: 1rem;
        padding-inline: max(1rem,calc((100vw - 87.5rem) / 2 + 1rem));
    }

    .nexus-site-menu:not([data-menu-layout=groups]) .nexus-site-menu__level-1 > .submenu-layout-mega::after {
        content: "";
        position: absolute;
        left: var(--nexus-mega-inline-start,0);
        top: 100%;
        z-index: 89;
        display: none;
        width: var(--nexus-mega-width,100vw);
        height: var(--nexus-mega-block-gap,0px);
    }

    .nexus-site-menu:not([data-menu-layout=groups]) .nexus-site-menu__level-1 > .submenu-layout-mega:is(:hover,:focus-within,.is-open) > .nexus-site-menu__list {
        display: grid;
    }

    .nexus-site-menu:not([data-menu-layout=groups]) .nexus-site-menu__level-1 > .submenu-layout-mega:is(:hover,:focus-within,.is-open)::after {
        display: block;
    }

    .nexus-site-menu:not([data-menu-layout=groups]) .submenu-layout-mega > .nexus-site-menu__list > .nexus-site-menu__item > .nexus-site-menu__link {
        min-height: 3rem;
        white-space: normal;
    }
}

/* The configured groups layout keeps nested links in the document flow. */
.nexus-site-menu[data-menu-layout=groups] > .nexus-menu-content {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    box-shadow: none;
}

.nexus-site-menu[data-menu-layout=groups] > .nexus-menu-content > .nexus-site-menu__level-1 {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    align-items: flex-start;
    gap: .35rem 1rem;
}

.nexus-site-menu[data-menu-layout=groups] .nexus-site-menu__item > .nexus-site-menu__list {
    position: static;
    display: none;
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: .35rem 0 0;
    box-shadow: none;
}

.nexus-site-menu[data-menu-layout=groups] .nexus-site-menu__item.is-open > .nexus-site-menu__list {
    display: block;
}

.nexus-site-menu[data-menu-layout=groups] .nexus-site-menu__item > .nexus-site-menu__list .nexus-site-menu__link {
    min-height: 2rem;
    padding: .25rem 0;
    background: transparent;
    color: inherit;
    white-space: normal;
}

.nexus-site-menu[data-menu-layout=groups] .nexus-site-menu__level-1 > .nexus-site-menu__item {
    border: 0;
    background: transparent;
    box-shadow: none;
}

.nexus-site-menu[data-menu-layout=groups] .nexus-site-menu__link {
    color: inherit;
}

.nexus-site-menu[data-menu-layout=groups] .nexus-site-menu__chevron {
    display: none;
}

.nexus-site-menu[data-menu-layout=groups] .nexus-site-menu__item.has-children {
    display: grid;
    grid-template-columns: minmax(0,1fr) 2.5rem;
    align-items: start;
    column-gap: .25rem;
}

.nexus-site-menu[data-menu-layout=groups] .nexus-site-menu__item.has-children > .nexus-site-menu__link {
    grid-column: 1;
    min-width: 0;
    padding-inline-end: .5rem;
    white-space: normal;
}

.nexus-site-menu.is-enhanced[data-menu-layout=groups] .nexus-submenu-toggle {
    display: flex;
    position: static;
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    width: 2.25rem;
    height: 2.25rem;
    color: inherit;
}

.nexus-site-menu.is-enhanced[data-menu-layout=groups] .has-children > .nexus-site-menu__link {
    padding-inline-end: .5rem;
}

.nexus-mobile-menu-brand {
    display: flex;
    grid-column: 2;
    grid-row: 1;
    justify-self: start;
    min-width: 0;
    min-height: 44px;
    align-items: center;
    justify-content: flex-start;
    padding: 0;
    border: 0;
    background: transparent;
}

.nexus-mobile-menu-brand img {
    display: block;
    width: min(var(--menu-mobile-brand-width,12rem),52vw);
    max-height: var(--menu-mobile-brand-height,38px);
    object-fit: contain;
}

.nexus-mobile-menu-context {
    display: block;
    flex: none;
    min-height: 40px;
    overflow: hidden;
    padding: 10px max(16px,env(safe-area-inset-right,0px)) 8px max(16px,env(safe-area-inset-left,0px));
    border-bottom: 1px solid var(--site-border,#e2e8f0);
    background: var(--site-surface,#fff);
    color: var(--site-primary,#0b2239);
    font-size: .8125rem;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nexus-mobile-menu-actions {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    flex: none;
    gap: 10px;
    padding: 14px max(14px,env(safe-area-inset-right,0px)) calc(14px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));
    border-top: 1px solid var(--site-border,#dbe5df);
    background: color-mix(in srgb,var(--site-surface,#fff) 96%,var(--site-canvas,#f1f5f3));
    box-shadow: 0 -14px 36px color-mix(in srgb,var(--site-primary,#0b2239) 10%,transparent);
}

.nexus-mobile-menu-action {
    display: flex;
    min-width: 0;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border: 1px solid var(--site-border,#dbe5df);
    border-radius: 16px;
    background: var(--site-surface,#fff);
    padding: 9px 12px;
    color: var(--site-primary,#0b2239);
    font-size: .8125rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    overflow-wrap: anywhere;
    box-shadow: 0 5px 16px color-mix(in srgb,var(--site-primary,#0b2239) 6%,transparent);
    transition: transform .16s ease,box-shadow .16s ease,background-color .16s ease;
}

.nexus-mobile-menu-action__icon {
    display: grid;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 11px;
    background: color-mix(in srgb,currentColor 9%,transparent);
}

.nexus-mobile-menu-action__icon svg {
    width: 19px;
    height: 19px;
}

.nexus-mobile-menu-action__label {
    min-width: 0;
    line-height: 1.25;
}

.nexus-mobile-menu-action--whatsapp {
    border-color: var(--site-accent,#047857);
    background: var(--site-accent,#047857);
    color: #fff;
}

.nexus-mobile-menu-action--form {
    grid-column: 1 / -1;
    min-height: 58px;
    justify-content: flex-start;
    border-color: var(--site-primary,#0b2239);
    background: var(--site-primary,#0b2239);
    padding-inline: 14px 18px;
    color: #fff;
    font-size: .875rem;
    box-shadow: 0 9px 22px color-mix(in srgb,var(--site-primary,#0b2239) 20%,transparent);
}

.nexus-mobile-menu-action--form::after {
    content: "→";
    margin-inline-start: auto;
    font-size: 1.1rem;
    font-weight: 400;
}

[dir="rtl"] .nexus-mobile-menu-action--form::after {
    content: "←";
}

.nexus-mobile-menu-action:is(:hover,:focus-visible) {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px color-mix(in srgb,var(--site-primary,#0b2239) 12%,transparent);
}

.nexus-mobile-menu-action:active {
    transform: scale(.98);
}

@media (max-width:479px) {
    .nexus-site-menu[data-menu-layout=groups] > .nexus-menu-content > .nexus-site-menu__level-1 {
        grid-template-columns: 1fr;
    }
}

.nexus-mobile-menu-heading :is(.nexus-mobile-menu-title,.nexus-mobile-menu-back,.nexus-mobile-menu-close) { color: var(--menu-mobile-heading-color,var(--site-primary,#0b2239)); }
.nexus-mobile-menu-heading .nexus-mobile-menu-close { background: var(--menu-mobile-close-background,var(--site-canvas,#f1f5f3)); }

/* A dropdown owns its foreground; the top-level header color must not leak into it. */
.nexus-site-menu:not([data-menu-layout=groups]) .nexus-site-menu__item > .nexus-site-menu__list {
    color: var(--menu-submenu-color,var(--site-text,#1e293b));
}
.nexus-site-menu:not([data-menu-layout=groups]) .nexus-site-menu__item > .nexus-site-menu__list .nexus-site-menu__link,
.nexus-site-menu:not([data-menu-layout=groups]) .nexus-site-menu__item > .nexus-site-menu__list .nexus-submenu-toggle {
    color: var(--menu-submenu-color,var(--site-text,#1e293b));
}

/* quiz-forms */
/* Quiz presentation uses site tokens and the central accessible dialog/form. */
[data-quiz-settings] { display: contents; }
[data-quiz-settings] [data-nexus-plugin=quiz-forms][data-contact-modal=true] { margin:0; padding:0; }
[data-quiz-settings] [data-nexus-plugin=quiz-forms][data-contact-modal=true] > [data-contact-modal-panel] { display:none; }
.nexus-contact-form[data-nexus-plugin=quiz-forms] .nexus-contact-card { max-width:68rem; margin-inline:auto; }
.nexus-quiz-dialog.nexus-contact-dialog {
 --quiz-edge:1rem;
 --quiz-pad:clamp(1rem,2.8vw,2rem);
 --quiz-viewport-height:100vh;
 width:min(68rem,calc(100vw - 2 * var(--quiz-edge)));
 max-width:calc(100vw - 2 * var(--quiz-edge));
 height:min(48rem,calc(var(--quiz-viewport-height) - 2 * var(--quiz-edge)));
 max-height:calc(var(--quiz-viewport-height) - 2 * var(--quiz-edge));
 top:calc(var(--quiz-viewport-top,0px) + var(--quiz-edge));
 bottom:auto;
 margin-block:0;
 border-radius:24px;
 color:var(--site-text,#172b3a);
 box-shadow:0 24px 100px #061a3050;
}
@supports(height:100dvh) { .nexus-quiz-dialog.nexus-contact-dialog { --quiz-viewport-height:100dvh; } }
.nexus-quiz-dialog .nexus-lightbox-shell { height:100%; max-height:100%; min-height:0; }
.nexus-quiz-dialog .nexus-lightbox-controls { background:var(--site-primary,#172b3a); color:var(--site-on-primary,#fff); padding:1rem 4.75rem 1rem var(--quiz-pad); min-height:4.75rem; border:0; }
.nexus-quiz-dialog .nexus-contact-dialog-title { font-size:clamp(1.15rem,2.5vw,1.65rem); line-height:1.35; margin:0; max-width:100%; color:inherit; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.nexus-quiz-dialog .nexus-modal-close { width:44px; min-width:44px; height:44px; position:absolute; inset-inline-end:1rem; top:1rem; color:inherit; border:1px solid #ffffff40; border-radius:14px; background:#ffffff12; font-size:2rem; }
.nexus-quiz-dialog .nexus-modal-close:focus-visible { outline:3px solid var(--site-accent,#cfaa78); outline-offset:3px; }
.nexus-quiz-dialog .nexus-lightbox-body { flex:1 1 0; min-height:0; display:flex; overflow:hidden; }
.nexus-quiz-dialog .nexus-lightbox-media,.nexus-quiz-dialog .nexus-lightbox-viewport,.nexus-quiz-dialog .nexus-lightbox-stage { width:100%; height:100%; min-width:0; min-height:0; display:block; overflow:hidden; padding:0; }
.nexus-quiz-dialog [data-contact-modal-panel] { width:100%; height:100%; min-height:0; }
.nexus-quiz-dialog [data-contact-modal-panel] > .nexus-contact-shell { display:block; height:100%; min-height:0; }
.nexus-quiz-dialog .nexus-contact-card { border:0; border-radius:0; padding:var(--quiz-pad) var(--quiz-pad) 0; max-width:none; height:100%; min-height:0; box-sizing:border-box; overflow:hidden; background:var(--site-surface,#fff); }
.nexus-quiz-dialog .nexus-contact-body { display:flex; flex-direction:column; gap:0; width:100%; height:100%; min-height:0; min-width:0; }
.nexus-quiz-dialog .nexus-contact-body > form { display:flex; flex-direction:column; flex:1 1 0; width:100%; max-width:none; min-width:0; min-height:0; margin:0; }
.nexus-quiz-dialog .nexus-contact-body > form > * { margin-block:0; }
.nexus-quiz-dialog .nexus-contact-intro { flex:none; }
.nexus-quiz-dialog .nexus-contact-intro > p { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.nexus-quiz-dialog .nexus-contact-intro [data-contact-heading] { display:none; }
.nexus-quiz-dialog .nexus-contact-intro > p { margin:0 0 1rem; max-width:58rem; font-size:.95rem; line-height:1.5; }
.nexus-quiz-dialog .nexus-contact-layout { display:grid; flex:1 1 0; width:100%; min-width:0; min-height:0; grid-template-rows:minmax(0,1fr); grid-template-columns:minmax(0,1fr); gap:1.5rem; align-items:stretch; }
.nexus-quiz-dialog .nexus-contact-layout:has(> [data-contact-step-navigation]:not([hidden])) { grid-template-columns:12rem minmax(0,1fr); }
.nexus-quiz-dialog [data-contact-step-navigation] { grid-column:1; grid-row:1; padding:0; min-height:0; overflow:auto; }
.nexus-quiz-dialog .nexus-contact-step-list { display:flex; flex-direction:column; gap:.75rem; }
.nexus-quiz-dialog .nexus-contact-step-list > li { flex:0 0 auto; }
.nexus-quiz-dialog .nexus-contact-step-link { width:100%; min-height:56px; justify-content:flex-start; border:0; border-radius:14px; padding:.65rem; text-align:start; background:var(--site-canvas,#f5f6f8); color:var(--site-text,#172b3a); }
.nexus-quiz-dialog .nexus-contact-step-label { white-space:normal; line-height:1.4; font-size:.85rem; }
.nexus-quiz-dialog .nexus-contact-step-number { flex-shrink:0; }
.nexus-quiz-dialog .nexus-contact-step-link[data-step-state=current] { background:color-mix(in srgb,var(--site-accent,#cfaa78) 17%,white); color:var(--site-text,#172b3a); }
/* The form also stores data-contact-step; only actual layout children are columns. */
.nexus-quiz-dialog .nexus-contact-layout > [data-contact-step]:not([hidden]) { grid-column:1; grid-row:1; min-width:0; min-height:0; width:100%; display:flex; flex-direction:column; overflow:hidden; }
.nexus-quiz-dialog .nexus-contact-layout:has(> [data-contact-step-navigation]:not([hidden])) > [data-contact-step]:not([hidden]) { grid-column:2; }
.nexus-quiz-dialog .nexus-contact-step-title { font-size:clamp(1.4rem,2.7vw,1.95rem); line-height:1.3; margin:0; }
.nexus-quiz-dialog .nexus-contact-step-progress { color:var(--site-muted,#64748b); letter-spacing:.06em; text-transform:uppercase; font-size:.75rem; margin-bottom:.65rem; }
.nexus-quiz-dialog .nexus-contact-step-heading { margin-bottom:1rem; }
/* Only the content scrolls. The original step actions occupy a separate,
   non-shrinking row, including the final submit button. */
.nexus-quiz-dialog .nexus-quiz-step-content { flex:1 1 0; min-height:0; min-width:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; padding:.2rem .25rem 1rem; scroll-padding-block:.75rem; }
.nexus-quiz-dialog .nexus-quiz-step-content .nexus-contact-fields { gap:1rem; }
.nexus-quiz-dialog .nexus-quiz-step-content fieldset { min-width:0; }
.nexus-quiz-dialog .nexus-contact-step-subtitle { line-height:1.65; font-size:.95rem; }
.nexus-quiz-dialog [data-contact-field][data-field-type=radio] legend,.nexus-quiz-dialog [data-contact-field][data-field-type=multiselect] legend { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.nexus-quiz-dialog .nexus-contact-choice-list,.nexus-contact-form[data-nexus-plugin=quiz-forms] .nexus-contact-choice-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
/* Field structure is stable across native builds, including builds without choice classes. */
.nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:1fr; gap:.8rem; max-height:none; overflow:visible; scrollbar-gutter:auto; border:0; padding:0; min-width:0; }
.nexus-quiz-dialog .nexus-contact-fields > [data-field-type=radio],.nexus-quiz-dialog .nexus-contact-fields > [data-field-type=multiselect] { grid-column:1 / -1; }
.nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label { box-sizing:border-box; display:flex; width:100%; min-width:0; min-height:74px; gap:.75rem; align-items:center; padding:1rem; border:1px solid var(--site-border,#dfe4ea); border-radius:16px; background:var(--site-canvas,#f5f6f8); font-size:.95rem; line-height:1.45; cursor:pointer; transition:background-color .15s,border-color .15s; }
.nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label > span { min-width:0; overflow-wrap:anywhere; }
.nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label > input { width:20px; height:20px; flex-shrink:0; accent-color:var(--site-primary,#172b3a); }
.nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label:has(input:checked) { background:color-mix(in srgb,var(--site-accent,#cfaa78) 12%,white); border-color:var(--site-accent,#cfaa78); box-shadow:0 0 0 1px var(--site-accent,#cfaa78); }
.nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label:has(input:focus-visible) { outline:3px solid var(--site-primary,#172b3a); outline-offset:3px; }
.nexus-quiz-dialog .nexus-contact-step-actions { display:flex; flex:0 0 auto; flex-wrap:wrap; gap:.75rem; align-items:center; justify-content:flex-end; margin:0; padding:.85rem .25rem; padding-bottom:max(.85rem,env(safe-area-inset-bottom,0px)); border-top:1px solid var(--site-border,#dfe4ea); background:var(--site-surface,#fff); z-index:1; }
.nexus-quiz-dialog .nexus-contact-step-actions button { min-width:44px; min-height:48px; max-width:100%; height:auto; padding:.65rem 1.15rem; border-radius:12px; font-size:.95rem; line-height:1.35; white-space:normal; overflow-wrap:anywhere; }
.nexus-quiz-dialog .nexus-contact-step-actions button[type=submit] { background:var(--site-primary,#172b3a); color:var(--site-on-primary,#fff); }
.nexus-quiz-suggestion { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; flex:none; margin:0 0 .75rem; padding:.5rem .75rem; border-radius:12px; font-size:.85rem; color:var(--site-muted,#64748b); background:var(--site-canvas,#f5f6f8); }
.nexus-quiz-dialog .nexus-contact-layout[hidden] { display:none; }
.nexus-quiz-dialog [data-form-feedback]:not(:empty) { flex:none; max-height:6rem; overflow:auto; padding:.6rem; font-size:.85rem; }
.nexus-quiz-dialog.is-quiz-complete [data-form-feedback] { flex:1; margin-top:1rem; max-height:none; min-height:0; font-size:1.15rem; }
@media(max-width:700px) {
 .nexus-quiz-dialog.nexus-contact-dialog { --quiz-edge:.5rem; --quiz-pad:1rem; border-radius:18px; }
 .nexus-quiz-dialog .nexus-lightbox-controls { min-height:4rem; padding:.8rem 4.25rem .8rem var(--quiz-pad); }
 .nexus-quiz-dialog .nexus-contact-dialog-title { font-size:1.125rem; }
 .nexus-quiz-dialog .nexus-modal-close { top:.5rem; inset-inline-end:.5rem; border-radius:10px; }
 .nexus-quiz-dialog .nexus-contact-layout { grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,1fr); gap:.6rem; }
 .nexus-quiz-dialog .nexus-contact-layout:has(> [data-contact-step-navigation]:not([hidden])) { grid-template-columns:minmax(0,1fr); grid-template-rows:auto minmax(0,1fr); }
 .nexus-quiz-dialog .nexus-contact-layout:has(> [data-contact-step-navigation]:not([hidden])) > [data-contact-step]:not([hidden]) { grid-column:1; grid-row:2; }
 .nexus-quiz-dialog .nexus-contact-step-list { flex-direction:row; gap:.4rem; margin:0; }
 .nexus-quiz-dialog .nexus-contact-step-list > li { flex:1; }
 .nexus-quiz-dialog .nexus-contact-step-link { justify-content:center; min-height:44px; padding:.35rem; }
 .nexus-quiz-dialog .nexus-contact-step-label { display:none; }
 .nexus-quiz-dialog .nexus-contact-step-title { font-size:1.4rem; }
 .nexus-quiz-dialog .nexus-contact-step-subtitle,.nexus-quiz-dialog .nexus-contact-intro > p { font-size:.875rem; line-height:1.45; }
 .nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div { gap:.6rem; }
 .nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label { min-height:60px; padding:.65rem; gap:.5rem; font-size:.875rem; border-radius:12px; }
 .nexus-quiz-dialog .nexus-contact-step-actions { gap:.5rem; padding-top:.6rem; padding-bottom:max(.6rem,env(safe-area-inset-bottom,0px)); }
 .nexus-quiz-dialog .nexus-contact-step-actions button { flex:1 1 0; min-height:44px; padding:.55rem .7rem; font-size:.875rem; }
 .nexus-quiz-dialog .nexus-quiz-step-content :is(input:not([type=radio]):not([type=checkbox]),select,textarea) { font-size:16px; }
}
/* Compact phones retain two choices per row; long labels wrap within the tile. */
@media(max-width:380px), (max-height:600px) {
 .nexus-quiz-dialog.nexus-contact-dialog { --quiz-pad:.75rem; }
 .nexus-quiz-dialog .nexus-lightbox-controls { min-height:3.5rem; padding-block:.6rem; }
 .nexus-quiz-dialog .nexus-contact-dialog-title { font-size:1rem; }
 .nexus-quiz-dialog .nexus-contact-step-title { font-size:1.2rem; line-height:1.3; }
 .nexus-quiz-dialog .nexus-contact-step-heading { margin-bottom:.6rem; }
 .nexus-quiz-dialog .nexus-contact-step-subtitle,.nexus-quiz-dialog .nexus-contact-intro > p { font-size:.8rem; line-height:1.4; margin-bottom:.6rem; }
 .nexus-quiz-suggestion { font-size:.75rem; line-height:1.4; padding:.4rem .6rem; margin-bottom:.5rem; }
 .nexus-quiz-dialog .nexus-contact-step-progress { font-size:.65rem; margin-bottom:.4rem; }
 .nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div { gap:.45rem; }
 .nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label { min-height:52px; padding:.5rem; font-size:.8rem; border-radius:10px; }
 .nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label > input { width:18px; height:18px; }
 .nexus-quiz-dialog .nexus-contact-step-actions button { min-height:44px; padding:.5rem .65rem; font-size:.8rem; }
 .nexus-quiz-dialog .nexus-quiz-step-content .nexus-contact-fields { gap:.65rem; }
}
/* Short landscape screens and open keyboards prioritize the question and actions. */
@media(max-height:450px) {
 .nexus-quiz-dialog.nexus-contact-dialog { --quiz-edge:.25rem; --quiz-pad:.5rem; border-radius:12px; }
 .nexus-quiz-dialog .nexus-contact-intro,.nexus-quiz-dialog .nexus-quiz-suggestion { display:none; }
 .nexus-quiz-dialog .nexus-contact-step-subtitle { margin-top:.35rem; }
 .nexus-quiz-dialog .nexus-lightbox-controls { min-height:3.25rem; padding-block:.4rem; }
 .nexus-quiz-dialog .nexus-modal-close { top:.25rem; }
 .nexus-quiz-dialog .nexus-contact-step-actions { padding-top:.4rem; padding-bottom:max(.4rem,env(safe-area-inset-bottom,0px)); }
}
/* Media queries do not always shrink with a keyboard-only visual viewport. */
.nexus-quiz-dialog[data-quiz-viewport=short] .nexus-contact-intro,
.nexus-quiz-dialog[data-quiz-viewport=short] .nexus-quiz-suggestion { display:none; }
.nexus-quiz-dialog[data-quiz-viewport=short] { --quiz-edge:.25rem; --quiz-pad:.5rem; }
.nexus-quiz-dialog[data-quiz-viewport=short] .nexus-lightbox-controls { min-height:3.25rem; padding-block:.4rem; }
.nexus-quiz-dialog[data-quiz-viewport=short] .nexus-modal-close { top:.25rem; }
.nexus-quiz-dialog[data-quiz-viewport=short] .nexus-contact-step-actions { padding-block:.4rem; padding-bottom:max(.4rem,env(safe-area-inset-bottom,0px)); }
.nexus-quiz-dialog[data-quiz-viewport=short] .nexus-contact-step-title { font-size:1.2rem; }
@media(max-width:300px) {
 .nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .nexus-quiz-dialog [data-contact-field]:is([data-field-type=radio],[data-field-type=multiselect]) > fieldset > div > label { transition:none; } }

/* reading-progress */
/* Owned by reading-progress. Site palette and locale presentation remain central. */
.nexus-reading { color:var(--site-muted,#647579); min-width:0; }
.nexus-reading[hidden] { display:none!important; }
.nexus-reading-meta { display:flex; flex-wrap:wrap; align-items:center; gap:.35rem 1rem; margin:.5rem 0; font-size:.875rem; line-height:1.5; }
.nexus-reading-meta>span { min-height:1.5em; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.nexus-reading-meta [data-reading-remaining], .nexus-reading-meta [data-reading-percentage] { min-height:3em; max-height:3em; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.nexus-reading-meta [data-reading-remaining] { flex:0 1 28ch; }
.nexus-reading-meta [data-reading-percentage] { flex:0 1 18ch; }
.nexus-reading progress { appearance:none; display:block; width:100%; height:var(--reading-height,4px); border:0; overflow:hidden; background:var(--site-border,#dce3e5); color:var(--site-accent,#267d80); transition:none; }
.nexus-reading progress::-webkit-progress-bar { background:var(--site-border,#dce3e5); }
.nexus-reading progress::-webkit-progress-value { background:var(--site-accent,#267d80); }
.nexus-reading progress::-moz-progress-bar { background:var(--site-accent,#267d80); }
.nexus-reading[data-position="top"] progress, .nexus-reading[data-position="bottom"] progress { position:fixed; inset-inline:0; z-index:35; pointer-events:none; }
.nexus-reading[data-position="top"] progress { top:var(--reading-offset,0); }
.nexus-reading[data-position="bottom"] progress { bottom:calc(var(--reading-bottom-offset,0px) + env(safe-area-inset-bottom,0px)); }
.nexus-reading[data-hide-outside="true"][data-in-scope="false"][data-position="top"] progress,
.nexus-reading[data-hide-outside="true"][data-in-scope="false"][data-position="bottom"] progress,
.nexus-reading[data-scope-visible="false"] progress { visibility:hidden; }
@media print { .nexus-reading progress, .nexus-reading [data-reading-remaining], .nexus-reading [data-reading-percentage] { display:none; } }

/* Published site design */
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --color-white: #fff;
  --spacing: 0.25rem;
  --container-3xl: 48rem;
  --container-4xl: 56rem;
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --text-base: 1rem;
  --text-base--line-height: calc(1.5 / 1);
  --text-lg: 1.125rem;
  --text-lg--line-height: calc(1.75 / 1.125);
  --text-3xl: 1.875rem;
  --text-3xl--line-height: calc(2.25 / 1.875);
  --text-5xl: 3rem;
  --text-5xl--line-height: 1;
  --leading-tight: 1.25;
  --radius-2xl: 1rem;
}
.mx-auto {
  margin-inline: auto;
}
.mt-6 {
  margin-top: calc(var(--spacing) * 6);
}
.mt-8 {
  margin-top: calc(var(--spacing) * 8);
}
.mt-14 {
  margin-top: calc(var(--spacing) * 14);
}
.mb-8 {
  margin-bottom: calc(var(--spacing) * 8);
}
.mb-10 {
  margin-bottom: calc(var(--spacing) * 10);
}
.grid {
  display: grid;
}
.max-w-3xl {
  max-width: var(--container-3xl);
}
.max-w-4xl {
  max-width: var(--container-4xl);
}
.max-w-\[72ch\] {
  max-width: 72ch;
}
.max-w-\[1360px\] {
  max-width: 1360px;
}
.min-w-0 {
  min-width: 0px;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.items-start {
  align-items: flex-start;
}
.gap-10 {
  gap: calc(var(--spacing) * 10);
}
.overflow-hidden {
  overflow: hidden;
}
.rounded-2xl {
  border-radius: var(--radius-2xl);
}
.border {
  border-style: var(--tw-border-style);
  border-width: 1px;
}
.border-t {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
}
.border-t-4 {
  border-top-style: var(--tw-border-style);
  border-top-width: 4px;
}
.border-b {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
}
.border-\[var\(--site-border\)\] {
  border-color: var(--site-border);
}
.border-t-\[var\(--site-accent\)\] {
  border-top-color: var(--site-accent);
}
.bg-white {
  background-color: var(--color-white);
}
.px-5 {
  padding-inline: calc(var(--spacing) * 5);
}
.py-10 {
  padding-block: calc(var(--spacing) * 10);
}
.pt-6 {
  padding-top: calc(var(--spacing) * 6);
}
.pb-9 {
  padding-bottom: calc(var(--spacing) * 9);
}
.text-3xl {
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}
.text-base {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.text-lg {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.text-sm {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.leading-8 {
  --tw-leading: calc(var(--spacing) * 8);
  line-height: calc(var(--spacing) * 8);
}
.leading-tight {
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
}
.\[overflow-wrap\:anywhere\] {
  overflow-wrap: anywhere;
}
.text-\[var\(--site-muted\)\] {
  color: var(--site-muted);
}
@media (width >= 48rem) {
  .md\:py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .md\:text-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
}
@media (width >= 80rem) {
  .xl\:sticky {
    position: sticky;
  }
  .xl\:top-8 {
    top: calc(var(--spacing) * 8);
  }
  .xl\:grid-cols-\[minmax\(0\,1fr\)_360px\] {
    grid-template-columns: minmax(0,1fr) 360px;
  }
  .xl\:gap-14 {
    gap: calc(var(--spacing) * 14);
  }
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-border-style: solid;
      --tw-leading: initial;
    }
  }
}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --spacing: 0.25rem;
  --text-2xl: 1.5rem;
  --text-2xl--line-height: calc(2 / 1.5);
}
.mb-6 {
  margin-bottom: calc(var(--spacing) * 6);
}
.min-w-0 {
  min-width: 0px;
}
.border-t {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
}
.border-\[var\(--site-border\)\] {
  border-color: var(--site-border);
}
.pt-9 {
  padding-top: calc(var(--spacing) * 9);
}
.text-2xl {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-border-style: solid;
    }
  }
}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
.min-h-screen {
  min-height: 100vh;
}
.min-w-0 {
  min-width: 0px;
}
.bg-\[var\(--site-canvas\)\] {
  background-color: var(--site-canvas);
}
.text-\[var\(--site-text\)\] {
  color: var(--site-text);
}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --color-red-700: oklch(50.5% 0.213 27.518);
  --color-red-800: oklch(44.4% 0.177 26.899);
  --color-emerald-600: oklch(59.6% 0.145 163.225);
  --color-emerald-700: oklch(50.8% 0.118 165.612);
  --color-white: #fff;
  --spacing: 0.25rem;
  --text-xs: 0.75rem;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --font-weight-semibold: 600;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.relative {
  position: relative;
}
.z-40 {
  z-index: 40;
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.order-3 {
  order: 3;
}
.order-4 {
  order: 4;
}
.order-5 {
  order: 5;
}
.col-span-3 {
  grid-column: span 3 / span 3;
}
.mx-auto {
  margin-inline: auto;
}
.flex {
  display: flex;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.inline-flex {
  display: inline-flex;
}
.h-3 {
  height: calc(var(--spacing) * 3);
}
.h-11 {
  height: calc(var(--spacing) * 11);
}
.h-\[54px\] {
  height: 54px;
}
.min-h-11 {
  min-height: calc(var(--spacing) * 11);
}
.w-3 {
  width: calc(var(--spacing) * 3);
}
.w-\[148px\] {
  width: 148px;
}
.max-w-\[1600px\] {
  max-width: 1600px;
}
.max-w-full {
  max-width: 100%;
}
.min-w-0 {
  min-width: 0px;
}
.min-w-11 {
  min-width: calc(var(--spacing) * 11);
}
.shrink-0 {
  flex-shrink: 0;
}
.grid-cols-\[minmax\(0\,1fr\)_auto_auto\] {
  grid-template-columns: minmax(0,1fr) auto auto;
}
.items-center {
  align-items: center;
}
.justify-between {
  justify-content: space-between;
}
.justify-center {
  justify-content: center;
}
.gap-0\.5 {
  gap: calc(var(--spacing) * 0.5);
}
.gap-1 {
  gap: var(--spacing);
}
.gap-x-2 {
  column-gap: calc(var(--spacing) * 2);
}
.gap-y-2 {
  row-gap: calc(var(--spacing) * 2);
}
.justify-self-end {
  justify-self: flex-end;
}
.justify-self-start {
  justify-self: flex-start;
}
.rounded-full {
  border-radius: calc(infinity * 1px);
}
.rounded-lg {
  border-radius: var(--radius-lg);
}
.rounded-xl {
  border-radius: var(--radius-xl);
}
.border {
  border-style: var(--tw-border-style);
  border-width: 1px;
}
.border-b {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
}
.border-\[var\(--site-border\)\] {
  border-color: var(--site-border);
}
.border-red-700 {
  border-color: var(--color-red-700);
}
.bg-emerald-600 {
  background-color: var(--color-emerald-600);
}
.bg-red-700 {
  background-color: var(--color-red-700);
}
.bg-white {
  background-color: var(--color-white);
}
.object-contain {
  object-fit: contain;
}
.object-left {
  object-position: left;
}
.px-1 {
  padding-inline: var(--spacing);
}
.px-2 {
  padding-inline: calc(var(--spacing) * 2);
}
.px-3 {
  padding-inline: calc(var(--spacing) * 3);
}
.py-2 {
  padding-block: calc(var(--spacing) * 2);
}
.pt-1 {
  padding-top: var(--spacing);
}
.pb-1 {
  padding-bottom: var(--spacing);
}
.pb-3 {
  padding-bottom: calc(var(--spacing) * 3);
}
.text-xs {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.font-semibold {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.whitespace-nowrap {
  white-space: nowrap;
}
.text-\[var\(--site-text\)\] {
  color: var(--site-text);
}
.text-white {
  color: var(--color-white);
}
.shadow-\[0_0_12px_rgba\(185\,28\,28\,0\.18\)\] {
  --tw-shadow: 0 0 12px var(--tw-shadow-color, rgba(185,28,28,0.18));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.transition-colors {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.\[--menu-hover-background\:transparent\] {
  --menu-hover-background: transparent;
}
.\[--menu-mobile-background\:transparent\] {
  --menu-mobile-background: transparent;
}
.\[--menu-mobile-padding\:0px\] {
  --menu-mobile-padding: 0px;
}
.focus-within\:bg-red-800:focus-within {
  background-color: var(--color-red-800);
}
@media (hover: hover) {
  .hover\:bg-emerald-700:hover {
    background-color: var(--color-emerald-700);
  }
  .hover\:bg-red-800:hover {
    background-color: var(--color-red-800);
  }
}
.focus-visible\:outline:focus-visible {
  outline-style: var(--tw-outline-style);
  outline-width: 1px;
}
.focus-visible\:outline-2:focus-visible {
  outline-style: var(--tw-outline-style);
  outline-width: 2px;
}
.focus-visible\:outline-offset-2:focus-visible {
  outline-offset: 2px;
}
.focus-visible\:outline-\[var\(--site-accent\)\]:focus-visible {
  outline-color: var(--site-accent);
}
.focus-visible\:outline-emerald-700:focus-visible {
  outline-color: var(--color-emerald-700);
}
@media (width >= 40rem) {
  .sm\:h-16 {
    height: calc(var(--spacing) * 16);
  }
  .sm\:w-44 {
    width: calc(var(--spacing) * 44);
  }
  .sm\:px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .sm\:text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
@media (width >= 64rem) {
  .lg\:order-3 {
    order: 3;
  }
  .lg\:order-4 {
    order: 4;
  }
  .lg\:order-6 {
    order: 6;
  }
  .lg\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .lg\:col-span-4 {
    grid-column: span 4 / span 4;
  }
  .lg\:hidden {
    display: none;
  }
  .lg\:inline {
    display: inline;
  }
  .lg\:h-\[58px\] {
    height: 58px;
  }
  .lg\:w-40 {
    width: calc(var(--spacing) * 40);
  }
  .lg\:w-full {
    width: 100%;
  }
  .lg\:grid-cols-\[auto_minmax\(0\,1fr\)_auto_auto\] {
    grid-template-columns: auto minmax(0,1fr) auto auto;
  }
  .lg\:gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .lg\:gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .lg\:gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .lg\:gap-y-3 {
    row-gap: calc(var(--spacing) * 3);
  }
  .lg\:justify-self-stretch {
    justify-self: stretch;
  }
  .lg\:rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .lg\:border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .lg\:px-0 {
    padding-inline: 0px;
  }
}
@media (width >= 80rem) {
  .xl\:h-16 {
    height: calc(var(--spacing) * 16);
  }
  .xl\:w-48 {
    width: calc(var(--spacing) * 48);
  }
  .xl\:gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .xl\:px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
}
@media (width >= 96rem) {
  .\32 xl\:h-\[72px\] {
    height: 72px;
  }
  .\32 xl\:w-\[216px\] {
    width: 216px;
  }
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-border-style: solid;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
    }
  }
}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --color-white: #fff;
  --spacing: 0.25rem;
  --container-xs: 20rem;
  --text-xs: 0.75rem;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --font-weight-semibold: 600;
  --radius-lg: 0.5rem;
}
.mx-auto {
  margin-inline: auto;
}
.mt-3 {
  margin-top: calc(var(--spacing) * 3);
}
.mt-5 {
  margin-top: calc(var(--spacing) * 5);
}
.mt-8 {
  margin-top: calc(var(--spacing) * 8);
}
.mt-10 {
  margin-top: calc(var(--spacing) * 10);
}
.flex {
  display: flex;
}
.grid {
  display: grid;
}
.inline-flex {
  display: inline-flex;
}
.h-16 {
  height: calc(var(--spacing) * 16);
}
.min-h-11 {
  min-height: calc(var(--spacing) * 11);
}
.w-52 {
  width: calc(var(--spacing) * 52);
}
.max-w-\[1400px\] {
  max-width: 1400px;
}
.max-w-xs {
  max-width: var(--container-xs);
}
.min-w-0 {
  min-width: 0px;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.items-center {
  align-items: center;
}
.items-start {
  align-items: flex-start;
}
.justify-between {
  justify-content: space-between;
}
.gap-2 {
  gap: calc(var(--spacing) * 2);
}
.gap-4 {
  gap: calc(var(--spacing) * 4);
}
.gap-6 {
  gap: calc(var(--spacing) * 6);
}
.gap-10 {
  gap: calc(var(--spacing) * 10);
}
.rounded-lg {
  border-radius: var(--radius-lg);
}
.border-t {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
}
.border-white\/20 {
  border-color: color-mix(in srgb, #fff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
  }
}
.bg-\[var\(--site-primary\)\] {
  background-color: var(--site-primary);
}
.bg-white {
  background-color: var(--color-white);
}
.object-contain {
  object-fit: contain;
}
.px-5 {
  padding-inline: calc(var(--spacing) * 5);
}
.py-3 {
  padding-block: calc(var(--spacing) * 3);
}
.py-12 {
  padding-block: calc(var(--spacing) * 12);
}
.pt-5 {
  padding-top: calc(var(--spacing) * 5);
}
.pt-8 {
  padding-top: calc(var(--spacing) * 8);
}
.text-sm {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.text-xs {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.leading-7 {
  --tw-leading: calc(var(--spacing) * 7);
  line-height: calc(var(--spacing) * 7);
}
.font-semibold {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.break-all {
  word-break: break-all;
}
.text-white {
  color: var(--color-white);
}
.text-white\/60 {
  color: color-mix(in srgb, #fff 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 60%, transparent);
  }
}
.text-white\/75 {
  color: color-mix(in srgb, #fff 75%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 75%, transparent);
  }
}
@media (width >= 48rem) {
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
}
@media (width >= 64rem) {
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (width >= 80rem) {
  .xl\:grid-cols-\[minmax\(200px\,\.55fr\)_minmax\(0\,2fr\)\] {
    grid-template-columns: minmax(200px,.55fr) minmax(0,2fr);
  }
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
    }
  }
}

:root{
--site-primary:#182f3c;
--site-accent:#bc9465;
--site-surface:#ffffff;
--site-canvas:#faf9f6;
--site-border:#e4e6e3;
--site-text:#182f3c;
--site-muted:#677980;
--site-success:#26734d;
--site-warning:#996515;
--site-danger:#b43838;
--site-on-primary:#ffffff;
--site-on-accent:#000000;
--site-on-success:#ffffff;
--site-on-warning:#ffffff;
--site-on-danger:#ffffff;
--site-soft:color-mix(in srgb,var(--site-accent) 6%,var(--site-surface));
--site-hover:color-mix(in srgb,var(--site-accent) 11%,var(--site-surface));
--site-primary-hover:color-mix(in srgb,var(--site-primary) 85%,black);
--site-accent-hover:color-mix(in srgb,var(--site-accent) 85%,black);
--site-shadow:color-mix(in srgb,var(--site-primary) 8%,transparent);
--site-control-overlay:color-mix(in srgb,var(--site-primary) 91%,transparent);
--site-backdrop:color-mix(in srgb,var(--site-primary) 70%,transparent);
--site-body-font:"Manrope",sans-serif;
--site-heading-font:"Lora",sans-serif;
}
/* Shared color utilities. Loaded only when the site enables its central palette. */

html { color-scheme: light; }

:root body { background-color: var(--site-surface); color: var(--site-text); }

:root ::selection { background: var(--site-hover); color: var(--site-primary); }

:root .bg-slate-100,
:root .bg-slate-50,
:root .hover\:bg-gray-50:hover,
:root .hover\:bg-slate-100:hover,
:root .hover\:bg-slate-50:hover { background-color: var(--site-canvas); }

:root .text-gray-200,
:root .text-slate-100,
:root .text-slate-200,
:root .text-slate-50 { color: var(--site-on-primary); }

:root .border-amber-100,
:root .border-amber-200,
:root .border-amber-300,
:root .border-amber-50,
:root .border-emerald-100,
:root .border-emerald-200,
:root .border-emerald-300,
:root .border-emerald-50,
:root .border-gray-300,
:root .border-sky-100,
:root .border-sky-200,
:root .border-sky-300,
:root .border-sky-50,
:root .border-slate-100,
:root .border-slate-200,
:root .border-slate-300,
:root .border-slate-400,
:root .border-slate-50,
:root .border-slate-500,
:root .hover\:border-emerald-200:hover { border-color: var(--site-border); }

:root .bg-slate-200,
:root .bg-slate-300 { background-color: var(--site-border); }

:root .text-slate-300,
:root .text-slate-400,
:root .text-slate-500,
:root .text-slate-600 { color: var(--site-muted); }

:root .bg-emerald-700,
:root .bg-emerald-800,
:root .bg-emerald-900,
:root .bg-gray-900,
:root .bg-sky-700,
:root .bg-sky-800,
:root .bg-sky-900,
:root .bg-slate-400,
:root .bg-slate-500,
:root .bg-slate-600,
:root .bg-slate-700,
:root .bg-slate-800,
:root .bg-slate-900,
:root .hover\:bg-emerald-700:hover,
:root .hover\:bg-emerald-800:hover,
:root .hover\:bg-slate-700:hover { background-color: var(--site-primary); }

:root .border-slate-600,
:root .border-slate-700,
:root .border-slate-800,
:root .border-slate-900 { border-color: var(--site-primary); }

:root .hover\:text-slate-700:hover,
:root .text-gray-700,
:root .text-slate-700 { color: var(--site-text); }

:root .text-emerald-700,
:root .text-emerald-800,
:root .text-emerald-900,
:root .text-emerald-950,
:root .text-gray-900,
:root .text-sky-700,
:root .text-sky-800,
:root .text-sky-900,
:root .text-sky-950,
:root .text-slate-800,
:root .text-slate-900 { color: var(--site-primary); }

:root .bg-emerald-100,
:root .bg-emerald-50,
:root .bg-sky-100,
:root .bg-sky-50,
:root .hover\:bg-emerald-100:hover,
:root .hover\:bg-emerald-50:hover { background-color: var(--site-soft); }

:root .text-emerald-100,
:root .text-emerald-200,
:root .text-emerald-300,
:root .text-emerald-400,
:root .text-emerald-50,
:root .text-emerald-500,
:root .text-emerald-600,
:root .text-sky-100,
:root .text-sky-200,
:root .text-sky-300,
:root .text-sky-400,
:root .text-sky-50,
:root .text-sky-500,
:root .text-sky-600 { color: var(--site-accent); }

:root .bg-emerald-200,
:root .bg-emerald-300,
:root .bg-sky-200,
:root .bg-sky-300 { background-color: var(--site-hover); }

:root .bg-emerald-400,
:root .bg-emerald-500,
:root .bg-emerald-600,
:root .bg-sky-400,
:root .bg-sky-500,
:root .bg-sky-600 { background-color: var(--site-accent); }

:root .border-emerald-400,
:root .border-emerald-500,
:root .border-emerald-600,
:root .border-emerald-700,
:root .border-emerald-800,
:root .border-emerald-900,
:root .border-sky-400,
:root .border-sky-500,
:root .border-sky-600,
:root .border-sky-700,
:root .border-sky-800,
:root .border-sky-900,
:root .focus\:border-emerald-600:focus,
:root .hover\:border-emerald-500:hover,
:root .hover\:border-emerald-600:hover { border-color: var(--site-accent); }

:root .text-red-600,
:root .text-red-700 { color: var(--site-danger); }

:root .bg-red-600 { background-color: var(--site-danger); }

:root .bg-amber-100,
:root .bg-amber-200,
:root .bg-amber-50 { background-color: color-mix(in srgb,var(--site-warning) 7%,var(--site-surface)); }

:root .text-amber-100,
:root .text-amber-200,
:root .text-amber-300,
:root .text-amber-400,
:root .text-amber-50,
:root .text-amber-500,
:root .text-amber-600,
:root .text-amber-700,
:root .text-amber-800,
:root .text-amber-900 { color: var(--site-warning); }

:root .bg-amber-300,
:root .bg-amber-400,
:root .bg-amber-500,
:root .bg-amber-600,
:root .bg-amber-700,
:root .bg-amber-800,
:root .bg-amber-900 { background-color: var(--site-warning); }

:root .border-amber-400,
:root .border-amber-500,
:root .border-amber-600,
:root .border-amber-700,
:root .border-amber-800,
:root .border-amber-900 { border-color: var(--site-warning); }

:root .bg-white { background-color: var(--site-surface); }

/* Primary actions choose a readable foreground from the configured background. */

:root :is(.bg-slate-700,.bg-slate-800,.bg-slate-900,.bg-emerald-700,.bg-emerald-800,.bg-emerald-900).text-white { color: var(--site-on-primary); }

:root :is(.bg-emerald-500,.bg-emerald-600,.bg-sky-500,.bg-sky-600).text-white { color: var(--site-on-accent); }

/* Filled contact actions retain their channel identity, independently of the site accent. */
:root a[href^="https://wa.me/"]:is(.bg-emerald-500,.bg-emerald-600,.bg-emerald-700) {
    background-color: #18784f;
    color: #ffffff;
}
:root a[href^="https://wa.me/"]:is(.bg-emerald-500,.bg-emerald-600,.bg-emerald-700):hover {
    background-color: #12613f;
}
:root :is(input[type="checkbox"],input[type="radio"]) { accent-color: var(--site-accent); }
body,button,input,select,textarea{font-family:"Manrope",sans-serif}
h1,h2,h3,h4,h5,h6{font-family:"Lora",sans-serif}

/* Document utility cascade */
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --font-serif: ui-serif, Georgia, Cambria, 'Times New Roman', Times, serif;
  --color-red-700: oklch(50.5% 0.213 27.518);
  --color-red-800: oklch(44.4% 0.177 26.899);
  --color-emerald-50: oklch(97.9% 0.021 166.113);
  --color-emerald-200: oklch(90.5% 0.093 164.15);
  --color-emerald-600: oklch(59.6% 0.145 163.225);
  --color-emerald-700: oklch(50.8% 0.118 165.612);
  --color-slate-50: oklch(98.4% 0.003 247.858);
  --color-slate-100: oklch(96.8% 0.007 247.896);
  --color-slate-200: oklch(92.9% 0.013 255.508);
  --color-slate-300: oklch(86.9% 0.022 252.894);
  --color-slate-500: oklch(55.4% 0.046 257.417);
  --color-slate-700: oklch(37.2% 0.044 257.287);
  --color-slate-900: oklch(20.8% 0.042 265.755);
  --color-white: #fff;
  --spacing: 0.25rem;
  --container-xs: 20rem;
  --container-3xl: 48rem;
  --container-4xl: 56rem;
  --container-7xl: 80rem;
  --text-xs: 0.75rem;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --text-base: 1rem;
  --text-base--line-height: calc(1.5 / 1);
  --text-lg: 1.125rem;
  --text-lg--line-height: calc(1.75 / 1.125);
  --text-xl: 1.25rem;
  --text-xl--line-height: calc(1.75 / 1.25);
  --text-2xl: 1.5rem;
  --text-2xl--line-height: calc(2 / 1.5);
  --text-3xl: 1.875rem;
  --text-3xl--line-height: calc(2.25 / 1.875);
  --text-4xl: 2.25rem;
  --text-4xl--line-height: calc(2.5 / 2.25);
  --text-5xl: 3rem;
  --text-5xl--line-height: 1;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --tracking-normal: 0em;
  --leading-tight: 1.25;
  --leading-snug: 1.375;
  --leading-relaxed: 1.625;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.5rem;
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.\!visible {
  visibility: visible !important;
}
.collapse {
  visibility: collapse;
}
.visible {
  visibility: visible;
}
.fixed {
  position: fixed;
}
.relative {
  position: relative;
}
.sticky {
  position: sticky;
}
.right-6 {
  right: calc(var(--spacing) * 6);
}
.bottom-6 {
  bottom: calc(var(--spacing) * 6);
}
.left-6 {
  left: calc(var(--spacing) * 6);
}
.z-40 {
  z-index: 40;
}
.z-50 {
  z-index: 50;
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.order-3 {
  order: 3;
}
.order-4 {
  order: 4;
}
.order-5 {
  order: 5;
}
.col-span-3 {
  grid-column: span 3 / span 3;
}
.m-0 {
  margin: 0px;
}
.mx-auto {
  margin-inline: auto;
}
.my-8 {
  margin-block: calc(var(--spacing) * 8);
}
.-mt-4 {
  margin-top: calc(var(--spacing) * -4);
}
.mt-1 {
  margin-top: var(--spacing);
}
.mt-2 {
  margin-top: calc(var(--spacing) * 2);
}
.mt-3 {
  margin-top: calc(var(--spacing) * 3);
}
.mt-4 {
  margin-top: calc(var(--spacing) * 4);
}
.mt-5 {
  margin-top: calc(var(--spacing) * 5);
}
.mt-6 {
  margin-top: calc(var(--spacing) * 6);
}
.mt-8 {
  margin-top: calc(var(--spacing) * 8);
}
.mt-10 {
  margin-top: calc(var(--spacing) * 10);
}
.mt-14 {
  margin-top: calc(var(--spacing) * 14);
}
.mt-auto {
  margin-top: auto;
}
.mb-2 {
  margin-bottom: calc(var(--spacing) * 2);
}
.mb-6 {
  margin-bottom: calc(var(--spacing) * 6);
}
.mb-8 {
  margin-bottom: calc(var(--spacing) * 8);
}
.mb-10 {
  margin-bottom: calc(var(--spacing) * 10);
}
.line-clamp-2 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.line-clamp-3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.block {
  display: block;
}
.flex {
  display: flex;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.inline {
  display: inline;
}
.inline-flex {
  display: inline-flex;
}
.aspect-\[16\/9\] {
  aspect-ratio: 16/9;
}
.aspect-square {
  aspect-ratio: 1 / 1;
}
.h-3 {
  height: calc(var(--spacing) * 3);
}
.h-5 {
  height: calc(var(--spacing) * 5);
}
.h-7 {
  height: calc(var(--spacing) * 7);
}
.h-11 {
  height: calc(var(--spacing) * 11);
}
.h-16 {
  height: calc(var(--spacing) * 16);
}
.h-28 {
  height: calc(var(--spacing) * 28);
}
.h-\[54px\] {
  height: 54px;
}
.h-full {
  height: 100%;
}
.max-h-64 {
  max-height: calc(var(--spacing) * 64);
}
.min-h-6 {
  min-height: calc(var(--spacing) * 6);
}
.min-h-11 {
  min-height: calc(var(--spacing) * 11);
}
.min-h-12 {
  min-height: calc(var(--spacing) * 12);
}
.min-h-14 {
  min-height: calc(var(--spacing) * 14);
}
.min-h-16 {
  min-height: calc(var(--spacing) * 16);
}
.min-h-20 {
  min-height: calc(var(--spacing) * 20);
}
.min-h-32 {
  min-height: calc(var(--spacing) * 32);
}
.min-h-screen {
  min-height: 100vh;
}
.w-3 {
  width: calc(var(--spacing) * 3);
}
.w-5 {
  width: calc(var(--spacing) * 5);
}
.w-7 {
  width: calc(var(--spacing) * 7);
}
.w-52 {
  width: calc(var(--spacing) * 52);
}
.w-\[148px\] {
  width: 148px;
}
.w-full {
  width: 100%;
}
.max-w-3xl {
  max-width: var(--container-3xl);
}
.max-w-4xl {
  max-width: var(--container-4xl);
}
.max-w-7xl {
  max-width: var(--container-7xl);
}
.max-w-\[72ch\] {
  max-width: 72ch;
}
.max-w-\[1360px\] {
  max-width: 1360px;
}
.max-w-\[1400px\] {
  max-width: 1400px;
}
.max-w-\[1600px\] {
  max-width: 1600px;
}
.max-w-full {
  max-width: 100%;
}
.max-w-xs {
  max-width: var(--container-xs);
}
.min-w-0 {
  min-width: 0px;
}
.min-w-11 {
  min-width: calc(var(--spacing) * 11);
}
.shrink-0 {
  flex-shrink: 0;
}
.cursor-pointer {
  cursor: pointer;
}
.resize {
  resize: both;
}
.scroll-mt-24 {
  scroll-margin-top: calc(var(--spacing) * 24);
}
.list-none {
  list-style-type: none;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-\[minmax\(0\,1fr\)_auto_auto\] {
  grid-template-columns: minmax(0,1fr) auto auto;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.items-center {
  align-items: center;
}
.items-start {
  align-items: flex-start;
}
.justify-between {
  justify-content: space-between;
}
.justify-center {
  justify-content: center;
}
.gap-0\.5 {
  gap: calc(var(--spacing) * 0.5);
}
.gap-1 {
  gap: var(--spacing);
}
.gap-2 {
  gap: calc(var(--spacing) * 2);
}
.gap-3 {
  gap: calc(var(--spacing) * 3);
}
.gap-4 {
  gap: calc(var(--spacing) * 4);
}
.gap-5 {
  gap: calc(var(--spacing) * 5);
}
.gap-6 {
  gap: calc(var(--spacing) * 6);
}
.gap-10 {
  gap: calc(var(--spacing) * 10);
}
:where(.space-y-3 > :not(:last-child)) {
  --tw-space-y-reverse: 0;
  margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
  margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
}
:where(.space-y-5 > :not(:last-child)) {
  --tw-space-y-reverse: 0;
  margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
  margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
}
.gap-x-2 {
  column-gap: calc(var(--spacing) * 2);
}
.gap-x-5 {
  column-gap: calc(var(--spacing) * 5);
}
.gap-y-2 {
  row-gap: calc(var(--spacing) * 2);
}
.justify-self-end {
  justify-self: flex-end;
}
.justify-self-start {
  justify-self: flex-start;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-y-auto {
  overflow-y: auto;
}
.rounded-2xl {
  border-radius: var(--radius-2xl);
}
.rounded-3xl {
  border-radius: var(--radius-3xl);
}
.rounded-full {
  border-radius: calc(infinity * 1px);
}
.rounded-lg {
  border-radius: var(--radius-lg);
}
.rounded-xl {
  border-radius: var(--radius-xl);
}
.border {
  border-style: var(--tw-border-style);
  border-width: 1px;
}
.border-t {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
}
.border-t-4 {
  border-top-style: var(--tw-border-style);
  border-top-width: 4px;
}
.border-b {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
}
.border-\[var\(--site-border\)\] {
  border-color: var(--site-border);
}
.border-red-700 {
  border-color: var(--color-red-700);
}
.border-slate-100 {
  border-color: var(--color-slate-100);
}
.border-slate-200 {
  border-color: var(--color-slate-200);
}
.border-slate-300 {
  border-color: var(--color-slate-300);
}
.border-white\/20 {
  border-color: color-mix(in srgb, #fff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
  }
}
.border-t-\[var\(--site-accent\)\] {
  border-top-color: var(--site-accent);
}
.bg-\[\#25D366\] {
  background-color: #25D366;
}
.bg-\[var\(--site-canvas\)\] {
  background-color: var(--site-canvas);
}
.bg-\[var\(--site-primary\)\] {
  background-color: var(--site-primary);
}
.bg-emerald-600 {
  background-color: var(--color-emerald-600);
}
.bg-red-700 {
  background-color: var(--color-red-700);
}
.bg-slate-50 {
  background-color: var(--color-slate-50);
}
.bg-slate-900 {
  background-color: var(--color-slate-900);
}
.bg-white {
  background-color: var(--color-white);
}
.object-contain {
  object-fit: contain;
}
.object-cover {
  object-fit: cover;
}
.object-left {
  object-position: left;
}
.p-3 {
  padding: calc(var(--spacing) * 3);
}
.p-4 {
  padding: calc(var(--spacing) * 4);
}
.p-5 {
  padding: calc(var(--spacing) * 5);
}
.p-6 {
  padding: calc(var(--spacing) * 6);
}
.px-1 {
  padding-inline: var(--spacing);
}
.px-2 {
  padding-inline: calc(var(--spacing) * 2);
}
.px-3 {
  padding-inline: calc(var(--spacing) * 3);
}
.px-4 {
  padding-inline: calc(var(--spacing) * 4);
}
.px-5 {
  padding-inline: calc(var(--spacing) * 5);
}
.px-6 {
  padding-inline: calc(var(--spacing) * 6);
}
.px-7 {
  padding-inline: calc(var(--spacing) * 7);
}
.px-8 {
  padding-inline: calc(var(--spacing) * 8);
}
.py-2 {
  padding-block: calc(var(--spacing) * 2);
}
.py-3 {
  padding-block: calc(var(--spacing) * 3);
}
.py-4 {
  padding-block: calc(var(--spacing) * 4);
}
.py-6 {
  padding-block: calc(var(--spacing) * 6);
}
.py-8 {
  padding-block: calc(var(--spacing) * 8);
}
.py-10 {
  padding-block: calc(var(--spacing) * 10);
}
.py-12 {
  padding-block: calc(var(--spacing) * 12);
}
.pt-1 {
  padding-top: var(--spacing);
}
.pt-5 {
  padding-top: calc(var(--spacing) * 5);
}
.pt-6 {
  padding-top: calc(var(--spacing) * 6);
}
.pt-8 {
  padding-top: calc(var(--spacing) * 8);
}
.pt-9 {
  padding-top: calc(var(--spacing) * 9);
}
.pb-1 {
  padding-bottom: var(--spacing);
}
.pb-3 {
  padding-bottom: calc(var(--spacing) * 3);
}
.pb-9 {
  padding-bottom: calc(var(--spacing) * 9);
}
.text-center {
  text-align: center;
}
.font-\[family-name\:var\(--site-heading-font\)\] {
  font-family: var(--site-heading-font);
}
.font-serif {
  font-family: var(--font-serif);
}
.text-2xl {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.text-3xl {
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}
.text-4xl {
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
}
.text-base {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.text-lg {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.text-sm {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.text-xl {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.text-xs {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.leading-6 {
  --tw-leading: calc(var(--spacing) * 6);
  line-height: calc(var(--spacing) * 6);
}
.leading-7 {
  --tw-leading: calc(var(--spacing) * 7);
  line-height: calc(var(--spacing) * 7);
}
.leading-8 {
  --tw-leading: calc(var(--spacing) * 8);
  line-height: calc(var(--spacing) * 8);
}
.leading-relaxed {
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
}
.leading-tight {
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
}
.font-medium {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.font-normal {
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
}
.font-semibold {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.\[overflow-wrap\:anywhere\] {
  overflow-wrap: anywhere;
}
.break-words {
  overflow-wrap: break-word;
}
.break-all {
  word-break: break-all;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.text-\[var\(--site-muted\)\] {
  color: var(--site-muted);
}
.text-\[var\(--site-text\)\] {
  color: var(--site-text);
}
.text-red-700 {
  color: var(--color-red-700);
}
.text-slate-500 {
  color: var(--color-slate-500);
}
.text-slate-900 {
  color: var(--color-slate-900);
}
.text-white {
  color: var(--color-white);
}
.text-white\/60 {
  color: color-mix(in srgb, #fff 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 60%, transparent);
  }
}
.text-white\/75 {
  color: color-mix(in srgb, #fff 75%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 75%, transparent);
  }
}
.tabular-nums {
  --tw-numeric-spacing: tabular-nums;
  font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
}
.underline {
  text-decoration-line: underline;
}
.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.shadow-\[0_0_12px_rgba\(185\,28\,28\,0\.18\)\] {
  --tw-shadow: 0 0 12px var(--tw-shadow-color, rgba(185,28,28,0.18));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-xl {
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.outline {
  outline-style: var(--tw-outline-style);
  outline-width: 1px;
}
.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
}
.filter {
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
}
.transition-colors {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.\[--menu-hover-background\:transparent\] {
  --menu-hover-background: transparent;
}
.\[--menu-mobile-background\:transparent\] {
  --menu-mobile-background: transparent;
}
.\[--menu-mobile-padding\:0px\] {
  --menu-mobile-padding: 0px;
}
.focus-within\:bg-red-800:focus-within {
  background-color: var(--color-red-800);
}
@media (hover: hover) {
  .hover\:border-emerald-200:hover {
    border-color: var(--color-emerald-200);
  }
  .hover\:bg-emerald-50:hover {
    background-color: var(--color-emerald-50);
  }
  .hover\:bg-emerald-700:hover {
    background-color: var(--color-emerald-700);
  }
  .hover\:bg-red-800:hover {
    background-color: var(--color-red-800);
  }
  .hover\:bg-slate-700:hover {
    background-color: var(--color-slate-700);
  }
}
.focus-visible\:outline:focus-visible {
  outline-style: var(--tw-outline-style);
  outline-width: 1px;
}
.focus-visible\:outline-2:focus-visible {
  outline-style: var(--tw-outline-style);
  outline-width: 2px;
}
.focus-visible\:outline-offset-2:focus-visible {
  outline-offset: 2px;
}
.focus-visible\:outline-\[var\(--site-accent\)\]:focus-visible {
  outline-color: var(--site-accent);
}
.focus-visible\:outline-emerald-600:focus-visible {
  outline-color: var(--color-emerald-600);
}
.focus-visible\:outline-emerald-700:focus-visible {
  outline-color: var(--color-emerald-700);
}
@media (width >= 40rem) {
  .sm\:h-16 {
    height: calc(var(--spacing) * 16);
  }
  .sm\:w-44 {
    width: calc(var(--spacing) * 44);
  }
  .sm\:px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .sm\:text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
@media (width >= 48rem) {
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .md\:py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .md\:text-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
}
@media (width >= 64rem) {
  .lg\:order-3 {
    order: 3;
  }
  .lg\:order-4 {
    order: 4;
  }
  .lg\:order-6 {
    order: 6;
  }
  .lg\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .lg\:col-span-4 {
    grid-column: span 4 / span 4;
  }
  .lg\:hidden {
    display: none;
  }
  .lg\:inline {
    display: inline;
  }
  .lg\:h-\[58px\] {
    height: 58px;
  }
  .lg\:w-40 {
    width: calc(var(--spacing) * 40);
  }
  .lg\:w-full {
    width: 100%;
  }
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .lg\:grid-cols-\[auto_minmax\(0\,1fr\)_auto_auto\] {
    grid-template-columns: auto minmax(0,1fr) auto auto;
  }
  .lg\:gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .lg\:gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .lg\:gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .lg\:gap-y-3 {
    row-gap: calc(var(--spacing) * 3);
  }
  .lg\:justify-self-stretch {
    justify-self: stretch;
  }
  .lg\:rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .lg\:border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .lg\:px-0 {
    padding-inline: 0px;
  }
}
@media (width >= 80rem) {
  .xl\:sticky {
    position: sticky;
  }
  .xl\:top-8 {
    top: calc(var(--spacing) * 8);
  }
  .xl\:h-16 {
    height: calc(var(--spacing) * 16);
  }
  .xl\:w-48 {
    width: calc(var(--spacing) * 48);
  }
  .xl\:grid-cols-\[minmax\(0\,1fr\)_360px\] {
    grid-template-columns: minmax(0,1fr) 360px;
  }
  .xl\:grid-cols-\[minmax\(200px\,\.55fr\)_minmax\(0\,2fr\)\] {
    grid-template-columns: minmax(200px,.55fr) minmax(0,2fr);
  }
  .xl\:gap-14 {
    gap: calc(var(--spacing) * 14);
  }
  .xl\:gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .xl\:px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
}
@media (width >= 96rem) {
  .\32 xl\:h-\[72px\] {
    height: 72px;
  }
  .\32 xl\:w-\[216px\] {
    width: 216px;
  }
}
@media (width >= 48rem) {
  .md\:\[\&_\.has-children\]\:\!grid-cols-1 .has-children {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
}
@media (width >= 64rem) {
  .lg\:\[\&_\.nexus-bookmark-launch\]\:\!h-9 .nexus-bookmark-launch {
    height: calc(var(--spacing) * 9) !important;
  }
  .lg\:\[\&_\.nexus-bookmark-launch\]\:\!min-h-9 .nexus-bookmark-launch {
    min-height: calc(var(--spacing) * 9) !important;
  }
  .lg\:\[\&_\.nexus-bookmark-launch\]\:\!w-9 .nexus-bookmark-launch {
    width: calc(var(--spacing) * 9) !important;
  }
  .lg\:\[\&_\.nexus-bookmark-launch\]\:\!min-w-9 .nexus-bookmark-launch {
    min-width: calc(var(--spacing) * 9) !important;
  }
  .lg\:\[\&_\.nexus-bookmark-launch\]\:\!rounded-lg .nexus-bookmark-launch {
    border-radius: var(--radius-lg) !important;
  }
  .lg\:\[\&_\.nexus-bookmark-launch\]\:\!p-2 .nexus-bookmark-launch {
    padding: calc(var(--spacing) * 2) !important;
  }
  .lg\:\[\&_\.nexus-bookmark-launch_svg\]\:\!h-\[18px\] .nexus-bookmark-launch svg {
    height: 18px !important;
  }
  .lg\:\[\&_\.nexus-bookmark-launch_svg\]\:\!w-\[18px\] .nexus-bookmark-launch svg {
    width: 18px !important;
  }
}
.\[\&_\.nexus-header-selector_summary\]\:\!h-11 .nexus-header-selector summary {
  height: calc(var(--spacing) * 11) !important;
}
.\[\&_\.nexus-header-selector_summary\]\:\!min-h-11 .nexus-header-selector summary {
  min-height: calc(var(--spacing) * 11) !important;
}
.\[\&_\.nexus-header-selector_summary\]\:\!min-w-11 .nexus-header-selector summary {
  min-width: calc(var(--spacing) * 11) !important;
}
.\[\&_\.nexus-header-selector_summary\]\:\!gap-1 .nexus-header-selector summary {
  gap: var(--spacing) !important;
}
.\[\&_\.nexus-header-selector_summary\]\:\!px-2 .nexus-header-selector summary {
  padding-inline: calc(var(--spacing) * 2) !important;
}
.\[\&_\.nexus-header-selector_summary\]\:\!py-1 .nexus-header-selector summary {
  padding-block: var(--spacing) !important;
}
.\[\&_\.nexus-header-selector_summary\]\:\!text-\[11px\] .nexus-header-selector summary {
  font-size: 11px !important;
}
@media (width < 40rem) {
  .max-sm\:\[\&_\.nexus-header-selector_summary\]\:\!px-1 .nexus-header-selector summary {
    padding-inline: var(--spacing) !important;
  }
}
@media (width >= 64rem) {
  .lg\:\[\&_\.nexus-header-selector_summary\]\:\!h-9 .nexus-header-selector summary {
    height: calc(var(--spacing) * 9) !important;
  }
  .lg\:\[\&_\.nexus-header-selector_summary\]\:\!min-h-9 .nexus-header-selector summary {
    min-height: calc(var(--spacing) * 9) !important;
  }
  .lg\:\[\&_\.nexus-header-selector_summary\]\:\!min-w-0 .nexus-header-selector summary {
    min-width: 0px !important;
  }
  .lg\:\[\&_\.nexus-header-selector_summary\]\:\!rounded-lg .nexus-header-selector summary {
    border-radius: var(--radius-lg) !important;
  }
  .lg\:\[\&_\.nexus-header-selector_summary\]\:\!px-2\.5 .nexus-header-selector summary {
    padding-inline: calc(var(--spacing) * 2.5) !important;
  }
  .lg\:\[\&_\.nexus-header-selector_summary\]\:\!text-xs .nexus-header-selector summary {
    font-size: var(--text-xs) !important;
    line-height: var(--tw-leading, var(--text-xs--line-height)) !important;
  }
}
.\[\&_\.nexus-header-selector_summary_svg\]\:\!w-3 .nexus-header-selector summary svg {
  width: calc(var(--spacing) * 3) !important;
}
@media (width < 40rem) {
  .max-sm\:\[\&_\.nexus-header-selector_summary_svg\]\:\!hidden .nexus-header-selector summary svg {
    display: none !important;
  }
}
.\[\&_\.nexus-menu-content\]\:\!flex .nexus-menu-content {
  display: flex !important;
}
.\[\&_\.nexus-menu-content\]\:\!justify-center .nexus-menu-content {
  justify-content: center !important;
}
.\[\&_\.nexus-menu-content\]\:\!gap-0 .nexus-menu-content {
  gap: 0px !important;
}
.\[\&_\.nexus-menu-content\]\:\!bg-transparent .nexus-menu-content {
  background-color: transparent !important;
}
.\[\&_\.nexus-menu-content\]\:\!p-0 .nexus-menu-content {
  padding: 0px !important;
}
@media (width >= 64rem) {
  .lg\:\[\&_\.nexus-menu-content\]\:justify-center .nexus-menu-content {
    justify-content: center;
  }
}
.\[\&_\.nexus-menu-socials\]\:mt-6 .nexus-menu-socials {
  margin-top: calc(var(--spacing) * 6);
}
.\[\&_\.nexus-menu-socials\]\:flex-wrap .nexus-menu-socials {
  flex-wrap: wrap;
}
.\[\&_\.nexus-menu-socials_a\]\:\!h-11 .nexus-menu-socials a {
  height: calc(var(--spacing) * 11) !important;
}
.\[\&_\.nexus-menu-socials_a\]\:\!w-11 .nexus-menu-socials a {
  width: calc(var(--spacing) * 11) !important;
}
.\[\&_\.nexus-reading\]\:mb-4 .nexus-reading {
  margin-bottom: calc(var(--spacing) * 4);
}
.\[\&_\.nexus-site-menu\]\:\!w-full .nexus-site-menu {
  width: 100% !important;
}
.\[\&_\.nexus-site-menu\]\:\!min-w-0 .nexus-site-menu {
  min-width: 0px !important;
}
.\[\&_\.nexus-site-menu__item\]\:min-w-0 .nexus-site-menu item {
  min-width: 0px;
}
.\[\&_\.nexus-site-menu__level-1\]\:\!grid-cols-1 .nexus-site-menu level-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
}
.\[\&_\.nexus-site-menu__level-1\]\:\!gap-3 .nexus-site-menu level-1 {
  gap: calc(var(--spacing) * 3) !important;
}
.\[\&_\.nexus-site-menu__level-1\]\:\!gap-4 .nexus-site-menu level-1 {
  gap: calc(var(--spacing) * 4) !important;
}
@media (width >= 40rem) {
  .sm\:\[\&_\.nexus-site-menu__level-1\]\:\!grid-cols-2 .nexus-site-menu level-1 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (width >= 48rem) {
  .md\:\[\&_\.nexus-site-menu__level-1\]\:\!grid-cols-2 .nexus-site-menu level-1 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .md\:\[\&_\.nexus-site-menu__level-1\]\:\!gap-6 .nexus-site-menu level-1 {
    gap: calc(var(--spacing) * 6) !important;
  }
}
@media (width >= 64rem) {
  .lg\:\[\&_\.nexus-site-menu__level-1\]\:\!grid-cols-3 .nexus-site-menu level-1 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (width >= 80rem) {
  .xl\:\[\&_\.nexus-site-menu__level-1\]\:\!grid-cols-4 .nexus-site-menu level-1 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
@media (width >= 48rem) {
  .md\:\[\&_\.nexus-site-menu__level-2\]\:\!block .nexus-site-menu level-2 {
    display: block !important;
  }
}
.\[\&_\.nexus-site-menu__link\]\:\!h-full .nexus-site-menu link {
  height: 100% !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!min-h-16 .nexus-site-menu link {
  min-height: calc(var(--spacing) * 16) !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!rounded-xl .nexus-site-menu link {
  border-radius: var(--radius-xl) !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!border .nexus-site-menu link {
  border-style: var(--tw-border-style) !important;
  border-width: 1px !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!border-\[var\(--site-border\)\] .nexus-site-menu link {
  border-color: var(--site-border) !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!bg-white .nexus-site-menu link {
  background-color: var(--color-white) !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!px-5 .nexus-site-menu link {
  padding-inline: calc(var(--spacing) * 5) !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!py-4 .nexus-site-menu link {
  padding-block: calc(var(--spacing) * 4) !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!text-sm .nexus-site-menu link {
  font-size: var(--text-sm) !important;
  line-height: var(--tw-leading, var(--text-sm--line-height)) !important;
}
.\[\&_\.nexus-site-menu__link\]\:\!whitespace-normal .nexus-site-menu link {
  white-space: normal !important;
}
.\[\&_\.nexus-site-menu\\_\\_item\]\:\!w-full .nexus-site-menu__item {
  width: 100% !important;
}
.\[\&_\.nexus-site-menu\\_\\_item\]\:\!border-0 .nexus-site-menu__item {
  border-style: var(--tw-border-style) !important;
  border-width: 0px !important;
}
.\[\&_\.nexus-site-menu\\_\\_item\]\:\!bg-transparent .nexus-site-menu__item {
  background-color: transparent !important;
}
.\[\&_\.nexus-site-menu\\_\\_level-1\]\:\!m-0 .nexus-site-menu__level-1 {
  margin: 0px !important;
}
.\[\&_\.nexus-site-menu\\_\\_level-1\]\:\!flex .nexus-site-menu__level-1 {
  display: flex !important;
}
.\[\&_\.nexus-site-menu\\_\\_level-1\]\:\!w-full .nexus-site-menu__level-1 {
  width: 100% !important;
}
.\[\&_\.nexus-site-menu\\_\\_level-1\]\:\!justify-center .nexus-site-menu__level-1 {
  justify-content: center !important;
}
.\[\&_\.nexus-site-menu\\_\\_level-1\]\:\!gap-0 .nexus-site-menu__level-1 {
  gap: 0px !important;
}
@media (width >= 64rem) {
  .lg\:\[\&_\.nexus-site-menu\\_\\_level-1\]\:\!flex-nowrap .nexus-site-menu__level-1 {
    flex-wrap: nowrap !important;
  }
  .lg\:\[\&_\.nexus-site-menu\\_\\_level-1\]\:\!gap-2 .nexus-site-menu__level-1 {
    gap: calc(var(--spacing) * 2) !important;
  }
}
@media (width >= 80rem) {
  .xl\:\[\&_\.nexus-site-menu\\_\\_level-1\]\:\!gap-4 .nexus-site-menu__level-1 {
    gap: calc(var(--spacing) * 4) !important;
  }
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!min-h-11 .nexus-site-menu__link {
  min-height: calc(var(--spacing) * 11) !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!w-full .nexus-site-menu__link {
  width: 100% !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!justify-center .nexus-site-menu__link {
  justify-content: center !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!gap-2 .nexus-site-menu__link {
  gap: calc(var(--spacing) * 2) !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!rounded-xl .nexus-site-menu__link {
  border-radius: var(--radius-xl) !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!bg-transparent .nexus-site-menu__link {
  background-color: transparent !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!px-3 .nexus-site-menu__link {
  padding-inline: calc(var(--spacing) * 3) !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!py-2 .nexus-site-menu__link {
  padding-block: calc(var(--spacing) * 2) !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!text-center .nexus-site-menu__link {
  text-align: center !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!text-\[13px\] .nexus-site-menu__link {
  font-size: 13px !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!leading-5 .nexus-site-menu__link {
  --tw-leading: calc(var(--spacing) * 5) !important;
  line-height: calc(var(--spacing) * 5) !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!font-semibold .nexus-site-menu__link {
  --tw-font-weight: var(--font-weight-semibold) !important;
  font-weight: var(--font-weight-semibold) !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!whitespace-normal .nexus-site-menu__link {
  white-space: normal !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:\!text-white .nexus-site-menu__link {
  color: var(--color-white) !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:before\:shrink-0 .nexus-site-menu__link::before {
  content: var(--tw-content);
  flex-shrink: 0;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:before\:content-\[\'✦\'\] .nexus-site-menu__link::before {
  --tw-content: '✦';
  content: var(--tw-content);
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:focus-visible\:\!outline .nexus-site-menu__link:focus-visible {
  outline-style: var(--tw-outline-style) !important;
  outline-width: 1px !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:focus-visible\:\!outline-2 .nexus-site-menu__link:focus-visible {
  outline-style: var(--tw-outline-style) !important;
  outline-width: 2px !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:focus-visible\:\!outline-offset-\[-4px\] .nexus-site-menu__link:focus-visible {
  outline-offset: -4px !important;
}
.\[\&_\.nexus-site-menu\\_\\_link\]\:focus-visible\:\!outline-white .nexus-site-menu__link:focus-visible {
  outline-color: var(--color-white) !important;
}
@media (width >= 64rem) {
  .lg\:\[\&_\.nexus-site-menu\\_\\_link\]\:\!rounded-full .nexus-site-menu__link {
    border-radius: calc(infinity * 1px) !important;
  }
  .lg\:\[\&_\.nexus-site-menu\\_\\_link\]\:\!text-xs .nexus-site-menu__link {
    font-size: var(--text-xs) !important;
    line-height: var(--tw-leading, var(--text-xs--line-height)) !important;
  }
  .lg\:\[\&_\.nexus-site-menu\\_\\_link\]\:\!tracking-normal .nexus-site-menu__link {
    --tw-tracking: var(--tracking-normal) !important;
    letter-spacing: var(--tracking-normal) !important;
  }
  .lg\:\[\&_\.nexus-site-menu\\_\\_link\]\:\!whitespace-nowrap .nexus-site-menu__link {
    white-space: nowrap !important;
  }
}
@media (width >= 48rem) {
  .md\:\[\&_\.nexus-submenu-toggle\]\:\!hidden .nexus-submenu-toggle {
    display: none !important;
  }
}
.\[\&_\.nexus-toc\]\:mb-8 .nexus-toc {
  margin-bottom: calc(var(--spacing) * 8);
}
.\[\&_a\]\:underline a {
  text-decoration-line: underline;
}
.\[\&_a\]\:underline-offset-4 a {
  text-underline-offset: 4px;
}
.\[\&_h2\]\:mt-9 h2 {
  margin-top: calc(var(--spacing) * 9);
}
.\[\&_h2\]\:mb-4 h2 {
  margin-bottom: calc(var(--spacing) * 4);
}
.\[\&_h2\]\:text-2xl h2 {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.\[\&_h2\]\:leading-snug h2 {
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
}
.\[\&_h3\]\:mt-8 h3 {
  margin-top: calc(var(--spacing) * 8);
}
.\[\&_h3\]\:mb-4 h3 {
  margin-bottom: calc(var(--spacing) * 4);
}
.\[\&_h3\]\:text-xl h3 {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.\[\&_img\]\:h-auto img {
  height: auto;
}
.\[\&_img\]\:max-w-full img {
  max-width: 100%;
}
.\[\&_li\]\:mb-2 li {
  margin-bottom: calc(var(--spacing) * 2);
}
.\[\&_ol\]\:mb-6 ol {
  margin-bottom: calc(var(--spacing) * 6);
}
.\[\&_ol\]\:list-decimal ol {
  list-style-type: decimal;
}
.\[\&_ol\]\:pl-6 ol {
  padding-left: calc(var(--spacing) * 6);
}
.\[\&_p\]\:mb-6 p {
  margin-bottom: calc(var(--spacing) * 6);
}
.\[\&_table\]\:block table {
  display: block;
}
.\[\&_table\]\:max-w-full table {
  max-width: 100%;
}
.\[\&_table\]\:overflow-x-auto table {
  overflow-x: auto;
}
.\[\&_ul\]\:mb-6 ul {
  margin-bottom: calc(var(--spacing) * 6);
}
.\[\&_ul\]\:list-disc ul {
  list-style-type: disc;
}
.\[\&_ul\]\:pl-6 ul {
  padding-left: calc(var(--spacing) * 6);
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-content: "";
      --tw-tracking: initial;
    }
  }
}
