.psfs {
  --psfs-bg:#f4efe8; --psfs-accent:#703344; --psfs-card-bg:#dfcbbc;
  --psfs-height:700px; --psfs-top:90px; --psfs-max-width:1280px; --psfs-text-width:36%; --psfs-gap:32px;
  --psfs-card-width:340px; --psfs-card-height:470px; --psfs-card-radius:18px;
  --psfs-focus-x:64%; --psfs-queue-x:22%; --psfs-queue-scale:.64; --psfs-spread:24px;
  --psfs-rotation:9; --psfs-gray:100%; --psfs-queue-opacity:.75; --psfs-duration:480ms;
  --psfs-nav-size:44px; --psfs-dot-size:7px; --psfs-travel:0px;
  position:relative; width:100%; height:calc(var(--psfs-stage-height, min(var(--psfs-height), calc(100svh - var(--psfs-top)))) + var(--psfs-travel));
  isolation:isolate; color:#30282b; font-family:inherit; line-height:1.6; direction:rtl;
}
.psfs *, .psfs *::before, .psfs *::after {box-sizing:border-box}
.psfs .psfs__stage {position:sticky; top:var(--psfs-top); height:var(--psfs-stage-height, min(var(--psfs-height), calc(100svh - var(--psfs-top)))); background:var(--psfs-bg); padding:42px 48px 64px; overflow:hidden; overflow:clip}
.psfs__layout {display:grid; grid-template-columns:minmax(0,var(--psfs-text-width)) minmax(0,1fr); gap:var(--psfs-gap); height:100%; max-width:var(--psfs-max-width); margin:0 auto; align-items:center}
.psfs__text {min-width:0; z-index:20}
.psfs .psfs__counter {display:flex; gap:12px; align-items:center; width:max-content; font-size:12px; line-height:1.4; font-weight:400; letter-spacing:2px; color:#887e7c; margin:0 0 26px; direction:ltr}
.psfs__current {color:var(--psfs-accent-override,var(--psfs-active-accent,var(--psfs-accent))); font-size:20px}
.psfs__counter-line {display:block; width:40px; height:1px; background:currentColor; opacity:.4}
.psfs__copies {display:grid}
.psfs .psfs__copy {grid-area:1/1; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(16px); transition:opacity 220ms ease,transform 220ms ease,visibility 220ms; min-width:0; text-align:right; align-self:center}
.psfs .psfs__copy.is-active {opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0)}
.psfs .psfs__eyebrow {color:var(--psfs-accent-override,var(--psfs-accent)); font-size:12px; font-weight:500; letter-spacing:.8px; margin:0 0 15px; display:flex; align-items:center; gap:10px}
.psfs__eyebrow::before {content:""; display:inline-block; width:24px; height:1px; background:currentColor; flex-shrink:0}
.psfs .psfs__title {font-family:inherit; color:#30282b; font-size:clamp(26px,3.3vw,48px); font-weight:700; line-height:1.55; margin:0 0 18px; overflow-wrap:anywhere}
.psfs .psfs__description {font-family:inherit; font-size:15px; font-weight:400; color:#7b7070; line-height:2; margin:0 0 28px; overflow-wrap:anywhere}
.psfs .psfs__button {display:inline-flex; align-items:center; justify-content:center; gap:22px; font-family:inherit; font-size:13px; font-weight:500; line-height:1.6; padding:13px 22px; background:var(--psfs-accent-override,var(--psfs-accent)); color:#fff; border:1px solid transparent; border-radius:8px; text-decoration:none; box-shadow:none; transition:background-color .2s,color .2s,transform .2s}
.psfs .psfs__button:hover {background:#30282b; color:#fff; transform:translateY(-2px)}
.psfs .psfs__button--empty {cursor:default}
.psfs__controls {display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:30px}
.psfs__arrows {display:flex; gap:8px}
.psfs .psfs__nav {display:inline-flex; align-items:center; justify-content:center; width:var(--psfs-nav-size); height:var(--psfs-nav-size); min-height:0; padding:0; margin:0; background:transparent; color:#504047; border:1px solid #cfc3bb; border-radius:50%; box-shadow:none; font-family:inherit; font-size:20px; line-height:1; cursor:pointer; transition:background .2s,opacity .2s; text-transform:none}
.psfs .psfs__nav:hover {background:#e8dfd5}
.psfs .psfs__nav:disabled {opacity:.3; cursor:default}
.psfs__dots {display:flex; align-items:center; gap:9px; flex-wrap:wrap; max-width:200px}
.psfs .psfs__dot {display:block; width:var(--psfs-dot-size); height:var(--psfs-dot-size); min-height:0; padding:0; margin:6px; border:0; border-radius:50%; background:#c8bcb3; box-shadow:none; cursor:pointer; position:relative; transition:background .2s,transform .2s}
.psfs__dot::after {content:""; position:absolute; inset:-8px}
.psfs .psfs__dot[aria-current="true"] {background:var(--psfs-accent-override,var(--psfs-active-accent,var(--psfs-accent))); transform:scale(1.35)}
.psfs__deck {position:relative; min-width:0; height:100%; direction:ltr; perspective:1200px}
.psfs .psfs__card {position:absolute; top:50%; left:0; width:min(var(--psfs-card-width),55%); height:min(var(--psfs-card-height),88%); margin:0; overflow:hidden; border-radius:var(--psfs-card-radius); border:1px solid rgba(255,255,255,.6); background:var(--psfs-card-bg-override,var(--psfs-card-bg)); box-shadow:0 24px 48px -22px rgba(46,29,29,.38); transform-origin:50% 50%; backface-visibility:hidden; transform:translate(calc(var(--psfs-queue-x) - 50%),-50%) scale(var(--psfs-queue-scale)) rotate(-9deg); opacity:0; visibility:hidden}
.psfs .psfs__card.is-active {left:var(--psfs-focus-x); transform:translate(-50%,-50%); opacity:1; visibility:visible}
.psfs.is-ready .psfs__card {left:0; visibility:visible}
.psfs .psfs__image {display:block; width:100%; height:100%; max-width:none; margin:0; border:0; border-radius:0; object-fit:cover; object-position:center; user-select:none; pointer-events:none}
.psfs .psfs__card-label {position:absolute; display:flex; justify-content:space-between; align-items:center; gap:10px; right:16px; left:16px; bottom:16px; padding:12px 14px; border:1px solid rgba(255,255,255,.5); border-radius:8px; background:rgba(250,246,239,.92); color:#30282b; font-size:11px; font-weight:500; direction:rtl; letter-spacing:.3px}
.psfs__card-number {font-size:12px; direction:ltr; opacity:.6}
.psfs__placeholder {width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; color:var(--psfs-accent); padding:16px 10px 70px}
.psfs__placeholder svg {width:90%; height:85%}
.psfs__placeholder>span {font-size:11px; opacity:.55; direction:rtl}
.psfs__queue-caption {position:absolute; bottom:1%; left:var(--psfs-queue-x); transform:translateX(-50%); font-size:11px; color:#8c7c78; white-space:nowrap; transition:opacity .2s}
.psfs .psfs__footer {position:absolute; bottom:22px; left:48px; right:48px; display:flex; justify-content:space-between; align-items:center; gap:24px}
.psfs__hint {font-size:11px; color:#968984}
.psfs__progress {display:block; width:120px; height:2px; background:#dbd0c6; overflow:hidden; direction:ltr}
.psfs__progress>span {display:block; width:100%; height:100%; background:var(--psfs-accent-override,var(--psfs-active-accent,var(--psfs-accent))); transform:scaleX(var(--psfs-progress,0)); transform-origin:left}
.psfs .psfs__sr {position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap}
.psfs :is(button,a):focus-visible {outline:2px solid var(--psfs-accent-override,var(--psfs-accent)); outline-offset:4px}
.psfs.is-static {height:var(--psfs-stage-height, min(var(--psfs-height), calc(100svh - var(--psfs-top))))}
.psfs.is-static .psfs__stage {position:relative; top:0}
.psfs.is-static .psfs__card {transition:transform var(--psfs-duration) cubic-bezier(.22,.68,0,1),opacity var(--psfs-duration),filter var(--psfs-duration)}
@media(max-width:1024px) {
  .psfs {--psfs-gap:18px; --psfs-top:70px; --psfs-card-width:280px; --psfs-card-height:410px}
  .psfs .psfs__stage {padding:28px 26px 54px}
  .psfs .psfs__title {font-size:30px}
  .psfs .psfs__description {font-size:13px; margin-bottom:18px}
  .psfs .psfs__footer {left:26px; right:26px; bottom:18px}
}
@media(max-width:767px) {
  .psfs {--psfs-top:20px; --psfs-height:780px; --psfs-card-width:260px; --psfs-card-height:350px; --psfs-focus-x:63%; --psfs-queue-x:20%}
  .psfs .psfs__stage {padding:22px 20px 48px}
  .psfs__layout {grid-template-columns:minmax(0,1fr); grid-template-rows:auto minmax(0,1fr); gap:14px}
  .psfs__text {width:100%}
  .psfs .psfs__counter {margin-bottom:10px; gap:8px; font-size:10px}
  .psfs__current {font-size:16px}
  .psfs .psfs__eyebrow {font-size:10px; margin-bottom:6px}
  .psfs .psfs__title {font-size:26px; line-height:1.45; margin-bottom:9px}
  .psfs .psfs__description {font-size:12px; line-height:1.8; margin-bottom:12px}
  .psfs .psfs__button {padding:9px 14px; font-size:11px}
  .psfs__controls {margin-top:12px; gap:14px}
  .psfs .psfs__nav {width:34px; height:34px; font-size:18px}
  .psfs__deck {min-height:120px}
  .psfs .psfs__card {height:min(var(--psfs-card-height),92%)}
  .psfs .psfs__card-label {left:8px; right:8px; bottom:8px; padding:8px; font-size:9px; gap:4px}
  .psfs__queue-caption {font-size:9px; bottom:0}
  .psfs .psfs__footer {left:20px; right:20px; bottom:16px; gap:12px}
  .psfs__hint {font-size:9px}
  .psfs__progress {width:64px; flex-shrink:0}
}
@media(prefers-reduced-motion:reduce) {
  .psfs *, .psfs *::before, .psfs *::after {transition:none!important; scroll-behavior:auto!important}
}
