﻿/* ==========================================
   Instructions Section
========================================== */

/* Section background */
.section-bg-instructions {
    background-image: url('/content/img/sikkim_bgc.png');
    background-repeat: no-repeat;
    background-position: right bottom;
}

/* Row side padding (responsive) */
#instructions .card-padding {
    padding-left: 0px;
    padding-right: 0px;
}

/* Mobile portrait (<576px) */
@media (max-width: 575.98px) {
    #instructions .card-padding {
        padding-left: 1px;
        padding-right: 1px;
    }
}

/* Mobile landscape (576px - 767px) */
@media (min-width: 576px) and (max-width: 767.98px) {
    #instructions .card-padding {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* Tablet (768px - 991px) */
@media (min-width: 768px) and (max-width: 991.98px) {
    #instructions .card-padding {
        padding-left: 10px;
        padding-right: 10px;
    }
}

/* Laptop and above (992px+) keeps the 60px base padding */


/* ==========================================
   Service Card (_pvServiceCard partial)
========================================== */

/* Sizing */
.icon-square-container {
    width: 44px;
    height: 44px;
    font-size: 20px;
}

.timeline-badge {
    font-size: 11px;
    border-radius: 8px;
    letter-spacing: 0.2px;
}

.card-heading-title {
    font-size: 20px;
}

.card-description {
    font-size: 13px;
    line-height: 1.5;
}

.trigger-label {
    font-size: 13px;
}

.trigger-arrow {
    font-size: 15px;
}

/* Base card */
.service-brand-card {
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
    font-family: 'Montserrat', sans-serif;
    transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    cursor: pointer;
}

/* Child transitions */
.icon-square-container,
.timeline-badge,
.card-heading-title,
.trigger-arrow,
.trigger-label {
    transition: all 0.25s ease-in-out;
}

/* Brand colours */
.bg-brand-mint {
    background-color: #eefbf7;
}

.text-brand-green {
    color: #0b6951 !important;
}

.text-brand-dark {
    color: #0c2e26;
}

/* Hover interactions */
.service-brand-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(11, 105, 81, 0.08) !important;
    border-color: #0b6951 !important;
}

    .service-brand-card:hover .icon-square-container {
        background-color: #0b6951 !important;
        color: #ffffff !important;
        transform: scale(1.05);
    }

    .service-brand-card:hover .timeline-badge {
        background-color: #0b6951 !important;
        color: #ffffff !important;
    }

    .service-brand-card:hover .card-heading-title {
        color: #0b6951 !important;
    }

    .service-brand-card:hover .trigger-label {
        color: #053a2c !important;
    }

    .service-brand-card:hover .trigger-arrow {
        transform: translateX(5px);
        color: #053a2c !important;
    }
/* Sizing (larger cards) */
.service-brand-card {
    min-height: 340px;
}

.icon-square-container {
    width: 72px;
    height: 72px;
    font-size: 32px;
    border-radius: 14px !important;
}

.timeline-badge {
    font-size: 12px;
    border-radius: 8px;
    letter-spacing: 0.2px;
}

.card-heading-title {
    font-size: 24px;
    line-height: 1.3;
}

.card-description {
    font-size: 16px;
    line-height: 1.6;
}

.trigger-label {
    font-size: 16px;
}

.trigger-arrow {
    font-size: 20px;
}

#instructions .card-padding {
    padding-left: 30px;
    padding-right: 30px;
}


@media (max-width: 575.98px) {
    .service-brand-card {
        min-height: 0;
    }
}