:root{
--ink:#151631;
--muted:#69728f;
--purple:#6934f7;
--purple-dark:#3d1abe;
--lavender:#f0eaff;
--line:#e6e1ef;
--paper:#fcfbff;
--navy:#20163f;
--mint:#e5faf3;
--radius:24px;
--shadow:0 20px 50px rgba(59,32,125,.12)}
*{
box-sizing:border-box}
html{
scroll-behavior:smooth}
body{
margin:0;
background:var(--paper);
color:var(--ink);
font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
font-size:16px;
line-height:1.55;
overflow-x:hidden}
.container{
width:min(1160px,calc(100% - 48px));
margin:0 auto}
.skip-link{
position:fixed;
left:16px;
top:-60px;
background:var(--ink);
color:#fff;
padding:10px 15px;
border-radius:9px;
z-index:100}
.skip-link:focus{
top:16px}
a{
color:inherit;
text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{
outline:3px solid #70d6ff;
outline-offset:3px}
.site-header{
position:sticky;
top:0;
z-index:30;
background:rgba(252,251,255,.88);
backdrop-filter:blur(16px);
border-bottom:1px solid rgba(230,225,239,.75)}
.nav-shell{
min-height:92px;
display:flex;
align-items:center;
gap:32px}
.brand img{
display:block;
width:178px;
height:auto}
.site-header nav{
display:flex;
gap:28px;
margin-left:auto;
font-weight:750;
font-size:.91rem}
.site-header nav a:hover,.text-link:hover{
color:var(--purple)}
.button{
min-height:48px;
display:inline-flex;
align-items:center;
justify-content:center;
gap:10px;
background:var(--purple);
color:#fff;
border:0;
border-radius:15px;
padding:12px 20px;
font-family:inherit;
font-weight:800;
cursor:pointer;
box-shadow:0 10px 22px rgba(105,52,247,.18);
transition:transform .18s ease,background .18s ease}
.button:hover{
background:var(--purple-dark);
transform:translateY(-2px)}
.button-small{
min-height:44px;
padding:10px 17px;
border-radius:999px;
font-size:.9rem}
.button-light{
background:#fff;
color:var(--purple)}
.button-light:hover{
background:#f1ecff}
.hero{
display:grid;
grid-template-columns:1fr 1.1fr;
align-items:center;
gap:54px;
padding:76px 0 64px}
.eyebrow{
margin:0 0 14px;
color:var(--purple);
font-size:.76rem;
font-weight:900;
letter-spacing:.13em;
text-transform:uppercase}
.eyebrow:before{
content:"";
display:inline-block;
width:18px;
height:2px;
margin:0 9px 4px 0;
background:currentColor}
.hero h1,.section h2,.waitlist-section h2{
margin:0;
letter-spacing:-.065em;
line-height:.98;
font-weight:900}
.hero h1{
max-width:640px;
font-size:clamp(3.6rem,6vw,6.5rem)}
.hero-lede{
max-width:560px;
margin:28px 0 24px;
color:var(--muted);
font-size:1.14rem;
font-weight:560}
.hero-actions{
display:flex;
align-items:center;
gap:24px}
.text-link{
font-weight:850}
.hero-proof{
color:#4f6172;
font-size:.84rem;
font-weight:720;
margin-top:26px}
.hero-visual{
position:relative;
min-height:475px;
display:grid;
place-items:center;
background:linear-gradient(135deg,#e7d8ff 0%,#cfb5ff 58%,#f6f1ff 58%);
border-radius:32px;
overflow:visible}
.hero-visual>img{
width:90%;
max-width:670px;
height:460px;
object-fit:contain;
filter:drop-shadow(0 22px 20px rgba(35,18,91,.16))}
.float-card{
position:absolute;
background:rgba(255,255,255,.96);
border:1px solid var(--line);
border-radius:16px;
padding:13px 17px 12px 40px;
box-shadow:var(--shadow);
font-size:.79rem;
line-height:1.2}
.float-card strong,.float-card small{
display:block}
.float-card small{
margin-top:4px;
color:var(--muted)}
.float-card-match{
top:72px;
right:-26px}
.float-card-total{
bottom:58px;
left:-20px}
.status-dot,.status-check{
position:absolute;
left:15px;
top:16px;
width:15px;
height:15px;
border-radius:50%;
background:#20bb8d}
.status-check{
display:grid;
place-items:center;
color:#fff;
font-size:10px;
font-weight:900}
.signal-strip{
border-top:1px solid var(--line);
border-bottom:1px solid var(--line)}
.signal-inner{
display:flex;
justify-content:space-between;
gap:18px;
padding:18px 0;
color:#646b83;
font-size:.72rem;
font-weight:900;
letter-spacing:.12em;
text-transform:uppercase}
.signal-inner span{
display:flex;
align-items:center;
gap:18px}
.signal-inner span+span:before{
content:"•";
color:var(--purple);
font-size:1rem}
.section{
padding:108px 0}
.section-heading{
max-width:820px;
margin-bottom:42px}
.section-heading h2,.waitlist-section h2{
font-size:clamp(2.65rem,4vw,4.5rem)}
.section-heading>p:not(.eyebrow){
margin:15px 0 0;
color:var(--muted);
font-size:1.07rem}
.split-heading{
max-width:none;
display:grid;
grid-template-columns:1.15fr .85fr;
gap:60px;
align-items:end}
.split-heading>p{
padding-bottom:7px}
.centered{
text-align:center;
margin-inline:auto}
.preview-grid{
display:grid;
grid-template-columns:.86fr 1.14fr;
gap:32px;
align-items:stretch}
.request-panel{
border-radius:var(--radius);
padding:34px;
background:#fff;
border:1px solid var(--line);
box-shadow:var(--shadow)}
.panel-top{
display:flex;
justify-content:space-between;
align-items:center;
color:var(--muted);
font-size:.82rem;
font-weight:800}
.pill{
display:inline-flex;
background:#e9ddff;
color:var(--purple-dark);
border-radius:999px;
padding:6px 10px;
font-weight:850;
font-size:.72rem}
.request-panel h3{
font-size:2rem;
line-height:1.1;
letter-spacing:-.04em;
margin:30px 0 10px}
.request-panel>p{
color:var(--muted)}
.request-row{
display:flex;
justify-content:space-between;
gap:15px;
padding:14px 0;
border-top:1px solid var(--line);
font-size:.88rem}
.request-row span{
color:var(--muted)}
.preview-grid>img{
width:100%;
height:420px;
border-radius:var(--radius);
object-fit:cover;
object-position:center;
box-shadow:var(--shadow)}
.workflow-section{
background:#f7f4fd}
.workflow-grid{
list-style:none;
display:grid;
grid-template-columns:repeat(4,1fr);
gap:14px;
margin:0;
padding:0}
.flow-card{
position:relative;
overflow:hidden;
min-height:190px;
padding:30px;
border:1px solid var(--line);
border-radius:20px;
background:#fff;
isolation:isolate}
.flow-card>*:not(.flow-mark){
position:relative;
z-index:2}
.flow-card h3{
margin:46px 0 5px;
font-size:1.15rem;
letter-spacing:-.04em}
.flow-card p{
margin:0;
color:#66708c;
font-size:.88rem;
line-height:1.45}
.flow-number{
position:absolute;
right:22px;
top:20px;
color:#aaa4ba;
font-size:.72rem;
font-weight:850}
.flow-mark{
position:absolute;
z-index:1;
left:50%;
top:50%;
width:175px;
height:175px;
transform:translate(-50%,-50%);
opacity:.1}
.flow-find .flow-mark{
color:#7b42f2;
width:205px;
height:205px}
.flow-match .flow-mark{
color:#ef5aa8;
width:190px;
height:190px}
.flow-approve .flow-mark{
color:#29a7e8;
width:195px;
height:195px}
.flow-handoff .flow-mark{
color:#20b98f;
width:190px;
height:190px}
.audience-section{
padding-top:0}
.audience-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:22px}
.audience-card{
border-radius:28px;
padding:45px;
min-height:450px}
.audience-card h2{
font-size:clamp(2.2rem,3.5vw,3.7rem)}
.audience-card>p:not(.eyebrow){
font-size:1.04rem;
max-width:500px}
.audience-card ul{
padding:0;
list-style:none;
margin:28px 0}
.audience-card li{
margin:11px 0}
.audience-card li:before{
content:"✓";
color:#1dba84;
margin-right:10px;
font-weight:900}
.buyer-card{
background:#f0eaff}
.traveler-card{
background:var(--navy);
color:#fff}
.traveler-card .eyebrow{
color:#bfa5ff}
.traveler-card>p:not(.eyebrow){
color:#dfd9ed}
.safety-section{
background:var(--navy);
color:#fff}
.safety-heading{
max-width:670px}
.safety-heading>p:not(.eyebrow){
color:#d7d1e5}
.safety-heading .eyebrow{
color:#bda4ff}
.safety-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:14px}
.safety-grid article{
border:1px solid rgba(255,255,255,.18);
border-radius:18px;
padding:25px;
min-height:173px}
.safety-grid h3{
margin:0 0 8px;
font-size:1.12rem;
letter-spacing:-.04em}
.safety-grid p{
margin:0;
color:#d5cee7;
font-size:.9rem;
line-height:1.45}
.marketplace-grid{
display:grid;
grid-template-columns:.9fr 1.1fr;
gap:74px;
align-items:center}
.marketplace-copy h2{
max-width:600px}
.marketplace-copy>p:not(.eyebrow){
max-width:520px;
color:var(--muted);
font-size:1.1rem;
margin:18px 0 28px}
.marketplace-preview{
display:grid;
grid-template-columns:minmax(0,1.35fr) minmax(190px,.65fr);
align-items:center;
gap:20px;
border-radius:26px;
padding:18px;
background:#f0eaff}
.marketplace-preview img{
width:100%;
height:clamp(260px,25vw,350px);
object-fit:cover;
object-position:center;
border-radius:18px}
.marketplace-preview strong,.marketplace-preview small{
display:block}
.marketplace-preview strong{
margin:13px 0 8px;
font-size:1.35rem;
line-height:1.15;
letter-spacing:-.04em}
.marketplace-preview small{
color:var(--muted)}
.examples-section{
background:#f7f4fd}
.examples-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:15px}
.destination-card{
min-height:210px;
padding:22px;
display:flex;
flex-direction:column;
justify-content:flex-end;
border-radius:20px;
color:#fff;
overflow:hidden;
background-size:cover;
background-position:center;
box-shadow:inset 0 -90px 70px rgba(17,13,48,.6)}
.destination-card span{
font-size:1.35rem;
font-weight:900;
letter-spacing:-.04em}
.destination-card small{
font-weight:650}
.request-list{
grid-column:1/-1;
display:grid;
grid-template-columns:repeat(2,1fr);
align-items:center;
gap:25px;
padding:21px 25px;
background:#fff;
border:1px solid var(--line);
border-radius:19px}
.request-list .eyebrow{
margin:0}
.request-list ul{
display:flex;
flex-wrap:wrap;
gap:10px 18px;
padding:0;
margin:0;
list-style:none;
color:#55607c;
font-size:.88rem}
.request-list li:before{
content:"✦";
color:var(--purple);
margin-right:7px}
.faq-section{
background:#fff}
.faq-layout{
display:grid;
grid-template-columns:.85fr 1.15fr;
gap:65px}
.faq-list{
border-top:1px solid var(--line)}
details{
border-bottom:1px solid var(--line);
padding:19px 0}
summary{
cursor:pointer;
font-weight:850;
list-style:none;
padding-right:30px;
position:relative}
summary::-webkit-details-marker{
display:none}
summary:after{
content:"+";
position:absolute;
right:2px;
color:var(--purple);
font-size:1.3rem}
details[open] summary:after{
content:"−"}
details p{
color:var(--muted);
margin:12px 25px 0 0;
font-size:.91rem}
.waitlist-section{
padding:100px 0;
background:linear-gradient(130deg,#5928ed,#a94eee);
color:#fff}
.waitlist-shell{
display:grid;
grid-template-columns:1fr .85fr;
gap:70px;
align-items:start}
.waitlist-section .eyebrow{
color:#e3d7ff}
.waitlist-section h2{
max-width:630px}
.waitlist-section>p{
color:#f1edff}
.waitlist-shell>div>p:not(.eyebrow){
font-size:1.05rem;
max-width:550px}
.waitlist-form{
padding:28px;
background:#fff;
color:var(--ink);
border-radius:23px;
box-shadow:var(--shadow)}
.waitlist-form label,.waitlist-form legend{
display:block;
font-size:.85rem;
font-weight:850;
margin-bottom:8px}
.waitlist-form label span{
color:var(--muted);
font-weight:650}
.waitlist-form input[type="email"],.waitlist-form input[type="text"]{
display:block;
width:100%;
min-height:48px;
padding:12px 14px;
border:1px solid #d8d2e5;
border-radius:11px;
background:#fff;
color:var(--ink);
font:inherit}
.waitlist-form fieldset{
border:0;
padding:0;
margin:18px 0}
.choice-row{
display:flex;
gap:8px}
.choice-row label{
flex:1;
margin:0;
display:flex;
align-items:center;
justify-content:center;
gap:6px;
min-height:44px;
border:1px solid #d8d2e5;
border-radius:10px;
cursor:pointer;
font-size:.8rem}
.choice-row input{
accent-color:var(--purple)}
.waitlist-form .button{
width:100%;
margin-top:20px}
.form-status{
min-height:22px;
margin:13px 0 0;
font-size:.87rem;
font-weight:700}
.form-status.is-success{
color:#0b9070}
.form-status.is-error{
color:#c63859}
.privacy-note{
margin:8px 0 0;
color:var(--muted);
font-size:.74rem;
line-height:1.4}
.site-footer{
background:#151126;
color:#ddd5ed;
padding:32px 0}
.footer-inner{
display:flex;
align-items:center;
gap:25px}
.footer-brand img{
display:block;
width:115px;
height:auto}
.footer-inner p{
margin:0;
color:#bdb4d0}
.footer-inner nav{
margin-left:auto;
display:flex;
gap:20px;
font-size:.84rem;
font-weight:750}
.footer-inner nav a:hover{
color:#fff}
@media(max-width:920px){
.site-header nav{
display:none}
.nav-shell{
min-height:76px}
.brand img{
width:148px}
.hero,.preview-grid,.marketplace-grid,.faq-layout,.waitlist-shell,.split-heading{
grid-template-columns:1fr;
gap:35px}
.marketplace-preview{
grid-template-columns:minmax(0,1.35fr) minmax(190px,.65fr)}
.hero{
padding-top:55px}
.hero-visual{
min-height:400px}
.hero-visual>img{
height:390px}
.float-card-match{
right:10px}
.float-card-total{
left:10px}
.split-heading>p{
padding-bottom:0}
.workflow-grid{
grid-template-columns:repeat(2,1fr)}
.safety-grid{
grid-template-columns:repeat(2,1fr)}
.audience-grid{
grid-template-columns:1fr}
.examples-grid{
grid-template-columns:repeat(2,1fr)}
.destination-card:last-of-type{
grid-column:auto}
.request-list{
grid-column:1/-1}
.footer-inner{
flex-wrap:wrap}
.footer-inner nav{
width:100%;
margin-left:0}
}
@media(max-width:600px){
.container{
width:min(100% - 32px,560px)}
.button-small{
font-size:.78rem;
padding:9px 13px}
.brand img{
width:130px}
.hero h1{
font-size:3.35rem}
.hero{
padding:42px 0}
.hero-visual{
min-height:325px;
border-radius:24px}
.hero-visual>img{
width:106%;
height:320px}
.float-card{
display:none}
.signal-inner{
display:grid;
grid-template-columns:1fr 1fr;
gap:9px;
padding:13px 0}
.signal-inner span{
font-size:.63rem}
.signal-inner span+span:before{
display:none}
.section{
padding:72px 0}
.marketplace-preview{
grid-template-columns:1fr;
padding:12px}
.marketplace-preview img{
height:250px}
.section-heading h2,.waitlist-section h2{
font-size:2.65rem}
.workflow-grid,.safety-grid,.examples-grid{
grid-template-columns:1fr}
.flow-card{
min-height:165px}
.flow-card h3{
margin-top:36px}
.audience-card{
padding:29px;
min-height:0}
.marketplace-preview strong{
font-size:1.1rem}
.request-list{
grid-template-columns:1fr}
.faq-layout{
gap:30px}
.waitlist-section{
padding:70px 0}
.waitlist-shell{
gap:35px}
.choice-row{
flex-wrap:wrap}
.choice-row label{
min-width:30%}
.footer-inner nav{
gap:13px;
flex-wrap:wrap}
.preview-grid>img{
height:280px}
}
@media(prefers-reduced-motion:reduce){
html{
scroll-behavior:auto}
.button{
transition:none}
}
