/* Haivenu Travel homepage only — header and footer belong to GeneratePress. */
body.hv-home-active { --hv-forest:#123f2e;--hv-green:#194d35;--hv-deep:#102f25;--hv-mint:#edf5ef;--hv-soft:#f6f7f2;--hv-cream:#fbfaf6;--hv-ink:#173126;--hv-muted:#617269;--hv-line:#e5ebe5;--hv-shadow:0 16px 44px rgba(18,48,34,.095);background:#fff; }
body.hv-home-active #page, body.hv-home-active #page.grid-container, body.hv-home-active .site.grid-container { max-width:none!important;width:100%!important; }
body.hv-home-active #content.site-content {display:block!important;width:100%;max-width:none;padding:0!important;margin:0!important;}
body.hv-home-active #primary.hv-home {max-width:none!important;width:100%;float:none!important;padding:0!important;margin:0!important;}
body.hv-home-active .hv-home {font-family:inherit;color:var(--hv-ink);font-size:16px;line-height:1.55;overflow:hidden;}
.hv-home *, .hv-home *::before, .hv-home *::after {box-sizing:border-box;}
.hv-home h1,.hv-home h2,.hv-home h3,.hv-home h4,.hv-home p {margin:0;}
.hv-home a {text-decoration:none;}
.hv-home img {display:block;width:100%;height:100%;object-fit:cover;}
.hv-home button,.hv-home select,.hv-home input {font-family:inherit;}
.hv-home .hv-wrap {width:min(1200px,calc(100% - 64px));margin-inline:auto;}
.hv-home .hv-section {padding:74px 0 76px;}
.hv-home h1,.hv-home h2,.hv-home h3 {color:inherit;letter-spacing:-.026em;}
.hv-home h1,.hv-home h2 {font-family:Georgia,"Times New Roman",serif;}
.hv-home .hv-section-head{text-align:center;margin:0 auto 34px;max-width:760px;}
.hv-home .hv-section-head h2{font-size:clamp(27px,3.1vw,41px);font-weight:700;color:var(--hv-deep);line-height:1.15;margin:6px 0 9px;}
.hv-home .hv-section-head p{font-size:15px;color:var(--hv-muted);line-height:1.65;}
.hv-home .hv-mini-label{font-size:11px;letter-spacing:.18em;font-weight:800;color:#648973;text-transform:uppercase;}
.hv-home .hv-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:8px;min-height:48px;padding:11px 19px;font-weight:750;font-size:14px;line-height:1.3;white-space:nowrap;transition:transform .18s ease,background .18s ease,box-shadow .18s ease;cursor:pointer;}
.hv-home .hv-btn:hover{transform:translateY(-2px);}
.hv-home .hv-btn:focus-visible,.hv-home a:focus-visible,.hv-home select:focus-visible{outline:3px solid #caad65;outline-offset:3px;}
.hv-home .hv-btn-primary{color:#fff;background:#1a643d;box-shadow:0 7px 18px rgba(15,76,43,.16);}
.hv-home .hv-btn-primary:hover{color:#fff;background:#12482f;}
.hv-home .hv-btn-glass{color:#fff;background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.67);backdrop-filter:blur(6px);}
.hv-home .hv-btn-glass:hover{color:#fff;background:rgba(255,255,255,.22);}
.hv-home .hv-btn-sm{min-height:40px;padding:8px 14px;font-size:12px;border-radius:7px;}
.hv-home .hv-btn-plain{border-color:#d3ded5;background:#fff;color:#29543d;}
.hv-home .hv-btn-plain:hover{background:#eef7ef;color:#123f2e;}

/* Hero */
.hv-home .hv-hero{position:relative;min-height:556px;background:#335e5b var(--hv-hero-image) center center/cover no-repeat;isolation:isolate;display:flex;align-items:center;}
.hv-home .hv-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,44,36,.91) 0%,rgba(8,49,42,.65) 38%,rgba(8,49,42,.24) 76%),linear-gradient(0deg,rgba(6,35,32,.18),transparent 44%);z-index:-1;}
.hv-home .hv-hero-inner{position:relative;min-height:556px;display:flex;align-items:center;padding:72px 0 98px;}
.hv-home .hv-hero-copy{max-width:665px;color:#fff;}
.hv-home .hv-eyebrow{display:inline-flex;align-items:center;gap:10px;color:#e2efda;text-transform:uppercase;font-weight:760;letter-spacing:.17em;font-size:11px;margin-bottom:20px;}
.hv-home .hv-eyebrow-dot{width:7px;height:7px;border-radius:50%;background:#ead49c;box-shadow:0 0 0 4px rgba(234,212,156,.18);}
.hv-home .hv-hero h1{font-size:clamp(44px,5.2vw,78px);line-height:1.09;color:#fff;letter-spacing:-.04em;font-weight:700;text-wrap:balance;}
.hv-home .hv-hero-copy>p{font-size:clamp(16px,1.8vw,19px);line-height:1.65;max-width:560px;color:#f0f7f3;margin:23px 0 28px;}
.hv-home .hv-hero-actions{display:flex;flex-wrap:wrap;gap:12px;}
.hv-home .hv-hero-kicker{position:absolute;right:0;bottom:90px;color:#fff;font-size:11px;letter-spacing:.1em;text-shadow:0 1px 5px rgba(0,0,0,.4);text-transform:uppercase;display:flex;align-items:center;gap:14px;}
.hv-home .hv-kicker-line{height:1px;width:44px;background:#f6e8ba;}

/* Floating filters */
.hv-home .hv-search-wrap{position:relative;z-index:3;margin-top:-40px;}
.hv-home .hv-tour-search{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:stretch;min-height:91px;padding:12px 13px 12px 9px;background:#fff;border:1px solid #e0e9df;border-radius:12px;box-shadow:0 16px 50px rgba(7,49,34,.15);gap:2px;}
.hv-home .hv-search-field{position:relative;min-width:0;padding:7px 14px 6px 46px;border-right:1px solid #e6ebe5;}
.hv-home .hv-search-field:nth-child(4){border-right:0;}
.hv-home .hv-search-icon{position:absolute;left:14px;top:20px;color:#256046;}
.hv-home .hv-search-field label,.hv-home .hv-search-label{display:block;font-size:12px;font-weight:760;color:#224333;line-height:1.35;margin:1px 0 4px;}
.hv-home .hv-search-field select{appearance:none;-webkit-appearance:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23617469' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 7px center/15px 15px;width:100%;border:0;box-shadow:none;color:#62776b;height:29px;font-size:13px;line-height:1.4;padding:0 20px 0 0;outline:0;cursor:pointer;}
.hv-home .hv-search-field select.hv-has-value{color:#244738;font-weight:600;}
.hv-home .hv-search-value{display:block;color:#62776b;font-size:13px;line-height:27px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hv-home .hv-btn-search{background:#1b633e;color:#fff;margin:5px 2px 5px 9px;padding:8px 22px;font-size:13px;min-width:160px;}
.hv-home .hv-btn-search:hover{background:#13472e;color:#fff;}

/* Travel style cards */
.hv-home .hv-styles-section{padding-top:81px;padding-bottom:62px;}
.hv-home .hv-styles-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;}
.hv-home .hv-style-card{color:var(--hv-ink);background:#fff;border:1px solid var(--hv-line);border-radius:11px;overflow:hidden;box-shadow:0 6px 23px rgba(23,64,41,.06);transition:transform .2s,box-shadow .2s;}
.hv-home .hv-style-card:hover{color:var(--hv-ink);transform:translateY(-5px);box-shadow:var(--hv-shadow);}
.hv-home .hv-style-visual{aspect-ratio:1.9/1;overflow:hidden;background:#d7e1d3;}
.hv-home .hv-style-card img{transition:transform .5s;}
.hv-home .hv-style-card:hover img{transform:scale(1.07);}
.hv-home .hv-style-body{position:relative;padding:16px 14px 20px;min-height:130px;}
.hv-home .hv-style-title{display:flex;align-items:center;gap:8px;color:#24583b;}
.hv-home .hv-style-title h3{color:#173728;font-size:16px;font-weight:750;line-height:1.3;letter-spacing:-.015em;}
.hv-home .hv-style-body p{font-size:12px;color:#68796c;line-height:1.55;margin-top:7px;padding-right:18px;}
.hv-home .hv-card-arrow{position:absolute;right:13px;bottom:15px;width:24px;height:24px;border:1px solid #c9d9ce;border-radius:50%;display:grid;place-items:center;color:#246543;}

/* Tour cards */
.hv-home .hv-featured-section{padding-top:60px;background:var(--hv-cream);}
.hv-home .hv-tour-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.hv-home .hv-tour-card{overflow:hidden;background:#fff;border:1px solid #e9ede7;border-radius:13px;box-shadow:0 7px 24px rgba(42,77,49,.05);transition:box-shadow .2s,transform .2s;}
.hv-home .hv-tour-card:hover{transform:translateY(-3px);box-shadow:var(--hv-shadow);}
.hv-home .hv-tour-photo{display:block;height:232px;position:relative;overflow:hidden;background:#d9e6db;}
.hv-home .hv-tour-photo img{transition:transform .45s;}
.hv-home .hv-tour-photo:hover img{transform:scale(1.045);}
.hv-home .hv-photo-badge{position:absolute;left:15px;top:15px;display:inline-block;background:#f6fff5;color:#1e533b;font-size:11px;font-weight:780;border-radius:5px;padding:5px 10px;}
.hv-home .hv-tour-content{padding:20px 20px 19px;display:flex;flex-direction:column;min-height:267px;}
.hv-home .hv-tour-content h3{font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.27;margin-bottom:13px;}
.hv-home .hv-tour-content h3 a{color:var(--hv-deep);}
.hv-home .hv-tour-content h3 a:hover{color:#287047;}
.hv-home .hv-tour-meta{display:flex;align-items:center;gap:7px;font-size:12px;color:#537061;line-height:1.45;margin-bottom:7px;}
.hv-home .hv-tour-meta svg{flex:0 0 auto;color:#28704b;}
.hv-home .hv-tour-excerpt{font-size:13px;line-height:1.58;color:#718075;margin-top:5px;margin-bottom:18px;}
.hv-home .hv-tour-buttons{display:flex;gap:9px;margin-top:auto;flex-wrap:wrap;}
.hv-home .hv-center-action{text-align:center;margin-top:29px;}
.hv-home .hv-text-link{display:inline-flex;align-items:center;gap:10px;color:#1d6242;font-weight:780;font-size:14px;}
.hv-home .hv-text-link:hover{color:#123f2e;}
.hv-home .hv-empty-tours{min-height:204px;border-radius:14px;display:flex;align-items:center;gap:24px;background:linear-gradient(110deg,#eef5ec,#fff);border:1px solid #e2eae1;padding:29px 33px;}
.hv-home .hv-empty-tours .hv-empty-icon{flex:0 0 auto;width:70px;height:70px;border-radius:15px;background:#e0efdf;color:#235e40;display:grid;place-items:center;}
.hv-home .hv-empty-tours>div:nth-child(2){flex:1;}
.hv-home .hv-empty-tours h3{font-size:23px;font-family:Georgia,"Times New Roman",serif;margin-bottom:6px;}
.hv-home .hv-empty-tours p{font-size:14px;color:var(--hv-muted);max-width:550px;}

/* Destination mosaic */
.hv-home .hv-destinations-section{background:#fff;padding-top:81px;}
.hv-home .hv-destinations-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:11px;}
.hv-home .hv-destination-card{height:171px;display:block;position:relative;border-radius:11px;overflow:hidden;background:#1f4b38;}
.hv-home .hv-destination-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,29,21,.83),transparent 66%);}
.hv-home .hv-destination-card img{transition:transform .4s;}
.hv-home .hv-destination-card:hover img{transform:scale(1.09);}
.hv-home .hv-destination-card span{color:#fff;position:absolute;z-index:1;bottom:15px;left:10px;right:10px;font-weight:760;text-align:center;font-size:13px;line-height:1.35;display:flex;justify-content:center;align-items:center;gap:4px;text-shadow:0 1px 8px rgba(0,0,0,.2);}
.hv-home .hv-destination-card span svg{opacity:0;transform:translateX(-5px);transition:.2s;flex:0 0 auto;}
.hv-home .hv-destination-card:hover span svg{opacity:1;transform:translateX(0);}

/* Trust features */
.hv-home .hv-benefits-section{background:linear-gradient(180deg,#f3f7f0,#f8faf5);border-block:1px solid #edf0e9;}
.hv-home .hv-benefits-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;}
.hv-home .hv-benefit{text-align:center;padding:12px 14px;}
.hv-home .hv-benefit+.hv-benefit{border-left:1px solid #dce6d9;}
.hv-home .hv-benefit-icon{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:50%;color:#28623f;background:#e5f0e3;margin-bottom:12px;}
.hv-home .hv-benefit h3{font-size:14px;font-weight:780;line-height:1.35;margin-bottom:8px;color:#244736;}
.hv-home .hv-benefit p{font-size:12px;line-height:1.55;color:#6b7c6c;}

/* Process timeline */
.hv-home .hv-process-section{background:#fff;}
.hv-home .hv-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;}
.hv-home .hv-step{position:relative;text-align:center;padding:13px 13px 3px;}
.hv-home .hv-step:not(:last-child)::after{content:"→";position:absolute;right:-26px;top:42px;color:#749d7b;font-size:27px;}
.hv-home .hv-step-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 18px;background:#f0f3e9;border:1px solid #e7eddf;border-radius:50%;color:#356f4a;}
.hv-home .hv-step-number{display:block;font-size:12px;color:#83a18b;letter-spacing:.1em;font-weight:800;margin-bottom:6px;}
.hv-home .hv-step h3{font-size:15px;font-weight:800;color:#264a36;margin-bottom:8px;}
.hv-home .hv-step p{font-size:13px;color:var(--hv-muted);line-height:1.6;}

/* Only genuine approved reviews */
.hv-home .hv-review-section{background:#fbfaf7;}
.hv-home .hv-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;}
.hv-home .hv-review-card{margin:0;background:#fff;padding:25px 25px 22px;border-radius:10px;border:1px solid #eaede7;box-shadow:0 6px 24px rgba(10,34,22,.04);}
.hv-home .hv-review-stars{letter-spacing:4px;color:#c68d32;font-size:17px;min-height:22px;}
.hv-home .hv-review-card p{font-size:14px;color:#3b5243;line-height:1.7;font-style:italic;margin:14px 0;}
.hv-home .hv-review-card footer{font-size:12px;color:#246143;}

/* Real WordPress blog posts */
.hv-home .hv-journal-section{background:#f9faf7;}
.hv-home .hv-journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;}
.hv-home .hv-journal-card{background:#fff;border:1px solid #e8ece7;border-radius:11px;overflow:hidden;box-shadow:0 5px 20px rgba(18,44,33,.045);}
.hv-home .hv-journal-photo{height:188px;display:block;overflow:hidden;}
.hv-home .hv-journal-photo img{transition:transform .4s;}
.hv-home .hv-journal-photo:hover img{transform:scale(1.06);}
.hv-home .hv-journal-body{padding:18px 21px 20px;min-height:150px;}
.hv-home .hv-journal-date{font-size:11px;color:#75907b;text-transform:uppercase;letter-spacing:.08em;font-weight:740;}
.hv-home .hv-journal-body h3{font:700 20px/1.3 Georgia,"Times New Roman",serif;margin:8px 0 18px;}
.hv-home .hv-journal-body h3 a{color:#1c3629;}
.hv-home .hv-journal-body h3 a:hover{color:#1b6a45;}
.hv-home .hv-journal-more{font-size:12px;color:#29714b;display:flex;gap:8px;align-items:center;font-weight:750;}

/* Final CTA above native footer */
.hv-home .hv-bottom-cta{position:relative;isolation:isolate;background:#1f5140 var(--hv-cta-image) center 54%/cover no-repeat;}
.hv-home .hv-bottom-cta::before{position:absolute;z-index:-1;inset:0;content:"";background:linear-gradient(90deg,rgba(9,58,39,.9),rgba(9,58,39,.77),rgba(9,58,39,.79));}
.hv-home .hv-bottom-cta-inner{padding:81px 0 86px;text-align:center;color:#fff;}
.hv-home .hv-bottom-cta h2{color:#fff;font-size:clamp(32px,3.5vw,48px);line-height:1.15;font-family:Georgia,"Times New Roman",serif;margin:10px auto 14px;max-width:760px;}
.hv-home .hv-bottom-cta p{font-size:16px;color:#e5efe9;max-width:600px;margin:0 auto 25px;line-height:1.65;}
.hv-home .hv-bottom-cta .hv-mini-label{color:#d5e6cb;}
.hv-home .hv-cta-button{border:1px solid rgba(255,255,255,.55);background:#1d7547;}

@media(max-width:1120px){
 .hv-home .hv-wrap{width:min(1000px,calc(100% - 48px));}
 .hv-home .hv-tour-search{grid-template-columns:repeat(2,minmax(0,1fr)) 190px;gap:9px;}
 .hv-home .hv-search-field{padding:8px 10px 7px 45px;}
 .hv-home .hv-search-field:nth-child(2){border-right:0;}
 .hv-home .hv-search-field:nth-child(4){border-right:0;}
 .hv-home .hv-btn-search{grid-row:1 / span 2;grid-column:3;min-width:0;margin:5px;}
 .hv-home .hv-styles-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
 .hv-home .hv-destinations-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
 .hv-home .hv-destination-card{height:193px;}
 .hv-home .hv-benefits-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
 .hv-home .hv-benefit+.hv-benefit{border-left:none;}
}
@media(max-width:800px){
 .hv-home .hv-section{padding-block:57px;}
 .hv-home .hv-hero,.hv-home .hv-hero-inner{min-height:500px;}
 .hv-home .hv-hero-inner{padding-block:60px 95px;}
 .hv-home .hv-hero h1{font-size:clamp(39px,7vw,60px);}
 .hv-home .hv-hero-kicker{display:none;}
 .hv-home .hv-tour-grid,.hv-home .hv-journal-grid,.hv-home .hv-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 .hv-home .hv-tour-content{min-height:290px;}
 .hv-home .hv-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px;}
 .hv-home .hv-step:nth-child(2)::after{content:none;}
 .hv-home .hv-section-head{margin-bottom:27px;}
 .hv-home .hv-empty-tours{flex-wrap:wrap;}
}
@media(max-width:610px){
 .hv-home .hv-wrap{width:calc(100% - 34px);}
 .hv-home .hv-section{padding-block:48px;}
 .hv-home .hv-hero,.hv-home .hv-hero-inner{min-height:532px;}
 .hv-home .hv-hero{background-position:56% center;}
 .hv-home .hv-hero-shade{background:linear-gradient(90deg,rgba(9,41,35,.9),rgba(9,41,35,.61)),linear-gradient(0deg,rgba(10,44,30,.4),transparent);}
 .hv-home .hv-hero-inner{align-items:flex-start;padding-top:82px;padding-bottom:110px;}
 .hv-home .hv-hero h1{font-size:clamp(38px,10vw,52px);}
 .hv-home .hv-hero-copy>p{font-size:15px;margin-block:18px 24px;}
 .hv-home .hv-hero-actions{gap:9px;}
 .hv-home .hv-hero-actions .hv-btn{min-height:43px;padding:10px 11px;font-size:12px;gap:7px;}
 .hv-home .hv-search-wrap{margin-top:-67px;}
 .hv-home .hv-tour-search{grid-template-columns:repeat(2,minmax(0,1fr));padding:9px;gap:0;}
 .hv-home .hv-search-field{padding:9px 9px 9px 35px;border-bottom:1px solid #edf0ec;min-height:72px;}
 .hv-home .hv-search-field:nth-child(2){border-right:0;}
 .hv-home .hv-search-field:nth-child(3),.hv-home .hv-search-field:nth-child(4){border-bottom:0;}
 .hv-home .hv-search-icon{left:8px;top:19px;}
 .hv-home .hv-search-field label,.hv-home .hv-search-label{font-size:11px;}
 .hv-home .hv-search-field select,.hv-home .hv-search-value{font-size:11px;}
 .hv-home .hv-btn-search{grid-row:auto;grid-column:1/-1;min-height:45px;margin:9px 1px 1px;}
 .hv-home .hv-section-head h2{font-size:28px;}
 .hv-home .hv-section-head p{font-size:13px;}
 .hv-home .hv-styles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
 .hv-home .hv-style-visual{aspect-ratio:1.45/1;}
 .hv-home .hv-style-body{min-height:138px;padding:12px 11px 18px;}
 .hv-home .hv-style-title{gap:6px;align-items:flex-start;}
 .hv-home .hv-style-title svg{width:16px;height:16px;flex-shrink:0;}
 .hv-home .hv-style-title h3{font-size:13px;}
 .hv-home .hv-style-body p{font-size:11px;}
 .hv-home .hv-tour-grid,.hv-home .hv-journal-grid,.hv-home .hv-reviews-grid{grid-template-columns:minmax(0,1fr);gap:17px;}
 .hv-home .hv-tour-photo{height:230px;}
 .hv-home .hv-tour-content{min-height:auto;}
 .hv-home .hv-tour-buttons{margin-top:11px;}
 .hv-home .hv-destinations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
 .hv-home .hv-destination-card{height:157px;}
 .hv-home .hv-destination-card:last-child{grid-column:1 / -1;}
 .hv-home .hv-benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
 .hv-home .hv-benefit{padding:12px 7px;}
 .hv-home .hv-benefit-icon{width:50px;height:50px;}
 .hv-home .hv-benefit p{font-size:11px;}
 .hv-home .hv-process-grid{gap:23px 9px;}
 .hv-home .hv-step{padding:9px 5px;}
 .hv-home .hv-step-icon{width:57px;height:57px;margin-bottom:10px;}
 .hv-home .hv-step:not(:last-child)::after{display:none;}
 .hv-home .hv-step h3{font-size:12px;}
 .hv-home .hv-step p{font-size:11px;}
 .hv-home .hv-bottom-cta-inner{padding-block:64px;}
 .hv-home .hv-bottom-cta h2{font-size:31px;}
 .hv-home .hv-bottom-cta p{font-size:14px;}
 .hv-home .hv-empty-tours{padding:22px;}
 .hv-home .hv-empty-tours h3{font-size:20px;}
}
@media(prefers-reduced-motion:reduce){.hv-home *, .hv-home *::before,.hv-home *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}}
