/* RC535 — full-bleed Premium C hero. The wrapper stretches across the entire
   viewport even when WPBakery/Jannah/Epic News constrains its content column.
   A small JS correction compensates for asymmetric columns and scrollbars. */
.ks-home-hero{
  --ks-hero-viewport:100vw;
  --ks-hero-bleed-correction:0px;
  position:relative;
  box-sizing:border-box;
  display:block;
  width:var(--ks-hero-viewport);
  min-width:0;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  left:50%;
  transform:translateX(calc(-50% + var(--ks-hero-bleed-correction)));
  isolation:isolate;
  z-index:1;
}
.ks-home-hero,.ks-home-hero *{box-sizing:border-box}
.ks-home-hero[hidden]{display:none}
.ks-home-hero__inner{position:relative;isolation:isolate;overflow:visible;min-height:max(var(--ks-hero-height,620px),76svh);border-radius:0;padding:42px max(20px,calc((100% - 1200px)/2));background:#173949;box-shadow:none;display:grid;grid-template-rows:auto auto;align-content:end;row-gap:max(14px,calc(22px + var(--ks-hero-search-shift,-18px)));padding-bottom:max(16px,calc(clamp(68px,9svh,100px) - var(--ks-hero-search-shift,-18px)))}
.ks-home-hero__inner::before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:linear-gradient(90deg,rgba(5,25,33,var(--ks-hero-overlay,.42)),rgba(5,25,33,calc(var(--ks-hero-overlay,.42) + .12))),var(--ks-hero-bg);background-size:cover;background-position:var(--ks-hero-bg-x,50%) var(--ks-hero-bg-y,50%);z-index:-2}
.ks-home-hero__inner::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 0%,rgba(3,18,29,.22) 100%);z-index:-1}
.ks-home-hero__copy{grid-row:1;align-self:end;width:100%;max-width:1200px;margin-inline:auto;color:#fff;padding-right:12px}
.ks-home-hero__badge{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.12);font-size:12px;line-height:1.1;font-weight:700;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px)}
.ks-home-hero__badge i{display:block;width:8px;height:8px;border-radius:50%;background:#ff8c3a;box-shadow:0 0 0 4px rgba(255,140,58,.18)}
.ks-home-hero__copy h1{max-width:800px;margin:18px 0 14px;font-size:clamp(36px,3.6vw,50px);line-height:1.06;font-weight:900;letter-spacing:-.03em;color:#fff}
.ks-home-hero__copy h1 span{display:block;color:#edf6ff}
.ks-home-hero__copy p{margin:0;max-width:560px;font-size:18px;line-height:1.55;color:rgba(255,255,255,.92)}
.ks-home-hero__search{grid-row:2;width:100%;max-width:1200px;margin:28px auto 0}

/* RC536: the exact Kofer catalog search form is embedded here.  Its original
   browse.css and result-controls.css own all input/picker/filter geometry. */
.ks-home-hero__search.ks.ks-browse{width:100%;max-width:1200px;margin:0 auto;min-width:0;position:relative;isolation:isolate;z-index:4}
.ks-home-hero__search.ks.ks-browse > form.ks-booking-find{margin:0!important;max-width:none!important;width:100%!important}
.ks-home-hero__search .ks-booking-main{max-width:none!important}
.ks-home-hero__search.ks.ks-browse .ks-date-panel,
.ks-home-hero__search.ks.ks-browse .ks-guest-panel,
.ks-home-hero__search.ks.ks-browse .ks-destination-suggestions{z-index:50}
@media(max-width:760px){
  .ks-home-hero__inner{min-height:max(var(--ks-hero-height-mobile,680px),80svh);padding:28px 14px max(12px,calc(28px - var(--ks-hero-search-shift-mobile,0px)));border-radius:0;row-gap:max(14px,calc(18px + var(--ks-hero-search-shift-mobile,0px)))}
  .ks-home-hero__copy{max-width:100%;padding-right:0}
  .ks-home-hero__badge{font-size:10px;padding:7px 11px}
  .ks-home-hero__copy h1{font-size:34px;margin:16px 0 12px}
  .ks-home-hero__copy p{font-size:14px;max-width:100%}
  .ks-home-hero__search.ks.ks-browse{margin:0 auto}
  .ks-home-hero__inner::before{background-position:var(--ks-hero-bg-mobile-x,50%) var(--ks-hero-bg-mobile-y,50%)}
}

/* RC539: moving the search changes its spacing from the photo bottom,
   and never overlaps the heading; the original shared form is untouched. */


/* RC541 — mobile landing remains search-first; give equal breathing room
   above and below the shared search so it does not touch the site navigation
   or following content. */
@media screen and (max-width:760px){
  .ks-home-hero.ks-home-hero{background:transparent!important;box-shadow:none!important;padding:14px 0!important;}
  .ks-home-hero .ks-home-hero__inner{
    display:block!important;min-height:0!important;height:auto!important;
    padding:0!important;margin:0!important;background:transparent!important;
    box-shadow:none!important;border-radius:0!important;
  }
  .ks-home-hero .ks-home-hero__inner::before,
  .ks-home-hero .ks-home-hero__inner::after{display:none!important;content:none!important;background:none!important;}
  .ks-home-hero .ks-home-hero__copy{display:none!important;}
  .ks-home-hero .ks-home-hero__search.ks.ks-browse{
    grid-row:auto!important;max-width:none!important;width:100%!important;
    padding:0 10px!important;margin:0 auto!important;
    background:transparent!important;box-shadow:none!important;
  }
  .ks-home-hero .ks-home-hero__search.ks.ks-browse > form.ks-booking-find{
    margin:0!important;
  }
}
