/* ps-home.css: built by tools/build-css.sh from inc/assets-map.php. Do not edit. */

.ps-nophoto{position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; gap: var(--sp-3); padding: 0 var(--sp-4) var(--hit); background: var(--ps-color-brand-darkest)}
.ps-nophoto__marker{position: relative; display: block; width: 100%; max-width: 160px; height: 10px}
.ps-nophoto__marker::before, .ps-nophoto__marker::after, .ps-nophoto__start{content: ""; position: absolute; top: 0; width: 10px; height: 10px; border-radius: var(--ps-radius-pill)}
.ps-nophoto__marker::before{left: 5px; right: 5px; top: 4px; width: auto; height: 2px; border-radius: 0; background: var(--ps-color-brand)}
.ps-nophoto__marker::after{right: 0; background: var(--ps-color-step-line)}
.ps-nophoto__start{left: 0; z-index: 1; background: var(--ps-color-brand-darkest); box-shadow: inset 0 0 0 2px var(--ps-color-step-line)}
.ps-nophoto__name{font: 600 var(--fs-h4)/1.1 var(--ps-font-display); color: var(--ps-color-surface); overflow-wrap: anywhere}
.ps-ring{
--fs-ring-name: 13.5px;
--fs-ring-name-halo: var(--ps-ring-fs-halo, 13px); 
--fs-ring-sub: 11.5px;
--fs-ring-sub-halo: var(--ps-ring-fs-halo-sub, 12px);
--fs-badge: 10px;
--ring-lg: 76px;
--ring-md: 68px;
--ring-sm: 64px;
--ring-w: var(--ps-ring-w, 84px); 
--ring-w-sm: 80px;
--ring-gap: 3px;
--ring-scale: 1.04;
--ring-badge-gap: 20px;
--ring-check: 20px;
--ring-face: 64px;    
--ring-face-sm: 32px; 
--ring-face-xs: 28px; 
--ring-play: 20px;
--ring-yt-crop: 1.34; 
--fs-ring-more: 17px}
.ps-ring, .ps-ring-row{
--ring-halo: 4px;
--ring-lift: var(--ps-ring-lift, -2px);
--ring-shadow-room: 6px;
--ring-room: calc(var(--ring-halo) - var(--ring-lift) + var(--ring-shadow-room))}
.ps-ring-row{
padding: var(--ring-room); margin: calc(var(--sp-1) - var(--ring-room)) calc(-1 * var(--ring-room));
scroll-padding-inline: var(--ring-room)}
.ps-ring-row > .ps-ring{scroll-snap-align: start}
@media (max-width: 1099px){
.ps-ring{--ring-face: 48px}}
@media (max-width: 759px){
.ps-ring{--ring-w: var(--ps-ring-w-phone, 72px); --ring-lg: 64px; --ring-face: 36px}}
.ps-ring{
--d: var(--ring-lg);
position: relative; flex: none; display: grid; justify-items: center; align-content: start; gap: calc(var(--sp-1) + 2px);
width: var(--ring-w); padding: 0; border: 0; background: none; color: var(--ps-color-ink);
font: inherit; text-align: center; text-decoration: none; cursor: pointer; -webkit-tap-highlight-color: transparent}
.ps-ring--md{--d: var(--ring-md)}
.ps-ring--sm{--d: var(--ring-sm); width: var(--ring-w-sm)}
.ps-ring__o{
display: block; width: var(--d); height: var(--d); border-radius: var(--ps-radius-pill);
transition: transform var(--ps-dur-fast) var(--ps-ease-out), scale var(--ps-dur-press) var(--ps-ease-out)}
.ps-ring__disc{
position: relative; display: grid; place-items: center; width: 100%; height: 100%; overflow: hidden;
border-radius: var(--ps-radius-pill); background: var(--ps-color-tint); color: var(--ps-color-surface)}
.ps-ring__disc picture, .ps-ring__img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}
.ps-ring--story .ps-ring__o{padding: var(--ring-gap); background: conic-gradient(from 210deg, var(--ps-color-accent-gold), var(--ps-color-brand), var(--ps-color-accent-gold))}
.ps-ring--story .ps-ring__disc{border: var(--ring-gap) solid var(--ps-color-surface)}
.ps-ring--halo .ps-ring__o{box-shadow: 0 0 0 2px var(--ps-color-surface), 0 0 0 var(--ring-halo) var(--ps-color-accent-gold)}
.ps-ring--halo.ps-ring--teal .ps-ring__o{box-shadow: 0 0 0 2px var(--ps-color-surface), 0 0 0 var(--ring-halo) var(--ps-color-brand-deep)}
.ps-ring--story.ps-ring--teal .ps-ring__o{background: var(--ps-color-brand-deep)}
.ps-ring__initial{
display: grid; place-items: center; width: 100%; height: 100%;
background: linear-gradient(160deg, var(--ps-color-brand-deep), var(--ps-color-brand-darkest));
font: var(--fw-display) var(--ps-text-h3)/1 var(--ps-font-display); color: var(--ps-color-surface)}
.ps-ring--all .ps-ring__disc{color: var(--ps-color-brand-deep)}
.ps-ring--all.ps-ring--halo .ps-ring__o{box-shadow: 0 0 0 2px var(--ps-color-surface), 0 0 0 var(--ring-halo) var(--ps-color-line-input)}
.ps-ring__name{font: var(--fw-display) var(--fs-ring-name)/1.15 var(--ps-font-text); color: var(--ps-color-ink)}
.ps-ring__count{margin-top: calc(-1 * var(--sp-1)); font: var(--fw-text) var(--fs-ring-sub)/1.2 var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-ring--halo .ps-ring__name{font-size: var(--fs-ring-name-halo); line-height: 1.25}
.ps-ring--halo .ps-ring__count{margin-top: calc(-1 * var(--sp-1)); font-size: var(--fs-ring-sub-halo); font-weight: 500}
.ps-ring__badge, .ps-ring__tag{
position: absolute; left: 50%; z-index: 1; 
padding: 0 var(--sp-2); border-radius: var(--ps-radius-pill); white-space: nowrap; translate: -50% 0;
font: var(--fw-strong) var(--fs-badge)/1.6 var(--ps-font-text); letter-spacing: 0.06em; text-transform: uppercase}
.ps-ring__badge{top: calc(var(--d) - var(--ring-badge-gap)); background: var(--ps-color-accent-gold); color: var(--ps-color-gold-ink); box-shadow: 0 0 0 2px var(--ps-color-surface)}
.ps-ring__tag{top: calc(-1 * var(--sp-1)); background: var(--ps-color-brand-deep); color: var(--ps-color-surface)}
.ps-ring__check{
position: absolute; top: 0; right: var(--sp-2); z-index: 1; display: grid; place-items: center;
width: var(--ring-check); height: var(--ring-check); border-radius: var(--ps-radius-pill);
background: var(--ps-color-brand-deep); color: var(--ps-color-surface); opacity: 0; transform: scale(0.6);
transition: opacity var(--ps-dur-fast) var(--ps-ease-out), transform var(--ps-dur-fast) var(--ps-ease-out)}
.ps-ring[aria-pressed="true"] .ps-ring__check, .ps-ring[aria-current="true"] .ps-ring__check{opacity: 1; transform: none}
.ps-ring[aria-pressed="true"] .ps-ring__o, .ps-ring[aria-current="true"] .ps-ring__o{transform: scale(var(--ring-scale))}
.ps-ring--story[aria-pressed="true"] .ps-ring__o, .ps-ring--story[aria-current="true"] .ps-ring__o{background: var(--ps-color-brand-deep)}
.ps-ring--halo[aria-pressed="true"] .ps-ring__o{box-shadow: 0 0 0 2px var(--ps-color-surface), 0 0 0 var(--ring-halo) var(--ps-color-brand-deep)}
.ps-ring[aria-pressed="true"] .ps-ring__name, .ps-ring[aria-current="true"] .ps-ring__name{color: var(--ps-color-brand-deep)}
.ps-ring--dark, .ps-ring--dark .ps-ring__name{color: var(--ps-color-surface)}
.ps-ring--dark .ps-ring__count{color: var(--ps-white-60)}
.ps-ring--dark.ps-ring--halo .ps-ring__o{box-shadow: 0 0 0 2px var(--ps-ring-ground, var(--ps-color-brand-darkest)), 0 0 0 var(--ring-halo) var(--ps-color-accent-gold)}
.ps-ring--dark.ps-ring--all .ps-ring__disc{background: var(--ps-ring-all-fill, var(--ps-white-0)); color: var(--ps-color-accent-gold)}
.ps-ring:active .ps-ring__o{scale: 0.97}
@media (hover: hover) and (pointer: fine){
.ps-ring--story:hover .ps-ring__o{transform: scale(var(--ring-scale))}
.ps-ring--halo:hover .ps-ring__o{transform: translateY(var(--ring-lift))}
.ps-ring:hover .ps-ring__name{color: var(--ps-color-brand-deep)}
.ps-ring--dark:hover .ps-ring__name{color: var(--ps-color-surface)}}
.ps-ring:focus-visible{outline-color: transparent}
.ps-ring:focus-visible .ps-ring__o{outline: var(--focus-ring) solid var(--ps-color-brand-darkest); outline-offset: 2px}
.ps-ring--dark:focus-visible .ps-ring__o{outline-color: var(--ps-color-surface)}
.ps-ring--dark.ps-ring--halo[data-chosen] .ps-ring__o{transform: none; box-shadow: 0 0 0 2px var(--ps-ring-ground, var(--ps-color-brand-darkest)), 0 0 0 calc(var(--ring-halo) + 1px) var(--ps-color-accent-gold)}
.ps-ring--dark[data-chosen] .ps-ring__name{color: var(--ps-color-accent-gold)}
.ps-ring--face{--d: var(--ring-face); width: var(--d); z-index: calc(20 - var(--i, 0))}
.ps-ring--face.ps-ring--xs, .ps-ring--face.ps-ring--sm{--d: var(--ring-face-xs); --ring-halo: 3px; cursor: inherit}
.ps-ring--face.ps-ring--sm{--d: var(--ring-face-sm)}
.ps-ring--face:focus-visible{z-index: 30}
@media (hover: hover) and (pointer: fine){
.ps-ring--face:hover{z-index: 30}}
.ps-ring__img--yt{scale: var(--ring-yt-crop)}
.ps-ring__disc:has(.ps-ring__img--yt) .ps-ring__initial{visibility: hidden}
button.ps-ring--face::before, a.ps-ring--face::before{
content: ""; position: absolute; inset: calc(min(0px, (var(--d) - var(--hit)) / 2))}
.ps-ring__play{
position: absolute; right: -2px; bottom: -2px; z-index: 2; display: grid; place-items: center;
width: var(--ring-play); height: var(--ring-play); border-radius: var(--ps-radius-pill);
background: var(--ps-color-accent-gold); color: var(--ps-color-gold-ink); box-shadow: 0 0 0 2px var(--ps-color-surface)}
@media (max-width: 759px){
.ps-ring__play{display: none}}
.ps-ring--more .ps-ring__disc{background: var(--ps-color-brand-deep); color: var(--ps-color-surface)}
.ps-ring--face.ps-ring--more{z-index: 25}
.ps-ring__more{font: var(--fw-display) var(--fs-ring-more)/1 var(--ps-font-text)}
.ps-ring--xs .ps-ring__more, .ps-ring--face.ps-ring--sm .ps-ring__more{font-size: var(--ps-text-caption)}
.ps-faces{--faces-overlap: 16px; display: flex; flex-wrap: nowrap; align-items: center; min-width: 0}
.ps-faces > .ps-ring + .ps-ring{margin-left: calc(-1 * var(--faces-overlap))}
.ps-faces--crowd{padding: var(--sp-2) 0 var(--sp-2) var(--sp-4); margin-left: calc(-1 * var(--sp-4))}
.ps-faces--crowd > .ps-ring--face{flex: 0 1 auto; min-width: 0; justify-items: start}
.ps-faces--crowd > .ps-ring--more{flex-shrink: 0}
.ps-faces--row{--faces-overlap: 8px; padding: var(--sp-1)}
.ps-faces--sm{--faces-overlap: 10px}
@media (max-width: 759px){
.ps-faces--crowd{--faces-overlap: 14px}}
.ps-proofline{
display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--sp-2) var(--sp-3); margin: 0; text-align: center;
font: var(--fw-text) var(--ps-text-caption)/1.4 var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-proofline b{font-weight: var(--fw-strong); color: var(--ps-color-ink)}
.ps-proofline__g{
display: inline-flex; align-items: center; gap: var(--sp-1); vertical-align: middle; min-height: var(--hit);
font-weight: var(--fw-strong); color: var(--ps-color-brand-deep); text-decoration: none}
@media (hover: hover) and (pointer: fine){
.ps-proofline__g:hover{text-decoration: underline; text-underline-offset: 3px}}
.ps-pcd{
--ps-pcd-w: 340px;
--ps-pcd-h: 420px;
--ps-pcd-border: 8px;
--ps-pcd-photo-radius: 10px;
--ps-pcd-stamp: 64px;
--ps-pcd-fs-title: 22px;
--ps-pcd-fs-btn: 15px;
--ps-pcd-pad-bd: 12px 6px 4px;
--ps-pcd-pad-type: 3px 10px}
.ps-pcr{
--ps-pcr-border: 6px;
--ps-pcr-gap: 10px;
--ps-pcr-fs-title: 16px;
--ps-pcr-fs-price: 15px;
--ps-pcr-fs-basis: 14px; 
--ps-pcr-go: 36px;
--ps-pcr-go-room: 44px; 
--ps-pcd-photo-radius: calc(var(--ps-radius-card) - var(--ps-pcr-border)); 
--ps-pcr-fs-badge: 10px;
--ps-pcr-pad-badge: 2px 7px}
.ps-pcd{width: var(--ps-pcd-w); height: var(--ps-pcd-h); display: grid; grid-template-rows: minmax(0, 1fr) auto; overflow: hidden; border: var(--ps-pcd-border) solid var(--ps-color-surface); border-radius: var(--ps-pcd-radius); background: var(--ps-color-surface); color: var(--ps-color-ink); box-shadow: var(--ps-pcd-shadow); transform-origin: 50% 110%}
.ps-pcd__ph{position: relative; overflow: hidden; border-radius: var(--ps-pcd-photo-radius); background: var(--ps-color-tint)}
.ps-pcd__ph img, .ps-pcd__ph picture{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}
.ps-pcd__type{position: absolute; left: 10px; top: 10px; padding: var(--ps-pcd-pad-type); border-radius: var(--ps-radius-pill); background: var(--ps-color-accent-gold); color: var(--ps-color-gold-ink); font-size: var(--ps-pc-fs-xs); font-weight: 700; letter-spacing: .08em; text-transform: uppercase}
.ps-pcd__stamp{position: absolute; right: 10px; top: 10px; width: var(--ps-pcd-stamp); height: var(--ps-pcd-stamp); display: grid; place-items: center; border: 2px dashed var(--ps-color-surface); border-radius: 50%; background: var(--ps-pcd-stamp-ground); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); color: var(--ps-color-surface); font-size: var(--ps-pc-fs-xs); font-weight: 700; letter-spacing: .04em; line-height: 1.1; text-align: center; rotate: 12deg}
.ps-pcd__bd{display: grid; align-content: start; gap: var(--sp-1); padding: var(--ps-pcd-pad-bd)}
.ps-pcd__tt, .ps-pcr__tt{display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2}
.ps-pcd__tt{margin: 0; color: var(--ps-color-brand-darkest); font-family: var(--ps-font-display); font-size: var(--ps-pcd-fs-title); line-height: 1.1; text-wrap: balance}
.ps-pcd__m{display: block; overflow: hidden; color: var(--ps-color-ink-2); font-size: var(--ps-pc-fs-sm); white-space: nowrap; text-overflow: ellipsis}
.ps-pcd__pr{display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px var(--sp-2); line-height: 1.15; color: var(--ps-color-brand-darkest); font-family: var(--ps-font-display); font-size: var(--ps-pcd-fs-title); font-weight: var(--fw-display)}
.ps-pcd__pr small{color: var(--ps-color-ink-2); font-family: var(--ps-font-text); font-size: var(--ps-pc-fs-xs); font-weight: 500}
.ps-pcd__acts{display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--sp-2); margin-top: var(--sp-2)}
.ps-pcd__acts a{min-height: var(--hit); display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-2); border-radius: var(--ps-radius-pill); font-size: var(--ps-pcd-fs-btn); font-weight: 600; text-decoration: none; transition: transform var(--ps-pc-dur-tap) var(--ps-pc-ease), background-color var(--ps-dur-base) var(--ps-pc-ease)}
.ps-pcd__acts a:active{transform: scale(.97)}
.ps-pcd__view, .ps-pcd__view:active, .ps-pcd__view:focus-visible{min-height: var(--hit); background: var(--ps-color-brand-deep); color: var(--ps-color-surface)}
.ps-pcd__wa{width: var(--hit); height: var(--hit); background: var(--ps-color-wa); color: var(--ps-color-wa-ink)}
.ps-pcd__wa .ps-icon{width: 22px; height: 22px}
@media (hover: hover) and (pointer: fine){.ps-pcd__view:hover{background: var(--ps-color-brand-darkest); color: var(--ps-color-surface)}.ps-pcd__wa:hover{background: var(--ps-color-wa-hover)}}
.ps-pcr{position: relative; display: grid; grid-template-columns: 96px minmax(0, 1fr); align-items: center; gap: var(--ps-pcr-gap); border: var(--ps-pcr-border) solid var(--ps-color-surface); border-radius: var(--ps-radius-card); background: var(--ps-color-surface); color: var(--ps-color-ink); box-shadow: var(--ps-pcr-shadow)}
.ps-pcr__ph{position: relative; height: 110px; overflow: hidden; border-radius: var(--ps-pcd-photo-radius); background: var(--ps-color-tint)}
.ps-pcr__ph img, .ps-pcr__ph picture{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}
.ps-pcr__ph em{position: absolute; left: 6px; top: 6px; padding: var(--ps-pcr-pad-badge); border-radius: var(--ps-radius-pill); background: var(--ps-color-accent-gold); color: var(--ps-color-gold-ink); font-size: var(--ps-pcr-fs-badge); font-style: normal; font-weight: 700; letter-spacing: .06em; text-transform: uppercase}
.ps-pcr__bd{min-width: 0; display: grid; gap: 2px}
.ps-pcr__tt{color: var(--ps-color-brand-darkest); font-family: var(--ps-font-display); font-size: var(--ps-pcr-fs-title); font-weight: 600; line-height: 1.15; text-decoration: none}
.ps-pcr__tt::after{content: ""; position: absolute; inset: 0; border-radius: inherit}
.ps-pcr__bd small, .ps-pcr__bs{display: block; overflow: hidden; color: var(--ps-color-ink-2); font-size: var(--ps-pcr-fs-basis); white-space: nowrap; text-overflow: ellipsis}
.ps-pcr__pr{display: block; padding-right: calc(var(--ps-pcr-go-room) - 2px); white-space: nowrap; color: var(--ps-color-brand-darkest); font-family: var(--ps-font-display); font-size: var(--ps-pcr-fs-price); font-weight: var(--fw-display)}
.ps-pcr__bs{padding-right: var(--ps-pcr-go-room); line-height: 1.3}
.ps-pcr__go{position: absolute; right: 8px; bottom: 8px; width: var(--ps-pcr-go); height: var(--ps-pcr-go); display: grid; place-items: center; border-radius: 50%; background: var(--ps-color-brand-deep); color: var(--ps-color-surface)}
.ps-pcr__go .ps-icon{width: 16px; height: 16px}
.ps-pb__card .ps-pcd__bd{transition: opacity var(--pb-spring, var(--ps-dur-sheet)) var(--ps-pc-ease)}
.ps-pb__card:not([data-r="0"]) .ps-pcd__bd{opacity: .55}
.ps-pb__rail > li > .ps-pcr{transition: transform var(--ps-dur-sheet) var(--ps-ease-out), opacity var(--ps-dur-sheet) var(--ps-ease-out)}
.ps-pb__rail > li:not(.is-on) > .ps-pcr{transform: scale(.94); opacity: .85}
.ps-pb{
--pb-side: 40px;
--pb-radius: 24px;
--pb-pad: 48px 72px 190px 64px;
--pb-min-h: 640px;
--pb-deck-w: 500px;
--pb-deck-h: 440px;
--pb-gap: 24px;
--pb-fs-h: 58px;
--pb-fs-sub: 18px;
--pb-fs-place: 14px;
--pb-pad-place: 6px 14px 6px 10px;
--pb-card-half: 170px;
--pb-arrow: 48px;
--pb-dot: 7px;
--pb-dot-on: 24px;
--pb-chip-ph: 28px;
--pb-chip-max: 230px;
--pb-fade: 700ms; 
--pb-spring: 320ms; 
--pb-spring-ease: cubic-bezier(.2, .9, .25, 1.15);
--pb-drift: 14s; 
--pb-ink: var(--ps-color-banner-ink)}
@media (max-width: 900px){
.ps-pb{--pb-side: 20px; --pb-pad: 36px 28px 200px; --pb-fs-h: 44px; --pb-deck-h: 430px}}
@media (max-width: 559px){
.ps-pb{--pb-side: 12px; --pb-radius: 20px; --pb-pad: 18px 16px 64px; --pb-gap: 12px; --pb-fs-h: 28px; --pb-fs-sub: 15px; --pb-fs-place: 12px; --pb-pad-place: 4px 10px 4px 8px}}
.ps-pb{
position: relative; isolation: isolate; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1fr) var(--pb-deck-w);
align-items: center; gap: var(--pb-gap); min-height: var(--pb-min-h); margin: var(--sp-4) var(--pb-side) 0; padding: var(--pb-pad);
border-radius: var(--pb-radius); background: linear-gradient(160deg, var(--ps-color-brand-deep), var(--ps-color-brand-darkest)); color: var(--ps-color-surface)}
.ps-pb::before{
content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
background:
linear-gradient(90deg, color-mix(in oklch, var(--pb-ink) 88%, transparent), color-mix(in oklch, var(--pb-ink) 35%, transparent) 62%, color-mix(in oklch, var(--pb-ink) 50%, transparent)),
linear-gradient(0deg, color-mix(in oklch, var(--pb-ink) 55%, transparent), transparent 40%)}
.ps-pb__bgs{position: absolute; inset: 0; z-index: -2; overflow: hidden}
.ps-pb__bg{position: absolute; inset: -4%; opacity: 0; transition: opacity var(--pb-fade) var(--ps-pc-ease)}
.ps-pb__bg.is-on{opacity: 1}
.ps-pb__bg picture, .ps-pb__bg img{display: block; width: 100%; height: 100%}
.ps-pb__bg img{object-fit: cover}
.ps-pb__bg.is-on img{animation: ps-pb-drift var(--pb-drift) ease-out both}
@keyframes ps-pb-drift{from{transform: scale(1.06)}to{transform: scale(1) translate(-1%, -1%)}}
.ps-pb__txt{display: grid; align-content: center; gap: var(--sp-4); min-width: 0}
.ps-pb__place{
justify-self: start; display: inline-flex; align-items: center; gap: var(--sp-2); padding: var(--pb-pad-place); border-radius: var(--ps-radius-pill);
background: color-mix(in oklch, var(--ps-color-surface) 14%, transparent); backdrop-filter: blur(8px);
font: var(--fw-display) var(--pb-fs-place)/1.3 var(--ps-font-text)}
.ps-pb__place .ps-icon{width: var(--sp-4); height: var(--sp-4); flex: none}
.ps-pb__place.is-swap{animation: ps-pb-place var(--ps-dur-sheet) var(--ps-ease-out)}
@keyframes ps-pb-place{from{opacity: 0; transform: translateY(4px)}to{opacity: 1; transform: none}}
.ps-pb__h{max-width: 15ch; margin: 0; font: var(--fw-display) var(--pb-fs-h)/1.02 var(--ps-font-display); color: var(--ps-color-surface); text-wrap: balance}
.ps-pb__sub{max-width: 40ch; margin: 0; font: var(--fw-text) var(--pb-fs-sub)/1.45 var(--ps-font-text); opacity: .92}
.ps-pb__row{display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3) var(--sp-5)}
.ps-pb__wa{display: inline-flex; min-height: var(--btn-md); padding: 0 var(--sp-5); font-size: var(--fs-control)}
.ps-pb__browse{
display: inline-flex; align-items: center; gap: calc(var(--sp-1) + 2px); min-height: var(--hit); color: var(--ps-color-surface);
font: var(--fw-display) var(--ps-text-body)/1.2 var(--ps-font-text); text-decoration: underline; text-underline-offset: 4px}
.ps-pb__proof{display: flex; flex-wrap: wrap; gap: var(--sp-4); margin: 0; font: var(--fw-text) var(--fs-control)/1.4 var(--ps-font-text)}
.ps-pb__proof > span{display: inline-flex; align-items: center; gap: var(--sp-1)}
.ps-pb__proof .ps-icon{flex: none; width: var(--sp-4); height: var(--sp-4); color: var(--ps-color-accent-gold); fill: currentColor}
.ps-pb__proof b{font-weight: var(--fw-strong)}
.ps-pb__deck{position: relative; height: var(--pb-deck-h); perspective: 1200px}
.ps-pb__deck:focus-visible{outline: var(--focus-ring) solid var(--ps-color-surface); outline-offset: var(--sp-2); border-radius: var(--ps-radius-card)}
.ps-pb__card{
position: absolute; left: 50%; top: 0; margin-left: calc(-1 * var(--pb-card-half)); z-index: 1; transform-origin: 50% 110%; opacity: 0;
transform: translate3d(0, 30px, -160px) scale(.82); cursor: pointer; will-change: transform;
transition: transform var(--pb-spring) var(--pb-spring-ease), opacity var(--pb-spring) var(--ps-pc-ease), translate var(--ps-pc-dur-lift) var(--ps-pc-ease)}
.ps-pb__card::after{content: ""; position: absolute; inset: 0; border-radius: var(--ps-pcd-radius); background: var(--pb-ink); opacity: 0; pointer-events: none; transition: opacity var(--pb-spring) var(--ps-pc-ease)}
.ps-pb__card::before{content: ""; position: absolute; inset: 0; z-index: -1; border-radius: var(--ps-pcd-radius); box-shadow: var(--ps-shadow-card-hover); opacity: 0; pointer-events: none; transition: opacity var(--ps-pc-dur-lift) var(--ps-pc-ease)}
.ps-pb__card:not([data-r="0"]) > *{pointer-events: none}
.ps-pb__card[data-r="0"]{z-index: 5; opacity: 1; transform: translate3d(0, 0, 0); cursor: auto}
.ps-pb__card[data-r="1"]{z-index: 4; opacity: 1; transform: translate3d(54px, 14px, -60px) rotate(6deg) scale(.93)}
.ps-pb__card[data-r="1"]::after{opacity: .34}
.ps-pb__card[data-r="2"]{z-index: 3; opacity: 1; transform: translate3d(-54px, 20px, -110px) rotate(-6deg) scale(.88)}
.ps-pb__card[data-r="2"]::after{opacity: .48}
.ps-pb__card.is-fly{z-index: 6; opacity: 0; transform: translate3d(-130%, -30px, 0) rotate(-22deg)}
.ps-pb__card.is-flyr{z-index: 6; opacity: 0; transform: translate3d(130%, -30px, 0) rotate(22deg)}
@media (hover: hover) and (pointer: fine){
.ps-pb__deck:hover .ps-pb__card[data-r="0"]{translate: 0 -3px}
.ps-pb__deck:hover .ps-pb__card[data-r="0"]::before{opacity: 1}
.ps-pb__deck:hover .ps-pb__card[data-r="1"]{transform: translate3d(84px, 10px, -60px) rotate(9deg) scale(.93)}
.ps-pb__deck:hover .ps-pb__card[data-r="2"]{transform: translate3d(-84px, 16px, -110px) rotate(-9deg) scale(.88)}}
.ps-pb__ctl{position: absolute; left: 0; right: 0; top: calc(100% + var(--sp-4) + 2px); z-index: 6; display: grid; justify-items: center; gap: var(--sp-3)}
.ps-pb__nav{
display: flex; align-items: center; gap: calc(var(--sp-4) + var(--sp-1)); padding: calc(var(--sp-1) + 2px); border-radius: var(--ps-radius-pill);
background: color-mix(in oklch, var(--pb-ink) 45%, transparent); backdrop-filter: blur(10px); box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--ps-color-surface) 18%, transparent)}
.ps-pb__arr{
display: grid; place-items: center; width: var(--pb-arrow); height: var(--pb-arrow); padding: 0; border: 0; border-radius: var(--ps-radius-pill);
background: var(--ps-color-surface); color: var(--ps-color-brand-darkest); box-shadow: var(--ps-shadow-card); cursor: pointer;
transition: scale var(--ps-dur-press) var(--ps-ease-out), background-color var(--ps-dur-fast) var(--ps-ease-out)}
.ps-pb__arr:active{scale: .97}
@media (hover: hover) and (pointer: fine){.ps-pb__arr:hover{background: var(--ps-color-tint)}}
.ps-pb__dots{display: flex; align-items: center; gap: calc(var(--sp-1) + 2px)}
.ps-pb__dots button{position: relative; width: var(--pb-dot); height: var(--pb-dot); padding: 0; border: 0; background: none; cursor: pointer}
.ps-pb__dots button::before{content: ""; position: absolute; inset: calc(-1 * var(--sp-3)) calc(-1 * var(--sp-1))}
.ps-pb__dots button[aria-current="true"]{width: var(--pb-dot-on)}
.ps-pb__dots i{position: absolute; inset: 0; border-radius: var(--ps-radius-pill); background: var(--ps-white-45)}
.ps-pb__dots [aria-current="true"] i{background: var(--ps-color-surface); transform-origin: left center; animation: ps-pb-grow var(--ps-dur-reveal) var(--ps-ease-out) both}
@keyframes ps-pb-grow{from{transform: scaleX(.3)}to{transform: none}}
.ps-pb__count{min-width: var(--sp-8); font: var(--fw-display) var(--fs-label-sm)/1 var(--ps-font-text); font-variant-numeric: tabular-nums; text-align: center}
.ps-pb__up{display: flex; align-items: center; gap: var(--sp-2); max-width: 100%; font: var(--fw-display) var(--fs-label-sm)/1.2 var(--ps-font-text); white-space: nowrap}
.ps-pb__up > span{opacity: .8}
.ps-pb__up button{
display: inline-flex; align-items: center; gap: var(--sp-2); min-width: 0; max-width: var(--pb-chip-max); min-height: calc(var(--sp-6) + var(--sp-1)); padding: var(--sp-1) var(--sp-3) var(--sp-1) var(--sp-1);
border: 0; border-radius: var(--ps-radius-pill); background: color-mix(in oklch, var(--ps-color-surface) 16%, transparent); color: var(--ps-color-surface);
box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--ps-color-surface) 30%, transparent); backdrop-filter: blur(8px); font: inherit; cursor: pointer;
transition: background-color var(--ps-dur-base) var(--ps-ease-out), scale var(--ps-dur-press) var(--ps-ease-out)}
.ps-pb__up button:active{scale: .97}
@media (hover: hover) and (pointer: fine){.ps-pb__up button:hover{background: color-mix(in oklch, var(--ps-color-surface) 28%, transparent)}}
.ps-pb__up img{flex: none; width: var(--pb-chip-ph); height: var(--pb-chip-ph); border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2px var(--ps-white-60)}
.ps-pb__upt{min-width: 0; overflow: hidden; text-overflow: ellipsis}
.ps-pb__up b{flex: none; color: var(--ps-color-accent-gold); font-weight: var(--fw-display)}
.ps-pb__rail, .ps-pb__pmeta{display: none}
@media (min-width: 760px) and (max-width: 1099px){
.ps-pb__h, .ps-pb__sub{max-width: none}}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: reduce){
.ps-pb__deck:hover .ps-pb__card[data-r="0"]{translate: none}}
@media (max-width: 900px){
.ps-pb{grid-template-columns: minmax(0, 1fr); min-height: 0}
.ps-pb__deck{justify-self: center; width: 100%; max-width: var(--pb-deck-w)}}
@media (max-width: 559px){
.ps-pb::before{background: linear-gradient(180deg, color-mix(in oklch, var(--pb-ink) 88%, transparent), color-mix(in oklch, var(--pb-ink) 55%, transparent) 38%, color-mix(in oklch, var(--pb-ink) 35%, transparent) 55%, color-mix(in oklch, var(--pb-ink) 85%, transparent))}
.ps-pb__txt{display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3)}
.ps-pb__h, .ps-pb__sub{flex: 1 1 100%}
.ps-pb__h{max-width: none; line-height: 1.06}
.ps-pb__browse, .ps-pb__wide, .ps-pb__deck{display: none}
.ps-pb__proof{gap: var(--sp-2); font-size: var(--fs-label-sm); font-weight: var(--fw-display); white-space: nowrap}
.ps-pb__proof > span + span::before{content: "·"; margin-right: var(--sp-2); opacity: .7}
.ps-pb__rail{
display: grid; grid-auto-flow: column; grid-auto-columns: 78%; gap: calc(var(--sp-2) + 2px); margin: 0 calc(-1 * var(--sp-4)); padding: var(--sp-1) var(--sp-4) 2px;
list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--sp-4); scrollbar-width: none; overscroll-behavior-x: contain}
.ps-pb__rail::-webkit-scrollbar{display: none}
.ps-pb__rail > li{scroll-snap-align: center}
.ps-pb__pmeta{display: flex; justify-content: space-between; align-items: center; font: var(--fw-display) var(--fs-label-xs)/1.2 var(--ps-font-text)}
.ps-pb__pmeta > span:last-child{opacity: .85}
.ps-pb__pdots{display: flex; gap: calc(var(--sp-1) + 1px)}
.ps-pb__pdots i{width: calc(var(--sp-1) + 2px); height: calc(var(--sp-1) + 2px); border-radius: var(--ps-radius-pill); background: var(--ps-white-45)}
.ps-pb__pdots i.is-on{width: calc(var(--sp-4) + 2px); background: var(--ps-color-surface)}}
.ps-fd{
--fd-dock: -56px;
--fd-w: min(calc(100% - 240px), 1124px); 
--fd-pointer-r: 3px;
--fd-fs-h: 21px;
--fd-pad: 18px 18px 14px;
--fd-gap: 14px;
--fd-tray-pad: 12px 14px;
--fd-tray-radius: 14px;
--fd-row-h: 48px;
--fd-fs-row: 13.5px; 
--fd-fs-sum: 20px;
--fd-sum-ph: 40px;
--fd-pointer: 14px;
position: relative; z-index: 3; width: var(--fd-w); margin: var(--fd-dock) auto 0}
@media (max-width: 900px){.ps-fd{--fd-w: calc(100% - 80px); --fd-row-h: 44px}}
@media (max-width: 559px){.ps-fd{--fd-dock: -44px; --fd-w: calc(100% - 40px); --fd-fs-h: 18px; --fd-pad: 12px; --fd-gap: 12px; --fd-tray-pad: 10px; --fd-fs-sum: 18px}}
.ps-fd__card{display: grid; gap: var(--fd-gap); padding: var(--fd-pad); border-radius: var(--ps-radius-card); background: var(--ps-color-surface); box-shadow: var(--ps-shadow-float); color: var(--ps-color-ink)}
.ps-fd__head{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--sp-3)}
.ps-fd__h{margin: 0; font: var(--fw-display) var(--fd-fs-h)/1.2 var(--ps-font-display); color: var(--ps-color-brand-darkest)}
.ps-fd__rings{
display: flex; gap: calc(var(--sp-1) + 2px); overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none}
.ps-fd__rings::-webkit-scrollbar{display: none}
.ps-fd__rings > [hidden]{display: none}
.ps-fd__rings :focus-visible{outline-offset: calc(-1 * var(--focus-ring))}
.ps-fd__tray{
position: relative; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 2fr) auto; align-items: center; gap: var(--fd-gap);
margin-top: var(--sp-1); padding: var(--fd-tray-pad); border-radius: var(--fd-tray-radius); background: var(--ps-color-tint);
animation: ps-fd-in var(--ps-dur-base) var(--ps-ease-out)}
.ps-fd__tray[hidden]{display: none}
.ps-fd__tray::before{content: ""; position: absolute; top: calc(-1 * var(--fd-pointer) / 2); left: var(--px, 128px); width: var(--fd-pointer); height: var(--fd-pointer); border-radius: var(--fd-pointer-r); background: var(--ps-color-tint); transform: rotate(45deg)}
@keyframes ps-fd-in{from{opacity: 0; transform: translateY(6px)}to{opacity: 1; transform: none}}
.ps-fd__sum{display: flex; align-items: center; gap: calc(var(--sp-2) + 2px); min-width: 0}
.ps-fd__ph{flex: none; width: var(--fd-sum-ph); height: var(--fd-sum-ph); overflow: hidden; border-radius: 50%; background: var(--ps-color-surface)}
.ps-fd__ph img{width: 100%; height: 100%; object-fit: cover}
.ps-fd__sum b{display: block; font: var(--fw-display) var(--fd-fs-sum)/1.15 var(--ps-font-display); color: var(--ps-color-brand-darkest)}
.ps-fd__sum small{font: var(--fw-text) var(--fs-control)/1.3 var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-fd__rows{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sp-2); margin: 0; padding: 0; list-style: none}
.ps-fd__rows a{
display: grid; grid-template-columns: 22px minmax(0, 1fr) var(--sp-4); align-items: center; gap: var(--sp-2); min-height: var(--fd-row-h); padding: calc(var(--sp-1) + 2px) var(--sp-3);
border-radius: var(--sp-3); background: var(--ps-color-surface); box-shadow: inset 0 0 0 1px var(--ps-color-line); color: var(--ps-color-ink); text-decoration: none;
transition: background-color var(--ps-dur-fast) var(--ps-ease-out), scale var(--ps-dur-press) var(--ps-ease-out)}
.ps-fd__rows a:active{scale: .98}
@media (hover: hover) and (pointer: fine){.ps-fd__rows a:hover{background: var(--ps-color-tint)}}
.ps-fd__rows em{font: var(--fw-display) var(--ps-text-body)/1 var(--ps-font-display); font-style: normal; color: var(--ps-color-gold-icon)}
.ps-fd__rows b{display: -webkit-box; overflow: hidden; font: var(--fw-display) var(--fd-fs-row)/1.25 var(--ps-font-text); -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2}
.ps-fd__rows small{font: var(--fw-display) var(--fs-label-xs)/1.2 var(--ps-font-text); color: var(--ps-color-brand-deep)}
.ps-fd__rows .ps-icon{width: var(--sp-4); height: var(--sp-4); color: var(--ps-color-brand-deep)}
.ps-fd__acts{display: grid; justify-items: center; gap: calc(var(--sp-1) + 2px)}
.ps-fd__go{min-height: var(--hit); white-space: nowrap; font-variant-numeric: tabular-nums}
.ps-fd__wa{display: inline-flex; align-items: center; gap: calc(var(--sp-1) + 2px); min-height: var(--hit); color: var(--ps-color-wa-bubble-mark); font: var(--fw-display) var(--fs-control)/1.2 var(--ps-font-text); text-decoration: none}
.ps-fd__wa .ps-icon{color: var(--ps-color-wa-icon)}
@media (hover: hover) and (pointer: fine){.ps-fd__wa:hover{text-decoration: underline}}
@media (max-width: 900px){
.ps-fd__tray, .ps-fd__rows{grid-template-columns: minmax(0, 1fr)}
.ps-fd__acts{grid-auto-flow: column; justify-content: start; align-items: center; gap: var(--sp-4)}}
@media (max-width: 559px){
.ps-fd__head .ps-seg{flex: 1 1 100%}
.ps-fd__acts{grid-template-columns: minmax(0, 1fr) var(--hit); grid-auto-flow: row; gap: calc(var(--sp-1) + 2px)}
.ps-fd__go{width: 100%; justify-content: center}
.ps-fd__wa{justify-content: center; width: var(--hit); height: var(--hit); border-radius: 50%; box-shadow: inset 0 0 0 var(--border-strong) var(--ps-color-wa); background: var(--ps-color-surface)}
.ps-fd__wa span{position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap}}
.ps-home-proof{padding-bottom: 0}
.ps-homefeat{--hf-top: clamp(64px, 6vw, 88px); padding: var(--hf-top) 0 0}
@media (max-width: 759px){.ps-homefeat{--hf-top: 56px}}
.ps-chips{
--chip-h: var(--hit)}
.ps-chips--nav{--nav-chip-px: 14px; --nav-chip-bg: var(--ps-color-ground)}
.ps-chips--solid{--chip-h: 46px}
.ps-wa-bubble{
--bubble-radius: 10px 2px 10px 10px;
--bubble-px: 11px}
.ps-wa-bubble--in{--bubble-radius: 14px 14px 14px 4px; --bubble-px: var(--sp-3)}
.ps-seg{
--seg-pad: 3px;
--seg-opt-pad: 6px 14px}
@media (max-width: 759px){
.ps-seg{--seg-opt-pad: 6px 10px}}
.ps-chips{display: flex; flex-wrap: wrap; gap: calc(var(--sp-1) + 2px)}
.ps-chips .ps-chip{
min-height: var(--chip-h); padding: 0 var(--sp-4); border: 0; background: var(--ps-color-surface); color: var(--ps-color-brand-darkest);
box-shadow: inset 0 0 0 var(--border) var(--ps-color-line-input); font: var(--fw-display) var(--fs-control)/1.2 var(--ps-font-text);
cursor: pointer}
.ps-chips .ps-chip[aria-pressed="true"]{background: var(--ps-color-brand-deep); color: var(--ps-color-surface); box-shadow: none}
.ps-chips .ps-chip[aria-pressed="true"] .ps-icon{color: var(--ps-color-surface)}
.ps-chips--fade{
flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; padding-right: var(--sp-5)}
.ps-chips--nav .ps-chip{
position: relative; z-index: 1; flex: none; display: inline-flex; align-items: center; gap: calc(var(--sp-1) + 2px); padding: 0 var(--nav-chip-px);
background: var(--nav-chip-bg); color: var(--ps-color-ink-2); box-shadow: inset 0 0 0 var(--border) var(--ps-color-line); white-space: nowrap;
transition: color var(--ps-dur-base) var(--ps-ease-out), background-color var(--ps-dur-base) var(--ps-ease-out)}
.ps-chips--solid .ps-chip{gap: var(--sp-2); padding: 0 var(--sp-4); font-size: var(--fs-control-lg); color: var(--ps-color-ink-2)}
.ps-chips--solid .ps-chip:is([aria-pressed="true"], [aria-selected="true"]), .ps-seg--solid .ps-seg__opt[aria-pressed="true"]{background: var(--ps-color-brand-darkest); color: var(--ps-color-surface); box-shadow: none}
.ps-chips--solid .ps-chip[aria-selected="true"] .ps-icon{color: var(--ps-color-surface)}
.ps-chips--fade::-webkit-scrollbar{display: none}
.ps-chips--fade .ps-chip{flex: none}
.ps-chips--fade :focus-visible{outline-offset: calc(-1 * var(--focus-ring))}
.ps-chips--grid{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-2); --chip-h: 52px}
.ps-chips--grid .ps-chip{
display: flex; align-items: center; justify-content: space-between; gap: var(--sp-2); padding: var(--sp-2) var(--sp-3) var(--sp-2) var(--sp-4);
line-height: 1.25; text-align: left; text-decoration: none; white-space: normal}
.ps-chips--grid .ps-icon{flex: none; transition: transform var(--ps-dur-base) var(--ps-ease-out)}
@media (hover: hover) and (pointer: fine){.ps-chips--grid .ps-chip:hover .ps-icon{transform: translateX(3px)}}
.ps-seg{
display: inline-flex; gap: 2px; padding: var(--seg-pad); border-radius: var(--ps-radius-pill);
background: var(--ps-color-ground); box-shadow: inset 0 0 0 var(--border) var(--ps-color-line)}
.ps-seg__opt{
position: relative; display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-2);
min-height: var(--hit); padding: var(--seg-opt-pad); border: 0; border-radius: var(--ps-radius-pill); background: none; color: var(--ps-color-ink-2);
font: var(--fw-display) var(--fs-control)/1.2 var(--ps-font-text); white-space: nowrap; cursor: pointer;
-webkit-tap-highlight-color: transparent;
transition: background-color var(--ps-dur-fast) var(--ps-ease-out), color var(--ps-dur-fast) var(--ps-ease-out), scale var(--ps-dur-press) var(--ps-ease-out)}
.ps-seg__opt[aria-pressed="true"]{background: var(--ps-color-surface); color: var(--ps-color-brand-darkest); box-shadow: var(--ps-shadow-card)}
.ps-seg__opt:active{scale: 0.97}
.ps-seg__opt .ps-icon{width: var(--sp-5); height: var(--sp-5)}
.ps-seg--fill{display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); padding: var(--sp-1); background: var(--ps-color-tint); box-shadow: none}
.ps-seg--fill .ps-seg__opt{padding: 0 var(--sp-3); font-size: var(--fs-control-lg)}
.ps-seg--dark{background: var(--ps-scrim-hero-a); box-shadow: inset 0 0 0 var(--border) var(--ps-white-35)}
.ps-seg--dark .ps-seg__opt:not([aria-pressed="true"]){color: var(--ps-color-surface)}
.ps-wa-bubble{margin: 0; padding: var(--sp-2) var(--bubble-px); border-radius: var(--bubble-radius); background: var(--ps-color-wa-bubble); box-shadow: var(--ps-shadow-bubble); font-size: var(--ps-text-caption); line-height: 1.4; color: var(--ps-color-wa-bubble-ink)}
.ps-wa-bubble mark{background: none; font-weight: var(--fw-strong); color: var(--ps-color-wa-bubble-mark)}
.ps-wa-bubble small{display: block; margin-bottom: 2px; font: var(--fw-strong) var(--fs-label-xs)/1.3 var(--ps-font-text); letter-spacing: 0.1em; text-transform: uppercase; color: var(--ps-color-wa-bubble-mark)}
@media (hover: hover) and (pointer: fine){
.ps-chips .ps-chip:not([aria-pressed="true"]):hover{background: var(--ps-color-tint)}
.ps-chips--nav .ps-chip:not([aria-pressed="true"]):hover{color: var(--ps-color-brand-darkest)}
.ps-seg:not(.ps-seg--dark) .ps-seg__opt:not([aria-pressed="true"]):hover{color: var(--ps-color-brand-darkest)}}
@media (max-width: 759px){
.ps-seg:not(.ps-seg--fill){display: flex; justify-content: space-between}
.ps-seg:not(.ps-seg--fill) .ps-seg__opt{font-size: var(--fs-control-sm)}
.ps-seg--dark .ps-seg__opt{flex: 1 1 0}
.ps-chips--solid .ps-chip{font-size: var(--fs-control)}}
