|
Server IP : 217.21.85.138 / Your IP : 216.73.216.103 Web Server : LiteSpeed System : Linux in-mum-web906.main-hosting.eu 4.18.0-553.37.1.lve.el8.x86_64 #1 SMP Mon Feb 10 22:45:17 UTC 2025 x86_64 User : u915722082 ( 915722082) PHP Version : 7.4.33 Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail MySQL : OFF | cURL : ON | WGET : ON | Perl : OFF | Python : OFF Directory (0755) : /home/u915722082/.nvm/../public_html/rkeventandmedia/ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
<!DOCTYPE html>
<html lang="zxx">
<head>
<!-- Meta Tags -->
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">
<meta name="description" content="RK MEDIA Photography Agency">
<meta name="author" content="">
<!-- Favicon and touch Icons -->
<!-- <link href="./assets/img/favicon.png" rel="shortcut icon" type="image/png">
<link href="./assets/img/apple-touch-icon.html" rel="apple-touch-icon">
<link href="./assets/img/apple-touch-icon-72x72.html" rel="apple-touch-icon" sizes="72x72">
<link href="./assets/img/apple-touch-icon-114x114.html" rel="apple-touch-icon" sizes="114x114">
<link href="./assets/img/apple-touch-icon-144x144.html" rel="apple-touch-icon" sizes="144x144"> -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css">
<!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.1.1/assets/owl.carousel.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.1.1/assets/owl.theme.default.min.css"> -->
<!-- Page Title -->
<title>RK Media & Events</title>
<!-- Styles Include -->
<link rel="stylesheet" href="./assets/css/main.css">
<style>
/* Basic styling for the testimonials */
.slider-container {
position: fixed; /* Fix it so it doesn't move */
top: 50%;
left: 0;
width: 100vw;
height: 300px;
display: flex;
align-items: center;
overflow: hidden;
background: #f5f5f5;
}
.slider {
display: flex;
gap: 20px;
width: max-content;
transition: transform 0.3s ease-out;
}
.slide {
width: 250px;
height: 250px;
background-size: cover;
background-position: center;
border-radius: 10px;
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}
.room-card {
width: 100%;
height: 500px;
background: white;
border-radius: 12px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
position: absolute;
transform-origin: center bottom;
backface-visibility: hidden;
transition: transform 0.8s cubic-bezier(0.34, 1.56, 0.64, 1),
opacity 0.8s cubic-bezier(0.215, 0.610, 0.355, 1);
overflow: hidden;
will-change: transform, opacity;
}
/* Enhance drop shadow for better stacking visual */
.room-card {
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15),
0 2px 8px rgba(0, 0, 0, 0.1),
0 0 1px rgba(0, 0, 0, 0.2);
}
.room-image-container {
position: relative;
height: 55%;
overflow: hidden;
}
.room-image {
width: 100%;
height: 100%;
object-fit: cover;
}
.room-title {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
background: linear-gradient(to top, rgba(0,0,0,0.7), transparent);
color: white;
padding: 15px;
margin: 0;
font-size: 22px;
}
.room-description {
padding: 20px;
height: 35%;
}
.room-description p {
color: #666;
font-size: 14px;
line-height: 1.5;
}
.know-more {
display: inline-block;
margin: 0 20px 20px;
color: #b90808;
text-decoration: none;
font-weight: bold;
font-size: 14px;
}
@media (min-width: 768px) {
.hotel-slider-container.mobile-only {
display: none;
}
}
</style>
</head>
<body class="theme-style--light">
<!-- Preloader -->
<!-- <div id="preloader">
<div class="preloader-inner">
<div class="spinner">
<img src="./assets/img/preloader-logo.svg" alt="img">
<img src="./assets/img/preloader-wheel.svg" alt="img" class="wheel">
</div>
</div>
</div> -->
<!-- pointer start -->
<div class="pointer bnz-pointer" id="bnz-pointer"></div>
<div class="grid_lines">
<div class="grid_line"></div>
<div class="grid_line"></div>
<div class="grid_line"></div>
<div class="grid_line"></div>
<div class="grid_line"></div>
<div class="grid_line"></div>
<div class="grid_line"></div>
</div>
<!-- Main Header -->
<header class="header color-fixed">
<!-- Lower Bar -->
<div class="header-inner">
<div class="container-fluid pe-0">
<div class="d-flex align-items-center justify-content-between">
<!-- Left Part -->
<div class="header_left_part d-flex align-items-center">
<div class="logo">
<!-- <a href="#" class="light_logo"><img src="./assets/img/logo.svg" alt="logo"></a>
<a href="#" class="dark_logo"><img src="./assets/img/logo-dark.svg" alt="logo"></a> -->
<a href="#" class="light_logo" style="color: #fff;">RK MEDIA</a>
<!-- <a href="#" class="dark_logo">RK MEDIA</a> -->
</div>
</div>
<!-- Center Part -->
<div class="header_center_part d-none d-xl-block">
<div class="mainnav">
<ul class="main-menu">
<li class="menu-item menu-item-has-children active"><a href="#">Our Work</a>
<ul class="sub-menu" data-lenis-prevent="">
<li class="menu-item"><a href="wedding.html">Wedding</a></li>
<li class="menu-item"><a href="event.html">Event</a></li>
<li class="menu-item"><a href="commercial.html">Commercial</a></li>
</ul>
</li>
<li class="menu-item"><a href="#"><i class="bi bi-instagram" style="color: #B90808;"></i> Instagram</a></li>
<li class="menu-item "><a href="contact.html">Contact us</a>
</li>
</ul>
</div>
</div>
<div class="header_right_part d-flex align-items-center">
<div class="aside_open wptb-element">
<div class="aside-open--inner">
<span></span>
<span></span>
<span></span>
</div>
</div>
<button type="button" class="mr_menu_toggle wptb-element d-xl-none">
<i class="bi bi-list"></i>
</button>
</div>
</div>
</div>
</div>
</header>
<div class="mr_menu" data-lenis-prevent>
<button type="button" class="mr_menu_close"><i class="bi bi-x-lg"></i></button>
<div class="logo"></div>
<h6>Menu</h6>
<div class="mr_navmenu"></div>
<h6>Contact Us</h6>
<div class="wptb-icon-box1 style2">
<div class="wptb-item--inner flex-start">
<div class="wptb-item--icon"><i class="bi bi-envelope"></i></div>
<div class="wptb-item--holder">
<p class="wptb-item--description"><a href="mailto:rkmedia@gmail.com">rkmedia@gmail.com</a></p>
</div>
</div>
</div>
<div class="wptb-icon-box1 style2">
<div class="wptb-item--inner flex-start">
<div class="wptb-item--icon"><i class="bi bi-geo-alt"></i></div>
<div class="wptb-item--holder">
<p class="wptb-item--description"><a href="#">Lorem ipsum dolor sit.</a></p>
</div>
</div>
</div>
<div class="wptb-icon-box1 style2">
<div class="wptb-item--inner flex-start">
<div class="wptb-item--icon"><i class="bi bi-phone"></i></div>
<div class="wptb-item--holder">
<p class="wptb-item--description"><a href="tel:+1234567899">+91 123 4567 889</a></p>
</div>
</div>
</div>
<h6>Find Our Page</h6>
<div class="social-box">
<ul>
<li><a href="#"><i class="bi bi-facebook"></i></a></li>
<li><a href="#"><i class="bi bi-instagram"></i></a></li>
<li><a href="#"><i class="bi bi-linkedin"></i></a></li>
<li><a href="#"><i class="bi bi-youtube"></i></a></li>
</ul>
</div>
</div>
<div class="aside_info_wrapper" data-lenis-prevent>
<button class="aside_close">Close <i class="bi bi-x-lg"></i></button>
<div class="aside_logo logo">
<a href="#" class="light_logo">RK MEDIA</a>
<a href="#" class="dark_logo">RK MEDIA</a>
</div>
<div class="aside_info_inner">
<h6> Instagram</h6>
<div class="insta-logo">
<i class="bi bi-instagram"></i>Lorem, ipsum.
</div>
<div class="wptb-instagram--gallery">
<div class="wptb-item--inner d-flex align-items-center justify-content-center flex-wrap">
<div class="wptb-item">
<div class="wptb-item--image">
<img src="./assets/images/rk-weds-insta-01.png" alt="instagram-gallery-img">
</div>
</div>
<div class="wptb-item">
<div class="wptb-item--image">
<img src="./assets/images/rk-weds-insta-02.png" alt="instagram-gallery-img">
</div>
</div>
<div class="wptb-item">
<div class="wptb-item--image">
<img src="./assets/images/rk-weds-brand-insta-03.png" alt="instagram-gallery-img">
</div>
</div>
<div class="wptb-item">
<div class="wptb-item--image">
<img src="./assets/images/rk-weds-brand-insta-04.png" alt="instagram-gallery-img">
</div>
</div>
<div class="wptb-item">
<div class="wptb-item--image">
<img src="./assets/images/rk-weds-brand-insta-05.png" alt="instagram-gallery-img">
</div>
</div>
<div class="wptb-item">
<div class="wptb-item--image">
<img src="./assets/images/rk-weds-brand-insta-06.png" alt="instagram-gallery-img">
</div>
</div>
</div>
</div>
<div class="wptb-icon-box1 style2">
<div class="wptb-item--inner flex-start">
<div class="wptb-item--icon"><i class="bi bi-envelope"></i></div>
<div class="wptb-item--holder">
<p class="wptb-item--description"><a href="mailto:rkmedia@gmail.com">rkmedia@gmail.com</a></p>
</div>
</div>
</div>
<div class="wptb-icon-box1 style2">
<div class="wptb-item--inner flex-start">
<div class="wptb-item--icon"><i class="bi bi-geo-alt"></i></div>
<div class="wptb-item--holder">
<p class="wptb-item--description"><a href="#">28 Street, ABC colony</a></p>
</div>
</div>
</div>
<div class="wptb-icon-box1 style2">
<div class="wptb-item--inner flex-start">
<div class="wptb-item--icon"><i class="bi bi-phone"></i></div>
<div class="wptb-item--holder">
<p class="wptb-item--description"><a href="tel:+1234567890">+1234567890</a></p>
</div>
</div>
</div>
<h6>Follow Us</h6>
<div class="social-box style-square">
<ul>
<li><a href="#"><i class="bi bi-facebook"></i></a></li>
<li><a href="#"><i class="bi bi-instagram"></i></a></li>
<li><a href="#"><i class="bi bi-linkedin"></i></a></li>
<li><a href="#"><i class="bi bi-youtube"></i></a></li>
</ul>
</div>
</div>
</div>
<!-- Modal Search -->
<div class="search-modal">
<div class="modal fade" id="modalSearch">
<div class="modal-dialog modal-dialog-centered modal-lg">
<div class="modal-content">
<div class="search_overlay">
<form class="credential-form" method="post">
<div class="form-group">
<input type="text" name="search" class="keyword form-control" placeholder="Search Here">
</div>
<button type="submit" class="btn-search">
<span class="text-first"> <i class="bi bi-arrow-right"></i> </span>
</button>
</form>
</div>
</div>
</div>
</div>
</div>
<main class="wrapper">
<section class="wptb-slider style19 position-relative overflow-hidden">
<div class="localvideo-bg">
<!-- <video autoplay muted loop playsinline>
<source src="./assets/images/3.mp4" type="video/mp4">
</video> -->
<video class="background-video" autoplay muted playsinline loop preload="auto">
<source src="./assets/images/3.mp4" type="video/mp4">
</video>
</div>
<div class="wptb-heading-banner">
<h1 class="wptb-title text-white">Capturing Wedding</h1>
</div>
</section>
<section class="pt-200px overtext-area bg-black pb-200px sm-pt-70px sm-pb-0px">
<div class="container pt-50px sm-pt-0px sm-pb-70px">
<div class="text-center">
<div class="row">
<div class="wptb-heading">
<h1 class="big-title wptb-item--title">Our Story</h1>
</div>
</div>
</div>
<div class="col-md-12 pt-100px sm-pt-0px">
<div class="row">
<div class="col-md-6 sm-mb-none">
<div class="wptb-heading">
<div class="wptb-item--inner ">
<h3 class="wptb-item--subtitle hashtag-title"><span>#</span> RK MEDIA </h3>
<!-- <h1 class="wptb-item--title ">#RK MEDIA </h1> -->
</div>
</div>
</div>
<div class="col-md-6">
<p class="animated-text animate">Lorem ipsum dolor sit amet consectetur adipisicing elit. Illum excepturi aperiam incidunt dignissimos possimus tempore distinctio aut iusto molestias nostrum?
</p>
<p class="animated-text animate">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Illum excepturi aperiam incidunt dignissimos possimus tempore distinctio aut iusto molestias nostrum?
</p>
<!-- <div class="wptb-about--text">
<p class="wptb-about--text-one mb-4">Rk Media photography Agency runs wide and deep. Across many markets, geographies & typologies, our team members</p>
<p>The talent at Rk Media runs wide range of services. Across many markets, geographies & typologies, our team members are some of the finest people of photographers in the industry wide and deep. From Across many markets, geographies & boundaries. Hire Rk Media in your event.</p>
<div class="wptb-item--button round-button">
<a class="btn btn-two" href="about.html">
<span class="btn-wrap">
<span class="text-first">Explore Us</span>
<span class="text-second"> <i class="bi bi-arrow-up-right"></i> <i class="bi bi-arrow-up-right"></i> </span>
</span>
</a>
</div>
</div> -->
<style>
.logos-wrapper1 {
justify-content: start;
align-items: flex-end;
width: 100%;
padding-top: 2em;
padding-bottom: 2em;
display: flex
;
}
</style>
<div class="logos-container">
<div class="logos-wrapper1">
<div id="w-node-_4dca7924-df5b-ffba-c165-7c96a7b329cd-c7679a65" class="client-logo-wrapper vogue"><img src="https://cdn.prod.website-files.com/63170356296f85970dadc536/6337636c56c764d149d52cd2_VOGUE%20LOGO.svg" loading="lazy" alt="" data-w-id="4dca7924-df5b-ffba-c165-7c96a7b329ce" class="image-24" height="" width="120" style="opacity: 1;"></div>
<div id="w-node-_4dca7924-df5b-ffba-c165-7c96a7b329cf-c7679a65" class="client-logo-wrapper elle"><img src="https://cdn.prod.website-files.com/63170356296f85970dadc536/6337636d09496da866a3f248_ELLE%20LOGO.svg" loading="lazy" alt="" data-w-id="4dca7924-df5b-ffba-c165-7c96a7b329d0" class="image-42" height="" width="120" style="opacity: 1;"></div>
<div id="w-node-_4dca7924-df5b-ffba-c165-7c96a7b329d1-c7679a65" class="client-logo-wrapper lane"><img src="https://cdn.prod.website-files.com/63170356296f85970dadc536/638212fd42077f30eba4e7e5_lane-logo-normal-black.svg" loading="lazy" data-w-id="4dca7924-df5b-ffba-c165-7c96a7b329d2" height="" width="120" alt="" class="image-43" style="opacity: 1;"></div>
<div id="w-node-_4dca7924-df5b-ffba-c165-7c96a7b329d3-c7679a65" class="client-logo-wrapper brides"><img src="https://cdn.prod.website-files.com/63170356296f85970dadc536/64307643756ab309a513c215_London%2BWedding%2BPhotographer%2B-%2BSikh%2B%26%2BDread.png" loading="lazy" height="" width="120" alt="" data-w-id="4dca7924-df5b-ffba-c165-7c96a7b329d4" class="image-49" style="opacity: 1;"></div>
</div>
</div>
</div>
<!-- <div class="col-md-4">
<p class="animated-text">I am a passionate photographer dedicated to capturing life's most precious moments. With a keen eye for detail and a love for storytelling, I strive to create images that are not just beautiful, but that also evoke emotion and tell a compelling story.</p>
</div> -->
</div>
</div>
<div class="resort-slider-container">
<div class="resort-swiper swiper">
<div class="swiper-wrapper">
<!-- Slide 1 -->
<div class="resort-slide swiper-slide">
<div class="resort-room-card">
<div class="resort-room-image-container">
<img src="assets/images/rk-wedding-c-01.png" alt="Banquet" class="resort-room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="resort-room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="resort-know-more">Know more</a>
</div>
</div>
<!-- Slide 2 -->
<div class="resort-slide swiper-slide">
<div class="resort-room-card">
<div class="resort-room-image-container">
<img src="assets/images/rk-wedding-c-02.png" alt="Executive Room" class="resort-room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="resort-room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="resort-know-more">Know more</a>
</div>
</div>
<!-- Slide 3 -->
<div class="resort-slide swiper-slide">
<div class="resort-room-card">
<div class="resort-room-image-container">
<img src="assets/images/rk-wedding-c-03.png" alt="Mini Suite" class="resort-room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="resort-room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="resort-know-more">Know more</a>
</div>
</div>
<div class="resort-slide swiper-slide">
<div class="resort-room-card">
<div class="resort-room-image-container">
<img src="assets/images/rk-wedding-c-04.png" alt="Banquet" class="resort-room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="resort-room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="resort-know-more">Know more</a>
</div>
</div>
<!-- Slide 2 -->
<div class="resort-slide swiper-slide">
<div class="resort-room-card">
<div class="resort-room-image-container">
<img src="assets/images/rk-wedding-c-05.png" alt="Executive Room" class="resort-room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="resort-room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="resort-know-more">Know more</a>
</div>
</div>
<!-- Slide 3 -->
<div class="resort-slide swiper-slide">
<div class="resort-room-card">
<div class="resort-room-image-container">
<img src="assets/images/rk-wedding-c-06.png" alt="Mini Suite" class="resort-room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="resort-room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="resort-know-more">Know more</a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="hotel-slider-container mobile-only">
<div class="sticky-section">
<div class="card-container" id="card-container">
<!-- Banquet Card -->
<div class="room-card card-1">
<div class="room-image-container">
<img src="assets/images/rk-wedding-c-01.png" alt="wedding-photography-img" class="room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="know-more">Know more</a>
</div>
<!-- Executive Room Card -->
<div class="room-card card-2">
<div class="room-image-container">
<img src="assets/images/rk-wedding-c-02.png" alt="wedding-photography-img" class="room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="know-more">Know more</a>
</div>
<!-- Mini Suite Card -->
<div class="room-card card-3">
<div class="room-image-container">
<img src="assets/images/rk-wedding-c-03.png" alt="wedding-photography-img" class="room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="know-more">Know more</a>
</div>
<!-- Luxury Suite Card -->
<div class="room-card card-4">
<div class="room-image-container">
<img src="assets/images/rk-wedding-c-04.png" alt="wedding-photography-img" class="room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="know-more">Know more</a>
</div>
<!-- Family Room Card -->
<div class="room-card card-5">
<div class="room-image-container">
<img src="assets/images/rk-wedding-c-05.png" alt="wedding-photography-img" class="room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="know-more">Know more</a>
</div>
<!-- Deluxe Room Card -->
<div class="room-card card-6">
<div class="room-image-container">
<img src="assets/images/rk-wedding-c-06.png" alt="wedding-photography-img" class="room-image">
<h2 class="resort-room-title">Lorem ipsum</h2>
</div>
<div class="room-description">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Optio ex iusto sequi consequatur temporibus fugit!</p>
</div>
<a href="#" class="know-more">Know more</a>
</div>
</div>
</div>
</div>
</section>
<section class="bg-gray pt-100px pb-0px sm-pt-70px sm-pb-0px">
<div class="contact-bar-container container">
<div class="contact-bar">
<div class="contact-message">
Need assistance? We're just a click away!
</div>
<div class="contact-number">
<div class="phone-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M20 15.5c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 00-1.02.24l-2.2 2.2a15.045 15.045 0 01-6.59-6.59l2.2-2.21a.96.96 0 00.25-1A11.36 11.36 0 018.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z"/>
</svg>
</div>
<div class="phone-number"><a href="tel:00001111000">+91 0000 1111 000</a></div>
</div>
</div>
</div>
<div class="container-fluid">
<div class=" ">
<div class="wptb-item--inner wptb-top text-center ">
<div class="wptb-heading mb-0 ">
<div class="wptb-item--inner ">
<!-- <h6 class="wptb-item--subtitle"><span>02 //</span> Photo Albums</h6> -->
<div class="hero-photostudio__info1">
<span class="photo-text1">
<i class="fa-solid fa-circle"></i>
Lorem ipsum dolor
</span>
</div>
</div>
</div>
<!-- <h1 class="wptb-item--title ">Rk Media captures all of your <br> <span>beautiful memories </span></h1> -->
<div class="wptb-heading pt-100px pb-100px sm-pt-20px sm-pb-20px">
<h1 class="big-title wptb-item--title">Beautiful Memories </h1>
</div>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Vel autem laudantium similique nobis <br> suscipit ratione reiciendis laboriosam, officiis eveniet deleniti?</p>
</div>
</div>
</div>
<div class="sticky_parent">
<div class="sticky">
<div class="wedding-carousel-wrapper">
<!-- Item 1 -->
<div class="wedding-carousel-item">
<div class="wedding-card">
<div class="wedding-card-image">
<img src="assets/images/rk-wedding-m-01.png" alt="services-image">
</div>
<div class="wedding-card-content text-center justify-content-center">
<h3 class="wedding-card-title">Lorem ipsum dolor sit.</h3>
<p class="wedding-card-description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Minus provident officia beatae vitae ex. Dolores nostrum, provident alias ab expedita recusandae. Minus, veniam.</p>
<div class=" col-lg-12 d-flex text-center justify-content-center">
<a href="#" class="know-more m-0">View More</a>
</div>
</div>
</div>
</div>
<!-- Item 2 -->
<div class="wedding-carousel-item">
<div class="wedding-card">
<div class="wedding-card-image">
<img src="assets/images/rk-wedding-m-02.png" alt="services-image">
</div>
<div class="wedding-card-content text-center justify-content-center">
<h3 class="wedding-card-title">Lorem ipsum dolor sit.</h3>
<p class="wedding-card-description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Minus provident officia beatae vitae ex. Dolores nostrum, provident alias ab expedita recusandae. Minus, veniam.</p>
<div class=" col-lg-12 d-flex text-center justify-content-center">
<a href="#" class="know-more m-0">View More</a>
</div>
</div>
</div>
</div>
<!-- Item 3 -->
<div class="wedding-carousel-item">
<div class="wedding-card">
<div class="wedding-card-image">
<img src="assets/images/rk-wedding-m-03.png" alt="services-image">
</div>
<div class="wedding-card-content text-center justify-content-center">
<h3 class="wedding-card-title">Lorem ipsum dolor sit.</h3>
<p class="wedding-card-description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Minus provident officia beatae vitae ex. Dolores nostrum, provident alias ab expedita recusandae. Minus, veniam.</p>
<div class=" col-lg-12 d-flex text-center justify-content-center">
<a href="#" class="know-more m-0">View More</a>
</div>
</div>
</div>
</div>
<!-- Item 4 -->
<div class="wedding-carousel-item">
<div class="wedding-card">
<div class="wedding-card-image">
<img src="assets/images/rk-wedding-m-04.png" alt="services-image">
</div>
<div class="wedding-card-content text-center justify-content-center">
<h3 class="wedding-card-title">Lorem ipsum dolor sit.</h3>
<p class="wedding-card-description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Minus provident officia beatae vitae ex. Dolores nostrum, provident alias ab expedita recusandae. Minus, veniam.</p>
<div class=" col-lg-12 d-flex text-center justify-content-center">
<a href="#" class="know-more m-0">View More</a>
</div>
</div>
</div>
</div>
<!-- Item 5 -->
<div class="wedding-carousel-item">
<div class="wedding-card">
<div class="wedding-card-image">
<img src="assets/images/rk-wedding-m-05.png" alt="services-image">
</div>
<div class="wedding-card-content text-center justify-content-center">
<h3 class="wedding-card-title">Lorem ipsum dolor sit.</h3>
<p class="wedding-card-description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Minus provident officia beatae vitae ex. Dolores nostrum, provident alias ab expedita recusandae. Minus, veniam.</p>
<div class=" col-lg-12 d-flex text-center justify-content-center">
<a href="#" class="know-more m-0">View More</a>
</div>
</div>
</div>
</div>
<!-- Item 6 -->
<div class="wedding-carousel-item">
<div class="wedding-card">
<div class="wedding-card-image">
<img src="assets/images/rk-wedding-m-06.png" alt="services-image">
</div>
<div class="wedding-card-content text-center justify-content-center">
<h3 class="wedding-card-title">Lorem ipsum dolor sit.</h3>
<p class="wedding-card-description">Lorem ipsum dolor sit amet consectetur, adipisicing elit. Minus provident officia beatae vitae ex. Dolores nostrum, provident alias ab expedita recusandae. Minus, veniam.</p>
<div class=" col-lg-12 d-flex text-center justify-content-center">
<a href="#" class="know-more m-0">View More</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<section class="freeze-section pt-0px pb-200px sm-pt-0px sm-pb-0px">
<div class="sidebar">
<h1 class="heading-text">Lorem ipsum dolor sit amet consectetur adipisicing</h1>
<div class="description">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum quisquam non temporibus architecto at similique incidunt fuga eligendi, possimus laborum
</div>
</div>
<div class="scrollable-container">
<div class="content-section">
<div class="image-container image-left image-1">
<img src="assets/images/rk-wedding-t-01.png" alt="wedding-images">
</div>
<div class="image-container image-right image-2">
<img src="assets/images/rk-wedding-t-02.png" alt="wedding-images">
</div>
<div class="image-container image-left image-3">
<img src="assets/images/rk-wedding-t-03.png" alt="wedding-images">
</div>
<div class="image-container image-right image-4">
<img src="assets/images/rk-wedding-t-04.png" alt="wedding-images">
</div>
<div class="image-container image-left image-5">
<img src="assets/images/rk-wedding-t-05.png" alt="wedding-images">
</div>
</div>
</div>
</section>
<style>
.grid-item {
opacity: 0;
transform: translateY(30px);
transition: opacity 0.8s ease, transform 0.8s ease;
}
/* The class that will be added when item comes into view */
.grid-item.animate-in {
opacity: 1;
transform: translateY(0);
}
/* Staggered animation delay for grid items */
.grid-item:nth-child(1) {
transition-delay: 0s;
}
.grid-item:nth-child(2) {
transition-delay: 0.1s;
}
.grid-item:nth-child(3) {
transition-delay: 0.2s;
}
.grid-item:nth-child(4) {
transition-delay: 0.3s;
}
.grid-item:nth-child(5) {
transition-delay: 0.4s;
}
.grid-item:nth-child(6) {
transition-delay: 0.5s;
}
.grid-item:nth-child(7) {
transition-delay: 0.6s;
}
.grid-item:nth-child(8) {
transition-delay: 0.7s;
}
.grid-item:nth-child(9) {
transition-delay: 0.8s;
}
.grid-item:nth-child(10) {
transition-delay: 0.9s;
}
</style>
<section class="wptb-project position-relative overflow-hidden pt-200px pb-200px sm-pt-70px sm-pb-70px">
<div class="container">
<div class="wptb-heading">
<div class="wptb-item--inner text-center">
<div class="wptb-heading text-center photostudio-center">
<div class="wptb-item--inner text-center ">
<div class="wptb-heading mb-0 ">
<div class="wptb-item--inner ">
<!-- <h6 class="wptb-item--subtitle"><span>02 //</span> Photo Albums</h6> -->
<div class="hero-photostudio__info1">
<span class="photo-upt-text">
<i class="fa-solid fa-circle"></i>
Lorem ipsum dolor
</span>
</div>
</div>
</div>
<!-- <h1 class="wptb-item--title ">Rk Media captures all of your <br> <span>beautiful memories </span></h1> -->
<div class="wptb-heading pt-50px pb-100px sm-pt-20px sm-pb-20px">
<h1 class="big-title wptb-item--title">Our Collections </h1>
</div>
</div>
</div>
</div>
</div>
<div class="style-masonry effect-blur">
<div class="grid grid-3 gutter-10 clearfix" style="position: relative; height: 1713.66px;">
<div class="grid-sizer"></div>
<div class="grid-item" style="position: absolute; left: 0%; top: 0px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-02.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 33.3297%; top: 0px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-11.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 66.6594%; top: 0px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-03.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 33.3297%; top: 338.016px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-04.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 0%; top: 571.219px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-09.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 66.6594%; top: 571.219px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-06.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 33.3297%; top: 909.235px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-07.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 0%; top: 1141.14px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-08.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 66.6594%; top: 1142.44px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-09.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
<div class="grid-item" style="position: absolute; left: 33.3297%; top: 1480.45px;">
<div class="wptb-item--inner">
<div class="wptb-item--image">
<img src="assets/images/rk-wedding-g-10.png" alt="project-image">
</div>
<div class="wptb-item--holder">
<div class="wptb-item--meta">
<h4><a href="#">Lorem ipsum dolor</a></h4>
<p>Lorem ipsum dolor</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="wptb-item--button text-center mt-5">
<div class="header_right_part ">
<a class="btn btn-two creative" href="#">
<span class="btn-wrap">
<span class="text-first">Explore Now</span>
<span class="text-second"> <i class="bi bi-arrow-up-right"></i> <i class="bi bi-arrow-up-right"></i> </span>
</span>
</a>
</div>
</div>
</div>
</section>
<section class="wptb-testimonial-one position-relative overflow-hidden" style="background-image: url('./assets/images/NEW_IMAGE/Rk-testibg.png');">
<div class="container">
<div class="row">
<div class="testimonial-showcase">
<div class="testimonial-track">
<!-- Panel 1 -->
<div class="testimonial-panel active">
<div class="panel-section testimonial-content">
<h2 style="color: white;">KIND WORDS</h2>
<img src="assets/images/NEW_IMAGE/SMALL_TESTIM_01.png" alt="wedding-testimonial-image" class="couple-portrait">
<p class="client-quote">Lorem ipsum dolor sit amet consectetur adipisicing elit. Amet nam perspiciatis veniam, magnam aperiam vitae deserunt reprehenderit praesentium minus. Pariatur!</p>
<h3 class="couple-name">Lorem ipsum</h3>
</div>
<div class="panel-section">
<img src="assets/images/NEW_IMAGE/Rk-testimonial-01.png" alt="wedding-testimonial-image" class="wedding-photo">
</div>
</div>
<!-- Panel 2 -->
<div class="testimonial-panel">
<div class="panel-section testimonial-content">
<h2 style="color: white;">TESTIMONIALS</h2>
<img src="assets/images/NEW_IMAGE/Rk-testimonial-02.png" alt="wedding-testimonial-image" class="couple-portrait">
<p class="client-quote">Lorem ipsum dolor sit amet consectetur adipisicing elit. Amet nam perspiciatis veniam, magnam aperiam vitae deserunt reprehenderit praesentium minus. Pariatur!</p>
<h3 class="couple-name">Lorem ipsum</h3>
</div>
<div class="panel-section">
<img src="assets/images/NEW_IMAGE/TESTMONIAL_02.png" alt="wedding-testimonial-image" class="wedding-photo">
</div>
</div>
<!-- Panel 3 -->
<div class="testimonial-panel">
<div class="panel-section testimonial-content">
<h2 style="color: white;">LOVE STORIES</h2>
<img src="assets/images/NEW_IMAGE/Rk-testimonial-03.png" alt="wedding-testimonial-image" class="couple-portrait">
<p class="client-quote">Lorem ipsum dolor sit amet consectetur adipisicing elit. Amet nam perspiciatis veniam, magnam aperiam vitae deserunt reprehenderit praesentium minus. Pariatur!</p>
<h3 class="couple-name">Lorem ipsum</h3>
</div>
<div class="panel-section">
<img src="assets/images/NEW_IMAGE/TESTMONIAL_03.png" alt="wedding-testimonial-image" class="wedding-photo">
</div>
</div>
<!-- Panel 4 -->
<!-- <div class="testimonial-panel">
<div class="panel-section testimonial-content">
<h2 style="color: white;">MOMENTS</h2>
<img src="assets/images/NEW_IMAGE/SMALL_TESTIM_01.png" alt="wedding-testimonial-image" class="couple-portrait">
<p class="client-quote">Lorem ipsum dolor sit amet consectetur adipisicing elit. Amet nam perspiciatis veniam, magnam aperiam vitae deserunt reprehenderit praesentium minus. Pariatur!</p>
<h3 class="couple-name">Lorem ipsum</h3>
</div>
<div class="panel-section">
<img src="assets/images/NEW_IMAGE/TESTMONIAL_02.png" alt="wedding-testimonial-image" class="wedding-photo">
</div>
</div> -->
</div>
<div class="testimonial-controls">
<button class="control-btn prev-btn"><svg class="wedding-carousel-arrow" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"/>
</svg></button>
<button class="control-btn next-btn"><svg class="wedding-carousel-arrow" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/>
</svg></button>
</div>
</div>
</div>
</div>
</section>
</div>
</main>
<!-- Footer -->
<footer class="footer style1 bg-image-2 footer__common footer-area before-shape" style="z-index: 0 !important;">
<div class="footer-top">
<div class="container">
<div class="footer--inner">
<div class=" widget-left-area">
<div class="widget-left-title">
<h3>@inforkmedia.com</h3>
</div>
<div class="wptb-instagram--gallery ">
<div class="wptb-item--inner d-flex align-items-center justify-content-center flex-wrap flex-md-nowrap">
<div class="wptb-item">
<div class="wptb-item--image2">
<img src="assets/images/NEW_IMAGE/Rk-insta-01.png" alt="img">
</div>
</div>
<div class="wptb-item">
<div class="wptb-item--image2">
<img src="assets/images/NEW_IMAGE/Rk-insta-02.png" alt="img">
</div>
</div>
<div class="wptb-item">
<div class="wptb-item--image2">
<img src="assets/images/NEW_IMAGE/Rk-insta-03.png" alt="img">
</div>
</div>
</div>
<div class="wptb-item--button">
<a class="btn btn-two" href="#" style="background: none !important;">
<span class="btn-wrap">
<span class="text-first" style="height: 50px;">Follow Us on Instagram</span>
<span class="text-second"> <i class="bi bi-instagram"></i> <i class="bi bi-instagram"></i> </span>
</span>
</a>
</div>
</div>
</div>
<div class="">
<div class=" footer-center-block mb-5 mb-md-0 order-1 order-md-0">
<div class="footer-widget ">
<div class="logo mr-bottom-20">
<!-- <a href="#" class=""><img src="./assets/img/logo.svg" alt="logo"></a> -->
<a href="#" class="" style="color: #FFF;font-family: var(--font-family-base);
font-size: 40px;">RK MEDIA</a>
</div>
<div class="hero-photostudio__info " style="display: block !important;">
<div class="mr-bottom-20 ">
<div class="wptb-item--inner ">
<div class="hero-photostudio__info2">
<span class="photo-text text-white">
<i class="fa-solid fa-circle"></i>
Lorem ipsum
</span>
</div>
</div>
</div>
</div>
<h6 class="widget-title">Sign up for all the latest <br> news and offers </h6>
<div class="col-md-12">
<div class="row">
<!-- <div class="col-md-3"></div> -->
<div class="col-md-12">
<form class="newsletter-form" method="post">
<div class="form-group">
<input type="email" name="email" class="form-control" placeholder="Enter your email" required>
</div>
<button type="submit" class="btn btn-two" style="border: 0 !important;">
<span class="btn-wrap">
<span class="text-first">Subscribe</span>
<span class="text-second"><i class="bi bi-arrow-up-right"></i> <i class="bi bi-arrow-up-right"></i></span>
</span>
</button>
</form>
</div>
<!-- <div class="col-md-3"></div> -->
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Footer Bottom Part -->
<div class="footer-bottom">
<div class="container">
<div class="footer-bottom-inner">
<div class="copyright">
<p >RK Media All Rights Reserved.Designed with <i class="fa fa-heart" style="color:red !important;"></i> by <a href="https://thedotstudios.com/" class=" text-primary-hover" target="_blank">TheDotStudios.com</a> </p>
</div>
<div class="social-box social-mb style-oval">
<ul>
<li><a href="#">Our Work</a></li>
<li><a href="#">Instagram</a></li>
<li><a href="#">Contact us</a></li>
</ul>
</div>
</div>
</div>
</div>
</footer>
<div class="totop">
<a href="#"><i class="bi bi-chevron-up"></i></a>
</div>
<!-- Core JS -->
<script src="./assets/js/jquery-3.6.0.min.js"></script>
<!-- Framework -->
<script src="./assets/js/bootstrap.min.js"></script>
<!-- WOW Scroll Effect -->
<script src="./plugins/wow/wow.min.js"></script>
<!-- Swiper Slider -->
<script src="./plugins/swiper/swiper-bundle.min.js"></script>
<script src="./plugins/swiper/swiper-gl.min.js"></script>
<!-- Odometer Counter -->
<!-- <script src="./plugins/odometer/appear.js"></script>
<script src="./plugins/odometer/odometer.js"></script> -->
<!-- Projects -->
<script src="./plugins/isotope/isotope.pkgd.min.js"></script>
<script src="./plugins/isotope/imagesloaded.pkgd.min.js"></script>
<script src="./plugins/isotope/tilt.jquery.js"></script>
<script src="./plugins/isotope/isotope-init.js"></script>
<!-- Fancybox -->
<!-- <script src="./plugins/fancybox/jquery.fancybox.min.js"></script> -->
<!-- Flatpickr -->
<!-- <script src="./plugins/flatpickr/flatpickr.min.js"></script> -->
<!-- Nice Select -->
<script src="./plugins/nice-select/jquery.nice-select.min.js"></script>
<script src="./assets/js/smooth-s.js"></script>
<!-- Cursor Effect -->
<script src="./plugins/cursor-effect/cursor-effect.js"></script>
<!-- Theme Custom JS -->
<script src="./assets/js/theme.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.4.2/gsap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.1.1/owl.carousel.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.5/ScrollTrigger.min.js"></script>
<script>
document.addEventListener("DOMContentLoaded", function () {
function adjustSectionHeight() {
let section = document.querySelector(".overtext-area");
let stickySection = document.querySelector(".sticky-section");
if (section && stickySection) {
let sectionHeight = section.offsetHeight;
stickySection.style.height = `800px`;
}
}
// Run on load and on window resize
adjustSectionHeight();
window.addEventListener("resize", adjustSectionHeight);
});
document.addEventListener('DOMContentLoaded', function () {
const cards = document.querySelectorAll('.room-card');
const totalCards = cards.length;
// Configuration
const stackGap = 5; // px gap between stacked cards
const scrollSectionHeight = window.innerHeight * 0.7; // Each card appears every 70% of viewport height
const totalScrollHeight = scrollSectionHeight * (totalCards - 1); // Total scroll distance needed
// Dynamically set the container height based on the number of cards
const containerHeight = window.innerHeight + totalScrollHeight;
document.querySelector('.hotel-slider-container').style.height = `${containerHeight}px`;
// Get container's top position relative to page
let containerTop = document.querySelector('.hotel-slider-container').getBoundingClientRect().top + window.scrollY;
// Initial Setup: First card visible, others below
cards.forEach((card, index) => {
if (index === 0) {
card.style.transform = 'translateY(0) scale(1)';
card.style.zIndex = '1';
} else {
card.style.transform = `translateY(${window.innerHeight}px) scale(1)`;
card.style.zIndex = (index + 1).toString(); // Higher index means higher stacking order
}
});
window.addEventListener('scroll', function () {
const scrollY = window.scrollY;
const relativeScrollY = Math.max(0, scrollY - containerTop);
if (scrollY < containerTop) return;
// First card remains fully visible
cards[0].style.transform = `translateY(0) scale(1)`;
for (let i = 1; i < totalCards; i++) {
const card = cards[i];
// Define when each card starts appearing
const cardStartPoint = scrollSectionHeight * (i - 1);
const cardEndPoint = scrollSectionHeight * i;
if (relativeScrollY < cardStartPoint) {
// Card is below the viewport (hidden)
card.style.transform = `translateY(${window.innerHeight}px) scale(1)`;
} else if (relativeScrollY >= cardStartPoint && relativeScrollY <= cardEndPoint) {
// Card is in transition
const progress = (relativeScrollY - cardStartPoint) / scrollSectionHeight;
const easedProgress = easeOutQuad(progress);
const startY = window.innerHeight;
const endY = -(stackGap * i); // Uniform gap stacking
const currentY = startY - (startY - endY) * easedProgress;
card.style.transform = `translateY(${currentY}px) scale(1)`;
} else {
// Fully stacked above the previous card with equal gap
card.style.transform = `translateY(-${stackGap * i}px) scale(1)`;
}
}
});
// Smooth animation function
function easeOutQuad(x) {
return 1 - Math.pow(1 - x, 2);
}
// Update container and recalculate heights on window resize
window.addEventListener('resize', function () {
// Recalculate container height
const containerHeight = window.innerHeight + (window.innerHeight * 0.7) * (totalCards - 1);
document.querySelector('.hotel-slider-container').style.height = `${containerHeight}px`;
// Update container top position
containerTop = document.querySelector('.hotel-slider-container').getBoundingClientRect().top + window.scrollY;
});
// Trigger scroll event on load
window.dispatchEvent(new Event('scroll'));
});
</script>
<!-- Swiper JS -->
<script>
document.addEventListener('DOMContentLoaded', function() {
function initializeResortSlider() {
if (window.innerWidth >= 768) {
if (!window.resortSwiper) {
window.resortSwiper = new Swiper(".resort-swiper", {
slidesPerView: 3,
spaceBetween: 20,
loop: true,
speed: 1200,
autoplay: {
delay: 2000,
disableOnInteraction: false,
},
effect: "slide"
});
}
document.querySelector(".resort-slider-container").style.display = "block";
} else {
if (window.resortSwiper && window.resortSwiper.destroy) {
window.resortSwiper.destroy(true, true);
window.resortSwiper = null;
}
document.querySelector(".resort-slider-container").style.display = "none";
}
}
initializeResortSlider();
window.addEventListener("resize", initializeResortSlider);
});
</script>
<script>
document.addEventListener('DOMContentLoaded', () => {
const panels = document.querySelectorAll('.testimonial-panel');
const prevBtn = document.querySelector('.prev-btn');
const nextBtn = document.querySelector('.next-btn');
let currentPanel = 0;
const maxPanels = panels.length - 1;
function showPanel(panelIndex) {
// Hide all panels
panels.forEach(panel => {
panel.classList.remove('active');
});
// Show the current panel
panels[panelIndex].classList.add('active');
}
function goToPanel(panelIndex) {
if (panelIndex < 0) {
panelIndex = maxPanels;
} else if (panelIndex > maxPanels) {
panelIndex = 0;
}
currentPanel = panelIndex;
showPanel(currentPanel);
}
prevBtn.addEventListener('click', () => {
goToPanel(currentPanel - 1);
});
nextBtn.addEventListener('click', () => {
goToPanel(currentPanel + 1);
});
let panelInterval = setInterval(() => {
goToPanel(currentPanel + 1);
}, 6000);
panels.forEach(panel => {
panel.addEventListener('mouseenter', () => {
clearInterval(panelInterval);
});
panel.addEventListener('mouseleave', () => {
panelInterval = setInterval(() => {
goToPanel(currentPanel + 1);
}, 6000);
});
});
let touchStartX = 0;
let touchEndX = 0;
panels.forEach(panel => {
panel.addEventListener('touchstart', (e) => {
touchStartX = e.touches[0].clientX;
clearInterval(panelInterval);
}, false);
panel.addEventListener('touchend', (e) => {
touchEndX = e.changedTouches[0].clientX;
handleSwipe();
panelInterval = setInterval(() => {
goToPanel(currentPanel + 1);
}, 6000);
}, false);
});
function handleSwipe() {
if (touchEndX < touchStartX - 50) {
// Swipe left
goToPanel(currentPanel + 1);
}
if (touchEndX > touchStartX + 50) {
// Swipe right
goToPanel(currentPanel - 1);
}
}
});
</script>
<script>
document.addEventListener('DOMContentLoaded', function() {
const options = {
root: null, // use the viewport as the root
rootMargin: '0px',
threshold: 0.1 // trigger when 10% of the element is visible
};
const observer = new IntersectionObserver(function(entries, observer) {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('animate-in');
observer.unobserve(entry.target);
}
});
}, options);
const gridItems = document.querySelectorAll('.grid-item');
gridItems.forEach(item => {
observer.observe(item);
});
});
</script>
<!-- <script>
document.addEventListener("DOMContentLoaded", () => {
const carouselWrapper = document.querySelector(".wedding-carousel-wrapper");
const stickyParent = document.querySelector(".sticky_parent");
// Get all carousel items
const carouselItems = document.querySelectorAll(".wedding-carousel-item");
const itemWidth = 420; // 400px width + 20px margin
// Calculate total scroll width
const totalScrollWidth = carouselItems.length * itemWidth;
carouselWrapper.style.width = `${totalScrollWidth}px`;
// Variables for precise control
let currentTransform = 0;
let targetIndex = 0;
let rafId = null;
function updateScroll() {
const stickyRect = stickyParent.getBoundingClientRect();
const stickyStart = -stickyRect.top;
const stickyHeight = stickyParent.offsetHeight - window.innerHeight;
// Calculate scroll progress (0 to 1)
let scrollProgress = Math.max(0, Math.min(1, stickyStart / stickyHeight));
// Check if we're on mobile
const isMobile = window.innerWidth < 768;
if (isMobile) {
// Use a more direct mapping approach for mobile
const smoothingFactor = 0.2; // Reduced smoothing for more precise control
// Calculate maximum scroll distance
const maxScrollDistance = totalScrollWidth - window.innerWidth;
// Direct linear progression based on scroll
const targetPosition = scrollProgress * maxScrollDistance;
// Smooth interpolation
currentTransform = currentTransform +
(targetPosition - currentTransform) * smoothingFactor;
// Apply the transform
carouselWrapper.style.transform = `translateX(${-Math.round(currentTransform)}px)`;
// Update active item (optional)
const activeIndex = Math.min(
Math.floor(currentTransform / itemWidth),
carouselItems.length - 1
);
carouselItems.forEach((item, index) => {
if (index === activeIndex) {
item.classList.add("active");
} else {
item.classList.remove("active");
}
});
} else {
// Desktop behavior remains unchanged
const maxScrollDistance = totalScrollWidth - window.innerWidth + 100;
const targetPosition = scrollProgress * maxScrollDistance;
currentTransform = targetPosition;
carouselWrapper.style.transform = `translateX(${-currentTransform}px)`;
}
// Continue animation loop
rafId = requestAnimationFrame(updateScroll);
}
function updateStickyParentHeight() {
const isMobile = window.innerWidth < 768;
if (isMobile) {
// Adjusted height calculation for mobile
const scrollSections = carouselItems.length;
const scrollMultiplier = 3; // Reduced from 4.5
const endPadding = window.innerHeight * 1; // Reduced padding
stickyParent.style.height = `${(window.innerHeight * scrollSections * scrollMultiplier) + endPadding}px`;
} else {
// Desktop height
stickyParent.style.height = "2600px";
}
}
function setupVisibilityDetection() {
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
if (!rafId) {
rafId = requestAnimationFrame(updateScroll);
}
} else {
if (rafId) {
cancelAnimationFrame(rafId);
rafId = null;
}
}
});
}, { threshold: 0.1 });
observer.observe(stickyParent);
}
// Initial setup
updateStickyParentHeight();
setupVisibilityDetection();
// Start animation loop
rafId = requestAnimationFrame(updateScroll);
// Handle window resize
window.addEventListener("resize", () => {
if (rafId) {
cancelAnimationFrame(rafId);
}
// Reset transform and flags
currentTransform = 0;
targetIndex = 0;
carouselWrapper.style.transform = 'translateX(0)';
// Update heights
updateStickyParentHeight();
// Restart animation
rafId = requestAnimationFrame(updateScroll);
});
});
</script> -->
<script>
document.addEventListener("DOMContentLoaded", () => {
const carouselWrapper = document.querySelector(".wedding-carousel-wrapper");
const stickyParent = document.querySelector(".sticky_parent");
// Get all carousel items
const carouselItems = document.querySelectorAll(".wedding-carousel-item");
const isMobile = () => window.innerWidth < 768;
const itemWidth = () => isMobile() ? 315 : 420; // 300px + 15px margin for mobile, 400px + 20px for desktop
// Calculate total scroll width
const getTotalScrollWidth = () => carouselItems.length * itemWidth();
let isScrolling = false;
let ticking = false;
function updateScroll() {
if (!ticking) {
requestAnimationFrame(() => {
const stickyRect = stickyParent.getBoundingClientRect();
const stickyStart = Math.max(0, -stickyRect.top);
const stickyHeight = stickyParent.offsetHeight - window.innerHeight;
// Calculate scroll progress (0 to 1)
const scrollProgress = Math.min(1, stickyStart / stickyHeight);
// Calculate maximum scroll distance
const maxScrollDistance = getTotalScrollWidth() - window.innerWidth + (isMobile() ? 50 : 100);
// Direct linear mapping - no smoothing to prevent glitches
const targetPosition = scrollProgress * maxScrollDistance;
// Apply transform directly
carouselWrapper.style.transform = `translateX(${-targetPosition}px)`;
ticking = false;
});
ticking = true;
}
}
function updateStickyParentHeight() {
if (isMobile()) {
stickyParent.style.height = "3000px";
} else {
stickyParent.style.height = "2500px";
}
}
// Throttled scroll event
let scrollTimeout;
function handleScroll() {
isScrolling = true;
clearTimeout(scrollTimeout);
updateScroll();
scrollTimeout = setTimeout(() => {
isScrolling = false;
}, 100);
}
// Initial setup
updateStickyParentHeight();
carouselWrapper.style.width = `${getTotalScrollWidth()}px`;
// Add scroll listener
window.addEventListener("scroll", handleScroll, { passive: true });
// Handle window resize
let resizeTimeout;
window.addEventListener("resize", () => {
clearTimeout(resizeTimeout);
resizeTimeout = setTimeout(() => {
// Reset and recalculate
carouselWrapper.style.transform = 'translateX(0)';
updateStickyParentHeight();
carouselWrapper.style.width = `${getTotalScrollWidth()}px`;
updateScroll();
}, 250);
});
// Initial scroll update
updateScroll();
});
</script>
<script>
document.addEventListener("DOMContentLoaded", () => {
gsap.registerPlugin(ScrollTrigger);
const textMultipleElements = document.querySelectorAll(".animate");
const tl = gsap.timeline({
scrollTrigger: {
trigger: textMultipleElements[0],
start: "top 100%",
end: "bottom 60%",
scrub: true,
}
});
textMultipleElements.forEach(textElement => {
let combinedText = "";
textElement.childNodes.forEach(child => {
if (child.nodeType === Node.TEXT_NODE) {
combinedText += child.textContent.trim();
} else if (child.nodeType === Node.ELEMENT_NODE) {
combinedText += child.textContent.trim();
}
});
const splitText = combinedText.split("").map(char => `<span>${char}</span>`).join("");
textElement.innerHTML = splitText;
const chars = textElement.querySelectorAll("span");
tl.from(chars, {
color: "#f5f5f5",
stagger: 1,
duration: 1,
}, "+=0.5");
});
})
</script>
<script>
// Add this JavaScript to your page
document.addEventListener('DOMContentLoaded', function() {
// Get the section element
const section = document.querySelector('.bg-black');
// Initial colors (dark theme)
const initialColors = {
backgroundColor: '#151515',
textColor: '#ffffff',
borderColor: '#333333'
};
// Target colors (light theme)
const targetColors = {
backgroundColor: '#f5f5f5',
textColor: '#151515',
borderColor: '#dad7d7'
};
// Function to handle scroll events
function handleScroll() {
// Get the section's position relative to the viewport
const rect = section.getBoundingClientRect();
const windowHeight = window.innerHeight;
// Calculate how far the section is into the viewport (as a percentage)
let scrollPercentage = 0;
// Start the transition when the section enters the viewport
if (rect.top < windowHeight && rect.bottom > 0) {
// Calculate progress based on section position
const startPoint = windowHeight / 3; // Start transition when section is 1/3 into viewport
const endPoint = -100; // End transition when section has moved up 100px past the top
if (rect.top <= endPoint) {
scrollPercentage = 1; // Fully transitioned to light theme
} else if (rect.top <= startPoint) {
scrollPercentage = (startPoint - rect.top) / (startPoint - endPoint);
}
// Apply the transition with easing
applyColorTransition(scrollPercentage);
}
}
// Function to apply color transition
function applyColorTransition(percentage) {
// Apply easing function for smoother transition
percentage = easeInOutCubic(percentage);
// Interpolate between initial and target colors
const backgroundColor = interpolateColor(initialColors.backgroundColor, targetColors.backgroundColor, percentage);
const textColor = interpolateColor(initialColors.textColor, targetColors.textColor, percentage);
const borderColor = interpolateColor(initialColors.borderColor, targetColors.borderColor, percentage);
// Method 1: Use inline style with !important to override the CSS
// This is more aggressive but necessary to override !important CSS rules
section.setAttribute('style', `background-color: ${backgroundColor} !important; transition: background-color 0.4s ease !important;`);
// Class toggle method - toggle between classes based on percentage
if (percentage > 0.5) {
// If we're more than halfway through the transition, change the class
section.classList.remove('bg-black');
section.classList.add('bg-gray');
} else {
section.classList.remove('bg-gray');
section.classList.add('bg-black');
}
// Update text colors
const titles = section.querySelectorAll('.project-title, .project-year, .photo-text');
titles.forEach(element => {
element.setAttribute('style', `color: ${textColor} !important; transition: color 0.4s ease !important;`);
});
// Update border colors
const cards = section.querySelectorAll('.project-card');
cards.forEach(card => {
card.setAttribute('style', `border-color: ${borderColor} !important; transition: border-color 0.4s ease !important;`);
});
// Update photo-text border
const photoText = section.querySelector('.photo-text');
if (photoText) {
photoText.setAttribute('style', `color: ${textColor} !important; border-color: ${textColor} !important; transition: all 0.4s ease !important;`);
}
// Update main title color
const mainTitle = section.querySelector('.wptb-item--title');
if (mainTitle) {
// Transition from white to dark
const titleColor = interpolateColor('#ffffff', '#151515', percentage);
mainTitle.setAttribute('style', `color: ${titleColor} !important; transition: color 0.4s ease !important;`);
}
}
// Color interpolation function
function interpolateColor(color1, color2, percentage) {
// Handle hex colors
if (color1.startsWith('#') && color2.startsWith('#')) {
// Convert hex to RGB
const r1 = parseInt(color1.substring(1, 3), 16);
const g1 = parseInt(color1.substring(3, 5), 16);
const b1 = parseInt(color1.substring(5, 7), 16);
const r2 = parseInt(color2.substring(1, 3), 16);
const g2 = parseInt(color2.substring(3, 5), 16);
const b2 = parseInt(color2.substring(5, 7), 16);
// Interpolate RGB values
const r = Math.round(r1 + (r2 - r1) * percentage);
const g = Math.round(g1 + (g2 - g1) * percentage);
const b = Math.round(b1 + (b2 - b1) * percentage);
// Convert back to hex
return `#${r.toString(16).padStart(2, '0')}${g.toString(16).padStart(2, '0')}${b.toString(16).padStart(2, '0')}`;
}
return percentage >= 0.5 ? color2 : color1;
}
// Easing function for smoother transition
function easeInOutCubic(x) {
return x < 0.5 ? 4 * x * x * x : 1 - Math.pow(-2 * x + 2, 3) / 2;
}
// Add scroll event listener
window.addEventListener('scroll', handleScroll);
// Initialize colors on page load
handleScroll();
// Make sure CSS for bg-gray exists
if (!document.getElementById('dynamic-styles')) {
const styleElement = document.createElement('style');
styleElement.id = 'dynamic-styles';
styleElement.innerHTML = `
.bg-gray {
--bs-bg-opacity: 1;
background-color: #f5f5f5 !important;
}
`;
document.head.appendChild(styleElement);
}
});
</script>
<script>
document.addEventListener('DOMContentLoaded', function() {
// Select the section and elements we need to modify
const photoSection = document.querySelector('.bg-gray');
const photoTexts = document.querySelectorAll('.photo-text1');
const title = document.querySelector('.wptb-item--title');
const paragraph = document.querySelector('.wptb-item--inner p');
const buttons = document.querySelectorAll('.common-btn');
const contactBar = document.querySelector('.contact-bar');
const contactMessage = document.querySelector('.contact-message');
const phoneNumber = document.querySelector('.phone-number');
// Create a background div to handle the transition
const backgroundDiv = document.createElement('div');
backgroundDiv.className = 'section-background';
photoSection.prepend(backgroundDiv);
// Add transition classes to the section
photoSection.classList.add('transition-section');
// Add CSS for transitions
const styleElement = document.createElement('style');
styleElement.textContent = `
/* Base styles for transition */
.transition-section {
position: relative;
}
.section-background {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #f5f5f5;
transition: background-color 0.6s ease;
z-index: 0;
}
/* Content positioning */
.transition-section .container-fluid,
.transition-section .hero-photostudio__slider,
.transition-section .contact-bar-container {
position: relative;
z-index: 1;
}
/* Text transition styles */
.text-transition {
transition: color 0.6s ease, border-color 0.6s ease !important;
}
/* Button transition styles */
.button-transition {
transition: background-color 0.6s ease, color 0.6s ease !important;
}
/* Contact bar transition styles */
.contact-bar {
transition: background-color 0.6s ease !important;
}
/* Dark theme class for when scrolled */
.dark-theme .hero-photostudio__info1 .photo-text1 {
border-color: #ffffff !important;
color: #ffffff !important;
}
.dark-theme .wptb-item--inner .wptb-item--title {
color: #ffffff !important;
}
.dark-theme .wptb-item--inner p {
color: #cccccc !important;
}
.dark-theme .common-btn {
background-color: #ffffff !important;
color: #000000 !important;
}
/* Contact bar color changes */
.dark-theme .contact-bar {
background-color: #ffffff !important;
}
.dark-theme .contact-message,
.dark-theme .phone-number {
color: #151515 !important;
}
/* Preserve the red color for the circle icon */
.hero-photostudio__info1 .photo-text1 i.fa-circle {
color: #b90808 !important;
}
`;
document.head.appendChild(styleElement);
// Add transition classes to elements
photoTexts.forEach(text => text.classList.add('text-transition'));
if (title) title.classList.add('text-transition');
if (paragraph) paragraph.classList.add('text-transition');
buttons.forEach(button => button.classList.add('button-transition'));
if (contactMessage) contactMessage.classList.add('text-transition');
if (phoneNumber) phoneNumber.classList.add('text-transition');
// Function to calculate scroll progress
function getScrollProgress(element) {
const rect = element.getBoundingClientRect();
const windowHeight = window.innerHeight || document.documentElement.clientHeight;
// Start transition when element enters viewport
const startPoint = windowHeight;
// Complete transition when element reaches 20% from top of viewport
const endPoint = windowHeight * 0.8;
if (rect.top >= startPoint) {
return 0; // Not started
} else if (rect.top <= endPoint) {
return 1; // Completed
} else {
// Calculate progress between 0 and 1
return (startPoint - rect.top) / (startPoint - endPoint);
}
}
// Function to update colors based on scroll progress
function updateColors(progress) {
// Background color transition from gray (#f5f5f5) to black (#151515)
const r = Math.floor(245 - (245 - 21) * progress);
const g = Math.floor(245 - (245 - 21) * progress);
const b = Math.floor(245 - (245 - 21) * progress);
backgroundDiv.style.backgroundColor = `rgb(${r}, ${g}, ${b})`;
// Apply dark theme class when transition is nearly complete
if (progress >= 0.95) {
photoSection.classList.add('dark-theme');
} else if (progress < 0.95) {
photoSection.classList.remove('dark-theme');
}
// For smoother transition, apply direct styles during transition
if (progress > 0 && progress < 0.95) {
// Text color transition (dark to light)
const textR = Math.floor(21 + (255 - 21) * progress);
const textG = Math.floor(21 + (255 - 21) * progress);
const textB = Math.floor(21 + (255 - 21) * progress);
const textColor = `rgb(${textR}, ${textG}, ${textB})`;
// Paragraph color transition (gray to light gray)
const paragraphR = Math.floor(88 + (204 - 88) * progress);
const paragraphG = Math.floor(88 + (204 - 88) * progress);
const paragraphB = Math.floor(88 + (204 - 88) * progress);
const paragraphColor = `rgb(${paragraphR}, ${paragraphG}, ${paragraphB})`;
// Button background transition (dark to light)
const buttonBgR = Math.floor(51 + (255 - 51) * progress);
const buttonBgG = Math.floor(51 + (255 - 51) * progress);
const buttonBgB = Math.floor(51 + (255 - 51) * progress);
const buttonBgColor = `rgb(${buttonBgR}, ${buttonBgG}, ${buttonBgB})`;
// Button text transition (light to dark)
const buttonTextR = Math.floor(255 - (255) * progress);
const buttonTextG = Math.floor(255 - (255) * progress);
const buttonTextB = Math.floor(255 - (255) * progress);
const buttonTextColor = `rgb(${buttonTextR}, ${buttonTextG}, ${buttonTextB})`;
// Contact bar background transition (dark to light)
const contactBgR = Math.floor(21 + (255 - 21) * progress);
const contactBgG = Math.floor(21 + (255 - 21) * progress);
const contactBgB = Math.floor(21 + (255 - 21) * progress);
const contactBgColor = `rgb(${contactBgR}, ${contactBgG}, ${contactBgB})`;
// Contact text transition (light to dark)
const contactTextR = Math.floor(255 - (255) * progress);
const contactTextG = Math.floor(255 - (255) * progress);
const contactTextB = Math.floor(255 - (255) * progress);
const contactTextColor = `rgb(${contactTextR}, ${contactTextG}, ${contactTextB})`;
// Apply styles
photoTexts.forEach(text => {
text.style.setProperty('color', textColor, 'important');
text.style.setProperty('border-color', textColor, 'important');
});
if (title) title.style.setProperty('color', textColor, 'important');
if (paragraph) paragraph.style.setProperty('color', paragraphColor, 'important');
buttons.forEach(button => {
button.style.setProperty('background-color', buttonBgColor, 'important');
button.style.setProperty('color', buttonTextColor, 'important');
});
if (contactBar) contactBar.style.setProperty('background-color', contactBgColor, 'important');
if (contactMessage) contactMessage.style.setProperty('color', contactTextColor, 'important');
if (phoneNumber) phoneNumber.style.setProperty('color', contactTextColor, 'important');
}
}
// Listen for scroll events
window.addEventListener('scroll', function() {
const progress = getScrollProgress(photoSection);
updateColors(progress);
});
// Initial check on page load
setTimeout(function() {
const initialProgress = getScrollProgress(photoSection);
updateColors(initialProgress);
}, 1000);
});
</script>
</body>
</html>