/* ==========================================================
   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-video {
    width: 100%;
    display: block;
}

/* Video section */
.video-feature {
    border: 1px solid #b8b4a8;
    background: #000;
    margin-bottom: 15px;
}

.video-feature video {
    width: 100%;
    display: block;
}

.video-wrap {
    border: 1px solid #c8c4b8;
    background: #000;
    overflow: hidden;
}

.video-wrap video {
    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;
}


/* ==========================================================
   EDITORIAL ARTICLE PAGES — v2 content re-skinned for 2007
   (article-head, answer, article-body, figures, related)
   ========================================================== */

/* --- Article header --- */
.article-head {
    margin-bottom: 18px;
    padding: 15px;
    background: #ffffff;
    border: 1px solid #d5d0c5;
    overflow: hidden;
}
.article-head .text { }
.article-head .eyebrow {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #b8935e;
    margin-bottom: 6px;
}
.article-head h1,
h1.article-title {
    margin: 0 0 10px 0;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 24px;
    line-height: 1.2;
    color: #2d5a27;
    font-weight: bold;
}
.article-head .lede {
    margin: 0 0 12px 0;
    font-size: 12px;
    line-height: 1.7;
    color: #444;
    font-style: italic;
    text-align: left;
}
.meta-row {
    overflow: hidden;
    border-top: 1px solid #e8e4d9;
    padding-top: 10px;
}
.meta-row .item {
    display: inline-block;
    margin: 0 18px 6px 0;
    vertical-align: top;
}
.meta-row .k {
    display: block;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #888;
    font-weight: bold;
}
.meta-row .v {
    display: block;
    font-size: 12px;
    color: #2d5a27;
    font-weight: bold;
}
.mono {
    font-family: 'Courier New', Courier, monospace;
}

/* --- Figures --- */
.article-head figure,
.article-body figure,
.fig-bleed,
.fig-pair figure {
    margin: 12px 0;
    border: 1px solid #d5d0c5;
    background: #f8f7f2;
}
.article-head figure { margin: 12px 0 0 0; }
.img-wrap { overflow: hidden; background: #f0efe8; }
.img-wrap img { width: 100%; display: block; }
figcaption {
    padding: 4px 8px;
    font-size: 9px;
    color: #888;
    font-style: italic;
    background: #f8f7f2;
    line-height: 1.5;
}
figcaption .num {
    font-family: 'Courier New', Courier, monospace;
    font-weight: bold;
    color: #b8935e;
    margin-right: 6px;
    font-style: normal;
}
.fig-pair {
    overflow: hidden;
    margin: 12px 0;
}
.fig-pair figure {
    float: left;
    width: 48%;
    margin: 0;
}
.fig-pair figure:last-child { float: right; }

/* --- Tags --- */
nav.tags {
    margin-bottom: 18px;
    padding: 10px 15px;
    background: #fffff0;
    border: 1px solid #e8e4d9;
    line-height: 2;
}
nav.tags .label {
    font-size: 9px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #999;
    margin-right: 8px;
}
.tag {
    display: inline-block;
    padding: 1px 7px;
    margin: 0 3px 3px 0;
    font-size: 10px;
    color: #2d5a27;
    background: #f0efe8;
    border: 1px solid #d5d0c5;
    text-decoration: none;
}
.tag:hover {
    background: #2d5a27;
    color: #fff;
    text-decoration: none;
}

/* --- "Respuesta corta" answer callout --- */
section.answer {
    margin-bottom: 18px;
    padding: 12px 15px;
    background: #f4f8f2;
    border: 1px solid #c5d8bf;
    border-left: 4px solid #4a7e42;
}
section.answer .label {
    display: block;
    font-size: 9px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #4a7e42;
    margin-bottom: 5px;
}
section.answer p {
    margin: 0;
    font-size: 11px;
    line-height: 1.6;
    color: #333;
}

/* --- Article body --- */
.article-body {
    margin-bottom: 18px;
    padding: 15px;
    background: #ffffff;
    border: 1px solid #d5d0c5;
}
.article-body h2 {
    margin: 18px 0 4px 0;
    padding-bottom: 4px;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 17px;
    color: #2d5a27;
    font-weight: bold;
    border-bottom: 1px solid #d4a574;
}
.article-body h2:first-child { margin-top: 0; }
.article-body h3 {
    margin: 14px 0 4px 0;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 13px;
    color: #3a6e32;
}
.article-body p {
    margin: 0 0 10px 0;
    font-size: 11px;
    line-height: 1.7;
    color: #444;
    text-align: justify;
}
.article-body ul,
.article-body ol {
    margin: 0 0 12px 0;
    padding-left: 28px;
    font-size: 11px;
    line-height: 1.7;
    color: #444;
}
.article-body li { margin-bottom: 6px; }
.article-body ol.steps { counter-reset: none; }
.article-body a { color: #2d5a27; }
.article-body a:hover { color: #1a3a15; }

/* --- Data tables --- */
.table-scroll { overflow-x: auto; margin: 0 0 12px 0; }
table.data {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
}
table.data 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-align: left;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}
table.data td {
    padding: 5px 8px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
}
table.data tr:hover td { background: #f8f7f2; }
table.data a { color: #2d5a27; }

/* --- Byline --- */
.byline {
    margin-bottom: 18px;
    padding: 10px 15px;
    background: #f8f7f2;
    border: 1px solid #e8e4d9;
    font-size: 10px;
    color: #777;
    font-style: italic;
}
.byline .who { font-weight: bold; color: #2d5a27; font-style: normal; }

/* --- Related ("Seguir leyendo") --- */
aside.related {
    margin-bottom: 18px;
    padding: 15px;
    background: #ffffff;
    border: 1px solid #d5d0c5;
}
aside.related .section-head {
    overflow: hidden;
    margin-bottom: 10px;
    border-bottom: 1px solid #d4a574;
    padding-bottom: 4px;
}
aside.related .section-head h2 {
    float: left;
    margin: 0;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 16px;
    color: #2d5a27;
    font-weight: bold;
}
aside.related .counter {
    float: right;
    font-size: 9px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding-top: 6px;
}
.related-grid { overflow: hidden; }
a.related-card {
    display: block;
    float: left;
    width: 47%;
    margin: 0 2% 10px 0;
    padding: 8px 10px;
    background: #f8f7f2;
    border: 1px solid #d5d0c5;
    text-decoration: none;
}
a.related-card:hover {
    border-color: #2d5a27;
    background: #edeadf;
    text-decoration: none;
}
a.related-card .cluster {
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #b8935e;
    font-weight: bold;
    margin-bottom: 3px;
}
a.related-card .title {
    font-size: 11px;
    color: #2d5a27;
    line-height: 1.4;
    font-weight: bold;
}

/* clearfix for floated editorial blocks */
.fig-pair:after,
.related-grid:after,
.meta-row:after { content: ""; display: block; clear: both; }


/* ==========================================================
   LANDMARK + FAQ TEMPLATES — v2 content re-skinned for 2007
   (.hero, .about, .facts, .reviews, .faq, .fig-* variants)
   ========================================================== */

/* generalized small bits shared across templates */
.eyebrow {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #b8935e;
    margin-bottom: 6px;
}
.lede {
    font-size: 12px;
    line-height: 1.7;
    color: #444;
    font-style: italic;
}

/* --- Hero header --- */
header.hero {
    margin-bottom: 18px;
    padding: 15px;
    background: #ffffff;
    border: 1px solid #d5d0c5;
    overflow: hidden;
}
header.hero .hero-text h1,
header.hero h1 {
    margin: 0 0 10px 0;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 24px;
    line-height: 1.2;
    color: #2d5a27;
    font-weight: bold;
}
.fig-hero { margin: 12px 0 0 0; }

/* --- Generic section blocks --- */
section.about,
section.facts,
section.map-section,
section.reviews-section,
section.faq-section,
.faq-cat-block,
.faq-main {
    margin-bottom: 18px;
    padding: 15px;
    background: #ffffff;
    border: 1px solid #d5d0c5;
}
section.about p,
.faq-main p {
    margin: 0 0 10px 0;
    font-size: 11px;
    line-height: 1.7;
    color: #444;
    text-align: justify;
}
section.about h2,
section.about h3 {
    font-family: Georgia, 'Times New Roman', Times, serif;
    color: #2d5a27;
}

/* --- Section heads (general) --- */
.section-head {
    overflow: hidden;
    margin-bottom: 10px;
    border-bottom: 1px solid #d4a574;
    padding-bottom: 4px;
}
.section-head h2 {
    float: left;
    margin: 0;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 16px;
    color: #2d5a27;
    font-weight: bold;
}
.section-head .right,
.section-head .counter {
    float: right;
    font-size: 9px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding-top: 6px;
}
.section-head:after { content: ""; display: block; clear: both; }

/* --- Facts grid --- */
section.facts { overflow: hidden; }
.fact {
    float: left;
    width: 46%;
    margin: 0 2% 10px 0;
    padding: 8px 10px;
    background: #f8f7f2;
    border: 1px solid #d5d0c5;
}
.fact .k {
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #888;
    font-weight: bold;
    margin-bottom: 2px;
}
.fact .v {
    font-size: 12px;
    color: #2d5a27;
    font-weight: bold;
    line-height: 1.4;
}
.fact .v.big { font-size: 16px; }
section.facts:after { content: ""; display: block; clear: both; }

/* --- Figure variants --- */
.fig-hero, .fig-bleed, .fig-triple figure, .fig-triple .img-wrap {
    border: 1px solid #d5d0c5;
    background: #f8f7f2;
    margin: 0 0 12px 0;
}
.fig-triple { overflow: hidden; margin: 12px 0; }
.fig-triple .left { float: left; width: 49%; margin: 0; }
.fig-triple .right { float: right; width: 49%; }
.fig-triple .right .img-wrap { margin-bottom: 8px; }
.fig-triple:after { content: ""; display: block; clear: both; }
.map-wrap, .map-section iframe { width: 100%; border: 1px solid #d5d0c5; }

/* --- Reviews --- */
.reviews { overflow: hidden; }
.review {
    margin-bottom: 10px;
    padding: 8px 10px;
    background: #f8f7f2;
    border: 1px solid #d5d0c5;
    font-size: 11px;
    line-height: 1.5;
    color: #444;
}
.review .name { font-weight: bold; color: #2d5a27; }
.review .stars { color: #d4a574; font-weight: bold; }
.review .quote { font-style: italic; }

/* --- FAQ --- */
.faq, .faq-list { }
.qa {
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px dotted #d5d0c5;
}
.qa .q {
    margin: 0 0 4px 0;
    font-weight: bold;
    font-size: 12px;
    color: #2d5a27;
}
.qa .ans {
    margin: 0;
    font-size: 11px;
    line-height: 1.6;
    color: #444;
    text-align: justify;
}
.faq-cat {
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 15px;
    color: #2d5a27;
    border-bottom: 1px solid #d4a574;
    padding-bottom: 4px;
    margin: 0 0 10px 0;
}
.faq-hero, .faq-dek { margin-bottom: 12px; }
.faq-dek { font-size: 12px; color: #555; font-style: italic; }

/* hide leftover interactive shells that have no place in the 2007 layout */
.progress, .lightbox { display: none; }
