:root{color-scheme:light;--bg:#f4f2fb;--ink:#161233;--mut:#5b5876;--pur:#5b2ea6;--navy:#1c1650;--gold:#d9a521;--glass:rgba(255,255,255,.62);--line:rgba(255,255,255,.8);--sh:0 8px 30px rgba(40,20,100,.12);box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 -apple-system,"SF Pro Text","Segoe UI",Roboto,sans-serif;overflow-x:hidden}
.blob{position:fixed;border-radius:50%;filter:blur(70px);opacity:.45;z-index:-1;animation:f 14s ease-in-out infinite alternate}
.b1{width:340px;height:340px;background:#7a4bd6;top:-80px;left:-80px}
.b2{width:300px;height:300px;background:#2b3fa8;bottom:10%;right:-80px;animation-delay:-6s}
@keyframes f{to{transform:translate(40px,60px) scale(1.1)}}
nav{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:50%;transform:translateX(-50%);z-index:10;display:flex;gap:2px;padding:6px;border-radius:999px;background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(18px);box-shadow:var(--sh);transition:transform .4s;max-width:94vw;overflow-x:auto}
nav.hide{transform:translate(-50%,-140%)}
nav a{color:var(--ink);text-decoration:none;font-size:14px;padding:8px 14px;border-radius:999px;white-space:nowrap}
nav a[aria-current]{background:var(--pur);color:#fff}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
main{max-width:1000px;margin:0 auto;padding:110px 20px 120px}
.page{animation:in .5s ease}
@keyframes in{from{opacity:0;transform:translateY(14px)}}
.logo{display:inline-block;margin-bottom:26px}.lg{display:block;height:70px;width:auto;background:#fff;border-radius:16px;padding:6px 14px;box-shadow:var(--sh)}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;margin-bottom:34px}.hero .btns{margin-bottom:16px}
.ph{width:100%;display:block;border-radius:26px;box-shadow:var(--sh);border:1px solid var(--line)}.hero .ph{aspect-ratio:4/5;object-fit:cover;object-position:50% 30%}
.rate{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--line);background:var(--glass);color:var(--ink);font:inherit;font-size:14px;padding:8px 14px;border-radius:999px;cursor:pointer;text-align:left}
.quick{margin-bottom:14px;padding:14px 20px}.qrow{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:6px 0}.qrow>span{font-size:14px;color:var(--mut);min-width:118px}.tg{display:flex;flex-wrap:wrap;gap:8px}
.chip{font:inherit;font-size:14px;padding:8px 14px;border-radius:999px;background:rgba(91,46,166,.12);border:1px solid var(--line);color:var(--ink);text-decoration:none;cursor:pointer}
@keyframes rise{from{opacity:0;transform:translateY(22px)}}@keyframes rise2{from{opacity:0;transform:scale(.96)}}
.intro .r{animation:rise .9s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--d,0s)}.intro .ph.r{animation-name:rise2}
.gal{display:flex;flex-wrap:wrap;gap:10px}.gal img{width:calc(50% - 5px);max-width:228px;height:auto;border-radius:12px}
@media(max-width:800px){.hero{grid-template-columns:1fr;gap:22px}.hero .ph{aspect-ratio:1/1;max-height:420px;object-position:50% 25%}}
h1{font-size:clamp(38px,8vw,72px);line-height:1.04;margin:0 0 16px;letter-spacing:-.03em}
h1 span{color:var(--pur)}
h2{font-size:clamp(26px,4.5vw,38px);margin:0 0 10px;letter-spacing:-.02em}
.lead{font-size:20px;color:var(--mut);max-width:560px}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 40px}
.btn{border:0;border-radius:999px;padding:13px 24px;font:inherit;font-weight:600;cursor:pointer;background:linear-gradient(135deg,var(--pur),var(--navy));color:#fff;box-shadow:0 6px 20px rgba(91,46,166,.35);text-decoration:none;display:inline-block}
.btn.g{background:var(--glass);color:var(--ink);border:1px solid var(--line);box-shadow:none;backdrop-filter:blur(12px)}
.stats,.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.card{background:var(--glass);border:1px solid var(--line);border-radius:22px;padding:22px;backdrop-filter:blur(16px);box-shadow:var(--sh)}
.stats .card b{display:block;font-size:34px;color:var(--pur);line-height:1.1}
.stats .card{margin-bottom:0}
.nav-card{text-align:left;cursor:pointer;font:inherit;color:var(--ink);transition:transform .25s;display:flex;gap:14px;align-items:center}.nav-card img{width:64px;height:64px;border-radius:14px;object-fit:cover;flex:none}
.nav-card:hover{transform:translateY(-3px)}
.nav-card b{display:block;font-size:18px;margin-bottom:4px}
.nav-card span{color:var(--mut);font-size:14px}
.sec{margin:44px 0 14px}
.card h3{margin:0 0 8px;font-size:18px}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags i{font-style:normal;font-size:14px;padding:5px 12px;border-radius:999px;background:rgba(91,46,166,.12)}
.big{font-size:56px;font-weight:800;color:var(--pur);line-height:1}
.star{color:var(--gold)}
.badge{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--glass);border:1px solid var(--line);font-weight:700;position:relative;margin-right:8px}
.badge:after{content:"★";position:absolute;right:-4px;bottom:-4px;font-size:11px;color:var(--gold)}
.mapbox{position:relative;border-radius:22px;overflow:hidden;box-shadow:var(--sh);height:380px;background:#ddd8f0}.mapbox iframe{width:100%;height:100%;border:0;display:block}.maplabel{position:absolute;right:12px;top:12px;background:rgba(255,255,255,.94);color:#1c1650;padding:8px 14px;border-radius:999px;font-weight:700;font-size:14px;box-shadow:var(--sh);pointer-events:none;max-width:70%}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 0}.chip[aria-pressed="true"]{background:var(--pur);color:#fff}
label{display:block;font-size:14px;margin:12px 0 4px;color:var(--mut)}
input,select{width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--glass);color:var(--ink);font:inherit}
.seg{display:flex;gap:8px;margin-bottom:6px}
.seg button{flex:1}
details{background:var(--glass);border:1px solid var(--line);border-radius:16px;padding:14px 18px;margin-bottom:10px}
summary{cursor:pointer;font-weight:600}
.dock{display:none}
.wa{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:54px;height:54px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-weight:800;text-decoration:none;box-shadow:var(--sh);z-index:9}
@media(max-width:700px){
.dock{display:flex;position:fixed;left:14px;right:84px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:9;gap:4px;padding:6px;border-radius:999px;background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(18px);box-shadow:var(--sh)}
.dock a{flex:1;text-align:center;padding:10px 4px;border-radius:999px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:600}
.dock a:last-child{background:var(--pur);color:#fff}
nav a{padding:8px 10px;font-size:13px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.ph{height:auto}
.navg .btn{padding:10px 16px;font-size:14px}
.stars{color:var(--gold);letter-spacing:3px;font-size:18px;line-height:1;margin-bottom:8px}
.navg{grid-template-columns:repeat(3,1fr)}@media(max-width:900px){.navg{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.navg{grid-template-columns:1fr}}
a.card,a.rate{text-decoration:none;color:var(--ink)}
.card[id]{scroll-margin-top:90px}
.foot{max-width:1000px;margin:0 auto;padding:0 20px 130px;color:var(--mut);font-size:14px;display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between}.foot a{color:var(--mut)}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:20;background:#fff;color:#000;padding:8px 12px;border-radius:8px}
