/* Private-event landing pages: vvip-event-security, wedding-planners, event-planners
   (inc/event_landing.php). Gold-on-ink look; .el-navy switches the palette. */
:root { --vv-ink:#16120a; --vv-ink2:#2a2112; --vv-gold:#e6c35c; --vv-gold-deep:#b8860b; --vv-ivory:#f7f1e1; --vv-text:#4a5a72; }
.vv-band { background:radial-gradient(120% 140% at 85% 0%, #3a2c12 0%, var(--vv-ink) 55%); color:var(--vv-ivory); border-radius:24px; padding:clamp(28px,5vw,56px); margin:32px 0 34px;
           display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(24px,4vw,48px); align-items:center; text-align:left; }
.vv-eyebrow { font-size:.8rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--vv-gold); margin:0 0 12px; }
.vv-band h1 { font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif; font-weight:700; font-size:clamp(2rem,4.2vw,3.1rem); line-height:1.1; margin:0 0 16px; color:#fff; }
.vv-band .lead { color:#e9e1cb; font-size:1.12rem; line-height:1.6; margin:0 0 22px; }
.vv-cta { display:inline-block; padding:13px 26px; border-radius:999px; background:linear-gradient(135deg,var(--vv-gold),var(--vv-gold-deep)); color:#1b1400; font-weight:800; text-decoration:none; }
.vv-cta:hover, .vv-cta:focus-visible { color:#1b1400; filter:brightness(1.06); }
.vv-cta:focus-visible, .vv-form :focus-visible { outline:3px solid #8fb4ff; outline-offset:3px; }
/* The signature: the guest's real entry card, as the app draws it. */
.vv-pass { position:relative; overflow:hidden; border-radius:22px; padding:20px 20px 18px; color:#2b1e00; max-width:340px; margin-inline:auto;
           background:linear-gradient(140deg,#8a6512 0%,#e6c35c 30%,#fff1b8 50%,#d4a537 72%,#8a6512 100%);
           box-shadow:0 30px 70px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.6); transform:rotate(-2.5deg); }
.vv-pass::after { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.55) 50%,transparent 62%);
                  background-size:260% 100%; mix-blend-mode:soft-light; animation:vv-sheen 7s ease-in-out infinite; }
@keyframes vv-sheen { from { background-position:130% 0; } to { background-position:-130% 0; } }
@media (prefers-reduced-motion: reduce) { .vv-pass::after { animation:none; } }
.vv-pass-top { display:flex; justify-content:space-between; align-items:center; }
.vv-badge { background:#2b1e00; color:#f7dc7a; border-radius:999px; padding:4px 12px; font-weight:800; letter-spacing:.06em; font-size:.82rem; }
.vv-private { font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; opacity:.75; }
.vv-pass h3 { font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif; font-size:1.55rem; margin:14px 0 2px; color:#2b1e00; }
.vv-pass p { margin:0; font-size:.92rem; }
.vv-pass .vv-in { margin-top:12px; font-weight:800; }
.vv-pass .vv-btn { margin-top:14px; background:#2b1e00; color:#f7dc7a; border-radius:12px; padding:11px; text-align:center; font-weight:800; }
.vv-h2 { font-size:1.55rem; text-align:center; margin:0 0 16px; color:#1a2744; }
.inner-content h2.vv-h2, .inner-content .vv-form h2 { color:#1a2744 !important; }
.vv-steps { list-style:none; counter-reset:s; padding:0; margin:0 auto 38px; max-width:760px; text-align:left; }
.vv-steps li { counter-increment:s; position:relative; padding:0 0 16px 50px; color:var(--vv-text); line-height:1.55; }
.vv-steps li::before { content:counter(s); position:absolute; left:0; top:0; width:34px; height:34px; border-radius:50%; background:var(--vv-ink); color:var(--vv-gold);
                       font-weight:800; display:flex; align-items:center; justify-content:center; }
[dir="rtl"] .vv-steps li { padding:0 50px 16px 0; } [dir="rtl"] .vv-steps li::before { left:auto; right:0; }
.vv-steps b { color:#1a2744; }
.vv-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:16px; margin:0 0 38px; text-align:left; }
.vv-card { background:#fff; border:1px solid #e8e1cc; border-top:3px solid var(--vv-gold-deep); border-radius:14px; padding:18px 20px; }
.vv-card h3 { font-size:1rem; font-weight:700; color:#1a2744; margin:0 0 6px; line-height:1.3; }
.vv-card p { margin:0; color:var(--vv-text); font-size:.93rem; line-height:1.55; }
.vv-note { max-width:760px; margin:0 auto 38px; background:#fbf7ea; border:1px solid #eadfba; border-radius:14px; padding:18px 22px; color:#4a4230; text-align:left; line-height:1.6; }
.vv-form { max-width:760px; margin:0 auto 7%; text-align:left; background:#fff; border:1px solid #e3e8ef; border-radius:16px; padding:26px; }
.vv-form h2 { font-size:1.4rem; margin:0 0 4px; }
.vv-form .row > div { margin-bottom:14px; }
@media (max-width: 860px) { .vv-band { grid-template-columns:1fr; } .vv-pass { transform:none; } }

/* Event planners: navy with a silver VIP pass. */
.el-navy { --vv-ink:#0b1730; --vv-ink2:#14264a; --vv-gold:#9fd3ff; --vv-gold-deep:#2f7fd1; --vv-ivory:#eef4ff; }
.el-navy .vv-band { background:radial-gradient(120% 140% at 85% 0%, #1b3a73 0%, var(--vv-ink) 55%); }
.el-navy .vv-band .lead { color:#d6e2f5; }
.el-navy .vv-cta { color:#04142c; background:linear-gradient(135deg,#bfe3ff,#5aa5ea); }
.el-navy .vv-card { border-color:#dbe5f3; }
.el-navy .vv-note { background:#f2f7fd; border-color:#d4e2f3; color:#33425a; }
.vv-pass.vip { color:#1f2a38; background:linear-gradient(140deg,#7b5a3a 0%,#c99a6b 22%,#eef1f5 48%,#b9c2cf 70%,#6f7c8e 100%); }
.vv-pass.vip h3 { color:#1f2a38; }
.vv-pass.vip .vv-badge { background:#1f2a38; color:#e9eef5; }
.vv-pass.vip .vv-btn { background:#1f2a38; color:#e9eef5; }
/* Links to the other private-event pages. */
.el-related { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:0 0 38px; }
.el-related a { padding:9px 16px; border-radius:999px; border:1px solid #d9dfe8; color:#1a2744; text-decoration:none; font-weight:600; font-size:.92rem; background:#fff; }
.el-related a:hover { border-color:#1a2744; }
.vv-sub { max-width:760px; margin:-6px auto 22px; color:var(--vv-text); line-height:1.6; text-align:center; }
