.public-invitation--editorial-birthday{--eb-ivory:#F0F1F0;--eb-ivory-deep:#E4E5E3;--eb-ink:#121316;--eb-ink-soft:#55585E;--eb-ink-faint:#8A8D91;--eb-line:rgba(18, 19, 22, 0.16);--eb-line-soft:rgba(18, 19, 22, 0.09);--eb-radius:2px;--font-display:"Plus Jakarta Sans",-apple-system,"Segoe UI",Roboto,sans-serif;--eb-font-accent:"Lora",Georgia,"Times New Roman",serif;--font-body:"Poppins",-apple-system,"Segoe UI",Roboto,sans-serif;--color-primary:var(--eb-ink);--color-primary-dark:#000000;--color-primary-light:var(--eb-ink-soft);--color-primary-soft:var(--eb-ivory-deep);--color-accent:var(--eb-ink);--color-accent-dark:#000000;--color-accent-soft:var(--eb-ivory-deep);--color-ink:var(--eb-ink);--color-ink-soft:var(--eb-ink-soft);--color-ink-faint:var(--eb-ink-faint);--color-border:var(--eb-line);--color-surface:#fff;position:relative;overflow-x:clip;background:var(--eb-ivory);color:var(--eb-ink);font-family:var(--font-body)}.public-invitation--editorial-birthday .eb-spotlight{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 60% 40% at 50% 0,rgba(18,19,22,.06) 0,transparent 70%);animation:eb-spotlight-breathe 9s ease-in-out infinite}.public-invitation--editorial-birthday .eb-grid{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.4;background-image:repeating-linear-gradient(90deg,var(--eb-line-soft) 0 1px,transparent 1px 12.5%)}.public-invitation--editorial-birthday .eb-block{position:relative;z-index:2;padding:26px 0;border-top:1px solid var(--eb-line)}.public-invitation--editorial-birthday .eb-block--hero{text-align:center;padding:34px 0;border-top:none}.public-invitation--editorial-birthday .eb-block--hero .pi-hero__theme{font-family:var(--eb-font-accent);font-style:italic;font-weight:400;font-size:clamp(1.5rem, 6vw, 2rem);margin:10px 0 12px;color:var(--eb-ink)}.public-invitation--editorial-birthday .pi-eyebrow{letter-spacing:.28em;text-transform:uppercase;font-size:.66rem;font-weight:600;color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .pi-hero__guest{margin:14px 0 0;color:var(--color-ink-soft);font-size:.92rem}.public-invitation--editorial-birthday .pi-hero__guest span{color:var(--eb-ink);font-weight:700}.public-invitation--editorial-birthday .eb-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.05rem, 4vw, 1.3rem);text-transform:uppercase;letter-spacing:.06em;color:var(--eb-ink);text-align:center;margin:0 0 24px;position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:10px}.public-invitation--editorial-birthday .eb-title--sm{font-size:clamp(.86rem, 3.2vw, .98rem);margin-top:28px}.public-invitation--editorial-birthday .eb-title__no{font-family:var(--font-body);font-weight:400;letter-spacing:0;font-size:.72rem;color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .pi-gate{display:flex;align-items:center;justify-content:center;padding:44px 24px;background:var(--eb-ivory)}.public-invitation--editorial-birthday .eb-scene{position:relative;z-index:2;text-align:center;display:flex;flex-direction:column;align-items:center;width:min(92%,420px)}.public-invitation--editorial-birthday .pi-gate__inner{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;position:relative;z-index:2}.public-invitation--editorial-birthday .pi-gate__eyebrow{letter-spacing:.3em;text-transform:uppercase;font-size:.64rem;font-weight:600;color:var(--eb-ink-faint);margin:0}.public-invitation--editorial-birthday .eb-theme{font-family:var(--eb-font-accent);font-style:italic;font-weight:400;font-size:clamp(.95rem, 3.6vw, 1.1rem);color:var(--eb-ink-soft);margin:0}.public-invitation--editorial-birthday .eb-frame{position:relative;z-index:2;margin:0 auto;display:flex;align-items:stretch;gap:12px;justify-content:center}.public-invitation--editorial-birthday .eb-frame__spine{flex-shrink:0;width:20px;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--eb-ink-faint);white-space:nowrap;overflow:hidden}.public-invitation--editorial-birthday .eb-frame__spine span{display:inline-block;max-height:100%}.public-invitation--editorial-birthday .eb-frame__photo{border:1px solid var(--eb-ink);background:#fff;overflow:hidden}.public-invitation--editorial-birthday .eb-frame__photo .pi-couple__photo,.public-invitation--editorial-birthday .eb-frame__photo .pi-gate__photo{display:block;width:100%;height:100%;border:0;box-shadow:none;border-radius:0}.public-invitation--editorial-birthday .eb-frame__photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}.public-invitation--editorial-birthday .eb-frame--gate .eb-frame__photo{width:clamp(140px,44%,190px);aspect-ratio:0.8}.public-invitation--editorial-birthday .eb-frame--gate .eb-frame__spine{height:clamp(140px,44%,190px)}.public-invitation--editorial-birthday .eb-frame--lg .eb-frame__photo{width:min(78%,300px);aspect-ratio:0.8}.public-invitation--editorial-birthday .eb-frame--lg .eb-frame__spine{height:min(78%,300px)}.public-invitation--editorial-birthday .pi-gate__names{font-family:var(--font-display);font-weight:700;font-size:clamp(1.9rem, 8vw, 2.6rem);text-transform:uppercase;letter-spacing:.01em;color:var(--eb-ink);margin:6px 0 0;line-height:1.1;overflow-wrap:break-word}.public-invitation--editorial-birthday .eb-guest{position:relative;border-top:1px solid var(--eb-line);border-bottom:1px solid var(--eb-line);padding:10px 0}.public-invitation--editorial-birthday .pi-gate__guest-label{margin:0;font-size:.66rem;letter-spacing:.05em;color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .pi-gate__guest-name{margin:0;font-weight:700;color:var(--eb-ink)}.public-invitation--editorial-birthday .pi-gate__guest-note{font-size:.66rem;color:var(--eb-ink-faint);margin:8px 0 0}.public-invitation--editorial-birthday .eb-open{margin-top:6px;background:var(--eb-ink);border:none;border-radius:0;color:var(--eb-ivory);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;padding:13px 26px;animation:eb-open-bounce 2.6s ease-in-out infinite}.public-invitation--editorial-birthday .eb-open:hover{animation:none;transform:translateY(-2px);background:#000}.public-invitation--editorial-birthday .eb-age{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:18px;max-width:420px;margin:0 auto}.public-invitation--editorial-birthday .eb-age__rule{flex:1;height:1px;background:var(--eb-line)}.public-invitation--editorial-birthday .eb-age__num{font-family:var(--font-display);font-weight:700;font-size:clamp(3rem, 18vw, 4.6rem);line-height:1;color:var(--eb-ink);font-variant-numeric:tabular-nums}.public-invitation--editorial-birthday .eb-age__label{text-align:center;margin:10px 0 0;font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--eb-ink-faint);position:relative;z-index:2}.public-invitation--editorial-birthday .eb-note{max-width:560px;margin:22px auto 0;text-align:center;color:var(--color-ink-soft);line-height:1.75;position:relative;z-index:2}.public-invitation--editorial-birthday .eb-ticket{position:relative;z-index:2;max-width:560px;margin:0 auto;display:flex;align-items:stretch;border:1px solid var(--eb-line)}.public-invitation--editorial-birthday .eb-ticket__col{flex:1;padding:22px 20px;text-align:center}.public-invitation--editorial-birthday .eb-ticket__perf{flex-shrink:0;width:1px;background-image:repeating-linear-gradient(180deg,var(--eb-ink-faint) 0 4px,transparent 4px 9px);opacity:.6}.public-invitation--editorial-birthday .eb-ticket__label{display:block;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--eb-ink-faint);margin-bottom:8px}.public-invitation--editorial-birthday .eb-ticket__value{font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:var(--eb-ink);margin:0 0 4px}.public-invitation--editorial-birthday .eb-row{display:flex;align-items:center;justify-content:center;gap:6px;margin:4px 0 0;font-size:.82rem;color:var(--color-ink-soft);line-height:1.5}.public-invitation--editorial-birthday .eb-row--wrap{flex-wrap:wrap}.public-invitation--editorial-birthday .eb-row svg{flex-shrink:0;color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .eb-row--muted{font-size:.76rem;color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .eb-row a{color:var(--eb-ink);text-decoration:underline}.public-invitation--editorial-birthday .eb-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;position:relative;z-index:2}.public-invitation--editorial-birthday .eb-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:0 0;border:1px solid var(--eb-ink);border-radius:0;color:var(--eb-ink);font-size:.74rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.public-invitation--editorial-birthday .eb-chip:hover{background:var(--eb-ink);color:var(--eb-ivory)}.public-invitation--editorial-birthday .eb-countdown{display:flex;justify-content:center;gap:0;flex-wrap:wrap;margin:26px auto 0;position:relative;z-index:2;border:1px solid var(--eb-line)}.public-invitation--editorial-birthday .eb-countdown__cell{flex:1;min-width:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px;border-left:1px solid var(--eb-line)}.public-invitation--editorial-birthday .eb-countdown__cell:first-child{border-left:none}.public-invitation--editorial-birthday .eb-countdown__cell span{font-family:var(--font-display);font-weight:700;font-size:clamp(1.1rem, 5vw, 1.5rem);color:var(--eb-ink);font-variant-numeric:tabular-nums}.public-invitation--editorial-birthday .eb-countdown__cell small{font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--eb-ink-faint);margin-top:2px}.public-invitation--editorial-birthday .eb-toc{position:relative;z-index:2;max-width:560px;margin:0 auto}.public-invitation--editorial-birthday .eb-toc__item{display:flex;align-items:baseline;gap:8px;padding:13px 0;border-bottom:1px solid var(--eb-line-soft)}.public-invitation--editorial-birthday .eb-toc__index{font-family:var(--font-display);font-weight:700;font-size:.72rem;color:var(--eb-ink-faint);flex-shrink:0}.public-invitation--editorial-birthday .eb-toc__name{font-weight:600;color:var(--eb-ink);font-size:.94rem;white-space:nowrap}.public-invitation--editorial-birthday .eb-toc__dots{flex:1;border-bottom:2px dotted var(--eb-ink-faint);margin-bottom:4px;min-width:16px}.public-invitation--editorial-birthday .eb-toc__time{font-variant-numeric:tabular-nums;color:var(--eb-ink-soft);font-size:.86rem;flex-shrink:0}.public-invitation--editorial-birthday .eb-credits{display:flex;flex-wrap:wrap;justify-content:center;gap:28px;position:relative;z-index:2}.public-invitation--editorial-birthday .eb-credit{text-align:center;width:clamp(90px,26%,112px)}.public-invitation--editorial-birthday .eb-credit__photo{width:100%;aspect-ratio:1;overflow:hidden;background:var(--eb-ivory-deep);border:1px solid var(--eb-ink);margin:0 auto}.public-invitation--editorial-birthday .eb-credit__photo img{display:block;width:100%;height:100%;object-fit:cover}.public-invitation--editorial-birthday .eb-credit__role{margin:10px 0 0;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .eb-credit__name{margin:2px 0 0;font-size:.94rem;font-weight:700;color:var(--eb-ink)}.public-invitation--editorial-birthday .eb-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-auto-rows:1fr;gap:14px;position:relative;z-index:2}.public-invitation--editorial-birthday .eb-gallery__tile{display:block;width:100%;padding:0;border:1px solid var(--eb-line);background:0 0;cursor:pointer;position:relative;aspect-ratio:1;overflow:hidden}.public-invitation--editorial-birthday .eb-gallery__tile--feature{grid-column:span 2;grid-row:span 2}.public-invitation--editorial-birthday .eb-gallery__tile img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.15);transition:transform .6s var(--ease-out),filter .6s var(--ease-out)}.public-invitation--editorial-birthday .eb-gallery__tile:hover img{transform:scale(1.04);filter:grayscale(0)}.public-invitation--editorial-birthday .eb-video{position:relative;z-index:2;max-width:640px;margin:0 auto;border:1px solid var(--eb-line);overflow:hidden}.public-invitation--editorial-birthday .eb-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.public-invitation--editorial-birthday .eb-grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;max-width:720px;margin:0 auto;position:relative;z-index:2;background:var(--eb-line);border:1px solid var(--eb-line)}.public-invitation--editorial-birthday .eb-card{background:var(--eb-ivory);padding:24px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px}.public-invitation--editorial-birthday .eb-gift__kind{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .eb-gift__provider{font-weight:700;color:var(--eb-ink);font-size:1rem}.public-invitation--editorial-birthday .eb-gift__number{font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--eb-ink)}.public-invitation--editorial-birthday .eb-gift__holder{font-size:.78rem;color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .eb-gift__qr{width:124px;margin-top:6px}.public-invitation--editorial-birthday .eb-gift__link{color:var(--eb-ink);font-size:.82rem;display:inline-flex;align-items:center;gap:5px;text-decoration:underline}.public-invitation--editorial-birthday .eb-card strong{color:var(--eb-ink);font-size:.98rem;display:block}.public-invitation--editorial-birthday .eb-card p{margin:0;font-size:.84rem;color:var(--color-ink-soft);line-height:1.6}.public-invitation--editorial-birthday .eb-chip--copy{margin-top:6px}.public-invitation--editorial-birthday .eb-block--form{max-width:520px;margin:0 auto}.public-invitation--editorial-birthday .eb-block--qr{max-width:380px;margin:0 auto 18px;text-align:center}.public-invitation--editorial-birthday .pi-checkin-qr{background:0 0;border:0;box-shadow:none;padding:0;margin:0 auto}.public-invitation--editorial-birthday .pi-checkin-qr__label{color:var(--eb-ink)}.public-invitation--editorial-birthday .pi-checkin-qr__hint{color:var(--eb-ink-faint)}.public-invitation--editorial-birthday .eb-block--form .form-card{background:0 0;border:0;box-shadow:none;padding:0}.public-invitation--editorial-birthday .eb-wishes{display:flex;flex-direction:column;margin-top:20px;position:relative;z-index:2}.public-invitation--editorial-birthday .guestbook__item{background:0 0;padding:14px 0;border-radius:0;border-bottom:1px solid var(--eb-line-soft)}.public-invitation--editorial-birthday .eb-wish__att{display:inline-block;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--eb-ink-faint);margin:2px 0 4px}.public-invitation--editorial-birthday .eb-block--note{max-width:560px;margin:0 auto;display:flex;gap:12px;align-items:flex-start;text-align:left}.public-invitation--editorial-birthday .eb-note__icon{color:var(--eb-ink-faint);flex-shrink:0;margin-top:2px}.public-invitation--editorial-birthday .eb-block--note p{margin:0;color:var(--color-ink-soft);line-height:1.7}.public-invitation--editorial-birthday .eb-contact{text-align:center;margin-top:14px;color:var(--eb-ink-faint);font-size:.82rem;position:relative;z-index:2}.public-invitation--editorial-birthday .eb-footer{text-align:center;padding:44px 18px 60px;position:relative;z-index:2;border-top:1px solid var(--eb-line)}.public-invitation--editorial-birthday .pi-footer__thanks{color:var(--color-ink-soft);font-size:.86rem}.public-invitation--editorial-birthday .pi-hero,.public-invitation--editorial-birthday .pi-main,.public-invitation--editorial-birthday .pi-section{position:relative;z-index:2}.public-invitation--editorial-birthday .pi-float-nav{background:var(--eb-ivory);border:1px solid var(--eb-ink);box-shadow:none;border-radius:0}.public-invitation--editorial-birthday .pi-float-nav__item{color:var(--eb-ink)}.public-invitation--editorial-birthday .pi-float-nav__item.is-active{color:var(--eb-ivory);background:var(--eb-ink)}.public-invitation--editorial-birthday .pi-hero{background:0 0;padding:44px 0 20px}.public-invitation--editorial-birthday .pi-section{padding-left:24px;padding-right:24px}.public-invitation--editorial-birthday .reveal{opacity:0;transform:translateY(12px);filter:blur(3px);transition:opacity .9s cubic-bezier(.16, 1, .3, 1),transform .9s cubic-bezier(.16, 1, .3, 1),filter .9s ease}.public-invitation--editorial-birthday .reveal.is-visible{opacity:1;transform:translateY(0);filter:blur(0)}@media (max-width:560px){.public-invitation--editorial-birthday .eb-gallery__tile--feature{grid-column:span 2;grid-row:span 1;aspect-ratio:2}.public-invitation--editorial-birthday .eb-toc__name{white-space:normal}}@media (prefers-reduced-motion:reduce){.public-invitation--editorial-birthday .eb-open,.public-invitation--editorial-birthday .eb-spotlight{animation:none}.public-invitation--editorial-birthday .eb-gallery__tile img{transition:none}.public-invitation--editorial-birthday .reveal{filter:none;transform:none;transition:opacity .3s ease}}