:root{--paper:#f2efe8;--paper2:#ebe7df;--ink:#222220;--muted:#6c6962;--line:#cfc9bf;--white:#fff;--black:#252524;--max:1440px;--pad:clamp(22px,4.4vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;font-weight:300;line-height:1.55}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}.shell{width:min(var(--max),100%);margin:auto;padding-left:var(--pad);padding-right:var(--pad)}.shell-wide{width:100%;padding-left:var(--pad);padding-right:var(--pad)}
.site-header{position:fixed;left:0;right:0;top:0;z-index:30;transition:.3s}.site-header.scrolled{background:rgba(242,239,232,.92);backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(0,0,0,.08)}.header-inner{height:78px;display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:30px}.brand{display:inline-flex;flex-direction:column;line-height:1}.brand-mark{font-size:21px;letter-spacing:.28em;font-weight:400}.brand small{font-size:7px;letter-spacing:.28em;margin-top:6px}.custom-logo{max-height:42px;width:auto}.site-nav ul,.footer-nav ul{display:flex;justify-content:center;gap:30px;list-style:none;padding:0;margin:0}.site-nav a,.footer-nav a,.header-cta,.btn{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:500}.menu-toggle{display:none;background:none;border:0;text-transform:uppercase;letter-spacing:.15em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:17px 24px;border:1px solid transparent;transition:.25s}.btn:hover{transform:translateY(-2px)}.btn-dark{background:var(--black);color:#fff}.btn-light{background:#fff;color:#222}.header-cta{padding:13px 20px}
.eyebrow{font-size:10px;letter-spacing:.26em;text-transform:uppercase;font-weight:500;margin:0 0 26px}.hero{position:relative;min-height:760px;display:flex;align-items:stretch;overflow:hidden;background:#dfe8ec}.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(235,239,240,.92) 0%,rgba(235,239,240,.58) 26%,rgba(235,239,240,0) 58%)}.hero-content{position:relative;min-height:760px;padding-top:150px;padding-bottom:58px}.hero-copy{width:min(430px,44vw)}h1,h2,h3{font-family:Manrope,Inter,sans-serif;font-weight:300;line-height:.98;margin:0}.hero h1{font-size:clamp(52px,6.1vw,92px);letter-spacing:-.045em;max-width:650px}.lede{max-width:360px;margin:26px 0 28px;font-size:14px;color:#4d4d4a}.hero-note{position:absolute;right:var(--pad);top:125px;font-size:10px;letter-spacing:.22em;line-height:1.55;font-weight:500}.rule{width:25px;border-top:1px solid currentColor;margin-top:13px}.feature-icons{display:flex}.hero-features{position:absolute;left:var(--pad);bottom:48px;gap:44px}.feature-icons div{min-width:110px}.feature-icons span{display:block;font-size:32px;font-weight:200;line-height:1;margin-bottom:12px}.feature-icons strong{font-size:8px;letter-spacing:.18em;font-weight:500;line-height:1.5}
.split{display:grid;grid-template-columns:36% 64%;min-height:560px;position:relative;background:#f5f2ed}.split-copy{padding:68px var(--pad);align-self:center}.split-copy h2,.reviews h2{font-size:clamp(42px,4.5vw,68px);letter-spacing:-.04em;margin-bottom:28px}.split-copy p:not(.eyebrow){font-size:14px;max-width:390px;color:#5b5953;margin-bottom:30px}.split-media{margin:0;min-height:560px}.split-media img{height:100%;object-fit:cover}.vertical-note{position:absolute;right:var(--pad);top:36px;font-size:9px;letter-spacing:.22em;font-weight:500;line-height:1.6}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);padding-top:32px;padding-bottom:32px;background:#f6f3ed}.benefits article{text-align:center;padding:14px 38px;border-right:1px solid var(--line)}.benefits article:last-child{border-right:0}.benefits span{font-size:40px;display:block;line-height:1;margin-bottom:14px}.benefits h3,.detail-cards h3{font-size:13px;letter-spacing:.16em;font-weight:500;line-height:1.35}.benefits p,.detail-cards p{font-size:12px;color:var(--muted);max-width:310px;margin:10px auto 0}
.details{display:grid;grid-template-columns:52% 48%;min-height:620px}.detail-image{position:relative;min-height:620px;overflow:hidden;background:#6e4b30}.detail-image img{height:100%;object-fit:cover}.detail-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.35))}.detail-overlay{position:absolute;z-index:2;color:white;left:var(--pad);top:50px;bottom:35px;display:flex;flex-direction:column;align-items:flex-start}.detail-overlay h2{font-size:clamp(42px,4.8vw,70px);max-width:360px}.detail-overlay p{margin-top:auto;max-width:380px;font-size:12px}.detail-cards{display:grid;padding:28px 44px;align-content:center;gap:12px;background:#f4f1eb}.detail-cards article{display:grid;grid-template-columns:150px 1fr;gap:28px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px}.detail-cards article:last-child{border-bottom:0}.mini{width:150px;height:96px;display:block;object-fit:cover;object-position:center;background:#ddd}.thumb-wood{background-image:url('../images/detail.jpg')}.thumb-base{background:linear-gradient(135deg,#171717 0%,#41413f 55%,#181818 100%)}.thumb-edge{background-image:url('../images/hero.jpg');background-position:55% 72%}
.reverse{grid-template-columns:39% 61%}.specs .split-copy{padding-top:56px;padding-bottom:56px}.spec-list{font-size:12px;margin:0 0 26px}.spec-list>div{display:grid;grid-template-columns:120px 1fr;padding:7px 0;border-bottom:1px solid #ddd7ce}.spec-list dt{color:#62605b}.spec-list dd{margin:0}.resort-media{min-height:600px;display:grid;grid-template-rows:minmax(0,1fr) 118px;background:#f7f4ef}.resort-media>img{width:100%;height:100%;min-height:0;object-fit:cover;display:block}.resort-caption{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(220px,34%);align-items:center;gap:34px;padding:0 7%;background:#f7f4ef;color:#252421}.resort-caption-copy{font-size:13px;line-height:1.35;letter-spacing:.18em}.resort-caption-copy span,.resort-caption-copy strong{display:block;font-weight:500}.resort-caption-copy i{display:block;width:24px;height:1px;background:#252421;margin-top:14px}.resort-caption-divider{height:52px;background:#d8d2c9}.resort-caption-brand{display:flex;justify-content:center;align-items:center}.resort-caption-brand img{width:min(170px,100%);height:auto;object-fit:contain;filter:none}
.reviews{padding:42px 0;background:#f7f4ee}.reviews-grid{display:grid;grid-template-columns:1.15fr .8fr .8fr;gap:60px;align-items:start}.reviews h2{font-size:clamp(36px,3.4vw,55px);max-width:450px}.reviews blockquote{margin:16px 0 0;font-size:13px;color:#595751}.reviews cite{display:block;margin-top:24px;font-size:9px;letter-spacing:.22em;font-style:normal}.closing-cta{position:relative;min-height:260px;background-size:cover;background-position:center}.closing-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,28,30,.72),rgba(20,28,30,.24))}.closing-inner{position:relative;min-height:260px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:50px}.closing-inner h2{font-size:clamp(38px,4.2vw,62px);max-width:620px}.closing-inner p{font-size:11px}.site-footer{background:#222220;color:#f0ede7;padding:28px 0}.footer-inner{display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;align-items:center}.footer-brand{display:flex;flex-direction:column}.footer-brand small{font-size:7px;letter-spacing:.25em;margin-top:5px}.footer-nav a,.footer-meta{font-size:8px;letter-spacing:.14em;text-transform:uppercase}.footer-meta{display:flex;justify-content:flex-end;gap:32px;align-items:center;line-height:1.6}.content-default{padding-top:140px;padding-bottom:80px;min-height:65vh}.content-default h1{font-size:clamp(48px,6vw,80px);margin-bottom:30px}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease, transform .7s ease}.reveal.is-visible{opacity:1;transform:none}
@media (max-width:900px){.header-inner{grid-template-columns:1fr auto}.header-cta{display:none}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:70px;left:20px;right:20px;background:var(--paper);padding:24px;box-shadow:0 16px 50px rgba(0,0,0,.13)}.site-nav.is-open{display:block}.site-nav ul{flex-direction:column;align-items:flex-start}.hero,.hero-content{min-height:710px}.hero-overlay{background:linear-gradient(180deg,rgba(235,239,240,.86),rgba(235,239,240,.25) 56%,rgba(235,239,240,0))}.hero-copy{width:100%;max-width:520px}.hero-note{display:none}.hero-features{left:var(--pad);right:var(--pad);gap:20px}.split,.reverse,.details{grid-template-columns:1fr}.split-copy{order:1}.split-media{order:2;min-height:450px}.resort-media{grid-template-rows:minmax(340px,1fr) 105px}.resort-caption{grid-template-columns:1fr 1px minmax(170px,32%);gap:22px;padding:0 28px}.resort-caption-copy{font-size:11px}.resort-caption-brand img{width:min(145px,100%)}.vertical-note{display:none}.benefits{grid-template-columns:1fr}.benefits article{border-right:0;border-bottom:1px solid var(--line);padding:26px 0}.detail-image{min-height:520px}.detail-cards article{grid-template-columns:120px 1fr}.reviews-grid{grid-template-columns:1fr;gap:20px}.closing-inner{align-items:flex-start;justify-content:center;flex-direction:column}.footer-inner{grid-template-columns:1fr;gap:24px}.footer-nav ul{justify-content:flex-start;flex-wrap:wrap}.footer-meta{justify-content:flex-start}}
@media (max-width:560px){.header-inner{height:66px}.brand-mark{font-size:18px}.hero,.hero-content{min-height:760px}.hero-content{padding-top:116px}.hero h1{font-size:50px}.hero-media{object-position:62% center}.hero-features{display:grid;grid-template-columns:repeat(3,1fr);bottom:28px}.hero-features div{min-width:0}.hero-features span{font-size:24px}.hero-features strong{font-size:6.5px}.split-copy{padding-top:50px;padding-bottom:50px}.detail-cards{padding:28px 22px}.detail-cards article{grid-template-columns:92px 1fr;gap:18px}.mini{width:92px;height:76px}.spec-list>div{grid-template-columns:105px 1fr}.resort-media{grid-template-rows:minmax(300px,1fr) auto}.resort-caption{grid-template-columns:1fr;gap:14px;padding:24px 22px}.resort-caption-divider{display:none}.resort-caption-brand{justify-content:flex-start}.resort-caption-brand img{width:130px}.closing-cta,.closing-inner{min-height:340px}}

/* --- Hero/header alignment refinement: match the supplied Vorana reference --- */
.site-header > .shell,
.hero > .shell{
  width:100%;
  max-width:none;
  margin:0;
}

.site-header .header-inner{
  height:52px;
  padding-left:clamp(34px,4.8vw,90px);
  padding-right:clamp(34px,4.8vw,90px);
  grid-template-columns:minmax(150px,220px) 1fr minmax(120px,160px);
  gap:24px;
}
.site-header .brand{justify-self:start;align-self:center}
.site-header .site-nav{justify-self:center}
.site-header .site-nav ul{gap:clamp(24px,2.25vw,42px)}
.site-header .header-cta{justify-self:end;padding:12px 21px}
.site-header .brand-mark{font-size:20px;letter-spacing:.31em}
.site-header .brand small{font-size:6px;letter-spacing:.31em;margin-top:5px}

.hero{
  min-height:860px;
  background:#dfe7eb;
}
.hero-content{
  min-height:860px;
  padding-top:88px;
  padding-bottom:90px;
  padding-left:clamp(34px,4.8vw,90px);
  padding-right:clamp(34px,4.8vw,90px);
}
.hero-media{
  object-position:center center;
}
.hero-overlay{
  background:linear-gradient(90deg,
    rgba(235,241,244,.96) 0%,
    rgba(235,241,244,.90) 18%,
    rgba(235,241,244,.57) 33%,
    rgba(235,241,244,.12) 50%,
    rgba(235,241,244,0) 62%);
}
.hero-copy{
  width:min(500px,40vw);
  max-width:500px;
}
.hero .eyebrow{
  margin-bottom:32px;
  font-size:10px;
  letter-spacing:.30em;
}
.hero h1{
  font-size:clamp(56px,4vw,74px);
  line-height:.99;
  letter-spacing:-.035em;
  max-width:520px;
}
.hero .lede{
  max-width:390px;
  margin:30px 0 28px;
  font-size:14px;
  line-height:1.55;
}
.hero .btn{
  min-width:347px;
  justify-content:space-between;
  padding:17px 25px;
}
.hero-note{
  right:clamp(34px,4.8vw,90px);
  top:126px;
  font-size:10px;
  letter-spacing:.24em;
  line-height:1.52;
}
.hero-note .rule{margin-top:15px;width:27px}
.hero-features{
  left:clamp(34px,4.8vw,90px);
  bottom:94px;
  gap:clamp(54px,7vw,128px);
  align-items:flex-start;
}
.hero-features .hero-feature{
  min-width:126px;
  text-align:left;
}
.hero-features .feature-symbol{
  width:40px;
  height:40px;
  display:block;
  margin:0 0 12px;
}
.hero-features .feature-symbol svg{
  width:100%;
  height:100%;
  display:block;
}
.hero-features strong{
  display:block;
  font-size:8px;
  letter-spacing:.18em;
  font-weight:500;
  line-height:1.65;
}

@media (max-width:900px){
  .site-header .header-inner{
    grid-template-columns:1fr auto;
    padding-left:var(--pad);
    padding-right:var(--pad);
  }
  .hero{min-height:780px}
  .hero-content{
    min-height:780px;
    padding-top:100px;
    padding-left:var(--pad);
    padding-right:var(--pad);
  }
  .hero-copy{width:100%;max-width:520px}
  .hero .btn{min-width:0}
  .hero-features{left:var(--pad);right:var(--pad);bottom:54px;gap:26px}
}

@media (max-width:560px){
  .hero{min-height:760px}
  .hero-content{min-height:760px;padding-top:104px;padding-bottom:120px}
  .hero h1{font-size:48px}
  .hero .eyebrow{margin-bottom:22px}
  .hero .lede{margin-top:22px}
  .hero-features{bottom:26px;gap:12px}
  .hero-features .feature-symbol{width:30px;height:30px;margin-bottom:8px}
}

/* --- v1.1 clean hero photography: no baked typography --- */
.hero-media{
  object-position:50% 52%;
}
.hero-overlay{
  /* The replacement hero is clean, so only a very light readability wash is needed. */
  background:linear-gradient(90deg,
    rgba(240,244,245,.34) 0%,
    rgba(240,244,245,.20) 20%,
    rgba(240,244,245,.06) 38%,
    rgba(240,244,245,0) 52%);
}
@media (min-width:901px){
  .hero-copy{margin-top:1px}
  .hero .eyebrow{margin-bottom:28px}
  .hero h1{font-size:clamp(58px,4.15vw,76px);max-width:560px}
  .hero .lede{max-width:405px;margin-top:28px}
  .hero-note{top:118px}
  .hero-features{bottom:50px}
}
@media (max-width:900px){
  .hero-media{object-position:58% 50%}
  .hero-overlay{background:linear-gradient(180deg,rgba(240,244,245,.68),rgba(240,244,245,.16) 52%,rgba(240,244,245,0) 72%)}
}


/* --- v1.2 Vorana brand assets --- */
.brand-logo-img{display:block;width:176px;max-width:100%;height:auto;object-fit:contain;object-position:left center}
.site-header .custom-logo-link{display:inline-flex;align-items:center;max-width:176px}
.site-header .custom-logo{display:block;max-width:176px;max-height:52px;width:auto;height:auto}
.footer-logo-img{display:block;width:138px;max-width:100%;height:auto;filter:invert(1) brightness(2);opacity:.92}
@media (max-width:560px){
  .brand-logo-img,.site-header .custom-logo{width:145px;max-width:145px;max-height:42px}
  .footer-logo-img{width:125px}
}

/* --- v1.3.1 mobile hero readability + highlight row containment --- */
@media (max-width:560px){
  .hero,
  .hero-content{min-height:800px}

  .hero-media{
    object-position:61% 50%;
  }

  /* Keep the photograph visible, but create calm areas behind both text zones. */
  .hero-overlay{
    z-index:1;
    background:
      linear-gradient(180deg,
        rgba(244,246,245,.92) 0%,
        rgba(244,246,245,.84) 22%,
        rgba(244,246,245,.68) 39%,
        rgba(244,246,245,.20) 52%,
        rgba(244,246,245,0) 62%),
      linear-gradient(180deg,
        rgba(244,242,236,0) 72%,
        rgba(244,242,236,.30) 80%,
        rgba(244,242,236,.82) 91%,
        rgba(244,242,236,.96) 100%);
  }

  .hero-content{
    z-index:2;
    padding-top:104px;
    padding-bottom:150px;
  }

  .hero-copy{
    position:relative;
    z-index:2;
    max-width:100%;
  }

  .hero .lede{
    color:#343432;
    max-width:100%;
  }

  .hero-features{
    z-index:3;
    left:18px;
    right:18px;
    bottom:22px;
    width:auto;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    align-items:start;
    color:#1f1f1d;
  }

  .hero-features .hero-feature{
    min-width:0;
    width:100%;
    text-align:center;
    overflow:visible;
  }

  .hero-features .feature-symbol{
    width:32px;
    height:32px;
    margin:0 auto 9px;
  }

  .hero-features strong{
    display:block;
    width:100%;
    max-width:100%;
    font-size:7px;
    line-height:1.55;
    letter-spacing:.12em;
    overflow-wrap:anywhere;
  }
}
