/*
Theme Name: Voyage
Theme URI: https://example.com/voyage
Author: Your Name
Author URI: https://example.com
Description: An elegant travel and eco-tourism theme with signature trip-fact badges (best season, ideal length, budget), a wanderlust hero and segmented destination sections. An airy display serif (Instrument Serif) with a clean Inter body, per-category accents, light and dark modes, self-hosted fonts and one-click demo content with original artwork.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: voyage
Tags: blog, news, magazine, travel, two-columns, right-sidebar, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, full-width-template
*/

:root {
  --bg: #f8f5ef;
  --surface: #ffffff;
  --surface-2: #f0ebe0;
  --text: #22302f;
  --text-2: #4e5a58;
  --muted: #8a918d;
  --line: #e6ddd0;
  --accent: #1b7a8c;
  --accent-ink: #ffffff;
  --accent-hover: #22302f;
  --accent-hover-ink: #ffffff;

  --font-display: "Instrument Serif", Georgia, "Times New Roman", serif;
  --font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-ui: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --w-display: 400;
  --lh-display: 1.08;
  --track-display: 0;

  --radius: 12px;
  --radius-ui: 8px;
  --footer-bg: #1a2927;
  --footer-text: #eef2ef;
  --footer-muted: #9aa6a2;
  --footer-line: rgba(255,255,255,.12);
  --overlay: linear-gradient(180deg, rgba(10,20,18,0) 30%, rgba(10,20,18,.9) 100%);
}
:root[data-theme="dark"] {
  --bg: #131a1a;
  --surface: #1a2322;
  --surface-2: #222d2c;
  --text: #eef2ef;
  --text-2: #c3ccc8;
  --muted: #869089;
  --line: #2c3836;
  --accent: #3ba3b5;
  --accent-ink: #131a1a;
  --accent-hover: #eef2ef;
  --accent-hover-ink: #131a1a;
  --footer-bg: #0c1211;
}

body { font-size: 17px; }
.meta, .cat, .primary-menu a, .mobile-menu a, .section-link, .widget-title, .btn, .header-cta { font-family: var(--font-ui); }
.brand__name { font-family: var(--font-display); font-weight: 400; font-size: 1.7rem; letter-spacing: 0; }
h1, h2, h3, h4, .card__title, .mini__title, .entry-title, .section-title { font-family: var(--font-display); font-weight: 400; letter-spacing: 0; }
.entry-content { font-family: var(--font-body); }

.site-header { border-bottom: 1px solid var(--line); }
.primary-menu > li > a { font-weight: 500; font-size: .9rem; letter-spacing: .01em; }
.header-cta { background: var(--accent); color: #fff; border-radius: 100px; font-weight: 600; }
.cat { color: hsl(var(--cat-hue,195) 55% 38%); font-family: var(--font-ui); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: .71rem; }
[data-theme="dark"] .cat { color: hsl(var(--cat-hue,195) 55% 66%); }
.card-overlay .cat { color: #fff; }
.section-title { font-size: clamp(1.7rem, 2.8vw, 2.4rem); }
.section-head { align-items: baseline; }

/* ---------- Trip-fact badges ---------- */
.vy-facts { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .7rem; font-family: var(--font-ui); font-size: .74rem; }
.vy-fact { display: inline-flex; align-items: center; gap: .3rem; padding: .24rem .6rem; background: var(--surface-2); border-radius: 100px; color: var(--text-2); font-weight: 600; }
.vy-fact svg { width: 13px; height: 13px; color: var(--accent); }
.vy-budget { color: var(--accent); font-weight: 700; letter-spacing: .06em; }

/* ---------- Fact box (single) ---------- */
.vy-factbox { display: flex; gap: 2rem; flex-wrap: wrap; padding: 1.1rem 1.5rem; background: var(--surface-2); border-radius: var(--radius); border-left: 3px solid var(--accent); margin-bottom: 1.6rem; }
.vy-factbox__item { display: flex; flex-direction: column; gap: .15rem; }
.vy-factbox__label { font-family: var(--font-ui); font-size: .7rem; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); font-weight: 700; }
.vy-factbox__val { font-family: var(--font-display); font-size: 1.25rem; color: var(--text); }

/* ---------- Hero ---------- */
.vy-hero__grid { display: grid; gap: 14px; }
@media (min-width: 800px) { .vy-hero__grid { grid-template-columns: 1.6fr 1fr; align-items: stretch; } }
.vy-hero__big .card-overlay { height: 100%; min-height: 460px; border-radius: var(--radius); overflow: hidden; }
.vy-hero__big .card__title { font-size: clamp(1.9rem, 3.6vw, 3.2rem); }
.vy-hero__side { display: grid; gap: 14px; grid-template-rows: 1fr 1fr; }
.vy-hero__side .card-overlay { min-height: 223px; border-radius: var(--radius); overflow: hidden; }
.vy-hero__side .card__title { font-size: 1.4rem; }

/* ---------- Sections ---------- */
.vy-section .card .media, .vy-latest .card .media { border-radius: var(--radius); }
.vy-band { background: var(--surface-2); padding-block: clamp(32px, 4vw, 52px); }

/* ---------- Signup ---------- */
.vy-signup .signup--band { background: var(--accent); color: #fff; border-radius: var(--radius); padding: clamp(28px, 4vw, 48px); display: grid; grid-template-columns: 1fr auto; gap: 1.5rem; align-items: center; }
.vy-signup .signup--band .signup__title { color: #fff; font-family: var(--font-display); font-weight: 400; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.vy-signup .signup--band .signup__desc { color: rgba(255,255,255,.9); }
.vy-signup .signup--band .signup__form { min-width: 320px; }
.vy-signup .signup--band .signup__button { background: #22302f; color: #fff; }
.vy-signup .signup--band .signup__note { color: rgba(255,255,255,.82); }
@media (max-width: 760px) { .vy-signup .signup--band { grid-template-columns: 1fr; } .vy-signup .signup--band .signup__form { min-width: 0; } }

.entry-content { font-size: 1.1rem; line-height: 1.75; }
.entry-content blockquote { border-left: 3px solid var(--accent); font-family: var(--font-display); font-style: italic; font-size: 1.4rem; line-height: 1.35; }
