/* Prop Haven sign-up (/join/) */
.phr-j{--w:var(--ph-wine,#6B003E);--g:var(--ph-gold,#FECC02);--gi:var(--ph-gold-ink,#1D1206);--ink:var(--ph-ink,#F6EFEF);--soft:var(--ph-ink-soft,#CBA6BD);--line:var(--ph-line,#5A1C40);--surf:var(--ph-surface,#2A0A1C);--mono:'Instrument Sans',ui-monospace,monospace;color:var(--ink);padding:40px 0 80px}
.phr-j *{box-sizing:border-box}
.phr-j-in{max-width:1080px;margin:0 auto;padding:0 max(16px,env(safe-area-inset-left,0px));display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;align-items:start}
.phr-j-side{position:sticky;top:110px;border-radius:20px;padding:34px;background:radial-gradient(120% 120% at 0% 0%,#8A1058,var(--w) 45%,#2a0018);overflow:hidden;min-height:440px}
.phr-j-side::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 16px,rgba(254,204,2,.07) 16px 17px)}
.phr-j-side>*{position:relative}
.phr-j-side img{width:170px;height:auto;margin-bottom:40px}
.phr-j-big{font-family:'Work Sans',sans-serif;font-weight:900;font-size:clamp(36px,4vw,52px);line-height:.92;letter-spacing:-.05em;margin:0 0 30px}
.phr-j-perks{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.phr-j-perks li{padding-left:22px;position:relative}
.phr-j-perks li::before{content:"";position:absolute;left:0;top:6px;width:10px;height:10px;border-radius:50%;background:var(--g);box-shadow:0 0 0 4px rgba(254,204,2,.2)}
.phr-j-perks b{display:block;font-size:16px}
.phr-j-perks span{font-size:14px;color:#f0d6e3}
.phr-j-form{padding:8px 0}
.phr-j-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px}
.phr-j-dots{list-style:none;margin:0 0 30px;padding:0;display:flex;gap:8px}
.phr-j-dots li{flex:1;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);padding-top:10px;border-top:3px solid var(--line);transition:border-color .3s,color .3s}
.phr-j-dots li.is-on{border-color:var(--g);color:var(--ink)}
.phr-j-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--g);margin:0 0 10px}
.phr-j h1{font-family:'Work Sans',sans-serif;font-weight:900;font-size:clamp(34px,4.6vw,56px);letter-spacing:-.045em;line-height:.95;margin:0 0 12px;color:var(--ink)}
.phr-j-hint{color:var(--soft);font-size:16px;line-height:1.5;margin:0 0 24px;max-width:46ch}
.phr-j-step{animation:phr-in .35s ease}
@keyframes phr-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.phr-j-phone,.phr-j-pass{display:flex;align-items:stretch;border:2px solid var(--line);border-radius:14px;background:var(--surf);overflow:hidden;transition:border-color .2s}
.phr-j-phone:focus-within,.phr-j-pass:focus-within{border-color:var(--g)}
.phr-j-phone span{display:grid;place-items:center;padding:0 16px;font-family:var(--mono);font-size:18px;color:var(--g);border-right:1px solid var(--line)}
.phr-j-phone input,.phr-j-pass input{flex:1;min-width:0;border:0 !important;background:transparent !important;color:var(--ink);font-size:24px;padding:18px 16px;letter-spacing:.04em;outline:none;box-shadow:none !important}
.phr-j-eye{background:none;border:0;color:var(--g);font-weight:700;padding:0 18px;cursor:pointer}
.phr-j-meter{height:5px;border-radius:9px;background:var(--line);margin:10px 0 0;overflow:hidden}
.phr-j-meter i{display:block;height:100%;width:0;background:#c0435f;transition:width .25s,background .25s}
.phr-j-meter i[data-s="2"]{background:#e8a33d}.phr-j-meter i[data-s="3"],.phr-j-meter i[data-s="4"]{background:var(--g)}
.phr-j-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:22px;padding:17px 30px;border-radius:999px;background:var(--g);color:var(--gi) !important;border:0;font-weight:800;font-size:17px;cursor:pointer;text-decoration:none !important;min-width:200px}
.phr-j-btn:hover{background:#ffd935}
.phr-j-btn:disabled{opacity:.6}
.phr-j-btn--ghost{background:transparent;color:var(--ink) !important;border:1.5px solid rgba(246,239,239,.35)}
.phr-j-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.phr-j-back{margin-top:22px;background:none;border:0;color:var(--soft);font-size:15px;cursor:pointer;padding:12px 4px}
.phr-j-alt{margin-top:22px;color:var(--soft);font-size:15px}
.phr-j-alt a,.phr-join-link a,.phr-join-strip a{color:var(--g)}
.phr-j-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.phr-j-grid p{margin:0;display:flex;flex-direction:column;gap:7px}
.phr-j-wide{grid-column:1/-1}
.phr-j-grid label{font-weight:700;font-size:15px}
.phr-j-grid small,.phr-j-chips small{font-weight:400;color:var(--soft);font-size:13px}
.phr-j-grid input{background:var(--surf);border:2px solid var(--line);border-radius:12px;color:var(--ink);padding:15px 16px;font-size:17px;width:100%}
.phr-j-grid input:focus{outline:none;border-color:var(--g)}
.phr-j-chips{border:0;padding:0;margin:22px 0 0}
.phr-j-chips legend{font-weight:700;font-size:15px;margin-bottom:10px}
.phr-j-chips label{display:inline-block;margin:0 6px 8px 0}
.phr-j-chips input{position:absolute;opacity:0}
.phr-j-chips span{display:inline-block;padding:9px 15px;border-radius:999px;border:1.5px solid var(--line);font-size:14px;cursor:pointer;transition:all .15s}
.phr-j-chips input:checked+span{background:var(--g);border-color:var(--g);color:var(--gi);font-weight:700}
.phr-j-chips input:focus-visible+span{outline:2px solid var(--g);outline-offset:2px}
.phr-j-err{padding:13px 16px;border-radius:12px;background:#4a0d1c;border:1px solid #c0435f;color:#ffd7df;margin:0 0 18px;font-size:15px}
.phr-j-fine{color:var(--soft);font-size:13px;margin-top:16px}
.phr-j-done{grid-column:1/-1;max-width:640px;margin:20px auto;text-align:center;padding:44px 28px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(160deg,var(--surf),#3D0022)}
.phr-j-tick{display:inline-grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--g);margin-bottom:18px}
.phr-j-tick::after{content:"";width:26px;height:14px;border-left:4px solid var(--gi);border-bottom:4px solid var(--gi);transform:rotate(-45deg) translate(2px,-3px)}
.phr-j-done p{color:var(--soft);font-size:16px;line-height:1.55}
.phr-j-done p b{color:var(--ink)}
.phr-j-code{font-family:var(--mono);background:var(--surf);padding:2px 8px;border-radius:6px}
.phr-j-gift{display:inline-flex;align-items:center;gap:12px;margin:12px 0 4px;padding:14px 20px;border-radius:14px;border:1px dashed var(--g)}
.phr-j-gift b{font-family:'Work Sans',sans-serif;font-weight:900;font-size:34px;color:var(--g)}
.phr-j-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.phr-join-link{margin-top:16px;font-size:15px}
.phr-join-strip{padding:14px 18px;border-radius:12px;border:1px solid var(--ph-line,#5A1C40);margin-bottom:22px}
@media (max-width:860px){
  .phr-j{padding-top:20px}
  .phr-j-in{grid-template-columns:minmax(0,1fr);gap:20px}
  .phr-j-side{position:relative;top:auto;min-height:0;padding:22px;order:2}
  .phr-j-side img{width:130px;margin-bottom:16px}
  .phr-j-big{font-size:30px;margin-bottom:16px}
  .phr-j-grid{grid-template-columns:minmax(0,1fr)}
  .phr-j-btn{width:100%}
  .phr-j-row .phr-j-btn{flex:1}
}
