/* ==========================================================
   Parque Lincoln — 2007 Web Design
   Designed for IE7 / Firefox 2.0 at 1024x768
   ========================================================== */

body {
    margin: 0;
    padding: 0;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-size: 11px;
    color: #333333;
    background: #e8e4d9 url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAHklEQVQI12NggIL/DAwMDAzIAIkHBiQ+mI2sAAkAAIoHBf9hHGsAAAAASUVORK5CYII=') repeat;
    line-height: 1.5;
}

a { color: #2d5a27; }
a:hover { color: #1a3a15; text-decoration: underline; }
a:visited { color: #4a6e44; }

img { border: 0; }

/* WRAPPER */
#wrapper {
    width: 960px;
    margin: 0 auto;
    background: #ffffff;
    border-left: 1px solid #b8b4a8;
    border-right: 1px solid #b8b4a8;
    border-bottom: 1px solid #b8b4a8;
}

/* TOP BANNER */
#topbanner {
    background: #2d5a27;
    background: -moz-linear-gradient(top, #3a7232 0%, #2d5a27 50%, #1e4a1a 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3a7232), color-stop(50%, #2d5a27), color-stop(100%, #1e4a1a));
    border-bottom: 3px solid #d4a574;
    padding: 0;
}

#topbanner-inner {
    padding: 18px 20px 14px 20px;
    overflow: hidden;
}

#logo {
    float: left;
}

#logo h1 {
    margin: 0;
    padding: 0;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 1px;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
}

#logo h1 a {
    color: #ffffff;
    text-decoration: none;
}

#logo h1 a:hover {
    color: #d4a574;
    text-decoration: none;
}

#logo .tagline {
    display: block;
    color: #a8d4a0;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    font-style: italic;
    letter-spacing: 0.5px;
    margin-top: 2px;
}

#search {
    float: right;
    padding-top: 10px;
}

.search-input {
    width: 160px;
    padding: 3px 5px;
    font-size: 11px;
    border: 1px solid #999;
    color: #999;
    font-family: Verdana, Geneva, sans-serif;
}

.search-btn {
    padding: 3px 10px;
    font-size: 10px;
    font-family: Verdana, Geneva, sans-serif;
    background: #d4a574;
    background: -moz-linear-gradient(top, #e0b888 0%, #d4a574 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#e0b888), to(#d4a574));
    border: 1px solid #b8935e;
    color: #3a2510;
    cursor: pointer;
    font-weight: bold;
}

.search-btn:hover {
    background: #e0b888;
}

/* NAVIGATION BAR */
#navbar {
    background: #3a3a3a;
    background: -moz-linear-gradient(top, #505050 0%, #3a3a3a 50%, #2a2a2a 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#505050), color-stop(0.5, #3a3a3a), to(#2a2a2a));
    border-bottom: 1px solid #1a1a1a;
    border-top: 1px solid #666;
}

#navbar-inner {
    padding: 0 10px;
}

#navbar ul {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

#navbar ul li {
    float: left;
}

#navbar ul li a {
    display: block;
    padding: 8px 16px;
    color: #cccccc;
    text-decoration: none;
    font-size: 11px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-right: 1px solid #4a4a4a;
    border-left: 1px solid #555;
}

#navbar ul li a:hover,
#navbar ul li.active a {
    color: #ffffff;
    background: #2d5a27;
    background: -moz-linear-gradient(top, #3a7232 0%, #2d5a27 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#3a7232), to(#2d5a27));
}

/* CONTENT WRAPPER */
#content-wrapper {
    overflow: hidden;
    padding: 15px;
}

/* LEFT SIDEBAR */
#sidebar-left {
    float: left;
    width: 200px;
}

.sidebar-box {
    margin-bottom: 12px;
    border: 1px solid #ccc8bc;
    background: #f8f7f2;
}

.sidebar-box h3 {
    margin: 0;
    padding: 6px 10px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 13px;
    color: #ffffff;
    background: #4a7e42;
    background: -moz-linear-gradient(top, #5a9050 0%, #4a7e42 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#5a9050), to(#4a7e42));
    border-bottom: 1px solid #3a6e32;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}

.sidebar-links {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sidebar-links li {
    border-bottom: 1px dotted #d5d0c5;
}

.sidebar-links li:last-child {
    border-bottom: none;
}

.sidebar-links li a {
    display: block;
    padding: 5px 10px;
    font-size: 11px;
    color: #2d5a27;
    text-decoration: none;
}

.sidebar-links li a:hover {
    background: #edeadf;
    color: #1a3a15;
    text-decoration: none;
}

.sidebar-links li a:before {
    content: "\00BB  ";
    color: #8fbc8f;
}

/* Info table in sidebar */
.info-table {
    width: 100%;
    border-collapse: collapse;
}

.info-table td {
    padding: 4px 10px;
    font-size: 11px;
    border-bottom: 1px dotted #d5d0c5;
}

.info-table td.label {
    font-weight: bold;
    color: #555;
    width: 50%;
}

.info-table td.value {
    color: #2d5a27;
    font-weight: bold;
}

/* MAIN CONTENT */
#main-content {
    margin-left: 215px;
}

/* Hero image */
#hero-image {
    margin-bottom: 15px;
    border: 1px solid #b8b4a8;
    background: #000;
}

#hero-image img {
    display: block;
}

.hero-caption {
    padding: 4px 8px;
    font-size: 10px;
    color: #999;
    background: #1a1a1a;
    font-style: italic;
}

/* Content boxes */
.content-box {
    margin-bottom: 18px;
    padding: 15px;
    background: #ffffff;
    border: 1px solid #d5d0c5;
}

.content-box h2 {
    margin: 0 0 4px 0;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 18px;
    color: #2d5a27;
    font-weight: bold;
}

.hr-fancy hr {
    border: none;
    height: 1px;
    background: #d4a574;
    margin: 0 0 12px 0;
}

.content-box p {
    margin: 0 0 10px 0;
    font-size: 11px;
    line-height: 1.6;
    color: #444;
    text-align: justify;
}

/* Features list */
.features-list {
    overflow: hidden;
}

.features-list table {
    width: 100%;
    border-collapse: collapse;
}

.feature-row td {
    padding: 6px 8px;
    font-size: 11px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
}

.feature-row td.feature-icon {
    width: 20px;
    color: #2d5a27;
    font-weight: bold;
    text-align: center;
}

.feature-row:hover td {
    background: #f8f7f2;
}

/* Gallery table */
.gallery-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.gallery-table td {
    width: 33.33%;
    padding: 4px;
    vertical-align: top;
}

.gallery-table .img-wrap {
    width: 100%;
    height: 140px;
    overflow: hidden;
    border: 2px solid #d5d0c5;
    background: #f0efe8;
}

.gallery-table .img-wrap:hover {
    border-color: #2d5a27;
}

.gallery-table img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.gallery-table .caption {
    font-size: 9px;
    color: #888;
    text-align: center;
    padding-top: 2px;
    font-style: italic;
}

/* Visit table */
.visit-table {
    border-collapse: collapse;
}

.visit-table tr td {
    padding: 8px;
    font-size: 11px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
}

.visit-table tr td:first-child {
    font-weight: bold;
    color: #555;
    width: 140px;
    background: #f8f7f2;
}

/* Map */
.map-container {
    border: 2px solid #d5d0c5;
}

/* FOOTER */
#footer {
    background: #2d2d2d;
    background: -moz-linear-gradient(top, #3a3a3a 0%, #2d2d2d 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#3a3a3a), to(#2d2d2d));
    border-top: 3px solid #d4a574;
    padding: 0;
    clear: both;
}

#footer-inner {
    padding: 18px 20px 14px 20px;
}

#footer p {
    margin: 0 0 4px 0;
    color: #aaa;
    font-size: 10px;
}

.footer-left {
    padding-right: 20px;
}

.footer-title {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 14px;
    color: #d4a574;
    font-weight: bold;
    margin: 0 0 6px 0;
    letter-spacing: 0.5px;
}

.footer-desc {
    color: #999;
    font-size: 10px;
    line-height: 1.6;
    margin: 0 0 8px 0;
    text-align: left;
}

.footer-copy {
    color: #aaa;
    font-size: 10px;
    margin: 0 0 3px 0;
}

.footer-compat {
    color: #666;
    font-size: 9px;
    margin: 0;
}

.footer-right {
    text-align: right;
    padding-left: 15px;
    border-left: 1px solid #444;
}

.footer-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    margin-bottom: 10px;
}

.badge {
    display: flex;
    align-items: center;
    gap: 5px;
    background: rgba(255,255,255,0.04);
    border: 1px solid #444;
    padding: 4px 7px;
    border-radius: 2px;
}

.badge:hover {
    border-color: #d4a574;
    background: rgba(212,165,116,0.08);
}

.badge-icon {
    flex-shrink: 0;
}

.badge-text {
    font-size: 8px;
    color: #999;
    line-height: 1.3;
    text-align: left;
    white-space: nowrap;
}

.footer-counter {
    font-size: 9px;
    color: #666;
    text-align: right;
    margin: 6px 0 0 0;
}

.footer-counter img {
    vertical-align: middle;
    margin-right: 4px;
}

.footer-right-heading {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 12px;
    color: #d4a574;
    font-weight: bold;
    margin: 0 0 6px 0;
}

.footer-right-link {
    margin: 0 0 3px 0;
    font-size: 10px;
}

.footer-right-link a {
    color: #8fbc8f;
    text-decoration: none;
}

.footer-right-link a:hover {
    color: #d4a574;
    text-decoration: underline;
}

.footer-right-addr {
    margin: 8px 0;
    font-size: 9px;
    color: #777;
    line-height: 1.5;
}

/* SCROLLBAR COLORS (IE only lol) */
html {
    scrollbar-face-color: #d4a574;
    scrollbar-track-color: #f0efe8;
    scrollbar-arrow-color: #2d5a27;
    scrollbar-shadow-color: #b8935e;
}

/* LINK STYLES */
a:link { color: #2d5a27; }
a:active { color: #d4a574; }

/* MARQUEE-STYLE ANNOUNCEMENT BAR */
#announcement {
    background: #fffff0;
    border-bottom: 1px solid #e8e4d9;
    padding: 4px 20px;
    font-size: 10px;
    color: #666;
}

#announcement strong {
    color: #c44;
}

/* "NEW" blink badge */
.badge-new {
    color: #cc0000;
    font-weight: bold;
    font-size: 9px;
    text-transform: uppercase;
}

/* Breadcrumb */
.breadcrumb {
    font-size: 10px;
    color: #999;
    padding: 6px 0;
    margin-bottom: 8px;
}

.breadcrumb a {
    color: #2d5a27;
    font-size: 10px;
}


/* ========================================
   HERO SECTION - PHOTO + ARCHITECTURAL PLAN
   ======================================== */
#hero-section {
    margin-bottom: 15px;
    border: 1px solid #b8b4a8;
    background: #000;
}

.hero-photo {
    overflow: hidden;
}

.hero-photo img {
    width: 100%;
    display: block;
}

.hero-plan {
    overflow: hidden;
    border-top: 2px solid #d4a574;
    background: #f0efe8;
}

.hero-plan img {
    width: 100%;
    display: block;
}

.hero-caption {
    padding: 5px 10px;
    font-size: 10px;
    color: #999;
    background: #1a1a1a;
    font-style: italic;
    letter-spacing: 0.3px;
}

/* ========================================
   PLACE CARD GRID
   ======================================== */
.card-grid {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.card-grid td {
    width: 25%;
    padding: 5px;
    vertical-align: top;
}

a.place-card {
    display: block;
    text-decoration: none;
    border: 1px solid #d5d0c5;
    background: #fff;
    overflow: hidden;
}

a.place-card:hover {
    border-color: #2d5a27;
    text-decoration: none;
}

.card-img {
    width: 100%;
    height: 110px;
    overflow: hidden;
    background: #f0efe8;
}

.card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.card-img .no-img {
    width: 100%;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-family: Georgia, serif;
    font-size: 24px;
    color: #b8b4a8;
    background: #f0efe8;
    background: -moz-linear-gradient(top, #f5f4ef 0%, #e8e5da 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#f5f4ef), to(#e8e5da));
}

.card-info {
    padding: 5px 6px 6px 6px;
    border-top: 1px solid #eee;
}

.card-name {
    font-size: 10px;
    font-weight: bold;
    color: #333;
    line-height: 1.3;
    max-height: 26px;
    overflow: hidden;
}

a.place-card:hover .card-name {
    color: #2d5a27;
}

.card-rating {
    display: block;
    font-size: 9px;
    color: #d4a574;
    font-weight: bold;
    margin-top: 2px;
}

.card-reviews {
    display: block;
    font-size: 9px;
    color: #999;
    margin-top: 1px;
}

/* Data tables (fallback for sections without images) */
.data-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
}

.data-table th,
.data-table td {
    padding: 5px 8px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
    text-align: left;
}

.data-table .table-header th {
    background: #4a7e42;
    background: -moz-linear-gradient(top, #5a9050 0%, #4a7e42 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#5a9050), to(#4a7e42));
    color: #fff;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: bold;
    padding: 6px 8px;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}

.data-table tr:hover td {
    background: #f8f7f2;
}

.data-table a {
    color: #2d5a27;
}

.data-table .rating-cell,
.data-table .review-cell {
    text-align: center;
    white-space: nowrap;
    font-size: 10px;
}
