:root {
    --ink: #17212b;
    --muted: #67717d;
    --paper: #faf9f6;
    --line: #e4e7eb;
    --accent: #b78b48;
    --navy: #13283f;
    --olive: #394937;
    --radius: 12px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    color: var(--ink);
    background: var(--paper);
    font: 14px/1.7 'Manrope', Arial, sans-serif;
}

a {
    color: inherit;
    text-decoration: none;
}

a, button, input, select, textarea, summary {
    -webkit-tap-highlight-color: transparent;
}

button, input, select, textarea {
    font: inherit;
}

button, a, summary {
    touch-action: manipulation;
}

button {
    cursor: pointer;
}

:focus-visible {
    outline: 3px solid #c3944e;
    outline-offset: 4px;
}

h1, h2, h3, p {
    margin-top: 0;
}

h1 {
    font-size: clamp(32px, 4vw, 48px);
    letter-spacing: -1.7px;
    line-height: 1.13;
    margin-bottom: 20px;
    font-weight: 600;
}

h2 {
    font-size: 26px;
    line-height: 1.25;
    letter-spacing: -.6px;
    margin-bottom: 15px;
    font-weight: 600;
}

h3 {
    font-size: 17px;
    line-height: 1.4;
    font-weight: 600;
}

p {
    color: var(--muted);
}

img {
    max-width: 100%;
    display: block;
}

.icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    display: inline-block;
    vertical-align: middle;
}

.container {
    width: min(1240px, calc(100% - 80px));
    margin-inline: auto;
}

.skip-link {
    position: fixed;
    top: -90px;
    left: 20px;
    z-index: 100;
    background: white;
    padding: 14px;
    color: #142840;
}

.skip-link:focus {
    top: 12px;
}

.eyebrow, .nav-label {
    display: block;
    font-size: 10px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: var(--accent);
    font-weight: 700;
}

.button, button:where(:not(.mobile-toggle):not(.slider-control):not(.slide-tab):not(.text-button)) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 13px 23px;
    border: 1px solid transparent;
    border-radius: 4px;
    color: var(--button-text, #fff);
    background: var(--accent);
    font-weight: 600;
    font-size: 13px;
    line-height: 1.5;
}

.button:hover, button[type=submit]:hover {
    filter: brightness(.94);
}

.button.small {
    padding: 10px 17px;
    font-size: 12px;
}

.button.secondary, button.secondary {
    background: #eef1f4;
    color: #243648;
}

.button.outline {
    background: transparent;
    border-color: currentColor;
    color: inherit;
}

.button.full {
    width: 100%;
    margin-top: 16px;
}

.button .icon {
    width: 17px;
    height: 17px;
}

.text-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    font-size: 13px;
    border-bottom: 1px solid currentColor;
    padding-bottom: 6px;
}

.brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: 21px;
    font-weight: 700;
    letter-spacing: .4px;
    white-space: nowrap;
}

.brand > .icon {
    width: 32px;
    height: 32px;
    color: var(--accent);
}

.brand-light {
    font-weight: 400;
}

.brand small {
    display: block;
    font-size: 8px;
    letter-spacing: 3.1px;
    line-height: 1.2;
    color: var(--muted);
    margin-top: 5px;
}

.announcement {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #17212b;
    color: #d9dfe3;
    padding: 9px 5%;
    font-size: 9px;
    letter-spacing: 1.8px;
}

.announcement a {
    display: flex;
    gap: 10px;
    align-items: center;
    letter-spacing: .3px;
}

.announcement .icon {
    width: 14px;
    height: 14px;
}

.public-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 23px 5%;
    background: #fff;
    border-bottom: 1px solid var(--line);
}

.public-nav {
    display: flex;
    gap: 25px;
    align-items: center;
    font-size: 12px;
    font-weight: 500;
}

.public-nav a:hover, .login-link:hover {
    color: #9f7638;
}

.public-header-actions {
    display: flex;
    align-items: center;
    gap: 23px;
    font-size: 12px;
}

.mobile-toggle {
    display: none;
    padding: 8px;
    background: transparent;
    border: 1px solid var(--line);
    border-radius: 4px;
    color: inherit;
}

.public-main {
    max-width: 1240px;
    margin: auto;
    padding: 45px 40px 65px;
    min-height: 65vh;
}

.home-page .public-main {
    padding: 0;
    max-width: none;
}

.public-footer {
    background: #13212d;
    color: #e3e7eb;
    padding: 58px 0 0;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.7fr 1fr 1fr 1fr;
    gap: 50px;
    padding-bottom: 45px;
}

.footer-grid h3 {
    font-size: 12px;
    margin-bottom: 20px;
}

.footer-grid p {
    color: #98a8b6;
    font-size: 13px;
    margin: 20px 0 0;
}

.footer-grid a:not(.brand) {
    display: block;
    color: #bac5cf;
    font-size: 12px;
    margin-bottom: 12px;
}

.footer-bottom {
    border-top: 1px solid #2c3b47;
    padding-block: 22px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    font-size: 10px;
    color: #9aabb9;
}

/* Four-image hero: photography with a flat, translucent overlay. */
.hero-slider {
    position: relative;
    background: #14212d;
    height: 615px;
    overflow: hidden;
    color: #fff;
}

.hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .8s ease;
}

.hero-slide.is-active {
    opacity: 1;
    visibility: visible;
}

.hero-slide > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 50%;
}

.hero-slide::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(6, 17, 29, .61);
}

.hero-slide.field-slide::after {
    background: rgba(15, 28, 19, .67);
}

.hero-copy {
    position: relative;
    z-index: 1;
    padding-top: 106px;
    max-width: 770px;
    margin-left: max(5%, calc((100vw - 1240px) / 2));
}

.hero-copy .eyebrow {
    color: #e9c68b;
    letter-spacing: 3px;
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 21px;
}

.hero-copy .eyebrow::before {
    content: '';
    width: 35px;
    height: 1px;
    background: #d7b578;
}

.hero-copy h1 {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(40px, 5.3vw, 76px);
    font-weight: 400;
    letter-spacing: -2px;
    line-height: 1.04;
    margin-bottom: 23px;
}

.hero-copy p {
    color: #e1e4e8;
    font-size: 15px;
    line-height: 1.8;
    max-width: 480px;
    margin-bottom: 29px;
}

.hero-copy .actions {
    display: flex;
    gap: 15px;
}

.hero-copy .button.outline {
    border-color: #c3ccd4;
    color: white;
}

.hero-navigation {
    position: absolute;
    bottom: 0;
    inset-inline: 0;
    z-index: 3;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    border-top: 1px solid #ffffff33;
    padding-inline: 5%;
    background: #0b182bd9;
}

.hero-tabs {
    display: flex;
    align-items: stretch;
    gap: 36px;
}

.slide-tab {
    background: transparent;
    color: #a6b4c3;
    border: 0;
    border-top: 2px solid transparent;
    padding: 22px 0;
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 12px;
}

.slide-tab small {
    font-size: 10px;
    color: #b69051;
}

.slide-tab[aria-pressed=true] {
    color: white;
    border-top-color: #c99d58;
}

.slider-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.slider-control {
    padding: 9px 13px;
    border: 1px solid #657180;
    background: transparent;
    color: white;
    border-radius: 3px;
    font-size: 12px;
}

.slider-status {
    color: #c4cfd8;
    font-size: 11px;
    margin-right: 10px;
}

.hero-trust {
    background: #f0ede6;
    border-bottom: 1px solid #e0dbd2;
    padding: 20px 0;
}

.hero-trust .container {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
}

.hero-trust span {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    letter-spacing: .3px;
    color: #5f625e;
}

.hero-trust .icon {
    color: #9d7e47;
    width: 18px;
    height: 18px;
}

/* Public editorial sections */
.section {
    padding: 75px 0;
}

.section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 32px;
}

.section-heading h2, .section-title {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 40px;
    letter-spacing: -1px;
    font-weight: 400;
    margin: 10px 0 0;
}

.section-heading p {
    margin: 12px 0 0;
    font-size: 13px;
}

.category-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 26px;
}

.category-links a {
    border: 1px solid #dce0e4;
    background: white;
    border-radius: 30px;
    padding: 8px 19px;
    font-size: 11px;
    color: #54616c;
}

.category-links a:first-child {
    background: #1b2b38;
    border-color: #1b2b38;
    color: white;
}

.talent-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
}

.talent-card {
    background: white;
    border: 1px solid #e5e6e4;
    border-radius: 7px;
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
}

.talent-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 30px #152b3a0d;
}

.talent-image {
    position: relative;
    background: #e4e6e8;
    height: 290px;
    overflow: hidden;
}

.talent-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 24%;
    transition: transform .5s ease;
}

.talent-card:hover img {
    transform: scale(1.03);
}

.talent-category {
    position: absolute;
    bottom: 15px;
    left: 17px;
    background: #fffffff0;
    color: #34424c;
    font-size: 9px;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 5px 11px;
    border-radius: 3px;
}

.talent-details {
    padding: 19px 21px;
}

.talent-details h3 {
    font-size: 20px;
    margin-bottom: 7px;
    font-weight: 600;
    letter-spacing: -.6px;
}

.talent-details p {
    margin: 0;
    font-size: 12px;
}

.talent-details .talent-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 19px;
    padding-top: 14px;
    border-top: 1px solid #eef0f1;
    color: #856936;
    font-size: 11px;
}

.editorial-note {
    font-size: 11px;
    margin-top: 22px;
    color: #78818a;
}

.experience-section {
    background: #eeeae3;
}

.experience-grid {
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr;
    gap: 20px;
}

.experience-card {
    position: relative;
    height: 300px;
    overflow: hidden;
    border-radius: 6px;
    background: #1a2935;
    color: white;
}

.experience-card img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.experience-card::after {
    content: '';
    position: absolute;
    inset: 0;
    background: #0e192767;
}

.experience-card > div {
    position: absolute;
    inset-inline: 24px;
    bottom: 26px;
    z-index: 1;
}

.experience-card .eyebrow {
    color: #e2c798;
    font-size: 9px;
}

.experience-card h3 {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-size: 27px;
    font-weight: 400;
    margin: 10px 0;
}

.experience-card p {
    color: #e2e8ed;
    font-size: 12px;
    margin: 0;
}

.records-feature {
    background: #263a2e;
    color: #e7e9e0;
}

.records-feature-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center;
}

.records-feature .section-title {
    font-size: 43px;
    line-height: 1.17;
    margin: 15px 0 23px;
}

.records-feature p {
    color: #c1cabd;
    font-size: 13px;
}

.records-feature .eyebrow {
    color: #ccbb8e;
}

.records-feature .button {
    background: #d1bd8e;
    color: #23352a;
}

.records-feature-image {
    position: relative;
}

.records-feature-image > img {
    height: 400px;
    width: 100%;
    object-fit: cover;
    border-radius: 4px;
}

.records-image-label {
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    background: #162a21ed;
    padding: 17px 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 11px;
    color: #d3ddcd;
}

.records-image-label .icon {
    color: #d5c49b;
    width: 27px;
    height: 27px;
}

.feature-checks {
    margin: 22px 0 28px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.feature-checks span {
    display: flex;
    gap: 9px;
    align-items: center;
    font-size: 11px;
    color: #d5decf;
}

.feature-checks .icon {
    width: 15px;
    height: 15px;
    color: #d1bd8e;
}

.sector-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.sector-card {
    background: #fff;
    padding: 25px;
    border: 1px solid #dfe4dc;
    border-radius: 5px;
    display: flex;
    align-items: start;
    gap: 18px;
}

.sector-card > .icon {
    background: #ecf0e8;
    color: #486044;
    padding: 10px;
    height: 43px;
    width: 43px;
    border-radius: 6px;
}

.sector-card h3 {
    font-size: 15px;
    margin-bottom: 8px;
}

.sector-card p {
    font-size: 12px;
    margin-bottom: 0;
}

.how-section {
    background: #fff;
    border-block: 1px solid #e5e7e8;
}

.process-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 45px;
}

.process-step {
    padding-top: 25px;
    border-top: 1px solid #dddfe2;
}

.process-number {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-size: 37px;
    color: #b68d4a;
    display: block;
    margin-bottom: 20px;
}

.process-step h3 {
    font-size: 18px;
}

.process-step p {
    font-size: 13px;
}

.why-grid {
    display: grid;
    grid-template-columns: 1fr 1.6fr;
    gap: 80px;
    align-items: start;
}

.why-grid .section-title {
    font-size: 43px;
    line-height: 1.15;
    margin-bottom: 20px;
}

.why-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.why-card > .icon {
    width: 30px;
    height: 30px;
    color: #b68d4a;
    margin-bottom: 15px;
}

.why-card h3 {
    font-size: 16px;
    margin-bottom: 10px;
}

.why-card p {
    font-size: 12px;
    margin: 0;
}

.about-band {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: #eae5db;
}

.about-band img {
    width: 100%;
    height: 430px;
    object-fit: cover;
}

.about-band-content {
    padding: 60px 65px;
}

.about-band .section-title {
    margin: 15px 0 22px;
    font-size: 39px;
}

.about-band p {
    font-size: 13px;
}

.faq-grid {
    display: grid;
    grid-template-columns: .9fr 1.2fr;
    gap: 80px;
}

.faq-grid .section-title {
    line-height: 1.16;
    margin: 15px 0 20px;
}

.faq-list details {
    border-bottom: 1px solid #d9dee3;
    padding: 19px 0;
}

.faq-list summary {
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    font-size: 14px;
    font-weight: 600;
}

.faq-list summary::after {
    content: '+';
    font-size: 21px;
    color: #ac843f;
}

.faq-list details[open] summary::after {
    content: '−';
}

.faq-list details p {
    padding-top: 14px;
    font-size: 12px;
    line-height: 1.8;
    margin: 0;
}

.contact-banner {
    background: #172936;
    color: white;
    padding: 48px 0;
}

.contact-banner .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.contact-banner h2 {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 400;
    font-size: 34px;
    margin-bottom: 8px;
}

.contact-banner p {
    margin: 0;
    color: #c0ccd5;
    font-size: 13px;
}

/* Forms and data surfaces shared without sharing navigation. */
label {
    display: block;
    font-weight: 600;
    font-size: 12px;
    margin: 19px 0;
    color: #465566;
}

input, select, textarea {
    width: 100%;
    background: #fff;
    color: #25374a;
    border: 1px solid #dce2e8;
    border-radius: 5px;
    padding: 12px 13px;
    margin-top: 7px;
    outline-offset: 2px;
    font-size: 13px;
}

input::placeholder, textarea::placeholder {
    color: #9ba6b1;
}

input[type=checkbox], input[type=radio] {
    width: auto;
}

textarea {
    min-height: 110px;
    resize: vertical;
}

.card {
    background: white;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 26px;
}

.form {
    max-width: 570px;
    margin-inline: auto;
}

.form.wide {
    max-width: 900px;
}

.grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
}

.split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
}

.actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.notice {
    background: #edf4ec;
    border: 1px solid #dbe7d8;
    border-radius: 5px;
    padding: 14px 18px;
    color: #36543d;
    margin: 16px 0;
}

.notice.error {
    background: #fff0ef;
    border-color: #f1d0ce;
    color: #964a44;
}

.badge {
    display: inline-flex;
    font-size: 10px;
    background: #edf2fa;
    color: #436186;
    padding: 4px 10px;
    border-radius: 30px;
    font-weight: 600;
}

.empty {
    padding: 35px;
    text-align: center;
    color: #8190a0;
}

table {
    border-collapse: collapse;
    width: 100%;
    background: white;
    font-size: 12px;
}

th {
    color: #8590a0;
    font-weight: 600;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .7px;
    background: #fafbfd;
}

th, td {
    text-align: left;
    padding: 16px 18px;
    border-bottom: 1px solid #edf0f4;
}

td a {
    color: #65513b;
    font-weight: 600;
}

.toolbar {
    display: flex;
    gap: 15px;
    align-items: center;
    margin: 25px 0;
}

.toolbar input, .toolbar select {
    margin: 0;
}

.directory .card {
    padding: 12px;
}

.avatar {
    min-height: 180px;
    background: #e9e5db;
    color: #ad8e5f;
    display: grid;
    place-items: center;
    font-size: 60px;
    border-radius: 6px;
}

.avatar img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    object-position: center 24%;
    border-radius: 6px;
}

.directory h2 {
    font-size: 18px;
    margin: 14px 5px 4px;
}

.directory p {
    margin: 0 5px 12px;
    font-size: 12px;
}

.profile-photo {
    width: 100%;
    height: 350px;
    object-fit: cover;
    object-position: center 25%;
    border-radius: 7px;
    margin-bottom: 16px;
}

.profile-cover {
    background: #203244;
    color: white;
    padding: 40px;
    border-radius: 7px;
}

.profile-cover p {
    color: #becdd9;
}

.profile-cover h1 {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 400;
}

.timeline {
    border-left: 2px solid #dde6ef;
    padding-left: 24px;
}

.timeline article {
    margin-bottom: 25px;
    font-size: 12px;
}

/* Administration and account workspaces */
.workspace {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
}

.workspace-sidebar {
    background: #20262d;
    color: #aebdce;
    padding: 28px 17px 18px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-height: 100vh;
    position: sticky;
    top: 0;
    align-self: start;
}

.workspace-brand {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 1px 14px 31px;
    color: white;
    font-size: 22px;
    font-weight: 600;
}

.workspace-brand > .icon {
    width: 28px;
    height: 28px;
    color: #bcc9d7;
}

.workspace-brand small {
    display: block;
    font-size: 7px;
    letter-spacing: 2px;
    color: #9caec1;
    margin-top: 3px;
}

.workspace-sidebar > a:not(.workspace-brand), .sidebar-bottom a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 14px;
    border-radius: 6px;
    font-size: 12px;
}

.workspace-sidebar > a[aria-current=page] {
    background: #3a3d3d;
    color: #fff;
}

.workspace-sidebar > a:hover:not(.workspace-brand) {
    background: #33383d;
    color: #fff;
}

.workspace-sidebar .icon {
    width: 17px;
    height: 17px;
}

.workspace-sidebar .nav-label {
    color: #70879f;
    font-size: 8px;
    letter-spacing: 1.7px;
    padding: 18px 14px 7px;
}

.sidebar-bottom {
    margin-top: auto;
    padding-top: 40px;
}

.workspace-main {
    min-width: 0;
    display: flex;
    flex-direction: column;
    background: #f5f3ee;
}

.workspace-topbar {
    height: 83px;
    padding: 0 36px;
    border-bottom: 1px solid #e8ecf1;
    background: white;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
}

.topbar-left {
    display: flex;
    align-items: center;
    gap: 16px;
}

.breadcrumb {
    font-size: 10px;
    color: #6d7b8e;
}

.breadcrumb > span {
    padding-inline: 11px;
    color: #bec7d1;
}

.topbar-user {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 11px;
}

.topbar-user strong, .topbar-user small {
    display: block;
}

.topbar-user small {
    font-size: 9px;
    color: #8995a5;
    margin-top: 2px;
}

.user-avatar {
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    background: #eae5dc;
    color: #4e4840;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 600;
    flex-shrink: 0;
}

.access-tag {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #8290a1;
    font-size: 9px;
    padding-right: 15px;
    border-right: 1px solid #e4e9f0;
    margin-right: 3px;
}

.access-tag .icon {
    width: 13px;
    height: 13px;
}

.workspace-content {
    padding: 36px;
    flex: 1;
    min-width: 0;
}

.workspace-content h1 {
    font-size: 28px;
    font-weight: 600;
    letter-spacing: -.9px;
    margin-bottom: 8px;
}

.workspace-content > p {
    font-size: 12px;
    margin-bottom: 30px;
}

.workspace-content h2 {
    font-size: 18px;
    letter-spacing: -.2px;
}

.workspace-content .button, .workspace-content button[type=submit], .workspace-content button:not(.secondary) {
    background: #292f35;
    color: white;
}

.workspace-content .eyebrow {
    color: #766043;
}

.workspace-footer {
    border-top: 1px solid #e6ebf2;
    margin: 0 36px;
    padding: 18px 0;
    display: flex;
    gap: 20px;
    justify-content: space-between;
    font-size: 10px;
    color: #93a0ae;
}

.page-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 28px;
}

.page-heading p {
    font-size: 12px;
    margin: 9px 0 0;
}

.page-heading .eyebrow {
    margin-bottom: 8px;
    font-size: 8px;
    letter-spacing: 2px;
}

.stat-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 28px;
}

.stat-card {
    padding: 21px;
    background: white;
    border: 1px solid #e5eaf1;
    border-radius: 9px;
    display: flex;
    gap: 17px;
    align-items: center;
}

.stat-card > .icon {
    width: 40px;
    height: 40px;
    border-radius: 9px;
    padding: 10px;
    background: #f1ede6;
    color: #716957;
}

.stat-card p {
    font-size: 10px;
    margin-bottom: 3px;
}

.stat-card strong {
    font-size: 27px;
    line-height: 1.15;
    letter-spacing: -.6px;
}

.stat-card.tone-green > .icon {
    background: #e9f4eb;
    color: #5c8866;
}

.stat-card.tone-amber > .icon {
    background: #faf1e1;
    color: #ac8950;
}

.stat-card.tone-purple > .icon {
    background: #f1ede6;
    color: #716957;
}

.panel {
    background: white;
    border: 1px solid #e4e9f0;
    border-radius: 10px;
    overflow: hidden;
}

.panel-header {
    padding: 22px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid #edf0f4;
}

.panel-header h2 {
    font-size: 15px;
    margin: 0;
}

.panel-header a {
    color: #65513b;
    font-size: 11px;
}

.panel-body {
    padding: 24px;
}

.dashboard-columns {
    display: grid;
    grid-template-columns: 1.45fr 1fr;
    gap: 24px;
    margin-bottom: 27px;
}

.operation-link {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px 0;
    border-bottom: 1px solid #edf0f5;
}

.operation-link:last-child {
    border: 0;
}

.operation-link > .icon:first-child {
    background: #f0f4f8;
    color: #587598;
    width: 38px;
    height: 38px;
    padding: 10px;
    border-radius: 7px;
}

.operation-link > .icon:last-child {
    margin-left: auto;
    color: #a0b0c2;
    width: 16px;
    height: 16px;
}

.operation-link strong {
    font-size: 12px;
    display: block;
}

.operation-link small {
    font-size: 10px;
    color: #8995a5;
    display: block;
    margin-top: 3px;
}

.activity-item {
    display: flex;
    align-items: start;
    gap: 12px;
    padding: 13px 0;
    border-bottom: 1px solid #edf0f4;
}

.activity-item strong {
    font-size: 11px;
    display: block;
}

.activity-item small {
    color: #8995a5;
    font-size: 10px;
}

.activity-item .icon {
    color: #647d9e;
    width: 17px;
    height: 17px;
    margin-top: 3px;
}

.status-bar {
    display: grid;
    grid-template-columns: 110px 1fr 26px;
    gap: 12px;
    align-items: center;
    font-size: 10px;
    padding-block: 12px;
}

meter {
    width: 100%;
    height: 9px;
}

meter::-webkit-meter-bar {
    background: #edf1f6;
    border: 0;
    border-radius: 5px;
}

meter::-webkit-meter-optimum-value {
    background: #83765e;
    border-radius: 5px;
}

/* Personal account: a light sidebar and its own account header. */
.fan-console .workspace-sidebar {
    background: #fff;
    color: #758295;
    border-right: 1px solid #e5e9ef;
}

.fan-console .workspace-brand {
    color: #243847;
}

.fan-console .workspace-brand > .icon {
    color: #b18a4c;
}

.fan-console .workspace-brand small {
    color: #9ba6b1;
}

.fan-console .workspace-sidebar > a[aria-current=page] {
    background: #f2eee5;
    color: #65513b;
}

.fan-console .workspace-sidebar > a:hover:not(.workspace-brand) {
    background: #f4f1eb;
    color: #65513b;
}

.fan-console .workspace-sidebar .nav-label {
    color: #a2adba;
}

.fan-sidebar-profile {
    padding: 8px 15px 21px;
    display: grid;
    gap: 3px;
    font-size: 10px;
    border-bottom: 1px solid #edf0f4;
    margin-bottom: 8px;
}

.fan-sidebar-profile .user-avatar {
    width: 43px;
    height: 43px;
    margin-bottom: 9px;
    background: #f0e8da;
    color: #a8854d;
}

.fan-sidebar-profile strong {
    font-size: 13px;
    color: #354759;
}

.fan-discover-card {
    margin: 24px 10px 0;
    background: #f5f0e7;
    color: #8a7148;
    border-radius: 8px;
    padding: 17px 14px;
    font-size: 11px;
}

.fan-discover-card a {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 10px;
    margin-top: 10px;
    font-weight: 600;
}

.notification-button {
    position: relative;
    display: flex;
    align-items: center;
    margin-right: 10px;
    color: #71839a;
}

.notification-button span {
    position: absolute;
    top: -7px;
    right: -7px;
    background: #ac7d38;
    color: white;
    font-size: 8px;
    border-radius: 50%;
    width: 13px;
    height: 13px;
    text-align: center;
}

.fan-welcome {
    background: #f0ece4;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 30px;
    border: 1px solid #dfe6f2;
    border-radius: 9px;
    margin-bottom: 27px;
}

.fan-welcome h1 {
    font-size: 30px;
}

.fan-welcome p {
    margin: 10px 0 0;
    font-size: 12px;
}

.fan-welcome .button {
    background: #536e9d;
}

/* Organization records: solid olive, sand, and disciplined surfaces. */
.organization-console {
    --accent: #637452;
}

.organization-console .workspace-sidebar {
    background: #27362b;
    color: #b7c1af;
}

.organization-console .workspace-sidebar > a[aria-current=page] {
    background: #435641;
    color: #f0eadb;
}

.organization-console .workspace-sidebar > a:hover:not(.workspace-brand) {
    background: #3a4c38;
    color: white;
}

.organization-console .workspace-sidebar .nav-label {
    color: #889981;
}

.organization-console .workspace-brand > .icon {
    color: #cfbf95;
}

.organization-console .workspace-brand small {
    color: #b8bea8;
}

.organization-console .workspace-main {
    background: #f1f2eb;
}

.organization-console .workspace-content .button, .organization-console .workspace-content button:not(.secondary) {
    background: #526445;
}

.organization-console .workspace-content .eyebrow {
    color: #72805d;
}

.organization-console .badge {
    background: #e9eedf;
    color: #5a704a;
}

.organization-console .workspace-topbar {
    border-bottom-color: #e0e4d7;
}

.organization-console .workspace-topbar .user-avatar {
    background: #e8ebdc;
    color: #5a6b4c;
}

.organization-label {
    color: #b9c4a7;
    font-size: 8px;
    letter-spacing: 1.2px;
    margin: 0 13px 15px;
    display: flex;
    align-items: center;
    gap: 9px;
}

.status-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #a4b589;
    display: inline-block;
    flex-shrink: 0;
}

.operations-note {
    margin: 30px 13px 0;
    padding: 17px 14px;
    background: #344733;
    border: 1px solid #526249;
    border-radius: 4px;
}

.operations-note > .icon {
    color: #d3c9a3;
    margin-bottom: 9px;
}

.operations-note strong {
    display: block;
    font-size: 11px;
    color: #dbe2cd;
}

.operations-note p {
    color: #adbba3;
    font-size: 10px;
    margin: 8px 0 0;
}

.records-header {
    padding: 23px 5%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #273a2d;
    color: #e8ebdf;
    gap: 20px;
}

.records-header .brand > .icon {
    color: #c6b88e;
}

.records-header .brand small {
    color: #bdc6b3;
    font-size: 7px;
}

.records-header nav {
    display: flex;
    gap: 27px;
    font-size: 12px;
}

.records-header .button {
    background: #bdac7d;
    color: #273a2d;
}

.records-strip {
    background: #e8e8db;
    border-bottom: 1px solid #d7dcce;
    padding: 12px 5%;
    font-size: 9px;
    color: #5e6e50;
    letter-spacing: 1.5px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.records-strip > span:last-child {
    margin-left: auto;
    letter-spacing: .4px;
    font-size: 10px;
}

.records-main {
    max-width: 1240px;
    margin: auto;
    padding: 55px 40px 70px;
    min-height: 68vh;
}

.organization-public {
    background: #f3f3eb;
    --accent: #687a55;
}

.records-footer {
    background: #26382b;
    color: #bdc9b4;
    padding: 34px 5%;
    display: flex;
    align-items: center;
    gap: 40px;
    justify-content: space-between;
    font-size: 10px;
}

.records-footer p {
    color: #aab89f;
    margin: 0;
    max-width: 370px;
}

.records-footer .brand {
    font-size: 17px;
}

.records-footer .brand > .icon {
    color: #cdbb8c;
}

.records-footer .brand small {
    color: #abbca2;
    font-size: 7px;
}

.records-hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: #2d4030;
    color: white;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 35px;
}

.records-hero > div {
    padding: 48px;
}

.records-hero h1 {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 400;
    margin-top: 16px;
}

.records-hero p {
    color: #c8d0bf;
}

.records-hero .eyebrow {
    color: #c6bc95;
}

.records-hero img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
}

.status-check-shell {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    background: white;
    border: 1px solid #dce2d3;
    border-radius: 7px;
    overflow: hidden;
}

.status-check-story {
    background: #2c4030;
    color: white;
    padding: 48px;
    position: relative;
}

.status-check-story > .icon {
    width: 50px;
    height: 50px;
    color: #c7bc96;
    margin-bottom: 30px;
}

.status-check-story h1 {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 400;
    font-size: 39px;
}

.status-check-story p {
    color: #becbb6;
}

.status-check-story .eyebrow {
    color: #c6bc95;
    margin-bottom: 20px;
}

.status-check-form {
    padding: 40px;
}

.status-check-form h2 {
    font-size: 23px;
    margin-bottom: 12px;
}

.status-check-form .button {
    background: #647951;
    width: 100%;
    margin-top: 12px;
}

.status-check-form .form-help {
    font-size: 11px;
    color: #8a967e;
    margin: 20px 0 0;
}

.status-result {
    max-width: 750px;
    margin: 35px auto 0;
}

.result-head {
    background: #eaf1e3;
    padding: 24px;
    text-align: center;
    border-bottom: 1px solid #dfe7d4;
}

.result-head > .icon {
    width: 35px;
    height: 35px;
    color: #6c8754;
    margin-bottom: 10px;
}

.result-head h2 {
    margin-bottom: 8px;
}

/* Authentication has its own chrome, independent of all menus. */
.auth-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 25px 5%;
    border-bottom: 1px solid #e2e7ee;
}

.auth-exit {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #8492a3;
    font-size: 11px;
}

.auth-exit .icon {
    width: 15px;
    height: 15px;
}

.auth-main {
    max-width: 1100px;
    padding: 55px 30px;
    margin: auto;
    min-height: calc(100vh - 166px);
}

.auth-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 5%;
    font-size: 10px;
    color: #95a0ae;
}

.auth-footer span:first-child {
    display: flex;
    align-items: center;
    gap: 8px;
}

.auth-footer .icon {
    width: 13px;
    height: 13px;
}

.staff-auth {
    background: #eef2f7;
}

.staff-auth .auth-header {
    background: #15293e;
    color: #f2f4f7;
    border: 0;
}

.staff-auth .brand > .icon {
    color: #acbfd5;
}

.staff-auth .brand small {
    color: #91a8c2;
}

.staff-auth .auth-exit {
    color: #a2b4ca;
}

.staff-login-shell {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-radius: 12px;
    background: white;
    box-shadow: 0 15px 50px #162b4610;
    overflow: hidden;
    border: 1px solid #dfe6ef;
    min-height: 520px;
}

.staff-login-story {
    background: #1c3552;
    color: white;
    padding: 47px;
    display: flex;
    flex-direction: column;
    align-items: start;
}

.auth-kicker {
    display: flex;
    gap: 12px;
    align-items: center;
    font-size: 9px;
    letter-spacing: 2px;
    color: #aac0dc;
    margin-bottom: 36px;
}

.staff-login-story h1 {
    font-size: 43px;
    letter-spacing: -1.8px;
    line-height: 1.09;
    margin-bottom: 23px;
}

.staff-login-story p {
    font-size: 12px;
    color: #b1c4da;
    line-height: 1.9;
}

.staff-auth-points {
    display: grid;
    gap: 14px;
    margin: 20px 0 36px;
    color: #c3d2e4;
    font-size: 10px;
}

.staff-auth-points span {
    display: flex;
    gap: 10px;
    align-items: center;
}

.staff-auth-points .icon {
    width: 16px;
    height: 16px;
}

.auth-story-foot {
    margin-top: auto;
    font-size: 8px;
    letter-spacing: 1.5px;
    color: #718fad;
}

.staff-login-form {
    padding: 55px 48px;
}

.staff-login-form .eyebrow {
    color: #567699;
    margin-bottom: 19px;
    font-size: 9px;
    letter-spacing: 2px;
}

.staff-login-form h2 {
    font-size: 27px;
    letter-spacing: -.8px;
    line-height: 1.18;
}

.staff-login-form > p {
    font-size: 12px;
    color: #8390a2;
}

.staff-login-form .button {
    background: #2e5686;
}

.auth-assistance {
    display: flex;
    gap: 12px;
    align-items: start;
    padding-top: 24px;
    margin-top: 28px;
    border-top: 1px solid #e8edf3;
    color: #9aacbf;
}

.auth-assistance .icon {
    width: 16px;
    height: 16px;
}

.auth-assistance p {
    margin: 0;
    font-size: 10px;
    color: #9aa7b8;
    line-height: 1.8;
}

.fan-auth {
    background: #f5f2ed;
}

.fan-auth .auth-main > .card {
    padding: 40px;
    border-color: #e2ddd4;
    max-width: 510px;
}

.fan-auth .auth-main h1 {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 400;
    font-size: 41px;
}

.fan-auth .auth-main .eyebrow {
    margin-bottom: 15px;
}

.contact-layout {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 70px;
    align-items: start;
}

.contact-layout .section-title {
    line-height: 1.17;
    margin: 17px 0 23px;
}

.contact-details {
    display: grid;
    gap: 20px;
    margin-top: 35px;
}

.contact-details > div {
    display: flex;
    align-items: start;
    gap: 15px;
}

.contact-details .icon {
    color: #b38b49;
}

.contact-details strong {
    display: block;
    font-size: 13px;
}

.contact-details p {
    font-size: 12px;
    margin: 5px 0 0;
}

.content-prose {
    max-width: 850px;
    margin: auto;
    font-size: 14px;
}

.content-prose p {
    line-height: 1.9;
}

.content-prose h2 {
    margin-top: 35px;
}

.credit-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.credit-list a {
    color: #8d713f;
    text-decoration: underline;
}

.credit-list p {
    font-size: 12px;
}

@media (max-width: 1150px) {
    .public-nav {
        gap: 15px;
    }
    .public-header {
        padding-inline: 30px;
        gap: 20px;
    }
    .public-header-actions {
        gap: 13px;
    }
    .login-link {
        display: none;
    }
    .hero-tabs {
        gap: 20px;
    }
    .stat-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .workspace {
        grid-template-columns: 215px minmax(0, 1fr);
    }
    .workspace-content {
        padding: 28px;
    }
    .workspace-topbar {
        padding-inline: 28px;
    }
    .access-tag {
        display: none;
    }
}

@media (max-width: 900px) {
    .mobile-toggle {
        display: inline-flex;
    }
    .public-header {
        padding: 18px 25px;
        flex-wrap: wrap;
    }
    .public-header > .mobile-toggle {
        margin-left: auto;
    }
    .public-nav {
        display: none;
        order: 4;
        width: 100%;
        flex-direction: column;
        align-items: start;
        gap: 0;
        padding-block: 15px;
    }
    .public-nav.is-open {
        display: flex;
    }
    .public-nav a {
        width: 100%;
        padding: 11px 0;
        border-bottom: 1px solid #edf0f2;
    }
    .container {
        width: calc(100% - 50px);
    }
    .hero-copy {
        margin-inline: 35px;
        padding-top: 85px;
        max-width: 650px;
    }
    .hero-copy h1 {
        font-size: 58px;
    }
    .hero-slider {
        height: 580px;
    }
    .hero-navigation {
        padding-inline: 25px;
    }
    .hero-tabs {
        gap: 18px;
    }
    .slide-tab {
        font-size: 10px;
        gap: 7px;
    }
    .slider-status {
        display: none;
    }
    .hero-trust .container {
        flex-wrap: wrap;
        justify-content: center;
        gap: 18px 30px;
    }
    .records-feature-grid, .why-grid, .faq-grid {
        gap: 40px;
    }
    .experience-grid {
        grid-template-columns: 1fr 1fr;
    }
    .experience-grid > :last-child {
        display: none;
    }
    .records-feature .section-title {
        font-size: 35px;
    }
    .about-band-content {
        padding: 40px;
    }
    .about-band img {
        height: 100%;
    }
    .workspace {
        grid-template-columns: 1fr;
    }
    .workspace-sidebar {
        display: none;
        position: fixed;
        z-index: 20;
        width: 250px;
        height: 100dvh;
        overflow-y: auto;
        box-shadow: 10px 0 40px #142d4424;
    }
    .workspace-sidebar.is-open {
        display: flex;
    }
    .workspace-topbar {
        height: 75px;
    }
    .workspace-content {
        padding: 25px;
    }
    .workspace-footer {
        margin-inline: 25px;
    }
    .records-header {
        flex-wrap: wrap;
    }
    .records-header > .mobile-toggle {
        margin-left: auto;
        border-color: #66755e;
    }
    .records-header nav {
        display: none;
        flex-direction: column;
        order: 4;
        width: 100%;
        gap: 0;
    }
    .records-header nav.is-open {
        display: flex;
    }
    .records-header nav a {
        padding: 13px 0;
    }
    .records-strip > span:last-child {
        display: none;
    }
}

@media (max-width: 650px) {
    body {
        font-size: 13px;
    }
    .container {
        width: calc(100% - 40px);
    }
    .announcement {
        justify-content: center;
        padding: 10px 15px;
        font-size: 7px;
        letter-spacing: 1.15px;
    }
    .announcement a {
        display: none;
    }
    .public-header {
        padding-inline: 20px;
        gap: 15px;
    }
    .public-header-actions {
        display: none;
    }
    .brand {
        font-size: 18px;
    }
    .brand > .icon {
        width: 28px;
        height: 28px;
    }
    .brand small {
        font-size: 7px;
    }
    .hero-slider {
        height: 595px;
    }
    .hero-copy {
        margin-inline: 25px;
        padding-top: 65px;
    }
    .hero-copy h1 {
        font-size: 45px;
        letter-spacing: -1.5px;
    }
    .hero-copy p {
        font-size: 13px;
        max-width: 330px;
    }
    .hero-copy .eyebrow {
        font-size: 8px;
        letter-spacing: 2px;
    }
    .hero-copy .actions {
        flex-wrap: wrap;
        gap: 10px;
    }
    .hero-copy .button {
        padding: 12px 16px;
        font-size: 11px;
    }
    .hero-navigation {
        padding-inline: 20px;
        flex-direction: column;
        align-items: stretch;
        padding-bottom: 13px;
    }
    .hero-tabs {
        gap: 12px;
        justify-content: space-between;
    }
    .slide-tab {
        gap: 5px;
        font-size: 9px;
        padding: 13px 0;
    }
    .slide-tab small {
        font-size: 8px;
    }
    .slider-actions {
        justify-content: end;
    }
    .slider-control {
        padding: 6px 10px;
        font-size: 10px;
    }
    .hero-trust span {
        font-size: 9px;
    }
    .hero-trust .container {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }
    .section {
        padding: 48px 0;
    }
    .section-heading {
        align-items: start;
        gap: 20px;
    }
    .section-heading .text-link {
        font-size: 10px;
        margin-top: 20px;
        white-space: nowrap;
    }
    .section-heading h2, .section-title {
        font-size: 31px;
    }
    .section-heading p {
        font-size: 12px;
    }
    .talent-grid {
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }
    .talent-image {
        height: 210px;
    }
    .talent-details {
        padding: 13px;
    }
    .talent-details h3 {
        font-size: 16px;
    }
    .talent-details p {
        font-size: 10px;
    }
    .talent-category {
        font-size: 7px;
        padding: 4px 7px;
        left: 10px;
        bottom: 10px;
    }
    .talent-details .talent-meta {
        font-size: 9px;
        margin-top: 12px;
        padding-top: 10px;
    }
    .experience-grid, .records-feature-grid, .why-grid, .faq-grid, .about-band, .contact-layout, .records-hero, .status-check-shell {
        grid-template-columns: 1fr;
    }
    .experience-grid {
        gap: 15px;
    }
    .experience-grid > :last-child {
        display: block;
    }
    .experience-card {
        height: 230px;
    }
    .records-feature-grid {
        gap: 30px;
    }
    .records-feature-image > img {
        height: 280px;
    }
    .sector-grid {
        grid-template-columns: 1fr;
    }
    .process-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    .process-number {
        font-size: 27px;
        margin-bottom: 10px;
    }
    .process-step {
        padding-top: 20px;
    }
    .why-grid {
        gap: 30px;
    }
    .why-cards {
        gap: 25px 20px;
    }
    .why-card h3 {
        font-size: 14px;
    }
    .about-band img {
        height: 250px;
    }
    .about-band-content {
        padding: 35px 25px;
    }
    .about-band .section-title {
        font-size: 30px;
    }
    .faq-grid {
        gap: 25px;
    }
    .contact-banner .container {
        flex-direction: column;
        align-items: start;
        gap: 25px;
    }
    .contact-banner h2 {
        font-size: 28px;
    }
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }
    .footer-brand {
        grid-column: 1/-1;
    }
    .footer-bottom {
        flex-direction: column;
        gap: 10px;
    }
    .public-main {
        padding: 35px 20px 50px;
    }
    .grid {
        grid-template-columns: 1fr;
    }
    .split, .dashboard-columns {
        grid-template-columns: 1fr;
    }
    .toolbar {
        flex-wrap: wrap;
    }
    .toolbar input, .toolbar select {
        min-width: 100%;
    }
    table {
        display: block;
        overflow-x: auto;
    }
    th, td {
        white-space: nowrap;
        padding: 13px 15px;
    }
    .workspace-content {
        padding: 23px 18px;
    }
    .workspace-topbar {
        padding-inline: 18px;
        height: 68px;
    }
    .breadcrumb {
        font-size: 8px;
    }
    .breadcrumb > span {
        padding-inline: 6px;
    }
    .topbar-user > span:last-child:not(.user-avatar) {
        display: none;
    }
    .user-avatar {
        width: 29px;
        height: 29px;
        font-size: 9px;
    }
    .workspace-content h1 {
        font-size: 25px;
    }
    .page-heading {
        align-items: start;
        flex-direction: column;
        gap: 20px;
    }
    .stat-grid {
        gap: 12px;
    }
    .stat-card {
        padding: 16px 13px;
        gap: 12px;
    }
    .stat-card > .icon {
        width: 32px;
        height: 32px;
        padding: 8px;
    }
    .stat-card p {
        font-size: 8px;
    }
    .stat-card strong {
        font-size: 23px;
    }
    .panel-body {
        padding: 20px;
    }
    .fan-welcome {
        flex-direction: column;
        align-items: start;
        gap: 20px;
        padding: 25px;
    }
    .workspace-footer {
        flex-direction: column;
        gap: 5px;
        margin-inline: 18px;
    }
    .records-header {
        padding: 20px;
    }
    .records-header > .button {
        display: none;
    }
    .records-strip {
        font-size: 7px;
        padding-inline: 20px;
    }
    .records-main {
        padding: 35px 20px 45px;
    }
    .records-hero > div, .status-check-story, .status-check-form {
        padding: 30px;
    }
    .records-hero img {
        height: 220px;
        min-height: auto;
    }
    .records-footer {
        flex-direction: column;
        align-items: start;
        gap: 20px;
        padding: 30px 20px;
    }
    .auth-header {
        padding: 22px 20px;
    }
    .auth-exit {
        font-size: 9px;
    }
    .auth-exit .icon {
        display: none;
    }
    .auth-main {
        padding: 30px 20px;
    }
    .staff-login-shell {
        grid-template-columns: 1fr;
    }
    .staff-login-story {
        padding: 30px;
    }
    .staff-login-story h1 {
        font-size: 34px;
    }
    .staff-login-story h1 br {
        display: none;
    }
    .auth-kicker {
        margin-bottom: 20px;
    }
    .staff-auth-points {
        margin: 12px 0 0;
    }
    .auth-story-foot {
        display: none;
    }
    .staff-login-form {
        padding: 35px 30px;
    }
    .auth-footer {
        padding-inline: 20px;
        gap: 15px;
        font-size: 8px;
    }
    .fan-auth .auth-main > .card {
        padding: 28px;
    }
    .credit-list {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
    *, *::before, *::after {
        transition: none !important;
        animation: none !important;
    }
}

.hero-copy .hero-heading {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(40px, 5.3vw, 76px);
    font-weight: 400;
    letter-spacing: -2px;
    line-height: 1.04;
    margin-bottom: 23px;
}

@media(max-width:900px) {
    .hero-copy .hero-heading {
        font-size: 58px;
    }
}

@media(max-width:650px) {
    .hero-copy .hero-heading {
        font-size: 45px;
        letter-spacing: -1.5px;
    }
}

.booking-subtitle {
    display: block;
    font-size: 10px;
    color: #97a4b3;
    margin-top: 4px;
}

.talent-profile {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 65px;
    align-items: center;
    margin: 32px 0 40px;
}

.talent-profile-photo {
    background: #e4e6e4;
    border-radius: 6px;
    overflow: hidden;
}

.talent-profile-photo img {
    width: 100%;
    height: 490px;
    object-fit: cover;
    object-position: center 23%;
}

.talent-profile-copy .eyebrow {
    font-size: 9px;
    margin-bottom: 19px;
}

.talent-profile-copy h1 {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-size: 53px;
    font-weight: 400;
}

.talent-profile-role {
    color: #9c7d4a;
    font-size: 12px;
    margin-bottom: 25px;
}

.talent-profile-copy .actions {
    margin: 30px 0 15px;
}

.talent-profile-copy .editorial-note {
    font-size: 11px;
    line-height: 1.8;
}

.photo-credit {
    font-size: 10px;
    color: #a18c6f;
    text-decoration: underline;
}

@media(max-width:650px) {
    .talent-profile {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .talent-profile-photo img {
        height: 380px;
    }
    .talent-profile-copy h1 {
        font-size: 40px;
    }
}

.admin-console, .staff-auth {
    --accent: #292f35;
}

.fan-console {
    --accent: #536e9d;
}

.organization-console .workspace-footer {
    color: #89967c;
    border-color: #dbe2d2;
}

.portrait-dua-lipa {
    object-position: center top !important;
}

:root {
    --button-text: #fff;
}

.public-site, .fan-auth {
    --button-text: #17212b;
}

.organization-console .stat-card > .icon {
    background: #e9edde;
    color: #6b7d55;
}

.organization-console .stat-card {
    border-color: #dfe4d5;
}

.organization-console .panel {
    border-color: #dce3d2;
}

.organization-console .panel-header {
    border-color: #e5eadf;
}

.organization-console .panel-header h2 {
    color: #3e543a;
}

.organization-console .application-toolbar {
    margin: 0;
}

.organization-console .application-toolbar select {
    max-width: 240px;
}

.organization-console td a {
    color: #687a50;
}

.organization-console th {
    background: #f8faf5;
    color: #7b886e;
}

.organization-console .workspace-content button[type=submit] {
    background: #526445;
}

@media(max-width:650px) {
    .organization-console .application-toolbar select {
        max-width: none;
    }
}


/* Editorial identity and shared operational surfaces. */
:root {
    --ink: #252b31;
    --muted: #65696e;
    --paper: #faf8f4;
    --line: #dedbd4;
    --accent: #866638;
    --navy: #20262d;
    --radius: 3px;
}

body {
    -webkit-font-smoothing: antialiased;
}

.public-header {
    background: #faf8f4;
    border-bottom: 1px solid var(--line);
}

.brand {
    letter-spacing: -.7px;
}

.brand small {
    letter-spacing: 1.4px;
}

.public-nav a {
    font-size: 12px;
}

.public-header .button, .public-site .button, .fan-auth .button,
.workspace-content .button, .workspace-content button[type=submit],
.workspace-content button:where(:not(.secondary):not(.text-button)) {
    background: #252b31;
    color: #fff;
    border-radius: 3px;
}

.public-site .button.secondary, .workspace-content .button.secondary,
.workspace-content button.secondary {
    background: transparent;
    color: #252b31;
    border: 1px solid #c9c3b9;
}

.eyebrow, .workspace-content .eyebrow {
    color: #7f633c;
    letter-spacing: 1.8px;
    font-size: 10px;
}

.section {
    padding-block: 76px;
}

.section-heading h2, .editorial-records h2, .about-editorial h2,
.editorial-intro h1, .services-register h2, .contact-editorial h2 {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 400;
    letter-spacing: -1px;
    line-height: 1.35;
}

.section-heading h2 {
    font-size: clamp(27px, 3vw, 35px);
    margin-top: 12px;
}

.editorial-hero {
    max-width: 1440px;
    margin: auto;
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    min-height: 590px;
    background: #f0ece4;
}

.editorial-hero-copy {
    padding: 78px 60px 56px max(40px, calc((100vw - 1240px) / 2));
    align-self: center;
}

.editorial-hero h1 {
    font: 400 clamp(35px, 3.5vw, 53px)/1.24 'Libre Baskerville', Georgia, serif;
    letter-spacing: -1.8px;
    margin: 24px 0;
    max-width: 580px;
}

.editorial-hero p {
    font-size: 15px;
    max-width: 420px;
    line-height: 1.8;
    margin-bottom: 30px;
}

.hero-caption {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
    font-size: 10px;
    color: #756e61;
    border-top: 1px solid #d6cfc3;
    padding-top: 25px;
    margin-top: 43px;
}

.editorial-hero-image {
    margin: 0;
    position: relative;
    min-height: 550px;
    background: #242a30;
}

.editorial-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
}

.editorial-hero-image figcaption {
    position: absolute;
    bottom: 22px;
    left: 26px;
    right: 26px;
    padding: 12px 15px;
    background: #252b31e8;
    color: #e7e2d8;
    font-size: 10px;
}

.talent-card, .card, .panel, .stat-card, .avatar, .talent-image,
.talent-profile-photo, .status-check-shell, .fan-discover-card {
    border-radius: 3px;
    box-shadow: none;
}

.talent-card {
    border: 0;
    background: transparent;
}

.talent-details {
    padding: 19px 0 12px;
}

.talent-details h3 {
    margin: 8px 0 6px;
    font-size: 17px;
}

.talent-image {
    aspect-ratio: 3/4;
    border-radius: 0;
}

.talent-image img {
    height: 100%;
}

.editorial-empty {
    padding: 22px 0;
    border-block: 1px solid var(--line);
}

.editorial-records {
    background: #252f29;
    padding-block: 64px;
    color: #f3f0e8;
}

.editorial-records .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
}

.editorial-records h2 {
    font-size: clamp(28px, 3vw, 38px);
    margin-block: 20px;
}

.editorial-records p, .editorial-records .text-link {
    color: #cad0c6;
}

.editorial-records .eyebrow {
    color: #c4b18b;
}

.editorial-records .button {
    background: #e3d8c3;
    color: #252f29;
}

.editorial-records img {
    width: 100%;
    height: 420px;
    object-fit: cover;
}

.organization-register a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 24px 0;
    border-top: 1px solid var(--line);
}

.organization-register h3 {
    margin-block: 9px;
    font-size: 22px;
}

.service-section, .faq-editorial {
    background: #f0ede6;
}

.service-editorial-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 38px 72px;
}

.service-editorial-grid article {
    padding-top: 23px;
    border-top: 1px solid #cfc8bb;
}

.service-editorial-grid h3 {
    font-size: 20px;
    margin-bottom: 14px;
}

.about-editorial {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 100px;
    align-items: start;
}

.about-editorial h2 {
    font-size: 33px;
    margin-top: 18px;
}

.real-counts {
    display: flex;
    gap: 45px;
    padding-top: 26px;
    margin-top: 27px;
    border-top: 1px solid var(--line);
}

.real-counts dt {
    font-size: 11px;
    max-width: 160px;
}

.real-counts dd {
    margin: 12px 0 0;
    font-size: 36px;
}

.faq-editorial details {
    border-top: 1px solid #d4cec1;
    padding: 20px 0;
}

.faq-editorial summary {
    cursor: pointer;
    font-weight: 600;
    font-size: 15px;
}

.faq-editorial details p {
    max-width: 760px;
    margin-top: 16px;
}

.contact-editorial {
    background: #252b31;
    color: #f2eee5;
    padding: 60px 0;
}

.contact-editorial .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}

.contact-editorial h2 {
    font-size: 34px;
    margin-top: 15px;
}

.contact-editorial p {
    color: #b7b8b5;
}

.contact-editorial .eyebrow {
    color: #c9b38b;
}

.contact-editorial .button {
    background: #e2d5bb;
    color: #252b31;
}

.public-footer {
    background: #1c2228;
}

.public-footer p {
    color: #b0b0aa;
}

.editorial-intro {
    max-width: 950px;
    padding: 20px 0 46px;
}

.editorial-intro h1 {
    font-size: clamp(32px, 4vw, 46px);
    margin-block: 24px;
}

.editorial-intro p {
    font-size: 16px;
    max-width: 730px;
}

.services-register section {
    border-top: 1px solid var(--line);
    padding: 38px 0;
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 65px;
}

.services-register h2 {
    font-size: 27px;
}

.about-image-band img {
    width: 100%;
    height: 340px;
    object-fit: cover;
    margin-bottom: 55px;
}

.editorial-trust {
    padding: 38px;
    background: #f0ede6;
    margin-top: 25px;
}

.workspace-sidebar {
    max-height: 100vh;
    overflow-y: auto;
    scrollbar-width: thin;
    padding-top: 22px;
}

.workspace-sidebar > a:not(.workspace-brand), .sidebar-bottom a {
    border-radius: 2px;
    padding: 9px 14px;
    font-size: 12px;
}

.workspace-sidebar .nav-label {
    font-size: 9px;
    letter-spacing: 1.4px;
    color: #aaa79d;
}

.workspace-content .eyebrow {
    color: #7f633c;
}

.workspace-content > .panel + .panel {
    margin-top: 25px;
}

.panel-header a, td a {
    color: #65513b;
}

th {
    text-transform: none;
    font-size: 11px;
    letter-spacing: 0;
    color: #646560;
    background: #f6f4ef;
}

.stat-card {
    border-radius: 2px;
}

.stat-card > .icon {
    display: none;
}

.stat-card p {
    font-size: 11px;
}

.fan-welcome {
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--line);
    border-radius: 0;
    padding: 10px 0 30px;
}

.fan-welcome h1 {
    font: 400 32px/1.3 'Libre Baskerville', Georgia, serif;
}

.settings-links {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    padding: 18px 0;
    border-block: 1px solid var(--line);
    margin-bottom: 32px;
    font-size: 12px;
}

.settings-section {
    display: grid;
    grid-template-columns: minmax(180px, .7fr) minmax(0, 1.3fr);
    gap: 60px;
    padding: 34px 0;
    border-top: 1px solid var(--line);
    align-items: start;
}

.settings-section > div > p {
    font-size: 13px;
}

.settings-form {
    max-width: 690px;
    min-width: 0;
}

.settings-form small, .compact-form small {
    display: block;
    color: #737570;
    font-weight: 400;
    font-size: 11px;
    line-height: 1.6;
}

.checkbox-row {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.checkbox-label, .checkbox-row label {
    display: flex;
    align-items: start;
    gap: 10px;
    font-size: 12px;
    margin-block: 18px;
}

.checkbox-label input[type=checkbox], .checkbox-row input[type=checkbox] {
    width: 17px;
    min-height: 17px;
    margin: 3px 0 0;
}

.checkbox-label a {
    text-decoration: underline;
}

.wallet-balances {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 20px;
    border-block: 1px solid var(--line);
    padding: 28px 0;
    margin-bottom: 30px;
}

.wallet-balances dt {
    font-size: 11px;
    color: #72746f;
}

.wallet-balances dd {
    margin: 10px 0 0;
    font-size: clamp(17px, 2vw, 28px);
    font-weight: 600;
    letter-spacing: -.8px;
    font-variant-numeric: tabular-nums;
}

.finance-detail {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    padding: 28px 0;
    border-top: 1px solid var(--line);
}

.finance-detail .wallet-balances {
    grid-template-columns: 1fr;
}

.finance-history {
    list-style: none;
    padding: 0;
    margin: 0;
}

.finance-history li {
    padding: 17px 0;
    border-bottom: 1px solid var(--line);
}

.finance-history strong {
    font-size: 13px;
}

.finance-history time {
    display: block;
    color: #747772;
    font-size: 11px;
    margin-block: 4px 8px;
}

.finance-history p {
    margin: 0;
    font-size: 12px;
}

.finance-status {
    display: inline-block;
    border-left: 2px solid #aa8b50;
    padding: 3px 9px;
    color: #766037;
    font-size: 11px;
    background: #f5f0e5;
    white-space: nowrap;
}

.state-approved, .state-paid, .state-sent {
    border-color: #597457;
    color: #476344;
    background: #eef3eb;
}

.state-rejected, .state-failed {
    border-color: #a76356;
    color: #914e41;
    background: #f8eee9;
}

.state-cancelled {
    border-color: #86847b;
    color: #716e65;
    background: #efede8;
}

.details-list {
    display: grid;
    grid-template-columns: 115px minmax(0, 1fr);
    gap: 10px 20px;
    font-size: 12px;
    margin-top: 25px;
}

.details-list dt {
    color: #72746f;
}

.details-list dd {
    margin: 0;
    overflow-wrap: anywhere;
}

.table-scroll {
    width: 100%;
    overflow-x: auto;
}

.reference-link {
    display: block;
    max-width: 270px;
    overflow-wrap: anywhere;
    white-space: normal;
    font-size: 11px;
}

.break-word, .preserve-lines {
    overflow-wrap: anywhere;
}

.preserve-lines {
    white-space: pre-wrap;
}

.compact-form {
    min-width: 160px;
    max-width: 210px;
}

.compact-form label {
    font-size: 10px;
}

.compact-form input {
    min-height: 34px;
}

.pagination {
    display: flex;
    align-items: center;
    gap: 25px;
    padding: 22px 0;
    font-size: 12px;
}

.pagination a {
    text-decoration: underline;
}

.transaction-row {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid var(--line);
    padding: 18px 0;
}

.transaction-row small {
    display: block;
    font-size: 11px;
    color: #737570;
}

.management-section {
    border-top: 1px solid var(--line);
    padding-block: 24px;
}

.management-section summary {
    cursor: pointer;
    font-size: 17px;
    font-weight: 600;
}

.management-section form {
    padding: 25px 0 0;
}

.danger-zone summary {
    color: #984c3e;
}

.workspace-content button.danger-button {
    background: #914b40;
}

.consumer-auth-shell {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: #fff;
    border: 1px solid #ded9ce;
}

.consumer-auth-story {
    position: relative;
    min-height: 540px;
    background: #242a30;
    color: #f1ede4;
}

.consumer-auth-story > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .43;
}

.consumer-auth-story > div {
    position: relative;
    z-index: 1;
    padding: 62px 42px;
    min-height: 540px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.consumer-auth-story .eyebrow {
    color: #d6c39b;
}

.fan-auth .consumer-auth-story h1 {
    font: 400 34px/1.35 'Libre Baskerville', Georgia, serif;
    letter-spacing: -1px;
    margin: 20px 0;
}

.consumer-auth-story p {
    color: #ddd8cd;
    line-height: 1.8;
}

.consumer-auth-story .auth-story-foot {
    margin-top: 35px;
    font-size: 9px;
    color: #d0c8b7;
}

.consumer-auth-form {
    padding: 52px 43px;
    min-width: 0;
}

.consumer-auth-form h2 {
    font-size: 25px;
    line-height: 1.4;
    margin-top: 17px;
}

.consumer-auth-form label {
    font-size: 12px;
}

.consumer-auth-form .split {
    gap: 18px;
}

.consumer-auth-form p {
    font-size: 12px;
}

.password-input {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 16px;
}

.password-input input {
    margin: 0;
    padding-right: 65px;
}

.password-input .text-button {
    position: absolute;
    right: 13px;
    background: transparent;
    border: 0;
    padding: 8px 4px;
    color: #706249;
    font-size: 11px;
}

.forgot-link {
    display: block;
    margin: 4px 0 25px;
    font-size: 11px;
    text-align: right;
    text-decoration: underline;
}

.auth-switch {
    margin-top: 24px;
}

.auth-switch a {
    font-weight: 600;
    text-decoration: underline;
}

.organization-type-row {
    border-top: 1px solid var(--line);
    padding-block: 16px;
}

.notice.error {
    color: #8b4b3d;
}

@media (max-width: 1100px) {
    .editorial-hero-copy {
        padding: 55px 35px;
    }
    .about-editorial, .editorial-records .container {
        gap: 40px;
    }
    .settings-section {
        gap: 35px;
    }
}

@media (max-width: 900px) {
    .editorial-hero, .editorial-records .container, .about-editorial {
        grid-template-columns: 1fr;
    }
    .editorial-hero {
        min-height: auto;
    }
    .editorial-hero-copy {
        padding: 55px 40px;
    }
    .editorial-hero-image {
        min-height: 360px;
    }
    .consumer-auth-form {
        padding: 40px 30px;
    }
    .consumer-auth-story > div {
        padding: 42px 30px;
    }
    .settings-section {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

@media (max-width: 650px) {
    .section {
        padding-block: 48px;
    }
    .editorial-hero-copy {
        padding: 44px 22px;
    }
    .editorial-hero h1 {
        font-size: 34px;
        letter-spacing: -1.2px;
    }
    .editorial-hero p {
        font-size: 13px;
    }
    .editorial-hero-image {
        min-height: 270px;
    }
    .editorial-hero-image figcaption {
        left: 20px;
        right: 20px;
        font-size: 9px;
    }
    .hero-caption {
        gap: 12px;
        margin-top: 30px;
    }
    .editorial-records {
        padding-block: 40px;
    }
    .editorial-records img {
        height: 255px;
    }
    .editorial-records .container {
        gap: 28px;
    }
    .service-editorial-grid, .services-register section, .finance-detail,
    .consumer-auth-shell {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    .consumer-auth-shell {
        gap: 0;
    }
    .consumer-auth-story, .consumer-auth-story > div {
        min-height: 250px;
    }
    .consumer-auth-story > div {
        padding: 28px;
    }
    .fan-auth .consumer-auth-story h1 {
        font-size: 24px;
        margin: 16px 0;
    }
    .consumer-auth-story .auth-story-foot {
        display: none;
    }
    .consumer-auth-form {
        padding: 32px 25px;
    }
    .consumer-auth-form .split {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .wallet-balances {
        grid-template-columns: 1fr;
        gap: 22px;
    }
    .wallet-balances > div:first-child dd {
        font-size: 28px;
    }
    .wallet-balances dd {
        margin-top: 4px;
    }
    .contact-editorial .container {
        align-items: start;
        flex-direction: column;
    }
    .about-image-band img {
        height: 235px;
    }
    .settings-links {
        gap: 15px;
    }
    .finance-detail {
        padding-top: 20px;
    }
    .toolbar label {
        width: 100%;
    }
    .public-header-actions {
        display: none;
    }
    .public-nav.is-open {
        max-height: calc(100vh - 90px);
        overflow-y: auto;
    }
}

.mobile-only {
    display: none;
}

@media (max-width: 650px) {
    .public-nav .mobile-only {
        display: block;
    }
}
