/* TripVina homepage conversion layout — Phase 2 */
.tv-home { color: var(--tv-color-text); }
.tv-home .sec { padding: 84px 0; }
.tv-home .sec-alt { background: var(--tv-color-surface-alt); }
.tv-home .sec-header { margin-bottom: 44px; }
.tv-home .sec-badge { background: var(--tv-color-primary-soft); color: var(--tv-color-primary); }
.tv-home .sec-header h2,
.tv-home-news__title,
.tv-home-why__title { color: var(--tv-color-heading); }

.tv-home-hero {
    height: min(760px, calc(100vh - 78px));
    min-height: 680px;
    isolation: isolate;
    background: var(--tv-color-primary-dark);
}
.tv-home-hero .tv-home-hero__media,
.tv-home-hero .hero-slide { height: 100%; min-height: 0; }
.tv-home-hero .hero-slide img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.tv-home-hero .hero-overlay {
    background: linear-gradient(90deg, rgba(1, 25, 45, .92) 0%, rgba(2, 48, 71, .72) 42%, rgba(2, 48, 71, .2) 78%);
}
.tv-home-hero__fallback { background: radial-gradient(circle at 80% 20%, #2986f6, #0d47a1 42%, #023047 78%); }
.tv-home-hero .tv-home-hero__content { display: flex; align-items: center; }
.tv-home-hero .hero-text .container { padding-bottom: 0; }
.tv-home-hero .hero-tagline { margin-bottom: 16px; padding: 7px 16px; font-size: 12px; letter-spacing: .12em; }
.tv-home-hero h1 { max-width: 820px; margin-bottom: 16px; font-size: clamp(42px, 5vw, 68px); letter-spacing: -.035em; }
.tv-home-hero h1 span { color: #ffd166; }
.tv-home-hero .hero-sub { max-width: 680px; margin-bottom: 24px; font-size: 18px; line-height: 1.65; }
.tv-home-hero__primary { background: var(--tv-color-accent); color: #172033; }
.tv-home-hero__primary:hover { background: #ffd166; color: #172033; }
.tv-home-hero__secondary { border-color: rgba(255, 255, 255, .72); background: rgba(255, 255, 255, .08); color: #fff; backdrop-filter: blur(8px); }
.tv-home-hero__secondary:hover { background: #fff; color: var(--tv-color-primary-dark); }

.tv-home-search {
    max-width: 980px;
    margin-top: 30px;
    padding: 18px;
    grid-template-columns: .8fr 1.15fr 1fr auto;
    gap: 12px;
    border: 1px solid rgba(255, 255, 255, .38);
    border-radius: var(--tv-radius-lg);
    box-shadow: 0 24px 60px rgba(0, 0, 0, .25);
}
.tv-home-search .search-field label { margin-bottom: 4px; color: var(--tv-color-muted); font-size: 11px; }
.tv-home-search .search-field input,
.tv-home-search .search-field select { min-height: 46px; border-color: var(--tv-color-border); border-radius: var(--tv-radius-sm); background: #fff; }
.tv-home-search .search-field input:focus,
.tv-home-search .search-field select:focus { border-color: var(--tv-color-primary); box-shadow: var(--tv-focus-ring); }
.tv-home-search .btn-search { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 22px; border-radius: var(--tv-radius-sm); background: var(--tv-color-primary); }
.tv-home-search .btn-search:hover { background: var(--tv-color-primary-dark); }
.tv-home-hero__trust { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 18px; color: rgba(255, 255, 255, .82); font-size: 13px; }
.tv-home-hero__trust span { display: inline-flex; align-items: center; gap: 7px; }
.tv-home-hero__trust i { color: #ffd166; }
.tv-home-hero .hero-swiper-nav { bottom: 18px; }

.tv-home-paths { background: #fff; }
.tv-home-path-card { display: flex; flex-direction: column; align-items: center; color: var(--tv-color-text); border: 1px solid var(--tv-color-border); box-shadow: var(--tv-shadow-sm); }
.tv-home-path-card:hover { color: var(--tv-color-text); border-color: rgba(13, 71, 161, .2); box-shadow: var(--tv-shadow-md); }
.tv-home-path-card .svc-icon { transition: transform .25s ease; }
.tv-home-path-card:hover .svc-icon { transform: scale(1.06); }
.tv-home-path-card__link { display: inline-flex; align-items: center; gap: 7px; margin-top: auto; color: var(--tv-color-primary); font-size: 13px; font-weight: 800; }

.tv-home .dest-card { border: 1px solid rgba(255, 255, 255, .18); box-shadow: var(--tv-shadow-sm); }
.tv-home .dest-card:hover { transform: translateY(-4px); box-shadow: var(--tv-shadow-md); }
.tv-home .tour-card,
.tv-home .news-v2,
.tv-home .testi-card { border: 1px solid var(--tv-color-border); box-shadow: var(--tv-shadow-sm); }
.tv-home .tour-card:hover,
.tv-home .news-v2:hover { box-shadow: var(--tv-shadow-md); }
.tv-home .tour-badge { background: var(--tv-color-primary); }
.tv-home .tour-price { color: var(--tv-color-danger); }
.tv-home .tour-link,
.tv-home .news-link { color: var(--tv-color-primary); }
.tv-home .why-img-placeholder { background: linear-gradient(145deg, var(--tv-color-primary-dark), var(--tv-color-primary)); }
.tv-home-why__title { margin: 14px 0 30px; font-size: clamp(30px, 3vw, 38px); font-weight: 800; }
.tv-home .why-icon { background: var(--tv-color-primary-soft); color: var(--tv-color-primary); }
.tv-home .sec-dark { background: linear-gradient(125deg, var(--tv-color-primary-dark), #071c2c); }
.tv-home .stat-num span { color: #ffd166; }
.tv-home-news__title { margin: 10px 0 0; font-size: clamp(30px, 3vw, 38px); font-weight: 800; }

.tv-home-cta { padding: 56px; background: linear-gradient(125deg, var(--tv-color-primary-dark), var(--tv-color-primary)); }
.tv-home-cta__eyebrow { display: inline-block; margin-bottom: 10px; color: #ffd166; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.tv-home-cta p { max-width: 650px; margin-right: auto; margin-left: auto; }
.tv-home-cta__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.tv-home-cta__primary { background: #ffd166; color: #172033; }
.tv-home-cta__primary:hover { background: #fff; color: #172033; }
.tv-home-cta__secondary { border-color: rgba(255, 255, 255, .7); background: transparent; color: #fff; }
.tv-home-cta__secondary:hover { background: #fff; color: var(--tv-color-primary-dark); }

@media (max-width: 991px) {
    .tv-home-hero { height: auto; min-height: 760px; }
    .tv-home-hero .tv-home-hero__media { position: absolute; inset: 0; }
    .tv-home-hero .tv-home-hero__content { position: relative; min-height: 760px; padding: 54px 0 50px; }
    .tv-home-search { grid-template-columns: 1fr 1fr; }
    .tv-home-search .btn-search { width: 100%; }
}

@media (max-width: 767px) {
    .tv-home .sec { padding: 64px 0; }
    .tv-home-hero { min-height: 800px; }
    .tv-home-hero .tv-home-hero__content { min-height: 800px; padding: 42px 0; }
    .tv-home-hero .hero-overlay { background: linear-gradient(180deg, rgba(2, 48, 71, .78), rgba(1, 25, 45, .94)); }
    .tv-home-hero h1 { font-size: clamp(36px, 10vw, 48px); }
    .tv-home-hero .hero-sub { font-size: 16px; }
    .tv-home-search { margin-top: 24px; grid-template-columns: 1fr 1fr; padding: 14px; }
    .tv-home-search__date { display: none; }
    .tv-home-hero__trust { gap: 9px 14px; }
    .tv-home .sec-header { margin-bottom: 34px; }
    .tv-home-cta { padding: 42px 22px; }
}

@media (max-width: 480px) {
    .tv-home-hero { min-height: 850px; }
    .tv-home-hero .tv-home-hero__content { min-height: 850px; }
    .tv-home-hero .hero-btns { display: grid; grid-template-columns: 1fr; }
    .tv-home-search { grid-template-columns: 1fr; }
    .tv-home-hero__trust { display: grid; }
    .tv-home .dest-grid { grid-template-columns: 1fr 1fr; }
    .tv-home .dest-card { height: 165px; }
}
