/* ═══════════════════════════════════════════════════════════
   RSVP Invitation — Premium Theme System
   Each theme: page bg + card layout + typography + accents
   ═══════════════════════════════════════════════════════════ */

/* ── Shared theme utilities ── */
.invitation-card .card-shimmer{
  position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.07) 50%,transparent 62%);
  background-size:200% 100%;animation:shimmer 8s ease-in-out infinite;opacity:0}
.invitation-card .card-frame-inner{
  position:absolute;inset:12px;border:1px solid rgba(255,255,255,.0);pointer-events:none;z-index:1;border-radius:inherit}
.invitation-card .card-texture{
  position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
@keyframes shimmer{0%,100%{background-position:200% 0}50%{background-position:-200% 0}}

/* Hide ornaments by default for themes that replace them */
.invitation-card .ornament-top,.invitation-card .ornament-bottom{transition:opacity .3s}
.invitation-card .hero-icon{display:none}

/* ── PAGE BACKGROUNDS ── */
body.page-theme-classic_gold{
  background:#e8dfd0!important;
  background-image:
    radial-gradient(ellipse 120% 80% at 50% -20%,rgba(201,169,110,.35),transparent 50%),
    radial-gradient(ellipse 60% 50% at 0% 100%,rgba(139,105,20,.12),transparent 50%),
    radial-gradient(ellipse 60% 50% at 100% 100%,rgba(201,169,110,.1),transparent 50%)!important}
body.page-theme-classic_gold::before{opacity:.06}

body.page-theme-minimal{
  background:#f0f0f0!important;
  background-image:linear-gradient(180deg,#fafafa 0%,#ececec 100%)!important}
body.page-theme-minimal::before{display:none}

body.page-theme-elegant_navy{
  background:#0a1628!important;
  background-image:
    radial-gradient(ellipse 80% 60% at 50% 0%,rgba(30,58,95,.8),transparent 60%),
    linear-gradient(180deg,#0a1628 0%,#152238 50%,#0d1a2d 100%)!important}
body.page-theme-elegant_navy::before{
  background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0L60 30L30 60L0 30Z' fill='none' stroke='%23c9a96e' stroke-width='.3' opacity='.15'/%3E%3C/svg%3E");
  opacity:1}

body.page-theme-warm_blush{
  background:#fce8e4!important;
  background-image:
    radial-gradient(ellipse 100% 70% at 50% 0%,rgba(255,182,168,.45),transparent 55%),
    radial-gradient(ellipse 50% 40% at 100% 80%,rgba(196,120,106,.15),transparent 50%),
    linear-gradient(160deg,#fff5f2,#fce8e4 40%,#f5ddd8)!important}
body.page-theme-warm_blush::before{opacity:.05}

body.page-theme-royal_burgundy{
  background:#1a0a10!important;
  background-image:
    radial-gradient(ellipse 90% 70% at 50% -10%,rgba(122,40,64,.5),transparent 55%),
    linear-gradient(180deg,#1a0a10,#2d1520 50%,#1a0a10)!important}
body.page-theme-royal_burgundy::before{
  background-image:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='20' cy='20' r='1.5' fill='%23c9a96e' opacity='.2'/%3E%3C/svg%3E")}

body.page-theme-modern_clean{
  background:#111!important;
  background-image:linear-gradient(135deg,#1a1a1a 0%,#0a0a0a 100%)!important}
body.page-theme-modern_clean::before{display:none}

body.page-theme-bar_mitzvah_blue{
  background:#dbeafe!important;
  background-image:
    radial-gradient(ellipse 100% 80% at 50% -30%,rgba(37,99,235,.25),transparent 50%),
    linear-gradient(180deg,#eff6ff,#dbeafe 60%,#bfdbfe)!important}
body.page-theme-bar_mitzvah_blue::before{
  background-image:url("data:image/svg+xml,%3Csvg width='48' height='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 4L28 20L44 24L28 28L24 44L20 28L4 24L20 20Z' fill='%232563eb' fill-opacity='.06'/%3E%3C/svg%3E")}

/* ── RSVP form theming per page theme ── */
body.page-theme-elegant_navy .rsvp-section,
body.page-theme-royal_burgundy .rsvp-section,
body.page-theme-modern_clean .rsvp-section{box-shadow:0 24px 80px rgba(0,0,0,.45)}
body.page-theme-elegant_navy .rsvp-header{background:linear-gradient(135deg,#0f2440,#1e3a5f,#2a5080)}
body.page-theme-royal_burgundy .rsvp-header{background:linear-gradient(135deg,#4a1528,#7a2840,#9e3350)}
body.page-theme-modern_clean .rsvp-header{background:#000;border-bottom:3px solid #fff}
body.page-theme-warm_blush .rsvp-header{background:linear-gradient(135deg,#9e4f42,#c4786a,#e8a598)}
body.page-theme-bar_mitzvah_blue .rsvp-header{background:linear-gradient(135deg,#1d4ed8,#2563eb,#3b82f6)}
body.page-theme-minimal .rsvp-header{background:#111}
body.page-theme-classic_gold .rsvp-header{background:linear-gradient(135deg,#6b4f0e,#8b6914 40%,#c9a96e)}

/* ═══════════════════════════════════════
   THEME 1: CLASSIC GOLD — Ornate luxury
   ═══════════════════════════════════════ */
.invitation-card.theme-classic_gold{
  --accent:#c9a96e;--accent-dark:#8b6914;--text-main:#4a3020;
  background:linear-gradient(180deg,#fffdf9 0%,#faf6ee 40%,#f5efe3 100%);
  border-radius:3px;
  box-shadow:0 0 0 1px #c9a96e,0 0 0 5px #faf6ee,0 0 0 6px #c9a96e,0 0 0 10px #faf6ee,0 0 0 11px rgba(201,169,110,.4),0 32px 80px rgba(74,48,32,.22),0 0 60px rgba(201,169,110,.15)}
.invitation-card.theme-classic_gold .card-shimmer{opacity:1}
.invitation-card.theme-classic_gold .card-frame-inner{border-color:rgba(201,169,110,.25)}
.invitation-card.theme-classic_gold .ornament-top,.invitation-card.theme-classic_gold .ornament-bottom{display:block;opacity:1}
.invitation-card.theme-classic_gold .hamsa{display:block;width:56px;filter:drop-shadow(0 3px 8px rgba(201,169,110,.35))}
.invitation-card.theme-classic_gold .names{
  font-family:var(--sd-font),'Open Sans',sans-serif;font-size:44px;
  background:linear-gradient(135deg,#6b4f0e 0%,#b8935a 30%,#d4af37 50%,#b8935a 70%,#6b4f0e 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.5))}
.invitation-card.theme-classic_gold .blessing{font-family:'Open Sans',serif;font-size:16px;font-style:italic;color:#8b6914}
.invitation-card.theme-classic_gold .invite-text{font-family:'Open Sans',serif;font-size:18px;letter-spacing:.06em}
.invitation-card.theme-classic_gold .event-details{
  background:linear-gradient(160deg,rgba(255,255,255,.85),rgba(201,169,110,.08));
  border:1px solid rgba(201,169,110,.35);border-radius:4px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 24px rgba(201,169,110,.12)}
.invitation-card.theme-classic_gold .date-big{font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:34px;color:#8b6914}
.invitation-card.theme-classic_gold .invite-location-wrap:not(.no-venue-box),
.venue-block{
  background:linear-gradient(135deg,rgba(201,169,110,.08),rgba(255,255,255,.5));
  border:1px solid rgba(201,169,110,.3);border-radius:4px}
.invitation-card.theme-classic_gold .parents-line{
  background:rgba(201,169,110,.08);border:1px solid rgba(201,169,110,.2);border-radius:24px;padding:10px 18px}
.invitation-card.theme-classic_gold .closing{font-family:'Open Sans',serif;font-size:16px;font-style:italic}

/* ═══════════════════════════════════════
   THEME 2: MINIMAL — Architectural zen
   ═══════════════════════════════════════ */
.invitation-card.theme-minimal{
  background:#fff;border-radius:0;
  box-shadow:0 1px 0 #ddd,0 24px 64px rgba(0,0,0,.08);
  padding:8px 0}
.invitation-card.theme-minimal::before,.invitation-card.theme-minimal::after{display:none}
.invitation-card.theme-minimal .ornament-top,.invitation-card.theme-minimal .ornament-bottom{display:none}
.invitation-card.theme-minimal .hamsa{display:none}
.invitation-card.theme-minimal .card-body{padding:32px 36px 36px}
.invitation-card.theme-minimal .bsd{letter-spacing:.35em;font-size:9px;color:#999;font-weight:400}
.invitation-card.theme-minimal .blessing{font-family:'Montserrat',sans-serif;font-size:11px;font-style:normal;letter-spacing:.2em;text-transform:uppercase;color:#888;font-weight:300}
.invitation-card.theme-minimal .invite-text{font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:#555;font-weight:400}
.invitation-card.theme-minimal .names-gold-line{width:80px;height:1px;background:#111;margin:16px auto}
.invitation-card.theme-minimal .names{
  font-family:'Montserrat',sans-serif;font-size:38px;font-weight:300;letter-spacing:.18em;
  background:none;-webkit-text-fill-color:#111;color:#111;text-transform:uppercase}
.invitation-card.theme-minimal .names-he{font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:18px;font-weight:400;color:#333;letter-spacing:.05em}
.invitation-card.theme-minimal .divider-diamond{background:#111;width:4px;height:4px;border-radius:0;transform:none}
.invitation-card.theme-minimal .divider-line{background:linear-gradient(to left,transparent,#ddd,transparent)}
.invitation-card.theme-minimal .divider-ornament{display:none}
.invitation-card.theme-minimal .event-details{
  background:transparent;border:none;border-top:1px solid #eee;border-bottom:1px solid #eee;
  border-radius:0;padding:20px 0;box-shadow:none}
.invitation-card.theme-minimal .date-label,.invitation-card.theme-minimal .day-name{color:#aaa;font-family:'Montserrat',sans-serif}
.invitation-card.theme-minimal .date-big{font-family:'Montserrat',sans-serif;font-size:28px;font-weight:300;color:#111;letter-spacing:.1em}
.invitation-card.theme-minimal .time-text{font-family:'Montserrat',sans-serif;font-size:24px;color:#333}
.invitation-card.theme-minimal .invite-location-wrap:not(.no-venue-box),
.venue-block{background:transparent;border:none;padding:16px 0}
.invitation-card.theme-minimal .venue-icon{display:none}
.invitation-card.theme-minimal .venue-name{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#111}
.invitation-card.theme-minimal .venue-address{font-family:'Montserrat',sans-serif;font-size:12px;color:#888}
.invitation-card.theme-minimal .parents-line{background:transparent;border:none;font-size:12px;color:#666}
.invitation-card.theme-minimal .closing{font-family:'Montserrat',sans-serif;font-size:12px;font-style:normal;letter-spacing:.05em;color:#666}
.invitation-card.theme-minimal .cal-btn{border-color:#ddd;border-radius:0;font-family:'Montserrat',sans-serif;font-size:10px;letter-spacing:.1em;text-transform:uppercase}

/* ═══════════════════════════════════════
   THEME 3: ELEGANT NAVY — Art deco gala
   ═══════════════════════════════════════ */
.invitation-card.theme-elegant_navy{
  background:linear-gradient(180deg,#fff 0%,#f8f9fc 100%);
  border-radius:2px;
  box-shadow:0 0 0 2px #1e3a5f,0 0 0 6px #c9a96e,0 0 0 8px #1e3a5f,0 40px 100px rgba(0,0,0,.5),0 0 80px rgba(30,58,95,.3);
  overflow:visible}
.invitation-card.theme-elegant_navy::before,.invitation-card.theme-elegant_navy::after{display:none}
.invitation-card.theme-elegant_navy .ornament-top,.invitation-card.theme-elegant_navy .ornament-bottom{display:none}
.invitation-card.theme-elegant_navy .card-body{padding-top:0}
.invitation-card.theme-elegant_navy .invite-hero{
  background:linear-gradient(135deg,#0f2440,#1e3a5f 50%,#2a5080);
  margin:-1px -1px 0;padding:28px 32px 24px;position:relative}
.invitation-card.theme-elegant_navy .invite-hero::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,transparent,#c9a96e,#fff,#c9a96e,transparent)}
.invitation-card.theme-elegant_navy .hamsa{display:none}
.invitation-card.theme-elegant_navy .hero-icon{display:block;font-size:28px;margin-bottom:8px;opacity:.9}
.invitation-card.theme-elegant_navy .bsd{color:rgba(201,169,110,.9);letter-spacing:.3em}
.invitation-card.theme-elegant_navy .blessing{color:rgba(255,255,255,.88);font-family:'Open Sans',serif;font-size:17px;font-style:italic}
.invitation-card.theme-elegant_navy .card-body>.divider:first-of-type{display:none}
.invitation-card.theme-elegant_navy .invite-text{font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:14px;letter-spacing:.12em;color:#1e3a5f;text-transform:uppercase}
.invitation-card.theme-elegant_navy .names{
  font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:42px;font-weight:600;
  background:linear-gradient(135deg,#0f2440,#1e3a5f,#3d5a80);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.invitation-card.theme-elegant_navy .names-he{color:#1e3a5f;font-size:19px}
.invitation-card.theme-elegant_navy .divider-diamond{background:#c9a96e;width:8px;height:8px;box-shadow:0 0 0 3px rgba(201,169,110,.2)}
.invitation-card.theme-elegant_navy .divider-ornament{color:#c9a96e;letter-spacing:.5em;font-size:8px}
.invitation-card.theme-elegant_navy .event-details{
  background:#0f2440;border:none;border-radius:0;padding:20px;
  box-shadow:0 8px 32px rgba(15,36,64,.25)}
.invitation-card.theme-elegant_navy .date-label{color:#c9a96e}
.invitation-card.theme-elegant_navy .date-big{font-family:var(--sd-font), 'Open Sans', sans-serif;color:#fff;font-size:30px}
.invitation-card.theme-elegant_navy .day-name{color:rgba(201,169,110,.85)}
.invitation-card.theme-elegant_navy .time-separator{color:#c9a96e}
.invitation-card.theme-elegant_navy .time-text{color:#fff;font-family:var(--sd-font), 'Open Sans', sans-serif}
.invitation-card.theme-elegant_navy .invite-location-wrap:not(.no-venue-box),
.venue-block{
  background:linear-gradient(135deg,rgba(30,58,95,.06),rgba(201,169,110,.06));
  border:1px solid rgba(30,58,95,.2);border-left:4px solid #c9a96e;border-radius:0}
.invitation-card.theme-elegant_navy .venue-name{color:#0f2440;font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:18px}
.invitation-card.theme-elegant_navy .parents-line{background:rgba(30,58,95,.06);border-color:rgba(30,58,95,.15);color:#1a2a3a}
.invitation-card.theme-elegant_navy .parents-line span{color:#1e3a5f}
.invitation-card.theme-elegant_navy .closing{color:#1e3a5f;font-family:'Open Sans',serif;font-size:16px;font-style:italic}

/* ═══════════════════════════════════════
   THEME 4: WARM BLUSH — Romantic garden
   ═══════════════════════════════════════ */
.invitation-card.theme-warm_blush{
  background:linear-gradient(160deg,#fff9f7,#fff0ec 50%,#fce8e4);
  border-radius:20px;
  box-shadow:0 0 0 1px rgba(196,120,106,.25),0 0 0 8px rgba(255,240,236,.8),0 24px 64px rgba(158,79,66,.18),0 0 40px rgba(232,165,152,.2);
  overflow:hidden}
.invitation-card.theme-warm_blush::before,.invitation-card.theme-warm_blush::after{display:none}
.invitation-card.theme-warm_blush .ornament-top,.invitation-card.theme-warm_blush .ornament-bottom{display:none}
.invitation-card.theme-warm_blush .card-texture{opacity:.06}
.invitation-card.theme-warm_blush .card-body::before{
  content:'🌸';position:absolute;top:12px;left:50%;transform:translateX(-50%);
  font-size:20px;opacity:.35;pointer-events:none}
.invitation-card.theme-warm_blush .hamsa{display:none}
.invitation-card.theme-warm_blush .bsd{color:#c4786a;letter-spacing:.25em}
.invitation-card.theme-warm_blush .blessing{font-family:'Lora',serif;font-size:16px;font-style:italic;color:#9e4f42;line-height:1.8}
.invitation-card.theme-warm_blush .invite-text{font-family:'Lora',serif;font-size:17px;color:#7a4540;font-style:italic}
.invitation-card.theme-warm_blush .names-gold-line{background:linear-gradient(90deg,transparent,#e8a598,#c4786a,#e8a598,transparent);height:2px;width:64px}
.invitation-card.theme-warm_blush .names{
  font-family:var(--sd-font),'Open Sans',sans-serif;font-size:40px;
  background:linear-gradient(135deg,#9e4f42,#c4786a,#e8a598);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.invitation-card.theme-warm_blush .names-he{color:#7a4540;font-family:'Lora',serif;font-size:19px}
.invitation-card.theme-warm_blush .divider-diamond{background:#e8a598;border-radius:50%;width:7px;height:7px;transform:none}
.invitation-card.theme-warm_blush .divider-line{background:linear-gradient(to left,transparent,rgba(196,120,106,.4),transparent)}
.invitation-card.theme-warm_blush .event-details{
  background:rgba(255,255,255,.65);border:1px solid rgba(232,165,152,.4);border-radius:16px;
  backdrop-filter:blur(8px);box-shadow:0 4px 20px rgba(196,120,106,.1)}
.invitation-card.theme-warm_blush .date-big{font-family:var(--sd-font),'Open Sans',sans-serif;color:#9e4f42;font-size:30px}
.invitation-card.theme-warm_blush .day-name{color:#c4786a}
.invitation-card.theme-warm_blush .time-text{color:#7a4540;font-family:var(--sd-font),'Open Sans',sans-serif}
.invitation-card.theme-warm_blush .invite-location-wrap:not(.no-venue-box),
.venue-block{
  background:rgba(255,255,255,.5);border:1px dashed rgba(196,120,106,.35);border-radius:14px}
.invitation-card.theme-warm_blush .venue-name{color:#9e4f42;font-family:var(--sd-font),'Open Sans',sans-serif}
.invitation-card.theme-warm_blush .parents-line{background:rgba(255,255,255,.6);border-radius:20px;border-color:rgba(232,165,152,.3);color:#7a4540}
.invitation-card.theme-warm_blush .closing{font-family:'Lora',serif;font-style:italic;color:#7a4540;font-size:15px}
.invitation-card.theme-warm_blush .cal-btn{border-radius:20px;border-color:rgba(196,120,106,.35);color:#9e4f42}

/* ═══════════════════════════════════════
   THEME 5: ROYAL BURGUNDY — Velvet palace
   ═══════════════════════════════════════ */
.invitation-card.theme-royal_burgundy{
  background:linear-gradient(180deg,#fffbf8 0%,#faf3ee 30%,#f5ebe3 100%);
  border-radius:4px;
  box-shadow:0 0 0 2px #7a2840,0 0 0 5px #c9a96e,0 0 0 7px #7a2840,0 0 0 9px rgba(201,169,110,.3),0 40px 100px rgba(0,0,0,.45),inset 0 0 80px rgba(122,40,64,.03)}
.invitation-card.theme-royal_burgundy .card-shimmer{opacity:.6;background:linear-gradient(105deg,transparent 40%,rgba(201,169,110,.08) 50%,transparent 60%)}
.invitation-card.theme-royal_burgundy .ornament-top,.invitation-card.theme-royal_burgundy .ornament-bottom{display:none}
.invitation-card.theme-royal_burgundy .card-body{padding-top:20px}
.invitation-card.theme-royal_burgundy .invite-hero::before{
  content:'♛';display:block;font-size:32px;color:#7a2840;margin-bottom:6px;opacity:.7}
.invitation-card.theme-royal_burgundy .hamsa{display:none}
.invitation-card.theme-royal_burgundy .bsd{color:#c9a96e;letter-spacing:.3em;font-size:10px}
.invitation-card.theme-royal_burgundy .blessing{font-family:'Open Sans',serif;font-size:17px;color:#7a2840;font-style:italic}
.invitation-card.theme-royal_burgundy .invite-text{font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:13px;letter-spacing:.15em;color:#4a1528;text-transform:uppercase}
.invitation-card.theme-royal_burgundy .names{
  font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:40px;font-weight:600;
  background:linear-gradient(135deg,#4a1528,#7a2840 40%,#a8435c 60%,#7a2840);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.invitation-card.theme-royal_burgundy .names-he{color:#4a1528;font-size:19px;font-weight:600}
.invitation-card.theme-royal_burgundy .divider-diamond{background:#c9a96e;box-shadow:0 0 0 4px rgba(201,169,110,.15)}
.invitation-card.theme-royal_burgundy .divider-ornament{color:#7a2840;font-size:9px}
.invitation-card.theme-royal_burgundy .event-details{
  background:linear-gradient(135deg,#4a1528,#7a2840);
  border:none;border-radius:2px;padding:22px;
  box-shadow:0 8px 32px rgba(74,21,40,.35),inset 0 1px 0 rgba(255,255,255,.08)}
.invitation-card.theme-royal_burgundy .date-label{color:#c9a96e}
.invitation-card.theme-royal_burgundy .date-big{font-family:var(--sd-font), 'Open Sans', sans-serif;color:#fff;font-size:32px}
.invitation-card.theme-royal_burgundy .day-name{color:rgba(201,169,110,.9)}
.invitation-card.theme-royal_burgundy .time-separator{color:#c9a96e}
.invitation-card.theme-royal_burgundy .time-text{color:#fff;font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:26px}
.invitation-card.theme-royal_burgundy .invite-location-wrap:not(.no-venue-box),
.venue-block{
  border:1px solid rgba(122,40,64,.25);background:rgba(122,40,64,.04);
  border-top:3px solid #7a2840;border-radius:0}
.invitation-card.theme-royal_burgundy .venue-name{color:#4a1528;font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:18px}
.invitation-card.theme-royal_burgundy .parents-line{background:rgba(122,40,64,.06);border-color:rgba(122,40,64,.2);color:#3d1f28}
.invitation-card.theme-royal_burgundy .closing{font-family:'Open Sans',serif;font-size:16px;color:#4a1528;font-style:italic}

/* ═══════════════════════════════════════
   THEME 6: MODERN CLEAN — Bold editorial
   ═══════════════════════════════════════ */
.invitation-card.theme-modern_clean{
  background:#fff;border-radius:0;
  box-shadow:8px 8px 0 #000,0 32px 64px rgba(0,0,0,.25);
  border:3px solid #000}
.invitation-card.theme-modern_clean::before,.invitation-card.theme-modern_clean::after{display:none}
.invitation-card.theme-modern_clean .ornament-top,.invitation-card.theme-modern_clean .ornament-bottom{display:none}
.invitation-card.theme-modern_clean .hamsa,.invitation-card.theme-modern_clean .bsd{display:none}
.invitation-card.theme-modern_clean .card-body{padding:28px 28px 32px;text-align:right}
.invitation-card.theme-modern_clean .invite-hero{
  border-bottom:4px solid #000;padding-bottom:20px;margin-bottom:4px;text-align:right}
.invitation-card.theme-modern_clean .blessing{
  font-family:'Montserrat',sans-serif;font-size:10px;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;color:#888;font-style:normal;text-align:right}
.invitation-card.theme-modern_clean .invite-text{
  font-family:'Montserrat',sans-serif;font-size:13px;font-weight:700;letter-spacing:.05em;
  color:#000;text-transform:uppercase;text-align:right;margin-top:12px}
.invitation-card.theme-modern_clean .names-gold-line{display:none}
.invitation-card.theme-modern_clean .names{
  font-family:'Montserrat',sans-serif;font-size:48px;font-weight:900;line-height:1;
  background:none;-webkit-text-fill-color:#000;color:#000;letter-spacing:-.02em;text-align:right}
.invitation-card.theme-modern_clean .names-he{
  font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:20px;font-weight:600;color:#333;text-align:right;margin-top:8px}
.invitation-card.theme-modern_clean .divider{display:none}
.invitation-card.theme-modern_clean .invite-names-block{border-bottom:4px solid #000;padding-bottom:20px;margin-bottom:16px}
.invitation-card.theme-modern_clean .event-details{
  display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end;
  background:#000;color:#fff;border-radius:0;padding:16px 20px;margin:16px 0;box-shadow:none}
.invitation-card.theme-modern_clean .date-wrap,.invitation-card.theme-modern_clean .time-wrap{text-align:right}
.invitation-card.theme-modern_clean .date-label{color:rgba(255,255,255,.5);font-family:'Montserrat',sans-serif;font-size:8px}
.invitation-card.theme-modern_clean .date-big{font-family:'Montserrat',sans-serif;font-size:26px;font-weight:700;color:#fff}
.invitation-card.theme-modern_clean .day-name{color:rgba(255,255,255,.7);font-size:11px}
.invitation-card.theme-modern_clean .time-separator{display:none}
.invitation-card.theme-modern_clean .time-text{font-family:'Montserrat',sans-serif;font-size:32px;font-weight:900;color:#fff}
.invitation-card.theme-modern_clean .invite-location-wrap:not(.no-venue-box),
.venue-block{background:transparent;border:none;border-top:2px solid #eee;padding:16px 0;text-align:right}
.invitation-card.theme-modern_clean .venue-icon{display:none}
.invitation-card.theme-modern_clean .venue-name{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#000}
.invitation-card.theme-modern_clean .venue-address{font-family:'Montserrat',sans-serif;font-size:12px;color:#666}
.invitation-card.theme-modern_clean .parents-line{background:#f5f5f5;border:none;border-radius:0;border-right:4px solid #000;padding:10px 14px;text-align:right}
.invitation-card.theme-modern_clean .closing{font-family:'Montserrat',sans-serif;font-size:13px;font-style:normal;color:#444;text-align:center;margin-top:8px}
.invitation-card.theme-modern_clean .closing-wrap .divider{display:none}
.invitation-card.theme-modern_clean .waze-btn{border-radius:0;background:#000;box-shadow:4px 4px 0 rgba(0,0,0,.3)}
.invitation-card.theme-modern_clean .cal-btn{border-radius:0;border:2px solid #000;font-family:'Montserrat',sans-serif;font-weight:700;font-size:10px;text-transform:uppercase}

/* ═══════════════════════════════════════
   THEME 7: BAR MITZVAH BLUE — Sacred celebration
   ═══════════════════════════════════════ */
.invitation-card.theme-bar_mitzvah_blue{
  background:linear-gradient(180deg,#fff 0%,#f0f7ff 100%);
  border-radius:12px;
  box-shadow:0 0 0 2px #2563eb,0 0 0 6px #fff,0 0 0 8px #93c5fd,0 24px 64px rgba(37,99,235,.2),0 0 40px rgba(37,99,235,.1)}
.invitation-card.theme-bar_mitzvah_blue::before,.invitation-card.theme-bar_mitzvah_blue::after{display:none}
.invitation-card.theme-bar_mitzvah_blue .ornament-top,.invitation-card.theme-bar_mitzvah_blue .ornament-bottom{display:none}
.invitation-card.theme-bar_mitzvah_blue .invite-hero{
  background:linear-gradient(135deg,#1e40af,#2563eb,#3b82f6);
  margin:-1px -1px 0;padding:24px 28px 20px;border-radius:10px 10px 0 0}
.invitation-card.theme-bar_mitzvah_blue .hamsa{display:none}
.invitation-card.theme-bar_mitzvah_blue .hero-icon{display:block;font-size:36px;margin-bottom:6px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}
.invitation-card.theme-bar_mitzvah_blue .bsd{color:rgba(255,255,255,.85);letter-spacing:.25em}
.invitation-card.theme-bar_mitzvah_blue .blessing{color:rgba(255,255,255,.92);font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:15px;font-style:normal;font-weight:500}
.invitation-card.theme-bar_mitzvah_blue .card-body>.divider:first-of-type{display:none}
.invitation-card.theme-bar_mitzvah_blue .invite-text{font-family:var(--sd-font), 'Open Sans', sans-serif;font-size:16px;color:#1e40af;font-weight:500}
.invitation-card.theme-bar_mitzvah_blue .names-gold-line{background:linear-gradient(90deg,transparent,#2563eb,transparent)}
.invitation-card.theme-bar_mitzvah_blue .names{
  font-family:var(--sd-font),'Open Sans',sans-serif;font-size:42px;
  background:linear-gradient(135deg,#1d4ed8,#2563eb,#60a5fa);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.invitation-card.theme-bar_mitzvah_blue .names-he{color:#1e3a5f;font-size:20px;font-weight:700}
.invitation-card.theme-bar_mitzvah_blue .divider-diamond{background:#2563eb;border-radius:50%;transform:none}
.invitation-card.theme-bar_mitzvah_blue .divider-ornament{color:#2563eb;font-size:10px}
.invitation-card.theme-bar_mitzvah_blue .event-details{
  background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(147,197,253,.15));
  border:1px solid rgba(37,99,235,.25);border-radius:12px}
.invitation-card.theme-bar_mitzvah_blue .date-label{color:#2563eb}
.invitation-card.theme-bar_mitzvah_blue .date-big{font-family:var(--sd-font),'Open Sans',sans-serif;color:#1d4ed8;font-size:32px}
.invitation-card.theme-bar_mitzvah_blue .day-name{color:#3b82f6;font-weight:600}
.invitation-card.theme-bar_mitzvah_blue .time-text{color:#1e40af;font-family:var(--sd-font),'Open Sans',sans-serif;font-size:28px}
.invitation-card.theme-bar_mitzvah_blue .invite-location-wrap:not(.no-venue-box),
.venue-block{
  background:rgba(37,99,235,.05);border:1px solid rgba(37,99,235,.2);border-radius:10px}
.invitation-card.theme-bar_mitzvah_blue .venue-name{color:#1d4ed8;font-size:18px}
.invitation-card.theme-bar_mitzvah_blue .parents-line{background:rgba(37,99,235,.06);border-color:rgba(37,99,235,.15);color:#1e3a5f}
.invitation-card.theme-bar_mitzvah_blue .closing{font-family:var(--sd-font), 'Open Sans', sans-serif;color:#1e40af;font-size:14px;font-style:normal;font-weight:500}
.invitation-card.theme-bar_mitzvah_blue .cal-btn{border-color:rgba(37,99,235,.35);color:#1d4ed8;border-radius:10px}

@media(max-width:480px){
  .invitation-card.theme-modern_clean .names{font-size:36px}
  .invitation-card.theme-classic_gold .names{font-size:34px}
  .invitation-card.theme-elegant_navy .names,.invitation-card.theme-royal_burgundy .names{font-size:32px}
  .invitation-card.theme-elegant_navy .invite-hero,.invitation-card.theme-bar_mitzvah_blue .invite-hero{padding:20px 16px}
}
