/* ======================================================
   TWILIGHT RESORT
   PRIVACY POLICY
   FULL CLEAN REPLACEMENT
   STICKY SIDEBAR FIXED
====================================================== */


/* ======================================================
   OWNERREZ RESET
====================================================== */

html:has(main.trpriv2-page),
html:has(main.trpriv2-page) body{
  width:100%!important;
  max-width:100%!important;

  margin:0!important;
  padding:0!important;

  background:#F5F3E8!important;
  color:#292B27!important;

  overflow-x:clip!important;
  overflow-y:visible!important;
}


html:has(main.trpriv2-page)
#content{
  width:100%!important;
  max-width:none!important;

  margin:0!important;

  background:#F5F3E8!important;

  overflow:visible!important;
}


html:has(main.trpriv2-page)
#content.container{
  width:100%!important;
  max-width:none!important;

  margin:0!important;

  background:#F5F3E8!important;

  overflow:visible!important;

  transform:none!important;
  contain:none!important;
}


html:has(main.trpriv2-page)
#content > .body-content{
  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:0!important;

  background:#F5F3E8!important;

  overflow:visible!important;

  transform:none!important;
  contain:none!important;
}


html:has(main.trpriv2-page)
#content > .body-content > .row{
  display:none!important;
}


html:has(main.trpriv2-page)
#content h1.page-header,
html:has(main.trpriv2-page)
#content p.lead{
  display:none!important;
}


/* ======================================================
   BASE
====================================================== */

.trpriv2-page{
  display:block!important;

  width:100%!important;

  margin:0!important;
  padding:0!important;

  background:#F5F3E8!important;
  color:#292B27!important;

  overflow:visible!important;

  font-family:"Alone Kaium",Arial,sans-serif!important;
}


.trpriv2-page *,
.trpriv2-page *::before,
.trpriv2-page *::after{
  box-sizing:border-box!important;
}


.trpriv2-page h1,
.trpriv2-page h2{
  margin:0!important;
  padding:0!important;

  color:#173329!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-weight:600!important;

  letter-spacing:-.04em!important;

  word-break:normal!important;
  overflow-wrap:normal!important;
}


.trpriv2-page p{
  margin:0!important;

  word-break:normal!important;
  overflow-wrap:normal!important;
}


.trpriv2-inner{
  width:calc(100% - 96px)!important;
  max-width:1320px!important;

  margin:0 auto!important;
}


.trpriv2-kicker{
  display:block!important;

  margin:0 0 14px!important;

  color:#B79A62!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:10px!important;
  line-height:1.3!important;

  font-weight:600!important;

  letter-spacing:.17em!important;

  text-transform:uppercase!important;
}


/* ======================================================
   INTRO
====================================================== */

.trpriv2-intro{
  padding:82px 0 68px!important;

  border-bottom:1px solid #DDD9CC!important;
}


html:has(main.trpriv2-page)
#content
.trpriv2-page
.trpriv2-intro
h1{
  max-width:760px!important;

  color:#173329!important;
  -webkit-text-fill-color:#173329!important;

  font-size:clamp(54px,5vw,74px)!important;
  line-height:1!important;
}


.trpriv2-intro-text{
  max-width:730px!important;

  margin-top:22px!important;

  color:#5F655E!important;

  font-size:18px!important;
  line-height:1.7!important;
}


.trpriv2-updated{
  margin-top:24px!important;

  color:#8A8E86!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:10px!important;

  font-weight:500!important;

  letter-spacing:.08em!important;

  text-transform:uppercase!important;
}


/* ======================================================
   LEGAL AREA
====================================================== */

.trpriv2-legal{
  width:100%!important;

  padding:70px 0 100px!important;

  overflow:visible!important;
}


/*
   IMPORTANT

   align-items:stretch is required.

   The sidebar parent must become as tall as the
   right legal content. Otherwise position sticky
   has no vertical area in which to move.
*/

.trpriv2-layout{
  display:flex!important;

  align-items:stretch!important;

  gap:80px!important;

  width:calc(100% - 96px)!important;
  max-width:1320px!important;

  margin:0 auto!important;

  overflow:visible!important;
}


/* ======================================================
   LEFT SIDEBAR
====================================================== */

.trpriv2-sidebar{
  position:relative!important;

  flex:0 0 300px!important;

  width:300px!important;
  min-width:300px!important;

  align-self:stretch!important;

  margin:0!important;
  padding:0!important;

  overflow:visible!important;
}


.trpriv2-sidebar-panel{
  position:-webkit-sticky!important;
  position:sticky!important;

  top:105px!important;

  display:block!important;

  width:100%!important;

  margin:0!important;
  padding:0 24px 18px 0!important;

  border-right:1px solid #D2CEC1!important;

  z-index:20!important;
}


.trpriv2-sidebar-label{
  display:block!important;

  margin:0 0 17px!important;

  color:#9E8352!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:9px!important;

  font-weight:600!important;

  letter-spacing:.16em!important;

  text-transform:uppercase!important;
}


/* ======================================================
   SIDEBAR SHORTCUTS
====================================================== */

.trpriv2-nav{
  display:flex!important;

  flex-direction:column!important;

  gap:6px!important;

  width:100%!important;
}


.trpriv2-nav button{
  appearance:none!important;

  display:flex!important;

  align-items:center!important;
  justify-content:space-between!important;

  gap:12px!important;

  width:100%!important;
  min-height:42px!important;

  margin:0!important;
  padding:8px 12px!important;

  background:#FAF8F1!important;

  border:1px solid transparent!important;
  border-radius:9px!important;

  color:#5F655E!important;

  font-family:"Alone Kaium",Arial,sans-serif!important;

  font-size:14px!important;
  line-height:1.3!important;

  font-weight:400!important;

  text-align:left!important;

  text-decoration:none!important;

  box-shadow:none!important;

  cursor:pointer!important;

  transition:
    background .18s ease,
    border-color .18s ease,
    color .18s ease,
    transform .18s ease!important;
}


.trpriv2-nav button span{
  flex:1 1 auto!important;

  min-width:0!important;
}


.trpriv2-nav button b{
  flex:0 0 auto!important;

  color:#B79A62!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:14px!important;

  font-weight:500!important;
}


.trpriv2-nav button:hover,
.trpriv2-nav button:focus{
  background:#E8EADC!important;

  border-color:#D1D3C5!important;

  color:#173329!important;

  outline:none!important;

  transform:translateX(3px)!important;
}


/* ======================================================
   SIDEBAR CONTACT
====================================================== */

.trpriv2-sidebar-contact{
  margin-top:26px!important;
  padding:22px 12px 0!important;

  border-top:1px solid #D2CEC1!important;
}


.trpriv2-sidebar-icon{
  display:flex!important;

  align-items:center!important;
  justify-content:center!important;

  width:38px!important;
  height:38px!important;

  margin-bottom:13px!important;

  border:1px solid #B79A62!important;
  border-radius:50%!important;
}


.trpriv2-sidebar-icon svg{
  width:18px!important;
  height:18px!important;

  fill:none!important;

  stroke:#9E8352!important;

  stroke-width:1.6!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}


.trpriv2-sidebar-contact p{
  max-width:210px!important;

  color:#666B64!important;

  font-size:13px!important;
  line-height:1.55!important;
}


.trpriv2-sidebar-contact a{
  display:block!important;

  margin-top:8px!important;

  color:#173329!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:11px!important;

  font-weight:600!important;

  text-decoration:none!important;

  overflow-wrap:anywhere!important;
}


/* ======================================================
   RIGHT CONTENT
====================================================== */

.trpriv2-content{
  flex:1 1 0%!important;

  width:auto!important;
  min-width:0!important;
  max-width:860px!important;

  margin:0!important;
  padding:0!important;
}


.trpriv2-section{
  display:flex!important;

  align-items:flex-start!important;

  gap:22px!important;

  width:100%!important;
  min-width:0!important;

  margin:0 0 52px!important;
  padding:0 0 52px!important;

  border-bottom:1px solid #D2CEC1!important;
}


.trpriv2-section-icon{
  display:flex!important;

  align-items:center!important;
  justify-content:center!important;

  flex:0 0 44px!important;

  width:44px!important;
  height:44px!important;

  border:1px solid #B79A62!important;
  border-radius:50%!important;
}


.trpriv2-section-icon svg{
  width:20px!important;
  height:20px!important;

  fill:none!important;

  stroke:#9E8352!important;

  stroke-width:1.6!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}


.trpriv2-section-copy{
  flex:1 1 0%!important;

  width:auto!important;
  min-width:0!important;
  max-width:760px!important;
}


.trpriv2-section-label{
  display:block!important;

  margin:1px 0 10px!important;

  color:#9E8352!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:9px!important;
  line-height:1.3!important;

  font-weight:600!important;

  letter-spacing:.15em!important;

  text-transform:uppercase!important;
}


html:has(main.trpriv2-page)
#content
.trpriv2-page
.trpriv2-section
h2{
  display:block!important;

  width:100%!important;
  max-width:700px!important;

  color:#173329!important;
  -webkit-text-fill-color:#173329!important;

  font-size:31px!important;
  line-height:1.12!important;

  word-break:normal!important;
  overflow-wrap:normal!important;
}


.trpriv2-section p{
  width:100%!important;
  max-width:760px!important;

  margin-top:17px!important;

  color:#555B54!important;

  font-size:16px!important;
  line-height:1.75!important;

  word-break:normal!important;
  overflow-wrap:normal!important;
}


.trpriv2-section p + p{
  margin-top:13px!important;
}


/* ======================================================
   CONTACT BOX
====================================================== */

.trpriv2-contact-box{
  width:100%!important;
  max-width:600px!important;

  margin-top:24px!important;
  padding:24px!important;

  background:#E8EADC!important;

  border:1px solid #D1D3C5!important;
  border-radius:16px!important;
}


.trpriv2-contact-box strong{
  display:block!important;

  color:#173329!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:16px!important;

  font-weight:600!important;
}


.trpriv2-contact-box > span{
  display:block!important;

  margin-top:6px!important;

  color:#62675F!important;

  font-size:14px!important;
}


.trpriv2-contact-box a{
  display:block!important;

  width:max-content!important;
  max-width:100%!important;

  margin-top:9px!important;

  color:#173329!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:12px!important;

  font-weight:600!important;

  text-decoration:none!important;

  overflow-wrap:anywhere!important;
}


/* ======================================================
   BACK TO TOP
====================================================== */

.trpriv2-top{
  appearance:none!important;

  min-height:44px!important;

  padding:0 18px!important;

  background:transparent!important;

  border:1px solid #173329!important;
  border-radius:999px!important;

  color:#173329!important;

  font-family:"Sora",Arial,sans-serif!important;

  font-size:11px!important;

  font-weight:600!important;

  cursor:pointer!important;
}


.trpriv2-top:hover{
  background:#173329!important;

  color:#FFFFFF!important;
}


/* ======================================================
   TABLET
====================================================== */

@media(max-width:1050px){

  .trpriv2-inner,
  .trpriv2-layout{
    width:calc(100% - 64px)!important;
  }


  .trpriv2-layout{
    gap:48px!important;
  }


  .trpriv2-sidebar{
    flex-basis:245px!important;

    width:245px!important;
    min-width:245px!important;
  }


  .trpriv2-nav button{
    font-size:13px!important;
  }

}


/* ======================================================
   MOBILE
====================================================== */

@media(max-width:760px){

  .trpriv2-inner,
  .trpriv2-layout{
    width:calc(100% - 40px)!important;
  }


  .trpriv2-intro{
    padding:58px 0 45px!important;
  }


  html:has(main.trpriv2-page)
  #content
  .trpriv2-page
  .trpriv2-intro
  h1{
    font-size:42px!important;
  }


  .trpriv2-intro-text{
    font-size:15.5px!important;
  }


  .trpriv2-legal{
    padding:42px 0 70px!important;
  }


  .trpriv2-layout{
    display:block!important;
  }


  .trpriv2-sidebar{
    width:100%!important;
    min-width:0!important;

    margin-bottom:44px!important;
  }


  .trpriv2-sidebar-panel{
    position:static!important;

    width:100%!important;

    padding:22px!important;

    background:#E8EADC!important;

    border:1px solid #D1D3C5!important;
    border-radius:18px!important;
  }


  .trpriv2-nav{
    display:grid!important;

    grid-template-columns:
      repeat(2,minmax(0,1fr))!important;

    gap:8px!important;
  }


  .trpriv2-nav button{
    min-height:46px!important;

    background:#F5F3E8!important;

    border-color:#DDD9CC!important;

    font-size:13px!important;
  }


  .trpriv2-nav button:hover{
    transform:none!important;
  }


  .trpriv2-sidebar-contact{
    display:none!important;
  }


  .trpriv2-content{
    width:100%!important;
    max-width:none!important;
  }


  .trpriv2-section{
    gap:15px!important;

    margin-bottom:38px!important;
    padding-bottom:38px!important;
  }


  .trpriv2-section-icon{
    flex-basis:38px!important;

    width:38px!important;
    height:38px!important;
  }


  .trpriv2-section-icon svg{
    width:17px!important;
    height:17px!important;
  }


  html:has(main.trpriv2-page)
  #content
  .trpriv2-page
  .trpriv2-section
  h2{
    font-size:27px!important;
  }


  .trpriv2-section p{
    margin-top:14px!important;

    font-size:15.5px!important;
    line-height:1.7!important;
  }

}


/* ======================================================
   SMALL MOBILE
====================================================== */

@media(max-width:480px){

  .trpriv2-inner,
  .trpriv2-layout{
    width:calc(100% - 28px)!important;
  }


  html:has(main.trpriv2-page)
  #content
  .trpriv2-page
  .trpriv2-intro
  h1{
    font-size:37px!important;
  }


  .trpriv2-sidebar-panel{
    padding:18px!important;
  }


  .trpriv2-nav{
    grid-template-columns:1fr!important;
  }


  .trpriv2-section{
    display:block!important;
  }


  .trpriv2-section-icon{
    margin-bottom:14px!important;
  }


  html:has(main.trpriv2-page)
  #content
  .trpriv2-page
  .trpriv2-section
  h2{
    font-size:25px!important;
  }

}