.elementor-213 .elementor-element.elementor-element-aa0103d{--display:flex;--margin-top:-35px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}/* Start custom CSS for html, class: .elementor-element-8e41acc *//* =====================================================
   GALLERY PAGE — HERO
===================================================== */

.serenity-gallery-hero{

    position:relative;

    width:100%;

    height:680px;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

    color:#fff;

}


/* =====================================================
   BACKGROUND
===================================================== */

.serenity-gallery-hero-bg{

    position:absolute;

    inset:0;

    overflow:hidden;

}


.serenity-gallery-hero-bg img{

    width:100%;

    height:100%;

    display:block;

    object-fit:cover;

    object-position:center;

    transform:scale(1.04);

    animation:
        serenityGalleryZoom
        15s
        ease-in-out
        infinite
        alternate;

}


@keyframes serenityGalleryZoom{

    from{
        transform:scale(1.04);
    }

    to{
        transform:scale(1.10);
    }

}


/* =====================================================
   OVERLAY
===================================================== */

.serenity-gallery-hero-overlay{

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(17,14,12,.84),
            rgba(17,14,12,.48),
            rgba(17,14,12,.27)
        );

}


/* =====================================================
   FRAME
===================================================== */

.serenity-gallery-hero-frame{

    position:absolute;

    inset:30px;

    border:
        1px solid
        rgba(255,255,255,.18);

    pointer-events:none;

}


/* =====================================================
   CONTENT
===================================================== */

.serenity-gallery-hero-content{

    position:relative;

    z-index:5;

    width:min(800px,86%);

    text-align:center;

}


.serenity-gallery-hero-content h1{

    margin:0;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:
        clamp(70px,9vw,120px);

    line-height:.78;

    font-weight:400;

    letter-spacing:-1px;

}


.serenity-gallery-hero-content h1 em{

    display:block;

    color:#d2ad88;

    font-style:italic;

}


.serenity-gallery-hero-content p{

    max-width:520px;

    margin:
        30px auto 0;

    color:
        rgba(255,255,255,.76);

    font-size:10px;

    line-height:2;

}


.serenity-gallery-hero-line{

    width:50px;

    height:1px;

    margin:
        28px auto 15px;

    background:#d2ad88;

}


.serenity-gallery-hero-location{

    color:
        rgba(255,255,255,.58);

    font-size:7px;

    letter-spacing:3px;

}


/* =====================================================
   SCROLL
===================================================== */

.serenity-gallery-scroll{

    position:absolute;

    left:50%;

    bottom:27px;

    z-index:5;

    transform:translateX(-50%);

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:9px;

}


.serenity-gallery-scroll span{

    color:
        rgba(255,255,255,.62);

    font-size:7px;

    letter-spacing:2px;

}


.serenity-gallery-scroll i{

    width:1px;

    height:40px;

    background:
        linear-gradient(
            to bottom,
            #fff,
            transparent
        );

    animation:
        serenityGalleryScroll
        2s
        ease-in-out
        infinite;

}


@keyframes serenityGalleryScroll{

    0%{

        transform:scaleY(.45);

        opacity:.3;

        transform-origin:top;

    }

    50%{

        transform:scaleY(1);

        opacity:1;

    }

    100%{

        transform:scaleY(.45);

        opacity:.3;

        transform-origin:bottom;

    }

}


/* =====================================================
   SIDE LABEL
===================================================== */

.serenity-gallery-side{

    position:absolute;

    right:35px;

    top:50%;

    z-index:5;

    transform:
        translateY(-50%)
        rotate(180deg);

    writing-mode:vertical-rl;

    color:
        rgba(255,255,255,.4);

    font-size:7px;

    letter-spacing:4px;

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .serenity-gallery-hero{

        height:590px;

    }


    .serenity-gallery-hero-frame{

        inset:15px;

    }


    .serenity-gallery-hero-content{

        width:82%;

    }


    .serenity-gallery-hero-content h1{

        font-size:62px;

    }


    .serenity-gallery-side{

        display:none;

    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c07e6aa *//* =====================================================
   GALLERY — INTRO
===================================================== */

.serenity-gallery-intro{

    padding:
        105px 7vw 65px;

    background:#f4f1eb;

}


.serenity-gallery-intro-content{

    max-width:720px;

    margin:0 auto;

    text-align:center;

}


.serenity-gallery-intro h2{

    margin:0;

    color:#292621;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:
        clamp(52px,5vw,72px);

    line-height:.85;

    font-weight:400;

}


.serenity-gallery-intro h2 em{

    color:#b38b68;

    font-style:italic;

}


.serenity-gallery-intro p{

    max-width:520px;

    margin:
        20px auto 0;

    color:#77716b;

    font-size:10px;

    line-height:2;

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8bd0daf *//* =====================================================
   GALLERY — ROOMS
===================================================== */

.serenity-gallery-rooms{

    padding:
        75px 7vw 110px;

    background:#f4f1eb;

}


.serenity-gallery-section-heading{

    max-width:700px;

    margin:
        0 auto 50px;

    text-align:center;

}


.serenity-gallery-section-heading h2{

    margin:0;

    color:#292621;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:
        clamp(50px,5vw,70px);

    line-height:.85;

    font-weight:400;

}


.serenity-gallery-section-heading h2 em{

    color:#b38b68;

    font-style:italic;

}


/* =====================================================
   GRID
===================================================== */

.serenity-gallery-grid{

    max-width:1200px;

    margin:0 auto;

    display:grid;

    grid-template-columns:
        1.2fr 1fr 1fr;

    gap:14px;

}


.serenity-gallery-item{

    position:relative;

    height:480px;

    overflow:hidden;

    cursor:pointer;

}


.serenity-gallery-item-tall{

    height:600px;

}


/* =====================================================
   IMAGE
===================================================== */

.serenity-gallery-image{

    position:absolute;

    inset:0;

}


.serenity-gallery-image img{

    width:100%;

    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform 1s ease;

}


.serenity-gallery-item:hover
.serenity-gallery-image img{

    transform:scale(1.07);

}


/* =====================================================
   OVERLAY
===================================================== */

.serenity-gallery-image-overlay{

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            to top,
            rgba(15,12,10,.82),
            rgba(15,12,10,.05) 60%
        );

}


/* =====================================================
   CAPTION
===================================================== */

.serenity-gallery-caption{

    position:absolute;

    left:25px;

    right:25px;

    bottom:22px;

    z-index:5;

    display:grid;

    grid-template-columns:
        30px 1fr 25px;

    align-items:end;

    gap:10px;

    color:#fff;

}


.serenity-gallery-caption > span{

    color:#d2ad88;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:14px;

}


.serenity-gallery-caption div{

    display:flex;

    flex-direction:column;

    gap:4px;

}


.serenity-gallery-caption strong{

    color:#fff;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:24px;

    font-weight:400;

}


.serenity-gallery-caption small{

    color:
        rgba(255,255,255,.52);

    font-size:6px;

    letter-spacing:1.5px;

}


.serenity-gallery-caption b{

    width:24px;

    height:24px;

    display:flex;

    align-items:center;

    justify-content:center;

    border:
        1px solid
        rgba(255,255,255,.45);

    border-radius:50%;

    color:#d2ad88;

    font-size:15px;

    font-weight:300;

    transition:
        background .3s ease,
        transform .3s ease;

}


.serenity-gallery-item:hover
.serenity-gallery-caption b{

    background:#b38b68;

    border-color:#b38b68;

    color:#fff;

    transform:rotate(90deg);

}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    .serenity-gallery-grid{

        grid-template-columns:
            1fr 1fr;

    }


    .serenity-gallery-item-tall{

        grid-column:
            1 / -1;

        height:520px;

    }


    .serenity-gallery-item{

        height:420px;

    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .serenity-gallery-rooms{

        padding:
            60px 20px 75px;

    }


    .serenity-gallery-grid{

        grid-template-columns:1fr;

    }


    .serenity-gallery-item,
    .serenity-gallery-item-tall{

        grid-column:auto;

        height:430px;

    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8bfdc27 *//* =====================================================
   GALLERY — PART 4
   THE HIDEAWAY — EXPANDED
===================================================== */

.serenity-gallery-hideaway{

    width:100%;

    padding:
        110px 7vw 125px;

    background:#211c18;

    color:#fff;

}


/* =====================================================
   HEADING
===================================================== */

.serenity-gallery-hideaway-heading{

    max-width:700px;

    margin:
        0 auto 60px;

    text-align:center;

}


.serenity-gallery-hideaway-heading h2{

    margin:0;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:
        clamp(52px,5vw,72px);

    line-height:.85;

    font-weight:400;

}


.serenity-gallery-hideaway-heading h2 em{

    color:#d2ad88;

    font-style:italic;

}


.serenity-gallery-hideaway-heading p{

    max-width:520px;

    margin:
        20px auto 0;

    color:
        rgba(255,255,255,.52);

    font-size:10px;

    line-height:2;

}


/* =====================================================
   EDITORIAL GALLERY
===================================================== */

.serenity-editorial-gallery{

    max-width:1250px;

    margin:0 auto;

    display:grid;

    grid-template-columns:
        1.15fr .85fr .85fr;

    grid-auto-rows:260px;

    gap:12px;

}


/* =====================================================
   ALL PHOTOS
===================================================== */

.serenity-gallery-photo{

    position:relative;

    overflow:hidden;

    cursor:pointer;

}


.serenity-gallery-photo img{

    width:100%;

    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform 1.1s cubic-bezier(.2,.7,.2,1);

}


.serenity-gallery-photo:hover
.serenity-gallery-photo img{

    transform:scale(1.07);

}


/* =====================================================
   FIRST ROW
===================================================== */

.photo-large{

    grid-column:
        1 / 2;

    grid-row:
        span 2;

}


.photo-small:nth-child(2){

    grid-column:
        2 / 3;

}


.photo-small:nth-child(3){

    grid-column:
        3 / 4;

}


/* =====================================================
   SECOND SECTION
===================================================== */

.photo-wide{

    grid-column:
        2 / 4;

    grid-row:
        span 1;

}


/* =====================================================
   THIRD SECTION
===================================================== */

.photo-vertical{

    grid-column:
        1 / 2;

    grid-row:
        span 2;

}


.photo-medium{

    grid-column:
        2 / 4;

}


/* =====================================================
   FOURTH SECTION
===================================================== */

.photo-wide-bottom{

    grid-column:
        2 / 4;

    grid-row:
        span 2;

}


.photo-small-bottom:nth-last-of-type(2){

    grid-column:
        1 / 2;

}


.photo-small-bottom:nth-last-of-type(1){

    grid-column:
        1 / 2;

}


/* =====================================================
   FINAL IMAGE
===================================================== */

.photo-final{

    grid-column:
        1 / 4;

    height:360px;

}


/* =====================================================
   OVERLAY
===================================================== */

.serenity-gallery-photo-overlay{

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            to top,
            rgba(12,10,8,.82),
            rgba(12,10,8,.05) 65%
        );

    opacity:.72;

    transition:
        opacity .4s ease;

}


.serenity-gallery-photo:hover
.serenity-gallery-photo-overlay{

    opacity:.95;

}


/* =====================================================
   CAPTION
===================================================== */

.serenity-gallery-photo-label{

    position:absolute;

    left:20px;

    right:20px;

    bottom:18px;

    z-index:5;

    display:flex;

    align-items:center;

    gap:12px;

}


.serenity-gallery-photo-label span{

    color:#d2ad88;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:14px;

}


.serenity-gallery-photo-label strong{

    color:
        rgba(255,255,255,.88);

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:20px;

    font-weight:400;

}


.serenity-gallery-photo-label::after{

    content:"";

    width:0;

    height:1px;

    margin-left:auto;

    background:#d2ad88;

    transition:
        width .5s ease;

}


.serenity-gallery-photo:hover
.serenity-gallery-photo-label::after{

    width:45px;

}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    .serenity-editorial-gallery{

        grid-template-columns:
            1fr 1fr;

        grid-auto-rows:280px;

    }


    .photo-large{

        grid-column:
            1 / 3;

        grid-row:
            span 2;

    }


    .photo-small:nth-child(2),
    .photo-small:nth-child(3){

        grid-column:auto;

    }


    .photo-wide{

        grid-column:
            1 / 3;

    }


    .photo-vertical{

        grid-column:
            1 / 2;

    }


    .photo-medium{

        grid-column:
            2 / 3;

    }


    .photo-wide-bottom{

        grid-column:
            1 / 3;

        grid-row:
            span 2;

    }


    .photo-small-bottom{

        grid-column:auto !important;

    }


    .photo-final{

        grid-column:
            1 / 3;

        height:300px;

    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .serenity-gallery-hideaway{

        padding:
            75px 20px 85px;

    }


    .serenity-editorial-gallery{

        display:grid;

        grid-template-columns:1fr;

        grid-auto-rows:auto;

        gap:10px;

    }


    .serenity-gallery-photo,
    .photo-large,
    .photo-small,
    .photo-wide,
    .photo-vertical,
    .photo-medium,
    .photo-wide-bottom,
    .photo-small-bottom,
    .photo-final{

        grid-column:auto !important;

        grid-row:auto !important;

        height:380px;

    }


    .photo-large{

        height:470px;

    }


    .photo-final{

        height:400px;

    }


    .serenity-gallery-photo-label strong{

        font-size:18px;

    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-947d0f5 *//* =====================================================
   GALLERY — PART 5
   ARUSHA & EXPERIENCES
===================================================== */

.serenity-gallery-experiences{

    width:100%;

    padding:
        110px 7vw 120px;

    background:#f4f1eb;

}


/* =====================================================
   HEADING
===================================================== */

.serenity-gallery-experiences-heading{

    max-width:700px;

    margin:
        0 auto 55px;

    text-align:center;

}


.serenity-gallery-experiences-heading h2{

    margin:0;

    color:#292621;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:
        clamp(52px,5vw,72px);

    line-height:.85;

    font-weight:400;

}


.serenity-gallery-experiences-heading h2 em{

    color:#b38b68;

    font-style:italic;

}


.serenity-gallery-experiences-heading p{

    max-width:520px;

    margin:
        20px auto 0;

    color:#77716b;

    font-size:10px;

    line-height:2;

}


/* =====================================================
   GRID
===================================================== */

.serenity-experience-grid{

    max-width:1200px;

    margin:0 auto;

    display:grid;

    grid-template-columns:
        1fr 1fr;

    gap:14px;

}


/* =====================================================
   CARD
===================================================== */

.serenity-experience-card{

    position:relative;

    height:620px;

    overflow:hidden;

    cursor:pointer;

}


.serenity-experience-image{

    position:absolute;

    inset:0;

}


.serenity-experience-image img{

    width:100%;

    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform 1.2s ease;

}


.serenity-experience-card:hover
.serenity-experience-image img{

    transform:scale(1.07);

}


/* =====================================================
   OVERLAY
===================================================== */

.serenity-experience-overlay{

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            to top,
            rgba(13,11,9,.9),
            rgba(13,11,9,.2) 65%,
            rgba(13,11,9,.08)
        );

}


/* =====================================================
   CONTENT
===================================================== */

.serenity-experience-content{

    position:absolute;

    left:35px;

    right:35px;

    bottom:35px;

    z-index:5;

    color:#fff;

}


.serenity-experience-number{

    position:absolute;

    right:0;

    bottom:0;

    color:
        rgba(255,255,255,.22);

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:75px;

    line-height:1;

}


.serenity-experience-kicker{

    margin-bottom:10px;

    color:#d2ad88;

    font-size:7px;

    letter-spacing:2.5px;

}


.serenity-experience-content h3{

    max-width:400px;

    margin:0;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:
        clamp(42px,4vw,62px);

    line-height:.82;

    font-weight:400;

}


.serenity-experience-content h3 em{

    display:block;

    color:#d2ad88;

    font-style:italic;

}


.serenity-experience-content p{

    max-width:390px;

    margin:
        20px 0 22px;

    color:
        rgba(255,255,255,.62);

    font-size:9px;

    line-height:2;

}


.serenity-experience-content a{

    display:inline-flex;

    align-items:center;

    gap:16px;

    padding:
        13px 18px;

    border:
        1px solid
        rgba(255,255,255,.38);

    color:#fff;

    font-size:7px;

    letter-spacing:1.7px;

    transition:
        background .3s ease,
        border-color .3s ease;

}


.serenity-experience-content a span{

    color:#d2ad88;

    font-size:15px;

    transition:
        transform .3s ease;

}


.serenity-experience-content a:hover{

    background:#b38b68;

    border-color:#b38b68;

    color:#fff;

}


.serenity-experience-content a:hover span{

    color:#fff;

    transform:
        translateX(4px);

}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    .serenity-experience-grid{

        grid-template-columns:1fr;

    }


    .serenity-experience-card{

        height:550px;

    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .serenity-gallery-experiences{

        padding:
            75px 20px 80px;

    }


    .serenity-experience-card{

        height:500px;

    }


    .serenity-experience-content{

        left:22px;

        right:22px;

        bottom:25px;

    }


    .serenity-experience-content h3{

        font-size:46px;

    }


    .serenity-experience-number{

        font-size:55px;

    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-062fbbd *//* =====================================================
   GALLERY — PART 6
   FOLLOW THE SERENITY
===================================================== */

.serenity-gallery-social{

    width:100%;

    padding:
        105px 7vw 100px;

    background:#f4f1eb;

}


/* =====================================================
   HEADING
===================================================== */

.serenity-gallery-social-heading{

    max-width:700px;

    margin:
        0 auto 50px;

    text-align:center;

}


.serenity-gallery-social-heading h2{

    margin:0;

    color:#292621;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:
        clamp(52px,5vw,72px);

    line-height:.85;

    font-weight:400;

}


.serenity-gallery-social-heading h2 em{

    color:#b38b68;

    font-style:italic;

}


.serenity-gallery-social-heading p{

    max-width:500px;

    margin:
        20px auto 0;

    color:#77716b;

    font-size:10px;

    line-height:2;

}


/* =====================================================
   SOCIAL LINKS
===================================================== */

.serenity-gallery-social-links{

    max-width:900px;

    margin:0 auto;

    display:grid;

    grid-template-columns:
        1fr 1fr;

    gap:12px;

}


.serenity-gallery-social-card{

    position:relative;

    min-height:145px;

    display:flex;

    align-items:center;

    gap:20px;

    padding:
        25px 30px;

    background:#fff;

    border:
        1px solid #ddd5cd;

    color:#292621;

    overflow:hidden;

    transition:
        background .35s ease,
        transform .35s ease;

}


.serenity-gallery-social-card:hover{

    background:#292621;

    color:#fff;

    transform:
        translateY(-5px);

}


/* =====================================================
   ICON
===================================================== */

.serenity-gallery-social-icon{

    width:52px;

    height:52px;

    flex-shrink:0;

    display:flex;

    align-items:center;

    justify-content:center;

    border:
        1px solid #d4cbc1;

    border-radius:50%;

    color:#b38b68;

    font-size:22px;

    transition:
        border-color .35s ease;

}


.serenity-gallery-social-card:hover
.serenity-gallery-social-icon{

    border-color:
        rgba(255,255,255,.35);

}


/* =====================================================
   INFO
===================================================== */

.serenity-gallery-social-info{

    display:flex;

    flex-direction:column;

    gap:7px;

}


.serenity-gallery-social-info span{

    color:#a88b70;

    font-size:6px;

    letter-spacing:2px;

}


.serenity-gallery-social-info strong{

    color:#403a34;

    font-family:
        "Cormorant Garamond",
        serif;

    font-size:23px;

    font-weight:400;

}


.serenity-gallery-social-card:hover
.serenity-gallery-social-info strong{

    color:#fff;

}


/* =====================================================
   ARROW
===================================================== */

.serenity-gallery-social-arrow{

    margin-left:auto;

    color:#b38b68;

    font-size:20px;

    transition:
        transform .35s ease;

}


.serenity-gallery-social-card:hover
.serenity-gallery-social-arrow{

    transform:
        translate(4px,-4px);

}


/* =====================================================
   HASHTAG
===================================================== */

.serenity-gallery-social-hashtag{

    margin-top:40px;

    text-align:center;

    color:#a99e94;

    font-size:7px;

    letter-spacing:3px;

}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:700px){

    .serenity-gallery-social-links{

        grid-template-columns:1fr;

    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .serenity-gallery-social{

        padding:
            75px 20px 80px;

    }


    .serenity-gallery-social-card{

        min-height:125px;

        padding:
            20px;

    }


    .serenity-gallery-social-icon{

        width:45px;

        height:45px;

        font-size:18px;

    }


    .serenity-gallery-social-info strong{

        font-size:20px;

    }

}@media(max-width:600px){

    .serenity-gallery-social-icon{

        width:45px;

        height:45px;

    }

    .serenity-gallery-social-icon svg{

        width:20px;

        height:20px;

    }

}/* End custom CSS */