.elementor-8247 .elementor-element.elementor-element-35a8a814{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--overflow:hidden;--overlay-opacity:0.5;--padding-top:0px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-8247 .elementor-element.elementor-element-35a8a814:not(.elementor-motion-effects-element-type-background), .elementor-8247 .elementor-element.elementor-element-35a8a814 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;background-image:url("https://tanresorts.com/cap-cana/wp-content/uploads/sites/3/2026/10/cave-girl-header-2048x853.webp");background-repeat:no-repeat;}.elementor-8247 .elementor-element.elementor-element-35a8a814::before, .elementor-8247 .elementor-element.elementor-element-35a8a814 > .elementor-background-video-container::before, .elementor-8247 .elementor-element.elementor-element-35a8a814 > .e-con-inner > .elementor-background-video-container::before, .elementor-8247 .elementor-element.elementor-element-35a8a814 > .elementor-background-slideshow::before, .elementor-8247 .elementor-element.elementor-element-35a8a814 > .e-con-inner > .elementor-background-slideshow::before, .elementor-8247 .elementor-element.elementor-element-35a8a814 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #00000000 0%, #000000 100%);}.elementor-8247 .elementor-element.elementor-element-35a8a814.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-8247 .elementor-element.elementor-element-97b3355{width:var( --container-widget-width, 1140px );max-width:1140px;--container-widget-width:1140px;--container-widget-flex-grow:0;text-align:center;text-shadow:3px 3px 0px #000000;color:#FFFFFF;}.elementor-8247 .elementor-element.elementor-element-97b3355 p{margin-block-end:0px;}.elementor-8247 .elementor-element.elementor-element-3a70ada{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-8247 .elementor-element.elementor-element-3a70ada:not(.elementor-motion-effects-element-type-background), .elementor-8247 .elementor-element.elementor-element-3a70ada > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#006B6B;}.elementor-8247 .elementor-element.elementor-element-0e40c27{--display:flex;}.elementor-8247 .elementor-element.elementor-element-18e6fa26{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--border-radius:6px 6px 6px 6px;}.elementor-8247 .elementor-element.elementor-element-18e6fa26:not(.elementor-motion-effects-element-type-background), .elementor-8247 .elementor-element.elementor-element-18e6fa26 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFFD9;}.elementor-8247 .elementor-element.elementor-element-65516a2d{--display:flex;--justify-content:center;--gap:5px 0px;--row-gap:5px;--column-gap:0px;--border-radius:6px 6px 6px 6px;}.elementor-8247 .elementor-element.elementor-element-65516a2d:not(.elementor-motion-effects-element-type-background), .elementor-8247 .elementor-element.elementor-element-65516a2d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );background-image:url("https://tanresorts.com/cap-cana/wp-content/uploads/sites/3/2026/10/landing-page-pool-hero.webp");}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-8247 .elementor-element.elementor-element-6f24f4fb{text-align:center;}.elementor-8247 .elementor-element.elementor-element-6f24f4fb .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:30px;font-weight:500;text-transform:uppercase;line-height:3.5rem;color:#FFFFFF;}.elementor-8247 .elementor-element.elementor-element-13cd61b0{--display:flex;--justify-content:flex-end;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8247 .elementor-element.elementor-element-495f7b9{--display:grid;--min-height:0px;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:center;--align-items:center;--padding-top:35px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8247 .elementor-element.elementor-element-495f7b9.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-8247 .elementor-element.elementor-element-f3ada5b{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;}.elementor-8247 .elementor-element.elementor-element-a01226a.elementor-element{--align-self:flex-start;}.elementor-8247 .elementor-element.elementor-element-53a2952{--display:flex;--min-height:763px;--flex-direction:column-reverse;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:flex-start;--overlay-opacity:0.5;--border-radius:8px 8px 8px 8px;--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-8247 .elementor-element.elementor-element-53a2952:not(.elementor-motion-effects-element-type-background), .elementor-8247 .elementor-element.elementor-element-53a2952 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://tanresorts.com/cap-cana/wp-content/uploads/sites/3/2026/10/cap-cana-offer-header-pool-girl.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-8247 .elementor-element.elementor-element-53a2952::before, .elementor-8247 .elementor-element.elementor-element-53a2952 > .elementor-background-video-container::before, .elementor-8247 .elementor-element.elementor-element-53a2952 > .e-con-inner > .elementor-background-video-container::before, .elementor-8247 .elementor-element.elementor-element-53a2952 > .elementor-background-slideshow::before, .elementor-8247 .elementor-element.elementor-element-53a2952 > .e-con-inner > .elementor-background-slideshow::before, .elementor-8247 .elementor-element.elementor-element-53a2952 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(80deg, #000000 0%, #13131333 100%);}.elementor-8247 .elementor-element.elementor-element-1bd8a23{padding:10px 0px 10px 3px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );}.elementor-8247 .elementor-element.elementor-element-e1bd3b9 .elementor-button{background-color:var( --e-global-color-accent );font-family:"Barlow Condensed", Sans-serif;font-size:16px;font-weight:500;text-transform:uppercase;fill:#FFFFFF;color:#FFFFFF;transition-duration:0.5s;border-radius:5px 5px 5px 5px;padding:15px 35px 15px 30px;}.elementor-8247 .elementor-element.elementor-element-e1bd3b9 .elementor-button:hover, .elementor-8247 .elementor-element.elementor-element-e1bd3b9 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-f605de9 );}.elementor-8247 .elementor-element.elementor-element-e1bd3b9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-8247 .elementor-element.elementor-element-e1bd3b9 .elementor-button:hover svg, .elementor-8247 .elementor-element.elementor-element-e1bd3b9 .elementor-button:focus svg{fill:var( --e-global-color-f605de9 );}.elementor-8247 .elementor-element.elementor-element-e6d6cf1{width:var( --container-widget-width, 80.247% );max-width:80.247%;margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;padding:0% 0% 0% 0%;--container-widget-width:80.247%;--container-widget-flex-grow:0;}.elementor-8247 .elementor-element.elementor-element-e6d6cf1.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-8247 .elementor-element.elementor-element-b4527b3{--display:flex;--padding-top:0px;--padding-bottom:28px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-8247 .elementor-element.elementor-element-65516a2d{--width:25%;}.elementor-8247 .elementor-element.elementor-element-13cd61b0{--width:75%;}.elementor-8247 .elementor-element.elementor-element-495f7b9{--width:79.911%;}}@media(max-width:1024px) and (min-width:768px){.elementor-8247 .elementor-element.elementor-element-35a8a814{--width:775px;}.elementor-8247 .elementor-element.elementor-element-495f7b9{--width:923px;}}@media(max-width:1024px){.elementor-8247 .elementor-element.elementor-element-35a8a814{--padding-top:0px;--padding-bottom:100px;--padding-left:20px;--padding-right:20px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-8247 .elementor-element.elementor-element-6f24f4fb .elementor-heading-title{font-size:20px;}.elementor-8247 .elementor-element.elementor-element-495f7b9{--grid-auto-flow:row;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-8247 .elementor-element.elementor-element-35a8a814{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-8247 .elementor-element.elementor-element-495f7b9{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS for text-editor, class: .elementor-element-97b3355 */.hero-badge {
    display: inline-block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: rgb(0, 229, 201) !important;
    text-transform: uppercase;
    margin-bottom: 20px;
}
.hero-headline {
    font-size: 45px !important;
    font-weight: 800;
    line-height: 1.08 !important;;
    letter-spacing: -0.5px;
    margin-bottom: 22px;
    color: rgb(255, 255, 255) !important;
}
.hero-headline .teal-accent {
    color: rgb(0, 196, 170);
}

.hero-subhead {
    font-size: 18.5px;
    line-height: 1.55;
    font-weight: 400;
    margin-bottom: 28px;
}

.cta-btn {
    display: inline-block;
    width: 250px;
    text-align: center;
    background-color: rgb(240, 90, 70);
    color: rgb(255, 255, 255) !important;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    text-decoration: none;
    padding: 14px 20px;
    border-radius: 2px;
    transition: background-color 0.2s;
}

.hero-disclaimer {
    font-size: 11.5px;
    margin-top: 14px;
    letter-spacing: 0.2px;
}


@media screen and (max-width:768px){
    .hero-headline {
    font-size: 29px !important;
    font-weight: 800;
 
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0856217 */.hero-bar-container-wrap{
        display: flex;
    gap: 60px;
}
.hero-bar-container {
    max-width: 1140px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 125px;
    margin: 0px auto;
    gap: 60px;
}
.bar-col-dollars {
    display: flex;
    align-items: center;
    gap: 14px;
}
.bar-amount {
    font-size: 52px;
    font-weight: 800;
    color: rgb(255, 255, 255);
    line-height: 1;
    letter-spacing: -1px;
}
.bar-label-wrapper {
    display: flex;
    flex-direction: column;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
    color: rgb(255, 255, 255);
    line-height: 1.25;
    text-transform: uppercase;
}
.bar-col-copy {
    font-size: 17px;
    font-weight: 500;
    color: rgb(255, 255, 255);
    line-height: 1.4;
}
bar-col-link {
    margin-left: auto;
}
.explore-link {
    color: rgb(255, 255, 255) !important;
    font-size: 14px;
    font-weight: 400;
    text-underline-offset: 6px !important;
    text-decoration: underline !important;
    transition: opacity 0.2s !important;
}

.bar-col-copy p{
    margin-bottom: 5px;
}


@media screen and (max-width:768px){
.hero-bar-container-wrap {
    display: flex;
    gap: 7px;
    flex-direction: column;
}
.hero-bar-container {
    padding-left: 0;
    flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
            gap: 10px;

  
}


}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a01226a */.category-tag {
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 1.2px;
    color: rgb(0, 118, 108);
    text-transform: uppercase;
    display: block;
    margin-bottom: 10px;
}

.headline-large {
    font-size: 34px !important;
    font-weight: 800;
    color: rgb(13, 39, 56);
    line-height: 1.18 !important;
    letter-spacing: -0.3px;
}

@media screen and (max-width:768px)
{
    .headline-large {
    font-size: 25px !important;
    font-weight: 800;
    color: rgb(13, 39, 56);
    line-height: 1.18 !important;
    letter-spacing: -0.3px;
    margin-bottom: 0;
}
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d552747 */.card-caption-headline {
    font-size: 28px !important;
    font-weight: 800;
    color: rgb(255, 255, 255);
    line-height: 1.2 !important;
}

.card-caption-tag {
    font-size: 10.5px !important;
    font-weight: 800;
    letter-spacing: 1.5px !important;
    color: rgb(255, 255, 255) !important;
    text-transform: uppercase !important;
    margin-bottom: 10px;
    opacity: 0.9 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e6d6cf1 */.row-container {
  display: flex;
  justify-content: center; /* Centers horizontally along the main axis */
  align-items: center;    /* Centers vertically along the cross axis */
  height: 300px;          /* Give the container height for vertical centering */
}/* End custom CSS */
/* Start custom CSS */.redeem-grid {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;          /* vertically centers the text next to the pool photo */
  gap: 2rem;
}

/* every child takes exactly half the row, minus half the gap */
.redeem-grid > .elementor-element {
  flex: 0 0 calc(50% - 1rem) !important;
  max-width: calc(50% - 1rem) !important;
  margin: 0 !important;
}

/* images fill their column and share the same shape */
.redeem-grid img {
  width: 100% !important;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  display: block;
}

/* stack into one column on phones */
@media (max-width: 767px) {
  .redeem-grid > .elementor-element {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
}/* End custom CSS */