
:root{--baltic:#1B5E7B;--storm:#0E3F55;--amber:#CB8A0E;--amber-w:#FFF6E0;--bronze:#B07708;--sand:#F8F4ED;--ink:#1A1D2B;--muted:#566170}
*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Montserrat',system-ui,sans-serif;color:var(--ink);background:var(--sand);line-height:1.6}
a{color:var(--baltic)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:10;flex-wrap:wrap}
.brand{font-weight:800;text-decoration:none;color:var(--storm);font-size:18px}.brand span{color:var(--amber);margin-left:4px}
.topnav a{margin-left:14px;text-decoration:none;font-weight:600;font-size:14px;color:var(--muted)}.topnav a:hover{color:var(--baltic)}
.wrap{max-width:860px;margin:0 auto;padding:22px 18px 40px}
.crumb{font-size:13px;color:var(--muted);margin-bottom:10px}.crumb a{text-decoration:none}
h1{font-size:clamp(26px,5vw,38px);font-weight:800;line-height:1.12;letter-spacing:-.01em;margin-bottom:14px}
h1::after{content:" ";}
h2{font-size:clamp(20px,3.5vw,26px);font-weight:700;margin:30px 0 12px}
h3{font-size:17px;font-weight:700}
.lead{font-size:18px;color:#33404d;margin-bottom:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:18px}
.poi{background:#fff;border:1px solid #eee;border-radius:16px;padding:18px;transition:transform .15s,box-shadow .15s}
.poi:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(14,63,85,.1)}
.poi .addr{color:var(--muted);font-size:13px;margin:4px 0 8px}.poi p{font-size:14.5px;color:#3a4650}
.star{color:var(--amber);font-size:14px;font-weight:700}
.tbl{width:100%;border-collapse:collapse;margin:8px 0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(14,63,85,.06)}
.tbl th,.tbl td{padding:10px 12px;text-align:left;border-bottom:1px solid #eef0f2;font-size:14px}.tbl th{background:var(--amber-w);color:var(--bronze)}
.callout{background:var(--amber-w);border-left:4px solid var(--amber);padding:12px 16px;border-radius:10px;margin:16px 0}
.bullets{margin:8px 0 8px 20px}.bullets li{margin:6px 0}
.filters a{display:inline-block;background:#fff;border:1px solid #e3e3e3;border-radius:999px;padding:6px 14px;margin:4px 6px 4px 0;text-decoration:none;font-size:14px;font-weight:600}
.faq{margin-top:30px}.faq details{background:#fff;border:1px solid #eee;border-radius:12px;padding:14px 16px;margin:8px 0}
.faq summary{font-weight:700;cursor:pointer}.faq p{margin-top:8px;color:#3a4650}
.install{margin-top:34px;background:linear-gradient(135deg,var(--baltic),var(--storm));color:#fff;border-radius:20px;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.install-txt b{font-size:18px;display:block}.install-txt span{opacity:.9;font-size:14px}
.btn-install{background:var(--amber);color:#fff;font-weight:700;text-decoration:none;padding:13px 22px;border-radius:13px;white-space:nowrap}
.foot{text-align:center;color:var(--muted);font-size:13px;padding:30px 18px 50px}.foot .cats{font-size:18px;letter-spacing:5px;margin-bottom:8px}.foot a{text-decoration:none}
.appbanner{position:fixed;bottom:0;left:0;right:0;background:var(--storm);color:#fff;display:flex;align-items:center;gap:10px;padding:10px 14px;font-size:13px;z-index:50}
.appbanner span{flex:1}.appbanner a{background:var(--amber);color:#fff;text-decoration:none;font-weight:700;padding:7px 14px;border-radius:10px}
.appbanner button{background:none;border:none;color:#fff;font-size:16px;cursor:pointer}
