/* ProLance semantic design foundation. Utility classes remain available to existing Razor views. */
:root {
    color-scheme: light;
    --pl-brand-burgundy: #622c42;
    --pl-brand-champagne: #c9a77c;
    --pl-brand-champagne-soft: #f4ece4;
    --pl-canvas: #faf6f1;
    --pl-surface: #ffffff;
    --pl-surface-raised: #ffffff;
    --pl-text: #34232c;
    --pl-text-muted: #68555d;
    --pl-text-subtle: #68555d;
    --pl-border: #e9deda;
    --pl-divider: #f0e7e2;
    --pl-action: var(--pl-brand-burgundy);
    --pl-action-hover: #4e2134;
    --pl-success: #166534;
    --pl-success-bg: #f0fdf4;
    --pl-warning: #854d0e;
    --pl-warning-bg: #fefce8;
    --pl-danger: #b91c1c;
    --pl-danger-bg: #fef2f2;
    --pl-info: #1d4ed8;
    --pl-info-bg: #eff6ff;
    --pl-focus: var(--pl-brand-burgundy);
    --pl-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --pl-text-display: clamp(2.25rem, 4vw, 3.75rem);
    --pl-text-page: clamp(1.75rem, 3vw, 2.5rem);
    --pl-text-section: clamp(1.25rem, 2vw, 1.75rem);
    --pl-text-card: 1.125rem;
    --pl-text-body: 1rem;
    --pl-text-support: .875rem;
    --pl-text-label: .875rem;
    --pl-space-section: clamp(2.5rem, 5vw, 4.5rem);
    --pl-space-card: 1.25rem;
    --pl-space-form: 1rem;
    --pl-space-inline: .625rem;
    --pl-width-wide: 80rem;
    --pl-width-normal: 72rem;
    --pl-width-narrow: 48rem;
    --pl-radius-control: .625rem;
    --pl-radius-card: 1rem;
    --pl-radius-panel: 1.25rem;
    --pl-shadow-card: 0 1px 3px rgb(15 23 42 / .07), 0 1px 2px rgb(15 23 42 / .04);
    --pl-shadow-panel: 0 12px 32px rgb(15 23 42 / .12);
}

html { font-size: 16px; scroll-behavior: smooth; }
body { font-family: var(--pl-font); color: var(--pl-text); background: var(--pl-canvas); }
img, video, iframe { max-width: 100%; }

.pl-container { width: 100%; margin-inline: auto; padding-inline: 1rem; }
.pl-container--wide { max-width: var(--pl-width-wide); }
.pl-container--normal { max-width: var(--pl-width-normal); }
.pl-container--narrow { max-width: var(--pl-width-narrow); }
.pl-page-content { min-width: 0; }
.pl-page-content > :first-child { min-width: 0; }
.pl-workspace { min-width: 0; padding: 1.5rem 1rem; }
.pl-section { padding-block: var(--pl-space-section); }

.pl-type-display { font-size: var(--pl-text-display); line-height: 1.08; letter-spacing: -.035em; font-weight: 700; }
.pl-type-page { font-size: var(--pl-text-page); line-height: 1.15; letter-spacing: -.025em; font-weight: 700; }
.pl-type-section { font-size: var(--pl-text-section); line-height: 1.25; letter-spacing: -.015em; font-weight: 650; }
.pl-type-card { font-size: var(--pl-text-card); line-height: 1.35; font-weight: 650; }
.pl-type-body { font-size: var(--pl-text-body); line-height: 1.6; }
.pl-type-support { font-size: var(--pl-text-support); line-height: 1.5; color: var(--pl-text-muted); }
.pl-type-label { font-size: var(--pl-text-label); line-height: 1.35; font-weight: 600; }
.pl-type-meta { font-size: .75rem; line-height: 1.4; color: var(--pl-text-subtle); }

:where(a, button, input, textarea, select, summary, [tabindex]:not([tabindex="-1"])):focus-visible,
[class~="focus:outline-none"]:focus-visible {
    outline: 3px solid var(--pl-focus) !important;
    outline-offset: 3px !important;
    box-shadow: 0 0 0 3px #fff !important;
}

.pl-button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 2.75rem; max-width: 100%; padding: .65rem 1rem; border: 1px solid transparent; border-radius: var(--pl-radius-control); font: inherit; font-weight: 650; line-height: 1.25; text-align: center; text-decoration: none; overflow-wrap: anywhere; transition: background-color .16s ease, border-color .16s ease, color .16s ease; }
.pl-button--primary { color: #fff; background: var(--pl-action); }
.pl-button--primary:hover { color: #fff; background: var(--pl-action-hover); }
.pl-button--secondary { color: var(--pl-text); background: var(--pl-surface); border-color: var(--pl-border); }
.pl-button--secondary:hover { background: var(--pl-canvas); }
.pl-button--quiet { color: var(--pl-text-muted); background: transparent; }
.pl-button--quiet:hover { color: var(--pl-text); background: var(--pl-canvas); }
.pl-button--danger { color: #fff; background: var(--pl-danger); }
.pl-button--danger:hover { background: #991b1b; }
.pl-button--icon { width: 2.75rem; min-width: 2.75rem; padding: .5rem; }
.pl-button:disabled, .pl-button[aria-disabled="true"] { opacity: .58; cursor: not-allowed; }
.pl-button[aria-busy="true"] { cursor: progress; }

.pl-field-label { display: block; margin-bottom: .375rem; color: var(--pl-text); font-size: var(--pl-text-label); font-weight: 600; }
.pl-input { display: block; width: 100%; min-width: 0; min-height: 2.75rem; padding: .65rem .75rem; border: 1px solid var(--pl-border); border-radius: var(--pl-radius-control); background: var(--pl-surface); color: var(--pl-text); font: inherit; line-height: 1.4; }
.pl-input::placeholder { color: var(--pl-text-subtle); opacity: 1; }
.pl-input[aria-invalid="true"], .pl-input.input-validation-error, .input-validation-error { border-color: var(--pl-danger); }
.pl-field-hint { display: block; margin-top: .375rem; color: var(--pl-text-muted); font-size: .8125rem; line-height: 1.45; }
.pl-field-error, .field-validation-error, .validation-summary-errors { color: var(--pl-danger); font-size: .875rem; line-height: 1.5; }
.field-validation-valid, .validation-summary-valid { display: none; }
.validation-summary-errors { padding: .875rem 1rem; border: 1px solid #fecaca; border-radius: var(--pl-radius-control); background: var(--pl-danger-bg); }
.validation-summary-errors ul { margin: 0; padding-left: 1.25rem; }

.pl-badge { display: inline-flex; align-items: center; max-width: 100%; gap: .3rem; padding: .25rem .55rem; border-radius: 999px; font-size: .75rem; font-weight: 650; line-height: 1.35; overflow-wrap: anywhere; }
.pl-badge--meta { color: var(--pl-text-muted); background: var(--pl-canvas); }
.pl-badge--trust { color: #14532d; background: #dcfce7; }
.pl-badge--status { color: #1e3a8a; background: #dbeafe; }
.pl-badge--category { color: #7c2d12; background: #ffedd5; }

.pl-alert { padding: .875rem 1rem; border: 1px solid transparent; border-radius: var(--pl-radius-control); line-height: 1.5; }
.pl-alert--info { color: var(--pl-info); border-color: #bfdbfe; background: var(--pl-info-bg); }
.pl-alert--success { color: var(--pl-success); border-color: #bbf7d0; background: var(--pl-success-bg); }
.pl-alert--warning { color: var(--pl-warning); border-color: #fde68a; background: var(--pl-warning-bg); }
.pl-alert--error { color: var(--pl-danger); border-color: #fecaca; background: var(--pl-danger-bg); }

.pl-surface { min-width: 0; border: 1px solid var(--pl-border); border-radius: var(--pl-radius-card); background: var(--pl-surface); }
.pl-surface--marketplace { box-shadow: var(--pl-shadow-card); }
.pl-surface--profile { background: #fff; }
.pl-surface--transaction { background: var(--pl-canvas); }
.pl-empty { padding: 1.25rem; border: 1px dashed var(--pl-border); border-radius: var(--pl-radius-card); background: rgb(255 255 255 / .72); }
.pl-empty__title { margin: 0; color: var(--pl-text); font-weight: 650; }
.pl-empty__description { margin-top: .375rem; color: var(--pl-text-muted); font-size: .875rem; line-height: 1.5; }
.pl-action-group { display: flex; flex-wrap: wrap; align-items: center; gap: .625rem; min-width: 0; }
.pl-safe-wrap { min-width: 0; overflow-wrap: anywhere; word-break: break-word; }
.pl-floating-tools { position: fixed; right: max(1rem, env(safe-area-inset-right)); bottom: calc(1rem + env(safe-area-inset-bottom)); z-index: 40; display: flex; align-items: center; gap: .5rem; }
.pl-floating-action { display: inline-flex; width: 2.875rem; min-width: 2.875rem; height: 2.875rem; align-items: center; justify-content: center; gap: .5rem; border: 1px solid var(--pl-border); border-radius: 999px; font-size: .8125rem; font-weight: 650; text-decoration: none; box-shadow: 0 2px 8px rgb(15 23 42 / .1); transition: background-color .16s ease, border-color .16s ease, color .16s ease; }
.pl-floating-action span { display: none; }
.pl-floating-action--brief { color: var(--pl-action); border-color: var(--pl-brand-champagne); background: #fff; }
.pl-floating-action--brief:hover { border-color: var(--pl-action); background: var(--pl-brand-champagne-soft); }
.pl-floating-action--messages { color: var(--pl-text); border-color: var(--pl-border); background: #fff; }
.pl-floating-action--messages:hover { border-color: var(--pl-brand-champagne); background: var(--pl-canvas); }

/* Category illustration only: these shapes are not seller work samples. */
.pl-service-art { position: relative; display: grid; min-height: 100%; place-items: center; overflow: hidden; isolation: isolate; }
.pl-service-art::before, .pl-service-art::after { position: absolute; z-index: -1; content: ""; border: 1px solid rgb(98 44 66 / .1); border-radius: 999px; }
.pl-service-art::before { width: 9rem; height: 9rem; inset: auto -2rem -4.5rem auto; }
.pl-service-art::after { width: 6rem; height: 6rem; inset: -2.5rem auto auto -1.5rem; }
.pl-service-art__mark { display: grid; width: 4rem; height: 4rem; place-items: center; border: 1px solid rgb(98 44 66 / .12); border-radius: 1rem; background: rgb(255 255 255 / .78); color: var(--pl-action-hover); font-size: 1.25rem; box-shadow: 0 4px 14px rgb(98 44 66 / .06); }
.pl-service-art__label { position: absolute; right: .875rem; bottom: .75rem; left: .875rem; overflow: hidden; color: var(--pl-text-muted); font-size: .7rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.pl-service-art--0, .pl-service-art--1, .pl-service-art--2, .pl-service-art--3 { background: var(--pl-brand-champagne-soft); }
.pl-portfolio-media { display: block; overflow: hidden; border-radius: .875rem; background: #eef1ef; }
.pl-portfolio-media__image { display: block; width: 100%; height: 100%; object-fit: contain; }
.pl-portfolio-preview { max-height: 18rem; padding: .625rem; }
.pl-portfolio-detail__image { width: min(100%, 54rem); height: clamp(14rem, 48vw, 27rem); margin-inline: auto; border-radius: 0; padding: .75rem; }
.pl-package-card { border-color: var(--pl-border); }
.pl-package-card__price { margin: -.25rem -.25rem 0; padding: .25rem .25rem .875rem; border-bottom: 1px solid var(--pl-divider); }
.pl-service-detail__image img { max-height: inherit; }
.pl-next-step { border-left: 4px solid var(--pl-action); }

/* Legacy utility colors resolve through the shared brand palette. */
.pl-brand-area [class~="text-slate-950"], .pl-brand-area [class~="text-slate-900"], .pl-brand-area [class~="text-slate-800"] { color: var(--pl-text) !important; }
.pl-brand-area [class~="text-slate-700"], .pl-brand-area [class~="text-slate-600"], .pl-brand-area [class~="text-slate-500"], .pl-brand-area .pl-type-meta { color: var(--pl-text-muted) !important; }
.pl-brand-area [class~="bg-slate-50"], .pl-brand-area [class~="bg-slate-100"] { background-color: var(--pl-canvas) !important; }
.pl-brand-area [class~="border-slate-100"] { border-color: var(--pl-divider) !important; }
.pl-brand-area [class~="border-slate-200"], .pl-brand-area [class~="border-slate-300"] { border-color: var(--pl-border) !important; }
.pl-brand-area .pl-input { border-color: var(--pl-border) !important; }
.pl-brand-area [class~="text-orange-500"], .pl-brand-area [class~="text-orange-600"], .pl-brand-area [class~="text-orange-700"], .pl-brand-area [class~="text-orange-800"], .pl-brand-area [class~="text-orange-900"], .pl-brand-area [class~="text-orange-950"] { color: var(--pl-brand-burgundy) !important; }
.pl-brand-area [class~="hover:text-orange-500"]:hover, .pl-brand-area [class~="hover:text-orange-600"]:hover, .pl-brand-area [class~="hover:text-orange-700"]:hover, .pl-brand-area [class~="hover:text-orange-800"]:hover, .pl-brand-area [class~="hover:text-orange-900"]:hover, .pl-brand-area [class~="hover:text-orange-950"]:hover,
.pl-brand-area [class~="group-hover:text-orange-500"]:hover, .pl-brand-area [class~="group-hover:text-orange-600"]:hover, .pl-brand-area [class~="group-hover:text-orange-700"]:hover, .pl-brand-area [class~="group-hover:text-orange-800"]:hover, .pl-brand-area [class~="group-hover:text-orange-900"]:hover, .pl-brand-area [class~="group-hover:text-orange-950"]:hover { color: var(--pl-brand-burgundy) !important; }
.pl-brand-area [class~="bg-orange-50"], .pl-brand-area [class~="bg-orange-50/60"], .pl-brand-area [class~="bg-orange-50/70"], .pl-brand-area [class~="bg-orange-100"] { background-color: var(--pl-brand-champagne-soft) !important; }
.pl-brand-area [class~="hover:bg-orange-50"]:hover, .pl-brand-area [class~="hover:bg-orange-50/60"]:hover, .pl-brand-area [class~="hover:bg-orange-50/70"]:hover, .pl-brand-area [class~="focus:bg-orange-50"]:focus, .pl-brand-area [class~="focus-visible:bg-orange-50"]:focus-visible { background-color: var(--pl-brand-champagne-soft) !important; }
.pl-brand-area [class~="bg-orange-500"], .pl-brand-area [class~="bg-orange-600"], .pl-brand-area [class~="bg-orange-700"] { background-color: var(--pl-brand-burgundy) !important; color: #fff !important; }
.pl-brand-area [class~="hover:bg-orange-500"]:hover, .pl-brand-area [class~="hover:bg-orange-600"]:hover, .pl-brand-area [class~="hover:bg-orange-700"]:hover, .pl-brand-area [class~="hover:bg-orange-800"]:hover { background-color: var(--pl-action-hover) !important; }
.pl-brand-area [class~="border-orange-100"], .pl-brand-area [class~="border-orange-200"], .pl-brand-area [class~="border-orange-300"], .pl-brand-area [class~="border-orange-400"], .pl-brand-area [class~="border-orange-600"], .pl-brand-area [class~="border-orange-700"] { border-color: var(--pl-brand-champagne) !important; }
.pl-brand-area [class~="hover:border-orange-500"]:hover, .pl-brand-area [class~="hover:border-orange-600"]:hover, .pl-brand-area [class~="hover:border-orange-700"]:hover { border-color: var(--pl-brand-champagne) !important; }
.pl-brand-area [class~="decoration-orange-300"], .pl-brand-area [class~="decoration-orange-400"], .pl-brand-area [class~="decoration-orange-700"], .pl-brand-area [class~="decoration-orange-800"], .pl-brand-area [class~="decoration-orange-900"] { text-decoration-color: var(--pl-brand-champagne) !important; }
.pl-brand-area [class~="hover:decoration-orange-800"]:hover, .pl-brand-area [class~="hover:decoration-orange-900"]:hover { text-decoration-color: var(--pl-brand-burgundy) !important; }
.pl-brand-area [class~="ring-orange-100"], .pl-brand-area [class~="ring-orange-200"], .pl-brand-area [class~="ring-orange-400"], .pl-brand-area [class~="ring-orange-500"], .pl-brand-area [class~="ring-orange-700"] { --tw-ring-color: var(--pl-brand-burgundy); }
.pl-brand-area [class~="focus:border-orange-400"]:focus, .pl-brand-area [class~="focus:border-orange-500"]:focus { border-color: var(--pl-brand-burgundy) !important; }
.pl-brand-area [class~="focus:ring-orange-100"]:focus, .pl-brand-area [class~="focus:ring-orange-200"]:focus, .pl-brand-area [class~="focus:ring-orange-400"]:focus, .pl-brand-area [class~="focus:ring-orange-500"]:focus, .pl-brand-area [class~="focus:ring-orange-700"]:focus { --tw-ring-color: var(--pl-brand-burgundy); }
.pl-brand-area .pl-badge--category { color: var(--pl-brand-burgundy); background: var(--pl-brand-champagne-soft); }
.pl-brand-area .pl-button--secondary:hover { border-color: var(--pl-brand-champagne); background: var(--pl-brand-champagne-soft); }
.pl-brand-area .pl-button--quiet:hover { color: var(--pl-brand-burgundy); background: var(--pl-brand-champagne-soft); }
.pl-brand-area .pl-button--primary:active:not(:disabled), .pl-brand-area [class~="bg-orange-700"]:active { background: var(--pl-action-hover) !important; }
.pl-brand-area :is(button, a)[disabled], .pl-brand-area :is(button, a)[aria-disabled="true"] { opacity: .58; cursor: not-allowed; }
.pl-brand-area [data-active="true"] { box-shadow: inset 3px 0 var(--pl-brand-champagne); }
.pl-brand-area .pl-service-art__mark { color: var(--pl-brand-burgundy); }
.pl-brand-area .pl-service-art--0,
.pl-brand-area .pl-service-art--1,
.pl-brand-area .pl-service-art--2,
.pl-brand-area .pl-service-art--3 { background: var(--pl-brand-champagne-soft); }

/* Legacy orange utility classes represented brand accents on older screens. */
body [class~="text-orange-50"] { color: var(--pl-brand-champagne) !important; }
body [class~="text-orange-300"], body [class~="text-orange-500"], body [class~="text-orange-600"], body [class~="text-orange-700"], body [class~="text-orange-800"], body [class~="text-orange-900"], body [class~="text-orange-950"] { color: var(--pl-brand-burgundy) !important; }
body [class~="hover:text-orange-500"]:hover, body [class~="hover:text-orange-600"]:hover, body [class~="hover:text-orange-700"]:hover, body [class~="hover:text-orange-800"]:hover, body [class~="hover:text-orange-900"]:hover, body [class~="hover:text-orange-950"]:hover,
body [class~="group-hover:text-orange-500"]:hover, body [class~="group-hover:text-orange-600"]:hover, body [class~="group-hover:text-orange-700"]:hover, body [class~="group-hover:text-orange-800"]:hover, body [class~="group-hover:text-orange-900"]:hover, body [class~="group-hover:text-orange-950"]:hover { color: var(--pl-brand-burgundy) !important; }
body [class~="bg-orange-50"], body [class~="bg-orange-50/60"], body [class~="bg-orange-50/70"], body [class~="bg-orange-100"] { background-color: var(--pl-brand-champagne-soft) !important; }
body [class~="hover:bg-orange-50"]:hover, body [class~="hover:bg-orange-50/60"]:hover, body [class~="hover:bg-orange-50/70"]:hover, body [class~="focus:bg-orange-50"]:focus, body [class~="focus-visible:bg-orange-50"]:focus-visible { background-color: var(--pl-brand-champagne-soft) !important; }
body [class~="bg-orange-500"], body [class~="bg-orange-600"], body [class~="bg-orange-700"], body [class~="bg-orange-800"] { background-color: var(--pl-brand-burgundy) !important; color: #fff !important; }
body [class~="hover:bg-orange-500"]:hover, body [class~="hover:bg-orange-600"]:hover, body [class~="hover:bg-orange-700"]:hover, body [class~="hover:bg-orange-800"]:hover { background-color: var(--pl-action-hover) !important; }
body [class~="border-orange-100"], body [class~="border-orange-200"], body [class~="border-orange-300"], body [class~="border-orange-400"], body [class~="border-orange-500"], body [class~="border-orange-600"], body [class~="border-orange-700"] { border-color: var(--pl-brand-champagne) !important; }
body [class~="hover:border-orange-500"]:hover, body [class~="hover:border-orange-600"]:hover, body [class~="hover:border-orange-700"]:hover { border-color: var(--pl-brand-champagne) !important; }
body [class~="decoration-orange-300"], body [class~="decoration-orange-400"], body [class~="decoration-orange-700"], body [class~="decoration-orange-800"], body [class~="decoration-orange-900"] { text-decoration-color: var(--pl-brand-champagne) !important; }
body [class~="hover:decoration-orange-800"]:hover, body [class~="hover:decoration-orange-900"]:hover { text-decoration-color: var(--pl-brand-burgundy) !important; }
body [class~="ring-orange-100"], body [class~="ring-orange-200"], body [class~="ring-orange-400"], body [class~="ring-orange-500"], body [class~="ring-orange-700"] { --tw-ring-color: var(--pl-brand-burgundy); }
body [class~="focus:border-orange-400"]:focus, body [class~="focus:border-orange-500"]:focus, body [class~="focus-within:border-orange-400"]:focus-within { border-color: var(--pl-brand-burgundy) !important; }
body [class~="focus:ring-orange-100"]:focus, body [class~="focus:ring-orange-200"]:focus, body [class~="focus:ring-orange-400"]:focus, body [class~="focus:ring-orange-500"]:focus, body [class~="focus:ring-orange-700"]:focus,
body [class~="focus-visible:ring-orange-400"]:focus-visible, body [class~="focus-visible:ring-orange-500"]:focus-visible { --tw-ring-color: var(--pl-brand-burgundy); }
body [class~="outline-orange-500"] { outline-color: var(--pl-brand-burgundy) !important; }
body [class~="accent-orange-500"] { accent-color: var(--pl-brand-burgundy) !important; }
body [class~="file:bg-orange-50"]::file-selector-button { background-color: var(--pl-brand-champagne-soft) !important; }
body [class~="file:text-orange-800"]::file-selector-button { color: var(--pl-brand-burgundy) !important; }
body [class~="text-slate-950"], body [class~="text-slate-900"], body [class~="text-slate-800"], body [class~="text-gray-900"], body [class~="text-gray-800"] { color: var(--pl-text) !important; }
body [class~="text-slate-700"], body [class~="text-slate-600"], body [class~="text-slate-500"], body [class~="text-gray-700"], body [class~="text-gray-600"], body [class~="text-gray-500"] { color: var(--pl-text-muted) !important; }
body [class~="bg-slate-50"], body [class~="bg-slate-100"], body [class~="bg-gray-50"], body [class~="bg-gray-100"] { background-color: var(--pl-canvas) !important; }
body [class~="border-slate-100"], body [class~="border-slate-200"], body [class~="border-slate-300"], body [class~="border-gray-100"], body [class~="border-gray-200"], body [class~="border-gray-300"] { border-color: var(--pl-border) !important; }
body [class~="hover:text-slate-700"]:hover, body [class~="hover:text-slate-600"]:hover, body [class~="hover:text-slate-500"]:hover, body [class~="hover:text-gray-700"]:hover, body [class~="hover:text-gray-600"]:hover { color: var(--pl-brand-burgundy) !important; }
body [class~="hover:bg-slate-50"]:hover, body [class~="hover:bg-slate-100"]:hover, body [class~="hover:bg-gray-50"]:hover, body [class~="hover:bg-gray-100"]:hover { background-color: var(--pl-canvas) !important; }
body [class~="hover:border-slate-300"]:hover, body [class~="hover:border-slate-400"]:hover, body [class~="hover:border-gray-300"]:hover, body [class~="hover:border-gray-400"]:hover { border-color: var(--pl-brand-champagne) !important; }
body :is(button, a)[disabled], body :is(button, a)[aria-disabled="true"] { opacity: .58; cursor: not-allowed; }
body input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), body select, body textarea { border-color: var(--pl-border); }
body input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus-visible, body select:focus-visible, body textarea:focus-visible { border-color: var(--pl-brand-burgundy) !important; outline: 2px solid var(--pl-brand-burgundy); outline-offset: 1px; }

#siteHeader .pl-brand__wordmark {
    color: var(--pl-brand-burgundy) !important;
    font-family: var(--pl-font);
    font-size: clamp(1rem, 1.15vw, 1.1875rem);
    font-weight: 650;
    letter-spacing: -.035em;
    line-height: 1;
}
#siteHeader .category-main-option[data-active="true"] { box-shadow: inset 3px 0 var(--pl-brand-champagne), 0 1px 2px rgb(98 44 66 / .08); }
#miniAssistantPanel [class*="focus:ring-orange-"]:focus-visible { --tw-ring-color: var(--pl-brand-burgundy); }

.pl-home-hero { border-color: var(--pl-border) !important; background: var(--pl-canvas) !important; }
.pl-home-hero__copy > p:first-child { color: var(--pl-brand-burgundy) !important; }
#pageContent .pl-home-hero h1 { color: var(--pl-text) !important; }
#pageContent .pl-brand-area .pl-home-hero h1 span:last-child { color: var(--pl-brand-burgundy) !important; }
#pageContent .pl-home-hero__copy > p:nth-of-type(2) { color: var(--pl-text-muted) !important; }
.pl-home-hero form { border-color: var(--pl-border) !important; }
.pl-home-hero form label { color: var(--pl-brand-burgundy); }
.pl-home-hero__visual { color: var(--pl-text); }
.pl-home-hero .pl-home-shortcuts a { border-color: var(--pl-brand-champagne); background: #fff; color: var(--pl-brand-burgundy); }
.pl-home-hero .pl-home-shortcuts a i { color: var(--pl-brand-burgundy); }
.pl-home-workflow, .pl-home-featured { background: var(--pl-canvas) !important; }
.pl-home-paths, .pl-home-categories { background: var(--pl-surface) !important; }
.pl-marketplace-service-card .pl-badge--category { color: var(--pl-brand-burgundy); background: var(--pl-brand-champagne-soft); }

/* Mobile first presentation for the ProLance header, discovery entry points and fixed tools. */
.pl-home-shortcuts { display: none; }
.pl-mobile-nav { min-height: 3.5rem; }

@media (min-width: 640px) {
    .pl-container { padding-inline: 1.5rem; }
    .pl-workspace { padding: 2rem 1.5rem; }
}
@media (min-width: 1024px) {
    .pl-container { padding-inline: 2rem; }
    .pl-workspace { padding-block: 2.5rem; }
    .pl-floating-action { width: auto; min-width: 2.875rem; padding-inline: .875rem; }
    .pl-floating-action span { display: inline; }
}
@media (max-width: 1023px) {
    .mobile-menu-open .pl-floating-tools { visibility: hidden; pointer-events: none; }
}
@media (min-width: 1024px) {
    .pl-account-menu { box-shadow: 0 14px 34px rgb(15 23 42 / .14); }
    .pl-account-menu__link { transition: background-color .14s ease, color .14s ease; }
}
@media (max-width: 767px) {
    .pl-home-shortcuts { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .75rem; }
    .pl-home-shortcuts a { display: inline-flex; min-height: 2.5rem; align-items: center; gap: .4rem; border: 1px solid var(--pl-border); border-radius: 999px; background: rgb(255 255 255 / .78); padding: .45rem .75rem; color: var(--pl-text); font-size: .8125rem; font-weight: 650; text-decoration: none; }
    .pl-floating-action { width: auto; min-width: 2.75rem; height: 2.75rem; padding-inline: .8rem; }
    .pl-floating-action span { display: inline; }
    #pageContent { padding-bottom: calc(5rem + env(safe-area-inset-bottom)); }
    .pl-service-detail__image { max-height: 16rem; }
    .pl-package-card__price { padding-bottom: .75rem; }
    .pl-portfolio-detail__image { height: clamp(13rem, 70vw, 21rem); }
    .pl-profile-summary { width: 100%; }
}
@media (max-width: 639px) {
    :root { --pl-space-section: 2.25rem; --pl-space-card: 1rem; }
    .pl-action-group > .pl-button { flex: 1 1 auto; }
    .pl-mobile-nav { gap: .5rem; }
    .pl-brand__wordmark { font-size: 1rem; }
    #mobileMenu { max-height: calc(100dvh - 3.5rem); overscroll-behavior: contain; }
    #mobileMenu > .pl-container { gap: .25rem; padding-block: .75rem; }
    #mobileMenu > .pl-container > a { min-height: 2.75rem; }
    #mobileMenu [data-mobile-category-navigation] { margin-top: .25rem; }
    #mobileMenu [data-mobile-category-item] > summary { min-height: 2.5rem; padding-block: .5rem; line-height: 1.35; }
    #mobileMenu [data-mobile-category-item] > div { padding-bottom: .375rem; }
    #mobileMenu [data-mobile-category-item] > div > a:first-child { padding-block: .5rem; }
    #mobileMenu [data-mobile-category-item] > div > a:not(:first-child) { min-height: 2.25rem; padding-block: .375rem; }
    .pl-home-hero > .pl-container { gap: .75rem; padding-block: 1.25rem 1rem; }
    .pl-home-hero__copy > p:first-child { margin-bottom: .5rem; font-size: .75rem; }
    .pl-home-hero h1 { max-width: 22ch; font-size: clamp(1.85rem, 8vw, 2.25rem); line-height: 1.08; }
    .pl-home-hero__copy > p:nth-of-type(2) { margin-top: .65rem; font-size: .9375rem; line-height: 1.5; }
    .pl-home-hero form { margin-top: .85rem; padding: .75rem; }
    .pl-home-hero form textarea { min-height: 5rem; }
    .pl-home-hero form > div { gap: .625rem; margin-top: .625rem; padding-top: .625rem; }
    .pl-home-hero form > div > p { font-size: .75rem; line-height: 1.4; }
    .pl-home-hero form button { min-height: 2.875rem; }
    .pl-home-hero__visual { display: none; }
    .pl-home-shortcuts a:focus-visible { outline-offset: 2px !important; }
    .pl-home-hero form > div { align-items: flex-start; }
    .pl-floating-tools { right: max(.75rem, env(safe-area-inset-right)); bottom: calc(.75rem + env(safe-area-inset-bottom)); gap: .4rem; }
    .pl-marketplace-card__body { padding: .875rem; }
    .pl-marketplace-card__body h3 { min-height: 0; margin-top: .375rem; line-height: 1.35; }
    .pl-marketplace-card__body > a:nth-of-type(2) { margin-top: .625rem; }
    .pl-marketplace-card__body > div:last-child { padding-top: .75rem; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}

.pl-theme-picker[hidden] { display: none; }
.pl-theme-picker summary::-webkit-details-marker { display: none; }
.pl-theme-picker summary::marker { content: ""; }
.pl-theme-picker__panel { color: var(--pl-text); }
.pl-theme-picker [aria-pressed="true"] {
    border: 1px solid var(--pl-brand-champagne);
    background: var(--pl-brand-champagne-soft);
    color: var(--pl-text);
}
#siteHeader .pl-header-trigger:focus:not(:focus-visible) { outline: none !important; box-shadow: none !important; }
#siteHeader .pl-header-trigger:focus-visible {
    outline: 2px solid var(--pl-focus) !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 2px var(--pl-surface) !important;
}
#siteHeader .pl-header-trigger[aria-expanded="true"],
#siteHeader details[open] > .pl-header-trigger {
    border-color: var(--pl-brand-champagne) !important;
    background-color: var(--pl-brand-champagne-soft) !important;
    color: var(--pl-text) !important;
}
.pl-share-status[data-state="success"] { color: var(--pl-success) !important; }
.pl-share-status[data-state="error"] { color: var(--pl-danger) !important; }
@media (min-width: 1024px) {
    #siteHeader .pl-theme-picker summary > span { display: none; }
}
