/* SailTripFinder homepage. Only loaded on the homepage shortcode page. */
.stf-home-page .site-content{background:#fff}
.stf-home-page .site-content>.ast-container{max-width:none!important;padding:0!important;display:block}
.stf-home-page #primary{width:100%;margin:0!important;padding:0!important;float:none}
.stf-home-page .entry-header,.stf-home-page #secondary{display:none}
.stf-home{color:#102a43;font-family:inherit;font-size:16px;line-height:1.6;overflow-wrap:anywhere;background:#fff}
.stf-home *{box-sizing:border-box}
.stf-home h1,.stf-home h2,.stf-home h3,.stf-home p{margin:0;color:inherit}
.stf-home h2{font-size:30px;line-height:1.2;letter-spacing:-.025em}
.stf-home h3{font-size:21px;line-height:1.3}
.stf-home .stf-home-container{width:100%;max-width:1280px;margin:0 auto;padding-left:36px;padding-right:36px}
.stf-home .stf-home-hero{position:relative;z-index:1;isolation:isolate;background:#123b56;color:#fff;padding:46px 0 26px}
.stf-home-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(7,27,43,.86) 0%,rgba(7,27,43,.76) 52%,rgba(7,27,43,.43) 100%);pointer-events:none}
.stf-home-hero>.stf-home-container{position:relative;z-index:2}
.stf-home-hero-top{display:grid;grid-template-columns:1fr;align-items:center;gap:36px}
.stf-home-hero--no-image .stf-home-hero-top{grid-template-columns:1fr}
.stf-home .stf-home-kicker{color:#0872c2;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.stf-home h1{max-width:810px;font-size:clamp(32px,4.4vw,56px);line-height:1.08;font-weight:700;letter-spacing:-.035em}
.stf-home .stf-home-intro{max-width:680px;margin-top:18px;color:#425d70;font-size:17px;line-height:1.65}
.stf-home-photo{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.stf-home .stf-home-hero-image{display:block;width:100%;height:100%;object-fit:cover}
.stf-home .stf-home-hero .stf-home-kicker{color:#d6efff}
.stf-home .stf-home-hero .stf-home-intro{color:#fff}
.stf-home .stf-home-hero .stf-home-search-links a{color:#fff}
.stf-home-hero .stf-home-search-links a:focus-visible{outline-color:#fff}
.stf-home-search{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr) minmax(0,1fr) auto;align-items:end;gap:14px;margin-top:30px;padding:18px;border:1px solid #dce6ed;border-radius:16px;background:#fff;box-shadow:0 8px 25px rgba(16,42,67,.04)}
.stf-home-field{display:flex;flex-direction:column;gap:6px;min-width:0;color:#345168;font-size:12px;font-weight:700;margin:0}
.stf-home input,.stf-home select{display:block;font:inherit;font-size:15px;font-weight:400;background:#fff;color:#16354b;width:100%;max-width:100%;min-width:0;min-height:48px;padding:10px;border:1px solid #cddbe4;border-radius:8px;box-shadow:none}
.stf-home-dates{border:0;margin:0;padding:0;min-width:0}
.stf-home-dates legend{padding:0;margin-bottom:6px;font-size:12px;font-weight:700;color:#345168}
.stf-home-dates>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.stf-home-dates .stf-home-field>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.stf-home .stf-home-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #0877d1;border-radius:9px;background:#0877d1;color:#fff!important;font:inherit;font-size:14px;font-weight:700;min-height:48px;max-width:100%;padding:11px 19px;text-decoration:none!important;text-align:center;line-height:1.4;cursor:pointer}
.stf-home .stf-home-button:hover{background:#0664b0;border-color:#0664b0}
.stf-home a:focus-visible,.stf-home button:focus-visible,.stf-home input:focus-visible,.stf-home select:focus-visible,.stf-home summary:focus-visible{outline:3px solid #076bb9;outline-offset:3px}
.stf-home-search-links{display:flex;flex-wrap:wrap;gap:22px;margin-top:16px;font-size:13px}
.stf-home-search-links a,.stf-home .stf-home-text-link{color:#066bb9;text-decoration:underline;text-underline-offset:3px}
.stf-home-benefits{display:flex;gap:30px;justify-content:flex-start;flex-wrap:wrap;padding-top:18px;padding-bottom:18px;border-bottom:1px solid #e6edf2;font-size:13px;color:#526a7c}
.stf-home .stf-home-section{padding-top:42px;padding-bottom:42px}
.stf-home-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.stf-home .stf-home-text-link{font-size:14px}
.stf-home .stf-results-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.stf-home .stf-result-card{display:flex;flex-direction:column;border-radius:15px;box-shadow:0 5px 18px rgba(17,44,68,.04)}
.stf-home .stf-result-body{display:flex;flex-direction:column;flex:1}
.stf-home .stf-result-body h3{font-size:21px;line-height:1.25;margin:0 0 8px}
.stf-home .stf-result-body h3 a{color:#102f47;text-decoration:none}
.stf-home .stf-result-badges{left:12px;top:12px;right:12px}
.stf-home .stf-result-badges .stf-sponsored-badge{background:#103e5e;color:#fff}
.stf-home .stf-result-cta{margin-top:auto}
.stf-home .stf-result-bottom{margin-bottom:17px}
.stf-home .stf-result-price{max-width:55%;overflow-wrap:anywhere}
.stf-home .stf-result-provider{flex:1}
.stf-home .stf-result-departure{flex-wrap:wrap;gap:9px}
.stf-home .stf-result-route{margin-bottom:14px}
.stf-home .stf-home-all{display:flex;justify-content:center;margin-top:26px}
.stf-home-empty{background:#f3f7fa;border:1px solid #e1e9ef;border-radius:14px;padding:34px;text-align:center}
.stf-home-empty p{color:#526a7c;margin:10px 0 20px}
.stf-home-areas{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.stf-home-areas a{display:flex;gap:18px;align-items:center;justify-content:space-between;flex:1;min-width:190px;min-height:64px;padding:17px 20px;border:1px solid #dce6ed;border-radius:10px;background:#f6fafc;color:#214761;text-decoration:none}
.stf-home-how{background:#f0f6fa;padding:42px 0}
.stf-home-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:28px}
.stf-home-steps>div{min-width:0}
.stf-home-steps span{display:block;color:#0872c2;font-size:13px;font-weight:700;letter-spacing:.1em;margin-bottom:8px}
.stf-home-steps h3{margin-bottom:8px}
.stf-home-steps p{color:#526a7c;font-size:15px}
.stf-home-provider{display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid #e6edf2}
.stf-home-provider>div{max-width:790px;min-width:0}
.stf-home-provider p:not(.stf-home-kicker){color:#526a7c;font-size:15px;margin-top:14px}
.stf-home-provider>.stf-home-button{flex:0 0 auto}
.stf-home-faq{max-width:940px!important}
.stf-home-faq h2{margin-bottom:22px}
.stf-home-faq details{border-bottom:1px solid #dce6ed;padding:16px 0}
.stf-home-faq summary{color:#214761;font-size:16px;font-weight:700;cursor:pointer;min-height:28px}
.stf-home-faq details p{margin-top:12px;color:#526a7c;font-size:15px}
.stf-home [hidden]{display:none!important}
@media(max-width:1100px){.stf-home-search{grid-template-columns:repeat(2,minmax(0,1fr))}.stf-home .stf-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stf-home-provider{flex-wrap:wrap}.stf-home-hero-top{gap:24px}}
@media(max-width:760px){.stf-home .stf-home-container{padding-left:22px;padding-right:22px}.stf-home .stf-home-hero{padding-top:32px}.stf-home-hero-top{grid-template-columns:1fr}.stf-home .stf-home-hero-image{object-position:65% center}.stf-home .stf-home-intro{font-size:16px}.stf-home .stf-home-section,.stf-home-how{padding-top:32px;padding-bottom:32px}.stf-home h2{font-size:26px}.stf-home-steps{grid-template-columns:1fr;gap:23px}.stf-home-benefits{gap:8px 20px}.stf-home-search{gap:12px}.stf-home input,.stf-home select{font-size:16px}}
@media(max-width:600px){.stf-home-search,.stf-home .stf-results-grid{grid-template-columns:1fr}.stf-home-search{padding:15px}.stf-home .stf-home-container{padding-left:18px;padding-right:18px}.stf-home .stf-home-button{width:100%}.stf-home .stf-result-departure{align-items:flex-start}.stf-home-section-head{gap:12px}.stf-home .stf-result-body h3{font-size:21px}.stf-home-areas a{min-width:0;flex-basis:100%}.stf-home-empty{padding:25px 18px}.stf-home-provider{gap:22px}}
@media(max-width:380px){.stf-home-dates>div{grid-template-columns:1fr}.stf-home-dates .stf-home-field>span{position:static;width:auto;height:auto;clip-path:none}.stf-home .stf-extra-departure-row{grid-template-columns:1fr 1fr}.stf-home .stf-extra-departure-row strong{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.stf-home .stf-result-card,.stf-home .stf-result-media img,.stf-home .stf-result-cta{transition:none}.stf-home .stf-result-card:hover,.stf-home .stf-result-cta:hover{transform:none}}
