.admin-aftermovie{z-index:3;touch-action:pan-y;gap:18px;display:grid;position:relative;overflow:visible}.admin-film-tab{padding-bottom:calc(var(--ap-bottom-nav-height,96px) + 48px);z-index:3;position:relative;overflow:visible}.admin-aftermovie__status .admin-premium-heading{margin:6px 0 10px}.admin-aftermovie__badge{border:1px solid var(--ap-border-strong,#b8954a61);color:var(--ap-gold,#9a742e);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:6px 12px;font-size:.72rem;display:inline-flex}.admin-aftermovie__meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0;display:grid}.admin-aftermovie__meta dt{letter-spacing:.12em;text-transform:uppercase;color:var(--ap-text-muted,#7a6e5c);font-size:.68rem}.admin-aftermovie__meta dd{color:var(--ap-text,#2c2419);margin:4px 0 0}.admin-aftermovie__legal,.admin-aftermovie__hint,.admin-aftermovie__error{color:var(--ap-text-muted,#7a6e5c);margin-top:14px;font-size:.86rem;line-height:1.5}.admin-aftermovie__error{color:#b42318}.admin-aftermovie__section-title{font-family:var(--font-serif,Georgia, serif);color:var(--ap-text,#2c2419);margin:0;font-size:1.15rem}.admin-aftermovie__lead{color:var(--ap-text,#2c2419);margin:8px 0 0;font-size:.88rem;line-height:1.5}.admin-aftermovie__count{color:var(--ap-gold,#9a742e);white-space:nowrap;margin:0;font-size:.78rem}.admin-aftermovie__status-note{border:1px solid var(--ap-border,#b8954a2e);background:var(--ap-success-bg,#3d7a5424);color:var(--ap-text,#2c2419);border-radius:12px;margin-top:12px;padding:10px 12px;font-size:.88rem}.admin-aftermovie__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-aftermovie__filters{margin-top:14px}.admin-aftermovie__picker{overflow:visible}.admin-aftermovie__grid{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:min(68vh,720px);margin-top:14px;padding-bottom:8px;padding-right:2px;display:grid;overflow:hidden auto}@media (min-width:720px){.admin-aftermovie__grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:min(72vh,820px)}}@media (min-width:1024px){.admin-aftermovie__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.admin-aftermovie__tile{cursor:pointer;text-align:left;color:#f5f1e8cc;background:#0a1612;border:2px solid #ffffff1f;border-radius:14px;padding:0;position:relative;overflow:hidden}.admin-aftermovie__tile:disabled{opacity:.72;cursor:not-allowed}.admin-aftermovie__tile img,.admin-aftermovie__thumb-fallback{aspect-ratio:1;object-fit:cover;background:#081c14e6;width:100%;display:block}.admin-aftermovie__thumb-fallback{color:#f5f1e873;text-align:center;place-items:center;padding:8px;font-size:.72rem;display:grid}.admin-aftermovie__tile-meta{gap:2px;padding:8px 10px 10px;font-size:.72rem;line-height:1.35;display:grid}.admin-aftermovie__tile-meta strong{color:#e1c467f2}.admin-aftermovie__tile-date{color:#f5f1e873}.admin-aftermovie__tile.is-selected{background:#0c3024f2;border-color:#e1c467d9;box-shadow:0 0 0 1px #e1c46759}.admin-aftermovie__check{color:#0a1612;background:#e1c467f2;border-radius:999px;place-items:center;width:26px;height:26px;font-size:.85rem;font-weight:700;display:grid;position:absolute;top:8px;right:8px}.admin-aftermovie__empty{border:1px dashed var(--ap-border-strong,#b8954a61);text-align:center;color:var(--ap-text,#2c2419);border-radius:14px;justify-items:center;gap:10px;margin-top:16px;padding:20px 16px;display:grid}.admin-aftermovie__unlock{margin-top:14px}.admin-aftermovie__order{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.admin-aftermovie__order li{border:1px solid var(--ap-border,#b8954a2e);background:var(--ap-bg-soft,#f7f0e6);color:var(--ap-text,#2c2419);border-radius:10px;grid-template-columns:auto 48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;font-size:.82rem;display:grid}.admin-aftermovie__order-index{width:22px;color:var(--ap-gold,#9a742e);font-weight:600}.admin-aftermovie__order-thumb{object-fit:cover;background:#0a1612;border-radius:8px;width:48px;height:48px}.admin-aftermovie__order-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.admin-aftermovie__order button,.admin-aftermovie__poster-btn{border:1px solid var(--ap-border-strong,#b8954a61);background:var(--ap-card-solid,#fffcf8);color:var(--ap-text,#2c2419);cursor:pointer;border-radius:8px;min-height:36px;margin:0;padding:8px 10px;font-size:.72rem}.admin-aftermovie__poster-list{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.admin-aftermovie__poster-btn{text-align:center;gap:8px;width:100%;padding:8px;display:grid}.admin-aftermovie__poster-btn img{aspect-ratio:1;object-fit:cover;border-radius:10px;width:100%}.admin-aftermovie__poster-btn.is-active{color:#e8c85d;background:#0c3024a6;border-color:#e1c467b3}.admin-aftermovie__details{gap:12px;display:grid}.admin-aftermovie__field{color:var(--ap-text,#2c2419);gap:6px;font-size:.82rem;display:grid}.admin-aftermovie__field input,.admin-aftermovie__field select,.admin-aftermovie__field textarea,.admin-aftermovie__details input,.admin-aftermovie__details select,.admin-aftermovie__details textarea{border:1px solid var(--ap-border-strong,#b8954a61);background:var(--ap-card-solid,#fffcf8);color:var(--ap-text,#2c2419);border-radius:10px;width:100%;padding:10px 12px}.admin-aftermovie__preview{background:#000;border-radius:14px;width:100%;margin-top:10px}.admin-aftermovie__preview-slideshow{max-height:min(52vh,420px);margin-top:14px}.admin-aftermovie__preview-slideshow.aftermovie-slideshow{min-height:280px;max-height:min(52vh,420px)}.aftermovie-slideshow{color:#f5f1e8;background:#050c0a;border-radius:16px;flex-shrink:0;width:min(920px,100%);min-height:min(52svh,460px);margin-top:18px;position:relative;overflow:hidden}.admin-aftermovie__preview-slideshow .aftermovie-slideshow__stage,.admin-aftermovie__preview-slideshow .aftermovie-slideshow__media{height:min(46vh,360px);min-height:240px}.aftermovie-slideshow__bg{object-fit:cover;opacity:.35;filter:blur(8px);width:100%;height:100%;position:absolute;inset:0}.aftermovie-slideshow__stage{z-index:1;touch-action:pan-y;-webkit-user-select:none;user-select:none;place-items:center;height:min(52svh,460px);min-height:min(52svh,460px);display:grid;position:relative}.aftermovie-slideshow__media{object-fit:contain;object-position:center center;background:0 0;width:100%;height:min(52svh,460px);max-height:100%}.aftermovie-slideshow__media--photo{animation:4.2s ease-out both aftermovie-kenburns}@keyframes aftermovie-kenburns{0%{transform:scale(1)}to{transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){.aftermovie-slideshow__media--photo{animation:none}}.aftermovie-slideshow__card{text-align:center;background:radial-gradient(at 50% 28%,#081c1447,#050c0ac7 70%);align-content:start;justify-items:center;gap:10px;padding:clamp(48px,14%,96px) 28px 28px;display:grid;position:absolute;inset:0}.aftermovie-slideshow__card h2{font-family:var(--font-serif,Georgia, serif);margin:0;font-size:clamp(1.6rem,4vw,2.6rem);font-weight:500}.aftermovie-slideshow__card--date{text-align:center;padding:clamp(40px,12%,88px) 24px 28px}.aftermovie-slideshow__date{font-family:var(--font-serif,Georgia, "Times New Roman", serif);letter-spacing:.06em;color:#f5f1e8f5;text-wrap:balance;margin:0;font-size:clamp(1.6rem,6vw,2.6rem);font-weight:600}.aftermovie-slideshow__eyebrow{letter-spacing:.28em;text-transform:uppercase;color:#e1c467e6;font-size:.68rem}.aftermovie-slideshow__brand{letter-spacing:.2em;text-transform:uppercase;color:#f5f1e88c;margin-top:8px;font-size:.78rem}.aftermovie-slideshow__controls{z-index:2;background:linear-gradient(#0000,#050c0aeb);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;display:flex;position:absolute;bottom:0;left:0;right:0}.aftermovie-slideshow__controls button,.aftermovie-slideshow__link{color:#f5f1e8;background:#0a1e168c;border:1px solid #d4af3747;border-radius:999px;padding:8px 12px;font-size:.78rem;text-decoration:none}.aftermovie-slideshow__progress{color:#f5f1e88c;margin-left:auto;font-size:.72rem}.aftermovie-slideshow__error{text-align:center;color:#f5f1e8d9;position:absolute;inset:auto 16px 72px}.aftermovie-slideshow--empty{color:#f5f1e899;place-items:center;min-height:200px;display:grid}.admin-aftermovie__actions{flex-wrap:wrap;gap:10px;display:flex}.admin-aftermovie__actions--sticky{z-index:2;background:var(--ap-card-solid,#fffcf8);border:1px solid var(--ap-border,#b8954a2e);box-shadow:var(--ap-shadow,0 10px 32px #2c24190f);border-radius:18px;margin-top:8px;padding:14px;position:relative;bottom:auto}.admin-aftermovie__actions button{border:1px solid var(--ap-border-strong,#b8954a61);background:var(--ap-card-solid,#fffcf8);color:var(--ap-text,#2c2419);cursor:pointer;border-radius:999px;min-height:44px;padding:12px 18px}.admin-aftermovie__actions button:disabled{opacity:.45;cursor:not-allowed}.admin-aftermovie__cta-primary{letter-spacing:.02em;width:100%;min-height:56px;font-size:1.05rem;font-weight:800;box-shadow:inset 0 1px #ffffff47,0 10px 28px #3d7a5452;color:#fff!important;background:linear-gradient(#4f9a68 0%,#3d7a54 100%)!important;border:none!important;border-radius:18px!important}.admin-aftermovie__cta-primary:hover:not(:disabled){box-shadow:inset 0 1px #ffffff52,0 14px 34px #3d7a5466;background:linear-gradient(#5aad76 0%,#45865c 100%)!important}.admin-aftermovie__cta-primary:disabled{opacity:.55;box-shadow:none}.admin-aftermovie__actions--sticky .admin-aftermovie__hint{text-align:center;width:100%;margin-top:8px}.post-wedding__hero{text-align:center;min-height:100svh;padding:clamp(36px, 7vw, 64px) 22px calc(88px + env(safe-area-inset-bottom,0px));color:#f5f1e8;background:radial-gradient(at 50% 30%,#1f563e47,#0000 55%),linear-gradient(#040c09 0%,#07140f 100%);flex-direction:column;justify-content:flex-start;align-items:center;display:flex;position:relative}.post-wedding__copy{flex-direction:column;flex-shrink:0;align-items:center;width:min(720px,100%);margin:0 auto;display:flex}.post-wedding .aftermovie-slideshow{width:min(920px,100%);min-height:min(48svh,420px);margin-top:14px}.post-wedding .aftermovie-slideshow__stage,.post-wedding .aftermovie-slideshow__media{height:min(48svh,420px);min-height:min(48svh,420px)}.post-wedding__eyebrow{letter-spacing:.32em;text-transform:uppercase;color:#e2c767fa;margin:0;font-size:clamp(.82rem,2.4vw,.95rem);font-weight:600}.post-wedding__headline{max-width:min(14em,100%);font-family:var(--font-serif,Georgia, serif);letter-spacing:-.03em;color:#f5f1e8;overflow-wrap:break-word;text-align:center;margin:20px 0 0;font-size:clamp(1.85rem,7.2vw,3.35rem);font-weight:500;line-height:1.1}.post-wedding__headline-line{display:inline}.post-wedding__lead{color:#f5f1e8bd;max-width:min(620px,100%);margin:20px 0 0;font-size:clamp(.92rem,3.2vw,1.02rem);line-height:1.75}.post-wedding__names{flex-direction:column;align-items:center;gap:8px;margin:26px 0 0;display:flex}.post-wedding__names-title{font-family:var(--font-serif,Georgia, "Times New Roman", serif);letter-spacing:.04em;color:#e8d07a;text-wrap:balance;margin:0;font-size:clamp(1.35rem,4.2vw,1.85rem);font-weight:700}.post-wedding__names-date{letter-spacing:.18em;text-transform:uppercase;color:#e2c767c7;margin:0;font-size:clamp(.78rem,2.4vw,.92rem);font-weight:500}.fade-word{opacity:0;filter:blur(4px);animation:.9s cubic-bezier(.22,1,.36,1) forwards fade-word-in;display:inline-block;transform:translateY(.35em)}@keyframes fade-word-in{to{opacity:1;filter:blur();transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.fade-word{opacity:1;filter:none;animation:none;transform:none}}.post-wedding__poster-stage{max-width:920px;margin-top:28px;position:relative}.post-wedding__poster{aspect-ratio:16/9;object-fit:cover;border:1px solid #d4af3729;border-radius:18px;width:100%;display:block;box-shadow:0 30px 80px #0006}.post-wedding__poster--empty{background:#ffffff0a}.post-wedding__cta-row{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.post-wedding__cta{letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-size:.82rem;text-decoration:none;display:inline-flex}.post-wedding__cta--primary{color:#07110d;background:linear-gradient(110deg,#e1c467,#cfa83d);border:0;font-weight:600}.post-wedding__cta--ghost{color:#f5f1e8e0;background:0 0;border:1px solid #f5f1e847}.post-wedding__closing{font-family:var(--font-serif,Georgia, serif);color:#f5f1e8e0;text-align:center;margin-top:18px;font-size:1.2rem}.aftermovie-bgm{z-index:9999;left:50%;bottom:max(28px, env(safe-area-inset-bottom,0px) + 20px);pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;transform:translate(-50%)}.aftermovie-bgm__unlock{pointer-events:auto;color:#07110d;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:linear-gradient(110deg,#e1c467,#cfa83d);border:1px solid #e2c7678c;border-radius:999px;min-width:148px;min-height:52px;padding:0 26px;font-size:.8rem;font-weight:700;box-shadow:0 14px 40px #00000073}.aftermovie-bgm__unlock--on{color:#e2c767fa;background:#07110de6;border-color:#e2c76773}.aftermovie-bgm__error{pointer-events:none;color:#f5f1e8;background:#000000a6;border-radius:999px;margin:0;padding:6px 12px;font-size:.75rem}.post-wedding__nav{z-index:20;background:#040c09e0;border-bottom:1px solid #ffffff0f;flex-wrap:wrap;gap:14px 18px;padding:18px 22px;display:flex;position:sticky;top:0}.post-wedding__nav a{color:#f5f1e8b8;letter-spacing:.06em;text-transform:uppercase;font-size:.82rem;text-decoration:none}.aftermovie-player{background:#000;border:1px solid #d4af3724;border-radius:18px;margin-top:24px;position:relative;overflow:hidden}.aftermovie-player__video{aspect-ratio:16/9;background:#000;width:100%;display:block}.aftermovie-player__controls{background:linear-gradient(#0000,#000000b8);flex-wrap:wrap;align-items:center;gap:8px;padding:12px;display:flex}.aftermovie-player__controls button{color:#f5f1e8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff2e;border-radius:999px;padding:8px 12px;font-size:.75rem}.aftermovie-player__progress{background:#ffffff2e;border-radius:999px;flex:1;min-width:120px;height:3px;overflow:hidden}.aftermovie-player__progress span{background:#e1c467;height:100%;display:block}.aftermovie-player__loading,.aftermovie-player__error{color:#f5f1e8cc;font-size:.9rem;position:absolute;inset:auto 12px 64px}.aftermovie-player__fallback-cta{color:#e1c467;text-underline-offset:3px;margin-top:10px;text-decoration:underline;display:inline-block}.couple-after-teaser{color:#f5f1e8c7;background:#0818128c;border:1px solid #d4af372e;border-radius:14px;margin:0 22px 18px;padding:14px 16px;font-size:.92rem;line-height:1.5}@media (prefers-reduced-motion:reduce){.post-wedding__hero,.aftermovie-player{transition:none}}
