/* ==========================================================================
   TapSetu — public profile design system (Business · Personal · GenZ)
   Layers on app.css. One structure, three personalities via [data-vibe].
   Built strictly from the per-profile input field lists (no USP extras).
   ========================================================================== */

/* ---- per-vibe personality tokens ---- */
[data-vibe]{--pf-accent:var(--cyan);--pf-accent-2:var(--blue);--pf-ink:#04121a;
  --pf-grad:linear-gradient(120deg,#1d3a8f,#2f6be0 55%,#0f8fb0);
  --pf-cta:var(--grad-cta);--pf-cta-ink:#1a1206;--pf-display:'Fraunces',Georgia,serif}
[data-vibe="business"]{--pf-accent:#d7a63f;--pf-accent-2:#b57f26;
  --pf-grad:linear-gradient(120deg,#3a2c0e,#d7a63f 55%,#8a6518);
  --pf-cta:var(--grad-cta);--pf-cta-ink:#1a1206}
[data-vibe="personal"]{--pf-accent:#16b8a6;--pf-accent-2:#0f8f7f;--pf-ink:#03130f;
  --pf-grad:linear-gradient(125deg,#0c463f,#12a596 58%,#4fd0b6);
  --pf-cta:linear-gradient(100deg,#0f9d8e,#22c2ac);--pf-cta-ink:#02120e}
[data-vibe="genz"]{--pf-accent:#ff4d9d;--pf-accent-2:#9b5cff;--pf-ink:#1a0620;
  --pf-grad:linear-gradient(130deg,#7b2ff7,#f72fb0 52%,#ff8a3d);
  --pf-cta:linear-gradient(100deg,#f72fb0,#9b5cff);--pf-cta-ink:#fff;--pf-display:'Unbounded',system-ui,sans-serif}

.mono{font-family:'IBM Plex Mono',ui-monospace,monospace;font-feature-settings:"tnum"}

/* ---- layout: mobile column → desktop 80% two-column ---- */
.pf-wrap{margin:0 auto;padding:22px 16px 96px;max-width:720px;overflow-x:hidden}
.pf{display:grid;gap:20px}
@media(min-width:1024px){
  .pf-wrap{width:80%;max-width:1200px;padding:28px 0 90px}
  .pf{grid-template-columns:380px 1fr;gap:34px;align-items:start}
  .pf-left{position:sticky;top:92px}
}
/* all 3 profiles = single full-width column (client: match genz) */
@media(min-width:1024px){
  body[data-vibe] .pf-wrap{width:auto;max-width:720px}
  body[data-vibe] .pf{grid-template-columns:1fr;gap:20px}
  body[data-vibe] .pf-left{position:static}
}

/* ---- identity card ---- */
.idcard{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);overflow:hidden}
.pf-cover{height:150px;position:relative;overflow:hidden;background:var(--pf-grad);margin-bottom:-70px}
.pf-cover::after{content:"";position:absolute;inset:0;opacity:.16;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M20 0 40 20 20 40 0 20Z' fill='none' stroke='%23ffffff' stroke-width='1'/%3E%3C/svg%3E");background-size:40px}
.idcard .pad{padding:0 22px 6px;text-align:center;position:relative}
.pf-avatar{width:120px;height:120px;border-radius:50%;margin:0 auto;border:5px solid var(--surface-2);background:var(--pf-grad);display:grid;place-items:center;font-family:var(--pf-display);font-weight:600;font-size:2.5rem;color:#fff;position:relative;box-shadow:var(--sh)}
.pf-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
[data-vibe="genz"] .pf-avatar{border-radius:26px}
.pf-avatar .verify{position:absolute;bottom:4px;right:4px;width:32px;height:32px;border-radius:50%;background:var(--pf-accent);border:3px solid var(--surface-2);display:grid;place-items:center}
.pf-avatar .verify svg{width:15px;color:var(--pf-ink)}
.idcard h1{font-family:var(--pf-display);font-weight:600;font-size:1.65rem;margin-top:14px;letter-spacing:-.01em}
[data-vibe="genz"] .idcard h1{font-weight:700;font-size:1.5rem}
.idcard .handle{font-family:'IBM Plex Mono';color:var(--pf-accent);font-weight:600;font-size:.9rem;margin-top:2px}
.idcard .role{color:var(--pf-accent);font-weight:700;font-size:.95rem;margin-top:3px}
.idcard .co{color:var(--muted);font-size:.92rem;margin-top:1px}
.idcard .bio{color:var(--muted);font-size:.9rem;margin-top:10px;line-height:1.55}

/* info chips (personal birthday/blood, genz mood) */
.pf-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:12px 22px 2px}
.pf-chip{display:inline-flex;align-items:center;gap:6px;background:var(--glass);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:600;color:var(--muted)}
.pf-chip svg{width:14px;color:var(--pf-accent)}
.pf-chip .mono{color:var(--white)}
.mood{display:inline-flex;align-items:center;gap:7px;background:color-mix(in srgb,var(--pf-accent) 16%,transparent);border:1px solid color-mix(in srgb,var(--pf-accent) 40%,transparent);color:var(--pf-accent);border-radius:999px;padding:7px 14px;font-weight:700;font-size:.82rem;margin-top:10px}

/* interests (genz) */
.tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:10px 22px 4px}
.tag-pill{background:var(--glass-2);border:1px solid var(--line);border-radius:999px;padding:6px 13px;font-size:.8rem;font-weight:600;color:var(--muted)}

/* ---- actions ---- */
.pf-actions{padding:16px 22px 24px;display:flex;flex-direction:column;gap:12px}
.pf-actions>*{margin:0}
.pgrid.pslide{cursor:grab}.pgrid.pslide:active{cursor:grabbing}
.btn-pf{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;font-family:'Manrope';font-weight:800;font-size:.96rem;padding:14px 20px;border-radius:999px;border:0;cursor:pointer;background:var(--pf-cta);color:var(--pf-cta-ink);box-shadow:0 10px 26px color-mix(in srgb,var(--pf-accent) 34%,transparent);transition:transform .18s var(--ease),box-shadow .2s}
.btn-pf:hover{transform:translateY(-2px)}.btn-pf:active{transform:translateY(0) scale(.98)}
.btn-pf svg{width:18px}
.act-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}
.act-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.qa{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--glass);border:1px solid var(--line);border-radius:13px;padding:11px 3px;transition:transform .18s var(--ease),border-color .18s;cursor:pointer;min-height:64px;min-width:0;overflow:hidden}
.qa span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.qa:hover{transform:translateY(-2px);border-color:var(--pf-accent)}
.qa .ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center}
.qa .ic svg{width:18px;color:#fff}
.qa span{font-size:.62rem;font-weight:700;color:var(--muted);text-align:center}
.qa.call .ic{background:#22a565}.qa.wa .ic{background:#25d366}.qa.mail .ic{background:#f5842c}
.qa.loc .ic{background:#e0473a}.qa.web .ic{background:var(--blue)}.qa.addr .ic{background:#8b5cf6}
.sec-acts{display:flex;gap:8px;margin-top:10px}
.sec-acts .sbtn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--glass-2);border:1px solid var(--line);border-radius:999px;padding:11px 6px;font-size:.82rem;font-weight:700;color:var(--white);cursor:pointer;transition:border-color .18s,transform .18s}
.sec-acts .sbtn:hover{border-color:var(--pf-accent);transform:translateY(-1px)}
.sbtn svg{width:16px;height:16px;flex-shrink:0}
.sec-acts .sbtn svg{width:15px;color:var(--pf-accent)}

/* ---- content sections ---- */
.pf-right{display:grid;gap:18px}
.psec{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
[data-theme="light"] .psec{box-shadow:0 10px 30px rgba(60,45,25,.07)}
.psec-h{display:flex;align-items:baseline;gap:12px;margin-bottom:15px}
.psec-h .ix{font-family:'IBM Plex Mono';font-size:.82rem;font-weight:600;color:var(--pf-accent)}
.psec-h h2{font-family:var(--pf-display);font-weight:600;font-size:1.3rem;letter-spacing:-.01em}
[data-vibe="genz"] .psec-h h2{font-weight:700;font-size:1.15rem}
.psec-h .more{margin-left:auto;font-size:.82rem;color:var(--muted);font-weight:600}

/* rows: services / generic link list */
.srow{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:13px;margin-bottom:9px;transition:border-color .18s,transform .18s}
.srow:last-child{margin-bottom:0}.srow:hover{border-color:var(--pf-accent);transform:translateY(-1px)}
.srow .ic{width:38px;height:38px;border-radius:11px;background:color-mix(in srgb,var(--pf-accent) 14%,transparent);display:grid;place-items:center;flex-shrink:0}
.srow .ic svg{width:19px;color:var(--pf-accent)}
.srow b{font-size:.94rem}.srow p{font-size:.78rem;color:var(--muted)}
.srow .go{margin-left:auto;font-size:.8rem;color:var(--pf-accent);font-weight:700;white-space:nowrap}

/* file rows: business kit / documents */
.file{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:13px;margin-bottom:9px}
.file:last-child{margin-bottom:0}
.file .fi{width:42px;height:42px;border-radius:11px;background:rgba(224,71,58,.12);display:grid;place-items:center;flex-shrink:0}
.file .fi svg{width:20px;color:#e0473a}
.file b{font-size:.9rem}.file span{font-size:.74rem;color:var(--muted)}
.file .dl{margin-left:auto;width:38px;height:38px;border-radius:11px;border:1px solid var(--line);display:grid;place-items:center;flex-shrink:0}
.file .dl svg{width:17px;color:var(--pf-accent)}

/* portfolio / creator media grid */
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pgrid .t{border-radius:13px;overflow:hidden;border:1px solid var(--line);aspect-ratio:4/3;position:relative;display:flex;align-items:flex-end;padding:12px;transition:transform .2s var(--ease)}
.pgrid .t:hover{transform:translateY(-3px)}
.pgrid .t b{color:#fff;font-size:.82rem;font-weight:700;position:relative;z-index:1;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.pgrid .t::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.5))}
.pgrid .t.a{background:linear-gradient(140deg,#20407e,#0f1830)}
.pgrid .t.b{background:linear-gradient(140deg,#1d6b52,#0f2018)}
.pgrid .t.c{background:linear-gradient(140deg,#5a3a12,#1a1206)}
.pgrid .t.d{background:linear-gradient(140deg,#7b2ff7,#2a0f4a)}

/* appointment */
.days{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:12px;scrollbar-width:none}.days::-webkit-scrollbar{display:none}
.day{flex-shrink:0;width:54px;text-align:center;border:1px solid var(--line);border-radius:12px;padding:9px 0;cursor:pointer;transition:.15s}
.day.on{background:var(--pf-accent-2);border-color:var(--pf-accent-2);color:#fff}
.day .d{font-size:.62rem;color:var(--muted);font-weight:600}.day.on .d{color:rgba(255,255,255,.85)}
.day .n{font-family:'IBM Plex Mono';font-weight:600;font-size:1.05rem}
.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.slot{border:1px solid var(--line);border-radius:10px;padding:9px 0;text-align:center;font-size:.82rem;font-weight:600;font-family:'IBM Plex Mono';cursor:pointer;transition:.15s}
.slot.on{background:color-mix(in srgb,var(--pf-accent) 14%,transparent);border-color:var(--pf-accent);color:var(--pf-accent)}

/* documents — private share (personal) */
.secsec{border:1px solid color-mix(in srgb,var(--pf-accent) 40%,transparent);background:linear-gradient(150deg,color-mix(in srgb,var(--pf-accent) 8%,transparent),transparent)}
.tag-secure{display:inline-flex;align-items:center;gap:6px;background:var(--pf-accent);color:var(--pf-ink);font-size:.64rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 11px;border-radius:999px}
.tag-secure svg{width:12px}
.docitem{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);margin-bottom:9px}
.docitem:last-child{margin-bottom:0}
.docitem .fi{width:38px;height:38px;border-radius:11px;background:color-mix(in srgb,var(--pf-accent) 14%,transparent);display:grid;place-items:center;flex-shrink:0}
.docitem .fi svg{width:18px;color:var(--pf-accent)}
.docitem b{font-size:.88rem}.docitem span{font-size:.72rem;color:var(--muted)}
.req{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:700;color:var(--pf-accent);border:1px solid color-mix(in srgb,var(--pf-accent) 42%,transparent);border-radius:999px;padding:7px 12px;background:none;cursor:pointer;white-space:nowrap;transition:.15s}
.req:hover{background:color-mix(in srgb,var(--pf-accent) 12%,transparent)}
.req svg{width:13px}

/* emergency (personal) */
.emsec{border:1px solid rgba(255,93,93,.4);background:linear-gradient(150deg,rgba(255,93,93,.09),transparent)}
.sos{display:flex;align-items:center;gap:14px;width:100%;background:linear-gradient(100deg,#e0362f,#ff5d5d);color:#fff;border:0;border-radius:15px;padding:16px 18px;cursor:pointer;box-shadow:0 12px 30px rgba(224,54,47,.4);transition:transform .15s}
.sos:hover{transform:translateY(-2px)}.sos:active{transform:scale(.98)}
.sos .ring{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.2);display:grid;place-items:center;flex-shrink:0}
.sos .ring svg{width:24px}
.sos b{font-size:1.05rem;display:block}.sos span{font-size:.78rem;opacity:.9}
.emrow{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:13px;margin-top:10px}
.emrow .ic{width:40px;height:40px;border-radius:11px;background:rgba(255,93,93,.14);display:grid;place-items:center;flex-shrink:0}.emrow .ic svg{width:19px;color:var(--red)}
.emrow b{font-size:.9rem}.emrow span{font-size:.76rem;color:var(--muted)}
.emrow .call-em{margin-left:auto;width:40px;height:40px;border-radius:50%;background:#22a565;display:grid;place-items:center;flex-shrink:0}.emrow .call-em svg{width:18px;color:#fff}

/* payment */
.pay-methods{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.pay-methods span{font-size:.74rem;font-weight:700;color:var(--muted);background:color-mix(in srgb,var(--pf-accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--pf-accent) 25%,transparent);border-radius:999px;padding:6px 11px}
.upi{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--glass);border:1px dashed var(--line);border-radius:12px;padding:11px 14px;font-size:.86rem}
.upi .mono{font-weight:600}
.pay-btn{background:var(--pf-cta);color:var(--pf-cta-ink);border:0;border-radius:999px;padding:9px 18px;font-weight:800;font-size:.84rem;cursor:pointer}

/* social */
.social{display:flex;flex-wrap:wrap;gap:10px}
.social a{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;color:#fff;transition:transform .18s var(--ease)}
.social a:hover{transform:translateY(-3px)}
.social svg{width:20px}
.s-ig{background:linear-gradient(135deg,#f9ce34,#ee2a7b,#6228d7)}.s-fb{background:#1877f2}.s-li{background:#0a66c2}
.s-yt{background:#ff0000}.s-x{background:#111}.s-tg{background:#2aabee}.s-sc{background:#fffc00;color:#111!important}
/* genz: bigger pill social buttons */
.gsocial{display:grid;gap:10px}
.gsocial a{display:flex;align-items:center;gap:12px;border-radius:15px;padding:14px 16px;color:#fff;font-weight:800;font-size:.95rem;transition:transform .18s var(--ease)}
.gsocial a:hover{transform:translateY(-2px)}
.gsocial a .gi{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.18);display:grid;place-items:center}
.gsocial a .gi svg{width:19px}.gsocial a .n{margin-left:auto;font-family:'IBM Plex Mono';font-weight:600;opacity:.9;font-size:.82rem}

/* featured video (genz creator zone) */
.featvid{position:relative;height:200px;border-radius:15px;overflow:hidden;background:var(--pf-grad);display:grid;place-items:center;margin-bottom:12px}
.featvid .play{width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;box-shadow:0 10px 26px rgba(0,0,0,.35)}
.featvid .play svg{width:24px;color:#111;margin-left:3px}
.featvid .lbl{position:absolute;bottom:12px;left:14px;color:#fff;font-weight:700;font-size:.85rem;text-shadow:0 1px 4px rgba(0,0,0,.5)}

/* footer */
.pfoot{text-align:center;color:var(--muted);font-size:.82rem;margin-top:8px}
.pfoot a{color:var(--pf-accent);font-weight:700}

/* mobile sticky CTA */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:55;padding:12px 14px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--navy-900) 88%,transparent);backdrop-filter:blur(14px);border-top:1px solid var(--line)}
.sticky-cta .in{max-width:560px;margin:0 auto;display:flex;gap:10px}
.sticky-cta .sbtn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--glass-2);border:1px solid var(--line);border-radius:999px;padding:12px;font-weight:700;color:var(--white);cursor:pointer}
.sticky-cta .btn-pf{flex:1.4}
@media(min-width:1024px){.sticky-cta{display:none}}

/* ===== atmospheric per-vibe background + ambient motion ===== */
/* (reduced-motion: app.css globally sets animation:none + reveal visible) */
.pf-bg{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:var(--pf-scene,#070f26)}
.pf-bg::before,.pf-bg::after{content:"";position:absolute;border-radius:50%;filter:blur(74px);opacity:var(--pf-orbop,.5);will-change:transform}
.pf-bg::before{width:62vw;height:62vw;max-width:760px;max-height:760px;background:radial-gradient(circle,var(--pf-orb1,#2f6be0),transparent 66%);top:-16%;left:-12%;animation:pfDrift1 26s ease-in-out infinite alternate}
.pf-bg::after{width:56vw;height:56vw;max-width:680px;max-height:680px;background:radial-gradient(circle,var(--pf-orb2,#0f9ec0),transparent 66%);bottom:-20%;right:-14%;animation:pfDrift2 32s ease-in-out infinite alternate}
@keyframes pfDrift1{from{transform:translate3d(-4%,-3%,0) scale(1)}to{transform:translate3d(6%,5%,0) scale(1.12)}}
@keyframes pfDrift2{from{transform:translate3d(4%,3%,0) scale(1.05)}to{transform:translate3d(-6%,-4%,0) scale(.95)}}

[data-vibe="business"]{--pf-scene:radial-gradient(1100px 680px at 18% -12%,#241a06,transparent 60%),radial-gradient(900px 600px at 100% 8%,#1a1305,transparent 55%),#08080c;--pf-orb1:#d7a63f;--pf-orb2:#8a6518;--pf-orbop:.32}
[data-vibe="personal"]{--pf-scene:radial-gradient(1100px 680px at 18% -12%,#0c463f,transparent 60%),radial-gradient(900px 600px at 100% 8%,#093730,transparent 55%),#04130f;--pf-orb1:#12a596;--pf-orb2:#3fd0b0;--pf-orbop:.48}
[data-vibe="genz"]{--pf-scene:radial-gradient(1000px 700px at 82% -10%,#3a1163,transparent 60%),radial-gradient(900px 640px at 0% 100%,#5a1240,transparent 55%),#130720;--pf-orb1:#9b5cff;--pf-orb2:#f72fb0;--pf-orbop:.55}
[data-theme="light"] body[data-vibe="business"]{--pf-scene:linear-gradient(180deg,#eef3fc,#e6ecf7);--pf-orb1:#8fb4ff;--pf-orb2:#8fd6e8;--pf-orbop:.4}
[data-theme="light"] body[data-vibe="personal"]{--pf-scene:linear-gradient(180deg,#e9f7f2,#dff0ea);--pf-orb1:#7ad6c6;--pf-orb2:#a7e6d6;--pf-orbop:.42}
[data-theme="light"] body[data-vibe="genz"]{--pf-scene:linear-gradient(180deg,#f6ecfb,#efe4f9);--pf-orb1:#c9a0ff;--pf-orb2:#ffb0dc;--pf-orbop:.45}

/* cover sheen sweep (all vibes; livelier on genz) */
.pf-cover::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(70deg,transparent 20%,rgba(255,255,255,.20),transparent 80%);transform:translateX(-120%);animation:pfShine 6s ease-in-out infinite}
[data-vibe="genz"] .pf-cover::before{animation-duration:3.4s;background:linear-gradient(70deg,transparent 15%,rgba(255,255,255,.34),transparent 85%)}
@keyframes pfShine{0%{transform:translateX(-120%)}55%,100%{transform:translateX(120%)}}

/* genz avatar bob */
[data-vibe="genz"] .pf-avatar{animation:pfBob 5s ease-in-out infinite}
@keyframes pfBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* primary CTA shine (transform-based) */
.btn-pf{position:relative;overflow:hidden}
.btn-pf::after{content:"";position:absolute;top:-50%;left:0;width:38%;height:200%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:translateX(-160%) skewX(-18deg);animation:pfSheen 4.5s ease-in-out infinite}
@keyframes pfSheen{0%{transform:translateX(-160%) skewX(-18deg)}45%,100%{transform:translateX(420%) skewX(-18deg)}}

/* staggered reveal cascade for the content column */
.pf-right .reveal:nth-child(1){transition-delay:.02s}
.pf-right .reveal:nth-child(2){transition-delay:.08s}
.pf-right .reveal:nth-child(3){transition-delay:.14s}
.pf-right .reveal:nth-child(4){transition-delay:.20s}
.pf-right .reveal:nth-child(5){transition-delay:.26s}
.pf-right .reveal:nth-child(6){transition-delay:.32s}

/* ===== bottom marketing promo (footer of every profile) ===== */
.pf-promo{margin-top:24px}
.promo-card{position:relative;overflow:hidden;border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(120deg,#0b1330,#121b40);box-shadow:var(--sh);padding:26px;display:flex;align-items:center;gap:22px}
.promo-card::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-70px;top:-100px;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--pf-accent) 42%,transparent),transparent 66%);filter:blur(16px)}
.promo-txt{position:relative;z-index:1;flex:1}
.promo-eyebrow{font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--pf-accent)}
.promo-txt h3{font-family:var(--pf-display);font-weight:600;font-size:1.35rem;color:#fff;margin:7px 0 4px;line-height:1.2}
.promo-txt p{color:#c7d2ea;font-size:.9rem;margin-bottom:16px}
.promo-cta{display:inline-flex;align-items:center;gap:7px;background:var(--pf-cta);color:var(--pf-cta-ink);font-weight:800;font-size:.9rem;padding:12px 20px;border-radius:999px;box-shadow:0 10px 24px color-mix(in srgb,var(--pf-accent) 34%,transparent);transition:transform .18s var(--ease)}
.promo-cta:hover{transform:translateY(-2px)}
.promo-visual{position:relative;width:160px;height:100px;border-radius:13px;background:linear-gradient(135deg,#22232c,#0a0a0d);transform:rotate(-7deg);box-shadow:0 18px 40px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.12);flex-shrink:0}
.promo-visual .wm{position:absolute;left:15px;top:14px;font-family:'Sora',sans-serif;font-weight:800;color:#fff;font-size:1.05rem}
.promo-visual .wm b{color:#ff8a00}
.promo-visual .wave{position:absolute;right:12px;bottom:11px;width:28px;height:28px}
.pf-copy{text-align:center;color:var(--muted);font-size:.78rem;margin-top:16px}
@media(max-width:560px){.promo-card{flex-direction:column;text-align:center}.promo-txt{text-align:center}.promo-visual{margin-top:4px}}

/* ===== header image/video inside the cover ===== */
.pf-cover .cmedia{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;border:0}
.pf-cover::before{z-index:2}
.pf-cover::after{z-index:2}
.pf-cover .cmedia+*{z-index:2}

/* ===== portfolio as a draggable single-line slider ===== */
.pgrid.pslide{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:2px;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}
.pgrid.pslide::-webkit-scrollbar{display:none;height:0;width:0}
.pgrid.pslide .t{flex:0 0 48%;scroll-snap-align:start;aspect-ratio:4/3}
@media(min-width:1024px){.pgrid.pslide .t{flex:0 0 31%}}

/* ===== business kit as 3 compact horizontal buttons ===== */
.kit{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.kitem{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:16px 8px 13px;border:1px solid var(--line);border-radius:13px;background:var(--glass);cursor:pointer;transition:transform .18s var(--ease),border-color .18s}
.kitem:hover{transform:translateY(-2px);border-color:var(--pf-accent)}
.kitem .fi{width:40px;height:40px;border-radius:11px;background:rgba(224,71,58,.12);display:grid;place-items:center;flex-shrink:0}
.kitem .fi svg{width:20px;color:#e0473a}
.kitem b{font-size:.8rem;line-height:1.25}
.kitem .sz{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;color:var(--muted);font-family:'IBM Plex Mono',monospace}
.kitem .sz svg{width:12px;color:var(--pf-accent)}
@media(max-width:420px){.kitem{padding:13px 5px 11px}.kitem b{font-size:.7rem}}

/* ===== 2026-07-10 client feedback: cover-fix, glass, larger type, clearer buttons ===== */
/* (1) cover image must sit BEHIND the avatar, not over it */
.pf-cover{isolation:isolate}
.pf-avatar{z-index:2}

/* (2) glassmorphism cards over the atmospheric background */
[data-vibe]{--pf-glass:rgba(16,22,44,.58);--pf-glass-brd:rgba(255,255,255,.13)}
[data-theme="light"] body[data-vibe]{--pf-glass:rgba(255,255,255,.64);--pf-glass-brd:rgba(30,30,50,.1)}
.idcard,.psec{background:var(--pf-glass)!important;backdrop-filter:blur(22px) saturate(1.35);-webkit-backdrop-filter:blur(22px) saturate(1.35);border-color:var(--pf-glass-brd);box-shadow:0 14px 44px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08)}

/* (3) larger, more readable type */
.idcard h1{font-size:1.9rem}
[data-vibe="genz"] .idcard h1{font-size:1.7rem}
.idcard .role,.idcard .handle{font-size:1.04rem}
.idcard .co{font-size:1rem}
.idcard .bio{font-size:1.02rem;line-height:1.6}
.psec-h h2{font-size:1.5rem}
[data-vibe="genz"] .psec-h h2{font-size:1.3rem}
.psec-h .ix{font-size:.9rem}
.srow b,.file b,.docitem b,.kitem b,.emrow b{font-size:1rem}
.srow p{font-size:.88rem}
.srow .go,.psec-h .more{font-size:.9rem}
.qa span{font-size:.72rem}
.sec-acts .sbtn{font-size:.94rem}
.pf-chip,.tag-pill{font-size:.88rem}
.upi{font-size:.98rem}
.pay-methods span{font-size:.8rem}
p.muted{font-size:1.02rem!important;line-height:1.6}

/* (4) clearer, bigger action buttons (reference style) */
.qa{min-height:76px;padding:14px 4px;border-radius:16px}
.qa .ic{width:42px;height:42px;border-radius:12px}.qa .ic svg{width:21px}
.sec-acts .sbtn{border-radius:15px;padding:14px 8px}
.sec-acts .sbtn svg{width:17px}
.btn-pf{padding:16px 22px;font-size:1.05rem;border-radius:16px}
.gsocial a,.social a{transition:transform .18s var(--ease)}

/* ===== reference-style hero action tiles + Follow pill ===== */
.act-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.atile{display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 4px;border-radius:16px;border:1px solid var(--pf-glass-brd,var(--line));background:var(--glass);color:var(--white);font-size:.74rem;font-weight:700;cursor:pointer;transition:transform .18s var(--ease),border-color .18s}
.atile:hover{transform:translateY(-2px);border-color:var(--pf-accent)}
.atile .ai{width:26px;height:26px;display:grid;place-items:center}
.atile .ai svg{width:22px;height:22px}
.atile.save{background:#fff;color:#141414;border-color:transparent}
.btn-pf.follow{margin-top:12px}
.btn-pf.follow svg{width:19px;height:19px}

/* ===== Follow-me as story-highlight circles (matches reference) ===== */
.hl-row{display:flex;flex-wrap:wrap;gap:22px;justify-content:flex-start;padding:4px 2px}
.hl{display:flex;flex-direction:column;align-items:center;gap:10px;width:72px;font-size:.82rem;font-weight:700;color:var(--white);text-align:center}
.hlc{width:66px;height:66px;border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.14),0 8px 20px rgba(0,0,0,.35);transition:transform .18s var(--ease),box-shadow .18s}
[data-theme="light"] .hlc{box-shadow:0 0 0 3px rgba(20,20,45,.1),0 8px 20px rgba(60,45,25,.16)}
.hl:hover .hlc{transform:translateY(-3px) scale(1.05);box-shadow:0 0 0 3px rgba(255,255,255,.3),0 12px 26px rgba(0,0,0,.42)}
.hlc svg{width:28px;height:28px}

/* ===== profile pill navigation (rest of menu in hamburger) ===== */
.pf-nav,.pf-nav.scrolled{background:transparent!important;border-bottom:0!important;backdrop-filter:none!important}
.pf-nav .site-nav{max-width:640px;margin:12px auto 0;height:auto;min-height:54px;padding:8px 10px 8px 18px;border:1px solid var(--pf-glass-brd,var(--line));border-radius:999px;background:var(--pf-glass,rgba(16,22,44,.6));backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3)}
.pf-nav .nav-actions{gap:8px}
.pf-nav .menu-btn{display:inline-flex!important;align-items:center;justify-content:center}

/* ===== GenZ hero: cover back + BIGGER glowing circular avatar + near-black card ===== */
body[data-vibe]{--pf-glass:rgba(10,11,20,.68)}
body[data-vibe] .pf-cover{height:160px;margin-bottom:-100px}
body[data-vibe="genz"] .idcard .pad{padding:0 24px 4px}
body[data-vibe="genz"] .idcard h1{margin-top:18px}
body[data-vibe="genz"] .tags{padding:14px 24px 6px}
body[data-vibe="genz"] .pf-actions{padding:18px 24px 28px}
body[data-vibe="genz"] .pf-avatar{width:200px;height:200px;border-radius:50%;border:5px solid rgba(255,255,255,.16);box-shadow:0 0 0 2px rgba(255,255,255,.1),0 0 30px 6px rgba(247,47,176,.5),0 0 60px 18px rgba(155,92,255,.36),0 0 84px 28px rgba(45,132,255,.24)}
.atile{border-radius:18px}

/* ===== glowing avatars on Business + Personal (vibe-colored), matching GenZ ===== */
body[data-vibe] .pf-avatar{width:200px;height:200px}
body[data-vibe="business"] .pf-avatar{border:4px solid rgba(255,255,255,.14);box-shadow:0 0 0 2px rgba(255,255,255,.08),0 0 26px 5px rgba(45,212,255,.42),0 0 48px 14px rgba(37,99,235,.3)}
body[data-vibe="personal"] .pf-avatar{border:4px solid rgba(255,255,255,.14);box-shadow:0 0 0 2px rgba(255,255,255,.08),0 0 26px 5px rgba(22,194,172,.44),0 0 48px 14px rgba(15,158,127,.3)}

/* Business + Personal contact tiles → same plain-glass tiles as GenZ (no coloured chips) */
.qa{border-radius:18px;min-height:76px}
.qa .ic{background:transparent!important;width:26px;height:26px}
.qa .ic svg{width:22px;color:var(--white)}
.qa span{color:var(--white)}

/* ---- Business "Details" card (client screenshot layout) ---- */
.bd-head{text-align:center;margin:2px 0 16px}
.bd-eyebrow{display:inline-flex;align-items:center;gap:7px;font-family:'Manrope';font-size:.7rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--pf-accent);border:1px solid color-mix(in srgb,var(--pf-accent) 40%,transparent);background:color-mix(in srgb,var(--pf-accent) 10%,transparent);border-radius:999px;padding:6px 15px}
.bd-eyebrow svg{width:13px;height:13px}
.bd-title{font-family:var(--pf-display);font-weight:600;font-size:1.95rem;line-height:1.05;color:var(--pf-accent);margin-top:13px;letter-spacing:-.01em}
.bd-card{background:var(--pf-glass);border:1px solid var(--pf-glass-brd);border-radius:20px;padding:4px 18px;backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 14px 44px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.06)}
.bd-row{display:flex;align-items:center;gap:15px;padding:15px 2px;text-decoration:none;color:inherit;border-bottom:1px solid color-mix(in srgb,#fff 8%,transparent);transition:padding .18s var(--ease),color .18s}
.bd-row:last-child{border-bottom:0}
a.bd-row:hover{padding-left:9px}
a.bd-row:hover .bd-val{color:var(--pf-accent)}
.bd-ic{width:43px;height:43px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;color:var(--pf-accent);border:1px solid color-mix(in srgb,var(--pf-accent) 45%,transparent);background:color-mix(in srgb,var(--pf-accent) 9%,transparent)}
.bd-ic svg{width:19px;height:19px}
.bd-meta{display:flex;flex-direction:column;gap:4px;min-width:0}
.bd-lbl{font-family:'Manrope';font-size:.66rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:color-mix(in srgb,var(--pf-accent) 78%,#fff)}
.bd-val{font-size:.97rem;font-weight:600;color:var(--white);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bd-val.mono{font-family:'IBM Plex Mono',monospace;font-size:.9rem;letter-spacing:.02em}
