:root{--bg:#222124;--panel:#141316;--ink:#f6f2f6;--accent:#d6aceb;--muted:#b6afb9;--vx-background:#171519;--vx-color-1:#f4f0f3;--vx-color-2:#d6aceb;--vx-color-3:#baa7ec;--vx-color-4:#151316}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:25px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'TikTok Sans',sans-serif;font-weight:400;font-stretch:100%;letter-spacing:0;line-height:1.45;font-size:16px}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button,a,input,summary{ -webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #ac79d0;outline-offset:5px}
h1,h2,h3,.brand,nav,.btn,.filters button{font-family:'TikTok Sans',sans-serif;font-stretch:100%;letter-spacing:-.02em;line-height:1.1}
h1,h2,h3{font-weight:300;margin:0}
h1{font-size:clamp(48px,5.5vw,80px)}
h1>.hero-name{display:block;font-size:18px;font-weight:500;color:var(--accent);margin-bottom:24px}
h2{font-size:clamp(36px,3.65vw,53px);max-width:970px;text-wrap:balance}
h3{font-size:25px}
p{color:var(--muted);margin:20px 0 0}
small{font-size:12px}
button{color:inherit}
.wrap{max-width:1240px;margin:auto;padding-left:32px;padding-right:32px}
.section{padding-top:104px;padding-bottom:104px}
.rounded{border-radius:36px;margin:0 20px}
.opening{position:relative;overflow:hidden;background:#151316;border-radius:0 0 38px 38px}
.opening>header,.opening>.hero{position:relative;z-index:1}
.opening>header{z-index:5}
.opening:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#141316b8,transparent);pointer-events:none}
header{display:flex;align-items:center;height:102px;gap:42px}
.brand{font-size:25px;font-weight:600;white-space:nowrap}
header nav{margin-left:auto;display:flex;gap:28px;font-size:15px}
nav a:hover,.login:hover{color:var(--accent)}
.login{display:flex;align-items:center;gap:6px}
.icon{width:22px;height:22px;fill:currentColor;flex-shrink:0}
.menu-btn{display:none}
.mobile-nav[hidden]{display:none}
.hero{padding-top:56px;padding-bottom:35px}
.hero-bottom{display:flex;gap:55px;justify-content:space-between;align-items:center;margin-top:32px;margin-bottom:48px}
.hero-bottom p{max-width:560px;margin:0;font-size:17px}
.actions{display:flex;flex-direction:column;gap:8px;min-width:278px}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border-radius:15px;padding:18px 22px;font-size:17px;border:1px solid transparent;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0002}
.primary{background:var(--accent);color:#18131c}
.text-btn{padding:12px 22px}
.text-btn:hover{background:#ffffff0b}
.showcase{background:var(--accent);padding:0 24px 24px;border-radius:24px 24px 32px 32px;box-shadow:0 30px 80px #0003}
.showcase-caption{display:flex;justify-content:space-between;color:#302036;padding:18px 3px;font-size:14px;font-weight:500}
.showcase-caption span{font-weight:400}
.schedule{display:flex;color:#171717;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 35px #331d4b30;height:580px;font-size:12px;line-height:1.4}
.schedule aside{width:175px;flex-shrink:0;padding:26px 10px;background:#fdfdfd;border-right:1px solid #eee}
.schedule aside b{display:block;margin:21px 8px 10px}
.schedule aside>div{padding:8px;display:flex;align-items:center;gap:8px;white-space:nowrap;color:#777}
.schedule .icon{width:15px;height:15px}
.schedule .selected{color:#f56816;background:#fff0e9;border-left:2px solid #ff6b12}
.schedule-main{flex:1;min-width:0}
.schedule-top{height:52px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #e8e8e8;padding:12px 16px}
.schedule-top strong{font-size:15px;margin-right:auto}
.schedule-top>span,.schedule-tools>span{border:1px solid #eaeaea;border-radius:6px;padding:6px 10px;white-space:nowrap}
.orange{background:#ff7418}
.schedule-tools{height:45px;display:flex;gap:6px;align-items:center;padding:8px 15px;font-size:10px;white-space:nowrap;border-bottom:1px solid #eee}
.black{background:#121212;color:white}
.rooms{display:grid;grid-template-columns:36px repeat(3,1fr);height:51px;border-bottom:1px solid #eee}
.rooms>*{padding:10px;border-right:1px solid #eee}
.rooms small{display:block;font-weight:400;font-size:9px;color:#999}
.rooms>span{padding:10px 4px;color:#999;font-size:9px}
.calendar{display:flex;height:432px}
.times{width:36px;display:flex;flex-direction:column;font-size:8px;color:#929292;flex-shrink:0}
.times span{height:25px;padding-left:5px}
.lanes{position:relative;flex:1;background-image:linear-gradient(#ececec 1px,transparent 1px),linear-gradient(90deg,#ececec 1px,transparent 1px);background-size:100% 25px,33.333% 100%}
.booking{position:absolute;left:calc(var(--col)*33.333% + 4px);top:calc(var(--start)*25px);height:calc(var(--dur)*25px);width:calc(33.333% - 8px);background:#fff0e8;border:1px solid #ffe2d5;border-left:3px solid #ff711e;border-radius:5px;padding:6px;font-size:10px}
.booking span,.booking em{display:block;font-style:normal;font-size:9px;line-height:1.1}
.booking em{color:#cc3623}
.booking .paid{color:#398350}
.owner{position:absolute;left:calc(var(--col)*33.333% + 4px);width:calc(33.333% - 8px);top:150px;background:#edf4ef;border-left:3px solid #70bb8d;padding:1px 5px;font-size:9px;border-radius:4px}
.hero-foot{display:flex;justify-content:space-between;padding-top:28px;color:#bdb5c4;font-size:14px}
.intro{max-width:620px;margin-top:24px;margin-bottom:46px}
.intro.wide{max-width:900px}
.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.steps article{display:flex;gap:24px;padding:23px 0;border-top:1px solid #464149}
.step-no{color:var(--accent);font-size:14px;padding-top:5px}
.steps h3{font-size:23px}
.steps p{margin-top:10px;font-size:15px}
.booking-stage{background:#bca6d0;padding:44px 28px;border-radius:32px;color:#28232c}
.booking-card{background:#fffafc;border-radius:20px;padding:28px;box-shadow:0 20px 40px #4430572b}
.split{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}
.booking-card p{color:#746b79;font-size:14px}
.booking-card h3{font-size:32px;margin-top:14px}
.status{background:#e4eddf;color:#496741;padding:6px 9px;border-radius:10px;font-size:11px}
.money-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:23px 0;margin:18px 0;border-top:1px solid #ded8de;border-bottom:1px solid #ded8de;font-size:12px}
.money-pair strong{font-weight:400;display:block;font-size:28px;margin-top:8px;white-space:nowrap}
.process-ribbon{display:flex;justify-content:space-between;font-size:12px;gap:8px;padding:24px 4px 0}
.integration-note{display:grid;grid-template-columns:1fr 1.4fr;gap:50px;padding-top:32px;margin-top:48px;border-top:1px solid #49424b}
.integration-note h3{font-size:24px}
.integration-note p{margin:0;font-size:14px}
.light{background:#f1eef1;color:#242126}
.light p{color:#6b626d}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.two-col h2{font-size:44px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.chips span{border:1px solid #c9c1ce;border-radius:50px;padding:8px 13px;font-size:13px}
.estimate-stage{padding:35px 0 35px 22px;border-radius:30px;background:#ded0e7}
.receipt{background:#fff;padding:28px;border-radius:20px;margin-right:-5px;box-shadow:0 20px 40px #4a255514}
.receipt h3{font-size:23px}
.receipt .split>span{font-size:11px;color:#777}
.receipt p{font-size:13px;margin:14px 0 28px}
.receipt-row{display:flex;gap:16px;justify-content:space-between;border-bottom:1px solid #e9e6e9;padding:17px 0;font-size:14px}
.receipt-row b{white-space:nowrap;font-weight:500}
.total{display:flex;justify-content:space-between;align-items:center;padding:24px 0}
.total strong{font-size:38px;font-weight:400;white-space:nowrap}
.receipt small{color:#8b7c90}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.benefits article{padding:0 22px 0 0;border-right:1px solid #433e46}
.benefits article:last-child{border:0}
.benefits h3{font-size:28px;margin-top:25px}
.benefits p{font-size:15px}
.mini-grid,.flow-track,.finance-tiles{height:112px;background:#171619;border-radius:18px;padding:22px;display:flex;align-items:center;gap:7px}
.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mini-grid i{height:28px;border-radius:5px;background:#d6aceb}
.mini-grid i:nth-child(2),.mini-grid i:nth-child(6){background:#39333e}
.flow-track{padding:13px;gap:5px}
.flow-track span{padding:12px 9px;border:1px solid #6e537e;border-radius:11px;font-size:13px}
.flow-track span:last-child{background:#d6aceb;color:#211929}
.finance-tiles span{background:#bca6d0;color:#251f29;border-radius:9px;padding:18px 12px;font-size:13px}
.finance-tiles span:nth-child(2){background:#f2eaf5}
.finance-tiles span:nth-child(3){background:#66516f;color:#fff}
.dark-panel{background:#151417}
.themes{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.themes figure{margin:0}
.theme-image{padding:18px;background:#dba9cc;border-radius:20px;overflow:hidden}
.themes figure:nth-child(2) .theme-image{background:#6686d3}
.theme-image img{width:100%;height:auto;display:block;border-radius:8px;transition:transform .3s}
.theme-image:hover img{transform:scale(1.015)}
figcaption{padding:20px 2px}
figcaption h3{font-size:24px}
figcaption span{font-size:13px;color:var(--muted)}
.hub{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative}
.hub-core{grid-column:1/-1;text-align:center;background:var(--accent);color:#281b31;padding:28px;border-radius:24px}
.hub-core strong{font-size:35px;display:block;font-weight:500}
.hub-core span{font-size:13px}
.hub-node{background:#302c34;padding:18px;border-radius:16px;border:1px solid #4b4053}
.hub-node b{font-weight:400}
.hub-node small{display:block;color:#b8aebe;margin-top:5px}
.module-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;list-style:none;counter-reset:step;padding:0;margin:40px 0}
.module-steps li{counter-increment:step;border-top:1px solid #c9c0cd;padding-top:16px;font-size:15px}
.module-steps li:before{content:'0' counter(step);display:block;color:#8f6ba5;font-size:24px;margin-bottom:14px}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:38px 0 26px}
.filters button{background:transparent;border:1px solid #bfb5c5;color:#3a303f;border-radius:30px;padding:12px 20px;font-size:15px}
.filters button[aria-pressed=true]{background:#242026;color:white;border-color:#242026}
.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.module{padding:26px;background:#fff;border-radius:20px;min-height:172px;transition:box-shadow .2s,transform .2s}
.module:hover{box-shadow:0 12px 32px #38204212;transform:translateY(-3px)}
.module[hidden]{display:none}
.module h3{font-size:22px;display:flex;gap:12px;align-items:center}
.module h3 .icon{color:#8e61a3;width:23px;height:23px}
.module p{font-size:14px;margin-top:16px}
.checks{padding:0;list-style:none;margin:30px 0;display:grid;gap:15px}
.checks li{display:flex;gap:10px;font-size:15px}
.checks .icon{width:18px;height:18px;color:var(--accent);margin-top:2px}
.assistant-stage{background:#332c3b;padding:32px;border-radius:30px}
.assistant{background:#19171c;border:1px solid #51405e;border-radius:20px;padding:26px}
.assistant h3{font-size:22px;margin-bottom:7px}
.assistant small{color:#a89ab2}
.bubble{font-size:14px;padding:18px;border-radius:16px;margin-top:24px}
.question{background:#d6aceb;color:#2c1c35;margin-left:26px}
.answer{background:#302b35;margin-right:15px}
.answer b{font-weight:500;color:#d6aceb}
.answer p{font-size:14px;margin:12px 0}
.undo{font-size:12px;color:#c9b1d7;border-bottom:1px solid #6c587b}
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.price{display:flex;flex-direction:column;background:#2b282e;border:1px solid #49404e;padding:29px;border-radius:24px}
.price h3{font-size:29px}
.price p{min-height:46px;font-size:14px}
.price-num{font-size:34px;margin-top:30px;font-weight:400;white-space:nowrap}
.price-num small{display:block;font-size:13px;margin-top:4px}
.price .checks{margin:28px 0 35px;gap:16px}
.price .checks li{font-size:14px}
.price .btn{margin-top:auto;font-size:15px;padding:16px}
.price.featured{background:var(--accent);color:#281e2e;border-color:var(--accent)}
.featured p{color:#63486f}
.featured .checks .icon{color:#67437b}
.dark-btn{background:#19161c;color:#faf5fd}
.outline{border-color:#66586f;background:transparent}
.demo{background:var(--accent);color:#2c1e34}
.demo p{color:#62496d}
.demo .checks .icon{color:#51355f}
.demo .two-col{align-items:start}
.demo-path{display:flex;gap:12px;margin-top:70px}
.demo-path span{flex:1;border-top:1px solid #997cac;padding-top:15px;font-size:13px}
.demo form{background:#f6f0f8;padding:32px;border-radius:24px}
.field{display:block;font-size:14px;margin-bottom:20px}
.field input{width:100%;border:0;border-bottom:1px solid #baabc3;background:transparent;border-radius:0;padding:12px 0;color:#291f31;outline-offset:0}
.field input:focus{border-color:#694480}
.honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);opacity:0;pointer-events:none}
fieldset{border:0;padding:0;margin:24px 0}
legend{font-size:14px;margin-bottom:12px}
.choices{display:flex;flex-wrap:wrap;gap:8px}
.choices label{position:relative;cursor:pointer}
.choices input{position:absolute;opacity:0}
.choices span{display:block;border:1px solid #bdaec6;padding:9px 12px;font-size:12px;border-radius:12px}
.choices input:checked+span{background:#d9b6e9;border-color:#9a6bb4}
.choices input:focus-visible+span{outline:2px solid #6a387e}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.45;margin-top:15px}
.consent input{margin:3px 0 0;width:17px;height:17px;accent-color:#614072;flex-shrink:0}
.consent a,.legal-copy a{text-decoration:underline;text-underline-offset:2px}
.demo .legal-copy{font-size:12px}
.demo form .btn{width:100%;margin-top:24px}
#form-status{font-size:14px;margin:16px 0 0}
#form-status:empty{display:none}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}
.faq h2{font-size:43px}
.faq details{border-top:1px solid #514755;padding:22px 0}
.faq details:last-child{border-bottom:1px solid #514755}
.faq summary{display:flex;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;font-size:19px}
.faq summary::-webkit-details-marker{display:none}
.faq summary .icon{color:var(--accent)}
.faq details[open] .icon{transform:rotate(45deg)}
.faq p{font-size:15px;margin:20px 32px 0 0}
footer{padding-top:35px!important;padding-bottom:32px!important}
.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px}
.footer-top p{font-size:14px;max-width:280px}
.footer-top>div:not(:first-child){display:flex;flex-direction:column;gap:12px;font-size:14px}
.footer-bottom{border-top:1px solid #514755;margin-top:50px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#a197a7}
@media(min-width:1500px){.wrap{max-width:1340px}
.hero h1{font-size:84px}
}
@media(max-width:1050px){header{gap:20px}
header nav{gap:16px;font-size:13px}
.two-col{gap:32px}
.price{padding:22px}
.price-num{font-size:28px}
.process-layout{gap:30px}
.money-pair strong{font-size:23px}
.schedule aside{width:150px}
.schedule-tools>span:last-child{display:none}
}
@media(max-width:760px){.wrap{padding-left:22px;padding-right:22px}
.rounded{margin:0 8px;border-radius:25px}
.section{padding-top:64px;padding-bottom:64px}
header{height:78px;justify-content:space-between}
header nav,header>.login{display:none}
.brand{font-size:23px}
.menu-btn{display:flex;padding:10px;background:transparent;border:1px solid #66536e;border-radius:10px}
.mobile-nav{position:absolute;top:70px;left:12px;right:12px;display:flex;flex-direction:column;background:#2b2232;border:1px solid #6c507b;padding:16px;border-radius:18px;z-index:10;box-shadow:0 18px 40px #0005}
.mobile-nav a{padding:12px}
.hero{padding-top:34px}
.hero h1{font-size:43px;line-height:1.1}
.hero h1>.hero-name{font-size:15px;margin-bottom:19px}
.desktop-br{display:none}
.hero-bottom{display:block;margin-top:25px;margin-bottom:28px}
.hero-bottom p{font-size:15px}
.actions{margin-top:26px;gap:8px}
.btn{font-size:16px}
.actions .text-btn{justify-content:center}
.showcase{padding:0 10px 12px;border-radius:17px;margin-left:-8px;margin-right:-8px}
.showcase-caption{font-size:11px;padding:14px 4px}
.showcase-caption span{display:none}
.schedule{height:304px;font-size:8px}
.schedule aside{display:none}
.schedule-top{height:35px;padding:7px;gap:5px}
.schedule-top strong{font-size:10px}
.schedule-top>span{font-size:7px;padding:4px}
.schedule-tools{height:30px;font-size:7px;padding:5px;gap:5px}
.schedule-tools b{font-size:7px}
.schedule-tools>span{padding:3px}
.schedule-tools>span:nth-last-child(-n+3){display:none}
.rooms{height:36px;grid-template-columns:25px repeat(3,1fr)}
.rooms>*{padding:6px 3px}
.rooms small{font-size:6px}
.rooms>span{font-size:6px}
.calendar{height:210px}
.times{width:25px;font-size:6px}
.times span{height:12px}
.lanes{background-size:100% 12px,33.333% 100%}
.booking{top:calc(var(--start)*12px);height:calc(var(--dur)*12px);font-size:6px;padding:2px;left:calc(var(--col)*33.333% + 2px);width:calc(33.333% - 4px);border-left-width:2px}
.booking span,.booking em{font-size:5px}
.owner{top:72px;font-size:6px;left:calc(var(--col)*33.333% + 2px);width:calc(33.333% - 4px)}
.hero-foot{flex-direction:column;gap:7px;font-size:12px;padding-top:23px}
h2,.two-col h2,.faq h2{font-size:35px}
.intro{margin-bottom:30px}
.intro p{font-size:15px}
.process-layout,.two-col,.faq{grid-template-columns:1fr;gap:32px}
.steps article{gap:15px;padding:20px 0}
.steps h3{font-size:22px}
.booking-stage{padding:28px 17px}
.booking-card{padding:23px}
.money-pair strong{font-size:25px}
.integration-note{grid-template-columns:1fr;gap:18px;margin-top:34px}
.integration-note h3{font-size:23px}
.estimate-stage{padding:22px 0 22px 13px}
.receipt{padding:22px;margin-right:0}
.receipt h3{font-size:21px}
.receipt-row{font-size:12px;gap:8px}
.total strong{font-size:33px}
.benefits{grid-template-columns:1fr;gap:34px}
.benefits article{padding:0;border-right:0}
.mini-grid,.flow-track,.finance-tiles{height:105px}
.flow-track,.finance-tiles{justify-content:space-around}
.benefits h3{font-size:27px;margin-top:20px}
.themes{grid-template-columns:1fr;gap:20px}
.theme-image{padding:12px}
.hub{gap:9px}
.hub-node{padding:14px;font-size:14px}
.module-steps{grid-template-columns:1fr;gap:16px;margin:28px 0}
.module-steps li{display:flex;gap:20px;align-items:center;padding-top:15px}
.module-steps li:before{margin:0;font-size:20px}
.filters{gap:6px;margin:30px 0 20px}
.filters button{font-size:13px;padding:10px 13px}
.module-grid{grid-template-columns:1fr;gap:10px}
.module{padding:22px;min-height:0}
.module h3{font-size:21px}
.module p{margin-top:12px}
.assistant-stage{padding:18px}
.assistant{padding:20px}
.assistant h3{font-size:21px}
.bubble{font-size:13px;padding:15px}
.question{margin-left:14px}
.prices{grid-template-columns:1fr;gap:16px}
.price{padding:27px}
.price-num{font-size:38px;margin-top:23px}
.price p{min-height:0}
.price .checks{margin:26px 0}
.demo .wrap{padding-left:18px;padding-right:18px}
.demo form{padding:23px 18px}
.demo-path{margin-top:30px;gap:12px}
.demo-path span{font-size:11px}
.consent{font-size:11px}
.faq summary{font-size:18px}
.footer-top{grid-template-columns:1fr;gap:28px}
.footer-bottom{flex-direction:column;gap:12px;margin-top:30px}
.footer-top>div:not(:first-child){gap:10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{transition:none!important}
}
