:root {
  --wander-ink:#171713;
  --wander-soft:#444238;
  --wander-cream:#f4f0e7;
  --wander-paper:#fbf8f1;
  --wander-sand:#ded3bf;
  --wander-cedar:#935936;
  --wander-line:rgba(23,23,19,.15);
  --wander-white:#fff;
  --wander-shadow:0 18px 60px rgba(24,22,17,.13);
}

body.wander-journal {
  margin:0;
  color:var(--wander-ink);
  background:var(--wander-paper);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

body.wander-journal *,
body.wander-journal *::before,
body.wander-journal *::after { box-sizing:border-box; }

body.wander-journal a { color:inherit; text-decoration:none; }
body.wander-journal img { display:block; max-width:100%; }
body.wander-journal h1,
body.wander-journal h2,
body.wander-journal h3,
body.wander-journal p { margin-top:0; }
body.wander-journal h1,
body.wander-journal h2,
body.wander-journal h3 {
  font-family:Georgia,"Times New Roman",serif;
  font-weight:500;
  letter-spacing:-.035em;
}

.journal-wrap { width:min(1180px,calc(100% - 44px)); margin-inline:auto; }
.journal-wrap-wide { width:min(1280px,calc(100% - 44px)); margin-inline:auto; }
.journal-narrow { width:min(760px,calc(100% - 44px)); margin-inline:auto; }

.journal-site-header {
  position:relative;
  z-index:20;
  background:var(--wander-ink);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.12);
}

.journal-nav {
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}

.journal-brand { display:inline-flex; align-items:baseline; gap:8px; color:#fff!important; }
.journal-brand strong { font-family:Georgia,"Times New Roman",serif; font-size:23px; letter-spacing:.13em; font-weight:500; }
.journal-brand span { color:rgba(255,255,255,.62); font-size:10px; letter-spacing:.18em; text-transform:uppercase; }

.journal-links { display:flex; align-items:center; gap:27px; font-size:12px; }
.journal-links > a:not(.journal-button) { color:rgba(255,255,255,.74); }
.journal-links > a:hover,
.journal-links > a.current { color:#fff; }

.journal-button {
  display:inline-flex;
  min-height:46px;
  padding:0 20px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--wander-ink);
  border-radius:999px;
  background:var(--wander-ink);
  color:#fff!important;
  font-size:11px;
  font-weight:700;
  letter-spacing:.09em;
  line-height:1.2;
  text-transform:uppercase;
  transition:transform .2s ease,background .2s ease;
}
.journal-button:hover { transform:translateY(-2px); background:#2c2c26; }
.journal-nav .journal-button { border-color:rgba(255,255,255,.3); background:#fff; color:var(--wander-ink)!important; }

.journal-eyebrow {
  display:block;
  margin-bottom:18px;
  color:var(--wander-cedar);
  font-size:10px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.journal-hero {
  padding:105px 0 96px;
  background:var(--wander-cream);
  border-bottom:1px solid var(--wander-line);
}
.journal-hero-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr); gap:80px; align-items:end; }
.journal-hero h1 { max-width:820px; margin-bottom:22px; font-size:clamp(58px,8vw,104px); line-height:.91; }
.journal-intro { max-width:680px; color:var(--wander-soft); font-size:18px; }
.journal-intro p { margin-bottom:0; }
.journal-hero-note { padding:24px 0 4px 25px; border-left:1px solid var(--wander-line); }
.journal-hero-note span { display:block; margin-bottom:12px; color:var(--wander-cedar); font-size:9px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.journal-hero-note strong { display:block; font-family:Georgia,"Times New Roman",serif; font-size:22px; line-height:1.25; font-weight:500; }

.journal-feed { padding:82px 0 110px; }
.journal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.journal-card {
  overflow:hidden;
  border:1px solid var(--wander-line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 8px 32px rgba(24,22,17,.06);
}
.journal-card.featured { grid-column:1/-1; display:grid; grid-template-columns:1.3fr .7fr; min-height:500px; }
.journal-card-image { display:block; min-height:290px; overflow:hidden; background:#34372f; }
.journal-card.featured .journal-card-image { min-height:500px; }
.journal-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.journal-card:hover .journal-card-image img { transform:scale(1.025); }
.journal-card-body { padding:34px 34px 38px; }
.journal-card.featured .journal-card-body { display:flex; flex-direction:column; justify-content:center; padding:48px; }
.journal-meta { display:flex; flex-wrap:wrap; gap:9px 18px; margin-bottom:19px; color:#797568; font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.journal-card h2 { margin-bottom:16px; font-size:38px; line-height:1.05; }
.journal-card.featured h2 { font-size:52px; }
.journal-card p { margin-bottom:24px; color:var(--wander-soft); font-size:15px; }
.journal-read-link { margin-top:auto; color:var(--wander-cedar)!important; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }

.journal-pagination { margin-top:54px; }
.journal-pagination .nav-links { display:flex; justify-content:center; align-items:center; gap:8px; }
.journal-pagination .page-numbers { display:grid; min-width:42px; height:42px; padding:0 12px; place-items:center; border:1px solid var(--wander-line); border-radius:999px; background:#fff; font-size:12px; }
.journal-pagination .page-numbers.current { background:var(--wander-ink); color:#fff; }

.journal-empty {
  padding:80px 40px;
  border:1px solid var(--wander-line);
  border-radius:24px;
  background:#fff;
  text-align:center;
}
.journal-empty h2 { margin-bottom:15px; font-size:48px; }
.journal-empty p { max-width:620px; margin:0 auto 28px; color:var(--wander-soft); }

.journal-post-header { padding:92px 0 58px; background:var(--wander-cream); }
.journal-back { display:inline-block; margin-bottom:45px; color:var(--wander-cedar)!important; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.article-meta { margin-bottom:20px; }
.journal-post-header h1 { margin-bottom:24px; font-size:clamp(52px,7vw,82px); line-height:.98; }
.journal-deck { margin-bottom:0; color:var(--wander-soft); font-size:20px; line-height:1.5; }
.journal-post-hero { height:min(70vh,760px); margin-top:38px; overflow:hidden; border-radius:24px; background:#34372f; box-shadow:var(--wander-shadow); }
.journal-post-hero img { width:100%; height:100%; object-fit:cover; }

.journal-content { padding:78px 0 84px; color:#292921; font-family:Georgia,"Times New Roman",serif; font-size:20px; line-height:1.78; }
.journal-content > *:first-child { margin-top:0; }
.journal-content h2 { margin:68px 0 20px; font-size:43px; line-height:1.08; }
.journal-content h3 { margin:48px 0 16px; font-size:30px; line-height:1.15; }
.journal-content p { margin-bottom:26px; }
.journal-content a { color:var(--wander-cedar)!important; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.journal-content ul,
.journal-content ol { margin:0 0 30px; padding-left:28px; }
.journal-content li { margin-bottom:10px; padding-left:4px; }
.journal-content blockquote { margin:44px 0; padding:9px 0 9px 30px; border-left:3px solid var(--wander-cedar); color:#514c42; font-size:28px; line-height:1.45; }
.journal-content img { height:auto; margin:42px auto; border-radius:16px; }
.journal-content figure { margin:44px 0; }
.journal-content figcaption { margin-top:10px; color:#767166; font-family:Inter,ui-sans-serif,system-ui,sans-serif; font-size:12px; text-align:center; }
.journal-content table { width:100%; margin:40px 0; border-collapse:collapse; font-family:Inter,ui-sans-serif,system-ui,sans-serif; font-size:14px; }
.journal-content th,
.journal-content td { padding:14px; border:1px solid var(--wander-line); text-align:left; vertical-align:top; }
.journal-content th { background:var(--wander-cream); }

.journal-post-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-bottom:100px;
  padding:34px;
  border:1px solid var(--wander-line);
  border-radius:20px;
  background:var(--wander-cream);
}
.journal-post-footer .journal-eyebrow { margin-bottom:8px; }
.journal-post-footer h2 { margin-bottom:0; font-size:30px; }

.journal-booking-cta { padding:105px 0; background:var(--wander-ink); color:#fff; text-align:center; }
.journal-booking-cta .journal-eyebrow { color:#c9936d; }
.journal-booking-cta h2 { max-width:820px; margin:0 auto 20px; font-size:clamp(52px,7vw,82px); line-height:.95; }
.journal-booking-cta p { max-width:680px; margin:0 auto 30px; color:rgba(255,255,255,.7); font-size:17px; }
.journal-cta-actions { display:flex; justify-content:center; align-items:center; gap:24px; }
.journal-button-light { border-color:#fff; background:#fff; color:var(--wander-ink)!important; }
.journal-text-link { color:#fff!important; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }

.journal-footer { padding:58px 0 30px; background:#0d0d0b; color:#fff; }
.journal-footer-grid { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:start; }
.journal-footer p { max-width:480px; margin:16px 0 0; color:rgba(255,255,255,.55); font-size:13px; }
.journal-footer nav { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:16px 25px; color:rgba(255,255,255,.75); font-size:12px; }
.journal-copyright { margin-top:48px; padding-top:22px; border-top:1px solid rgba(255,255,255,.12); color:rgba(255,255,255,.4); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }

@media (max-width:800px) {
  .journal-wrap,.journal-wrap-wide,.journal-narrow { width:min(100% - 28px,760px); }
  .journal-nav { min-height:69px; }
  .journal-links > a:not(.journal-button) { display:none; }
  .journal-links { gap:0; }
  .journal-nav .journal-button { min-height:40px; padding-inline:15px; font-size:9px; }
  .journal-brand strong { font-size:20px; }
  .journal-brand span { display:none; }
  .journal-hero { padding:72px 0 64px; }
  .journal-hero-grid { grid-template-columns:1fr; gap:35px; }
  .journal-hero h1 { margin-bottom:18px; font-size:55px; }
  .journal-intro { font-size:16px; }
  .journal-hero-note { padding:20px 0 0; border-top:1px solid var(--wander-line); border-left:0; }
  .journal-feed { padding:48px 0 74px; }
  .journal-grid { grid-template-columns:1fr; gap:18px; }
  .journal-card.featured { grid-column:auto; display:block; min-height:0; }
  .journal-card.featured .journal-card-image { min-height:300px; }
  .journal-card.featured .journal-card-body,.journal-card-body { padding:25px 22px 29px; }
  .journal-card h2,.journal-card.featured h2 { font-size:34px; }
  .journal-empty { padding:55px 22px; }
  .journal-empty h2 { font-size:39px; }
  .journal-post-header { padding:60px 0 38px; }
  .journal-back { margin-bottom:34px; }
  .journal-post-header h1 { font-size:49px; }
  .journal-deck { font-size:17px; }
  .journal-post-hero { width:100%; height:330px; margin-top:0; border-radius:0; box-shadow:none; }
  .journal-content { padding:54px 0 62px; font-size:18px; line-height:1.72; }
  .journal-content h2 { margin-top:50px; font-size:36px; }
  .journal-content h3 { font-size:28px; }
  .journal-content blockquote { padding-left:21px; font-size:24px; }
  .journal-post-footer { display:block; margin-bottom:70px; padding:26px 22px; }
  .journal-post-footer .journal-button { width:100%; margin-top:23px; }
  .journal-booking-cta { padding:78px 0; }
  .journal-booking-cta h2 { font-size:50px; }
  .journal-cta-actions { flex-direction:column; gap:18px; }
  .journal-footer-grid { grid-template-columns:1fr; gap:35px; }
  .journal-footer nav { justify-content:flex-start; }
}

@media (prefers-reduced-motion:reduce) {
  body.wander-journal * { scroll-behavior:auto!important; transition:none!important; }
}

