.elementor-900 .elementor-element.elementor-element-94eba8c{--display:flex;}.elementor-900 .elementor-element.elementor-element-7f9999d{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-900 .elementor-element.elementor-element-05efd16{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-05c7e2e{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-900 .elementor-element.elementor-element-26b37bc{--display:flex;}.elementor-900 .elementor-element.elementor-element-6334acb{--display:flex;}.elementor-900 .elementor-element.elementor-element-554ddea{--display:flex;}.elementor-900 .elementor-element.elementor-element-4617ecd{text-align:center;}.elementor-900 .elementor-element.elementor-element-8e840a0{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-cf90178{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-d0fe5df{--display:flex;}.elementor-900 .elementor-element.elementor-element-39d4722{--display:flex;}.elementor-900 .elementor-element.elementor-element-969c498{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-f804e1d{--display:flex;}.elementor-900 .elementor-element.elementor-element-8b17ac0{--display:flex;}.elementor-900 .elementor-element.elementor-element-4cb81c3{--display:flex;}.elementor-900 .elementor-element.elementor-element-efdf76d{text-align:center;}.elementor-900 .elementor-element.elementor-element-65042ef{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-ff85adc{--display:flex;}.elementor-900 .elementor-element.elementor-element-adffec2{--display:flex;}.elementor-900 .elementor-element.elementor-element-2b34b02{--display:flex;}.elementor-900 .elementor-element.elementor-element-edca811{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-5211d43{--display:flex;}.elementor-900 .elementor-element.elementor-element-a55827c{--display:flex;}.elementor-900 .elementor-element.elementor-element-c7734c0{--display:flex;}.elementor-900 .elementor-element.elementor-element-d33ae9f{--display:flex;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-900 .elementor-element.elementor-element-05efd16{--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-8e840a0{--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-cf90178{--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-969c498{--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-65042ef{--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-edca811{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-900 .elementor-element.elementor-element-05efd16{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-8e840a0{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-cf90178{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-969c498{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-65042ef{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-900 .elementor-element.elementor-element-edca811{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for container, class: .elementor-element-94eba8c *//* =========================================
   ENTOURAGE — LEVEL 100 CINEMATIC
   EXACT STRUCTURE VERSION
   Elementor Container + Grid Layout
========================================= */

.elementor-900 .elementor-element.elementor-element-94eba8c{
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    padding: clamp(48px, 7vw, 120px) clamp(14px, 3vw, 34px);
    background:
        radial-gradient(circle at 12% 14%, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0) 34%),
        radial-gradient(circle at 88% 18%, rgba(255,244,237,0.60) 0%, rgba(255,255,255,0) 32%),
        radial-gradient(circle at 50% 100%, rgba(234,205,212,0.22) 0%, rgba(255,255,255,0) 46%),
        linear-gradient(180deg, #fffaf8 0%, #f9eff0 48%, #f3dde2 100%);
    isolation: isolate;
}

/* cinematic floating light */
.elementor-900 .elementor-element.elementor-element-94eba8c::before{
    content: "";
    position: absolute;
    inset: -12%;
    pointer-events: none;
    z-index: 0;
    background:
        radial-gradient(circle at 25% 28%, rgba(255,255,255,0.30) 0%, rgba(255,255,255,0) 40%),
        radial-gradient(circle at 75% 35%, rgba(255,247,241,0.22) 0%, rgba(255,255,255,0) 38%);
    animation: entourageGlowFloat 18s ease-in-out infinite;
}

/* luxury gold sweep */
.elementor-900 .elementor-element.elementor-element-94eba8c::after{
    content: "";
    position: absolute;
    top: 0;
    left: -150%;
    width: 46%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    background: linear-gradient(
        115deg,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,0.04) 30%,
        rgba(212,175,55,0.16) 50%,
        rgba(255,255,255,0.04) 70%,
        rgba(255,255,255,0) 100%
    );
    animation: entourageGoldSweep 12s ease-in-out infinite;
}

/* keep all content above background effects */
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-element,
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget,
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-container,
.elementor-900 .elementor-element.elementor-element-94eba8c .e-con,
.elementor-900 .elementor-element.elementor-element-94eba8c .e-con-inner,
.elementor-900 .elementor-element.elementor-element-94eba8c .e-grid{
    position: relative;
    z-index: 1;
}

/* reset default widget visuals */
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-container{
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* =========================================
   OUTER WRAP
========================================= */
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner{
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    gap: clamp(14px, 2vw, 22px);
}

/* =========================================
   TITLE BLOCK
   first child container = title
========================================= */
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child{
    margin-bottom: clamp(8px, 1.5vw, 16px);
}

.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title{
    margin: 0;
    text-align: center;
    font-family: "Playfair Display", serif;
    font-size: clamp(30px, 5vw, 68px);
    line-height: 1.08;
    letter-spacing: clamp(1px, 0.35vw, 5px);
    text-transform: uppercase;
    font-weight: 700;
    background: linear-gradient(
        90deg,
        #9d6717 0%,
        #c9982f 18%,
        #fff2c8 50%,
        #d2a03b 78%,
        #9f6b1c 100%
    );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: 0 8px 24px rgba(212,175,55,0.10);
    opacity: 0;
    transform: translateY(18px);
    animation: entourageFadeUp .9s ease forwards;
}

.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title::before,
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title::after{
    content: "";
    display: block;
    height: 1px;
    margin-left: auto;
    margin-right: auto;
    background: linear-gradient(90deg, transparent, rgba(212,175,55,0.92), transparent);
}

.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title::before{
    width: clamp(56px, 8vw, 110px);
    margin-bottom: 12px;
}

.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title::after{
    width: clamp(74px, 10vw, 140px);
    margin-top: 12px;
}

/* =========================================
   TOP GRID (Groom's Parents / Bride's Parents)
========================================= */
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(14px, 2vw, 24px);
    margin-top: clamp(10px, 1.6vw, 18px);
    margin-bottom: clamp(10px, 1.6vw, 18px);
}

/* each top grid card */
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid > .e-con{
    padding: clamp(18px, 2.2vw, 28px);
    border-radius: 24px;
    background: linear-gradient(
        180deg,
        rgba(255,255,255,0.58) 0%,
        rgba(255,255,255,0.28) 100%
    );
    border: 1px solid rgba(212,175,55,0.12);
    box-shadow:
        0 12px 34px rgba(92,63,67,0.06),
        inset 0 1px 0 rgba(255,255,255,0.42);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

/* =========================================
   STANDARD ROLE CONTAINERS
   Pastor, Principal Sponsor, Secondary Sponsor, etc.
========================================= */
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:not(:first-child){
    padding: clamp(18px, 2.4vw, 30px);
    border-radius: 24px;
    background: linear-gradient(
        180deg,
        rgba(255,255,255,0.58) 0%,
        rgba(255,255,255,0.28) 100%
    );
    border: 1px solid rgba(212,175,55,0.12);
    box-shadow:
        0 12px 34px rgba(92,63,67,0.06),
        inset 0 1px 0 rgba(255,255,255,0.42);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

/* add vertical spacing only between sections */
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con + .e-con,
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid + .e-con,
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con + .e-grid{
    margin-top: clamp(14px, 2vw, 22px);
}

/* =========================================
   HEADINGS INSIDE CARDS
========================================= */
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-heading-title{
    width: 100%;
    max-width: 100%;
    margin: 0 0 10px;
    text-align: center;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* all headings except main title */
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:not(:first-child) .elementor-heading-title,
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid > .e-con .elementor-heading-title{
    font-family: "Playfair Display", serif;
    font-size: clamp(21px, 3vw, 38px);
    line-height: 1.18;
    font-weight: 700;
    letter-spacing: 0.5px;
    color: #c79aa6;
    opacity: 0;
    transform: translateY(14px);
    animation: entourageFadeUp 1s ease forwards;
}

.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:not(:first-child) .elementor-heading-title::after,
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid > .e-con .elementor-heading-title::after{
    content: "";
    display: block;
    width: clamp(42px, 5vw, 72px);
    height: 1px;
    margin: 10px auto 0;
    background: linear-gradient(90deg, transparent, rgba(212,175,55,0.92), transparent);
}

/* =========================================
   TEXT EDITOR / NAMES
========================================= */
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor{
    margin-bottom: 0 !important;
    text-align: center;
    opacity: 0;
    transform: translateY(12px);
    animation: entourageFadeUp 1s ease forwards;
    animation-delay: .05s;
}

.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor .elementor-widget-container{
    padding: 0 !important;
}

.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor,
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor p,
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor div,
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor span,
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor li{
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(18px, 1.8vw, 27px);
    line-height: 1.7;
    letter-spacing: 0.25px;
    color: #553f42;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* tighter stacked name widgets */
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor + .elementor-widget-text-editor{
    margin-top: -2px;
}

/* stronger emphasis if names use bold */
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor strong,
.elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor b{
    color: #322224;
    font-weight: 600;
}

/* =========================================
   INNER NESTED GRIDS
   Principal Sponsor
   Bestman / Maid of Honor
   Groomsmen / Bridesmaid
   Veil / Cord / Candle etc.
========================================= */
.elementor-900 .elementor-element.elementor-element-94eba8c .e-con .e-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(12px, 2vw, 22px);
    margin-top: clamp(8px, 1vw, 12px);
}

/* nested grid child cards */
.elementor-900 .elementor-element.elementor-element-94eba8c .e-con .e-grid > .e-con{
    padding: clamp(16px, 2vw, 24px);
    border-radius: 20px;
    background: linear-gradient(
        180deg,
        rgba(255,255,255,0.50) 0%,
        rgba(255,255,255,0.20) 100%
    );
    border: 1px solid rgba(212,175,55,0.10);
    box-shadow:
        0 8px 24px rgba(92,63,67,0.05),
        inset 0 1px 0 rgba(255,255,255,0.35);
}

/* =========================================
   SINGLE FULL-WIDTH CONTAINERS
========================================= */
.elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con > .elementor-widget-heading:only-child .elementor-heading-title{
    margin-bottom: 0;
}

/* =========================================
   RESPONSIVE — TABLET
========================================= */
@media (max-width: 1024px){
    .elementor-900 .elementor-element.elementor-element-94eba8c{
        padding: clamp(44px, 7vw, 84px) 18px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title{
        font-size: clamp(28px, 5vw, 50px);
        letter-spacing: 2px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:not(:first-child),
    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid > .e-con{
        padding: 20px 18px;
        border-radius: 20px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c .e-con .e-grid > .e-con{
        padding: 16px 14px;
        border-radius: 18px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:not(:first-child) .elementor-heading-title,
    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid > .e-con .elementor-heading-title{
        font-size: clamp(20px, 3.4vw, 30px);
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor p,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor div,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor span,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor li{
        font-size: clamp(17px, 2.1vw, 22px);
        line-height: 1.65;
    }
}

/* =========================================
   RESPONSIVE — MOBILE
========================================= */
@media (max-width: 767px){
    .elementor-900 .elementor-element.elementor-element-94eba8c{
        padding: 36px 14px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner{
        gap: 12px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title{
        font-size: clamp(24px, 8vw, 34px);
        line-height: 1.12;
        letter-spacing: 1.2px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title::before{
        margin-bottom: 10px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title::after{
        margin-top: 10px;
    }

    /* stack all top-level grids */
    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid,
    .elementor-900 .elementor-element.elementor-element-94eba8c .e-con .e-grid{
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:not(:first-child),
    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid > .e-con{
        padding: 16px 14px;
        border-radius: 18px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c .e-con .e-grid > .e-con{
        padding: 14px 12px;
        border-radius: 16px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:not(:first-child) .elementor-heading-title,
    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid > .e-con .elementor-heading-title{
        font-size: clamp(18px, 6.4vw, 25px);
        margin-bottom: 8px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor p,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor div,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor span,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor li{
        font-size: clamp(15px, 4.8vw, 19px);
        line-height: 1.58;
    }
}

/* =========================================
   SMALL MOBILE
========================================= */
@media (max-width: 480px){
    .elementor-900 .elementor-element.elementor-element-94eba8c{
        padding: 30px 12px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:first-child .elementor-heading-title{
        font-size: 22px;
        letter-spacing: 1px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-con:not(:first-child) .elementor-heading-title,
    .elementor-900 .elementor-element.elementor-element-94eba8c > .e-con-inner > .e-grid > .e-con .elementor-heading-title{
        font-size: 18px;
    }

    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor p,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor div,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor span,
    .elementor-900 .elementor-element.elementor-element-94eba8c .elementor-widget-text-editor li{
        font-size: 15px;
    }
}

/* =========================================
   ANIMATIONS
========================================= */
@keyframes entourageGlowFloat{
    0%,100%{
        transform: translate(0,0) scale(1);
    }
    50%{
        transform: translate(3%,2%) scale(1.03);
    }
}

@keyframes entourageGoldSweep{
    0%{
        left: -150%;
    }
    100%{
        left: 150%;
    }
}

@keyframes entourageFadeUp{
    to{
        opacity: 1;
        transform: translateY(0);
    }
}/* End custom CSS */