/* Tema Pinky Pink Couture — namespace .ti-theme-pinky-pink-couture, prefix kelas ppc-
   (Premium · Luxury Fashion Editorial: rose pink, raspberry, dusty pink, ivory, champagne gold, cocoa brown)
   Sumber: assets/source/style.src.css → python3 buildcss.py style.src.css ../../style.css
   Penanda: tanda section tunggal = .ti-theme-pinky-pink-couture ; ganda = keadaan undangan sudah dibuka (.ti-opened / .ppc-opened) */
.ti-theme-pinky-pink-couture {
  --ppc-rose: #E88AA3; --ppc-rasp: #B8325F; --ppc-rasp-d: #8A1E46; --ppc-dusty: #D9A0A8; --ppc-blush: #F8DCE1; --ppc-blush2: #FDEFF1;
  --ppc-ivory: #FFF8F3; --ppc-champ: #D9B98A; --ppc-gold: #C9A26B; --ppc-gold-l: #EBD3A8; --ppc-cocoa: #5A3A34; --ppc-cocoa-d: #3B2422; --ppc-soft: #86656A;
  --ppc-ease: cubic-bezier(.22,.61,.24,1); --ppc-ease2: cubic-bezier(.65,0,.25,1);
  --ti-ease: cubic-bezier(.22,.61,.24,1); --ti-dur: 1.1s;
  --ppc-petal: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cdefs%3E%3CradialGradient id='a' cx='.4' cy='.35' r='.75'%3E%3Cstop offset='0' stop-color='%23FBC9D6'/%3E%3Cstop offset='1' stop-color='%23C93E6A'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cpath d='M20 38C6 34 3 18 9 9c4-6 9-6 11-3 2-3 7-3 11 3 6 9 3 25-11 29Z' fill='url(%23a)'/%3E%3C/svg%3E");
  background: var(--ppc-ivory); color: var(--ppc-cocoa); font-family: "Jost", "Segoe UI", sans-serif; font-weight: 300; font-size: 16px; line-height: 1.75;
  -webkit-font-smoothing: antialiased; overflow-x: hidden;
}
.ti-theme-pinky-pink-couture h1, .ti-theme-pinky-pink-couture h2, .ti-theme-pinky-pink-couture h3 { margin: 0; font-weight: 400; }
.ti-theme-pinky-pink-couture img { max-width: 100%; height: auto; }
.ti-theme-pinky-pink-couture .ppc-kicker { font-family: "Jost", sans-serif; font-weight: 400; font-size: 11px; letter-spacing: .42em; text-transform: uppercase; color: var(--ppc-rasp); margin: 0 0 10px; padding-left: .42em; }
.ti-theme-pinky-pink-couture .ppc-label { display: block; font-family: "Italiana", Georgia, serif; font-style: normal; font-size: 15px; letter-spacing: .16em; text-transform: uppercase; color: var(--ppc-rasp); margin: 0 0 6px; }
.ti-theme-pinky-pink-couture .ppc-folio { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 0 0 18px; font-family: "Italiana", serif; font-size: 12px; letter-spacing: .3em; text-transform: uppercase; color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-folio span { font-family: "Bodoni Moda", serif; font-size: 13px; letter-spacing: .06em; color: var(--ppc-rasp); padding-right: 12px; border-right: 1px solid var(--ppc-gold); }
.ti-theme-pinky-pink-couture .ppc-title { font-family: "Bodoni Moda", Didot, Georgia, serif; font-weight: 500; font-size: clamp(36px, 10vw, 66px); line-height: 1.04; letter-spacing: -.01em; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-title em { font-family: "Allura", cursive; font-style: normal; font-weight: 400; font-size: 1.15em; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-text { max-width: 600px; margin: 0 auto 22px; color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-text--sm { font-size: 14.5px; margin-bottom: 8px; }
.ti-theme-pinky-pink-couture .ppc-text--light { color: rgba(255,240,244,.88); }
.ti-theme-pinky-pink-couture .ppc-center { text-align: center; }
.ti-theme-pinky-pink-couture .ppc-divider { display: block; width: 380px; max-width: 84%; height: auto; margin: 16px auto 0; }
.ti-theme-pinky-pink-couture .ppc-link { display: inline-block; color: var(--ppc-rasp); text-decoration: none; font-size: 13.5px; letter-spacing: .08em; background: linear-gradient(var(--ppc-gold), var(--ppc-gold)) 0 100% / 0 1px no-repeat; transition: background-size .6s var(--ppc-ease); padding-bottom: 2px; }
.ti-theme-pinky-pink-couture .ppc-link:hover { background-size: 100% 1px; }

/* Tombol: raspberry satin + list emas */
.ti-theme-pinky-pink-couture .ppc-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 12px 34px; overflow: hidden; border: 1px solid var(--ppc-gold); border-radius: 2px; background: linear-gradient(160deg, #C9406C 0%, #A42652 55%, #8A1E46 100%); color: #FFF3F5; font-family: "Jost", sans-serif; font-weight: 400; font-size: 12px; letter-spacing: .32em; text-transform: uppercase; text-decoration: none; cursor: pointer; box-shadow: inset 0 0 0 3px rgba(255,255,255,.08), inset 0 0 0 4px rgba(235,211,168,.55), 0 16px 30px -16px rgba(138,30,70,.8); transition: transform .5s var(--ppc-ease), box-shadow .5s; -webkit-tap-highlight-color: transparent; }
.ti-theme-pinky-pink-couture .ppc-btn::before { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, rgba(255,255,255,0) 30%, rgba(255,230,238,.45) 50%, rgba(255,255,255,0) 70%); transform: translateX(-120%); transition: transform 1.1s var(--ppc-ease); }
.ti-theme-pinky-pink-couture .ppc-btn:hover { transform: translateY(-2px); }
.ti-theme-pinky-pink-couture .ppc-btn:hover::before { transform: translateX(120%); }
.ti-theme-pinky-pink-couture .ppc-btn:focus-visible { outline: 2px solid var(--ppc-gold); outline-offset: 3px; }
.ti-theme-pinky-pink-couture .ppc-btn svg { flex: none; }
.ti-theme-pinky-pink-couture .ppc-btn--small { min-height: 44px; padding: 9px 24px; font-size: 11px; }
.ti-theme-pinky-pink-couture .ppc-btn--ghost { margin-top: 30px; background: transparent; color: var(--ppc-rasp); box-shadow: none; }

/* =============================== LOADING =============================== */
.ti-theme-pinky-pink-couture .ppc-loader { position: fixed; inset: 0; z-index: 60; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; background: radial-gradient(70% 50% at 50% 45%, #FFFFFF 0%, var(--ppc-blush2) 55%, var(--ppc-blush) 100%); transition: opacity .9s ease, visibility 0s linear .9s; animation: ppc-loader-auto .8s ease 4s forwards; }
.ti-theme-pinky-pink-couture.ppc-loaded .ppc-loader { opacity: 0; visibility: hidden; pointer-events: none; }
.ti-theme-pinky-pink-couture .ppc-loader__mono { display: grid; place-items: center; width: 84px; height: 84px; background: url(assets/img/monogram.svg) center / contain no-repeat; font-family: "Bodoni Moda", serif; font-size: 22px; color: var(--ppc-rasp); animation: ppc-pulse 2.4s ease-in-out infinite; }
.ti-theme-pinky-pink-couture .ppc-loader__brand { margin: 0; font-family: "Italiana", serif; font-size: 13px; letter-spacing: .5em; padding-left: .5em; text-transform: uppercase; color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-loader__line { position: relative; width: 140px; height: 1px; background: rgba(201,162,107,.3); overflow: hidden; }
.ti-theme-pinky-pink-couture .ppc-loader__line i { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(184,50,95,0), var(--ppc-rasp), rgba(184,50,95,0)); animation: ppc-line 1.4s ease-in-out infinite; }

/* =============================== PEMBUKA: gerbang lacquer pink + lengkung mawar =============================== */
.ti-theme-pinky-pink-couture .ppc-cover { position: fixed; inset: 0; z-index: 40; overflow: hidden; pointer-events: none; perspective: 1500px; perspective-origin: 50% 46%; background: #3b2422; transition: visibility 0s linear 3s, background-color 1.2s ease .5s; }
.ti-theme-pinky-pink-couture .ppc-cover__card, .ti-theme-pinky-pink-couture .ppc-cover button { pointer-events: auto; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-cover, .ppc-opened.ti-theme-pinky-pink-couture .ppc-cover { visibility: hidden; background-color: rgba(59,36,34,0); }
.ti-opened.ti-theme-pinky-pink-couture .ppc-cover *, .ppc-opened.ti-theme-pinky-pink-couture .ppc-cover * { pointer-events: none; }
.ti-theme-pinky-pink-couture .ppc-door { position: absolute; top: 0; bottom: 0; width: 50.15%; z-index: 3; backface-visibility: hidden; will-change: transform; background: #e7a2b1; }
.ti-theme-pinky-pink-couture .ppc-door picture, .ti-theme-pinky-pink-couture .ppc-door img { display: block; width: 100%; height: 100%; }
.ti-theme-pinky-pink-couture .ppc-door img { object-fit: cover; }
.ti-theme-pinky-pink-couture .ppc-door--l { left: 0; transform-origin: 0 50%; }
.ti-theme-pinky-pink-couture .ppc-door--l img { object-position: 100% 50%; }
.ti-theme-pinky-pink-couture .ppc-door--r { right: 0; transform-origin: 100% 50%; }
.ti-theme-pinky-pink-couture .ppc-door--r img { object-position: 0 50%; }
.ti-theme-pinky-pink-couture .ppc-door__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(59,20,30,0), rgba(59,20,30,.6)); opacity: 0; }
.ti-theme-pinky-pink-couture .ppc-door--r .ppc-door__shade { background: linear-gradient(270deg, rgba(59,20,30,0), rgba(59,20,30,.6)); }
.ti-theme-pinky-pink-couture .ppc-door__sheen { position: absolute; inset: 0; background: linear-gradient(100deg, rgba(255,255,255,0) 40%, rgba(255,240,244,.5) 50%, rgba(255,255,255,0) 60%) -100% 0 / 260% 100% no-repeat; mix-blend-mode: soft-light; opacity: 0; }
.ti-theme-pinky-pink-couture .ppc-seam { position: absolute; left: 50%; top: 0; bottom: 0; z-index: 4; width: 2px; margin-left: -1px; background: linear-gradient(180deg, rgba(255,236,240,0), rgba(255,236,240,.95) 25%, rgba(255,214,226,.95) 75%, rgba(255,236,240,0)); box-shadow: 0 0 16px 5px rgba(255,200,216,.55); opacity: 0; }
.ti-theme-pinky-pink-couture .ppc-arch { position: absolute; inset: 0; z-index: 6; display: block; pointer-events: none; will-change: transform, opacity; }
.ti-theme-pinky-pink-couture .ppc-arch img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 0; filter: drop-shadow(0 18px 22px rgba(90,20,40,.35)); }
.ti-theme-pinky-pink-couture .ppc-arch--l { clip-path: inset(0 50% 0 0); }
.ti-theme-pinky-pink-couture .ppc-arch--r { clip-path: inset(0 0 0 50%); }
.ti-theme-pinky-pink-couture .ppc-cover__card { position: absolute; left: 50%; top: 58%; z-index: 8; width: min(80vw, 420px); translate: -50% -50%; display: flex; flex-direction: column; align-items: center; padding: 26px 22px 24px; text-align: center; color: var(--ppc-cocoa-d); background: linear-gradient(180deg, rgba(255,250,247,.94), rgba(253,236,240,.9)); border: 1px solid rgba(201,162,107,.85); box-shadow: inset 0 0 0 6px rgba(255,255,255,.55), inset 0 0 0 7px rgba(201,162,107,.45), 0 34px 60px -26px rgba(90,20,40,.7); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); transition: opacity .8s ease, transform 1.1s var(--ppc-ease), filter .8s ease; }
.ti-theme-pinky-pink-couture .ppc-cover__mono { display: grid; place-items: center; width: 62px; height: 62px; margin-bottom: 10px; background: url(assets/img/monogram.svg) center / contain no-repeat; font-family: "Bodoni Moda", serif; font-size: 16px; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-cover__names { display: flex; flex-direction: column; align-items: center; font-family: "Bodoni Moda", Didot, Georgia, serif; font-weight: 500; font-size: clamp(38px, 10.5vw, 68px); line-height: .95; letter-spacing: -.01em; color: var(--ppc-cocoa-d); overflow-wrap: anywhere; }
.ti-theme-pinky-pink-couture .ppc-cover__names em, .ti-theme-pinky-pink-couture .ppc-hero__names em, .ti-theme-pinky-pink-couture .ppc-closing__names em { font-family: "Allura", cursive; font-style: normal; font-weight: 400; font-size: .7em; line-height: 1.05; letter-spacing: 0; text-transform: none; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-cover__date { margin: 12px 0 14px; font-family: "Italiana", serif; font-size: 15px; letter-spacing: .24em; text-transform: uppercase; color: var(--ppc-cocoa); }
.ti-theme-pinky-pink-couture .ppc-cover__guest { margin-bottom: 18px; padding: 8px 26px; border-top: 1px solid rgba(201,162,107,.6); border-bottom: 1px solid rgba(201,162,107,.6); }
.ti-theme-pinky-pink-couture .ppc-cover__guest:empty { display: none; }
.ti-theme-pinky-pink-couture .ppc-cover__guest .ti-guest__label { font-size: 12px; letter-spacing: .05em; color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-cover__guest .ti-guest__name { font-family: "Bodoni Moda", serif; font-weight: 500; font-size: 22px; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-flash { position: absolute; inset: -10%; z-index: 10; pointer-events: none; opacity: 0; background: radial-gradient(40% 55% at 50% 48%, rgba(255,242,246,.95), rgba(255,190,210,.45) 45%, rgba(255,190,210,0) 75%); }

/* intro (sekali): pintu menyala → kilau lacquer → lengkung mawar turun → kartu & pita */
.ti-theme-pinky-pink-couture:not(.ppc-ready) .ppc-door { filter: brightness(.3); }
.ti-theme-pinky-pink-couture .ppc-arch, .ti-theme-pinky-pink-couture .ppc-cover__card > * { opacity: 0; animation: ppc-fade 1s ease 4.5s both; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-door { animation: ppc-door-in 1.4s ease .2s both; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-door__sheen { animation: ppc-sweep 1.8s ease-in-out .9s both; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-seam { animation: ppc-fade-to 1.2s ease 1s both; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-arch { animation: ppc-drop 1.6s var(--ppc-ease) .7s both; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-cover__card { animation: ppc-card 1.3s var(--ppc-ease) 1.2s both; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-cover__card > * { animation: ppc-up 1.1s var(--ppc-ease) both; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-cover__card > :nth-child(1) { animation: ppc-bow-in 1.3s var(--ppc-ease) 1.5s both; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-cover__card > :nth-child(2) { animation-delay: 1.7s; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-cover__card > :nth-child(3) { animation-delay: 1.85s; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-cover__card > :nth-child(4) { animation-delay: 2s; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-cover__card > :nth-child(5) { animation-delay: 2.1s; }
.ti-theme-pinky-pink-couture.ppc-ready .ppc-cover__card > :nth-child(6) { animation: ppc-up 1.1s var(--ppc-ease) 2.25s both, ppc-glow 3.2s ease-in-out 3.6s infinite; }

/* buka: pita terangkat → kartu memudar → cahaya celah → daun pintu berayun → lengkung mawar tersibak → kelopak */
.ti-opened.ti-theme-pinky-pink-couture .ppc-cover__card, .ppc-opened.ti-theme-pinky-pink-couture .ppc-cover__card { opacity: 0; transform: translateY(-22px) scale(.97); filter: blur(4px); transition-duration: .7s, 1s, .7s; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-seam, .ppc-opened.ti-theme-pinky-pink-couture .ppc-seam { animation: ppc-seam-open 1.3s ease .15s both; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-door--l, .ppc-opened.ti-theme-pinky-pink-couture .ppc-door--l { animation: ppc-open-l 2.4s var(--ppc-ease2) .45s both; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-door--r, .ppc-opened.ti-theme-pinky-pink-couture .ppc-door--r { animation: ppc-open-r 2.4s var(--ppc-ease2) .45s both; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-door__shade, .ppc-opened.ti-theme-pinky-pink-couture .ppc-door__shade { animation: ppc-fade 1.6s ease .7s both; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-arch--l, .ppc-opened.ti-theme-pinky-pink-couture .ppc-arch--l { animation: ppc-part-l 2.1s var(--ppc-ease2) .4s both; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-arch--r, .ppc-opened.ti-theme-pinky-pink-couture .ppc-arch--r { animation: ppc-part-r 2.1s var(--ppc-ease2) .4s both; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-flash, .ppc-opened.ti-theme-pinky-pink-couture .ppc-flash { animation: ppc-flare 2s ease .35s both; }

/* kelopak (hanya sekali saat gerbang dibuka) */
.ti-theme-pinky-pink-couture .ppc-burst { position: fixed; left: 50%; top: 48%; z-index: 45; width: 0; height: 0; pointer-events: none; }
.ti-theme-pinky-pink-couture .ppc-burst i { position: absolute; left: 0; top: 0; width: var(--s, 14px); height: var(--s, 14px); background: var(--ppc-petal) center / contain no-repeat; opacity: 0; animation: ppc-burst var(--t, 2.6s) cubic-bezier(.15,.6,.35,1) var(--d, 0s) both; }

/* =============================== NAVIGASI & TOAST =============================== */
.ti-theme-pinky-pink-couture .ppc-nav { position: fixed; left: 12px; bottom: 12px; z-index: 30; display: flex; gap: 1px; max-width: calc(100vw - 84px); overflow-x: auto; scrollbar-width: none; padding: 4px 6px; border: 1px solid rgba(201,162,107,.7); border-radius: 999px; background: rgba(255,248,245,.9); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 14px 30px -16px rgba(120,30,60,.55); transform: translateY(160%); opacity: 0; transition: transform .7s var(--ppc-ease), opacity .7s; }
.ti-theme-pinky-pink-couture .ppc-nav::-webkit-scrollbar { display: none; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-nav, .ppc-opened.ti-theme-pinky-pink-couture .ppc-nav { transform: none; opacity: 1; transition-delay: 2.8s; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-nav.is-hidden, .ppc-opened.ti-theme-pinky-pink-couture .ppc-nav.is-hidden { transform: translateY(160%); opacity: 0; transition-delay: 0s; }
.ti-theme-pinky-pink-couture .ppc-nav a { position: relative; display: grid; place-items: center; flex: none; width: 38px; height: 38px; border-radius: 50%; color: var(--ppc-soft); text-decoration: none; transition: color .3s, background .4s; }
.ti-theme-pinky-pink-couture .ppc-nav a span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ti-theme-pinky-pink-couture .ppc-nav a:hover, .ti-theme-pinky-pink-couture .ppc-nav a.is-active { color: #FFF3F5; background: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-toast { position: fixed; left: 50%; bottom: 76px; z-index: 70; max-width: calc(100vw - 32px); padding: 12px 22px; border: 1px solid rgba(201,162,107,.8); background: rgba(255,250,247,.98); color: var(--ppc-cocoa-d); font-family: "Jost", sans-serif; font-weight: 400; font-size: 11.5px; letter-spacing: .16em; text-transform: uppercase; text-align: center; box-shadow: 0 18px 30px -16px rgba(120,30,60,.55); opacity: 0; transform: translate(-50%, 16px); transition: opacity .4s ease, transform .5s var(--ppc-ease); pointer-events: none; }
.ti-theme-pinky-pink-couture .ppc-toast.is-on { opacity: 1; transform: translate(-50%, 0); }
.ti-theme-pinky-pink-couture .ppc-toast::before { content: "\2665"; margin-right: 9px; color: var(--ppc-rasp); }

/* =============================== MAIN =============================== */
.ti-theme-pinky-pink-couture .ppc-main { position: relative; z-index: 2; overflow: clip; background: var(--ppc-ivory); }
.ti-theme-pinky-pink-couture .ppc-section { position: relative; padding: 96px 20px; text-align: center; overflow: hidden; }
.ti-theme-pinky-pink-couture .ppc-section > * { position: relative; z-index: 1; }
.ti-theme-pinky-pink-couture .ppc-head { margin: 0 auto 34px; }
.ti-theme-pinky-pink-couture .ppc-head .ppc-divider { clip-path: inset(0 50% 0 50%); transition: clip-path 1.6s var(--ppc-ease) .45s; }
.ti-theme-pinky-pink-couture .ppc-head.is-shown .ppc-divider { clip-path: inset(0 0 0 0); }
.ti-theme-pinky-pink-couture .ppc-ivory { background: url(assets/img/linen.webp) 0 0 / 360px auto, var(--ppc-ivory); }
.ti-theme-pinky-pink-couture .ppc-blush { background: radial-gradient(90% 50% at 50% 0%, #FFFFFF 0%, rgba(255,255,255,0) 70%), linear-gradient(180deg, var(--ppc-blush2), var(--ppc-blush) 60%, var(--ppc-blush2)); }
.ti-theme-pinky-pink-couture .ppc-rosegrad { background: radial-gradient(80% 60% at 50% 0%, rgba(255,255,255,.55), rgba(255,255,255,0) 70%), linear-gradient(170deg, #F6C9D3 0%, #EFAFBF 55%, #F7D2DA 100%); }
.ti-theme-pinky-pink-couture .ppc-section::after { content: ""; position: absolute; left: 50%; top: 34px; z-index: 0; width: 1px; height: 46px; background: linear-gradient(180deg, rgba(201,162,107,0), var(--ppc-gold)); }
/* bunga 2D yang muncul dari sisi halaman */
.ti-theme-pinky-pink-couture .ppc-side { position: absolute; z-index: 0; top: 40px; width: min(48vw, 360px); pointer-events: none; opacity: .95; }
.ti-theme-pinky-pink-couture .ppc-side--l { left: -18vw; }
.ti-theme-pinky-pink-couture .ppc-side--r { right: -18vw; transform: scaleX(-1); }

/* HERO — sampul majalah */
.ti-theme-pinky-pink-couture .ppc-hero { position: relative; display: grid; justify-items: center; gap: 22px; min-height: 100vh; padding: 84px 18px 110px; overflow: hidden; text-align: center; background: radial-gradient(70% 45% at 50% 30%, #FFFFFF 0%, rgba(255,255,255,0) 70%), linear-gradient(180deg, var(--ppc-blush2) 0%, var(--ppc-blush) 50%, #F3C3CF 100%); }
@supports (min-height: 100svh) { .ti-theme-pinky-pink-couture .ppc-hero { min-height: 100svh; } }
.ti-theme-pinky-pink-couture .ppc-hero::before { content: ""; position: absolute; inset: 14px; border: 1px solid rgba(201,162,107,.55); pointer-events: none; z-index: 1; }
.ti-theme-pinky-pink-couture .ppc-hero__bq { position: absolute; z-index: 0; width: min(62vw, 520px); pointer-events: none; filter: drop-shadow(0 18px 22px rgba(120,30,60,.25)); }
.ti-theme-pinky-pink-couture .ppc-hero__bq--a { right: -22vw; top: -8vw; transform: rotate(180deg) scaleX(-1); }
.ti-theme-pinky-pink-couture .ppc-hero__bq--b { left: -22vw; bottom: -4vw; }
.ti-theme-pinky-pink-couture .ppc-hero__mast { position: relative; z-index: 2; }
.ti-theme-pinky-pink-couture .ppc-hero__issue { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 14px; margin: 0 0 12px; font-family: "Jost", sans-serif; font-weight: 400; font-size: 10px; letter-spacing: .3em; text-transform: uppercase; color: var(--ppc-cocoa); }
.ti-theme-pinky-pink-couture .ppc-hero__issue span + span::before { content: "\2726"; margin-right: 14px; color: var(--ppc-gold); }
.ti-theme-pinky-pink-couture .ppc-hero__names { display: flex; flex-direction: column; align-items: center; font-family: "Bodoni Moda", Didot, Georgia, serif; font-weight: 500; font-size: clamp(52px, 16vw, 150px); line-height: .88; letter-spacing: -.015em; text-transform: uppercase; color: var(--ppc-cocoa-d); overflow-wrap: anywhere; }
.ti-theme-pinky-pink-couture .ppc-hero__names em { font-size: .55em; margin: .08em 0; }
.ti-theme-pinky-pink-couture .ppc-hero__cover { position: relative; z-index: 2; margin: 6px 18px 0 0; max-width: min(84vw, 560px); }
.ti-theme-pinky-pink-couture .ppc-hero__photo { position: relative; display: block; padding: 10px; background: #FFFFFF; box-shadow: 18px 18px 0 -1px var(--ppc-rasp), 18px 18px 0 0 var(--ppc-gold), 0 40px 60px -30px rgba(90,20,40,.6), inset 0 0 0 1px rgba(201,162,107,.7); }
.ti-theme-pinky-pink-couture .ppc-hero__photo img { display: block; width: auto; height: auto; max-width: 100%; max-height: 74vh; margin: 0 auto; }
.ti-theme-pinky-pink-couture .ppc-hero__photo--set img { width: 100%; max-height: none; }
.ti-theme-pinky-pink-couture .ppc-hero__ribbon { position: absolute; left: -16%; bottom: -12%; z-index: 3; width: 74%; pointer-events: none; transform: rotate(-8deg); filter: drop-shadow(0 12px 14px rgba(120,20,50,.3)); }
.ti-theme-pinky-pink-couture .ppc-hero__mono { position: absolute; right: -14px; top: -14px; z-index: 3; display: grid; place-items: center; width: 74px; height: 74px; border-radius: 50%; background: url(assets/img/monogram.svg) center / contain no-repeat, radial-gradient(circle, #FFF8F3 60%, rgba(255,248,243,0) 61%); font-family: "Bodoni Moda", serif; font-size: 18px; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-hero__lines { position: relative; z-index: 2; display: grid; gap: 10px; list-style: none; margin: 18px 0 0; padding: 0; max-width: 520px; }
.ti-theme-pinky-pink-couture .ppc-hero__lines li { font-family: "Bodoni Moda", serif; font-style: italic; font-size: 17px; line-height: 1.4; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-hero__lines span { display: block; font-family: "Italiana", serif; font-style: normal; font-size: 13px; letter-spacing: .26em; text-transform: uppercase; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-explore { position: relative; z-index: 2; display: inline-flex; flex-direction: column; align-items: center; gap: 10px; font-family: "Jost", sans-serif; font-size: 10px; letter-spacing: .32em; text-transform: uppercase; color: var(--ppc-cocoa); text-decoration: none; }
.ti-theme-pinky-pink-couture .ppc-explore i { position: relative; width: 1px; height: 38px; background: linear-gradient(180deg, var(--ppc-gold), rgba(201,162,107,0)); }
/* isi hero tampil bertahap setelah gerbang terbuka (sekali) */
.ti-theme-pinky-pink-couture .ppc-hero__mast > *, .ti-theme-pinky-pink-couture .ppc-hero__cover, .ti-theme-pinky-pink-couture .ppc-hero__lines, .ti-theme-pinky-pink-couture .ppc-explore, .ti-theme-pinky-pink-couture .ppc-hero__bq { opacity: 0; transition: opacity 1.2s ease, transform 1.4s var(--ppc-ease); }
.ti-theme-pinky-pink-couture .ppc-hero__mast > *, .ti-theme-pinky-pink-couture .ppc-hero__lines, .ti-theme-pinky-pink-couture .ppc-explore { transform: translateY(18px); }
.ti-theme-pinky-pink-couture .ppc-hero__cover { transform: translateY(28px); }
.ti-theme-pinky-pink-couture .ppc-hero__bq--a { transform: rotate(180deg) scaleX(-1) translateY(30px); }
.ti-theme-pinky-pink-couture .ppc-hero__bq--b { transform: translateX(-40px); }
.ti-opened.ti-theme-pinky-pink-couture .ppc-hero__mast > *, .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__mast > *, .ti-opened.ti-theme-pinky-pink-couture .ppc-hero__cover, .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__cover, .ti-opened.ti-theme-pinky-pink-couture .ppc-hero__lines, .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__lines, .ti-opened.ti-theme-pinky-pink-couture .ppc-explore, .ppc-opened.ti-theme-pinky-pink-couture .ppc-explore { opacity: 1; transform: none; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-hero__bq, .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__bq { opacity: 1; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-hero__bq--a, .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__bq--a { transform: rotate(180deg) scaleX(-1); transition-delay: 1.9s; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-hero__bq--b, .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__bq--b { transform: none; transition-delay: 2.1s; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-hero__mast > :nth-child(1), .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__mast > :nth-child(1) { transition-delay: 2s; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-hero__mast > :nth-child(2), .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__mast > :nth-child(2) { transition-delay: 2.2s; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-hero__cover, .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__cover { transition-delay: 2.45s; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-hero__lines, .ppc-opened.ti-theme-pinky-pink-couture .ppc-hero__lines { transition-delay: 2.7s; }
.ti-opened.ti-theme-pinky-pink-couture .ppc-explore, .ppc-opened.ti-theme-pinky-pink-couture .ppc-explore { transition-delay: 2.9s; }

/* EDITOR'S LETTER */
.ti-theme-pinky-pink-couture .ppc-letter__body { max-width: 640px; margin: 0 auto; text-align: left; }
.ti-theme-pinky-pink-couture .ppc-letter__lead { margin: 0 0 18px; font-family: "Bodoni Moda", serif; font-style: italic; font-size: 22px; line-height: 1.5; color: var(--ppc-cocoa-d); text-align: center; }
.ti-theme-pinky-pink-couture .ppc-letter__text { margin: 0; color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-letter__text::first-letter { float: left; margin: 6px 12px 0 0; font-family: "Bodoni Moda", serif; font-weight: 500; font-size: 66px; line-height: .8; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-letter__sign { margin: 22px 0 0; font-family: "Allura", cursive; font-size: 38px; line-height: 1.1; color: var(--ppc-rasp); text-align: right; }

/* MEMPELAI */
.ti-theme-pinky-pink-couture .ppc-couple__grid { display: grid; gap: 30px; max-width: 1040px; margin: 0 auto; }
.ti-theme-pinky-pink-couture .ppc-person { display: flex; flex-direction: column; align-items: center; }
.ti-theme-pinky-pink-couture .ppc-frame { position: relative; width: min(78vw, 370px); aspect-ratio: 2 / 3; }
.ti-theme-pinky-pink-couture .ppc-frame__photo { position: absolute; left: 17.6%; right: 17.8%; top: 16.6%; bottom: 18.7%; overflow: hidden; border-radius: 999px 999px 0 0; background: linear-gradient(180deg, var(--ppc-blush), var(--ppc-blush2)); }
.ti-theme-pinky-pink-couture .ppc-frame__photo img, .ti-theme-pinky-pink-couture .ppc-frame__img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; }
.ti-theme-pinky-pink-couture .ppc-frame__photo .ti-couple-monogram { display: grid; place-items: center; width: 100%; height: 100%; font-family: "Bodoni Moda", serif; font-size: 92px; color: var(--ppc-rasp); background: linear-gradient(180deg, var(--ppc-blush2), var(--ppc-blush)); }
.ti-theme-pinky-pink-couture .ppc-frame__border { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; filter: drop-shadow(0 22px 26px rgba(120,30,60,.28)); }
.ti-theme-pinky-pink-couture .ppc-person__info { margin-top: 8px; }
.ti-theme-pinky-pink-couture .ppc-person__nick { font-family: "Bodoni Moda", serif; font-weight: 500; font-size: clamp(40px, 11vw, 58px); line-height: 1.02; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-person__name { margin: 6px 0 10px; font-family: "Italiana", serif; font-size: 16px; letter-spacing: .16em; text-transform: uppercase; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-couple__amp { margin: 0; font-family: "Allura", cursive; font-size: 96px; line-height: 1; color: var(--ppc-rasp); }

/* SCENE + pull-quote */
.ti-theme-pinky-pink-couture .ppc-scene { position: relative; display: flex; align-items: flex-end; justify-content: center; min-height: 92vh; padding: 0 20px 60px; overflow: hidden; text-align: center; background: var(--ppc-blush); }
.ti-theme-pinky-pink-couture .ppc-scene__pic, .ti-theme-pinky-pink-couture .ppc-scene__img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; }
.ti-theme-pinky-pink-couture .ppc-scene__img { object-fit: cover; object-position: 50% 45%; }
.ti-theme-pinky-pink-couture .ppc-scene__veil { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(90,30,50,.45) 0%, rgba(90,30,50,0) 45%); }
.ti-theme-pinky-pink-couture .ppc-pull { position: relative; z-index: 2; max-width: 620px; margin: 0; padding: 40px 26px 26px; background: rgba(255,248,245,.93); box-shadow: inset 0 0 0 1px rgba(201,162,107,.7), inset 0 0 0 6px rgba(255,255,255,.6), 0 30px 50px -28px rgba(90,20,40,.6); }
.ti-theme-pinky-pink-couture .ppc-pull::before { content: "\201C"; position: absolute; left: 50%; top: -30px; translate: -50% 0; font-family: Georgia, "Times New Roman", serif; font-size: 96px; line-height: 1; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-quote { margin: 0 0 10px; font-family: "Bodoni Moda", serif; font-style: italic; font-size: clamp(19px, 5vw, 26px); line-height: 1.5; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture cite.ppc-label { font-style: normal; }

/* THE EDITORIAL — landscape (rasio asli) */
.ti-theme-pinky-pink-couture .ppc-feature { position: relative; padding: 80px 14px 90px; text-align: center; overflow: hidden; }
.ti-theme-pinky-pink-couture .ppc-feature__fig { position: relative; max-width: 1180px; margin: 0 auto; }
.ti-theme-pinky-pink-couture .ppc-feature__link { position: relative; display: block; padding: 10px; background: #FFFFFF; box-shadow: -16px 16px 0 -1px var(--ppc-blush), -16px 16px 0 0 var(--ppc-gold), 0 40px 60px -40px rgba(90,20,40,.55), inset 0 0 0 1px rgba(201,162,107,.6); }
.ti-theme-pinky-pink-couture .ppc-feature__link img { display: block; width: 100%; height: auto; }
.ti-theme-pinky-pink-couture .ppc-feature__rose { position: absolute; z-index: 2; width: min(34vw, 260px); right: -6%; top: -9%; pointer-events: none; filter: drop-shadow(0 14px 16px rgba(120,20,50,.3)); }
.ti-theme-pinky-pink-couture .ppc-feature figcaption { margin-top: 34px; }
.ti-theme-pinky-pink-couture .ppc-feature figcaption .ppc-kicker { display: block; }
.ti-theme-pinky-pink-couture .ppc-feature figcaption strong { display: block; font-family: "Bodoni Moda", serif; font-weight: 500; font-size: clamp(32px, 8vw, 54px); line-height: 1.05; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-feature figcaption em { display: block; margin-top: 6px; font-family: "Bodoni Moda", serif; font-size: 17px; color: var(--ppc-soft); }

/* COVER STAR — potret unggulan */
.ti-theme-pinky-pink-couture .ppc-star { position: relative; display: grid; justify-items: center; gap: 30px; padding: 90px 20px 96px; text-align: center; overflow: hidden; }
.ti-theme-pinky-pink-couture .ppc-star__fig { position: relative; margin: 0; max-width: min(84vw, 520px); }
.ti-theme-pinky-pink-couture .ppc-star__fig a { position: relative; display: block; padding: 10px; background: #FFFFFF; box-shadow: 0 40px 60px -32px rgba(90,20,40,.6), inset 0 0 0 1px rgba(201,162,107,.6); }
.ti-theme-pinky-pink-couture .ppc-star__fig img { display: block; width: auto; height: auto; max-width: 100%; max-height: 82vh; margin: 0 auto; }
.ti-theme-pinky-pink-couture .ppc-star__rose { position: absolute; z-index: 2; left: -17%; bottom: -7%; width: 30%; pointer-events: none; filter: drop-shadow(0 14px 16px rgba(120,20,50,.3)); }
.ti-theme-pinky-pink-couture .ppc-star__title { margin: 0; font-family: "Bodoni Moda", serif; font-weight: 500; font-size: clamp(46px, 13vw, 92px); line-height: .92; text-transform: uppercase; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-star__title em { font-family: "Allura", cursive; font-style: normal; text-transform: none; font-size: .9em; color: #FFFFFF; text-shadow: 0 4px 20px rgba(138,30,70,.45); }
.ti-theme-pinky-pink-couture .ppc-star__names { margin: 14px 0 0; font-family: "Italiana", serif; font-size: 16px; letter-spacing: .22em; text-transform: uppercase; color: var(--ppc-rasp-d); }

/* THE STORY */
.ti-theme-pinky-pink-couture .ppc-chapters { max-width: 1060px; margin: 0 auto; text-align: left; }
.ti-theme-pinky-pink-couture .ppc-chapter { position: relative; display: grid; gap: 18px; margin: 0 0 60px; }
.ti-theme-pinky-pink-couture .ppc-chapter__media { position: relative; background: #FFFFFF; padding: 8px; box-shadow: 0 30px 50px -34px rgba(90,20,40,.55), inset 0 0 0 1px rgba(201,162,107,.55); }
.ti-theme-pinky-pink-couture .ppc-chapter__media img { display: block; width: 100%; height: auto; }
.ti-theme-pinky-pink-couture .ppc-chapter__media.is-portrait-media { max-width: 420px; }
.ti-theme-pinky-pink-couture .ppc-chapter__no { display: block; margin-bottom: 6px; font-family: "Bodoni Moda", serif; font-style: italic; font-size: 44px; line-height: 1; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-chapter h3 { margin: 0 0 8px; font-family: "Bodoni Moda", serif; font-weight: 500; font-size: 30px; line-height: 1.15; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-chapter p { margin: 0; color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-chapter--text .ppc-chapter__body { max-width: 640px; margin: 0 auto; text-align: center; }

/* ACARA — tiket couture */
.ti-theme-pinky-pink-couture .ppc-spray { display: block; width: min(86vw, 560px); margin: -40px auto 6px; }
.ti-theme-pinky-pink-couture .ppc-events__grid { display: grid; gap: 28px; max-width: 1000px; margin: 0 auto; }
.ti-theme-pinky-pink-couture .ppc-ticket { position: relative; overflow: hidden; text-align: center; background: #FFFAF7; box-shadow: 0 40px 60px -42px rgba(90,20,40,.65), inset 0 0 0 1px rgba(201,162,107,.7); }
.ti-theme-pinky-pink-couture .ppc-ticket__top { position: relative; padding: 26px 20px 30px; background: linear-gradient(160deg, #C9406C, #8A1E46); color: #FFF3F5; }
.ti-theme-pinky-pink-couture .ppc-ticket__top::after { content: ""; position: absolute; left: 0; right: 0; bottom: -7px; height: 14px; background: radial-gradient(circle at 7px 7px, #FFFAF7 5px, transparent 5.5px) 0 0 / 18px 14px repeat-x; }
.ti-theme-pinky-pink-couture .ppc-ticket__admit { margin: 0 0 6px; font-family: "Jost", sans-serif; font-weight: 400; font-size: 10.5px; letter-spacing: .4em; text-transform: uppercase; color: var(--ppc-gold-l); }
.ti-theme-pinky-pink-couture .ppc-ticket__name { font-family: "Bodoni Moda", serif; font-weight: 500; font-size: 34px; line-height: 1.1; color: #FFFFFF; }
.ti-theme-pinky-pink-couture .ppc-ticket__body { padding: 28px 24px 30px; }
.ti-theme-pinky-pink-couture .ppc-ticket__date { display: flex; flex-direction: column; align-items: center; margin: 0 0 18px; font-family: "Italiana", serif; font-size: 16px; letter-spacing: .2em; text-transform: uppercase; color: var(--ppc-cocoa); }
.ti-theme-pinky-pink-couture .ppc-ticket__date strong { font-family: "Bodoni Moda", serif; font-weight: 500; font-size: 78px; line-height: 1; letter-spacing: 0; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-ticket__day { color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-ticket__info { list-style: none; margin: 0 auto 22px; padding: 0; max-width: 340px; text-align: left; }
.ti-theme-pinky-pink-couture .ppc-ticket__info li { display: flex; gap: 12px; align-items: flex-start; padding: 10px 0; border-top: 1px dashed rgba(201,162,107,.6); font-size: 14.5px; color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-ticket__info svg { flex: none; margin-top: 3px; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-ticket__info strong { font-weight: 500; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-ticket__actions { margin-top: 14px; }
.ti-theme-pinky-pink-couture .ppc-ticket__actions .ti-btn--maps { display: none; }
.ti-theme-pinky-pink-couture .ti-btn { border-radius: 2px; font-family: "Jost", sans-serif; font-weight: 400; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; transition: transform .4s var(--ppc-ease), background .4s, color .4s; }
.ti-theme-pinky-pink-couture .ti-btn--primary, .ti-theme-pinky-pink-couture .ti-btn--maps { background: var(--ppc-rasp); border-color: var(--ppc-rasp); color: #FFFFFF; }
.ti-theme-pinky-pink-couture .ti-btn--ghost { background: transparent; border-color: rgba(201,162,107,.8); color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ti-btn:hover { transform: translateY(-2px); }

/* COUNTDOWN — raspberry pekat */
.ti-theme-pinky-pink-couture .ppc-count { position: relative; display: flex; align-items: center; justify-content: center; min-height: 86vh; padding: 110px 20px; overflow: hidden; text-align: center; color: #FFF3F5; background: radial-gradient(60% 45% at 50% 40%, #C9406C 0%, rgba(201,64,108,0) 70%), linear-gradient(180deg, #8A1E46, #6E1638 60%, #8A1E46); }
.ti-theme-pinky-pink-couture .ppc-count::before { content: ""; position: absolute; inset: 18px; border: 1px solid rgba(235,211,168,.5); pointer-events: none; }
.ti-theme-pinky-pink-couture .ppc-count__rose { position: absolute; z-index: 0; width: min(46vw, 330px); pointer-events: none; filter: drop-shadow(0 20px 24px rgba(40,0,15,.45)); }
.ti-theme-pinky-pink-couture .ppc-count__rose--a { left: -12vw; top: 6%; }
.ti-theme-pinky-pink-couture .ppc-count__rose--b { right: -12vw; bottom: 4%; }
.ti-theme-pinky-pink-couture .ppc-count__inner { position: relative; z-index: 1; width: 100%; max-width: 660px; }
.ti-theme-pinky-pink-couture .ppc-count__bow { display: block; width: min(44vw, 190px); margin: -30px auto 0; filter: drop-shadow(0 14px 16px rgba(40,0,15,.45)); }
.ti-theme-pinky-pink-couture .ppc-count .ppc-kicker { color: var(--ppc-gold-l); }
.ti-theme-pinky-pink-couture .ppc-count .ppc-title { color: #FFF6F8; }
.ti-theme-pinky-pink-couture .ppc-count .ppc-title em { color: #FBC2D2; }
.ti-theme-pinky-pink-couture .ppc-countdown { display: flex; justify-content: center; max-width: 600px; margin: 26px auto 0; }
.ti-theme-pinky-pink-couture .ppc-countdown .ti-countdown__item { position: relative; flex: 1; margin: 0 4px; padding: 18px 4px 14px; background: rgba(255,248,245,.08); box-shadow: inset 0 0 0 1px rgba(235,211,168,.6); }
.ti-theme-pinky-pink-couture .ppc-countdown .ti-countdown__num { display: block; font-family: "Bodoni Moda", serif; font-weight: 500; font-size: clamp(34px, 10vw, 60px); line-height: 1.05; color: #FFFFFF; }
.ti-theme-pinky-pink-couture .ppc-countdown .ti-countdown__label { display: block; font-family: "Italiana", serif; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--ppc-gold-l); opacity: 1; }
.ti-theme-pinky-pink-couture .ppc-count__date { margin: 26px 0 0; font-family: "Italiana", serif; font-size: 15px; letter-spacing: .26em; text-transform: uppercase; color: rgba(255,240,244,.9); }

/* VIDEO */
.ti-theme-pinky-pink-couture .ppc-video { max-width: 900px; margin: 0 auto; padding: 10px; background: #FFFFFF; box-shadow: inset 0 0 0 1px rgba(201,162,107,.6), 0 30px 50px -34px rgba(90,20,40,.55); }

/* THE LOOKBOOK — masonry rasio asli */
.ti-theme-pinky-pink-couture .ppc-grid { column-count: 2; column-gap: 10px; max-width: 1280px; margin: 0 auto; text-align: left; }
.ti-theme-pinky-pink-couture .ppc-shot { position: relative; display: block; margin: 0 0 10px; break-inside: avoid; padding: 6px; background: #FFFFFF; box-shadow: 0 20px 34px -26px rgba(90,20,40,.6), inset 0 0 0 1px rgba(201,162,107,.45); }
.ti-theme-pinky-pink-couture .ppc-shot img { display: block; width: 100%; height: auto; }
.ti-theme-pinky-pink-couture .ppc-shot::after { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(255,255,255,0); transition: border-color .6s ease, inset .6s var(--ppc-ease); pointer-events: none; }
.ti-theme-pinky-pink-couture .ppc-shot:hover::after, .ti-theme-pinky-pink-couture .ppc-shot:focus-visible::after { inset: 16px; border-color: rgba(255,255,255,.9); }

/* RSVP & UCAPAN */
.ti-theme-pinky-pink-couture .ppc-form { position: relative; max-width: 600px; margin: 60px auto 0; padding: 70px 24px 30px; text-align: left; color: var(--ppc-cocoa-d); background: #FFFAF7; box-shadow: 0 40px 60px -40px rgba(90,20,40,.65), inset 0 0 0 1px rgba(201,162,107,.7), inset 0 0 0 6px #FFFFFF, inset 0 0 0 7px rgba(232,138,163,.35); }
.ti-theme-pinky-pink-couture .ppc-form__bow { position: absolute; left: 50%; top: -62px; width: 140px; translate: -50% 0; pointer-events: none; }
.ti-theme-pinky-pink-couture .ti-field label, .ti-theme-pinky-pink-couture .ti-field legend { font-family: "Jost", sans-serif; font-weight: 400; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ti-field input[type="text"], .ti-theme-pinky-pink-couture .ti-field input[type="number"], .ti-theme-pinky-pink-couture .ti-field input[type="tel"], .ti-theme-pinky-pink-couture .ti-field input[type="email"], .ti-theme-pinky-pink-couture .ti-field select, .ti-theme-pinky-pink-couture .ti-field textarea { font-family: "Jost", sans-serif; font-weight: 300; font-size: 15px; color: var(--ppc-cocoa-d); border: 1px solid #EBD3D3; border-radius: 0; background: #FFFFFF; transition: border-color .3s, box-shadow .3s; }
.ti-theme-pinky-pink-couture .ti-field input:focus, .ti-theme-pinky-pink-couture .ti-field select:focus, .ti-theme-pinky-pink-couture .ti-field textarea:focus { outline: none; border-color: var(--ppc-rasp); box-shadow: 0 0 0 3px rgba(184,50,95,.18); }
.ti-theme-pinky-pink-couture .ti-choice span { font-family: "Jost", sans-serif; border-color: #EBD3D3; }
.ti-theme-pinky-pink-couture .ppc-form .ti-btn--primary, .ti-theme-pinky-pink-couture .ppc-form button[type="submit"], .ti-theme-pinky-pink-couture .ppc-wishes button[type="submit"] { width: 100%; min-height: 50px; border-radius: 2px; border: 1px solid var(--ppc-gold); background: linear-gradient(160deg, #C9406C, #8A1E46); color: #FFF3F5; font-family: "Jost", sans-serif; letter-spacing: .26em; }
.ti-theme-pinky-pink-couture .ppc-form [class*="success"], .ti-theme-pinky-pink-couture .ppc-form [class*="alert"], .ti-theme-pinky-pink-couture .ppc-wishes [class*="success"] { border: 1px solid rgba(201,162,107,.6); background: linear-gradient(180deg, #FFFFFF, var(--ppc-blush2)); color: var(--ppc-cocoa-d); font-family: "Bodoni Moda", serif; font-style: italic; font-size: 17px; }
.ti-theme-pinky-pink-couture .ppc-wishes__box { max-width: 720px; margin: 0 auto; text-align: left; }
.ti-theme-pinky-pink-couture .ppc-wishes .ti-guestbook__item { position: relative; margin-bottom: 14px; padding: 22px 22px 16px 62px; background: #FFFFFF; box-shadow: inset 0 0 0 1px rgba(201,162,107,.4), 0 18px 30px -26px rgba(90,20,40,.5); }
.ti-theme-pinky-pink-couture .ppc-wishes .ti-guestbook__item::before { content: "\201C"; position: absolute; left: 18px; top: 8px; font-family: Georgia, "Times New Roman", serif; font-size: 58px; line-height: 1; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-wishes .ti-guestbook__item strong, .ti-theme-pinky-pink-couture .ppc-wishes .ti-guestbook__item b { font-family: "Italiana", serif; font-weight: 400; font-size: 15px; letter-spacing: .16em; text-transform: uppercase; color: var(--ppc-rasp-d); }
.ti-theme-pinky-pink-couture .ppc-wishes .ti-guestbook__item p { font-family: "Bodoni Moda", serif; font-style: italic; font-size: 17px; line-height: 1.55; color: var(--ppc-soft); }
.ti-theme-pinky-pink-couture .ppc-wishes form, .ti-theme-pinky-pink-couture .ppc-wishes .ti-guestbook__form { padding: 22px; margin-bottom: 22px; background: #FFFFFF; box-shadow: inset 0 0 0 1px rgba(201,162,107,.55); }

/* TANDA KASIH */
.ti-theme-pinky-pink-couture .ppc-giftsec__box { display: block; width: min(56vw, 260px); margin: -30px auto 0; filter: drop-shadow(0 20px 22px rgba(120,20,50,.25)); }
.ti-theme-pinky-pink-couture .ppc-gift { display: grid; gap: 24px; max-width: 840px; margin: 0 auto; }
.ti-theme-pinky-pink-couture .ppc-gift .ti-gift__card { position: relative; padding: 44px 24px 36px; overflow: hidden; color: var(--ppc-cocoa-d); border: 0; background: linear-gradient(150deg, #FFFFFF 0%, #FFF4F6 55%, var(--ppc-blush) 100%); box-shadow: 0 40px 56px -38px rgba(90,20,40,.6), inset 0 0 0 1px rgba(201,162,107,.7); transition: transform .6s var(--ppc-ease); }
.ti-theme-pinky-pink-couture .ppc-gift .ti-gift__card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 8px; background: linear-gradient(180deg, #C9406C, #8A1E46); }
.ti-theme-pinky-pink-couture .ppc-gift .ti-gift__card:hover { transform: translateY(-4px); }
.ti-theme-pinky-pink-couture .ppc-gift .ti-gift__bank { font-family: "Italiana", serif; font-size: 17px; letter-spacing: .3em; color: var(--ppc-rasp); }
.ti-theme-pinky-pink-couture .ppc-gift .ti-gift__no { font-family: "Bodoni Moda", serif; font-weight: 500; font-size: 30px; letter-spacing: .06em; color: var(--ppc-cocoa-d); overflow-wrap: anywhere; }
.ti-theme-pinky-pink-couture .ppc-gift button, .ti-theme-pinky-pink-couture .ppc-gift .ti-btn { border-radius: 2px; border-color: var(--ppc-gold); background: #FFFFFF; color: var(--ppc-cocoa-d); font-family: "Jost", sans-serif; letter-spacing: .18em; }
.ti-theme-pinky-pink-couture .ppc-gift .is-copied { background: var(--ppc-rasp); border-color: var(--ppc-rasp); color: #FFFFFF; }

/* LOKASI */
.ti-theme-pinky-pink-couture .ppc-venue__list { display: grid; gap: 22px; max-width: 900px; margin: 0 auto; }
.ti-theme-pinky-pink-couture .ppc-place { position: relative; padding: 40px 24px 34px; background: #FFFFFF; box-shadow: inset 0 0 0 1px rgba(201,162,107,.6), inset 0 0 0 6px #FFFFFF, inset 0 0 0 7px rgba(232,138,163,.3), 0 30px 46px -36px rgba(90,20,40,.55); }
.ti-theme-pinky-pink-couture .ppc-place::before, .ti-theme-pinky-pink-couture .ppc-place::after { content: ""; position: absolute; width: 44px; height: 44px; background: url(assets/img/corner.svg) center / contain no-repeat; }
.ti-theme-pinky-pink-couture .ppc-place::before { left: 10px; top: 10px; }
.ti-theme-pinky-pink-couture .ppc-place::after { right: 10px; bottom: 10px; transform: rotate(180deg); }
.ti-theme-pinky-pink-couture .ppc-place__name { margin: 0 0 6px; font-family: "Bodoni Moda", serif; font-weight: 500; font-size: 30px; color: var(--ppc-cocoa-d); }
.ti-theme-pinky-pink-couture .ppc-place__addr { margin: 0 auto 20px; max-width: 460px; color: var(--ppc-soft); }

/* PENUTUP */
.ti-theme-pinky-pink-couture .ppc-closing { position: relative; display: flex; align-items: flex-end; justify-content: center; min-height: 100vh; padding: 0 20px 110px; overflow: hidden; text-align: center; background: #3b1c27; color: #FFF3F5; }
.ti-theme-pinky-pink-couture .ppc-closing__bg, .ti-theme-pinky-pink-couture .ppc-closing__bg img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.ti-theme-pinky-pink-couture .ppc-closing__bg img { object-fit: cover; object-position: 50% 40%; }
.ti-theme-pinky-pink-couture .ppc-closing__veil { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(50,16,30,.97) 0%, rgba(50,16,30,.86) 38%, rgba(50,16,30,.35) 60%, rgba(50,16,30,0) 76%); }
.ti-theme-pinky-pink-couture .ppc-closing__content { position: relative; z-index: 2; max-width: 660px; }
.ti-theme-pinky-pink-couture .ppc-closing__mono { display: inline-grid; place-items: center; width: 78px; height: 78px; margin-bottom: 12px; background: url(assets/img/monogram.svg) center / contain no-repeat; font-family: "Bodoni Moda", serif; font-size: 19px; color: var(--ppc-gold-l); }
.ti-theme-pinky-pink-couture .ppc-closing .ppc-kicker { color: var(--ppc-gold-l); }
.ti-theme-pinky-pink-couture .ppc-closing__names { display: flex; flex-direction: column; align-items: center; margin: 6px 0 4px; font-family: "Bodoni Moda", serif; font-weight: 500; font-size: clamp(48px, 13vw, 96px); line-height: .95; text-transform: uppercase; color: #FFF8FA; text-shadow: 0 4px 30px rgba(40,0,15,.6); overflow-wrap: anywhere; }
.ti-theme-pinky-pink-couture .ppc-closing__names em { color: #F7B7C8; font-size: .55em; }
.ti-theme-pinky-pink-couture .ppc-closing__thanks { margin: 18px 0 0; font-family: "Italiana", serif; font-size: 15px; letter-spacing: .26em; text-transform: uppercase; color: var(--ppc-gold-l); }
.ti-theme-pinky-pink-couture .ppc-footer { position: relative; z-index: 2; padding: 22px 16px 86px; text-align: center; background: #2f1520; color: rgba(255,236,242,.6); font-family: "Italiana", serif; font-size: 13px; letter-spacing: .32em; text-transform: uppercase; }
.ti-theme-pinky-pink-couture .ppc-footer::before { content: ""; display: block; width: 120px; height: 1px; margin: 0 auto 16px; background: linear-gradient(90deg, rgba(201,162,107,0), var(--ppc-gold), rgba(201,162,107,0)); }

/* ================= REVEAL SEKALI JALAN (tanpa zoom; teks naik perlahan, foto fade-in, bunga dari sisi) ================= */
.ti-theme-pinky-pink-couture.ppc-js [data-ppc-reveal] { opacity: 0; transform: translateY(24px); transition: opacity 1.1s ease var(--d, 0s), transform 1.3s var(--ppc-ease) var(--d, 0s); }
.ti-theme-pinky-pink-couture.ppc-js [data-ppc-reveal].is-shown { opacity: 1; transform: none; }
.ti-theme-pinky-pink-couture.ppc-js [data-ppc-reveal="photo"] { transform: none; transition: opacity 1.4s ease var(--d, 0s); }
.ti-theme-pinky-pink-couture.ppc-js [data-ppc-reveal="side"] { transition: opacity 1.4s ease .15s, transform 1.8s var(--ppc-ease) .15s; }
.ti-theme-pinky-pink-couture.ppc-js .ppc-side--l[data-ppc-reveal="side"], .ti-theme-pinky-pink-couture.ppc-js .ppc-hero__bq--b[data-ppc-reveal="side"], .ti-theme-pinky-pink-couture.ppc-js .ppc-count__rose--a[data-ppc-reveal="side"], .ti-theme-pinky-pink-couture.ppc-js .ppc-star__rose[data-ppc-reveal="side"] { transform: translateX(-70px) rotate(-6deg); }
.ti-theme-pinky-pink-couture.ppc-js .ppc-side--r[data-ppc-reveal="side"] { transform: scaleX(-1) translateX(-70px) rotate(-6deg); }
.ti-theme-pinky-pink-couture.ppc-js .ppc-count__rose--b[data-ppc-reveal="side"], .ti-theme-pinky-pink-couture.ppc-js .ppc-feature__rose[data-ppc-reveal="side"] { transform: translateX(70px) rotate(6deg); }
.ti-theme-pinky-pink-couture.ppc-js .ppc-spray[data-ppc-reveal="side"] { transform: translateY(-20px); }
.ti-theme-pinky-pink-couture.ppc-js [data-ppc-reveal="side"].is-shown { transform: none; }
.ti-theme-pinky-pink-couture.ppc-js .ppc-side--r[data-ppc-reveal="side"].is-shown { transform: scaleX(-1); }

/* ================= DESKTOP ================= */
@media (min-width: 760px) {
  .ti-theme-pinky-pink-couture .ppc-section { padding: 120px 40px; }
  .ti-theme-pinky-pink-couture .ppc-nav { left: 50%; bottom: 18px; transform: translate(-50%, 160%); max-width: none; }
  .ti-opened.ti-theme-pinky-pink-couture .ppc-nav, .ppc-opened.ti-theme-pinky-pink-couture .ppc-nav { transform: translate(-50%, 0); }
  .ti-opened.ti-theme-pinky-pink-couture .ppc-nav.is-hidden, .ppc-opened.ti-theme-pinky-pink-couture .ppc-nav.is-hidden { transform: translate(-50%, 160%); }
  .ti-theme-pinky-pink-couture .ppc-nav a { width: auto; height: 40px; padding: 0 14px; gap: 7px; display: inline-flex; align-items: center; border-radius: 999px; }
  .ti-theme-pinky-pink-couture .ppc-nav a span { position: static; width: auto; height: auto; overflow: visible; clip: auto; font-size: 11px; font-weight: 400; letter-spacing: .14em; text-transform: uppercase; }
  .ti-theme-pinky-pink-couture .ppc-couple__grid { grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; }
  .ti-theme-pinky-pink-couture .ppc-couple__amp { font-size: 130px; }
  .ti-theme-pinky-pink-couture .ppc-frame { width: min(36vw, 390px); }
  .ti-theme-pinky-pink-couture .ppc-events__grid { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
  .ti-theme-pinky-pink-couture .ppc-venue__list, .ti-theme-pinky-pink-couture .ppc-gift { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
  .ti-theme-pinky-pink-couture .ppc-grid { column-count: 3; column-gap: 14px; }
  .ti-theme-pinky-pink-couture .ppc-shot { margin-bottom: 14px; }
  .ti-theme-pinky-pink-couture .ppc-chapter { grid-template-columns: 1.1fr .9fr; align-items: center; gap: 70px; margin-bottom: 96px; }
  .ti-theme-pinky-pink-couture .ppc-chapter--v1 { grid-template-columns: .9fr 1.1fr; }
  .ti-theme-pinky-pink-couture .ppc-chapter--v1 .ppc-chapter__media { order: 2; }
  .ti-theme-pinky-pink-couture .ppc-chapter__media.is-portrait-media { justify-self: center; }
  .ti-theme-pinky-pink-couture .ppc-chapter--text { grid-template-columns: 1fr; }
  .ti-theme-pinky-pink-couture .ppc-side { width: min(26vw, 380px); }
  .ti-theme-pinky-pink-couture .ppc-side--l { left: -60px; }
  .ti-theme-pinky-pink-couture .ppc-side--r { right: -60px; }
  .ti-theme-pinky-pink-couture .ppc-feature { padding: 110px 60px 120px; }
  .ti-theme-pinky-pink-couture .ppc-star { grid-template-columns: auto minmax(260px, 420px); justify-content: center; align-items: center; gap: 70px; text-align: left; }
  .ti-theme-pinky-pink-couture .ppc-star__fig { max-width: 46vw; }
  .ti-theme-pinky-pink-couture .ppc-count__rose { width: min(26vw, 380px); }
  .ti-theme-pinky-pink-couture .ppc-count__rose--a { left: -40px; }
  .ti-theme-pinky-pink-couture .ppc-count__rose--b { right: -40px; }
  .ti-theme-pinky-pink-couture .ppc-scene { min-height: 100vh; padding-bottom: 90px; }
  .ti-theme-pinky-pink-couture .ppc-cover__card { width: min(40vw, 440px); top: 56%; }
}
@media (min-width: 960px) {
  .ti-theme-pinky-pink-couture .ppc-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: 1fr auto auto 1fr; align-items: center; column-gap: 60px; padding: 70px 6vw 96px; text-align: left; }
  .ti-theme-pinky-pink-couture .ppc-hero__mast { grid-column: 1; grid-row: 2; justify-self: end; text-align: right; }
  .ti-theme-pinky-pink-couture .ppc-hero__issue { justify-content: flex-end; }
  .ti-theme-pinky-pink-couture .ppc-hero__names { align-items: flex-end; font-size: clamp(64px, 8vw, 150px); }
  .ti-theme-pinky-pink-couture .ppc-hero__cover { grid-column: 2; grid-row: 1 / 5; justify-self: start; max-width: 40vw; }
  .ti-theme-pinky-pink-couture .ppc-hero__photo img { max-height: 80vh; }
  .ti-theme-pinky-pink-couture .ppc-hero__lines { grid-column: 1; grid-row: 3; justify-self: end; text-align: right; }
  .ti-theme-pinky-pink-couture .ppc-explore { grid-column: 1 / 3; grid-row: 5; justify-self: center; }
  .ti-theme-pinky-pink-couture .ppc-hero__bq { width: min(34vw, 560px); }
  .ti-theme-pinky-pink-couture .ppc-hero__bq--a { right: -6vw; top: -10vw; }
  .ti-theme-pinky-pink-couture .ppc-hero__bq--b { left: -6vw; bottom: -6vw; }
}
@media (max-height: 640px) and (orientation: portrait) {
  .ti-theme-pinky-pink-couture .ppc-cover__card { padding: 18px 18px 18px; }
  .ti-theme-pinky-pink-couture .ppc-cover__names { font-size: 40px; }
}
@media (max-height: 560px) and (orientation: landscape) {
  .ti-theme-pinky-pink-couture .ppc-cover__card { top: 58%; padding: 14px 20px 14px; }
  .ti-theme-pinky-pink-couture .ppc-cover__mono { display: none; }
  .ti-theme-pinky-pink-couture .ppc-cover__names { flex-direction: row; gap: 12px; align-items: baseline; font-size: 40px; }
  .ti-theme-pinky-pink-couture .ppc-cover__date { margin: 4px 0 8px; }
  .ti-theme-pinky-pink-couture .ppc-cover__guest { margin-bottom: 10px; padding: 4px 18px; }
  .ti-theme-pinky-pink-couture .ppc-hero__names { flex-direction: row; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 0 .2em; font-size: 60px; }
  .ti-theme-pinky-pink-couture .ppc-hero__photo img { max-height: 86vh; }
}

/* Mode ringan (perangkat lambat / hemat data) */
.ti-theme-pinky-pink-couture.ppc-lite .ppc-cover__card, .ti-theme-pinky-pink-couture.ppc-lite .ppc-nav { backdrop-filter: none; -webkit-backdrop-filter: none; }
.ti-theme-pinky-pink-couture.ppc-lite .ppc-arch img, .ti-theme-pinky-pink-couture.ppc-lite .ppc-hero__bq, .ti-theme-pinky-pink-couture.ppc-lite .ppc-frame__border, .ti-theme-pinky-pink-couture.ppc-lite .ppc-count__rose { filter: none; }

/* Gerak dikurangi: gerbang langsung terbuka, tanpa kelopak/animasi besar, semua konten tampil */
@media (prefers-reduced-motion: reduce) {
  .ti-theme-pinky-pink-couture *, .ti-theme-pinky-pink-couture *::before, .ti-theme-pinky-pink-couture *::after { animation-duration: .01ms !important; animation-delay: 0s !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0s !important; }
  .ti-theme-pinky-pink-couture .ppc-burst { display: none !important; }
  .ti-theme-pinky-pink-couture [data-ppc-reveal] { opacity: 1 !important; transform: none !important; }
  .ti-theme-pinky-pink-couture .ppc-side--r[data-ppc-reveal] { transform: scaleX(-1) !important; }
  .ti-opened.ti-theme-pinky-pink-couture .ppc-cover, .ppc-opened.ti-theme-pinky-pink-couture .ppc-cover { visibility: hidden; }
}
.ti-theme-pinky-pink-couture.ppc-reduce .ppc-burst { display: none !important; }

/* Animasi */
@keyframes ppc-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes ppc-fade-to { from { opacity: 0; } to { opacity: .8; } }
@keyframes ppc-up { from { opacity: 0; transform: translate3d(0, 18px, 0); } to { opacity: 1; transform: none; } }
@keyframes ppc-door-in { from { filter: brightness(.3); } to { filter: brightness(1); } }
@keyframes ppc-sweep { 0% { opacity: 0; background-position: -100% 0; } 15% { opacity: 1; } 85% { opacity: 1; } 100% { opacity: 0; background-position: 200% 0; } }
@keyframes ppc-drop { from { opacity: 0; transform: translateY(-6%); } to { opacity: 1; transform: none; } }
@keyframes ppc-card { from { opacity: 0; transform: translateY(24px) scale(.97); } to { opacity: 1; transform: none; } }
@keyframes ppc-bow-in { from { opacity: 0; transform: translateY(-30px) rotate(-8deg); } to { opacity: 1; transform: none; } }
@keyframes ppc-bow-out { from { opacity: 1; transform: none; } to { opacity: 0; transform: translateY(-80px) rotate(10deg); } }
@keyframes ppc-seam-open { 0% { opacity: .9; transform: scaleX(1); } 40% { opacity: 1; transform: scaleX(6); } 100% { opacity: 0; transform: scaleX(40); } }
@keyframes ppc-open-l { 0% { transform: perspective(1500px) rotateY(0); } 12% { transform: perspective(1500px) rotateY(4deg); } 100% { transform: perspective(1500px) rotateY(104deg); } }
@keyframes ppc-open-r { 0% { transform: perspective(1500px) rotateY(0); } 12% { transform: perspective(1500px) rotateY(-4deg); } 100% { transform: perspective(1500px) rotateY(-104deg); } }
@keyframes ppc-part-l { 0% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translateX(-38%); } }
@keyframes ppc-part-r { 0% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translateX(38%); } }
@keyframes ppc-flare { 0% { opacity: 0; } 35% { opacity: .95; } 100% { opacity: 0; } }
@keyframes ppc-glow { 0%, 100% { box-shadow: inset 0 0 0 3px rgba(255,255,255,.08), inset 0 0 0 4px rgba(235,211,168,.55), 0 16px 30px -16px rgba(138,30,70,.8), 0 0 0 0 rgba(232,138,163,0); } 50% { box-shadow: inset 0 0 0 3px rgba(255,255,255,.08), inset 0 0 0 4px rgba(235,211,168,.55), 0 16px 30px -16px rgba(138,30,70,.8), 0 0 0 9px rgba(232,138,163,.25); } }
@keyframes ppc-burst { 0% { opacity: 0; transform: translate(-50%, -50%) scale(.4) rotate(0); } 12% { opacity: 1; } 100% { opacity: 0; transform: translate(calc(-50% + var(--bx)), calc(-50% + var(--by))) scale(1) rotate(var(--r, 400deg)); } }
@keyframes ppc-pulse { 0%, 100% { opacity: .65; transform: scale(.96); } 50% { opacity: 1; transform: scale(1.03); } }
@keyframes ppc-line { from { transform: translateX(-100%); } to { transform: translateX(100%); } }
@keyframes ppc-loader-auto { to { opacity: 0; visibility: hidden; } }
