/* hotels-genoa.co.uk — wrapper styles. Warm Genoese palazzo look: terracotta + gold. */
:root { --hg-ink:#6b2f28; --hg-accent:#c9a24b; }

body { font-family:'Inter',system-ui,sans-serif; color:#2b2321; background:#fbf8f4; }
h1,h2,h3,h4,h5,.navbar-brand { font-family:'Playfair Display',Georgia,serif; }

a { color:#8a3f2f; }
a:hover { color:#6b2f28; }

.text-warning { color: var(--hg-accent) !important; }
.btn-warning { background-color: var(--hg-accent); border-color: var(--hg-accent); color:#3a2410; }
.btn-warning:hover { background-color:#b58f3f; border-color:#b58f3f; color:#231600; }
.btn-outline-dark { border-color:#6b2f28; color:#6b2f28; }
.btn-outline-dark:hover { background-color:#6b2f28; border-color:#6b2f28; }

.hg-skip-link {
  position:absolute; left:-999px; top:0; z-index:1100;
  background:#fff; padding:.5rem 1rem; border:2px solid var(--hg-ink);
}
.hg-skip-link:focus { left:0; }

.hg-disclosure-bar {
  background:#3d1b16; color:#e9ddd2;
}
.hg-disclosure-bar a { color:#f0d9a8; }

/* Legacy content normalisation for any inline archival snippets we quote. */
.legacy-content { line-height:1.7; }
.legacy-content img { max-width:100%; height:auto; border-radius:6px; }

.hg-hero {
  background: linear-gradient(135deg, #6b2f28 0%, #8a3f2f 100%);
  color:#fbf3e6;
  border-radius: 12px;
  padding: 2.5rem;
}
.hg-hero .lead { color:#f3e3cf; }

.hg-card-tile {
  display:block; text-decoration:none; color:inherit;
  border:1px solid #e7ddd0; border-radius:10px; background:#fff;
  transition: box-shadow .15s ease, transform .15s ease;
}
.hg-card-tile:hover { box-shadow:0 .5rem 1rem rgba(107,47,40,.12); transform:translateY(-2px); color:inherit; }

.hg-figure { margin:0 0 1.25rem; }
.hg-figure img { width:100%; height:auto; border-radius:8px; }
.hg-figure figcaption { font-size:.82rem; color:#7a6f66; margin-top:.35rem; }

.hg-fact-badge {
  display:inline-block; font-size:.72rem; text-transform:uppercase; letter-spacing:.04em;
  background:#f4e9d8; color:#6b2f28; border-radius:999px; padding:.2rem .6rem; margin-bottom:.5rem;
}

.hg-ad { margin:1.25rem 0; text-align:center; overflow:hidden; }

/* Never let an unfilled AdSense unit reserve blank space. */
ins.adsbygoogle[data-ad-status="unfilled"] { display: none !important; }
.hg-ad:empty { display: none; }

.gallery-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:1rem; }
.gallery-grid img { width:100%; height:180px; object-fit:cover; border-radius:8px; }
