
/* Vibe v0.19.1 — guest homepage and member access */
body:has(.sv-access) {min-height:100vh;background:radial-gradient(ellipse at 18% 18%,rgba(111,70,219,.13),transparent 42%),var(--background,#f6f5fb)}
.sv-access {width:min(1200px,94vw);min-height:0;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(24px,4vw,72px);align-items:center;padding:24px 0 30px}
.sv-access-story {position:relative;isolation:isolate;padding:18px 0 68px;min-width:0}
.sv-access-kicker {display:inline-block;letter-spacing:.16em;text-transform:uppercase;font-size:.76rem;font-weight:800;color:#9673ec;margin-bottom:11px}
.sv-access-story h1 {font-size:clamp(2.45rem,4.7vw,4.5rem);line-height:1.06;letter-spacing:-.045em;margin:0 0 15px;max-width:680px}
.sv-access-story p {font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.48;max-width:550px;opacity:.8}
.sv-access-chips {display:flex;gap:10px;flex-wrap:wrap;margin-top:17px}
.sv-access-chips span {padding:8px 13px;border:1px solid rgba(137,112,190,.28);border-radius:40px;font-size:.85rem}
.sv-access-art {height:90px;position:absolute;bottom:-6px;left:12%;right:5%;pointer-events:none}
.sv-access-orbit {position:absolute;border:2px solid rgba(148,101,228,.24);border-radius:50%;width:270px;height:120px;transform:rotate(-13deg)}
.sv-orbit-two {left:100px;transform:rotate(18deg);width:210px}
.sv-access-bubble {position:absolute;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#a278fa,#6840c5);color:white;box-shadow:0 12px 28px #6542ab33}
.sv-bubble-one {left:30px;top:16px;width:55px;height:55px}.sv-bubble-two {left:195px;top:60px;width:46px;height:46px}.sv-bubble-three {left:310px;top:8px;width:62px;height:62px}
.sv-access-card {background:var(--surface,#fff);color:var(--text,#211b2b);border:1px solid rgba(132,108,165,.18);border-radius:24px;padding:clamp(20px,2.5vw,30px);box-shadow:0 20px 65px rgba(49,31,92,.13);min-width:0}
.sv-access-card-head h2 {font-size:1.8rem;margin:0 0 7px}.sv-access-card-head p {opacity:.7;margin:0 0 15px}
.sv-access-form {display:grid;gap:10px}.sv-access-form label {font-weight:650;font-size:.92rem}
.sv-access-form input:not([type=checkbox]) {width:100%;box-sizing:border-box;border-radius:11px;padding:10px 13px;border:1px solid #aaa0bc;background:var(--surface,#fff);color:inherit;font-size:1rem;margin-bottom:3px}
.sv-access-remember {display:flex;align-items:center;gap:9px;font-weight:400!important;margin:0 0 5px}
.sv-access-submit,.sv-access-join {width:100%;display:flex;justify-content:center;box-sizing:border-box;text-align:center;padding:11px!important}
.sv-access-forgot,.sv-access-verify,.sv-access-switch {display:block;text-align:center;margin:11px auto;color:inherit;font-size:.92rem}
.sv-access-rule {border-top:1px solid rgba(132,108,165,.2);margin:13px 0}.sv-access-join {text-decoration:none!important}
.sv-access-error {background:#fce7e7;color:#8d2222;border-radius:10px;padding:12px}
.sv-access-card .account-panel {box-shadow:none!important;border:0!important;padding:0!important;background:transparent!important}
.sv-access-card .account-panel h1,.sv-access-card .account-panel .eyebrow {display:none}
.sv-access-card .account-form {max-width:none}.sv-access-footer {display:flex;justify-content:center;gap:25px;padding:0 20px 12px;opacity:.65;font-size:.8rem}
@media(max-width:800px){.sv-access{grid-template-columns:1fr;gap:10px;padding-top:25px}.sv-access-story{padding:0 0 18px}.sv-access-art{display:none}.sv-access-story h1{font-size:clamp(2.4rem,9vw,3.5rem)}.sv-access-card{max-width:540px;width:100%;box-sizing:border-box;margin:0 auto}}

/* Compact desktop welcome; retain comfortable mobile spacing and natural scrolling. */
@media(max-width:800px){.sv-access{padding:20px 0 30px}.sv-access-story{padding:0 0 18px}.sv-access-card{padding:24px}.sv-access-art{display:none}}
@media(max-height:760px) and (min-width:801px){.sv-access{padding:12px 0 18px}.sv-access-story{padding:8px 0 54px}.sv-access-story h1{font-size:clamp(2.3rem,4.1vw,3.8rem)}.sv-access-art{transform:scale(.8);transform-origin:bottom left}}

/* Public legal/support pages and compact footer */
.sv-site-footer{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;padding:15px clamp(18px,4vw,60px);font-size:.8rem}
.sv-legal-links{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}.sv-legal-links a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.sv-legal-page{max-width:960px;width:calc(100% - 32px);margin:28px auto 48px}.sv-legal-card{background:var(--surface,#fff);border:1px solid rgba(132,108,165,.18);border-radius:22px;padding:clamp(24px,5vw,55px);box-shadow:0 10px 40px rgba(49,31,92,.06)}
.sv-legal-eyebrow{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:#8261c8}.sv-legal-card h1{font-size:clamp(2rem,4vw,3rem);margin:0 0 24px}.sv-legal-content h2{font-size:1.25rem;margin:28px 0 10px}.sv-legal-content p{line-height:1.7;margin:0 0 15px;max-width:75ch}
.sv-contact-form{display:grid;gap:9px;max-width:650px}.sv-contact-form label{font-weight:600}.sv-contact-form input,.sv-contact-form textarea,.sv-contact-form select{width:100%;padding:12px;border:1px solid #aaa0bc;border-radius:9px;background:var(--surface,#fff);color:inherit;box-sizing:border-box}.sv-contact-form button{justify-self:start}.sv-contact-note{font-size:.88rem;opacity:.8}.sv-contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:800px){.sv-site-footer{justify-content:center;text-align:center}.sv-legal-links{justify-content:center}}

.sv-contact-form .sv-contact-consent{display:flex;align-items:flex-start;gap:.65rem;font-weight:400}.sv-contact-form .sv-contact-consent input[type="checkbox"]{width:1.1rem;min-width:1.1rem;height:1.1rem;padding:0;margin-block-start:.2rem}.sv-contact-form .sv-contact-consent input:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
