:root{--fv-navy:#073b67;--fv-blue:#0a4b80;--fv-gold:#d7a43a;--fv-ink:#12345b;--fv-soft:#f5f8fb;--fv-border:#dce6ef}
body{background:#fff;color:var(--fv-ink)}
.header-area{background:rgba(255,255,255,.97)!important;box-shadow:0 2px 16px rgba(4,44,77,.08);position:relative;z-index:30}
.header-area .container{max-width:1400px}.main-nav{min-height:82px!important;display:flex!important;align-items:center!important}.main-nav> a:first-child img{height:70px!important;max-width:330px;object-fit:contain}.main-nav .logo{display:none!important}.main-nav .nav{margin-left:auto!important}.main-nav .nav li a{color:var(--fv-navy)!important;font-size:14px!important}.main-nav .nav li a:hover{color:var(--fv-gold)!important}
body>div[style*="padding: 5px 10px"],#BrojMobitela{display:none!important}
.fv-hero{position:relative;min-height:610px;overflow:hidden;background:#123}.fv-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.03);transition:opacity 1s ease,transform 7s ease}.fv-slide.active{opacity:1;transform:scale(1)}.fv-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,28,51,.68) 0%,rgba(2,28,51,.28) 52%,rgba(2,28,51,.06) 100%)}
.fv-hero-content{position:relative;z-index:2;max-width:1400px;margin:auto;padding:120px 48px 150px;color:white}.fv-eyebrow{font-size:14px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-bottom:16px}.fv-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:72px;line-height:.95;color:#fff;margin:0 0 22px;max-width:650px;text-shadow:0 3px 18px rgba(0,0,0,.2)}.fv-hero p{font-size:24px;line-height:1.35;max-width:660px;margin:0;color:#fff}.fv-pills{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.fv-pill{border:1px solid rgba(255,255,255,.45);background:rgba(0,32,59,.32);backdrop-filter:blur(6px);padding:10px 16px;border-radius:999px;font-size:14px}
.search-header{position:relative!important;z-index:10!important;max-width:1180px!important;margin:-68px auto 28px!important;padding:0!important;background:transparent!important;border-radius:14px!important}.search-header-title{display:none!important}.search-bar{background:#fff!important;border-radius:14px!important;box-shadow:0 16px 45px rgba(5,49,85,.2)!important;padding:14px 16px!important;display:grid!important;grid-template-columns:1fr 1px 1fr 280px!important;align-items:stretch!important;gap:0!important;overflow:hidden}.date-field{padding:8px 24px!important;cursor:pointer}.date-field label{display:block;color:#54708b!important;font-size:11px!important;letter-spacing:.08em;font-weight:700!important;margin-bottom:5px}.date-input{display:flex;gap:10px;align-items:center}.date-input input{border:0!important;color:var(--fv-navy)!important;font-weight:700!important;font-size:17px!important;width:100%;outline:none!important;background:transparent!important}.date-divider{width:1px;background:var(--fv-border);height:auto!important}.search-button{margin:0!important;border:0!important;border-radius:10px!important;background:var(--fv-navy)!important;color:#fff!important;font-weight:700!important;letter-spacing:.02em;min-height:64px!important;transition:.2s}.search-button:hover{background:#0a527f!important;transform:translateY(-1px)}
.section.properties{padding:0 0 34px!important;margin:0!important}.section.properties .container{max-width:1220px!important}.properties-box{gap:22px;flex-wrap:nowrap!important}.properties-items{background:#fff!important;padding:0!important;flex:1 1 0!important;max-width:none!important;border:1px solid #e4ebf1;border-radius:14px;overflow:hidden;box-shadow:0 8px 28px rgba(4,44,77,.08);transition:.25s}.properties-items:hover{transform:translateY(-4px);box-shadow:0 15px 34px rgba(4,44,77,.13)}.properties-items .item{margin:0!important;background:#fff!important;border:0!important;padding:0 0 22px!important}.properties-items .item>a{display:block!important;height:310px!important;overflow:hidden!important}.properties-items .item>a img{width:100%!important;height:100%!important;object-fit:cover!important;transition:.5s}.properties-items:hover .item>a img{transform:scale(1.025)}.properties-items .item>a>div{font-family:Georgia,'Times New Roman',serif!important;font-size:42px!important;text-shadow:0 2px 12px rgba(0,0,0,.55)!important;-webkit-text-stroke:0!important}.properties-items h4{font-family:Georgia,'Times New Roman',serif!important;font-size:23px!important;margin:22px 26px 10px!important}.properties-items h4 a{color:var(--fv-navy)!important}.properties-items .selected-dates{font-family:Poppins,sans-serif!important}.properties-items .main-button{margin:18px 26px 0!important;text-align:left!important}.properties-items .main-button a{display:inline-block!important;background:linear-gradient(90deg,#c8942e,#e0b657)!important;border-radius:999px!important;color:#fff!important;padding:11px 24px!important;font-size:13px!important;text-transform:uppercase!important;letter-spacing:.04em}
#weather{max-width:1220px;margin:0 auto 38px;border-radius:12px;overflow:hidden;box-shadow:0 5px 18px rgba(4,44,77,.07)}
.fv-dalmatia{max-width:1220px;margin:0 auto 55px;padding:0 12px;text-align:center}.fv-dalmatia h2{font-family:Georgia,'Times New Roman',serif;color:var(--fv-navy);font-size:40px;margin-bottom:6px}.fv-dalmatia>p{color:#617891;margin-bottom:24px}.fv-dest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.fv-dest{position:relative;min-height:190px;border-radius:10px;overflow:hidden;text-align:left;background-size:cover;background-position:center;text-decoration:none!important}.fv-dest:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,45,77,.88),rgba(0,45,77,0) 65%)}.fv-dest span{position:absolute;z-index:2;left:18px;right:18px;bottom:15px;color:white;font-weight:600;font-size:16px}.fv-more{display:inline-block;margin-top:24px;background:var(--fv-navy);color:white!important;padding:12px 28px;border-radius:999px;text-decoration:none!important;font-size:13px}
footer{background:var(--fv-navy)!important;margin-top:0!important;padding:28px 0!important}footer p,footer a{color:#fff!important}
@media(max-width:992px){.main-nav> a:first-child img{height:58px!important;max-width:230px}.fv-hero{min-height:520px}.fv-hero-content{padding:100px 24px 135px}.fv-hero h1{font-size:48px}.fv-hero p{font-size:19px}.search-header{margin:-62px 16px 26px!important}.search-bar{grid-template-columns:1fr 1px 1fr!important}.search-button{grid-column:1/-1;margin-top:10px!important}.properties-box{flex-wrap:wrap!important;gap:16px}.properties-items{flex-basis:100%!important}.fv-dest-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.fv-hero{min-height:470px}.fv-hero-content{padding:90px 20px 120px}.fv-hero h1{font-size:39px}.fv-hero p{font-size:17px}.fv-pills{gap:7px}.fv-pill{font-size:12px;padding:8px 11px}.search-header{margin:-54px 10px 22px!important}.search-bar{grid-template-columns:1fr!important;padding:8px!important}.date-divider{display:none}.date-field{padding:10px 12px!important;border-bottom:1px solid var(--fv-border)}.properties-items .item>a{height:230px!important}.properties-items .item>a>div{font-size:32px!important}.fv-dest-grid{grid-template-columns:1fr}.fv-dest{min-height:170px}.fv-dalmatia h2{font-size:32px}}

/* refinements */
.home-page .main-nav .logo{display:block!important}.home-page .main-nav .logo h1{font-size:18px!important;color:var(--fv-navy)!important}.home-page .fv-header-contact{display:flex!important}.home-page #BrojMobitela{display:none!important}.home-page footer{background:var(--site-accent)!important}.home-page footer p,.home-page footer a{color:#12345b!important}
.properties-items .main-button{margin:8px 26px 0!important}.properties-items .main-button a{padding:9px 20px!important}

/* v3 homepage header refinement */
.home-page .header-area.header-sticky{position:sticky!important;top:0!important;background:#fff!important;z-index:9999!important}
.home-page .main-nav{min-height:76px!important}
.home-page .main-nav .logo{display:flex!important}
.home-page .main-nav .logo h1{font-family:'Poppins',sans-serif!important;font-size:20px!important;font-weight:600!important;letter-spacing:-.025em!important;text-transform:none!important}
.home-page .main-nav>a:first-child:not(.logo){display:none!important}
@media(max-width:767px){.home-page .main-nav{min-height:66px!important}.home-page .main-nav .logo h1{font-size:16px!important}}

/* v3.2 — restore prominent responsive villa names over homepage cards. */
.home-page .properties-items .item>a>div{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(34px,4.1vw,58px)!important;
  line-height:1!important;
  font-weight:700!important;
  color:#fff!important;
  text-shadow:0 2px 4px rgba(0,0,0,.55),0 7px 22px rgba(0,0,0,.55)!important;
  letter-spacing:-.025em!important;
}
@media(max-width:600px){
  .home-page .properties-items .item>a>div{font-size:clamp(31px,10vw,44px)!important;text-shadow:0 2px 4px rgba(0,0,0,.6),0 6px 18px rgba(0,0,0,.52)!important}
}
/* Parametric destination cards: 1/2/3/4+ items fill the available width cleanly. */
.fv-dest-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}

/* v3.5 — homepage responsive mode follows existing JS isMobile (phones + tablets). */
.is-mobile-layout body.home-page .fv-header-contact{display:none!important}
.is-mobile-layout body.home-page .fv-hero{min-height:620px!important}
.is-mobile-layout body.home-page .fv-hero-content{padding:82px 22px 210px!important}
.is-mobile-layout body.home-page .fv-media-logo{
  left:18px!important;bottom:118px!important;top:auto!important;
  padding:8px 12px!important;border-radius:11px!important
}
.is-mobile-layout body.home-page .fv-media-logo img{height:76px!important;max-width:280px!important}
.is-mobile-layout body.home-page .search-header{position:relative!important;z-index:8!important;margin:-42px 14px 28px!important}
.is-mobile-layout body.home-page .search-bar{grid-template-columns:1fr!important;padding:8px!important}
.is-mobile-layout body.home-page .date-divider{display:none!important}
.is-mobile-layout body.home-page .date-field{padding:11px 13px!important;border-bottom:1px solid var(--fv-border)!important}
.is-mobile-layout body.home-page .search-button{grid-column:1/-1!important;width:100%!important;margin-top:8px!important;justify-content:center!important}
.is-mobile-layout body.home-page .section.properties{margin:28px 14px!important;padding:0!important}
.is-mobile-layout body.home-page .properties-items{border-radius:16px!important;overflow:hidden!important}
.is-mobile-layout body.home-page .properties-items .item>a{height:250px!important}


/* v3.6 — contact strip exists only when JS isMobile is true. */
.fv-mobile-home-contact{display:none}
.is-mobile-layout body .fv-mobile-home-contact{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:8px 12px;
  min-height:44px;
  background:#fff;
  border-bottom:1px solid rgba(7,59,103,.10);
  box-shadow:0 4px 12px rgba(7,59,103,.05);
  position:relative;
  z-index:20;
}
.is-mobile-layout body .fv-mobile-home-contact a{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 10px;
  border-radius:999px;
  background:#f4f8fb;
  color:var(--fv-navy)!important;
  text-decoration:none!important;
  font-size:12px;
  line-height:1;
  white-space:nowrap;
}
.is-mobile-layout body .fv-mobile-home-contact a b{
  overflow:hidden;
  text-overflow:ellipsis;
  font-weight:600;
}
.is-mobile-layout body .fv-mobile-contact-email{max-width:58%}
.is-mobile-layout body .fv-mobile-contact-phone{flex:0 0 auto}
@media(max-width:430px){
  .is-mobile-layout body .fv-mobile-home-contact{gap:5px;padding:7px 7px}
  .is-mobile-layout body .fv-mobile-home-contact a{font-size:10.5px;padding:7px 8px}
}

/* v3.8 — center "Prikaži detalje" label inside homepage button. */
.home-page .properties-items .main-button a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1.2!important;
  min-height:38px!important;
  padding:9px 20px!important;
  box-sizing:border-box!important;
}

/* v3.9 — isMobile search controls: compact dates + search button. */
.is-mobile-layout body.home-page .search-bar{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:8px!important;
  row-gap:8px!important;
  align-items:center!important;
}
.is-mobile-layout body.home-page .date-field{
  padding:8px 10px!important;
  border-bottom:0!important;
  min-height:48px!important;
}
.is-mobile-layout body.home-page .date-divider{display:none!important}
.is-mobile-layout body.home-page .search-button{
  grid-column:1/-1!important;
  width:auto!important;
  min-width:132px!important;
  justify-self:center!important;
  margin:2px auto 0!important;
  padding:9px 22px!important;
  min-height:38px!important;
}
@media(max-width:430px){
  .is-mobile-layout body.home-page .search-bar{column-gap:5px!important}
  .is-mobile-layout body.home-page .date-field{padding:7px 7px!important}
  .is-mobile-layout body.home-page .search-button{min-width:122px!important;padding:8px 18px!important}
}

/* v3.10 — compact desktop availability search; isMobile v3.9 stays unchanged. */
@media(min-width:993px){
  .home-page .search-header{
    max-width:860px!important;
    margin:-58px auto 34px!important;
  }
  .home-page .search-bar{
    grid-template-columns:minmax(210px,1fr) 1px minmax(210px,1fr) auto!important;
    gap:0!important;
    padding:9px 10px!important;
    align-items:center!important;
  }
  .home-page .date-field{
    min-height:54px!important;
    padding:8px 16px!important;
  }
  .home-page .search-button{
    width:auto!important;
    min-width:132px!important;
    min-height:42px!important;
    margin:0 4px 0 12px!important;
    padding:9px 20px!important;
    justify-content:center!important;
    align-self:center!important;
  }
}

/* v3.11 — desktop hero breathing room: keep logo clear of availability search. */
@media(min-width:993px){
  .home-page .fv-hero{min-height:590px!important}
  .home-page .fv-hero-content{padding-bottom:165px!important}
  .home-page .fv-media-logo{bottom:34px!important}
}
@media(min-width:993px) and (max-width:1250px){
  .home-page .fv-hero{min-height:620px!important}
  .home-page .fv-media-logo{bottom:42px!important}
}

/* v3.12 — more desktop hero height: dedicated vertical lane for the logo. */
@media(min-width:993px){
  .home-page .fv-hero{min-height:700px!important}
  .home-page .fv-hero-content{padding-bottom:230px!important}
  .home-page .fv-media-logo{bottom:72px!important}
}
@media(min-width:993px) and (max-width:1250px){
  .home-page .fv-hero{min-height:750px!important}
  .home-page .fv-hero-content{padding-bottom:250px!important}
  .home-page .fv-media-logo{bottom:78px!important}
}

/* v3.13 — center:true gets its own row without stretching the property card. */
.home-page .properties-box:has(> .fv-centered-property){
  justify-content:center!important;
}
.home-page .properties-box > .fv-centered-property{
  flex:0 0 50%!important;
  width:50%!important;
  max-width:50%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.is-mobile-layout body.home-page .properties-box > .fv-centered-property{
  flex:0 0 100%!important;
  width:100%!important;
  max-width:100%!important;
}

/* v3.14 — prevent page-level horizontal overflow in existing isMobile mode. */
.is-mobile-layout html,
.is-mobile-layout body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
.is-mobile-layout body.home-page .section.properties,
.is-mobile-layout body.home-page .section.properties .container{
  max-width:100%!important;
  box-sizing:border-box!important;
}
.is-mobile-layout body.home-page .properties-box{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
.is-mobile-layout body.home-page .properties-items,
.is-mobile-layout body.home-page .properties-items .item,
.is-mobile-layout body.home-page .properties-items .item>a{
  max-width:100%!important;
  box-sizing:border-box!important;
}
.is-mobile-layout body.home-page .properties-items .item>a>div{
  max-width:calc(100% - 20px)!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

/* Keep mobile villa names on one line above the details action. */
@media(max-width:600px){
 .home-page .properties-items .item>a>div{font-size:clamp(23px,7.2vw,34px)!important;white-space:nowrap!important;letter-spacing:-.04em!important;max-width:100%!important;box-sizing:border-box!important}
}

/* v3.13: mobile villa titles and corner image logos */
.properties-items .item>a{position:relative!important}
.properties-items .item>a img.fv-card-corner-logo{position:absolute!important;left:14px!important;bottom:14px!important;top:auto!important;width:auto!important;height:auto!important;max-width:115px!important;max-height:65px!important;object-fit:contain!important;z-index:3!important;filter:drop-shadow(0 2px 5px rgba(0,0,0,.45));transform:none!important}
@media(max-width:600px){
 .is-mobile-layout body.home-page .section.properties{margin-left:5px!important;margin-right:5px!important}
 .home-page .section.properties .container{padding-left:5px!important;padding-right:5px!important;width:100%!important;max-width:100%!important}
 .home-page .properties-items h4{font-size:clamp(19px,5.7vw,27px)!important;line-height:1.2!important;margin:16px 9px 9px!important;letter-spacing:-.035em!important}
 .home-page .properties-items h4 a{white-space:nowrap!important}
 .home-page .properties-items .main-button{margin-left:9px!important;margin-right:9px!important}
 .properties-items .item>a img.fv-card-corner-logo{max-width:88px!important;max-height:50px!important;left:10px!important;bottom:10px!important}
}
/* Independent visibility settings for desktop and mobile header contacts */

/* White translucent badge behind villa-card logos (home page only). */
.properties-items .item>a img.fv-card-corner-logo {
  background:rgba(255,255,255,.94)!important;
  padding:9px 12px!important;
  border-radius:12px!important;
  box-shadow:0 8px 24px rgba(0,31,58,.18)!important;
  backdrop-filter:blur(5px);
  filter:none!important;
  box-sizing:content-box!important;
}
@media(max-width:600px){
 .properties-items .item>a img.fv-card-corner-logo {
  padding:7px 9px!important;
  border-radius:9px!important;
 }
}

/* Mobile: ONLY villa name over the card photo (L&S, S&L).
   Location below the photo stays at its original size. */
@media (max-width:600px) {
  .home-page .properties-items .item > a > div {
    font-size:clamp(32px, 9vw, 42px)!important;
    white-space:nowrap!important;
    max-width:calc(100% - 12px)!important;
    letter-spacing:-.035em!important;
  }
}

/* Mobile villa title: centered over photo, almost full width. */
@media (max-width:600px) {
  .home-page .properties-items .item > a > div,
  .is-mobile-layout body.home-page .properties-items .item > a > div {
    left:50%!important;
    right:auto!important;
    transform:translate(-50%, -50%)!important;
    width:calc(100% - 8px)!important;
    max-width:calc(100% - 8px)!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    text-align:center!important;
  }
}

/* Final homepage adjustments: one-line title and logos in the upper right. */
.home-page .fv-hero h1{max-width:none!important;white-space:nowrap!important;font-size:clamp(25px,5.2vw,72px)!important;line-height:1.1!important}
.home-page .fv-hero-content{padding-bottom:150px!important}
.home-page .fv-hero{min-height:560px!important}
.properties-items .item>a img.fv-card-corner-logo{left:auto!important;bottom:auto!important;right:14px!important;top:14px!important}
.is-mobile-layout body.home-page .fv-hero-content{padding:82px 22px 150px!important}
@media(max-width:600px){
 .home-page .fv-hero-content,
 .is-mobile-layout body.home-page .fv-hero-content{padding:80px 16px 120px!important}
 .home-page .fv-hero{min-height:470px!important}
 .properties-items .item>a img.fv-card-corner-logo{right:10px!important;top:10px!important}
}
