:root{--pink:#ff00bf;--pinkd:#d900a3;--ink:#352384;--tint:#f4f1ff;--rose:#ffe3f7;--text:#0f0f1a;--mut:#5b5870;--line:#e5e2ee}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:400 18px/1.55 "DM Sans","Helvetica Neue",Arial,sans-serif;color:var(--text);background:#fff}
a{color:inherit}h1,h2,h3,h4{line-height:1.08;margin:0}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px 14px;z-index:20}
.nav{position:sticky;top:0;background:#fff;z-index:10}
.nav-in{display:flex;align-items:center;gap:20px;height:76px}
.logo{font-weight:800;font-size:34px;letter-spacing:-1.5px;color:var(--pink);text-decoration:none}
nav{margin-left:auto;display:flex;gap:6px}nav a{text-decoration:none;font-weight:500;padding:10px 16px;border-radius:999px}nav a:hover{background:var(--tint)}
.btn{display:inline-block;background:var(--pink);color:#fff;border:0;padding:16px 30px;border-radius:999px;font:700 17px "DM Sans",sans-serif;cursor:pointer;text-decoration:none}
.btn:hover{background:var(--pinkd)}.btn.sm{padding:10px 20px;font-size:16px}
.btn.ghost{background:transparent;color:var(--text);box-shadow:inset 0 0 0 2px var(--text)}.btn.ghost:hover{background:var(--tint)}
.link{font-weight:700;color:var(--ink);text-underline-offset:4px}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.promo{background:var(--rose);text-align:center;padding:12px 24px;font-size:16px}
.promo b{color:var(--pinkd)}
.hero{padding:72px 0 56px}.hero .split{align-items:center}
.hero h1{font-size:clamp(46px,7vw,92px);letter-spacing:-3px;color:var(--ink);font-weight:800}
.hero p{font-size:22px;color:var(--mut);margin:24px 0 32px;max-width:28em}
.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.split.rev>:first-child{order:2}
.mod{padding:88px 0}.mod h2{font-size:clamp(34px,4.6vw,56px);letter-spacing:-1.8px;color:var(--ink);font-weight:800;margin-bottom:20px}
.mod p{color:var(--mut);margin:0 0 28px}.cta{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.tint{background:var(--tint)}.rose{background:var(--rose)}
.photo{border-radius:32px;aspect-ratio:5/4;background:#ffc8f1 center/cover no-repeat;display:flex;align-items:flex-end;padding:24px}
.photo.b{background-color:#cfc6ff}.photo span{background:#fff;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:700}
.feat{list-style:none;padding:0;margin:0 0 32px;display:grid;gap:18px}.feat li{padding-left:20px;border-left:4px solid var(--pink)}.feat b{display:block;color:var(--text)}.feat span{color:var(--mut);font-size:16px}
.phone{width:290px;margin:0 auto;background:#fff;border:10px solid #15101f;border-radius:44px;padding:18px 14px;box-shadow:0 30px 60px rgba(53,35,132,.2)}
.map{height:130px;border-radius:18px;background:linear-gradient(135deg,#dfe9ff,#f0e6ff);margin-bottom:12px;position:relative}
.map:after{content:"";position:absolute;left:30%;top:30%;width:40%;height:40%;border:4px solid var(--pink);border-radius:50% 10% 50% 10%;border-left-color:transparent}
.row{display:flex;justify-content:space-between;padding:12px;border-radius:14px;font-weight:700;font-size:15px}.row.on{background:var(--rose);box-shadow:inset 0 0 0 2px var(--pink)}
.opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-top:40px}
.opt{background:#fff;border-radius:24px;padding:26px;border:2px solid transparent}.opt:hover{border-color:var(--pink)}
.opt h3{font-size:24px;margin:14px 0 6px}.opt small{display:block;color:var(--mut);font-size:15px}
.pill{display:inline-block;background:var(--ink);color:#fff;padding:5px 13px;border-radius:999px;font-size:13px;font-weight:700;margin-top:12px}
.price{font-size:28px;font-weight:800;color:var(--ink);margin:8px 0 0}
.qrs{display:flex;gap:56px;flex-wrap:wrap;margin-top:32px}.qrs figure{margin:0;text-align:center}.qrs figcaption{margin-top:12px;font-weight:700}
.qrbox{background:#fff;padding:12px;border-radius:16px;display:inline-block;border:1px solid var(--line)}
.foot{background:#16102b;color:#d8d3ee;padding:64px 0 28px;font-size:16px}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px}
.foot h4{color:#fff;margin-bottom:14px}.foot a{display:block;text-decoration:none;padding:5px 0}.foot a:hover{color:#fff;text-decoration:underline}
.legal{margin-top:48px;color:#9a93b8;font-size:14px}
.page{padding:56px 0 88px}.page h1{font-size:clamp(36px,5vw,60px);letter-spacing:-2px;color:var(--ink);font-weight:800;margin-bottom:28px}
.page h2{font-size:30px;color:var(--ink);margin:48px 0 18px;letter-spacing:-1px}
.card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px}.narrow{max-width:520px;margin:0 auto}
label{display:block;font-weight:700;margin:16px 0 6px;font-size:16px}
input,select{width:100%;padding:15px 16px;border:2px solid var(--line);border-radius:14px;font:inherit;background:#fff}input:focus,select:focus{border-color:var(--pink);outline:0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.veh{display:block;cursor:pointer;border:2px solid var(--line);border-radius:22px;padding:22px;position:relative}.veh input{position:absolute;opacity:0}
.veh:has(input:checked){border-color:var(--pink);background:var(--rose)}.veh:has(input:focus-visible){outline:3px solid var(--ink)}.veh h3{font-size:24px}
.msg{padding:14px 18px;border-radius:14px;background:var(--rose);margin-bottom:20px;font-weight:700}.err{background:#ffe3e3;color:#9b0000}
.wal{background:var(--tint);border-radius:24px;padding:28px}.wal .big{font-size:44px;font-weight:800;color:var(--ink);letter-spacing:-1.5px}
table{width:100%;border-collapse:collapse;font-size:16px}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--line)}
.vc{display:flex;gap:20px;align-items:center;border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:14px;flex-wrap:wrap}
.code{font-size:28px;font-weight:800;letter-spacing:4px;color:var(--ink)}
#reader{max-width:420px;margin-bottom:12px}
@media(max-width:860px){.split{grid-template-columns:1fr;gap:36px}.split.rev>:first-child{order:0}.mod{padding:56px 0}.wrap{padding:0 20px}}

.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.menu-btn{display:none;width:48px;height:48px;border:0;border-radius:50%;background:var(--tint);cursor:pointer;position:relative}
.menu-btn i,.menu-btn i:before,.menu-btn i:after{position:absolute;left:14px;width:20px;height:2px;background:var(--ink);border-radius:2px;content:""}
.menu-btn i{top:23px}.menu-btn i:before{left:0;top:-7px}.menu-btn i:after{left:0;top:7px}
.nav.open .menu-btn i{background:transparent}.nav.open .menu-btn i:before{top:0;transform:rotate(45deg)}.nav.open .menu-btn i:after{top:0;transform:rotate(-45deg)}
@media(prefers-reduced-motion:no-preference){.menu-btn i:before,.menu-btn i:after{transition:top .2s,transform .2s}}
@media(max-width:860px){
.menu-btn{display:block}.nav-in>.btn.sm{margin-left:auto}.nav-in{gap:12px}
nav{display:none;position:absolute;top:76px;left:0;right:0;margin:0;flex-direction:column;gap:10px;padding:8px 20px 24px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(53,35,132,.12)}
.nav.open nav{display:flex}
nav a{text-align:center;padding:15px 18px;font-weight:700;box-shadow:inset 0 0 0 2px var(--line)}
nav a.su{background:var(--pink);color:#fff;box-shadow:none}nav a.su:hover{background:var(--pinkd)}}
