
:root {
  --bg: #100F0D; --bg-elevated: #1A1815; --bg-card: #221F1B;
  --ink: #F5F1E8; --ink-soft: #C8C2B0; --ink-quiet: #8A8472;
  --rule: #2A2620; --amber: #E89846; --amber-deep: #C97A28; --amber-soft: #F3B574;
  --wa-green: #25D366; --wa-deep: #1EBE5A;
  --serif: 'Fraunces', 'Newsreader', Georgia, serif;
  --serif-read: 'Newsreader', Georgia, serif;
  --sans: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --max-w: 720px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { font-family: var(--serif-read); background: var(--bg); color: var(--ink);
  line-height: 1.7; font-size: 18px; -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; font-feature-settings: 'liga' 1, 'kern' 1;
  background-image: radial-gradient(circle at 15% 10%, rgba(232,152,70,0.06), transparent 40%),
    radial-gradient(circle at 85% 90%, rgba(232,152,70,0.03), transparent 50%);
  background-attachment: fixed; }
.topnav { background: rgba(16,15,13,0.92); backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px); border-bottom: 1px solid var(--rule);
  padding: 14px 20px; display: flex; align-items: center; justify-content: space-between;
  font-family: var(--sans); position: sticky; top: 0; z-index: 100; }
.topnav__brand { font-family: var(--serif); font-weight: 800; font-size: 22px;
  letter-spacing: -0.02em; color: var(--ink); text-decoration: none; }
.topnav__brand em { color: var(--amber); font-style: italic; font-weight: 500; }
.topnav__brand small { font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.18em; text-transform: uppercase; color: var(--ink-quiet);
  margin-left: 8px; font-style: normal; }
.topnav__book { background: var(--amber); color: var(--bg); text-decoration: none;
  padding: 9px 18px; border-radius: 999px; font-weight: 600; font-size: 13px;
  transition: background 0.15s, transform 0.15s; white-space: nowrap; }
.topnav__book:hover { background: var(--amber-soft); transform: translateY(-1px); }
.hero { padding: 50px 24px 30px; max-width: var(--max-w); margin: 0 auto; }
.hero__tag { font-family: var(--sans); font-size: 11px; font-weight: 600;
  letter-spacing: 0.22em; text-transform: uppercase; color: var(--amber);
  margin-bottom: 28px; display: inline-block; padding: 6px 14px;
  border: 1px solid var(--rule); border-radius: 999px; }
.hero h1 { font-family: var(--serif); font-weight: 800;
  font-size: clamp(2.1rem, 6vw, 4rem); line-height: 1.02; letter-spacing: -0.03em;
  color: var(--ink); margin-bottom: 24px; }
.hero h1 em { font-style: italic; font-weight: 400; color: var(--amber); }
.hero__lede { font-size: clamp(1.1rem, 2.5vw, 1.35rem); font-style: italic;
  color: var(--ink-soft); line-height: 1.55; margin-bottom: 30px; max-width: 620px; }
.hero__meta { display: flex; flex-wrap: wrap; gap: 18px; font-family: var(--sans);
  font-size: 13px; color: var(--ink-quiet); border-top: 1px solid var(--rule); padding-top: 22px; }
.hero__meta span { display: flex; align-items: center; gap: 6px; }
.hero__meta strong { color: var(--ink-soft); font-weight: 500; }
.hero-image { max-width: var(--max-w); margin: 0 auto 40px; padding: 0 24px; }
.hero-image figure { aspect-ratio: 16/9; background: var(--bg-elevated);
  border: 1px solid var(--rule); border-radius: 4px; overflow: hidden; }
.hero-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hero-image figcaption { font-family: var(--sans); font-size: 12px; color: var(--ink-quiet);
  margin-top: 10px; font-style: italic; }
.status-card { max-width: var(--max-w); margin: 0 auto 36px; background: var(--bg-elevated);
  border: 1px solid var(--rule); border-left: 3px solid var(--amber); border-radius: 4px;
  padding: 22px 26px; font-family: var(--sans); }
.status-card__label { font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--amber); font-weight: 600; margin-bottom: 14px; }
.status-card p { font-family: var(--serif-read); font-size: 16px; line-height: 1.6;
  color: var(--ink-soft); margin: 0; }
.status-card p strong { color: var(--ink); }
.article { max-width: var(--max-w); margin: 0 auto; padding: 20px 24px 60px; }
.article h2 { font-family: var(--serif); font-weight: 700;
  font-size: clamp(1.75rem, 4.5vw, 2.5rem); line-height: 1.12; letter-spacing: -0.02em;
  color: var(--ink); margin: 70px 0 22px; padding-top: 28px; border-top: 1px solid var(--rule); }
.article h2 em { font-style: italic; color: var(--amber); font-weight: 400; }
.article h2 .num { display: block; font-family: var(--sans); font-size: 11px; font-weight: 600;
  letter-spacing: 0.22em; text-transform: uppercase; color: var(--amber); margin-bottom: 10px; }
.article h3 { font-family: var(--serif); font-weight: 600;
  font-size: clamp(1.3rem, 3vw, 1.65rem); line-height: 1.25; letter-spacing: -0.015em;
  color: var(--ink); margin: 40px 0 14px; }
.article h3 em { font-style: italic; color: var(--amber-soft); font-weight: 400; }
.article p { margin-bottom: 1.2em; font-size: 18px; line-height: 1.75; color: var(--ink-soft); }
.article p strong { color: var(--ink); font-weight: 600; }
.article a { color: var(--amber); text-decoration: underline;
  text-decoration-color: rgba(232,152,70,0.4); text-decoration-thickness: 1px;
  text-underline-offset: 4px; }
.article a:hover { color: var(--amber-soft); }
.article ul, .article ol { margin: 0 0 1.5em 1.4em; }
.article ul li, .article ol li { margin-bottom: 0.6em; line-height: 1.7; color: var(--ink-soft); }
.article ul li strong, .article ol li strong { color: var(--ink); }
.article ul li::marker { color: var(--amber); }
.article ol li::marker { color: var(--amber); font-family: var(--sans); font-weight: 600; }
.article blockquote { border-left: 3px solid var(--amber); padding: 18px 24px;
  margin: 32px 0; background: var(--bg-elevated); font-style: italic; font-size: 18px;
  color: var(--ink); border-radius: 0 4px 4px 0; }
.article blockquote p { margin: 0; font-style: italic; }
.article hr { border: none; height: 1px; background: var(--rule); margin: 50px auto; max-width: 100px; }
.loc { margin: 36px 0; border: 1px solid var(--rule); border-radius: 6px;
  overflow: hidden; background: var(--bg-elevated); }
.loc__image { aspect-ratio: 16/9; background: var(--bg-card); overflow: hidden; }
.loc__image img { width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 0.6s ease; }
.loc:hover .loc__image img { transform: scale(1.03); }
.loc__body { padding: 24px 26px 26px; }
.loc__code { display: inline-block; font-family: var(--sans); font-size: 10px;
  font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: var(--amber);
  background: rgba(232,152,70,0.1); padding: 4px 10px; border-radius: 3px; margin-bottom: 12px; }
.loc__title { font-family: var(--serif); font-weight: 700; font-size: 24px;
  line-height: 1.18; letter-spacing: -0.02em; color: var(--ink); margin-bottom: 12px; }
.loc__title em { font-style: italic; color: var(--amber); font-weight: 400; }
.loc__intro { font-size: 16px; color: var(--ink-soft); line-height: 1.6; margin-bottom: 20px; }
.loc__row { display: grid; grid-template-columns: 1fr; gap: 14px; margin-bottom: 14px; }
@media (min-width: 600px) { .loc__row { grid-template-columns: 1fr 1fr; gap: 16px; } }
.loc__col { padding: 16px 18px; background: var(--bg); border: 1px solid var(--rule); border-radius: 4px; }
.loc__col h5 { font-family: var(--sans); font-size: 10px; font-weight: 700;
  letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 10px; }
.loc__col--public h5 { color: var(--ink-quiet); }
.loc__col--rushxo h5 { color: var(--amber); }
.loc__col p { font-family: var(--sans); font-size: 13.5px; line-height: 1.55;
  color: var(--ink-soft); margin: 0; }
.loc__col p + p { margin-top: 8px; }
.loc__verdict { font-family: var(--sans); font-size: 13px; line-height: 1.6;
  padding: 14px 18px; background: var(--bg-card); border-left: 2px solid var(--amber);
  color: var(--ink-soft); border-radius: 0 4px 4px 0; margin-top: 14px; }
.loc__verdict strong { color: var(--amber); font-weight: 600; }
.tax { font-family: var(--sans); font-size: 13.5px; line-height: 1.65; color: var(--ink);
  background: var(--bg-card); border: 1px solid var(--rule); border-left: 3px solid var(--amber);
  padding: 16px 20px; margin: 22px 0 26px; border-radius: 0 4px 4px 0; }
.tax strong { color: var(--amber); font-weight: 700; letter-spacing: 0.08em;
  text-transform: uppercase; font-size: 10px; display: block; margin-bottom: 6px; }
.tax span { color: var(--ink); font-weight: 600; }
.airport-card { margin: 28px 0; padding: 22px 24px; background: var(--bg-elevated);
  border: 1px solid var(--rule); border-radius: 6px; }
.airport-card h4 { font-family: var(--serif); font-weight: 700; font-size: 22px;
  letter-spacing: -0.02em; margin-bottom: 6px; color: var(--ink); }
.airport-card h4 em { font-style: italic; color: var(--amber); font-weight: 400; }
.airport-card__line { font-family: var(--sans); font-size: 11px; font-weight: 600;
  letter-spacing: 0.18em; text-transform: uppercase; color: var(--ink-quiet);
  margin-bottom: 14px; }
.airport-card p { font-size: 16.5px; line-height: 1.7; margin-bottom: 0.9em; color: var(--ink-soft); }
.airport-card p:last-child { margin-bottom: 0; }
.article table { width: 100%; border-collapse: collapse; margin: 28px 0; font-family: var(--sans);
  font-size: 14px; background: var(--bg-elevated); border-radius: 4px; overflow: hidden;
  border: 1px solid var(--rule); }
.article thead th { background: var(--bg-card); color: var(--amber); text-align: left;
  padding: 13px 16px; font-weight: 600; font-size: 11px; letter-spacing: 0.12em;
  text-transform: uppercase; border-bottom: 1px solid var(--rule); }
.article tbody td { padding: 13px 16px; border-bottom: 1px solid var(--rule);
  vertical-align: top; color: var(--ink-soft); }
.article tbody tr:last-child td { border-bottom: none; }
.article tbody td strong { color: var(--ink); }
.article tbody tr.total td { background: var(--bg-card); }
.article tbody tr.total td strong { color: var(--amber); }
@media (max-width: 600px) {
  .article { padding: 20px 18px 50px; }
  .article table { font-size: 13px; display: block; overflow-x: auto; }
  .loc__body { padding: 22px 20px 24px; }
}
.pullquote { font-family: var(--serif); font-style: italic; font-weight: 400;
  font-size: clamp(1.4rem, 3.5vw, 1.85rem); line-height: 1.3; letter-spacing: -0.015em;
  color: var(--ink); margin: 40px 0; padding: 0 0 0 24px; border-left: 3px solid var(--amber); }
.pullquote em { color: var(--amber); font-style: italic; }
.link-hint { background: var(--bg-elevated); border-left: 3px solid var(--amber);
  padding: 16px 20px; margin: 28px 0; font-family: var(--sans); font-size: 14px;
  line-height: 1.6; color: var(--ink-soft); border-radius: 0 4px 4px 0; }
.link-hint strong { color: var(--amber); display: block; margin-bottom: 6px;
  font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; }
.cta { background: linear-gradient(135deg, var(--bg-elevated), var(--bg-card));
  border: 1px solid var(--rule); border-radius: 6px; padding: 32px 26px;
  margin: 48px 0; font-family: var(--sans); }
.cta__tag { font-size: 10px; font-weight: 700; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--amber); margin-bottom: 14px; }
.cta__title { font-family: var(--serif); font-size: 26px; font-weight: 700;
  line-height: 1.18; letter-spacing: -0.02em; margin-bottom: 14px; color: var(--ink); }
.cta__title em { font-style: italic; color: var(--amber); font-weight: 400; }
.cta p { font-size: 15px; color: var(--ink-soft); margin-bottom: 22px; line-height: 1.6; }
.cta__buttons { display: flex; gap: 10px; flex-wrap: wrap; }
.btn-book, .btn-wa, .btn-call { display: inline-flex; align-items: center; gap: 8px;
  padding: 13px 22px; border-radius: 999px; font-weight: 600; font-size: 14px;
  text-decoration: none; transition: transform 0.15s, background 0.15s; min-height: 46px; }
.btn-book { background: var(--amber); color: var(--bg); }
.btn-book:hover { background: var(--amber-soft); transform: translateY(-1px); }
.btn-wa { background: var(--wa-green); color: white; }
.btn-wa:hover { background: var(--wa-deep); transform: translateY(-1px); }
.btn-call { background: transparent; color: var(--ink); border: 1px solid var(--rule); }
.btn-call:hover { border-color: var(--amber); color: var(--amber); }
.fab { position: fixed; right: 16px; width: 56px; height: 56px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center; text-decoration: none;
  box-shadow: 0 8px 24px rgba(0,0,0,0.5); z-index: 200;
  transition: transform 0.15s, box-shadow 0.15s; color: white; }
.fab:hover { transform: translateY(-2px); }
.fab svg { width: 24px; height: 24px; }
.fab-wa { bottom: max(20px, env(safe-area-inset-bottom)); background: var(--wa-green); }
.fab-book { bottom: calc(max(20px, env(safe-area-inset-bottom)) + 68px); background: var(--amber); color: var(--bg); }
.fab-call { bottom: calc(max(20px, env(safe-area-inset-bottom)) + 136px); background: var(--bg-elevated); border: 1px solid var(--amber); }
@media (min-width: 900px) {
  .fab-wa, .fab-book, .fab-call { width: auto; height: auto; padding: 12px 20px;
    border-radius: 999px; gap: 8px; font-weight: 600; font-size: 13px; font-family: var(--sans); }
  .fab-wa::after { content: 'WhatsApp'; }
  .fab-book::after { content: 'Book transfer'; }
  .fab-call::after { content: 'Call'; }
  .fab-wa { bottom: 24px; right: 24px; }
  .fab-book { bottom: 80px; right: 24px; }
  .fab-call { bottom: 136px; right: 24px; }
  .fab svg { width: 18px; height: 18px; }
}
.footer { background: var(--bg-elevated); border-top: 1px solid var(--rule);
  padding: 46px 24px 56px; font-family: var(--sans); font-size: 14px;
  color: var(--ink-soft); line-height: 1.65; }
.footer__inner { max-width: var(--max-w); margin: 0 auto; }
.footer__brand { font-family: var(--serif); font-weight: 800; font-size: 28px;
  letter-spacing: -0.02em; color: var(--ink); margin-bottom: 8px; }
.footer__brand em { font-style: italic; color: var(--amber); font-weight: 400; }
.footer__tag { font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--ink-quiet); margin-bottom: 22px; }
.footer p { margin-bottom: 14px; }
.footer__contacts { display: flex; flex-wrap: wrap; gap: 16px; margin: 24px 0;
  padding: 22px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.footer__contacts a { color: var(--ink); text-decoration: none; display: flex;
  align-items: center; gap: 8px; font-weight: 500; padding: 8px 14px;
  border: 1px solid var(--rule); border-radius: 999px; }
.footer__contacts a:hover { border-color: var(--amber); color: var(--amber); }
.footer__legal { font-size: 12px; color: var(--ink-quiet); margin-top: 18px; line-height: 1.65; }
:focus-visible { outline: 2px solid var(--amber); outline-offset: 2px; }
.callout.takeaways,.callout.takeaways p,.callout.takeaways li{color:#14213d !important}.callout.takeaways,.callout.takeaways p,.callout.takeaways li{color:#14213d !important}