/**
 * @file
 * Subtheme specific CSS.
 */

/* Fix for the Directory View Headers */
h6 a, .btn a  {
    font-family: 'Roboto Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.btn-primary a  {
    color: white;
}

/* Styling the View rows as Cards */
.view-directory-teaser .views-row {
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    margin-bottom: 20px;
    padding: 15px;
    transition: transform 0.3s ease;
    border: 1px solid #eee;
}

.view-directory-teaser .views-row:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.15);
}

/* Ensure images are responsive and rounded at the top */
.view-directory-teaser img {
    border-radius: 4px;
    width: 90%;
    height: auto;
    margin-bottom: 10px;
}

/* Forces titles to a maximum of 2 lines and keeps heights consistent */
.view-directory-teaser .views-field-title h6, 
.view-directory-teaser .views-field-title a {
    display: -webkit-box;
    -webkit-line-clamp: 2; /* You can change this to 1 if you want strictly one line */
    -webkit-box-orient: vertical;  
    overflow: hidden;
    min-height: 3em; /* Adjust this to match your font size (2 lines worth of height) */
    line-height: 1.5em;
}

/* Force Navbar links to be dark/gray on the white background */
#navbar-main .nav-link {
    color: #333333 !important; /* Adjust to your preferred dark gray/black */
    font-weight: 500;
}

/* Change color on hover */
#navbar-main .nav-link:hover,
#navbar-main .nav-link.active {
    color: #d32f2f !important; /* Your brand red or a darker shade */
}

/* If you have a dropdown toggle, target that too */
#navbar-main .dropdown-toggle {
    color: #333333 !important;
}

/* Container styling for the Blogs Block */
#block-pampangatravel-views-block-blogs-block-1 {
    padding: 40px 0;
    background-color: #f8f9fa; /* Light grey section background to separate from white content */
}

/* Title of the Block */
#block-pampangatravel-views-block-blogs-block-1 h2 {
    text-align: center;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 30px;
    letter-spacing: 1px;
}

/* The Grid Wrapper */
#block-pampangatravel-views-block-blogs-block-1 .view-content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
}

/* The Individual Blog Card */
#block-pampangatravel-views-block-blogs-block-1 .views-row {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    display: flex;
    flex-direction: column;
    border: none;
}

#block-pampangatravel-views-block-blogs-block-1 .views-row:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

/* Image Styling */
#block-pampangatravel-views-block-blogs-block-1 .views-field-field-image img {
    width: 100%;
    height: 200px; /* Fixed height for alignment */
    object-fit: cover; /* Prevents stretching */
    transition: transform 0.5s ease;
}

#block-pampangatravel-views-block-blogs-block-1 .views-row:hover img {
    transform: scale(1.05);
}

/* Blog Title Styling */
#block-pampangatravel-views-block-blogs-block-1 .views-field-title a {
    display: block;
    padding: 15px 20px 5px 20px;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.25rem;
    color: #222;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.3;
}

/* "Read More" or Summary Styling */
#block-pampangatravel-views-block-blogs-block-1 .views-field-body {
    padding: 0 20px 20px 20px;
    font-size: 0.95rem;
    color: #666;
    line-height: 1.6;
}

@media (min-width: 768px) {
    .border-md-end {
        border-right: 2px solid #dee2e6 !important;
    }
}
.roadmap-container h4 {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
}

/* Float node images to the left on screens larger than 560px */
@media (min-width: 560px) {
    .node .field--type-image {
        float: none;
        margin: 0 1.5em 1em 0; /* Added a bit of bottom margin for better text wrap */
    }
}

/* Clearfix to prevent layout collapse */
.node::after {
    content: "";
    clear: both;
    display: table;
}


/* Category Hub Styling */
.category-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background: #ffffff;
    padding: 30px 15px;
    border-radius: 12px;
    border: 1px solid #eee;
    height: 100%;
    transition: all 0.3s ease;
}

.category-card:hover {
    transform: translateY(-10px);
    border-color: #000; /* Sophisticated black border on hover */
    box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important;
}

/* Specific highlight for high-revenue Medical card */
.category-card.highlight {
    background: #f0f7ff;
    border: 1px solid #d0e7ff;
}

.category-card .icon-box {
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 15px;
}

.category-card h4 {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #000;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.category-card p {
    font-size: 0.85rem;
    color: #666;
    line-height: 1.4;
    margin-bottom: 0;
}


/* Top Bar Styles */
#navbar-top {
    background-color: #000000;
    min-height: 35px;
    font-size: 0.85rem; /* Smaller font for utility links */
}

#navbar-top .nav-link {
    color: #cccccc !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

#navbar-top .nav-link:hover {
    color: #ffffff !important;
}

/* Main Nav Styles */
#navbar-main {
    background-color: #ffffff;
    border-bottom: 1px solid #eeeeee; /* Subtle shadow or border to separate from content */
    padding: 15px 0;
}

#navbar-main .nav-link {
    font-weight: 600;
    color: #222222 !important;
}

.balikbayan-guide h1 {
    font-family: 'Roboto Condensed', sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.balikbayan-guide .card:hover {
    background-color: #ffffff !important;
    border: 1px solid #ffc107 !important; /* Yellow accent */
    transition: 0.3s;
}

/* Make the guide look good on mobile */
@media (max-width: 768px) {
    .balikbayan-guide h1 {
        font-size: 2rem;
    }
}

/* 1. THE GLOBAL HERO BACKGROUND */
/* This targets the specific hero container structure we used across the site */
.container > .text-center.text-white.p-5.mb-5.rounded.shadow-lg {
    /* Replace the URL below with your actual uploaded global background file */
    background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.7)), 
                url('/sites/default/files/pampanga-travel-hero.jpg') no-repeat center/cover !important;
    min-height: 400px !important;
    position: relative;
    border-bottom: 5px solid #ffc107 !important; /* Forces the signature yellow border */
}

/* 2. HIDE THE EMOJIS */
/* This targets the large emoji divs in the Hero sections */
.text-center.text-white.p-5.mb-5 .mb-3[style*="font-size: 4rem;"],
.text-center.text-white.p-5.mb-5 .mb-3[style*="font-size: 3rem;"],
.text-center.text-white.p-5.mb-5 .mb-3[style*="font-size: 2.5rem;"] {
    display: none !important;
}

/* This targets emojis inside the Activity Hub grid cards */
.rounded-4 .text-center[style*="font-size:3rem;"] a,
.rounded-4 .text-center[style*="font-size:3rem;"],
.rounded .mb3 [style*="font-size:4rem;"],
#block-pampangatravel-mainpagecontent > div > article > div > div.clearfix.text-formatted.field.field--name-body.field--type-text-with-summary.field--label-hidden.field__item > div > div.text-center.text-white.p-5.mb-5.rounded.shadow-lg > div  {
    display: none !important;
}

/* Optional: If you used emojis directly in H1 tags, this hides them */
h1.display-3 span, 
h1.display-4 span {
    display: none !important;
}

/* Target the H1 inside the Hero container specifically */
#block-pampangatravel-mainpagecontent .text-center.text-white.p-5.mb-5.rounded.shadow-lg h1 {
    color: #FFFFF0 !important;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Optional: adds a soft shadow to help readability against the background */
    font-weight: 700;
}

/* 1. THE MAIN CONTAINER - We set the stage here */
#block-pampangatravel-mainpagecontent .container > .text-center.text-white.p-5.mb-5.rounded.shadow-lg {
    position: relative;
    overflow: hidden; /* Important: keeps the blur inside the rounded corners */
    min-height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: #2c3e50; /* Fallback color */
    border-bottom: 5px solid #ffc107 !important;
    z-index: 1;
}

/* 2. THE BLUR LAYER - This targets the background specifically */
#block-pampangatravel-mainpagecontent .container > .text-center.text-white.p-5.mb-5.rounded.shadow-lg::before {
    content: "";
    position: absolute;
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
    /* Update this URL to your global background image */
    background-image: url('/sites/default/files/pampanga-travel-hero.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    
    /* THE ATMOSPHERIC EFFECT */
    filter: blur(6px) brightness(0.6); /* Adjust 6px for blur level and 0.6 for darkness */
    transform: scale(1.1); /* Prevents white "ghost" edges caused by the blur */
    z-index: -1; /* Pushes the image behind the text */
}

/* 3. THE TEXT CONTENT - Forcing Ivory color and Sharpness */
#block-pampangatravel-mainpagecontent .container > .text-center.text-white.p-5.mb-5.rounded.shadow-lg h1 {
    color: #FFFFF0 !important; /* Ivory */
    text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7); /* Deep shadow for better "Authority" look */
    font-weight: 700;
    position: relative;
    z-index: 2;
}

#block-pampangatravel-mainpagecontent .container > .text-center.text-white.p-5.mb-5.rounded.shadow-lg p.lead {
    color: #FFFFF0 !important;
    font-size: 1.25rem;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 2;
}

.bg-dark h2 { color: ivory }