.do56-carrier-detail-header,
.do56-carrier-detail-header *,
.do56-carrier-detail,
.do56-carrier-detail * {
    box-sizing: border-box;
}

.do56-carrier-detail-header {
    --detail-red: #c74745;
    --detail-blue: #096bbd;
    --detail-blue-dark: #075796;
    --detail-gold: #febb02;
    --detail-ink: #171b1f;
    --detail-muted: #5f6c76;
    --detail-line: #d9e0e5;
    position: relative;
    z-index: 20;
    min-width: 0;
    background: var(--detail-red);
    color: white;
    padding-bottom: 3.5rem;
}

.do56-public-wordmark-header { padding-bottom: 0; }

.do56-carrier-detail-header__inner,
.do56-carrier-detail-search-shell,
.do56-carrier-detail-container {
    width: min(74rem, calc(100% - 4rem));
    margin-inline: auto;
}

.do56-carrier-detail-header__inner {
    min-height: 5.75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.do56-carrier-detail-header__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .75rem;
    min-width: 0;
}

.do56-carrier-detail-header__actions a,
.do56-carrier-detail-role {
    min-height: 2.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid transparent;
    border-radius: .375rem;
    padding: .625rem 1rem;
    color: white;
    font-size: .9375rem;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    white-space: nowrap;
}

.do56-carrier-detail-header__actions .do56-carrier-detail-account {
    border-color: white;
    background: white;
    color: var(--detail-red);
}

.do56-carrier-detail-header__actions .do56-carrier-detail-fleet:hover,
.do56-carrier-detail-role { background: var(--detail-red); }
.do56-carrier-detail-header__actions .do56-carrier-detail-account:hover { background: #fff5f4; }

.do56-carrier-detail-search-shell {
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: 30;
    transform: translate(-50%, 50%);
}

.do56-carrier-detail-search {
    --detail-blue: #096bbd;
    --detail-blue-dark: #075796;
    --detail-gold: #febb02;
    --detail-ink: #171b1f;
    --detail-muted: #5f6c76;
    display: grid;
    grid-template-columns: minmax(0, 1.16fr) minmax(0, 1fr) 10.25rem;
    gap: .25rem;
    margin: 0;
    border-radius: .5625rem;
    background: var(--detail-gold);
    padding: .3125rem;
    box-shadow: 0 .375rem 1.125rem rgb(61 35 17 / 18%);
}

.do56-public-search-form--home { width: min(40rem, 100%); }
.do56-public-search-form--results { width: 100%; }

.do56-detail-market { position: relative; min-width: 0; }
.do56-detail-search-field,
.do56-carrier-detail-search .do56-detail-capability {
    width: 100%;
    min-width: 0;
    min-height: 4.75rem;
    border: 0;
    border-radius: .25rem;
    background: white;
    color: var(--detail-ink);
}

.do56-detail-search-field {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .625rem 1.125rem;
    text-align: left;
    cursor: pointer;
}

.do56-detail-search-field > svg,
.do56-detail-search-submit svg {
    width: 1.5rem;
    height: 1.5rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.75;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.do56-detail-search-field .do56-detail-chevron {
    width: 1rem;
    height: 1rem;
}

.do56-detail-search-copy {
    min-width: 0;
    flex: 1;
    display: grid;
    gap: .0625rem;
}

.do56-detail-search-label,
.do56-detail-capability legend {
    color: #626b72;
    font-size: .6875rem;
    font-weight: 500;
    line-height: 1.35;
}

.do56-detail-search-copy strong {
    overflow: hidden;
    color: var(--detail-ink);
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.do56-detail-search-copy small {
    overflow: hidden;
    color: var(--detail-muted);
    font-size: .6875rem;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.do56-detail-market-panel {
    position: absolute;
    top: calc(100% + .75rem);
    left: 0;
    z-index: 40;
    width: min(42rem, calc(100vw - 2rem));
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .625rem;
    border: 1px solid #d4dce2;
    border-radius: .625rem;
    background: white;
    padding: .75rem;
    box-shadow: 0 1.25rem 3rem rgb(24 31 36 / 22%);
}

.do56-detail-market-panel[hidden] { display: none; }

.do56-detail-market-panel--clearable { display: block; }
.do56-detail-market-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .625rem;
}

.do56-detail-clear {
    width: fit-content;
    border: 0;
    background: transparent;
    padding: .25rem;
    color: var(--detail-blue);
    font: inherit;
    font-size: .6875rem;
    font-weight: 750;
    line-height: 1.35;
    cursor: pointer;
}

.do56-detail-market-panel--clearable > .do56-detail-clear {
    margin: .5rem 0 0 auto;
}

.do56-detail-clear[hidden] { display: none; }

.do56-detail-market-option {
    min-width: 0;
    min-height: 4.75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    border: 1px solid #d4dce2;
    border-radius: .4375rem;
    background: white;
    padding: .75rem;
    color: var(--detail-ink);
    text-align: left;
    cursor: pointer;
    touch-action: manipulation;
}

.do56-detail-market-option > span:first-child {
    min-width: 0;
    display: grid;
    gap: .25rem;
}

.do56-detail-market-option strong {
    font-size: .875rem;
    line-height: 1.35;
}

.do56-detail-market-option small {
    color: var(--detail-muted);
    font-size: .6875rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.do56-detail-market-indicator {
    width: 1.125rem;
    height: 1.125rem;
    flex: 0 0 auto;
    border: 1.5px solid #9ba7b0;
    border-radius: 50%;
    background: white;
}

.do56-detail-market-option[aria-selected="true"] {
    border-color: var(--detail-blue);
    background: #eef6fc;
    box-shadow: inset 0 0 0 1px var(--detail-blue);
}

.do56-detail-market-option[aria-selected="true"] .do56-detail-market-indicator {
    border: .3125rem solid var(--detail-blue);
}

.do56-carrier-detail-search .do56-detail-capability {
    position: relative;
    display: grid;
    gap: .4rem;
    margin: 0;
    padding: .625rem 1rem;
}

.do56-detail-capability-clear {
    position: absolute;
    top: .35rem;
    right: .75rem;
}

.do56-detail-capability legend {
    float: left;
    width: 100%;
    padding: 0;
}

.do56-detail-capability-options {
    clear: both;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .25rem;
}

.do56-detail-capability-options label { position: relative; min-width: 0; cursor: pointer; }
.do56-detail-capability-options input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    opacity: 0;
}

.do56-detail-capability-options span {
    min-height: 2.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #cbd4db;
    border-radius: .25rem;
    background: white;
    padding: .375rem .5rem;
    color: #31383e;
    font-size: .8125rem;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    touch-action: manipulation;
}

.do56-detail-capability-options input:checked + span {
    border-color: var(--detail-blue);
    background: var(--detail-blue);
    color: white;
}

.do56-detail-search-submit {
    min-width: 0;
    min-height: 4.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .625rem;
    border: 0;
    border-radius: .25rem;
    background: var(--detail-blue);
    padding: .75rem 1rem;
    color: white;
    font-size: 1.25rem;
    font-weight: 800;
    cursor: pointer;
    touch-action: manipulation;
}

.do56-detail-search-submit:hover { background: var(--detail-blue-dark); }

.do56-carrier-detail-header :where(a, button, input):focus-visible,
.do56-carrier-detail :where(a, button, summary, [tabindex]):focus-visible {
    outline: 3px solid var(--detail-blue, #096bbd);
    outline-offset: 2px;
    box-shadow: 0 0 0 5px white;
}

.do56-detail-capability-options input:focus-visible + span {
    outline: 3px solid var(--detail-blue);
    outline-offset: 2px;
    box-shadow: 0 0 0 5px white;
}

.do56-carrier-detail-main {
    width: 100%;
    max-width: none;
    margin: 0;
    background: white;
    padding: 4.75rem 0 0;
}

.do56-carrier-detail {
    --detail-blue: #006ce4;
    --detail-blue-dark: #0058bb;
    --detail-ink: #171b1f;
    --detail-muted: #5f6c76;
    --detail-line: #d9e0e5;
    min-width: 0;
    overflow-x: clip;
    background: white;
    color: var(--detail-ink);
}

.do56-carrier-detail :where(h1, h2, h3, p, dl, dd, figure) { margin: 0; }
.do56-carrier-detail a { color: var(--detail-blue); }

.do56-carrier-detail-navigation { margin-bottom: 0; }
.do56-carrier-detail-breadcrumbs {
    min-height: 2.75rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
    padding-bottom: .875rem;
    color: var(--detail-muted);
    font-size: .75rem;
}

.do56-carrier-detail-breadcrumbs a { text-decoration: none; }
.do56-carrier-detail-back { margin-left: auto; }

.do56-carrier-detail-tabs {
    position: sticky;
    top: var(--detail-sticky-header-offset, 0px);
    z-index: 10;
    width: 100%;
    max-width: 100%;
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--detail-line);
    background: white;
    overscroll-behavior-inline: contain;
    scroll-padding-inline: .5rem;
    scrollbar-width: none;
}
.do56-carrier-detail-tabs::-webkit-scrollbar { display: none; }
.do56-carrier-detail-tabs a {
    min-height: 3.625rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 0 auto;
    border-bottom: 3px solid transparent;
    padding: .875rem 1.375rem;
    color: #26323a;
    font-size: .875rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}
.do56-carrier-detail-tabs a[aria-current="location"] { border-bottom-color: var(--detail-blue); color: var(--detail-blue); }
.do56-carrier-detail-tabs a:hover { background: #f7f9fa; color: var(--detail-blue); }
.do56-carrier-detail-tabs a:focus-visible {
    outline-offset: -4px;
    box-shadow: inset 0 0 0 2px white;
}

.do56-carrier-detail [data-carrier-detail-section] {
    scroll-margin-top: var(--detail-anchor-offset, 4.5rem);
}

@media (prefers-reduced-motion: reduce) {
    .do56-carrier-detail-tabs { scroll-behavior: auto; }
}

.do56-carrier-detail-identity {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 2rem;
    padding: .25rem 0 1.75rem;
}
.do56-carrier-detail-eyebrow,
.do56-carrier-detail-section-heading p,
.do56-carrier-detail-rate-card > header p,
.do56-carrier-detail-summary__label {
    color: #65727c;
    font-size: .6875rem;
    font-weight: 750;
    letter-spacing: .075rem;
    text-transform: uppercase;
}
.do56-carrier-detail-identity h1 {
    max-width: 52rem;
    margin-top: .35rem;
    color: var(--detail-ink);
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.32;
    overflow-wrap: anywhere;
}
.do56-carrier-detail-state { margin-top: .65rem !important; color: #34434e; font-size: .875rem; font-weight: 700; }
.do56-carrier-detail-location { margin-top: .45rem !important; color: var(--detail-muted); font-size: .8125rem; }
.do56-carrier-detail-primary-action {
    min-width: 12rem;
    display: grid;
    justify-items: stretch;
    gap: .45rem;
    text-align: center;
}
.do56-carrier-detail-primary-action small { max-width: 15rem; color: var(--detail-muted); font-size: .6875rem; line-height: 1.5; }
.do56-carrier-detail-action-unavailable { border: 1px solid var(--detail-line); border-radius: .3rem; padding: .7rem; color: var(--detail-muted); font-size: .75rem; }

.do56-carrier-detail-button {
    min-height: 2.875rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--detail-blue);
    border-radius: .3rem;
    padding: .625rem 1rem;
    font-size: .875rem;
    font-weight: 750;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
}
.do56-carrier-detail-button--primary { background: var(--detail-blue); color: white !important; }
.do56-carrier-detail-button--primary:hover { background: var(--detail-blue-dark); }
.do56-carrier-detail-button--secondary { background: white; color: var(--detail-blue); }
.do56-carrier-detail-button--secondary:hover { background: #eef6fc; }

.do56-public-carrier-card .do56-transport-types,
.do56-carrier-detail .do56-transport-types {
    width: min(22.25rem, 100%); display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center; gap: .4375rem; margin: .75rem 0 1rem;
}
.do56-public-carrier-card .do56-transport-type,
.do56-carrier-detail .do56-transport-type {
    position: relative; isolation: isolate; min-width: 0; min-height: 2.5625rem;
    display: inline-flex; align-items: center; justify-content: center; gap: .3125rem;
    overflow: hidden; border: 1px solid transparent; border-radius: .625rem;
    padding: .4375rem .3125rem; font-size: .78125rem; font-weight: 800;
    line-height: 1.25; white-space: nowrap;
}
.do56-public-carrier-card .do56-transport-type::before,
.do56-carrier-detail .do56-transport-type::before {
    content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
    background: radial-gradient(ellipse at 22% 0%, rgb(255 255 255 / 59%), rgb(255 255 255 / 16%) 37%, transparent 68%);
}
.do56-public-carrier-card .do56-transport-type svg,
.do56-carrier-detail .do56-transport-type svg {
    width: 1.8125rem; height: 1.5625rem; flex-shrink: 0;
    fill: none; stroke: currentColor; stroke-width: 2.1;
    stroke-linecap: round; stroke-linejoin: round;
}
.do56-public-carrier-card .do56-transport-type--ordinary,
.do56-carrier-detail .do56-transport-type--ordinary {
    border-color: #e5a04a; background: linear-gradient(110deg, #ffcd72, #ffaf4d 43%, #ed902e);
    color: #643704; box-shadow: inset 0 1px 0 rgb(255 255 255 / 62%), 0 .4375rem 1rem rgb(205 125 39 / 20%);
}
.do56-public-carrier-card .do56-transport-type--dangerous-goods,
.do56-carrier-detail .do56-transport-type--dangerous-goods {
    border-color: #cd403a; background: linear-gradient(110deg, #f47e6b, #df4d43 45%, #bf3034);
    color: white; box-shadow: inset 0 1px 0 rgb(255 255 255 / 35%), 0 .4375rem 1rem rgb(172 50 50 / 20%);
}
.do56-carrier-detail .do56-transport-types-note,
.do56-carrier-detail-claim-note { margin-top: .45rem !important; color: #63717c; font-size: .6875rem; line-height: 1.55; }

.do56-carrier-detail-gallery { margin-bottom: 1.75rem; }
.do56-carrier-detail-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}
.do56-carrier-detail-section-heading h2 { color: var(--detail-ink); font-size: 1.25rem; font-weight: 800; line-height: 1.45; }
.do56-carrier-detail-section-heading p { margin-top: .2rem; }
.do56-carrier-detail-section-heading > span { max-width: 16rem; color: var(--detail-muted); font-size: .6875rem; line-height: 1.5; text-align: right; }
.do56-carrier-detail-gallery-grid {
    height: 26.25rem;
    display: grid;
    grid-template-columns: minmax(0, 2fr) repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(3, minmax(0, 1fr));
    gap: .4rem;
    overflow: hidden;
    border-radius: .5rem;
    background: #eef1f3;
}
.do56-carrier-detail-gallery-grid figure { min-width: 0; min-height: 0; overflow: hidden; background: #eef1f3; }
.do56-carrier-detail-gallery-grid figure:first-child { grid-row: 1 / 4; }
.do56-carrier-detail-gallery-grid img { width: 100%; height: 100%; display: block; object-fit: cover; }
.do56-carrier-detail-gallery-grid--single { display: block; }
.do56-carrier-detail-empty,
.do56-carrier-detail-locked {
    min-height: 9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--detail-line);
    border-radius: .45rem;
    background: #f6f8f9;
    padding: 1.5rem;
    color: var(--detail-muted);
    font-size: .8125rem;
    text-align: center;
}

.do56-carrier-detail-overview-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 19.5rem;
    align-items: start;
    gap: 1.5rem;
    margin-bottom: 1.75rem;
}
.do56-carrier-detail-overview-main { min-width: 0; display: grid; gap: 1rem; }
.do56-carrier-detail-panel,
.do56-carrier-detail-summary {
    border: 1px solid var(--detail-line);
    border-radius: .45rem;
    background: white;
    padding: 1.5rem;
}
.do56-carrier-detail-description { color: #34434e; font-size: .875rem; line-height: 1.85; white-space: pre-line; }
.do56-carrier-detail-disclaimer { margin-top: .85rem !important; color: var(--detail-muted); font-size: .75rem; line-height: 1.7; }
.do56-carrier-detail-service-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.do56-carrier-detail-service-facts dt,
.do56-carrier-detail-company-facts dt,
.do56-carrier-detail-summary dt { color: var(--detail-muted); font-size: .6875rem; line-height: 1.4; }
.do56-carrier-detail-service-facts dd { margin-top: .45rem; color: #26343d; font-size: .8125rem; font-weight: 750; line-height: 1.55; overflow-wrap: anywhere; }
.do56-carrier-detail-service-facts small { display: block; margin-top: .3rem; color: var(--detail-muted); font-size: .625rem; font-weight: 500; line-height: 1.5; }

.do56-carrier-detail-summary {
    border-color: #bcd5e8;
    border-top: 3px solid var(--detail-blue);
    background: #f5faff;
}
.do56-carrier-detail-summary__label { color: #49677d; }
.do56-carrier-detail-summary dl { margin-block: 1rem; }
.do56-carrier-detail-summary dl > div { display: flex; justify-content: space-between; gap: 1rem; border-bottom: 1px solid #dbe8f1; padding: .65rem 0; }
.do56-carrier-detail-summary dd { color: #273d4c; font-size: .75rem; font-weight: 750; line-height: 1.5; text-align: right; overflow-wrap: anywhere; }
.do56-carrier-detail-summary .do56-carrier-detail-button { width: 100%; }
.do56-carrier-detail-summary__link { display: block; margin-top: .8rem; font-size: .75rem; text-align: center; }

.do56-carrier-detail-rate {
    margin-bottom: 1.75rem;
    overflow: hidden;
    border: 1px solid #bcd1e1;
    border-radius: .45rem;
    background: white;
    scroll-margin-top: 1rem;
}
.do56-carrier-detail-rate__heading { border-bottom: 1px solid #dce5eb; background: #f7fafc; padding: 1.5rem 1.625rem .5rem; }
.do56-carrier-detail-rate__body { padding: .5rem 1.625rem 1.625rem; }
.do56-carrier-detail-rate-switch {
    display: flex;
    align-items: center;
    gap: .75rem;
    border-bottom: 1px solid var(--detail-line);
    padding: 1rem 0;
}
.do56-carrier-detail-rate-switch > strong { color: #263b49; font-size: .75rem; }
.do56-carrier-detail-rate-switch__options {
    display: inline-grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    border: 1px solid #9aaab5;
    border-radius: .3rem;
}
.do56-carrier-detail-rate-switch__options button {
    min-height: 2.5rem;
    border: 0;
    background: white;
    padding: .5rem .9rem;
    color: #293a46;
    font: inherit;
    font-size: .75rem;
    font-weight: 750;
    cursor: pointer;
    touch-action: manipulation;
}
.do56-carrier-detail-rate-switch__options button + button { border-left: 1px solid #9aaab5; }
.do56-carrier-detail-rate-switch__options button:first-child { border-radius: .25rem 0 0 .25rem; }
.do56-carrier-detail-rate-switch__options button:last-child { border-radius: 0 .25rem .25rem 0; }
.do56-carrier-detail-rate-switch__options button:focus-visible { position: relative; z-index: 1; }
.do56-carrier-detail-rate-switch__options button:hover { background: #edf6fc; color: var(--detail-blue); }
.do56-carrier-detail-rate-switch__options button[aria-pressed="true"] { background: var(--detail-blue); color: white; }
.do56-carrier-detail-rate-card { padding-top: 1.25rem; }
.do56-carrier-detail-rate-card + .do56-carrier-detail-rate-card { margin-top: 1.25rem; border-top: 1px solid var(--detail-line); }
.do56-carrier-detail-rate-card > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.do56-carrier-detail-rate-card h3 { margin-top: .2rem; font-size: 1rem; font-weight: 800; }
.do56-carrier-detail-current-badge,
.do56-carrier-detail-locked-badge { border: 1px solid #c9d5dd; border-radius: 999px; padding: .25rem .55rem; color: #52636f; font-size: .625rem; font-weight: 750; white-space: nowrap; }
.do56-carrier-detail-current-badge { border-color: #94c4a9; background: #edf8f1; color: #24633f; }
.do56-carrier-detail-current { margin-top: 1rem; }
.do56-carrier-detail-current + .do56-carrier-detail-current { margin-top: 1.5rem; border-top: 1px solid var(--detail-line); padding-top: 1.5rem; }
.do56-carrier-detail-current__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .65rem; color: var(--detail-muted); font-size: .6875rem; }
.do56-carrier-detail-current__meta strong { color: #2f4554; font-size: .8125rem; }
.do56-carrier-detail-current__meta span { border-left: 1px solid #cbd6de; padding-left: .65rem; }
.do56-carrier-detail-table-scroll { width: 100%; margin-top: .85rem; overflow-x: auto; border: 1px solid #cbd8e1; border-radius: .35rem; }
.do56-carrier-detail-table-scroll table { width: 100%; min-width: 42rem; border-collapse: collapse; color: #344b5a; font-size: .75rem; }
.do56-carrier-detail-table-scroll th,
.do56-carrier-detail-table-scroll td { border-bottom: 1px solid #dfe7ec; padding: .75rem 1rem; text-align: left; vertical-align: top; }
.do56-carrier-detail-table-scroll thead th { background: #e9f2f9; color: #2f5067; font-weight: 750; }
.do56-carrier-detail-table-scroll thead tr:first-child th:not(:first-child) { text-align: center; }
.do56-carrier-detail-table-scroll thead tr:nth-child(2) th { min-width: 5.75rem; text-align: center; }
.do56-carrier-detail-table-scroll thead th small,
.do56-carrier-detail-table-scroll td small { display: block; margin-top: .2rem; color: var(--detail-muted); font-size: .625rem; font-weight: 500; }
.do56-carrier-detail-table-scroll tbody th { width: 28%; min-width: 12rem; font-weight: 600; }
.do56-carrier-detail-table-scroll tbody th small { display: block; margin-top: .2rem; color: var(--detail-muted); font-weight: 500; }
.do56-carrier-detail-table-scroll td { text-align: right; white-space: nowrap; }
.do56-carrier-detail-rate-unavailable { color: #687782; font-weight: 650; }
.do56-carrier-detail-notice { margin-top: 1rem; border-top: 1px solid var(--detail-line); padding-top: 1rem; }
.do56-carrier-detail-notice summary { width: fit-content; cursor: pointer; color: var(--detail-blue); font-size: .8125rem; font-weight: 750; }
.do56-carrier-detail-notice dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem 1.25rem; margin-top: 1rem; }
.do56-carrier-detail-notice dl > div { min-width: 0; }
.do56-carrier-detail-notice dt { color: var(--detail-muted); font-size: .6875rem; }
.do56-carrier-detail-notice dd { margin-top: .25rem; color: #304553; font-size: .75rem; line-height: 1.55; overflow-wrap: anywhere; }
.do56-carrier-detail-locked { min-height: 10rem; gap: .75rem; margin-top: 1rem; text-align: left; }
.do56-carrier-detail-locked > span { font-size: 1.5rem; }
.do56-carrier-detail-locked strong { color: #2e404c; }
.do56-carrier-detail-locked p { max-width: 42rem; margin-top: .35rem; line-height: 1.65; }
.do56-carrier-detail-rate__footnote { margin-top: 1.25rem !important; color: var(--detail-muted); font-size: .6875rem; line-height: 1.65; }

.do56-carrier-detail-company,
.do56-carrier-detail-faq { margin-bottom: 1.5rem; scroll-margin-top: 1rem; }
.do56-carrier-detail-company-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 2rem; }
.do56-carrier-detail-company-facts > div { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: .75rem; border-bottom: 1px solid #e8edef; padding: .8rem 0; }
.do56-carrier-detail-company-facts dd { color: #304553; font-size: .8125rem; line-height: 1.6; overflow-wrap: anywhere; }
.do56-carrier-detail-presences { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin: 1rem 0 0; border-top: 1px solid #e8edef; padding: 1rem 0 0; color: var(--detail-muted); font-size: .75rem; }
.do56-carrier-detail-faq > div:last-child { border-top: 1px solid var(--detail-line); }
.do56-carrier-detail-faq details { border-bottom: 1px solid var(--detail-line); }
.do56-carrier-detail-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; color: #293d4b; font-size: .875rem; font-weight: 750; cursor: pointer; list-style: none; }
.do56-carrier-detail-faq summary::-webkit-details-marker { display: none; }
.do56-carrier-detail-faq summary::after { content: "+"; color: var(--detail-blue); font-size: 1.25rem; font-weight: 500; }
.do56-carrier-detail-faq details[open] summary::after { content: "−"; }
.do56-carrier-detail-faq details p { max-width: 58rem; padding: 0 2rem 1rem 0; color: var(--detail-muted); font-size: .8125rem; line-height: 1.75; }

@media (max-width: 52rem) {
    .do56-carrier-detail-header__inner,
    .do56-carrier-detail-search-shell,
    .do56-carrier-detail-container { width: calc(100% - 2.5rem); }
    .do56-carrier-detail-header__actions { gap: .4rem; }
    .do56-carrier-detail-header__actions a,
    .do56-carrier-detail-role { padding-inline: .65rem; font-size: .75rem; }
    .do56-carrier-detail-search { grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr) 8.5rem; }
    .do56-detail-search-field { padding-inline: .75rem; }
    .do56-carrier-detail-overview-layout { grid-template-columns: minmax(0, 1fr) 16rem; gap: 1rem; }
    .do56-carrier-detail-panel,
    .do56-carrier-detail-summary { padding: 1.15rem; }
    .do56-carrier-detail-service-facts { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 40rem) {
    .do56-carrier-detail-header { padding-bottom: 5rem; }
    .do56-public-wordmark-header { padding-bottom: 0; }
    .do56-carrier-detail-header__inner,
    .do56-carrier-detail-search-shell,
    .do56-carrier-detail-container { width: calc(100% - 2rem); }
    .do56-carrier-detail-header__inner {
        min-height: 7.25rem;
        align-content: flex-start;
        flex-wrap: wrap;
        gap: .55rem;
        padding-top: 1rem;
    }
    .do56-carrier-detail-header__inner .do56-shared-wordmark { width: 100%; }
    .do56-carrier-detail-header__actions { width: 100%; justify-content: flex-end; }
    .do56-carrier-detail-header__actions .do56-carrier-detail-fleet { margin-right: auto; padding-left: 0; }
    .do56-carrier-detail-header__actions a,
    .do56-carrier-detail-role { min-height: 2.25rem; padding: .4rem .7rem; font-size: .7rem; }
    .do56-carrier-detail-search { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: .25rem; }
    .do56-detail-search-field,
    .do56-detail-capability { min-height: 4.125rem; }
    .do56-detail-search-field { gap: .4rem; padding: .45rem .55rem; }
    .do56-detail-search-field > svg { width: 1.125rem; height: 1.125rem; }
    .do56-detail-search-field .do56-detail-chevron { display: none; }
    .do56-detail-search-label,
    .do56-detail-capability legend { font-size: .6rem; }
    .do56-detail-search-copy strong { font-size: .78rem; }
    .do56-detail-search-copy small { font-size: .56rem; white-space: normal; }
    .do56-carrier-detail-search .do56-detail-capability { gap: .2rem; padding: .45rem; }
    .do56-detail-capability-options span { min-height: 2rem; padding: .25rem .15rem; font-size: .67rem; }
    .do56-detail-search-submit { grid-column: 1 / -1; min-height: 2.625rem; padding: .4rem; font-size: 1rem; }
    .do56-detail-search-submit svg { width: 1.125rem; height: 1.125rem; }
    .do56-detail-market-panel { width: calc(200% + .25rem); gap: .4rem; padding: .5rem; }
    .do56-detail-market-options { gap: .4rem; }
    .do56-detail-market-option { min-height: 4.4rem; gap: .35rem; padding: .5rem; }
    .do56-detail-market-option strong { font-size: .7rem; }
    .do56-detail-market-option small { font-size: .56rem; }
    .do56-detail-market-indicator { width: .9rem; height: .9rem; }
    .do56-detail-market-option[aria-selected="true"] .do56-detail-market-indicator { border-width: .25rem; }
    .do56-carrier-detail-main { padding-top: 5.75rem; }
    .do56-carrier-detail-breadcrumbs { font-size: .65rem; }
    .do56-carrier-detail-back { width: 100%; margin-left: 0; }
    .do56-carrier-detail-tabs a { min-height: 3.1rem; padding: .7rem 1rem; font-size: .75rem; }
    .do56-carrier-detail-identity { grid-template-columns: minmax(0, 1fr); gap: 1rem; padding-bottom: 1.25rem; }
    .do56-carrier-detail-identity h1 { font-size: 1.55rem; }
    .do56-carrier-detail-primary-action { min-width: 0; grid-template-columns: auto minmax(0, 1fr); align-items: center; text-align: left; }
    .do56-carrier-detail-primary-action small { text-align: left; }
    .do56-carrier-detail-gallery-grid { height: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; grid-auto-rows: 6.5rem; }
    .do56-carrier-detail-gallery-grid figure:first-child { grid-column: 1 / -1; grid-row: auto; min-height: 12.5rem; }
    .do56-carrier-detail-gallery-grid--single figure:first-child { min-height: 16rem; }
    .do56-carrier-detail-section-heading { display: block; }
    .do56-carrier-detail-section-heading > span { display: block; max-width: none; margin-top: .35rem; text-align: left; }
    .do56-carrier-detail-section-heading h2 { font-size: 1.1rem; }
    .do56-carrier-detail-overview-layout { grid-template-columns: minmax(0, 1fr); }
    .do56-carrier-detail-panel,
    .do56-carrier-detail-summary { padding: 1rem; }
    .do56-carrier-detail-rate__heading { padding: 1rem 1rem .25rem; }
    .do56-carrier-detail-rate__body { padding: .25rem 1rem 1rem; }
    .do56-carrier-detail-rate-switch { align-items: stretch; flex-direction: column; gap: .5rem; }
    .do56-carrier-detail-rate-switch__options { width: 100%; }
    .do56-carrier-detail-rate-switch__options button { min-height: 2.75rem; padding-inline: .45rem; }
    .do56-carrier-detail-rate-card > header { align-items: center; }
    .do56-carrier-detail-current__meta span { border: 0; padding-left: 0; }
    .do56-carrier-detail-notice dl { grid-template-columns: minmax(0, 1fr); }
    .do56-carrier-detail-company-facts { grid-template-columns: minmax(0, 1fr); }
    .do56-carrier-detail-company-facts > div { grid-template-columns: 5.5rem minmax(0, 1fr); }
    .do56-carrier-detail-faq details p { padding-right: 0; }
}
