/* Small additions for the Laravel build (kept separate so vt-site.css stays identical to the design). */
.vt-site .vt-fmsg{margin:10px 0 0;font-size:.88rem;font-weight:600;color:var(--vt-ink)}
.vt-site .vt-fmsg:empty{display:none}
.vt-site .vt-fmsg a{color:var(--vt-blue);text-decoration:underline}
.vt-site .vt-fgrid2{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;margin-bottom:22px}
.vt-site .vt-fgrid2 label{display:block;font-size:.8rem;font-weight:600;margin-bottom:4px}
.vt-site .vt-fgrid2 select{width:100%;padding:11px 12px;border:1px solid var(--vt-mist);border-radius:10px;background:var(--vt-white);color:var(--vt-ink);font:inherit}
.vt-site .vt-pager{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:30px}
.vt-site .vt-pager a,.vt-site .vt-pager span{min-width:40px;padding:9px 14px;border-radius:10px;border:1px solid var(--vt-mist);background:var(--vt-white);color:var(--vt-ink);font-weight:600;text-align:center}
.vt-site .vt-pager .vt-cur{background:var(--vt-ink);border-color:var(--vt-ink);color:var(--vt-white)}
.vt-site .vt-pager .vt-dis{opacity:.45}
.vt-site .vt-sechd img{width:100%;max-height:340px;object-fit:cover;border-radius:var(--vt-r);margin:0 0 14px}
.vt-site .vt-sechd .vt-richtxt{margin-bottom:14px}
.vt-site .vt-pl .vt-plimg{width:100%;max-height:200px;object-fit:cover;border-radius:10px;margin-top:8px}
.vt-site .vt-dmain .vt-pk{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.vt-site .vt-secnote{margin-top:12px}


/* ---- Destination sections (template_type) ---- */
.vt-site .vt-ssub{color:var(--vt-blue);font-weight:500;margin:-4px 0 12px}
.vt-site .vt-richtxt{line-height:1.75}
.vt-site .vt-richtxt p{margin:0 0 12px}
.vt-site .vt-richtxt ul,.vt-site .vt-richtxt ol{padding-left:20px;margin:0 0 12px}
.vt-site .vt-richtxt img{max-width:100%;height:auto;border-radius:10px}
.vt-site .vt-richtxt a{color:var(--vt-blue);text-decoration:underline}
.vt-site .vt-split{display:grid;gap:22px;align-items:center}
.vt-site .vt-split-img img{display:block;width:100%;max-height:380px;min-height:220px;object-fit:cover;border-radius:var(--vt-r);box-shadow:var(--vt-sh)}
@media(min-width:760px){.vt-site .vt-split{grid-template-columns:1.1fr .9fr}.vt-site .vt-split.vt-left{grid-template-columns:.9fr 1.1fr}.vt-site .vt-split.vt-left .vt-split-img{order:-1}}
.vt-site .vt-sbanner{position:relative;display:flex;align-items:center;min-height:280px;border-radius:var(--vt-r);overflow:hidden;color:var(--vt-white);background:linear-gradient(135deg,var(--vt-blue),var(--vt-ink))}
.vt-site .vt-sbanner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vt-site .vt-sbanner::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,49,86,.9),rgba(29,49,86,.35))}
.vt-site .vt-sbanner>div{position:relative;z-index:2;padding:32px 28px;max-width:560px}
.vt-site .vt-sbanner h2,.vt-site .vt-sbanner p,.vt-site .vt-sbanner .vt-richtxt,.vt-site .vt-sbanner .vt-ssub{color:var(--vt-white)}
.vt-site .vt-sbanner .vt-richtxt a{color:var(--vt-sky)}
.vt-site .vt-sgrid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));margin-top:6px}
.vt-site .vt-scard{display:flex;flex-direction:column;background:var(--vt-white);border:1px solid color-mix(in srgb,var(--vt-mist) 45%,transparent);border-radius:var(--vt-r);overflow:hidden;box-shadow:var(--vt-sh)}
.vt-site .vt-scard>img{width:100%;aspect-ratio:4/3;object-fit:cover}
.vt-site .vt-scb{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.vt-site .vt-scb h3{font-size:1.02rem;margin:0}
.vt-site .vt-scb .vt-richtxt{font-size:.9rem;line-height:1.6}
.vt-site .vt-slink{margin-top:auto;font-weight:600;color:var(--vt-blue)}

/* ---- Package detail ---- */
.vt-site .vt-pbox{margin-bottom:14px;padding:16px 18px;border-radius:var(--vt-r);background:var(--vt-light-bg);display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;justify-content:space-between}
.vt-site .vt-pbox b{font-size:1.5rem;font-family:var(--vt-fh)}
.vt-site .vt-pbox s{opacity:.6}
.vt-site .vt-pbox .vt-save{align-self:center}
.vt-site .vt-itin{list-style:none;margin:0;padding:0;border-left:2px solid var(--vt-mist);margin-left:8px}
.vt-site .vt-itin li{position:relative;padding:0 0 22px 22px}
.vt-site .vt-itin li::before{content:"";position:absolute;left:-8px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--vt-ink);border:3px solid var(--vt-white);box-shadow:0 0 0 1px var(--vt-mist)}
.vt-site .vt-itin .vt-day{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;background:var(--vt-sky);color:var(--vt-ink);padding:2px 10px;border-radius:99px;margin-bottom:6px}
.vt-site .vt-itin h3{margin:0 0 4px;font-size:1.05rem}
.vt-site .vt-itin p{margin:0;line-height:1.7}
.vt-site .vt-two2{display:grid;gap:18px}
@media(min-width:700px){.vt-site .vt-two2{grid-template-columns:1fr 1fr}}
.vt-site .vt-ie{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.vt-site .vt-ie li{display:flex;gap:10px;line-height:1.55}
.vt-site .vt-ie i{margin-top:4px;flex:none}
.vt-site .vt-ie.vt-yes i{color:#198754}
.vt-site .vt-ie.vt-no i{color:#c0392b}
.vt-site .vt-tl{display:flex;flex-wrap:wrap;gap:8px}
.vt-site .vt-tl span{background:var(--vt-light-bg);border-radius:99px;padding:6px 14px;font-size:.88rem;font-weight:500}
.vt-site .vt-gal{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.vt-site .vt-gal a{display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--vt-light-bg)}
.vt-site .vt-gal img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.vt-site .vt-gal a:hover img{transform:scale(1.05)}

/* ---- About + Contact ---- */
.vt-site .vt-abt{display:grid;gap:28px}
@media(min-width:860px){.vt-site .vt-abt{grid-template-columns:1.4fr .9fr;align-items:start}}
.vt-site .vt-abt-card{background:var(--vt-light-bg);border-radius:var(--vt-r);padding:22px}
.vt-site .vt-abt-card h3{margin:0 0 12px}
.vt-site .vt-vgrid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.vt-site .vt-vcard{background:var(--vt-white);border-radius:var(--vt-r);box-shadow:var(--vt-sh);padding:22px}
.vt-site .vt-vcard i{font-size:1.4rem;color:var(--vt-blue);margin-bottom:10px}
.vt-site .vt-vcard h3{margin:0 0 6px;font-size:1.05rem}
.vt-site .vt-vcard p{margin:0;line-height:1.6}
.vt-site .vt-steps{list-style:none;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.vt-site .vt-steps li{text-align:center;padding:10px 14px}
.vt-site .vt-steps span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--vt-ink);color:var(--vt-white);font-weight:700;margin-bottom:10px}
.vt-site .vt-steps h3{margin:0 0 6px;font-size:1.05rem}
.vt-site .vt-steps p{margin:0}
.vt-site .vt-tl a{text-decoration:none;color:inherit}
.vt-site .vt-cgrid{display:grid;gap:28px}
@media(min-width:900px){.vt-site .vt-cgrid{grid-template-columns:.8fr 1.2fr;align-items:start}}
.vt-site .vt-cl{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.vt-site .vt-cl li{display:flex;gap:14px;align-items:flex-start}
.vt-site .vt-cl i{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--vt-light-bg);color:var(--vt-blue);flex:none}
.vt-site .vt-cl b{display:block}
.vt-site .vt-cl a{color:var(--vt-blue)}

/* =====================================================================
   CLEAN NAVY THEME
   Navy (logo) only for text, buttons, header, footer.
   Neutral white/grey backgrounds, neutral dark overlays on photos.
   ===================================================================== */
.vt-site{
  --vt-sky:#e3e8ef;            /* soft neutral (chips, badges) */
  --vt-mist:#dde1e7;           /* borders */
  --vt-light-bg:#f5f6f8;       /* alternate sections */
  --vt-warm:#f5f6f8;
  --vt-shade:15,18,24;         /* neutral dark for photo overlays (rgb) */
}

/* Buttons: solid navy, outline navy */
.vt-site .vt-btn:hover{background:var(--vt-blue);border-color:var(--vt-blue);color:#fff}
.vt-site .vt-btn.vt-o{background:transparent;border-color:var(--vt-ink);color:var(--vt-ink)}
.vt-site .vt-btn.vt-o:hover{background:var(--vt-ink);color:#fff}
/* Buttons on photos: white */
.vt-site .vt-hero .vt-btn:not(.vt-w),.vt-site .vt-dl-main .vt-btn,.vt-site .vt-pban .vt-btn,
.vt-site .vt-bn:not(.vt-am) .vt-btn:not(.vt-w),.vt-site .vt-dh .vt-btn{background:#fff;border-color:#fff;color:var(--vt-ink)}
.vt-site .vt-hero .vt-btn:not(.vt-w):hover,.vt-site .vt-dl-main .vt-btn:hover,.vt-site .vt-pban .vt-btn:hover,
.vt-site .vt-bn:not(.vt-am) .vt-btn:not(.vt-w):hover,.vt-site .vt-dh .vt-btn:hover{background:var(--vt-ink);border-color:var(--vt-ink);color:#fff}
.vt-site .vt-usp i{color:#fff}

/* Discount badge red, price navy */
.vt-site .vt-disc{background:#c0392b;color:#fff}
.vt-site .vt-save{background:#e9f5ee;color:#1e6b3e}
.vt-site .vt-itin .vt-day,.vt-site .vt-cl i,.vt-site .vt-vcard i{background:var(--vt-sky);color:var(--vt-ink)}
.vt-site .vt-vcard i{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;font-size:1.2rem}

/* Neutral dark overlays on photos (no blue cast) */
.vt-site .vt-sl::after{background:linear-gradient(90deg,rgba(var(--vt-shade),.72) 5%,rgba(var(--vt-shade),.15) 75%);opacity:1}
.vt-site .vt-ov::after{background:linear-gradient(to top,rgba(var(--vt-shade),.82) 6%,transparent 62%)}
.vt-site .vt-dl-main::after{background:linear-gradient(to top,rgba(var(--vt-shade),.85) 10%,transparent 70%)}
.vt-site .vt-dh::after{background:linear-gradient(to top,rgba(var(--vt-shade),.85),rgba(var(--vt-shade),.15) 70%)}
.vt-site .vt-mimg::after{background:linear-gradient(to top,rgba(var(--vt-shade),.6),transparent 55%)}
/* Placeholder when an image is missing: neutral grey instead of blue */
.vt-site .vt-ph,.vt-site .vt-card:nth-child(3n+2) .vt-ph,.vt-site .vt-ov:nth-child(even) .vt-ph,
.vt-site .vt-card:nth-child(3n) .vt-ph,.vt-site .vt-ov:nth-child(3n) .vt-ph{background:linear-gradient(135deg,#d9dde3,#b9bfc8);color:#fff}
.vt-site .vt-dh,.vt-site .vt-mimg,.vt-site .vt-dcimg{background:#c9ced6}

/* Honeymoon banner: full photo with text on top */
.vt-site .vt-bn:not(.vt-am){position:relative;display:block;min-height:380px;background:#c9ced6}
.vt-site .vt-bn:not(.vt-am) .vt-bn-i{position:absolute;inset:0;aspect-ratio:auto;min-height:0}
.vt-site .vt-bn:not(.vt-am) .vt-bn-i::after{background:linear-gradient(90deg,rgba(var(--vt-shade),.78) 0%,rgba(var(--vt-shade),.35) 55%,transparent 100%)}
.vt-site .vt-bn:not(.vt-am) .vt-bn-t{position:relative;z-index:3;max-width:560px;min-height:380px}
/* Festive banner: light card, navy number */
.vt-site .vt-bn.vt-am{background:var(--vt-light-bg);border:1px solid var(--vt-mist)}
.vt-site .vt-bn-big{background:#fff;color:var(--vt-ink)}
.vt-site .vt-bn-big b{color:#c0392b}

/* Why us: white instead of navy */
.vt-site .vt-why{background:#fff;color:var(--vt-text);border-top:1px solid var(--vt-mist);border-bottom:1px solid var(--vt-mist)}
.vt-site .vt-wy-l h2,.vt-site .vt-wc h3{color:var(--vt-ink)}
.vt-site .vt-wy-st{color:#e0a100}
.vt-site .vt-wy-l .vt-btn{background:var(--vt-ink);border-color:var(--vt-ink);color:#fff}
.vt-site .vt-wc{background:var(--vt-light-bg);border:1px solid var(--vt-mist)}
.vt-site .vt-wc:hover{background:#fff;box-shadow:var(--vt-sh)}
.vt-site .vt-wc>i{background:var(--vt-ink);color:#fff}
.vt-site .vt-wc .vt-no{color:var(--vt-blue)}

/* Listing page headers: light */
.vt-site .vt-lh{background:var(--vt-light-bg);color:var(--vt-ink);border-bottom:1px solid var(--vt-mist)}
.vt-site .vt-lh h1{color:var(--vt-ink)}
.vt-site .vt-lh p{opacity:.8}
.vt-site .vt-lsearch input{border:1px solid var(--vt-mist)}

/* Newsletter: white card */
.vt-site .vt-nl{background:#fff;border:1px solid var(--vt-mist)}
.vt-site .vt-nl::before{background:var(--vt-light-bg)}
.vt-site .vt-nl-ic{background:var(--vt-ink);color:#fff}
.vt-site .vt-nl .vt-btn{background:var(--vt-ink);border-color:var(--vt-ink);color:#fff}

/* Photo banner (partials/photo-banner) */
.vt-site .vt-pban{position:relative;display:flex;align-items:center;min-height:clamp(300px,42vw,420px);border-radius:20px;overflow:hidden;color:#fff;background:#c9ced6;box-shadow:var(--vt-sh)}
.vt-site .vt-pban>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vt-site .vt-pban::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--vt-shade),.75),rgba(var(--vt-shade),.25) 60%,transparent)}
.vt-site .vt-pban-t{position:relative;z-index:2;padding:34px 28px;max-width:560px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.vt-site .vt-pban-t h2{color:#fff;font-size:clamp(1.5rem,3.6vw,2.3rem);margin:0}
.vt-site .vt-pban-t p{margin:0;opacity:.92}
.vt-site .vt-pban .vt-chip{background:#fff;color:var(--vt-ink)}
@media(min-width:860px){.vt-site .vt-pban-t{padding:48px}}
.vt-site .vt-pban-sec{padding:34px 0}

/* Destination section banner (full_width_banner): neutral overlay */
.vt-site .vt-sbanner{background:#c9ced6}
.vt-site .vt-sbanner::after{background:linear-gradient(90deg,rgba(var(--vt-shade),.8),rgba(var(--vt-shade),.3))}
.vt-site .vt-sbanner .vt-richtxt a{color:#fff}
.vt-site .vt-sbanner .vt-btn{background:#fff;border-color:#fff;color:var(--vt-ink)}
.vt-site .vt-sbanner .vt-btn:hover{background:var(--vt-ink);border-color:var(--vt-ink);color:#fff}


/* Offer box inside a photo banner */
.vt-site .vt-pban{flex-wrap:wrap;justify-content:space-between}
.vt-site .vt-pban-badge{position:relative;z-index:2;margin:0 28px 28px;background:#fff;color:var(--vt-ink);border-radius:18px;padding:18px 26px;text-align:center;display:grid;gap:2px;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.vt-site .vt-pban-badge b{font:700 clamp(2rem,5vw,3rem) var(--vt-fh);color:#c0392b;line-height:1.05}
.vt-site .vt-pban-badge span{font-size:.85rem;font-weight:600}
@media(min-width:860px){.vt-site .vt-pban-badge{margin:0 48px 0 0}}

/* One background for the whole page */
.vt-site .vt-alt{background:transparent}
.vt-site .vt-why{border:0}



/* Home travel-style rows: hide the tour-type badge (the section heading already says it) */
.vt-site .vt-cat .vt-badge{display:none}