/* Inner Page Hero */
.inner-page-hero {
    background-color: var(--munal-primary);
    color: #fff;
    padding: 60px 0;
    text-align: center;
    background-image: linear-gradient(rgba(26, 45, 138, 0.96), rgba(20, 34, 92, 0.98));
    background-size: cover;
    background-position: center;
}

.inner-page-title {
    color: #fff;
    font-size: 2.5rem;
    margin: 0;
}

/* Main Layout */
.inner-page-main {
    padding: 60px 0;
    min-height: 50vh;
}

.archive-description {
    max-width: 800px;
    margin: 0 auto 40px;
    text-align: center;
    color: #555;
    font-size: 1.1rem;
}

/* Grids */
.archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}

.archive-demands-grid {
    grid-template-columns: repeat(3, 1fr);
}

.archive-categories-grid {
    grid-template-columns: repeat(4, 1fr);
}

/* Single Country Layout */
.single-country-layout {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 40px;
    align-items: flex-start;
}

.country-info-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: var(--munal-radius-md);
    padding: 20px;
    box-shadow: var(--munal-shadow-sm);
    position: sticky;
    top: 100px;
}

.country-flag-large {
    margin-bottom: 20px;
    text-align: center;
}

.country-flag-large img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    border: 1px solid #e2e8f0;
}

.country-meta-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.country-meta-list li {
    margin-bottom: 12px;
    font-size: 0.9rem;
    color: #555;
    padding-bottom: 12px;
    border-bottom: 1px solid #f1f5f9;
}

.country-meta-list strong {
    color: var(--munal-text);
    display: block;
    margin-bottom: 4px;
}

.munal-btn-block {
    display: block;
    width: 100%;
    text-align: center;
}

/* Single Demand Layout */
.single-demand-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 40px;
    align-items: flex-start;
}

.demand-single-title {
    color: var(--munal-primary);
    margin-bottom: 20px;
}

.demand-meta-card {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: var(--munal-radius-md);
    padding: 25px;
}

.demand-meta-card h4 {
    margin-top: 0;
    margin-bottom: 20px;
    color: var(--munal-primary);
}

.demand-meta-card ul {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.demand-meta-card li {
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e2e8f0;
}

.demand-meta-card strong {
    color: var(--munal-text);
}

/* Related Demands & Empty States */
.related-demands {
    margin-top: 60px;
    padding-top: 40px;
    border-top: 1px solid #e2e8f0;
}

.related-demands h3 {
    margin-bottom: 30px;
}

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

.empty-state {
    background: #f8fafc;
    padding: 40px;
    text-align: center;
    border-radius: var(--munal-radius-md);
    border: 1px dashed #cbd5e1;
}

/* Pagination */
.pagination-wrap {
    margin-top: 40px;
    text-align: center;
}

.nav-links .page-numbers {
    display: inline-block;
    padding: 8px 15px;
    margin: 0 5px;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    color: var(--munal-text);
    text-decoration: none;
    transition: all 0.3s ease;
}

.nav-links .page-numbers.current,
.nav-links .page-numbers:hover {
    background: var(--munal-primary);
    color: #fff;
    border-color: var(--munal-primary);
}

/* Responsive */
@media (max-width: 992px) {
    .single-country-layout,
    .single-demand-layout {
        grid-template-columns: 1fr;
    }
    .country-info-card,
    .demand-sidebar {
        position: static;
        max-width: 100%;
    }
    .archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .archive-demands-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .archive-categories-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .inner-page-title {
        font-size: 2rem;
    }
    .archive-grid,
    .archive-demands-grid,
    .archive-categories-grid,
    .single-demands-grid {
        grid-template-columns: 1fr;
    }
    .category-excerpt {
        display: none;
    }
}
/* --- Country Archive Clean Layout --- */
.countries-grid.archive-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 columns like the image */
    gap: 20px;
    margin-bottom: 40px;
}

.country-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    transition: all 0.3s ease;
    overflow: hidden;
}

.country-card:hover {
    border-color: var(--munal-primary);
    box-shadow: 0 4px 12px rgba(26, 45, 138, 0.1);
}

.country-card-link {
    display: flex;
    align-items: center;
    padding: 15px;
    gap: 15px;
    text-decoration: none;
}

.country-card-flag img,
.flag-placeholder {
    width: 60px;
    height: 40px;
    object-fit: cover;
    border-radius: 4px;
    border: 1px solid #e2e8f0;
    flex-shrink: 0;
}

.flag-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1f5f9;
    font-weight: 700;
    color: var(--munal-primary);
}

.country-card-body {
    flex: 1;
}

.country-card-title {
    margin: 0 0 5px 0;
    font-size: 1.1rem;
    color: var(--munal-primary);
}

.country-card-cities {
    margin: 0;
    font-size: 0.9rem;
    color: #6b7280;
}

/* Responsive: Stack to 2 columns on tablet, 1 on mobile */
@media (max-width: 992px) {
    .countries-grid.archive-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .countries-grid.archive-grid {
        grid-template-columns: 1fr;
    }
}.country-card-flag img{object-fit:contain!important;background:#fff;padding:3px}.country-flag-large img{width:100%;max-height:240px;object-fit:contain;background:#fff;padding:8px}.notice-list{display:grid;gap:18px}.notice-card{background:#fff;border:1px solid #e2e8f0;border-radius:var(--munal-radius-md);padding:24px}.notice-card h2{margin:8px 0}.notice-card h2 a{color:var(--munal-primary);text-decoration:none}.notice-date{font-size:.8rem;color:#64748b;font-weight:700}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.contact-info-panel h2{font-size:2.2rem;margin:12px 0 28px}.contact-info-block{margin-bottom:28px}.contact-info-block h3{margin-bottom:8px}.contact-info-block p{margin:6px 0;color:#53627a}.contact-info-block a{color:var(--munal-primary);font-weight:600}.contact-icon{display:inline-flex;width:24px;justify-content:center}.whatsapp-icon{color:#25d366}.contact-map-wrap{border:1px solid #dbe3ee;border-radius:14px;overflow:hidden;margin-top:18px;min-height:260px}.contact-map-wrap iframe{display:block;width:100%;height:300px;border:0}.map-link{display:inline-block;margin-top:10px}.contact-form-panel{background:#fff;border:1px solid #e1e7f0;border-radius:18px;padding:28px;box-shadow:0 12px 30px rgba(20,34,92,.06)}.munal-contact-form label{display:block;font-weight:600;margin-bottom:7px;color:#1a1a2e}.munal-contact-form input,.munal-contact-form select,.munal-contact-form textarea{width:100%;box-sizing:border-box;border:1px solid #cfd8ee;border-radius:10px;padding:13px 15px;font:inherit;background:#fff}.munal-contact-form input:focus,.munal-contact-form select:focus,.munal-contact-form textarea:focus{outline:3px solid rgba(37,137,230,.14);border-color:#2589e6}.form-grid{display:grid;gap:16px}.two-cols{grid-template-columns:1fr 1fr}.munal-contact-form p{margin:0 0 16px}.munal-submit-btn{width:100%;border:0;cursor:pointer}.form-notice{padding:13px 16px;border-radius:10px;margin-bottom:18px}.form-notice.success{background:#eaf8ef;color:#166534}.form-notice.error{background:#fff1f2;color:#9f1239}.munal-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden}.about-page-image img{width:100%;height:auto;border-radius:18px;margin-top:30px}.single-content{max-width:900px}.entry-content img{max-width:100%;height:auto}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:30px}}@media(max-width:600px){.two-cols{grid-template-columns:1fr}.contact-form-panel{padding:20px}.contact-info-panel h2{font-size:1.8rem}}
.phone-input-wrap{display:grid;grid-template-columns:150px 1fr;gap:8px}.phone-input-wrap select,.phone-input-wrap input{width:100%}@media(max-width:600px){.phone-input-wrap{grid-template-columns:120px 1fr}}
/* Fix Country Flag Display */
.country-card-flag img,
.flag-placeholder {
    width: 60px;
    height: 45px; /* Slightly taller to fit standard flag ratios */
    object-fit: contain !important; /* 'contain' prevents cropping */
    background-color: #f8fafc; /* Adds a light background so transparent flags look clean */
    border-radius: 4px;
    border: 1px solid #e2e8f0;
    padding: 2px; /* Adds a tiny gap between flag and border */
    box-sizing: border-box;
}
