
/* TPC-DEV-029 — Homepage completion without invented production photography */
:root{--pc-enter:cubic-bezier(.22,1,.36,1);--pc-pink:#ec68ba;--pc-plum:#541293}
.pc-section{padding-block:clamp(3.6rem,8vw,7rem)}
.pc-section-heading h2 .pc-floating-heart,.pc-editorial h2 .pc-floating-heart{display:inline-block;position:relative;color:#c44cbd;cursor:default}
.pc-floating-heart::before,.pc-floating-heart::after{content:'♥';position:absolute;left:20%;top:20%;font-size:.35em;opacity:0;pointer-events:none;color:#df57bb}
.pc-floating-heart.is-sparkling::before{animation:pc-rise-hearts 1.35s ease-out both}.pc-floating-heart.is-sparkling::after{animation:pc-rise-hearts 1.6s .17s ease-out both}
@keyframes pc-rise-hearts{0%{opacity:0;transform:translate(0,0) scale(.7)}20%{opacity:.85}100%{opacity:0;transform:translate(15px,-45px) scale(.22)}}
.pc-editorial{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.3rem,5vw,6rem);align-items:center;padding-block:clamp(3rem,7vw,6rem)}
.pc-editorial-text{max-width:560px}.pc-editorial-text h2{font-family:Georgia,serif;font-size:clamp(2.3rem,4.6vw,4.5rem);line-height:1.08;color:#5f159f;margin:.45em 0}.pc-editorial-text p:not(.pc-eyebrow){line-height:1.75;max-width:44ch}
.pc-editorial-visual{border-radius:38px;min-height:clamp(260px,32vw,460px);position:relative;overflow:hidden;background:radial-gradient(circle at 70% 30%,#f8e3fd,#dfaff2 62%,#cda1ed);box-shadow:0 22px 60px #6c3c8b1b}
.pc-asset-pending:after{content:'Artwork in preparation';position:absolute;bottom:1.4rem;left:1.5rem;color:#6f4782;font-size:.75rem;letter-spacing:.05em;opacity:.7}
.pc-asset-accent{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:Georgia,serif;font-size:clamp(5rem,10vw,10rem);color:#ac56ca;opacity:.32}
.pc-editorial-love .pc-editorial-visual{background:radial-gradient(circle at 20% 30%,#fff0f9,#f1c5dd 65%,#e8badc)}
.pc-unboxing{position:relative}.pc-unbox-shell{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e7c9f7;border-radius:32px;overflow:hidden;background:#fffafb;box-shadow:0 15px 55px #7e34991c}.pc-unbox-stage{min-height:390px;position:relative;background:radial-gradient(circle,#ffe3fa,#e8c1fa)}.pc-unbox-info{padding:clamp(2rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.pc-unbox-info h3{font-family:Georgia,serif;color:#641e9e;font-size:clamp(1.6rem,3vw,2.6rem);margin:0 0 1rem}.pc-unbox-info p{line-height:1.8}.pc-subtle{font-size:.8rem;color:#805d8a}
.pc-carousel{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem .15rem 1.8rem;scrollbar-width:thin}.pc-carousel>*{scroll-snap-align:start;flex-shrink:0}
.pc-review{flex-basis:min(380px,85%);padding:2rem;border-radius:24px;background:#fff6fe;border:1px solid #e9c7ec;margin:0;line-height:1.7}.pc-review cite{font-size:.9rem;color:#7b399c}
.pc-social-gallery>a{width:clamp(180px,22vw,260px);aspect-ratio:1;overflow:hidden;border-radius:22px}.pc-social-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease}.pc-social-gallery a:hover img{transform:scale(1.045)}
.pc-reveal{opacity:1;transform:none}.pc-motion-ready .pc-reveal:not(.is-inview){opacity:0;transform:translateY(16px)}.pc-motion-ready .pc-reveal{transition:opacity .55s var(--pc-enter),transform .55s var(--pc-enter)}.pc-motion-ready .pc-reveal.is-inview{opacity:1;transform:none}
.pc-faq details{transition:background .24s ease}.pc-faq details[open]{background:#fff5fe}
@media(max-width:760px){.pc-editorial,.pc-unbox-shell{grid-template-columns:1fr}.pc-editorial-custom .pc-editorial-visual{grid-row:1}.pc-editorial-visual{min-height:280px}.pc-unbox-stage{min-height:290px}.pc-unbox-info{padding:2rem}.pc-editorial-text h2{font-size:clamp(2.3rem,9vw,3.4rem)}}
@media(prefers-reduced-motion:reduce){.pc-floating-heart::before,.pc-floating-heart::after{animation:none!important;display:none}.pc-motion-ready .pc-reveal{opacity:1!important;transform:none!important;transition:none!important}.pc-social-gallery img{transition:none}}

/* TPC rapid handoff: compositional polish, mobile-safe dimensions. Artwork remains owned by VAS. */
.pc-hero{overflow:clip}.pc-hero-copy{position:relative;z-index:2}.pc-hero-art{position:relative}.pc-header{position:relative;z-index:55}.pc-confidence{position:relative;z-index:10;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.pc-category{overflow:hidden;isolation:isolate;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease}.pc-category:hover{transform:translateY(-5px);box-shadow:0 18px 38px #7133992c}.pc-button{transition:transform .18s ease,filter .2s ease,box-shadow .2s ease}.pc-button:hover{transform:translateY(-2px);filter:saturate(1.15)}.pc-button:active{transform:translateY(1px) scale(.985)}
.pc-editorial-visual{isolation:isolate}.pc-editorial-visual::before{content:'';position:absolute;inset:0;background:var(--pc-artwork,none) center/cover no-repeat;pointer-events:none;z-index:1}
.pc-asset-pending{border:1px dashed #d6a7dc}.pc-hero .pc-gift{filter:drop-shadow(0 18px 30px #6b25954d)}
@media(max-width:760px){.pc-category-grid{gap:12px}.pc-editorial{gap:1.1rem}.pc-hero-art{max-width:100%}.pc-hero-copy h1{line-height:1.02}.pc-confidence{backdrop-filter:blur(12px)}}
@media(prefers-reduced-motion:reduce){.pc-category,.pc-button{transition:none!important;transform:none!important}}
