/* EventCentralOps 0.5.3 — Motion template identities.
 * Each motion template keeps the same tenant-owned content model while using
 * its own composition, color language, image treatment and motion character.
 * This file loads only when the active public template is a motion template.
 */

/* Shared clarity + performance guardrails for motion presentation assets. */
.eco-public-layout-motion .eco-hero-image,
.eco-public-layout-motion .eco-motion-card img,
.eco-public-layout-motion .eco-gallery-carousel img,
.eco-public-layout-motion .eco-person-photo img{
  image-rendering:auto;
  backface-visibility:hidden;
  -webkit-font-smoothing:antialiased;
}
.eco-public-layout-motion .eco-hero-image{filter:none!important;object-fit:cover}
.eco-public-layout-motion .eco-motion-card img{filter:saturate(1.02) contrast(1.025)}
.eco-public-layout-motion .eco-public-section{content-visibility:auto;contain-intrinsic-size:760px}

@keyframes ecoIdOrbit{0%,100%{transform:rotate(-5deg) translate3d(0,0,0)}50%{transform:rotate(4deg) translate3d(16px,-20px,28px)}}
@keyframes ecoIdBeat{0%,100%{transform:translate3d(0,0,0) scale(1)}35%{transform:translate3d(9px,-10px,0) scale(1.035)}70%{transform:translate3d(-7px,7px,0) scale(.985)}}
@keyframes ecoIdDrift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(28px,-14px,0)}}
@keyframes ecoIdFloatSoft{0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}50%{transform:translate3d(0,-18px,0) rotate(1deg)}}
@keyframes ecoIdSlideRail{0%,100%{transform:translateX(0)}50%{transform:translateX(-22px)}}
@keyframes ecoIdTilt{0%,100%{transform:perspective(1000px) rotateY(-8deg) rotateX(2deg)}50%{transform:perspective(1000px) rotateY(6deg) rotateX(-2deg)}}
@keyframes ecoIdGlow{0%,100%{opacity:.38;transform:scale(.9)}50%{opacity:.85;transform:scale(1.12)}}
@keyframes ecoIdRise{0%,100%{transform:translateY(14px)}50%{transform:translateY(-10px)}}
@keyframes ecoIdSwing{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}
@keyframes ecoIdScan{0%{background-position:0 0}100%{background-position:0 120px}}
@keyframes ecoIdShimmer{0%,100%{filter:saturate(.95) brightness(.98)}50%{filter:saturate(1.12) brightness(1.05)}}

/* -------------------------------------------------------------------------
 * WORSHIP / CONCERT
 * ---------------------------------------------------------------------- */

/* Radiant Motion — prismatic worship stage: centered copy + orbiting media. */
.eco-public-layout-motion.eco-public-design-radiant_motion{
  --eco-motion-bg:#120c19;--eco-motion-bg-2:#241226;--eco-motion-panel:rgba(38,20,43,.70);
  --eco-motion-violet:#bd6cff;--eco-motion-pink:#ff6fbd;--eco-motion-cyan:#7ce7ff;--eco-motion-gold:#ffc46b;
}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-event-hero{background:radial-gradient(circle at 50% 22%,rgba(255,196,107,.22),transparent 28%),radial-gradient(circle at 79% 62%,rgba(189,108,255,.24),transparent 33%),radial-gradient(circle at 19% 70%,rgba(255,111,189,.18),transparent 31%),linear-gradient(145deg,#09060d,#1a0d20 52%,#260f2b)}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-hero-content{max-width:1180px;text-align:center;margin-inline:auto;padding-inline:min(22vw,330px)}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-hero h1{margin-inline:auto;max-width:860px;font-size:clamp(62px,8vw,126px);letter-spacing:-.065em}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-lead,.eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-meta{margin-inline:auto}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-motion-deck{inset:0;width:100%;height:100%;transform:none;top:0;right:0}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-motion-card{width:min(22vw,310px);aspect-ratio:4/5;border-radius:999px 999px 34px 34px;opacity:.82;animation:ecoIdOrbit 8.8s ease-in-out infinite}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-motion-card-1{left:5%;top:20%;right:auto}.eco-public-layout-motion.eco-public-design-radiant_motion .eco-motion-card-2{right:4%;top:23%;left:auto;animation-delay:-2.4s}.eco-public-layout-motion.eco-public-design-radiant_motion .eco-motion-card-3{left:50%;bottom:2%;right:auto;width:min(18vw,245px);transform:translateX(-50%);animation-delay:-4s}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-motion-marquee{background:#1c0c1d;border-color:rgba(255,196,107,.18)}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-section:nth-child(even){background:linear-gradient(145deg,#180d1d,#251127 60%,#15101d)}
.eco-public-layout-motion.eco-public-design-radiant_motion .eco-feature-card{border-radius:34px}

/* Revival Cinema — letterboxed film language, amber light, horizontal frames. */
.eco-public-layout-motion.eco-public-design-worship_revival_cinema{--eco-motion-bg:#0d0909;--eco-motion-bg-2:#1a1110;--eco-motion-panel:rgba(34,23,20,.77);--eco-muted:#d0bbb0}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-public-event-hero{min-height:900px;background:#090707}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-public-event-hero::before,.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-public-event-hero::after{content:"";position:absolute;left:0;right:0;height:5.5vh;background:#050404;z-index:6}.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-public-event-hero::before{top:0}.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-public-event-hero::after{bottom:0}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-public-hero-overlay{background:linear-gradient(90deg,rgba(9,5,4,.97),rgba(9,5,4,.84) 42%,rgba(9,5,4,.18) 76%),linear-gradient(180deg,transparent 55%,#0d0909)}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-public-hero-content{max-width:1280px;padding-right:47vw}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:clamp(64px,8.2vw,132px);line-height:.9}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-motion-deck{right:2.5vw;width:44vw;height:440px}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-motion-card{width:88%;aspect-ratio:16/9;border-radius:3px;box-shadow:0 34px 90px rgba(0,0,0,.58);animation:ecoIdDrift 11s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-motion-card-1{top:0;right:0}.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-motion-card-2{top:36%;left:-8%;width:70%;animation-delay:-3s}.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-motion-card-3{bottom:-4%;right:9%;width:58%;animation-delay:-5s}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-motion-marquee{background:#0a0706;border-block:1px solid rgba(240,180,92,.22)}
.eco-public-layout-motion.eco-public-design-worship_revival_cinema .eco-gallery-carousel figure{border-radius:2px}

/* Arena Pulse — neon laser grid, hard edges, fast rhythmic cards. */
.eco-public-layout-motion.eco-public-design-worship_arena_pulse{--eco-motion-bg:#10031b;--eco-motion-bg-2:#210538;--eco-motion-panel:rgba(31,6,53,.82);--eco-motion-violet:#a941ff;--eco-motion-pink:#ff35c8;--eco-motion-cyan:#25e8ff;--eco-motion-gold:#fff04f}
.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-public-event-hero{background:linear-gradient(125deg,#07000d,#1a0330 48%,#071729)}
.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-public-hero-pattern{opacity:.95;background-image:linear-gradient(rgba(180,92,255,.17) 1px,transparent 1px),linear-gradient(90deg,rgba(37,232,255,.14) 1px,transparent 1px);background-size:32px 32px;transform:perspective(680px) rotateX(57deg) scale(1.45);transform-origin:center 92%}
.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-public-hero-content{padding-right:40vw}.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-public-hero h1{text-transform:uppercase;font-size:clamp(58px,8.7vw,136px);line-height:.78;max-width:800px;text-shadow:6px 6px 0 rgba(255,53,200,.18)}
.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-motion-deck{right:2vw;width:38vw;height:570px;transform:translateY(-48%) rotate(-4deg)}
.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-motion-card{border-radius:5px;border:2px solid rgba(37,232,255,.34);box-shadow:14px 14px 0 rgba(169,65,255,.18),0 30px 70px rgba(0,0,0,.42);animation:ecoIdBeat 3.8s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-motion-card-2{animation-delay:-1.2s}.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-motion-card-3{animation-delay:-2.4s}
.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-motion-marquee>div{animation-duration:15s}.eco-public-layout-motion.eco-public-design-worship_arena_pulse .eco-feature-card{border-radius:6px}

/* Sacred Light — halo composition, quiet teal/cyan gradients, soft circular media. */
.eco-public-layout-motion.eco-public-design-worship_sacred_light{--eco-motion-bg:#06191a;--eco-motion-bg-2:#0b2928;--eco-motion-panel:rgba(12,45,43,.66);--eco-motion-violet:#90fff0;--eco-motion-pink:#c8fff2;--eco-motion-cyan:#54ded1;--eco-motion-gold:#e8fff5;--eco-muted:#bad9d4}
.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-public-event-hero{background:radial-gradient(circle at 70% 38%,rgba(111,229,216,.35),transparent 24%),radial-gradient(circle at 70% 38%,rgba(255,255,255,.13),transparent 42%),linear-gradient(150deg,#031011,#092321 55%,#0a3532)}
.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-public-hero-content{max-width:760px;padding-right:0}.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-public-hero h1{font-weight:600;letter-spacing:-.045em;line-height:.94}
.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-motion-deck{right:4vw;width:42vw;height:580px}
.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-motion-card{border-radius:50%;aspect-ratio:1;width:58%;border-color:rgba(255,255,255,.32);box-shadow:0 0 80px rgba(111,229,216,.16),0 28px 70px rgba(0,0,0,.24);animation:ecoIdFloatSoft 10s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-motion-card-1{right:0;top:3%}.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-motion-card-2{left:1%;top:38%;width:48%;animation-delay:-3s}.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-motion-card-3{right:7%;bottom:0;width:38%;animation-delay:-6s}
.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-public-section{padding-block:clamp(96px,12vw,170px)}.eco-public-layout-motion.eco-public-design-worship_sacred_light .eco-feature-card{border-radius:42px}

/* Youth Frequency — social collage, hot pink/citrus accents, sticker-like cards. */
.eco-public-layout-motion.eco-public-design-worship_youth_frequency{--eco-motion-bg:#180c22;--eco-motion-bg-2:#30113c;--eco-motion-panel:rgba(50,18,62,.75);--eco-motion-violet:#8d5cff;--eco-motion-pink:#ff54c8;--eco-motion-cyan:#62f5dc;--eco-motion-gold:#f7ff65}
.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-public-event-hero{background:radial-gradient(circle at 16% 20%,rgba(247,255,101,.16),transparent 23%),radial-gradient(circle at 84% 20%,rgba(255,84,200,.28),transparent 31%),linear-gradient(135deg,#100617,#2c0e38 55%,#111d31)}
.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-public-hero-content{max-width:780px;padding-right:34vw}.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-public-hero h1{font-size:clamp(64px,9vw,140px);line-height:.78;text-transform:uppercase;letter-spacing:-.075em}
.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-motion-deck{right:1vw;width:38vw;height:590px;transform:translateY(-48%) rotate(5deg)}
.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-motion-card{border-radius:18px;border:4px solid #fff;box-shadow:12px 16px 0 rgba(247,255,101,.24),0 30px 70px rgba(0,0,0,.32);animation:ecoIdSwing 5.2s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-motion-card-1{right:6%;top:1%;transform:rotate(8deg)}.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-motion-card-2{left:0;top:34%;transform:rotate(-9deg);animation-delay:-1.7s}.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-motion-card-3{right:2%;bottom:1%;transform:rotate(5deg);animation-delay:-3.1s}
.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-feature-card:nth-child(odd){transform:rotate(-1.5deg)}.eco-public-layout-motion.eco-public-design-worship_youth_frequency .eco-feature-card:nth-child(even){transform:rotate(1.5deg)}

/* Festival Sky — panoramic sunset, low horizon cards, wide breathing room. */
.eco-public-layout-motion.eco-public-design-worship_festival_sky{--eco-motion-bg:#172015;--eco-motion-bg-2:#2b321c;--eco-motion-panel:rgba(42,48,25,.73);--eco-motion-violet:#9fb96c;--eco-motion-pink:#ff9f68;--eco-motion-cyan:#82d6df;--eco-motion-gold:#ffe27a;--eco-muted:#d4d3b8}
.eco-public-layout-motion.eco-public-design-worship_festival_sky .eco-public-event-hero{background:linear-gradient(180deg,#19344c 0%,#e4966c 47%,#392f1b 78%,#172015 100%)}
.eco-public-layout-motion.eco-public-design-worship_festival_sky .eco-public-hero-overlay{background:linear-gradient(90deg,rgba(16,24,20,.84),rgba(16,24,20,.54) 44%,rgba(16,24,20,.05) 76%),linear-gradient(180deg,transparent 56%,#172015)}
.eco-public-layout-motion.eco-public-design-worship_festival_sky .eco-public-hero-content{padding-right:0;max-width:900px;padding-bottom:300px}.eco-public-layout-motion.eco-public-design-worship_festival_sky .eco-public-hero h1{font-size:clamp(62px,8.4vw,132px);line-height:.86}
.eco-public-layout-motion.eco-public-design-worship_festival_sky .eco-motion-deck{top:auto;right:4vw;left:4vw;bottom:48px;width:auto;height:220px;transform:none;display:flex;gap:18px;align-items:flex-end}.eco-public-layout-motion.eco-public-design-worship_festival_sky .eco-motion-card{position:relative;inset:auto!important;flex:1;width:auto!important;aspect-ratio:16/9;border-radius:24px;animation:ecoIdRise 9s ease-in-out infinite;transform:none!important}.eco-public-layout-motion.eco-public-design-worship_festival_sky .eco-motion-card-2{animation-delay:-3s}.eco-public-layout-motion.eco-public-design-worship_festival_sky .eco-motion-card-3{animation-delay:-6s}

/* -------------------------------------------------------------------------
 * CONFERENCE / SUMMIT
 * ---------------------------------------------------------------------- */

/* Momentum — strong cobalt split-screen with stacked speaker panels. */
.eco-public-layout-motion.eco-public-design-conference_momentum{--eco-motion-bg:#06142d;--eco-motion-bg-2:#0a2240;--eco-motion-panel:rgba(10,34,67,.76);--eco-motion-cyan:#49c8e8;--eco-motion-violet:#5c75ff;--eco-motion-gold:#e7b85f}
.eco-public-layout-motion.eco-public-design-conference_momentum .eco-public-event-hero{background:linear-gradient(105deg,#020916 0 54%,#0d3470 54% 100%)}
.eco-public-layout-motion.eco-public-design-conference_momentum .eco-public-hero-overlay{background:linear-gradient(90deg,rgba(2,8,20,.96) 0 50%,rgba(2,8,20,.12) 78%),linear-gradient(180deg,transparent 58%,#06142d)}
.eco-public-layout-motion.eco-public-design-conference_momentum .eco-public-hero-content{padding-right:48vw}.eco-public-layout-motion.eco-public-design-conference_momentum .eco-public-hero h1{text-transform:uppercase;font-size:clamp(62px,8vw,124px);line-height:.82}
.eco-public-layout-motion.eco-public-design-conference_momentum .eco-motion-deck{right:4vw;width:39vw;height:610px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:14px;transform:translateY(-47%)}.eco-public-layout-motion.eco-public-design-conference_momentum .eco-motion-card{position:relative;inset:auto!important;width:auto!important;aspect-ratio:auto;border-radius:14px;animation:ecoIdSlideRail 8s ease-in-out infinite;transform:none!important}.eco-public-layout-motion.eco-public-design-conference_momentum .eco-motion-card-1{grid-row:1/3}.eco-public-layout-motion.eco-public-design-conference_momentum .eco-motion-card-2{grid-column:2}.eco-public-layout-motion.eco-public-design-conference_momentum .eco-motion-card-3{grid-column:2;animation-delay:-4s}

/* Vision Grid — structured modular grid with moving scan lines. */
.eco-public-layout-motion.eco-public-design-conference_vision_grid{--eco-motion-bg:#041326;--eco-motion-bg-2:#071d37;--eco-motion-panel:rgba(8,31,60,.79);--eco-motion-cyan:#65a5ff;--eco-motion-violet:#325dff;--eco-motion-gold:#a5ddff}
.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-public-event-hero{background-color:#041326;background-image:linear-gradient(rgba(101,165,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(101,165,255,.12) 1px,transparent 1px),linear-gradient(135deg,#031022,#0b2a50);background-size:54px 54px,54px 54px,auto;animation:ecoIdScan 12s linear infinite}
.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-public-hero-content{padding-right:44vw;max-width:1320px}.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-public-hero h1{font-size:clamp(58px,7.7vw,120px);text-transform:uppercase;line-height:.86}
.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-motion-deck{right:4vw;width:39vw;height:500px;display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:1fr 1fr;gap:10px;transform:translateY(-45%)}.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-motion-card{position:relative;inset:auto!important;width:auto!important;aspect-ratio:auto;border-radius:0;animation:none!important;transform:none!important}.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-motion-card-1{grid-row:1/3}.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-motion-card-2,.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-motion-card-3{grid-column:2}
.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-feature-card,.eco-public-layout-motion.eco-public-design-conference_vision_grid .eco-timeline article{border-radius:0}

/* Future Forum — orbital technology layout with circular cards. */
.eco-public-layout-motion.eco-public-design-conference_future_forum{--eco-motion-bg:#031b20;--eco-motion-bg-2:#063138;--eco-motion-panel:rgba(4,49,55,.76);--eco-motion-cyan:#5bf2d1;--eco-motion-violet:#68a7ff;--eco-motion-pink:#ae62ff;--eco-motion-gold:#d2ff7c}
.eco-public-layout-motion.eco-public-design-conference_future_forum .eco-public-event-hero{background:radial-gradient(circle at 73% 43%,rgba(91,242,209,.22),transparent 23%),radial-gradient(circle at 73% 43%,transparent 0 30%,rgba(91,242,209,.12) 30.3% 30.7%,transparent 31% 43%,rgba(104,167,255,.10) 43.3% 43.7%,transparent 44%),linear-gradient(145deg,#011013,#05343b)}
.eco-public-layout-motion.eco-public-design-conference_future_forum .eco-public-hero-content{padding-right:44vw}.eco-public-layout-motion.eco-public-design-conference_future_forum .eco-public-hero h1{font-size:clamp(62px,8.2vw,128px);line-height:.82}
.eco-public-layout-motion.eco-public-design-conference_future_forum .eco-motion-deck{right:4vw;width:40vw;height:570px}.eco-public-layout-motion.eco-public-design-conference_future_forum .eco-motion-card{border-radius:50%;aspect-ratio:1;width:48%;animation:ecoIdOrbit 9s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-conference_future_forum .eco-motion-card-1{right:2%;top:2%}.eco-public-layout-motion.eco-public-design-conference_future_forum .eco-motion-card-2{left:4%;top:39%;width:43%;animation-delay:-3s}.eco-public-layout-motion.eco-public-design-conference_future_forum .eco-motion-card-3{right:8%;bottom:1%;width:34%;animation-delay:-6s}

/* Leadership Cinema — navy/gold film strip, executive storytelling. */
.eco-public-layout-motion.eco-public-design-conference_leadership_cinema{--eco-motion-bg:#0c1018;--eco-motion-bg-2:#171a22;--eco-motion-panel:rgba(27,29,37,.82);--eco-motion-gold:#d7b16b;--eco-motion-cyan:#9da9bd;--eco-muted:#bec1c8}
.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-public-event-hero{background:linear-gradient(110deg,#07090e 0 61%,#211b12 61% 100%)}
.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-public-hero-content{padding-right:40vw}.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;max-width:790px}
.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-motion-deck{right:2vw;width:36vw;height:600px;transform:translateY(-45%)}.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-motion-card{width:82%;aspect-ratio:3/2;border-radius:0;border:7px solid #111;outline:1px solid rgba(215,177,107,.25);animation:ecoIdFloatSoft 11s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-motion-card-1{right:0;top:4%}.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-motion-card-2{left:-5%;top:38%;animation-delay:-4s}.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-motion-card-3{right:7%;bottom:0;width:62%;animation-delay:-7s}
.eco-public-layout-motion.eco-public-design-conference_leadership_cinema .eco-motion-marquee{background:#0a0b0f;border-color:rgba(215,177,107,.2)}

/* Ideas Lab — light creative canvas with pinned-photo motion and cobalt/coral. */
.eco-public-layout-motion.eco-public-design-conference_ideas_lab{--eco-motion-bg:#f4f0e8;--eco-motion-bg-2:#fffaf2;--eco-motion-panel:rgba(255,255,255,.84);--eco-ink:#1d2430;--eco-muted:#69707b;--eco-motion-violet:#3159ff;--eco-motion-pink:#ff6e5b;--eco-motion-cyan:#30b6b0;--eco-motion-gold:#f4c84a}
.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-header{background:linear-gradient(180deg,rgba(250,247,241,.96),rgba(250,247,241,.75),transparent)}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-brand,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-header nav a{color:#19202a}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-portal-link{color:#19202a;background:rgba(255,255,255,.7);border-color:rgba(25,32,42,.14)}
.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-event-hero{background:linear-gradient(130deg,#fffaf2 0 58%,#e5eaff 58% 100%)}
.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-hero-overlay{background:radial-gradient(circle at 16% 26%,rgba(255,110,91,.13),transparent 26%),radial-gradient(circle at 82% 68%,rgba(49,89,255,.12),transparent 27%)}
.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-hero-content{padding-right:clamp(330px,40vw,500px)}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-hero h1{color:#18202a;font-size:clamp(58px,7.6vw,118px);text-shadow:none}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-lead{color:#5f6672}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-meta span{color:#1d2430;background:rgba(255,255,255,.72);border-color:rgba(29,36,48,.12)}
.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-motion-deck{right:3vw;width:40vw;height:570px;transform:translateY(-46%) rotate(2deg)}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-motion-card{border:10px solid #fff;border-radius:2px;box-shadow:0 25px 55px rgba(44,54,75,.16);animation:ecoIdSwing 7s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-motion-card-1{right:1%;top:2%;transform:rotate(7deg)}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-motion-card-2{left:0;top:34%;transform:rotate(-8deg);animation-delay:-2.2s}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-motion-card-3{right:10%;bottom:0;transform:rotate(4deg);animation-delay:-4.5s}
.eco-public-layout-motion.eco-public-design-conference_ideas_lab #eco-event-content,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-section{background:#f4f0e8;color:#1d2430}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-section:nth-child(even),.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-soft{background:#fffaf2}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-section-head h2,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-split h2,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-cta h2{color:#1d2430}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-feature-card,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-person-card,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-detail-grid article,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-media-card,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-faq-list details{background:#fff;color:#1d2430;border-color:rgba(29,36,48,.11);box-shadow:0 18px 48px rgba(44,54,75,.08)}

/* Ideas Lab keeps its photo collage in the hero without squeezing event details. */
@media(max-width:1100px){.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-hero-content{width:100%;max-width:min(100%,720px)!important;margin-left:0;margin-right:0;padding-right:0!important}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-meta,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-countdown,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-actions{width:100%;max-width:100%!important}.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-motion-deck{width:min(48vw,400px);right:-13vw;opacity:.20}}

/* Global Exchange — world-stage split with emerald/azure motion bands. */
.eco-public-layout-motion.eco-public-design-conference_global_exchange{--eco-motion-bg:#05221d;--eco-motion-bg-2:#073832;--eco-motion-panel:rgba(8,51,44,.75);--eco-motion-cyan:#51d7d2;--eco-motion-violet:#5b8fff;--eco-motion-gold:#dfc773}
.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-public-event-hero{background:radial-gradient(circle at 78% 50%,transparent 0 19%,rgba(81,215,210,.13) 19.4% 19.8%,transparent 20% 30%,rgba(91,143,255,.09) 30.4% 30.8%,transparent 31%),linear-gradient(120deg,#031611,#0a3b35)}
.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-public-hero-content{max-width:1260px;padding-right:43vw}.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-public-hero h1{font-size:clamp(60px,8.1vw,126px)}
.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-motion-deck{right:1vw;width:42vw;height:610px}.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-motion-card{border-radius:80px 8px 80px 8px;width:72%;animation:ecoIdTilt 10s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-motion-card-1{right:0;top:2%}.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-motion-card-2{left:0;top:35%;animation-delay:-3.4s}.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-motion-card-3{right:7%;bottom:0;width:56%;animation-delay:-6.8s}
.eco-public-layout-motion.eco-public-design-conference_global_exchange .eco-motion-marquee{background:linear-gradient(90deg,#06251e,#0b4b44,#06251e)}

/* -------------------------------------------------------------------------
 * CORPORATE EVENT
 * ---------------------------------------------------------------------- */

/* Showcase Motion — teal presentation wall with clean horizontal storytelling. */
.eco-public-layout-motion.eco-public-design-corporate_showcase_motion{--eco-motion-bg:#03151e;--eco-motion-bg-2:#062632;--eco-motion-panel:rgba(7,35,47,.76);--eco-motion-cyan:#6ed8ff;--eco-motion-violet:#596dff;--eco-motion-pink:#2dd4bf}
.eco-public-layout-motion.eco-public-design-corporate_showcase_motion .eco-public-event-hero{background:linear-gradient(110deg,#020c11 0 56%,#073746 56% 100%)}
.eco-public-layout-motion.eco-public-design-corporate_showcase_motion .eco-public-hero-content{padding-right:45vw}.eco-public-layout-motion.eco-public-design-corporate_showcase_motion .eco-public-hero h1{text-transform:uppercase;font-size:clamp(56px,7.7vw,118px);line-height:.84}
.eco-public-layout-motion.eco-public-design-corporate_showcase_motion .eco-motion-deck{right:3vw;width:40vw;height:500px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:12px;transform:translateY(-45%)}.eco-public-layout-motion.eco-public-design-corporate_showcase_motion .eco-motion-card{position:relative;inset:auto!important;width:auto!important;aspect-ratio:auto;border-radius:10px;animation:none!important;transform:none!important}.eco-public-layout-motion.eco-public-design-corporate_showcase_motion .eco-motion-card-1{grid-column:1/3}.eco-public-layout-motion.eco-public-design-corporate_showcase_motion .eco-motion-card-2,.eco-public-layout-motion.eco-public-design-corporate_showcase_motion .eco-motion-card-3{grid-row:2}

/* Launch Film — black/red product cinema with one dominant hero frame. */
.eco-public-layout-motion.eco-public-design-corporate_launch_film{--eco-motion-bg:#090b0e;--eco-motion-bg-2:#15171b;--eco-motion-panel:rgba(24,26,31,.80);--eco-motion-pink:#ff4d3f;--eco-motion-cyan:#7bbaff;--eco-motion-gold:#ffb76a}
.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-public-event-hero{background:linear-gradient(135deg,#050608 0%,#12151a 58%,#290c0a 100%)}
.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-public-hero-content{padding-right:51vw}.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-public-hero h1{text-transform:uppercase;font-size:clamp(60px,8vw,124px);line-height:.82}
.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-motion-deck{right:2vw;width:48vw;height:520px}.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-motion-card{border-radius:4px;animation:none!important}.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-motion-card-1{right:0;top:7%;width:94%;aspect-ratio:16/9;box-shadow:0 36px 90px rgba(0,0,0,.55)}.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-motion-card-2{left:2%;bottom:0;top:auto;width:35%;aspect-ratio:1}.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-motion-card-3{right:2%;bottom:0;width:35%;aspect-ratio:1}
.eco-public-layout-motion.eco-public-design-corporate_launch_film .eco-motion-marquee{background:#0b0b0d;border-color:rgba(255,77,63,.24)}

/* Executive Cinema — monochrome executive minimalism with gold linework. */
.eco-public-layout-motion.eco-public-design-corporate_executive_cinema{--eco-motion-bg:#15130f;--eco-motion-bg-2:#242019;--eco-motion-panel:rgba(38,34,27,.82);--eco-motion-gold:#d7b16b;--eco-motion-cyan:#c9c2b6;--eco-muted:#c9c2b6}
.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-public-event-hero{background:linear-gradient(90deg,#0e0d0b 0 49%,#242019 49% 100%)}
.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-public-hero-content{padding-right:46vw}.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:.9;font-size:clamp(58px,7.2vw,110px)}
.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-motion-deck{right:5vw;width:35vw;height:600px}.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-motion-card{width:74%;aspect-ratio:4/5;border-radius:0;box-shadow:none;border:1px solid rgba(215,177,107,.34);animation:ecoIdFloatSoft 12s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-motion-card-1{right:0;top:0}.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-motion-card-2{left:0;top:31%;width:56%;animation-delay:-4s}.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-motion-card-3{right:2%;bottom:0;width:48%;animation-delay:-8s}
.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-feature-card,.eco-public-layout-motion.eco-public-design-corporate_executive_cinema .eco-timeline article{border-radius:2px}

/* Innovation Pulse — electric circuit system, cyan/lime geometry. */
.eco-public-layout-motion.eco-public-design-corporate_innovation_pulse{--eco-motion-bg:#04141a;--eco-motion-bg-2:#07313a;--eco-motion-panel:rgba(6,48,57,.78);--eco-motion-cyan:#44e8ff;--eco-motion-violet:#8d74ff;--eco-motion-gold:#c6ff62;--eco-motion-pink:#5df0c2}
.eco-public-layout-motion.eco-public-design-corporate_innovation_pulse .eco-public-event-hero{background-color:#03141a;background-image:linear-gradient(90deg,rgba(68,232,255,.12) 1px,transparent 1px),linear-gradient(rgba(198,255,98,.08) 1px,transparent 1px),linear-gradient(135deg,#021116,#07303b);background-size:44px 44px,44px 44px,auto}
.eco-public-layout-motion.eco-public-design-corporate_innovation_pulse .eco-public-hero-content{padding-right:42vw}.eco-public-layout-motion.eco-public-design-corporate_innovation_pulse .eco-public-hero h1{text-transform:uppercase;max-width:820px;font-size:clamp(58px,8vw,124px)}
.eco-public-layout-motion.eco-public-design-corporate_innovation_pulse .eco-motion-deck{right:2vw;width:40vw;height:560px;transform:translateY(-46%) rotate(-2deg)}.eco-public-layout-motion.eco-public-design-corporate_innovation_pulse .eco-motion-card{border-radius:0;clip-path:polygon(8% 0,100% 0,100% 84%,92% 100%,0 100%,0 16%);animation:ecoIdBeat 4.5s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-corporate_innovation_pulse .eco-motion-card-2{animation-delay:-1.5s}.eco-public-layout-motion.eco-public-design-corporate_innovation_pulse .eco-motion-card-3{animation-delay:-3s}

/* Brand Story — warm editorial light mode with full-bleed magazine frames. */
.eco-public-layout-motion.eco-public-design-corporate_brand_story{--eco-motion-bg:#f2eee6;--eco-motion-bg-2:#fffaf2;--eco-motion-panel:rgba(255,255,255,.82);--eco-ink:#221b18;--eco-muted:#746963;--eco-motion-pink:#b9503e;--eco-motion-gold:#ca9a57;--eco-motion-cyan:#748e88}
.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-header{background:linear-gradient(180deg,rgba(248,244,236,.98),rgba(248,244,236,.72),transparent)}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-brand,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-header nav a{color:#211b18}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-portal-link{color:#211b18;background:rgba(255,255,255,.76);border-color:rgba(33,27,24,.12)}
.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-event-hero{background:linear-gradient(90deg,#f8f4ec 0 58%,#b9503e 58% 100%)}
.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-hero-overlay{background:linear-gradient(90deg,rgba(248,244,236,.10),rgba(248,244,236,.20) 56%,rgba(65,21,16,.16) 56%)}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-hero-content{padding-right:47vw}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-hero h1{color:#211b18;font-family:Georgia,'Times New Roman',serif;font-weight:500;text-shadow:none;font-size:clamp(58px,7.4vw,114px)}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-lead{color:#655b55}
.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-motion-deck{right:3vw;width:40vw;height:580px}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-motion-card{border:12px solid #f8f4ec;border-radius:0;box-shadow:0 30px 60px rgba(54,28,21,.18);animation:ecoIdFloatSoft 10s ease-in-out infinite}
.eco-public-layout-motion.eco-public-design-corporate_brand_story #eco-event-content,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-section{background:#f2eee6;color:#211b18}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-section:nth-child(even),.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-soft{background:#fffaf2}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-section-head h2,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-split h2,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-cta h2{color:#211b18;font-family:Georgia,'Times New Roman',serif;font-weight:500}.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-feature-card,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-person-card,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-detail-grid article,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-media-card,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-faq-list details{background:#fff;color:#211b18;border-color:rgba(33,27,24,.10);box-shadow:0 20px 54px rgba(54,28,21,.08)}

/* Celebration Night — midnight/champagne, bokeh orbs and elevated cards. */
.eco-public-layout-motion.eco-public-design-corporate_celebration_night{--eco-motion-bg:#0a0b17;--eco-motion-bg-2:#18162c;--eco-motion-panel:rgba(25,23,47,.76);--eco-motion-violet:#7764ff;--eco-motion-pink:#e97fc2;--eco-motion-cyan:#8ac9ff;--eco-motion-gold:#ffd98d}
.eco-public-layout-motion.eco-public-design-corporate_celebration_night .eco-public-event-hero{background:radial-gradient(circle at 15% 25%,rgba(255,217,141,.18),transparent 10%),radial-gradient(circle at 80% 18%,rgba(233,127,194,.18),transparent 12%),radial-gradient(circle at 74% 66%,rgba(119,100,255,.22),transparent 22%),linear-gradient(145deg,#060711,#17152a 58%,#251527)}
.eco-public-layout-motion.eco-public-design-corporate_celebration_night .eco-public-hero-content{max-width:1000px;padding-right:34vw}.eco-public-layout-motion.eco-public-design-corporate_celebration_night .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-style:italic;line-height:.9}
.eco-public-layout-motion.eco-public-design-corporate_celebration_night .eco-motion-deck{right:2vw;width:35vw;height:600px}.eco-public-layout-motion.eco-public-design-corporate_celebration_night .eco-motion-card{border-radius:50% 50% 18px 18px;animation:ecoIdRise 8s ease-in-out infinite;box-shadow:0 30px 80px rgba(0,0,0,.38),0 0 45px rgba(255,217,141,.12)}.eco-public-layout-motion.eco-public-design-corporate_celebration_night .eco-motion-card-2{animation-delay:-2.7s}.eco-public-layout-motion.eco-public-design-corporate_celebration_night .eco-motion-card-3{animation-delay:-5.4s}

/* -------------------------------------------------------------------------
 * WEDDING / SOCIAL
 * ---------------------------------------------------------------------- */

/* Ever After Motion — rose scrapbook with overlapping memory cards. */
.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion{--eco-motion-bg:#21131a;--eco-motion-bg-2:#341c27;--eco-motion-panel:rgba(63,34,47,.72);--eco-motion-pink:#d98da2;--eco-motion-gold:#efc3a8;--eco-motion-violet:#aa7ba7;--eco-motion-cyan:#d6b7a7;--eco-muted:#d4bec4}
.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion .eco-public-event-hero{background:linear-gradient(135deg,#1a0d13,#452331 58%,#2c1721)}
.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion .eco-public-hero-content{padding-right:42vw}.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-style:italic;max-width:820px}
.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion .eco-motion-deck{right:2vw;width:39vw;height:600px;transform:translateY(-46%) rotate(3deg)}.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion .eco-motion-card{border:12px solid #f7eee9;border-radius:2px;box-shadow:0 30px 70px rgba(0,0,0,.32);animation:ecoIdSwing 8s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion .eco-motion-card-1{right:0;top:1%;transform:rotate(6deg)}.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion .eco-motion-card-2{left:0;top:37%;transform:rotate(-8deg);animation-delay:-2.7s}.eco-public-layout-motion.eco-public-design-wedding_ever_after_motion .eco-motion-card-3{right:7%;bottom:0;transform:rotate(4deg);animation-delay:-5.2s}

/* Velvet Film — deep burgundy film frames and slow dramatic motion. */
.eco-public-layout-motion.eco-public-design-wedding_velvet_film{--eco-motion-bg:#1d0c13;--eco-motion-bg-2:#351421;--eco-motion-panel:rgba(57,22,36,.78);--eco-motion-pink:#e7a7b7;--eco-motion-gold:#d9b783;--eco-motion-violet:#9d6687;--eco-muted:#d5bfc5}
.eco-public-layout-motion.eco-public-design-wedding_velvet_film .eco-public-event-hero{background:linear-gradient(110deg,#12070b 0 62%,#48182b 62% 100%)}
.eco-public-layout-motion.eco-public-design-wedding_velvet_film .eco-public-hero-content{padding-right:45vw}.eco-public-layout-motion.eco-public-design-wedding_velvet_film .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:500;line-height:.88}
.eco-public-layout-motion.eco-public-design-wedding_velvet_film .eco-motion-deck{right:3vw;width:40vw;height:530px}.eco-public-layout-motion.eco-public-design-wedding_velvet_film .eco-motion-card{width:88%;aspect-ratio:16/10;border-radius:0;border:9px solid #160b10;outline:1px solid rgba(231,167,183,.28);animation:ecoIdDrift 12s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-wedding_velvet_film .eco-motion-card-2{width:64%;top:42%;left:-4%;animation-delay:-4s}.eco-public-layout-motion.eco-public-design-wedding_velvet_film .eco-motion-card-3{width:54%;bottom:-3%;right:5%;animation-delay:-8s}

/* Riviera Motion — sunlit coast, airy panorama and wave-like card rhythm. */
.eco-public-layout-motion.eco-public-design-wedding_riviera_motion{--eco-motion-bg:#0d3436;--eco-motion-bg-2:#17565a;--eco-motion-panel:rgba(26,84,87,.65);--eco-motion-cyan:#8ee8e2;--eco-motion-gold:#eac985;--eco-motion-pink:#f5b8aa;--eco-muted:#d5ece8}
.eco-public-layout-motion.eco-public-design-wedding_riviera_motion .eco-public-event-hero{background:linear-gradient(180deg,#5cabb4 0%,#d9dfc9 46%,#d4ab72 67%,#0d3436 100%)}
.eco-public-layout-motion.eco-public-design-wedding_riviera_motion .eco-public-hero-overlay{background:linear-gradient(90deg,rgba(12,45,47,.80),rgba(12,45,47,.42) 46%,rgba(12,45,47,.05) 76%),linear-gradient(180deg,transparent 55%,#0d3436)}
.eco-public-layout-motion.eco-public-design-wedding_riviera_motion .eco-public-hero-content{padding-bottom:300px;padding-right:0;max-width:900px}.eco-public-layout-motion.eco-public-design-wedding_riviera_motion .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-style:italic}
.eco-public-layout-motion.eco-public-design-wedding_riviera_motion .eco-motion-deck{top:auto;right:4vw;left:4vw;bottom:45px;width:auto;height:220px;transform:none;display:flex;gap:16px}.eco-public-layout-motion.eco-public-design-wedding_riviera_motion .eco-motion-card{position:relative;inset:auto!important;flex:1;width:auto!important;aspect-ratio:16/10;border-radius:999px 999px 28px 28px;animation:ecoIdRise 10s ease-in-out infinite;transform:none!important}.eco-public-layout-motion.eco-public-design-wedding_riviera_motion .eco-motion-card-2{animation-delay:-3.3s}.eco-public-layout-motion.eco-public-design-wedding_riviera_motion .eco-motion-card-3{animation-delay:-6.6s}

/* Black Tie Cinema — formal black/ivory framing, centered title, symmetrical deck. */
.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema{--eco-motion-bg:#11100f;--eco-motion-bg-2:#1d1b18;--eco-motion-panel:rgba(31,29,26,.80);--eco-motion-gold:#e7d7b5;--eco-motion-cyan:#d5d1c7;--eco-muted:#c9c3b7}
.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-event-hero{background:linear-gradient(90deg,#0a0908 0 18%,#191714 18% 82%,#0a0908 82%)}
.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-hero-content{max-width:960px;margin:auto;text-align:center;padding-inline:18vw}.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.035em;margin-inline:auto}.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-lead,.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-meta{margin-inline:auto}
.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-motion-deck{inset:0;width:100%;height:100%;transform:none;top:0;right:0}.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-motion-card{width:min(18vw,250px);aspect-ratio:3/4;border-radius:0;border:1px solid rgba(231,215,181,.32);box-shadow:0 34px 80px rgba(0,0,0,.36);animation:ecoIdFloatSoft 11s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-motion-card-1{left:3%;top:23%;right:auto}.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-motion-card-2{right:3%;left:auto;top:23%;animation-delay:-3.8s}.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-motion-card-3{display:none}
.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-motion-marquee{background:#0b0a09;border-color:rgba(231,215,181,.18)}

/* Wildflower Story — airy botanical light theme with organic shapes. */
.eco-public-layout-motion.eco-public-design-wedding_wildflower_story{--eco-motion-bg:#eef1e7;--eco-motion-bg-2:#f9f4ec;--eco-motion-panel:rgba(255,255,255,.78);--eco-ink:#26352a;--eco-muted:#69766c;--eco-motion-pink:#dda5b1;--eco-motion-gold:#e3c37c;--eco-motion-cyan:#8bbba2;--eco-motion-violet:#b4a4d7}
.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-header{background:linear-gradient(180deg,rgba(244,246,238,.98),rgba(244,246,238,.72),transparent)}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-brand,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-header nav a{color:#26352a}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-portal-link{color:#26352a;background:rgba(255,255,255,.7);border-color:rgba(38,53,42,.12)}
.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-event-hero{background:radial-gradient(ellipse at 75% 24%,rgba(221,165,177,.35),transparent 28%),radial-gradient(ellipse at 84% 72%,rgba(139,187,162,.28),transparent 31%),linear-gradient(135deg,#f7f2e9,#e9f0e5)}
.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-hero-overlay{background:linear-gradient(90deg,rgba(247,242,233,.78),rgba(247,242,233,.38) 48%,transparent)}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-hero-content{padding-right:43vw}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-hero h1{color:#26352a;text-shadow:none;font-family:Georgia,'Times New Roman',serif;font-weight:500;font-style:italic}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-lead{color:#667267}
.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-motion-deck{right:2vw;width:41vw;height:580px}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-motion-card{border-radius:48% 52% 42% 58% / 52% 38% 62% 48%;border:8px solid rgba(255,255,255,.78);box-shadow:0 24px 54px rgba(70,83,66,.16);animation:ecoIdFloatSoft 10s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-motion-card-2{animation-delay:-3.3s}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-motion-card-3{animation-delay:-6.6s}
.eco-public-layout-motion.eco-public-design-wedding_wildflower_story #eco-event-content,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-section{background:#eef1e7;color:#26352a}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-section:nth-child(even),.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-soft{background:#f9f4ec}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-section-head h2,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-split h2,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-cta h2{color:#26352a;font-family:Georgia,'Times New Roman',serif;font-weight:500}.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-feature-card,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-person-card,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-detail-grid article,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-media-card,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-faq-list details{background:rgba(255,255,255,.78);color:#26352a;border-color:rgba(38,53,42,.10);box-shadow:0 18px 46px rgba(70,83,66,.08)}

/* City Lights — urban neon, right-aligned hero and vertical photo towers. */
.eco-public-layout-motion.eco-public-design-wedding_city_lights{--eco-motion-bg:#12091a;--eco-motion-bg-2:#24112d;--eco-motion-panel:rgba(39,18,48,.78);--eco-motion-pink:#ff76bd;--eco-motion-violet:#8f6cff;--eco-motion-cyan:#5acfff;--eco-motion-gold:#ffc568}
.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-public-event-hero{background:linear-gradient(120deg,#08040d 0%,#21102a 57%,#092538 100%)}
.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-public-hero-content{margin-left:auto;text-align:right;max-width:900px;padding-left:38vw;padding-right:0}.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-public-hero h1{margin-left:auto;font-family:Georgia,'Times New Roman',serif;font-weight:500;font-style:italic}.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-public-lead,.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-public-meta{margin-left:auto}
.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-motion-deck{left:2vw;right:auto;width:36vw;height:620px}.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-motion-card{width:52%;aspect-ratio:2/3;border-radius:8px;box-shadow:0 34px 80px rgba(0,0,0,.42),0 0 40px rgba(255,118,189,.10);animation:ecoIdRise 7s ease-in-out infinite}.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-motion-card-1{left:0;top:0;right:auto}.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-motion-card-2{left:43%;top:23%;animation-delay:-2.3s}.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-motion-card-3{left:8%;bottom:0;width:42%;animation-delay:-4.7s}
.eco-public-layout-motion.eco-public-design-wedding_city_lights .eco-motion-marquee{background:linear-gradient(90deg,#130819,#26102d,#071e2b,#130819)}

/* -------------------------------------------------------------------------
 * RESPONSIVE NORMALIZATION
 * Distinct compositions collapse safely without hiding content.
 * ---------------------------------------------------------------------- */
@media(max-width:1100px){
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-public-hero-content{padding-right:31vw;padding-left:0;text-align:left;margin-left:0;margin-right:0}
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-public-hero h1{margin-left:0;margin-right:0}
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-public-lead,.eco-public-layout-motion[class*="eco-public-design-"] .eco-public-meta{margin-left:0;margin-right:0}
  .eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-hero-content{padding-inline:0;text-align:left;margin-left:clamp(24px,5vw,96px);margin-right:0}
  .eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-hero-content{padding-inline:22vw;text-align:center;margin-inline:auto}
  .eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-hero h1,.eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-lead,.eco-public-layout-motion.eco-public-design-radiant_motion .eco-public-meta{margin-left:0;margin-right:0}
  .eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-hero h1,.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-lead,.eco-public-layout-motion.eco-public-design-wedding_black_tie_cinema .eco-public-meta{margin-inline:auto}
}
@media(max-width:820px){
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-public-header{background:color-mix(in srgb,var(--eco-motion-bg) 92%,transparent)}
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-public-hero-content{padding:90px 0 84px!important;max-width:none!important;text-align:left!important;margin:0!important}
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-public-hero h1,.eco-public-layout-motion[class*="eco-public-design-"] .eco-public-lead,.eco-public-layout-motion[class*="eco-public-design-"] .eco-public-meta{margin-left:0!important;margin-right:0!important}
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-motion-deck{opacity:.38;display:block;position:absolute;right:-23vw;left:auto;top:48%;bottom:auto;width:64vw;height:420px;transform:translateY(-48%) rotate(0)}
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-motion-card{position:absolute!important;display:block!important;width:66%!important;aspect-ratio:4/3!important;border-radius:18px!important;border-width:1px!important;clip-path:none!important;animation:ecoIdFloatSoft 9s ease-in-out infinite!important;transform:none!important;inset:auto!important}
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-motion-card-1{right:0!important;top:0!important}.eco-public-layout-motion[class*="eco-public-design-"] .eco-motion-card-2{left:0!important;top:34%!important}.eco-public-layout-motion[class*="eco-public-design-"] .eco-motion-card-3{right:6%!important;bottom:0!important;width:56%!important}
  .eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-brand,.eco-public-layout-motion.eco-public-design-conference_ideas_lab .eco-public-header nav a,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-brand,.eco-public-layout-motion.eco-public-design-corporate_brand_story .eco-public-header nav a,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-brand,.eco-public-layout-motion.eco-public-design-wedding_wildflower_story .eco-public-header nav a{color:#26312c}
}
@media(max-width:560px){
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-motion-deck{display:none}
}
@media(prefers-reduced-motion:reduce){
  .eco-public-layout-motion[class*="eco-public-design-"] .eco-motion-card{animation:none!important}
}


/* -------------------------------------------------------------------------
 * v0.5.4 — semantic surface + contrast guardrails.
 * Template identity still controls composition/color. These tokens make text,
 * cards and controls inherit from the surface they are actually sitting on,
 * including when tenants replace starter photography.
 * ---------------------------------------------------------------------- */
.eco-public-layout-motion.eco-motion-surface-dark{
  --eco-surface-text:#f7f8ff;--eco-surface-muted:#c2c8d8;--eco-surface-card-text:#ffffff;--eco-surface-card-muted:#bec6d7;
  --eco-surface-card-bg:rgba(15,28,58,.82);--eco-surface-field-bg:#071126;--eco-surface-field-text:#ffffff;--eco-surface-line:rgba(255,255,255,.14);
}
.eco-public-layout-motion.eco-motion-surface-light{
  --eco-surface-text:var(--eco-ink,#25211e);--eco-surface-muted:var(--eco-muted,#6f6b66);--eco-surface-card-text:var(--eco-ink,#25211e);--eco-surface-card-muted:var(--eco-muted,#6f6b66);
  --eco-surface-card-bg:rgba(255,255,255,.86);--eco-surface-field-bg:#ffffff;--eco-surface-field-text:var(--eco-ink,#25211e);--eco-surface-line:rgba(35,31,28,.14);
}
.eco-public-layout-motion #eco-event-content .eco-public-section{color:var(--eco-surface-text)}
.eco-public-layout-motion #eco-event-content .eco-public-section-head h2,
.eco-public-layout-motion #eco-event-content .eco-public-split h2,
.eco-public-layout-motion #eco-event-content .eco-form-layout h2,
.eco-public-layout-motion #eco-event-content .eco-faq-wrap h2,
.eco-public-layout-motion #eco-event-content .eco-public-cta h2{color:var(--eco-surface-text)}
.eco-public-layout-motion #eco-event-content .eco-public-section-head>p,
.eco-public-layout-motion #eco-event-content .eco-public-richtext,
.eco-public-layout-motion #eco-event-content .eco-form-layout>div>p{color:var(--eco-surface-muted)}
.eco-public-layout-motion .eco-feature-card,
.eco-public-layout-motion .eco-person-card,
.eco-public-layout-motion .eco-public-detail-grid article,
.eco-public-layout-motion .eco-hotel-grid article,
.eco-public-layout-motion .eco-media-card,
.eco-public-layout-motion .eco-public-form,
.eco-public-layout-motion .eco-faq-list details{color:var(--eco-surface-card-text);border-color:var(--eco-surface-line)}
.eco-public-layout-motion .eco-feature-card h3,
.eco-public-layout-motion .eco-person-card h3,
.eco-public-layout-motion .eco-public-detail-grid strong,
.eco-public-layout-motion .eco-hotel-grid h3,
.eco-public-layout-motion .eco-media-card h3,
.eco-public-layout-motion .eco-faq-list summary{color:var(--eco-surface-card-text)}
.eco-public-layout-motion .eco-feature-card p,
.eco-public-layout-motion .eco-person-card p,
.eco-public-layout-motion .eco-media-fallback p,
.eco-public-layout-motion .eco-hotel-grid p,
.eco-public-layout-motion .eco-public-form small,
.eco-public-layout-motion .eco-faq-list p{color:var(--eco-surface-card-muted)}

/* Tenant-supplied hero photography can be much brighter/darker than the
 * starter image. A local scrim protects only the copy area instead of flattening
 * the whole design. */
.eco-public-layout-motion .eco-public-event-hero.has-image .eco-public-hero-content{isolation:isolate}
.eco-public-layout-motion .eco-public-event-hero.has-image .eco-public-hero-content::before{content:"";position:absolute;z-index:-1;inset:-42px -54px;border-radius:42px;pointer-events:none;background:radial-gradient(ellipse at 24% 48%,rgba(3,8,20,.70),rgba(3,8,20,.40) 46%,transparent 76%)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-event-hero.has-image .eco-public-hero-content::before{background:radial-gradient(ellipse at 24% 48%,rgba(255,252,246,.88),rgba(255,252,246,.58) 48%,transparent 78%)}

/* Light motion themes get complete surface semantics, not only a different
 * hero. This avoids dark text landing on inherited dark Visit/CTA/cards. */
.eco-public-layout-motion.eco-motion-surface-light .eco-public-header{background:linear-gradient(180deg,rgba(250,248,242,.96),rgba(250,248,242,.72),transparent)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-header.eco-motion-header-solid{background:rgba(250,248,242,.96);box-shadow:0 10px 38px rgba(43,38,33,.08)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-brand,
.eco-public-layout-motion.eco-motion-surface-light .eco-public-header nav a{color:var(--eco-surface-text)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-portal-link{color:var(--eco-surface-text);background:rgba(255,255,255,.72);border-color:rgba(35,31,28,.14)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-hero h1{color:var(--eco-surface-text);text-shadow:none}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-lead{color:var(--eco-surface-muted)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-event-hero .eco-public-eyebrow{color:var(--eco-site-primary)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-meta span,
.eco-public-layout-motion.eco-motion-surface-light .eco-countdown>div{background:rgba(255,255,255,.76);color:var(--eco-surface-text);border-color:rgba(35,31,28,.14);box-shadow:0 14px 42px rgba(43,38,33,.10)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-secondary-on-dark{background:rgba(255,255,255,.78);color:var(--eco-surface-text);border-color:rgba(35,31,28,.18)}
.eco-public-layout-motion.eco-motion-surface-light #visit{background:var(--eco-motion-bg-2);color:var(--eco-surface-text)}
.eco-public-layout-motion.eco-motion-surface-light .eco-info-chip{background:rgba(255,255,255,.72);border-color:var(--eco-surface-line);color:var(--eco-surface-text)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-form{background:var(--eco-surface-card-bg);color:var(--eco-surface-card-text)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-form input,
.eco-public-layout-motion.eco-motion-surface-light .eco-public-form select,
.eco-public-layout-motion.eco-motion-surface-light .eco-public-form textarea{background:var(--eco-surface-field-bg);color:var(--eco-surface-field-text);border-color:var(--eco-surface-line)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-form input::placeholder,
.eco-public-layout-motion.eco-motion-surface-light .eco-public-form textarea::placeholder{color:color-mix(in srgb,var(--eco-surface-muted) 78%,transparent)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-form label,
.eco-public-layout-motion.eco-motion-surface-light .eco-public-form legend{color:var(--eco-surface-card-text)}
.eco-public-layout-motion.eco-motion-surface-light .eco-timeline article,
.eco-public-layout-motion.eco-motion-surface-light .eco-testimonial-grid article,
.eco-public-layout-motion.eco-motion-surface-light .eco-quote-grid blockquote,
.eco-public-layout-motion.eco-motion-surface-light .eco-sponsor-grid article{background:var(--eco-surface-card-bg);border-color:var(--eco-surface-line);color:var(--eco-surface-card-text);box-shadow:0 22px 56px rgba(46,39,31,.08)}
.eco-public-layout-motion.eco-motion-surface-light .eco-timeline h3,
.eco-public-layout-motion.eco-motion-surface-light .eco-sponsor-grid strong{color:var(--eco-surface-card-text)}
.eco-public-layout-motion.eco-motion-surface-light .eco-timeline p,
.eco-public-layout-motion.eco-motion-surface-light .eco-quote-grid footer span{color:var(--eco-surface-card-muted)}
.eco-public-layout-motion.eco-motion-surface-light .eco-consent-row{background:rgba(255,255,255,.66);border-color:var(--eco-surface-line)}
.eco-public-layout-motion.eco-motion-surface-light .eco-consent-row span{color:var(--eco-surface-text)!important}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-cta-section{background:linear-gradient(135deg,var(--eco-motion-bg-2),var(--eco-motion-bg));color:var(--eco-surface-text)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-cta-section .eco-public-cta h2,
.eco-public-layout-motion.eco-motion-surface-light .eco-public-cta-section p{color:var(--eco-surface-text)}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-footer{background:color-mix(in srgb,var(--eco-motion-bg) 78%,#1d1a17 22%);color:var(--eco-surface-muted);border-color:var(--eco-surface-line)}
@media(max-width:820px){
  .eco-public-layout-motion.eco-motion-surface-light .eco-public-header{background:rgba(250,248,242,.97)}
  .eco-public-layout-motion .eco-public-event-hero.has-image .eco-public-hero-content::before{inset:-26px -22px;border-radius:28px}
}

/* -------------------------------------------------------------------------
 * v0.5.5 — full customization + contrast hardening.
 * Light motion templates must paint light card surfaces as well as light text.
 * This prevents dark inherited glass cards (for example hotel cards) from
 * carrying light-theme typography. Hero titles wrap only at natural word
 * boundaries so long tenant event names do not split inside words.
 * ---------------------------------------------------------------------- */
.eco-public-layout-motion .eco-public-hero h1{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance;
}
.eco-public-layout-motion.eco-motion-surface-light #eco-event-content,
.eco-public-layout-motion.eco-motion-surface-light #eco-event-content .eco-public-section{
  color:var(--eco-surface-text);
}
.eco-public-layout-motion.eco-motion-surface-light #visit{
  background:color-mix(in srgb,var(--eco-motion-bg,#f4f0e8) 94%,#fff 6%);
  color:var(--eco-surface-text);
}
.eco-public-layout-motion.eco-motion-surface-light .eco-feature-card,
.eco-public-layout-motion.eco-motion-surface-light .eco-person-card,
.eco-public-layout-motion.eco-motion-surface-light .eco-public-detail-grid article,
.eco-public-layout-motion.eco-motion-surface-light .eco-hotel-grid article,
.eco-public-layout-motion.eco-motion-surface-light .eco-media-card,
.eco-public-layout-motion.eco-motion-surface-light .eco-faq-list details,
.eco-public-layout-motion.eco-motion-surface-light .eco-timeline article,
.eco-public-layout-motion.eco-motion-surface-light .eco-testimonial-grid article,
.eco-public-layout-motion.eco-motion-surface-light .eco-quote-grid blockquote,
.eco-public-layout-motion.eco-motion-surface-light .eco-sponsor-grid article{
  background:var(--eco-surface-card-bg)!important;
  color:var(--eco-surface-card-text)!important;
  border-color:var(--eco-surface-line)!important;
  box-shadow:0 18px 48px rgba(45,39,33,.08);
}
.eco-public-layout-motion.eco-motion-surface-light .eco-hotel-grid h3,
.eco-public-layout-motion.eco-motion-surface-light .eco-hotel-grid p,
.eco-public-layout-motion.eco-motion-surface-light .eco-hotel-grid span,
.eco-public-layout-motion.eco-motion-surface-light .eco-hotel-grid a{
  position:relative;
  z-index:1;
}
.eco-public-layout-motion.eco-motion-surface-light .eco-hotel-grid h3{color:var(--eco-surface-card-text)!important}
.eco-public-layout-motion.eco-motion-surface-light .eco-hotel-grid p{color:var(--eco-surface-card-muted)!important}
.eco-public-layout-motion.eco-motion-surface-light .eco-info-chip{
  background:rgba(255,255,255,.82)!important;
  color:var(--eco-surface-text)!important;
  border-color:var(--eco-surface-line)!important;
}
.eco-public-layout-motion.eco-motion-surface-light .eco-info-chip strong{color:var(--eco-surface-text)!important}

/* Keep the editor proxies legible without obscuring tenant content. */

@media(max-width:820px){
  
  .eco-public-layout-motion .eco-public-hero h1{font-size:clamp(48px,14vw,88px)!important;line-height:.9!important}
}


/* v0.5.7 — high-resolution media / title and header contrast hardening. */
.eco-public-layout-motion .eco-public-hero-content{min-width:0}
.eco-public-layout-motion .eco-public-hero h1{
  max-inline-size:min(100%,900px)!important;
  font-size:clamp(48px,6.4vw,108px)!important;
  line-height:.88;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance;
}
.eco-public-layout-motion.eco-motion-surface-dark .eco-public-brand,
.eco-public-layout-motion.eco-motion-surface-dark .eco-public-header nav a{color:#fff!important}
.eco-public-layout-motion.eco-motion-surface-dark .eco-public-portal-link{color:#fff!important}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-brand,
.eco-public-layout-motion.eco-motion-surface-light .eco-public-header nav a{color:var(--eco-surface-text)!important}
.eco-public-layout-motion.eco-motion-surface-light .eco-public-portal-link{color:var(--eco-surface-text)!important}
@media(max-width:820px){.eco-public-layout-motion .eco-public-hero h1{max-inline-size:100%!important;font-size:clamp(44px,12vw,76px)!important}}

/* v0.7.1 — final motion-title guardrails load after all identity personalities. */
@media(max-width:1100px){
  .eco-public-layout-motion .eco-public-hero h1{max-inline-size:min(100%,780px)!important;font-size:clamp(50px,7.6vw,80px)!important;line-height:.9!important}
}
@media(max-width:900px){
  .eco-public-layout-motion .eco-public-hero h1{max-inline-size:min(100%,720px)!important;font-size:clamp(46px,8.2vw,70px)!important}
}
@media(max-width:680px){
  .eco-public-layout-motion .eco-public-hero h1{max-inline-size:100%!important;font-size:clamp(42px,12vw,62px)!important;line-height:.92!important}
}

/* Leadership Forum — composed editorial framing with a deliberate gold signal. */
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum{--eco-motion-bg:#09172b;--eco-motion-bg-2:#102748;--eco-motion-panel:rgba(17,38,67,.82);--eco-motion-violet:#91b6e8;--eco-motion-pink:#d6b56d;--eco-motion-cyan:#a8c9ed;--eco-motion-gold:#e5c985;--eco-muted:#c2cfdf}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-public-event-hero{background:radial-gradient(ellipse at 80% 24%,rgba(69,117,173,.38),transparent 32%),linear-gradient(115deg,#071326,#102748 65%,#1b3150)}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-public-hero-content{max-width:850px;padding-right:35vw}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.045em;line-height:.96}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-public-eyebrow{color:#e5c985;letter-spacing:.22em}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-motion-deck{right:2.5vw;width:38vw;height:530px}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-motion-card{width:78%;aspect-ratio:4/3;border-radius:10px;border:1px solid rgba(229,201,133,.55);box-shadow:0 28px 76px rgba(0,0,0,.45);animation:ecoIdDrift 12s ease-in-out infinite}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-motion-card-1{right:0;top:1%}.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-motion-card-2{left:0;top:30%;width:65%;animation-delay:-3.5s}.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-motion-card-3{right:3%;bottom:0;width:56%;animation-delay:-6s}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-motion-marquee{background:#0a1b31;border-color:rgba(229,201,133,.24)}
.eco-public-layout-motion.eco-public-design-corporate_leadership_forum .eco-feature-card{border-radius:10px;border-top:2px solid #d6b56d}

/* Product Reveal — precise, high-contrast launch stage with electric cyan details. */
.eco-public-layout-motion.eco-public-design-corporate_product_reveal{--eco-motion-bg:#07131d;--eco-motion-bg-2:#0b2638;--eco-motion-panel:rgba(8,28,43,.82);--eco-motion-violet:#78b6ff;--eco-motion-pink:#46dcff;--eco-motion-cyan:#53e5ff;--eco-motion-gold:#e4f8ff;--eco-muted:#c2d1db}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-public-event-hero{background:radial-gradient(circle at 76% 44%,rgba(34,191,235,.25),transparent 28%),linear-gradient(125deg,#020810,#082435 56%,#06131d)}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-public-hero-content{max-width:790px;padding-right:39vw}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-public-hero h1{text-transform:uppercase;font-weight:760;letter-spacing:-.07em;line-height:.84}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-public-eyebrow{color:#62e5ff;letter-spacing:.25em}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-motion-deck{right:2vw;width:39vw;height:550px;transform:translateY(-49%) rotate(2deg)}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-motion-card{border-radius:4px;border:1px solid rgba(83,229,255,.5);box-shadow:0 0 36px rgba(46,205,245,.12),0 28px 68px rgba(0,0,0,.45);animation:ecoIdTilt 10s ease-in-out infinite}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-motion-card-2{animation-delay:-3.3s}.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-motion-card-3{animation-delay:-6.6s}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-motion-marquee{background:#04111a;border-block:1px solid rgba(83,229,255,.28)}
.eco-public-layout-motion.eco-public-design-corporate_product_reveal .eco-feature-card{border-radius:8px;background:linear-gradient(145deg,rgba(15,43,59,.92),rgba(5,21,32,.95))}

/* Culture Collective — warmer, brighter surfaces for a human company gathering. */
.eco-public-layout-motion.eco-public-design-corporate_culture_collective{--eco-motion-bg:#143b3b;--eco-motion-bg-2:#1b4b49;--eco-motion-panel:rgba(22,56,54,.8);--eco-motion-violet:#a8cbbc;--eco-motion-pink:#edaa82;--eco-motion-cyan:#9cd6c0;--eco-motion-gold:#f1c294;--eco-muted:#d0ded6}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-public-event-hero{background:radial-gradient(circle at 75% 22%,rgba(229,168,121,.26),transparent 28%),linear-gradient(135deg,#102f32,#1b4b49 58%,#243f3a)}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-public-hero-content{max-width:900px;padding-right:32vw}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-public-hero h1{font-weight:650;letter-spacing:-.055em;line-height:.94}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-public-eyebrow{color:#efb487;letter-spacing:.2em}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-motion-deck{right:2vw;width:36vw;height:520px}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-motion-card{width:72%;aspect-ratio:4/3;border-radius:28px 8px 28px 8px;border-color:rgba(255,255,255,.45);box-shadow:0 25px 70px rgba(0,0,0,.32);animation:ecoIdFloatSoft 10s ease-in-out infinite}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-motion-card-2{animation-delay:-3s}.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-motion-card-3{animation-delay:-6s}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-motion-marquee{background:#123535;border-color:rgba(229,168,121,.25)}
.eco-public-layout-motion.eco-public-design-corporate_culture_collective .eco-feature-card{border-radius:18px;background:linear-gradient(150deg,rgba(26,68,62,.9),rgba(20,49,49,.94))}

@media(max-width:820px){
 .eco-public-layout-motion:is(.eco-public-design-corporate_leadership_forum,.eco-public-design-corporate_product_reveal,.eco-public-design-corporate_culture_collective) .eco-public-hero-content{max-width:100%;padding-right:0}
 .eco-public-layout-motion:is(.eco-public-design-corporate_leadership_forum,.eco-public-design-corporate_product_reveal,.eco-public-design-corporate_culture_collective) .eco-public-hero h1{max-width:100%}
}

/* v0.9.154 — TWO ADDITIONAL WEDDING MOTION IDENTITIES
   Built on the existing wedding itinerary, editable chapters, guest RSVP and
   venue curation renderer. All cinematic media is optional and honors pause and
   reduced-motion; visual controls remain usable when media is not available. */

/* Heirloom Letters: paper, letterpress, pinned images, slow portrait movement. */
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters{
  --eco-motion-bg:#f4eee5;--eco-motion-bg-2:#fffaf4;--eco-motion-panel:rgba(255,251,244,.9);
  --eco-ink:#43382e;--eco-muted:#72675d;--eco-motion-gold:#ac7956;--eco-motion-pink:#b89083;
  --eco-motion-cyan:#9b9f89;--eco-motion-violet:#8f7a83;
}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-public-event-hero{
  background:linear-gradient(115deg,#fbf5ea 0%,#eee0ce 64%,#ceb99e 100%);
}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-public-hero-overlay{
  background:linear-gradient(90deg,rgba(249,243,233,.96),rgba(249,243,233,.81) 38%,rgba(249,243,233,.27) 68%,transparent);
}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-public-header{
  background:linear-gradient(180deg,rgba(250,244,236,.96),rgba(250,244,236,.79),transparent);
}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters :is(.eco-public-brand,.eco-public-header nav a,.eco-public-portal-link){color:#3e362d}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-public-portal-link{background:rgba(255,250,242,.88);border-color:rgba(67,56,46,.18)}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-public-hero-content{padding-right:42vw;max-width:1180px}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;line-height:.96;letter-spacing:-.055em;color:#43382e;text-shadow:none}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-public-lead{color:#67584a}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-motion-deck{right:1.5vw;width:39vw;height:580px}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-motion-card{
  width:70%;aspect-ratio:4/5;border:11px solid #fffbf4;border-radius:2px;
  box-shadow:0 28px 64px rgba(75,49,31,.22);animation:ecoIdSwing 11s ease-in-out infinite;
}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-motion-card-1{right:2%;top:1%;transform:rotate(6deg)}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-motion-card-2{left:-4%;top:35%;width:53%;transform:rotate(-8deg);animation-delay:-4s}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-motion-card-3{right:1%;bottom:0;width:45%;transform:rotate(3deg);animation-delay:-8s}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters :is(#eco-event-content,.eco-public-section){background:#f5eee5;color:#43382e}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-public-section:nth-child(even){background:#fffcf7}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters :is(.eco-public-section-head h2,.eco-public-split h2,.eco-public-cta h2){color:#43382e;font-family:Georgia,'Times New Roman',serif;font-weight:400}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters :is(.eco-feature-card,.eco-person-card,.eco-public-detail-grid article,.eco-media-card,.eco-faq-list details,.eco-public-form){background:rgba(255,252,248,.96);color:#43382e;border-color:rgba(75,54,39,.14);box-shadow:0 16px 45px rgba(80,57,36,.07)}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters :is(.eco-feature-card p,.eco-person-card p,.eco-faq-list p,.eco-hotel-grid p){color:#6d625a}
.eco-public-layout-motion.eco-public-design-wedding_heirloom_letters .eco-motion-marquee{background:#e9dece;color:#594938;border-color:#dfccb8}

/* Moonlight Conservatory: deep evergreen, light shafts, floating floral portraits. */
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory{
  --eco-motion-bg:#09251f;--eco-motion-bg-2:#12392f;--eco-motion-panel:rgba(9,48,39,.86);
  --eco-motion-gold:#ebc98a;--eco-motion-cyan:#83b6a0;--eco-motion-pink:#e6aa94;
  --eco-motion-violet:#8caea4;--eco-muted:#c2d4ca;
}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-public-event-hero{
  background:radial-gradient(ellipse at 76% 14%,rgba(233,198,137,.16),transparent 32%),linear-gradient(120deg,#031713,#0c3029 62%,#143c32);
}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-public-hero-overlay{
  background:linear-gradient(90deg,rgba(3,19,16,.95),rgba(7,33,27,.74) 41%,rgba(7,33,27,.10) 86%);
}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-public-hero-content{padding-right:41vw;max-width:1180px}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-public-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.06em;line-height:.91;color:#fff6e8}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-motion-deck{right:2vw;width:39vw;height:610px}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-motion-card{
  width:72%;aspect-ratio:3/4;border-radius:100% 100% 8px 8px;border:2px solid rgba(242,214,163,.58);
  box-shadow:0 28px 76px rgba(0,0,0,.38),0 0 35px rgba(220,185,120,.08);animation:ecoIdFloatSoft 12s ease-in-out infinite;
}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-motion-card-1{right:0;top:1%}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-motion-card-2{left:-6%;top:36%;width:56%;animation-delay:-4s}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-motion-card-3{right:4%;bottom:0;width:46%;animation-delay:-8s}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory .eco-motion-marquee{background:linear-gradient(90deg,#0b2a22,#1d4b39,#0b2a22);border-color:rgba(235,201,138,.26)}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory :is(.eco-feature-card,.eco-person-card,.eco-media-card,.eco-faq-list details,.eco-public-form){background:rgba(14,50,41,.92);color:#f8f3e8;border:1px solid rgba(235,201,138,.2)}

/* Shared wedding motion guardrails: none of the new templates may overflow the
   editor preview, push chapter photos outside the grid or obscure the RSVP. */
.eco-public-layout-motion.eco-template-wedding_social :is(.eco-wedding-story-grid,.eco-wedding-schedule-grid,.eco-wedding-explore,.eco-wedding-airport-grid,.eco-wedding-nearby-grid){min-width:0;max-width:100%}
.eco-public-layout-motion.eco-template-wedding_social :is(.eco-wedding-story-moment,.eco-wedding-event-card,.eco-wedding-airport-card,.eco-wedding-nearby-card){min-width:0;overflow-wrap:anywhere}
.eco-public-layout-motion.eco-template-wedding_social .eco-wedding-schedule-grid{align-items:stretch}
.eco-public-layout-motion.eco-template-wedding_social .eco-wedding-activity-actions{display:flex;flex-wrap:wrap;gap:10px}
.eco-public-layout-motion.eco-template-wedding_social .eco-wedding-activity-actions a{min-width:0;max-width:100%}
@media(max-width:820px){
  .eco-public-layout-motion:is(.eco-public-design-wedding_heirloom_letters,.eco-public-design-wedding_moonlight_conservatory) .eco-public-hero-content{padding:90px 0 84px!important;max-width:100%!important}
}
@media(max-width:560px){
  .eco-public-layout-motion:is(.eco-public-design-wedding_heirloom_letters,.eco-public-design-wedding_moonlight_conservatory) .eco-motion-deck{display:none!important}
  .eco-public-layout-motion.eco-template-wedding_social .eco-wedding-activity-actions{flex-direction:column;align-items:stretch}
  .eco-public-layout-motion.eco-template-wedding_social .eco-wedding-activity-actions a{width:100%;box-sizing:border-box}
}
@media(prefers-reduced-motion:reduce){
  .eco-public-layout-motion:is(.eco-public-design-wedding_heirloom_letters,.eco-public-design-wedding_moonlight_conservatory) .eco-motion-card{animation:none!important}
}

/* Wedding travel + itinerary contrast parity for every motion identity.
   The wedding itinerary always has a light background; nearby and airport
   cards also use pale surfaces even when a wedding hero uses a dark palette. */
.eco-public-layout-motion.eco-template-wedding_social .eco-wedding-schedule-section .eco-wedding-schedule-head h2,
.eco-public-layout-motion.eco-template-wedding_social .eco-wedding-schedule-section .eco-wedding-day-lane > header h3{color:#2e2a24!important}
.eco-public-layout-motion.eco-template-wedding_social :is(.eco-wedding-nearby-card,.eco-wedding-airport-card){--eco-ink:#292b28;--eco-muted:#646b67;color:#292b28;background:#fff}
.eco-public-layout-motion.eco-template-wedding_social :is(.eco-wedding-nearby-card,.eco-wedding-airport-card) :is(h4,p,a){color:var(--eco-ink)!important}
.eco-public-layout-motion.eco-template-wedding_social :is(.eco-wedding-nearby-card,.eco-wedding-airport-card) p{color:var(--eco-muted)!important}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory :is(#highlights,#visit,#register){background:linear-gradient(145deg,#071d18,#12352b)!important}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory #highlights .eco-wedding-story-copy :is(h3,p){color:#f3eee1}
.eco-public-layout-motion.eco-public-design-wedding_moonlight_conservatory #highlights .eco-wedding-story-copy p{color:#bfd1c5}
