:root{--cream:#fbf8ec;--purple:#b572ee;--purple-deep:#6c447c;--pale:#eeddfa;--ink:#11100f;--gray:#5a5651}*{box-sizing:border-box}html,body{background:var(--cream);color:var(--ink);margin:0}body{font-family:Arial,Helvetica,sans-serif}.cover{grid-template-columns:1fr 1fr;align-items:center;min-height:100svh;padding:5.5rem max(5vw,3rem) 4rem;display:grid;position:relative;overflow:hidden}.cover-copy{z-index:2;max-width:37rem;position:relative}.eyebrow{color:var(--purple-deep);letter-spacing:.15em;margin:0 0 1rem;font-size:.72rem;font-weight:700;line-height:1.3}.cover h1,.step-card h1,.final-card h1{letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:.98}.cover h1{font-size:clamp(3.4rem,7vw,6.3rem)}.rule{background:var(--purple);width:5.2rem;height:2px;margin:2rem 0;display:block}.cover-sub{max-width:31rem;font-family:Georgia,serif;font-size:1.2rem;line-height:1.5}.cover-art{justify-content:center;align-self:stretch;align-items:center;min-height:32rem;display:flex}.cover-art img{object-fit:contain;mix-blend-mode:multiply;width:min(38vw,520px);max-height:72svh}.cover footer,.experience footer{text-align:center;color:var(--gray);letter-spacing:.04em;font-size:.72rem;position:absolute;bottom:1.8rem;left:0;right:0}button{background:var(--purple-deep);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:.95rem 1.25rem;font-size:.95rem;transition:all .2s;box-shadow:0 6px 16px #6c447c24}button:hover{background:#513260;transform:translateY(-2px)}button span{padding-left:.5rem;font-size:1.15rem}.privacy{color:var(--gray);margin-top:1rem;font-size:.77rem}.experience,.final-page{min-height:100svh;padding:2.1rem 1.5rem 5rem;position:relative}.topbar{max-width:860px;color:var(--purple-deep);letter-spacing:.12em;justify-content:space-between;align-items:center;margin:0 auto;font-size:.78rem;font-weight:700;display:flex}.back-link{color:var(--purple-deep);box-shadow:none;background:0 0;border-radius:0;padding:0}.back-link:hover{color:var(--ink);background:0 0;transform:none}.progress{background:#eadff1;border-radius:99px;max-width:860px;height:4px;margin:1.25rem auto 2.5rem;overflow:hidden}.progress span{background:var(--purple);border-radius:inherit;height:100%;transition:width .3s;display:block}.step-card,.final-card{background:#fffdf8;border:1px solid #eee7d9;width:min(860px,100%);margin:auto;padding:clamp(2rem,6vw,5.4rem);position:relative;overflow:hidden;box-shadow:0 20px 50px #56412b10}.step-card:after,.final-card:after{content:"";background:var(--purple);opacity:.2;pointer-events:none;border-radius:50%;width:230px;height:160px;position:absolute;top:-70px;right:-80px}.step-card h1,.final-card h1{max-width:650px;font-size:clamp(2.5rem,5vw,4.4rem)}.intro{color:var(--gray);max-width:700px;margin:1.4rem 0 0;font-size:1.02rem;line-height:1.65}.step-card label{z-index:1;margin:1.7rem 0;display:block;position:relative}.step-card strong{margin-bottom:.25rem;font-size:1rem;display:block}.step-card small{color:var(--gray);margin-bottom:.55rem;font-size:.84rem;line-height:1.4;display:block}textarea{resize:vertical;width:100%;min-height:6rem;font:inherit;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #bdb5aa;outline:none;padding:.6rem 0;line-height:1.5;display:block}textarea:focus{border-bottom:2px solid var(--purple-deep)}.nav,.actions{z-index:1;justify-content:space-between;gap:.8rem;margin-top:2.5rem;display:flex;position:relative}.secondary{color:var(--purple-deep);border:1px solid var(--purple-deep);box-shadow:none;background:0 0}.secondary:hover{background:#f4ecfa}.final-page{flex-direction:column;display:flex}.final-card{margin-top:2.5rem}.summary{background:var(--pale);border-radius:1.2rem;margin:2rem 0;padding:1.5rem 1.6rem;line-height:1.55}.summary p{margin:.45rem 0}.closing{text-align:center;max-width:600px;margin:2.5rem auto 0;font-family:Georgia,serif;font-size:1.2rem;line-height:1.45}@media (max-width:720px){.cover{grid-template-columns:1fr;padding:3rem 1.6rem 5rem}.cover-copy{text-align:center}.cover .rule{margin:1.5rem auto}.cover-sub{margin:0 auto}.cover-art{min-height:0;margin-top:1.5rem}.cover-art img{width:min(72vw,360px);height:38vh}.cover footer,.experience footer{padding:0 1rem;font-size:.62rem}.step-card,.final-card{padding:2rem 1.35rem}.experience,.final-page{padding:1.4rem 1rem 5rem}.nav,.actions{flex-direction:column-reverse}.nav button,.actions button{width:100%}}
