/* VacationRides — per-tour SEO landing pages. Pairs with styles.css + v2.css + journal.css */
.tp-body{background:var(--j-paper,#FAF7F2);color:#1A130D;font-family:'DM Sans',system-ui,sans-serif}
.tp-hero{position:relative;min-height:70vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#0E0E0E}
.tp-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.66}
.tp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,14,14,.45),rgba(14,14,14,.1) 40%,rgba(14,14,14,.93))}
.tp-hero .jwrap{position:relative;z-index:2;padding-top:140px;padding-bottom:50px}
.tp-crumb{font-size:13px;color:rgba(255,255,255,.72);margin-bottom:16px}
.tp-crumb a{color:rgba(255,255,255,.72)}.tp-crumb a:hover{color:#FC8400}
.tp-badges{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:16px}
.tp-badge{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:#FC8400;color:#180f08;padding:6px 13px;border-radius:999px}
.tp-badge.dk{background:rgba(255,255,255,.16);color:#fff;backdrop-filter:blur(4px)}
.tp-hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(34px,5.5vw,62px);line-height:1.03;max-width:900px;letter-spacing:-.01em}
.tp-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:20px;font-size:14.5px;color:rgba(255,255,255,.88)}
.tp-meta span{display:flex;align-items:center;gap:8px}
.tp-meta svg{width:17px;height:17px;color:#FFB259}

.tp-shell{max-width:1180px;margin:0 auto;padding:54px 32px 0;display:grid;grid-template-columns:1fr 360px;gap:48px;align-items:start}
@media(max-width:920px){.tp-shell{grid-template-columns:1fr;gap:32px;padding:36px 22px 0}}
.tp-main p{font-size:17.5px;line-height:1.75;color:#2c2018;margin:0 0 20px}
.tp-main .lede{font-size:21px;line-height:1.6;font-family:'Cormorant Garamond',Georgia,serif;color:#3a2c20;margin-bottom:28px}
.tp-main h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:30px;margin:38px 0 16px;letter-spacing:-.01em}
.tp-high{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 8px;padding:0}
@media(max-width:560px){.tp-high{grid-template-columns:1fr}}
.tp-high li{list-style:none;display:flex;gap:10px;align-items:flex-start;font-size:15.5px;color:#2c2018;line-height:1.5}
.tp-high svg{width:19px;height:19px;color:#1F8A5B;flex:none;margin-top:1px}

.tp-itin{position:relative;margin:10px 0 0;padding-left:30px}
.tp-itin::before{content:"";position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:var(--j-line,#E9E0D2)}
.tp-day{position:relative;padding:0 0 24px}
.tp-day::before{content:"";position:absolute;left:-30px;top:3px;width:18px;height:18px;border-radius:50%;background:#FC8400;border:3px solid var(--j-paper,#FAF7F2)}
.tp-day h3{font-family:'DM Sans',sans-serif;font-size:17px;font-weight:700;margin:0 0 5px}
.tp-day .dlab{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#C0560B;margin-bottom:3px}
.tp-day p{font-size:15.5px;line-height:1.65;color:#4d3f35;margin:0}

.tp-incl{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:8px}
@media(max-width:560px){.tp-incl{grid-template-columns:1fr}}
.tp-incl h3{font-size:16px;margin:0 0 12px}
.tp-incl ul{margin:0;padding:0;list-style:none}
.tp-incl li{display:flex;gap:9px;font-size:15px;color:#2c2018;line-height:1.5;margin-bottom:9px}
.tp-incl svg{width:17px;height:17px;flex:none;margin-top:2px}
.tp-incl .yes svg{color:#1F8A5B}.tp-incl .no svg{color:#C0473C}

/* sticky booking box */
.tp-book{position:sticky;top:96px;background:#fff;border:1px solid var(--j-line,#E9E0D2);border-radius:18px;padding:24px;box-shadow:0 24px 54px -30px rgba(40,22,8,.35)}
.tp-book .from{font-size:13px;color:#8a7c6c}
.tp-book .price{font-family:'Cormorant Garamond',Georgia,serif;font-weight:700;font-size:40px;color:#1A130D;line-height:1}
.tp-book .price small{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:500;color:#8a7c6c}
.tp-book .was{font-size:15px;color:#b3a596;text-decoration:line-through;margin-left:8px}
.tp-book .brow{display:flex;justify-content:space-between;font-size:14px;color:#4d3f35;padding:11px 0;border-bottom:1px solid var(--j-line,#E9E0D2)}
.tp-book .brow b{color:#1A130D;font-weight:600}
.tp-book .bbtn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:18px;padding:15px;border-radius:13px;background:linear-gradient(135deg,#FC8400,#E06E00);color:#fff;font-weight:700;font-size:15.5px;border:none;cursor:pointer;transition:transform .2s,box-shadow .2s}
.tp-book .bbtn:hover{transform:translateY(-1px);box-shadow:0 14px 30px -12px rgba(252,132,0,.8)}
.tp-book .bnote{font-size:12px;color:#8a7c6c;text-align:center;margin-top:11px;line-height:1.5}
.tp-book .wa{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;padding:12px;border-radius:12px;border:1.5px solid var(--j-line,#E9E0D2);color:#1A130D;font-weight:600;font-size:14px}
.tp-book .wa svg{width:17px;height:17px;color:#25D366}

.tp-related{background:#0E0E0E;color:#fff;margin-top:60px;padding:64px 0}
.tp-related .jwrap{max-width:1180px;margin:0 auto;padding:0 32px}
.tp-related h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:30px;margin-bottom:28px}
.tp-rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:760px){.tp-rel-grid{grid-template-columns:1fr}}
.tp-relcard{display:block;background:#15120E;border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;transition:transform .4s,border-color .4s}
.tp-relcard:hover{transform:translateY(-4px);border-color:rgba(252,132,0,.5)}
.tp-relcard img{width:100%;aspect-ratio:16/10;object-fit:cover}
.tp-relcard .rc{padding:16px 18px}
.tp-relcard .rc .rl{font-size:12px;color:#FFB259;font-weight:600}
.tp-relcard .rc h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;font-weight:600;color:#fff;margin:4px 0 0}
