/*
Theme Name: Travel On Stay
Theme URI: https://www.travelonstay.com/
Description: Editorial child theme for Travel On Stay, with a compact header, excerpted guides, and policy-first footer.
Author: Travel On Stay
Template: twentytwentyfive
Version: 1.0.0
Text Domain: travelonstay
*/

:root {
  --tos-ink: #1c1917;
  --tos-muted: #57534e;
  --tos-paper: #f6f1e8;
  --tos-card: #fffdf8;
  --tos-forest: #16302b;
  --tos-forest-2: #0f241f;
  --tos-accent: #b45309;
  --tos-line: #e7e0d4;
}

html, body {
  background: var(--tos-paper);
  color: var(--tos-ink);
}

body {
  font-size: 1.05rem;
}

a {
  color: var(--tos-accent);
}

.tos-site-header {
  background: var(--tos-forest);
  color: var(--tos-paper);
  margin: 0 !important;
  max-width: none !important;
  padding: 18px 24px;
}

.tos-site-header a,
.tos-site-header .wp-block-site-title a,
.tos-site-header .wp-block-navigation-item__content {
  color: var(--tos-paper) !important;
  text-decoration: none;
}

.tos-site-header .wp-block-site-title {
  font-size: 1.35rem;
  font-weight: 650;
  letter-spacing: 0.01em;
  margin: 0;
}

.tos-site-header .wp-block-site-tagline {
  color: #d6d3d1;
  font-size: 0.88rem;
  margin: 2px 0 0;
}

.tos-header-inner {
  max-width: 1080px;
  margin: 0 auto;
  width: 100%;
}

.tos-site-header .wp-block-navigation {
  gap: 4px 18px;
}

.tos-intro {
  max-width: 720px;
  margin: 0 auto;
  padding: 36px 24px 8px;
}

.tos-intro h1 {
  font-size: 2rem;
  line-height: 1.2;
  margin: 0 0 12px;
}

.tos-intro p {
  color: var(--tos-muted);
  margin: 0 0 10px;
}

.wp-block-query .wp-block-post-template .wp-block-group {
  background: var(--tos-card);
  border: 1px solid var(--tos-line);
  border-radius: 10px;
  margin: 0 auto 28px;
  max-width: 720px;
  padding: 22px !important;
}

.wp-block-post-title {
  font-size: 1.7rem;
  line-height: 1.25;
}

.wp-block-post-excerpt p,
.wp-block-post-date {
  color: var(--tos-muted);
}

.tos-disclosure {
  background: #faf6ee;
  border-left: 3px solid var(--tos-accent);
  color: var(--tos-muted);
  font-size: 0.92rem;
  line-height: 1.55;
  margin: 16px 0 28px;
  padding: 12px 14px;
}

.tos-site-footer {
  background: var(--tos-forest-2);
  color: #e7e5e4;
  margin: 48px 0 0 !important;
  max-width: none !important;
  padding: 36px 24px 28px;
}

.tos-site-footer a {
  color: #fde68a;
}

.tos-footer-inner {
  max-width: 1080px;
  margin: 0 auto;
}

.tos-footer-copy {
  max-width: 640px;
  margin: 0 0 16px;
}

.tos-footer-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  font-size: 0.92rem;
}

.fleet-reader-links {
  background: var(--tos-forest) !important;
  color: #e7e5e4 !important;
  padding: 16px 24px 28px !important;
}

.fleet-reader-links a {
  color: #fde68a !important;
}

.tos-cookie {
  position: fixed;
  z-index: 9999;
  left: 16px;
  right: 16px;
  bottom: 16px;
  max-width: 720px;
  margin: 0 auto;
  background: #fffdf8;
  border: 1px solid var(--tos-line);
  color: var(--tos-ink);
  padding: 16px 18px;
  font-size: 0.92rem;
  line-height: 1.5;
}

.tos-cookie p {
  margin: 0 0 10px;
}

.tos-cookie button {
  background: var(--tos-forest);
  border: 0;
  color: #fff;
  cursor: pointer;
  font: inherit;
  padding: 8px 14px;
}

.tos-404 {
  max-width: 640px;
  margin: 48px auto;
  padding: 0 24px;
}

.fleet-contact input:not([type=checkbox]),
.fleet-contact select,
.fleet-contact textarea,
.fleet-contact button {
  max-width: 520px;
}

@media (max-width: 700px) {
  .tos-site-header .wp-block-site-title {
    font-size: 1.15rem;
  }
  .wp-block-post-title {
    font-size: 1.4rem;
  }
}
