/*
Theme Name: Royal Elementor Kit Child
Theme URI: https://royal-elementor-addons.com/royal-elementor-kit/
Template: royal-elementor-kit
Author: WP Royal
Author URI: https://royal-elementor-addons.com/
Description: Truly all in one Solution For Elementor Lovers. 140+ Elementor Templates KIT, 100+ Professional Elementor Widgets, Elementor theme builder, Elementor Popup Builder, Elementor Premade blocks and many other cool features like Sticky Header, Particle effects, parallax backgrounds and many other elementor addons. Simple Install the theme, click on - Get Started with Templates Kit button and that's it. Very easy to use even for WordPress beginners or professionals. All In one Elementor Solution which outranks all other Elementor themes and Elementor addons. ########### TEMPLATES INCLUDED: Elementor Blog Template, Elementor Magazine Blog Template, Elementor Food Blog Template, Elementor Travel Blog Template, Elementor Portfolio Template, Elementor NFT Template, Elementor Pizza Restaurant Template, Elementor Travel Blogger & Influencer Template, Elementor Cybersecurity Template, Elementor Photographer Portfolio Template, Elementor Crypto Currency Template, Elementor Skin Care Template, Elementor Lawyer Template, Elementor Medical Template, Elementor Digital Agency Template, Elementor Drone Template, Elementro Architecture Template, Elementor Food Delivery Template, Elementor Construction Template, Elementor IT Technology Template, Elementor Real Estate Template, Elementor Restaurant Template, Elementor Wine Bar & Restaurant Template, Elementor Wedding Template & other beautiful elementor business templates. All these templates are created with elementor page builder. Theme Demo Page: https://royal-elementor-addons.com/royal-elementor-kit/
Tags: blog,e-commerce,one-column,custom-background,custom-colors,full-width-template,custom-menu,custom-logo,featured-images,sticky-post,theme-options,threaded-comments,translation-ready
Version: 1.0.140.1767749155
Updated: 2026-01-06 21:25:55
*/

/* ==========================================
   1. ARCHIVE PAGE STYLES (Government Theme)
   ========================================== */

/* General Grid Layout */
.archive-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 2.5rem;
    margin-top: 2rem;
    margin-bottom: 2rem;
}

/* Card Container */
.archive-item-inner {
    background-color: #ffffff;
    border: 1px solid #e0e6ed;
    border-top: 4px solid #003366;
    border-radius: 4px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
    box-shadow: 0 2px 4px rgba(0,0,0,0.04);
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.archive-item-inner:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0,0,0,0.1);
    border-color: #0056b3;
}

/* Image Styling */
.archive-thumbnail img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    border-bottom: 1px solid #f0f0f0;
    display: block;
}

/* Content Area */
.archive-content {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

/* Typography */
.page-title {
    color: #003366;
    font-weight: 700;
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid #ddd;
    padding-bottom: 15px;
}

.entry-title {
    font-size: 1.5rem;
    margin: 0 0 0.75rem 0;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.entry-title a {
    color: #333;
    text-decoration: none;
    line-height: 1.3;
}

.entry-title a:hover {
    color: #0056b3;
    text-decoration: underline;
}

.entry-meta {
    font-size: 0.85rem;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
    margin-bottom: 1rem;
    display: block;
}

.entry-summary {
    font-size: 1rem;
    line-height: 1.6;
    color: #555;
    margin-bottom: 1.5rem;
}

/* Global Button Class */
.button {
    display: inline-block;
    background-color: #003366;
    color: #fff;
    padding: 12px 24px;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: 2px;
    margin-top: auto;
    text-align: center;
    border: none;
    cursor: pointer;
}

.button:hover {
    background-color: #0056b3;
    color: #fff;
    text-decoration: none;
}

/* Specific Meta Styles */
.meta-position { color: #0056b3; }
.meta-date { color: #d32f2f; }
.meta-type { background: #f0f4f8; color: #333; padding: 2px 6px; border-radius: 2px; }

/* Thumbnail Styling for Notices */
.notice-thumbnail img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain !important;
    border-radius: 4px;
    margin-bottom: 30px;
    border: 1px solid #eaeaea;
}

/* PDF / Addons Container for Notices */
.notice-addons {
    margin: 30px 0;
    text-align: center;
    padding: 20px;
    border: 1px dashed #ccc;
    background: #fafafa;
    border-radius: 8px;
}

/* Thumbnail Styling for Programmes */
.programme-thumbnail img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain !important;
    border-radius: 4px;
    margin-bottom: 30px;
    border: 1px solid #eaeaea;
}

/* Programme Info Section - Adds spacing between metadata and content */
.programme-info {
    margin-bottom: 30px;
}

/* Date Formatting Styling */
.programme-date-area {
    display: flex;
    align-items: center;
    margin-bottom: 8px; /* Space between Start and End date rows */
}

.programme-date-label {
    font-weight: bold;
    margin-right: 10px;
    color: #555;
    min-width: 90px; /* Ensures labels align vertically */
}

.programme-date-value {
    color: #333;
}

/* ==========================================
   ORIGINAL PROGRAMME BUTTON STYLE (Untouched)
   ========================================== */
.programme-register-btn {
    margin-top: 20px;
}

.programme-link-btn {
    display: inline-block;
    background-color: #2563eb;
    color: #ffffff;
    padding: 5px 15px;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 5px;
}

.programme-link-btn:hover {
    background-color: #1d4ed8;
}

/* ==========================================
   NEW POST TYPE BUTTON STYLES 
   (Copied Style from Programme, Separate Classes)
   ========================================== */

/* Addendum Download Button */
.addendum-download-btn {
    margin-top: 20px;
}

.addendum-link-btn {
    display: inline-block;
    background-color: #2563eb;
    color: #ffffff;
    padding: 5px 15px;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 5px;
}

.addendum-link-btn:hover {
    background-color: #1d4ed8;
}

/* Notice of Award Download Button */
.award-download-btn {
    margin-top: 20px;
}

.award-link-btn {
    display: inline-block;
    background-color: #2563eb;
    color: #ffffff;
    padding: 5px 15px;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 5px;
}

.award-link-btn:hover {
    background-color: #1d4ed8;
}

/* Request for Proposal Download Button */
.rfp-download-btn {
    margin-top: 20px;
}

.rfp-link-btn {
    display: inline-block;
    background-color: #2563eb;
    color: #ffffff;
    padding: 5px 15px;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 5px;
}

.rfp-link-btn:hover {
    background-color: #1d4ed8;
}

/* Tender Download Button */
.tender-download-btn {
    margin-top: 20px;
}

.tender-link-btn {
    display: inline-block;
    background-color: #2563eb;
    color: #ffffff;
    padding: 5px 15px;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 5px;
}

.tender-link-btn:hover {
    background-color: #1d4ed8;
}

.registration-thumbnail img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain !important;
    border-radius: 4px;
    margin-bottom: 30px;
    border: 1px solid #eaeaea;
}

.registration-addons {
    margin: 30px 0;
    text-align: center;
    padding: 20px;
    border: 1px dashed #ccc;
    background: #fafafa;
    border-radius: 8px;
}

/* ==========================================
   SPEECH STYLES
   ========================================== */

/* 1. The Details Box (Copied from Facility) */
.speech-details {
    background-color: #f8f9fa;
    border-left: 4px solid #0056b3;
    padding: 25px 30px;
    margin-bottom: 40px;
    border-radius: 0 4px 4px 0;
}

/* 2. The Content Area (Matches Entry Content) */
.speech-content {
    font-size: 1.15rem;
    line-height: 1.8;
    color: #444;
}

.speech-content p {
    margin-bottom: 1.5rem;
}

/* Responsive Breakpoints */
@media (max-width: 900px) {
  ul.lcp_catlist {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  ul.lcp_catlist {
    grid-template-columns: 1fr;
  }
}

/* ==========================================
   2. SINGLE PAGE STYLES (Card Layout)
   ========================================== */

/* 1. The Page Background */
.content-wrapper.site-content {
    background-color: #f0f2f5;
    padding: 60px 0;
}

/* 2. The Card (The main content area) */
body.single #primary.site-main {
    background-color: #ffffff;
    max-width: 900px;
    margin: 0 auto;
    padding: 60px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.08);
    border-radius: 8px;
    border-top: 5px solid #003366;
    width: 100%;
    border-bottom: 2px solid #e0e0e0;
}

/* 3. Typography */
article {
    color: #333;
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}

h1.entry-title {
    color: #002244;
    font-size: 2.8rem;
    text-align: center;
    margin-top: 0;
    margin-bottom: 25px;
    line-height: 1.2;
    border-bottom: 2px solid #eee;
    padding-bottom: 20px;
}

/* 4. Images */
.post-thumbnail img,
.executive-image img,
.press-thumbnail img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain !important;
    border-radius: 4px;
    margin-bottom: 30px;
    border: 1px solid #eaeaea;
}

/* 5. The Content Text */
.entry-content {
    font-size: 1.15rem;
    line-height: 1.8;
    color: #444;
}

.entry-content p {
    margin-bottom: 1.5rem;
}

.entry-content a {
    color: #0056b3;
    text-decoration: underline;
}

.division-page-url a {
    color: #0056b3;
    text-decoration: underline;
}

/* 6. Meta Data (Dates, Positions, Details) */
.executive-meta,
.facility-details,
.vacancy-details,
.programme-details,
.document-action,
.division-page-url{
    background-color: #f8f9fa;
    border-left: 4px solid #0056b3;
    padding: 25px 30px;
    margin-bottom: 40px;
    border-radius: 0 4px 4px 0;
}

/* Specific Meta Styling */
.position, .meta-type, .meta-date {
    display: block;
    margin-bottom: 8px;
    font-size: 0.9rem;
    text-transform: uppercase;
}

.position { color: #0056b3; font-weight: 800; letter-spacing: 0.5px; }
.meta-date { color: #d32f2f; font-weight: 600; }

/* 7. Lists inside Details */
.facility-details ul, .programme-details ul {
    list-style-type: none;
    padding-left: 0;
}

.facility-details li, .programme-details li {
    padding: 10px 0;
    border-bottom: 1px solid #e0e0e0;
}

.facility-details li a, .programme-details li a {
    color: #003366;
    font-weight: 700;
    text-decoration: none;
}

/* 8. Document Areas */
.document-action, .notice-pdf, .speech-pdf, .press-addons {
    margin: 30px 0;
    text-align: center;
    padding: 20px;
    border: 1px dashed #ccc;
    background: #fafafa;
    border-radius: 8px;
}

/* ==========================================
   3. POST NAVIGATION STYLES (Text Style Polished)
   ========================================== */

/* Navigation Container */
.post-navigation {
    max-width: 900px;
    margin: 30px auto 0;
    padding: 0;
    display: block;
}

/* Links Container */
.post-navigation .nav-links {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
}

/* Navigation Links (Text-based) */
.nav-previous a,
.nav-next a {
    display: flex;
    align-items: center;          /* vertical centering */
    font-weight: 600;
    color: #003366;
    text-decoration: none;
    font-size: 1rem;
    line-height: 1.4;
    transition: color 0.3s ease;
}

/* Add arrows with spacing */
.nav-previous a::before {
    content: "«";                  /* left arrow */
    margin-right: 8px;
    font-weight: 900;
    color: #003366;
}

.nav-next a::after {
    content: "»";                  /* right arrow */
    margin-left: 8px;
    font-weight: 900;
    color: #003366;
}

/* Hover State */
.nav-previous a:hover,
.nav-next a:hover {
    color: #F84365;
    text-decoration: underline;
}

.nav-previous a:hover::before,
.nav-next a:hover::after {
    color: #F84365;
}

/* Optional: text alignment */
.nav-previous {
    text-align: left;
}

.nav-next {
    text-align: right;
}

/* Responsive - stack on small screens */
@media (max-width: 600px) {
    .post-navigation .nav-links {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }
    .nav-previous,
    .nav-next {
        text-align: center;
    }
    .nav-previous a::before,
    .nav-next a::after {
        margin: 0 5px;
    }
}



/* ==========================================
   4. EXECUTIVE FOOTER PADDING (Top/Bottom spacing fix)
   ========================================== */
.executive-footer {
    padding: 20px 0 20px 0;
    text-align: center;
    background-color: #f8f9fa;
    margin-bottom: 40px;
}

/* ==========================================
   SUB-HEADING STYLING (OG Gallery)
   ========================================== */
.og-gallery-heading {
    color: #003366;
    font-size: 2rem;
    font-weight: 700;
    margin-top: 40px;
    margin-bottom: 20px;
    text-align: left;
    border-bottom: 2px solid #eee;
    padding-bottom: 10px;
    padding-left: 10px;    
}

/* ==========================================
   FIX FOR EXECUTIVE IMAGE DISTORTION
   ========================================== */
.executive-image {
    max-width: 600px;
    margin: 0 auto;
}

/* ==========================================
   ADDENDUM STYLES
   ========================================== */
.addendum-thumbnail img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain !important;
    border-radius: 4px;
    margin-bottom: 30px;
    border: 1px solid #eaeaea;
}

.addendum-info {
    background-color: #f8f9fa;
    border-left: 4px solid #0056b3;
    padding: 25px 30px;
    margin-bottom: 40px;
    border-radius: 0 4px 4px 0;
}

.addendum-date-area {
    display: flex;
    align-items: center;
    margin-bottom: 8px;
}

.addendum-date-label {
    font-weight: bold;
    margin-right: 10px;
    color: #555;
    min-width: 90px;
}

.addendum-date-value {
    color: #333;
}

/* ==========================================
   NOTICE OF AWARD STYLES
   ========================================== */
.award-thumbnail img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain !important;
    border-radius: 4px;
    margin-bottom: 30px;
    border: 1px solid #eaeaea;
}

.award-info {
    background-color: #f8f9fa;
    border-left: 4px solid #0056b3;
    padding: 25px 30px;
    margin-bottom: 40px;
    border-radius: 0 4px 4px 0;
}

/* ==========================================
   REQUEST FOR PROPOSAL STYLES
   ========================================== */
.rfp-thumbnail img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain !important;
    border-radius: 4px;
    margin-bottom: 30px;
    border: 1px solid #eaeaea;
}

.rfp-info {
    background-color: #f8f9fa;
    border-left: 4px solid #0056b3;
    padding: 25px 30px;
    margin-bottom: 40px;
    border-radius: 0 4px 4px 0;
}

/* ==========================================
   TENDER STYLES
   ========================================== */
.tender-thumbnail img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain !important;
    border-radius: 4px;
    margin-bottom: 30px;
    border: 1px solid #eaeaea;
}

.tender-info {
    background-color: #f8f9fa;
    border-left: 4px solid #0056b3;
    padding: 25px 30px;
    margin-bottom: 40px;
    border-radius: 0 4px 4px 0;
}

.tender-status-area {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.tender-status-label {
    font-weight: bold;
    margin-right: 10px;
    color: #555;
    min-width: 90px;
}

.tender-status-value {
    text-transform: uppercase;
    font-weight: 700;
}

/* Lists inside Details for new types */
.addendum-info ul, .award-info ul, .rfp-info ul, .tender-info ul {
    list-style-type: none;
    padding-left: 0;
}

.addendum-info li, .award-info li, .rfp-info li, .tender-info li {
    padding: 10px 0;
    border-bottom: 1px solid #e0e0e0;
}

.addendum-info li a, .award-info li a, .rfp-info li a, .tender-info li a {
    color: #003366;
    font-weight: 700;
    text-decoration: none;
}


/* ==========================================
   5. RESPONSIVE DESIGN (Single & Nav)
   ========================================== */
@media (max-width: 900px) {
    body.single #primary.site-main {
        padding: 40px;
        margin: 0 20px;
    }
    h1.entry-title {
        font-size: 2.2rem;
    }
}

@media (max-width: 600px) {
    body.single #primary.site-main {
        padding: 25px;
        margin: 0;
        border-radius: 0;
        box-shadow: none;
    }
    h1.entry-title {
        font-size: 1.8rem;
        text-align: left;
    }
    .post-navigation {
        display: flex;
        flex-direction: column;
        margin: 20px auto 0;
        gap: 15px;
    }
    .post-navigation .nav-links {
        flex-direction: column;
        gap: 15px;
        padding: 0;
    }
    .nav-previous a,
    .nav-next a {
        width: 100%;
        padding: 15px 20px;
        text-align: center;
    }
    .nav-previous a span,
    .nav-next a span {
        font-size: 1.1rem !important;
    }
}