/* ====================================
   CARD COMPONENTS
   PRISM Insurance Brokers Limited
   ==================================== */

/* Base Card */
.card {
    background: white;
    border-radius: var(--border-radius);       /* 10px */
    box-shadow: var(--shadow-soft);
    margin-bottom: 2rem;
    border: 1.5px solid var(--border-color);   /* #dde3f0 PRISM border */
    transition: var(--transition-normal);
}

.card:hover {
    box-shadow: var(--shadow-medium);
    transform: var(--hover-transform);         /* translateY(-2px) */
}

.card-body {
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
}

/* Card Header */
.card-header {
    background: transparent;
    border-bottom: 1px solid var(--border-color);
    font-family: var(--font-family-serif), serif;
    font-size: var(--font-size-lg);
    font-weight: 700;
    color: var(--primary-color);               /* Navy headings */
}

/* Card Title */
.card-title {
    font-family: var(--font-family-serif), serif;
    font-size: var(--font-size-xl);
    font-weight: 700;
    color: var(--primary-color);
}

/* ── Service Card (matches PRISM website style) ── */
.service-card {
    border: 1.5px solid var(--border-color);
    border-radius: var(--border-radius-sm);
    transition: box-shadow 0.25s, transform 0.25s;
    height: 100%;
    background: white;
}
.service-card:hover {
    box-shadow: 0 10px 35px rgba(26, 79, 214, 0.12);
    transform: translateY(-3px);
}

/* ── Icon Box ── */
.icon-box {
    width: 54px;
    height: 54px;
    background: linear-gradient(135deg, #153370, var(--secondary-color));
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    color: #fff;
    flex-shrink: 0;
}

.icon-box-sm {
    width: 42px;
    height: 42px;
    background: rgba(26, 79, 214, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    color: var(--secondary-color);
    flex-shrink: 0;
}

/* ── Testimonial Card ── */
.testi-card {
    border: 1.5px solid var(--border-color);
    border-radius: var(--border-radius-sm);
    padding: 2rem;
    height: 100%;
    background: white;
    transition: var(--transition-normal);
}
.testi-card:hover {
    box-shadow: var(--shadow-medium);
}

.testi-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--secondary-color);        /* PRISM blue */
    color: #fff;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* ── Navy Dark Card (vision/mission style) ── */
.card-navy {
    background: var(--primary-color);
    border: 1px solid rgba(200, 164, 80, 0.25);
    border-radius: var(--border-radius);
    color: rgba(255, 255, 255, 0.85);
}
.card-navy .card-title,
.card-navy h4,
.card-navy h5 {
    color: white;
}

/* ── Gold Accent Card ── */
.card-gold-accent {
    border-left: 4px solid var(--accent-color);
    border-radius: var(--border-radius-sm);
    background: white;
    box-shadow: var(--shadow-soft);
}
