/* ============================================================
   SUN HOUSE — RESPONSIVE BRAND + FINAL HERO AUTHORITY
============================================================ */

.sunhouse-flying-key,[data-sunhouse-flying-key],.sunhouse-brand-name{display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;animation:none!important;transition:none!important;}
.sunhouse-horizontal-brand{display:block!important;position:relative!important;overflow:visible!important;pointer-events:none!important;isolation:isolate!important;background:url('/images/logo-sunhouse-desktop.png?v=20260914-05') center/contain no-repeat!important;filter:drop-shadow(0 7px 16px rgba(0,0,0,.25))!important;aspect-ratio:1086/1448!important;}
.sunhouse-horizontal-brand .sunhouse-brand-key{display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;}
@media (min-width:1101px) and (hover:hover) and (pointer:fine), (min-width:1367px){.sunhouse-horizontal-brand{width:min(305px,17vw)!important;}}
@media (min-width:721px) and (max-width:1366px){.sunhouse-horizontal-brand{width:clamp(150px,19vw,235px)!important;}}
@media (max-width:720px) and (orientation:portrait){.v7-hero-inner>.sunhouse-horizontal-brand{display:block!important;width:clamp(155px,40vw,215px)!important;max-width:46vw!important;}}
@media (max-width:390px) and (orientation:portrait){.v7-hero-inner>.sunhouse-horizontal-brand{width:clamp(140px,37vw,185px)!important;max-width:43vw!important;}}
@media (max-width:932px) and (orientation:landscape) and (hover:none) and (pointer:coarse){.v7-hero,.v7-hero-inner{overflow:visible!important}.v7-nav{z-index:50!important}.v7-nav-inner,.v7-nav a,.v7-nav button,.v7-lang,.v7-mobile-menu-toggle{position:relative!important;z-index:80!important;pointer-events:auto!important}.v7-hero-inner>.sunhouse-horizontal-brand{display:block!important;width:clamp(calc(155px + 1cm),calc(20vw + 1cm),calc(220px + 1cm))!important;max-width:calc(28vw + 1cm)!important;transform:translate(-1cm,-1cm)!important;z-index:70!important;pointer-events:none!important;overflow:visible!important}}
@media (prefers-reduced-motion:reduce){.sunhouse-horizontal-brand{animation:none!important;transition:none!important}}
.v7-nav{position:absolute!important;top:0!important;left:0!important;right:0!important;width:100%!important;background:transparent!important;background-color:transparent!important;border:0!important;border-bottom:0!important;box-shadow:none!important;z-index:40!important}.v7-nav::before,.v7-nav::after{content:none!important;display:none!important;background:none!important}
body:has(.v7-hero)::before,body:has(.v7-hero)::after,main::before,main::after,.v7-hero::before,.v7-hero::after,#alojamento::before,#alojamento::after{content:none!important;display:none!important;background:none!important;background-image:none!important}
main{position:relative!important;isolation:isolate!important;background:none!important;background-image:none!important}
.v7-hero{position:relative!important;z-index:1!important;overflow:hidden!important;background-color:#6db8df!important;background-image:url('/images/sunhouse-cover-blue.png?v=20260914-final-03')!important;background-repeat:no-repeat!important;background-size:cover!important;background-position:center center!important}
.v7-hero>.v7-hero-media{position:absolute!important;inset:0!important;display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center center!important;transform:none!important;clip-path:none!important;-webkit-clip-path:none!important;mask:none!important;-webkit-mask:none!important;z-index:0!important;pointer-events:none!important}
.v7-overlay{position:absolute!important;z-index:2!important}.v7-hero-inner{position:relative!important;z-index:3!important}
#alojamento{position:relative!important;z-index:1!important;background-color:transparent!important;background-image:url('/images/sunhouse-cover-blue.png?v=20260914-final-03')!important;background-repeat:no-repeat!important;background-size:cover!important;background-position:center 72%!important}#alojamento>.wrap{position:relative!important;z-index:2!important}.sh-content-section,.footer{position:relative!important;z-index:2!important}
@media (max-width:720px) and (orientation:portrait){.v7-hero{background-position:60% center!important}.v7-hero>.v7-hero-media{object-fit:contain!important;object-position:60% center!important}#alojamento{background-position:60% 72%!important}}
@media (max-width:390px) and (orientation:portrait){.v7-hero{background-position:62% center!important}.v7-hero>.v7-hero-media{object-position:62% center!important}#alojamento{background-position:62% 72%!important}}
@media (max-width:932px) and (orientation:landscape){.v7-hero{background-position:52% center!important}.v7-hero>.v7-hero-media{object-fit:contain!important;object-position:52% center!important}#alojamento{background-position:52% 72%!important}}
@media (min-width:721px) and (max-width:1100px) and (orientation:portrait){.v7-hero{background-position:57% center!important}.v7-hero>.v7-hero-media{object-fit:contain!important;object-position:57% center!important}#alojamento{background-position:57% 72%!important}}
@media (min-width:721px) and (max-width:1599px) and (orientation:landscape){.v7-hero{background-position:center center!important}.v7-hero>.v7-hero-media{object-fit:contain!important;object-position:center center!important}#alojamento{background-position:center 72%!important}}
@media (min-width:1600px){.v7-hero>.v7-hero-media{object-fit:contain!important;object-position:center center!important}}
@media (min-aspect-ratio:21/9) and (min-width:1600px){.v7-hero>.v7-hero-media{object-fit:contain!important}}

/* HERO GEOMETRY */
@media (min-width:1101px) and (hover:hover) and (pointer:fine), (min-width:1367px){
.v7-hero{min-height:820px!important}.v7-hero-inner{width:min(calc(100% - 64px),1320px)!important;max-width:1320px!important;min-height:820px!important;margin:0 auto!important;padding:118px 0 72px!important;display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr)!important;grid-template-rows:minmax(390px,auto) auto!important;column-gap:48px!important;row-gap:30px!important;align-content:center!important;align-items:center!important}.v7-copy{grid-column:1!important;grid-row:1!important;align-self:center!important;justify-self:start!important;width:100%!important;max-width:790px!important;min-height:0!important;margin:0!important;padding:0!important;transform:none!important;align-items:flex-start!important;text-align:left!important}.v7-copy h1{width:100%!important;max-width:790px!important;margin:0!important;text-align:left!important}.v7-copy p{margin:14px 0 0!important;text-align:left!important}.sunhouse-horizontal-brand{grid-column:2!important;grid-row:1!important;align-self:center!important;justify-self:end!important;top:0!important;left:-2cm!important;right:auto!important;margin:0!important;transform:none!important}.v7-copy>.v7-service-strip{display:none!important}.v7-hero-inner>.v7-service-strip-desktop{grid-column:1/-1!important;grid-row:2!important;position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;justify-self:stretch!important;align-self:start!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}.v7-hero-inner>.v7-service-strip-desktop>a{min-height:104px!important;padding:15px 20px!important}
#alojamento{margin-top:calc(-88px - 3cm)!important;padding-top:0!important}
}
@media (min-width:1101px) and (max-width:1599px) and (max-height:950px) and (hover:hover) and (pointer:fine){.v7-nav-inner,.v7-hero-inner{width:min(calc(100% - 48px),1240px)!important;max-width:1240px!important}.v7-hero{min-height:clamp(700px,94vh,790px)!important}.v7-hero-inner{min-height:clamp(700px,94vh,790px)!important;padding:96px 0 54px!important;grid-template-columns:minmax(0,1.08fr) minmax(290px,.92fr)!important;grid-template-rows:minmax(320px,auto) auto!important;column-gap:34px!important;row-gap:22px!important}.v7-copy{max-width:700px!important;min-height:0!important}.v7-copy h1{max-width:700px!important;font-size:clamp(3.05rem,4.7vw,4.8rem)!important;line-height:.91!important}.v7-copy p{max-width:620px!important;margin-top:10px!important;font-size:clamp(.82rem,1vw,.98rem)!important;line-height:1.4!important}.sunhouse-horizontal-brand{width:clamp(215px,19vw,285px)!important;max-width:285px!important;top:0!important;left:-1.15cm!important;transform:none!important}.v7-hero-inner>.v7-service-strip-desktop{width:100%!important;max-width:100%!important;gap:14px!important;transform:none!important}.v7-hero-inner>.v7-service-strip-desktop>a{min-height:88px!important;padding:12px 16px!important;border-radius:16px!important}.v7-hero-inner>.v7-service-strip-desktop .v7-service-strip-icon{margin-bottom:5px!important;font-size:1.32rem!important}.v7-hero-inner>.v7-service-strip-desktop strong{font-size:.78rem!important}.v7-hero-inner>.v7-service-strip-desktop small{margin-top:4px!important;font-size:.63rem!important}
#alojamento{margin-top:calc(-64px - 3cm)!important}#alojamento>.wrap,.owner-management>.wrap,#obras>.wrap{width:min(calc(100% - 48px),1240px)!important}}
@media (min-width:1101px) and (max-width:1450px) and (max-height:820px) and (hover:hover) and (pointer:fine){.v7-hero{min-height:690px!important}.v7-hero-inner{min-height:690px!important;padding-top:88px!important;padding-bottom:42px!important;grid-template-rows:minmax(292px,auto) auto!important;row-gap:18px!important}.v7-copy h1{font-size:clamp(2.85rem,4.45vw,4.35rem)!important}.sunhouse-horizontal-brand{width:clamp(205px,18vw,260px)!important;top:0!important;left:-1cm!important}.v7-hero-inner>.v7-service-strip-desktop{transform:none!important}
#alojamento{margin-top:calc(-48px - 3cm)!important}}
@media (max-width:1100px){.v7-copy h1{margin-bottom:0!important}.v7-copy p{margin-top:10px!important}.v7-copy>.v7-service-strip{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;margin:18px 0 0!important}}
@media (max-width:720px) and (orientation:portrait){.v7-copy>.v7-service-strip{margin-top:16px!important}}
@media (max-width:932px) and (orientation:landscape){.v7-copy>.v7-service-strip{margin-top:12px!important}}

/* FINAL MOBILE TOP SPACING AUTHORITY — this stylesheet loads last. */
@media (max-width:720px) and (orientation:portrait){
  .v7-hero-inner{transform:translateY(-38px)!important;margin-bottom:-38px!important;}
}

/* FINAL PHONE LANDSCAPE AUTHORITY — loaded last, overrides legacy absolute rules. */
@media (max-width:932px) and (orientation:landscape) and (hover:none) and (pointer:coarse){
  .v7-hero{height:auto!important;min-height:560px!important;overflow:visible!important;}
  .v7-hero-inner{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1.18fr) minmax(200px,.82fr)!important;grid-template-rows:auto auto auto auto!important;column-gap:28px!important;row-gap:0!important;width:min(100% - 64px,1100px)!important;max-width:1100px!important;min-height:0!important;height:auto!important;margin:0 auto!important;padding:78px 0 38px!important;transform:none!important;overflow:visible!important;}
  .v7-copy{display:contents!important;position:static!important;inset:auto!important;transform:none!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;overflow:visible!important;}
  .v7-copy>.v7-kicker{grid-column:1!important;grid-row:1!important;position:relative!important;inset:auto!important;margin:0 0 8px!important;transform:none!important;z-index:12!important;}
  .v7-copy>h1{grid-column:1!important;grid-row:2!important;position:relative!important;inset:auto!important;width:100%!important;max-width:620px!important;margin:0!important;transform:none!important;font-size:clamp(2.15rem,5.2vw,3.25rem)!important;line-height:.89!important;letter-spacing:-.045em!important;overflow:visible!important;z-index:12!important;}
  .v7-copy>h1 span{display:block!important;}
  .v7-hero-inner>.sunhouse-horizontal-brand{grid-column:2!important;grid-row:1/3!important;position:relative!important;inset:auto!important;width:clamp(175px,22vw,230px)!important;max-width:none!important;margin:-20px 0 0!important;transform:none!important;justify-self:center!important;align-self:start!important;z-index:18!important;overflow:visible!important;}
  .v7-copy>p{grid-column:1/-1!important;grid-row:3!important;position:relative!important;inset:auto!important;width:min(720px,72%)!important;min-height:0!important;max-height:none!important;margin:14px 0 0!important;padding:0!important;transform:none!important;font-size:clamp(.78rem,1.55vw,.94rem)!important;line-height:1.35!important;overflow:visible!important;z-index:12!important;}
  .v7-copy>.v7-service-strip{grid-column:1/-1!important;grid-row:4!important;position:relative!important;inset:auto!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;width:100%!important;max-width:none!important;margin:22px 0 0!important;padding:0!important;transform:none!important;visibility:visible!important;opacity:1!important;z-index:12!important;}
  .v7-copy>.v7-service-strip>a{position:relative!important;inset:auto!important;min-width:0!important;min-height:88px!important;height:auto!important;margin:0!important;padding:10px 12px!important;transform:none!important;border-radius:17px!important;overflow:hidden!important;}
  .v7-copy>.v7-service-strip .v7-service-strip-icon{margin:0 0 5px!important;}
  .v7-copy>.v7-service-strip strong{font-size:.78rem!important;line-height:1.1!important;}
  .v7-copy>.v7-service-strip small{margin-top:4px!important;font-size:clamp(.58rem,1.15vw,.70rem)!important;line-height:1.2!important;}
  #alojamento{margin-top:0!important;}
}

/* ============================================================
   FINAL COVER RESTORE — only restores the image layer.
   Do not change the stable hero geometry above.
============================================================ */
body:has(.v7-hero) .v7-hero{
  background-color:#6db8df!important;
  background-image:url('/images/sunhouse-cover-blue.png?v=20260914-final-03')!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center center!important;
}
body:has(.v7-hero) .v7-hero > .v7-hero-media{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  z-index:0!important;
}
@media (max-width:720px) and (orientation:portrait){
  body:has(.v7-hero) .v7-hero{background-position:60% center!important;}
  body:has(.v7-hero) .v7-hero > .v7-hero-media{object-position:60% center!important;}
}
@media (max-width:932px) and (orientation:landscape){
  body:has(.v7-hero) .v7-hero{background-position:52% center!important;}
  body:has(.v7-hero) .v7-hero > .v7-hero-media{object-position:52% center!important;}
}
