:root{
  --blue:#0071e3; --link:#0066cc; --link-dark:#2997ff;
  --ink:#1d1d1f; --ink-80:rgba(0,0,0,.8); --ink-48:rgba(0,0,0,.48);
  --light:#f5f5f7; --dark:#000;
  --dark-1:#272729; --dark-3:#28282a;
  --ok:#30d158; --warn:#ff9f0a;
  --shadow-card: rgba(0,0,0,.22) 3px 5px 30px 0px;
  --font:-apple-system,"SF Pro Display","SF Pro Text","Helvetica Neue","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px}

.nav{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.8);backdrop-filter:saturate(180%) blur(20px)}
.nav-inner{max-width:1024px;margin:0 auto;height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 22px}
.logo{color:#fff;font-size:15px;font-weight:600;letter-spacing:.5px;display:flex;align-items:center;gap:8px}
.logo svg{flex-shrink:0}
.nav-links{display:flex;gap:30px}
.nav-links a{color:rgba(255,255,255,.82);font-size:12px;transition:color .2s}
.nav-links a:hover,.nav-links a.on{color:#fff}
.nav-cta{color:#fff;font-size:12px;border:1px solid rgba(255,255,255,.5);border-radius:980px;padding:5px 14px;transition:.2s}
.nav-cta:hover{background:#fff;color:#000}

.page-head{background:var(--dark);color:#fff;padding:64px 24px 48px}
.ph-inner{max-width:1024px;margin:0 auto}
.crumb{font-size:12px;color:rgba(255,255,255,.48);display:flex;gap:8px;flex-wrap:wrap}
.crumb a:hover{color:#fff}
.crumb.on-light{color:var(--ink-48);max-width:1024px;margin:0 auto;padding:22px 24px 0}
.crumb.on-light a:hover{color:var(--link)}
.page-head h1{font-size:46px;font-weight:600;letter-spacing:-.9px;line-height:1.1;margin-top:18px}
.page-head .sub{font-size:17px;color:rgba(255,255,255,.65);margin-top:12px;max-width:640px;line-height:1.5}
.page-head .sub b{color:#fff;font-weight:600}
.page-head .cnt{margin-top:14px;font-size:13px;color:rgba(255,255,255,.55)}
.page-head .cnt b{color:#fff;font-weight:600}
.tagline{margin-top:20px;display:flex;align-items:center;gap:12px}
.tagline .tmark{font-size:26px;font-weight:700;color:var(--link-dark)}
.tagline+.page-head h1{margin-top:10px}
.pk{margin-top:26px;display:inline-block;font-size:12px;color:var(--link-dark);font-weight:600;border:1px solid rgba(41,151,255,.4);border-radius:980px;padding:4px 12px}
.meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-size:13px;color:rgba(255,255,255,.55)}
.meta b{color:rgba(255,255,255,.85);font-weight:500}

.sec{padding:96px 24px}
.sec-inner{max-width:1024px;margin:0 auto}
.band-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:40px;flex-wrap:wrap;text-align:left}
.band-head h2{font-size:44px;font-weight:600;letter-spacing:-.9px;line-height:1.1}
.band-head p{font-size:18px;margin-top:12px}
.pill{font-size:17px;border-radius:980px;padding:12px 26px;transition:.2s;display:inline-block}
.pill-fill{background:var(--blue);color:#fff}
.pill-fill:hover{background:#0077ed}
.pill-line{border:1px solid var(--link-dark);color:var(--link-dark)}
.pill-line:hover{background:rgba(41,151,255,.08)}
.pill-line.on-light{border-color:var(--link);color:var(--link)}
.pill-line.on-light:hover{background:rgba(0,102,204,.06)}
.tlink{font-size:15px;color:var(--link);white-space:nowrap}
.tlink::after{content:" ›"}
.tlink:hover{text-decoration:underline}
.tlink.on-dark{color:var(--link-dark)}

.gallery-sec{background:var(--dark);color:#fff;padding:96px 0 0}
.gal-head{text-align:center;max-width:720px;margin:0 auto;padding:0 24px}
.kicker{color:rgba(255,255,255,.55);font-size:15px;font-weight:600;letter-spacing:.5px}
.gal-head h1{font-size:60px;font-weight:600;line-height:1.07;letter-spacing:-1.1px;margin:16px 0 14px}
.gal-head .sub{font-size:19px;color:rgba(255,255,255,.72);line-height:1.4}
.gal-ctas{display:flex;gap:20px;justify-content:center;margin:26px 0 0}
.gal-row{display:flex;gap:20px;overflow-x:auto;padding:56px 40px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}
.gal-row::-webkit-scrollbar{display:none}
.gcard{flex:0 0 252px;scroll-snap-align:start;text-align:left;cursor:pointer}
.gcard .ph{position:relative;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:var(--dark-1)}
.gcard img{width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .5s}
.gcard:hover img{transform:scale(1.04)}
.gcard .st{position:absolute;top:12px;left:12px;border-radius:980px;font-size:12px;padding:4px 11px;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);color:#fff;display:flex;align-items:center;gap:6px}
.gcard .st i{width:7px;height:7px;border-radius:50%;display:inline-block}
.gcard .st.ok i{background:var(--ok)}
.gcard .st.warn i{background:var(--warn)}
.gcard .st.off i{background:rgba(255,255,255,.4)}
.gcard .nm{display:flex;align-items:baseline;justify-content:space-between;margin-top:14px}
.gcard .nm b{font-size:18px;font-weight:600}
.gcard .nm span{font-size:13px;color:rgba(255,255,255,.55)}
.gcard .meta{font-size:13px;color:rgba(255,255,255,.65);margin-top:4px}
.gcard .pr{font-size:14px;margin-top:8px;color:rgba(255,255,255,.85)}
.gcard .pr b{font-size:16px;font-weight:600;color:#fff}
.gal-nav{max-width:1024px;margin:10px auto 0;padding:0 22px;display:flex;justify-content:flex-end;gap:12px}
.circ{width:36px;height:36px;border-radius:50%;background:rgba(210,210,215,.64);display:grid;place-items:center;color:rgba(0,0,0,.48);transition:.2s}
.circ:hover{color:#000;background:#ededf2}

.roster{background:#fff;padding:96px 24px}
.roster-inner{max-width:1024px;margin:0 auto}
.view{display:flex;gap:6px}
.view button{font-size:14px;color:var(--ink-80);background:#fafafc;padding:8px 18px;border-radius:11px;border:3px solid rgba(0,0,0,.04);transition:.2s}
.view button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.board{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mcard{background:var(--light);border-radius:12px;overflow:hidden;cursor:pointer;position:relative;text-align:left;transition:box-shadow .3s, transform .3s}
.mcard:hover{box-shadow:var(--shadow-card);transform:translateY(-4px)}
.mcard .cover{position:relative;aspect-ratio:4/3.2;overflow:hidden;background:#e8e8ed}
.mcard .cover img{width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .6s ease}
.mcard:hover .cover img{transform:scale(1.03)}
.mcard .cover .tag,.mcard .cover .st{position:absolute;top:14px;left:14px;background:rgba(0,0,0,.55);color:#fff;backdrop-filter:blur(8px);border-radius:980px;font-size:12px;padding:5px 12px;letter-spacing:.4px}
.mcard .cover .free{position:absolute;top:14px;right:14px;background:var(--blue);color:#fff;border-radius:980px;font-size:12px;padding:5px 12px}
.mcard .body{padding:22px 24px 26px}
.mcard .row1{display:flex;align-items:baseline;gap:10px}
.mcard .nm{font-size:21px;font-weight:700;letter-spacing:.231px;line-height:1.19;flex:1}
.mcard .rt{font-size:13px;color:var(--ink-48)}
.mcard .city{font-size:13px;color:var(--ink-48);margin-top:2px}
.mcard .meta{font-size:12px;color:var(--ink-48);margin-top:4px}
.mcard .desc{font-size:14px;color:var(--ink-80);margin-top:10px;line-height:1.47;letter-spacing:-.224px}
.mcard .specs{display:flex;gap:14px;margin-top:14px;font-size:12px;color:var(--ink-48)}
.mcard .specs b{color:var(--ink);font-weight:600}
.mcard .tags{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.mcard .tagp{font-size:12px;color:var(--ink-80);background:#e8e8ed;border-radius:5px;padding:3px 10px}
.mcard .foot{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid rgba(0,0,0,.08)}
.mcard .price{font-size:13px;color:var(--ink-48)}
.mcard .price b{color:var(--ink);font-size:17px;font-weight:600}
.mcard .book{font-size:14px;color:var(--link)}
.mcard .book::after{content:" ›"}
.mcard .book:hover{text-decoration:underline}
.mgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.mgrid .mcard .cover{aspect-ratio:3/4}
.mgrid .mcard .body{padding:16px 18px 18px}
.mgrid .mcard .row1{justify-content:space-between}
.mgrid .mcard .nm{font-size:17px;font-weight:600}
.mgrid .mcard .foot{margin-top:10px;padding-top:0;border-top:none}

.budget{background:var(--light);padding:96px 24px}
.budget-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.bcard{background:#fff;border-radius:12px;padding:28px 26px;transition:box-shadow .3s;text-align:left}
.bcard:hover{box-shadow:var(--shadow-card)}
.bcard .rng{font-size:24px;font-weight:600;letter-spacing:-.3px}
.bcard .rng small{font-size:14px;font-weight:400;color:var(--ink-48);margin-left:4px}
.bcard ul{list-style:none;margin:16px 0 0;display:grid;gap:8px}
.bcard li{font-size:13px;color:var(--ink-80);line-height:1.45;padding-left:16px;position:relative}
.bcard li::before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:var(--link)}
.bcard .tlink{display:inline-block;margin-top:18px;font-size:14px}

.wall{background:var(--dark);color:#fff;padding:0 0 96px}
.wall .band-head{padding-top:96px;color:#fff}
.wall .band-head p{color:rgba(255,255,255,.65)}
.wall-wrap{max-width:1024px;margin:0 auto;padding:0 24px}
.masonry{columns:4 210px;column-gap:16px}
.pin{break-inside:avoid;margin-bottom:16px;border-radius:12px;overflow:hidden;position:relative;background:var(--dark-1)}
.pin .ph{position:relative;width:100%;overflow:hidden}
.pin img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pin:hover img{transform:scale(1.03)}
.pin .overlay{position:absolute;inset:0;background:rgba(0,0,0,.35);opacity:0;transition:.25s;display:flex;align-items:flex-start;justify-content:flex-end;padding:12px}
.pin:hover .overlay{opacity:1}
.pin .save{background:var(--blue);color:#fff;font-size:14px;padding:8px 18px;border-radius:980px}
.pin .tag{position:absolute;left:12px;bottom:12px;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);border-radius:980px;padding:5px 12px;font-size:12px;color:#fff;letter-spacing:.3px}
.pin .bar{display:flex;align-items:center;gap:9px;padding:12px 14px}
.pin .avatar{width:28px;height:28px;border-radius:50%;background:var(--dark-3);display:grid;place-items:center;font-size:12px;color:#fff;flex-shrink:0}
.pin .name{font-size:13px;color:rgba(255,255,255,.9);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pin .meta{font-size:12px;color:rgba(255,255,255,.48)}
.pin-quote{background:var(--light);color:var(--ink);padding:28px 26px;display:flex;flex-direction:column;gap:14px;justify-content:center}
.pin-quote .q{font-size:20px;font-weight:600;line-height:1.28;letter-spacing:-.2px}
.pin-quote .who{font-size:13px;color:var(--ink-48)}
.pin-stat{background:var(--dark-3);padding:26px;display:flex;flex-direction:column;gap:6px}
.pin-stat .num{font-size:36px;font-weight:600;letter-spacing:-.5px;color:#fff}
.pin-stat .lab{font-size:13px;color:rgba(255,255,255,.55)}
.pin-cta{background:var(--light);color:var(--ink);padding:26px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.pin-cta .t{font-size:19px;font-weight:600;line-height:1.28;letter-spacing:-.2px}
.pin-cta .btn{font-size:14px;background:var(--blue);color:#fff;padding:9px 20px;border-radius:980px}

.safe{background:#fff;padding:96px 24px}
.safe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.scard{text-align:left}
.scard .ico{width:48px;height:48px;border-radius:50%;background:var(--ink);display:grid;place-items:center;color:#fff;margin-bottom:16px}
.scard h3{font-size:19px;font-weight:600;letter-spacing:.1px;margin-bottom:8px}
.scard p{font-size:14px;color:var(--ink-80);line-height:1.47;letter-spacing:-.224px}

.reviews{background:var(--light);padding:96px 24px}
.rv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rcard{background:#fff;border-radius:12px;padding:30px 28px;text-align:left;transition:box-shadow .3s}
.rcard:hover{box-shadow:var(--shadow-card)}
.rcard .stars{color:var(--ink);font-size:13px;letter-spacing:2px}
.rcard .q{font-size:16px;line-height:1.5;margin-top:14px;letter-spacing:-.1px}
.rcard .who{margin-top:18px;font-size:13px;color:var(--ink-48)}
.rcard .who b{color:var(--ink);font-weight:600}

.cities{background:var(--dark);color:#fff;padding:96px 24px}
.city-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ccard{background:var(--dark-1);border-radius:12px;padding:30px 28px;text-align:left;position:relative;transition:.25s;display:block}
.ccard:hover{background:var(--dark-3)}
.ccard h3{font-size:26px;font-weight:600;letter-spacing:-.2px}
.ccard .n{font-size:13px;color:rgba(255,255,255,.55);margin-top:6px}
.ccard .tagsline{font-size:12px;color:rgba(255,255,255,.45);margin-top:14px}
.ccard .arr{position:absolute;right:24px;top:50%;transform:translateY(-50%);color:var(--link-dark);font-size:18px}

.steps-sec{background:var(--light);padding:96px 24px}
.steps-sec h2{text-align:center;font-size:44px;font-weight:600;letter-spacing:-.9px;line-height:1.1;margin-bottom:40px}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step-card{background:#fff;border-radius:12px;padding:32px 30px;transition:box-shadow .3s}
.step-card:hover{box-shadow:var(--shadow-card)}
.step-card .ico{width:44px;height:44px;border-radius:50%;background:var(--ink);display:grid;place-items:center;color:#fff;margin-bottom:18px}
.step-card h3{font-size:21px;font-weight:700;letter-spacing:.231px;margin-bottom:8px}
.step-card p{color:var(--ink-80);font-size:14px;line-height:1.47;letter-spacing:-.224px}

.compare{background:#fff;padding:96px 24px}
.cmp{max-width:820px;margin:0 auto;border-radius:12px;overflow:hidden;background:var(--light)}
.cmp-row{display:grid;grid-template-columns:140px 1fr 1fr;background:#fff}
.cmp-row:nth-child(odd){background:var(--light)}
.cmp-row>div{padding:16px 20px;font-size:14px;line-height:1.45}
.cmp-row .h{font-size:13px;color:var(--ink-48);font-weight:600}
.cmp-row .old{color:var(--ink-48)}
.cmp-row .new{color:var(--ink)}
.cmp-row .new::before{content:"✓ ";color:var(--link);font-weight:700}
.cmp-row .old::before{content:"— ";color:var(--ink-48)}

.faq{background:var(--light);padding:96px 24px}
.faq-list{max-width:100%;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(0,0,0,.14);border-radius:12px;overflow:hidden}
@media(max-width:900px){.faq-list{grid-template-columns:1fr}}
.fcard{background:#fff;padding:22px 24px;text-align:left}
.fcard .fh{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.fcard .fq{font-size:17px;font-weight:600;letter-spacing:-.1px}
.fcard .fn{font-size:12px;color:var(--ink-48);font-weight:600;flex-shrink:0}
.fcard .fa{margin-top:10px;font-size:14px;color:var(--ink-80);line-height:1.55;letter-spacing:-.224px}

.join{background:var(--dark);color:#fff;text-align:center;padding:96px 24px}
.join .kicker{display:block}
.join h2{font-size:52px;font-weight:600;letter-spacing:-1px;line-height:1.08;margin:14px 0 16px}
.join p{color:rgba(255,255,255,.72);max-width:600px;margin:0 auto;font-size:18px;line-height:1.45}
.join .pill{margin-top:28px}
.join-stats{max-width:820px;margin:52px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(255,255,255,.14);border-radius:12px;overflow:hidden}
.join-stat{background:#000;padding:34px 18px}
.join-stat b{display:block;font-size:34px;font-weight:600;letter-spacing:-.5px}
.join-stat span{font-size:13px;color:rgba(255,255,255,.55);display:block;margin-top:8px}

.filter-bar{background:var(--light);padding:22px 24px;position:sticky;top:48px;z-index:40;border-bottom:1px solid rgba(0,0,0,.06)}
.fb-inner{max-width:1024px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr) auto;gap:14px;align-items:center}
.fgroup{position:relative}
.fgroup .flabel{font-size:11px;color:var(--ink-48);font-weight:600;margin-bottom:5px;display:block;letter-spacing:.3px}
.select{appearance:none;-webkit-appearance:none;width:100%;font-family:inherit;font-size:14px;color:var(--ink);background:#fff;border:3px solid rgba(0,0,0,.04);border-radius:11px;padding:9px 32px 9px 13px;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%231d1d1f' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}
.select:hover{border-color:rgba(0,0,0,.1)}
.select.set{border-color:var(--blue)}
.reset{font-size:13px;color:var(--link);align-self:end;padding:9px 4px;white-space:nowrap}
.reset:hover{text-decoration:underline}
.toolbar{max-width:1024px;margin:26px auto 0;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.count{font-size:14px;color:var(--ink-80)}
.count b{font-weight:600;color:var(--ink)}
.tools-r{display:flex;gap:14px;align-items:center}
.sort,.views{display:flex;gap:2px;background:var(--light);border-radius:11px;padding:3px}
.sort button,.views button{font-size:13px;color:var(--ink-80);padding:6px 13px;border-radius:9px;transition:.15s}
.sort button.on,.views button.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12);font-weight:600}
.list-main{max-width:1024px;margin:26px auto 0;padding:0 24px;min-height:400px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rows{display:none;grid-gap:14px;gap:14px}
.rows.on{display:grid}
.grid.off{display:none}
.prow{display:grid;grid-template-columns:132px 1fr auto;gap:20px;background:var(--light);border-radius:12px;overflow:hidden;cursor:pointer;transition:box-shadow .3s;align-items:stretch}
.prow:hover{box-shadow:var(--shadow-card)}
.prow .ppic{position:relative;aspect-ratio:3/4;overflow:hidden;background:#e8e8ed}
.prow .ppic img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.prow .pmid{padding:18px 20px 16px;display:flex;flex-direction:column;min-width:0}
.prow .phead{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.prow .phead b{font-size:19px;font-weight:700}
.prow .phead .rt{font-size:13px;color:var(--ink-48)}
.prow .phead .st{font-size:11px;padding:3px 10px;border-radius:980px;color:#fff}
.prow .phead .st.ok{background:var(--blue)}
.prow .phead .st.warn{background:var(--warn)}
.prow .phead .st.off{background:rgba(0,0,0,.4)}
.prow .pdesc{font-size:13px;color:var(--ink-80);margin-top:6px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.prow .pspec{margin-top:auto;padding-top:10px;display:flex;gap:16px;font-size:12px;color:var(--ink-48);flex-wrap:wrap}
.prow .pspec b{color:var(--ink);font-weight:600}
.prow .pspec .tg{color:var(--link)}
.prow .pright{padding:18px 22px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:10px;border-left:1px solid rgba(0,0,0,.08);min-width:150px}
.prow .pprice{font-size:12px;color:var(--ink-48)}
.prow .pprice b{display:block;font-size:20px;font-weight:600;color:var(--ink);letter-spacing:-.2px}
.prow .pbtn{font-size:13px;color:var(--link);white-space:nowrap}
.prow .pbtn::after{content:" ›"}

.empty-note{background:var(--light);border-radius:12px;padding:28px;text-align:center;font-size:14px;color:var(--ink-48)}

.pager{display:flex;justify-content:center;gap:8px;margin:44px 0 0}
.py-newslist{grid-column:1;margin:40px 0 0}
.pager a{min-width:38px;height:38px;border-radius:980px;font-size:14px;color:var(--ink-80);background:var(--light);display:grid;place-items:center;transition:.15s;padding:0 8px}
.pager a:hover{background:#e8e8ed}
.pager a.on,.pager a.page-num-current{background:var(--ink);color:#fff}
.pager a.page-num{min-width:38px;padding:0 8px}
.pager .ell{color:var(--ink-48);align-self:center}

.seo-copy{background:var(--light);padding:72px 24px;margin-top:80px}
.sc-tags{padding:64px 24px;margin-top:72px}
.seo-inner{max-width:820px;margin:0 auto}
.seo-inner h2{font-size:28px;font-weight:600;letter-spacing:-.4px;margin-bottom:16px}
.sc-tags .seo-inner h2{font-size:24px;margin-bottom:14px}
.seo-inner p{font-size:14px;color:var(--ink-80);line-height:1.7;margin-bottom:12px}

.subnav{background:var(--light);border-bottom:1px solid rgba(0,0,0,.06);padding:0 24px}
.subnav-inner{max-width:1024px;margin:0 auto;display:flex;gap:26px;overflow-x:auto;scrollbar-width:none}
.subnav-inner::-webkit-scrollbar{display:none}
.subnav a{font-size:14px;color:var(--ink-80);padding:15px 2px;border-bottom:2px solid transparent;white-space:nowrap}
.subnav a:hover{color:var(--ink)}
.subnav a.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}

.layout{max-width:1024px;margin:48px auto 0;padding:0 24px;display:grid;grid-template-columns:1fr 300px;gap:44px;align-items:start}
.ly-model{grid-template-columns:1fr 330px;gap:40px;padding-top:26px}
.ly-news{grid-template-columns:1fr 260px;gap:52px;padding-top:52px}
.ly-about{grid-template-columns:240px 1fr;gap:56px;padding-top:56px}

.feature{grid-column:1;display:grid;grid-template-columns:1.15fr 1fr;gap:26px;cursor:pointer;background:var(--light);border-radius:12px;overflow:hidden;transition:box-shadow .3s;margin-bottom:44px}
.feature:hover{box-shadow:var(--shadow-card)}
.feature .fim{aspect-ratio:16/10;overflow:hidden;background:#e8e8ed}
.feature .fim img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.feature:hover .fim img{transform:scale(1.03)}
.feature .fbody{padding:34px 32px 30px;display:flex;flex-direction:column;justify-content:center}
.feature .fk{font-size:12px;color:var(--link);font-weight:600;letter-spacing:.5px}
.feature h2{font-size:26px;font-weight:600;letter-spacing:-.3px;line-height:1.25;margin:10px 0 12px}
.feature .fd{font-size:14px;color:var(--ink-80);line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.feature .fm{margin-top:16px;font-size:12px;color:var(--ink-48)}

.alist{display:grid;grid-column:1}
.aitem{display:grid;grid-template-columns:200px 1fr;gap:22px;padding:26px 0;border-top:1px solid rgba(0,0,0,.1);cursor:pointer;align-items:center}
.sc-tags .aitem{grid-template-columns:170px 1fr;padding:22px 0;gap:20px}
.aitem:first-child{border-top:none}
.aitem .aim{aspect-ratio:16/10;border-radius:8px;overflow:hidden;background:#e8e8ed}
.aitem .aim img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.aitem:hover .aim img{transform:scale(1.04)}
.aitem .abody{display:flex;flex-direction:column;min-width:0}
.aitem .ak{font-size:12px;color:var(--link);font-weight:600}
.aitem h3{font-size:19px;font-weight:600;letter-spacing:-.2px;line-height:1.35;margin:7px 0 9px}
.aitem:hover h3{color:var(--link)}
.aitem .ad{font-size:13px;color:var(--ink-80);margin-top:7px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.aitem .am{margin-top:auto;padding-top:12px;font-size:12px;color:var(--ink-48);display:flex;gap:14px;flex-wrap:wrap}
.aitem .am .tg{color:var(--link)}

.side{display:grid;gap:26px;position:sticky;top:72px;align-self:start}
.sy-news{gap:24px}
.sy-newslist{grid-column:2;grid-row:1/span 3}
.sw{background:var(--light);border-radius:12px;padding:24px}
.sy-news .sw{padding:22px}
.sw h4{font-size:15px;font-weight:600;margin-bottom:16px;letter-spacing:-.1px}
.sy-news .sw h4{margin-bottom:14px}
.hotlist{display:grid;gap:14px;counter-reset:hot}
.sy-news .hotlist{gap:12px}
.hotlist a{display:grid;grid-template-columns:26px 1fr;gap:10px;font-size:13px;line-height:1.4;color:var(--ink-80)}
.hotlist a:hover{color:var(--link)}
.hotlist a::before{counter-increment:hot;content:counter(hot,decimal-leading-zero);font-size:12px;font-weight:700;color:var(--ink-48)}
.hotlist a:nth-child(-n+3)::before{color:var(--link)}
.tagcloud{display:flex;flex-wrap:wrap;gap:8px}
.tagcloud a{font-size:12px;color:var(--ink-80);background:#fff;border-radius:980px;padding:5px 12px;transition:.15s}
.tagcloud a:hover{background:var(--ink);color:#fff}
.lead-card{background:var(--dark);color:#fff;border-radius:12px;padding:26px 24px}
.lead-card b{display:block;font-size:19px;font-weight:600;line-height:1.3}
.lead-card p{font-size:13px;color:rgba(255,255,255,.65);margin:10px 0 16px;line-height:1.5}
.lead-card .btn{display:inline-block;font-size:13px;background:var(--blue);color:#fff;border-radius:980px;padding:8px 18px}
.lead-card .btn:hover{background:#0077ed}

.cover{max-width:1024px;margin:0 auto;padding:44px 24px 0}
.cover img{display:block;width:auto;max-width:62%;height:auto;max-height:560px;margin:0 auto;border-radius:12px}

.article{font-size:16px;line-height:1.75;letter-spacing:-.2px;color:var(--ink)}
.article h2{font-size:28px;font-weight:600;letter-spacing:-.4px;line-height:1.25;margin:52px 0 18px;padding-top:8px}
.ar-about h2{margin:56px 0 20px;padding-top:0}
.ar-about h2:first-child{margin-top:0}
.article h2::before{content:"";display:block;width:34px;height:3px;background:var(--blue);border-radius:2px;margin-bottom:18px}
.article h3{font-size:19px;font-weight:600;margin:32px 0 12px}
.article p{margin:0 0 18px;color:var(--ink-80)}
.article strong{color:var(--ink);font-weight:600}
.article ul,.article ol{margin:0 0 18px;padding-left:22px;display:grid;gap:9px;color:var(--ink-80)}
.article li::marker{color:var(--link);font-weight:600}
.article blockquote{background:var(--light);border-radius:10px;padding:20px 24px;margin:0 0 18px;font-size:15px;color:var(--ink-80);line-height:1.65}
.article blockquote b{display:block;color:var(--ink);font-size:13px;font-weight:600;margin-bottom:6px}
.article .tip{border-radius:10px;padding:20px 24px;margin:0 0 18px;background:rgba(0,113,227,.06);font-size:14px;color:var(--ink-80);line-height:1.6}
.article .tip b{display:block;color:var(--link);font-size:13px;font-weight:600;margin-bottom:6px}
.article table{width:100%;border-collapse:collapse;margin:0 0 22px;font-size:14px}
.article th{background:var(--light);text-align:left;font-weight:600;color:var(--ink)}
.article th,.article td{padding:12px 14px;border-bottom:1px solid rgba(0,0,0,.1)}
.article td{color:var(--ink-80)}
.article td b{color:var(--ink)}
.article figure{margin:0 0 22px}
.article figure img{width:100%;border-radius:10px;aspect-ratio:16/9;object-fit:cover}
.article a{color:var(--link);text-decoration:none}
.article a:hover{text-decoration:underline}
.article figcaption{font-size:12px;color:var(--ink-48);margin-top:9px;text-align:center}
.article .steps{display:grid;gap:16px;margin:0 0 18px}
.article .step{display:grid;grid-template-columns:52px 1fr;gap:18px;background:var(--light);border-radius:12px;padding:22px 24px}
.article .step .sn{width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:16px;font-weight:600}
.article .step h3{margin:0 0 6px;font-size:17px}
.article .step p{margin:0;font-size:14px;line-height:1.6}

.toc{background:var(--light);border-radius:12px;padding:22px;position:sticky;top:72px}
.ly-about .toc{background:none;padding:0}
.toc h4{font-size:13px;font-weight:600;color:var(--ink-48);margin-bottom:12px;letter-spacing:.4px}
.ly-about .toc h4{margin-bottom:14px}
.toc a{display:block;font-size:13px;color:var(--ink-80);padding:7px 0 7px 14px;border-left:2px solid transparent;line-height:1.4}
.ly-about .toc a{padding:8px 0 8px 14px;border-left-color:rgba(0,0,0,.12);transition:.15s}
.toc a:hover{color:var(--link)}
.ly-about .toc a:hover{border-left-color:rgba(0,0,0,.3)}
.toc a.on{color:var(--link);border-left-color:var(--link);font-weight:600}
.ly-about .toc .call{margin-top:22px;background:var(--light);border-radius:12px;padding:18px}
.toc .call b{display:block;font-size:14px;font-weight:600}
.toc .call p{font-size:12px;color:var(--ink-48);margin:6px 0 10px;line-height:1.5}
.toc .call a{padding:0;border:none;font-size:13px}

.atags{display:flex;gap:8px;flex-wrap:wrap;margin:44px 0 0;padding-top:26px;border-top:1px solid rgba(0,0,0,.1)}
.atags a{font-size:12px;color:var(--ink-80);background:var(--light);border-radius:980px;padding:6px 14px}
.atags a:hover{background:var(--ink);color:#fff}
.pn{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:36px 0 0}
.pn a{background:var(--light);border-radius:12px;padding:20px 22px;font-size:13px;color:var(--ink-48);transition:.2s}
.pn a:hover{box-shadow:var(--shadow-card)}
.pn a b{display:block;font-size:15px;color:var(--ink);font-weight:600;margin-top:6px;line-height:1.35}
.pn a:last-child{text-align:right}
.pn-model{max-width:1024px;margin:28px auto 0;padding:0 24px}
.article img{max-width:60%;height:auto;border-radius:8px}
.lead-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--light);border-radius:12px;padding:20px 24px;margin:28px 0 0;flex-wrap:wrap}
.lead-cta b{font-size:15px}

.related{max-width:1024px;margin:0 auto;padding:64px 24px 0}
.related h2{font-size:30px;font-weight:600;letter-spacing:-.4px;margin-bottom:26px}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rel-card{cursor:pointer}
.rel-card .rim{aspect-ratio:16/10;border-radius:10px;overflow:hidden;background:#e8e8ed}
.rel-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.rel-card:hover img{transform:scale(1.04)}
.rel-card h3{font-size:16px;font-weight:600;line-height:1.4;margin:12px 0 8px}
.rel-card:hover h3{color:var(--link)}
.rel-card .rm{font-size:12px;color:var(--ink-48)}

.end-cta{background:var(--dark);color:#fff;border-radius:14px;padding:44px 40px;margin:64px 0 0;text-align:center}
.end-cta h2{font-size:30px;font-weight:600;letter-spacing:-.4px;margin:0 0 12px}
.end-cta h2::before{display:none}
.end-cta p{color:rgba(255,255,255,.65);font-size:15px;margin:0 auto 24px;max-width:480px;line-height:1.55}
.end-cta .btn{display:inline-block;font-size:16px;background:var(--blue);color:#fff;border-radius:980px;padding:13px 32px}
.end-cta .btn:hover{background:#0077ed}

.rel-pages{max-width:1024px;margin:0 auto;padding:64px 24px 0}
.rel-pages h2{font-size:26px;font-weight:600;letter-spacing:-.3px;margin-bottom:22px}
.rp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rp-card{background:var(--light);border-radius:12px;padding:26px 24px;transition:box-shadow .3s}
.rp-card:hover{box-shadow:var(--shadow-card)}
.rp-card b{display:block;font-size:16px;font-weight:600;margin-bottom:8px}
.rp-card p{font-size:13px;color:var(--ink-80);line-height:1.55;margin:0 0 12px}
.rp-card a{font-size:13px;color:var(--link)}
.rp-card a::after{content:" ›"}

.gallery{min-width:0}
.gallery .main{position:relative;aspect-ratio:4/3.4;border-radius:12px;overflow:hidden;background:#e8e8ed;cursor:zoom-in}
.gallery .main img{width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:opacity .25s}
.gallery .main .nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:rgba(210,210,215,.64);color:rgba(0,0,0,.48);display:grid;place-items:center;transition:.2s;backdrop-filter:blur(4px)}
.gallery .main .nav-btn:hover{background:#fff;color:#000}
.gallery .main .prev{left:14px}
.gallery .main .next{right:14px}
.gallery .main .idx{position:absolute;right:16px;bottom:14px;font-size:12px;color:#fff;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);border-radius:980px;padding:5px 12px}
.thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:10px}
.thumbs .th{aspect-ratio:4/3.4;border-radius:8px;overflow:hidden;background:#e8e8ed;position:relative;cursor:pointer;transition:.2s;border:2px solid transparent;padding:0}
.thumbs .th img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.thumbs .th:hover{opacity:.85}
.thumbs .th.on{border-color:var(--blue)}
.info-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-top:30px}
.info-head h1{font-size:36px;font-weight:600;letter-spacing:-.6px}
.info-head .rt{font-size:15px;color:var(--ink-48)}
.info-head .rt b{color:var(--ink)}
.certline{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.certline span{font-size:12px;color:var(--link);border:1px solid rgba(0,102,204,.35);border-radius:980px;padding:4px 12px}
.desc{margin-top:16px;font-size:15px;color:var(--ink-80);line-height:1.65}
.specs{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(0,0,0,.1);border-radius:12px;overflow:hidden;margin-top:26px}
.spec{background:var(--light);padding:16px 18px}
.spec span{font-size:12px;color:var(--ink-48);display:block}
.spec b{font-size:17px;font-weight:600;margin-top:4px;display:block}
.tagsline{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.tagsline a{font-size:13px;color:var(--ink-80);background:var(--light);border-radius:980px;padding:6px 15px}
.tagsline a:hover{background:var(--ink);color:#fff}
.price-card{background:var(--light);border-radius:14px;padding:28px 26px;position:sticky;top:72px}
.price-card .st{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;border-radius:980px;padding:6px 14px;color:#fff;background:var(--blue)}
.price-card .st.warn{background:var(--warn)}
.price-card .st.off{background:rgba(0,0,0,.4)}
.price-card .st i{width:7px;height:7px;border-radius:50%;background:#fff;display:inline-block}
.price-card .big{margin-top:18px;display:flex;align-items:baseline;gap:8px}
.price-card .big b{font-size:34px;font-weight:600;letter-spacing:-.8px}
.price-card .big span{font-size:13px;color:var(--ink-48)}
.price-card ul{list-style:none;display:grid;gap:10px;margin:18px 0;padding:18px 0;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1)}
.price-card li{display:flex;justify-content:space-between;font-size:13px;color:var(--ink-80)}
.price-card li b{color:var(--ink);font-weight:600}
.price-card .btn{display:block;width:100%;text-align:center;font-size:16px;background:var(--blue);color:#fff;border-radius:980px;padding:13px;transition:.2s}
.price-card .btn:hover{background:#0077ed}
.price-card .btn2{display:block;width:100%;text-align:center;font-size:14px;color:var(--link);border:1px solid var(--link);border-radius:980px;padding:10px;margin-top:10px}
.price-card .btn2:hover{background:rgba(0,102,204,.06)}
.price-card .note{font-size:11px;color:var(--ink-48);margin-top:14px;line-height:1.55}
.sect{max-width:1024px;margin:0 auto;padding:60px 24px 0}
.sect>.sh{font-size:28px;font-weight:600;letter-spacing:-.4px;margin-bottom:22px}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;max-width:560px}
.cal-grid .wd{text-align:center;font-size:11px;color:var(--ink-48);padding:4px 0;font-weight:600}
.cal-day{aspect-ratio:1;border-radius:10px;background:var(--light);display:grid;place-items:center;font-size:14px;color:var(--ink-80);cursor:default;position:relative}
.cal-day.off{background:#fff;border:1px solid rgba(0,0,0,.06);color:var(--ink-48);opacity:.5}
.cal-day.ok{background:rgba(48,209,88,.14);color:#1a7f37;cursor:pointer}
.cal-day.ok:hover{background:rgba(48,209,88,.25)}
.cal-day.warn{background:rgba(255,159,10,.14);color:#9a6200;cursor:pointer}
.cal-day.sel{outline:2px solid var(--blue);outline-offset:1px}
.cal-legend{display:flex;gap:18px;margin-top:14px;font-size:12px;color:var(--ink-48)}
.cal-legend i{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:6px}
.cal-legend .l1 i{background:rgba(48,209,88,.5)}
.cal-legend .l2 i{background:rgba(255,159,10,.5)}
.cal-legend .l3 i{background:var(--light)}
.cal-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.cal-head b{font-size:16px;font-weight:600}
.rv-list{display:grid;gap:16px;max-width:760px}
.rv-item{background:var(--light);border-radius:12px;padding:22px 24px}
.rv-item .rh{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.rv-item .rh b{font-size:14px;font-weight:600}
.rv-item .rh span{font-size:12px;color:var(--ink-48)}
.rv-item p{font-size:14px;color:var(--ink-80);line-height:1.6;margin-top:10px}
.rv-item .rstars{color:var(--ink);font-size:12px;letter-spacing:2px}
.rec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.rec-card{cursor:pointer}
.rec-card .rim{aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:#e8e8ed;position:relative}
.rec-card img{width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .5s}
.rec-card:hover img{transform:scale(1.04)}
.rec-card .rst{position:absolute;top:10px;left:10px;font-size:11px;color:#fff;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);border-radius:980px;padding:4px 10px}
.rec-card h3{font-size:15px;font-weight:600;margin-top:10px;display:flex;justify-content:space-between;align-items:baseline}
.rec-card h3 span{font-size:12px;color:var(--ink-48);font-weight:400}
.rec-card .rp{font-size:13px;color:var(--ink-48);margin-top:2px}
.rec-card .rp b{color:var(--ink);font-weight:600;font-size:14px}
.mob-book{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-top:1px solid rgba(0,0,0,.08);padding:12px 18px;align-items:center;gap:14px}
.mob-book .mp{flex:1}
.mob-book .mp b{font-size:18px;font-weight:600}
.mob-book .mp span{font-size:11px;color:var(--ink-48);display:block}
.mob-book .btn{font-size:14px;background:var(--blue);color:#fff;border-radius:980px;padding:11px 24px;white-space:nowrap}

.cloud{background:var(--light);padding:20px 24px;border-bottom:1px solid rgba(0,0,0,.06)}
.cloud-inner{max-width:1024px;margin:0 auto;display:flex;gap:9px;flex-wrap:wrap}
.cloud a{font-size:13px;color:var(--ink-80);background:#fff;border-radius:980px;padding:7px 15px;transition:.15s}
.cloud a:hover{background:var(--ink);color:#fff}
.cloud a.on{background:var(--blue);color:#fff;font-weight:600}
.cloud .more{color:var(--link);align-self:center;font-size:13px;margin-left:auto}
.ly-tags{margin-top:52px;display:block;padding-top:0}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:24px}
.sec-h h2{font-size:28px;font-weight:600;letter-spacing:-.4px}
.sec-h .more{font-size:14px;color:var(--link)}
.sec-h .more::after{content:" ›"}

footer{background:var(--light);color:var(--ink-80);font-size:12px;padding:40px 24px 60px;border-top:1px solid rgba(0,0,0,.08);margin-top:80px}
body:has(.gal-row) footer{border-top:none}
.foot-inner{max-width:1024px;margin:0 auto}
.foot-note{padding-bottom:16px;border-bottom:1px solid rgba(0,0,0,.12);line-height:1.5;color:var(--ink-48)}
.foot-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:28px 0;border-bottom:1px solid rgba(0,0,0,.12)}
.foot-cols h5{font-size:12px;color:var(--ink);margin-bottom:10px;font-weight:600}
.foot-cols ul{list-style:none;display:grid;gap:8px}
.foot-cols a{color:var(--ink-80)}
.foot-cols a:hover{text-decoration:underline;color:var(--ink)}
.foot-base{display:flex;justify-content:space-between;gap:12px;padding-top:18px;color:var(--ink-48);flex-wrap:wrap}
.foot-base a{border-right:1px solid rgba(0,0,0,.2);padding-right:10px;margin-right:10px}
.foot-base a:last-child{border:none}

.rv{opacity:1}
.rv.in{animation:rvIn .7s cubic-bezier(.2,.6,.2,1) both}
@keyframes rvIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

@media(max-width:1024px){
  .nav-links{display:none}
  .page-head h1{font-size:40px}
  .gal-head h1{font-size:44px}
  .band-head h2,.steps-sec h2{font-size:34px}
  .board{grid-template-columns:repeat(2,1fr)}
  .budget-grid,.safe-grid,.rv-grid,.steps-grid{grid-template-columns:repeat(2,1fr)}
  .city-grid{grid-template-columns:repeat(2,1fr)}
  .masonry{columns:3 200px}
  .trust{padding:26px 20px}
  .cmp-row{grid-template-columns:110px 1fr 1fr}
  .foot-cols{grid-template-columns:repeat(2,1fr)}
  .join h2{font-size:40px}
  .fb-inner{grid-template-columns:repeat(2,1fr)}
  .reset{justify-self:start}
  .grid{grid-template-columns:repeat(2,1fr)}
  .prow{grid-template-columns:110px 1fr}
  .prow .pright{grid-column:2;flex-direction:row;border-left:none;border-top:1px solid rgba(0,0,0,.08);justify-content:space-between;align-items:center}
  .feature{grid-template-columns:1fr}
  .layout,.ly-model,.ly-news,.ly-about{grid-template-columns:1fr}
  .sy-newslist{position:static;grid-template-columns:repeat(2,1fr);grid-column:1;grid-row:auto}
  .sy-news{position:static;order:-1}
  .ly-about .toc{position:static}
  .price-card{position:static}
  .specs{grid-template-columns:repeat(2,1fr)}
  .rec-grid,.mgrid{grid-template-columns:repeat(2,1fr)}
  .rel-grid{grid-template-columns:1fr}
  .pn{grid-template-columns:1fr}
  .pn a:last-child{text-align:left}
  .rp-grid{grid-template-columns:1fr}
  .page-head h1{font-size:36px}
}
@media(max-width:640px){
  .gal-head h1{font-size:34px}
  .band-head h2,.steps-sec h2{font-size:28px}
  .board,.budget-grid,.safe-grid,.rv-grid,.steps-grid,.city-grid,.cmp-row{grid-template-columns:1fr}
  .cmp-row>div{padding:12px 16px}
  .masonry{columns:2 150px}
  .cover img{max-width:100%}
  .foot-cols{grid-template-columns:1fr}
  .join h2{font-size:32px}
  .gal-ctas{flex-direction:column;align-items:center}
  .page-head h1{font-size:32px}
  .grid{grid-template-columns:1fr}
  .prow{grid-template-columns:1fr}
  .prow .ppic{aspect-ratio:16/9}
  .prow .pright{grid-column:1}
  .toolbar{flex-direction:column;align-items:flex-start}
  .aitem{grid-template-columns:1fr}
  .aitem .aim{aspect-ratio:16/9}
  .sy-newslist{grid-template-columns:1fr}
  .info-head h1{font-size:28px}
  .thumbs{grid-template-columns:repeat(4,1fr)}
  .rec-grid{grid-template-columns:repeat(2,1fr)}
  .cal-grid{max-width:100%}
  .mgrid{gap:12px}
}
@media(max-width:1024px){
  .mob-book{display:flex}
  body:has(.mob-book) footer{padding-bottom:100px}
}

.scenes{background:var(--light);padding:96px 24px}
.scenes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.scene-card{background:#fff;border-radius:12px;padding:30px 26px;transition:box-shadow .3s}
.scene-card:hover{box-shadow:var(--shadow-card)}
.scene-card .ico{width:44px;height:44px;border-radius:12px;background:var(--light);display:grid;place-items:center;color:var(--blue);margin-bottom:16px}
.scene-card h3{font-size:18px;font-weight:700;margin-bottom:8px}
.scene-card p{font-size:13px;color:var(--ink-80);line-height:1.55;margin-bottom:14px}
.scene-card a{font-size:13px;color:var(--link)}
.scene-card a::after{content:" ›"}
.agents{background:#fff;padding:96px 24px}
.agents-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.agent-card{background:var(--light);border-radius:14px;padding:40px 36px;transition:box-shadow .3s}
.agent-card:hover{box-shadow:var(--shadow-card)}
.agent-card h3{font-size:24px;font-weight:600;letter-spacing:-.3px;margin-bottom:12px}
.agent-card p{font-size:14px;color:var(--ink-80);line-height:1.6;margin-bottom:18px}
.agent-card ul{list-style:none;margin-bottom:20px}
.agent-card li{font-size:13px;color:var(--ink-80);padding:6px 0 6px 22px;position:relative}
.agent-card li::before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:700}
.agent-card .tlink{font-size:14px}
@media (max-width:1024px){.scenes-grid{grid-template-columns:repeat(2,1fr)}.agents-grid{grid-template-columns:1fr}}
@media (max-width:640px){.scenes-grid{grid-template-columns:1fr}}

/* 链接规范：a 只包裹标题文字，不做整卡拉伸跳转 */
.lnk{color:inherit}
.mcard .lnk:hover,.bcard .lnk:hover,.ccard .lnk:hover,.tpill .lnk:hover{color:var(--link)}
.gcard .lnk:hover,.pin .lnk:hover{color:var(--link-dark)}
.fcard .fa a{color:var(--link)}
.fcard .fa a:hover{text-decoration:underline}

/* 按类型挑模特 */
.types{background:#fff;padding:96px 24px}
.type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.tpill{background:var(--light);border-radius:12px;padding:24px 20px;transition:box-shadow .3s}
.tpill:hover{box-shadow:var(--shadow-card)}
.tpill .lnk{font-size:16px;font-weight:600;letter-spacing:.2px}
.tpill p{font-size:12px;color:var(--ink-48);margin-top:8px;line-height:1.55}
@media (max-width:1024px){.type-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.type-grid{grid-template-columns:repeat(2,1fr)}.tpill{padding:18px 16px}}

/* 移动端汉堡导航 */
.nav-burger{display:none;width:34px;height:34px;border-radius:8px;position:relative}
.nav-burger span{position:absolute;left:7px;right:7px;height:2px;background:#fff;border-radius:2px;transition:.25s}
.nav-burger span:nth-child(1){top:10px}
.nav-burger span:nth-child(2){top:16px}
.nav-burger span:nth-child(3){top:22px}
.nav-burger.open span:nth-child(1){top:16px;transform:rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){top:16px;transform:rotate(-45deg)}
.nav-drawer{display:none;position:fixed;top:48px;left:0;right:0;z-index:49;background:rgba(0,0,0,.94);backdrop-filter:saturate(180%) blur(20px);padding:8px 0 14px;flex-direction:column}
.nav-drawer.open{display:flex}
.nav-drawer a{color:rgba(255,255,255,.85);font-size:15px;padding:13px 22px;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-drawer a:hover,.nav-drawer a.on{color:#fff}
.nav-drawer .d-cta{margin:10px 22px 0;background:var(--blue);color:#fff;text-align:center;border-radius:980px;padding:11px 0;border-bottom:none}
@media (max-width:1024px){
  .nav-burger{display:block}
  .nav-cta{display:none}
  body{padding-bottom:60px}
}

/* 移动端底部 QQ 联系条 */
.m-qqbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;justify-content:center;background:rgba(20,20,22,.96);backdrop-filter:saturate(180%) blur(16px);border-top:1px solid rgba(255,255,255,.12);padding:9px 16px calc(9px + env(safe-area-inset-bottom))}
.m-qqbar .qq-btn{display:inline-flex;align-items:center;gap:8px;background:var(--blue);color:#fff;border:none;border-radius:980px;padding:10px 26px;font-size:14px;font-weight:700;cursor:pointer}
.m-qqbar .qq-btn .qqico{width:22px;height:22px;border-radius:7px;background:rgba(255,255,255,.18);display:grid;place-items:center;font-size:11px;flex-shrink:0}
.qq-mask{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.55);display:none;align-items:flex-end;justify-content:center}
.qq-mask.open{display:flex}
.qq-card{width:86%;max-width:330px;background:#fff;border-radius:18px;padding:18px 20px 20px;margin-bottom:calc(14px + env(safe-area-inset-bottom));position:relative;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.qq-card-head{display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:700;color:#1d1d1f}
.qq-card-head .qq-x{background:none;border:none;font-size:16px;color:#999;cursor:pointer;padding:2px 6px}
.qq-num{margin:16px 0 14px;text-align:center;font-size:26px;font-weight:800;letter-spacing:1px;color:#1d1d1f}
.qq-copy{display:block;width:100%;border:none;border-radius:980px;background:var(--ink,#1d1d1f);color:#fff;font-size:14px;font-weight:700;padding:11px 0;cursor:pointer}
.qq-copy:active{opacity:.85}
@media (max-width:1024px){.m-qqbar{display:flex}}

/* 攻略调用（行业攻略文章） */
.journal{background:#fff;padding:96px 24px}
.jlist{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.jrow{display:block;background:var(--light);border-radius:12px;padding:22px 24px}
.jrow h3{font-size:17px;font-weight:600;letter-spacing:-.2px}
.jrow h3 a:hover{color:var(--link)}
.jrow p{font-size:13px;color:var(--ink-80);margin-top:8px;line-height:1.55;max-width:none}
.jrow .jmeta{display:block;margin-top:12px;font-size:12px;color:var(--ink-48)}
@media(max-width:900px){.jlist{grid-template-columns:1fr}}

/* 活动案例 */
.cases{background:var(--light);padding:96px 24px}
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.case-card{background:#fff;border-radius:12px;overflow:hidden;transition:box-shadow .3s}
.case-card:hover{box-shadow:var(--shadow-card)}
.case-card .cim{display:block;aspect-ratio:16/9;overflow:hidden;background:#e8e8ed}
.case-card .cim img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.case-card:hover .cim img{transform:scale(1.03)}
.case-card .cbody{padding:20px 22px 24px}
.case-card h3{font-size:16px;font-weight:600;line-height:1.45;letter-spacing:-.2px}
.case-card h3 a{color:inherit}
.case-card h3 a:hover{color:var(--link)}
.case-card .cbody p{font-size:13px;color:var(--ink-80);margin-top:8px;line-height:1.55}
.case-card .cm{display:block;font-size:12px;color:var(--ink-48);margin-top:12px}
@media(max-width:1024px){.cases-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.cases-grid{grid-template-columns:1fr}}

/* APP 下载 */
.app{background:#fff;padding:96px 24px}
.app-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.app-shot{max-width:300px;margin:0 auto}
.app-shot img{width:100%;border-radius:28px;box-shadow:var(--shadow-card)}
.app-k{font-size:15px;font-weight:600;letter-spacing:.5px;color:var(--link)}
.app-body h2{font-size:40px;font-weight:600;letter-spacing:-.8px;line-height:1.1;margin-top:14px}
.app-body .ad{font-size:15px;color:var(--ink-80);line-height:1.6;margin-top:14px;max-width:46ch}
.app-btns{display:flex;gap:14px;margin-top:26px;flex-wrap:wrap}
.app-btn{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:#fff;border-radius:12px;padding:12px 22px;font-size:14px;transition:.2s}
.app-btn:hover{background:#000}
.app-note{font-size:12px;color:var(--ink-48);margin-top:14px}
@media(max-width:1024px){.app-inner{grid-template-columns:1fr;gap:30px}}
@media(max-width:640px){.app-body h2{font-size:30px}}

/* FAQ 序号计数器 + 问题链接 */
.faq-list{counter-reset:fn}
.fcard .fn::before{counter-increment:fn;content:"0" counter(fn)}
.fcard .fq a{color:inherit}
.fcard .fq a:hover{color:var(--link)}

/* 行业资讯（深色卡片，区别于攻略行样式） */
.newsfeed{background:var(--dark);padding:96px 24px}
.newsfeed .band-head h2{color:#fff}
.newsfeed .band-head p{color:rgba(255,255,255,.65)}
.nf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.nf-card{background:var(--dark-1);border-radius:12px;padding:22px 24px;display:flex;gap:18px;align-items:flex-start;transition:background .25s}
.nf-card:hover{background:var(--dark-3)}
.nf-date{flex-shrink:0;width:58px;border-radius:10px;background:var(--blue);color:#fff;text-align:center;padding:8px 0 9px}
.nf-date b{display:block;font-size:20px;font-weight:700;line-height:1.1}
.nf-date span{display:block;font-size:10px;opacity:.8;margin-top:2px}
.nf-body{min-width:0}
.nf-body h3{font-size:15px;font-weight:600;line-height:1.45}
.nf-body h3 a{color:#fff}
.nf-body h3 a:hover{color:var(--link-dark)}
.nf-body p{font-size:12px;color:rgba(255,255,255,.55);margin-top:6px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:1024px){.nf-grid{grid-template-columns:1fr}}

/* 通用列表页（faq/cases/info） */
.list-page{max-width:900px;margin:0 auto;padding:56px 24px}
.list-page .alist{display:grid;gap:4px;margin-bottom:40px}
.aim-t{display:grid;place-items:center;background:rgba(0,113,227,.08);border-radius:8px}
.aim-t span{color:var(--link);font-size:13px;font-weight:600}
