/* 1. Import Fonts */
@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@500;600&display=swap');

:root {
    --font-sans: 'Heebo', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
    --font-mono: 'JetBrains Mono', 'Roboto Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
    --blue: #2563eb;
    --blue-dark: #174fc7;
    --ink: #11213a;
    --muted: #65758a;
    --line: #e1e9f2;
    --alice: #f0f8ff;
    --pale: #f7faff;
    --navy: #112846;
    --radius: 16px
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 105px
}

body {
    margin: 0;
    background: #fff;
    color: var(--ink);
    font-family: var(--font-sans);
    font-size: 16px;
    line-height: 1.6;
    letter-spacing: 0;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body:has(dialog[open]) {
    overflow: hidden
}

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

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

button,
a {
    -webkit-tap-highlight-color: transparent
}

button {
    cursor: pointer
}

button {
    border: 0
}

p,
h1,
h2,
h3,
h4 {
    margin: 0
}

h1,
h2,
h3,
h4 {
    font-family: var(--font-sans);
    letter-spacing: -0.015em;
    line-height: 1.25;
}

/* Typography: Operational & Tabular Data */
.shipment-price,
.plan-price,
.plan-price bdi,
.tabular-nums {
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
}

.board-filters button b {
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 600;
}

.map-speed,
.map-overline,
.tracking-code,
.mono-num {
    font-family: var(--font-mono);
    font-variant-numeric: tabular-nums;
}

p {
    color: var(--muted)
}

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

[hidden] {
    display: none !important
}

::selection {
    background: #cfe5ff
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
    outline: 3px solid #0d8fbe;
    outline-offset: 5px
}

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

.site-header {
    height: 88px;
    border-bottom: 1px solid #eaf0f6;
    background: #ffffffed;
    position: sticky;
    top: 0;
    z-index: 10;
    backdrop-filter: blur(15px)
}

.nav-shell {
    height: 100%;
    display: flex;
    align-items: center;
    gap: 40px;
    justify-content: space-between
}

.brand {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    font-size: 26px;
    font-weight: 800;
    letter-spacing: -1.25px;
    line-height: 1.2
}

.brand>span>span {
    color: var(--blue)
}

.nav-shell nav {
    display: flex;
    gap: 28px;
    font-size: 13px;
    font-weight: 500
}

.nav-shell nav>a:hover,
.footer a:hover {
    color: var(--blue)
}

.nav-actions {
    display: flex;
    align-items: center;
    gap: 24px
}

.nav-contact {
    font-size: 12px
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    background: var(--blue);
    color: #fff;
    padding: 15px 24px;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    transition: background .18s, box-shadow .18s, transform .18s;
    box-shadow: 0 4px 6px #2563eb0a
}

.btn:hover {
    background: var(--blue-dark);
    box-shadow: 0 6px 18px #2563eb22;
    transform: translateY(-2px)
}

.btn>span:last-child {
    font-size: 20px;
    font-weight: 400
}

.btn.compact {
    padding: 11px 17px;
    font-size: 12px;
    gap: 20px
}

.btn.outline {
    background: #fff;
    border-color: #cfdaea;
    color: var(--ink);
    box-shadow: none
}

.btn.outline:hover {
    background: var(--alice);
    border-color: #9bbbf7
}

.quiet-link {
    display: inline-flex;
    align-items: center;
    gap: 20px;
    font-size: 13px;
    font-weight: 500;
    background: transparent;
    padding: 0
}

.quiet-link:hover {
    color: var(--blue)
}

.quiet-link>span:last-child {
    font-size: 20px;
    font-weight: 400
}

.menu-toggle {
    display: none
}

.hero {
    padding-top: 57px;
    position: relative;
    text-align: center
}

.hero:before {
    content: '';
    position: absolute;
    z-index: -1;
    top: 240px;
    bottom: 60px;
    left: -48px;
    right: -48px;
    background: radial-gradient(ellipse at 50% 65%, #e0efff 0, transparent 70%);
    pointer-events: none
}

.hero-eyebrow {
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    font-size: 11px;
    color: #405978;
    font-weight: 500
}

.signal {
    display: inline-block;
    width: 6px;
    height: 6px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--blue);
    box-shadow: 0 0 0 4px #2563eb0a
}

.eyebrow-line {
    height: 12px;
    width: 1px;
    background: #d1ddeb;
    margin-inline: 2px
}

.hero h1 {
    font-size: clamp(54px, 6vw, 80px);
    font-weight: 800;
    letter-spacing: -3.3px;
    line-height: 1.16;
    margin-block: 23px 21px
}

.hero h1>span {
    color: var(--blue)
}

.hero>p {
    font-size: 17px;
    line-height: 1.85;
    color: #607088
}

.hero-actions {
    display: flex;
    gap: 28px;
    justify-content: center;
    align-items: center;
    margin-top: 28px
}

.hero-footnote {
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: #7e8ca0;
    margin-top: 22px
}

.hero-footnote i {
    font-style: normal;
    color: #bbc5d3
}

.product-stage {
    text-align: right;
    margin-top: 50px;
    position: relative
}

.stage-caption {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 10px;
    color: #6d819a;
    padding-inline: 6px;
    margin-bottom: 12px
}

.stage-caption>span:first-child {
    display: flex;
    gap: 10px;
    align-items: center;
    font-weight: 500
}

.operations-board {
    display: flex;
    background: #fff;
    border: 1px solid #d6e2ef;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 30px 80px -35px #244d8f3b, 0 3px 12px #254d850a;
    min-height: 545px
}

.board-sidebar {
    width: 78px;
    flex-shrink: 0;
    background: var(--navy);
    padding-block: 23px 17px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    color: #b2c4dc
}

.board-sidebar>img {
    margin-bottom: 17px
}

.side-button {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    background: none;
    color: #b2c4dc;
    padding: 12px 5px;
    border-radius: 7px;
    width: 60px
}

.side-button.active {
    color: #c7e3ff;
    background: #25436a
}

.side-button svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linejoin: round;
    stroke-linecap: round
}

.side-button span {
    font-size: 8px
}

.sidebar-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    margin-top: auto
}

.sidebar-bottom>span {
    border: 1px solid #456080;
    border-radius: 50%;
    width: 27px;
    height: 27px;
    display: grid;
    place-items: center;
    font-size: 9px
}

.sidebar-bottom small {
    font-size: 7px
}

.board-main {
    min-width: 0;
    flex: 1
}

.board-top {
    height: 70px;
    border-bottom: 1px solid var(--line);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-inline: 25px;
    gap: 20px
}

.board-top>div:first-child {
    display: flex;
    align-items: center;
    gap: 15px
}

.board-company {
    font-size: 11px;
    font-weight: 600
}

.board-company>span {
    margin-right: 7px
}

.board-title {
    font-size: 10px;
    color: #8b99ad;
    border-right: 1px solid var(--line);
    padding-right: 15px
}

.board-tools {
    display: flex;
    align-items: center;
    gap: 16px
}

.board-date {
    font-size: 9px;
    color: #8491a3
}

.board-demo-label {
    font-size: 7px;
    letter-spacing: 1px;
    background: #f1f6fd;
    color: #627b9a;
    padding: 4px 8px;
    border: 1px solid #e1eaf5;
    border-radius: 4px
}

.avatar {
    width: 27px;
    height: 27px;
    border-radius: 50%;
    background: #eaf1fc;
    color: var(--blue);
    display: grid;
    place-items: center;
    font-size: 11px
}

.board-summary {
    padding: 21px 25px 17px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px
}

.mini-label {
    color: #8a99ad;
    font-size: 8px
}

.board-summary h2 {
    font-size: 19px;
    letter-spacing: -.5px;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 3px
}

.board-tip {
    font-size: 9px;
    padding: 6px 10px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 5px;
    color: #7489a5
}

.board-tip:hover {
    color: var(--blue);
    border-color: #c0d4f5
}

.board-filters {
    display: flex;
    gap: 22px;
    padding-inline: 25px;
    border-bottom: 1px solid var(--line)
}

.board-filters button {
    background: none;
    font-size: 9px;
    color: #7c8ca1;
    padding: 10px 0 12px;
    position: relative;
    display: flex;
    align-items: center;
    gap: 7px
}

.board-filters button b {
    font-size: 8px;
    border-radius: 4px;
    background: #f1f4f8;
    padding: 0 5px;
    font-weight: 500
}

.board-filters button[aria-pressed=true] {
    color: var(--blue)
}

.board-filters button[aria-pressed=true]:after {
    content: '';
    position: absolute;
    bottom: -1px;
    right: 0;
    left: 0;
    height: 2px;
    background: var(--blue)
}

.board-filters button[aria-pressed=true] b {
    background: #e8f0ff
}

.dispatch-layout {
    display: grid;
    grid-template-columns: 44% 56%;
    min-height: 295px
}

.shipment-list {
    border-left: 1px solid var(--line);
    min-width: 0;
    display: flex;
    flex-direction: column
}

.list-heading {
    display: flex;
    justify-content: space-between;
    color: #8a98aa;
    font-size: 8px;
    background: #fafcfe;
    padding: 10px 20px;
    border-bottom: 1px solid var(--line)
}

.shipment-row {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: #fff;
    text-align: right;
    padding: 14px 18px;
    border-bottom: 1px solid #edf1f6;
    border-right: 3px solid transparent;
    line-height: 1.4
}

.shipment-row.selected {
    background: #eff6ff;
    border-right-color: var(--blue)
}

.shipment-row:hover {
    background: #f6f9fd
}

.shipment-row>div:first-child {
    display: flex;
    gap: 10px;
    align-items: center
}

.shipment-symbol {
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    border: 1px solid #e0e8f3;
    background: #fff;
    border-radius: 7px;
    display: grid;
    place-items: center;
    color: #718bae;
    font-size: 18px
}

.shipment-row small {
    display: block;
    font-size: 7px;
    color: #8d9bb0;
    margin-bottom: 3px;
    letter-spacing: .3px
}

.shipment-row strong {
    font-size: 10px;
    font-weight: 500;
    display: block
}

.shipment-route {
    display: block;
    color: #8491a2;
    font-size: 8px;
    margin-top: 4px
}

.shipment-row>div:last-child {
    text-align: left;
    flex-shrink: 0
}

.shipment-price {
    font-size: 10px;
    font-weight: 500;
    display: block;
    margin-bottom: 6px
}

.badge {
    font-size: 7px;
    display: inline-flex;
    padding: 3px 6px;
    background: #eaf1ff;
    color: #3a65ac;
    border-radius: 4px;
    white-space: nowrap;
    line-height: 1.5
}

.badge.waiting {
    background: #fff4dd;
    color: #86611d
}

.badge.done {
    background: #eaf6f0;
    color: #327052
}

.badge.exception {
    background: #fff0eb;
    color: #9b5138
}

.list-footer {
    padding: 9px 20px;
    font-size: 8px;
    color: #91a0b3;
    display: flex;
    gap: 7px;
    align-items: center;
    margin-top: auto
}

.list-footer .signal {
    width: 4px;
    height: 4px
}

.map-area {
    position: relative;
    overflow: hidden;
    min-height: 295px;
    background: #f4f7fa
}

.city-map {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    object-fit: cover
}

.map-chip {
    position: absolute;
    top: 14px;
    right: 17px;
    background: #fffffff2;
    border: 1px solid #e1e9f2;
    border-radius: 5px;
    padding: 7px 10px;
    font-size: 8px;
    display: flex;
    gap: 7px;
    align-items: center;
    box-shadow: 0 3px 10px #24416b07
}

.map-key {
    position: absolute;
    bottom: 16px;
    left: 15px;
    font-size: 7px;
    color: #8c9aad;
    display: flex;
    align-items: center;
    gap: 5px
}

.map-key i {
    height: 2px;
    width: 14px;
    background: var(--blue);
    display: block
}

.driver-float {
    position: absolute;
    bottom: 37px;
    right: 30px;
    left: 65px;
    padding: 14px 15px;
    background: #fff;
    border: 1px solid #d8e4f3;
    border-radius: 9px;
    box-shadow: 0 12px 20px #234a7b15;
    display: flex;
    gap: 12px;
    align-items: center
}

.driver-icon {
    width: 32px;
    height: 32px;
    background: #eaf2ff;
    border: 1px solid #dae7ff;
    border-radius: 8px;
    display: grid;
    place-items: center;
    font-size: 23px;
    color: var(--blue)
}

.driver-float small {
    font-size: 8px;
    color: #8192a8;
    display: block
}

.driver-float strong {
    display: block;
    font-size: 10px;
    font-weight: 500;
    margin-top: 3px
}

.driver-avatar {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #eef2f6;
    font-size: 10px;
    display: grid;
    place-items: center;
    margin-right: auto
}

.selection-tray {
    border-top: 1px solid var(--line);
    padding: 14px 24px;
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: space-between;
    min-height: 75px;
    background: #fff
}

.selection-tray>div {
    display: flex;
    align-items: center;
    gap: 15px
}

.selected-code {
    font-size: 9px;
    color: #8495ac;
    letter-spacing: .4px
}

.selection-tray strong {
    font-size: 11px;
    font-weight: 500
}

.selection-tray>div>span:last-child {
    font-size: 9px;
    color: #7b8ca4
}

.selection-tray .btn {
    font-size: 10px;
    padding: 8px 14px;
    gap: 17px
}

.selection-tray .btn span {
    font-size: 15px
}

.stage-under {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 17px;
    font-size: 9px;
    color: #8999ad
}

.stage-under span:last-child {
    font-size: 7px;
    letter-spacing: 1.7px
}

.report-table-scroll {
    overflow-x: auto;
    padding: 8px 25px
}

.report-table {
    border-collapse: collapse;
    width: 100%;
    font-size: 11px;
    text-align: right;
    white-space: nowrap
}

.report-table th {
    color: #8597ac;
    font-size: 9px;
    font-weight: 400
}

.report-table td,
.report-table th {
    padding: 20px 12px;
    border-bottom: 1px solid var(--line)
}

.report-disclaimer {
    font-size: 10px;
    padding: 20px 37px;
    color: #8c9bad
}

.benefits-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding-block: 45px 42px;
    border-bottom: 1px solid var(--line);
    margin-top: 12px;
    gap: 30px
}

.benefits-strip>div {
    display: flex;
    justify-content: center;
    gap: 20px;
    align-items: center
}

.benefits-strip>div+div {
    border-right: 1px solid var(--line)
}

.benefits-strip>div>span {
    font-size: 11px;
    align-self: start;
    color: var(--blue);
    font-family: var(--font-mono);
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    margin-top: 7px
}

.benefits-strip p {
    font-size: 14px;
    line-height: 1.8
}

.benefits-strip strong {
    display: block;
    font-weight: 500;
    color: var(--ink)
}

.section {
    padding-block: 105px
}

.eyebrow {
    font-size: 10px;
    font-weight: 500;
    color: var(--blue);
    letter-spacing: .4px;
    display: inline-block
}

.section-intro {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 60px;
    margin-bottom: 43px
}

h2 {
    font-size: clamp(32px, 3.3vw, 45px);
    line-height: 1.32;
    font-weight: 700;
    letter-spacing: -1.35px
}

h2 em {
    font-style: normal;
    color: #8b9ab1;
    font-weight: 500
}

.section-intro h2 {
    margin-top: 16px
}

.section-intro>p {
    font-size: 14px;
    max-width: 340px;
    line-height: 1.95
}

.roles-layout {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 65px;
    align-items: center
}

.roles-menu {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.roles-menu button {
    text-align: right;
    display: flex;
    align-items: center;
    gap: 20px;
    background: #fff;
    border: 1px solid transparent;
    border-radius: 10px;
    padding: 24px 20px
}

.roles-menu button[aria-pressed=true] {
    background: #f3f8ff;
    border-color: #dce9fa
}

.roles-menu button>span:last-child {
    margin-right: auto;
    font-size: 23px;
    color: #8099bb;
    opacity: 0
}

.roles-menu button[aria-pressed=true]>span:last-child {
    opacity: 1;
    color: var(--blue)
}

.role-icon {
    width: 39px;
    height: 39px;
    display: grid;
    place-items: center;
    background: #f0f5fb;
    color: #7691b8;
    border: 1px solid #e3eaf5;
    border-radius: 8px;
    font-size: 24px;
    flex-shrink: 0
}

.roles-menu button[aria-pressed=true] .role-icon {
    background: var(--blue);
    color: #fff;
    border-color: var(--blue)
}

.roles-menu strong {
    font-size: 17px;
    font-weight: 600;
    display: block
}

.roles-menu small {
    font-size: 11px;
    color: #7c8fa8;
    margin-top: 5px;
    display: block
}

.role-preview {
    background: #eff6ff;
    border: 1px solid #e2ecfa;
    min-height: 340px;
    border-radius: 15px;
    padding: 35px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.role-card {
    background: #fff;
    border: 1px solid #d9e6f6;
    border-radius: 10px;
    box-shadow: 0 15px 30px -20px #315d9c33;
    width: 100%;
    padding: 24px;
    max-width: 440px
}

.role-card-top {
    font-size: 10px;
    color: #8093ad;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--line);
    padding-bottom: 15px
}

.role-card h3 {
    font-size: 23px;
    font-weight: 600;
    letter-spacing: -.5px;
    margin-block: 20px 15px
}

.role-data-row {
    font-size: 11px;
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding-block: 9px;
    border-bottom: 1px solid #eff3f8
}

.role-data-row>span {
    color: #7f8fa5
}

.role-data-row strong {
    font-weight: 500
}

.role-card-footer {
    font-size: 10px;
    color: var(--blue);
    background: #eff6ff;
    padding: 10px;
    margin-top: 17px;
    border-radius: 5px
}

.role-card-note {
    font-size: 9px;
    color: #8798b1;
    margin-top: 12px
}

.workflow-section {
    background: var(--alice);
    border-block: 1px solid #e5f0fc
}

.workflow-intro {
    text-align: center;
    max-width: 650px;
    margin-inline: auto
}

.workflow-intro h2 {
    margin-block: 18px
}

.workflow-intro p {
    font-size: 14px;
    max-width: 480px;
    margin: auto;
    line-height: 1.9
}

.workflow-steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 35px;
    margin-top: 55px;
    position: relative
}

.workflow-steps:before {
    content: '';
    position: absolute;
    top: 17px;
    height: 1px;
    right: 20px;
    left: 20px;
    background: #d4e4f6
}

.workflow-steps article {
    position: relative
}

.workflow-steps article>span {
    display: grid;
    place-items: center;
    width: 35px;
    height: 35px;
    border: 1px solid #cbdff6;
    border-radius: 50%;
    color: var(--blue);
    font-size: 10px;
    background: var(--alice);
    outline: 12px solid var(--alice)
}

.workflow-steps h3 {
    font-size: 18px;
    font-weight: 500;
    margin-top: 26px
}

.workflow-steps p {
    font-size: 12px;
    margin-top: 8px;
    max-width: 200px
}

.exception-banner {
    margin-top: 45px;
    border: 1px solid #d6e4f4;
    background: #ffffffb0;
    border-radius: 10px;
    padding: 22px 25px;
    display: flex;
    align-items: center;
    gap: 18px
}

.exception-icon {
    width: 35px;
    height: 35px;
    background: #fff4e4;
    border: 1px solid #f1d9b2;
    color: #a36d27;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: 18px;
    flex-shrink: 0
}

.exception-banner h3 {
    font-size: 14px;
    font-weight: 500
}

.exception-banner p {
    font-size: 11px;
    margin-top: 3px
}

.exception-banner .quiet-link {
    margin-right: auto;
    font-size: 12px;
    flex-shrink: 0
}

.capability-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 24px
}

.capability-grid article {
    padding: 30px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff
}

.capability-grid .capability-main {
    background: #f8fbff
}

.capability-grid h3 {
    font-size: 25px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: -.8px;
    margin-top: 25px
}

.capability-grid p {
    font-size: 12px;
    line-height: 1.95;
    margin-top: 15px
}

.route-mini {
    display: flex;
    align-items: center;
    height: 90px;
    gap: 15px;
    margin-bottom: 20px
}

.route-mini>span {
    display: grid;
    place-items: center;
    width: 27px;
    height: 27px;
    border: 1px solid #c9defa;
    color: var(--blue);
    border-radius: 50%;
    font-family: var(--font-mono);
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    font-size: 10px;
    flex-shrink: 0
}

.route-mini>svg {
    flex: 1;
    min-width: 0
}

.capability-main .eyebrow {
    font-size: 8px;
    letter-spacing: 1px
}

.capability-main h3 {
    margin-top: 10px
}

.capability-grid details {
    font-size: 10px;
    color: var(--blue);
    margin-top: 20px
}

.capability-grid details p {
    font-size: 11px
}

.capability-symbol {
    font-size: 34px;
    color: var(--blue);
    line-height: 1;
    display: grid;
    place-items: center;
    width: 53px;
    height: 53px;
    background: #eff6ff;
    border: 1px solid #e2edfd;
    border-radius: 12px;
    margin-block: 12px 48px
}

.pricing-section {
    background: #f8fbff;
    border-block: 1px solid #edf2f9
}

.plan-recommender {
    display: flex;
    align-items: center;
    gap: 15px;
    background: #fff;
    border: 1px solid #dce7f5;
    border-radius: 9px;
    padding: 17px 20px;
    margin-bottom: 30px;
    font-size: 11px;
    flex-wrap: wrap
}

.plan-recommender>label:first-child {
    font-weight: 500
}

.plan-recommender select {
    background: #f5f9fe;
    border: 1px solid #d7e4f5;
    padding: 7px 10px;
    border-radius: 5px;
    font-size: 11px
}

.business-check {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    color: #768ba6
}

.business-check input {
    accent-color: var(--blue);
    width: 14px;
    height: 14px
}

#plan-recommendation {
    color: var(--blue);
    font-weight: 500;
    font-size: 11px;
    margin-right: auto
}

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

.plan {
    background: #fff;
    border: 1px solid #dfe7f3;
    border-radius: 12px;
    padding: 28px;
    position: relative;
    display: flex;
    flex-direction: column
}

.plan.recommended {
    border-color: #82aaf7;
    box-shadow: 0 6px 30px #2563eb0c
}

.recommended-label {
    position: absolute;
    top: -13px;
    right: 25px;
    background: var(--blue);
    color: #fff;
    padding: 4px 12px;
    border-radius: 5px;
    font-size: 9px
}

.plan .plan-audience {
    font-size: 10px;
    color: #7d8fa9
}

.plan h3 {
    font-size: 26px;
    font-weight: 600;
    text-align: right;
    letter-spacing: -.5px;
    margin-top: 5px
}

.plan p {
    font-size: 11px;
    min-height: 42px;
    margin-top: 9px;
    max-width: 230px;
    line-height: 1.8
}

.plan-price {
    display: flex;
    align-items: baseline;
    gap: 7px;
    margin-top: 22px
}

.plan-price bdi {
    font-size: 43px;
    letter-spacing: -2px;
    font-weight: 600;
    line-height: 1.2
}

.plan-price small {
    font-size: 10px;
    color: #8191a8
}

.plan-tax {
    font-size: 8px;
    color: #8796aa;
    margin-top: 7px
}

.plan-volume {
    font-size: 12px;
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid var(--line)
}

.plan-volume strong {
    font-weight: 600
}

.plan ul {
    list-style: none;
    padding: 0;
    font-size: 11px;
    margin-block: 17px 25px;
    line-height: 2.2
}

.plan li:before {
    content: '✓';
    color: var(--blue);
    margin-left: 8px
}

.plan .btn {
    margin-top: auto;
    font-size: 12px;
    padding: 12px 15px;
    gap: 10px;
    justify-content: space-between
}

.plan .btn>span {
    font-size: 17px
}

.plan-note {
    font-size: 8px;
    color: #8b9ab0;
    margin-top: 10px
}

.pricing-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    padding-block: 24px;
    border-bottom: 1px solid var(--line)
}

.pricing-bottom p {
    font-size: 11px;
    line-height: 2
}

.pricing-bottom strong {
    font-weight: 500;
    color: var(--ink)
}

.pricing-bottom .quiet-link {
    font-size: 12px
}

.fine-print {
    font-size: 9px;
    line-height: 1.9;
    color: #8b9bb0;
    margin-top: 14px
}

.faq-section {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 85px
}

.faq-section h2 {
    font-size: 36px;
    margin-top: 17px
}

.faq-list details {
    border-bottom: 1px solid var(--line);
    padding-block: 20px
}

.faq-list details:first-child {
    padding-top: 0
}

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

.faq-list summary::-webkit-details-marker {
    display: none
}

.faq-list summary:after {
    content: '+';
    font-size: 23px;
    line-height: 1;
    color: #7b93b6
}

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

.faq-list p {
    font-size: 12px;
    line-height: 1.95;
    margin-top: 13px
}

.contact-section {
    border-radius: 17px;
    background: #112b50;
    color: #fff;
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    position: relative;
    overflow: hidden;
    padding: 60px 70px;
    gap: 50px
}

.contact-section .eyebrow {
    color: #8db8f9
}

.contact-section h2 {
    font-size: 51px;
    line-height: 1.25;
    margin-top: 18px;
    letter-spacing: -1.8px
}

.contact-section p {
    color: #a2b8d6;
    font-size: 13px;
    margin-top: 18px;
    max-width: 370px;
    line-height: 1.95
}

.contact-btn {
    background: #fff;
    color: #dae7fb;
    margin-top: 25px
}

.contact-btn:hover {
    background: #e7f1ff;
    color: #acb7c9
}

.contact-note {
    display: block;
    color: #7e9dc6;
    font-size: 9px;
    margin-top: 12px
}

.contact-graphic {
    position: relative;
    min-height: 300px;
    display: grid;
    place-items: center
}

.contact-graphic>img {
    z-index: 1
}

.graphic-ring {
    position: absolute;
    border: 1px solid #4d7ab52a;
    border-radius: 50%;
    width: 150px;
    height: 150px
}

.ring-two {
    width: 230px;
    height: 230px
}

.ring-three {
    width: 320px;
    height: 320px
}

.graphic-pill {
    position: absolute;
    z-index: 1;
    background: #213e64;
    border: 1px solid #3c5d86;
    border-radius: 6px;
    padding: 11px 15px;
    font-size: 10px;
    box-shadow: 0 10px 20px #071b3630;
    display: flex;
    gap: 20px;
    align-items: center
}

.graphic-pill b {
    font-size: 16px;
    font-weight: 400;
    color: #74b3ff
}

.pill-one {
    top: 38px;
    right: 0;
    transform: rotate(6deg)
}

.pill-two {
    bottom: 32px;
    left: -10px;
    transform: rotate(-6deg)
}

/* Compact callback card */
.contact-via-lead[hidden] { display: none; }
.contact-via-lead:not([hidden]) { margin-bottom: clamp(32px, 5vw, 64px); animation: lead-reveal .38s cubic-bezier(.22, 1, .36, 1) both; }
@keyframes lead-reveal {
    from { opacity: 0; transform: translateY(-12px); }
    to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
    .contact-via-lead:not([hidden]) { animation: none; }
}
.contact-lead-link { background: none; border: 0; padding: 0; font-family: inherit; cursor: pointer; text-align: start; display: flex; align-items: center; gap: 12px; width: fit-content; margin-top: 18px; color: #fff; font-size: 13px; text-underline-offset: 5px; }
.contact-lead-link:hover { color: #a8caff; }
.contact-via-lead { display: grid; grid-template-columns: .85fr 1.15fr; gap: 56px; align-items: center; margin-top: 24px; padding: 38px 44px; border: 1px solid #dce5f2; border-radius: 20px; background: linear-gradient(120deg, #fff 45%, #eef4fd); box-shadow: 0 12px 35px #112b5006; scroll-margin-top: 100px; }
.lead-intro h2 { margin: 0 0 12px; color: #112b50; font-size: clamp(25px, 2.6vw, 36px); line-height: 1.3; letter-spacing: -1px; }
.lead-intro p { max-width: 290px; font-size: 13px; line-height: 1.8; color: #63748b; }
.lead-form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; min-width: 0; }
.lead-form label { display: flex; flex-direction: column; gap: 7px; font-size: 12px; font-weight: 600; color: #203c60; min-width: 0; }
.lead-form label > span { display: contents; color: #7e8da1; font-weight: 400; }
.lead-form input, .lead-form textarea { box-sizing: border-box; width: 100%; min-width: 0; border: 1px solid #d9e2ef; border-radius: 10px; padding: 12px 14px; font: inherit; font-size: 13px; font-weight: 400; background: #fff; color: #112b50; transition: border-color .2s, box-shadow .2s; }
.lead-form input { height: 46px; }
.lead-form textarea { resize: vertical; min-height: 78px; max-height: 220px; }
.lead-form input::placeholder, .lead-form textarea::placeholder { color: #8995a6; opacity: 1; }
.lead-form input:focus, .lead-form textarea:focus { outline: none; border-color: #2864e9; box-shadow: 0 0 0 3px #2864e91a; }
.lead-wide { grid-column: 1 / -1; }
.lead-bottom { display: flex; align-items: center; gap: 18px; }
.lead-submit { gap: 35px; border: 0; cursor: pointer; font: inherit; font-size: 13px; background: #255fe6; color: #fff; border-radius: 10px; padding: 13px 20px; }
.lead-submit:hover { background: #174cce; }
.lead-bottom small { font-size: 10px; line-height: 1.7; color: #687a92; }
.contact-lead-link:focus-visible, .lead-submit:focus-visible { outline: 3px solid #8db8f9; outline-offset: 4px; }
@media (max-width: 760px) {
    .contact-via-lead { grid-template-columns: 1fr; gap: 26px; padding: 28px 22px; }
    .lead-intro p { max-width: 100%; }
}
@media (max-width: 380px) {
    .contact-via-lead { padding: 24px 16px; }
    .lead-form { gap: 12px; }
    .lead-form input, .lead-form textarea { padding-inline: 10px; font-size: 12px; }
    .lead-bottom { flex-direction: column; align-items: stretch; gap: 10px; }
}


.footer {
    display: flex;
    align-items: center;
    gap: 40px;
    justify-content: space-between;
    padding-block: 50px 40px
}

.footer .brand {
    font-size: 23px
}

.footer p {
    font-size: 10px
}

.footer p small {
    display: block;
    font-size: 9px;
    color: #a1adbe
}

.footer nav {
    display: flex;
    gap: 22px;
    font-size: 10px
}

.footer>small {
    color: #91a0b6;
    font-size: 9px
}

.toast {
    position: fixed;
    bottom: 25px;
    left: 25px;
    z-index: 30;
    background: var(--ink);
    color: #fff;
    padding: 15px 24px;
    box-shadow: 0 10px 20px #10264530;
    border-radius: 8px;
    font-size: 12px;
    max-width: calc(100% - 50px)
}

dialog {
    width: min(520px, calc(100% - 32px));
    max-height: 90dvh;
    padding: 35px;
    background: #fff;
    border: 1px solid #cadcf4;
    border-radius: 15px;
    box-shadow: 0 25px 100px #11274650
}

dialog::backdrop {
    background: #11274680;
    backdrop-filter: blur(5px)
}

dialog form {
    display: flex;
    flex-direction: column
}

.close-dialog {
    position: absolute;
    left: 12px;
    top: 10px;
    background: none;
    font-size: 25px;
    width: 40px;
    height: 40px;
    color: #8194ae
}

dialog h2 {
    font-size: 30px;
    margin-top: 15px
}

dialog p {
    font-size: 12px;
    margin-top: 10px
}

dialog label {
    font-size: 12px;
    margin-block: 17px 5px
}

dialog label span {
    color: #8c9cb0
}

dialog input:not([type=checkbox]),
dialog textarea {
    width: 100%;
    background: var(--pale);
    border: 1px solid #ceddf1;
    border-radius: 5px;
    padding: 11px;
    font-size: 13px
}

dialog textarea {
    resize: vertical
}

.check-label {
    display: flex;
    align-items: center;
    gap: 9px
}

.check-label input {
    width: 16px;
    height: 16px;
    accent-color: var(--blue)
}

dialog .btn {
    margin-top: 20px
}

dialog small {
    font-size: 9px;
    color: #8a9bb2;
    margin-top: 13px
}

.skip {
    position: fixed;
    top: -100px;
    right: 15px;
    z-index: 100;
    background: var(--navy);
    color: #fff;
    padding: 10px 20px
}

.skip:focus {
    top: 10px
}

.noscript {
    padding: 20px;
    text-align: center;
    background: var(--alice);
    font-size: 13px
}

.pricing-hero {
    padding-block: 65px 45px;
    text-align: center
}

.pricing-hero h1 {
    font-size: 60px;
    line-height: 1.2;
    letter-spacing: -2px;
    font-weight: 800;
    margin-block: 20px
}

.pricing-hero>p {
    font-size: 15px;
    max-width: 600px;
    margin-inline: auto
}

.all-plans {
    grid-template-columns: repeat(4, 1fr)
}

.all-plans .plan {
    padding: 23px
}

.all-plans .plan-price bdi {
    font-size: 35px
}

.all-plans .plan h3 {
    font-size: 24px
}

.pricing-page-content {
    padding-bottom: 70px
}

.signature-panel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 25px;
    margin-top: 20px;
    gap: 30px
}

.signature-panel h2 {
    font-size: 24px;
    text-align: right
}

.signature-panel p {
    font-size: 12px;
    margin-top: 7px
}

.commercial-details {
    margin-top: 35px
}

.commercial-details details {
    padding: 20px;
    border-bottom: 1px solid var(--line);
    font-size: 13px
}

.commercial-details summary {
    cursor: pointer;
    font-weight: 500
}

.commercial-details p {
    font-size: 12px;
    margin-top: 15px;
    max-width: 900px;
    line-height: 1.95
}

@media(min-width:1500px) {
    .container {
        width: min(1320px, calc(100% - 120px))
    }

    .hero {
        padding-top: 70px
    }

    .hero h1 {
        font-size: 86px
    }

    .operations-board {
        min-height: 600px
    }

    .dispatch-layout {
        min-height: 350px
    }

    .shipment-row {
        padding-block: 19px
    }

    .hero:before {
        left: -80px;
        right: -80px
    }
}

@media(max-width:1100px) {
    .container {
        width: calc(100% - 60px)
    }

    .nav-shell {
        gap: 20px
    }

    .nav-shell nav {
        gap: 20px;
        font-size: 11px
    }

    .nav-actions {
        gap: 15px
    }

    .nav-contact {
        display: none
    }

    .hero h1 {
        font-size: 69px
    }

    .roles-layout {
        gap: 35px
    }

    .role-preview {
        padding: 25px
    }

    .board-top {
        padding-inline: 20px
    }

    .board-tools {
        gap: 10px
    }

    .board-date {
        display: none
    }

    .shipment-symbol {
        display: none
    }

    .driver-float {
        right: 20px;
        left: 25px
    }

    .selection-tray>div {
        gap: 10px
    }

    .selection-tray>div>span:last-child {
        font-size: 8px
    }

    .plans {
        gap: 16px
    }

    .plan {
        padding: 24px
    }

    .plan-price bdi {
        font-size: 37px
    }

    .capability-grid {
        gap: 16px
    }

    .capability-grid article {
        padding: 23px
    }

    .capability-grid h3 {
        font-size: 23px
    }

    .contact-section {
        padding: 50px;
        gap: 30px
    }

    .all-plans {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px
    }

    .all-plans .plan {
        padding: 28px
    }

    .footer {
        gap: 25px;
        flex-wrap: wrap
    }

    .board-filters {
        gap: 18px
    }

    .hero:before {
        left: -30px;
        right: -30px
    }
}

@media(max-width:760px) {
    html {
        scroll-padding-top: 85px
    }

    .container {
        width: calc(100% - 36px)
    }

    .site-header {
        height: 74px
    }

    .nav-shell {
        gap: 10px
    }

    .brand {
        font-size: 23px;
        gap: 5px
    }

    .brand img {
        width: 33px
    }

    .nav-actions {
        gap: 12px
    }

    .nav-actions .btn {
        font-size: 10px;
        padding: 9px 11px;
        gap: 10px
    }

    .menu-toggle {
        display: grid;
        place-items: center;
        background: #f3f7fd;
        border: 1px solid #dfebf8;
        border-radius: 6px;
        font-size: 18px;
        width: 35px;
        height: 35px
    }

    .nav-shell nav {
        display: none;
        position: absolute;
        right: 18px;
        left: 18px;
        top: 66px;
        border: 1px solid #dce7f5;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 10px 25px #24446b14;
        padding: 16px;
        flex-direction: column;
        font-size: 14px;
        gap: 0
    }

    .nav-shell nav.open {
        display: flex
    }

    .nav-shell nav a {
        padding: 12px
    }

    .hero {
        padding-top: 37px
    }

    .hero-eyebrow {
        font-size: 9px;
        gap: 8px
    }

    .hero-eyebrow .eyebrow-line {
        height: 10px
    }

    .hero h1 {
        font-size: clamp(43px, 9.3vw, 63px);
        letter-spacing: -2px;
        margin-block: 23px 20px;
        line-height: 1.2
    }

    .hero>p {
        font-size: 13px;
        line-height: 1.9;
        max-width: 390px;
        margin-inline: auto
    }

    .hero>p br {
        display: none
    }

    .hero-actions {
        margin-top: 25px;
        gap: 18px
    }

    .hero-actions .btn {
        font-size: 12px;
        padding: 13px 17px;
        gap: 17px
    }

    .hero-actions .quiet-link {
        font-size: 10px;
        gap: 10px
    }

    .hero-footnote {
        font-size: 9px;
        gap: 11px;
        margin-top: 19px
    }

    .product-stage {
        margin-top: 35px
    }

    .hero:before {
        top: 260px;
        left: -18px;
        right: -18px
    }

    .stage-caption {
        align-items: start;
        gap: 15px;
        font-size: 8px;
        line-height: 1.6;
        padding: 0
    }

    .stage-caption>span:first-child {
        gap: 7px;
        white-space: nowrap
    }

    .stage-caption>span:last-child {
        text-align: left;
        max-width: 170px
    }

    .operations-board {
        border-radius: 10px;
        min-height: 0
    }

    .board-sidebar {
        width: 43px;
        padding-block: 15px;
        gap: 15px
    }

    .board-sidebar>img {
        width: 25px;
        height: 25px;
        margin-bottom: 7px
    }

    .side-button {
        width: 34px;
        gap: 4px;
        padding: 9px 3px
    }

    .side-button svg {
        width: 18px;
        height: 18px
    }

    .side-button span {
        font-size: 6px
    }

    .sidebar-bottom>span {
        width: 23px;
        height: 23px;
        font-size: 8px
    }

    .sidebar-bottom small {
        display: none
    }

    .board-top {
        height: 53px;
        padding-inline: 12px;
        gap: 8px
    }

    .board-company {
        font-size: 8px
    }

    .board-top>div:first-child {
        gap: 8px
    }

    .board-title {
        display: none
    }

    .board-tools {
        gap: 6px
    }

    .board-demo-label {
        font-size: 5px;
        padding: 3px 5px;
        letter-spacing: .5px
    }

    .avatar {
        width: 21px;
        height: 21px;
        font-size: 8px
    }

    .board-summary {
        padding: 15px 12px 10px;
        gap: 7px
    }

    .board-summary h2 {
        font-size: 14px;
        letter-spacing: -.35px;
        line-height: 1.4
    }

    .mini-label {
        font-size: 6px
    }

    .board-tip {
        font-size: 7px;
        padding: 4px 6px
    }

    .board-filters {
        padding-inline: 12px;
        gap: 13px;
        justify-content: space-between
    }

    .board-filters button {
        font-size: 7px;
        gap: 3px;
        padding-block: 8px
    }

    .board-filters button b {
        font-size: 6px;
        padding: 0 3px
    }

    .dispatch-layout {
        grid-template-columns: 1fr;
        min-height: 0
    }

    .shipment-list {
        border-left: 0
    }

    .list-heading {
        font-size: 7px;
        padding: 8px 12px
    }

    .shipment-row {
        padding: 11px 10px;
        gap: 7px
    }

    .shipment-row>div:first-child {
        gap: 7px
    }

    .shipment-row small {
        font-size: 7px
    }

    .shipment-row strong {
        font-size: 9px
    }

    .shipment-route {
        font-size: 7px;
        margin-top: 2px
    }

    .shipment-price {
        font-size: 10px;
        margin-bottom: 4px
    }

    .badge {
        font-size: 7px
    }

    .list-footer {
        font-size: 7px;
        padding: 9px 12px
    }

    .shipment-symbol {
        display: grid;
        width: 26px;
        height: 26px;
        font-size: 16px
    }

    .map-area {
        min-height: 230px;
        max-height: 230px;
        border-top: 1px solid var(--line)
    }

    .map-chip {
        top: 10px;
        right: 12px;
        font-size: 7px;
        padding: 6px 8px
    }

    .driver-float {
        padding: 10px;
        bottom: 28px;
        right: 14px;
        left: 25px;
        gap: 9px
    }

    .driver-icon {
        width: 26px;
        height: 26px;
        font-size: 20px
    }

    .driver-float small {
        font-size: 7px
    }

    .driver-float strong {
        font-size: 9px
    }

    .driver-avatar {
        width: 22px;
        height: 22px;
        font-size: 8px
    }

    .map-key {
        bottom: 10px;
        left: 12px;
        font-size: 6px
    }

    .selection-tray {
        padding: 12px;
        align-items: center;
        gap: 10px;
        min-height: 80px
    }

    .selection-tray>div {
        display: flex;
        align-items: start;
        gap: 3px;
        flex-direction: column
    }

    .selection-tray strong {
        font-size: 10px
    }

    .selected-code {
        font-size: 7px
    }

    .selection-tray>div>span:last-child {
        font-size: 7px;
        max-width: 150px
    }

    .selection-tray .btn {
        padding: 8px 10px;
        font-size: 8px;
        gap: 10px;
        flex-shrink: 0
    }

    .selection-tray .btn span {
        font-size: 13px
    }

    .stage-under {
        font-size: 7px;
        gap: 15px;
        margin-top: 12px
    }

    .stage-under span:last-child {
        font-size: 5px;
        letter-spacing: .8px
    }

    .benefits-strip {
        padding-block: 30px;
        gap: 12px;
        margin-top: 10px
    }

    .benefits-strip>div {
        display: block
    }

    .benefits-strip>div+div {
        padding-right: 12px
    }

    .benefits-strip>div>span {
        font-size: 9px;
        display: block;
        margin-top: 0;
        margin-bottom: 7px
    }

    .benefits-strip p {
        font-size: 10px
    }

    .section {
        padding-block: 65px
    }

    .section-intro {
        display: block;
        margin-bottom: 28px
    }

    .section-intro h2,
    h2 {
        font-size: 32px;
        letter-spacing: -1px;
        line-height: 1.35
    }

    .section-intro>p {
        font-size: 12px;
        line-height: 1.95;
        max-width: 450px;
        margin-top: 18px
    }

    .eyebrow {
        font-size: 9px
    }

    .roles-layout {
        grid-template-columns: 1fr;
        gap: 23px
    }

    .roles-menu {
        gap: 6px
    }

    .roles-menu button {
        padding: 16px 14px;
        gap: 14px
    }

    .roles-menu strong {
        font-size: 15px
    }

    .roles-menu small {
        font-size: 10px
    }

    .role-icon {
        width: 33px;
        height: 33px;
        font-size: 21px
    }

    .roles-menu button>span:last-child {
        font-size: 21px
    }

    .role-preview {
        padding: 24px;
        min-height: 300px;
        border-radius: 12px
    }

    .role-card {
        padding: 20px
    }

    .role-card h3 {
        font-size: 21px
    }

    .role-card-top {
        font-size: 9px
    }

    .role-data-row {
        font-size: 10px
    }

    .workflow-intro {
        text-align: right
    }

    .workflow-intro p {
        font-size: 12px;
        max-width: none
    }

    .workflow-intro h2 {
        font-size: 35px
    }

    .workflow-steps {
        grid-template-columns: 1fr 1fr;
        gap: 30px 25px;
        margin-top: 35px
    }

    .workflow-steps:before {
        display: none
    }

    .workflow-steps article>span {
        width: 29px;
        height: 29px;
        font-size: 9px;
        outline: none
    }

    .workflow-steps h3 {
        font-size: 16px;
        margin-top: 14px
    }

    .workflow-steps p {
        font-size: 11px;
        line-height: 1.9
    }

    .exception-banner {
        padding: 18px;
        flex-wrap: wrap;
        gap: 12px;
        margin-top: 30px
    }

    .exception-banner>div {
        flex: 1
    }

    .exception-banner h3 {
        font-size: 13px
    }

    .exception-banner p {
        font-size: 10px
    }

    .exception-banner .quiet-link {
        margin-right: 47px;
        font-size: 11px
    }

    .exception-icon {
        width: 30px;
        height: 30px;
        font-size: 15px
    }

    .capability-grid {
        grid-template-columns: 1fr;
        gap: 16px
    }

    .capability-grid article {
        padding: 25px
    }

    .capability-grid h3 {
        font-size: 24px;
        margin-top: 15px
    }

    .capability-grid p {
        font-size: 12px
    }

    .capability-symbol {
        margin-block: 0 25px;
        width: 43px;
        height: 43px;
        font-size: 29px
    }

    .route-mini {
        height: 80px;
        margin-bottom: 10px
    }

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

    .plan {
        padding: 27px
    }

    .plan p {
        max-width: none;
        min-height: 0;
        font-size: 12px
    }

    .plan h3 {
        font-size: 27px
    }

    .plan-price bdi {
        font-size: 43px
    }

    .plan .plan-audience {
        font-size: 11px
    }

    .plan ul {
        font-size: 12px;
        margin-bottom: 20px
    }

    .plan-volume {
        font-size: 13px
    }

    .plan-tax {
        font-size: 9px
    }

    .plan-note {
        font-size: 9px
    }

    .recommended-label {
        font-size: 10px
    }

    .plan .btn {
        font-size: 13px
    }

    .plan-recommender {
        padding: 18px;
        gap: 12px;
        display: grid;
        grid-template-columns: 1fr
    }

    .plan-recommender>label:first-child {
        font-size: 12px
    }

    .plan-recommender select {
        padding: 10px;
        font-size: 12px
    }

    .business-check {
        font-size: 11px;
        gap: 7px
    }

    .business-check input {
        width: 17px;
        height: 17px
    }

    #plan-recommendation {
        margin-right: 0;
        border-top: 1px solid var(--line);
        padding-top: 10px;
        font-size: 12px
    }

    .pricing-bottom {
        display: block;
        padding-block: 23px
    }

    .pricing-bottom .quiet-link {
        margin-top: 15px
    }

    .fine-print {
        font-size: 9px
    }

    .faq-section {
        grid-template-columns: 1fr;
        gap: 35px
    }

    .faq-section h2 {
        font-size: 32px
    }

    .faq-list summary {
        font-size: 13px
    }

    .faq-list details {
        padding-block: 18px
    }

    .contact-section {
        grid-template-columns: 1fr;
        padding: 35px 28px;
        gap: 15px;
        border-radius: 12px
    }

    .contact-section h2 {
        font-size: 42px
    }

    .contact-section p {
        font-size: 12px
    }

    .contact-section .btn {
        font-size: 12px;
        padding: 13px 18px
    }

    .contact-graphic {
        min-height: 220px;
        margin-top: 10px
    }

    .graphic-ring {
        width: 110px;
        height: 110px
    }

    .ring-two {
        width: 180px;
        height: 180px
    }

    .ring-three {
        width: 245px;
        height: 245px
    }

    .contact-graphic>img {
        width: 95px;
        height: 90px
    }

    .graphic-pill {
        font-size: 9px;
        padding: 9px 12px
    }

    .pill-one {
        top: 10px;
        right: 0
    }

    .pill-two {
        bottom: 10px;
        left: 0
    }

    .footer {
        padding-block: 35px;
        gap: 24px
    }

    .footer .brand {
        font-size: 22px
    }

    .footer>p {
        font-size: 9px
    }

    .footer nav {
        flex-basis: 100%;
        gap: 25px
    }

    .footer>small {
        font-size: 9px
    }

    .report-table-scroll {
        padding: 5px 12px
    }

    .report-table th,
    .report-table td {
        padding: 15px 9px;
        font-size: 9px
    }

    .report-disclaimer {
        padding: 15px;
        font-size: 9px
    }

    .pricing-hero {
        padding-block: 45px 35px
    }

    .pricing-hero h1 {
        font-size: 43px;
        letter-spacing: -1.5px
    }

    .pricing-hero>p {
        font-size: 13px
    }

    .signature-panel {
        display: block;
        padding: 23px
    }

    .signature-panel .quiet-link {
        margin-top: 15px
    }

    .signature-panel p {
        font-size: 11px
    }

    .commercial-details details {
        padding: 18px 5px;
        font-size: 12px
    }

    .all-plans {
        grid-template-columns: 1fr
    }

    .pricing-page-content {
        padding-bottom: 30px
    }

    dialog {
        padding: 30px 23px
    }

    dialog h2 {
        font-size: 28px
    }

    .toast {
        font-size: 11px;
        padding: 13px 18px
    }
}

@media(max-width:380px) {
    .hero h1 {
        font-size: 40px
    }

    .hero-actions {
        flex-direction: column;
        gap: 15px
    }

    .hero-eyebrow {
        font-size: 8px
    }

    .nav-actions .btn {
        font-size: 9px;
        padding: 9px;
        gap: 7px
    }

    .board-company {
        font-size: 7px
    }

    .board-filters {
        gap: 6px
    }

    .board-filters button {
        font-size: 6px
    }

    .shipment-symbol {
        display: none
    }

    .board-summary h2 {
        font-size: 12px
    }

    .contact-section h2 {
        font-size: 37px
    }
}

@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto
    }

    *,
    *::before,
    *::after {
        transition: none !important;
        animation: none !important
    }

    .btn:hover {
        transform: none
    }
}
