:root{--accent:#0e7490;--ink:#182230;--muted:#5b6675;--bg:#f7f9fc;--card:#fff;--line:#e3e9f2;--gold:#b7791f}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,'Segoe UI',Roboto,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
header.top{background:var(--ink);color:#fff;padding:.9rem 1.2rem;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
header.top .brand{font-weight:800;font-size:19px;color:#fff}header.top .tag{opacity:.75;font-size:13px}
header.top .add{margin-left:auto;background:var(--accent);color:#fff;padding:8px 14px;border-radius:9px;font-weight:700;font-size:14px}
.hero{background:linear-gradient(135deg,var(--accent),#1c3d5a);color:#fff;text-align:center;padding:3rem 1.2rem}
.hero h1{margin:0 0 6px;font-size:clamp(1.6rem,4.5vw,2.5rem)}.hero p{margin:0 0 18px;opacity:.92}
.hero input{width:min(560px,92%);padding:13px 18px;border-radius:12px;border:0;font:inherit}
.picker{display:flex;gap:10px;justify-content:center;align-items:flex-end;flex-wrap:wrap;
 background:rgba(255,255,255,.14);border-radius:16px;padding:16px 18px;width:min(720px,94%);margin:0 auto 14px}
.picker .pk{text-align:left}.picker label{display:block;font-size:12px;opacity:.85;margin-bottom:4px}
.picker select{padding:11px 12px;border-radius:10px;border:0;font:inherit;min-width:190px}
.picker .go{background:#fff;color:var(--accent);font-weight:800;border:0;border-radius:10px;
 padding:11px 20px;font:inherit;cursor:pointer}
.card .quote{margin-top:8px;font-size:12.5px;color:var(--muted);font-style:italic;line-height:1.45}
.card .quote span{font-style:normal}
.lphoto{width:100%;border-radius:12px;border:1px solid var(--line);margin:6px 0 10px}
.hl{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}
.hl span{background:#eef6f5;border:1px solid #cfe5e2;color:#125e56;border-radius:99px;
 padding:5px 12px;font-size:13px;font-weight:600}
.lquote{background:#f2f7ff;border:1px solid #d5e3f8;border-radius:14px;padding:14px 18px;margin-top:14px}
.lquote h3{margin:0 0 6px;font-size:14.5px}.lquote p{margin:0;font-style:italic}
.lquote .qa{color:var(--muted);font-size:13px;margin-top:6px}
main{max-width:1080px;margin:0 auto;padding:1.6rem 1.2rem}
.crumbs{max-width:1080px;margin:0 auto;padding:1rem 1.2rem 0;font-size:13.5px;color:var(--muted)}
.crumbs a{color:var(--muted)}.crumbs b{color:var(--ink);font-weight:600}
main h1{font-size:clamp(1.3rem,3vw,1.9rem);margin:.4rem 0 4px}
.sub{color:var(--muted);margin:0 0 20px;font-size:14.5px}
h2.cat{margin:1.8rem 0 .7rem;font-size:1.15rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;position:relative;display:block;color:var(--ink)}
.card:hover{border-color:var(--accent);text-decoration:none;box-shadow:0 4px 18px rgba(20,40,80,.08)}
.card h3{margin:0 0 4px;font-size:15.5px}.card .meta{color:var(--muted);font-size:13px}
.card .stars{color:#d69e2e;font-size:13px}
.card.premium{border:2px solid var(--gold);box-shadow:0 4px 20px rgba(183,121,31,.12)}
.card.premium h3{padding-right:88px}
.card.hub h3{font-size:17px}.card.hub .n{color:var(--accent);font-weight:800}
.badge{position:absolute;top:10px;right:10px;background:var(--gold);color:#fff;font-size:11px;font-weight:700;padding:3px 9px;border-radius:99px}
.hubtxt{max-width:820px;margin:4px 0 18px;color:#2c3a4d;font-size:15px}
.hubtxt p{margin:0 0 10px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}
.chip{background:var(--card);border:1px solid var(--line);border-radius:99px;padding:5px 14px;font-size:13.5px;color:var(--ink)}
.chip:hover{border-color:var(--accent);text-decoration:none}
.lst{max-width:760px;margin:0 auto;padding:.4rem 1.2rem 1.6rem}
.lst .box{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;position:relative}
.lst h1{margin:.2rem 0 2px}.lst .cat{color:var(--muted);margin:0 0 12px}
.fact{margin:.35rem 0}.fact b{display:inline-block;min-width:86px;color:var(--muted);font-weight:600}
.claim{background:#fff8e7;border:1px solid #ecd8a7;border-radius:14px;padding:16px 18px;margin-top:16px}
.claim h3{margin:0 0 6px}.claim p{margin:0 0 10px;font-size:14px;color:#584a25}
.btn{display:inline-block;background:var(--accent);color:#fff;font-weight:700;padding:10px 18px;border-radius:10px;border:0;font:inherit;cursor:pointer}
.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}
.cform{display:none;margin-top:12px;gap:8px}
.cform.open{display:grid}
.cform input,.cform textarea{padding:10px 12px;border:1px solid var(--line);border-radius:9px;font:inherit;width:100%}
footer{border-top:1px solid var(--line);color:var(--muted);text-align:center;padding:1.6rem 1.2rem;font-size:13.5px;margin-top:2.4rem}
.chatwrap{margin-top:16px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.chatwrap iframe{width:100%;height:520px;border:0}
#allq{display:none}
@media(max-width:600px){.hero{padding:2.2rem 1rem}}

.top .up{margin-left:auto;margin-right:10px;color:#fff;opacity:.9;text-decoration:none;font-size:14px}
.top .up:hover{opacity:1;text-decoration:underline}
.mapbox{height:340px;border-radius:14px;margin:6px 0 18px;border:1px solid #dbe4e8;z-index:0}
.lst .mapbox{height:240px}
.card.biz{padding-top:0;overflow:hidden}
.card .art{height:104px;margin:0 -16px 10px;display:grid;place-items:center;overflow:hidden;position:relative}
.card .art img{width:100%;height:100%;object-fit:cover}
.card .art span{font-size:44px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}
.card .art.g0{background:linear-gradient(120deg,#0e7490,#155e75)}
.card .art.g1{background:linear-gradient(120deg,#1d4ed8,#0e7490)}
.card .art.g2{background:linear-gradient(120deg,#047857,#0e7490)}
.card .art.g3{background:linear-gradient(120deg,#7c3aed,#1d4ed8)}
.card .art.g4{background:linear-gradient(120deg,#b45309,#9a3412)}
.card .art.g5{background:linear-gradient(120deg,#334155,#0f172a)}
.hubtxt{max-width:820px;margin:4px 0 18px;color:#2c3a4d;font-size:15px}
.hubtxt p{margin:0 0 10px}
.faq{max-width:820px;margin:26px 0 8px}
.faq details{background:#fff;border:1px solid #dbe4e8;border-radius:10px;padding:12px 16px;margin-bottom:8px}
.faq summary{cursor:pointer;font-weight:600;font-size:14.5px}
.faq p{margin:10px 0 2px;color:#2c3a4d;font-size:14.5px}
.leadband{background:linear-gradient(120deg,var(--accent),#1c3d5a);color:#fff;border-radius:16px;
 padding:20px 22px;margin:14px 0 20px}
.leadband h2{margin:0 0 4px;font-size:1.25rem}.leadband p{margin:0 0 12px;opacity:.92;font-size:14.5px}
.leadband .btn{background:#fff;color:var(--accent)}
.leadband .btn.call{font-size:16px}.leadband .or{margin:0 10px;opacity:.85}
.leadform{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:8px;margin-top:12px}
.leadform input{padding:11px 12px;border-radius:9px;border:0;font:inherit}
@media(max-width:760px){.leadform{grid-template-columns:1fr}}
