/* Woahtour: jade, soft sage and apricot. Shared by the brand and every booking state. */
:root {
  --ink: #274d43;
  --green: #087c64;
  --green-deep: #22614f;
  --muted: #61766b;
  --orange: #ed9b50;
  --cream: #fafbf6;
  --mint: #edf7f0;
  --peach: #fff0e2;
  --line: #e0eae1;
  --brand: #11856b;
  --brand-mark: #1fa687;
  --shadow: 0 18px 60px rgba(56, 103, 76, .07);
}

.topbar { background: #eef6eb; color: #58785f; border-color: #e0eadc; }
.topbar i { color: #7e9c83; }
.site-header { background: #fafbf6f5; border-color: #e4ece2; }
.brand { color: var(--brand); gap: 10px; font-weight: 700; letter-spacing: -1.35px; }
.brand-mark { width: 45px; height: 35px; object-fit: contain; flex-shrink: 0; }
.brand-word { display: block; padding-bottom: 1px; }
nav a { color: #526f60; }
nav a:hover, nav .nav-active { color: var(--green); }
.button.primary:hover { background: #066b55; box-shadow: 0 8px 24px #11856b24; }
.button.cream { background: #fff8e9; color: #25634e; }
.button.cream:hover { background: #fff0d3; }
.button.outline { border-color: #cddfd1; }
.text-link:hover { color: #0b8c6e; }
.eyebrow { color: #66846e; }
.outline-tag { color: #607969; border-color: #dfe9de; }
.journeys-button { color: #527660; }

.hero .eyebrow { color: #668264; }
.hero h1 { color: #285447; }
.hero h1 span { color: #16856a; }
.hero-copy > p { color: #64786b; }
.hero-reassurance { color: #66816e; }
.hero-reassurance .icon { color: #3f9273; }
.hero-note svg { stroke: #a4baa4; }
.hero-note span { color: #7d977b; }
.hello-stamp { background: #ffce99; color: #77552e; }
.location-tag { background: #fffffff0; }
.photo-card { box-shadow: 0 10px 24px #21664f10; }
.photo-card div span { color: #718775; }
.circle-arrow { background: #e9f5e9; color: #14836a; }
.search-panel { border-color: #e1eadf; }
.search-tabs { border-color: #e6eee4; }
.search-tabs button { color: #6e8275; }
.search-form label > span { color: #6a806f; }
.search-form label .icon { color: #8fa994; }
.search-foot { color: #748d79; }
.search-foot .text-link { color: #448363; }

.peach { background: #fdefdf; }
.mint { background: #eaf4e5; }
.blue { background: #eaf3ee; }
.experience-card { border: 1px solid #e6ecdf; }
.experience-card.peach { border-color: #f2e3cf; }
.experience-icon { color: #ad7846; border-color: #d7b688; }
.mint .experience-icon { color: #5f9059; border-color: #bcd2af; }
.blue .experience-icon { color: #4e8f7f; border-color: #bdd8ce; }
.experience-card p { color: #617965; }
.experience-top > span { color: #6d896d; }
.card-link { color: #426e54; }

.guide-section { background: #fff; }
.guide-name span { color: #6e8472; }
.guide-info > p { color: #66816c; }
.guide-price { border-color: #e5eee3; }
.guide-price strong { color: #187b61; }
.guide-price span { color: #728574; }
.guide-city { background: #226653d9; }
.language-tags span { background: #f0f7ed; color: #587951; }
.view-guide { color: #286d53; }
.view-guide .icon { color: #398d70; }
.filter-chips button { background: #f2f7ef; color: #57755d; }
.filter-chips button.active { color: #fff; }
.filter-chips button:hover:not(.active) { background: #e4f1e3; }
.guide-bottom { color: #708975; }
.guide-bottom .icon { color: #379272; }
.empty-results { background: #f3f9ef; border-color: #cddfc5; }
.empty-results .text-link { margin-left: 18px; }
.route-card { background: #f0f5e7; }
.route-card:nth-child(2) { background: #fcf0e1; }
.route-card:nth-child(3) { background: #eaf6ef; }
.route-card > p, .route-card li { color: #657d62; }
.route-card li:before { border-color: #8fb891; }
.route-card li:not(:last-child):after { border-color: #afc8a8; }
.route-bottom { border-color: #dce6d5; color: #688568; }
.business-image-note { background: #fffdf6ed; }
.business-image-note .icon { color: #438d6a; }
.business-image-note span { color: #6d886c; }
.business-image-note strong { color: #37785b; }
.business-list span { color: #57775f; }
.business-list .icon { color: #359773; }
.business-copy .business-small { color: #748a74; }
.step-number { background: #f0f7e9; border-color: #c7ddbd; color: #5a9462; }
.faq-sun { stroke: #e7ac56; }
.faq-list summary { color: #355e4b; }
.faq-list summary > span { color: #4e9877; }

.closing-section { background: #0f8369; color: #fffdf2; }
.closing-section .eyebrow { color: #d2ead5; }
.closing-section p { color: #d8eddb; }
.closing-sun { stroke: #d4ebbd; opacity: .28; }
footer { background: #eff6eb; border-color: #e1eadb; }
.footer-grid .brand { color: var(--brand); }
.footer-grid .brand-mark { width: 40px; height: 31px; }
.footer-grid p { color: #6e886c; }
.footer-grid strong { color: #477a50; }
.footer-grid > div > a:not(.brand), .footer-grid > div > button { color: #658260; }
.footer-bottom { color: #78916f; border-color: #dbe7d4; }

.profile-content .profile-role { color: #398366; }
.profile-content h2 small { color: #719576; }
.profile-services li { color: #6a8469; }
.profile-price strong { color: #168064; }
.profile-price small, .demo-note { color: #6c816b; }
.modal-header .eyebrow { color: #658b67; }
.modal-header p { color: #70866f; }
.form-input { border-color: #d9e6d3; background: #fafcf6; }
.form-input:focus { border-color: #5ba581; background: #fff; }
.booking-summary { background: #f0f7e9; }
.summary-row { color: #627e62; }
.summary-person span { color: #6f886d; }
.summary-total { border-color: #d9e5d0; }
.summary-total strong { color: #18795e; }
.summary-total small { color: #768a70; }
.day-button { background: #fcfdf9; border-color: #dfe9d8; }
.day-button small { color: #6f8c6c; }
.day-button.selected { background: #e5f3e3; }
.hours button, .time-slots button { border-color: #dce7d5; }
.time-slots button.selected { background: #e5f3e3; border-color: #59a17b; }
.check-consent { color: #5e785e; }
.request-aside { background: #edf6e7; }
.request-aside p, .request-aside li { color: #6b8768; }
.success-icon { background: #e2f4e5; color: #11856b; }
.success-recap { background: #f1f8ec; }
.trip-item { border-color: #dce8d5; }
.trip-item p { color: #71866d; }
.trip-item-bottom button { color: #6d8d68; }
.toast { background: #226b53; }
.mobile-bottom { border-color: #dce9d8; }
.mobile-bottom button { background: #edf6e7; }

@media (max-width: 1180px) {
  .brand-mark { width: 40px; height: 31px; }
}
@media (max-width: 650px) {
  .brand { gap: 8px; font-size: 28px; }
  .brand-mark { width: 38px; height: 30px; }
  .footer-grid .brand-mark { width: 38px; height: 30px; }
  .empty-results .text-link { margin: 14px 0 0; }
}
@media (max-width: 360px) {
  .hero-actions { gap: 16px; }
  .hero-actions .button { padding-inline: 15px; gap: 14px; font-size: 13px; white-space: nowrap; }
  .hero-actions .text-link { font-size: 12px; gap: 8px; white-space: nowrap; }
}

/* Approved solid W and negative-space guide: use the complete serif lockup. */
.brand .brand-logo { display: block; width: 224px; height: auto; flex-shrink: 0; }
.footer-grid .brand .brand-logo { width: 216px; }
@media (max-width: 1180px) {
  .brand .brand-logo { width: 204px; }
}
@media (max-width: 650px) {
  .brand .brand-logo { width: 190px; }
  .footer-grid .brand .brand-logo { width: 206px; }
}
@media (max-width: 360px) {
  .brand .brand-logo { width: 176px; }
}
