.wv-dh{box-sizing:border-box;width:100%;max-width:var(--wv-max);margin:0 auto;background:var(--wv-container-bg,var(--wv-page-bg,#eaf8fc));padding:0 0 28px;box-shadow:var(--wv-container-shadow,none);color:var(--wv-text);font-family:var(--wv-bodyfont)}.wv-dh *{box-sizing:border-box}.wv-hero{position:relative;isolation:isolate;margin:0 0 14px;border-radius:0 0 30px 30px;background-size:cover;background-position:center;overflow:hidden;display:flex;align-items:flex-end;padding:42px 48px}.wv-hero::before{content:'';position:absolute;inset:0;background-image:var(--wv-hero-image);background-size:cover;background-position:center;opacity:var(--wv-hero-opacity,1);z-index:-2}.wv-hero::after{content:'';position:absolute;inset:0;background:var(--wv-hero-overlay,rgba(0,61,85,.22));z-index:-1}.wv-hero-copy{width:100%;position:relative;z-index:1}.wv-hero-logo{position:absolute;top:24px;left:50%;transform:translateX(-50%);width:var(--wv-logo-size,150px);max-width:90%;max-height:120px;object-fit:contain}.wv-eyebrow{font-size:12px;letter-spacing:4px;font-weight:700;color:#fff;margin-bottom:12px}.wv-headline{letter-spacing:-1px;text-shadow:0 2px 10px rgba(0,0,0,.14)}.wv-headline-line1,.wv-headline-line2{font-size:inherit}.wv-subtitle{margin-top:18px;color:#fff;letter-spacing:6px;font-size:14px;font-weight:700}.wv-booking{margin:0 38px var(--wv-section-gap,14px);background:var(--wv-card);border-radius:24px;min-height:96px;display:flex;align-items:center;gap:18px;padding:14px 20px 14px 26px;text-decoration:none;color:var(--wv-text);box-shadow:0 8px 26px rgba(0,70,100,.08)}.wv-book-icon,.wv-book-arrow{width:68px;height:68px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.wv-book-icon svg,.wv-book-arrow svg{width:32px;height:32px}.wv-book-icon img{width:38px;height:38px;object-fit:contain}.wv-book-copy{display:flex;flex-direction:column;gap:4px;flex:1}.wv-book-copy strong{font-family:var(--wv-sectionfontfamily);font-size:21px;letter-spacing:1.3px}.wv-book-copy small{font-size:14px;color:var(--wv-muted)}.wv-section{margin:0 38px var(--wv-section-gap,14px);background:var(--wv-card);border-radius:var(--wv-radius);padding:var(--wv-section-padding,22px);box-shadow:0 8px 26px rgba(0,70,100,.05)}.wv-section-head{display:flex;align-items:center;gap:var(--wv-section-title-gap,18px);margin-bottom:18px}.wv-section-head h2{font-family:var(--wv-sectionfontfamily);font-size:var(--wv-sectionfont);font-weight:700;letter-spacing:1.2px;margin:0;color:var(--wv-secondary);white-space:nowrap}.wv-section-head span{height:1px;background:var(--wv-border);flex:1}.wv-section-head a{font-size:10px;letter-spacing:2px;color:#4c79a5;text-decoration:none;white-space:nowrap}.wv-section-head b{font-size:20px;vertical-align:-2px;margin-left:3px}.wv-items{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--wv-icon-gap,34px);align-items:start}.wv-item{text-decoration:none;color:var(--wv-text);display:flex;flex-direction:column;align-items:center;min-width:0}.wv-icon{width:var(--wv-icon);height:var(--wv-icon);border-radius:var(--wv-icon-radius,18px);display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 5px 18px rgba(0,72,100,.13);border:1px solid rgba(0,130,165,.12);color:var(--wv-primary);overflow:hidden;flex:0 0 auto}.wv-icon svg{width:70%;height:70%;display:block}.wv-icon img{width:100%;height:100%;object-fit:contain}.wv-label{font-family:var(--wv-itemfontfamily);font-size:var(--wv-itemfont);font-weight:600;text-align:center;margin-top:8px;line-height:var(--wv-label-line,1.15);font-weight:var(--wv-label-weight,600);max-width:110px}.wv-hotels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;min-height:210px}.wv-hotel{position:relative;text-decoration:none;color:#fff;border-radius:16px;overflow:hidden;border:1px solid #e7f0f4;background:#dcecf2;min-width:0;height:210px;display:block}.wv-hotel-effect-accordion .wv-hotel{transition:all var(--wv-hotel-speed,320ms) ease}.wv-hotel-effect-accordion:hover .wv-hotel{transform:none}.wv-hotel-effect-accordion:hover .wv-hotel:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,55,85,.18)}.wv-hotel-img{position:absolute;inset:0;background:#dcecf2;overflow:hidden}.wv-hotel-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--wv-hotel-speed,320ms) ease}.wv-hotel:hover .wv-hotel-img img{transform:scale(1.04)}.wv-hotel-img:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,28,55,.72))}.wv-hotel-bottom{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;gap:8px;padding:14px 12px;min-height:76px;z-index:2}.wv-hotel-bottom strong{font-size:15px;line-height:1.15;flex:1;color:#fff}.wv-hotel-bottom span{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.88);color:#123c6b;display:flex;align-items:center;justify-content:center;font-size:25px;flex:0 0 auto}.wv-footer{position:relative;isolation:isolate;margin-bottom:var(--wv-section-gap,14px);overflow:hidden;margin:0 38px;border-radius:26px;padding:35px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;background-size:cover;background-position:center;background-repeat:no-repeat}.wv-footer:before{content:"";position:absolute;inset:0;background-image:var(--wv-footer-image);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:var(--wv-footer-image-opacity,0);z-index:-1;pointer-events:none}.wv-footer>*{position:relative;z-index:1}.wv-footer img{width:var(--wv-logo-size,150px);max-width:90%;max-height:120px;object-fit:contain}.wv-footer strong{letter-spacing:3px}.wv-footer small{letter-spacing:4px;opacity:.85}@media(max-width:800px){.wv-hero{padding:32px 24px;min-height:var(--wv-mobile-hero-height,480px)!important;height:var(--wv-mobile-hero-height,480px)!important}.wv-headline{font-size:clamp(34px,6vw,52px)!important}.wv-headline-line1{font-size:var(--wv-mobile-headline-1)}.wv-headline-line2{font-size:var(--wv-mobile-headline-2)}.wv-booking,.wv-section,.wv-footer{margin-left:12px;margin-right:12px}.wv-items{grid-template-columns:repeat(4,1fr);gap:var(--wv-mobile-item-gap,12px) 10px}.wv-hotels{grid-template-columns:repeat(2,minmax(0,1fr));min-height:180px}.wv-hotel{height:180px}.wv-section-head{gap:8px}.wv-section-head h2{font-size:21px}.wv-section-head a{font-size:8px;letter-spacing:1px}.wv-icon{width:var(--wv-mobile-icon);height:var(--wv-mobile-icon)}.wv-label{font-size:13px}.wv-booking{min-height:84px;padding-left:18px}.wv-book-icon,.wv-book-arrow{width:58px;height:58px}.wv-book-copy strong{font-size:18px}}@media(max-width:420px){.wv-items{grid-template-columns:repeat(3,1fr)}.wv-section{padding:18px 12px}.wv-section-head h2{font-size:19px}.wv-section-head a{display:none}.wv-book-arrow{width:50px;height:50px}.wv-book-icon{width:56px;height:56px}}

/* White Valley hotel layout hard reset: title above, cards below. */
.wv-dh .wv-section.wv-hotels,
.wv-dh .wv-section.wv-hotels * { box-sizing:border-box; }
.wv-dh .wv-section.wv-hotels { display:block !important; width:auto !important; }
.wv-dh .wv-section.wv-hotels .wv-section-head { display:flex !important; width:100% !important; }
.wv-dh .wv-section.wv-hotels .wv-hotels {
  display:grid !important;
  width:100% !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  grid-auto-flow:row !important;
  gap:12px !important;
  align-items:stretch !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  position:relative !important;
}
.wv-dh .wv-section.wv-hotels .wv-hotel {
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:210px !important;
  min-height:210px !important;
  flex:none !important;
  display:block !important;
  position:relative !important;
  transform:none !important;
}
.wv-dh .wv-section.wv-hotels .wv-hotel-img,
.wv-dh .wv-section.wv-hotels .wv-hotel-img img {
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
}
.wv-dh .wv-section.wv-hotels .wv-hotel-img img { object-fit:cover !important; }
.wv-dh .wv-section.wv-hotels .wv-hotel-bottom {
  position:absolute !important;
  left:0 !important; right:0 !important; bottom:0 !important;
}
.wv-dh .wv-section.wv-hotels .wv-hotel-bottom strong {
  display:block !important;
  width:auto !important;
  white-space:normal !important;
  color:#fff !important;
}
@media(max-width:800px){
  .wv-dh .wv-section.wv-hotels .wv-hotels { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .wv-dh .wv-section.wv-hotels .wv-hotel { height:180px !important; min-height:180px !important; }
}
@media(max-width:420px){
  .wv-dh .wv-section.wv-hotels .wv-hotels { grid-template-columns:1fr 1fr !important; }
}

/* White Valley Mobile Final Layout — large hero + wave-style footer. */
html,body.wv-dh-body,body:has(.wv-dh){margin:0!important;padding:0!important;background:var(--wv-page-bg,#eaf8fc)!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
.wv-dh{overflow:hidden}
.wv-dh .wv-hero{border:0!important;outline:0!important;box-shadow:none!important}

/* Desktop: hero and footer share the same horizontal frame and rounded side treatment. */
.wv-hero{margin:0 38px 14px!important;border-radius:26px!important;overflow:hidden}
.wv-footer{margin:0 38px!important;border-radius:26px!important;overflow:hidden}

/* Footer wave treatment — image remains fully editable from the admin panel. */
.wv-footer{
  min-height:150px;
  padding:34px 28px 28px!important;
  background-color:#075a70!important;
  background-size:cover;
  background-position:center;
  isolation:isolate;
}
.wv-footer:before{
  opacity:var(--wv-footer-image-opacity,1)!important;
}
.wv-footer:after{
  content:"";
  position:absolute;
  z-index:0;
  left:-8%;
  right:-8%;
  top:-58px;
  height:92px;
  border-top:3px solid rgba(255,255,255,.95);
  border-radius:50% 50% 0 0 / 100% 100% 0 0;
  box-shadow:0 -7px 0 rgba(36,193,218,.72),0 -13px 0 rgba(255,255,255,.35);
  pointer-events:none;
}
.wv-footer>*{position:relative;z-index:2}

@media(max-width:800px){
  .wv-dh{width:100%;max-width:none;padding-bottom:18px}

  /* Large mobile hero: same width, margins and rounded side treatment as footer. */
  .wv-dh .wv-hero{
    width:auto!important;
    margin:0 10px 12px!important;
    min-height:var(--wv-mobile-hero-height,480px)!important;
    height:var(--wv-mobile-hero-height,480px)!important;
    border:0!important;
    border-radius:26px!important;
    padding:28px 20px 30px!important;
    background-position:center center;
  }
  .wv-dh .wv-hero-logo{top:18px!important;width:min(var(--wv-mobile-logo-size,var(--wv-logo-size,150px)),90vw)!important;max-width:90vw!important;max-height:70px!important}
  .wv-dh .wv-eyebrow{font-size:9px!important;letter-spacing:2.6px!important;margin-bottom:9px!important;font-weight:600;line-height:1.2}
  .wv-dh .wv-headline{font-size:inherit!important;letter-spacing:-.35px!important;line-height:1.02!important;text-shadow:0 1px 5px rgba(0,0,0,.12);font-weight:600!important;margin:0}
  .wv-dh .wv-headline-line1{font-size:var(--wv-mobile-headline-1)!important}
  .wv-dh .wv-headline-line2{font-size:var(--wv-mobile-headline-2)!important}
  .wv-dh .wv-subtitle{margin-top:12px!important;font-size:10px!important;letter-spacing:3.5px!important;font-weight:600}

  .wv-booking{margin:0 10px 12px!important;border-radius:20px;min-height:82px;padding:12px 16px;gap:12px}
  .wv-book-icon,.wv-book-arrow{width:56px;height:56px}.wv-book-icon svg,.wv-book-arrow svg{width:27px;height:27px}
  .wv-book-copy strong{font-size:17px;letter-spacing:.6px;font-weight:600}.wv-book-copy small{font-size:12px}

  .wv-section{margin:0 10px 12px!important;border-radius:20px;padding:18px 14px;box-shadow:0 5px 18px rgba(0,70,100,.045)}
  .wv-section-head{margin-bottom:15px;gap:var(--wv-section-title-gap,8px)}
  .wv-section-head h2{font-size:var(--wv-sectionfont-mobile)!important;font-weight:var(--wv-section-weight,700)!important;letter-spacing:.65px}
  .wv-section-head a{font-size:7px;letter-spacing:1.15px}.wv-section-head b{font-size:16px}
  .wv-items{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:8px 2px!important}
  .wv-icon{width:var(--wv-mobile-icon);height:var(--wv-mobile-icon);border-radius:16px;box-shadow:0 4px 12px rgba(0,72,100,.10)}
  .wv-icon svg{width:76%;height:76%}.wv-label{font-size:8.5px!important;font-weight:500;margin-top:5px;line-height:1.02;max-width:58px!important;word-break:normal}
  .wv-hotels{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.wv-hotel{height:165px;border-radius:14px}.wv-hotel-bottom{padding:10px;min-height:64px}.wv-hotel-bottom strong{font-size:13px;font-weight:600}.wv-hotel-bottom span{width:29px;height:29px;font-size:21px}

  /* Footer: compact wave banner matching the supplied reference. */
  .wv-dh .wv-footer{
    margin:0 10px!important;
    min-height:155px!important;
    border-radius:26px!important;
    padding:34px 16px 28px!important;
    background-position:center!important;
  }
  .wv-dh .wv-footer:after{
    top:-48px;
    height:80px;
    border-top-width:3px;
    box-shadow:0 -6px 0 rgba(36,193,218,.75),0 -11px 0 rgba(255,255,255,.32);
  }
  .wv-dh .wv-footer img{width:min(var(--wv-logo-size,150px),42vw)!important;max-height:72px!important}
}
@media(max-width:420px){
  .wv-dh .wv-items{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:7px 1px!important}
  .wv-dh .wv-icon{width:44px!important;height:44px!important;border-radius:11px!important}
  .wv-dh .wv-label{font-size:7.5px!important;max-width:52px!important}
  .wv-dh .wv-section{padding:16px 9px!important}
  .wv-dh .wv-section-head{margin-bottom:12px!important}
  .wv-dh .wv-section-head h2{font-size:18px!important}
}

/* Mobile hero baseline: 480px. Older fixed-size header rules were removed so they cannot override the saved setting. */

/* Header + Footer customization controls — final override layer. */
.wv-dh .wv-hero{
  border-width:var(--wv-hero-border-width,0px)!important;
  border-style:var(--wv-hero-border-style,solid)!important;
  border-color:var(--wv-hero-border-color,#fff)!important;
  border-radius:var(--wv-hero-radius,26px)!important;
  background-color:var(--wv-hero-bg,#075b75)!important;
  background-position:var(--wv-hero-position,center center)!important;
}
.wv-dh .wv-hero.wv-hero-shape-square{border-radius:0!important}
.wv-dh .wv-hero.wv-hero-shape-soft{border-radius:16px!important}
.wv-dh .wv-hero.wv-hero-shape-rounded{border-radius:var(--wv-hero-radius,38px)!important}
.wv-dh .wv-headline{letter-spacing:var(--wv-hero-headline-spacing,4px)!important;line-height:var(--wv-hero-headline-line,1.28)!important}
.wv-dh .wv-subtitle{font-size:var(--wv-hero-subtitle-size,14px)!important;letter-spacing:var(--wv-hero-subtitle-spacing,4px)!important;line-height:var(--wv-hero-subtitle-line,1.2)!important}
.wv-dh .wv-eyebrow{font-size:var(--wv-hero-eyebrow-size,10px)!important;letter-spacing:var(--wv-hero-eyebrow-spacing,3px)!important}
.wv-dh .wv-hero::before{background-position:var(--wv-hero-position,center center)!important}

.wv-dh .wv-footer{
  min-height:var(--wv-footer-height,155px)!important;
  height:var(--wv-footer-height,155px)!important;
  border-width:var(--wv-footer-border-width,0px)!important;
  border-style:solid!important;
  border-color:var(--wv-footer-border-color,#fff)!important;
  border-radius:var(--wv-footer-radius,26px)!important;
  background-position:var(--wv-footer-position,center center)!important;
}
.wv-dh .wv-footer.wv-footer-shape-square{border-radius:0!important}
.wv-dh .wv-footer.wv-footer-shape-soft{border-radius:16px!important}
.wv-dh .wv-footer.wv-footer-shape-rounded{border-radius:var(--wv-footer-radius,26px)!important}
.wv-dh .wv-footer:not(.wv-footer-wave)::after{display:none!important}
.wv-dh .wv-footer img{width:var(--wv-footer-logo-size,150px)!important}
.wv-dh .wv-footer strong{font-size:var(--wv-footer-text-size,16px)!important;letter-spacing:var(--wv-footer-text-spacing,3px)!important}
.wv-dh .wv-footer small{font-size:var(--wv-footer-tagline-size,14px)!important;letter-spacing:var(--wv-footer-tagline-spacing,4px)!important}

@media(max-width:800px){
  .wv-dh .wv-hero{height:var(--wv-mobile-hero-height,480px)!important;min-height:var(--wv-mobile-hero-height,480px)!important}
  .wv-dh .wv-eyebrow{font-size:var(--wv-hero-mobile-eyebrow-size,10px)!important}
  .wv-dh .wv-subtitle{font-size:var(--wv-hero-mobile-subtitle-size,12px)!important}
  .wv-dh .wv-footer{height:var(--wv-footer-mobile-height,155px)!important;min-height:var(--wv-footer-mobile-height,155px)!important}
  .wv-dh .wv-footer img{width:var(--wv-footer-mobile-logo-size,90px)!important}
  .wv-dh .wv-footer strong{font-size:var(--wv-footer-mobile-text-size,14px)!important}
  .wv-dh .wv-footer small{font-size:var(--wv-footer-mobile-tagline-size,12px)!important}
}


/* Footer follows the Header visual language, at a smaller scale. */
.wv-dh .wv-footer.wv-footer-hero{
  position:relative!important;
  isolation:isolate!important;
  margin:0 38px!important;
  min-height:var(--wv-footer-height,125px)!important;
  height:var(--wv-footer-height,125px)!important;
  padding:22px 28px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  background-color:var(--wv-footer-bg,#075b75)!important;
  background-position:var(--wv-footer-position,center center)!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  border-width:var(--wv-footer-border-width,0px)!important;
  border-style:solid!important;
  border-color:var(--wv-footer-border-color,#fff)!important;
}
.wv-dh .wv-footer.wv-footer-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background-image:var(--wv-footer-image)!important;
  background-position:var(--wv-footer-position,center center)!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  opacity:var(--wv-footer-image-opacity,1)!important;
  z-index:-2!important;
  pointer-events:none!important;
}
.wv-dh .wv-footer.wv-footer-hero::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:var(--wv-footer-overlay,rgba(0,61,85,.28))!important;
  z-index:-1!important;
  pointer-events:none!important;
}
.wv-footer-hero-copy{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
}
.wv-dh .wv-footer.wv-footer-hero img{
  width:var(--wv-footer-logo-size,150px)!important;
  max-width:42vw!important;
  max-height:70px!important;
  object-fit:contain!important;
}
.wv-dh .wv-footer.wv-footer-hero strong{
  color:inherit!important;
  font-size:var(--wv-footer-text-size,16px)!important;
  line-height:1.15!important;
  letter-spacing:var(--wv-footer-text-spacing,3px)!important;
  font-weight:700!important;
}
.wv-dh .wv-footer.wv-footer-hero small{
  color:inherit!important;
  font-size:var(--wv-footer-tagline-size,12px)!important;
  line-height:1.2!important;
  letter-spacing:var(--wv-footer-tagline-spacing,4px)!important;
  opacity:.95!important;
}
@media(max-width:800px){
  .wv-dh .wv-footer.wv-footer-hero{
    margin-left:12px!important;
    margin-right:12px!important;
    height:var(--wv-footer-mobile-height,105px)!important;
    min-height:var(--wv-footer-mobile-height,105px)!important;
    padding:16px 18px!important;
  }
  .wv-dh .wv-footer.wv-footer-hero img{
    width:var(--wv-footer-mobile-logo-size,90px)!important;
    max-height:52px!important;
  }
  .wv-dh .wv-footer.wv-footer-hero strong{
    font-size:var(--wv-footer-mobile-text-size,14px)!important;
  }
  .wv-dh .wv-footer.wv-footer-hero small{
    font-size:var(--wv-footer-mobile-tagline-size,10px)!important;
  }
}


/* V1.9.7 final mobile header treatment: match the supplied reference, no white frame, taller hero, editable text position. */
.wv-dh .wv-hero{border:0!important;outline:0!important;background-color:var(--wv-hero-bg,#075b75)!important;}
.wv-dh .wv-hero::before{inset:0!important;border-radius:inherit!important;background-size:cover!important;background-position:var(--wv-hero-position,center center)!important;}
.wv-dh .wv-hero::after{inset:0!important;border-radius:inherit!important;background:var(--wv-hero-overlay,rgba(0,61,85,.22))!important;}
.wv-dh .wv-hero-copy{transform:translate(var(--wv-hero-copy-x,0px),var(--wv-hero-copy-y,0px));}
@media(max-width:800px){
  .wv-dh .wv-hero{
    height:var(--wv-mobile-hero-height,480px)!important;
    min-height:var(--wv-mobile-hero-height,480px)!important;
    margin:0 10px 12px!important;
    padding:28px 20px 30px!important;
    border:0!important;
    border-radius:30px!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .wv-dh .wv-hero::before,.wv-dh .wv-hero::after{inset:0!important;border-radius:30px!important;}
  .wv-dh .wv-hero-copy{transform:translate(var(--wv-hero-mobile-copy-x,0px),var(--wv-hero-mobile-copy-y,0px));}
}


/* V1.9.9 — Approved White Valley header reference. */
.wv-dh .wv-hero{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:var(--wv-hero-radius,30px)!important;
  overflow:hidden!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
}
.wv-dh .wv-hero-logo{
  top:16px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  object-fit:contain!important;
  z-index:3!important;
}
.wv-dh .wv-hero-copy{
  width:min(88%,620px)!important;
  margin:0!important;
  position:relative!important;
  z-index:3!important;
  transform:translate(var(--wv-hero-copy-x,0px),var(--wv-hero-copy-y,0px));
}
.wv-dh .wv-eyebrow{
  color:#fff!important;
  font-size:var(--wv-hero-eyebrow-size,10px)!important;
  letter-spacing:var(--wv-hero-eyebrow-spacing,2px)!important;
  line-height:1.15!important;
  margin:0 0 5px!important;
  font-weight:600!important;
  text-transform:none!important;
}
.wv-dh .wv-headline{
  color:#fff!important;
  font-weight:700!important;
  letter-spacing:var(--wv-hero-headline-spacing,1px)!important;
  line-height:1.0!important;
  margin:0!important;
  text-shadow:0 2px 7px rgba(0,0,0,.28)!important;
}
.wv-dh .wv-headline-line1,
.wv-dh .wv-headline-line2{
  display:inline!important;
}
.wv-dh .wv-subtitle{margin-top:8px!important}

@media(max-width:800px){
  .wv-dh .wv-hero{
    height:var(--wv-mobile-hero-height,480px)!important;
    min-height:var(--wv-mobile-hero-height,480px)!important;
    margin:0 10px 12px!important;
    padding:18px 14px 18px!important;
    border-radius:26px!important;
    align-items:flex-end!important;
    justify-content:flex-start!important;
  }
  .wv-dh .wv-hero::before,
  .wv-dh .wv-hero::after{inset:0!important;border-radius:inherit!important}
  .wv-dh .wv-hero-logo{
    top:13px!important;
    width:min(var(--wv-mobile-logo-size,62px),22vw)!important;
    max-width:22vw!important;
    max-height:48px!important;
  }
  .wv-dh .wv-hero-copy{
    width:92%!important;
    margin:0!important;
    transform:translate(var(--wv-hero-mobile-copy-x,0px),var(--wv-hero-mobile-copy-y,0px))!important;
    text-align:left!important;
  }
  .wv-dh .wv-eyebrow{
    font-size:var(--wv-hero-mobile-eyebrow-size,8px)!important;
    letter-spacing:var(--wv-hero-eyebrow-spacing,2px)!important;
    line-height:1.15!important;
    margin-bottom:4px!important;
  }
  .wv-dh .wv-headline{
    font-size:inherit!important;
    line-height:1.0!important;
    letter-spacing:var(--wv-hero-headline-spacing,1px)!important;
    font-weight:700!important;
  }
  .wv-dh .wv-headline-line1{
    font-size:var(--wv-mobile-headline-1,25px)!important;
    letter-spacing:inherit!important;
  }
  .wv-dh .wv-headline-line2{
    font-size:var(--wv-mobile-headline-2,23px)!important;
    letter-spacing:inherit!important;
  }
  .wv-dh .wv-subtitle{display:none!important}
}
@media(max-width:420px){
  .wv-dh .wv-hero{
    height:var(--wv-mobile-hero-height,480px)!important;
    min-height:var(--wv-mobile-hero-height,480px)!important;
    padding:16px 12px 17px!important;
  }
  .wv-dh .wv-hero-logo{top:11px!important}
  .wv-dh .wv-eyebrow{font-size:7.5px!important;letter-spacing:1.8px!important}
  .wv-dh .wv-headline-line1{font-size:24px!important}
  .wv-dh .wv-headline-line2{font-size:22px!important}
}


/* ================================================================
   White Valley Digital Hub 2.0.0 — authoritative mobile hero layer
   This is intentionally the LAST rule set so older visual overrides
   cannot shrink the approved hero.
   ================================================================ */
.wv-dh .wv-hero{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background-size:cover!important;
  background-position:center center!important;
}
.wv-dh .wv-hero-logo{
  width:var(--wv-logo-size,150px)!important;
  max-width:42%!important;
  max-height:120px!important;
  object-fit:contain!important;
}
@media(max-width:800px){
  .wv-dh .wv-hero{
    width:auto!important;
    margin:0 10px 14px!important;
    height:var(--wv-mobile-hero-height,480px)!important;
    min-height:var(--wv-mobile-hero-height,480px)!important;
    padding:28px 22px 34px!important;
    border-radius:26px!important;
    align-items:flex-end!important;
    background-position:center center!important;
  }
  .wv-dh .wv-hero-logo{
    top:22px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:min(var(--wv-mobile-logo-size,90px),28vw)!important;
    max-width:28vw!important;
    max-height:86px!important;
  }
  .wv-dh .wv-hero-copy{
    width:100%!important;
    margin:0!important;
    transform:translate(var(--wv-hero-mobile-copy-x,0px),var(--wv-hero-mobile-copy-y,0px))!important;
    text-align:left!important;
  }
  .wv-dh .wv-eyebrow{
    font-size:var(--wv-hero-mobile-eyebrow-size,10px)!important;
    letter-spacing:var(--wv-hero-eyebrow-spacing,2.6px)!important;
    line-height:1.2!important;
    margin-bottom:8px!important;
  }
  .wv-dh .wv-headline{
    font-size:inherit!important;
    line-height:1.02!important;
    letter-spacing:var(--wv-hero-headline-spacing,1px)!important;
    font-weight:700!important;
    margin:0!important;
  }
  .wv-dh .wv-headline-line1{
    display:block!important;
    font-size:var(--wv-mobile-headline-1,36px)!important;
  }
  .wv-dh .wv-headline-line2{
    display:block!important;
    font-size:var(--wv-mobile-headline-2,33px)!important;
  }
  .wv-dh .wv-subtitle{display:none!important}
}
@media(max-width:420px){
  .wv-dh .wv-hero{
    height:var(--wv-mobile-hero-height,480px)!important;
    min-height:var(--wv-mobile-hero-height,480px)!important;
    padding:24px 18px 30px!important;
  }
  .wv-dh .wv-hero-logo{top:20px!important;width:min(var(--wv-mobile-logo-size,90px),30vw)!important;max-width:30vw!important}
  .wv-dh .wv-headline-line1{font-size:34px!important}
  .wv-dh .wv-headline-line2{font-size:31px!important}
}

/* White Valley Hero — approved 985 x 371 reference ratio (2.654:1).
   This layer intentionally overrides fixed-height hero rules so the hero scales
   proportionally with its rendered width without stretching the image. */
.wv-dh .wv-hero{
  aspect-ratio:985 / 371 !important;
  height:auto !important;
  min-height:0 !important;
  background-size:cover !important;
  background-position:var(--wv-hero-position,center center) !important;
}
@media (max-width:800px){
  .wv-dh .wv-hero{
    aspect-ratio:985 / 371 !important;
    height:auto !important;
    min-height:0 !important;
  }
}

/* ================================================================
   V2.0.6 — Simple Hero controls / automatic responsive typography
   Admin exposes only: logo, logo size, small text, title lines, title size.
   Layout, spacing and responsive sizing are intentionally fixed here.
   ================================================================ */
.wv-dh .wv-hero{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:30px!important;
  background-position:center center!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  padding:42px 48px!important;
}
.wv-dh .wv-hero-logo{
  top:24px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:var(--wv-logo-size,120px)!important;
  max-width:28%!important;
  max-height:120px!important;
  object-fit:contain!important;
}
.wv-dh .wv-hero-copy{
  width:min(88%,680px)!important;
  margin:0!important;
  transform:none!important;
  text-align:left!important;
}
.wv-dh .wv-eyebrow{
  margin:0 0 7px!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1.15!important;
  letter-spacing:2.6px!important;
  font-weight:600!important;
}
.wv-dh .wv-headline{
  margin:0!important;
  color:#fff!important;
  font-weight:700!important;
  letter-spacing:.5px!important;
  line-height:1.0!important;
  text-shadow:0 2px 7px rgba(0,0,0,.28)!important;
  font-size:var(--wv-hero-desktop-title-size,52px)!important;
}
.wv-dh .wv-headline-line1,
.wv-dh .wv-headline-line2{font-size:inherit!important;line-height:1.0!important;letter-spacing:inherit!important}
.wv-dh .wv-subtitle{display:none!important}

@media(max-width:800px){
  .wv-dh .wv-hero{
    height:var(--wv-mobile-hero-height,480px)!important;
    min-height:var(--wv-mobile-hero-height,480px)!important;
    margin:0 10px 12px!important;
    padding:22px 18px 24px!important;
    border-radius:26px!important;
    align-items:flex-end!important;
  }
  .wv-dh .wv-hero-logo{
    top:20px!important;
    width:min(var(--wv-mobile-logo-size,90px),28vw)!important;
    max-width:28vw!important;
    max-height:90px!important;
  }
  .wv-dh .wv-hero-copy{
    width:92%!important;
    text-align:left!important;
    transform:none!important;
  }
  .wv-dh .wv-eyebrow{
    font-size:8px!important;
    letter-spacing:2.2px!important;
    margin-bottom:6px!important;
  }
  .wv-dh .wv-headline{
    font-size:var(--wv-mobile-title-size,36px)!important;
    line-height:1.0!important;
    letter-spacing:.35px!important;
  }
}
@media(max-width:420px){
  .wv-dh .wv-hero{padding:18px 14px 20px!important}
  .wv-dh .wv-hero-logo{top:16px!important}
  .wv-dh .wv-eyebrow{font-size:7.5px!important;letter-spacing:1.9px!important}
  .wv-dh .wv-headline{font-size:var(--wv-mobile-title-size,32px)!important}
}


/* ================================================================
   V2.0.7 — Approved Hero Reference Lock
   Reference: 985 x 371 (2.654:1). The hero scales proportionally on
   desktop and mobile. Typography/positions are derived from the supplied
   reference, not from per-device manual spacing controls.
   ================================================================ */
.wv-dh .wv-hero{
  aspect-ratio:985 / 371!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  padding:0 5.28% 8.53%!important;
  margin:0 38px 14px!important;
  border-radius:30px!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
  background-size:cover!important;
  background-position:center center!important;
}
.wv-dh .wv-hero-logo{
  top:4.87%!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:12.18%!important;
  max-width:none!important;
  max-height:none!important;
  height:auto!important;
  object-fit:contain!important;
}
.wv-dh .wv-hero-copy{
  width:100%!important;
  margin:0!important;
  transform:none!important;
  text-align:left!important;
  position:relative!important;
}
.wv-dh .wv-eyebrow{
  margin:0 0 .7%!important;
  color:#fff!important;
  font-size:1.015vw!important;
  line-height:1.15!important;
  letter-spacing:.264vw!important;
  font-weight:600!important;
  white-space:nowrap!important;
}
.wv-dh .wv-headline{
  margin:0!important;
  color:#fff!important;
  font-family:Georgia,serif!important;
  font-size:3.86vw!important;
  font-weight:700!important;
  line-height:.94!important;
  letter-spacing:.05vw!important;
  text-shadow:0 2px 7px rgba(0,0,0,.28)!important;
}
.wv-dh .wv-headline-line1,
.wv-dh .wv-headline-line2{
  display:block!important;
  font-size:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
}
.wv-dh .wv-subtitle{display:none!important}

@media(max-width:800px){
  .wv-dh .wv-hero{
    aspect-ratio:985 / 371!important;
    height:auto!important;
    min-height:0!important;
    margin:0 10px 12px!important;
    padding:0 5.28% 8.53%!important;
    border-radius:26px!important;
  }
  .wv-dh .wv-hero-logo{
    top:4.87%!important;
    width:12.18%!important;
    max-width:none!important;
    max-height:none!important;
  }
  .wv-dh .wv-hero-copy{width:100%!important}
  .wv-dh .wv-eyebrow{
    font-size:1.015vw!important;
    letter-spacing:.264vw!important;
    margin-bottom:.7%!important;
  }
  .wv-dh .wv-headline{
    font-size:3.86vw!important;
    line-height:.94!important;
    letter-spacing:.05vw!important;
  }
}

/* V2.0.8 — Header controls mirror Footer controls. */
.wv-dh .wv-hero{
  min-height:var(--wv-hero-height,360px)!important;
  height:var(--wv-hero-height,360px)!important;
  background-color:var(--wv-hero-bg,#075b75)!important;
  background-position:var(--wv-hero-position,center center)!important;
  border-width:var(--wv-hero-border-width,0px)!important;
  border-style:solid!important;
  border-color:var(--wv-hero-border-color,#fff)!important;
  border-radius:var(--wv-hero-radius,38px)!important;
}
.wv-dh .wv-hero::before{
  background-position:var(--wv-hero-position,center center)!important;
  opacity:var(--wv-hero-image-opacity,1)!important;
}
.wv-dh .wv-hero::after{background:var(--wv-hero-overlay,rgba(0,61,85,.22))!important}
.wv-dh .wv-hero.wv-hero-shape-square{border-radius:0!important}
.wv-dh .wv-hero.wv-hero-shape-soft{border-radius:16px!important}
.wv-dh .wv-hero.wv-hero-shape-rounded{border-radius:var(--wv-hero-radius,38px)!important}
.wv-dh .wv-hero-copy{text-align:var(--wv-hero-align,left)!important;transform:translate(var(--wv-hero-copy-x,0px),var(--wv-hero-copy-y,0px))}
.wv-dh .wv-hero-logo{width:var(--wv-hero-logo-size,120px)!important}
.wv-dh .wv-headline{font-size:var(--wv-hero-text-size,52px)!important;letter-spacing:var(--wv-hero-headline-spacing,1px)!important;line-height:var(--wv-hero-headline-line,1.28)!important;color:var(--wv-hero-text-color,#fff)!important;font-weight:700}
.wv-dh .wv-eyebrow{font-size:var(--wv-hero-eyebrow-size,10px)!important;letter-spacing:var(--wv-hero-eyebrow-spacing,3px)!important;color:var(--wv-hero-text-color,#fff)!important}
.wv-dh .wv-subtitle{font-size:var(--wv-hero-subtitle-size,12px)!important;letter-spacing:var(--wv-hero-subtitle-spacing,2px)!important;line-height:var(--wv-hero-subtitle-line,1.2)!important;color:var(--wv-hero-text-color,#fff)!important}
@media(max-width:800px){
  .wv-dh .wv-hero{height:var(--wv-mobile-hero-height,480px)!important;min-height:var(--wv-mobile-hero-height,480px)!important}
  .wv-dh .wv-hero-copy{transform:translate(var(--wv-hero-mobile-copy-x,0px),var(--wv-hero-mobile-copy-y,0px))}
  .wv-dh .wv-hero-logo{width:var(--wv-hero-mobile-logo-size,90px)!important}
  .wv-dh .wv-headline{font-size:inherit!important}
  .wv-dh .wv-headline-line1{font-size:var(--wv-hero-mobile-text-size1,36px)!important}
  .wv-dh .wv-headline-line2{font-size:var(--wv-hero-mobile-text-size2,33px)!important}
  .wv-dh .wv-eyebrow{font-size:var(--wv-hero-mobile-eyebrow-size,10px)!important}
  .wv-dh .wv-subtitle{font-size:var(--wv-hero-mobile-subtitle-size,10px)!important}
}


/* V2.0.9 — Professional Hero composition controls.
   This is the final CSS layer so older visual overrides cannot win. */
.wv-dh .wv-hero{
  box-shadow:0 14px 34px rgba(0,55,80,.20), 0 3px 10px rgba(0,55,80,.10)!important;
}
.wv-dh .wv-hero-logo{
  top:var(--wv-hero-logo-top,16px)!important;
}
.wv-dh .wv-hero-copy{
  margin:0!important;
  padding-bottom:var(--wv-hero-title-bottom,42px)!important;
}
.wv-dh .wv-eyebrow{
  margin-bottom:var(--wv-hero-eyebrow-title-gap,5px)!important;
}
.wv-dh .wv-headline-line1,
.wv-dh .wv-headline-line2{
  display:block!important;
}
.wv-dh .wv-headline-line2{
  margin-top:var(--wv-hero-title1-title2-gap,0px)!important;
}
@media(max-width:800px){
  .wv-dh .wv-hero-logo{top:var(--wv-hero-mobile-logo-top,20px)!important}
  .wv-dh .wv-hero-copy{padding-bottom:var(--wv-hero-mobile-title-bottom,30px)!important}
  .wv-dh .wv-eyebrow{margin-bottom:var(--wv-hero-mobile-eyebrow-title-gap,8px)!important}
  .wv-dh .wv-headline-line2{margin-top:var(--wv-hero-mobile-title1-title2-gap,0px)!important}
}
