:root{
  --paper:#FAF6EE; --paper-2:#F1EADC; --ink:#1C2B33; --ink-soft:#33454D;
  --muted:#6E7C82; --hairline:#E7DAC0; --coral:#F0623F; --coral-deep:#D14E2E;
  --teal:#0E6E5F; --gold:#C08A2E; --maxw:1200px; --r:16px;
  --shadow:0 1px 2px rgba(28,43,51,.04),0 10px 30px rgba(28,43,51,.07);
  --shadow-lg:0 24px 64px rgba(28,43,51,.16);
}
/* ═══════════════════════════════════════════════════════════════════
   HERO GLOBE — realistic Earth + interactive blog-post pins
   Pair this with inc/hero-globe.php.
   ═══════════════════════════════════════════════════════════════════ */

.globe-wrap{
  position:absolute;
  right:2vw;
  top:50%;
  transform:translateY(-50%);
  width:clamp(300px, 34vw, 520px);
  aspect-ratio:1 / 1;
  z-index:2;                 /* above the hero copy's backdrop, below nav */
  pointer-events:none;       /* only the pins re-enable clicks */
}
.globe{ position:relative; width:100%; height:100%; }

/* Everything except the pins is decorative & non-interactive */
.globe-space,
.globe-atmosphere,
.globe-sphere,
.globe-surface,
.globe-graticule,
.globe-clouds,
.globe-shadow,
.globe-rim{ pointer-events:none; }

/* ── Star field ─────────────────────────────────────────────────── */
.globe-space{
  position:absolute; inset:-28%; border-radius:50%;
  background:
    radial-gradient(1.4px 1.4px at 18% 26%, rgba(255,255,255,.85), transparent 60%),
    radial-gradient(1px 1px   at 72% 62%, rgba(255,255,255,.65), transparent 60%),
    radial-gradient(1.6px 1.6px at 46% 82%, rgba(255,255,255,.75), transparent 60%),
    radial-gradient(1px 1px   at 86% 24%, rgba(255,255,255,.55), transparent 60%),
    radial-gradient(1px 1px   at 33% 66%, rgba(255,255,255,.55), transparent 60%),
    radial-gradient(1.2px 1.2px at 62% 12%, rgba(255,255,255,.6), transparent 60%);
  opacity:.55; filter:blur(.2px);
  animation:globeTwinkle 6s ease-in-out infinite;
}
@keyframes globeTwinkle{ 0%,100%{opacity:.4} 50%{opacity:.7} }

/* ── Atmospheric glow ───────────────────────────────────────────── */
.globe-atmosphere{
  position:absolute; inset:-7%; border-radius:50%;
  background:radial-gradient(circle at 40% 34%,
    rgba(130,225,255,.42), rgba(70,180,255,.15) 55%, rgba(70,180,255,0) 74%);
  filter:blur(8px);
}

/* ── The sphere: deep ocean + strong 3-D shading ────────────────── */
.globe-sphere{
  position:absolute; inset:0; border-radius:50%; overflow:hidden;
  background:
    radial-gradient(circle at 33% 27%, rgba(255,255,255,.55), rgba(255,255,255,0) 26%),
    radial-gradient(circle at 42% 40%,
       #1f86a6 0%, #14657f 33%, #0c4258 58%, #072a3f 80%, #04182a 100%);
  box-shadow:
    inset -46px -46px 100px rgba(0,0,0,.70),
    inset  30px  30px  70px rgba(255,255,255,.10),
    0 40px 110px rgba(0,0,0,.45);
}

/* ── Rotating land ──────────────────────────────────────────────── */
.globe-surface{
  position:absolute; inset:0; border-radius:50%;
  animation:globeSpin 32s linear infinite;
}
.globe-surface svg{ width:200%; height:100%; display:block; }
.globe-surface path{ filter:drop-shadow(0 0 1px rgba(0,40,20,.35)); }
@keyframes globeSpin{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

/* ── Graticule (static grid) ────────────────────────────────────── */
.globe-graticule{ position:absolute; inset:0; border-radius:50%; opacity:.9; }
.globe-graticule svg{ width:100%; height:100%; display:block; }

/* ── Clouds ─────────────────────────────────────────────────────── */
.globe-clouds{
  position:absolute; inset:0; border-radius:50%;
  opacity:.28; mix-blend-mode:screen;
  animation:globeSpin 52s linear infinite reverse;
}
.globe-clouds svg{ width:200%; height:100%; display:block; }

/* ── Day/night terminator (light from top-left) ─────────────────── */
.globe-shadow{
  position:absolute; inset:0; border-radius:50%;
  background:radial-gradient(circle at 30% 26%,
    rgba(255,255,255,0) 0%, rgba(255,255,255,0) 30%,
    rgba(3,10,14,.14) 55%, rgba(3,10,14,.72) 80%, rgba(2,6,9,.9) 100%);
}
.globe-rim{
  position:absolute; inset:0; border-radius:50%;
  box-shadow:inset -2px -2px 5px rgba(150,230,255,.28);
}

@media (prefers-reduced-motion: reduce){
  .globe-surface, .globe-clouds, .globe-space{ animation:none !important; }
}

/* ── Pins = real blog posts ─────────────────────────────────────── */
.globe-pins{ position:absolute; inset:0; z-index:5; }

.pin{
  position:absolute;
  transform:translate(-50%,-50%);
  display:flex; align-items:center; gap:8px;
  text-decoration:none;
  pointer-events:auto;          /* clickable */
  cursor:pointer;
}
.pin i{
  width:12px; height:12px; border-radius:50%;
  background:var(--coral, #F0623F);
  border:2px solid #fff;
  box-shadow:0 0 0 0 rgba(240,98,63,.6);
  flex-shrink:0;
  animation:pinPulse 3s ease-out infinite;
}
.pin-2 i{ animation-delay:.6s; }
.pin-3 i{ animation-delay:1.2s; }
.pin-4 i{ animation-delay:1.8s; }
.pin-5 i{ animation-delay:2.4s; }
@keyframes pinPulse{
  0%{ box-shadow:0 0 0 0 rgba(240,98,63,.6); }
  70%{ box-shadow:0 0 0 12px rgba(240,98,63,0); }
  100%{ box-shadow:0 0 0 0 rgba(240,98,63,0); }
}

.pin-label{
  font-family:'DM Mono', monospace;
  font-size:11px; font-weight:600; letter-spacing:.02em;
  color:#fff;
  background:rgba(8,18,14,.55);
  backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);
  padding:4px 10px; border-radius:99px; white-space:nowrap;
  transition:background .15s;
}
.pin:hover .pin-label,
.pin:focus-visible .pin-label{ background:var(--coral, #F0623F); }

/* Mini card revealed on hover / focus */
.pin-card{
  position:absolute; bottom:calc(100% + 12px); left:50%;
  width:216px;
  transform:translate(-50%, 8px);
  background:#fff; border-radius:14px; overflow:hidden;
  box-shadow:0 20px 44px rgba(0,0,0,.30);
  opacity:0; visibility:hidden;
  transition:opacity .18s ease, transform .18s ease;
  z-index:6;
}
.pin:hover .pin-card,
.pin:focus-visible .pin-card{
  opacity:1; visibility:visible;
  transform:translate(-50%, 0);
}
.pin-card::after{  /* little pointer */
  content:""; position:absolute; top:100%; left:50%;
  transform:translateX(-50%);
  border:7px solid transparent; border-top-color:#fff;
}
.pin-card-img{
  display:block; height:112px;
  background-color:#e9e3d7;
  background-image:linear-gradient(135deg, #3FC0D6, #0B8E83);
  background-size:cover; background-position:center; background-repeat:no-repeat;
}
.pin-card-body{ display:block; padding:10px 12px 12px; text-align:left; }
.pin-card-cat{
  display:block;
  font-family:'DM Mono', monospace; font-size:10px; font-weight:600;
  text-transform:uppercase; letter-spacing:.05em;
  color:var(--coral, #F0623F);
}
.pin-card-title{
  display:block; margin-top:3px;
  font-family:'Fraunces', serif; font-size:.92rem; line-height:1.25;
  color:var(--ink, #1a1a1a);
}

/* ── Responsive ─────────────────────────────────────────────────── */
@media (max-width:900px){
  .globe-wrap{ opacity:.5; width:clamp(230px, 40vw, 330px); }
  .pin-card{ display:none; }         /* keep it simple on tablet */
}
@media (max-width:640px){
  .globe-wrap{ display:none; }       /* hide on phones to save hero space */
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--paper);color:var(--ink);font-family:'Inter',system-ui,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.mono{font-family:'DM Mono',monospace;}
.serif{font-family:'Fraunces',serif;}
.coord{font-family:'DM Mono',monospace;font-size:.8rem;letter-spacing:.02em;color:var(--coral);text-transform:uppercase;}
.coord .deg{color:var(--teal);}
header.nav{position:sticky;top:0;z-index:60;background:rgba(252,251,248,.85);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--hairline);}
.nav-inner{display:flex;align-items:center;gap:30px;height:72px;}
.brand{font-family:'Fraunces',serif;font-weight:600;font-size:1.45rem;letter-spacing:-.01em;display:flex;align-items:center;gap:7px;}
.brand .dot{width:9px;height:9px;border-radius:50%;background:var(--coral);display:inline-block;}
.nav-links{display:flex;gap:26px;margin-left:6px;}
.nav-links a{font-size:.94rem;color:var(--muted);font-weight:500;transition:color .15s;position:relative;}
.nav-links a:hover,.nav-links a.on{color:var(--ink);}
.nav-links a.on::after{content:"";position:absolute;left:0;right:0;bottom:-26px;height:2px;background:var(--coral);}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:14px;}
.search{display:flex;align-items:center;gap:8px;background:var(--paper-2);border:1px solid var(--hairline);border-radius:999px;padding:9px 14px;color:var(--muted);font-size:.85rem;}
.search:focus-within{border-color:var(--coral);}
.search input{border:none;background:none;outline:none;font-family:inherit;font-size:.85rem;width:120px;color:var(--ink);}
.btn{font-family:'Inter';font-weight:600;font-size:.9rem;border:none;cursor:pointer;padding:11px 20px;border-radius:999px;background:var(--ink);color:#fff;transition:transform .15s,background .15s;display:inline-block;}
.btn:hover{background:var(--coral-deep);transform:translateY(-1px);}
.btn-coral{background:var(--coral);}.btn-coral:hover{background:var(--coral-deep);}
.btn-light{background:#fff;color:var(--ink);}.btn-light:hover{background:#f2efe8;}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;}.btn-ghost:hover{background:rgba(255,255,255,.12);}
.btn-white{background:#fff;color:var(--ink);border:1px solid var(--hairline);}.btn-white:hover{background:var(--paper-2);transform:translateY(-1px);}
.burger{display:none;background:none;border:none;cursor:pointer;font-size:1.6rem;color:var(--ink);}
.mobile-menu{display:none;flex-direction:column;padding:8px 24px 18px;border-bottom:1px solid var(--hairline);background:var(--paper);}
.mobile-menu.open{display:flex;}
.mobile-menu a{padding:11px 0;color:var(--muted);font-weight:500;border-bottom:1px solid var(--hairline);}
.cover{position:relative;overflow:hidden;background-size:cover;background-position:center;}
.cover .stamp{
  position:absolute; top:14px; right:14px; z-index:2;
  width:64px; height:64px; border-radius:50%;
  border:1.5px dashed rgba(192,138,46,.85);
  background:rgba(255,251,244,.94); backdrop-filter:blur(3px);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1px;
  transform:rotate(-9deg); text-align:center; padding:4px;
  box-shadow:0 6px 16px rgba(20,20,10,.18);
  pointer-events:none;
}
.cover .stamp b{
  font-family:'DM Mono',monospace; font-weight:700; font-size:.5rem;
  letter-spacing:.05em; color:var(--coral-deep); line-height:1.1;
}
.cover .stamp i{
  font-style:normal; font-family:'DM Mono',monospace; font-weight:600; font-size:.56rem;
  color:var(--ink); line-height:1.15; max-width:54px; overflow:hidden;
  text-overflow:ellipsis; white-space:nowrap;
}
.cover .place{position:absolute;left:20px;top:18px;font-family:'Fraunces',serif;color:#fff;font-size:1.15rem;text-shadow:0 1px 12px rgba(0,0,0,.35);}
@media(max-width:640px){
  .cover .stamp{ width:50px; height:50px; top:10px; right:10px; }
  .cover .stamp b{ font-size:.42rem; }
  .cover .stamp i{ font-size:.48rem; max-width:42px; }
}
.hero{position:relative;overflow:hidden;color:#fff;background:var(--ink);}
.hero-media{position:absolute;inset:0;z-index:0;}
.hero-media video{width:100%;height:100%;object-fit:cover;opacity:.55;}
.hero-bg{position:absolute;inset:0;overflow:hidden;background:radial-gradient(120% 120% at 20% 10%,#23414a,#16242b);z-index:0;}
.hero-bg::before,.hero-bg::after{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.55;animation:drift 20s ease-in-out infinite;}
.hero-bg::before{width:520px;height:520px;background:var(--coral);top:-140px;left:-90px;}
.hero-bg::after{width:460px;height:460px;background:var(--teal);bottom:-150px;right:-70px;animation-delay:-7s;}
.mesh{position:absolute;inset:0;overflow:hidden;background:radial-gradient(120% 120% at 20% 10%,#23414a,#16242b);}
.blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.6;animation:drift 20s ease-in-out infinite;}
.b1{width:520px;height:520px;background:var(--coral);top:-140px;left:-90px;}
.b2{width:460px;height:460px;background:var(--teal);bottom:-150px;right:-70px;animation-delay:-7s;}
.b3{width:380px;height:380px;background:var(--gold);top:38%;left:58%;animation-delay:-13s;opacity:.4;}
@keyframes drift{0%,100%{transform:translate(0,0) scale(1);}33%{transform:translate(60px,40px) scale(1.1);}66%{transform:translate(-40px,30px) scale(.95);}}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,30,35,.5),rgba(20,30,35,.78));z-index:1;}
.hero-content{position:relative;z-index:2;padding:118px 0 124px;}
.hero .coord{color:#ffd9cf;}.hero .coord .deg{color:#9be0d8;}
.hero .wrap{position:relative;z-index:2;padding-top:118px;padding-bottom:140px;}
.hero-photo-note{position:absolute;top:10px;left:10px;z-index:3;font-family:'DM Mono',monospace;font-size:.7rem;color:rgba(255,255,255,.55);}
.eyebrow{font-family:'DM Mono',monospace;font-size:.8rem;letter-spacing:.02em;color:#ffd9cf;text-transform:uppercase;}
h1.hero-title{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(2.6rem,6.5vw,5rem);line-height:1.02;letter-spacing:-.02em;max-width:16ch;margin-top:20px;}
.hero h1{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(2.6rem,6.5vw,5rem);line-height:1.02;letter-spacing:-.02em;max-width:16ch;margin-top:20px;}
.hero h1 .hl{color:var(--coral);}
.hero-sub,.hero .sub{margin-top:22px;font-size:1.18rem;color:#dfe2e0;max-width:54ch;}
.hero-actions{margin-top:34px;display:flex;gap:14px;flex-wrap:wrap;}
.hero-stats{margin-top:52px;display:flex;gap:42px;flex-wrap:wrap;font-family:'DM Mono',monospace;}
.hero-stats span{display:block;font-size:1.8rem;font-weight:500;color:#fff;}
.hero-stats div b{display:block;font-size:1.8rem;font-weight:500;color:#fff;font-family:'Fraunces',serif;}
.hero-stats small{color:#a9b3b2;font-size:.78rem;}

/* hero search bar */
.searchbar{margin-top:38px;background:#fff;border-radius:18px;padding:10px;display:flex;align-items:center;gap:4px;box-shadow:var(--shadow-lg);max-width:680px;flex-wrap:wrap;}
.sfield{flex:1;min-width:140px;padding:8px 16px;}
.sfield label{display:block;font-family:'DM Mono',monospace;font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px;}
.sfield input,.sfield select{width:100%;border:none;outline:none;font-family:inherit;font-size:.95rem;color:var(--ink);background:none;}
.sdiv{width:1px;height:34px;background:var(--hairline);}
.sbtn{font-family:'Inter';font-weight:600;font-size:.92rem;border:none;cursor:pointer;padding:14px 26px;border-radius:14px;background:var(--coral);color:#fff;transition:background .15s;white-space:nowrap;}
.sbtn:hover{background:var(--coral-deep);}

/* floating stat cards on hero */
.float-card{position:absolute;z-index:3;background:#fff;border-radius:16px;box-shadow:var(--shadow-lg);padding:14px 18px;display:flex;align-items:center;gap:12px;}
.float-1{top:130px;right:6%;}
.float-2{bottom:90px;left:5%;}
.fc-emoji{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:700;color:var(--ink);flex-shrink:0;}
.fc-t{font-weight:600;font-size:.92rem;color:var(--ink);}
.fc-s{font-size:.78rem;color:var(--muted);}
@media(max-width:980px){.float-card{display:none;}}

.phead{background:var(--paper-2);border-bottom:1px solid var(--hairline);}
.phead .wrap{padding:64px 24px 56px;}
.phead h1{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(2.2rem,5vw,3.4rem);letter-spacing:-.02em;margin-top:14px;line-height:1.05;}
.phead p{color:var(--muted);max-width:60ch;margin-top:14px;font-size:1.05rem;}
.filterbar{border-bottom:1px solid var(--hairline);background:var(--paper);}

/* Country page section switcher (All / Famous Destinations / Food & Drink / Travel Guide / Gallery) */
.subnav-sections{ display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.subnav-sections a{
  display:inline-flex; align-items:center;
  padding:9px 18px; border-radius:999px;
  background:#fff; border:1px solid var(--hairline);
  color:var(--ink-soft); font-weight:600; font-size:.87rem;
  text-decoration:none; white-space:nowrap;
  transition:all .15s ease;
}
.subnav-sections a:hover{ border-color:var(--coral); color:var(--ink); }
.subnav-sections a.on{ background:var(--ink); color:#fff; border-color:var(--ink); }
@media(max-width:640px){ .subnav-sections{ gap:8px; } .subnav-sections a{ padding:8px 14px; font-size:.82rem; } }
.filterbar .wrap{display:flex;gap:10px;padding:16px 24px;overflow-x:auto;}
.chip{font-family:'DM Mono',monospace;font-size:.82rem;white-space:nowrap;cursor:pointer;border:1px solid var(--hairline);background:#fff;color:var(--muted);padding:9px 15px;border-radius:999px;transition:all .15s;}
.chip:hover{border-color:var(--coral);color:var(--ink);}
.chip.active{background:var(--ink);color:#fff;border-color:var(--ink);}
section{padding:74px 0;}
.soft{background:var(--paper-2);}
.alt{background:var(--paper-2);}
.sec-head{display:flex;align-items:center;flex-direction:column;text-align:center;gap:8px;margin-bottom:46px;}
.sec-head.left{flex-direction:row;align-items:flex-end;justify-content:space-between;text-align:left;flex-wrap:wrap;}
.sec-head .tag{display:inline-block;font-family:'DM Mono',monospace;font-size:.78rem;color:var(--coral-deep);background:#fdeee9;padding:6px 14px;border-radius:999px;letter-spacing:.02em;}
.sec-head h2{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(1.7rem,3.2vw,2.5rem);letter-spacing:-.02em;margin-top:8px;}
.sec-head p{color:var(--muted);margin-top:6px;max-width:48ch;}
.sec-head a.more{font-family:'DM Mono',monospace;font-size:.85rem;color:var(--muted);border-bottom:1px solid transparent;}
.sec-head a.more:hover{color:var(--ink);border-color:var(--ink);}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.card{background:#fff;border:1px solid var(--hairline);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;}
.card:hover,.feat-main:hover,.feat-side:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);}
.card .cover{aspect-ratio:16/10;}
.card-body{padding:22px 22px 24px;display:flex;flex-direction:column;gap:11px;flex:1;}
.meta{font-family:'DM Mono',monospace;font-size:.76rem;color:var(--muted);display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.tag{padding:3px 10px;border-radius:6px;font-weight:500;background:#fdeee9;color:var(--coral-deep);}
.tag.teal{background:#e4f2f0;color:var(--teal);}
.card h3{font-family:'Fraunces',serif;font-weight:600;font-size:1.3rem;line-height:1.2;letter-spacing:-.01em;}
.card p.excerpt{color:var(--muted);font-size:.95rem;}
.read{margin-top:auto;font-family:'DM Mono',monospace;font-size:.8rem;color:var(--coral);font-weight:500;}
.featured{display:grid;grid-template-columns:1.45fr 1fr;gap:26px;}
.feat-main,.feat-side{background:#fff;border:1px solid var(--hairline);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;}
.feat-main .cover{aspect-ratio:16/10;}.feat-side .cover{aspect-ratio:16/8;}
.feat-main .card-body{padding:28px;}.feat-main h3{font-size:1.9rem;}.feat-side h3{font-size:1.15rem;}
.feat-side-stack{display:flex;flex-direction:column;gap:26px;}

/* trending guides grid (blog-card style reused) */
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.guide{background:#fff;border:1px solid var(--hairline);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;}
.guide:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);}
.guide .img{aspect-ratio:16/10;position:relative;overflow:hidden;background-size:cover;background-position:center;background:linear-gradient(160deg,#9B7BE0,#5A3CB0);}
.guide .img img{width:100%;height:100%;object-fit:cover;}
.guide .badge{position:absolute;top:14px;left:14px;font-family:'DM Mono',monospace;font-size:.72rem;background:rgba(255,255,255,.92);color:var(--ink);padding:5px 11px;border-radius:999px;}
.guide .body{padding:22px;display:flex;flex-direction:column;gap:11px;flex:1;}
.guide .meta{font-family:'DM Mono',monospace;font-size:.76rem;color:var(--muted);display:flex;gap:14px;}
.guide h3{font-family:'Fraunces',serif;font-weight:600;font-size:1.25rem;line-height:1.25;letter-spacing:-.01em;}
.guide p{color:var(--muted);font-size:.93rem;}
.guide .foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding-top:6px;}
.guide .author{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--ink-soft);font-weight:500;}
.guide .av{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--coral),var(--gold));display:flex;align-items:center;justify-content:center;color:#fff;font-size:.72rem;font-weight:700;flex-shrink:0;}
.guide .go{font-family:'DM Mono',monospace;font-size:.78rem;color:var(--coral);font-weight:500;}

/* popular destinations row */
.dest-row{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.dest{position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);display:block;aspect-ratio:3/3.6;transition:transform .2s,box-shadow .2s;}
.dest:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);}
.dest .img{position:absolute;inset:0;}
.dest .heart{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:none;background:rgba(0,0,0,.25);color:#fff;font-size:1rem;cursor:pointer;backdrop-filter:blur(4px);transition:background .15s;}
.dest .heart:hover{background:rgba(0,0,0,.4);}
.dest .info{position:absolute;left:0;right:0;bottom:0;padding:20px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.55));}
.dest .info h3{font-family:'Fraunces',serif;font-weight:600;font-size:1.3rem;color:#fff;}
.dest .info span{font-family:'DM Mono',monospace;font-size:.78rem;color:rgba(255,255,255,.85);}
@media(max-width:980px){.dest-row{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.dest-row{grid-template-columns:1fr 1fr;gap:14px;}}

/* why trip versa */
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.feature{background:#fff;border:1px solid var(--hairline);border-radius:var(--r);padding:30px;box-shadow:var(--shadow);}
.feature .ic{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:16px;}
.feature h3{font-family:'Fraunces',serif;font-weight:600;font-size:1.2rem;margin-bottom:8px;}
.feature p{color:var(--muted);font-size:.95rem;}

.news{background:var(--ink);color:#fff;border-radius:26px;padding:58px;position:relative;overflow:hidden;}
.news::after{content:"";position:absolute;width:400px;height:400px;border-radius:50%;background:var(--coral);filter:blur(95px);opacity:.4;top:-130px;right:-90px;}
.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;position:relative;z-index:1;}
.news{text-align:center;position:relative;z-index:1;}
.news h2{font-family:'Fraunces',serif;font-weight:600;font-size:2.1rem;letter-spacing:-.02em;line-height:1.08;}
.news p{color:#bcc4c3;margin-top:12px;max-width:46ch;margin-left:auto;margin-right:auto;}
.news-form{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:26px;position:relative;z-index:1;}
.news-form input{flex:1;min-width:210px;max-width:320px;padding:14px 18px;border-radius:999px;border:1px solid #3a4750;background:#243038;color:#fff;font-family:inherit;font-size:.95rem;outline:none;}
.news-form input:focus{border-color:var(--coral);}
.news-note{font-family:'DM Mono',monospace;font-size:.74rem;color:#8a9492;margin-top:14px;}
.news-ok{display:none;font-family:'DM Mono',monospace;color:#9be0d8;margin-top:14px;position:relative;z-index:1;}
.adslot{border:1px dashed var(--hairline);border-radius:var(--r);background:var(--paper-2);color:var(--muted);font-family:'DM Mono',monospace;font-size:.78rem;text-align:center;padding:18px;}
.article{max-width:760px;margin:0 auto;}
.article .cover{aspect-ratio:16/8;border-radius:var(--r);margin:30px 0;}
.article .dek{font-size:1.25rem;color:var(--ink-soft);margin-top:16px;line-height:1.5;}
.byline{display:flex;align-items:center;gap:12px;margin-top:22px;font-size:.92rem;color:var(--muted);flex-wrap:wrap;}
.avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--coral),var(--gold));display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Fraunces';font-weight:600;}
.prose{font-size:1.1rem;color:var(--ink-soft);line-height:1.8;}
.prose h2{font-family:'Fraunces',serif;font-weight:600;color:var(--ink);font-size:1.7rem;margin:42px 0 12px;letter-spacing:-.01em;}
.prose h3{font-family:'Fraunces',serif;font-weight:600;color:var(--ink);font-size:1.3rem;margin:30px 0 8px;}
.prose p{margin:16px 0;}.prose ul{margin:16px 0 16px 22px;}.prose li{margin:8px 0;}
.prose a{color:var(--coral-deep);border-bottom:1px solid var(--coral);}
.prose blockquote{border-left:3px solid var(--coral);padding:6px 0 6px 22px;margin:26px 0;font-family:'Fraunces',serif;font-size:1.4rem;font-style:italic;color:var(--ink);}
.callout{background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r);padding:22px 24px;margin:28px 0;}
.callout .lab{font-family:'DM Mono',monospace;font-size:.76rem;color:var(--teal);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;}
.share{display:flex;gap:10px;align-items:center;margin:36px 0;padding:20px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);font-family:'DM Mono',monospace;font-size:.82rem;color:var(--muted);flex-wrap:wrap;}
.share a{border:1px solid var(--hairline);border-radius:999px;padding:7px 14px;color:var(--ink);}
.share a:hover{border-color:var(--coral);color:var(--coral);}
.authorbox{display:flex;gap:18px;align-items:flex-start;background:var(--paper-2);border-radius:var(--r);padding:24px;margin:36px 0;}
.authorbox .avatar{width:58px;height:58px;font-size:1.2rem;flex-shrink:0;}
.authorbox h4{font-family:'Fraunces';font-weight:600;font-size:1.15rem;}
.authorbox p{color:var(--muted);font-size:.95rem;margin-top:6px;}
.lead{font-family:'Fraunces',serif;font-weight:500;font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.4;letter-spacing:-.01em;max-width:24ch;}
.two{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;align-items:start;}
.two p{margin:14px 0;color:var(--ink-soft);}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.value{background:#fff;border:1px solid var(--hairline);border-radius:var(--r);padding:28px;box-shadow:var(--shadow);}
.value .num{font-family:'DM Mono',monospace;color:var(--coral);font-size:.85rem;}
.value h3{font-family:'Fraunces',serif;font-weight:600;font-size:1.25rem;margin:10px 0 8px;}
.value p{color:var(--muted);font-size:.95rem;}
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.member .cover{aspect-ratio:1/1;border-radius:var(--r);margin-bottom:14px;}
.member h4{font-family:'Fraunces';font-weight:600;font-size:1.1rem;}
.member .role{font-family:'DM Mono',monospace;font-size:.78rem;color:var(--coral);}
.statbar{display:flex;gap:50px;flex-wrap:wrap;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:34px 0;margin:8px 0;}
.statbar .n{font-family:'Fraunces',serif;font-weight:600;font-size:2.4rem;}
.statbar small{font-family:'DM Mono',monospace;color:var(--muted);font-size:.8rem;}
.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:start;}
.field{margin-bottom:18px;}
.field label{display:block;font-family:'DM Mono',monospace;font-size:.78rem;color:var(--muted);margin-bottom:7px;text-transform:uppercase;letter-spacing:.03em;}
.field input,.field textarea,.field select{width:100%;padding:13px 15px;border:1px solid var(--hairline);border-radius:12px;background:#fff;font-family:inherit;font-size:.96rem;color:var(--ink);outline:none;}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--coral);}
.field textarea{min-height:140px;resize:vertical;}
.form-ok{display:none;background:#e4f2f0;color:var(--teal);border-radius:12px;padding:14px;font-family:'DM Mono',monospace;font-size:.88rem;margin-top:8px;}
.info-card{background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r);padding:26px;margin-bottom:20px;}
.info-card h3{font-family:'Fraunces';font-weight:600;font-size:1.15rem;margin-bottom:6px;}
.info-card a{color:var(--coral-deep);}
.info-row{display:flex;gap:10px;margin-top:12px;font-size:.94rem;color:var(--ink-soft);}
.info-row .k{font-family:'DM Mono';font-size:.8rem;color:var(--muted);min-width:74px;}
.faq details{border-bottom:1px solid var(--hairline);padding:16px 0;}
.faq summary{font-family:'Fraunces';font-weight:600;font-size:1.08rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";color:var(--coral);font-family:'DM Mono';}
.faq details[open] summary::after{content:"\2013";}
.faq p{color:var(--muted);margin-top:10px;font-size:.96rem;}
.pager{display:flex;justify-content:center;gap:8px;margin-top:46px;font-family:'DM Mono',monospace;}
.pager a{border:1px solid var(--hairline);border-radius:10px;padding:9px 15px;color:var(--muted);font-size:.85rem;}
.pager a:hover{border-color:var(--coral);color:var(--ink);}
.pager a.cur{background:var(--ink);color:#fff;border-color:var(--ink);}
.related{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
footer{border-top:1px solid var(--hairline);background:var(--paper);padding:66px 0 40px;}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;}
.foot-grid h4{font-family:'DM Mono',monospace;font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px;}
.foot-grid ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
.foot-grid a{font-size:.92rem;color:var(--ink);opacity:.78;}
.foot-grid a:hover{opacity:1;color:var(--coral);}
.foot-blurb{color:var(--muted);font-size:.92rem;max-width:36ch;margin-top:14px;}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:48px;padding-top:24px;border-top:1px solid var(--hairline);font-size:.82rem;color:var(--muted);flex-wrap:wrap;gap:12px;}

/* footer (matches markup used in index.php: .foot / .foot-bot / .brand.jak / .bl) */
footer .foot{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;}
footer .foot h4{font-family:'DM Mono',monospace;font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px;}
footer .foot ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
footer .foot li a{font-size:.92rem;color:var(--ink);opacity:.78;}
footer .foot li a:hover{opacity:1;color:var(--coral);}
.brand.jak{font-family:'Fraunces',serif;font-weight:600;font-size:1.3rem;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:8px;}
.brand.jak .pin{color:var(--coral);}
.bl{color:var(--muted);font-size:.92rem;max-width:36ch;margin-top:14px;}
.foot-bot{display:flex;justify-content:space-between;align-items:center;margin-top:48px;padding-top:24px;border-top:1px solid var(--hairline);font-size:.82rem;color:var(--muted);flex-wrap:wrap;gap:12px;}

@media(max-width:980px){.featured{grid-template-columns:1fr;}.grid,.related,.guide-grid{grid-template-columns:repeat(2,1fr);}.values,.why{grid-template-columns:1fr;}.team{grid-template-columns:repeat(2,1fr);}.news-grid,.two,.contact-grid{grid-template-columns:1fr;}.foot-grid,footer .foot{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.nav-links,.search{display:none;}.burger{display:block;}.btn-outline-pill{display:none;}.grid,.related,.guide-grid{grid-template-columns:1fr;}.team{grid-template-columns:1fr 1fr;}.foot-grid,footer .foot{grid-template-columns:1fr;}.news{padding:36px 26px;}.hero-content{padding:86px 0 92px;}.foot-bottom,.foot-bot{flex-direction:column;align-items:flex-start;}.searchbar{flex-direction:column;align-items:stretch;}.sdiv{display:none;}.sbtn{width:100%;}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

/* ===== admin panel ===== */
.adminwrap{max-width:1100px;margin:0 auto;padding:0 24px;}
.adminbar{background:var(--ink);color:#fff;}
.adminbar .adminwrap{display:flex;align-items:center;gap:24px;height:62px;}
.adminbar .brand{color:#fff;font-size:1.2rem;}
.adminbar a{color:#cfd6d4;font-size:.9rem;font-weight:500;}
.adminbar a:hover{color:#fff;}
.adminbar .right{margin-left:auto;display:flex;gap:18px;align-items:center;}
.panel{background:#fff;border:1px solid var(--hairline);border-radius:var(--r);box-shadow:var(--shadow);padding:26px;margin:22px 0;}
.adtable{width:100%;border-collapse:collapse;}
.adtable th{text-align:left;font-family:'DM Mono',monospace;font-size:.74rem;text-transform:uppercase;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--hairline);}
.adtable td{padding:13px 12px;border-bottom:1px solid var(--hairline);font-size:.95rem;vertical-align:middle;}
.adtable tr:hover td{background:var(--paper-2);}
.pill{font-family:'DM Mono',monospace;font-size:.72rem;padding:3px 9px;border-radius:999px;}
.pill.ok{background:#e4f2f0;color:var(--teal);}
.pill.no{background:#fdeee9;color:var(--coral-deep);}
.pill.draft{background:#f3eee0;color:var(--gold);}
.pill.sched{background:#e7e0f2;color:#6b4fa0;}
.seo-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px;}
.seo-dot.g{background:var(--teal);}.seo-dot.r{background:var(--coral);}
.loginbox{max-width:380px;margin:90px auto;}
.loginbox h1{font-family:'Fraunces';font-weight:600;font-size:1.8rem;margin-bottom:6px;}
.formrow{margin-bottom:18px;}
.formrow label{display:block;font-family:'DM Mono',monospace;font-size:.76rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:7px;}
.formrow input,.formrow textarea,.formrow select{width:100%;padding:12px 14px;border:1px solid var(--hairline);border-radius:10px;font-family:inherit;font-size:.95rem;color:var(--ink);background:#fff;outline:none;}
.formrow input:focus,.formrow textarea:focus,.formrow select:focus{border-color:var(--coral);}
.formrow .hint{font-size:.8rem;color:var(--muted);margin-top:6px;}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.tabbar{display:flex;gap:8px;border-bottom:1px solid var(--hairline);margin-bottom:22px;}
.tabbar button{background:none;border:none;font-family:'DM Mono',monospace;font-size:.85rem;padding:12px 14px;cursor:pointer;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;}
.tabbar button.on{color:var(--ink);border-color:var(--coral);}
.tabpane{display:none;}.tabpane.on{display:block;}
#editor{height:420px;background:#fff;border:1px solid var(--hairline);border-radius:0 0 10px 10px;}
.ql-toolbar.ql-snow{border:1px solid var(--hairline);border-radius:10px 10px 0 0;}
.charcount{font-family:'DM Mono';font-size:.74rem;color:var(--muted);margin-top:6px;}
.charcount.over{color:var(--coral);}
.scorebar{height:8px;border-radius:999px;background:var(--paper-2);overflow:hidden;margin-top:8px;}
.scorebar i{display:block;height:100%;background:var(--teal);transition:width .3s;}
.flash{padding:13px 16px;border-radius:10px;font-family:'DM Mono';font-size:.85rem;margin:14px 0;}
.flash.ok{background:#e4f2f0;color:var(--teal);}
.flash.err{background:#fdeee9;color:var(--coral-deep);}
.btn-sm{padding:8px 14px;font-size:.82rem;}
.btn-danger{background:var(--coral);}
.btn-line{background:#fff;color:var(--ink);border:1px solid var(--hairline);}
.btn-line:hover{border-color:var(--coral);color:var(--coral);background:#fff;transform:none;}
.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.statbox{background:#fff;border:1px solid var(--hairline);border-radius:var(--r);padding:20px;}
.statbox .n{font-family:'Fraunces';font-weight:600;font-size:2rem;}
.statbox small{font-family:'DM Mono';color:var(--muted);font-size:.76rem;}
@media(max-width:760px){.formgrid,.statgrid{grid-template-columns:1fr;}}
/* ==========================================================================
   Trip Versa — legal pages (content only)
   Everything is scoped under .legal-page so it won't collide with your
   existing site styles. Tweak the accent color in :root to match your brand.
   ========================================================================== */

:root {
    --legal-ink:       #16202e;
    --legal-muted:     #5a6675;
    --legal-line:      #e7e3da;
    --legal-surface-2: #f7f5f0;
    --legal-accent:    #137a6b;   /* <-- change to your brand color */
    --legal-accent-ink:#0d574c;
    --legal-radius:    14px;
    --legal-measure:   760px;
}

.legal-page {
    max-width: var(--legal-measure);
    margin: 0 auto;
    padding: 48px 24px 72px;
    color: var(--legal-ink);
    font-size: 17px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}
.legal-page * { box-sizing: border-box; }

.legal-page a { color: var(--legal-accent); text-decoration: none; }
.legal-page a:hover { color: var(--legal-accent-ink); text-decoration: underline; }

/* ---- Page head ---- */
.legal-page__eyebrow {
    margin: 0 0 12px;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 0.74rem;
    font-weight: 700;
    color: var(--legal-accent);
}
.legal-page__title {
    font-size: clamp(2rem, 5vw, 2.9rem);
    line-height: 1.1;
    letter-spacing: -0.02em;
    margin: 0 0 14px;
}
.legal-page__intro {
    margin: 0 0 14px;
    font-size: 1.1rem;
    color: var(--legal-muted);
}
.legal-page__updated {
    margin: 0 0 40px;
    font-size: 0.86rem;
    color: var(--legal-muted);
}

/* ---- Headings & text ---- */
.legal-page h2 {
    font-size: 1.4rem;
    letter-spacing: -0.01em;
    margin: 42px 0 12px;
    scroll-margin-top: 90px;
}
.legal-page h3 { font-size: 1.06rem; font-weight: 600; margin: 26px 0 8px; }
.legal-page p  { margin: 0 0 16px; }
.legal-page ul { margin: 0 0 16px; padding-left: 22px; }
.legal-page li { margin-bottom: 8px; }
.legal-page strong { color: var(--legal-ink); }

/* ---- Table of contents ---- */
.legal-toc {
    background: var(--legal-surface-2);
    border: 1px solid var(--legal-line);
    border-radius: var(--legal-radius);
    padding: 22px 26px;
    margin: 0 0 44px;
}
.legal-toc h2 {
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--legal-muted);
    margin: 0 0 12px;
}
.legal-toc ol { margin: 0; padding-left: 20px; }
.legal-toc li { margin-bottom: 6px; }

/* ---- Callout ---- */
.legal-note {
    border-left: 3px solid var(--legal-accent);
    background: var(--legal-surface-2);
    border-radius: 0 var(--legal-radius) var(--legal-radius) 0;
    padding: 16px 20px;
    margin: 0 0 24px;
    font-size: 0.97rem;
    color: var(--legal-muted);
}

/* ---- Contact card ---- */
.legal-contact {
    border: 1px solid var(--legal-line);
    border-radius: var(--legal-radius);
    padding: 22px 26px;
    margin-top: 8px;
}
.legal-contact p { margin: 0 0 6px; }
.legal-contact p:last-child { margin-bottom: 0; }

@media (max-width: 640px) {
    .legal-page { font-size: 16px; padding: 32px 18px 56px; }
}
@media (prefers-reduced-motion: no-preference) {
    html { scroll-behavior: smooth; }
}
/* ── Mobile: keep blog/listing cover images compact (fix oversized images on phones) ── */
@media(max-width:640px){
  .blog-main .card .cover,
  .grid .card .cover{aspect-ratio:16/9 !important;max-height:200px !important;}
  .featured .feat-main .cover,.featured .feat-side .cover{aspect-ratio:16/9 !important;max-height:200px !important;}
  .related .card .cover{aspect-ratio:16/9 !important;max-height:180px !important;}
  .guide .img{aspect-ratio:16/9 !important;max-height:190px !important;}
}
@media(max-width:430px){
  .blog-main .card .cover,
  .grid .card .cover,.related .card .cover{max-height:165px !important;}
}