:root{--v:#5E4FA2;--m:#5E4FA2;--l:#8B7BC4;--g:#5A5D63;--ink:#24213a;--bg:#fff;--soft:#f6f4fb}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Josefin Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1160px;margin:0 auto;padding:0 28px}
header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.86);backdrop-filter:blur(14px);border-bottom:1px solid #eeeaf6}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{display:flex;align-items:center;gap:10px}
.brand img{height:46px;mix-blend-mode:multiply}
.brand .word{height:42px;width:auto}
nav{display:flex;gap:30px;align-items:center;font-weight:500;font-size:15px;color:var(--g)}
nav a{position:relative;padding:4px 0;transition:color .2s}
nav a:after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;background:var(--m);transition:width .3s}
nav a:hover,nav a.on{color:var(--v)}nav a:hover:after,nav a.on:after{width:100%}
.btn{display:inline-block;background:var(--v);color:#fff!important;padding:13px 26px;border-radius:999px;font-weight:600;font-size:15px;border:0;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;box-shadow:0 8px 24px -10px rgba(94,79,162,.6)}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(94,79,162,.7)}
.btn.alt{background:var(--m);box-shadow:0 8px 24px -10px rgba(94,79,162,.4)}
nav .btn{padding:10px 20px;color:#fff}nav .btn:after{display:none}
.hero{padding:84px 0 96px;background:radial-gradient(1000px 500px at 85% 10%,#efeafa 0,transparent 60%),radial-gradient(700px 400px at 0% 100%,#f3f0fa 0,transparent 60%)}
.grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.eyebrow{display:inline-block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--m);margin-bottom:18px}
h1{font-size:clamp(40px,6vw,72px);line-height:1.04;letter-spacing:-.03em;color:var(--v);font-weight:600}
h2{font-size:clamp(30px,4vw,46px);line-height:1.1;letter-spacing:-.02em;color:var(--ink);font-weight:600}
.lead{font-size:19px;color:var(--g);margin:22px 0 34px;max-width:520px}
.card{border-radius:28px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(36,33,58,.45),0 0 0 1px rgba(0,0,0,.04);max-width:400px;margin:0 auto;transform:rotate(1.5deg);transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.card:hover{transform:rotate(0) translateY(-6px)}
.card.l{transform:rotate(-1.5deg)}
section{padding:96px 0}
.soft{background:var(--soft)}
.feats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}
.feat{background:#fff;border-radius:22px;padding:30px;border:1px solid #ece8f5;transition:transform .3s,box-shadow .3s}
.feat:hover{transform:translateY(-4px);box-shadow:0 20px 40px -24px rgba(94,79,162,.4)}
.num{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--v),var(--l));color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:18px}
.feat:nth-child(2) .num{background:linear-gradient(135deg,var(--m),var(--l))}
.feat h3{font-size:19px;margin-bottom:8px}.feat p{color:var(--g);font-size:15.5px}
.steps{display:grid;gap:18px;margin-top:30px}
.step{display:flex;gap:18px;align-items:flex-start;padding:20px 22px;background:#fff;border-radius:18px;border:1px solid #ece8f5}
.step b{display:block;font-size:17px}.step span{color:var(--g);font-size:15px}
.waitlist{background:linear-gradient(135deg,var(--v),#4a3d8a);color:#fff;border-radius:32px;padding:64px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;position:relative;overflow:hidden}
.waitlist:before{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(139,123,196,.35),transparent 65%)}
.waitlist h2{color:#fff}.waitlist p{color:#ddd8f2;margin-top:12px}
form{display:grid;gap:12px;position:relative}
input,select{font:inherit;padding:15px 18px;border-radius:14px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff;outline:none;transition:border .2s,background .2s}
input::placeholder{color:#cfc8ea}input:focus,select:focus{border-color:var(--m);background:rgba(255,255,255,.16)}
select option{color:#222}
.ok{display:none;background:rgba(255,255,255,.12);border-radius:14px;padding:18px;font-weight:600}
.ok.show{display:block;animation:up .5s}
.note{font-size:12.5px;color:#bfb6e6!important}
footer{padding:56px 0 40px;border-top:1px solid #eeeaf6;color:var(--g);font-size:14px}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
footer .links{display:flex;gap:24px}
footer img{height:40px;mix-blend-mode:multiply}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}
@keyframes up{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.opening{max-width:300px;border-radius:36px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(36,33,58,.4),0 0 0 10px #1d1b29;margin:0 auto}
.stat{display:flex;gap:40px;margin-top:8px}.stat div b{display:block;font-size:30px;color:var(--v);font-weight:800}.stat div span{font-size:13px;color:var(--g)}
@media(max-width:860px){.grid,.waitlist{grid-template-columns:1fr}.feats{grid-template-columns:1fr}nav a:not(.btn){display:none}.hero{padding:48px 0 64px}section{padding:64px 0}.waitlist{padding:36px 26px;border-radius:24px}.card{max-width:330px}.grid{gap:44px}.brand .word{display:none}}
.brand .word{height:54px;margin-top:6px}
footer img{height:56px}
@media(max-width:860px){nav{gap:14px;font-size:13px}nav a:not(.btn){display:inline}nav .btn{display:none}header .wrap{height:62px}.brand img{height:38px}.wrap{padding:0 20px}.stat{flex-direction:column;gap:14px}.stat div b{font-size:22px}footer .wrap{flex-direction:column;align-items:flex-start}}
.wordmark{font-family:"Josefin Sans",sans-serif;font-weight:600;color:var(--v);letter-spacing:-.02em;font-size:34px;line-height:1}footer .wordmark{font-size:30px}h3,.num,.stat div b{font-weight:600}
.brand .wordmark{font-size:40px;margin-top:-4px}footer .wordmark{font-size:40px}
@media(max-width:860px){.brand .wordmark{font-size:30px}}
@media(max-width:860px){.brand .wordmark{display:none}}
/* UMAÑA thin type system */
body,input,select,button,.btn{font-family:"Josefin Sans",system-ui,sans-serif!important;font-weight:300}
body{color:var(--v)}
h1,h2,h3,.step b,.eyebrow,.num,.stat div b{font-family:"Josefin Sans",sans-serif;text-transform:uppercase;letter-spacing:.3em;font-weight:100;color:var(--v)}
h1{font-size:clamp(30px,4.6vw,54px);line-height:1.25;font-weight:100}
h2{font-size:clamp(22px,3vw,34px);line-height:1.35;font-weight:300}
h3,.step b{font-size:15px;font-weight:400;letter-spacing:.22em}
.eyebrow{font-weight:400;font-size:11px}
.lead,.feat p,.step span,footer{color:var(--g);font-weight:300}
.btn{font-weight:400;text-transform:uppercase;letter-spacing:.2em;font-size:12.5px}
nav{font-weight:300;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.waitlist h2,.waitlist p{color:#fff}
.brand img.logo{height:30px;width:auto;mix-blend-mode:normal}
footer img.logo{height:30px}
@media(max-width:860px){.brand img.logo{display:block;height:18px}.brand{gap:8px}.brand img:first-child{height:32px}nav{font-size:10.5px;gap:12px;letter-spacing:.08em}}
.herologo{height:64px;width:auto;margin-bottom:30px}@media(max-width:860px){.herologo{height:44px}}
@media(max-width:860px){nav a[href="index.html"]{display:none!important}nav{gap:14px}}
.num{letter-spacing:0;font-weight:400;color:#fff}@media(max-width:860px){.brand img.logo{height:14px}nav{gap:16px;font-size:10px}}
.btn.alt{background:transparent;color:var(--v)!important;border:1.5px solid var(--v);box-shadow:none}
.btn.alt:hover{background:var(--v);color:#fff!important}
.waitlist .btn.alt{background:#fff;color:var(--v)!important;border-color:#fff}
.eyebrow{color:var(--l)}
/* v2: violet header+hero, glowing white wordmark */
.reveal{opacity:1!important;transform:none!important}
header{background:#5E4FA2!important;border-bottom:1px solid rgba(255,255,255,.12)}
nav,nav a{color:#fff!important}nav a:after{background:#fff}
nav .btn{background:#fff!important;color:#5E4FA2!important;box-shadow:none}
.hero{background:#5E4FA2!important;color:#fff}
.hero h1,.hero .lead,.hero .eyebrow{color:#fff!important}.hero .lead{opacity:.9}
.hero .btn{background:#fff;color:#5E4FA2!important;box-shadow:none}
.hero .btn.alt{background:transparent;color:#fff!important;border:1.5px solid #fff}
.brand img.logo{height:40px!important;display:block!important}
.herologo{height:80px}
@media(max-width:860px){.brand img.logo{height:30px!important}.herologo{height:56px}header .wrap{height:70px}}
.num,.feat:nth-child(2) .num{background:#5E4FA2!important}
.feats{grid-template-columns:repeat(2,1fr)}@media(max-width:860px){.feats{grid-template-columns:1fr}}.step .num{flex:none;margin:0}
.ways{margin-top:26px;padding:20px 22px;border:1px solid #ece8f5;border-radius:18px;background:#fff}.ways p{color:var(--g);font-size:15px;margin:6px 0 12px}.paylist{list-style:none;display:flex;flex-wrap:wrap;gap:8px}.paylist li{border:1px solid #5E4FA2;color:#5E4FA2;border-radius:999px;padding:6px 14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase}

.payrow{margin-top:10px}.paylabel{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#5E4FA2;margin-bottom:6px}.paylist{align-items:center}.paylist li.logo{height:40px;width:104px;padding:0 10px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #ece8f5}.paylist li.logo img{max-height:22px;max-width:84px;object-fit:contain;display:block}.paylist li:not(.logo){height:40px;display:flex;align-items:center}.feat .paylist{margin-top:12px}
.paylist li.logo img[alt=Klarna]{max-height:36px}
.paylist{gap:6px}.paylist li.logo,.paylist li:not(.logo){width:80px;padding:0 6px;justify-content:center;box-sizing:border-box}.paylist li.logo img{max-width:66px;max-height:20px}.paylist li.logo img[alt=Klarna]{max-height:34px}.paylist li:not(.logo){font-size:11px;letter-spacing:.12em}
#coverage h2{text-transform:uppercase}#coverage .lead{max-width:640px;margin-top:12px}.towns{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.towns li{border:1px solid #5E4FA2;color:#5E4FA2;border-radius:999px;padding:6px 14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:300}

/* opening splash (preview) */
#splash{position:fixed;inset:0;z-index:9999;background:#5E4FA2;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .6s ease}
#splash.sp-out{opacity:0;pointer-events:none}
html.sp-on,html.sp-on body{overflow:hidden}
#splash .sp-wrap{position:relative;height:min(100vh,calc(100vw*2796/1290));aspect-ratio:1290/2796}
#splash .sp-wrap img,#splash .sp-wrap svg{position:absolute;inset:0;width:100%;height:100%}
#splash .sp-g{opacity:0;animation:spgl 1s infinite}
@keyframes spgl{0%,55%{opacity:0;animation-timing-function:cubic-bezier(.3,0,.2,1)}63%{opacity:.7;animation-timing-function:cubic-bezier(.4,0,.6,1)}75%{opacity:0;animation-timing-function:cubic-bezier(.3,0,.2,1)}77%{opacity:0;animation-timing-function:cubic-bezier(.3,0,.2,1)}83%{opacity:.38;animation-timing-function:cubic-bezier(.4,0,.6,1)}92%,100%{opacity:0}}
#splash .sp-hz{position:absolute;left:0;right:0;bottom:0;height:15vh;background:linear-gradient(to bottom,rgba(190,178,236,0),rgba(190,178,236,.75));opacity:.6;pointer-events:none}
#splash .sp-skip{position:absolute;bottom:22px;left:0;right:0;text-align:center;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#FFFFFF;opacity:.7}
@media (prefers-reduced-motion: reduce){#splash{display:none!important}}
