/*
Theme Name: Bromo Ijen Explore — Fresh Edition
Theme URI: https://bromoijenexplore.com
Author: Bromo Ijen Explore
Author URI: https://bromoijenexplore.com
Description: A fresh, modern WordPress theme for Bromo Ijen Explore travel agency. Features glass-morphism cards, warm earth-tone palette (burnt orange + ocean blue), Manrope & Plus Jakarta Sans typography, rounded pill buttons, search bar hero, and full tour package CPT support.
Version: 3.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bromo-ijen-explore
Tags: one-column, custom-menu, featured-images, custom-logo, custom-background, theme-options, translation-ready
*/

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; }

.glass-card {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.5);
}
.soft-shadow {
    box-shadow: 0 4px 20px -2px rgba(0, 97, 163, 0.1);
}
.fade-in-up {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}
.fade-in-up.visible {
    opacity: 1;
    transform: translateY(0);
}
.mobile-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.mobile-menu.open {
    max-height: 500px;
}
@keyframes countUp {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}
.animate-count { animation: countUp 0.5s ease-out forwards; }
.gallery-item { overflow: hidden; border-radius: 0.75rem; }
.gallery-item img { transition: transform 0.5s ease; }
.gallery-item:hover img { transform: scale(1.05); }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #faf8fe; }
::-webkit-scrollbar-thumb { background: #e1bfb3; border-radius: 9999px; }
::-webkit-scrollbar-thumb:hover { background: #8d7166; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignleft   { float: left; margin-right: 1.5em; }
.alignright  { float: right; margin-left: 1.5em; }
.wp-caption  { max-width: 100%; }
.wp-caption-text { font-size: 0.875rem; color: #594138; text-align: center; margin-top: 0.5rem; }
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4 {
    font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 700;
    color: #1a1b1f; margin-top: 1.6em; margin-bottom: 0.5em;
}
.entry-content p { margin-bottom: 1.2em; line-height: 1.7; }
.entry-content a { color: #a63b00; text-decoration: underline; text-underline-offset: 2px; }
.entry-content a:hover { color: #f26522; }
.entry-content img { max-width: 100%; height: auto; border-radius: 0.75rem; }
.entry-content ul, .entry-content ol { padding-left: 1.5em; margin-bottom: 1.2em; }
.entry-content li { margin-bottom: 0.3em; line-height: 1.7; color: #594138; }
.entry-content blockquote {
    border-left: 4px solid #f26522; padding: 1em 1.5em; margin: 1.5em 0;
    background: #f4f3f8; border-radius: 0 0.75rem 0.75rem 0;
    font-style: italic; color: #594138;
}
.comment-list { list-style: none; padding: 0; }
.comment-list li { margin-bottom: 1.5em; padding-bottom: 1.5em; border-bottom: 1px solid #e1bfb3; }
.comment-author { font-weight: 600; color: #1a1b1f; }
.comment-meta { font-size: 0.8rem; color: #8d7166; margin-bottom: 0.5em; }
.nav-links { display: flex; gap: 0.5rem; justify-content: center; margin-top: 2.5rem; }
.nav-links a, .nav-links span {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 40px; height: 40px; padding: 0 0.75rem;
    border: 1px solid #e1bfb3; border-radius: 9999px;
    font-size: 0.875rem; font-weight: 600; text-decoration: none;
    color: #1a1b1f; background: #ffffff; transition: all 0.2s ease;
}
.nav-links a:hover { background: #f26522; color: #ffffff; border-color: #f26522; }
.nav-links .current { background: #a63b00; color: #ffffff; border-color: #a63b00; }