/* Generated by scripts/build-css-bundles.php. Do not edit directly. */

/* source: unified-ui.css */
:root{--app-bg:#f7f9ff;--app-ink:#071a3f;--app-muted:#4f5d73;--app-line:rgba(205,214,231,.72);--app-glass:rgba(255,255,255,.74);--app-shadow:0 18px 55px rgba(38,48,98,.07)}
html{background:var(--app-bg)}body{background:var(--app-bg);color:var(--app-ink)}.public-app,.portal-app,.admin-app{background:radial-gradient(ellipse 70% 55% at 35% 28%,rgba(255,219,241,.34),transparent 68%),radial-gradient(ellipse 65% 70% at 90% 35%,rgba(217,232,255,.55),transparent 70%),linear-gradient(135deg,#fff 0%,#f9faff 48%,#f4f8ff 100%);background-attachment:fixed}.public-app main,.portal-app main{background:transparent}.public-app main>section,.public-app main>article{background-color:transparent!important}.portal-app main>section{background-color:#fff!important}.hero-reference,.company-proof,.section,.task-types-section,.model-section,.cta-section,.page-hero,.services-hero,.service-detail-hero,.services-main,.service-content,.related-services,.supplier-hero,.supplier-access,.form-section,.form-section.tinted,.task-create-hero,.task-form-section,.legal-page,.result-page,.contact-page{background:transparent!important;color:var(--app-ink)!important}.model-section p,.supplier-hero .lead,.model-grid>div>p{color:var(--app-muted)!important}.eyebrow.light{color:#6447e8!important}.price-example,.supplier-panel,.task-types-card,.cta-card,.project-form,.services-grid article,.service-detail-hero aside,.benefit-grid article,.access-card,.legal-page,.result-card,.contact-card,.contact-intro{background:var(--app-glass)!important;border:1px solid var(--app-line)!important;box-shadow:var(--app-shadow)!important;backdrop-filter:blur(22px) saturate(1.2)}footer{background:rgba(255,255,255,.68)!important;color:var(--app-muted)!important;border-top:1px solid var(--app-line);backdrop-filter:blur(22px)}footer strong,.brand-light,footer a{color:var(--app-ink)!important}.company-proof{border-color:var(--app-line)}.public-app .site-header,.portal-topbar{background:rgba(255,255,255,.72)!important;border:1px solid var(--app-line)!important;box-shadow:var(--app-shadow)!important}.nav-scrim,.drawer-close,.mobile-menu-toggle,.mobile-header-logo{display:none}.contact-page{min-height:calc(100vh - 104px);padding:68px 0 90px}.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:28px;align-items:start}.contact-intro,.contact-card{border-radius:14px;padding:38px}.contact-intro h1{font-size:clamp(2.25rem,4vw,3.5rem);line-height:1.1;letter-spacing:-.045em;margin:10px 0 22px}.contact-intro dl{display:grid;gap:0;margin:30px 0 16px}.contact-intro dl div{padding:15px 0;border-top:1px solid var(--app-line)}.contact-intro dt{font-size:.8125rem;color:var(--app-muted);font-weight:700}.contact-intro dd{margin:5px 0 0;font-weight:700}.contact-card h2{font-size:1.5rem;margin:0 0 26px}.contact-card label{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;font-weight:700}.contact-card input,.contact-card select,.contact-card textarea{width:100%;border:1px solid #cfd8e7;border-radius:8px;background:#fff;padding:13px 14px;font:500 1rem Manrope;color:var(--app-ink)}.contact-card input:focus,.contact-card select:focus,.contact-card textarea:focus{outline:0;border-color:#6447ef;box-shadow:0 0 0 3px rgba(100,71,239,.12)}.contact-privacy{font-size:.8125rem;line-height:1.55;color:var(--app-muted)}.contact-privacy a{color:#5e43e5;font-weight:700}.contact-card .button{width:100%}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:1024px){html{scroll-snap-type:none}.public-sidebar,.portal-nav,.admin-body>aside.app-drawer{display:flex!important;position:fixed!important;inset:0 auto 0 0!important;width:min(86vw,340px)!important;height:100dvh!important;z-index:1001!important;transform:translateX(-105%);transition:transform .28s ease;box-shadow:25px 0 60px rgba(15,25,65,.18)!important;padding-top:24px!important;overflow-y:auto}.nav-open .app-drawer{transform:translateX(0)}.nav-scrim{display:block;position:fixed;inset:0;z-index:1000;border:0;background:rgba(7,18,48,.34);opacity:0;pointer-events:none;transition:opacity .25s;backdrop-filter:blur(3px)}.nav-open .nav-scrim{opacity:1;pointer-events:auto}.nav-open{overflow:hidden}.drawer-close{display:grid;place-items:center;position:absolute;right:16px;top:14px;width:38px;height:38px;border:1px solid var(--app-line);border-radius:50%;background:#fff;color:var(--app-ink);font-size:1.6rem;line-height:1;z-index:2}.public-sidebar .shell-logo,.portal-nav .portal-logo{margin-left:20px!important;margin-right:55px!important}.public-sidebar .shell-cta,.portal-nav .gradient-cta{margin-top:15px}.public-sidebar nav a,.portal-nav nav a{justify-content:flex-start!important;padding:0 17px!important}.public-sidebar nav span,.portal-nav nav span,.shell-cta span{display:inline!important}.public-app,.portal-app,.admin-app{margin-left:0!important;min-width:0}.public-app:before,.portal-app:before{inset:0!important}.site-header,.portal-topbar,.admin-app>header{position:sticky!important;top:0!important;margin:0!important;width:100%!important;height:72px!important;border-radius:0!important;z-index:50!important}.site-header .container,.portal-topbar,.admin-app>header{padding:0 18px!important}.nav-wrap{position:relative}.mobile-menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;border:1px solid var(--app-line);border-radius:50%;background:rgba(255,255,255,.82);padding:0 11px}.mobile-menu-toggle span{display:block;width:18px;height:2px;border-radius:2px;background:var(--app-ink)}.mobile-header-logo{display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:82px;z-index:2}.mobile-header-logo img{display:block;width:100%;height:auto}.shell-crumb,.portal-topbar>div:first-of-type,.admin-app>header>div{display:none!important}.site-header nav,.top-actions{margin-left:auto;gap:8px!important}.desktop-help,.desktop-info,.portal-topbar .desktop-help{display:none!important}.circle-link,.top-actions button{width:40px!important;height:40px!important}.portal-topbar .profile span,.portal-logout{display:none!important}.portal-topbar .profile{width:40px!important;padding:0!important;justify-content:center}.portal-app main,.admin-app main{padding-left:18px!important;padding-right:18px!important}.contact-grid{grid-template-columns:1fr}.public-app main>section{min-height:auto!important}.public-app .hero-reference{min-height:calc(100dvh - 72px)!important}.admin-body>aside nav{display:flex!important}.admin-body>aside small{display:block}.admin-app>header>a{margin-left:auto;font-size:0}.admin-app>header>a:after{content:'';font-size:1.1rem}.admin-body>aside .drawer-close{display:grid}}
@media(max-width:700px){.site-header .container,.portal-topbar,.admin-app>header{padding:0 12px!important}.mobile-header-logo{width:72px}.circle-link,.top-actions button,.mobile-menu-toggle{width:39px!important;height:39px!important}.site-header nav{gap:6px!important}.portal-app main,.admin-app main{padding:18px 12px!important}.contact-page{padding:24px 0 55px}.contact-page .container{width:min(100% - 24px,1180px)}.contact-intro,.contact-card{padding:24px;border-radius:12px}.contact-grid{gap:14px}.field-row{grid-template-columns:1fr}.hero-illustration-label{display:none}.hero-grid{gap:18px}.hero-image-wrap{margin-top:8px}.public-app .hero-reference{padding-top:24px!important}.public-app footer{padding-left:0;padding-right:0}}


/* source: portal-readability-fixes.css */
.public-app main>section,
.public-app main>article {
    background-color: transparent !important;
}

.portal-app main>section {
    background-color: #fff !important;
}

.new-thread-card button .icon,
.thread-composer button .icon {
    display: block !important;
    flex: 0 0 auto !important;
    width: 18px !important;
    height: 18px !important;
    color: #fff !important;
    stroke: currentColor !important;
}

.portal-body {
    --app-muted: #4f5d73;
    --muted: #4f5d73;
}

.portal-body :where(
    .dash-head p,
    .portal-topbar span,
    .portal-breadcrumb-page,
    .portal-breadcrumb-separator,
    .table-head,
    .table-row strong small,
    .lead-list-head,
    .lead-list-row small,
    .portal-message-list header p,
    .new-thread-card > p,
    .new-thread-card > small,
    .portal-thread-row small,
    .portal-message-empty,
    .portal-bubble time,
    .thread-composer small,
    .side-card li,
    .side-card p,
    .notifications p span,
    .service-category-copy small,
    .service-group-panel header small,
    .service-empty-state,
    .purchase-summary p,
    .contact-details dt,
    .task-core-details dt,
    .ops-toolbar span,
    .preference-card p,
    .preference-card small
) {
    color: #4f5d73 !important;
}

.portal-topbar .portal-breadcrumb strong,
.portal-body :where(h1, h2, h3, b, strong, dt) {
    color: #071a3f;
}

.portal-home-back {
    margin-top: auto;
    margin-bottom: 14px;
    min-height: 46px;
    padding: 0 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #071a3f;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    border: 1px solid #dce3ef;
    border-radius: 8px;
    background: #fafaff;
    box-shadow: 0 8px 20px rgba(7, 26, 63, .04);
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.portal-home-back:hover {
    background: #f5f7fb;
    border-color: #cdd7e7;
    transform: translateY(-1px);
}

.portal-home-back .icon {
    width: 18px;
    height: 18px;
}

.portal-home-back + .company-link {
    margin-top: 0;
}

@media (max-width: 900px) {
    .portal-home-back span {
        display: none;
    }

    .portal-home-back {
        justify-content: center;
        padding: 0;
        width: 46px;
        align-self: center;
    }
}


/* source: content-layout.css */
:root {
    --content-section-space: clamp(3.5rem, 6vw, 5rem);
    --content-card-radius: 14px;
    --content-card-padding: clamp(1.35rem, 2.6vw, 2.25rem);
    --content-grid-gap: clamp(1rem, 2vw, 1.5rem);
}

html {
    scroll-snap-type: none !important;
}

.public-app main > section,
.public-app main > article,
.page-hero,
.hero-reference,
.flow-section,
.task-types-section,
.model-section,
.cta-section,
.contact-page,
.result-page {
    min-height: 0 !important;
    height: auto;
    scroll-snap-align: none !important;
    scroll-snap-stop: normal !important;
}

.public-app .hero-reference {
    display: block;
    min-height: 0 !important;
    padding: clamp(3rem, 6vw, 5rem) 0;
}

.hero-grid {
    grid-template-columns: minmax(0, .9fr) minmax(460px, 1.1fr);
    gap: clamp(2rem, 4vw, 4rem);
}

.hero-copy {
    min-width: 0;
    padding: 0;
}

.hero h1,
.page-hero h1,
.supplier-hero h1 {
    max-width: 12ch;
    font-size: clamp(2.7rem, 4.2vw, 3.75rem);
    line-height: 1.08;
    margin-bottom: 1.35rem;
}

.hero .lead,
.page-hero .lead,
.supplier-hero .lead {
    max-width: 62ch;
    margin-top: 0;
}

.page-hero h1 {
    max-width: 20ch;
    margin-left: auto;
    margin-right: auto;
}

.hero-actions {
    margin: 1.75rem 0;
}

.hero-image-wrap img {
    width: 110%;
    margin-left: -5%;
}

.company-proof {
    padding: 2.5rem 0;
}

.company-proof p {
    margin-bottom: 1.75rem;
}

.section,
.flow-section,
.model-section,
.supplier-hero,
.supplier-access,
.related-services {
    padding: var(--content-section-space) 0;
}

.section-heading {
    margin-bottom: clamp(2rem, 4vw, 3rem);
}

.section-heading h2,
.model-grid h2 {
    max-width: 20ch;
}

.section-heading:not(.left) h2,
.section-heading:not(.left) p {
    margin-left: auto;
    margin-right: auto;
}

.four-steps {
    gap: var(--content-grid-gap);
    align-items: stretch;
}

.four-steps article,
.content-steps article {
    background: var(--app-glass);
    border: 1px solid var(--app-line);
    border-radius: var(--content-card-radius);
    box-shadow: var(--app-shadow);
    backdrop-filter: blur(18px) saturate(1.15);
}

.four-steps article {
    padding: var(--content-card-padding);
}

.round-icon {
    width: 62px;
    height: 62px;
    margin-bottom: 1.2rem;
}

.task-types-section {
    padding: 0 0 var(--content-section-space);
}

.task-types-card {
    padding: var(--content-card-padding);
    border-radius: var(--content-card-radius);
}

.task-types article,
.benefit-grid article,
.related-grid a,
.example-list li {
    background: rgba(255, 255, 255, .72);
    border-color: var(--app-line);
    box-shadow: 0 9px 25px rgba(38, 48, 98, .045);
}

.model-grid {
    grid-template-columns: minmax(0, 1fr) minmax(340px, .82fr);
    gap: clamp(2.5rem, 6vw, 5rem);
}

.price-example,
.supplier-panel {
    padding: var(--content-card-padding);
    border-radius: var(--content-card-radius);
}

.cta-section,
.services-cta {
    padding: clamp(2.5rem, 5vw, 4rem) 0;
}

.cta-card {
    padding: clamp(1.75rem, 4vw, 2.75rem);
    gap: 2rem;
    border-radius: var(--content-card-radius);
}

.cta-card h2 {
    font-size: clamp(1.8rem, 3vw, 2.35rem);
}

.page-hero,
.services-hero,
.service-detail-hero,
.task-create-hero {
    padding: clamp(3rem, 5vw, 4rem) 0 clamp(2.5rem, 4vw, 3.25rem);
}

.page-hero.compact {
    padding: 3.5rem 0;
}

.content-steps {
    max-width: 960px;
}

.content-steps article {
    grid-template-columns: 64px 1fr;
    gap: 1.25rem;
    margin-bottom: 1rem;
    padding: var(--content-card-padding);
}

.content-steps article > span {
    width: 54px;
    height: 54px;
}

.services-main,
.service-content,
.form-section,
.task-form-section,
.contact-page,
.legal-page {
    padding: clamp(2.75rem, 5vw, 4.5rem) 0;
}

.breadcrumbs {
    margin-bottom: 2rem;
}

.services-grid,
.benefit-grid,
.related-grid {
    gap: var(--content-grid-gap);
}

.services-grid article,
.benefit-grid article,
.related-grid a {
    min-height: 0;
    padding: var(--content-card-padding);
    border-radius: var(--content-card-radius);
}

.contact-page {
    min-height: 0;
}

.contact-grid {
    gap: var(--content-grid-gap);
}

.contact-intro,
.contact-card {
    padding: var(--content-card-padding);
    border-radius: var(--content-card-radius);
}

.result-page {
    display: block;
    padding: clamp(3.5rem, 8vw, 6rem) 1.5rem;
}

.result-card {
    margin: 0 auto;
}

.portal-app main,
.admin-app main {
    width: 100%;
}

.portal-app .dash-head {
    padding: 2rem .625rem 1.25rem;
}

.portal-app .dashboard-grid,
.portal-app .market-grid,
.portal-app .preview-layout,
.portal-app .lead-detail-grid,
.portal-app .lead-list-card,
.portal-app .profile-shell,
.portal-app .ops-table {
    margin-bottom: 1.5rem;
}

.metric-grid,
.tables-grid,
.dashboard-grid {
    gap: var(--content-grid-gap);
}

.metric-grid article,
.data-card,
.side-card,
.market-card,
.portal-detail-card,
.purchase-card,
.lead-list-card,
.purchase-summary,
.ops-table,
.profile-shell,
.team-list,
.invite-card {
    border-radius: var(--content-card-radius);
}

.admin-app main {
    max-width: 1600px;
    padding: 2rem clamp(1.5rem, 3vw, 2.5rem) 3rem;
}

.admin-grid,
.admin-metrics {
    gap: var(--content-grid-gap);
}

.admin-panel,
.admin-metrics article {
    border-radius: var(--content-card-radius);
}

@media (max-width: 1100px) {
    .hero-grid,
    .model-grid {
        grid-template-columns: 1fr;
    }

    .hero-image-wrap {
        max-width: 760px;
        margin: 0 auto;
    }

    .hero-copy {
        max-width: 760px;
    }
}

@media (max-width: 1024px) {
    .public-app .hero-reference {
        min-height: 0 !important;
    }

    .portal-app main,
    .admin-app main {
        padding-top: 1.5rem !important;
    }
}

@media (max-width: 800px) {
    :root {
        --content-section-space: 3.25rem;
    }

    .hero h1,
    .page-hero h1,
    .supplier-hero h1 {
        max-width: none;
        font-size: clamp(2.25rem, 10vw, 3rem);
    }

    .four-steps,
    .benefit-grid {
        grid-template-columns: 1fr;
    }

    .four-steps article {
        text-align: left;
    }

    .round-icon {
        margin-left: 0;
    }
}

@media (max-width: 520px) {
    .container {
        width: min(100% - 24px, 1180px);
    }

    .public-app .hero-reference,
    .page-hero,
    .services-hero,
    .service-detail-hero,
    .task-create-hero {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }

    .hero-actions {
        gap: .85rem;
        margin: 1.5rem 0;
    }

    .hero-actions .button,
    .hero-actions .play-link {
        width: 100%;
    }

    .task-types-card {
        border-left: 1px solid var(--app-line);
        border-right: 1px solid var(--app-line);
        border-radius: var(--content-card-radius);
    }

    .content-steps article {
        grid-template-columns: 1fr;
    }

    .cta-card .button {
        width: 100%;
    }
}

/* En indlejret container må ikke skabe ekstra sideafstand på små skærme. */
@media (max-width: 800px) {
    .container .container {
        width: 100% !important;
        max-width: none !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}


/* source: public-interactions.css */
.public-app,
.portal-app,
.admin-app {
    background: #f7f8ff;
}

.public-app main,
.portal-app main,
.admin-app main {
    background:
        radial-gradient(circle at 8% 14%, rgba(172, 132, 255, .28) 0, rgba(172, 132, 255, .12) 22%, transparent 43%),
        radial-gradient(circle at 91% 17%, rgba(96, 181, 255, .30) 0, rgba(96, 181, 255, .12) 25%, transparent 46%),
        radial-gradient(circle at 18% 82%, rgba(255, 107, 187, .24) 0, rgba(255, 107, 187, .09) 23%, transparent 44%),
        radial-gradient(circle at 84% 78%, rgba(118, 105, 255, .19) 0, transparent 39%),
        linear-gradient(135deg, #fbf8ff 0%, #f7faff 48%, #fff8fc 100%);
    background-attachment: fixed;
}

.public-app main,
.portal-app main {
    min-height: calc(100vh - 104px);
}

.practical-menu {
    position: relative;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid var(--app-line, #e0e5ef);
}

.public-sidebar > .shell-logo,
.public-sidebar > .shell-cta,
.public-sidebar > nav {
    flex: none;
}

.shell-practical {
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 0 15px;
    border: 0;
    background: transparent;
    color: #071a3a;
    display: flex;
    align-items: center;
    gap: 15px;
    cursor: pointer;
    text-align: left;
}

.shell-practical:hover,
.practical-menu.is-open .shell-practical {
    color: #6044f3;
    background: rgba(240, 239, 255, .75);
    border-radius: 9px;
}

.practical-chevron {
    width: 17px !important;
    height: 17px !important;
    margin-left: auto;
    transition: transform .25s ease;
}

.practical-menu.is-open .practical-chevron {
    transform: rotate(180deg);
}

.practical-links {
    display: grid;
    grid-template-rows: repeat(8, 0fr);
    gap: 0 !important;
    margin: 0 !important;
    opacity: 0;
    visibility: hidden;
    padding: 0 7px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0);
    box-shadow: 0 12px 35px rgba(36, 43, 91, 0);
    transition: grid-template-rows .28s ease, opacity .2s ease, padding .28s ease, visibility 0s linear .28s;
}

.public-sidebar .practical-links a {
    display: flex;
    align-items: center;
    height: auto;
    min-height: 0;
    overflow: hidden;
    padding: 0 12px;
    color: #526079;
    border-radius: 7px;
    font-size: .78rem;
    line-height: 0;
    transition: padding .28s ease, line-height .28s ease, background .18s, color .18s;
}

.practical-menu.is-open .practical-links {
    grid-template-rows: repeat(8, 1fr);
    opacity: 1;
    visibility: visible;
    padding: 5px 7px 10px;
    border-color: rgba(213, 220, 235, .72);
    background: rgba(255, 255, 255, .68);
    box-shadow: 0 12px 35px rgba(36, 43, 91, .07);
    transition-delay: 0s;
}

.public-sidebar .practical-menu.is-open .practical-links a {
    padding: 8px 12px;
    line-height: 1.2;
}

.practical-links a:hover {
    color: #6044f3;
    background: rgba(240, 239, 255, .82);
}

.login-trigger {
    appearance: none;
    background: rgba(255, 255, 255, .78);
    color: var(--app-ink, #071a3f);
    cursor: pointer;
}

.supplier-login-modal {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: grid;
    place-items: center;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity .22s ease, visibility 0s linear .22s;
}

.supplier-login-modal.is-open {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s;
}

.login-modal-scrim {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(11, 21, 52, .34);
    backdrop-filter: blur(8px);
}

.login-dialog {
    position: relative;
    width: min(440px, 100%);
    max-height: calc(100dvh - 40px);
    overflow-y: auto;
    padding: clamp(1.6rem, 4vw, 2.35rem);
    border: 1px solid rgba(255, 255, 255, .82);
    border-radius: 18px;
    background: rgba(255, 255, 255, .84);
    box-shadow: 0 30px 90px rgba(36, 35, 95, .24);
    backdrop-filter: blur(28px) saturate(1.25);
    transform: translateY(14px) scale(.98);
    transition: transform .25s ease;
}

.supplier-login-modal.is-open .login-dialog {
    transform: translateY(0) scale(1);
}

/* Supplier access gateway */
.supplier-login-modal{padding:clamp(16px,3vw,42px);background:rgba(7,26,63,.08)}
.login-modal-scrim{background:rgba(7,26,63,.5);backdrop-filter:blur(14px)}
.supplier-access-dialog{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);width:min(1080px,100%);min-height:min(680px,calc(100dvh - 72px));max-height:calc(100dvh - 72px);padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.9);border-radius:28px;background:#fff;box-shadow:0 40px 110px rgba(7,26,63,.35);backdrop-filter:none}
.supplier-access-main{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(2rem,5vw,5.5rem)}
.supplier-access-step{max-width:500px}.supplier-access-step[hidden]{display:none!important}.supplier-access-step .eyebrow{display:inline-flex;margin-bottom:18px;padding:6px 10px;border-radius:999px;background:#f0f3f8;color:#071a3f;font-size:.75rem;letter-spacing:0}.supplier-access-step h2{max-width:480px;margin:0 0 14px;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;letter-spacing:-.055em}.supplier-access-step>p{max-width:470px;margin:0 0 30px;color:#52627c;font-size:1rem;line-height:1.65}.supplier-access-step form{display:grid;gap:18px}.supplier-access-step label{display:grid;gap:8px;color:#12294f;font-size:.9rem;font-weight:500!important}.supplier-access-step input{min-height:56px;padding:0 16px;border:1px solid #d4ddea;border-radius:12px;background:#fff;color:#071a3f;font-size:1rem;transition:border-color .2s,box-shadow .2s}.supplier-access-step input[readonly]{background:#f9fafb;color:#52627c}.supplier-access-step input:focus{border-color:#593cff;box-shadow:0 0 0 4px rgba(89,60,255,.12);outline:0}.supplier-access-step .button{display:inline-flex;justify-content:center;gap:10px;min-height:54px;border:0;border-radius:12px;font-size:.95rem}.supplier-access-step .button[disabled]{opacity:.65;cursor:wait}.supplier-access-note{display:flex;align-items:flex-start;gap:9px;margin:18px 0 0!important;color:#697991!important;font-size:.8rem!important;line-height:1.5!important}.supplier-access-note .icon{width:17px;height:17px;flex:none;color:#593cff}.supplier-access-back{display:inline-flex;align-items:center;gap:8px;width:max-content;margin:0 0 25px;padding:0;border:0;background:transparent;color:#52627c;font-size:.85rem;font-weight:500!important}.supplier-access-back:hover{color:#071a3f}.supplier-access-back .icon{width:17px;height:17px}.supplier-access-steps{display:grid;gap:16px;margin:0 0 28px;padding:0;list-style:none}.supplier-access-steps li{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start}.supplier-access-steps li>span{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:#f0f3f8;color:#071a3f;font-size:.8rem;font-weight:500!important}.supplier-access-steps b,.supplier-access-steps small{display:block}.supplier-access-steps b{margin:1px 0 3px;color:#12294f;font-size:.95rem;font-weight:500!important}.supplier-access-steps small{color:#66758c;font-size:.8rem;line-height:1.45}.supplier-access-legal{margin:18px 0 0!important;color:#6a7890!important;font-size:.77rem!important;line-height:1.55!important}.supplier-access-legal a{color:#071a3f;text-decoration:underline;text-underline-offset:3px}.supplier-access-aside{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(2rem,4vw,4rem);overflow:hidden;background:linear-gradient(145deg,#071a3f 0%,#172e61 58%,#593cff 150%);color:#fff}.supplier-access-aside:before{content:'';position:absolute;right:-30%;bottom:-32%;width:450px;height:450px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.04),0 0 0 140px rgba(255,255,255,.025)}.supplier-access-aside>*{position:relative;z-index:1}.supplier-access-brand{display:block;width:78px}.supplier-access-brand img{display:block;width:100%;height:auto;filter:brightness(0) invert(1)}.supplier-access-aside .eyebrow{display:block;margin:0 0 13px;color:#dfe7ff;font-size:.72rem;letter-spacing:.12em}.supplier-access-aside h3{max-width:330px;margin:0 0 14px;color:#fff;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:500!important;line-height:1.08;letter-spacing:-.04em}.supplier-access-aside p{max-width:330px;margin:0;color:#d5def2;font-size:.92rem;line-height:1.65}.supplier-access-aside ul{display:grid;gap:12px;margin:32px 0;padding:0;list-style:none;color:#fff;font-size:.86rem}.supplier-access-aside li{display:flex;align-items:center;gap:9px}.supplier-access-aside li .icon{width:18px;height:18px;color:#fff}.supplier-access-aside-links{display:flex;flex-wrap:wrap;gap:15px}.supplier-access-aside-links a{display:inline-flex;align-items:center;gap:6px;color:#fff;font-size:.8rem;text-decoration:none}.supplier-access-aside-links .icon{width:15px;height:15px}.supplier-access-dialog .login-dialog-close{z-index:3;border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.9)}

@media(max-width:760px){.supplier-login-modal{align-items:stretch;padding:0}.supplier-access-dialog{grid-template-columns:1fr;width:100%;min-height:100dvh;max-height:100dvh;border:0;border-radius:0}.supplier-access-main{order:2;justify-content:flex-start;overflow-y:auto;padding:clamp(5.5rem,12vw,7rem) 24px 38px}.supplier-access-aside{order:1;min-height:228px;padding:25px 24px 28px}.supplier-access-aside>div:nth-of-type(1){margin-top:36px}.supplier-access-aside h3{font-size:1.65rem}.supplier-access-aside p,.supplier-access-aside ul,.supplier-access-aside-links{display:none}.supplier-access-brand{width:70px}.supplier-access-dialog .login-dialog-close{top:18px;right:18px}.supplier-access-step h2{font-size:2.25rem}.supplier-access-step>p{margin-bottom:25px}.supplier-access-step .button{width:100%}}

.login-dialog-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 38px;
    height: 38px;
    border: 1px solid var(--app-line, #dce3ef);
    border-radius: 50%;
    background: rgba(255, 255, 255, .8);
    color: #071a3f;
    font-size: 1.45rem;
    line-height: 1;
    cursor: pointer;
}

.login-dialog h2 {
    margin: .35rem 0 .5rem;
    font-size: 1.8rem;
}

.login-dialog > p {
    margin: 0 0 1.4rem;
    color: #68748c;
    line-height: 1.6;
}

.login-dialog form > label {
    margin-bottom: 1rem;
}

.login-dialog input[type="email"],
.login-dialog input[type="password"] {
    width: 100%;
    padding: 13px 14px;
    border: 1px solid #cfd8e7;
    border-radius: 8px;
    background: rgba(255, 255, 255, .9);
    outline: 0;
}

.login-dialog input:focus {
    border-color: #6547ef;
    box-shadow: 0 0 0 3px rgba(101, 71, 239, .12);
}

.login-dialog-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: .25rem 0 1.25rem;
    font-size: .8rem;
}

.login-dialog-row a,
.login-dialog-signup a {
    color: #6044e5;
    font-weight: 700;
}

.login-remember {
    flex-direction: row;
    align-items: center;
    gap: 8px;
    margin: 0;
    font-weight: 500;
}

.login-remember input {
    accent-color: #6547ef;
}

.login-dialog .button {
    width: 100%;
}

.login-dialog .login-dialog-signup {
    margin: 1.25rem 0 0;
    text-align: center;
    font-size: .8rem;
}

.login-modal-error {
    margin-bottom: 1rem;
    padding: 11px 13px;
    border: 1px solid #f4caca;
    border-radius: 8px;
    background: #fff0f0;
    color: #9b2424;
    font-size: .8rem;
}

.login-modal-open {
    overflow: hidden;
}

@media (max-width: 1024px) {
    .practical-menu {
        margin-top: auto;
    }

    .public-sidebar .practical-menu.is-open .practical-links a {
        padding: 6px 12px !important;
        line-height: 1.25;
    }
}

@media (max-width: 520px) {
    .supplier-login-modal {
        align-items: end;
        padding: 10px;
    }

    .login-dialog {
        width: 100%;
        max-height: calc(100dvh - 20px);
        border-radius: 18px 18px 12px 12px;
    }
}
.supplier-session-link{display:inline-flex;align-items:center;gap:9px;min-height:42px;max-width:240px;padding:0 14px;border:1px solid var(--app-line);border-radius:999px;background:rgba(255,255,255,.82);color:var(--app-ink);font-weight:750;box-shadow:0 8px 24px rgba(30,43,91,.06)}.supplier-session-link .icon{width:19px;height:19px;flex:none}.supplier-session-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.supplier-session-link{width:39px;min-width:39px;height:39px;padding:0;justify-content:center}.supplier-session-link span{display:none}}
.circle-link.create-task-expand{display:flex!important;justify-content:flex-start!important;gap:0;width:43px;overflow:hidden;white-space:nowrap;transition:width .28s ease,box-shadow .28s ease;padding:0 10px!important}.circle-link.create-task-expand .icon{flex:0 0 23px}.circle-link.create-task-expand span{max-width:0;overflow:hidden;opacity:0;font-size:14px;transition:max-width .28s ease,opacity .2s ease,margin .28s ease}.circle-link.create-task-expand:hover,.circle-link.create-task-expand:focus-visible{width:148px;box-shadow:0 12px 30px rgba(126,54,217,.24)}.circle-link.create-task-expand:hover span,.circle-link.create-task-expand:focus-visible span{max-width:100px;opacity:1;margin-left:9px}@media(max-width:1024px){.circle-link.create-task-expand,.circle-link.create-task-expand:hover,.circle-link.create-task-expand:focus-visible{width:40px!important;padding:0 8px!important}.circle-link.create-task-expand span{display:none}}
.footer-mobile-head{display:none}.footer-logo{display:block;width:94px}.footer-logo img{display:block;width:100%;height:auto}@media(max-width:800px){.public-app footer{padding:16px 0 14px!important}.footer-mobile-head{display:flex;align-items:center;justify-content:space-between}.footer-mobile-head a{display:block;width:82px}.footer-mobile-head img{display:block;width:100%;height:auto}.footer-mobile-head button{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--app-line);border-radius:50%;background:rgba(255,255,255,.78);color:var(--app-ink)}.footer-mobile-head button .icon{width:21px;height:21px;transition:transform .3s ease}.public-app footer[data-ready] [data-footer-content],.public-app footer [data-footer-content]{max-height:0;opacity:0;overflow:hidden;visibility:hidden;transition:max-height .38s ease,opacity .25s ease,visibility 0s linear .38s}.public-app footer.is-open [data-footer-content]{max-height:1100px;opacity:1;visibility:visible;transition:max-height .45s ease,opacity .3s ease}.public-app footer.is-open .footer-mobile-head button .icon{transform:rotate(45deg)}.footer-grid{padding-top:28px}.footer-grid>div:first-child{display:none}.footer-bottom{margin-top:24px!important;padding-top:0!important;line-height:1.65}}


/* source: visual-foundation.css */
:root {
    --text-xs: .8125rem;
    --text-sm: .875rem;
    --text-base: 1rem;
    --ambient-background:
        radial-gradient(ellipse 68% 54% at -5% 7%, rgba(197, 174, 255, .18), transparent 67%),
        radial-gradient(ellipse 66% 58% at 105% 12%, rgba(173, 215, 255, .20), transparent 68%),
        radial-gradient(ellipse 58% 52% at 8% 98%, rgba(255, 190, 224, .16), transparent 68%),
        radial-gradient(ellipse 50% 48% at 96% 92%, rgba(213, 195, 255, .13), transparent 70%),
        linear-gradient(135deg, #fcfaff 0%, #fbfdff 48%, #fffafd 100%);
}

html,
body {
    background: #f9fafb;
}

.public-app,
.portal-app,
.admin-app {
    background: #f9fafb !important;
}

.public-app main,
.portal-app main,
.admin-app main {
    background: transparent !important;
}

.public-app footer {
    background: rgba(255, 255, 255, .46) !important;
    border-top: 1px solid rgba(210, 218, 234, .72);
    backdrop-filter: blur(24px) saturate(1.18);
}

.public-app .site-header,
.public-sidebar,
.portal-topbar,
.portal-nav {
    background-color: rgba(255, 255, 255, .82) !important;
}

small,
.eyebrow,
.trust-line,
.hero-illustration-label,
.task-types p,
.price-example small,
.price-example p,
.supplier-panel > span,
.footer-bottom,
.form-progress,
.project-form label > small,
.choice-card em,
.choice-card small,
.submit-note,
.service-index,
.breadcrumbs,
.contact-privacy,
.login-dialog-row,
.login-dialog-signup,
.login-modal-error,
.metric-grid small,
.metric-grid span,
.data-card h2 b,
.data-card header a,
.side-card header a,
.table-head,
.table-row,
.table-row strong small,
.table-row button,
.side-card > button,
.status,
.side-card p,
.side-card li,
.notifications p,
.notifications p span,
.quick button span,
.market-card header,
.market-card dt,
.preview-details dt,
.contact-details dt,
.purchase-summary dt,
.privacy-label,
.portal-detail-card > span,
.purchase-card > span,
.purchase-card > small,
.purchase-card > p,
.purchase-summary > p,
.purchase-card form label,
.lead-list-head,
.lead-list-row,
.lead-list-row a,
.portal-alert,
.admin-app aside small,
.admin-app .status,
.admin-row small,
.admin-row > span,
.filter-tabs,
.ops-admin-row,
.company-row,
.notice,
.launch-list small {
    font-size: 13px !important;
}

.public-app main,
.portal-app main,
.admin-app main {
    font-size: 14px;
}

.public-app main p,
.public-app main li,
.public-app main label,
.public-app main input,
.public-app main select,
.public-app main textarea {
    line-height: 1.65;
}

.public-app main h1 {
    font-size: clamp(2.5rem, 4.2vw, 3.75rem);
    line-height: 1.08;
}

.public-app main h2 {
    font-size: clamp(1.7rem, 3vw, 2.35rem);
    line-height: 1.2;
}

.public-app main h3 {
    font-size: clamp(1.1rem, 1.7vw, 1.35rem);
    line-height: 1.3;
}

.portal-app main h1,
.admin-app main h1,
.dash-head h1,
.page-title h1 {
    font-size: clamp(1.75rem, 3vw, 2rem) !important;
    line-height: 1.2;
}

.portal-app main h2,
.admin-app main h2 {
    font-size: clamp(1rem, 1.7vw, 1.2rem);
    line-height: 1.3;
}

.mobile-menu-toggle {
    display: none;
}

.mobile-menu-toggle svg {
    width: 22px;
    height: 22px;
    stroke-width: 1.9;
}

.public-sidebar .practical-links a {
    font-size: 14px;
    font-weight: 500;
}

.task-form-layout .form-aside {
    position: sticky;
    top: 104px;
    padding: clamp(1.4rem, 2.5vw, 1.8rem);
    color: #071a3f !important;
    background: rgba(255, 255, 255, .76) !important;
    border: 1px solid rgba(205, 214, 232, .78);
    border-radius: 15px;
    box-shadow: 0 20px 60px rgba(34, 45, 96, .08);
    backdrop-filter: blur(24px) saturate(1.18);
}

.task-form-layout .form-aside h2 {
    margin: 0 0 1rem;
    color: #071a3f !important;
    font-size: 1.4rem;
}

.task-form-layout .form-aside ul,
.task-form-layout .form-aside ol {
    display: grid;
    gap: .6rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.task-form-layout .form-aside li {
    position: relative;
    min-height: 42px;
    padding: .65rem .7rem .65rem 2.65rem;
    color: #42516c;
    background: rgba(255, 255, 255, .7);
    border: 1px solid rgba(219, 225, 237, .8);
    border-radius: 9px;
    font-size: 14px;
    line-height: 1.45;
}

.task-form-layout .form-aside ul li::before {
    content: "";
    position: absolute;
    left: .8rem;
    top: .75rem;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #e2f8eb;
    border: 1px solid #bce9cf;
}

.task-form-layout .form-aside ul li::after {
    content: "";
    position: absolute;
    left: 1.17rem;
    top: 1.02rem;
    width: 7px;
    height: 4px;
    border-left: 2px solid #0a9b52;
    border-bottom: 2px solid #0a9b52;
    transform: rotate(-45deg);
}

.task-form-layout .aside-process {
    margin-top: 1.35rem;
    padding-top: 1.25rem;
    border-top: 1px solid rgba(210, 218, 233, .82);
    counter-reset: process-step;
}

.task-form-layout .aside-process > b {
    display: block;
    margin-bottom: .85rem;
    color: #071a3f;
    font-size: 1.05rem;
}

.task-form-layout .aside-process ol li {
    counter-increment: process-step;
}

.task-form-layout .aside-process ol li::before {
    content: counter(process-step);
    position: absolute;
    left: .75rem;
    top: .68rem;
    display: grid;
    place-items: center;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(135deg, #6647f5, #e548ab);
    font-size: 13px;
    font-weight: 800;
}

@media (max-width: 1024px) {
    .mobile-menu-toggle {
        display: grid;
        place-items: center;
        padding: 0 !important;
    }

    .task-form-layout .form-aside {
        position: static;
    }

    .public-sidebar .practical-menu.is-open .practical-links a {
        min-height: 38px;
        padding: 9px 12px !important;
        font-size: 14px;
    }
}

@media (max-width: 520px) {
    .public-app main h1 {
        font-size: clamp(2.15rem, 10vw, 2.75rem);
    }

    .public-app main h2 {
        font-size: clamp(1.5rem, 7vw, 1.9rem);
    }
}


/* source: revision-ui.css */
/* Final shared UI layer: readable type, Bootstrap Icons and revised components. */
:root{--text-xs:.8125rem}
small,.eyebrow,.footer-bottom,.table-head,.table-row,.status{font-size:max(.8125rem,1em)}
.icon{display:inline-block;width:1.25em;height:1.25em;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2;vector-effect:non-scaling-stroke}
.public-sidebar nav>a>.icon,.portal-nav nav>a>.icon{flex:0 0 22px;width:22px;height:22px}
.shell-cta>.icon,.gradient-cta>.icon{width:20px;height:20px}
.circle-link>.icon,.mobile-menu-toggle>.icon{width:21px;height:21px}
.mobile-menu-toggle{line-height:1}
.footer-bottom{border-top:0!important}

.company-proof{padding:26px 0;background:rgba(255,255,255,.56)}
.company-proof .container>p{text-align:center;margin:0 0 18px;color:#66728b;font-weight:700}
.proof-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.proof-grid>span{min-height:72px;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px;border:1px solid rgba(207,216,231,.8);border-radius:16px;background:rgba(255,255,255,.72);box-shadow:0 12px 36px rgba(22,39,81,.06);backdrop-filter:blur(14px)}
.proof-grid .icon{width:22px;height:22px;color:#6546ed}

.task-example{padding:30px;border:1px solid rgba(255,255,255,.45);border-radius:22px;background:rgba(255,255,255,.93);color:#071a3f;box-shadow:0 24px 70px rgba(4,18,53,.18)}
.task-example-label,.task-example-note{display:flex;align-items:center;gap:9px;color:#65718b;font-size:.8125rem;font-weight:700}
.task-example h3{font-size:1.45rem;margin:18px 0 8px}.task-example>p{color:#59667d;line-height:1.65}
.task-example dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}
.task-example dl>div{padding:13px;border:1px solid #e2e6f0;border-radius:12px;background:#f9faff}
.task-example dt{color:#6b7690;font-size:.8125rem}.task-example dd{margin:5px 0 0;font-weight:750}

.services-cta-card,.faq-list details,.supplier-faq .faq-list details{border:1px solid rgba(207,216,231,.86);background:rgba(255,255,255,.88);box-shadow:0 14px 44px rgba(26,39,84,.07);backdrop-filter:blur(14px)}
.services-cta-card{padding:clamp(28px,4vw,52px);border-radius:22px}
.faq-section,.supplier-faq{padding:70px 0}
.faq-list{display:grid;gap:12px;max-width:900px;margin:32px auto 0}
.faq-list details{border-radius:15px;padding:0 20px}
.faq-list summary{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-weight:750;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}.faq-list summary .icon{width:18px;height:18px;color:#6546ed;transition:transform .2s}.faq-list details[open] summary .icon{transform:rotate(45deg)}
.faq-list details p{margin:0;padding:0 36px 20px 0;color:#59667d;line-height:1.7}

.field-label{display:flex;align-items:baseline;gap:7px}.field-label small{display:inline;margin:0!important;color:#77839a;font-weight:500}
.supplier-choices{grid-template-columns:repeat(3,1fr)!important}.supplier-choices .choice-card-wide{grid-column:1/-1}
.region-selector{margin-top:16px;padding:18px;border:1px solid #dfe4ef;border-radius:14px;background:#f9faff}
.region-selector[hidden]{display:none!important}.region-selector>p{margin:0 0 14px;font-weight:700}
.region-group{padding:12px 0;border-top:1px solid #e5e8f1}.region-group:first-of-type{border-top:0}
.region-group label{display:flex!important;align-items:center;gap:9px;margin:0!important}.region-group input{width:18px!important;height:18px!important;margin:0!important}
.region-parent{font-weight:800}.region-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;padding:12px 0 0 28px}
.supplier-signup-button{display:inline-flex!important;align-items:center;justify-content:center;min-height:52px;padding:0 24px!important;background:#fff!important;color:#071a3f!important;border:1px solid rgba(255,255,255,.65)!important;border-radius:10px;text-decoration:none;font-weight:750;box-shadow:0 12px 30px rgba(4,18,53,.16)}

/* Portal icon selectors are deliberately separated from numeric badges. */
.portal-nav nav i{margin-left:0;background:transparent;color:inherit;width:22px;height:22px;border-radius:0;font-size:20px}
.portal-nav nav .nav-count{margin-left:auto;background:var(--pink);color:#fff;width:24px;height:24px;border-radius:50%;font-size:13px}
.top-actions button>i{position:static;background:transparent;color:inherit;width:auto;height:auto;border-radius:0;font-size:19px}
.top-actions button>.action-count{position:absolute;top:-5px;right:-3px;background:var(--pink);color:#fff;width:20px;height:20px;border-radius:50%;font-size:13px}
.metric-grid article>i{width:36px;height:36px;border-radius:10px;background:#f0efff;color:#6546ed;font-size:19px;margin-bottom:8px}
.company-link>.icon{width:20px;height:20px}.company-link>.icon:last-child{margin-left:auto}
.admin-body aside nav a{display:flex;align-items:center;gap:11px}.admin-body aside nav a>.icon{width:19px;height:19px}
.launch-status-icon{display:grid;place-items:center;width:27px;height:27px;border-radius:50%}.launch-status-icon .icon{width:17px;height:17px}.launch-list .passed .launch-status-icon{background:#dcf8e8;color:#087c45}.launch-list .blocked .launch-status-icon{background:#fff0df;color:#aa6208}
.example-list li{display:flex;align-items:center;gap:12px;padding-left:15px!important}.example-list li::before{content:none!important}.example-list li>.icon{width:20px;height:20px;color:#08a856}
.task-form-layout .form-aside ul li{display:flex;align-items:center;gap:10px;padding-left:.7rem}.task-form-layout .form-aside ul li::before,.task-form-layout .form-aside ul li::after{content:none!important}.task-form-layout .form-aside ul li>.icon{width:20px;height:20px;color:#0a9b52}
.back-link,.portal-back{display:inline-flex;align-items:center;gap:7px}.back-link>.icon,.portal-back>.icon{width:16px;height:16px}.admin-app>header>a{display:inline-flex;align-items:center;gap:7px}.admin-app>header>a>.icon{width:16px;height:16px}

@media(max-width:900px){.proof-grid{grid-template-columns:repeat(2,1fr)}.proof-grid>span:last-child{grid-column:1/-1}.supplier-choices{grid-template-columns:1fr!important}.supplier-choices .choice-card-wide{grid-column:auto}.region-group>div{grid-template-columns:1fr}.task-example dl{grid-template-columns:1fr}}
@media(max-width:560px){.proof-grid{grid-template-columns:1fr}.proof-grid>span:last-child{grid-column:auto}.company-proof{padding:20px 0}.task-example{padding:22px}.faq-section,.supplier-faq{padding:48px 0}.faq-list details{padding:0 16px}}

/* Sticky floating navigation and tighter responsive composition. */
@media(min-width:1025px){
    .public-app .site-header{
        position:sticky!important;
        top:20px;
        z-index:80;
        background:rgba(255,255,255,.74)!important;
        border-color:rgba(206,215,231,.78)!important;
        box-shadow:0 16px 46px rgba(30,43,91,.10)!important;
        backdrop-filter:blur(24px) saturate(1.28);
        -webkit-backdrop-filter:blur(24px) saturate(1.28);
    }
}

@media(max-width:1024px){
    :root{--content-section-space:clamp(2rem,5vw,3rem)}
    .app-drawer{
        background:rgba(255,255,255,.90)!important;
        border-right:1px solid rgba(205,214,231,.82)!important;
        box-shadow:24px 0 60px rgba(23,36,79,.16)!important;
        backdrop-filter:blur(30px) saturate(1.28)!important;
        -webkit-backdrop-filter:blur(30px) saturate(1.28)!important;
    }
    .site-header,.portal-topbar,.admin-app>header{
        background:rgba(255,255,255,.78)!important;
        border-color:rgba(205,214,231,.76)!important;
        box-shadow:0 10px 32px rgba(30,43,91,.08)!important;
        backdrop-filter:blur(24px) saturate(1.25);
        -webkit-backdrop-filter:blur(24px) saturate(1.25);
    }
    .public-app .hero-reference{padding:2rem 0!important}
    .hero-grid{gap:1.5rem}
    .section-heading{margin-bottom:1.75rem}
    .company-proof{padding:1.5rem 0}
    .cta-section,.services-cta{padding:2rem 0}
}

.hero-mobile-image{display:none}

@media(max-width:1024px){
    .hero-copy .hero-mobile-image{display:block;margin:0 0 1.5rem;overflow:hidden;border-radius:14px}
    .hero-copy .hero-mobile-image img{display:block;width:100%;height:auto;margin:0}
    .hero-grid>.hero-image-wrap{display:none}
}

@media(max-width:800px){
    .container{width:min(100% - 24px,1180px)}
    .public-app main h1{font-size:clamp(2rem,9vw,2.65rem)}
    .public-app main h2{font-size:clamp(1.45rem,6.5vw,1.9rem)}
    .hero-copy,
    .page-hero>.container,
    .services-hero>.container,
    .task-create-hero>.container,
    .flow-section>.container,
    .contact-intro,
    .contact-card{
        padding:20px;
        border:1px solid rgba(207,216,231,.82);
        border-radius:18px;
        background:rgba(255,255,255,.76);
        box-shadow:0 14px 42px rgba(28,42,88,.07);
        backdrop-filter:blur(18px) saturate(1.15);
    }
    .hero-copy{max-width:none}
    .hero-copy .lead{font-size:1rem;line-height:1.65}
    .hero-actions{margin:1.25rem 0;gap:.75rem}
    .trust-line{gap:.6rem 1rem}
    .hero-image-wrap{overflow:hidden;border:1px solid rgba(207,216,231,.76);border-radius:18px;background:rgba(255,255,255,.68);box-shadow:0 14px 42px rgba(28,42,88,.06)}
    .hero-image-wrap img{width:100%;margin:0}
    .page-hero,.services-hero,.service-detail-hero,.task-create-hero{padding:1.5rem 0!important}
    .flow-section,.section,.supplier-access,.related-services,.services-main,.service-content,.form-section,.task-form-section,.contact-page,.legal-page{padding:2rem 0}
    .four-steps{gap:.75rem}
    .four-steps article,.content-steps article,.services-grid article,.benefit-grid article{padding:18px}
    .round-icon{width:50px;height:50px;margin-bottom:.8rem}
    .faq-section,.supplier-faq{padding:2rem 0}
    .faq-list{margin-top:1rem;gap:.65rem}
    .faq-list summary{min-height:56px}
    .task-types-card,.services-cta-card,.cta-card{padding:20px}
    .footer-grid{gap:1.5rem}.public-app footer{padding-top:2rem}
}

@media(max-width:480px){
    .public-app .hero-reference{padding:12px 0 20px!important}
    .hero-copy{padding:18px}
    .hero-copy .hero-mobile-image{margin:-6px -6px 1.25rem}
    .hero-copy h1{margin-top:0;margin-bottom:1rem}
    .hero-actions .button,.hero-actions .play-link{min-height:48px}
    .proof-grid>span{min-height:60px;justify-content:flex-start}
    .company-proof .container>p{margin-bottom:12px}
    .content-steps article{gap:.85rem;margin-bottom:.75rem}
    .project-form,.access-card,.profile-form section{padding:18px!important;border-radius:16px!important}
}
.company-proof .proof-grid{display:flex;align-items:center;justify-content:center;gap:0}.company-proof .proof-grid>span{display:flex;align-items:center;justify-content:center;gap:9px;min-height:0;flex:1;padding:4px 22px;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;white-space:nowrap}.company-proof .proof-grid>span+span{border-left:1px solid rgba(113,126,151,.28)}.company-proof .proof-grid .icon{width:19px;height:19px;color:#6546ed}.company-proof .proof-grid b{font-weight:700}@media(max-width:760px){.company-proof .proof-grid{display:grid;grid-template-columns:1fr 1fr;row-gap:18px}.company-proof .proof-grid>span{justify-content:flex-start;padding:2px 16px;white-space:normal}.company-proof .proof-grid>span:nth-child(odd){border-left:0}.company-proof .proof-grid>span:last-child{grid-column:1/-1;border-left:0;justify-content:center}}@media(max-width:440px){.company-proof .proof-grid{grid-template-columns:1fr}.company-proof .proof-grid>span,.company-proof .proof-grid>span:last-child{grid-column:auto;justify-content:flex-start;border-left:0;padding:2px 8px}}
@media(max-width:900px){.company-proof .proof-grid{display:flex;justify-content:flex-start;gap:0;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}.company-proof .proof-grid::-webkit-scrollbar{display:none}.company-proof .proof-grid>span,.company-proof .proof-grid>span:last-child{display:flex;flex:0 0 auto;grid-column:auto;justify-content:flex-start;min-width:auto;padding:4px 20px;white-space:nowrap;scroll-snap-align:start}.company-proof .proof-grid>span:first-child{padding-left:2px}.company-proof .proof-grid>span+span,.company-proof .proof-grid>span:nth-child(odd),.company-proof .proof-grid>span:last-child{border-left:1px solid rgba(113,126,151,.28)}}


/* source: form-validation.css */
.field-invalid{border-color:#d92d20!important;background:#fff7f6!important;box-shadow:0 0 0 3px rgba(217,45,32,.12)!important;outline:0!important}
.field-error{display:block;margin:.4rem 0 0;color:#b42318;font-size:13px;font-weight:650;line-height:1.4}
label:has(>.field-invalid){color:#9f2118}
.form-errors,.notice.error,.access-errors,.login-modal-error,.error{border:1px solid rgba(217,45,32,.28);border-radius:10px;background:#fff4f2;color:#9f2118;padding:13px 15px;line-height:1.5}
.form-errors ul,.notice.error ul,.access-errors ul{margin:.45rem 0 0;padding-left:1.2rem}
label:has(>input[type="checkbox"]):has(>.field-error),label:has(>input[type="radio"]):has(>.field-error){display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;align-items:start!important;column-gap:10px!important;row-gap:0!important}
label:has(>input[type="checkbox"]):has(>.field-error)>input[type="checkbox"],label:has(>input[type="radio"]):has(>.field-error)>input[type="radio"]{grid-column:1!important;grid-row:1!important;margin-top:.18rem!important}
label:has(>input[type="checkbox"]):has(>.field-error)>span,label:has(>input[type="radio"]):has(>.field-error)>span{grid-column:2!important;grid-row:1!important;min-width:0!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;line-height:1.5!important}
label:has(>input[type="checkbox"]):has(>.field-error)>.field-error,label:has(>input[type="radio"]):has(>.field-error)>.field-error{grid-column:1 / -1!important;width:100%!important;margin-top:.45rem!important}


/* source: form-experience.css */
.company-proof{border-top:0!important;border-bottom:0!important}.legal-page{width:min(1180px,calc(100% - 64px));max-width:1180px;padding:clamp(28px,5vw,52px)!important}.legal-body{padding:32px 4px!important}.contact-intro dd a{color:#5e43e5;font-weight:750;text-decoration:underline;text-underline-offset:3px}.circle-link.create-task-expand,.circle-link.create-task-expand:hover,.circle-link.create-task-expand:focus-visible{border-radius:999px!important;color:#fff!important}.circle-link.create-task-expand .icon,.circle-link.create-task-expand span,.circle-link.create-task-expand:hover .icon,.circle-link.create-task-expand:hover span{color:#fff!important;stroke:#fff!important}
.supplier-registration-shell{display:grid;grid-template-columns:minmax(360px,40%) minmax(0,60%);width:100%;max-width:none;margin-inline:auto;border:1px solid #dfe5ef;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 24px 70px rgba(29,43,102,.08)}.supplier-registration-steps{padding:56px 48px;background:#f5f7fa;border-right:1px solid #dfe5ef}.supplier-registration-steps .wizard-progress{display:flex;flex-direction:column;gap:0;margin:0;padding:0}.supplier-registration-steps .wizard-progress li{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;gap:3px 15px;min-height:118px;align-content:start}.supplier-registration-steps .wizard-progress li:after{position:absolute;left:19px;top:45px;width:2px;height:62px;background:#d9dee7}.supplier-registration-steps .wizard-progress li span{grid-row:1/3;width:40px;height:40px}.supplier-registration-steps .wizard-progress li b{font-size:15px;align-self:end}.supplier-registration-steps .wizard-progress li small{font-size:13px;font-weight:500;color:#7c8799}.registration-card{width:100%;max-width:none;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:54px 58px!important;background:#fff!important}.registration-card .supplier-form{display:block;margin-top:32px}.registration-card .supplier-form fieldset{margin:0!important;border:0!important;border-radius:0!important;padding:0!important;background:#fff!important}.registration-card .supplier-form legend{float:left;width:100%;padding:0!important;font-size:22px;margin:0 0 26px!important}.registration-card .wizard-actions{margin-top:32px}
.task-form-layout{grid-template-columns:minmax(360px,40%) minmax(0,60%)!important;gap:0!important;width:100%;max-width:none;border:1px solid #d9e0eb;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 24px 70px rgba(29,43,102,.08)}.task-form-layout .form-aside{grid-column:1;grid-row:1;position:relative;top:auto;border:0!important;border-radius:0!important;box-shadow:none!important;border-right:1px solid #d9e0eb!important;min-height:100%;padding:56px 48px!important;background:#f5f7fa!important}.task-form-layout .project-form{grid-column:2;grid-row:1;border:0!important;border-radius:0!important;min-width:0;box-shadow:none!important;padding:54px 58px!important;background:#fff!important}.task-form-layout .project-form fieldset{margin:0!important;padding:0!important;border:0!important;border-radius:0!important}.task-form-layout .project-form legend{float:left;width:100%;padding:0!important;margin:0 0 30px!important;font-size:24px}.task-wizard-progress{display:flex;flex-direction:column;list-style:none;padding:0;margin:0 0 42px}.task-wizard-progress li{position:relative;display:grid;grid-template-columns:40px 1fr;gap:3px 15px;min-height:110px;color:#8a94a5}.task-wizard-progress li:after{content:'';position:absolute;left:19px;top:45px;width:2px;height:54px;background:#d8dde6}.task-wizard-progress li:last-child:after{display:none}.task-wizard-progress span{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border:1px solid #cad1dc;border-radius:50%;background:transparent}.task-wizard-progress b{align-self:end;font-size:15px}.task-wizard-progress small{font-size:13px}.task-wizard-progress li.active{color:#6044df}.task-wizard-progress li.active span,.task-wizard-progress li.complete span{border-color:#6044df;background:#6044df;color:#fff}.task-form-layout .form-aside h2{font-size:18px!important;margin:8px 0 16px}.task-form-layout .form-aside ul{padding:0!important;list-style:none}.task-form-layout .form-aside ul li{display:flex;align-items:flex-start;gap:12px;margin:0;padding:8px 0;border:0;background:transparent}.task-form-layout .form-aside ul li .icon{flex:0 0 19px;color:#08a856}.task-form-layout .aside-process{margin-top:30px;padding-top:26px;border-top:1px solid #d9dee7}.task-form-layout .aside-process ol{padding:0!important;list-style:none;counter-reset:process}.task-form-layout .aside-process ol li{counter-increment:process;display:flex;align-items:flex-start;gap:12px;margin:0;padding:8px 0;border:0;background:transparent}.task-form-layout .aside-process ol li:before{content:counter(process);display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:linear-gradient(135deg,#6543ff,#f13ba5);color:#fff;font-size:12px;font-weight:800}.task-wizard-actions{display:flex;justify-content:space-between;gap:14px;margin-top:32px}.task-wizard-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:8px;font-weight:750}.task-step-next{border:0;background:#071a3f;color:#fff}.task-step-back{border:1px solid #d3dae6;background:#fff;color:#30405c}
@media(max-width:1024px){.supplier-registration-shell{grid-template-columns:1fr}.supplier-registration-steps{padding:18px;border-right:0;border-bottom:1px solid #dfe5ef}.supplier-registration-steps .wizard-progress{flex-direction:row}.supplier-registration-steps .wizard-progress li{flex:1;display:flex;min-height:auto;align-items:center;justify-content:center}.supplier-registration-steps .wizard-progress li:after{left:calc(50% + 22px);right:calc(-50% + 22px);top:17px;width:auto;height:2px}.supplier-registration-steps .wizard-progress li b,.supplier-registration-steps .wizard-progress li small{display:none}.registration-card{padding:28px 24px!important}.task-form-layout{grid-template-columns:1fr!important;overflow:hidden}.task-form-layout .form-aside,.task-form-layout .project-form{grid-column:1;grid-row:auto;border-radius:0!important;border:0!important;min-height:0}.task-form-layout .form-aside{position:static;padding:22px!important;border-bottom:1px solid #dfe5ef!important}.task-wizard-progress{flex-direction:row;margin-bottom:0}.task-wizard-progress li{flex:1;display:flex;min-height:auto;justify-content:center}.task-wizard-progress li b,.task-wizard-progress li small{display:none}.task-wizard-progress li:after{left:calc(50% + 22px);right:calc(-50% + 22px);top:17px;width:auto;height:2px}.task-form-layout .form-aside>div:not(.task-step-navigation){display:none}.task-form-layout .project-form{padding:28px 24px!important}.task-wizard-actions{flex-direction:column-reverse}.task-wizard-actions button,.task-wizard-actions .button{width:100%!important}}
@media(max-width:700px){.legal-page{width:calc(100% - 24px);margin-inline:12px!important}}
.supplier-registration-shell{grid-template-columns:minmax(340px,35%) minmax(0,65%)}
.task-form-layout{grid-template-columns:minmax(340px,35%) minmax(0,65%)!important;width:min(1180px,calc(100% - 64px));max-width:1180px;margin-inline:auto}
.task-form-layout .form-aside .task-wizard-progress li{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;gap:3px 15px;min-height:110px;padding:0;border:0;border-radius:0;background:transparent}
.task-form-layout .form-aside .task-wizard-progress li:before{content:none!important}
.task-form-layout .form-aside .task-wizard-progress li:after{content:'';position:absolute;left:19px;top:45px;width:2px;height:54px;background:#d8dde6;border:0;transform:none}
.task-form-layout .form-aside .task-wizard-progress li:last-child:after{display:none}
.task-form-layout .aside-process ol li:before{position:static;left:auto;top:auto;margin-top:1px}
@media(max-width:1024px){.supplier-registration-shell{grid-template-columns:1fr}.task-form-layout{grid-template-columns:1fr!important}.task-form-layout .form-aside .task-wizard-progress li{display:flex;min-height:auto;padding:0}.task-form-layout .form-aside .task-wizard-progress li:after{left:calc(50% + 22px);right:calc(-50% + 22px);top:17px;width:auto;height:2px}}
@media(max-width:800px){.task-form-layout{width:min(100% - 34px,1180px)}}
.task-form-layout .form-aside{display:flex;flex-direction:column}.task-aside-disclosure{display:flex;flex-direction:column;margin-top:auto}.task-aside-details{padding-bottom:24px;animation:task-info-in .2s ease}.task-info-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:16px 0 0;border:0;border-top:1px solid #d9dee7;background:transparent;color:#071a3f;font-weight:750;text-align:left;cursor:pointer}.task-info-toggle .icon{width:20px;height:20px}.task-info-toggle .icon:last-child{margin-left:auto;transition:transform .2s}.task-info-toggle[aria-expanded="true"] .icon:last-child{transform:rotate(180deg)}@keyframes task-info-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:1024px){.task-aside-disclosure{display:none}}
.task-session-notice{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:13px;align-items:center;margin:0 0 30px;padding:15px 17px;border:1px solid #dcd8ff;border-radius:12px;background:#f7f5ff;color:#071a3f}.task-session-notice>.icon{width:42px;height:42px;padding:10px;border-radius:11px;background:#ebe7ff;color:#6044df}.task-session-notice div{display:flex;min-width:0;flex-direction:column;gap:3px}.task-session-notice span{color:#63718a;font-size:13px;line-height:1.45}.task-session-notice a{color:#563bd7;font-weight:750;white-space:nowrap}@media(max-width:700px){.task-session-notice{grid-template-columns:38px 1fr}.task-session-notice>.icon{width:38px;height:38px}.task-session-notice a{grid-column:2;white-space:normal}}
.location-help{display:block;margin:-7px 0 18px;color:#6c7890;font-size:13px;line-height:1.5}
@media(max-width:1024px){.task-form-layout .form-aside{grid-row:1!important}.task-form-layout .project-form{grid-row:2!important}.task-form-layout .task-step-navigation{width:100%}.task-form-layout .task-wizard-progress{display:flex!important;flex-direction:row!important;width:100%;margin:0}.task-form-layout .form-aside .task-wizard-progress li{display:flex!important;flex:1;align-items:center;justify-content:center;min-height:auto}.task-form-layout .form-aside .task-wizard-progress li span{grid-row:auto}.task-form-layout .form-aside .task-wizard-progress li b,.task-form-layout .form-aside .task-wizard-progress li small{display:none}.task-form-layout .form-aside .task-wizard-progress li:after{left:calc(50% + 22px);right:calc(-50% + 22px);top:19px;width:auto;height:2px}}

/* Task creation wizard: professional dashboard polish */
.task-create-hero{padding:clamp(42px,6vw,72px) 0 30px!important;background:transparent!important}.task-create-hero .container{max-width:980px}.task-create-hero h1{max-width:920px;margin:0;font-size:clamp(2.15rem,4.4vw,3.65rem);line-height:1.08;letter-spacing:0!important;color:var(--app-ink,#071a3f)}.task-create-hero .lead{max-width:780px;margin:20px 0 0;color:var(--app-muted,#63718a);font-size:clamp(1rem,1.35vw,1.12rem);line-height:1.72}.task-create-hero .task-hero-benefits{margin-top:24px!important;margin-bottom:0!important}.task-create-hero .task-hero-benefits span{min-height:38px;border-color:rgba(205,214,231,.84);background:rgba(255,255,255,.74);color:#173b70;box-shadow:0 12px 34px rgba(38,48,98,.06);backdrop-filter:blur(18px)}.task-create-hero .task-hero-benefits span:nth-child(2){border-color:rgba(8,127,69,.22);background:rgba(245,251,247,.82);color:#087f45}.task-form-section{padding:22px 0 92px!important;background:transparent!important}.task-form-layout{grid-template-columns:minmax(318px,34%) minmax(0,66%)!important;width:min(1180px,calc(100% - 64px))!important;border:1px solid rgba(205,214,231,.76)!important;border-radius:18px!important;background:rgba(255,255,255,.72)!important;box-shadow:0 24px 80px rgba(38,48,98,.09)!important;backdrop-filter:blur(24px) saturate(1.18)}.task-form-layout .form-aside{padding:42px 36px!important;background:linear-gradient(180deg,rgba(247,249,255,.96),rgba(241,245,252,.86))!important;border-right:1px solid rgba(205,214,231,.72)!important}.task-form-layout .project-form{padding:42px 48px!important;background:rgba(255,255,255,.82)!important}.task-form-layout .project-form legend{display:block;float:left;width:100%;margin:0 0 28px!important;padding:0!important;font-size:clamp(1.35rem,2.1vw,1.7rem);line-height:1.18;letter-spacing:0;color:var(--app-ink,#071a3f)}.task-form-layout .project-form label{gap:8px;margin-bottom:18px;color:#10264c;font-size:.91rem;font-weight:760;line-height:1.35}.task-form-layout .project-form label>small,.task-form-layout .project-form .location-help,.task-form-layout .submit-note{color:#68758c;font-size:.82rem;line-height:1.5;font-weight:520}.task-form-layout .project-form input,.task-form-layout .project-form select,.task-form-layout .project-form textarea{min-height:48px;border:1px solid #cfd8e7;border-radius:8px;background:#fff;color:#071a3f;padding:12px 13px;font:600 .96rem Manrope,DM Sans,sans-serif;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.task-form-layout .project-form textarea{min-height:128px;line-height:1.55}.task-form-layout .project-form input:hover,.task-form-layout .project-form select:hover,.task-form-layout .project-form textarea:hover{border-color:#b9c5d8}.task-form-layout .project-form input:focus,.task-form-layout .project-form select:focus,.task-form-layout .project-form textarea:focus{border-color:#6044df;box-shadow:0 0 0 4px rgba(96,68,223,.13);outline:0}.task-form-layout .field-row{gap:16px}.task-wizard-progress{gap:0}.task-form-layout .form-aside .task-wizard-progress li{color:#7f8a9c}.task-form-layout .form-aside .task-wizard-progress li span{border-color:#c8d0de;background:rgba(255,255,255,.72);color:#778397;font-weight:850;transition:background .18s,border-color .18s,color .18s,box-shadow .18s}.task-form-layout .form-aside .task-wizard-progress li.active{color:#071a3f}.task-form-layout .form-aside .task-wizard-progress li.active span{border-color:#071a3f;background:#071a3f;color:#fff;box-shadow:0 10px 24px rgba(7,26,63,.18)}.task-form-layout .form-aside .task-wizard-progress li.complete span{border-color:#087f45;background:#087f45;color:#fff}.task-form-layout .form-aside .task-wizard-progress li.complete:after{background:#b7ddc7}.task-form-layout .form-aside .task-wizard-progress b{font-size:.94rem;color:inherit}.task-form-layout .form-aside .task-wizard-progress small{color:#7a8698;font-size:.8rem;line-height:1.35}.task-value-panel{margin:16px 0 26px!important;padding:20px!important;border:1px solid rgba(8,127,69,.16)!important;border-radius:10px!important;background:linear-gradient(180deg,rgba(248,252,249,.92),rgba(255,255,255,.66))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.task-value-panel h2{margin:0 0 14px!important;font-size:1.05rem!important;line-height:1.25;letter-spacing:0;color:#071a3f!important}.task-value-panel li{gap:10px;padding:9px 0!important;border-bottom:1px solid rgba(8,127,69,.1)!important;color:#40506b!important;font-size:.86rem!important;line-height:1.48}.task-value-panel svg{width:17px!important;height:17px!important;color:#087f45!important}.task-info-toggle{min-height:46px;color:#071a3f}.task-wizard-actions{align-items:center;margin-top:34px;padding-top:22px;border-top:1px solid rgba(205,214,231,.58)}.task-wizard-actions button,.task-wizard-actions .button{min-height:48px;border-radius:8px;font-size:.92rem;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.task-wizard-actions button:hover,.task-wizard-actions .button:hover{transform:translateY(-1px)}.task-step-next,.task-wizard-actions .button.submit-task{background:#071a3f!important;color:#fff!important;box-shadow:0 14px 30px rgba(7,26,63,.16)!important}.task-step-next:hover,.task-wizard-actions .button.submit-task:hover{background:#123866!important}.task-step-back{border-color:#cfd8e7!important;background:#fff!important;color:#30405c!important;box-shadow:none!important}.task-step-back:hover{border-color:#aebbd0!important;background:#f8fafc!important}.task-session-notice{border-color:rgba(96,68,223,.18)!important;border-radius:10px!important;background:rgba(247,245,255,.82)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.74)}.choice-grid,.need-type-grid,.category-card-grid{gap:12px}.choice-card,.category-card{position:relative}.choice-card>span,.category-card>span{border-color:#d8dfeb!important;border-radius:8px!important;background:rgba(255,255,255,.88)!important;box-shadow:0 1px 0 rgba(255,255,255,.82);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease}.choice-card:hover>span,.category-card:hover>span{border-color:#b8c5d8!important;box-shadow:0 14px 32px rgba(38,48,98,.08);transform:translateY(-1px)}.choice-card>input:focus-visible+span,.category-card>input:focus-visible+span{border-color:#6044df!important;box-shadow:0 0 0 4px rgba(96,68,223,.14)!important}.choice-card>input:checked+span{border-color:#071a3f!important;background:#f8fbff!important;box-shadow:0 0 0 2px rgba(7,26,63,.12),0 16px 36px rgba(38,48,98,.08)!important}.choice-card>input:checked+span:after,.category-card>input:checked+span:after{content:'';position:absolute;right:14px;top:14px;width:9px;height:9px;border-radius:999px;background:#087f45;box-shadow:0 0 0 4px rgba(8,127,69,.13)}.choice-card b,.category-card b{font-size:.98rem;line-height:1.28;color:#071a3f}.choice-card em,.category-card em{color:#4b36c8;font-size:.78rem;font-weight:850;letter-spacing:0}.choice-card small,.category-card small{color:#69768d;font-size:.8rem;line-height:1.46;font-weight:520}.need-type-card>span{min-height:132px}.need-type-card svg{width:22px;height:22px;color:#087f45}.choice-card-wide{grid-column:1/-1}.category-search{position:sticky;top:0;z-index:2;margin-bottom:16px!important;padding-bottom:10px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.82) 72%,rgba(255,255,255,0));backdrop-filter:blur(10px)}.category-picker{max-height:min(612px,70vh);gap:22px;overflow:auto;padding:0 8px 2px 0;scrollbar-color:#b9c5d8 transparent;scrollbar-width:thin}.category-group h2{display:flex;align-items:center;gap:10px;margin:0 0 10px;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#63718a}.category-group h2:after{content:'';height:1px;flex:1;background:rgba(205,214,231,.72)}.category-card>span{min-height:124px;padding:15px 16px 14px}.category-card>input:checked+span{border-color:#087f45!important;background:#f6fbf8!important;box-shadow:0 0 0 2px rgba(8,127,69,.11),0 16px 34px rgba(38,48,98,.07)!important}.empty-category-state{border-color:#cfd8e7!important;border-radius:10px!important;background:#f8fafc!important;color:#63718a}.structured-fields{gap:16px}.structured-fields[hidden]{display:none!important}.structured-field-wide,.structured-check{grid-column:1/-1}.structured-check,.consent-check,.supplier-invite-note{border-radius:8px!important}.structured-check{border:1px solid #dfe5ef;background:#f8fafc}.structured-check input,.consent-check input,.environment-choice input{accent-color:#087f45}.environment-choice{gap:9px;margin-bottom:18px;color:#10264c}.environment-choice>span{font-weight:800}.environment-choice label{position:relative;border-radius:8px!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.environment-choice label:hover{border-color:#b9c5d8!important}.environment-choice label:has(input:checked){border-color:#087f45!important;background:#f6fbf8!important;box-shadow:0 0 0 2px rgba(8,127,69,.1)}.environment-choice .choice-disabled{opacity:.48}.supplier-invite-note{border-color:rgba(8,127,69,.16)!important;background:#f7fcf8!important}.form-errors{border-radius:10px!important;background:#fff4f2!important}.field-error{margin-top:6px!important}.submit-note{margin:12px 0 0}.result-page{background:transparent!important}.result-card{border-radius:14px!important}
@media(max-width:1100px){.task-form-layout{grid-template-columns:1fr!important;width:min(100% - 34px,1180px)!important}.task-form-layout .form-aside{padding:20px 22px!important;border-right:0!important;border-bottom:1px solid rgba(205,214,231,.72)!important}.task-form-layout .project-form{padding:30px 26px!important}.task-form-layout .task-step-navigation{overflow-x:auto;padding-bottom:2px}.task-form-layout .task-wizard-progress{min-width:420px}.task-form-layout .form-aside .task-wizard-progress li span{width:38px;height:38px}.task-form-layout .form-aside .task-wizard-progress li:after{top:18px!important;left:calc(50% + 21px)!important;right:calc(-50% + 21px)!important}.task-form-layout .form-aside>div:not(.task-step-navigation){display:none!important}}
@media(max-width:760px){.task-create-hero{padding:30px 0 22px!important}.task-create-hero .container{width:min(100% - 28px,1180px)}.task-create-hero h1{font-size:clamp(1.55rem,7.1vw,1.75rem);line-height:1.16;overflow-wrap:break-word}.task-create-hero .task-hero-benefits{display:grid;grid-template-columns:1fr 1fr}.task-create-hero .task-hero-benefits span{width:100%;justify-content:center;text-align:center;white-space:normal}.task-form-section{padding:10px 0 64px!important}.task-form-layout{width:min(100% - 20px,1180px)!important;border-radius:14px!important}.task-form-layout .form-aside{padding:15px 14px!important}.task-form-layout .project-form{padding:24px 18px!important}.task-form-layout .project-form legend{margin-bottom:22px}.task-form-layout .project-form label{font-size:.88rem}.task-form-layout .project-form input,.task-form-layout .project-form select,.task-form-layout .project-form textarea{font-size:1rem}.need-type-grid,.category-card-grid,.structured-fields,.field-row,.choice-grid{grid-template-columns:1fr!important}.need-type-card>span,.category-card>span{min-height:auto}.category-search{position:relative;padding-bottom:0;background:transparent}.category-picker{max-height:none;overflow:visible;padding-right:0}.task-wizard-actions{gap:10px;margin-top:26px;padding-top:18px}.task-wizard-actions button,.task-wizard-actions .button{width:100%;min-height:50px}.choice-card-wide{grid-column:auto}.supplier-invite-note{display:grid;grid-template-columns:22px 1fr}.consent-check{grid-template-columns:20px 1fr!important}.task-session-notice{grid-template-columns:38px minmax(0,1fr)!important}.task-session-notice a{grid-column:2}}
@media(max-width:430px){.task-create-hero .task-hero-benefits{grid-template-columns:1fr}.task-form-layout .task-wizard-progress{min-width:320px}.task-form-layout .form-aside .task-wizard-progress li span{width:34px;height:34px;font-size:.84rem}.task-form-layout .form-aside .task-wizard-progress li:after{top:16px!important;left:calc(50% + 19px)!important;right:calc(-50% + 19px)!important}.choice-card>span,.category-card>span{padding:14px}.task-form-layout .project-form{padding:22px 15px!important}}
.task-form-layout .category-group h2{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 10px!important;font-size:.82rem!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#63718a!important;font-weight:850!important}.task-form-layout .category-group h2:after{content:''!important;height:1px!important;flex:1!important;background:rgba(205,214,231,.72)!important}

/* D2B palette and category interaction */
.task-create-hero .task-hero-benefits span,.task-create-hero .task-hero-benefits span:nth-child(2){border-color:rgba(7,26,63,.14)!important;background:rgba(248,250,253,.9)!important;color:#071a3f!important}
.task-form-layout .form-aside .task-wizard-progress li.complete span{border-color:#071a3f!important;background:#071a3f!important;color:#fff!important}
.task-form-layout .form-aside .task-wizard-progress li.complete:after{background:rgba(7,26,63,.24)!important}
.task-value-panel{border-color:rgba(7,26,63,.13)!important;background:linear-gradient(180deg,#f6f8fb,rgba(255,255,255,.72))!important}
.task-value-panel li{border-bottom-color:rgba(7,26,63,.09)!important}
.task-value-panel svg,.need-type-card svg{color:#071a3f!important}
.task-session-notice{border-color:rgba(7,26,63,.14)!important;background:#f6f8fc!important}
.task-session-notice>.icon{background:#e9edf4!important;color:#071a3f!important}
.task-session-notice a{color:#071a3f!important}
.task-form-layout .project-form input:focus,.task-form-layout .project-form select:focus,.task-form-layout .project-form textarea:focus{border-color:#071a3f!important;box-shadow:0 0 0 4px rgba(7,26,63,.12)!important}
.choice-grid,.need-type-grid{gap:14px!important}
.category-picker{gap:34px!important;padding:2px 10px 5px 1px!important}
.category-card-grid{gap:16px!important}
.choice-card,.category-card{display:block;isolation:isolate;cursor:pointer}
.choice-card>span,.category-card>span{position:relative;width:100%;border-color:#d8dfeb!important;background:#f6f8fb!important;cursor:pointer;user-select:none}
.choice-card:hover>span,.category-card:hover>span{border-color:#aebbd0!important;background:#f1f4f8!important}
.choice-card>input:focus-visible+span,.category-card>input:focus-visible+span{border-color:#071a3f!important;box-shadow:0 0 0 4px rgba(7,26,63,.12)!important}
.choice-card>input:checked+span,.category-card>input:checked+span{border-color:#071a3f!important;background:#edf1f6!important;box-shadow:0 0 0 2px rgba(7,26,63,.1),0 16px 34px rgba(7,26,63,.07)!important}
.choice-card>input:checked+span:after,.category-card>input:checked+span:after{background:#071a3f!important;box-shadow:0 0 0 4px rgba(7,26,63,.12)!important}
.choice-card em,.category-card em{color:#40506b!important}
.task-form-layout .category-group h2{margin-bottom:18px!important;color:#40506b!important}
.task-form-layout .category-group h2:after{background:rgba(7,26,63,.14)!important}
.structured-check input,.consent-check input,.environment-choice input{accent-color:#071a3f!important}
.environment-choice label:has(input:checked){border-color:#071a3f!important;background:#edf1f6!important;box-shadow:0 0 0 2px rgba(7,26,63,.1)!important}
.supplier-invite-note{border-color:rgba(7,26,63,.13)!important;background:#f6f8fb!important}
.supplier-invite-note svg{color:#071a3f!important}
.supplier-prefill-note{display:grid;grid-template-columns:22px minmax(0,1fr);gap:11px;margin:18px 0;padding:14px;border:1px solid rgba(7,26,63,.13);border-radius:8px;background:#fafaff;color:#40506b}.supplier-prefill-note svg{width:20px;height:20px;color:#071a3f}.supplier-prefill-note b{display:block;color:#071a3f}.supplier-prefill-note span{display:block;margin-top:3px;font-size:.82rem;line-height:1.5}.task-aside-details>.task-value-panel{margin:0 0 24px!important}@media(max-width:1024px){.task-aside-disclosure{display:flex}}
@media(max-width:760px){.category-picker{gap:28px!important;padding-right:0!important}.category-card-grid{gap:12px!important}.task-form-layout .category-group h2{margin-bottom:15px!important}}

/* Wizard cards and progressive category browser */
.choice-card>span,.category-card>span{background:#fafaff!important}
.choice-card:hover>span,.category-card:hover>span{background:#f5f7ff!important;border-color:#bac7dc!important}
.choice-card>input:checked+span,.category-card>input:checked+span{background:#edf2ff!important;border-color:#071a3f!important}
.empty-category-state[hidden],.selected-category-summary[hidden],.step-category-context[hidden],.task-upload-error[hidden],.category-card[hidden],.category-group[hidden],.category-group-list button[hidden]{display:none!important}
.category-browser{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;align-items:start}
.category-group-list{display:flex;max-height:590px;flex-direction:column;gap:8px;overflow:auto;padding:4px 9px 4px 0;scrollbar-width:thin;scrollbar-color:#c3ccda transparent}
.category-group-list>span{position:sticky;top:0;z-index:1;padding:4px 8px 10px;background:#fff;color:#63718a;font-size:.72rem;font-weight:850;text-transform:uppercase}
.category-group-list button{display:grid;grid-template-columns:minmax(0,1fr) 26px;gap:10px;align-items:center;width:100%;min-height:56px;padding:10px 9px 10px 12px;border:1px solid transparent;border-radius:7px;background:transparent;color:#40506b;text-align:left;font:720 .78rem/1.42 Manrope,DM Sans,sans-serif;cursor:pointer;white-space:normal}
.category-group-list button>span{display:block;min-width:0;overflow-wrap:anywhere}
.category-group-list button:hover{background:#f5f7ff;color:#071a3f}
.category-group-list button.active{border-color:#d6dfed;background:#edf2ff;color:#071a3f}
.category-group-list button small{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e9eef7;color:#40506b;font-size:.68rem}
.category-group-list button.active small{background:#071a3f;color:#fff}
.category-group-mobile{display:none!important}
.category-picker{max-height:590px!important;gap:30px!important;padding:2px 9px 5px 1px!important}
.category-card-grid{grid-template-columns:1fr!important;gap:10px!important}
.category-card>span{min-height:96px!important;padding:14px 42px 13px 15px!important;gap:5px!important}
.category-card small{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.category-card em{display:none}
.selected-category-summary{display:grid;grid-template-columns:22px minmax(0,1fr);gap:11px;margin-top:18px;padding:14px 15px;border:1px solid #d4deed;border-radius:8px;background:#f5f7ff;color:#071a3f}
.selected-category-summary>.icon{width:20px;height:20px;margin-top:2px}
.selected-category-summary div,.step-category-context{display:flex;min-width:0;flex-direction:column;gap:3px}
.selected-category-summary small,.step-category-context small{color:#63718a;font-size:.68rem;font-weight:850;text-transform:uppercase}
.selected-category-summary b,.step-category-context b{font-size:.9rem}
.selected-category-summary span,.step-category-context span{color:#63718a;font-size:.78rem;line-height:1.45}
.step-category-context{margin:0 0 22px;padding:14px 16px;border-left:3px solid #071a3f;background:#fafaff}
.task-upload{margin:6px 0 22px}
.task-upload-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:10px}
.task-upload-heading>div{display:flex;flex-direction:column;gap:3px}.task-upload-heading b{color:#10264c;font-size:.91rem}.task-upload-heading b small{color:#718097;font-weight:600}.task-upload-heading span{color:#68758c;font-size:.78rem}.task-upload-heading>span{flex:none;padding:4px 8px;border-radius:999px;background:#eef2f7;color:#40506b;font-weight:800}
.task-upload-input{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;padding:0!important;border:0!important}
.task-upload-dropzone{display:grid;width:100%;min-height:142px;place-items:center;align-content:center;gap:5px;padding:22px;border:1px dashed #b9c5d8;border-radius:8px;background:#fafaff;color:#071a3f;cursor:pointer;transition:.16s ease}
.task-upload-dropzone:hover,.task-upload.is-dragging .task-upload-dropzone{border-color:#071a3f;background:#f2f5ff;box-shadow:0 0 0 4px rgba(7,26,63,.07)}
.task-upload-dropzone .icon{width:24px;height:24px}.task-upload-dropzone b{font-size:.9rem}.task-upload-dropzone span,.task-upload-dropzone small{color:#68758c;font-size:.78rem}
.task-upload-list{display:grid;gap:9px;margin-top:10px}
.task-upload-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;align-items:center;padding:9px 10px;border:1px solid #d8dfeb;border-radius:8px;background:#fafaff}
.task-upload-preview{display:grid;width:52px;height:52px;place-items:center;overflow:hidden;border-radius:6px;background:#e9eef7;color:#071a3f;font-size:.68rem;font-weight:850;text-transform:uppercase}.task-upload-preview img{width:100%;height:100%;object-fit:cover}
.task-upload-meta{display:flex;min-width:0;flex-direction:column;gap:3px}.task-upload-meta b{overflow:hidden;color:#10264c;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.task-upload-meta span{color:#68758c;font-size:.72rem}
.task-upload-actions{display:flex;gap:4px}.task-upload-actions button{display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid #d8dfeb;border-radius:6px;background:#fff;color:#40506b;cursor:pointer}.task-upload-actions button:hover{border-color:#071a3f;color:#071a3f}.task-upload-actions button.active{border-color:#071a3f;background:#071a3f;color:#fff}.task-upload-actions button:disabled{opacity:.35;cursor:not-allowed}
.task-upload-error{margin:9px 0 0;color:#a32c2c;font-size:.78rem;font-weight:700}.task-upload-note{display:flex;gap:7px;align-items:flex-start;margin:10px 0 0;color:#68758c;font-size:.74rem;line-height:1.45}.task-upload-note .icon{flex:0 0 15px;width:15px;height:15px}
@media(max-width:760px){.category-browser{grid-template-columns:1fr;gap:12px}.category-group-list{display:none}.category-group-mobile{display:flex!important;margin-bottom:2px!important}.category-picker{max-height:none!important}.category-card>span{min-height:auto!important}.task-upload-item{grid-template-columns:44px minmax(0,1fr)}.task-upload-preview{width:44px;height:44px}.task-upload-actions{grid-column:1/-1;justify-content:flex-end;padding-top:3px}.task-upload-actions button{width:38px;height:34px}}
.radio-group-error{margin:14px 0 0;padding:11px 13px;border-left:3px solid #071a3f;border-radius:0 6px 6px 0;background:#f2f5fb;color:#071a3f;font-size:.84rem;font-weight:720;line-height:1.45}
.radio-group-error[hidden]{display:none!important}
[data-radio-group].field-invalid{outline:2px solid rgba(7,26,63,.2);outline-offset:6px;border-radius:6px}
.existing-task-files{display:grid;gap:8px;margin:14px 0}
.existing-task-files article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px;border:1px solid #dbe2ee;border-radius:8px;background:#fafaff}
.existing-task-files article>div{display:flex;min-width:0;flex-direction:column;gap:3px}.existing-task-files article b{overflow:hidden;text-overflow:ellipsis}.existing-task-files article small{color:#6d7990}
.existing-task-files article label{display:flex!important;flex-direction:row!important;align-items:center;gap:6px!important;margin:0!important;font-size:.78rem!important}.existing-task-files article input{width:17px!important;min-height:17px!important;padding:0!important;accent-color:#071a3f}
.existing-task-files article.is-removed{opacity:.5;background:#f1f3f7}.existing-task-files article.is-removed b{text-decoration:line-through}
@media(max-width:640px){.existing-task-files article{grid-template-columns:1fr 1fr}.existing-task-files article>div{grid-column:1/-1}}
.task-create-hero h1{font-size:54px!important}@media(max-width:1100px){.task-create-hero h1{font-size:46px!important}}@media(max-width:760px){.task-create-hero h1{font-size:31px!important;line-height:1.16!important;overflow-wrap:break-word}}@media(max-width:360px){.task-create-hero h1{font-size:29px!important}}


/* source: form-accessibility.css */
/* Shared form readability: public forms and supplier portal. */
:is(.project-form,.supplier-form,.profile-form,.contact-form) :is(fieldset>label,.field-row>label,.profile-grid>label){
  color:#10264c;
  font-weight:650;
  line-height:1.4;
}
:is(.project-form,.supplier-form,.profile-form,.contact-form) label>small,
:is(.project-form,.supplier-form,.profile-form,.contact-form) .location-help,
:is(.project-form,.supplier-form,.profile-form,.contact-form) .form-help{
  color:#52637d;
  font-weight:500;
  line-height:1.5;
}
.form-info-note,
:is(.project-form,.supplier-form,.profile-form,.contact-form) .location-help{
  display:flex!important;
  align-items:flex-start;
  gap:7px;
  margin-top:7px;
  color:#52637d!important;
  font-size:.82rem;
  font-style:italic;
  font-weight:500!important;
  line-height:1.5;
}
.form-info-note::before,
:is(.project-form,.supplier-form,.profile-form,.contact-form) .location-help::before{
  content:'i';
  display:grid;
  flex:0 0 15px;
  width:15px;
  height:15px;
  place-items:center;
  margin-top:2px;
  border:1px solid currentColor;
  border-radius:50%;
  font-family:serif;
  font-size:11px;
  font-style:normal;
  font-weight:700;
}
.step-category-context small{font-weight:600!important}
.field-optional{color:#52637d;font-size:.86em;font-style:normal;font-weight:500}
.task-form-layout .project-form :is(fieldset>label,.field-row>label){font-weight:650!important}
.task-form-layout .project-form legend{font-weight:700!important}
.task-form-layout .project-form label>.field-label{font-weight:650}
.task-form-layout .task-upload-heading b{font-weight:650!important}
.task-form-layout .project-form .form-choice-label{display:block;margin:0 0 12px;color:#10264c;font-size:.91rem;font-weight:650!important;line-height:1.4}
.task-company-summary{display:flex;align-items:baseline;gap:9px;margin:0 0 18px;padding:13px 15px;border:1px solid #d8e1ee;border-radius:8px;background:#f7f9fc;color:#10264c}.task-company-summary span,.task-company-summary small{color:#52637d}.task-company-summary b{font-weight:600}


/* source: inter-display.css */
@font-face {
  font-family: 'Inter Display';
  src: url('/assets/InterVariable.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root { --font-sans: 'Inter Display', Inter, system-ui, sans-serif; }

body, body :is(button, input, select, textarea, label, h1, h2, h3, h4, h5, h6, p, a, span, small, strong, b, em, li, td, th, dt, dd) {
  font-family: var(--font-sans) !important;
}

/* Keep the type scale calm: regular text is 400 and emphasis never exceeds 600. */
body, body * { font-weight: 400 !important; }
body :is(h1, h2, h3, h4, h5, h6, strong, b, button, .button, [type='submit'], .eyebrow) { font-weight: 500 !important; }


/* source: cookie-notice.css */
.cookie-notice{
    position:fixed;
    right:24px;
    bottom:24px;
    z-index:10000;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    width:min(760px,calc(100vw - 48px));
    padding:18px 18px 18px 20px;
    border:1px solid rgba(7,26,63,.16);
    border-radius:8px;
    background:rgba(255,255,255,.96);
    box-shadow:0 18px 52px rgba(7,26,63,.14);
    color:#071a3f;
    backdrop-filter:blur(14px);
}
.cookie-notice[hidden]{display:none!important}
.cookie-notice b{display:block;margin:0 0 6px;font-size:15px;font-weight:650;color:#071a3f}
.cookie-notice p{margin:0;color:#53627a;font-size:14px;line-height:1.55;font-weight:400}
.cookie-notice nav{display:flex;align-items:center;gap:10px;white-space:nowrap}
.cookie-notice a{color:#071a3f;text-decoration:underline;text-underline-offset:3px;font-size:14px;font-weight:500}
.cookie-notice button{
    appearance:none;
    border:0;
    border-radius:8px;
    padding:12px 16px;
    background:#071a3f;
    color:#fff;
    font:inherit;
    font-size:14px;
    font-weight:650;
    cursor:pointer;
}
.cookie-notice button:focus-visible,.cookie-notice a:focus-visible{outline:3px solid rgba(89,60,255,.24);outline-offset:3px}
@media(max-width:720px){
    .cookie-notice{
        right:12px;
        bottom:12px;
        grid-template-columns:1fr;
        width:calc(100vw - 24px);
        padding:16px;
    }
    .cookie-notice nav{justify-content:space-between}
    .cookie-notice button{min-width:112px}
}


/* source: typography-calm.css */
/*
 * Calmer text system.
 * Headings keep the strong D2B voice; normal UI text is capped at readable weights.
 */
:root {
    --d2b-text-strong: #071a3f;
    --d2b-text-body: #40506b;
    --d2b-text-muted: #63718a;
}

body,
.public-app,
.portal-app {
    font-weight: 400;
}

.public-app :where(p, li, dd, td, label, input, select, textarea),
.portal-app :where(p, li, dd, td, label, input, select, textarea) {
    font-weight: 350 !important;
}

.public-app :where(span, small, em),
.portal-app :where(span, small, em) {
    font-weight: 400;
}

.public-app :where(a, button, .button, .shell-cta, .circle-link, b, strong, th, .eyebrow),
.portal-app :where(a, button, .button, .gradient-cta, b, strong, th, .eyebrow) {
    font-weight: 500 !important;
}

.public-app :where(h1, h2, h3, h4),
.portal-app :where(h1, h2, h3, h4) {
    color: var(--d2b-text-strong);
}

.public-app :where(h1, h2),
.portal-app :where(h1, h2) {
    font-weight: 800 !important;
}

.public-app :where(h3, h4),
.portal-app :where(h3, h4) {
    font-weight: 700 !important;
}

.public-app :where(h1, h2, h3, h4) a,
.portal-app :where(h1, h2, h3, h4) a {
    font-weight: inherit !important;
}

.public-app :where(.lead, .section-heading p, .market-hero .lead, .market-value-grid p, .market-role-grid p, .market-live-head p, .market-overview-copy p, .task-types p),
.portal-app :where(.dash-head p, .table-row small, .side-card p, .notifications span) {
    color: var(--d2b-text-muted);
    font-weight: 400 !important;
}

.public-app :where(.market-assurances, .market-assurances span, .proof-grid b, .supplier-logo-strip > span, .final-cta-points span, .play-link, .task-preview-table th, .task-preview-table td, .task-chip, .status-pill),
.portal-app :where(.portal-nav nav a, .portal-topbar, .metric-grid small, .metric-grid span, .data-card header a, .side-card header a, .table-head, .table-row, .status) {
    font-weight: 500 !important;
}

.public-app :where(.market-value-grid h3, .market-role-grid h2, .market-live-head h2, .market-overview-copy h2, .task-types h3),
.portal-app :where(.metric-grid strong, .data-card h2, .side-card h2) {
    font-weight: 700 !important;
}

.public-app :where(.button, .market-cta-primary, .market-cta-secondary, .shell-cta),
.portal-app :where(.button, .gradient-cta, .portal-logout) {
    font-weight: 500 !important;
}

.public-app :where(.eyebrow),
.portal-app :where(.eyebrow) {
    color: var(--d2b-text-strong);
    font-weight: 500 !important;
}

.public-app :where(.field-error, .form-errors b, .form-errors li),
.portal-app :where(.field-error, .form-errors b, .form-errors li) {
    font-weight: 500 !important;
}

.public-app .market-hero h1 .hero-word-rotator,
.public-app .market-hero h1 .hero-word-rotator span {
    font-weight: inherit !important;
}
/* Public audience switch: requester-first public experience. */
.audience-switch{display:inline-grid;grid-template-columns:1fr 1fr;min-width:224px;padding:4px;border-radius:999px;background:#f0f3f8;gap:2px}
.audience-switch button{min-height:34px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:#52627b;font:inherit;font-size:.84rem;font-weight:500!important;cursor:pointer;white-space:nowrap;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.audience-switch button.is-active{background:#fff;color:#071a3f;box-shadow:0 2px 8px rgba(7,26,63,.12)}
.market-role-card-supplier,.market-live-section,.supplier-logo-section,.d2b-latest-tasks,[data-home-tab="roles"],[data-home-tab="faq-suppliers"],[data-home-tab-panel="roles"],[data-home-tab-panel="faq-suppliers"],.market-final-cta .market-cta-secondary{display:none!important}
@media (max-width:800px){.audience-switch{order:3;width:100%;min-width:0;margin-top:8px}.site-header .nav-wrap{flex-wrap:wrap}.audience-switch button{min-height:32px;padding:0 10px;font-size:.78rem}}

/* Keep supplier access, guidance and onboarding in one uninterrupted overlay. */
.supplier-access-aside-label{margin:0 0 -18px!important;color:#fff!important;font-size:.88rem!important;font-weight:500!important}
.supplier-access-aside-links button{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:#fff;font:inherit;font-size:.8rem;cursor:pointer}
.supplier-access-info{max-width:560px}.supplier-access-info-copy{display:grid;gap:15px;color:#52627c;line-height:1.65}.supplier-access-info-copy p{margin:0}.supplier-access-info-copy ol,.supplier-access-info-copy ul{display:grid;gap:12px;margin:0;padding-left:21px}.supplier-access-info-copy li{padding-left:3px}.supplier-access-info-copy b,.supplier-access-info-copy span{display:block}.supplier-access-info-copy b{color:#071a3f;font-weight:500!important}.supplier-access-info-copy span{font-size:.9rem}
.supplier-registration-embed{height:min(590px,calc(100dvh - 190px));margin:0 -18px -18px;overflow:hidden;border:1px solid #dce3ef;border-radius:16px;background:#f9fafb}.supplier-registration-embed iframe{display:block;width:100%;height:100%;border:0;background:#f9fafb}
.supplier-access-step input:not([type="checkbox"]){min-height:56px}.supplier-access-step .login-remember{display:inline-flex!important;grid-template-columns:none!important;align-items:center!important;gap:8px!important;color:#52627c!important;font-size:.84rem!important;font-weight:400!important}.supplier-access-step .login-remember input[type="checkbox"]{width:18px!important;height:18px!important;min-height:0!important;margin:0!important;padding:0!important;accent-color:#593cff}.supplier-access-step .login-remember span{display:block}
body.supplier-embed .public-sidebar,body.supplier-embed .site-header,body.supplier-embed footer,body.supplier-embed .cookie-notice,body.supplier-embed .supplier-entry,body.supplier-embed [data-register-content]>.supplier-hero,body.supplier-embed [data-register-content]>.section,body.supplier-embed [data-register-content]>.model-section,body.supplier-embed [data-register-content]>.supplier-faq{display:none!important}body.supplier-embed .public-app{margin:0!important}body.supplier-embed .supplier-access{padding:18px 0 28px!important;background:#f9fafb!important}body.supplier-embed .supplier-access .container{width:min(100% - 24px,980px)!important}body.supplier-embed .supplier-registration-shell{grid-template-columns:150px minmax(0,1fr)!important}body.supplier-embed .registration-card{padding:24px!important}
@media(max-width:760px){.supplier-registration-embed{height:calc(100dvh - 150px);margin:0 -8px -8px;border-radius:12px}.supplier-access-info-copy{font-size:.94rem}body.supplier-embed .supplier-registration-shell{grid-template-columns:1fr!important}body.supplier-embed .supplier-registration-steps{display:none!important}}

/* Registration is rendered directly in the overlay – never in a nested window. */
.supplier-login-modal.has-registration .supplier-access-main{justify-content:flex-start;overflow-y:auto;padding-top:46px;padding-bottom:42px}.supplier-login-modal.has-registration .supplier-access-step{max-width:760px}.supplier-registration-embed{height:auto;margin:0;border:0;border-radius:0;background:transparent;overflow:visible}.supplier-registration-embed .supplier-registration-shell{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px}.supplier-registration-embed .registration-card{padding:26px;border:1px solid #dce3ef;border-radius:18px;background:#fff;box-shadow:none}.supplier-registration-embed .supplier-registration-steps{position:sticky;top:0;height:max-content}.supplier-registration-loading{margin:0!important;padding:26px!important;border:1px solid #dce3ef;border-radius:18px;background:#f9fafb}.supplier-register-success{padding:34px;border:1px solid #dce3ef;border-radius:18px;background:#f9fafb}.supplier-register-success h2{margin:.5rem 0!important;font-size:2rem!important}.supplier-register-success p{margin:0!important}.supplier-access-aside-label{display:flex;align-items:center;gap:9px;margin:0 0 10px!important}.supplier-access-aside-label .icon{width:18px;height:18px;flex:none}.audience-switch>span,.audience-switch>button{display:flex;align-items:center;justify-content:center;min-height:34px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:#52627b;font:inherit;font-size:.84rem;font-weight:500!important;white-space:nowrap}.audience-switch>span.is-active{background:#fff;color:#071a3f;box-shadow:0 2px 8px rgba(7,26,63,.12)}.audience-switch>button{cursor:pointer}
@media(max-width:760px){.supplier-login-modal.has-registration .supplier-access-main{padding-top:82px}.supplier-registration-embed .supplier-registration-shell{grid-template-columns:1fr}.supplier-registration-embed .supplier-registration-steps{display:none}.supplier-registration-embed .registration-card{padding:20px}.audience-switch>span,.audience-switch>button{min-height:32px;padding:0 10px;font-size:.78rem}}

/* The supplier wizard was originally a wide page layout. In the modal it must be one column. */
.supplier-login-modal.has-registration .supplier-registration-embed .supplier-registration-shell{display:block!important;width:100%!important;overflow:visible!important}.supplier-login-modal.has-registration .supplier-registration-embed .supplier-registration-steps{display:none!important}.supplier-login-modal.has-registration .supplier-registration-embed .registration-card{display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:28px!important}.supplier-login-modal.has-registration .supplier-registration-embed .supplier-form{width:100%!important}.supplier-login-modal.has-registration .supplier-registration-embed .supplier-form fieldset{width:100%!important;box-sizing:border-box!important}

/* The modal itself is the registration surface; do not draw a second card around it. */
.supplier-login-modal.has-registration .supplier-access-dialog{height:min(820px,calc(100dvh - 44px));min-height:0}.supplier-login-modal.has-registration .supplier-access-main,.supplier-login-modal.has-registration .supplier-access-aside{min-height:0}.supplier-login-modal.has-registration .supplier-registration-embed .registration-card{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}.supplier-login-modal.has-registration .supplier-registration-embed .registration-card>.eyebrow,.supplier-login-modal.has-registration .supplier-registration-embed .registration-card>h2,.supplier-login-modal.has-registration .supplier-registration-embed .registration-card>p,.supplier-login-modal.has-registration .supplier-registration-embed .supplier-prefill-note{display:none!important}.supplier-login-modal.has-registration .supplier-registration-embed .supplier-form fieldset{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}.supplier-login-modal.has-registration .supplier-registration-embed .supplier-form legend{margin:0 0 22px!important;font-size:1.35rem!important}.supplier-login-modal.has-registration .supplier-registration-embed .supplier-logo-upload{margin-top:20px}.supplier-login-modal.has-registration .supplier-access-aside{justify-content:flex-start}.supplier-login-modal.has-registration .supplier-access-aside>div:nth-of-type(1){margin-top:clamp(95px,16vh,160px)}.supplier-login-modal.has-registration .supplier-access-aside ul{margin:clamp(38px,7vh,76px) 0 0}.supplier-login-modal.has-registration .supplier-access-aside-links{margin-top:auto;padding-top:26px}

/* Form controls and multiple-choice controls in the overlay. */
.supplier-login-modal.has-registration .supplier-registration-embed .supplier-registration-shell{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.supplier-login-modal.has-registration .supplier-registration-embed input:not([type="checkbox"]),.supplier-login-modal.has-registration .supplier-registration-embed select{background:#f6f8fc!important}.supplier-login-modal.has-registration .supplier-registration-embed .category-checks label,.supplier-login-modal.has-registration .supplier-registration-embed .region-group label,.supplier-login-modal.has-registration .supplier-registration-embed .region-parent{display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;margin:0!important}.supplier-login-modal.has-registration .supplier-registration-embed .category-checks input,.supplier-login-modal.has-registration .supplier-registration-embed .region-group input{width:18px!important;height:18px!important;min-height:0!important;margin:0!important;padding:0!important}.supplier-login-modal.has-registration .supplier-registration-embed .category-checks label{min-height:64px;padding:14px!important}.supplier-login-modal.has-registration .supplier-registration-embed .region-group>div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 18px!important;padding:12px 0 0 28px!important}.supplier-login-modal.has-registration .supplier-registration-embed .terms{display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;align-items:start!important;gap:10px!important}.supplier-login-modal.has-registration .supplier-registration-embed .terms input{width:18px!important;height:18px!important;min-height:0!important;margin:2px 0 0!important;padding:0!important}
@media(max-width:650px){.supplier-login-modal.has-registration .supplier-registration-embed .category-checks,.supplier-login-modal.has-registration .supplier-registration-embed .region-group>div{grid-template-columns:1fr!important}.supplier-login-modal.has-registration .supplier-registration-embed .region-group>div{padding-left:0!important}}

/* Supplier registration in the access overlay: keep the native form surface simple. */
.supplier-login-modal.has-registration .supplier-registration-embed .supplier-form legend{display:none!important}
.supplier-login-modal.has-registration .supplier-registration-embed .terms a{color:#593cff!important;font-weight:600!important;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:3px!important}

/* Responsive supplier gateway: one scrollable overlay and a compact, optional summary. */
.supplier-access-aside-toggle{display:none}
.supplier-access-aside-content{position:relative;z-index:1;display:flex;flex:1;flex-direction:column;justify-content:space-between;min-height:0}

@media(max-width:1024px){
    .site-header .nav-wrap{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important}
    .site-header .mobile-header-logo,.site-header .shell-crumb,.site-header .create-task-expand{display:none!important}
    .site-header nav{width:auto!important;margin-left:auto!important}
    .site-header .audience-switch{order:initial!important;width:auto!important;min-width:196px!important;margin:0!important}
}

@media(max-width:900px){
    .supplier-login-modal{display:block;overflow-y:auto;padding:12px}
    .supplier-access-dialog,.supplier-login-modal.has-registration .supplier-access-dialog{display:grid!important;grid-template-columns:1fr!important;width:min(100%,680px)!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0 auto;overflow:visible!important;border-radius:20px}
    .supplier-access-main,.supplier-login-modal.has-registration .supplier-access-main{order:2;display:block!important;overflow:visible!important;padding:30px 24px 38px!important}
    .supplier-access-aside,.supplier-login-modal.has-registration .supplier-access-aside{order:1;display:block!important;min-height:0!important;padding:0!important;overflow:hidden!important}
    .supplier-access-aside-toggle{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:62px;padding:0 64px 0 22px;border:0;background:transparent;color:#fff;font:inherit;font-size:.9rem;font-weight:500!important;cursor:pointer}
    .supplier-access-aside-toggle .icon{width:18px;height:18px;transition:transform .25s ease}
    .supplier-access-aside.is-expanded .supplier-access-aside-toggle .icon{transform:rotate(180deg)}
    .supplier-access-aside-content{max-height:0;overflow:hidden;opacity:0;transition:max-height .35s ease,opacity .2s ease,padding .35s ease;padding:0 22px}
    .supplier-access-aside.is-expanded .supplier-access-aside-content{max-height:760px;opacity:1;padding:4px 22px 26px}
    .supplier-access-aside-content .supplier-access-brand{display:none}
    .supplier-access-aside-content h3{font-size:1.55rem!important}
    .supplier-access-aside-content p{font-size:.88rem!important}
    .supplier-access-aside-content ul{margin:24px 0!important}
    .supplier-access-aside-content .supplier-access-aside-links{display:flex!important}
    .supplier-access-dialog .login-dialog-close{position:fixed!important;top:22px!important;right:22px!important}
    .supplier-login-modal.has-registration .supplier-registration-embed .registration-card{padding:0!important}
}

@media(max-width:480px){
    .site-header .audience-switch{min-width:180px!important}
    .site-header .audience-switch>span,.site-header .audience-switch>button{padding:0 8px!important;font-size:.75rem!important}
    .supplier-login-modal{padding:0}
    .supplier-access-dialog,.supplier-login-modal.has-registration .supplier-access-dialog{width:100%!important;min-height:100dvh!important;border:0;border-radius:0}
    .supplier-access-main,.supplier-login-modal.has-registration .supplier-access-main{padding:28px 18px 34px!important}
}

/* Keep the anonymous mobile sidebar readable and the supplier overlay contained. */
@media(max-width:1024px){
    .public-sidebar .shell-practical{display:flex!important;align-items:center!important;gap:12px!important}
    .public-sidebar .shell-practical>span{display:inline!important;visibility:visible!important;opacity:1!important;overflow:visible!important;white-space:nowrap!important}
}

@media(max-width:900px){
    .supplier-access-dialog .login-dialog-close{
        position:absolute!important;
        top:12px!important;
        right:12px!important;
        width:40px!important;
        height:40px!important;
        margin:0!important;
        border-color:rgba(255,255,255,.38)!important;
        background:rgba(255,255,255,.96)!important;
        box-shadow:0 4px 14px rgba(7,26,63,.16)!important;
    }
}

/* Footer section titles are labels, not navigation links. */
.public-app footer .footer-grid>div>strong{display:block!important;margin:0 0 13px!important;color:#071a3f!important;font-size:.76rem!important;font-weight:600!important;letter-spacing:.055em!important;line-height:1.25!important;text-transform:uppercase!important;cursor:default!important}
.public-app footer .footer-grid>div>a:not(.footer-logo){font-size:.9rem!important;font-weight:350!important}

/* Public, read-only activity preview. No task link or contact data is exposed here. */
.home-task-preview{padding:clamp(48px,6vw,84px) 0;background:#f9fafb}
.home-task-preview header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}
.home-task-preview .eyebrow{display:inline-flex;align-items:center;gap:7px;margin:0 0 12px}.home-task-preview .eyebrow .icon{width:16px;height:16px}
.home-task-preview h2{margin:0;color:#071a3f;font-size:clamp(2rem,3vw,2.75rem);letter-spacing:-.045em}.home-task-preview header p{margin:8px 0 0;color:#53627b}
.home-task-preview-table{overflow:hidden;border:1px solid #d9e1ef;border-radius:18px;background:#fff}
.home-task-preview-row{display:grid;grid-template-columns:minmax(260px,2.4fr) minmax(130px,1fr) minmax(140px,1fr) minmax(130px,1fr);gap:18px;align-items:center;min-height:88px;padding:16px 22px;border-top:1px solid #e7edf5;color:#263a60;font-size:.92rem}
.home-task-preview-head{min-height:48px;padding-top:10px;padding-bottom:10px;border-top:0;background:#f0f3f8;color:#60708a;font-size:.73rem;font-weight:600!important;letter-spacing:.04em;text-transform:uppercase}
.home-task-preview-row>span:not(.home-task-preview-title){display:grid;gap:4px}.home-task-preview-row small{color:#75829a;font-size:.76rem}.home-task-preview-title{display:flex!important;align-items:center;gap:13px;min-width:0}.home-task-preview-title i{display:grid;width:42px;height:42px;flex:none;place-items:center;border-radius:10px;background:#f0f3f8;color:#071a3f}.home-task-preview-title i .icon{width:20px;height:20px}.home-task-preview-title b{display:block;overflow:hidden;color:#12294f;font-size:1rem;font-weight:500!important;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.home-task-preview-title small{display:block;margin-top:3px}.home-task-preview-note{margin:13px 0 0;color:#71809a;font-size:.8rem}
@media(max-width:760px){.home-task-preview{padding:48px 0}.home-task-preview header{align-items:flex-start;flex-direction:column}.home-task-preview-row{grid-template-columns:1fr 1fr;gap:16px;min-height:0;padding:18px}.home-task-preview-head{display:none}.home-task-preview-title{grid-column:1/-1}.home-task-preview-row>span:not(.home-task-preview-title){font-size:.85rem}.home-task-preview header .button{width:100%;justify-content:center}}
.home-task-preview-row:nth-child(n+4){opacity:.58;filter:blur(.45px)}.home-task-preview-row:nth-child(n+5){opacity:.24;filter:blur(1.15px)}

/* Keep the public hero headline on three deliberate lines. */
.public-app .market-hero h1 .hero-prefix,.public-app .market-hero h1 .hero-opgaver{display:block}.public-app .market-hero h1 .hero-word-rotator{display:grid;width:max-content;min-width:0;margin:0;vertical-align:baseline}.public-app .market-hero h1 .hero-opgaver{margin-top:-.04em}

/* The modal owns the viewport while it is open; the page behind it must never scroll. */
html:has(body.login-modal-open),body.login-modal-open{height:100%;overflow:hidden!important}
@media(max-width:900px){
    .supplier-login-modal.is-open{display:block!important;overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
    .supplier-access-aside:not(.is-expanded){height:54px!important;min-height:54px!important;max-height:54px!important}
    .supplier-access-aside-toggle{min-height:54px!important}
    .supplier-access-aside:not(.is-expanded) .supplier-access-aside-content{height:0!important;min-height:0!important;padding-top:0!important;padding-bottom:0!important;visibility:hidden}
    .supplier-access-aside.is-expanded{height:auto!important;max-height:none!important}
    .supplier-access-aside.is-expanded .supplier-access-aside-content{height:auto!important;visibility:visible}
}
