/* ---------- homepage-only components ---------- */

/* compact text-only tiles for secondary regions */
.tile--compact {
  min-height: 176px;
  background: var(--paper);
  border: 1px solid var(--stone);
  transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.tile--compact::after { display: none; }
.tile--compact .tile-copy { min-height: 176px; padding: 22px 24px; }
.tile--compact .tile-copy h3 { color: var(--ink); font-size: 1.22rem; }
.tile--compact .tile-copy p { color: var(--ink-soft); }
.tile--compact .eyebrow { color: var(--clay); margin-bottom: .5em; }
.tile--compact:hover { transform: translateY(-3px); box-shadow: var(--shadow-m); border-color: var(--sand-deep); }
.tile--compact:hover h3 { color: var(--pine); }

/* text cards for traveller types */
.mini-card {
  background: var(--paper);
  border: 1px solid var(--stone);
  border-radius: var(--radius);
  padding: 26px 26px 22px;
  display: flex;
  flex-direction: column;
  transition: transform .2s ease, box-shadow .2s ease;
}
.mini-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-m); }
.mini-card h3 { margin-bottom: .4em; }
.mini-card h3 a { color: var(--ink); text-decoration: none; }
.mini-card h3 a:hover { color: var(--pine); }
.mini-card p { font-size: .94rem; color: var(--ink-soft); }
.mini-card .card-meta {
  border-top: 1px solid var(--stone);
  margin-top: auto;
  padding-top: 14px;
  color: var(--ink-mute);
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

/* seasonal row */
.season-card {
  background: var(--paper);
  border: 1px solid var(--stone);
  border-top: 2px solid var(--pine);
  border-radius: var(--radius-s);
  padding: 22px 22px 24px;
}
.season-card h3 { font-size: 1.2rem; margin-bottom: .35em; }
.season-card p { color: var(--ink-soft); }

/* bordered feature panel used instead of a photo */
.panel,
.info-panel {
  background: var(--paper);
  border: 1px solid var(--stone);
  border-radius: var(--radius-l);
  padding: 30px 30px 32px;
  box-shadow: var(--shadow-s);
}
.info-panel { background: var(--sand); }
.panel .eyebrow, .info-panel .eyebrow { margin-bottom: .6em; }
.panel-big {
  font-family: var(--serif);
  font-size: 1.6rem;
  line-height: 1.25;
  color: var(--pine-dark);
  margin: 0 0 18px;
}
.tick-list { list-style: none; padding: 0; margin: 0; }
.tick-list li {
  position: relative;
  padding-left: 26px;
  margin-bottom: 10px;
  font-size: .93rem;
  color: var(--ink-soft);
}
.tick-list li::before {
  content: "";
  position: absolute;
  left: 0; top: .5em;
  width: 11px; height: 6px;
  border-left: 1.6px solid var(--pine);
  border-bottom: 1.6px solid var(--pine);
  transform: rotate(-45deg);
}

@media (max-width: 860px) {
  .panel, .info-panel { padding: 24px 22px 26px; }
  .panel-big { font-size: 1.4rem; }
}
