/* FerryEU destinations.html — searchable destination directory */
.destinations-hero{min-height:560px}
.destinations-hero-overlay{background:linear-gradient(90deg,rgba(3,31,59,.92) 0%,rgba(6,43,79,.78) 48%,rgba(6,43,79,.30) 78%,rgba(6,43,79,.12) 100%)}
.destinations-hero .hero-content-clean{color:#fff}
.destinations-hero .hero-content-clean h1{max-width:830px;color:#fff}
.destinations-hero .hero-lead{max-width:720px;color:#edf5fa}
.destination-hero-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:center;gap:48px;width:100%}
.destination-hero-search{align-self:center}
.destination-search-box{display:flex;align-items:center;gap:11px;padding:0 17px;border:1px solid rgba(255,255,255,.62);border-radius:13px;background:rgba(255,255,255,.97);box-shadow:0 18px 38px rgba(0,20,40,.22)}
.destination-search-box>img{width:22px;height:22px;opacity:.68}
.destination-search-box input{width:100%;min-height:58px;border:0;outline:0;background:transparent;color:#173a59;font:inherit;font-size:.98rem}
.destination-search-box input::placeholder{color:#748797}

.destination-filter-section{position:relative;z-index:5;margin-top:-132px;padding-bottom:0}
.destination-filter-card{padding:28px 30px;border-radius:20px}
.destination-filter-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);align-items:end;gap:36px;margin-bottom:22px}
.destination-filter-heading .section-kicker{margin-bottom:7px}
.destination-filter-heading h2{margin:0;color:#062b4f;font-size:clamp(1.7rem,3vw,2.35rem);line-height:1.08}
.destination-filter-heading p{margin:0;color:#607487;line-height:1.55}
.destination-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.destination-filter-field>span{display:block;margin:0 0 7px;color:#173a59;font-size:.8rem;font-weight:850;letter-spacing:.035em}
.destination-filter-field select{width:100%;min-height:52px;padding:11px 42px 11px 13px;border:1px solid #cddbe5;border-radius:11px;background:#fff;color:#173a59;font:inherit;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}
.destination-filter-field select:hover{border-color:#99b9ce}
.destination-filter-field select:focus{border-color:#2484ba;box-shadow:0 0 0 3px rgba(36,132,186,.12);outline:0}
.destination-filter-meta{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:20px;padding-top:18px;border-top:1px solid #e3ebf0}
.destination-filter-meta strong{display:block;color:#062b4f;font-size:1rem}
.destination-filter-meta span{display:block;margin-top:3px;color:#607487;font-size:.87rem}
.destination-clear-button{flex:0 0 auto;padding:9px 14px;border:1px solid #ccdce6;border-radius:9px;background:#fff;color:#0d5f8f;font-size:.86rem;font-weight:800;cursor:pointer}
.destination-clear-button:hover{background:#edf6fb;border-color:#a9c8da}
.destination-az-wrap{margin-top:12px;padding-top:12px;border-top:1px solid #e3ebf0}
.destination-az-label{display:block;margin-bottom:10px;color:#173a59;font-size:.8rem;font-weight:850;letter-spacing:.035em}
.destination-az-filter{justify-content:flex-start;margin-top:0}
.destination-az-filter button{min-width:35px}
.destination-az-filter button[disabled]{opacity:.34;cursor:not-allowed}
.destination-az-filter button[disabled]:hover{background:#fff;color:#16324a;border-color:#d8e0e7}

.destination-index-section{scroll-margin-top:95px;padding-top:34px}
.destination-results-heading{max-width:820px;margin-inline:auto}
.destination-index-advisory{display:grid;grid-template-columns:28px 1fr;gap:13px;max-width:980px;margin:28px auto 34px;padding:17px 20px;border:1px solid #ccdfeb;border-radius:14px;background:#eaf5fb}
.destination-index-advisory img{margin-top:2px}
.destination-index-advisory p{margin:0;color:#35566e;font-size:.92rem;line-height:1.5}
.destination-index-advisory strong{color:#062b4f}

.destination-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.destination-card{overflow:hidden;border:1px solid #e2e8ed;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(6,43,79,.06);transition:transform .18s ease,box-shadow .18s ease}
.destination-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(6,43,79,.10)}
.destination-card-image{display:block;aspect-ratio:16/10;overflow:hidden;background:#edf2f5}
.destination-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.destination-card:hover .destination-card-image img{transform:scale(1.025)}
.destination-card-copy{padding:17px 18px 18px}
.destination-country{display:inline-block;margin-bottom:7px;color:#0d5f8f;font-size:.72rem;font-weight:850;letter-spacing:.065em;text-transform:uppercase}
.destination-card-copy h3{margin:0 0 7px;color:#062b4f;font-size:1.14rem;line-height:1.2}
.destination-card-copy h3 a{color:inherit;text-decoration:none}
.destination-card-copy h3 a:hover{color:#0d5f8f;text-decoration:underline;text-underline-offset:3px}
.destination-card-copy p{margin:0 0 13px;color:#687b8b;font-size:.84rem;line-height:1.45}
.destination-card-copy .text-cta{font-size:.84rem}
.destination-card[hidden]{display:none!important}

.destination-no-results{max-width:760px;margin:22px auto 0;padding:42px 28px;text-align:center;border:1px dashed #cbdbe5;border-radius:16px;background:#f8fbfd}
.destination-no-results>img{margin:0 auto 13px}
.destination-no-results h3{margin:0 0 8px;color:#062b4f;font-size:1.35rem}
.destination-no-results p{max-width:620px;margin:0 auto 22px;color:#607487}
.destination-no-results .button{border:0;cursor:pointer}
.destination-final-cta{border-top:1px solid #dce9f0}
.primary-nav a[aria-current="page"]{color:#0d5f8f}

@media(max-width:1180px){
.destination-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.destination-hero-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)}
}
@media(max-width:900px){
.destination-hero-layout{grid-template-columns:1fr;gap:26px}
.destination-hero-search{max-width:620px;width:100%}
.destination-filter-heading{grid-template-columns:1fr;gap:8px}
.destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
.destinations-hero{min-height:570px}
.destinations-hero .hero-image{object-position:66% center}
.destinations-hero-overlay{background:linear-gradient(90deg,rgba(3,31,59,.94) 0%,rgba(6,43,79,.84) 62%,rgba(6,43,79,.56) 100%)}
.destinations-hero .hero-content-clean{padding-bottom:110px}
.destination-filter-section{margin-top:-92px}
.destination-filter-card{padding:22px 18px;border-radius:17px}
.destination-filter-grid{grid-template-columns:1fr}
.destination-filter-meta{align-items:flex-start;flex-direction:column}
.destination-clear-button{width:100%}
.destination-index-section{padding-top:32px}
.destination-grid{gap:14px}
.destination-card-copy{padding:15px}
}
@media(max-width:560px){
.destination-grid{grid-template-columns:1fr}
.destination-card-image{aspect-ratio:16/9}
.destination-index-advisory{grid-template-columns:1fr}
.destination-index-advisory img{margin:0}
.destination-search-box input{font-size:.92rem}
.destination-az-filter{gap:5px}
.destination-az-filter button{min-width:33px}
}
