/* ---------- Typography ---------- */
.lead { 
    font-size: 1.25rem; 
}

.single-inventory p {
    color: #000 !important;
}

/* ---------- Badges ---------- */
.badge.bg-primary { 
    background-color: #0066cc !important; 
}
.text-orange { 
    color: #f57c00 !important; 
}

/* ---------- Info Boxes ---------- */
.box-threat { 
    background: #fff7f0; 
    border-left: 4px solid #f57c00; 
}
.box-safeguard { 
    background: #f0f8ff; 
    border-left: 4px solid #0d6efd; 
}

/* ---------- Sidebar Quick Facts ---------- */
.sidebar-quickfacts {
    background: linear-gradient(145deg, #0d1f3f, #1a2b56);
    position: sticky;
    top: 110px;
}
.sidebar-quickfacts p, 
.sidebar-quickfacts strong {
    font-size: 0.95rem;
}

/* ---------- Side Bar Card ---------- */
.side-bar-card {
    overflow: visible;
    padding-top: 170px;
}

/* ---------- Swiper ---------- */
.inventory-swiper .swiper-slide img {
    width: 100%;
    height: 500px;
    object-fit: cover;
}

.swiper-button-next, 
.swiper-button-prev {
    color: #fff;
    background: rgba(0,0,0,0.3);
    border-radius: 50%;
    padding: 0.5rem;
}

.ich-swiper {
    margin-bottom: 0 !important;
}

.ich-swiper img {
    width: 100%;
    height: 70vh;          /* adjust hero height */
    object-fit: cover;     /* crop nicely */
}

/* ---------- Shadows ---------- */
.shadow-sm { 
    box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.08) !important; 
}
.shadow-lg { 
    box-shadow: 0 1rem 3rem rgba(0,0,0,0.15) !important; 
}

/* ---------- Fullwidth Hero ---------- */
.fullwidth-hero {
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
}

/* ---------- Box Animation ---------- */
.box-animation {
    transition: 
        transform .3s ease,
        box-shadow .3s ease,
        background-color .3s ease,
        border-color .3s ease;
}

.box-animation:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    background-color: #fff7ef; /* soft warm tint */
}

/* ---------- Ich Container & Grid ---------- */
.ich-container {
    max-width: 1280px; /* max-w-7xl */
    margin: 0 auto;
    padding: 0px 24px; /* py-16 px-6 */
}

.ich-grid {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 64px;
    align-items: center;
}

.ich-card img {
    width: 100%;
    border-radius: 12px 12px 0px 0px !important;
}

.ich-card-body {
    padding: 7px 12px 13px;
}

/* ---------- Map Card & Marker ---------- */
.ich-map-card {
    background: #ffffff;
    border-radius: 24px; /* rounded-3xl */
    border: 1px solid #e2e8f0; /* slate-200 */
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); /* shadow-sm */
    min-height: 500px;
    height: 600px;
    position: relative;
    overflow: hidden;
}

.ich-map {
    min-height: 600px !important;
}

.leaflet-container {
    border-radius: 24px;
}

.leaflet-control-zoom {
    border-radius: 12px;
    overflow: hidden;
}

.leaflet-control-zoom a {
    width: 36px;
    height: 36px;
    line-height: 36px;
}

.ich-info-placeholder {
    padding: 0px; 
    text-align: center;
    color: #64748b; 
    border: 2px dashed #e2e8f0;
    border-radius: 24px;
    font-size: 16px;
    line-height: 1.6;
}

.ich-marker {
    width: 24px;
    height: 24px;
    border-radius: 999px;
    border: 2px solid #ffffff;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.15);
    transition: transform 0.2s ease;
}

.ich-marker--active {
    background: #2563eb;
    transform: scale(1.25);
}

.ich-marker--inactive {
    background: #94a3b8;
    transform: scale(0.9);
}

/* ---------- Inventory Template ---------- */
.inventory-template-default .row {
    margin-top: 20px;
}

/* ---------- Media Queries ---------- */
@media (min-width: 1024px) {
    .ich-container {
        padding-left: 32px;
        padding-right: 32px;
    }

    .ich-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 991px) {
    .side-bar-card {
        position: static;
        padding-top: 0px;
    }
}
