/**
Theme Name: The Roaming Bar
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. 
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: the-roaming-bar
Template: astra
*/


.entry-content p {
	margin-bottom: 15px;
}

.white{
	color:#fff!important;
}

*:not(p),
footer p,
header p,
body p:last-child,
.no-mb {
	margin-bottom: 0px !important;
}

.vc_column-inner {
	padding-top: 0px !important;
}

a:focus {
	outline: 0px !important;
}

.pd-side-none>div>div {
	padding-left: 0px !important;
	padding-right: 0px !important
}

.gold-bg, .white-bg{
	      background: #DBB051;
    color: #000;
    padding: 0px 10px 5px;
    line-height: initial;
    display: inline-block;
}

.thank-you p{
	    background: #1a1a1a;
    padding: 20px;
    border-radius: 20px;
    font-size: 20px;
    margin-top: 25px;
}

.head-call{
	     width: 52px;
    height: 52px;
    background: #dbb051;
    border-radius: 30px;
    line-height: 49px;
}

.site-header-focus-item[data-section="sidebar-widgets-header-widget-1"], .site-header-focus-item[data-section="sidebar-widgets-header-widget-2"]{
	padding-right: 0px !important;
}

.head-call img{
	    padding: 16px;
}

.celebrate-form-sec .ban-r-head{
	    font-size: 25px;
    font-family: 'Plus Jakarta Sans';
    font-weight: 700;
    line-height: 25px;
    margin-bottom: 10px !important;
}

.celebrate-form-sec{
	background: #1a1a1a;
    padding: 30px;
    border-radius: 20px;
}

.cocktail-slider .slick-list,
.cocktail-slider .slick-track {
  transform-style: preserve-3d !important;
  overflow: visible !important;
}

.cocktail-slider .slide {
  height: 400px !important;
  display: block !important; 
  position: relative !important;
  perspective: 1000px !important;
  transform-style: preserve-3d !important;
  padding: 0 15px; 
  box-sizing: border-box;
}

.flip-box-inner {
  position: relative;
  width: 100%;
  height: 100% !important;
  text-align: center;
  transition: transform 0.9s cubic-bezier(0.4, 0, 0.2, 1);
  transform-style: preserve-3d !important;
  will-change: transform;
}

.slide:hover .flip-box-inner {
  transform: rotateY(180deg);
}

.flip-box-front, .flip-box-back {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
  
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  font-family: sans-serif;
  color: white;
}

.flip-box-front {
         transform: rotateY(0deg) translateZ(1px) !important;
    z-index: 2;
    background-size: cover !important;
    justify-content: end;
}

.flip-box-back .web-btns{
	display:none;
}

.flip-box-back {
  background-color: #1a1a1a;
    transform: rotateY(180deg) translateZ(1px) !important;
    z-index: 1;
    padding: 20px;
    row-gap: 15px;
}

.flip-box-back .web-btns a{
	      font-size: 14px;
    line-height: 14px;
    padding: 12px 25px 14px;
}

.back-desc-top, .back-desc-bot{
	color: #fff;
    font-size: 20px;
    font-family: 'Plus Jakarta Sans';
    line-height: 20px;
	margin-bottom:10px!important;
}

.foot-links a{
	pointer-events:none;
}

.back-desc-top span{
	padding:0px 5px;
}

.flip-box-front:before{
     content: '';
    display: block;
    background: linear-gradient(1deg, rgb(0 0 0 / 75%), transparent, transparent);
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

.flip-box-front p{
	    position: relative;
    font-size: 23px;
    font-family: 'Plus Jakarta Sans';
    padding: 0px 20px 20px;
    line-height: 35px;
    font-weight: 700;
}

.slip-vodka .flip-box-front {
 background:url('/wp-content/uploads/2026/07/white-choc-passionfruit.webp');
}

.slip-tequila .flip-box-front {
  background: url('/wp-content/uploads/2026/07/bramble-img.webp');
}
.slip-rum .flip-box-front {
  background:url('/wp-content/uploads/2026/07/amaretto.webp');
}

.slip-gin .flip-box-front {
  background: url('/wp-content/uploads/2026/07/old-fashioned.webp');
}
.slip-whiskey .flip-box-front {
 background:url('/wp-content/uploads/2026/07/spicy-margrita.webp');
}

/* --- Core Layout (Preserved & Cleaned) --- */

.home-banner-sec .web-btns {
    display: flex;
    column-gap: 15px;
}

.h-main-banner {
       padding: 40px;
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 120px;
    width: 600px;
    background: #000000a6;
    backdrop-filter: blur(10px);
    border-radius: 20px;
}

.home-banner-sec .wd-contained{
	position:relative;
}

.subhead {
    font-size: 18px;
    font-family: 'Plus Jakarta Sans';
    margin: 0;
}

.ban-small-head {
    color: #fff;
    border: 1px solid #fff;
    padding: 5px 20px;
    border-radius: 30px;
    display: inline-block;
    font-size: 13px;
}

/* ==========================================================================
   THE CREATIVE ANIMATION ENGINE
   ========================================================================== */

/* The Invisible Masking Slots */
.mask-wrapper {
    position: relative;
    display: block;
    width: 100%;
}


/* Premium Custom Inertia Easing (Quart/Quint blend) */
:root {
    --luxury-ease: cubic-bezier(0.76, 0, 0.24, 1);
}

/* 1. TEXT INITIAL STATE: Tucked invisibly below the mask margins */
.h-main-banner .ban-small-head,
.h-main-banner h1,
.h-main-banner .subhead,
.h-main-banner .web-btns {
    transform: translateY(105%) skewY(4deg);
    opacity: 0;
    transition: transform 1.6s var(--luxury-ease), 
                opacity 1.4s var(--luxury-ease);
}

/* Specific micro-detail: The gold text tracking starts tight */
.h-main-banner h1 .gold {
    display: inline-block;
    transition: letter-spacing 2s var(--luxury-ease);
}

/* 2. VIDEO INITIAL STATE: Hidden by a sharp diagonal curtain, zoomed inward */
.creative-video-curtain {
       overflow: hidden;
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
    transition: clip-path 2s var(--luxury-ease);
    height: 750px;
}

.creative-video-curtain video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* Counter-balance motion: shifts opposite to the curtain reveal */
    transform: scale(1.3) translateX(-15%);
    transition: transform 2.2s var(--luxury-ease);
}


/* ==========================================================================
   REVEAL / ACTIVE TRIGGER STATES
   ========================================================================== */

/* Text elements pour gracefully upward and straighten out */
.home-banner-sec.is-active .mask-wrapper .ban-small-head,
.home-banner-sec.is-active .mask-wrapper h1,
.home-banner-sec.is-active .mask-wrapper .subhead,
.home-banner-sec.is-active .mask-wrapper .web-btns {
    transform: translateY(0) skewY(0deg);
    opacity: 1;
}

/* The Gold word opens up slightly to look expensive and expansive */
.home-banner-sec.is-active h1 .gold {
    letter-spacing: 1px;
}

/* The Curtain wipes open cleanly from right to left */
.home-banner-sec.is-active .creative-video-curtain {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

/* The video relaxes smoothly into standard scale and position */
.home-banner-sec.is-active .creative-video-curtain video {
    transform: scale(1) translateX(0);
}


/* STAGGERED ENTRANCE DELAYS */
.home-banner-sec.is-active .ban-small-head { transition-delay: 0.1s; }
.home-banner-sec.is-active h1             {     transition-delay: 0.25s;
    padding-top: 15px;}
.home-banner-sec.is-active .subhead        { transition-delay: 0.45s; }
.home-banner-sec.is-active .web-btns       { transition-delay: 0.55s; }
.home-banner-sec.is-active .creative-video-curtain { transition-delay: 0.05s; }
.white-bg{
	 background: #fff;
}

.web-btns .btn2 {
	    border-color: #dbb052;
    color: #000000;
    background: #dbb052;
}

.foot-call-action-sec {
    background: url('/wp-content/uploads/2026/07/ready-to-raise-the-bar.webp');
    background-size: cover;
    background-position: center;
    padding: 120px 100px;
    position: relative;
    display: grid;
    grid-template-columns: 1fr 2fr;
}

.call-action-head{
    padding-bottom: 25px;

}

.call-action-txt{
	    font-size: 20px;
    line-height: 30px;
    padding-bottom: 30px;
	margin-bottom:0px!important;
}

.foot-call-action-sec .call-action-in{
	position:relative;
}

.call-action-in .web-btns{
	    display: flex;
    column-gap: 10px;
}

.foot-call-action-sec:before{
	    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: linear-gradient(49deg, black, transparent);
}

.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus, .contact-form .gchoice:focus-within{
	outline:0px!important;
}

.gold{
	color:#DBB051;
}

.main-about{
	      display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 150px;
}

.h-abt-left-img{
	background:url('/wp-content/uploads/2026/06/gavin-img.webp');
	height: 500px;
}

.h-abt-right-img{
		background:url('/wp-content/uploads/2026/06/roaming-bar-img.webp');
}

.bg-img{
	background-size:cover!important;
	background-position:center!important;
	border-radius:20px;
}

.h-abt-main{
	    padding-top: 50px;
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-column-gap: 50px;
    align-items: baseline;
}

.home-about-right{
	       display: grid;
    grid-template-rows: 2fr auto;
    grid-row-gap: 50px;
}


.service-top, .center{
	    text-align: center;
}

.small-head{
	             display: inline-block;
    font-size: 15px;
    margin-bottom: 5px !important;
    font-family: 'Plus Jakarta Sans', sans-serif;
    text-transform: uppercase;
    word-spacing: 2px;
}

.ser-slide-in{
	    background: #fff;
}

.ser-top{
	    padding: 30px;
}

.ser-num{
	      font-size: 25px;
    color: #dbb052;
    font-weight: 800;
    line-height: 25px;
    font-family: 'Playfair Display', serif;
}

.ser-txt{
	       color: #000;
    min-height: 92px;
}

.ser-link{
	    padding: 30px;
    color: #000;
	transition:0.5s all;
	font-weight:600;
}

.ser-head{
	     font-family: 'Playfair Display', serif;
    font-size: 25px;
    line-height: 25px;
    color: #000;
}

.home-ser-slides .slick-slide{
	padding:0px 10px;
}

.home-ser-bot .slick-list{
	margin:0px -10px!important;
}

.ser-slide-in:hover .ser-link{
	color:#DBB051!important;
}

.home-ser-bot .ser-arrow p{
	        width: 50px;
    height: 50px;
    background: #dbb051;
    text-align: center;
    line-height: 50px;
    font-weight: 600;
    font-family: 'Playfair Display', serif;
    cursor: pointer;
    transition: 0.5s all;
}

.home-ser-bot .ser-arrow p:hover{
	background:#fff;
	color: #000;
}

.home-ser-bot .ser-arrow{
       position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}

.home-ser-bot .ser-next{
	    left: 50%;
}

.home-ser-bot .ser-prev{
	    left: 46%;
}

.home-ser-slides{
	padding-bottom: 70px;
}

.why-choose-main{
	       display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 150px;
}

.why-choose-left{
	background:url('/wp-content/uploads/2026/06/party-img.webp');
	margin-right:100px;
	position:relative;
}

.why-r-txt{
	        background: #000000;
    font-family: 'Playfair Display', serif;
    font-size: 24px;
    width: 200px;
    line-height: 35px;
    padding: 27px;
    text-align: center;
    position: absolute;
    bottom: 0;
    right: -100px;
    color: #dbb052;
}

.why-ch-points{
	    padding: 20px 0 30px;
    display: grid;
    grid-row-gap: 20px;
}

.why-ch-in{
	       display: flex;
    column-gap: 30px;
    align-items: center;
    
}

.why-ch-in:not(:last-child){
	border-bottom: 1px solid #ccc;
    padding-bottom: 20px;
}

.ch-head {
    font-family: 'Playfair Display', serif;
    font-size: 22px;
}

.why-ch-in img{
	    width: 50px;
}

.why-choose-right{
	    padding: 50px 0;
}

.brand-logo-sec{
	     display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-column-gap: 100px;
    width: 80%;
    margin: auto;
}

.brand-logo-sec img{
	filter: grayscale(1);
	transition:0.5s all;
}

.brand-logo-sec img:hover{
	filter:none;
}

/* Base Layout & Theme */

.package-top.center {
    text-align: center;
    margin-bottom: 30px;
}

.package-top h2 {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 46px;
    font-weight: 700;
    letter-spacing: -1px;
    color: #fff;
}

.gold {
    color: #DBB051;
   
}

.wd50 {
     width: 40%;
    color: #fff;
    margin: auto;
}

/* Grid Layout */
.package-bottom-sec {
       display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 30px;
    grid-row-gap: 40px;
    padding-top: 50px;
}

/* --- THE CARDS --- */
.package-in {
       background: linear-gradient(145deg, #121212, #181818);
       padding: 45px 30px 125px;
    position: relative;
    border: 1px solid #222;
    border-radius: 20px;
    color: #fff;
    z-index: 1;
    overflow: hidden;
    will-change: transform, translate, box-shadow, border-color;
    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.4s ease, box-shadow 0.6s ease;
}

/* Infinite Floating Animation for the Featured Card */
.package-in.featured {
    border-color: rgba(219, 176, 81, 0.3);
    background: linear-gradient(145deg, #161616, #1f1f1f);
    animation: cardFloat 6s ease-in-out infinite;
}

/* FIX: Changed to standalone 'translate' property to avoid clashing with hover transform */
@keyframes cardFloat {
    0%, 100% { translate: 0 0; }
    50% { translate: 0 -10px; }
}

/* Hover State - Scale, Lift, and Dramatic Glow */
.package-in:hover {
    /* FIX: Removed 'animation-play-state: paused' to completely prevent layout snapping */
    transform: translateY(-15px) scale(1.02) !important;
    border-color: #DBB051;
    box-shadow: 0 25px 50px rgba(219, 176, 81, 0.2), 
                0 0 30px rgba(219, 176, 81, 0.05);
}

/* Floating "Most Popular" Badge */
.animate-badge {
    position: absolute;
    top: 25px;
    right: 25px;
    background: #DBB051;
    color: #000;
       padding: 5px 14px 3px;
    font-size: 11px;
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 50px;
    letter-spacing: 1px;
    box-shadow: 0 4px 15px rgba(219, 176, 81, 0.4);
    animation: badgePulse 2s infinite;
}

@keyframes badgePulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.06); box-shadow: 0 4px 22px rgba(219, 176, 81, 0.6); }
    100% { transform: scale(1); }
}

/* Card typography & lines */
.pack-head {
        font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 10px !important;
}

.pack-txt {
        border-bottom: 1px solid rgba(219, 176, 81, 0.2);
    padding-bottom: 25px;
}

.pa-head {
   font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 600;
    color: #DBB051;
    margin-top: 25px;
    letter-spacing: 0.5px;
}

/* --- BACKGROUND COCKTAIL GLASS IMAGE --- */
.pc-top img {
    position: absolute;
    width: 60%;
    right: -8%;
    bottom: -5%;
    opacity: 0.05;
    filter: grayscale(1) brightness(1.5);
    pointer-events: none;
    transition: all 0.9s cubic-bezier(0.25, 1, 0.5, 1);
    z-index: -1;
}

.package-in:hover .pc-top img {
    opacity: 0.22;
    filter: grayscale(0) brightness(1);
    transform: scale(1.2) rotate(-12deg) translate(-15px, -15px);
}

/* --- LISTS & INTERACTIVE CHECKMARKS --- */
.pa-pointer {
    margin: 0 !important;
    padding: 0 !important;
    list-style-type: none;
    display: grid;
    grid-row-gap: 12px;
}

.pa-pointer li {
       position: relative;
    padding-left: 30px;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}

.package-in:hover .pa-pointer li {
    transform: translateX(6px);
}

.pa-pointer li:before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 4px;
    color: #DBB051;
    font-weight: bold;
    font-size: 11px;
    width: 20px;
    height: 20px;
    background: rgba(219, 176, 81, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease;
}

.package-in:hover .pa-pointer li:before {
    background: #DBB051;
    color: #000;
    transform: rotate(360deg);
}

/* --- METALLIC SWEEPING SHINE CTAs --- */
.package-bottom-sec .web-btns {
    position: absolute;
    bottom: 35px;
    left: 30px;
    right: 30px;
}

.web-btns a {
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 15px 30px;
    border: 1px solid #DBB051;
    color: #DBB051;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 30px;
    position: relative;
    z-index: 1;
    background: transparent;
    overflow: hidden;
    transition: color 0.4s ease, transform 0.3s ease;
    line-height: 20px;
}

/* Metallic sweeping gloss effect overlay */
.web-btns a::after {
    content: '';
    position: absolute;
    top: 0;
    left: -150%;
    width: 50%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
    transform: skewX(-20deg);
    z-index: 2;
}

/* Hover triggers the sweeping light reflection */
.web-btns a:hover::after {
    animation: buttonShine 0.75s forwards;
}

@keyframes buttonShine {
    100% { left: 150%; }
}

.web-btns a::before {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 100%;
    background: #DBB051;
    transition: top 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    z-index: -1;
}

.web-btns a:hover {
    color: #000 !important;
    transform: scale(1.02);
}

.web-btns a:hover::before {
    top: 0;
}

/* --- CHAMPAGNE FIZZ PARTICLES --- */
.bubble {
    position: absolute;
    background: rgba(219, 176, 81, 0.2);
    border-radius: 50%;
    bottom: -20px;
    pointer-events: none;
    opacity: 0;
    z-index: 0;
}

/* Triggers float up only when card is active/hovered */
.package-in:hover .bubble {
    animation: fizzUp 2.5s infinite linear;
}

.b1 { width: 8px; height: 8px; left: 20%; animation-delay: 0s; }
.b2 { width: 4px; height: 4px; left: 50%; animation-delay: 0.6s; }
.b3 { width: 6px; height: 6px; left: 80%; animation-delay: 1.2s; }

@keyframes fizzUp {
    0% { transform: translateY(0) scale(1); opacity: 0; }
    20% { opacity: 0.4; }
    80% { opacity: 0.4; }
    100% { transform: translateY(-300px) scale(0.5); opacity: 0; }
}

.wd70{
	    width: 63%;
    margin: auto;
}

/* ==========================================================================
   1. CORE LAYOUT & CONTAINER DEFINITIONS
   ========================================================================== */
.cocktail-bottom {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 80px;
    padding-top: 30px;
    max-width: 1400px;
    margin: 0 auto;
    align-items: center;
    box-sizing: border-box;
    position: relative;
}

/* ==========================================================================
   2. KEYFRAME ANIMATIONS (The "More Animated" Engine)
   ========================================================================== */

/* Shimmering effect for the liquid gold numbers */
@keyframes liquidGoldFlow {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Luxury breathing/pulsing glow for the center image container */
@keyframes centerFramePulse {
    0% {
        box-shadow: 0 0 20px rgba(214, 173, 80, 0.2), 0 20px 40px rgba(0, 0, 0, 0.8);
        border-color: rgba(214, 173, 80, 0.3);
    }
    50% {
        box-shadow: 0 0 35px rgba(214, 173, 80, 0.5), 0 20px 40px rgba(0, 0, 0, 0.8);
        border-color: rgba(214, 173, 80, 0.7);
    }
    100% {
        box-shadow: 0 0 20px rgba(214, 173, 80, 0.2), 0 20px 40px rgba(0, 0, 0, 0.8);
        border-color: rgba(214, 173, 80, 0.3);
    }
}

/* Constantly pulsing ambient line decoration */
@keyframes lineGlowPulse {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.9; }
}

/* ==========================================================================
   3. CENTER IMAGE CONTAINER (Pulsing Borders & Dynamic Zoom)
   ========================================================================== */
.cocktail-left {
    background: url('/wp-content/uploads/2026/07/why-choose-roaming-bar.jpg');
    background-size: cover;
    background-position: center;
    border-radius: 24px;
    height: 100%;
    width: 100%;
    position: relative;
    animation: centerFramePulse 4s infinite ease-in-out;
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Dynamic Zoom-In Interaction */
.cocktail-bottom:hover .cocktail-left {
    transform: scale(1.03);
}

/* ==========================================================================
   4. INTERACTIVE MENU ROW LAYOUTS
   ========================================================================== */
.cocktail-menu-in {
    color: #fff;
    border-bottom: 1px dashed rgba(69, 65, 65, 0.7);
    padding-bottom: 30px;
    display: grid;
    grid-template-columns: 110px auto;
    grid-column-gap: 25px;
    align-items: center;
    cursor: pointer;
    position: relative;
    
    /* Elastic easing transition for premium touch feedback */
    transition: border-color 0.4s ease, transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.menu-top {
    display: grid;
    grid-row-gap: 30px;
    padding: 30px 0;
}

.menu-txt {
    font-size: 20px;
    line-height: 30px;
    margin: 0;
    font-weight: 400;
    transition: color 0.3s ease, transform 0.3s ease;
}

/* ==========================================================================
   5. LIQUID METALLIC GOLD TYPOGRAPHY
   ========================================================================== */
.cockt-num {
       font-size: 80px;
    font-weight: 800;
    font-family: 'Plus Jakarta Sans', sans-serif;
    line-height: 80px;
    margin: 0 !important;
    /* background: #000; */
    background-size: 400% 400%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 8px rgba(214, 173, 80, 0.3));
    animation: liquidGoldFlow 6s infinite linear;
    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1), filter 0.4s ease;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #dbb051;
}
/* ==========================================================================
   6. LEFT & RIGHT MIRRORED COLUMN CONFIGURATIONS
   ========================================================================== */

/* Structural Layout Mirroring for Column 1 */
.cocktail-menu:first-child .cocktail-menu-in {
    grid-template-columns: auto 110px;
}
.cocktail-menu:first-child .cocktail-menu-in .cockt-num {
    order: 2;
    text-align: right;
}
.cocktail-menu:first-child .cocktail-menu-in div {
    order: 1;
    text-align: right;
}

/* Dynamic Directional Row Pull-Out Interactions */
.cocktail-menu:first-child .cocktail-menu-in:hover {
    transform: translateX(-15px); /* Pulls dramatically to the left */
}
.cocktail-menu:last-child .cocktail-menu-in:hover {
    transform: translateX(15px);  /* Pulls dramatically to the right */
}

/* ==========================================================================
   7. HOVER STATE EMISSIONS & GLOW TRAILS
   ========================================================================== */
.cocktail-menu-in:hover {
    border-bottom-color: rgba(214, 173, 80, 0.8); /* Border shifts into bright gold */
    animation: lineGlowPulse 1.5s infinite ease-in-out;
}

.cocktail-menu-in:hover .cockt-num {
    transform: scale(1.12); /* Fluid kinetic scale explosion */
    filter: drop-shadow(0 0 20px rgba(255, 229, 150, 0.75)); /* High intensity radiant glow */
}

.cocktail-menu-in:hover .menu-txt {
    color: #ffe596; /* Text adopts a warm golden accent tone on hover */
}

.cocktail-menu-in:last-child {
    border-bottom: 0px;
    padding-bottom: 0;
}

/* ==========================================================================
   8. SCROLL INTERSECTION ENGINE (Smooth Entry Mechanics)
   ========================================================================== */
.fade-in-left, 
.fade-in-right, 
.fade-in-element {
    opacity: 0;
    transition: opacity 1.4s cubic-bezier(0.22, 1, 0.36, 1), 
                transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: transform, opacity;
}

.fade-in-left { transform: translateX(-80px); }
.fade-in-right { transform: translateX(80px); }
.fade-in-element { transform: scale(0.9) translateY(20px); }

/* Triggered State applied dynamically via JavaScript */
.is-visible {
    opacity: 1;
    transform: translate(0) scale(1);
}

/* ==========================================================================
   9. RESPONSIVE DESIGN VIEWPORT WRAPPERS
   ========================================================================== */

.site-above-footer-inner-wrap{
	padding:0px!important;
}

.star{
	         color: #dbb052;
    padding: 0px 15px;
}

.marquee__track{
	     text-align: center;
    padding: 15px;
    font-family: 'Plus Jakarta Sans';
    letter-spacing: 1px;
    color: #fff;
    background: #1a1a1a;
}

.test-top-sec{
	    padding-bottom: 25px;
}

.testi-author-box{
    padding-top: 20px;
}

.testi-star{
	    color: #dbb052;
    margin-bottom: 0px !important;
    font-size: 18px;
    display: flex;
    column-gap: 2px;
}

.testi-auth{
	              font-family: 'Plus Jakarta Sans';
    font-size: 17px;
    line-height: 17px;
    color: #ffffff;
    padding-top: 5px;
}

.testi-slides .slide{
	    position: relative;
    margin: 0px 15px!important;
    background: #1a1a1a;
    padding: 30px;
    border-radius: 20px;
}

.testi-slides{
	      margin: 0px -15px;
    padding-top: 15px;
}

.testi-slides .ser-arrow{
       position: absolute;
    bottom: -48px;
    left: 50.5%;
	cursor:pointer;
}

.testi-slides .ser-arrow p:hover{
	color:#fff;
}

.testi-slides .ser-arrow.ser-prev{
	     right: 50.5%;
    z-index: 1;
    left: auto;
}

.testi-small-txt {
       display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    color: #fff;
}

.testi-small-txt.expanded {
    display: block; 
    overflow: visible;
}

.testi-small-txt p {
    margin: 0 0 8px 0;
}
.testi-small-txt p:last-child {
    margin-bottom: 0;
}

.read-more-btn {
    border: none;
    color: #dbb052 !important;
    font-weight: 600;
    cursor: pointer;
    font-size: 14px;
    display: inline-block;
    padding: 0;
    background: transparent !important;
    text-decoration: none;
    font-family: 'Plus Jakarta Sans';
    margin-top: 20px;
}

.read-more-btn:hover{
	color:#fff;
}

.testi-bot-sec{
	padding-bottom: 40px;
}

.testi-slides .ser-arrow p{
	    font-size: 35px;
    line-height: 30px;
    color: #dbb052;
}

.testi-slides{
	position:relative;
}

.foot-head{
	    font-family: 'Plus Jakarta Sans';
    font-size: 18px;
    color: #dbb052;
    padding-bottom: 20px;
    line-height: 20px;
    letter-spacing: 1px;
}

.foot-mid-sec{
       display: grid;
        grid-template-columns: 2.2fr 0.8fr;
    grid-column-gap: 50px;
}

.foot-mid-left{
	       display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 100px;
}

.foot-links li a, .cont-details p, .cont-details a{
	    color: #ffffff !important;
    font-size: 15px;
}

.foot-links li a:hover, .cont-details a:hover{
	color:#dbb052!important;
}

.cont-details{
	    display: grid;
    grid-row-gap: 7px;
	padding-bottom:30px;
}

.foot-links{
display: grid;
    grid-row-gap: 10px;
    grid-column-gap: 20px;
    grid-template-columns: repeat(2, 1fr);
}

.foot-top-sec{
	    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
    border-bottom: 1px solid #dbb052;
    padding-bottom: 50px;
    margin-bottom: 50px !important;
    align-items: center;
}

.foot-social{
	    display: flex;
    column-gap: 5px;
	padding-top:5px;
}

.foot-social li a{
	     color: #000000;
    border: 1px solid #dbb052;
    background: #dbb052;
    padding: 6px 15px 7px;
    font-size: 14px;
    transition: 0.5s all;
    display: block;
    line-height: 17px;
    font-family: 'Plus Jakarta Sans';
    border-radius: 30px;
}

.foot-social li a:hover{
	background:#000;
	color:#dbb052;
}

.foot-top-sec img{
	    width: 200px;
}

.foot-right-txt{
	      color: #fff;
    font-size: 35px;
    font-family: 'Plus Jakarta Sans';
    line-height: 50px;
    text-align: right;
}

.contact-form{
	    padding-top: 15px;
}

.contact-form input[type=text], .contact-form input[type=email], .contact-form input[type=tel], .contact-form select, .contact-form textarea, .contact-form input[type=number]{
	   padding: 10px 20px !important;
    line-height: 30px !important;
    border-radius: 30px !important;
    height: inherit!important;
	border:0px!important;
}

#gform_fields_1{
	    column-gap: 15px;
    row-gap: 15px;
}

.contact-main{
	     display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 20px;
}

.contact-right-sec{
	background:url('/wp-content/uploads/2026/06/roaming-bar-banner_2513679851.jpg');
}

.contact-sec-top{
	    background: #1a1a1a;
    padding: 50px;
    border-radius: 20px;
}

.contact-sec-top textarea{
	height:150px!important;
}

.services-bot-sec{
	    padding-top: 20px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-row-gap: 30px;
    grid-column-gap: 30px;
    text-align: center;
}

.ser-in-sec{
	    border: 1px solid #f5f5f5;
    padding: 50px;
	transition:0.5s all;
	background:#f5f5f5;
}

.ser-in-sec:hover{
	background:#000;
	color:#fff;
	border-color:#000;
}

.ser-in-sec:hover a{
	color:#fff;
}

.serv-head{
	    font-family: 'Playfair Display';
    font-size: 22px;
    margin-bottom: 10px !important;
    padding-top: 20px;
}

.serv-link a{
	font-family: 'Playfair Display';
    color: #000;
}

.ser-icon{
	width:70px;
}

.serv-link a:hover{
	color:#DBB051;
}

.about-page-sec{
	      display: grid;
    grid-template-columns: 1fr 2fr;
    grid-column-gap: 100px;
}

.abt-big-txt{
	    font-family: 'Playfair Display';
    font-size: 30px;
    line-height: 45px;
}

.abt-page-img{
	    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 20px;
    padding: 20px 0;
}

.celebrate-form-sec #field_2_13 .gfield-choice-input{
	       border-color: #dbb052;
    border-radius: 30px;
    font-size: 11px;
    background: #1a1a1a;
}

.gform-theme--framework input[type=radio]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before{
	background-color:#dbb052!important;
}

.gf_progressbar_title{
	color: #fff!important;
    font-family: 'Plus Jakarta Sans'!important;
}

.gf_progressbar_wrapper{
	padding-bottom:20px!important;
}

.gform-field-label{
	       color: #fff !important;
    font-family: 'Plus Jakarta Sans' !important;
	font-size: 16px !important;
}

.gform-theme--framework .gfield--type-image_choice.gfield--image-choice-style-square.gfield--image-choice-appearance-card .gchoice:where(:has(input:checked))::after{
	display:none!important;
}

.celebrate-form-sec input[type=text], .celebrate-form-sec input[type=email], .celebrate-form-sec input[type=tel], .celebrate-form-sec textarea, .celebrate-form-sec .datepicker,  .celebrate-form-sec input[type=number], .celebrate-form-sec select{
	border-radius: 30px !important;
    padding: 10px 20px !important;
    height: inherit !important;
    line-height: 20px !important;
}

.celebrate-form-sec textarea{
	height:120px!important;
}

.celebrate-form-sec .datepicker{
	width:100%!important;
}

.celebrate-form-sec .gform_next_button:focus, #gform_submit_button_2:focus, .celebrate-form-sec .gform_previous_button:focus, .celebrate-form-sec input[type=text]:focus, .celebrate-form-sec input[type=email]:focus, .celebrate-form-sec input[type=tel]:focus, .celebrate-form-sec textarea:focus, .celebrate-form-sec .datepicker:focus,  .celebrate-form-sec input[type=number]:focus, .celebrate-form-sec select:focus, #gform_submit_button_3:focus, #gform_submit_button_1:focus, #gform_submit_button_4:focus{
	border:0px!important;
	outline:0px!important;
}

.celebrate-form-sec .gform_next_button, #gform_submit_button_2, #gform_submit_button_3, #gform_submit_button_1, #gform_submit_button_4{
	         background: #dbb052 !important;
    font-family: 'Plus Jakarta Sans' !important;
    border-radius: 30px !important;
    padding: 5px 30px 6px !important;
    color: #000 !important;
}

#request_quote .gform_footer{
	    justify-content: center;
}

.celebrate-form-sec .gform_previous_button{
    font-family: 'Plus Jakarta Sans' !important;
    border-radius: 30px !important;
    padding: 5px 30px 6px !important;
    color: #000 !important;
}

#gform_fields_2_3{
	    column-gap: 15px!important;
    row-gap: 15px!important;
}

.celebrate-form-sec #field_2_13 .gfield-choice-input:before{
	color:#dbb052;
}

.celebrate-form-sec #field_2_13 .gchoice{
      display: block;
    background: #000;
    padding: 20px;
    border-radius: 20px;
    border: 1px solid #000;
    transition: 0.5s all;
}

.celebrate-form-sec #field_2_13 .gchoice:hover, .celebrate-form-sec #field_2_13 .gchoice:focus{
	background:#000;
	border-color:#DBB051;
}

.expert-sec .gfield_label{
	    font-size: 18px;
    padding-bottom: 15px !important;
}

.celebrate-form-sec #field_2_13 .gchoice img{
	    width: 200px;
    margin: auto;
    display: block;
	padding-bottom:30px;
}

.celebrate-form-sec #field_2_13 .gchoice label{
	    margin: 0px !important;
    color: #fff;
    text-align: center;
    font-family: 'Plus Jakarta Sans';
    font-size: 20px;
}

.gform_required_legend{
	display:none;
}


.cinematic-timeline-section {
 position: relative;
    overflow: hidden;
}

/* Atmospheric background blur reminiscent of modern video production */
.timeline-background-glow {
  position: absolute;
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(234, 179, 8, 0.05) 0%, transparent 70%);
  pointer-events: none;
  z-index: 1;
}

.timeline-header {
  text-align: center;
    position: relative;
    z-index: 2;
    padding-bottom: 40px;
}

.timeline-tag {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.25em;
  background: #DBB051;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
}

/* Timeline Track Wrapper */
.timeline-viewport {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  z-index: 2;
}

/* Center Guide Line Track */
.track-line-container {
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 2px;
  background: rgba(255, 255, 255, 0.05);
  transform: translateX(-50%);
}

.track-line-progress {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%; /* Driven dynamically by JS */
  background: #DBB051;
  box-shadow: 0 0 15px rgba(234, 179, 8, 0.5);
  transition: height 0.1s linear;
}

/* Individual Step Nodes */
.motion-node {
  position: relative;
  width: 100%;
  margin-bottom: 100px;
  display: flex;
}

.motion-node:last-child {
  margin-bottom: 0;
}

/* Alternate positioning across the center axis */
.motion-node:nth-child(even) {
  flex-direction: row-reverse;
}

/* Animated Cards */
.motion-card {
  width: 50%;
  position: relative;
  opacity: 0;
  filter: blur(8px);
  transform: translateY(40px) scale(0.96);
  transition: all 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}

.motion-node:nth-child(odd) .motion-card {
  padding-right: 80px;
}

.motion-node:nth-child(even) .motion-card {
  padding-left: 80px;
}

/* Glassmorphism card detailing */
.card-content {
  background: rgb(26 26 26);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgb(219 176 82);
    padding: 30px;
    border-radius: 24px;
    position: relative;
    z-index: 2;
    transition: border-color 0.4s ease, transform 0.4s ease;
}

.motion-card:hover .card-content {
  border-color: rgba(234, 179, 8, 0.3);
  transform: translateY(-4px);
}

.card-content h3 {
       color: #dbb052;
    font-size: 20px;
    padding-bottom: 10px;
}

.card-content p {
      color: #fff;
    margin: 0!important;
}

.card-content img{
	    border-radius: 20px;
    margin-bottom: 20px !important;
}

/* Dynamic Node Indicators (Numbers) */
.node-indicator {
      position: absolute;
    left: 50%;
    top: 30px;
    width: 50px;
    height: 50px;
    transform: translate(-50%, -50%) scale(0.5);
    background: #1a1a1a;
    border: 2px solid rgb(255 255 255);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
    opacity: 0.3;
    transition: all 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.node-number {
 font-size: 0.9rem;
    font-weight: 700;
    color: #fff;
    transition: color 0.4s ease;
}

/* Activated State via Scrolling Script */
.motion-node.is-active .motion-card {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0) scale(1);
}

.motion-node.is-active .node-indicator {
      opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    border-color: #dbb052;
    background: #1a1a1a;
}

.motion-node.is-active .node-number {
     color: #DBB051;
}

/* --- Core Luxury Canvas Setup (Dark Mode) --- */
.creative-founder-section {
       --primary-light: #ffffff;
    --luxury-gold: #DBB051;
    --bg-dark: #1a1a1a;
    position: relative;
    padding: 50px;
    background: var(--bg-dark);
    color: var(--primary-light);
    overflow: hidden;
    border-radius: 20px;
}

/* Atmospheric Ambient Glows adjusted for dark background depth */
.liquid-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    z-index: 1;
    pointer-events: none;
}
.glow-one {
       width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgb(219 176 81 / 40%) 0%, rgba(26, 26, 26, 0) 70%);
    top: -10%;
    right: -5%;
    animation: liquidChamber 25s infinite alternate ease-in-out;
}
.glow-two {
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.03) 0%, rgba(26,26,26,0) 70%);
    bottom: -5%;
    left: 5%;
    animation: liquidChamber 18s infinite alternate-reverse ease-in-out;
}

@keyframes liquidChamber {
    0% { transform: translate(0, 0) scale(1) rotate(0deg); }
    100% { transform: translate(-60px, 40px) scale(1.15) rotate(120deg); }
}

.editorial-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 100px;
    align-items: center;
    position: relative;
    z-index: 2;
}

/* --- State: Hidden before Scroll --- */
.meta-reveal, 
.editorial-title,  
.narrative-flow p, 
.signature-block, 
.arch-pour-wrapper,
.floating-stamp {
    opacity: 0;
    will-change: transform, filter, opacity;
}

.cta-wrapper .web-btns{
	display:inline-block;
	padding-top:15px;
}

.editorial-title, .narrative-flow p {
    filter: blur(10px);
    transform: translateY(20px);
}

/* --- State: Active on Scroll (.in-view triggers) --- */
.creative-founder-section.in-view .meta-reveal {
    animation: spiritReveal 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
}

.creative-founder-section.in-view .gold-sparkle,
.creative-founder-section.in-view .testi-star {
    color: var(--luxury-gold);
    animation: pulseSparkle 3s infinite ease-in-out;
}

/* Target your updated gold heading utility class */
.small-head.gold {
       font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 5px;
    font-weight: 700;
    color: #d6ac4f;
}

.creative-founder-section.in-view .editorial-title {
    animation: spiritReveal 1.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s forwards;
}

.creative-founder-section.in-view .liquid-trickle-line {
    width: 1px;
    background: linear-gradient(to bottom, var(--luxury-gold), transparent);
    margin-bottom: 40px;
    animation: pourLine 1.8s cubic-bezier(0.65, 0, 0.35, 1) 0.5s forwards;
}

/* Staggering paragraph timings seamlessly */
.creative-founder-section.in-view .narrative-flow p { animation: subtleWarmReveal 1.2s ease-out forwards; }
.creative-founder-section.in-view .narrative-flow p:nth-child(1) { animation-delay: 0.5s; }
.creative-founder-section.in-view .narrative-flow p:nth-child(2) { animation-delay: 0.65s; }
.creative-founder-section.in-view .narrative-flow p:nth-child(3) { animation-delay: 0.8s; }
.creative-founder-section.in-view .narrative-flow p:nth-child(4) { animation-delay: 0.95s; }
.creative-founder-section.in-view .narrative-flow p:nth-child(5) { animation-delay: 1.1s; }
.creative-founder-section.in-view .narrative-flow p:nth-child(6) { animation-delay: 1.25s; }

.editorial-title.white {
    color: var(--primary-light);
}

.hero-quote {
    font-size: 1.4rem !important;
    color: var(--primary-light) !important;
    font-style: italic;
    font-weight: 500;
    line-height: 1.5 !important;
    margin-bottom: 35px !important;
}

.text-highlight {
    font-weight: 600;
    color: var(--luxury-gold); /* Gold stands out beautifully inline inside dark mode */
}

.closing-philosophy {
    font-weight: 500;
    color: var(--primary-light) !important;
}

/* --- Luxury Minimal Signature Block --- */
.creative-founder-section.in-view .signature-block {
    animation: subtleWarmReveal 1.5s ease-out 1.4s forwards;
}

.signature-line {
       width: 40px;
    height: 1px;
    background-color: var(--luxury-gold);
    margin-top: 20px;
}

.founder-name {
       font-size: 30px;
    margin: 0;
    font-weight: 400;
    color: #fff;
    padding-top: 15px;
}

.founder-title-sub {
       color: var(--luxury-gold);
    text-transform: uppercase;
    letter-spacing: 2px;
    margin: 5px 0 0 0 !important;
    font-weight: 600;
}

.founder-brand-sub {
       font-size: 15px;
    color: rgb(255 255 255);
}

/* --- Right Side: Arched Portrait Canvas --- */
.portrait-canvas {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.arch-pour-wrapper {
    position: relative;
    width: 100%;
    max-width: 400px;
    aspect-ratio: 0.73 / 0;
    border-radius: 240px 240px 20px 20px;
    overflow: hidden;
    box-shadow: 0 40px 80px rgba(0, 0, 0, 0.3);
    z-index: 2;
    transform: translateY(40px);
}

.creative-founder-section.in-view .arch-pour-wrapper {
    animation: archEntrance 1.6s cubic-bezier(0.16, 1, 0.3, 1) 0.3s forwards;
}

.liquid-pour-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--bg-dark); /* Matches the section background for seamless reveal curtain */
    z-index: 3;
    transform-origin: top;
}

.creative-founder-section.in-view .liquid-pour-overlay {
    animation: liquidPourAway 1.8s cubic-bezier(0.76, 0, 0.24, 1) 0.5s forwards;
}

.fluid-portrait {
    width: 100%;
    object-position: center 0%;
    scale: 0.97;
    transform-origin: center top;
    filter: brightness(95%) contrast(105%);
    transition: transform 1.5s cubic-bezier(0.16, 1, 0.3, 1);
    margin-bottom: -10px!important;
}

.creative-founder-section.in-view .fluid-portrait {
    animation: slowScaleDown 2s cubic-bezier(0.16, 1, 0.3, 1) 0.5s forwards;
}

.floating-luxury-ring {
    position: absolute;
    width: 110%;
    height: 90%;
    border: 1px solid var(--luxury-gold);
    border-radius: 50%;
    z-index: 1;
    pointer-events: none;
    opacity: 0.15;
    transform: rotate(-15deg) scale(0.9);
    animation: ringOrbit 30s infinite linear;
}

.creative-founder-section.in-view .floating-stamp {
    animation: subtleWarmReveal 1s ease-out 1.4s forwards;
}

.floating-stamp {
    position: absolute;
    bottom: -20px;
    right: -10px;
    background-color: var(--luxury-gold);
    color: var(--bg-dark);
       padding: 10px 20px 7px;
    font-size: 0.65rem;
    letter-spacing: 3px;
    font-weight: 700;
    z-index: 4;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    transform: translateX(20px);
    border-radius: 30px;
}

.portrait-canvas:hover .fluid-portrait {
    transform: scale(1.04) rotate(-1deg);
}

/* --- Core Keyframe Vectors --- */
@keyframes spiritReveal {
    0% { filter: blur(15px); opacity: 0; transform: scale(0.97); }
    100% { filter: blur(0); opacity: 1; transform: scale(1); }
}

@keyframes subtleWarmReveal {
    0% { opacity: 0; filter: blur(4px); transform: translateY(20px); }
    100% { opacity: 1; filter: blur(0); transform: translateY(0); }
}

@keyframes pourLine {
    0% { height: 0; }
    100% { height: 80px; }
}

@keyframes archEntrance {
    0% { opacity: 0; transform: translateY(80px); }
    100% { opacity: 1; transform: translateY(0); }
}

@keyframes liquidPourAway {
    0% { transform: scaleY(1); }
    100% { transform: scaleY(0); }
}

@keyframes slowScaleDown {
   0% { transform: scale(1.12); }
    100% { transform: scale(1.02);  }
}

@keyframes ringOrbit {
    0% { transform: rotate(0deg) scale(0.95); }
    50% { transform: rotate(180deg) scale(1.02); }
    100% { transform: rotate(360deg) scale(0.95); }
}

@keyframes pulseSparkle {
    0%, 100% { opacity: 0.3; transform: scale(0.8); }
    50% { opacity: 1; transform: scale(1.2); }
}

/* Container styling to hide edge overflow and apply luxury masks */
.brand-logo-bot-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 20px 0;
}

/* Elegant luxury gradient fades on the left and right edges */
.brand-logo-bot-wrapper::before,
.brand-logo-bot-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  width: 15%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
.brand-logo-bot-wrapper::before { left: 0; background: linear-gradient(to right, #0a0a0a, transparent); }
.brand-logo-bot-wrapper::after { right: 0; background: linear-gradient(to left, #0a0a0a, transparent); }

/* The Grid Track moving the logos */
.brand-logo-bot {
 display: grid;
    grid-auto-flow: column;
    /* grid-auto-columns: max-content; */
    align-items: center;
    gap: 50px;
    width: max-content;
    animation: premiumMarquee 40s linear infinite;
}

/* Pauses movement smoothly when a user hovers */
.brand-logo-bot:hover{
  animation-play-state: paused;
}

/* Individual Logo Styles */
.brand-logo-bot img {
  width: 250px;        /* Forces a uniform maximum width bounding box */
  height: 313px;        /* Forces a uniform maximum height bounding box */
  object-fit: contain; /* Guarantees no stretching or distortion */
  opacity: 0.4;        /* Default state when far from center */
  transform: scale(0.9); /* Default state when far from center */
  will-change: transform, opacity;
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
	border-radius:20px;
}

/* Infinite Loop Keyframe Math */
@keyframes premiumMarquee {
  0% {
    transform: translateX(0);
  }
  100% {
    /* Moves exactly half the distance of the dynamically duplicated track */
    transform: translateX(calc(-50% - 50px)); 
  }
}

.terms-mid-sec{
	padding-top:30px;
}

.terms-head{
	    font-size: 22px;
    font-family: 'Plus Jakarta Sans';
    color: #dbb051;
    font-weight: 700;
    margin-bottom: 0px !important;
    padding-bottom: 15px;
}

.bullet-points{
    list-style-type: none;
    padding: 0px !important;
    margin: 0px !important;
    display: grid;
    grid-row-gap: 10px;
}

.bullet-points > li:before{
	 content: '✓';
    background: #1a1a1a;
    width: 20px;
    height: 20px;
    font-size: 12px;
    border-radius: 20px;
    position: absolute;
    text-align: center;
    color: #dbb052;
    left: 0;
    top: 4px;
}

.bullet-points > li{
	    position: relative;
    padding-left: 30px;
}

.bullet-points ol{
	      padding-left: 20px;
    list-style-type: circle;
    display: grid;
    grid-row-gap: 10px;
    padding-top: 10px;
}


.pd30{
	padding-top:20px;
}

.expert-sec #input_4_16, .expert-sec .gfield_checkbox{
	display:grid!important;
	grid-template-columns:repeat(4, 1fr);
}

.expert-sec .gchoice{
	    max-inline-size: inherit !important;
    background: #000 !important;
    border-color: #000 !important;
    padding: 20px;
    border-radius: 20px !important;
    width: 100% !important;
	transition:0.5s all!important;
}

.expert-sec .gchoice:hover, .gfield.gfield--type-section{
	border-color:#dbb052!important;
}

.expert-sec .gchoice .gfield-choice-image-wrapper .gfield-choice-image{
	       border-radius: 15px;
}

.expert-sec .gfield--type-checkbox legend, .expert-sec .gfield--type-choice legend{
	    font-size: 18px !important;
    padding-bottom: 20px !important;
}

#gform_fields_4_2{
	grid-row-gap:20px;
	padding-top:15px;
}

.gform-theme--framework .gf_progressbar .percentbar_blue{
	background:#dbb052!important;
}

.gform-theme--framework .gfield--type-image_choice .gfield-choice-image-wrapper{
	    aspect-ratio: inherit!important;
}

.gform-theme--framework .gfield--type-image_choice.gfield--image-choice-appearance-card .gchoice:where(:has(input:checked))::after {
    background-color: #dbb052!important;
    color: #000000!important;
}

.gform-theme--framework .gfield--type-image_choice.gfield--image-choice-appearance-card .gchoice:focus-within, .gform-theme--framework .gfield--type-image_choice.gfield--image-choice-appearance-no-card .gchoice:focus-within .gfield-choice-image-wrapper{
	border:0px!important;
	outline:0px!important;
}

.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before{
	color:#dbb052!important;
}

.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework input[type=radio]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)){
	accent-color:#dbb052!important;
}

input[type="radio"].gfield-choice-input:checked, input[type="checkbox"].gfield-choice-input:checked, .ginput_container_consent input[type="checkbox"]:checked {
    border-color: #dbb052;
}

.gfield-image-choice-wrapper-inner{
	    padding-top: 20px!important;
    width: 100%!important;
    justify-content: center!important;
}

.gfield-image-choice-wrapper-inner label{
	padding-bottom:0px!important;
}

.expert-sec .gfield-choice-input{
	    background: #1a1a1a!important;
    border-color: #dbb052!important;
}

.gsection_title{
	    color: #dbb052;
    font-size: 20px;
}

.gfield--type-section{
	    border-color: #dbb052;
}

/* Ceremony Section Styles */
.ceremony-section {
  position: relative;
  min-height: 50vh; /* Gives it an expansive, breathing feel */
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 80px 24px;
  overflow: hidden;
  background-color: #111; /* Fallback color */
  
  /* Replace the URL below with your actual high-res golden hour/cocktail image asset */
  background-image: url('/wp-content/uploads/2026/06/roaming-bar-banner_2513679851.jpg'); 
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed; 
	 border-radius: 20px;
}

.ceremony-overlay, .luxury-overlay  {
     position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #0000009c;
    z-index: 1;
    border-radius: 20px;
}
.ceremony-container {
  position: relative;
  z-index: 2;
  max-width: 760px;
  color: #ffffff;
  animation: fadeIn 1.5s ease-out;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}


.luxury-hero-container {
  position: relative;
  width: 100%;
  min-height: 400px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #000000;
}

.luxury-video-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover; 
	border-radius:20px;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.luxury-content {
	    position: relative;
    z-index: 1;
    text-align: center;
    max-width: 600px;
    color: #ffffff;
    background: #000000bd;
    padding: 30px;
    border-radius: 20px;
}

.luxury-content p{
	margin-bottom:0px!important;
}

.planning-banner img{
	width:100%;
}

.planning-banner{
	overflow:inherit!important;
}

.plan-head{
	       font-size: 6vw;
    font-family: 'Plus Jakarta Sans';
    font-weight: 700;
    text-shadow: 0 0 19px #000;
    line-height: 6vw;
    padding-bottom: 40px;
}

.plan-txt{
	    position: absolute;
    bottom: -28px;
    left: 0;
    right: 0;
}

.plan-btn a{
	      background: #000;
    padding: 16px 30px;
    display: inline-block;
    font-size: 18px;
    font-family: 'Plus Jakarta Sans';
    border-radius: 30px;
    color: #dbb051 !important;
    border: 1px solid #dbb051;
    animation: zoomGlow 2.5s infinite ease-in-out;
    line-height: 20px;
	z-index:1;
	position:relative;
}

.plan-btn a:hover, .plan-btn a:focus{
	 color: #dbb051 !important;
}


/* – Media Screen Css – */

@media only screen and (min-width:1600px) {
	.wd-contained {
		max-width: 1440px;
		margin: auto !important;
	}
}

@media only screen and (min-width:768px) {
	.stretchMe {
		position: relative;
		width: 100vw !important;
		left: 50% !important;
		margin-left: -50vw !important;
		max-width: inherit !important;
	}

	nav#primary-site-navigation ul.main-header-menu li:last-child a {
		padding-right: 0px !important;
	}
	
	#gform_fields_2_2{
		row-gap:20px;
	}
}


@media only screen and (min-width:1024px) {
	.pd-100 {
		padding: 120px 0px !important;
	}

	.pd-top {
		padding-top: 120px !important;
	}

	.pd-bottom {
		padding-bottom: 120px !important;
	}
	
		.small-pointers{
		display:none;
	}
	
}

@media only screen and (max-width:1023px){
	 .editorial-grid { grid-template-columns: 1fr; gap: 80px; }
    .portrait-canvas { order: -1; max-width: 400px; margin: 0 auto; }
    .creative-founder-section { padding: 70px 20px; }
	
	.marquee__track{
		display:none;
	}
	
	 .package-bottom-sec {
        grid-template-columns: 1fr;
    }
    .package-in.featured {
        animation: none; /* Disables floats on mobile layouts to avoid touch layout shifting */
    }
    .package-in {
        max-width: 420px;
        margin: 0 auto;
        width: 100%;
    }
	
	.small-pointers {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    background: #1a1a1a;
    padding: 20px;
    grid-column-gap: 10px;
    grid-row-gap: 10px;
}
	
	.small-pointers .star{
		padding:0px;
	}
	
	.small-pointers > span{
		        display: flex;
        column-gap: 10px;
        background: #000;
        padding: 10px;
        border-radius: 10px;
	}
	
	.wd70, .wd50{
		width:100%;
	}

    .cocktail-menu:first-child .cocktail-menu-in:hover,
    .cocktail-menu:last-child .cocktail-menu-in:hover {
        transform: translateY(-6px); /* Elevates vertically upwards rather than sideways on small viewports */
    }
   
	.contact-main{
		        grid-template-columns: 1fr;
        grid-row-gap: 20px;
	}
	
	.contact-sec-top{
		padding:20px;
	}
	
	.contact-right-sec{
		height:350px;
	}
}

@media only screen and (min-width:768px) and (max-width:1023px) {

	.pd-100 {
		padding: 100px 0px !important;
	}

	.pd-top {
		padding-top: 100px !important;
	}

	.pd-bottom {
		padding-bottom: 100px !important;
	}

	.site-primary-footer-inner-wrap,
	.wd-contained {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-grid-row,
	.site-below-footer-inner-wrap {
		padding-left: 20px !important;
		padding-right: 20px !important;
		column-gap: 30px;
	}
	
	.creative-video-curtain{
		height:600px;
	}
	
	.h-main-banner {
		padding:30px;
		left:20px;
		bottom:20px;
	}
	
	#input_2_13{
		grid-template-columns:repeat(2, 1fr);
	}
	
	.brand-logo-bot img {
		width:200px;
		height:250px;
	}
	
	.cocktail-bottom{
		grid-column-gap:30px;
	}
	
	.cockt-num {
    font-size: 40px;
    line-height: 40px;
	}
	
	.cocktail-menu:first-child .cocktail-menu-in {
    grid-template-columns: auto 55px;
}
	
	.cocktail-menu-in{
		 grid-template-columns:  55px auto;
		        grid-column-gap: 15px;
		    padding-bottom: 20px;
	}
	
	.menu-top{
		padding:0px;
		    grid-row-gap: 20px;
	}
	
	.menu-txt {
    font-size: 15px;
    line-height: 24px;
	}
	
	.foot-call-action-sec:before{
		    background: linear-gradient(84deg, black, transparent);
	}
	
	.foot-call-action-sec{
		        grid-template-columns: 2fr 1fr;
        padding: 100px 20px;
	}
	
	.fluid-portrait{
		width:70%;
		margin: auto;
    display: block;
	}
	
	.hero-quote{
		margin-bottom:15px!important;
	}
	
	.card-content{
		padding:20px;
	}
	
	.foot-top-sec{
		        text-align: left;
        grid-template-columns: 1fr 2fr;
	}
	
	.foot-right-txt {
    font-size: 25px;
    line-height: 35px;
	}
	
	.foot-mid-left{
		    text-align: left;
    grid-column-gap: 30px;
	}
	
	.foot-links{
		grid-template-columns:1fr;
	}
}

@media only screen and (min-width:1024px) and (max-width: 1365px) {

	.foot-mid-left {
		grid-column-gap:50px;
	}

	.site-primary-footer-inner-wrap,.site-below-footer-inner-wrap,
	.ast-container,
	.wd-contained, .ast-primary-header-bar .site-primary-header-wrap {
		padding-left: 30px !important;
		padding-right: 30px !important;
	}


	h2,
	.entry-content h2,
	h1,
	.entry-content h1 {
		font-size: 35px;
		line-height: 45px;
	}
	
	.creative-video-curtain{
		height:600px;
	}
	
	.h-main-banner{
		    left: 20px;
    bottom: 20px;
	}
	
	.celebrate-form-sec #field_2_13 .gchoice img {
    width: 120px;
    padding-bottom: 20px;
}
	
	.celebrate-form-sec #field_2_13 .gchoice label{
		font-size:15px;
		padding-bottom:0px;
	}
	
	.brand-logo-bot img{
		width:220px;
		height:275px;
	}
	
	.cockt-num{
		font-size:60px;
		line-height:60px;
	}
	
	.cocktail-bottom{
		grid-column-gap:40px;
	}
	
	.cocktail-menu-in{
		    grid-template-columns: 82px auto;
    grid-column-gap: 20px;
	}
	
	.cocktail-menu:first-child .cocktail-menu-in{
		 grid-template-columns:auto 82px;
	}
	
	.menu-txt {
    font-size: 18px;
    line-height: 27px;
	}
	
	.foot-call-action-sec{
		    padding: 100px 30px;
    grid-template-columns: 1.3fr 1.7fr;
	}
	
	.wd50{
		width:70%;
	}
	
	.contact-sec-top{
		padding: 30px;
	}


}

@media only screen and (max-width:767px) {
	.pd-100 {
		padding: 70px 0px !important;
	}

.pd-top{
padding-top:70px!important;
}

.pd-bottom{
padding-bottom:70px!important;
}
	
	.expert-sec #input_4_16, .expert-sec .gfield_checkbox{
		grid-template-columns:1fr!important;
	}
	
	.expert-sec .gform-page-footer.gform_page_footer{
		justify-content: center!important;
	}
	
	 .ceremony-section {
    min-height: 60vh;
    padding: 60px 20px;
    background-attachment: scroll; 
  }
 
	.call-action-in .web-btns{
	    justify-content: center;
}
	.wd-contained, .site-below-footer-inner-wrap  {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.ast-builder-footer-grid-columns.site-primary-footer-inner-wrap.ast-builder-grid-row {
		grid-template-columns: 1fr;
		row-gap: 20px;
		padding-left: 20px;
		padding-right: 20px;
	}
	
	.creative-video-curtain{
		height:100%;
	}
	
	.h-main-banner{
		   position: relative;
        bottom: 0;
        padding: 50px 0;
        background: #000;
        width: 100%;
	}
	
	.btn-sep, .home-about .head-sep, .celebrate-form-sec .head-sep, .brand-logo-top .head-sep{
		height:25px!important;
	}
	
	.test-top-sec {
    padding-bottom: 10px;
}
	
	.testi-slides .slide {
  padding:20px;
	}
	
	.testi-author-box {
    padding-top: 5px;
}
	
	.foot-right-txt{
		    font-size: 18px;
    line-height: 30px;
    text-align: center;
	}
	
.foot-top-sec {
    grid-template-columns: 1fr;
    grid-row-gap: 20px;
    padding-bottom: 30px;
    margin-bottom: 30px!important;
}
	
.foot-head, .cont-details{
		padding-bottom:15px;
	}
	
.foot-mid-left{
    grid-template-columns: 1fr;
    text-align: left;
    grid-row-gap: 25px;
}
	
	.subhead {
    font-size: 16px;
	}
	
	.web-btns a {
    padding: 10px 20px;
	}
	
	.cocktail-slider .slide {
    height: 200px !important;
		padding: 0 5px;
	}
	
	.flip-box-front p {
    font-size: 18px;
    padding: 0px 10px 10px;
    line-height: 23px;
}
	
	.back-desc-top, .back-desc-bot{
		font-size:15px;
		margin-bottom:0px!important;
	}
	
	.small-head.gold {
    font-size: 0.6rem;
    letter-spacing: 3px;
}
	
	.celebrate-form-sec #field_2_13 .gchoice img {
    width: 100px;
    padding-bottom: 20px;
	}
	
	#input_2_13{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
	}
	
	.celebrate-form-sec{
		padding:20px;
	}
	
	#gform_3 .ginput_container_time{
		width:95px;
	}
	
	#gform_3 .gform-footer.gform_footer{
		margin-top:10px;
	}
	
	.popup-content .gf_browser_safari.gf_browser_iphone.gform_wrapper{
		    height: 500px;
    overflow-y: scroll;
		overflow-x:hidden;
	}
	
	.celebrate-form-sec input[type=text], .celebrate-form-sec input[type=email], .celebrate-form-sec input[type=tel], .celebrate-form-sec textarea, .celebrate-form-sec .datepicker, .celebrate-form-sec input[type=number], .celebrate-form-sec select{
		padding:7px 15px!important;
	}
	
	.celebrate-form-sec #field_2_13 .gchoice label {
    font-size: 15px;
    padding-bottom: 0px!important;
}
	
	.celebrate-form-sec #field_2_13 .gchoice{
		padding:15px;
	}
	
	#gform_fields_2_2{
		gap:15px;
	}
	
	.brand-logo-bot img {
		width:120px;
		height:150px;
	}
	
	.cocktail-bottom{
	padding-top: 15px;
        grid-row-gap: 0;
        grid-template-columns: 1fr;
	}
	
	 .cocktail-left {
      height: 300px;
        grid-row: 1;
        margin-bottom: 15px !important;
    }
	
	.menu-top{
	       grid-row-gap: 15px;
        padding: 15px 0 0;
	}
	
	.fade-in-left, .fade-in-right{
		        transform: translateY(0px);
	}
	
	.cocktail-menu:first-child .cocktail-menu-in .cockt-num{
		order:1;
		text-align:left;
	}
	
	.cocktail-menu-in{
		              grid-template-columns: 41px auto !important;
        grid-column-gap: 15px;
        border-bottom: 1px dashed #464646 !important;
        padding: 0px 0 20px !important;
	}
	
	.cocktail-menu:first-child .cocktail-menu-in div{
		text-align:left;
	}
	
	.cockt-num{
		font-size:30px;
		line-height:30px;
	}
	
	.menu-txt {
    font-size: 15px;
    line-height: 25px;
	}
  
  .track-line-container {
    left: 25px;
    transform: none;
  }
	
	.timeline-header{
		padding-bottom:25px;
	}
	
	.card-content{
		padding:20px;
	}
	
	.card-content h3{
		font-size:18px;
	}
  
  .motion-node, .motion-node:nth-child(even) {
    flex-direction: row;
    margin-bottom: 60px;
  }

  .motion-card {
    width: 100%;
  }

  .motion-node:nth-child(odd) .motion-card,
  .motion-node:nth-child(even) .motion-card {
	  padding:0 0 20px 70px;
  }

  .node-indicator {
    left: 25px;
  }
	
	.motion-node:last-child .motion-card{
		padding-bottom:0px;
	}
	
	.fluid-portrait{
		           width: 72%;
        margin: auto;
        display: block;
	}
	
	.liquid-trickle-line{
		display:none;
	}
	
	.hero-quote{
		    font-size: 15px !important;
    margin-bottom: 15px !important;
    padding-top: 20px;
	}
	
	.founder-name {
    font-size: 20px;
	}
	
	.cta-wrapper .web-btns{
		padding-top: 10px;
	}
	
	.foot-call-action-sec:before{
		    background: #000000a6;
	}
	
	.foot-call-action-sec{
		          padding: 70px 20px;
        grid-template-columns: 1fr;
        text-align: center;
	}
	
	.call-action-txt {
    font-size: 15px;
    line-height: 25px;
    padding-bottom: 20px;
}
	
	.call-action-head {
    padding-bottom: 20px;
}
	
	.site-below-footer-wrap{
		padding-top:0;
	}
	
	.ast-scroll-to-top-right {
    right: 15px;
    bottom: 15px;
}
	
	.contact-right-sec{
		height:250px;
	}

}

@media only screen and (min-width:1366px) and (max-width: 1599px) {

	.ast-container,
	.ast-container-fluid {
		max-width: 1240px;
	}
	
	.menu-txt {
    font-size: 18px;
    line-height: 28px;
	}
	
	.foot-right-txt {
    font-size: 30px;
    line-height: 42px;
}

	.wd-contained, .site-primary-footer-wrap, .site-below-footer-wrap {
		max-width: 1200px;
		margin: auto !important;
	}

	h2,
	.entry-content h2,
	h1,
	.entry-content h1 {
		font-size: 40px;
	}
	
	.marquee__track{
		font-size: 14px;
    letter-spacing: 0.5px;
	}

}
