.ph{--ph-pink: #f24361;--ph-ink: #12141f;position:relative;color:#fff;background:radial-gradient(55% 60% at 85% 10%,#78286e80,#78286e00),radial-gradient(120% 140% at 78% 12%,#1d2a5e,#0d1130 55%,#080b22);overflow:hidden}.ph-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;padding-block:clamp(1rem,2.5vw,2rem) clamp(2.5rem,6vw,5rem)}.ph-has-media .ph-grid{grid-template-columns:minmax(0,11fr) minmax(0,9fr)}.ph-small .ph-grid{padding-block:clamp(1.5rem,3vw,2.25rem)}.ph-main{max-width:44rem}.ph-crumbs{padding-top:clamp(1.25rem,2.5vw,1.75rem)}.ph-crumbs-list{display:flex;flex-wrap:wrap;gap:.35rem 0;margin:0;padding:0;list-style:none;font-size:.8125rem}.ph-crumb{display:inline-flex;align-items:center;color:#ffffff9e}.ph-crumb+.ph-crumb:before{content:"";width:5px;height:5px;margin:0 .6rem;border-top:1.5px solid rgba(255,255,255,.4);border-right:1.5px solid rgba(255,255,255,.4);transform:rotate(45deg)}.ph-crumbs a{color:#ffffffc7;text-decoration:none}.ph-crumbs a:hover,.ph-crumbs a:focus-visible{color:#fff;text-decoration:underline}.ph-crumbs [aria-current=page]{color:#fff}.ph .ph-title{margin:0 0 1rem;color:#fff;font-family:Poppins,sans-serif;font-size:clamp(1.9rem,4vw,3.1rem);font-weight:700;line-height:1.12;letter-spacing:-.02em}.ph-small .ph-title{font-size:clamp(1.6rem,3vw,2.4rem)}.ph .ph-title u{text-decoration:underline;text-decoration-color:var(--ph-pink);text-decoration-thickness:.12em;text-underline-offset:.12em}.ph .ph-title .typewriter-container{display:inline-flex;position:relative;white-space:nowrap;color:var(--ph-pink)}.ph .ph-title .typewriter-text{display:inline-flex;min-height:1em}.ph .ph-title .typewriter-text:after{content:"";width:.08em;margin-left:.08em;background:var(--ph-pink);animation:ph-caret 1s steps(2,start) infinite}@keyframes ph-caret{to{visibility:hidden}}@media(prefers-reduced-motion:reduce){.ph .ph-title .typewriter-text:after{animation:none}}.ph-lead{max-width:38rem;margin:0 0 1.75rem;color:#fffc;font-size:clamp(1rem,1.4vw,1.125rem);line-height:1.6}.ph-actions{display:flex;flex-wrap:wrap;gap:.75rem}.ph-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 1.6rem;color:#fff;background:var(--ph-pink);border-radius:10px;font-weight:600;text-decoration:none;transition:filter .15s ease,background .15s ease}.ph-btn:hover,.ph-btn:focus-visible{color:#fff;filter:brightness(1.07)}.ph-btn.ph-btn-ghost{background:transparent;box-shadow:inset 0 0 0 1px #ffffff73}.ph-btn.ph-btn-ghost:hover,.ph-btn.ph-btn-ghost:focus-visible{background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffffb3;filter:none}.ph-media{min-width:0}.ph-scene{position:relative;padding:1.5rem 1.25rem 1.75rem}.ph-glow{position:absolute;inset:-10% -5%;background:radial-gradient(50% 50% at 60% 45%,#f2436159,#f2436100 70%);filter:blur(10px);pointer-events:none}.ph-dots{position:absolute;top:0;right:0;width:55%;height:60%;background-image:radial-gradient(rgba(255,255,255,.28) 1px,transparent 1.5px);background-size:14px 14px;-webkit-mask-image:radial-gradient(60% 60% at 70% 30%,#000 30%,transparent 100%);mask-image:radial-gradient(60% 60% at 70% 30%,#000 30%,transparent 100%);pointer-events:none}.ph-card{position:relative;aspect-ratio:4 / 3;overflow:hidden;border-radius:20px;background:#ffffff0a;box-shadow:inset 0 0 0 1px #ffffff29,0 30px 60px #0006;transform:none}.ph-card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#f24361e6,#ffffff26 45%,#f2436180);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;z-index:1;pointer-events:none}.ph-card.is-banner:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(to top,#080b228c,#080b2200);pointer-events:none}.ph-card.is-art{transform:none}.ph-chips{margin:0;padding:0;list-style:none}.ph-chip{position:absolute;display:inline-flex;align-items:center;gap:.5rem;max-width:60%;padding:.55rem .85rem;color:#fff;background:#12141f8c;border:1px solid rgba(255,255,255,.22);border-radius:999px;box-shadow:0 12px 30px #00000059;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:.8125rem;font-weight:600;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:2}.ph-chip-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:#2ee59d;box-shadow:0 0 0 3px #2ee59d38}.ph-chip-1{top:.25rem;left:-.25rem;animation-delay:0s}.ph-chip-2{right:-.5rem;top:42%;animation-delay:-2s}.ph-chip-3{left:1.25rem;bottom:0;animation-delay:-4s}.ph-frameworks{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:1.75rem 0 0;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.12)}.ph-frameworks-label{margin-right:.25rem;color:#ffffff8c;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.ph-framework{display:inline-flex;align-items:center;padding:.35rem .7rem;color:#ffffffe0;border:1px solid rgba(255,255,255,.28);border-radius:6px;font-size:.8125rem;font-weight:600;letter-spacing:.03em;white-space:nowrap}@keyframes ph-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){.ph-chip{animation:none}}.ph-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ph-card.is-banner img{object-position:100% 50%}.ph-card.is-art img{padding:8%;box-sizing:border-box;object-fit:contain}@media(max-width:900px){.ph-has-media .ph-grid{grid-template-columns:minmax(0,1fr)}.ph-media{order:-1;max-width:32rem}.ph-scene{padding:.75rem .5rem 1.25rem}.ph-card{aspect-ratio:16 / 9;transform:none}.ph-chip-1,.ph-chip-2{display:none}.ph-chip-3{left:.75rem;bottom:.25rem;max-width:80%}}.ph-card.is-photo img{object-fit:cover;object-position:50% 50%;padding:0}.ph-card.is-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(to top,#080b228c,#080b2200);pointer-events:none}
