/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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-rotate-x: initial;
            --tw-rotate-y: initial;
            --tw-rotate-z: initial;
            --tw-skew-x: initial;
            --tw-skew-y: 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: 0;
            --tw-ring-offset-color: #fff;
            --tw-ring-offset-shadow: 0 0 #0000;
            --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-ease: initial
        }
    }
}

@layer theme {

    :root,
    :host {
        --ease-in: cubic-bezier(.4, 0, 1, 1);
        --ease-out: cubic-bezier(0, 0, .2, 1);
        --ease-in-out: cubic-bezier(.4, 0, .2, 1);
        --default-transition-duration: .15s;
        --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
        --color-brand-50: #f4faf1;
        --color-brand-100: #eaf5e4;
        --color-brand-200: #d5e8ca;
        --color-brand-300: #b7d6a7;
        --color-brand-400: #73a85c;
        --color-brand-500: #3b8d20;
        --color-brand-600: #327b13;
        --color-brand-700: #245b0d;
        --color-brand-800: #193f09;
        --color-ink: #20281e;
        --color-muted: #60685c;
        --color-line: #dbe2d7;
        --color-surface: #fff;
        --color-surface-soft: #f3f6f1;
        --radius-control: .5rem;
        --radius-card: .75rem;
        --shadow-card-hover: 0 1.6rem 3.8rem #20281e1c;
        --ease-brand: cubic-bezier(.22, 1, .36, 1)
    }
}

@layer components {
    html body .button {
        transition-property: color, background-color, border-color, box-shadow, transform;
        transition-duration: .3s;
        transition-timing-function: var(--ease-brand)
    }

    @media (hover:hover) and (pointer:fine) {
        html body .button:hover:not(:disabled) {
            transform: none !important;
            box-shadow: 0 .6rem 1.6rem #245b0d1f !important
        }

        html body .button.secondary:hover:not(:disabled) {
            box-shadow: 0 .4rem 1.2rem #20281e12 !important
        }

        [data-ui-card] {
            transition: border-color .3s var(--ease-brand), background-color .3s var(--ease-brand), box-shadow .3s var(--ease-brand), color .3s var(--ease-brand)
        }

        [data-ui-card]:hover {
            box-shadow: 0 .8rem 2.4rem #20281e12;
            border-color: #8ebc79 !important;
            transform: none !important
        }

        [data-ui-card] [data-ui-arrow] {
            transition: color .3s var(--ease-brand)
        }

        [data-ui-card]:hover [data-ui-arrow] {
            color: var(--color-brand-700);
            transform: none !important
        }

        .brief-sector-list>a:hover {
            background-color: var(--color-brand-50);
            border-color: var(--color-brand-300)
        }

        .brief-sector-list>a:hover strong,
        .brief-sector-list>a:hover>span:last-child {
            color: var(--color-brand-700)
        }

        .ds-hero:hover>img,
        .hero-image:hover img,
        .v-hero:hover .v-hero-media img,
        figure:hover>.feature-image,
        .v-hero-media:hover img,
        .v-hero-media img,
        .feature-image {
            filter: none !important;
            transform: none !important
        }
    }

    .brief-sector-list>a {
        transition: color .28s var(--ease-brand), background-color .28s var(--ease-brand), border-color .28s var(--ease-brand)
    }

    .brief-sector-list>a strong,
    .brief-sector-list>a>span:last-child {
        transition: color .28s var(--ease-brand)
    }

    .brief-sector-list>a:focus-visible {
        background-color: var(--color-brand-50);
        border-color: var(--color-brand-300)
    }

    .brief-sector-list>a:focus-visible strong,
    .brief-sector-list>a:focus-visible>span:last-child {
        color: var(--color-brand-700)
    }

    html body .text-link,
    html body .text-link:after {
        transition: color .26s var(--ease-brand), background-color .26s var(--ease-brand), border-color .26s var(--ease-brand), box-shadow .26s var(--ease-brand)
    }

    html body .text-link:focus-visible {
        color: var(--color-brand-800);
        text-decoration: none !important
    }

    [data-ui-card]:focus-visible .text-link:after {
        border-color: var(--color-brand-600);
        background: var(--color-brand-600);
        color: var(--color-surface)
    }

    @media (hover:hover) and (pointer:fine) {
        html body .text-link:hover {
            color: var(--color-brand-800);
            text-decoration: none !important
        }

        html body .text-link:hover:after {
            border-color: var(--color-brand-600);
            background: var(--color-brand-600);
            color: var(--color-surface);
            box-shadow: 0 .4rem 1.2rem #245b0d1f
        }

        html body .actions>.text-link:hover {
            border-color: var(--color-brand-300);
            background: var(--color-brand-50)
        }

        [data-ui-card]:hover .text-link:after {
            border-color: var(--color-brand-600);
            background: var(--color-brand-600);
            color: var(--color-surface);
            box-shadow: 0 .4rem 1.2rem #245b0d1f
        }
    }

    html body .ds-header .ds-nav a {
        transition: color .28s var(--ease-brand), box-shadow .28s var(--ease-brand);
        position: relative;
        text-decoration: none !important
    }

    html body .ds-header .ds-nav a:hover,
    html body .ds-header .ds-nav a:focus-visible {
        color: var(--color-brand-700);
        text-decoration: none !important
    }

    html body .ds-header .ds-nav a[aria-current=page] {
        color: var(--color-brand-700);
        box-shadow: inset 0 -.2rem 0 var(--color-brand-500)
    }

    html body .ds-menu {
        transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s var(--ease-brand)
    }

    html body .ds-menu:hover {
        color: var(--color-brand-700);
        background: var(--color-brand-50);
        border-color: #8ebc79
    }

    html body .ds-menu:active {
        transform: scale(.96)
    }

    html body .ds-footer a {
        transition: color .28s var(--ease-brand), opacity .28s var(--ease-brand);
        text-decoration: none !important
    }

    html body .ds-footer a:hover,
    html body .ds-footer a:focus-visible {
        color: var(--color-brand-700) !important;
        text-decoration: none !important
    }

    html body .ds-footer nav a:hover,
    html body .ds-footer nav a:focus-visible {
        opacity: .72
    }

    .radio-group label {
        transition: color .28s var(--ease-brand), background-color .28s var(--ease-brand), border-color .28s var(--ease-brand), box-shadow .28s var(--ease-brand);
        position: relative
    }

    .radio-group input[type=radio] {
        pointer-events: none;
        opacity: 0 !important;
        block-size: .1rem !important;
        inline-size: .1rem !important;
        margin: 0 !important;
        position: absolute !important
    }

    .radio-group label:has(input:focus-visible) {
        outline: .3rem solid var(--color-brand-400);
        outline-offset: .3rem
    }

    .radio-group label:has(input:checked) {
        color: var(--color-brand-800);
        border-color: var(--color-brand-400);
        background: var(--color-brand-100);
        box-shadow: inset 0 0 0 .1rem var(--color-brand-300)
    }

    .ui-select-field {
        min-width: min(100%, 24rem)
    }

    .ui-select-field>label {
        margin-bottom: .8rem;
        display: block
    }

    .ui-select {
        width: 100%;
        position: relative
    }

    .ui-native-select {
        pointer-events: none;
        opacity: 0 !important;
        block-size: .1rem !important;
        inline-size: .1rem !important;
        margin: 0 !important;
        padding: 0 !important;
        position: absolute !important
    }

    .ui-select-trigger {
        border: .1rem solid var(--color-line);
        border-radius: var(--radius-control);
        background: var(--color-surface);
        width: 100%;
        min-height: 5.2rem;
        color: var(--color-ink);
        font: inherit;
        text-align: left;
        cursor: pointer;
        transition: color .28s var(--ease-brand), background-color .28s var(--ease-brand), border-color .28s var(--ease-brand), box-shadow .28s var(--ease-brand);
        justify-content: space-between;
        align-items: center;
        gap: 1.6rem;
        padding: 1.2rem 1.6rem;
        font-weight: 500;
        line-height: 1.4;
        display: flex
    }

    .ui-select-trigger:after {
        content: "";
        width: .8rem;
        height: .8rem;
        transition: transform .28s var(--ease-brand);
        border-bottom: .15rem solid;
        border-right: .15rem solid;
        flex: 0 0 .8rem;
        margin: -.4rem .3rem 0 0;
        transform: rotate(45deg)
    }

    .ui-select-trigger[aria-expanded=true]:after {
        margin-top: .4rem;
        transform: rotate(225deg)
    }

    .ui-select-trigger:hover {
        border-color: var(--color-brand-400);
        background: var(--color-brand-50)
    }

    .ui-select-trigger:focus-visible {
        border-color: var(--color-brand-500);
        box-shadow: 0 0 0 .3rem #3b8d2024;
        outline: none !important
    }

    .ui-select-trigger[aria-invalid=true] {
        border-color: #b42318
    }

    .ui-select-menu {
        z-index: 60;
        border: .1rem solid var(--color-line);
        background: var(--color-surface);
        border-radius: 1rem;
        max-height: min(25rem, 55vh);
        margin: 0;
        padding: .6rem;
        overflow-y: auto;
        box-shadow: 0 1.4rem 3.2rem #20281e1f
    }

    .ui-select-menu.hidden {
        display: none
    }

    .ui-select-menu.block {
        display: block
    }

    .ui-select-option {
        width: 100%;
        min-height: 4.2rem;
        color: var(--color-ink);
        font: inherit;
        text-align: left;
        cursor: pointer;
        transition: color .22s var(--ease-brand), background-color .22s var(--ease-brand);
        background: 0 0;
        border: 0;
        border-radius: .6rem;
        padding: 1rem 1.2rem;
        line-height: 1.4;
        display: block
    }

    .ui-select-option:hover,
    .ui-select-option:focus-visible {
        color: var(--color-brand-800);
        background: var(--color-brand-50);
        outline: none
    }

    .ui-select-option[aria-selected=true] {
        color: var(--color-brand-800);
        background: var(--color-brand-100);
        font-weight: 600
    }

    .ui-accordion {
        border-top: .1rem solid var(--color-line)
    }

    .ui-accordion-item {
        border-bottom: .1rem solid var(--color-line);
        transition: border-color .26s var(--ease-brand), background-color .26s var(--ease-brand)
    }

    .ui-accordion-item:has(.ui-accordion-trigger:hover) {
        border-color: var(--color-brand-300);
        background: var(--color-brand-50)
    }

    .ui-accordion-trigger {
        width: 100%;
        min-height: 6.4rem;
        color: var(--color-ink);
        font: inherit;
        text-align: left;
        cursor: pointer;
        transition: color .26s var(--ease-brand), background-color .26s var(--ease-brand);
        background: 0 0;
        border: 0;
        justify-content: space-between;
        align-items: center;
        gap: 2.4rem;
        padding: 1.9rem 1.6rem;
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 1.45;
        display: flex
    }

    .ui-accordion-trigger:hover,
    .ui-accordion-trigger[aria-expanded=true] {
        color: var(--color-brand-800)
    }

    .ui-accordion-trigger:focus-visible {
        z-index: 1;
        outline-offset: -.3rem;
        border-radius: .6rem;
        position: relative;
        outline: .3rem solid var(--color-brand-400) !important
    }

    .ui-accordion-label {
        min-width: 0
    }

    .ui-accordion-icon {
        border: .08rem solid #000;
        width: 2.8rem;
        height: 2.8rem;
        color: #000;
        transition: color .28s var(--ease-brand), border-color .28s var(--ease-brand), background-color .28s var(--ease-brand), transform .36s var(--ease-brand);
        border-radius: 50%;
        flex: 0 0 2.8rem;
        position: relative
    }

    .ui-accordion-icon:before,
    .ui-accordion-icon:after {
        content: "";
        width: 1.1rem;
        height: .1rem;
        transition: transform .32s var(--ease-brand);
        background: currentColor;
        border-radius: 999rem;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%)
    }

    .ui-accordion-icon:after {
        transform: translate(-50%, -50%)rotate(90deg)
    }

    .ui-accordion-trigger:hover .ui-accordion-icon,
    .ui-accordion-trigger[aria-expanded=true] .ui-accordion-icon {
        color: var(--color-brand-700);
        border-color: var(--color-brand-500);
        background: var(--color-brand-100)
    }

    .ui-accordion-trigger[aria-expanded=true] .ui-accordion-icon {
        transform: rotate(180deg)
    }

    .ui-accordion-trigger[aria-expanded=true] .ui-accordion-icon:after {
        transform: translate(-50%, -50%)rotate(0)
    }

    .ui-accordion-panel,
    .ui-accordion-panel.hidden {
        transition: grid-template-rows .36s var(--ease-brand), opacity .26s ease;
        overflow: clip;
        display: grid !important
    }

    .ui-accordion-panel {
        opacity: 1;
        grid-template-rows: 1fr
    }

    .ui-accordion-panel.hidden {
        opacity: 0;
        grid-template-rows: 0fr
    }

    .ui-accordion-content {
        min-height: 0;
        color: var(--color-muted);
        overflow: hidden
    }

    .ui-accordion-content>* {
        margin: 0;
        padding: 0 5.2rem 2.2rem 1.6rem;
        font-size: 1.4rem;
        line-height: 1.7
    }

    @media (max-width:767px) {
        .ui-accordion-trigger {
            gap: 1.6rem;
            padding: 1.7rem .8rem;
            font-size: 1.4rem
        }

        .ui-accordion-content>* {
            padding: 0 4.4rem 1.9rem .8rem;
            font-size: 1.3rem
        }
    }

    @media (max-width:980px) {
        html body .ds-header .ds-nav:not(.hidden) {
            display: flex !important
        }
    }

    @media (max-width:600px) {

        .ui-select-field,
        .ui-select {
            width: 100%
        }
    }
}

@layer utilities {
    .collapse {
        visibility: collapse
    }

    .visible {
        visibility: visible
    }

    .absolute {
        position: absolute
    }

    .fixed {
        position: fixed
    }

    .relative {
        position: relative
    }

    .static {
        position: static
    }

    .container {
        width: 100%
    }

    @media (min-width:40rem) {
        .container {
            max-width: 40rem
        }
    }

    @media (min-width:48rem) {
        .container {
            max-width: 48rem
        }
    }

    @media (min-width:64rem) {
        .container {
            max-width: 64rem
        }
    }

    @media (min-width:80rem) {
        .container {
            max-width: 80rem
        }
    }

    @media (min-width:96rem) {
        .container {
            max-width: 96rem
        }
    }

    .block {
        display: block
    }

    .contents {
        display: contents
    }

    .flex {
        display: flex
    }

    .hidden {
        display: none
    }

    .inline {
        display: inline
    }

    .table {
        display: table
    }

    .rotate-180 {
        rotate: 180deg
    }

    .transform {
        transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )
    }

    .transform\! {
        transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, ) !important
    }

    .resize {
        resize: both
    }

    .shadow {
        --tw-shadow: 0 0.1rem 0.3rem 0 var(--tw-shadow-color, #0000001a), 0 0.1rem 0.2rem -0.1rem var(--tw-shadow-color, #0000001a);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }

    .drop-shadow {
        --tw-drop-shadow-size: drop-shadow(0 0.1rem 0.2rem var(--tw-drop-shadow-color, #0000001a)) drop-shadow(0 0.1rem 0.1rem var(--tw-drop-shadow-color, #0000000f));
        --tw-drop-shadow: drop-shadow(0 0.1rem 0.2rem #0000001a) drop-shadow(0 0.1rem 0.1rem #0000000f);
        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, )
    }

    .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, ) !important
    }

    .transition {
        transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration))
    }

    .ease-in {
        --tw-ease: var(--ease-in);
        transition-timing-function: var(--ease-in)
    }

    .ease-in-out {
        --tw-ease: var(--ease-in-out);
        transition-timing-function: var(--ease-in-out)
    }

    .ease-out {
        --tw-ease: var(--ease-out);
        transition-timing-function: var(--ease-out)
    }

    @media (min-width:981px) {
        .min-\[98.1rem\]\:flex {
            display: flex
        }

        .min-\[98.1rem\]\:hidden {
            display: none
        }
    }
}

html {
    font-size: .694445vw;
    overflow-y: scroll
}

html.scroll-locked {
    overflow: hidden
}

@media (min-width:1440px) {
    html {
        font-size: 10px
    }
}

@media (max-width:767px) {
    html {
        font-size: 1.30208vw
    }
}

@media (max-width:430px) {
    html {
        font-size: 2.32558vw
    }
}

:root {
    --layout-container: 144rem;
    --layout-gutter: 3.2rem
}

html body :is(.container, .ds-shell) {
    width: 100%;
    max-width: var(--layout-container);
    padding-inline: var(--layout-gutter);
    margin-inline: auto
}

@media (max-width:767px) {
    :root {
        --layout-gutter: 1.6rem
    }
}

@media (prefers-reduced-motion:reduce) {

    [data-ui-card],
    [data-ui-arrow],
    .text-link,
    .text-link:after,
    .brief-sector-list>a,
    .brief-sector-list>a strong,
    .brief-sector-list>a>span:last-child,
    .button,
    .ds-menu,
    .ui-select-trigger,
    .ui-select-trigger:after,
    .ui-select-option,
    .ui-accordion-item,
    .ui-accordion-trigger,
    .ui-accordion-icon,
    .ui-accordion-icon:before,
    .ui-accordion-icon:after,
    .ui-accordion-panel,
    .radio-group label {
        transition-duration: .01ms !important;
        transform: none !important
    }
}

@property --tw-rotate-x {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-y {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-z {
    syntax: "*";
    inherits: false
}

@property --tw-skew-x {
    syntax: "*";
    inherits: false
}

@property --tw-skew-y {
    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: 0
}

@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-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-ease {
    syntax: "*";
    inherits: false
}