

:root{
  --zt-blue:#1f6ed4;
  --zt-sky:#2fb6ff;
  --zt-yellow:#ffd60a;
  --zt-ink:#101d31;
  --zt-muted:#5e6b7c;
  --zt-paper:#ffffff;
  --zt-wash:#f2f7ff;
  --zt-line:#d7e6f7;
  --zt-deep:#082348;
  --zt-shadow:0 24px 60px rgba(16,29,49,.13);
  --zt-shadow-sm:0 6px 18px rgba(16,29,49,.06);
  --zt-radius:18px;
  --zt-radius-lg:28px;
}

/* Base */
.zt-page{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--zt-ink);
  background:var(--zt-paper);
  line-height:1.62;
}
.zt-page *{box-sizing:border-box;}
.zt-page img{max-width:100%;height:auto;}
.zt-page a{color:var(--zt-blue);}
.zt-page a:focus-visible,
.zt-page button:focus-visible,
.zt-page summary:focus-visible{outline:3px solid var(--zt-sky);outline-offset:2px;}
.zt-wrap{max-width:1100px;margin:0 auto;padding:0 20px;}

/* Breadcrumbs */
.zt-crumbs{padding:12px 0;}
.zt-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;font-size:.85rem;color:var(--zt-muted);}
.zt-crumbs li:not(:last-child)::after{content:"/";margin-left:6px;color:var(--zt-muted);}
.zt-crumbs a{text-decoration:none;}
.zt-crumbs a:hover{text-decoration:underline;}
.zt-crumbs li[aria-current="page"]{color:var(--zt-ink);font-weight:600;}

/* Hero */
.zt-hero{padding:38px 0 6px;}
.zt-hero--dark{background:radial-gradient(1200px 420px at 82% -12%,rgba(47,182,255,.18),transparent),var(--zt-deep);color:#fff;padding:44px 0 40px;}
.zt-hero--dark .zt-lede{color:#dbe9fb;}
.zt-eyebrow{display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--zt-blue);margin-bottom:14px;}
.zt-hero--dark .zt-eyebrow{color:var(--zt-yellow);}
.zt-eyebrow--pill{background:var(--zt-wash);border:1px solid var(--zt-line);padding:6px 14px;border-radius:999px;}
.zt-hero-title{
  display:block;
  width:100%;
  max-width:none;
  margin:0 0 16px;
  font-size:clamp(2rem,4.7vw,3.7rem);
  line-height:1.06;
  letter-spacing:-0.033em;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  font-weight:800;
  color:var(--zt-deep);
}
.zt-hero--dark .zt-hero-title{color:#fff;}
.zt-hero-copy,.zt-hero-content,.zt-hero-text{width:100%;max-width:none;min-width:0;}
.zt-lede{font-size:1.06rem;color:var(--zt-muted);max-width:800px;margin:0 0 22px;}

/* Buttons */
.zt-cta-row{display:flex;gap:12px;flex-wrap:wrap;}
.zt-btn{display:inline-block;padding:13px 24px;border-radius:10px;font-weight:700;text-decoration:none;font-size:.95rem;border:2px solid transparent;cursor:pointer;}
.zt-btn--primary{background:var(--zt-blue);color:#fff;}
.zt-btn--primary:hover{background:#1a5cb3;}
.zt-btn--outline{background:transparent;color:var(--zt-blue);border-color:var(--zt-blue);}
.zt-btn--outline:hover{background:var(--zt-wash);}
.zt-btn--dark{background:var(--zt-deep);color:#fff;}
.zt-btn--dark:hover{background:#0c2f5e;}
.zt-btn--yellow{background:var(--zt-yellow);color:var(--zt-deep);}
.zt-btn--yellow:hover{background:#ffde3d;}
.zt-btn--ghost-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.zt-btn--ghost-light:hover{border-color:#fff;}

/* Sections & typography */
.zt-section{padding:38px 0;}
.zt-section--tint{background:var(--zt-wash);}
.zt-page h2{font-size:clamp(1.35rem,3vw,1.95rem);margin:0 0 14px;letter-spacing:-0.01em;color:var(--zt-ink);}
.zt-page h3{font-size:1.05rem;margin:0 0 8px;}
.zt-answer{font-size:1.06rem;max-width:800px;font-weight:500;}
.zt-lead{font-size:1.02rem;max-width:790px;}
.zt-muted{color:var(--zt-muted);}
.zt-small{font-size:.9rem;}

/* Quick facts bar */
.zt-facts{display:flex;flex-wrap:wrap;gap:0;margin-top:28px;border:1px solid var(--zt-line);border-radius:14px;overflow:hidden;}
.zt-facts--onhero{border-color:rgba(255,255,255,.2);}
.zt-fact{flex:1 1 150px;padding:16px 18px;border-right:1px solid var(--zt-line);}
.zt-fact:last-child{border-right:none;}
.zt-fact b{display:block;font-size:1.35rem;font-weight:800;color:var(--zt-deep);}
.zt-fact span{font-size:.8rem;color:var(--zt-muted);}
.zt-hero--dark .zt-fact{border-color:rgba(255,255,255,.18);}
.zt-hero--dark .zt-fact b{color:#fff;}
.zt-hero--dark .zt-fact span{color:#a8c6e8;}

/* Card grids */
.zt-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:24px;}
.zt-grid--2{grid-template-columns:1fr;}
.zt-grid--3{grid-template-columns:1fr;}
@media(min-width:640px){.zt-grid--2{grid-template-columns:repeat(2,1fr);}.zt-grid--3{grid-template-columns:repeat(2,1fr);}}
@media(min-width:980px){.zt-grid--3{grid-template-columns:repeat(3,1fr);}}
.zt-card{background:var(--zt-paper);border:1px solid var(--zt-line);border-radius:var(--zt-radius);padding:22px;box-shadow:var(--zt-shadow-sm);}
.zt-card--accent{border-top:5px solid var(--zt-blue);}
.zt-card .zt-tagline{font-size:.74rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--zt-blue);}
.zt-card h3{margin:6px 0 6px;color:var(--zt-deep);}
.zt-card p{margin:0;font-size:.92rem;color:var(--zt-muted);}

/* Destinations directory (editor-safe: no block inside anchors) */
.zt-dests{display:grid;grid-template-columns:1fr;gap:16px;margin-top:24px;}
@media(min-width:600px){.zt-dests{grid-template-columns:repeat(2,1fr);}}
@media(min-width:980px){.zt-dests{grid-template-columns:repeat(3,1fr);}}
.zt-dest{display:flex;flex-direction:column;background:var(--zt-paper);border:1px solid var(--zt-line);border-radius:var(--zt-radius);overflow:hidden;box-shadow:var(--zt-shadow-sm);transition:box-shadow .16s ease,transform .16s ease;}
.zt-dest::before{content:"";display:block;height:5px;background:var(--zt-blue);}
.zt-dest.is-sky::before{background:var(--zt-sky);}
.zt-dest.is-yellow::before{background:var(--zt-yellow);}
.zt-dest.is-deep::before{background:var(--zt-deep);}
.zt-dest:hover{box-shadow:var(--zt-shadow);transform:translateY(-3px);}
.zt-dest .zt-region{align-self:flex-start;margin:18px 20px 0;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--zt-blue);background:var(--zt-wash);border:1px solid var(--zt-line);padding:5px 11px;border-radius:999px;}
.zt-dest .zt-dbody{padding:12px 20px 0;flex:1;}
.zt-dest .zt-dname{margin:0 0 8px;color:var(--zt-deep);font-size:1.22rem;font-weight:800;letter-spacing:-0.01em;}
.zt-dest .zt-dbody p{margin:0;font-size:.92rem;color:var(--zt-muted);}
.zt-dest .zt-dfoot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:13px 20px;border-top:1px solid var(--zt-line);background:var(--zt-wash);}
.zt-dest .zt-time{font-size:.84rem;font-weight:700;color:var(--zt-deep);}
.zt-dest .zt-go{font-size:.85rem;font-weight:800;text-decoration:none;color:var(--zt-blue);white-space:nowrap;}
.zt-dest .zt-go:hover{text-decoration:underline;}

/* Feature block (side-bar highlight) */
.zt-feature{display:grid;grid-template-columns:1fr;gap:0;margin-top:24px;border:1px solid var(--zt-line);border-radius:var(--zt-radius);overflow:hidden;box-shadow:var(--zt-shadow);}
@media(min-width:760px){.zt-feature{grid-template-columns:7px 1fr;}}
.zt-feature .zt-feature-bar{background:var(--zt-yellow);}
.zt-feature .zt-feature-body{padding:26px;}
.zt-feature h3{margin:0 0 10px;color:var(--zt-deep);font-size:1.25rem;}
.zt-feature p{margin:0 0 10px;color:var(--zt-muted);font-size:.96rem;}
.zt-feature p:last-child{margin-bottom:0;}

/* Notes and alerts */
.zt-note{border-left:4px solid var(--zt-sky);background:var(--zt-paper);border-radius:0 14px 14px 0;padding:18px 22px;margin-top:24px;box-shadow:var(--zt-shadow-sm);}
.zt-note h3{margin-top:0;color:var(--zt-deep);}
.zt-note p{margin:0;color:var(--zt-muted);font-size:.95rem;}
.zt-alert{border:2px solid var(--zt-yellow);background:#fffdf3;border-radius:16px;padding:20px 22px;margin-top:24px;}
.zt-alert h3{margin-top:0;color:var(--zt-deep);}
.zt-alert p{margin:0;color:var(--zt-muted);font-size:.95rem;}
.zt-alert .zt-tag{display:inline-block;background:var(--zt-yellow);color:var(--zt-deep);font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:6px;margin-bottom:12px;}

/* Steps */
.zt-steps{counter-reset:zt;list-style:none;margin:24px 0 0;padding:0;}
.zt-steps li{position:relative;padding:0 0 22px 54px;}
.zt-steps li:last-child{padding-bottom:0;}
.zt-steps li::before{counter-increment:zt;content:counter(zt);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:10px;background:var(--zt-deep);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;}
.zt-steps strong{display:block;margin-bottom:3px;color:var(--zt-ink);}
.zt-steps span{color:var(--zt-muted);font-size:.94rem;}

/* Table */
.zt-table-wrap{overflow-x:auto;margin-top:22px;}
.zt-table{width:100%;border-collapse:collapse;font-size:.94rem;min-width:520px;}
.zt-table caption{text-align:left;font-weight:700;margin-bottom:10px;font-size:.95rem;}
.zt-table th,.zt-table td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--zt-line);vertical-align:top;}
.zt-table thead th{background:var(--zt-deep);color:#fff;font-size:.85rem;}
.zt-table tbody th{font-weight:700;color:var(--zt-deep);background:var(--zt-wash);}

/* Chips */
.zt-chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;}
.zt-chips a{display:inline-block;background:var(--zt-paper);border:1px solid var(--zt-line);border-radius:8px;padding:11px 18px;text-decoration:none;font-weight:600;font-size:.9rem;color:var(--zt-deep);}
.zt-chips a:hover{border-color:var(--zt-blue);color:var(--zt-blue);}

/* FAQ (accordion) */
.zt-faq{margin-top:20px;}
.zt-faq details{border:1px solid var(--zt-line);border-radius:12px;margin-bottom:10px;padding:2px 18px;}
.zt-faq summary{font-weight:700;color:var(--zt-deep);cursor:pointer;padding:14px 28px 14px 0;list-style:none;position:relative;font-size:1rem;}
.zt-faq summary::-webkit-details-marker{display:none;}
.zt-faq summary::after{content:"+";position:absolute;right:2px;top:12px;font-size:1.35rem;font-weight:800;color:var(--zt-blue);line-height:1;}
.zt-faq details[open] summary::after{content:"\2013";}
.zt-faq details p{margin:0 0 14px;color:var(--zt-muted);font-size:.94rem;max-width:780px;}

/* Map */
.zt-map{margin-top:24px;border-radius:16px;overflow:hidden;box-shadow:var(--zt-shadow);height:300px;}
.zt-map iframe{width:100%;height:100%;border:0;display:block;}

/* Related links */
.zt-related{margin-top:26px;padding:22px;border:1px dashed var(--zt-line);border-radius:16px;}
.zt-related ul{margin:10px 0 0;padding-left:20px;}
.zt-related a{font-weight:600;}

/* Closing CTA */
.zt-tail{background:var(--zt-deep);color:#fff;padding:38px 0;}
.zt-tail--yellow{background:var(--zt-yellow);}
.zt-tail h2{color:#fff;margin-top:0;}
.zt-tail p{color:#cfe1f8;max-width:740px;}
.zt-tail--yellow h2{color:var(--zt-deep);}
.zt-tail--yellow p{color:#3a3410;}

/* Footer */
.zt-footer{background:#061b38;color:#b9d0ea;padding:24px 0;font-size:.87rem;}
.zt-footer a{color:#fff;}

@media(prefers-reduced-motion:reduce){
  .zt-page *{scroll-behavior:auto !important;}
  .zt-dest:hover{transform:none;}
  .zt-faq summary::after{transition:none;}
}
