/* ==========================================================================
   VELORA SHIPPING — Exact Match Reference Design System
   Clean, modern, luxury light theme with high-contrast elements
   ========================================================================== */

/* ── Reset & Base Styles ── */
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --color-bg: #ffffff;
    --color-dark: #0a0c10;
    --color-dark-alt: #11141a;
    --color-dark-card: #141822;
    --color-gray-900: #1a1e24;
    --color-gray-800: #2d333f;
    --color-gray-700: #4b5563;
    --color-gray-600: #5a6270;
    --color-gray-500: #6b7280;
    --color-gray-400: #8c93a0;
    --color-gray-300: #cbd5e1;
    --color-gray-200: #e2e8f0;
    --color-gray-100: #f1f5f9;
    --color-gray-50: #f8fafc;
    --color-card-bg: #f5f6f8;
    --color-white: #ffffff;
    --color-accent-cyan: #00e5ff;
    --color-accent-green: #00d285;
    --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --radius-pill: 50px;
    --radius-card: 18px;
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 20px;
    --shadow-subtle: 0 4px 20px rgba(0, 0, 0, 0.05);
    --shadow-hover: 0 16px 36px rgba(0, 0, 0, 0.09);
    --transition-smooth: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

html {
    scroll-behavior: smooth;
    font-size: 16px;
}

body {
    font-family: var(--font-sans);
    color: var(--color-dark);
    background-color: var(--color-bg);
    line-height: 1.6;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

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

a {
    text-decoration: none;
    color: inherit;
    transition: var(--transition-smooth);
}

ul {
    list-style: none;
}

.site-container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 32px;
}

/* ── Global Buttons ── */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: var(--font-sans);
    font-size: 0.88rem;
    font-weight: 600;
    border-radius: var(--radius-pill);
    cursor: pointer;
    transition: var(--transition-smooth);
    white-space: nowrap;
    text-decoration: none;
}

.btn-pill-dark {
    background: var(--color-dark);
    color: var(--color-white);
    padding: 11px 26px;
    border: 1px solid var(--color-dark);
}

.btn-pill-dark:hover {
    background: #252b36;
    border-color: #252b36;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(10, 12, 16, 0.15);
}

.btn-pill-outline {
    background: var(--color-white);
    color: var(--color-dark);
    padding: 11px 26px;
    border: 1px solid var(--color-gray-300);
}

.btn-pill-outline:hover {
    border-color: var(--color-dark);
    background: var(--color-gray-50);
    transform: translateY(-2px);
}

/* ── Site Header / Navbar ── */
.site-header {
    background: var(--color-white);
    position: sticky;
    top: 0;
    z-index: 1000;
    border-bottom: 1px solid #f0f1f4;
    padding: 16px 0;
    transition: var(--transition-smooth);
}

.header-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.logo {
    display: flex;
    align-items: center;
    line-height: 1;
    text-decoration: none;
}

.brand-logo-img {
    height: 48px;
    width: auto;
    max-width: 230px;
    display: block;
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.logo:hover .brand-logo-img {
    transform: scale(1.02);
}

.footer-logo-img {
    height: 44px;
    width: auto;
    max-width: 215px;
    display: block;
}

.logo-text {
    font-size: 1.45rem;
    font-weight: 900;
    color: var(--color-dark);
    letter-spacing: 2px;
}

.logo-sub {
    font-size: 0.52rem;
    font-weight: 700;
    color: var(--color-gray-500);
    letter-spacing: 3.5px;
    margin-top: 2px;
}

.main-nav .nav-links {
    display: flex;
    align-items: center;
    gap: 32px;
}

.nav-link {
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--color-gray-700);
}

.nav-link:hover,
.nav-link.active {
    color: var(--color-dark);
    font-weight: 600;
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 14px;
}

.icon-btn {
    background: transparent;
    border: none;
    font-size: 1rem;
    color: var(--color-dark);
    cursor: pointer;
    padding: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition-smooth);
}

.icon-btn:hover {
    color: var(--color-gray-500);
}

.currency-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: #f7f8fa;
    border: 1px solid #e5e7eb;
    border-radius: var(--radius-pill);
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--color-dark);
    cursor: pointer;
}

.currency-pill i {
    font-size: 0.78rem;
    color: var(--color-gray-500);
}

.mobile-toggle {
    display: none;
    flex-direction: column;
    gap: 4px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
}

.mobile-toggle span {
    width: 22px;
    height: 2px;
    background: var(--color-dark);
    border-radius: 2px;
    transition: var(--transition-smooth);
}

/* ── Hero Section ── */
.hero-section {
    background: var(--color-white);
    padding: 30px 0 60px;
    overflow: hidden;
}

.hero-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 32px;
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    gap: 48px;
    align-items: center;
    min-height: 540px;
}

.hero-content {
    max-width: 520px;
}

.hero-eyebrow {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 2.5px;
    color: var(--color-gray-400);
    text-transform: uppercase;
    margin-bottom: 16px;
    display: block;
}

.hero-heading {
    font-size: clamp(2.4rem, 4vw, 3.6rem);
    font-weight: 800;
    line-height: 1.08;
    color: var(--color-dark);
    letter-spacing: -1px;
    margin-bottom: 20px;
}

.typing-bar {
    font-weight: 300;
    color: var(--color-dark);
    animation: blink 1.2s infinite;
    margin-left: 2px;
}

@keyframes blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0; }
}

.hero-subtext {
    font-size: 1.05rem;
    color: var(--color-gray-600);
    line-height: 1.6;
    margin-bottom: 32px;
}

.hero-buttons {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 36px;
    flex-wrap: wrap;
}

.hero-trust {
    display: flex;
    align-items: center;
    gap: 14px;
}

.trust-avatars {
    display: flex;
}

.avatar-img {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 2px solid var(--color-white);
    margin-left: -8px;
    object-fit: cover;
}

.avatar-img:first-child {
    margin-left: 0;
}

.trust-text {
    font-size: 0.84rem;
    color: var(--color-gray-500);
    font-weight: 500;
}

.hero-visual {
    position: relative;
    border-radius: 22px;
    overflow: hidden;
    height: 480px;
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.08);
}

.hero-ship-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-visual-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 60%, rgba(0,0,0,0.5) 100%);
    pointer-events: none;
}

.hero-floating-info {
    position: absolute;
    bottom: 24px;
    right: 24px;
    background: rgba(12, 16, 22, 0.85);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    padding: 12px 20px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 20px;
    z-index: 5;
}

.info-text strong {
    display: block;
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--color-white);
}

.info-text span {
    display: block;
    font-size: 0.7rem;
    color: #94a3b8;
}

.info-bars {
    display: flex;
    gap: 4px;
}

.info-bars .bar {
    width: 22px;
    height: 3px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.3);
}

.info-bars .bar.active {
    background: var(--color-white);
}

/* ── Services Section ── */
.services-section {
    padding: 30px 0 80px;
    background: var(--color-white);
}

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

.service-box {
    background: var(--color-white);
    border: 1px solid #edf0f5;
    border-radius: var(--radius-card);
    overflow: hidden;
    transition: var(--transition-smooth);
    display: flex;
    flex-direction: column;
    cursor: pointer;
}

.service-box:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-hover);
    border-color: #dbe0e8;
}

.service-box-image {
    height: 190px;
    overflow: hidden;
    background: var(--color-gray-100);
}

.service-box-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.service-box:hover .service-box-image img {
    transform: scale(1.06);
}

.service-box-body {
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.service-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.service-name {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-dark);
}

.service-arrow-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--color-dark);
    color: var(--color-white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    transition: transform 0.25s ease;
}

.service-box:hover .service-arrow-btn {
    transform: translate(2px, -2px);
}

.service-caption {
    font-size: 0.8rem;
    color: var(--color-gray-500);
    line-height: 1.45;
}

/* ── Why Choose Section ── */
.why-section {
    padding: 50px 0 80px;
    background: var(--color-white);
}

.why-layout {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 64px;
    align-items: center;
}

.why-media {
    border-radius: var(--radius-lg);
    overflow: hidden;
    height: 480px;
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.08);
}

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

.section-eyebrow {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--color-gray-400);
    text-transform: uppercase;
    margin-bottom: 12px;
    display: block;
}

.section-heading {
    font-size: clamp(2rem, 3.2vw, 2.7rem);
    font-weight: 800;
    color: var(--color-dark);
    line-height: 1.15;
    margin-bottom: 18px;
    letter-spacing: -0.5px;
}

.section-lead {
    font-size: 0.95rem;
    color: var(--color-gray-600);
    line-height: 1.65;
    margin-bottom: 36px;
    max-width: 520px;
}

.features-2x2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px 28px;
    margin-bottom: 36px;
}

.feature-card {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.feature-icon-badge {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #f2f4f8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    color: var(--color-dark);
    flex-shrink: 0;
}

.feature-text h4 {
    font-size: 0.94rem;
    font-weight: 700;
    color: var(--color-dark);
    margin-bottom: 4px;
}

.feature-text p {
    font-size: 0.78rem;
    color: var(--color-gray-500);
    line-height: 1.45;
}

/* ── A Truly Global Network Section ── */
.network-section {
    padding: 50px 0 90px;
    background: var(--color-white);
}

.network-layout {
    display: grid;
    grid-template-columns: 1fr 1.35fr;
    gap: 54px;
    align-items: center;
}

.network-title {
    font-size: clamp(1.9rem, 3vw, 2.5rem);
    font-weight: 800;
    color: var(--color-dark);
    margin-bottom: 14px;
    letter-spacing: -0.5px;
}

.network-description {
    font-size: 0.92rem;
    color: var(--color-gray-600);
    line-height: 1.65;
    margin-bottom: 28px;
}

.regions-header {
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--color-dark);
    margin-bottom: 14px;
}

.regions-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.region-pill-box {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    background: #f6f7fa;
    border: 1px solid #ebeef2;
    border-radius: var(--radius-md);
    font-size: 0.84rem;
    font-weight: 600;
    color: #1a1e24;
    transition: var(--transition-smooth);
    cursor: pointer;
}

.region-pill-box i {
    color: var(--color-gray-400);
    font-size: 0.85rem;
    transition: var(--transition-smooth);
}

.region-pill-box:hover {
    background: var(--color-dark);
    color: var(--color-white);
    border-color: var(--color-dark);
}

.region-pill-box:hover i {
    color: var(--color-accent-cyan);
}

.network-visual-card {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: #080a0f;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12);
    height: 420px;
}

.network-map-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.current-location-chip {
    position: absolute;
    bottom: 24px;
    right: 24px;
    background: var(--color-white);
    padding: 10px 18px;
    border-radius: 12px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.25);
    display: flex;
    align-items: center;
    gap: 12px;
}

.current-location-chip i {
    font-size: 1.15rem;
    color: #0284c7;
}

.location-sub {
    display: block;
    font-size: 0.68rem;
    color: var(--color-gray-500);
    font-weight: 500;
}

.location-name {
    display: block;
    font-size: 0.85rem;
    color: var(--color-dark);
    font-weight: 700;
}

/* ── Tracking Section (Full-Width Dark Component) ── */
.tracking-live-section {
    padding: 90px 0;
    background: #090b10;
    color: var(--color-white);
}

.tracking-live-layout {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 64px;
    align-items: center;
}

.tracking-eyebrow {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 2.5px;
    color: #858e9d;
    text-transform: uppercase;
    margin-bottom: 14px;
    display: block;
}

.tracking-live-heading {
    font-size: clamp(2rem, 3.2vw, 2.8rem);
    font-weight: 800;
    color: var(--color-white);
    line-height: 1.15;
    margin-bottom: 18px;
}

.tracking-live-desc {
    font-size: 0.92rem;
    color: #9aa2b1;
    line-height: 1.65;
    margin-bottom: 32px;
    max-width: 440px;
}

.tracking-search-box {
    display: flex;
    align-items: center;
    background: var(--color-white);
    border-radius: var(--radius-pill);
    padding: 6px 8px 6px 20px;
    max-width: 440px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}

.tracking-search-box input {
    flex-grow: 1;
    border: none;
    outline: none;
    font-size: 0.9rem;
    color: var(--color-dark);
    font-family: inherit;
    background: transparent;
}

.tracking-search-box button {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--color-dark);
    color: var(--color-white);
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
    transition: var(--transition-smooth);
}

.tracking-search-box button:hover {
    background: #252b36;
}

.tracking-telemetry-card {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    background: rgba(18, 22, 31, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-lg);
    padding: 24px;
    backdrop-filter: blur(10px);
}

.tracking-steps-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    justify-content: center;
}

.telemetry-step {
    display: flex;
    align-items: center;
    gap: 12px;
}

.step-icon-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    color: #8e98a8;
    flex-shrink: 0;
}

.telemetry-step.active .step-icon-circle {
    background: var(--color-accent-green);
    color: var(--color-white);
    box-shadow: 0 0 14px rgba(0, 210, 133, 0.5);
}

.telemetry-step.past .step-icon-circle {
    background: rgba(255, 255, 255, 0.12);
    color: var(--color-white);
}

.step-content strong {
    display: block;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--color-white);
}

.step-content span {
    display: block;
    font-size: 0.7rem;
    color: #8e98a8;
}

.telemetry-step.active .step-content span {
    color: var(--color-accent-green);
    font-weight: 600;
}

.tracking-highway-media {
    border-radius: var(--radius-md);
    overflow: hidden;
    height: 270px;
}

.tracking-highway-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ── Stats Counter Section ── */
.stats-counter-section {
    padding: 70px 0;
    background: var(--color-white);
    border-bottom: 1px solid #f0f1f4;
}

.stats-counter-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    text-align: center;
}

.stat-digit {
    font-size: clamp(2.4rem, 3.8vw, 3.2rem);
    font-weight: 800;
    color: var(--color-dark);
    letter-spacing: -1px;
}

.stat-unit {
    font-size: clamp(1.8rem, 2.8vw, 2.4rem);
    font-weight: 800;
    color: var(--color-dark);
}

.stat-title {
    font-size: 0.85rem;
    color: var(--color-gray-500);
    font-weight: 500;
    margin-top: 6px;
}

/* ── Ready to Ship CTA Section ── */
.ready-ship-section {
    padding: 70px 0 100px;
    background: var(--color-white);
}

.ready-ship-card {
    display: grid;
    grid-template-columns: 1.15fr 1fr;
    background: linear-gradient(135deg, #f9fafb 0%, #f2f4f7 100%);
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid #eef0f3;
    min-height: 380px;
    align-items: center;
}

.ready-ship-media {
    position: relative;
    height: 100%;
    min-height: 360px;
}

.ready-ship-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ready-ship-media-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 30%;
    background: linear-gradient(to right, transparent, #f5f6f8);
}

.ready-ship-content {
    padding: 40px 50px;
}

.ready-ship-heading {
    font-size: clamp(1.8rem, 2.8vw, 2.4rem);
    font-weight: 800;
    color: var(--color-dark);
    line-height: 1.2;
    margin-bottom: 14px;
    letter-spacing: -0.5px;
}

.ready-ship-desc {
    font-size: 0.92rem;
    color: var(--color-gray-600);
    line-height: 1.6;
    margin-bottom: 28px;
}

.ready-ship-actions {
    display: flex;
    gap: 14px;
    align-items: center;
    flex-wrap: wrap;
}

/* ── Header Brand Logo ── */
.brand-logo-img {
    height: 48px;
    width: auto;
    display: block;
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.logo:hover .brand-logo-img {
    transform: translateY(-1px) scale(1.02);
}

/* ── Site Footer (Luxury Deep Dark Layout) ── */
.site-footer,
.site-footer.dark-footer {
    background: #090d16;
    color: #e2e8f0;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding-top: 75px;
    position: relative;
    overflow: hidden;
}

.site-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 25%;
    width: 650px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 229, 255, 0.06) 0%, transparent 70%);
    pointer-events: none;
}

.footer-columns {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr 1.35fr;
    gap: 40px;
    margin-bottom: 60px;
    position: relative;
    z-index: 1;
}

.footer-brand-logo {
    display: inline-block;
    text-decoration: none;
    margin-bottom: 18px;
    transition: transform 0.2s ease;
}

.footer-brand-logo:hover {
    transform: translateY(-1px);
}

.footer-logo-img {
    display: block;
    height: 44px;
    width: auto;
}

.footer-tagline {
    font-size: 0.88rem;
    color: #94a3b8;
    line-height: 1.6;
    margin-bottom: 18px;
    max-width: 320px;
}

.footer-contact-snippets {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.footer-info-item {
    font-size: 0.82rem;
    color: #94a3b8;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer-info-item i {
    color: #00e5ff;
    width: 14px;
    text-align: center;
}

.footer-col-title {
    font-size: 0.88rem;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.footer-links-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer-links-list a {
    font-size: 0.84rem;
    color: #94a3b8;
    text-decoration: none;
    transition: all 0.2s ease;
    display: inline-block;
}

.footer-links-list a:hover {
    color: #00e5ff;
    transform: translateX(4px);
}

.newsletter-sub {
    font-size: 0.84rem;
    color: #94a3b8;
    line-height: 1.55;
    margin-bottom: 16px;
}

.newsletter-pill-form {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: var(--radius-pill);
    padding: 4px 6px 4px 18px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.newsletter-pill-form:focus-within {
    border-color: #00e5ff;
    box-shadow: 0 0 15px rgba(0, 229, 255, 0.2);
}

.newsletter-pill-form input {
    flex-grow: 1;
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.84rem;
    color: #ffffff;
    font-family: inherit;
}

.newsletter-pill-form input::placeholder {
    color: #64748b;
}

.newsletter-pill-form button {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #00e5ff;
    color: #090d16;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 800;
    transition: all 0.2s ease;
}

.newsletter-pill-form button:hover {
    background: #ffffff;
    transform: scale(1.05);
}

.newsletter-guarantee {
    font-size: 0.74rem;
    color: #64748b;
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.newsletter-guarantee i {
    color: #00e5ff;
}

.footer-bottom-bar {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    padding: 24px 0;
    position: relative;
    z-index: 1;
}

.footer-bottom-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.copyright-notice {
    font-size: 0.8rem;
    color: #64748b;
}

.footer-credit-group {
    display: flex;
    align-items: center;
    gap: 16px;
}

.footer-motto {
    font-size: 0.8rem;
    color: #94a3b8;
    display: flex;
    align-items: center;
}

.scroll-top-btn {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    color: #00e5ff;
    border: 1px solid rgba(255, 255, 255, 0.15);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    transition: all 0.2s ease;
}

.scroll-top-btn:hover {
    background: #00e5ff;
    color: #090d16;
    transform: translateY(-2px);
    box-shadow: 0 0 15px rgba(0, 229, 255, 0.4);
}

.scroll-top-btn:hover {
    transform: translateY(-2px);
    background: #252b36;
}

/* ── Scroll Animations ── */
.reveal-fade {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.7s ease, transform 0.7s ease;
}

.reveal-fade.visible {
    opacity: 1;
    transform: translateY(0);
}

/* ── Services Page Dedicated Styles ── */
.page-banner {
    padding: 60px 0 50px;
    background: #fbfcfd;
    border-bottom: 1px solid #f0f2f5;
}

.banner-inner {
    max-width: 820px;
}

.breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.82rem;
    color: var(--color-gray-500);
    margin-bottom: 20px;
}

.breadcrumb a {
    color: var(--color-gray-700);
}

.breadcrumb a:hover {
    color: var(--color-dark);
}

.breadcrumb i {
    font-size: 0.65rem;
    color: var(--color-gray-400);
}

.banner-title {
    font-size: clamp(2.4rem, 4vw, 3.4rem);
    font-weight: 800;
    line-height: 1.12;
    color: var(--color-dark);
    letter-spacing: -1px;
    margin-bottom: 18px;
}

.banner-subtext {
    font-size: 1.05rem;
    color: var(--color-gray-600);
    line-height: 1.65;
    margin-bottom: 30px;
}

.banner-actions {
    display: flex;
    gap: 14px;
    align-items: center;
    flex-wrap: wrap;
}

/* Services Detailed Rows */
.services-detail-section {
    padding: 80px 0 60px;
    background: var(--color-white);
}

.service-detail-row {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 60px;
    align-items: center;
    margin-bottom: 90px;
}

.service-detail-row.reverse {
    grid-template-columns: 1.15fr 1fr;
}

.service-detail-row.reverse .service-detail-media {
    order: 2;
}

.service-detail-row.reverse .service-detail-content {
    order: 1;
}

.service-detail-media {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    height: 440px;
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.08);
}

.detail-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.service-detail-media:hover .detail-img {
    transform: scale(1.04);
}

.media-badge {
    position: absolute;
    top: 20px;
    left: 20px;
    background: rgba(12, 16, 22, 0.85);
    backdrop-filter: blur(8px);
    color: var(--color-white);
    padding: 8px 16px;
    border-radius: var(--radius-pill);
    font-size: 0.78rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255, 255, 255, 0.15);
}

.media-badge i {
    color: var(--color-accent-cyan);
}

.service-counter {
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--color-gray-400);
    text-transform: uppercase;
    margin-bottom: 12px;
    display: block;
}

.detail-heading {
    font-size: clamp(1.8rem, 2.8vw, 2.3rem);
    font-weight: 800;
    color: var(--color-dark);
    line-height: 1.2;
    margin-bottom: 16px;
    letter-spacing: -0.5px;
}

.detail-description {
    font-size: 0.95rem;
    color: var(--color-gray-600);
    line-height: 1.65;
    margin-bottom: 24px;
}

.service-features-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 32px;
}

.feature-bullet {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.feature-bullet i {
    color: var(--color-accent-green);
    font-size: 1.05rem;
    margin-top: 3px;
    flex-shrink: 0;
}

.feature-bullet strong {
    display: block;
    font-size: 0.92rem;
    color: var(--color-dark);
    margin-bottom: 2px;
}

.feature-bullet p {
    font-size: 0.82rem;
    color: var(--color-gray-500);
    line-height: 1.5;
}

.detail-footer-actions {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.transit-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: #f4f5f8;
    border-radius: var(--radius-pill);
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-gray-700);
}

.transit-chip i {
    color: var(--color-dark);
}

/* Rate Calculator Section */
.rate-calculator-section {
    padding: 70px 0;
    background: #090b10;
    color: var(--color-white);
}

.calculator-card {
    background: rgba(18, 22, 31, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-lg);
    padding: 48px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
}

.calculator-header {
    text-align: center;
    max-width: 600px;
    margin: 0 auto 36px;
}

.calculator-title {
    font-size: clamp(1.8rem, 2.8vw, 2.4rem);
    font-weight: 800;
    margin-bottom: 10px;
    color: var(--color-white);
}

.calculator-sub {
    font-size: 0.9rem;
    color: #94a3b8;
}

.calculator-grid-form {
    display: grid;
    grid-template-columns: repeat(4, 1fr) auto;
    gap: 16px;
    align-items: flex-end;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-group label {
    font-size: 0.78rem;
    font-weight: 600;
    color: #cbd5e1;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.form-group select,
.form-group input {
    height: 48px;
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    padding: 0 16px;
    color: var(--color-white);
    font-family: inherit;
    font-size: 0.88rem;
    outline: none;
    transition: var(--transition-smooth);
}

.form-group select option {
    background: #11141a;
    color: #ffffff;
}

.form-group select:focus,
.form-group input:focus {
    border-color: var(--color-accent-cyan);
    box-shadow: 0 0 10px rgba(0, 229, 255, 0.3);
}

.calculator-btn {
    height: 48px;
    background: var(--color-white);
    color: var(--color-dark);
    border: none;
    padding: 0 24px;
}

.calculator-btn:hover {
    background: var(--color-accent-cyan);
    color: var(--color-dark);
}

.calculator-result-box {
    margin-top: 36px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(0, 229, 255, 0.25);
    border-radius: 14px;
    padding: 24px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 24px;
}

.result-details {
    display: flex;
    gap: 36px;
    flex-wrap: wrap;
}

.result-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.result-label {
    font-size: 0.75rem;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.result-value {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--color-accent-cyan);
}

/* Value Services Section */
.value-services-section {
    padding: 80px 0;
    background: #fbfcfd;
    border-top: 1px solid #f0f2f5;
    border-bottom: 1px solid #f0f2f5;
}

.section-center-head {
    text-align: center;
    max-width: 640px;
    margin: 0 auto 50px;
}

.value-cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.value-card {
    background: var(--color-white);
    border: 1px solid #edf0f5;
    border-radius: var(--radius-card);
    padding: 30px 24px;
    transition: var(--transition-smooth);
}

.value-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-hover);
    border-color: #dbe0e8;
}

.value-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: #f2f4f8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: var(--color-dark);
    margin-bottom: 20px;
}

.value-card h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-dark);
    margin-bottom: 10px;
}

.value-card p {
    font-size: 0.82rem;
    color: var(--color-gray-500);
    line-height: 1.55;
}

/* Workflow Section */
.workflow-section {
    padding: 80px 0;
    background: var(--color-white);
}

.workflow-steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.workflow-step-card {
    background: #fafbfd;
    border: 1px solid #ebeef2;
    border-radius: var(--radius-card);
    padding: 32px 24px;
    position: relative;
    transition: var(--transition-smooth);
}

.workflow-step-card:hover {
    background: var(--color-white);
    box-shadow: var(--shadow-hover);
    transform: translateY(-4px);
}

.step-badge {
    font-size: 1.4rem;
    font-weight: 900;
    color: var(--color-dark);
    margin-bottom: 16px;
    display: inline-block;
    letter-spacing: -1px;
}

.workflow-step-card h4 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-dark);
    margin-bottom: 8px;
}

.workflow-step-card p {
    font-size: 0.82rem;
    color: var(--color-gray-500);
    line-height: 1.55;
}

/* FAQ Section */
.faq-section {
    padding: 60px 0 90px;
    background: var(--color-white);
}

.faq-accordion-container {
    max-width: 820px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.faq-item {
    border: 1px solid #edf0f5;
    border-radius: 14px;
    background: #fbfcfd;
    overflow: hidden;
    transition: var(--transition-smooth);
}

.faq-item.active {
    border-color: #d0d5dd;
    background: var(--color-white);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
}

.faq-question {
    width: 100%;
    padding: 20px 24px;
    background: transparent;
    border: none;
    text-align: left;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: inherit;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--color-dark);
    cursor: pointer;
}

.faq-question i {
    font-size: 0.85rem;
    color: var(--color-gray-400);
    transition: transform 0.3s ease;
}

.faq-item.active .faq-question i {
    transform: rotate(180deg);
    color: var(--color-dark);
}

.faq-answer {
    display: none;
    padding: 0 24px 22px;
    font-size: 0.88rem;
    color: var(--color-gray-600);
    line-height: 1.65;
}

.faq-item.active .faq-answer {
    display: block;
}

.faq-answer a {
    color: var(--color-dark);
    font-weight: 600;
    text-decoration: underline;
}

/* ── About Us Page Dedicated Styles ── */
.about-story-section {
    padding: 80px 0 60px;
    background: var(--color-white);
}

.about-story-layout {
    display: grid;
    grid-template-columns: 1.15fr 1fr;
    gap: 60px;
    align-items: center;
}

.about-story-media {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    height: 480px;
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.08);
}

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

.story-badge {
    position: absolute;
    bottom: 24px;
    left: 24px;
    background: rgba(12, 16, 22, 0.9);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 14px;
    padding: 16px 22px;
    display: flex;
    align-items: center;
    gap: 16px;
    color: var(--color-white);
}

.badge-years {
    font-size: 2rem;
    font-weight: 900;
    color: var(--color-accent-cyan);
    line-height: 1;
}

.badge-label strong {
    display: block;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--color-white);
}

.badge-label span {
    display: block;
    font-size: 0.72rem;
    color: var(--color-gray-400);
}

.story-body-text {
    font-size: 0.92rem;
    color: var(--color-gray-600);
    line-height: 1.65;
    margin-bottom: 28px;
}

.story-highlights-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.highlight-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.highlight-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #f2f4f8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    color: var(--color-dark);
    flex-shrink: 0;
}

.highlight-item h4 {
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--color-dark);
    margin-bottom: 4px;
}

.highlight-item p {
    font-size: 0.8rem;
    color: var(--color-gray-500);
    line-height: 1.45;
}

/* Values Section */
.values-section {
    padding: 80px 0;
    background: #fbfcfd;
    border-top: 1px solid #f0f2f5;
    border-bottom: 1px solid #f0f2f5;
}

.values-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.value-box {
    background: var(--color-white);
    border: 1px solid #edf0f5;
    border-radius: var(--radius-card);
    padding: 32px 24px;
    transition: var(--transition-smooth);
}

.value-box:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-hover);
    border-color: #dbe0e8;
}

.value-box-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: #f2f4f8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: var(--color-dark);
    margin-bottom: 20px;
}

.value-box h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-dark);
    margin-bottom: 10px;
}

.value-box p {
    font-size: 0.82rem;
    color: var(--color-gray-500);
    line-height: 1.55;
}

/* Team Section */
.team-section {
    padding: 80px 0;
    background: var(--color-white);
}

.team-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.team-card {
    background: var(--color-white);
    border: 1px solid #edf0f5;
    border-radius: var(--radius-card);
    overflow: hidden;
    transition: var(--transition-smooth);
}

.team-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-hover);
    border-color: #dbe0e8;
}

.team-card-photo {
    height: 240px;
    overflow: hidden;
    background: #f0f2f5;
}

.team-card-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.team-card:hover .team-card-photo img {
    transform: scale(1.05);
}

.team-card-info {
    padding: 20px;
}

.member-name {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-dark);
    margin-bottom: 4px;
}

.member-role {
    display: block;
    font-size: 0.78rem;
    font-weight: 600;
    color: #0284c7;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.member-bio {
    font-size: 0.8rem;
    color: var(--color-gray-500);
    line-height: 1.45;
}

/* Hubs Section */
.hubs-section {
    padding: 70px 0 90px;
    background: #fbfcfd;
    border-top: 1px solid #f0f2f5;
}

.hubs-layout {
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    gap: 60px;
    align-items: center;
}

.hubs-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 24px;
}

.hub-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 18px;
    background: var(--color-white);
    border: 1px solid #ebeef2;
    border-radius: 12px;
}

.hub-item i {
    color: var(--color-dark);
    font-size: 1rem;
    margin-top: 3px;
}

.hub-item strong {
    display: block;
    font-size: 0.9rem;
    color: var(--color-dark);
}

.hub-item span {
    display: block;
    font-size: 0.8rem;
    color: var(--color-gray-500);
}

.hubs-visual {
    border-radius: var(--radius-lg);
    overflow: hidden;
    height: 380px;
    background: #080a0f;
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.1);
}

.hubs-map-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ── Contact Page & AI Chatbot Styles ── */
.contact-cards-section {
    padding: 60px 0 30px;
    background: var(--color-white);
}

.contact-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.contact-method-card {
    background: #fbfcfd;
    border: 1px solid #edf0f5;
    border-radius: var(--radius-card);
    padding: 32px 28px;
    transition: var(--transition-smooth);
    display: flex;
    flex-direction: column;
}

.contact-method-card:hover {
    background: var(--color-white);
    transform: translateY(-5px);
    box-shadow: var(--shadow-hover);
    border-color: #dbe0e8;
}

.method-icon-badge {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: #f2f4f8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: var(--color-dark);
    margin-bottom: 20px;
}

.contact-method-card h3 {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--color-dark);
    margin-bottom: 8px;
}

.contact-method-card p {
    font-size: 0.85rem;
    color: var(--color-gray-500);
    line-height: 1.5;
    margin-bottom: 20px;
    flex-grow: 1;
}

.method-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 16px;
}

.method-info strong {
    font-size: 1.05rem;
    color: var(--color-dark);
    font-weight: 700;
}

.method-info span {
    font-size: 0.82rem;
    color: var(--color-gray-600);
}

.method-availability {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-gray-500);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.method-availability i {
    font-size: 0.5rem;
    color: var(--color-accent-green);
}

/* Contact Main Section (Form & Chatbot) */
.contact-main-section {
    padding: 60px 0 90px;
    background: var(--color-white);
}

.contact-split-grid {
    display: grid;
    grid-template-columns: 1.15fr 1fr;
    gap: 50px;
    align-items: flex-start;
}

/* Premium Contact Form */
.contact-form-wrapper {
    background: #ffffff;
    border: 1px solid #edf0f5;
    border-radius: var(--radius-lg);
    padding: 44px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.04);
}

.form-intro {
    margin-bottom: 30px;
}

.form-title {
    font-size: clamp(1.8rem, 2.6vw, 2.3rem);
    font-weight: 800;
    color: var(--color-dark);
    line-height: 1.2;
    margin-bottom: 10px;
    letter-spacing: -0.5px;
}

.form-desc {
    font-size: 0.92rem;
    color: var(--color-gray-600);
}

.alert-success-box,
.alert-error-box {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 20px;
    border-radius: 12px;
    margin-bottom: 24px;
    font-size: 0.86rem;
    line-height: 1.5;
}

.alert-success-box {
    background: rgba(0, 210, 133, 0.08);
    border: 1px solid rgba(0, 210, 133, 0.3);
    color: #065f46;
}

.alert-success-box i {
    color: var(--color-accent-green);
    font-size: 1.2rem;
    margin-top: 2px;
}

.alert-error-box {
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.3);
    color: #991b1b;
}

.alert-error-box i {
    color: #ef4444;
    font-size: 1.2rem;
    margin-top: 2px;
}

.premium-contact-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-row-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.input-field-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.input-field-group label {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--color-dark);
}

.input-field-group .required {
    color: #ef4444;
}

.input-field-group .optional {
    font-size: 0.74rem;
    color: var(--color-gray-400);
    font-weight: 400;
}

.input-field-group input,
.input-field-group select,
.input-field-group textarea {
    width: 100%;
    padding: 12px 16px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    font-family: inherit;
    font-size: 0.88rem;
    color: var(--color-dark);
    outline: none;
    transition: var(--transition-smooth);
}

.input-field-group textarea {
    resize: vertical;
    min-height: 120px;
}

.input-field-group input:focus,
.input-field-group select:focus,
.input-field-group textarea:focus {
    border-color: var(--color-dark);
    background: var(--color-white);
    box-shadow: 0 0 0 3px rgba(10, 12, 16, 0.08);
}

.submit-btn {
    align-self: flex-start;
    padding: 13px 32px;
    margin-top: 10px;
}

/* ── Contact Info Sidebar ── */
.contact-info-sidebar {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.contact-support-card {
    background: linear-gradient(135deg, #090d16 0%, #1e293b 100%);
    border: 1px solid rgba(0, 229, 255, 0.3);
    border-radius: var(--radius-lg);
    padding: 32px 28px;
    color: #ffffff;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.15);
    transition: all 0.25s ease;
}

.contact-support-card:hover {
    border-color: #00e5ff;
    box-shadow: 0 20px 50px rgba(0, 229, 255, 0.15);
    transform: translateY(-2px);
}

.support-card-badge {
    width: 48px;
    height: 48px;
    background: rgba(0, 229, 255, 0.12);
    border: 1px solid rgba(0, 229, 255, 0.4);
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #00e5ff;
    font-size: 1.3rem;
    margin-bottom: 16px;
    position: relative;
}

.badge-dot {
    position: absolute;
    top: -2px;
    right: -2px;
    width: 10px;
    height: 10px;
    background: #00d285;
    border: 2px solid #090d16;
    border-radius: 50%;
}

.contact-support-card h3 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 8px;
}

.contact-support-card p {
    font-size: 0.88rem;
    color: #94a3b8;
    line-height: 1.5;
    margin-bottom: 12px;
}

.contact-support-card strong {
    color: #00e5ff;
}

.contact-dispatch-box {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-lg);
    padding: 28px;
}

.contact-dispatch-box h4 {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.dispatch-item {
    margin-bottom: 16px;
}

.dispatch-item:last-child {
    margin-bottom: 0;
}

.dispatch-item strong {
    display: block;
    font-size: 0.82rem;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 3px;
}

.dispatch-item p {
    font-size: 0.95rem;
    font-weight: 600;
    color: #1e293b;
    display: flex;
    align-items: center;
    gap: 8px;
}

.dispatch-item p i {
    color: #0284c7;
}

.contact-tracking-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-lg);
    padding: 28px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
}

.contact-tracking-card h4 {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.contact-tracking-card p {
    font-size: 0.85rem;
    color: #64748b;
    margin-bottom: 14px;
}

.sidebar-tracking-form {
    display: flex;
    gap: 8px;
}

.sidebar-tracking-form input {
    flex: 1;
    padding: 10px 14px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-size: 0.9rem;
    outline: none;
}

.sidebar-tracking-form input:focus {
    border-color: #0284c7;
}

.sidebar-tracking-form button {
    background: #0f172a;
    color: #ffffff;
    border: none;
    padding: 0 16px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.sidebar-tracking-form button:hover {
    background: #0284c7;
}

/* ── AI Chatbot Card ── */
.ai-chatbot-card {
    background: #0b0e14;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-lg);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.25);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 640px;
}

.chatbot-header {
    background: rgba(18, 22, 31, 0.95);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding: 18px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.bot-meta {
    display: flex;
    align-items: center;
    gap: 14px;
}

.bot-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0284c7 0%, #00e5ff 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 1.1rem;
    position: relative;
    box-shadow: 0 0 14px rgba(0, 229, 255, 0.4);
}

.online-indicator {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 11px;
    height: 11px;
    background: #00d285;
    border: 2px solid #0b0e14;
    border-radius: 50%;
}

.bot-titles h3 {
    font-size: 0.98rem;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.bot-status {
    font-size: 0.72rem;
    color: #00e5ff;
    font-weight: 500;
}

.chat-reset-btn {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #94a3b8;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: var(--transition-smooth);
}

.chat-reset-btn:hover {
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
}

/* Chat Quick Prompts */
.chat-quick-prompts {
    padding: 12px 18px;
    background: rgba(14, 18, 25, 0.6);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    display: flex;
    gap: 8px;
    overflow-x: auto;
    white-space: nowrap;
    scrollbar-width: none;
}

.chat-quick-prompts::-webkit-scrollbar {
    display: none;
}

.prompt-chip {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #cbd5e1;
    font-size: 0.74rem;
    padding: 6px 12px;
    border-radius: var(--radius-pill);
    cursor: pointer;
    transition: var(--transition-smooth);
    font-family: inherit;
    flex-shrink: 0;
}

.prompt-chip:hover {
    background: rgba(0, 229, 255, 0.15);
    border-color: #00e5ff;
    color: #ffffff;
}

/* Chat Messages */
.chat-messages {
    flex-grow: 1;
    padding: 20px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.chat-bubble {
    display: flex;
    gap: 10px;
    max-width: 85%;
}

.chat-bubble.bot {
    align-self: flex-start;
}

.chat-bubble.user {
    align-self: flex-end;
    flex-direction: row;
}

.bubble-avatar {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #1e293b;
    color: #00e5ff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    flex-shrink: 0;
    margin-top: 4px;
}

.bubble-avatar.user-icon {
    background: #334155;
    color: #ffffff;
}

.bubble-text {
    padding: 12px 16px;
    border-radius: 14px;
    font-size: 0.84rem;
    line-height: 1.5;
}

.chat-bubble.bot .bubble-text {
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #e2e8f0;
    border-top-left-radius: 4px;
}

.chat-bubble.bot .bubble-text strong {
    color: #ffffff;
}

.chat-bubble.bot .bubble-text ul {
    margin: 8px 0;
    padding-left: 18px;
    list-style: disc;
}

.chat-bubble.user .bubble-text {
    background: #0284c7;
    color: #ffffff;
    border-top-right-radius: 4px;
}

.chat-time {
    display: block;
    font-size: 0.65rem;
    color: #64748b;
    margin-top: 4px;
    text-align: right;
}

/* Typing Indicator */
.chat-typing-indicator {
    padding: 0 20px 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.typing-dots {
    display: flex;
    gap: 4px;
    background: rgba(255, 255, 255, 0.06);
    padding: 8px 12px;
    border-radius: 12px;
}

.typing-dots span {
    width: 6px;
    height: 6px;
    background: #94a3b8;
    border-radius: 50%;
    animation: typingBounce 1.4s infinite ease-in-out;
}

.typing-dots span:nth-child(1) { animation-delay: 0s; }
.typing-dots span:nth-child(2) { animation-delay: 0.2s; }
.typing-dots span:nth-child(3) { animation-delay: 0.4s; }

@keyframes typingBounce {
    0%, 80%, 100% { transform: translateY(0); opacity: 0.4; }
    40% { transform: translateY(-5px); opacity: 1; }
}

/* Chat Input Form */
.chat-input-form {
    padding: 14px 18px;
    background: rgba(18, 22, 31, 0.95);
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    gap: 10px;
}

.chat-input-form input {
    flex-grow: 1;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: var(--radius-pill);
    padding: 10px 18px;
    color: #ffffff;
    font-family: inherit;
    font-size: 0.84rem;
    outline: none;
    transition: var(--transition-smooth);
}

.chat-input-form input:focus {
    border-color: #00e5ff;
    box-shadow: 0 0 10px rgba(0, 229, 255, 0.25);
}

.chat-input-form button {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #00e5ff;
    color: #0b0e14;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 0.85rem;
    transition: var(--transition-smooth);
}

.chat-input-form button:hover {
    background: #ffffff;
    transform: translateY(-2px);
}

/* Offices Directory */
.offices-directory-section {
    padding: 80px 0 100px;
    background: #fbfcfd;
    border-top: 1px solid #f0f2f5;
}

.offices-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.office-box {
    background: var(--color-white);
    border: 1px solid #edf0f5;
    border-radius: var(--radius-card);
    padding: 28px 24px;
    transition: var(--transition-smooth);
    display: flex;
    flex-direction: column;
}

.office-box:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-hover);
    border-color: #dbe0e8;
}

.office-top {
    margin-bottom: 14px;
}

.office-tag {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--color-gray-400);
    letter-spacing: 1.5px;
    margin-bottom: 6px;
}

.office-box h4 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-dark);
}

.office-address {
    font-size: 0.82rem;
    color: var(--color-gray-600);
    line-height: 1.55;
    margin-bottom: 20px;
    flex-grow: 1;
}

.office-contact-meta {
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 0.78rem;
    color: var(--color-gray-500);
    border-top: 1px solid #f0f2f5;
    padding-top: 16px;
}

.office-contact-meta span {
    display: flex;
    align-items: center;
    gap: 8px;
}

.office-contact-meta i {
    color: var(--color-dark);
    font-size: 0.8rem;
    width: 14px;
}

/* ── Responsive Media Queries ── */
@media (max-width: 1080px) {
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .contact-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .contact-split-grid {
        grid-template-columns: 1fr;
    }

    .offices-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .value-cards-grid,
    .workflow-steps-grid,
    .values-grid,
    .team-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .calculator-grid-form {
        grid-template-columns: repeat(2, 1fr);
    }

    .service-detail-row,
    .service-detail-row.reverse,
    .about-story-layout,
    .hubs-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .about-story-media,
    .hubs-visual {
        height: 340px;
    }
    .service-detail-row.reverse {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .service-detail-row.reverse .service-detail-media {
        order: 1;
    }

    .service-detail-row.reverse .service-detail-content {
        order: 2;
    }

    .service-detail-media {
        height: 340px;
    }

    .footer-columns {
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }

    .hero-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .why-layout,
    .network-layout,
    .tracking-live-layout,
    .ready-ship-card {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .ready-ship-media-overlay {
        display: none;
    }

    .hero-visual {
        height: 380px;
    }
}

@media (max-width: 768px) {
    .main-nav {
        display: none;
        position: fixed;
        top: 66px;
        left: 0;
        right: 0;
        background: var(--color-white);
        padding: 20px;
        border-bottom: 1px solid #ebeef2;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    }

    .main-nav.active {
        display: block;
    }

    .main-nav .nav-links {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .mobile-toggle {
        display: flex;
    }

    .header-actions .btn-pill-dark {
        display: none;
    }

    .hero-heading {
        font-size: 2.2rem;
    }

    .features-2x2 {
        grid-template-columns: 1fr;
    }

    .tracking-telemetry-card {
        grid-template-columns: 1fr;
    }

    .stats-counter-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .calculator-card {
        padding: 28px 20px;
    }

    .calculator-grid-form {
        grid-template-columns: 1fr;
    }

    .value-cards-grid,
    .workflow-steps-grid {
        grid-template-columns: 1fr;
    }

    .footer-columns {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .footer-bottom-flex {
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }

    .why-media,
    .network-visual-card {
        height: 300px;
    }
}

@media (max-width: 480px) {
    .services-grid {
        grid-template-columns: 1fr;
    }

    .hero-buttons {
        flex-direction: column;
        width: 100%;
    }

    .hero-buttons .btn {
        width: 100%;
    }

    .ready-ship-actions {
        flex-direction: column;
        width: 100%;
    }

    .ready-ship-actions .btn {
        width: 100%;
    }
}

/* ══════════════════════════════════════════════════════════
   VELORA FLOATING AI & LIVE HUMAN AGENT CHAT WIDGET
   ══════════════════════════════════════════════════════════ */
.velora-floating-chat {
    position: fixed;
    bottom: 28px;
    right: 28px;
    z-index: 99999;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Launcher Button */
.chat-launcher-btn {
    width: 62px;
    height: 62px;
    border-radius: 50%;
    background: linear-gradient(135deg, #090d16 0%, #1e293b 100%);
    border: 2px solid #00e5ff;
    color: #00e5ff;
    font-size: 1.55rem;
    cursor: pointer;
    box-shadow: 0 10px 30px rgba(0, 229, 255, 0.35), 0 4px 12px rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    outline: none;
}

.chat-launcher-btn:hover {
    transform: scale(1.08) translateY(-2px);
    box-shadow: 0 14px 40px rgba(0, 229, 255, 0.5), 0 6px 16px rgba(0, 0, 0, 0.5);
    color: #ffffff;
}

.launcher-badge {
    position: absolute;
    top: -4px;
    right: -4px;
    background: #ef4444;
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 700;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #090d16;
}

.launcher-pulse {
    position: absolute;
    top: -4px;
    left: -4px;
    right: -4px;
    bottom: -4px;
    border-radius: 50%;
    border: 2px solid #00e5ff;
    animation: launcherPulse 2.4s infinite;
    pointer-events: none;
}

@keyframes launcherPulse {
    0% { transform: scale(0.95); opacity: 0.8; }
    70% { transform: scale(1.3); opacity: 0; }
    100% { transform: scale(1.3); opacity: 0; }
}

/* Floating Window Card */
.chat-window-card {
    position: absolute;
    bottom: 80px;
    right: 0;
    width: 410px;
    height: 590px;
    max-height: calc(100vh - 120px);
    background: #090d16;
    border: 1px solid rgba(0, 229, 255, 0.25);
    border-radius: 20px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.6), 0 0 40px rgba(0, 229, 255, 0.12);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: chatWindowPop 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes chatWindowPop {
    from { opacity: 0; transform: scale(0.92) translateY(20px); }
    to { opacity: 1; transform: scale(1) translateY(0); }
}

/* Header */
.chat-window-header {
    background: #111726;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-brand-info {
    display: flex;
    align-items: center;
    gap: 12px;
}

.brand-avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0284c7, #00e5ff);
    color: #0b0e14;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    box-shadow: 0 0 12px rgba(0, 229, 255, 0.4);
}

.header-brand-info h3 {
    font-size: 0.96rem;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.online-indicator {
    font-size: 0.72rem;
    color: #94a3b8;
    display: flex;
    align-items: center;
    gap: 5px;
}

.indicator-dot {
    width: 7px;
    height: 7px;
    background: #00d285;
    border-radius: 50%;
    display: inline-block;
    box-shadow: 0 0 6px #00d285;
}

.header-controls {
    display: flex;
    align-items: center;
    gap: 6px;
}

.head-btn {
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #cbd5e1;
    padding: 5px 9px;
    border-radius: 8px;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: all 0.2s ease;
}

.head-btn:hover {
    background: rgba(0, 229, 255, 0.2);
    color: #00e5ff;
    border-color: #00e5ff;
}

/* Status Banner */
.chat-status-banner {
    padding: 8px 16px;
    font-size: 0.78rem;
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 1.35;
}

.chat-status-banner.queued {
    background: #78350f;
    color: #fef3c7;
    border-bottom: 1px solid #92400e;
}

.chat-status-banner.active {
    background: #064e3b;
    color: #d1fae5;
    border-bottom: 1px solid #047857;
}

/* Quick Suggestions Chips */
.chat-chips-scroll {
    padding: 10px 14px;
    background: rgba(18, 24, 38, 0.7);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    display: flex;
    gap: 6px;
    overflow-x: auto;
    scrollbar-width: none;
}

.chat-chips-scroll::-webkit-scrollbar {
    display: none;
}

.chat-chip {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #e2e8f0;
    font-size: 0.74rem;
    padding: 5px 11px;
    border-radius: 9999px;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.18s ease;
}

.chat-chip:hover {
    background: rgba(0, 229, 255, 0.2);
    border-color: #00e5ff;
    color: #ffffff;
}

.chat-chip.highlight {
    background: rgba(0, 229, 255, 0.12);
    border-color: rgba(0, 229, 255, 0.4);
    color: #00e5ff;
    font-weight: 600;
}

/* Messages Body */
.chat-messages-body {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.widget-message-row {
    display: flex;
    gap: 8px;
    max-width: 88%;
}

.widget-message-row.user {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.widget-message-row.ai {
    align-self: flex-start;
}

.widget-message-row.agent {
    align-self: flex-start;
}

.widget-message-row.system {
    align-self: center;
    max-width: 95%;
}

.bubble-avatar.user { background: #0284c7; color: #fff; }
.bubble-avatar.ai { background: #1e293b; color: #00e5ff; }
.bubble-avatar.agent { background: #059669; color: #fff; }

.widget-bubble {
    padding: 11px 14px;
    border-radius: 14px;
    font-size: 0.86rem;
    line-height: 1.45;
    position: relative;
    word-break: break-word;
}

.widget-bubble.user {
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
    color: #ffffff;
    border-top-right-radius: 3px;
}

.widget-bubble.ai {
    background: #151c2d;
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #e2e8f0;
    border-top-left-radius: 3px;
}

.widget-bubble.ai strong {
    color: #00e5ff;
}

.widget-bubble.ai a.chat-link {
    color: #00e5ff;
    text-decoration: underline;
}

.widget-bubble.ai code {
    background: rgba(0, 229, 255, 0.12);
    color: #00e5ff;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.8rem;
}

.widget-bubble.ai ul {
    margin: 6px 0 6px 18px;
}

.widget-bubble.agent {
    background: #065f46;
    border: 1px solid #059669;
    color: #ffffff;
    border-top-left-radius: 3px;
}

.sender-label {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    margin-bottom: 3px;
    opacity: 0.75;
}

.msg-time {
    display: block;
    font-size: 0.65rem;
    opacity: 0.65;
    margin-top: 5px;
    text-align: right;
}

.system-notice {
    background: rgba(245, 158, 11, 0.15);
    border: 1px solid rgba(245, 158, 11, 0.3);
    color: #fde68a;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 0.8rem;
    text-align: center;
    line-height: 1.4;
}

/* Typing Indicator */
.chat-typing-row {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 16px 10px;
}

.typing-bubble {
    background: #151c2d;
    border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 6px 10px;
    border-radius: 12px;
    display: flex;
    gap: 4px;
}

.typing-bubble .dot {
    width: 6px;
    height: 6px;
    background: #00e5ff;
    border-radius: 50%;
    animation: typingBounce 1.4s infinite ease-in-out both;
}

.typing-bubble .dot:nth-child(1) { animation-delay: -0.32s; }
.typing-bubble .dot:nth-child(2) { animation-delay: -0.16s; }

@keyframes typingBounce {
    0%, 80%, 100% { transform: scale(0); opacity: 0.4; }
    40% { transform: scale(1); opacity: 1; }
}

.typing-label {
    font-size: 0.74rem;
    color: #94a3b8;
}

/* Input Bar */
.chat-input-bar {
    padding: 12px 14px;
    background: #111726;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    gap: 8px;
}

.chat-input-bar input {
    flex: 1;
    background: #1a2236;
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #ffffff;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 0.88rem;
    outline: none;
    transition: all 0.2s ease;
}

.chat-input-bar input:focus {
    border-color: #00e5ff;
    box-shadow: 0 0 0 2px rgba(0, 229, 255, 0.15);
}

.chat-input-bar button {
    width: 40px;
    height: 40px;
    background: #00e5ff;
    color: #090d16;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    font-size: 0.95rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.chat-input-bar button:hover {
    background: #38bdf8;
    transform: scale(1.05);
}

/* Human Handoff Modal Overlay */
.handoff-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(9, 13, 22, 0.88);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    z-index: 100;
    animation: fadeIn 0.2s ease;
}

.handoff-card {
    background: #111726;
    border: 1px solid rgba(0, 229, 255, 0.3);
    border-radius: 16px;
    padding: 22px;
    width: 100%;
    max-width: 360px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
}

.handoff-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.handoff-card-header h4 {
    font-size: 1rem;
    font-weight: 700;
    color: #00e5ff;
    display: flex;
    align-items: center;
    gap: 8px;
}

.btn-close-handoff {
    background: none;
    border: none;
    color: #94a3b8;
    font-size: 1.4rem;
    cursor: pointer;
}

.handoff-card p {
    font-size: 0.82rem;
    color: #94a3b8;
    margin-bottom: 16px;
    line-height: 1.4;
}

.handoff-field {
    margin-bottom: 12px;
}

.handoff-field label {
    display: block;
    font-size: 0.78rem;
    font-weight: 600;
    color: #cbd5e1;
    margin-bottom: 5px;
}

.handoff-field input {
    width: 100%;
    background: #1a2236;
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #ffffff;
    padding: 9px 12px;
    border-radius: 8px;
    font-size: 0.88rem;
    outline: none;
}

.handoff-field input:focus {
    border-color: #00e5ff;
}

.btn-submit-handoff {
    width: 100%;
    background: linear-gradient(135deg, #0284c7 0%, #00e5ff 100%);
    color: #090d16;
    font-weight: 700;
    padding: 11px;
    border: none;
    border-radius: 8px;
    font-size: 0.9rem;
    cursor: pointer;
    margin-top: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s ease;
}

.btn-submit-handoff:hover {
    filter: brightness(1.1);
}

@media (max-width: 480px) {
    .velora-floating-chat {
        bottom: 16px;
        right: 16px;
    }

    .chat-window-card {
        right: -6px;
        bottom: 74px;
        width: calc(100vw - 20px);
        height: calc(100vh - 100px);
    }
}

/* ══════════════════════════════════════════════════════════
   SOLUTIONS PAGE STYLES
   ══════════════════════════════════════════════════════════ */

/* Stats Strip */
.solutions-stats-strip {
    background: #ffffff;
    border-top: 1px solid #eef1f6;
    border-bottom: 1px solid #eef1f6;
    padding: 44px 0;
}

.solutions-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
}

.sol-stat-item {
    border-left: 3px solid #0a0c10;
    padding-left: 22px;
}

.sol-stat-item .stat-number {
    font-size: clamp(2rem, 3vw, 2.5rem);
    font-weight: 800;
    color: #0a0c10;
    line-height: 1.1;
    margin-bottom: 6px;
    letter-spacing: -0.8px;
}

.sol-stat-item .stat-label {
    font-size: 0.95rem;
    font-weight: 700;
    color: #0284c7;
    margin-bottom: 4px;
}

.sol-stat-item .stat-sub {
    font-size: 0.84rem;
    color: #64748b;
    line-height: 1.45;
}

/* Solution Matcher Section */
.solution-matcher-section {
    padding: 90px 0;
    background: #f8fafc;
}

.matcher-card-wrapper {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 22px;
    padding: 48px;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.04);
}

.matcher-controls-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 40px;
    padding-bottom: 36px;
    border-bottom: 1px solid #e2e8f0;
}

.matcher-control-col label {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: #0a0c10;
    margin-bottom: 16px;
}

.matcher-control-col label i {
    color: #0284c7;
    margin-right: 6px;
}

.selector-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.sel-chip {
    background: #f8fafc;
    border: 1.5px solid #e2e8f0;
    color: #334155;
    padding: 10px 18px;
    border-radius: 9999px;
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: inherit;
}

.sel-chip:hover {
    border-color: #0a0c10;
    background: #ffffff;
    color: #0a0c10;
}

.sel-chip.active {
    background: #0a0c10;
    border-color: #0a0c10;
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(10, 12, 16, 0.18);
}

/* Blueprint Result Card */
.matcher-blueprint-result {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    border: 1.5px solid #cbd5e1;
    border-radius: 20px;
    padding: 38px;
    color: #0a0c10;
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.04);
    transition: opacity 0.15s ease, transform 0.15s ease;
}

.matcher-blueprint-result.updating {
    opacity: 0.5;
    transform: scale(0.995);
}

.blueprint-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    color: #0a0c10;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    padding: 5px 14px;
    border-radius: 9999px;
    margin-bottom: 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
}

.blueprint-badge i {
    color: #0284c7;
}

.blueprint-header h3 {
    font-size: 1.5rem;
    font-weight: 800;
    color: #0a0c10;
    letter-spacing: -0.4px;
    margin-bottom: 8px;
}

.blueprint-header p {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.55;
    margin-bottom: 26px;
    max-width: 820px;
}

.blueprint-specs-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-bottom: 30px;
}

.spec-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 18px 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);
}

.spec-label {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin-bottom: 6px;
}

.spec-card strong {
    font-size: 0.92rem;
    font-weight: 700;
    color: #0a0c10;
    line-height: 1.35;
    display: block;
}

.blueprint-actions {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.blueprint-actions .btn-pill-dark {
    background: #0a0c10;
    color: #ffffff;
    border-color: #0a0c10;
}

.blueprint-actions .btn-pill-dark:hover {
    background: #252b36;
    border-color: #252b36;
}

.blueprint-actions .btn-pill-outline {
    background: #ffffff;
    border-color: #cbd5e1;
    color: #0a0c10;
}

.blueprint-actions .btn-pill-outline:hover {
    border-color: #0a0c10;
    background: #f8fafc;
}

/* Industry Cards Grid */
.industry-solutions-section {
    padding: 90px 0;
    background: #ffffff;
}

.industry-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.industry-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
    transition: all 0.25s ease;
}

.industry-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
    border-color: #cbd5e1;
}

.industry-card-media {
    height: 210px;
    position: relative;
    overflow: hidden;
}

.industry-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.industry-card:hover .industry-card-media img {
    transform: scale(1.05);
}

.sector-tag {
    position: absolute;
    bottom: 14px;
    left: 14px;
    background: rgba(10, 12, 16, 0.85);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.6px;
    padding: 6px 14px;
    border-radius: 9999px;
    display: flex;
    align-items: center;
    gap: 7px;
}

.sector-tag i {
    color: #38bdf8;
}

.industry-card-body {
    padding: 30px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.industry-card-body h3 {
    font-size: 1.25rem;
    font-weight: 800;
    color: #0a0c10;
    margin-bottom: 12px;
    line-height: 1.3;
}

.industry-card-body p {
    font-size: 0.9rem;
    color: #5a6270;
    line-height: 1.55;
    margin-bottom: 20px;
}

.industry-points {
    list-style: none;
    margin-bottom: 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.industry-points li {
    font-size: 0.86rem;
    color: #334155;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    line-height: 1.45;
}

.industry-points li i {
    color: #0a0c10;
    margin-top: 3px;
    font-size: 0.82rem;
    flex-shrink: 0;
}

.industry-link {
    margin-top: auto;
    font-size: 0.9rem;
    font-weight: 700;
    color: #0a0c10;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s ease;
}

.industry-link:hover {
    color: #0284c7;
    transform: translateX(4px);
}

/* Strategic Capabilities Matrix */
.capabilities-matrix-section {
    padding: 90px 0;
    background: #f8fafc;
}

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

.cap-box {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    padding: 36px 30px;
    transition: all 0.25s ease;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);
}

.cap-box:hover {
    border-color: #cbd5e1;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.06);
    transform: translateY(-3px);
}

.cap-icon {
    width: 54px;
    height: 54px;
    background: #f1f5f9;
    color: #0a0c10;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    margin-bottom: 22px;
    transition: all 0.25s ease;
}

.cap-box:hover .cap-icon {
    background: #0a0c10;
    color: #ffffff;
    border-color: #0a0c10;
}

.cap-box h4 {
    font-size: 1.18rem;
    font-weight: 800;
    color: #0a0c10;
    margin-bottom: 10px;
}

.cap-box p {
    font-size: 0.9rem;
    color: #5a6270;
    line-height: 1.6;
}

/* Case Studies Section */
.solutions-case-studies {
    padding: 90px 0;
    background: #ffffff;
}

.case-studies-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.case-card {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    padding: 34px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.03);
    transition: all 0.25s ease;
}

.case-card:hover {
    background: #ffffff;
    border-color: #cbd5e1;
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.07);
}

.case-metric {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 16px;
}

.case-metric span {
    font-size: 2.4rem;
    font-weight: 900;
    color: #0a0c10;
    line-height: 1;
    letter-spacing: -0.5px;
}

.case-metric small {
    font-size: 0.8rem;
    font-weight: 700;
    color: #0284c7;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.case-card h4 {
    font-size: 1.2rem;
    font-weight: 800;
    color: #0a0c10;
    margin-bottom: 12px;
}

.case-card p {
    font-size: 0.9rem;
    color: #5a6270;
    line-height: 1.6;
    margin-bottom: 24px;
}

.case-footer {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 16px;
    border-top: 1px solid #e2e8f0;
    font-size: 0.84rem;
}

.case-footer span {
    color: #64748b;
    font-weight: 600;
}

.case-footer a {
    color: #0a0c10;
    font-weight: 700;
    text-decoration: none;
}

.case-footer a:hover {
    color: #0284c7;
}

/* Solutions CTA Fallback */
.solutions-cta-section {
    padding: 40px 0 90px;
    background: #ffffff;
}

.solutions-cta-card {
    display: grid;
    grid-template-columns: 1.15fr 1fr;
    background: linear-gradient(135deg, #f9fafb 0%, #f2f4f7 100%);
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid #eef0f3;
    padding: 50px;
    align-items: center;
    gap: 40px;
}

.cta-text-side h2 {
    font-size: clamp(1.8rem, 2.5vw, 2.4rem);
    font-weight: 800;
    color: #0a0c10;
    line-height: 1.2;
    margin: 8px 0 12px;
    letter-spacing: -0.5px;
}

.cta-text-side p {
    font-size: 0.95rem;
    color: #5a6270;
    max-width: 600px;
    line-height: 1.6;
}

.cta-btn-side {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex-shrink: 0;
}

/* Responsive */
@media (max-width: 1024px) {
    .solutions-stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .matcher-controls-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .blueprint-specs-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .industry-cards-grid,
    .capabilities-grid,
    .case-studies-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .solutions-cta-card {
        flex-direction: column;
        text-align: center;
        padding: 40px 24px;
    }

    .cta-btn-side {
        width: 100%;
        max-width: 320px;
    }
}

@media (max-width: 768px) {
    .solutions-stats-grid {
        grid-template-columns: 1fr;
    }

    .matcher-card-wrapper {
        padding: 24px;
    }

    .blueprint-specs-grid {
        grid-template-columns: 1fr;
    }

    .industry-cards-grid,
    .capabilities-grid,
    .case-studies-grid {
        grid-template-columns: 1fr;
    }
}

/* ── Trusted E-Commerce Brands Section ── */
.trusted-brands-section {
    padding: 70px 0 60px;
    background: #ffffff;
    border-bottom: 1px solid var(--color-gray-200);
}

.trusted-brands-title {
    text-align: center;
    font-size: 1.55rem;
    font-weight: 800;
    color: #111827;
    letter-spacing: -0.02em;
    margin-bottom: 44px;
}

.trusted-brands-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    max-width: 1120px;
    margin: 0 auto;
}

.trusted-brands-row {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 48px;
    width: 100%;
}

.brands-row-main {
    justify-content: space-between;
}

.brands-row-sub {
    justify-content: center;
}

.brand-logo-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease;
}

.brand-logo-item:hover {
    transform: translateY(-3px) scale(1.04);
}

.brand-logo-svg {
    display: block;
    height: auto;
    max-height: 44px;
    width: auto;
    user-select: none;
}

@media (max-width: 991px) {
    .trusted-brands-row {
        gap: 32px;
        justify-content: center;
    }
    .brands-row-main {
        justify-content: center;
    }
    .trusted-brands-title {
        font-size: 1.35rem;
        margin-bottom: 32px;
    }
}

@media (max-width: 576px) {
    .trusted-brands-section {
        padding: 50px 0 40px;
    }
    .trusted-brands-row {
        gap: 24px;
    }
    .brand-logo-item {
        padding: 6px 10px;
    }
    .brand-logo-svg {
        max-height: 34px;
    }
}

/* ── Get a Quote Page Dedicated Styles ── */
.quote-system-section {
    padding: 60px 0 90px;
    background: #f8fafc;
}

.quote-layout-grid {
    display: grid;
    grid-template-columns: 1.55fr 1fr;
    gap: 36px;
    align-items: start;
}

.quote-step-box {
    background: #ffffff;
    border-radius: 18px;
    border: 1px solid #e2e8f0;
    padding: 32px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
    margin-bottom: 24px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.quote-step-box:focus-within {
    border-color: #cbd5e1;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.05);
}

.step-head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid #f1f5f9;
}

.step-badge {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #090d16;
    color: #00e5ff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 0.95rem;
    flex-shrink: 0;
    box-shadow: 0 0 12px rgba(0, 229, 255, 0.25);
}

.step-info h2, .step-info h3 {
    font-size: 1.15rem;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 4px 0;
}

.step-info p {
    font-size: 0.82rem;
    color: #64748b;
    margin: 0;
}

.field-row-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 18px;
}

.field-row-3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
    margin-bottom: 18px;
}

.quote-form-group {
    margin-bottom: 18px;
}

.quote-form-group label {
    display: block;
    font-size: 0.85rem;
    font-weight: 700;
    color: #334155;
    margin-bottom: 8px;
}

.quote-form-group label i {
    color: #0284c7;
    margin-right: 4px;
}

.quote-form-group input,
.quote-form-group select,
.quote-form-group textarea {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #cbd5e1;
    border-radius: 10px;
    font-size: 0.92rem;
    font-family: inherit;
    color: #0f172a;
    background: #ffffff;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

.quote-form-group input:focus,
.quote-form-group select:focus,
.quote-form-group textarea:focus {
    outline: none;
    border-color: #00bcd4;
    box-shadow: 0 0 0 3px rgba(0, 229, 255, 0.18);
}

/* Mode Selection Cards */
.mode-cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 24px;
}

.mode-radio-card {
    position: relative;
    cursor: pointer;
    user-select: none;
}

.mode-radio-card input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.mode-card-inner {
    border: 2px solid #e2e8f0;
    border-radius: 12px;
    padding: 16px 12px;
    text-align: center;
    background: #ffffff;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    height: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.mode-card-inner i {
    font-size: 1.6rem;
    color: #64748b;
    margin-bottom: 8px;
    transition: color 0.2s ease;
}

.mode-title {
    font-size: 0.88rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 4px;
}

.mode-sla {
    font-size: 0.72rem;
    color: #64748b;
}

.mode-radio-card:hover .mode-card-inner {
    border-color: #94a3b8;
    transform: translateY(-2px);
}

.mode-radio-card input[type="radio"]:checked + .mode-card-inner {
    border-color: #090d16;
    background: #090d16;
    box-shadow: 0 8px 24px rgba(9, 13, 22, 0.15);
}

.mode-radio-card input[type="radio"]:checked + .mode-card-inner i {
    color: #00e5ff;
}

.mode-radio-card input[type="radio"]:checked + .mode-card-inner .mode-title {
    color: #ffffff;
}

.mode-radio-card input[type="radio"]:checked + .mode-card-inner .mode-sla {
    color: #94a3b8;
}

/* Delivery Type Selector */
.delivery-type-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 20px;
}

.del-radio-card {
    position: relative;
    cursor: pointer;
}

.del-radio-card input[type="radio"] {
    position: absolute;
    opacity: 0;
}

.del-card-inner {
    border: 1px solid #cbd5e1;
    border-radius: 10px;
    padding: 12px 14px;
    background: #f8fafc;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    color: #334155;
    transition: all 0.2s ease;
}

.del-radio-card input[type="radio"]:checked + .del-card-inner {
    border-color: #0284c7;
    background: #f0f9ff;
    color: #0369a1;
}

/* Dimensions & Volume Pill */
.volume-stats-pill {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f1f5f9;
    border-radius: 10px;
    padding: 12px 16px;
    font-size: 0.85rem;
    color: #334155;
    margin-top: 10px;
}

.volume-stat-val {
    font-weight: 800;
    color: #0f172a;
}

/* Addons Cards */
.addons-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.addon-card-item {
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 16px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #ffffff;
    cursor: pointer;
    transition: all 0.2s ease;
}

.addon-card-item:hover {
    border-color: #cbd5e1;
    background: #fafafa;
}

.addon-card-item.active {
    border-color: #00bcd4;
    background: #f0fdfa;
}

.addon-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.addon-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #f1f5f9;
    color: #0284c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.addon-card-item.active .addon-icon {
    background: #090d16;
    color: #00e5ff;
}

.addon-text h4 {
    font-size: 0.92rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 2px 0;
}

.addon-text p {
    font-size: 0.78rem;
    color: #64748b;
    margin: 0;
}

.addon-right {
    display: flex;
    align-items: center;
    gap: 14px;
}

.addon-fee-badge {
    font-size: 0.82rem;
    font-weight: 700;
    color: #0369a1;
    background: #e0f2fe;
    padding: 4px 10px;
    border-radius: 6px;
}

/* Sticky Real-Time Quote Blueprint */
.sticky-quote-summary {
    position: sticky;
    top: 96px;
}

.summary-card-inner {
    background: #090d16;
    color: #ffffff;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 32px 28px;
    box-shadow: 0 24px 60px rgba(9, 13, 22, 0.25);
    position: relative;
    overflow: hidden;
}

.summary-card-inner::before {
    content: '';
    position: absolute;
    top: -80px;
    right: -80px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(0, 229, 255, 0.15) 0%, transparent 70%);
    pointer-events: none;
}

.summary-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.summary-header h3 {
    font-size: 1.1rem;
    font-weight: 800;
    color: #ffffff;
    margin: 0;
}

.summary-tag {
    font-size: 0.72rem;
    font-weight: 700;
    color: #00e5ff;
    background: rgba(0, 229, 255, 0.12);
    border: 1px solid rgba(0, 229, 255, 0.3);
    padding: 4px 10px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.live-price-block {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    padding: 20px;
    text-align: center;
    margin-bottom: 24px;
    position: relative;
}

.live-price-label {
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #94a3b8;
    margin-bottom: 6px;
}

.live-price-value {
    font-size: 2.2rem;
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -0.5px;
    text-shadow: 0 0 20px rgba(0, 229, 255, 0.3);
    margin-bottom: 4px;
}

.live-price-value span {
    color: #00e5ff;
}

.live-price-sub {
    font-size: 0.74rem;
    color: #64748b;
}

/* Route Path Visualizer */
.route-path-visual {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 10px;
    padding: 12px 16px;
    margin-bottom: 24px;
}

.route-point {
    text-align: center;
}

.route-point-code {
    font-size: 1rem;
    font-weight: 800;
    color: #ffffff;
    display: block;
}

.route-point-name {
    font-size: 0.72rem;
    color: #94a3b8;
}

.route-line-connect {
    flex: 1;
    position: relative;
    height: 2px;
    background: rgba(255, 255, 255, 0.15);
    margin: 0 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.route-line-connect i {
    background: #090d16;
    padding: 0 6px;
    font-size: 0.8rem;
    color: #00e5ff;
}

/* Breakdown List */
.summary-breakdown-list {
    margin-bottom: 24px;
}

.breakdown-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
    font-size: 0.85rem;
    color: #94a3b8;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.breakdown-row strong {
    color: #ffffff;
    font-weight: 600;
}

.breakdown-row.highlight-row {
    color: #00e5ff;
    font-weight: 700;
    border-bottom: none;
    padding-top: 12px;
}

.breakdown-row.highlight-row strong {
    color: #00e5ff;
}

/* Guarantee Chips */
.summary-guarantees {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
}

.guarantee-chip {
    font-size: 0.72rem;
    color: #cbd5e1;
    background: rgba(255, 255, 255, 0.06);
    padding: 4px 10px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.guarantee-chip i {
    color: #00e5ff;
}

/* Action Buttons */
.summary-submit-btn {
    width: 100%;
    padding: 16px 24px;
    border-radius: 50px;
    background: #00e5ff;
    color: #090d16;
    font-weight: 800;
    font-size: 1rem;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: all 0.25s ease;
    box-shadow: 0 8px 25px rgba(0, 229, 255, 0.35);
    margin-bottom: 12px;
}

.summary-submit-btn:hover {
    background: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 229, 255, 0.5);
}

.summary-aux-actions {
    display: flex;
    gap: 10px;
}

.btn-summary-aux {
    flex: 1;
    padding: 10px 14px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #cbd5e1;
    font-size: 0.8rem;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.btn-summary-aux:hover {
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
}

/* Quote Submission Success Card */
.quote-success-section {
    padding: 70px 0 90px;
    background: #f8fafc;
}

.quote-success-card {
    max-width: 860px;
    margin: 0 auto;
    background: #ffffff;
    border-radius: 24px;
    border: 1px solid #e2e8f0;
    padding: 48px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.06);
}

.success-top-hero {
    text-align: center;
    margin-bottom: 40px;
}

.success-check-icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: #ecfdf5;
    color: #10b981;
    font-size: 2.2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 10px 25px rgba(16, 185, 129, 0.2);
}

.success-title {
    font-size: 2rem;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 10px 0;
}

.success-ref-pill {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #f1f5f9;
    border: 1px solid #cbd5e1;
    border-radius: 50px;
    padding: 8px 20px;
    font-size: 0.95rem;
    color: #0f172a;
    margin-bottom: 14px;
}

.success-ref-pill strong {
    color: #0284c7;
    font-family: monospace;
    font-size: 1.15rem;
}

.success-manifest-table {
    width: 100%;
    border-collapse: collapse;
    margin: 30px 0;
}

.success-manifest-table th {
    background: #f8fafc;
    padding: 12px 16px;
    text-align: left;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #64748b;
    border-bottom: 2px solid #e2e8f0;
}

.success-manifest-table td {
    padding: 14px 16px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 0.9rem;
    color: #1e293b;
}

.timeline-steps-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 36px 0;
}

.timeline-step-item {
    background: #f8fafc;
    border-radius: 12px;
    padding: 20px;
    border-left: 4px solid #00bcd4;
}

.timeline-step-item h4 {
    font-size: 0.95rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 6px 0;
}

.timeline-step-item p {
    font-size: 0.8rem;
    color: #64748b;
    margin: 0;
}

.success-action-btns {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-top: 36px;
}

/* Quote FAQ & Knowledge Section */
.quote-faq-section {
    padding: 70px 0;
    background: #ffffff;
    border-top: 1px solid #e2e8f0;
}

.quote-faq-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
}

.q-faq-item {
    background: #f8fafc;
    border-radius: 14px;
    padding: 24px;
    border: 1px solid #e2e8f0;
}

.q-faq-item h4 {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 8px 0;
}

.q-faq-item p {
    font-size: 0.88rem;
    color: #64748b;
    line-height: 1.6;
    margin: 0;
}

@media (max-width: 991px) {
    .quote-layout-grid {
        grid-template-columns: 1fr;
    }
    .sticky-quote-summary {
        position: static;
        margin-top: 24px;
    }
    .mode-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .field-row-2,
    .field-row-3 {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .delivery-type-grid {
        grid-template-columns: 1fr;
    }
    .quote-faq-grid {
        grid-template-columns: 1fr;
    }
    .timeline-steps-grid {
        grid-template-columns: 1fr;
    }
}

/* ── Media Upload Dropzone Styles ── */
.media-upload-dropzone {
    border: 2px dashed #cbd5e1;
    border-radius: 16px;
    padding: 28px 20px;
    text-align: center;
    background: #f8fafc;
    cursor: pointer;
    transition: all 0.25s ease;
    margin-top: 10px;
    position: relative;
}

.media-upload-dropzone:hover,
.media-upload-dropzone.dragover {
    border-color: #00bcd4;
    background: #f0fdfa;
}

.dropzone-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.dropzone-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #e0f2fe;
    color: #0284c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin-bottom: 6px;
    transition: transform 0.2s ease;
}

.media-upload-dropzone:hover .dropzone-icon {
    transform: scale(1.1);
    background: #090d16;
    color: #00e5ff;
}

.dropzone-title {
    font-size: 0.98rem;
    font-weight: 700;
    color: #0f172a;
}

.dropzone-sub {
    font-size: 0.78rem;
    color: #64748b;
    max-width: 460px;
}

.media-browse-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 8px;
    background: #090d16;
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 600;
    margin-top: 6px;
}

.media-browse-btn:hover {
    background: #00e5ff;
    color: #090d16;
}

.media-previews-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.media-preview-card {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.media-preview-thumb {
    width: 100%;
    height: 95px;
    object-fit: cover;
    background: #0f172a;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00e5ff;
    font-size: 1.8rem;
}

.media-card-caption {
    padding: 6px 8px;
    font-size: 0.72rem;
    color: #334155;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background: #f8fafc;
    border-top: 1px solid #f1f5f9;
}

.media-del-btn {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.75);
    color: #ffffff;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    transition: background 0.2s ease;
}

.media-del-btn:hover {
    background: #ef4444;
}

/* Shipper & Receiver Section Headers */
.party-subhead {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 24px 0 16px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #e2e8f0;
    font-size: 0.96rem;
    font-weight: 800;
    color: #1e293b;
}

.party-badge {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    padding: 3px 8px;
    border-radius: 4px;
}

.party-badge.shipper-badge {
    background: #e0f2fe;
    color: #0369a1;
}

.party-badge.receiver-badge {
    background: #fef3c7;
    color: #92400e;
}

.success-media-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 10px;
}

.success-media-item {
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #cbd5e1;
    width: 90px;
    height: 70px;
    background: #090d16;
    display: flex;
    align-items: center;
    justify-content: center;
}

.success-media-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.success-media-item video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.success-media-item a {
    color: #00e5ff;
    font-size: 1.4rem;
}

/* ==========================================================================
   VELORA LEGAL & POLICY PAGES (Terms, Privacy, Shipping Policy)
   ========================================================================== */
.legal-content-section {
    padding: 70px 0 100px;
    background: #fbfcfd;
}

.legal-layout-grid {
    display: grid;
    grid-template-columns: 290px 1fr;
    gap: 48px;
    align-items: flex-start;
}

.legal-sidebar-sticky {
    position: sticky;
    top: 100px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 24px 20px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
}

.legal-toc-title {
    font-size: 0.85rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #64748b;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.legal-toc-nav {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.legal-toc-link {
    font-size: 0.88rem;
    font-weight: 600;
    color: #334155;
    padding: 8px 12px;
    border-radius: 8px;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.legal-toc-link:hover,
.legal-toc-link.active {
    background: #090d16;
    color: #ffffff;
}

.legal-toc-link:hover i,
.legal-toc-link.active i {
    color: #00e5ff;
}

.legal-download-card {
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #f1f5f9;
}

.legal-download-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 10px 16px;
    border-radius: 8px;
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    font-size: 0.82rem;
    font-weight: 600;
    color: #0f172a;
    transition: all 0.2s ease;
}

.legal-download-btn:hover {
    background: #e2e8f0;
    color: #0284c7;
}

.legal-main-body {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 48px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.03);
}

.legal-meta-banner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    background: #f8fafc;
    border-radius: 12px;
    border-left: 4px solid #00bcd4;
    margin-bottom: 36px;
    font-size: 0.84rem;
    color: #475569;
}

.legal-meta-banner strong {
    color: #0f172a;
}

.legal-clause-block {
    margin-bottom: 40px;
    scroll-margin-top: 100px;
}

.legal-clause-block h2 {
    font-size: 1.45rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.legal-clause-block h3 {
    font-size: 1.12rem;
    font-weight: 700;
    color: #1e293b;
    margin: 22px 0 10px 0;
}

.legal-clause-block p {
    font-size: 0.94rem;
    color: #475569;
    line-height: 1.7;
    margin-bottom: 14px;
}

.legal-clause-block ul {
    list-style: disc;
    padding-left: 24px;
    margin-bottom: 18px;
    color: #475569;
    font-size: 0.92rem;
    line-height: 1.65;
}

.legal-clause-block ul li {
    margin-bottom: 8px;
}

.legal-highlight-box {
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 12px;
    padding: 20px;
    margin: 20px 0;
    font-size: 0.9rem;
    color: #0f766e;
    line-height: 1.6;
}

.legal-highlight-box strong {
    color: #115e59;
}

/* ==========================================================================
   VELORA COMPLIANCE & CERTIFICATIONS STYLES
   ========================================================================== */
.compliance-section {
    padding: 70px 0 100px;
    background: #fbfcfd;
}

.compliance-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
    margin-bottom: 50px;
}

.compliance-pillar-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 36px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
    scroll-margin-top: 100px;
}

.compliance-pillar-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
    border-color: #cbd5e1;
}

.pillar-header {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 22px;
}

.pillar-icon-badge {
    width: 60px;
    height: 60px;
    border-radius: 16px;
    background: #090d16;
    color: #00e5ff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}

.pillar-title-group h3 {
    font-size: 1.3rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 4px;
}

.pillar-reg-badge {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    background: #e0f2fe;
    color: #0284c7;
    padding: 3px 8px;
    border-radius: 6px;
    display: inline-block;
}

.compliance-bullets {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 20px 0;
}

.c-bullet-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 0.9rem;
    color: #334155;
    line-height: 1.5;
}

.c-bullet-item i {
    color: #10b981;
    margin-top: 3px;
    font-size: 0.95rem;
}

.compliance-stamp-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f8fafc;
    border-radius: 12px;
    padding: 14px 18px;
    border: 1px dashed #cbd5e1;
    margin-top: 24px;
}

.cert-meta-name {
    font-size: 0.8rem;
    color: #64748b;
}

.cert-meta-val {
    font-size: 0.88rem;
    font-weight: 700;
    color: #0f172a;
    font-family: monospace;
}

.compliance-table-section {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
}

/* ==========================================================================
   VELORA LIVE TELEMETRY TRACKING PORTAL STYLES
   ========================================================================== */
/* ==========================================================================
   VELORA LIVE TELEMETRY TRACKING PORTAL STYLES (Clean Light Site Design)
   ========================================================================== */
.tracking-search-hero {
    background: #fbfcfd;
    border-bottom: 1px solid #f0f2f5;
    padding: 55px 0 60px;
    color: var(--color-dark, #0f172a);
    position: relative;
}

.tracking-hero-content {
    max-width: 820px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
}

.tracking-hero-title {
    font-size: clamp(2.2rem, 3.8vw, 3.2rem);
    font-weight: 800;
    letter-spacing: -1px;
    color: var(--color-dark, #0f172a);
    line-height: 1.15;
    margin-bottom: 14px;
}

.tracking-hero-title span {
    color: var(--color-primary, #0284c7);
}

.tracking-hero-sub {
    font-size: 1.05rem;
    color: var(--color-gray-600, #475569);
    line-height: 1.6;
    margin-bottom: 30px;
}

.tracking-search-form {
    display: flex;
    background: #ffffff;
    border: 2px solid #e2e8f0;
    border-radius: 50px;
    padding: 6px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
    transition: all 0.25s ease;
}

.tracking-search-form:focus-within {
    border-color: #0284c7;
    box-shadow: 0 0 0 4px rgba(2, 132, 199, 0.15), 0 10px 30px rgba(15, 23, 42, 0.08);
}

.tracking-input-wrap {
    display: flex;
    align-items: center;
    flex-grow: 1;
    padding-left: 20px;
    gap: 14px;
}

.tracking-input-wrap i {
    color: #0284c7;
    font-size: 1.2rem;
}

.tracking-search-input {
    width: 100%;
    background: transparent;
    border: none;
    outline: none;
    color: #0f172a;
    font-size: 1.05rem;
    font-family: inherit;
    font-weight: 600;
}

.tracking-search-input::placeholder {
    color: #94a3b8;
    font-weight: 400;
}

.tracking-submit-btn {
    padding: 12px 30px;
    border-radius: 40px;
    background: #0f172a;
    color: #ffffff;
    border: none;
    font-weight: 700;
    font-size: 0.92rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s ease;
}

.tracking-submit-btn:hover {
    background: #0284c7;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(2, 132, 199, 0.3);
}

.tracking-demo-pills {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
    font-size: 0.82rem;
    color: #64748b;
}

.demo-track-link {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    color: #334155;
    padding: 5px 14px;
    border-radius: 20px;
    font-family: monospace;
    font-weight: 600;
    font-size: 0.8rem;
    transition: all 0.2s ease;
}

.demo-track-link:hover {
    background: #0f172a;
    color: #ffffff;
    border-color: #0f172a;
}

.demo-track-link.active-pill {
    background: #0f172a;
    color: #ffffff;
    border-color: #0f172a;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.2);
}

/* Tracking Result Container */
.tracking-results-section {
    padding: 50px 0 90px;
    background: #f8fafc;
}

.shipment-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
    margin-bottom: 30px;
}

.shipment-card-head {
    background: #ffffff;
    color: #0f172a;
    padding: 24px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    border-bottom: 1px solid #e2e8f0;
}

.shipment-head-id-group {
    display: flex;
    align-items: center;
    gap: 16px;
}

.shipment-carrier-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: #e0f2fe;
    border: 1px solid #bae6fd;
    color: #0284c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
}

.shipment-code-title {
    font-size: 1.45rem;
    font-weight: 800;
    letter-spacing: 0.5px;
    font-family: monospace;
    color: #0f172a;
}

.shipment-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    border-radius: 30px;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
}

.status-in-transit {
    background: #e0f2fe;
    color: #0284c7;
    border: 1px solid #bae6fd;
}

.status-delivered {
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #a7f3d0;
}

.status-customs {
    background: #fef3c7;
    color: #d97706;
    border: 1px solid #fde68a;
}

.shipment-card-body {
    padding: 36px;
}

/* Route Origin & Destination Strip */
.route-trip-strip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 30px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    margin-bottom: 36px;
    flex-wrap: wrap;
    gap: 20px;
}

.trip-endpoint {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.trip-point-tag {
    font-size: 0.75rem;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.trip-city {
    font-size: 1.25rem;
    font-weight: 800;
    color: #0f172a;
}

.trip-facility {
    font-size: 0.82rem;
    color: #64748b;
}

.trip-progress-visual {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    flex-grow: 1;
    max-width: 380px;
    padding: 0 20px;
}

.trip-est-badge {
    font-size: 0.78rem;
    font-weight: 700;
    color: #0284c7;
    background: #e0f2fe;
    padding: 4px 12px;
    border-radius: 20px;
}

.trip-track-bar {
    width: 100%;
    height: 6px;
    background: #e2e8f0;
    border-radius: 10px;
    position: relative;
    overflow: hidden;
}

.trip-fill-bar {
    height: 100%;
    background: linear-gradient(90deg, #0284c7, #00e5ff);
    border-radius: 10px;
}

/* Telemetry Sensors Grid */
.telemetry-sensors-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-bottom: 36px;
}

.telemetry-sensor-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    transition: all 0.2s ease;
}

.telemetry-sensor-card:hover {
    border-color: #00bcd4;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04);
}

.sensor-icon-wrap {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: #f1f5f9;
    color: #0f172a;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    flex-shrink: 0;
}

.sensor-data-col {
    display: flex;
    flex-direction: column;
}

.sensor-data-label {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #64748b;
}

.sensor-data-val {
    font-size: 1.1rem;
    font-weight: 800;
    color: #0f172a;
}

.sensor-status-ok {
    font-size: 0.7rem;
    font-weight: 600;
    color: #10b981;
}

/* Milestone Timeline Stepper */
.milestones-timeline-wrap {
    margin-top: 36px;
}

.milestones-title {
    font-size: 1.15rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.milestone-stepper {
    position: relative;
    padding-left: 32px;
}

.milestone-stepper::before {
    content: '';
    position: absolute;
    top: 14px;
    bottom: 14px;
    left: 11px;
    width: 2px;
    background: #e2e8f0;
}

.milestone-step-entry {
    position: relative;
    margin-bottom: 28px;
}

.milestone-step-entry:last-child {
    margin-bottom: 0;
}

.step-marker-dot {
    position: absolute;
    left: -32px;
    top: 2px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #ffffff;
    border: 3px solid #cbd5e1;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

.milestone-step-entry.step-completed .step-marker-dot {
    border-color: #00bcd4;
    background: #00bcd4;
}

.milestone-step-entry.step-active .step-marker-dot {
    border-color: #0284c7;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(2, 132, 199, 0.2);
}

.milestone-step-entry.step-active .step-marker-dot::after {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #0284c7;
}

.step-inner-content {
    background: #f8fafc;
    border: 1px solid #f1f5f9;
    border-radius: 12px;
    padding: 16px 20px;
    transition: all 0.2s ease;
}

.milestone-step-entry.step-active .step-inner-content {
    background: #ffffff;
    border-color: #cbd5e1;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
}

.step-header-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 6px;
}

.step-location-name {
    font-size: 0.95rem;
    font-weight: 700;
    color: #0f172a;
}

.step-timestamp {
    font-size: 0.78rem;
    color: #64748b;
    font-family: monospace;
}

.step-narrative {
    font-size: 0.85rem;
    color: #475569;
    line-height: 1.5;
}

/* Tracking Actions Strip */
.tracking-actions-strip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    padding-top: 24px;
    margin-top: 36px;
    border-top: 1px solid #f1f5f9;
}

@media (max-width: 991px) {
    .legal-layout-grid {
        grid-template-columns: 1fr;
    }
    .legal-sidebar-sticky {
        position: static;
        margin-bottom: 30px;
    }
    .compliance-grid {
        grid-template-columns: 1fr;
    }
    .telemetry-sensors-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .telemetry-sensors-grid {
        grid-template-columns: 1fr;
    }
    .route-trip-strip {
        flex-direction: column;
        align-items: flex-start;
    }
    .trip-progress-visual {
        max-width: 100%;
        padding: 16px 0;
    }
    .shipment-card-head {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ==========================================================================
   HEADER CURRENCY SELECTOR STYLES
   ========================================================================== */
.currency-selector-wrap {
    position: relative;
}

.currency-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 14px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-pill);
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--color-dark);
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: inherit;
}

.currency-pill:hover,
.currency-pill.active {
    background: #ffffff;
    border-color: #cbd5e1;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.currency-pill i.fa-globe {
    font-size: 0.88rem;
    color: #0284c7;
}

.currency-code-text {
    letter-spacing: 0.5px;
    font-size: 0.82rem;
}

.currency-symbol-tag {
    background: #e2e8f0;
    color: #0f172a;
    font-size: 0.72rem;
    font-weight: 800;
    padding: 1px 6px;
    border-radius: 4px;
    font-family: monospace;
}

.currency-chevron {
    font-size: 0.68rem;
    color: #94a3b8;
    transition: transform 0.25s ease;
}

.currency-pill.active .currency-chevron {
    transform: rotate(180deg);
    color: var(--color-dark);
}

.currency-dropdown-menu {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: 260px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.12);
    padding: 8px;
    z-index: 1050;
    display: none;
    animation: curDropFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.currency-dropdown-menu.show {
    display: block;
}

@keyframes curDropFadeIn {
    from {
        opacity: 0;
        transform: translateY(-8px) scale(0.97);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.currency-menu-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px 10px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #64748b;
}

.currency-badge-live {
    font-size: 0.65rem;
    font-weight: 700;
    background: #ecfdf5;
    color: #10b981;
    padding: 2px 6px;
    border-radius: 4px;
    text-transform: uppercase;
}

.currency-menu-list {
    max-height: 280px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-top: 6px;
}

.currency-item-btn {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    background: transparent;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    text-align: left;
    transition: all 0.15s ease;
    font-family: inherit;
}

.currency-item-btn:hover {
    background: #f8fafc;
}

.currency-item-btn.selected {
    background: #f0fdf4;
}

.c-flag {
    font-size: 1.25rem;
    line-height: 1;
}

.c-meta {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.c-code {
    font-size: 0.86rem;
    font-weight: 700;
    color: #0f172a;
}

.c-title {
    font-size: 0.72rem;
    color: #64748b;
}

.c-check {
    font-size: 0.8rem;
    color: #10b981;
    display: none;
}

.currency-item-btn.selected .c-check {
    display: block;
}

/* ==========================================================================
   GLOBAL SPOTLIGHT SEARCH MODAL STYLES
   ========================================================================== */
.search-modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(9, 13, 22, 0.75);
    backdrop-filter: blur(8px);
    z-index: 99999;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 40px 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}

.search-modal-backdrop.active {
    opacity: 1;
    visibility: visible;
}

.search-modal-dialog {
    width: 100%;
    max-width: 740px;
    background: #ffffff;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.25), 0 0 40px rgba(0, 229, 255, 0.1);
    overflow: hidden;
    transform: translateY(-20px) scale(0.98);
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
}

.search-modal-backdrop.active .search-modal-dialog {
    transform: translateY(0) scale(1);
}

.search-modal-header {
    display: flex;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid #f1f5f9;
    gap: 16px;
    background: #ffffff;
}

.search-bar-inner {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-grow: 1;
}

.search-bar-icon {
    font-size: 1.3rem;
    color: #0284c7;
}

.search-bar-input {
    width: 100%;
    border: none;
    outline: none;
    font-size: 1.15rem;
    font-family: inherit;
    font-weight: 500;
    color: #0f172a;
    background: transparent;
}

.search-bar-input::placeholder {
    color: #94a3b8;
}

.search-clear-btn {
    background: #f1f5f9;
    border: none;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    color: #64748b;
    cursor: pointer;
    display: none;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    transition: all 0.15s ease;
}

.search-clear-btn:hover {
    background: #e2e8f0;
    color: #0f172a;
}

.search-modal-close {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 4px;
    display: flex;
    align-items: center;
}

.kbd-badge {
    background: #f1f5f9;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    padding: 4px 8px;
    font-size: 0.72rem;
    font-weight: 700;
    color: #64748b;
    font-family: monospace;
}

.search-filter-pills {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 24px;
    background: #f8fafc;
    border-bottom: 1px solid #f1f5f9;
    overflow-x: auto;
}

.filter-pill {
    padding: 6px 14px;
    border-radius: 20px;
    border: 1px solid transparent;
    background: transparent;
    font-size: 0.78rem;
    font-weight: 600;
    color: #64748b;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
    font-family: inherit;
}

.filter-pill:hover {
    background: #e2e8f0;
    color: #0f172a;
}

.filter-pill.active {
    background: #090d16;
    color: #ffffff;
}

.search-suggestions-wrap {
    padding: 24px;
    background: #ffffff;
}

.suggestions-label {
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #94a3b8;
    margin-bottom: 12px;
}

.quick-tags-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.quick-search-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    font-size: 0.82rem;
    font-weight: 600;
    color: #334155;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: inherit;
}

.quick-search-tag:hover {
    background: #090d16;
    color: #ffffff;
    border-color: #090d16;
}

.quick-search-tag:hover i {
    color: #00e5ff;
}

.quick-search-tag i {
    color: #0284c7;
    font-size: 0.82rem;
}

.search-results-container {
    max-height: 380px;
    overflow-y: auto;
    padding: 12px 20px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.search-result-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 16px;
    border-radius: 14px;
    text-decoration: none;
    color: inherit;
    transition: all 0.15s ease;
    background: transparent;
    border: 1px solid transparent;
}

.search-result-item:hover,
.search-result-item.highlighted {
    background: #f8fafc;
    border-color: #e2e8f0;
}

.result-icon-box {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #f1f5f9;
    color: #0284c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.search-result-item:hover .result-icon-box {
    background: #090d16;
    color: #00e5ff;
}

.result-info {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.result-title-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

.result-title {
    font-size: 0.94rem;
    font-weight: 700;
    color: #0f172a;
}

.result-cat-badge {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 2px 6px;
    border-radius: 4px;
    background: #e0f2fe;
    color: #0284c7;
}

.result-desc {
    font-size: 0.78rem;
    color: #64748b;
    line-height: 1.4;
}

.result-arrow {
    color: #cbd5e1;
    font-size: 0.85rem;
    transition: transform 0.15s ease;
}

.search-result-item:hover .result-arrow {
    color: #0f172a;
    transform: translateX(3px);
}

/* Tracking Direct Hit Banner */
.search-tracking-hit-card {
    background: linear-gradient(135deg, #090d16 0%, #172134 100%);
    border: 1px solid rgba(0, 229, 255, 0.4);
    border-radius: 14px;
    padding: 16px 20px;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 10px;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
}

.search-tracking-hit-card:hover {
    border-color: #00e5ff;
    box-shadow: 0 12px 30px rgba(0, 229, 255, 0.2);
}

.track-hit-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.track-hit-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(0, 229, 255, 0.15);
    color: #00e5ff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
}

.track-hit-code {
    font-size: 1.15rem;
    font-weight: 800;
    font-family: monospace;
    color: #00e5ff;
}

.track-hit-sub {
    font-size: 0.75rem;
    color: #94a3b8;
}

.track-hit-btn {
    padding: 8px 16px;
    border-radius: 20px;
    background: #00e5ff;
    color: #090d16;
    font-weight: 700;
    font-size: 0.78rem;
    white-space: nowrap;
}

.search-empty-state {
    padding: 40px 20px;
    text-align: center;
    color: #64748b;
}

.search-empty-state i {
    font-size: 2.2rem;
    color: #cbd5e1;
    margin-bottom: 12px;
}

.search-empty-state p {
    font-size: 0.9rem;
    margin-bottom: 4px;
}

.search-modal-footer {
    padding: 12px 24px;
    background: #f8fafc;
    border-top: 1px solid #f1f5f9;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.75rem;
    color: #94a3b8;
}

.search-footer-hint {
    display: flex;
    gap: 14px;
}

.search-footer-hint kbd {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    padding: 1px 5px;
    font-size: 0.68rem;
    font-family: monospace;
    color: #475569;
}

/* ==========================================================================
   VISUAL LIVE SHIPMENT TRACKING & MAP STYLES
   ========================================================================== */
.map-visual-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.05);
    margin-bottom: 36px;
    position: relative;
}

.map-card-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 26px;
    background: #ffffff;
    color: #0f172a;
    border-bottom: 1px solid #e2e8f0;
    flex-wrap: wrap;
    gap: 16px;
}

.map-head-title-group {
    display: flex;
    align-items: center;
    gap: 12px;
}

.map-live-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #10b981;
    box-shadow: 0 0 10px rgba(16, 185, 129, 0.6);
    animation: liveDotBlink 1.5s infinite;
}

@keyframes liveDotBlink {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.85); }
}

.map-head-title {
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: -0.2px;
    color: #0f172a;
    display: flex;
    align-items: center;
    gap: 8px;
}

.map-toolbar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.map-tool-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 15px;
    border-radius: 20px;
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    color: #334155;
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.map-tool-btn:hover {
    background: #0f172a;
    color: #ffffff;
    border-color: #0f172a;
}

#shipmentMap {
    width: 100%;
    height: 480px;
    z-index: 10;
    background: #f1f5f9;
}

/* Custom Leaflet Marker Icons */
.custom-leaflet-marker {
    background: transparent;
    border: none;
}

.vehicle-marker-wrap {
    position: relative;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.vehicle-radar-halo {
    position: absolute;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(2, 132, 199, 0.2);
    border: 2px solid #0284c7;
    animation: radarWave 2s cubic-bezier(0.16, 1, 0.3, 1) infinite;
    pointer-events: none;
}

@keyframes radarWave {
    0% { transform: scale(0.5); opacity: 1; }
    100% { transform: scale(1.6); opacity: 0; }
}

.vehicle-icon-circle {
    position: relative;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #0f172a;
    color: #38bdf8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.3);
    border: 2px solid #ffffff;
    z-index: 2;
}

.origin-marker-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #10b981;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.4);
    border: 2px solid #ffffff;
}

.dest-marker-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #ef4444;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    box-shadow: 0 4px 14px rgba(239, 68, 68, 0.4);
    border: 2px solid #ffffff;
}

.waypoint-marker-dot {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #0284c7;
    border: 2px solid #ffffff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
}

/* Map Status Strip */
.map-status-strip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 26px;
    background: #f8fafc;
    border-top: 1px solid #e2e8f0;
    flex-wrap: wrap;
    gap: 16px;
    font-size: 0.85rem;
}

.map-status-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.map-status-item i {
    color: #0284c7;
    font-size: 1.1rem;
}

.map-status-item strong {
    color: #0f172a;
}

.map-status-item span {
    color: #64748b;
}

/* 8-Stage Milestone Timeline Stepper */
.stepper-8-container {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 36px 30px;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.04);
    margin-bottom: 36px;
}

.stepper-8-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    flex-wrap: wrap;
    gap: 14px;
}

.stepper-title {
    font-size: 1.2rem;
    font-weight: 800;
    color: #0f172a;
    display: flex;
    align-items: center;
    gap: 10px;
}

.stepper-progress-pill {
    background: #e0f2fe;
    color: #0284c7;
    font-weight: 800;
    font-size: 0.82rem;
    padding: 4px 14px;
    border-radius: 20px;
}

.stepper-8-track {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 10px;
    position: relative;
}

.stepper-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    z-index: 2;
}

.stepper-step::before {
    content: '';
    position: absolute;
    top: 18px;
    left: -50%;
    right: 50%;
    height: 3px;
    background: #e2e8f0;
    z-index: -1;
}

.stepper-step:first-child::before {
    display: none;
}

.stepper-step.completed::before,
.stepper-step.active::before {
    background: #0284c7;
}

.step-icon-node {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #f8fafc;
    border: 2px solid #cbd5e1;
    color: #94a3b8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.88rem;
    margin-bottom: 10px;
    transition: all 0.25s ease;
}

.stepper-step.completed .step-icon-node {
    background: #10b981;
    border-color: #10b981;
    color: #ffffff;
}

.stepper-step.active .step-icon-node {
    background: #0284c7;
    border-color: #0284c7;
    color: #ffffff;
    box-shadow: 0 0 0 5px rgba(2, 132, 199, 0.2);
    animation: activePulse 2s infinite;
}

@keyframes activePulse {
    0%, 100% { box-shadow: 0 0 0 4px rgba(2, 132, 199, 0.2); }
    50% { box-shadow: 0 0 0 8px rgba(0, 229, 255, 0.35); }
}

.step-node-label {
    font-size: 0.74rem;
    font-weight: 700;
    color: #64748b;
    line-height: 1.3;
}

.stepper-step.completed .step-node-label,
.stepper-step.active .step-node-label {
    color: #0f172a;
    font-weight: 800;
}

/* History Log & Dossier Section */
.history-dossier-grid {
    display: grid;
    grid-template-columns: 1.15fr 1fr;
    gap: 32px;
    margin-bottom: 36px;
}

.history-card, .dossier-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 30px;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.04);
}

.card-heading-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 22px;
    padding-bottom: 12px;
    border-bottom: 1px dashed #e2e8f0;
}

.card-heading-title {
    font-size: 1.1rem;
    font-weight: 800;
    color: #0f172a;
    display: flex;
    align-items: center;
    gap: 8px;
}

.history-timeline-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-height: 460px;
    overflow-y: auto;
    padding-right: 6px;
}

.history-timeline-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 16px;
    background: #f8fafc;
    border: 1px solid #eef2f6;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.history-timeline-item:hover {
    background: #ffffff;
    border-color: #0284c7;
    box-shadow: 0 4px 16px rgba(2, 132, 199, 0.08);
    transform: translateX(3px);
}

.history-point-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #e0f2fe;
    border: 1px solid #bae6fd;
    color: #0284c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.95rem;
    flex-shrink: 0;
}

.history-item-body {
    flex-grow: 1;
}

.history-item-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 4px;
}

.history-loc-name {
    font-size: 0.88rem;
    font-weight: 700;
    color: #0f172a;
}

.history-timestamp {
    font-size: 0.74rem;
    color: #64748b;
    font-family: monospace;
}

.history-note-text {
    font-size: 0.8rem;
    color: #475569;
    line-height: 1.45;
    margin-bottom: 6px;
}

.history-coord-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.68rem;
    font-family: monospace;
    background: #e2e8f0;
    color: #0f172a;
    padding: 2px 8px;
    border-radius: 4px;
}

/* Dossier Parties Cards */
.parties-dossier-grid {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.party-box {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 18px 20px;
}

.party-box-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.party-tag-pill {
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 4px;
}

.tag-shipper { background: #e0f2fe; color: #0284c7; }
.tag-receiver { background: #fef3c7; color: #b45309; }

.party-name {
    font-size: 1rem;
    font-weight: 800;
    color: #0f172a;
}

.party-company {
    font-size: 0.82rem;
    color: #64748b;
    margin-bottom: 6px;
}

.party-address {
    font-size: 0.82rem;
    color: #475569;
    line-height: 1.45;
    margin-bottom: 8px;
}

.party-contact-row {
    display: flex;
    gap: 16px;
    font-size: 0.78rem;
    color: #64748b;
}

/* Printable Waybill Modal */
.waybill-modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(9, 13, 22, 0.8);
    backdrop-filter: blur(6px);
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.waybill-modal-backdrop.active {
    display: flex;
}

.waybill-modal-box {
    max-width: 820px;
    width: 100%;
    max-height: 90vh;
    background: #ffffff;
    border-radius: 20px;
    overflow-y: auto;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.3);
    padding: 36px;
}

@media (max-width: 991px) {
    .stepper-8-track {
        grid-template-columns: repeat(4, 1fr);
        gap: 20px 10px;
    }
    .history-dossier-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .stepper-8-track {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ==========================================================================
   OFFICIAL FREIGHT ESTIMATE PRINTABLE VOUCHER & PRINT MEDIA STYLES
   ========================================================================== */
.printable-estimate-voucher {
    display: none;
    background: #ffffff;
    color: #0f172a;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    padding: 30px;
}

.voucher-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 2px solid #0f172a;
    padding-bottom: 18px;
    margin-bottom: 20px;
}

.voucher-brand img {
    height: 40px;
    margin-bottom: 4px;
}

.voucher-brand-sub {
    font-size: 0.72rem;
    font-weight: 800;
    color: #0284c7;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.voucher-doc-meta {
    text-align: right;
}

.voucher-doc-meta .doc-badge {
    display: inline-block;
    background: #0f172a;
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 1px;
    padding: 4px 12px;
    border-radius: 4px;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.voucher-meta-row {
    font-size: 0.8rem;
    color: #475569;
    line-height: 1.4;
}

.voucher-meta-row strong {
    color: #0f172a;
}

.voucher-route-strip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 16px 20px;
    margin-bottom: 20px;
}

.v-route-cell {
    flex: 1;
}

.v-route-cell .v-label {
    display: block;
    font-size: 0.68rem;
    font-weight: 800;
    color: #64748b;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.v-route-cell .v-val {
    display: block;
    font-size: 1.05rem;
    font-weight: 800;
    color: #0f172a;
}

.v-route-cell .v-sub {
    font-size: 0.76rem;
    color: #64748b;
}

.v-route-arrow {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 20px;
}

.v-mode-badge {
    background: #e0f2fe;
    color: #0369a1;
    font-size: 0.75rem;
    font-weight: 800;
    padding: 3px 10px;
    border-radius: 20px;
    margin-bottom: 4px;
}

.v-arrow-line {
    font-size: 1.3rem;
    color: #94a3b8;
    line-height: 1;
}

.v-sla-badge {
    font-size: 0.72rem;
    color: #059669;
    font-weight: 700;
}

.voucher-parties-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 20px;
}

.v-party-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 14px 16px;
}

.v-party-role {
    display: block;
    font-size: 0.68rem;
    font-weight: 800;
    color: #0284c7;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

.v-party-name {
    display: block;
    font-size: 0.95rem;
    color: #0f172a;
    margin-bottom: 2px;
}

.v-party-line {
    font-size: 0.78rem;
    color: #64748b;
    line-height: 1.35;
}

.voucher-specs-table, .voucher-cost-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
    font-size: 0.82rem;
}

.voucher-specs-table th, .voucher-cost-table th {
    background: #f1f5f9;
    color: #0f172a;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 0.72rem;
    letter-spacing: 0.5px;
    padding: 8px 12px;
    border: 1px solid #e2e8f0;
    text-align: left;
}

.voucher-specs-table td, .voucher-cost-table td {
    padding: 9px 12px;
    border: 1px solid #e2e8f0;
    color: #334155;
}

.voucher-cost-section {
    margin-bottom: 20px;
}

.voucher-cost-title {
    font-size: 0.95rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 10px;
}

.voucher-total-row {
    background: #f8fafc;
    border-top: 2px solid #0f172a !important;
}

.voucher-total-row td {
    padding: 14px 12px !important;
}

.voucher-total-row .v-total-price {
    font-size: 1.3rem;
    font-weight: 900;
    color: #059669;
    font-family: monospace;
}

.voucher-footer {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 20px;
    border-top: 1px dashed #cbd5e1;
    padding-top: 16px;
    margin-top: 10px;
}

.voucher-legal-text {
    font-size: 0.68rem;
    color: #64748b;
    line-height: 1.5;
}

.voucher-auth-block {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    text-align: right;
}

.voucher-stamp {
    border: 2px solid #0284c7;
    border-radius: 6px;
    padding: 6px 12px;
    text-align: center;
    margin-top: 8px;
    display: inline-block;
}

/* ── STRICT PRINT ISOLATION RULES ── */
@media print {
    /* Reset entire page */
    html, body {
        background: #ffffff !important;
        color: #000000 !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 10pt !important;
        width: 100% !important;
    }

    /* Hide entire website navigation, headers, footers, search, forms, widgets */
    header, footer, nav, aside,
    .site-header, .site-footer, .velora-footer-dark,
    .page-banner, .quote-faq-section, .trusted-brands-strip,
    .chat-widget-launcher, #veloraChatLauncher, #veloraChatWindow,
    .search-modal-backdrop, #searchModal, .quote-system-section,
    .quote-form-left-col, .sticky-quote-summary, .summary-aux-actions,
    .summary-submit-btn, .success-action-btns, .timeline-steps-grid,
    .btn-copy-ref, .floating-chat-launcher, .quote-success-section .success-top-hero,
    .breadcrumb, .alert {
        display: none !important;
    }

    /* If printing from the live estimate form */
    body.printing-estimate-active #printableEstimateVoucher {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        box-shadow: none !important;
    }

    /* If on success screen or printing manifest */
    body.printing-manifest-active #printableQuoteManifest,
    .quote-success-section #printableQuoteManifest {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        box-shadow: none !important;
    }

    /* Clean up manifest card for printing */
    .quote-success-card {
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        background: #ffffff !important;
    }

    @page {
        margin: 1.2cm;
        size: auto;
    }
}

/* ==========================================================================
   VELORA SHIPPING — ULTRA-RESPONSIVE MOBILE BREAKPOINTS (550px DOWN TO 330px)
   Engineered for seamless fidelity on all smaller screens (550px - 330px)
   ========================================================================== */

/* ── TIER 1: MASTER SMALL-SCREEN MOBILE BREAKPOINT (max-width: 550px) ── */
@media screen and (max-width: 550px) {
    /* Global Viewport & Container Reset */
    html, body {
        max-width: 100vw !important;
        overflow-x: hidden !important;
        width: 100% !important;
        -webkit-text-size-adjust: 100%;
    }

    .site-container {
        padding: 0 16px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Universal Overflow Safeguards */
    img, video, canvas, svg {
        max-width: 100% !important;
        height: auto;
    }

    h1, h2, h3, h4, h5, h6, p, span, a, label, strong {
        overflow-wrap: break-word !important;
        word-wrap: break-word !important;
    }

    /* Full-width Stacked Button Groups */
    .hero-buttons,
    .ready-ship-actions,
    .banner-actions,
    .summary-aux-actions,
    .success-action-btns,
    .err-actions {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 8px !important;
    }

    .hero-buttons .btn,
    .ready-ship-actions .btn,
    .banner-actions .btn,
    .btn-aux-action,
    .success-action-btns .btn,
    .err-actions .btn {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
    }

    /* ── Header & Navigation Bar (550px) ── */
    .site-header {
        padding: 8px 0 !important;
    }

    .header-container {
        padding: 0 8px !important;
        gap: 6px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
    }

    .brand-logo-img {
        height: 35px !important;
        max-width: 135px !important;
    }

    .header-actions {
        gap: 5px !important;
        display: flex !important;
        align-items: center !important;
        flex-shrink: 0 !important;
    }

    .header-actions .btn-pill-dark {
        display: none !important;
    }

    .icon-btn {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
        font-size: 0.82rem !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 50% !important;
    }

    .currency-selector-wrap {
        position: relative !important;
    }

    .currency-pill {
        padding: 4px 8px !important;
        font-size: 0.74rem !important;
        gap: 4px !important;
        border-radius: 16px !important;
    }

    .currency-code-text {
        display: none !important;
    }

    .currency-dropdown-menu {
        position: fixed !important;
        top: 54px !important;
        right: 8px !important;
        left: auto !important;
        width: min(290px, calc(100vw - 16px)) !important;
        max-height: 70vh !important;
        overflow-y: auto !important;
        border-radius: 14px !important;
        box-shadow: 0 12px 36px rgba(0,0,0,0.2) !important;
        z-index: 100002 !important;
    }

    .header-actions a[href*="/admin/"] {
        padding: 5px 8px !important;
        font-size: 0.72rem !important;
        border-radius: 14px !important;
    }

    .mobile-toggle {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        padding: 4px !important;
        gap: 4px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
    }

    .main-nav {
        position: fixed !important;
        top: 54px !important;
        left: 0 !important;
        right: 0 !important;
        width: 100vw !important;
        max-height: calc(100dvh - 54px) !important;
        overflow-y: auto !important;
        background: #ffffff !important;
        padding: 16px 14px 28px !important;
        border-bottom: 1px solid #e2e8f0 !important;
        box-shadow: 0 12px 30px rgba(0,0,0,0.12) !important;
        z-index: 99999 !important;
    }

    .main-nav .nav-links {
        flex-direction: column !important;
        gap: 0 !important;
        align-items: stretch !important;
    }

    .main-nav .nav-link {
        font-size: 0.95rem !important;
        padding: 12px 6px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        display: flex !important;
        justify-content: space-between !important;
    }

    /* ── Spotlight Search Modal ── */
    .search-modal-backdrop {
        padding: 8px !important;
        z-index: 100000 !important;
    }

    .search-modal-dialog {
        width: calc(100vw - 16px) !important;
        max-width: 100% !important;
        margin: 8px auto !important;
        padding: 14px 12px !important;
        border-radius: 14px !important;
        max-height: calc(100dvh - 16px) !important;
    }

    .search-bar-inner {
        padding: 8px 10px !important;
        gap: 8px !important;
    }

    .search-bar-input {
        font-size: 0.84rem !important;
    }

    .search-filter-pills {
        display: flex !important;
        overflow-x: auto !important;
        flex-wrap: nowrap !important;
        gap: 5px !important;
        padding-bottom: 6px !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }

    .filter-pill {
        white-space: nowrap !important;
        flex-shrink: 0 !important;
        font-size: 0.72rem !important;
        padding: 4px 9px !important;
    }

    .quick-tags-cloud {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
    }

    .quick-search-tag {
        font-size: 0.72rem !important;
        padding: 5px 9px !important;
    }

    .search-footer-hint {
        display: none !important;
    }

    .search-footer-brand {
        width: 100% !important;
        text-align: center !important;
        font-size: 0.75rem !important;
    }

    /* ── Floating AI & Live Human Chat Widget ── */
    .velora-floating-chat {
        bottom: 12px !important;
        right: 12px !important;
        z-index: 99999 !important;
    }

    .chat-launcher-btn {
        width: 48px !important;
        height: 48px !important;
        font-size: 1.25rem !important;
    }

    .launcher-badge {
        width: 18px !important;
        height: 18px !important;
        font-size: 0.65rem !important;
        top: -2px !important;
        right: -2px !important;
    }

    .chat-window-card {
        position: fixed !important;
        inset: 6px !important;
        bottom: 64px !important;
        width: auto !important;
        height: auto !important;
        max-height: calc(100dvh - 72px) !important;
        right: 6px !important;
        left: 6px !important;
        border-radius: 14px !important;
        box-shadow: 0 14px 40px rgba(0,0,0,0.5) !important;
        z-index: 100000 !important;
    }

    .chat-window-header {
        padding: 9px 12px !important;
    }

    .brand-avatar {
        width: 32px !important;
        height: 32px !important;
        font-size: 0.9rem !important;
    }

    .chat-chips-scroll {
        gap: 5px !important;
        padding: 6px 8px !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .suggestion-chip {
        font-size: 0.7rem !important;
        padding: 4px 8px !important;
        white-space: nowrap !important;
    }

    .chat-input-bar {
        padding: 6px 8px !important;
        gap: 6px !important;
    }

    .btn-chat-send {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        font-size: 0.82rem !important;
    }

    /* ── Homepage Sections (550px) ── */
    .hero-section {
        padding: 24px 0 32px !important;
    }

    .hero-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
    }

    .hero-eyebrow {
        font-size: 0.68rem !important;
        letter-spacing: 1.5px !important;
        margin-bottom: 8px !important;
    }

    .hero-heading {
        font-size: 2.0rem !important;
        line-height: 1.18 !important;
        letter-spacing: -0.5px !important;
        margin-bottom: 12px !important;
    }

    .hero-subtext {
        font-size: 0.85rem !important;
        line-height: 1.45 !important;
        margin-bottom: 18px !important;
    }

    .hero-buttons {
        gap: 8px !important;
    }

    .hero-buttons .btn {
        padding: 11px 16px !important;
        font-size: 0.85rem !important;
    }

    .hero-trust {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 8px !important;
        margin-top: 16px !important;
    }

    .trust-avatars .avatar-img {
        width: 28px !important;
        height: 28px !important;
    }

    .trust-text {
        font-size: 0.74rem !important;
    }

    .hero-visual {
        height: 220px !important;
        border-radius: 14px !important;
        width: 100% !important;
    }

    .hero-floating-info {
        left: 8px !important;
        right: 8px !important;
        bottom: 8px !important;
        padding: 8px 12px !important;
        border-radius: 10px !important;
        gap: 8px !important;
    }

    .hero-floating-info .info-text strong {
        font-size: 0.78rem !important;
    }

    .hero-floating-info .info-text span {
        font-size: 0.68rem !important;
    }

    /* Trusted Brands Strip */
    .trusted-brands-section {
        padding: 28px 0 20px !important;
    }

    .trusted-brands-title {
        font-size: 1.05rem !important;
        margin-bottom: 16px !important;
        text-align: center !important;
    }

    .trusted-brands-row {
        gap: 12px 14px !important;
        justify-content: center !important;
    }

    .brand-logo-item {
        padding: 4px 8px !important;
    }

    .brand-logo-svg {
        max-height: 26px !important;
        max-width: 85px !important;
    }

    /* Services Grid */
    .services-section {
        padding: 28px 0 36px !important;
    }

    .services-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .service-box {
        border-radius: 14px !important;
    }

    .service-box-image {
        height: 180px !important;
    }

    .service-box-body {
        padding: 14px 12px !important;
    }

    .service-name {
        font-size: 1.02rem !important;
    }

    .service-caption {
        font-size: 0.78rem !important;
    }

    /* Why Section */
    .why-section {
        padding: 30px 0 38px !important;
    }

    .why-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 22px !important;
    }

    .why-media {
        height: 210px !important;
        border-radius: 12px !important;
    }

    .section-heading,
    .network-title,
    .tracking-live-heading,
    .ready-ship-heading {
        font-size: 1.6rem !important;
        line-height: 1.22 !important;
    }

    .section-lead {
        font-size: 0.82rem !important;
        line-height: 1.48 !important;
        margin-bottom: 18px !important;
    }

    .features-2x2 {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .feature-card {
        display: flex !important;
        gap: 10px !important;
        align-items: flex-start !important;
    }

    .feature-icon-badge {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        font-size: 0.88rem !important;
        border-radius: 10px !important;
    }

    .feature-text h4 {
        font-size: 0.88rem !important;
        margin-bottom: 2px !important;
    }

    .feature-text p {
        font-size: 0.74rem !important;
    }

    /* Network Section */
    .network-section {
        padding: 30px 0 38px !important;
    }

    .network-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 22px !important;
    }

    .network-description {
        font-size: 0.82rem !important;
        line-height: 1.48 !important;
        margin-bottom: 16px !important;
    }

    .regions-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }

    .region-pill-box {
        padding: 8px 12px !important;
        font-size: 0.78rem !important;
    }

    .network-visual-card {
        height: 210px !important;
        border-radius: 12px !important;
    }

    .current-location-chip {
        bottom: 8px !important;
        right: 8px !important;
        padding: 6px 10px !important;
        gap: 8px !important;
    }

    /* Tracking Live (Homepage) */
    .tracking-live-section {
        padding: 32px 0 40px !important;
    }

    .tracking-live-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
    }

    .tracking-live-desc {
        font-size: 0.82rem !important;
        line-height: 1.48 !important;
        margin-bottom: 16px !important;
    }

    .tracking-search-box {
        display: flex !important;
        flex-direction: column !important;
        background: transparent !important;
        box-shadow: none !important;
        padding: 0 !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .tracking-search-box input {
        width: 100% !important;
        height: 46px !important;
        background: #ffffff !important;
        border-radius: 23px !important;
        padding: 0 16px !important;
        font-size: 0.84rem !important;
    }

    .tracking-search-box button {
        width: 100% !important;
        height: 44px !important;
        border-radius: 23px !important;
        background: #00e5ff !important;
        color: #090d16 !important;
        font-weight: 800 !important;
        justify-content: center !important;
        font-size: 0.88rem !important;
    }

    .tracking-telemetry-card {
        display: flex !important;
        flex-direction: column !important;
        padding: 14px 12px !important;
        border-radius: 14px !important;
        gap: 14px !important;
    }

    .tracking-highway-media {
        height: 140px !important;
        border-radius: 10px !important;
    }

    /* Stats Section */
    .stats-counter-section {
        padding: 26px 0 !important;
    }

    .stats-counter-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    .stat-box {
        padding: 14px 10px !important;
        border-radius: 10px !important;
    }

    .stat-digit {
        font-size: 1.85rem !important;
    }

    .stat-unit {
        font-size: 1.35rem !important;
    }

    .stat-title {
        font-size: 0.75rem !important;
    }

    /* CTA Section */
    .ready-ship-section {
        padding: 30px 0 40px !important;
    }

    .ready-ship-card {
        padding: 22px 14px !important;
        border-radius: 16px !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    .ready-ship-desc {
        font-size: 0.82rem !important;
        line-height: 1.48 !important;
        margin-bottom: 16px !important;
    }

    /* Page Banners (Inner Pages) */
    .page-banner {
        padding: 26px 0 !important;
    }

    .banner-inner {
        width: 100% !important;
    }

    .banner-title {
        font-size: 1.65rem !important;
        line-height: 1.22 !important;
    }

    .banner-subtext {
        font-size: 0.82rem !important;
        line-height: 1.48 !important;
        margin-bottom: 16px !important;
    }

    /* ── Quote System Page (quote.php) ── */
    .quote-system-section {
        padding: 24px 0 40px !important;
    }

    .quote-layout-grid {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .quote-step-box {
        padding: 18px 14px !important;
        border-radius: 14px !important;
        margin-bottom: 16px !important;
    }

    .step-head {
        gap: 10px !important;
        margin-bottom: 14px !important;
        padding-bottom: 10px !important;
    }

    .step-badge {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        font-size: 0.8rem !important;
    }

    .step-info h2, .step-info h3 {
        font-size: 0.96rem !important;
    }

    .step-info p {
        font-size: 0.72rem !important;
    }

    .field-row-2,
    .field-row-3 {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .quote-form-group label {
        font-size: 0.78rem !important;
        margin-bottom: 4px !important;
    }

    .quote-form-group input,
    .quote-form-group select,
    .quote-form-group textarea {
        font-size: 0.84rem !important;
        padding: 9px 12px !important;
        border-radius: 10px !important;
    }

    .mode-cards-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    .mode-card {
        padding: 10px 12px !important;
        border-radius: 10px !important;
        gap: 8px !important;
    }

    .mode-icon {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        font-size: 1rem !important;
    }

    .mode-title {
        font-size: 0.86rem !important;
    }

    .mode-desc {
        font-size: 0.7rem !important;
    }

    .cargo-dims-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }

    .delivery-type-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .service-tier-cards {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .service-tier-card {
        padding: 12px 10px !important;
        border-radius: 10px !important;
    }

    .media-upload-dropzone {
        padding: 18px 12px !important;
        border-radius: 12px !important;
    }

    .sticky-quote-summary {
        position: static !important;
        margin-top: 18px !important;
        padding: 16px 12px !important;
        border-radius: 14px !important;
    }

    .summary-heading {
        font-size: 1.1rem !important;
    }

    .summary-total-amount {
        font-size: 1.55rem !important;
    }

    .summary-submit-btn {
        width: 100% !important;
        font-size: 0.88rem !important;
        padding: 12px 16px !important;
        border-radius: 24px !important;
    }

    .btn-aux-action {
        padding: 9px 12px !important;
        font-size: 0.78rem !important;
    }

    .quote-success-card {
        padding: 18px 12px !important;
        border-radius: 14px !important;
    }

    .success-title {
        font-size: 1.4rem !important;
    }

    .success-ref-pill {
        font-size: 0.8rem !important;
        padding: 8px 10px !important;
        flex-wrap: wrap !important;
    }

    .quote-success-card table {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        font-size: 0.74rem !important;
    }

    .timeline-steps-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    /* ── Inner Pages: Contact, Solutions, Services, About, Compliance ── */
    .contact-cards-grid,
    .offices-grid,
    .values-grid,
    .value-cards-grid,
    .team-grid,
    .workflow-steps-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .contact-method-card,
    .contact-card,
    .office-box {
        padding: 16px 12px !important;
        border-radius: 12px !important;
    }

    .contact-split-grid {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }

    .contact-form-wrapper {
        padding: 18px 14px !important;
        border-radius: 14px !important;
    }

    .input-row {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .solutions-stats-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .matcher-card-wrapper {
        padding: 16px 12px !important;
        border-radius: 14px !important;
    }

    .matcher-tabs {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
    }

    .matcher-tab-btn {
        padding: 7px 10px !important;
        font-size: 0.74rem !important;
        flex: 1 1 auto !important;
        text-align: center !important;
    }

    .blueprint-specs-grid,
    .industry-cards-grid,
    .capabilities-grid,
    .case-studies-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .calculator-card {
        padding: 18px 12px !important;
        border-radius: 14px !important;
    }

    .calculator-grid-form {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .service-detail-row,
    .service-detail-row.reverse,
    .about-story-layout,
    .hubs-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
        padding: 20px 0 !important;
    }

    .service-detail-media,
    .about-story-media,
    .hubs-visual {
        height: 200px !important;
        border-radius: 12px !important;
        width: 100% !important;
    }

    .team-card {
        padding: 14px 10px !important;
        border-radius: 12px !important;
    }

    .team-avatar-img {
        width: 64px !important;
        height: 64px !important;
    }

    .compliance-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .compliance-pillar-card {
        padding: 18px 12px !important;
        border-radius: 14px !important;
    }

    .compliance-stamp-box {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 4px !important;
    }

    .legal-layout-grid {
        grid-template-columns: 1fr !important;
    }

    .legal-sidebar-sticky {
        position: static !important;
        margin-bottom: 24px !important;
    }

    /* ── Footer ── */
    .site-footer,
    .velora-footer-dark {
        padding: 32px 0 20px !important;
    }

    .footer-columns {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }

    .footer-brand-logo img {
        max-width: 120px !important;
        height: auto !important;
    }

    .footer-desc,
    .footer-tagline {
        font-size: 0.8rem !important;
        line-height: 1.45 !important;
    }

    .footer-info-item {
        font-size: 0.76rem !important;
        word-break: break-word !important;
        gap: 8px !important;
    }

    .newsletter-pill-form {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        width: 100% !important;
        background: transparent !important;
        border-radius: 0 !important;
    }

    .newsletter-pill-form input {
        width: 100% !important;
        height: 42px !important;
        border-radius: 21px !important;
        font-size: 0.82rem !important;
        padding: 0 16px !important;
        background: rgba(255,255,255,0.08) !important;
    }

    .newsletter-pill-form button {
        width: 100% !important;
        height: 40px !important;
        border-radius: 21px !important;
        font-size: 0.85rem !important;
        justify-content: center !important;
        background: #00e5ff !important;
        color: #090d16 !important;
        font-weight: 800 !important;
    }

    .footer-bottom-flex {
        display: flex !important;
        flex-direction: column !important;
        text-align: center !important;
        gap: 10px !important;
        align-items: center !important;
    }

    .footer-credit-group {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        align-items: center !important;
    }
}

/* ── TIER 2: STANDARD SMARTPHONE BREAKPOINT (max-width: 480px) ── */
@media screen and (max-width: 480px) {
    .site-container {
        padding: 0 14px !important;
    }

    .hero-heading {
        font-size: 1.85rem !important;
    }

    .section-heading,
    .network-title,
    .tracking-live-heading,
    .banner-title {
        font-size: 1.5rem !important;
    }

    .brand-logo-img {
        height: 33px !important;
        max-width: 125px !important;
    }

    .regions-grid {
        grid-template-columns: 1fr !important;
    }

    .mode-cards-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ── TIER 3: COMPACT SMARTPHONES (max-width: 380px) ── */
@media screen and (max-width: 380px) {
    .site-container {
        padding: 0 12px !important;
    }

    .hero-heading {
        font-size: 1.65rem !important;
        letter-spacing: -0.4px !important;
    }

    .section-heading,
    .network-title,
    .tracking-live-heading,
    .banner-title {
        font-size: 1.38rem !important;
    }

    .brand-logo-img {
        height: 30px !important;
        max-width: 110px !important;
    }

    .stats-counter-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .cargo-dims-grid {
        grid-template-columns: 1fr !important;
    }

    .currency-pill {
        padding: 3px 6px !important;
        font-size: 0.72rem !important;
    }

    .icon-btn {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        font-size: 0.78rem !important;
    }
}

/* ── TIER 4: ULTRA-COMPACT MOBILE BREAKPOINT (max-width: 330px) ── */
@media screen and (max-width: 330px) {
    /* Global Reset & Layout Constraints */
    html, body {
        max-width: 100vw !important;
        overflow-x: hidden !important;
        width: 100% !important;
        font-size: 14px !important;
    }

    .site-container {
        padding: 0 8px !important;
    }

    /* Header & Navigation for 330px Viewport */
    .site-header {
        padding: 6px 0 !important;
    }

    .header-container {
        padding: 0 4px !important;
        gap: 3px !important;
    }

    .brand-logo-img {
        height: 26px !important;
        max-width: 95px !important;
    }

    .header-actions {
        gap: 3px !important;
    }

    .icon-btn {
        width: 28px !important;
        height: 28px !important;
        min-width: 28px !important;
        padding: 0 !important;
        font-size: 0.72rem !important;
    }

    .currency-pill {
        padding: 2px 4px !important;
        font-size: 0.68rem !important;
        gap: 2px !important;
    }

    .currency-code-text {
        display: none !important;
    }

    .currency-symbol-tag {
        font-size: 0.72rem;
        font-weight: 800;
    }

    .currency-chevron {
        font-size: 0.55rem;
    }

    .mobile-toggle {
        width: 28px;
        height: 28px;
        padding: 3px;
        gap: 3px;
    }

    .mobile-toggle span {
        height: 2px;
    }

    .main-nav {
        top: 50px !important;
        padding: 14px 10px !important;
    }

    .main-nav .nav-links {
        gap: 12px !important;
    }

    .nav-link {
        font-size: 0.88rem !important;
        padding: 6px 0;
    }

    /* Search Modal for 330px */
    .search-modal-dialog {
        width: calc(100vw - 12px) !important;
        margin: 10px auto !important;
        padding: 12px 10px !important;
        border-radius: 14px !important;
    }

    .search-bar-inner {
        padding: 6px 10px !important;
        gap: 6px;
    }

    .search-bar-input {
        font-size: 0.8rem !important;
    }

    .search-filter-pills {
        gap: 4px;
        padding-bottom: 4px;
    }

    .filter-pill {
        padding: 3px 8px !important;
        font-size: 0.68rem !important;
    }

    /* Hero Section */
    .hero-section {
        padding: 20px 0 32px !important;
    }

    .hero-badge {
        font-size: 0.64rem !important;
        padding: 3px 8px !important;
        gap: 4px !important;
        white-space: normal;
        text-align: left;
    }

    .hero-heading {
        font-size: 1.55rem !important;
        line-height: 1.2 !important;
        letter-spacing: -0.4px !important;
        margin-bottom: 12px !important;
    }

    .hero-subheading {
        font-size: 0.8rem !important;
        line-height: 1.45 !important;
        margin-bottom: 18px !important;
    }

    .hero-buttons {
        gap: 8px !important;
    }

    .hero-buttons .btn {
        padding: 10px 14px !important;
        font-size: 0.82rem !important;
        width: 100% !important;
    }

    .hero-social-proof {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 6px !important;
    }

    .avatars-cluster .avatar-img {
        width: 28px !important;
        height: 28px !important;
    }

    .trust-text {
        font-size: 0.72rem !important;
    }

    .hero-visual {
        height: 210px !important;
        border-radius: 12px !important;
    }

    .hero-floating-info {
        bottom: 8px !important;
        right: 8px !important;
        left: 8px !important;
        padding: 6px 10px !important;
        gap: 8px !important;
        border-radius: 8px !important;
    }

    .hero-floating-info .info-text strong {
        font-size: 0.72rem !important;
    }

    .hero-floating-info .info-text span {
        font-size: 0.62rem !important;
    }

    .hero-floating-info .info-bars {
        display: none !important;
    }

    /* Trusted Brands Strip */
    .trusted-brands-section {
        padding: 24px 0 18px !important;
    }

    .trusted-brands-title {
        font-size: 0.95rem !important;
        margin-bottom: 14px !important;
    }

    .trusted-brands-row {
        gap: 10px !important;
        justify-content: center !important;
    }

    .brand-logo-item {
        padding: 3px 6px !important;
    }

    .brand-logo-svg {
        max-height: 24px !important;
    }

    /* Services Section */
    .services-section {
        padding: 24px 0 40px !important;
    }

    .services-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .service-box {
        border-radius: 14px !important;
    }

    .service-box-image {
        height: 170px !important;
    }

    .service-box-body {
        padding: 14px 12px !important;
    }

    .service-name {
        font-size: 1.0rem !important;
    }

    .service-caption {
        font-size: 0.75rem !important;
    }

    /* Why Choose Us */
    .why-section {
        padding: 30px 0 40px !important;
    }

    .section-eyebrow {
        font-size: 0.65rem !important;
        letter-spacing: 1.5px !important;
        margin-bottom: 8px !important;
    }

    .section-heading {
        font-size: 1.45rem !important;
        line-height: 1.22 !important;
        margin-bottom: 12px !important;
    }

    .section-lead {
        font-size: 0.8rem !important;
        line-height: 1.5 !important;
        margin-bottom: 20px !important;
    }

    .why-media {
        height: 200px !important;
        border-radius: 12px !important;
    }

    .features-2x2 {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        margin-bottom: 20px !important;
    }

    .feature-card {
        gap: 10px !important;
    }

    .feature-icon-badge {
        width: 34px !important;
        height: 34px !important;
        font-size: 0.85rem !important;
        border-radius: 8px !important;
    }

    .feature-text h4 {
        font-size: 0.85rem !important;
    }

    .feature-text p {
        font-size: 0.72rem !important;
    }

    /* Global Network */
    .network-section {
        padding: 30px 0 40px !important;
    }

    .network-title {
        font-size: 1.45rem !important;
        line-height: 1.22 !important;
    }

    .network-description {
        font-size: 0.8rem !important;
        line-height: 1.5 !important;
        margin-bottom: 18px !important;
    }

    .regions-header {
        font-size: 0.76rem !important;
        margin-bottom: 10px !important;
    }

    .regions-grid {
        grid-template-columns: 1fr !important;
        gap: 7px !important;
    }

    .region-pill-box {
        padding: 8px 12px !important;
        font-size: 0.76rem !important;
        border-radius: 8px !important;
        gap: 8px !important;
    }

    .network-visual-card {
        height: 210px !important;
        border-radius: 12px !important;
    }

    .current-location-chip {
        bottom: 8px !important;
        right: 8px !important;
        padding: 5px 9px !important;
        border-radius: 8px !important;
        gap: 6px !important;
    }

    .current-location-chip i {
        font-size: 0.9rem !important;
    }

    .location-sub {
        font-size: 0.6rem !important;
    }

    .location-name {
        font-size: 0.75rem !important;
    }

    /* Tracking Live Component (Homepage) */
    .tracking-live-section {
        padding: 36px 0 44px !important;
    }

    .tracking-live-heading {
        font-size: 1.45rem !important;
        line-height: 1.22 !important;
    }

    .tracking-live-desc {
        font-size: 0.8rem !important;
        line-height: 1.5 !important;
        margin-bottom: 20px !important;
    }

    .tracking-search-box {
        flex-direction: column !important;
        background: transparent !important;
        box-shadow: none !important;
        padding: 0 !important;
        gap: 8px !important;
        max-width: 100% !important;
    }

    .tracking-search-box input {
        width: 100% !important;
        height: 44px !important;
        background: #ffffff !important;
        border-radius: var(--radius-pill) !important;
        padding: 0 14px !important;
        font-size: 0.8rem !important;
    }

    .tracking-search-box button {
        width: 100% !important;
        height: 42px !important;
        border-radius: var(--radius-pill) !important;
        background: var(--color-accent-cyan) !important;
        color: #0a0c10 !important;
        font-weight: 800 !important;
        justify-content: center !important;
    }

    .tracking-telemetry-card {
        padding: 14px 10px !important;
        border-radius: 12px !important;
        gap: 14px !important;
    }

    .telemetry-step {
        gap: 8px !important;
    }

    .step-icon-circle {
        width: 26px !important;
        height: 26px !important;
        font-size: 0.65rem !important;
    }

    .step-content strong {
        font-size: 0.74rem !important;
    }

    .step-content span {
        font-size: 0.62rem !important;
    }

    .tracking-highway-media {
        height: 140px !important;
        border-radius: 8px !important;
    }

    /* Stats Section */
    .stats-counter-section {
        padding: 28px 0 !important;
    }

    .stats-counter-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .stat-box {
        padding: 14px 10px !important;
        border-radius: 10px !important;
    }

    .stat-digit {
        font-size: 1.85rem !important;
    }

    .stat-unit {
        font-size: 1.4rem !important;
    }

    .stat-title {
        font-size: 0.75rem !important;
    }

    /* CTA Banner */
    .ready-ship-section {
        padding: 30px 0 40px !important;
    }

    .ready-ship-card {
        padding: 22px 12px !important;
        border-radius: 14px !important;
    }

    .ready-ship-heading {
        font-size: 1.4rem !important;
        line-height: 1.22 !important;
    }

    .ready-ship-desc {
        font-size: 0.8rem !important;
        line-height: 1.5 !important;
        margin-bottom: 20px !important;
    }

    .ready-ship-actions {
        gap: 8px !important;
    }

    .ready-ship-actions .btn {
        padding: 10px 14px !important;
        font-size: 0.82rem !important;
        width: 100% !important;
    }

    /* Footer */
    .site-footer,
    .velora-footer-dark {
        padding: 32px 0 20px !important;
    }

    .footer-columns {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .footer-logo-img {
        height: 30px !important;
        max-width: 120px !important;
    }

    .footer-desc {
        font-size: 0.78rem !important;
        line-height: 1.45 !important;
    }

    .footer-info-item {
        font-size: 0.75rem !important;
        word-break: break-word !important;
        gap: 6px !important;
    }

    .footer-col h4 {
        font-size: 0.88rem !important;
        margin-bottom: 12px !important;
    }

    .footer-links li a {
        font-size: 0.78rem !important;
        padding: 4px 0 !important;
    }

    .newsletter-form {
        flex-direction: column !important;
        gap: 6px !important;
        width: 100% !important;
    }

    .newsletter-input {
        width: 100% !important;
        height: 40px !important;
        font-size: 0.78rem !important;
        border-radius: var(--radius-pill) !important;
    }

    .newsletter-btn {
        width: 100% !important;
        height: 40px !important;
        font-size: 0.78rem !important;
        border-radius: var(--radius-pill) !important;
        justify-content: center !important;
    }

    .footer-bottom-flex {
        flex-direction: column !important;
        text-align: center !important;
        gap: 8px !important;
    }

    .copyright-text {
        font-size: 0.7rem !important;
    }

    /* Floating Chat Widget */
    .velora-floating-chat {
        bottom: 10px !important;
        right: 10px !important;
    }

    .chat-launcher-btn {
        width: 46px !important;
        height: 46px !important;
        font-size: 1.15rem !important;
        border-width: 1.5px !important;
    }

    .launcher-badge {
        width: 16px !important;
        height: 16px !important;
        font-size: 0.6rem !important;
        top: -3px !important;
        right: -3px !important;
    }

    .chat-window-card {
        position: fixed !important;
        inset: 4px !important;
        bottom: 60px !important;
        right: 4px !important;
        left: 4px !important;
        width: auto !important;
        height: auto !important;
        max-height: calc(100dvh - 66px) !important;
        border-radius: 12px !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7) !important;
    }

    .chat-window-header {
        padding: 8px 10px !important;
    }

    .brand-avatar {
        width: 30px !important;
        height: 30px !important;
        font-size: 0.85rem !important;
    }

    .header-brand-info h3 {
        font-size: 0.8rem !important;
    }

    .head-btn {
        padding: 4px 6px !important;
        font-size: 0.68rem !important;
    }

    .chat-chips-scroll {
        gap: 4px !important;
        padding: 5px 8px !important;
    }

    .suggestion-chip {
        font-size: 0.68rem !important;
        padding: 3px 6px !important;
    }

    .chat-input-bar {
        padding: 6px 8px !important;
        gap: 5px !important;
    }

    .btn-chat-send {
        width: 34px !important;
        height: 34px !important;
        font-size: 0.78rem !important;
    }

    /* Page Banners (Inner Pages) */
    .page-banner {
        padding: 28px 0 !important;
    }

    .banner-title {
        font-size: 1.5rem !important;
        line-height: 1.22 !important;
    }

    .banner-subtext {
        font-size: 0.78rem !important;
        line-height: 1.45 !important;
        margin-bottom: 16px !important;
    }

    .banner-actions {
        flex-direction: column !important;
        width: 100% !important;
        gap: 8px !important;
    }

    .banner-actions .btn {
        width: 100% !important;
        justify-content: center !important;
        font-size: 0.8rem !important;
        padding: 10px 14px !important;
    }

    /* Quote System Page (`quote.php`) */
    .quote-system-section {
        padding: 24px 0 40px !important;
    }

    .quote-step-box {
        padding: 14px 10px !important;
        border-radius: 12px !important;
        margin-bottom: 16px !important;
    }

    .step-head {
        gap: 8px !important;
        margin-bottom: 12px !important;
        padding-bottom: 10px !important;
    }

    .step-badge {
        width: 26px !important;
        height: 26px !important;
        font-size: 0.75rem !important;
    }

    .step-info h2, .step-info h3 {
        font-size: 0.94rem !important;
    }

    .step-info p {
        font-size: 0.7rem !important;
    }

    .mode-cards-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .mode-card {
        padding: 10px 12px !important;
        border-radius: 10px !important;
    }

    .mode-icon {
        width: 36px !important;
        height: 36px !important;
        font-size: 1.0rem !important;
    }

    .mode-title {
        font-size: 0.88rem !important;
    }

    .mode-desc {
        font-size: 0.7rem !important;
    }

    .field-row-2,
    .field-row-3 {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .quote-form-group label {
        font-size: 0.76rem !important;
        margin-bottom: 4px !important;
    }

    .quote-form-group input,
    .quote-form-group select,
    .quote-form-group textarea {
        font-size: 0.8rem !important;
        padding: 8px 10px !important;
    }

    .cargo-dims-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 6px !important;
    }

    .delivery-type-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .service-tier-cards {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .service-tier-card {
        padding: 12px 10px !important;
        border-radius: 10px !important;
    }

    .tier-header {
        font-size: 0.88rem !important;
    }

    .tier-transit {
        font-size: 0.72rem !important;
    }

    .media-upload-dropzone {
        padding: 18px 12px !important;
    }

    .dropzone-icon {
        font-size: 1.8rem !important;
        margin-bottom: 6px !important;
    }

    .dropzone-title {
        font-size: 0.82rem !important;
    }

    .dropzone-sub {
        font-size: 0.68rem !important;
    }

    .sticky-quote-summary {
        padding: 14px 10px !important;
        border-radius: 12px !important;
    }

    .summary-heading {
        font-size: 1.05rem !important;
    }

    .summary-total-amount {
        font-size: 1.45rem !important;
    }

    .summary-submit-btn {
        font-size: 0.85rem !important;
        padding: 12px 14px !important;
    }

    .summary-aux-actions {
        flex-direction: column !important;
        gap: 6px !important;
    }

    .btn-aux-action {
        width: 100% !important;
        justify-content: center !important;
        font-size: 0.75rem !important;
    }

    .quote-success-card {
        padding: 16px 10px !important;
        border-radius: 12px !important;
    }

    .success-title {
        font-size: 1.35rem !important;
    }

    .success-ref-pill {
        font-size: 0.78rem !important;
        padding: 8px 10px !important;
    }

    .success-action-btns {
        flex-direction: column !important;
        gap: 8px !important;
    }

    .success-action-btns .btn {
        width: 100% !important;
        justify-content: center !important;
    }

    /* Contact Page (`contact.php`) */
    .contact-cards-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .contact-card {
        padding: 16px 12px !important;
        border-radius: 12px !important;
    }

    .contact-icon-box {
        width: 38px !important;
        height: 38px !important;
        font-size: 1.0rem !important;
    }

    .contact-card-title {
        font-size: 0.98rem !important;
    }

    .contact-card-desc {
        font-size: 0.74rem !important;
    }

    .contact-form-card {
        padding: 16px 10px !important;
        border-radius: 12px !important;
    }

    .quick-contact-pills {
        flex-direction: column !important;
        gap: 6px !important;
    }

    .quick-phone-pill {
        width: 100% !important;
        font-size: 0.72rem !important;
        padding: 6px 10px !important;
    }

    /* Solutions Page (`solutions.php`) */
    .solutions-stats-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .matcher-card-wrapper {
        padding: 14px 10px !important;
        border-radius: 12px !important;
    }

    .matcher-heading {
        font-size: 1.15rem !important;
    }

    .matcher-tabs {
        gap: 4px !important;
    }

    .matcher-tab-btn {
        padding: 6px 10px !important;
        font-size: 0.72rem !important;
    }

    .industry-cards-grid,
    .capabilities-grid,
    .case-studies-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .blueprint-specs-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    /* Services Page (`services.php`) */
    .calculator-card {
        padding: 16px 10px !important;
        border-radius: 12px !important;
    }

    .calculator-title {
        font-size: 1.15rem !important;
    }

    .calculator-grid-form {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .service-detail-row,
    .service-detail-row.reverse {
        padding: 24px 0 !important;
        gap: 18px !important;
    }

    .service-detail-media {
        height: 190px !important;
        border-radius: 12px !important;
    }

    /* About Page (`about.php`) */
    .about-story-media,
    .hubs-visual {
        height: 190px !important;
        border-radius: 12px !important;
    }

    .values-grid,
    .value-cards-grid,
    .team-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .team-card {
        padding: 14px 10px !important;
    }

    .team-avatar-img {
        width: 70px !important;
        height: 70px !important;
    }

    /* Stepper Track (Timeline on tracking or documents) */
    .stepper-8-track {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .telemetry-sensors-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }
}









