/* UGC portfolio v2.2 — scoped styles, no change to catalogue or plan cards. */
.portfolio-section{margin-top:38px;border-top:1px solid var(--line);padding-top:30px}.portfolio-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.portfolio-heading .eyebrow{font-size:11px;letter-spacing:.14em;margin-bottom:8px}.portfolio-heading h2{font-size:28px;margin:0}.portfolio-count{border:1px solid #e4d9ed;border-radius:30px;padding:6px 12px;color:#776184;background:#faf7fd;font-size:12px;white-space:nowrap}.portfolio-intro{margin:12px 0 24px}.portfolio-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.portfolio-work{margin:0;min-width:0;border-radius:20px;background:linear-gradient(155deg,#f7f3fb,#f0edf5);border:1px solid #e9e1f0;padding:22px 16px 14px}.phone-frame{position:relative;width:100%;max-width:238px;margin:0 auto;padding:26px 7px 12px;background:linear-gradient(130deg,#3c3545,#16121d 45%,#302936);border-radius:36px;border:2px solid #9b929f;box-shadow:inset 0 0 0 2px #18141e,0 12px 25px #2a153d20}.phone-frame:before{content:"";position:absolute;width:53px;height:7px;border-radius:12px;background:#08070b;left:50%;top:10px;transform:translateX(-50%);box-shadow:65px 0 0 -2px #49404f}.phone-frame:after{content:"";position:absolute;bottom:4px;left:50%;width:53px;height:3px;background:#77717b;border-radius:4px;transform:translateX(-50%)}.phone-screen{position:relative;overflow:hidden;border-radius:23px;background:#12101a;aspect-ratio:9/16}.phone-screen video{display:block;width:100%;height:100%;object-fit:contain;background:#12101a;aspect-ratio:9/16}.portfolio-work figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;font-size:12px}.portfolio-work figcaption>span{letter-spacing:.12em;color:#84718f;font-weight:700}.portfolio-work figcaption>a{font-weight:600;font-size:12px}.portfolio-photo{display:flex;align-items:center;justify-content:center;min-height:250px;height:100%;aspect-ratio:3/4;border-radius:13px;overflow:hidden;background:#e9e2ef}.portfolio-photo img{width:100%;height:100%;object-fit:contain;max-height:480px}.video-error{font-size:12px;margin-top:12px;color:#973548}.video-error[hidden]{display:none}.portfolio-upload{padding:22px;border:1px dashed #c7acd9;border-radius:14px;background:#faf7fd}.portfolio-upload-icon{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--purple);background:#eee2f8;font-size:25px;margin-bottom:14px}.portfolio-upload input{background:#fff!important;margin:5px 0}.portfolio-file-status{overflow-wrap:anywhere;margin-top:10px}.portfolio-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portfolio-edit-item{min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#faf9fc}.portfolio-edit-item>img,.portfolio-edit-player>video{display:block;width:100%;height:200px;object-fit:contain;background:#191420;border-radius:8px}.portfolio-edit-item>.checkbox{margin-top:12px}.portfolio-work:focus-within{border-color:#a97bc9}.phone-screen video:focus-visible{outline:3px solid #b686e2;outline-offset:-3px}
@media(min-width:1200px){.portfolio-showcase{gap:24px}.portfolio-work{padding:24px 22px 16px}}
@media(max-width:550px){.portfolio-showcase{grid-template-columns:1fr;gap:20px}.portfolio-work{padding:24px 22px 16px}.portfolio-heading h2{font-size:25px}.phone-frame{max-width:238px}.portfolio-edit-grid{grid-template-columns:1fr}.portfolio-photo{min-height:0;max-height:420px}.portfolio-upload{padding:16px}.portfolio-work figcaption{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.portfolio-section *{scroll-behavior:auto!important}}

.portfolio-play{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;border-radius:23px;padding:0;cursor:pointer}.portfolio-play[hidden]{display:none}.portfolio-play:focus-visible{outline:3px solid #cba4ee;outline-offset:-5px}

.portfolio-edit-player{position:relative}.portfolio-edit-player .portfolio-play{border-radius:8px}
