:root{--ink:#183238;--dark:#063e3a;--teal:#078b80;--teal-soft:#e5f4ef;--coral:#ef765e;--sand:#f7f1e8;--surface:#fff;--canvas:#f4f7f3;--line:#e2eae5;--muted:#637b7c;--shadow:0 16px 45px rgba(15,55,49,.07)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,textarea{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.5}
button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #55b9af;outline-offset:2px}
img{max-width:100%}
.loading{min-height:100dvh;display:grid;place-items:center;font-size:38px;font-weight:900;letter-spacing:-2px;color:var(--dark)}
.loading span,.brand-period{color:var(--coral)}
.app-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100dvh;max-width:1600px;margin:auto}
.side-nav{position:sticky;top:0;height:100dvh;background:#fff;border-right:1px solid var(--line);padding:28px 18px 20px;display:flex;flex-direction:column;gap:25px}
.brand{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--dark);padding:4px 8px;text-align:left;white-space:nowrap}
.brand-mark{display:block;width:40px;height:40px;flex:none;border-radius:13px;box-shadow:0 8px 16px #07574b2b}
.brand-copy{display:flex;flex-direction:column;min-width:0}
.brand-line{display:flex;align-items:center;gap:7px}
.brand-word{font-size:25px;font-weight:850;letter-spacing:-1.6px;line-height:1}
.brand-country{display:inline-flex;align-items:center;gap:5px;border:1px solid #d7e9d0;border-radius:6px;background:#edf5e4;color:#216348;padding:4px 6px 3px;font-size:12px;font-weight:900;letter-spacing:.05em;line-height:1}
.brand-country-gem{display:block;width:7px;height:7px;background:#e6b740;border-radius:1px;transform:rotate(45deg)}
.brand-sub{font-size:8px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);margin-top:4px}
.side-links{display:flex;flex-direction:column;gap:5px}
.nav-link{width:100%;display:flex;align-items:center;gap:13px;background:transparent;border:0;border-radius:13px;color:#526c6c;padding:12px 14px;text-align:left;font-weight:700;font-size:14px}
.nav-link:hover{background:#f1f7f3;color:var(--dark)}
.nav-link.active{background:var(--teal-soft);color:var(--dark)}
.nav-link svg,.icon-button svg,.chip svg,.action-button svg,.bottom-link svg,.inline-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}
.nav-link.active svg{color:var(--teal)}
.new-post{background:var(--dark);color:#fff;border:0;border-radius:13px;padding:14px 16px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;font-weight:800;box-shadow:0 9px 22px #063e3a2a}
.new-post:hover,.primary-button:hover{background:#08645d}
.new-post svg{width:19px;height:19px;stroke:currentColor;stroke-width:2;fill:none}
.side-bottom{margin-top:auto;display:flex;flex-direction:column;gap:11px}
.side-region{border:1px solid var(--line);border-radius:15px;padding:12px;background:#fbfdfb;text-align:left;color:var(--ink)}
.side-region small{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}
.side-region strong{display:flex;align-items:center;justify-content:space-between;font-size:12px}
.side-region svg,.post-menu svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}
.side-note{font-size:11px;line-height:1.45;color:#748b89;padding:0 5px}
.workspace{min-width:0;padding:0 clamp(18px,3.2vw,48px) 80px}
.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:30px;gap:16px}
.topbar-title{font-size:15px;font-weight:800;letter-spacing:-.2px}
.topbar-right{display:flex;align-items:center;gap:12px}
.demo-pill{display:inline-flex;align-items:center;gap:7px;border-radius:99px;padding:8px 11px;background:#fceee9;color:#a84e3b;font-size:11px;font-weight:800;white-space:nowrap}
.demo-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--coral)}
.icon-button{height:39px;width:39px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:#3d5b5b}
.icon-button:hover{border-color:#a6cdc2;background:#f7fcf9}
.avatar{display:grid;place-items:center;border-radius:50%;background:var(--coral);color:#fff;font-weight:800;flex:none;text-transform:uppercase}
.avatar.sm{width:35px;height:35px;font-size:11px}.avatar.md{width:42px;height:42px;font-size:12px}.avatar.lg{width:80px;height:80px;font-size:24px;border:4px solid white;box-shadow:0 6px 18px #0b544729}
.content-grid{display:grid;grid-template-columns:minmax(0,700px) minmax(230px,290px);gap:clamp(24px,3vw,42px);justify-content:center;align-items:start}
.primary-column{min-width:0}.right-rail{min-width:0;position:sticky;top:24px;display:flex;flex-direction:column;gap:17px}
.eyebrow{color:var(--teal);text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:850;margin:0 0 10px}
h1,h2,h3,p{margin-top:0}
.page-title{font-size:clamp(29px,3vw,39px);line-height:1.1;letter-spacing:-1.45px;margin-bottom:9px;color:#132d31}
.page-subtitle{color:var(--muted);font-size:14px;line-height:1.55;margin-bottom:23px}
.feed-intro{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.location-button{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #cee5da;border-radius:12px;padding:10px 12px;color:#176b61;font-weight:800;font-size:12px;white-space:nowrap}
.location-button svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}
.scope-tabs{display:grid;grid-template-columns:repeat(3,1fr);background:#e7efea;padding:5px;border-radius:15px;gap:5px;margin-bottom:20px}
.scope-tab{border:0;border-radius:11px;background:transparent;color:#5d7775;font-weight:800;padding:11px 5px;font-size:13px}
.scope-tab[aria-selected=true]{background:#fff;color:var(--dark);box-shadow:0 3px 10px #0b4a3f16}
.quick-compose{width:100%;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);text-align:left;padding:17px 18px;margin-bottom:21px;color:var(--muted)}
.quick-compose:hover{border-color:#9dcfc1}
.quick-main{display:flex;align-items:center;gap:12px;font-size:14px}
.quick-actions{display:flex;gap:22px;border-top:1px solid var(--line);margin-top:15px;padding-top:12px;font-size:12px;font-weight:750;color:#488078}
.quick-actions span{display:flex;align-items:center;gap:5px}
.quick-actions svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 1px 14px}.section-heading h2{font-size:18px;letter-spacing:-.5px;margin:0}.section-heading small{color:var(--muted);font-size:11px}
.post-card{background:#fff;border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow);overflow:hidden;margin-bottom:18px}
.post-head{display:flex;align-items:center;gap:10px;padding:17px 18px 13px}.post-author{font-size:13px;font-weight:850;color:#193539}.post-meta{font-size:11px;color:var(--muted);margin-top:3px}.post-menu{margin-left:auto;border:0;background:transparent;color:#78908e;font-size:23px;line-height:1;padding:0 5px}
.post-body{padding:0 18px 14px}.post-title{font-size:17px;line-height:1.35;letter-spacing:-.3px;margin:2px 0 8px;font-weight:800}.post-copy{font-size:13px;line-height:1.55;color:#405c5d;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.post-label{display:inline-block;background:#eaf6f0;color:#168077;border-radius:8px;padding:5px 8px;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px}.post-label.ad{background:#fff0e8;color:#b45b40}.post-label.notice{background:#edf0fc;color:#6565a1}
.post-image{display:block;width:100%;max-height:430px;object-fit:cover;background:#e1ece5}
.post-footer{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:11px 18px;color:#587372}
.action-button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:inherit;font-size:12px;font-weight:750;padding:5px 0}.action-button:hover,.action-button.on{color:var(--teal)}.action-button.on svg{fill:#d9f1e9}
.post-footer .spacer{margin-left:auto}
.rail-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.rail-card h3{font-size:15px;margin:0 0 8px}.rail-card p{font-size:12px;color:var(--muted);line-height:1.5;margin:0}.rail-card .rail-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);font-weight:850;margin-bottom:8px}
.region-visual{height:95px;border-radius:12px;background:linear-gradient(135deg,#d9eee2,#acd2c0 55%,#f1e3c7);position:relative;overflow:hidden;margin:13px 0}.region-visual:before,.region-visual:after{content:"";position:absolute;border-radius:50%;background:#ffffff74}.region-visual:before{width:180px;height:75px;left:-25px;bottom:-30px}.region-visual:after{width:150px;height:90px;right:-30px;top:-50px}.region-visual svg{position:absolute;left:42%;top:29%;width:39px;height:39px;stroke:#0e7e73;fill:#fff;stroke-width:1.5}
.text-button{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:var(--teal);font-weight:850;font-size:12px;padding:0}.text-button:hover{text-decoration:underline}.text-button svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}
.club-mini{display:flex;align-items:center;gap:10px;margin:15px 0}.club-mini img{width:55px;height:55px;object-fit:cover;border-radius:10px}.club-mini strong{display:block;font-size:12px}.club-mini small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.rail-safety{background:#e1f2e9;border-color:#d3e9de}.rail-safety strong{color:#0c5f55;font-size:13px}.rail-safety p{margin-top:6px;color:#4a6c65}
.mobile-header,.bottom-nav{display:none}
.info-strip{background:#fff9f3;border:1px solid #f1e1d0;border-radius:13px;padding:12px 14px;font-size:12px;line-height:1.45;color:#7b6550;margin:0 0 18px}.info-strip strong{color:#584234}
.empty-state{background:#fff;border:1px dashed #bfd4c9;border-radius:18px;padding:30px;text-align:center;color:var(--muted);line-height:1.5;font-size:13px}.empty-state strong{display:block;color:var(--dark);font-size:16px;margin:8px 0}.empty-state svg{height:30px;width:30px;stroke:var(--teal);fill:none;stroke-width:1.6}
.search-field{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 15px;margin-bottom:22px}.search-field svg{width:20px;height:20px;stroke:#77908b;fill:none;stroke-width:2}.search-field input{border:0;outline:0;width:100%;height:48px;background:transparent;color:var(--ink)}
.section-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;margin-bottom:18px;box-shadow:var(--shadow)}.section-card h2{font-size:17px;margin-bottom:13px}
.person-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.person-row:first-of-type{border-top:0}.person-info{min-width:0;flex:1}.person-info strong{display:block;font-size:13px}.person-info small{display:block;color:var(--muted);font-size:11px;line-height:1.35;margin-top:3px}
.small-button{border:1px solid #b8d9d0;border-radius:10px;background:#f6fbf8;color:var(--teal);padding:8px 11px;font-size:11px;font-weight:850;white-space:nowrap}.small-button.active{background:var(--teal);color:#fff;border-color:var(--teal)}
.club-hero{position:relative;overflow:hidden;border-radius:18px;background:#14342e;margin-bottom:18px;color:#fff;min-height:245px;display:flex;align-items:flex-end}.club-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.57)}.club-hero-content{position:relative;padding:26px;width:100%}.club-hero .eyebrow{color:#b5eee0}.club-hero h2{font-size:26px;letter-spacing:-.7px;margin:0 0 7px}.club-hero p{margin:0;font-size:13px;line-height:1.5;max-width:530px;color:#e7f3ee}
.club-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.club-controls p{font-size:12px;color:var(--muted);margin:0}.club-post{padding:15px 0;border-top:1px solid var(--line);font-size:13px;line-height:1.45}.club-post strong{display:block;margin-bottom:5px}.club-post:last-child{padding-bottom:0}
.profile-banner{height:130px;border-radius:18px 18px 0 0;background:radial-gradient(circle at 80% 20%,#f8dfcd 0,transparent 27%),linear-gradient(120deg,#c4e4d6,#eaf5e6 60%,#f0dfcd);position:relative;overflow:hidden}.profile-banner:after{content:"";position:absolute;width:300px;height:115px;background:#ffffff5f;border-radius:50%;right:-65px;bottom:-50px;transform:rotate(-15deg)}
.profile-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:17px}.profile-content{padding:0 22px 22px}.profile-top{display:flex;justify-content:space-between;align-items:flex-end;margin-top:-42px;position:relative}.profile-name{font-size:24px;letter-spacing:-.7px;margin:10px 0 5px}.profile-bio{font-size:13px;color:#4a6564;line-height:1.5;margin:12px 0}.profile-stats{display:flex;gap:25px;margin:17px 0 0;color:var(--muted);font-size:11px}.profile-stats strong{display:block;color:var(--ink);font-size:17px}
.settings-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 0;border:0;border-top:1px solid var(--line);background:transparent;text-align:left;color:var(--ink)}.settings-row:first-of-type{border-top:0}.settings-row strong{font-size:13px}.settings-row small{display:block;color:var(--muted);font-size:11px;line-height:1.4;margin-top:4px}.settings-value{font-weight:800;color:var(--teal);font-size:12px;white-space:nowrap}
.switch{width:40px;height:23px;border-radius:99px;background:#d9e4de;position:relative;flex:none;transition:background .2s}.switch:after{content:"";position:absolute;width:17px;height:17px;border-radius:50%;background:#fff;top:3px;left:3px;box-shadow:0 1px 4px #0002;transition:left .2s}.switch.on{background:var(--teal)}.switch.on:after{left:20px}
.privacy-callout{background:#e2f3ec;color:#235b52;border-radius:14px;padding:16px;font-size:12px;line-height:1.55;margin-top:15px}.privacy-callout strong{display:block;margin-bottom:3px}
.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--dark);border:0;color:#fff;border-radius:11px;padding:11px 15px;font-weight:850;font-size:12px}.secondary-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #bcd9cf;background:#fff;color:var(--teal);border-radius:11px;padding:10px 14px;font-weight:850;font-size:12px}.secondary-button:hover{background:#f0f9f4}
.page-bottom{padding:20px 0;color:#839493;font-size:11px;text-align:center}
.feed-count{font-size:11px;color:var(--muted);margin:-8px 0 13px}
.explore-map{height:440px;width:100%;border:1px solid #c5d7ce;border-radius:17px;z-index:1;background:#dcebe2;overflow:hidden;box-shadow:var(--shadow)}
.map-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px}.map-controls .secondary-button{gap:7px}.map-controls .secondary-button svg{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none}.map-controls span{font-size:11px;color:var(--muted);font-weight:700}.map-controls button:disabled{opacity:.65;cursor:wait}
.map-tabs{margin:5px 0 14px}.map-person-avatar{width:36px;height:36px;display:grid;place-items:center;flex:none}.map-person-avatar .avatar{margin:0}
.map-legend{display:flex;gap:15px;flex-wrap:wrap;margin:12px 0 21px;font-size:11px;color:#5b7370;font-weight:700}.map-legend span{display:inline-flex;align-items:center;gap:6px}.legend-dot{display:inline-block;width:11px;height:11px;border-radius:50%}.legend-dot.area{background:#25aa96}.legend-dot.business{background:#ef765e}.legend-dot.event{background:#7b85c3}
.legend-dot.yours{background:#2777c9}.legend-dot.people{background:#9a8bc5}
.map-pin{width:37px;height:37px;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:17px;font-weight:900;box-shadow:0 4px 13px #21493b61}.map-pin.business{background:var(--coral)}.map-pin.event{background:#747bc2}.map-pin.leaflet-div-icon{border:3px solid #fff;background:var(--coral)}.map-pin.event.leaflet-div-icon{background:#747bc2}
.map-popup-button{display:inline-block;border:0;border-radius:7px;background:#0a8175;color:#fff;font-weight:800;font-size:11px;padding:7px 9px;margin-top:7px;cursor:pointer}.leaflet-popup-content{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:12px;line-height:1.45}.leaflet-popup-content strong{font-size:13px}.leaflet-popup-content small{color:#617a76}
.map-result{display:flex;align-items:center;gap:11px;border:1px solid var(--line);background:#fff;padding:12px 14px;border-radius:13px;margin-bottom:9px;box-shadow:0 4px 13px #143a3110}.map-result>div{min-width:0;flex:1}.map-result strong{display:block;font-size:12px}.map-result small{display:block;font-size:10px;color:var(--muted);margin-top:4px;line-height:1.35}.map-result-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;flex:none}.map-result-icon.area{background:#dcf3e9;color:#078b80}.map-result-icon.business{background:#fff0e9;color:#d87458}.map-result-icon.event{background:#ececff;color:#7779b8}.map-result-icon svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.9;fill:none}.map-credit{font-size:10px;color:#798d89;line-height:1.5;margin-top:13px}
.event-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px 20px;margin-bottom:13px;box-shadow:var(--shadow)}.event-date{display:flex;align-items:center;gap:7px;color:#6567a3;font-size:11px;font-weight:850;margin-bottom:10px}.event-date svg,.event-place svg{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none}.event-card h2{font-size:18px;letter-spacing:-.3px;margin:0 0 7px}.event-card p{font-size:12px;color:#526b69;line-height:1.5;margin:0 0 11px}.event-place{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}.event-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:13px;margin-top:15px}.event-actions span{font-size:10px;color:#8c9c99}
.business-offer{background:#fff3eb;border:1px solid #f2ddd0;border-radius:13px;padding:15px;margin:14px 0}.business-offer strong,.business-offer span,.business-offer small{display:block}.business-offer strong{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#ad6149}.business-offer span{font-weight:850;font-size:15px;margin:6px 0}.business-offer small{color:#856d5e;font-size:11px}
dialog{border:0;padding:0;border-radius:20px;width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 28px);box-shadow:0 25px 80px #102c2c5c;color:var(--ink);overflow:auto}dialog::backdrop{background:#092e2bc2;backdrop-filter:blur(3px)}
.modal-head{display:flex;align-items:center;justify-content:space-between;padding:19px 21px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:17px;margin:0}.modal-body{padding:20px 21px 22px}.modal-body p{font-size:12px;color:var(--muted);line-height:1.5}.modal-close{border:0;background:#f3f7f4;color:#526d69;border-radius:50%;width:31px;height:31px;font-size:20px;line-height:1}
.field{display:block;margin:0 0 16px;font-size:12px;font-weight:850}.field input,.field textarea{display:block;width:100%;margin-top:7px;border:1px solid #d6e5de;border-radius:11px;padding:12px 13px;background:#fff;color:var(--ink);font-size:13px;outline:0}.field textarea{min-height:110px;resize:vertical;line-height:1.5}.field input:focus,.field textarea:focus{border-color:#57ada0;box-shadow:0 0 0 3px #bce7d8}
.choice-row{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 18px}.choice-button{border:1px solid #d8e6df;background:#f5f8f5;color:#58746f;padding:9px 11px;border-radius:10px;font-size:11px;font-weight:800}.choice-button.active{background:var(--teal);border-color:var(--teal);color:#fff}
.upload-zone{border:1px dashed #b7d4c7;background:#f8fbf8;border-radius:13px;padding:14px;margin-bottom:17px;font-size:12px;color:#4c766e}.upload-zone input{display:block;width:100%;margin-top:9px;font-size:11px}.upload-preview{display:none;width:100%;max-height:210px;object-fit:cover;border-radius:10px;margin-top:12px}.upload-preview.visible{display:block}
.form-hint{font-size:11px;color:var(--muted);line-height:1.45;margin-top:-9px;margin-bottom:16px}.modal-actions{display:flex;gap:9px;justify-content:flex-end}.modal-actions .primary-button{min-width:115px}
.region-option{width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 14px;margin:0 0 8px;color:var(--ink)}.region-option:hover,.region-option.selected{border-color:var(--teal);background:#f0f9f4}.region-option strong{display:block;font-size:13px}.region-option small{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.comment-list{max-height:250px;overflow:auto;margin:0 0 15px}.comment-item{border-bottom:1px solid var(--line);padding:9px 0;font-size:12px;line-height:1.45}.comment-item strong{display:block;font-size:11px;margin-bottom:2px}.comment-item:last-child{border:0}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--dark);color:#fff;padding:11px 16px;border-radius:11px;box-shadow:0 12px 30px #082b2850;font-size:12px;font-weight:700;z-index:50;transition:opacity .2s,transform .2s;max-width:min(90vw,430px);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1100px){.app-shell{grid-template-columns:205px minmax(0,1fr)}.content-grid{grid-template-columns:minmax(0,700px)}.right-rail{display:none}.workspace{padding-inline:clamp(18px,5vw,52px)}.side-nav{padding-inline:12px}.side-nav .brand-sub{display:none}}
@media(max-width:720px){body{background:#f4f7f3}.app-shell{display:block}.side-nav,.topbar{display:none}.workspace{padding:0 0 calc(76px + env(safe-area-inset-bottom))}.mobile-header{display:flex;position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line);height:64px;align-items:center;justify-content:space-between;padding:0 16px;gap:10px}.mobile-header .brand{padding:0;gap:7px}.mobile-header .brand-mark{width:34px;height:34px;border-radius:11px}.mobile-header .brand-word{font-size:22px}.mobile-header .brand-line{gap:5px}.mobile-header .brand-country{font-size:11px;padding:3px 5px}.mobile-header .brand-country-gem{width:6px;height:6px}.mobile-header .brand-sub{display:none}.mobile-actions{display:flex;gap:8px}.mobile-actions .icon-button{width:35px;height:35px}.content-grid{display:block;padding:22px 15px 0}.feed-intro{display:block}.page-title{font-size:30px;margin-bottom:7px}.page-subtitle{font-size:13px;margin-bottom:14px}.location-button{margin-bottom:18px}.scope-tabs{margin-bottom:15px}.post-card{border-radius:15px}.post-image{max-height:340px}.explore-map{height:390px}.map-result{padding:11px}.map-result .small-button{padding:7px 8px;font-size:10px}.bottom-nav{display:flex;align-items:center;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;z-index:15;height:calc(63px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 22px #173e3214}.bottom-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:57px;height:54px;border:0;background:transparent;color:#80908d;font-size:10px;font-weight:750}.bottom-link.active{color:var(--teal)}.bottom-link svg{width:23px;height:23px}.bottom-link.compose-link{color:var(--dark)}.bottom-link.compose-link .compose-icon{width:35px;height:35px;border-radius:11px;background:var(--dark);display:grid;place-items:center;color:#fff}.bottom-link.compose-link svg{width:20px;height:20px}.quick-compose{padding:15px}.page-bottom{font-size:10px}dialog{position:fixed;bottom:0;margin:0 auto 0;max-height:calc(100dvh - 8px);width:100vw;max-width:none;border-radius:19px 19px 0 0;padding-bottom:env(safe-area-inset-bottom)}.toast{bottom:calc(76px + env(safe-area-inset-bottom))}}
@media(max-width:380px){.content-grid{padding-inline:11px}.post-footer{gap:11px;padding-inline:13px}.action-button{font-size:11px}.post-head,.post-body{padding-inline:14px}.quick-actions{gap:14px;font-size:11px}.demo-pill{font-size:10px;padding:7px 8px}}
.account-button{border:1px solid #c9ded5;border-radius:10px;background:#fff;color:var(--dark);font-size:12px;font-weight:850;padding:9px 12px;white-space:nowrap}.account-button.primary{background:var(--dark);border-color:var(--dark);color:#fff}.account-button:hover{border-color:var(--teal)}
.post-origin{display:inline-block;margin-left:7px;color:#8b9692;font-size:10px;font-weight:750}.post-origin.shared{color:#0c796c}.post-limited{font-size:11px;color:var(--muted);line-height:1.35}
.account-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.account-welcome{padding:27px}.account-welcome h2{font-size:22px}.account-welcome p{font-size:13px;line-height:1.55;color:var(--muted)}.secondary-button.danger{color:#a0423b;border-color:#efc8c4}
.field select{display:block;width:100%;margin-top:7px;border:1px solid #d6e5de;border-radius:11px;padding:12px 13px;background:#fff;color:var(--ink);font-size:13px;outline:0}.field select:focus{border-color:#57ada0;box-shadow:0 0 0 3px #bce7d8}
.form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-check{display:flex;align-items:flex-start;gap:9px;margin:0 0 13px;font-size:12px;line-height:1.45;color:#425c5a}.form-check input{margin:2px 0 0;accent-color:var(--teal)}.form-check a,.section-card a{color:var(--teal);font-weight:800}.form-error{min-height:1px;color:#a9433b!important;font-weight:750}.form-error:empty{display:none}.auth-link{margin-top:17px}
@media(max-width:720px){.post-limited{font-size:10px}.form-two{gap:9px}}

/* Página de apresentação */
.landing-shell{min-height:100dvh;background:#f8faf6;color:var(--ink)}
.landing-nav{max-width:1240px;margin:auto;padding:22px clamp(18px,4vw,48px);display:flex;align-items:center;justify-content:space-between;gap:20px}
.landing-nav .brand{padding:0}.landing-nav .brand-mark{width:44px;height:44px}
.landing-nav-actions,.landing-cta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.landing-text-button{border:0;background:transparent;color:var(--dark);font-weight:800;padding:12px 14px}
.landing-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--dark);color:white;border:1px solid var(--dark);border-radius:13px;padding:13px 20px;font-size:13px;font-weight:850;box-shadow:0 12px 24px #07473e21}
.landing-primary:hover{background:#075f58}.landing-primary.large{font-size:15px;padding:17px 22px}.landing-primary svg,.landing-outline svg{width:17px;height:17px;stroke:currentColor;stroke-width:2;fill:none}
.landing-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:var(--dark);border:1px solid #b9d8ce;border-radius:13px;padding:15px 20px;font-size:13px;font-weight:850}
.landing-outline:hover{background:#eef8f2}
.landing-hero{max-width:1240px;margin:0 auto;padding:65px clamp(18px,4vw,48px) 80px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);gap:clamp(30px,5vw,80px);align-items:center}
.landing-copy{max-width:620px}.landing-kicker{display:flex;align-items:center;gap:9px;color:#087c70;letter-spacing:.12em;font-size:11px;font-weight:900;text-transform:uppercase;margin:0 0 20px}.landing-kicker span{width:8px;height:8px;border-radius:50%;background:var(--coral)}
.landing-copy h1{font-size:clamp(47px,5.1vw,74px);line-height:1.04;letter-spacing:-.065em;color:#082e2c;margin:0 0 24px;font-weight:860}.landing-copy h1 em{font-style:normal;color:#0d9486}
.landing-copy>p:not(.landing-kicker){max-width:540px;font-size:17px;color:#526e69;line-height:1.65;margin:0 0 29px}.landing-trust{display:flex;align-items:center;gap:8px;color:#647f78;font-size:11px;font-weight:750;margin-top:23px}.landing-trust svg{width:17px;height:17px;stroke:#158d78;stroke-width:2;fill:none}
.landing-map-link{display:block;border:0;background:transparent;color:#087c70;font-size:12px;font-weight:850;padding:0;margin-top:16px}
.landing-preview{position:relative;max-width:540px;margin:auto;width:100%;padding:13px 0 20px}.landing-preview:before{content:"";position:absolute;inset:5% -6% 10%;background:radial-gradient(ellipse at center,#b8dfca 0,#d4e9d9 47%,transparent 72%);filter:blur(26px)}
.preview-window{position:relative;background:#fff;border:1px solid #d8e8df;border-radius:26px;padding:15px;box-shadow:0 30px 70px #0b4a3b24;transform:rotate(2deg)}.preview-top{display:flex;align-items:center;gap:8px;color:#1e3c36;font-size:12px;padding:3px 7px 14px}.preview-dot{width:8px;height:8px;border-radius:50%;background:#10a58a}.preview-menu{margin-left:auto;font-size:23px;line-height:0;color:#90a9a1}
.preview-map{height:330px;border-radius:19px;background:linear-gradient(125deg,#dcebdc 0 32%,#e9f0e7 32% 52%,#d7ebdf 52% 100%);position:relative;overflow:hidden}.preview-map:before{content:"";position:absolute;width:540px;height:100px;background:#b7d8e3;transform:rotate(-38deg);left:-80px;top:150px;border-radius:50%}.preview-road{position:absolute;background:#fff9e7;border:5px solid #f1e3c6;opacity:.85;border-radius:80px;z-index:1}.road-one{width:750px;height:30px;left:-150px;top:80px;transform:rotate(30deg)}.road-two{width:580px;height:25px;left:-80px;top:245px;transform:rotate(-25deg)}.road-three{width:28px;height:500px;left:160px;top:-70px;transform:rotate(12deg)}
.preview-area{position:absolute;z-index:2;top:70px;left:27%;width:230px;height:230px;border-radius:50%;background:#09a48d29;border:2px solid #0d9b86aa;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:#0a695d;text-align:center}.preview-area span{background:#0c8a78;color:white;border-radius:15px;width:42px;height:42px;display:grid;place-items:center;box-shadow:0 7px 14px #097d6b35}.preview-area svg,.preview-pin svg{width:22px;height:22px;stroke:currentColor;stroke-width:2;fill:none}.preview-area strong{font-size:11px;background:#fffc;padding:5px 8px;border-radius:7px}.preview-pin{position:absolute;z-index:3;right:65px;bottom:92px;color:#e17860;background:#fff;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;box-shadow:0 7px 15px #21493b2d}
.preview-sheet{position:relative;background:#fff;border-radius:17px;margin:-48px 11px 0;padding:13px 19px 17px;box-shadow:0 10px 28px #143e3425}.preview-handle{display:block;width:32px;height:4px;background:#c7d7d0;border-radius:5px;margin:0 auto 13px}.preview-sheet small{display:block;color:#0b8c7c;font-weight:900;letter-spacing:.11em;font-size:9px;margin-bottom:6px}.preview-sheet strong{font-size:16px;color:var(--dark)}.preview-sheet p{font-size:11px;color:var(--muted);margin:5px 0 0}.preview-caption{display:block;position:relative;text-align:center;font-size:10px;color:#7d938d;margin-top:24px}
.landing-install{max-width:1140px;margin:0 auto 80px;padding:18px 22px;border-radius:20px;background:#e4f3eb;border:1px solid #cae6d6;display:flex;align-items:center;justify-content:space-between;gap:20px}.landing-install>div{display:flex;align-items:center;gap:14px}.landing-install-icon{background:#fff;border-radius:16px;padding:8px;box-shadow:0 7px 16px #0a66592b}.landing-install-icon img{width:38px;height:38px;display:block}.landing-install strong{font-size:15px;color:#0d4e45}.landing-install p{font-size:12px;color:#5a7970;margin:4px 0 0}
.landing-features{max-width:1240px;margin:auto;padding:0 clamp(18px,4vw,48px) 90px}.landing-section-head{max-width:590px;margin-bottom:25px}.landing-section-head h2,.landing-close h2{font-size:clamp(30px,3.4vw,47px);line-height:1.13;letter-spacing:-.045em;color:#0b3531;margin:0}.landing-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.landing-feature-grid article{background:#fff;border:1px solid #e2eee7;border-radius:20px;padding:26px;box-shadow:0 12px 28px #123e3220}.feature-icon{width:42px;height:42px;border-radius:13px;background:#e1f4e9;display:grid;place-items:center;color:#078d77;margin-bottom:23px}.feature-icon svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.8;fill:none}.landing-feature-grid h3{font-size:17px;color:#143e37;margin:0 0 8px}.landing-feature-grid p{font-size:12px;color:#647c75;line-height:1.6;margin:0}
.landing-close{background:#073f39;color:#fff;text-align:center;padding:64px 18px}.landing-close .landing-kicker{justify-content:center;color:#9addc6}.landing-close h2{color:#fff}.landing-close>p:not(.landing-kicker){font-size:14px;color:#c4dfd1;margin:15px auto 25px}.landing-close .landing-primary{background:#fff;color:#094b42;border-color:#fff}.landing-footer{max-width:1240px;margin:auto;display:flex;justify-content:space-between;gap:16px;padding:26px clamp(18px,4vw,48px);font-size:11px;color:#688077}.landing-footer a{color:#386c5f;text-decoration:none}

/* Prévia interativa do feed na apresentação. Textos são explicitamente ilustrativos. */
.landing-nav-tour,.landing-map-link{text-decoration:none}.landing-nav-tour:hover,.landing-map-link:hover{text-decoration:underline}
.landing-tour{background:#e9f3ec;padding:80px clamp(18px,4vw,48px) 90px;scroll-margin-top:20px}
.landing-tour-intro,.landing-tour-layout{max-width:1140px;margin-inline:auto}
.landing-tour-intro{margin-bottom:31px}.landing-tour-intro h2{font-size:clamp(34px,3.8vw,52px);line-height:1.1;letter-spacing:-.05em;color:#0b3531;max-width:760px;margin:0 0 14px}.landing-tour-intro>p:last-child{max-width:680px;color:#55746a;font-size:14px;line-height:1.65;margin:0}
.landing-tour-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:30px;align-items:center}
.landing-demo{min-width:0;background:#fff;border:1px solid #d5e7dc;border-radius:25px;padding:21px;box-shadow:0 22px 50px #174e3b20}
.landing-demo-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 4px 19px}.landing-demo-top small,.landing-tour-eyebrow{display:block;font-size:10px;letter-spacing:.14em;font-weight:900;color:#0b8776}.landing-demo-top strong{display:block;font-size:20px;color:#103e37;letter-spacing:-.03em;margin-top:5px}.landing-demo-brand{font-size:20px;color:#0b574d;font-weight:900;white-space:nowrap;letter-spacing:-.07em}.landing-demo-brand span{color:#eb785f}
.landing-demo-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#edf5f0;border-radius:13px;padding:5px;margin-bottom:18px}.landing-demo-tabs button{border:0;border-radius:9px;background:transparent;color:#5b7a6e;font-size:12px;font-weight:850;padding:11px 7px;cursor:pointer}.landing-demo-tabs button.active,.landing-demo-tabs button[aria-selected="true"]{background:#0a776b;color:#fff;box-shadow:0 4px 10px #0b605344}.landing-demo-tabs button:focus-visible,.landing-primary:focus-visible,.landing-outline:focus-visible{outline:3px solid #e6876d;outline-offset:3px}
.landing-demo-label{display:flex;align-items:center;gap:7px;margin:0 2px 10px;color:#668479;font-size:10px;font-weight:800}.landing-demo-pulse{width:7px;height:7px;border-radius:50%;background:#e28368;flex:none}
.landing-sample-post{background:#fbfdfa;border:1px solid #dfece3;border-radius:17px;padding:19px}.landing-sample-head{display:flex;align-items:center;gap:10px}.landing-sample-avatar{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:#d9f1e7;color:#0a7b6d;flex:none}.landing-sample-avatar svg,.landing-sample-mini-icon svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.9;fill:none}.landing-sample-head strong{display:block;color:#153b36;font-size:12px}.landing-sample-head small{display:block;color:#7a9086;font-size:10px;margin-top:3px}.landing-sample-more{margin-left:auto;color:#9cb6a9;font-size:24px;line-height:0;align-self:flex-start}
.landing-sample-category{display:inline-block;background:#e0f2e9;color:#117d6e;font-size:10px;font-weight:850;border-radius:7px;padding:6px 9px;margin-top:19px}.landing-sample-post h3{color:#113f38;font-size:21px;letter-spacing:-.035em;line-height:1.27;margin:11px 0 8px}.landing-sample-post p{color:#536e64;font-size:12px;line-height:1.65;margin:0 0 19px}.landing-sample-foot{border-top:1px solid #e3eee7;padding-top:13px;display:flex;justify-content:space-between;gap:9px;flex-wrap:wrap;color:#788f84;font-size:10px;font-weight:700}.landing-sample-foot span:first-child{display:flex;align-items:center;gap:3px}.landing-sample-foot svg{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}
.landing-sample-mini{display:flex;gap:11px;align-items:flex-start;border:1px solid #e1eee5;border-radius:15px;padding:15px 16px;margin-top:10px}.landing-sample-mini-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#fff0e8;color:#d9725a;flex:none}.landing-sample-mini small{font-size:10px;font-weight:850;color:#148575}.landing-sample-mini strong{display:block;color:#183f38;font-size:13px;line-height:1.35;margin:4px 0}.landing-sample-mini p{font-size:11px;line-height:1.5;color:#71867b;margin:0}
.landing-tour-steps{padding:12px 0 12px 19px}.landing-tour-eyebrow{margin:0 0 27px}.landing-tour-step{display:grid;grid-template-columns:37px minmax(0,1fr);gap:14px;margin:0 0 27px}.landing-tour-step>span{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#fff;color:#0b8b78;font-size:11px;font-weight:900;box-shadow:0 4px 13px #16594316}.landing-tour-step h3{font-size:16px;letter-spacing:-.02em;color:#17473d;margin:0 0 5px}.landing-tour-step p{font-size:12px;line-height:1.55;color:#648075;margin:0}.landing-tour-steps .landing-primary{margin:0 0 13px}.landing-tour-note{font-size:10px;line-height:1.5;color:#7b9287;max-width:330px;margin:0}
@media(max-width:800px){.landing-tour-layout{grid-template-columns:1fr}.landing-tour-steps{padding:8px 5px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.landing-tour-eyebrow,.landing-tour-steps .landing-primary,.landing-tour-note{grid-column:1/-1}.landing-tour-step{grid-template-columns:1fr;margin:0 0 15px}.landing-tour-eyebrow{margin-bottom:6px}}
@media(max-width:600px){.landing-nav-tour{display:none}.landing-tour{padding:61px 18px 65px}.landing-tour-intro h2{font-size:34px}.landing-tour-intro>p:last-child{font-size:13px}.landing-demo{padding:13px;border-radius:20px}.landing-demo-top{padding:5px 3px 15px}.landing-demo-top strong{font-size:17px}.landing-demo-brand{font-size:17px}.landing-sample-post{padding:15px}.landing-sample-post h3{font-size:18px}.landing-tour-steps{display:block;padding:4px 3px 0}.landing-tour-step{display:grid;grid-template-columns:37px minmax(0,1fr);margin-bottom:18px}.landing-tour-eyebrow{margin-bottom:22px}.landing-tour-steps .landing-primary{width:100%}}

/* Mapa como superfície principal */
.map-shell .workspace{padding:0;min-height:100dvh;display:flex;flex-direction:column}.map-shell .topbar{margin:0;padding:0 28px;flex:none}.map-shell .page-bottom{display:none}
.map-stage{height:calc(100dvh - 76px);min-height:590px;position:relative;overflow:hidden;background:#dcebdd;isolation:isolate}.map-stage .explore-map{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;box-shadow:none;z-index:0}.map-stage .leaflet-container{background:#dcebdd}
.map-top{position:absolute;top:20px;left:22px;right:22px;z-index:500;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none}.map-top>*{pointer-events:auto}.map-city{display:flex;align-items:center;gap:11px;min-width:230px;border:1px solid #dcebe0;background:#fff;border-radius:16px;padding:11px 13px;color:#0c554d;box-shadow:0 11px 30px #143d3030;text-align:left}.map-city>svg:first-child{width:21px;height:21px;stroke:currentColor;stroke-width:2;fill:none}.map-city>svg:last-child{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none;margin-left:auto}.map-city small{display:block;font-size:9px;color:#709489;letter-spacing:.1em;font-weight:900;margin-bottom:3px}.map-city strong{display:block;font-size:14px}.map-privacy-chip{display:flex;align-items:center;gap:6px;background:#fffffff0;border:1px solid #e5eee7;border-radius:99px;padding:10px 13px;color:#4c6d64;font-size:10px;font-weight:800;box-shadow:0 6px 18px #143d3020}.map-privacy-chip svg{width:16px;height:16px;stroke:#078b79;stroke-width:2;fill:none}
.map-float-actions{position:absolute;z-index:500;right:21px;top:93px;display:flex;flex-direction:column;gap:7px}.map-round{width:43px;height:43px;display:grid;place-items:center;border:1px solid #dcebe0;border-radius:13px;background:#fff;color:#0b5148;box-shadow:0 8px 22px #143d3028;font-size:24px;font-weight:500}.map-round svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.9;fill:none}.map-round.active{background:#0a7f76;color:#fff}.map-round:hover{background:#edf7ef}.map-round.active:hover{background:#087067}.map-spinner{width:19px;height:19px;border:2px solid #aac9bf;border-top-color:#0b7c6a;border-radius:50%;animation:mapspin .7s linear infinite}@keyframes mapspin{to{transform:rotate(360deg)}}
.map-drawer{position:absolute;z-index:500;left:22px;bottom:22px;width:min(430px,calc(100% - 88px));max-height:min(65vh,570px);overflow:auto;background:#fffffff8;border:1px solid #dfebe2;border-radius:22px;box-shadow:0 24px 55px #163d3550;padding:12px 18px 15px;backdrop-filter:blur(8px)}.map-drawer-handle{width:35px;height:4px;background:#cbdad2;border-radius:5px;margin:0 auto 15px}.map-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.map-drawer-head .eyebrow{font-size:9px;margin-bottom:6px}.map-drawer-head h1{font-size:23px;letter-spacing:-.7px;margin:0 0 5px;color:#0e3c36}.map-drawer-head span{font-size:10px;color:#6c867d}.map-drawer-toggle{border:1px solid #d8e7dd;background:#fff;border-radius:10px;color:#217a6b;width:30px;height:30px;font-size:20px;line-height:1}.map-view-tabs{display:flex;gap:7px;margin:20px 0 14px}.map-view-tabs button{flex:1;border:1px solid #dce9e1;border-radius:10px;padding:9px 4px;background:#f5faf6;color:#658078;font-size:11px;font-weight:850}.map-view-tabs button[aria-selected=true]{background:#0c766c;border-color:#0c766c;color:#fff}.map-empty{background:#f4faf6;border:1px solid #e1eee4;border-radius:15px;padding:16px}.map-empty strong{font-size:13px;color:#183f38}.map-empty p{font-size:11px;line-height:1.55;color:#617970;margin:7px 0 13px}.map-empty .primary-button{font-size:11px}.map-story{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:1px solid #e0ebe4;background:#fff;border-radius:13px;padding:11px;margin-bottom:8px;color:#193d38}.map-story span:nth-child(2){flex:1;min-width:0}.map-story strong{display:block;font-size:11px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.map-story small{display:block;color:#6e857c;font-size:10px;margin-top:4px}.map-story>svg{width:17px;height:17px;stroke:currentColor;stroke-width:2;fill:none}.map-story-icon{width:31px;height:31px;display:grid;place-items:center;background:#e5f4eb;color:#0b8a78;border-radius:9px}.map-story-icon svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}.map-panel-note{font-size:10px;color:#80928b;line-height:1.4;margin:12px 2px 0}.map-attribution{position:absolute;z-index:400;right:12px;bottom:8px;background:#ffffffe8;color:#60746c;font-size:9px;padding:3px 6px;border-radius:4px}
.map-attribution a{color:inherit}
.map-float-actions .location-action{width:auto;min-width:105px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;font-size:10px;font-weight:850}.location-action span:last-child{white-space:nowrap}
.map-city-bubble{display:flex;align-items:center;gap:5px;background:#fff;border:1px solid #0d9b86;border-radius:22px;padding:5px 9px;box-shadow:0 6px 20px #123c3240;white-space:nowrap}.map-city-bubble span{display:grid;place-items:center;background:#0a8e7c;color:#fff;border-radius:50%;height:29px;min-width:29px;font-size:12px;font-weight:850}.map-city-bubble small{font-size:10px;font-weight:800;color:#1b6257}
.map-drawer:not(.expanded){max-height:min(66vh,470px)}.map-drawer.expanded{max-height:min(75vh,620px)}
@media(min-width:721px){.map-drawer-toggle{display:none}.map-drawer{width:min(395px,calc(100% - 88px))}}
@media(max-width:800px){.landing-hero{grid-template-columns:1fr;padding-top:42px}.landing-copy{max-width:660px}.landing-preview{max-width:570px}.landing-install{margin-inline:18px}.landing-feature-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.landing-nav{padding:15px 17px}.landing-nav .brand-sub{display:none}.landing-nav .brand-word{font-size:22px}.landing-nav .brand-mark{width:37px;height:37px}.landing-nav-actions{gap:2px}.landing-nav-actions .landing-text-button{padding:9px 6px;font-size:11px}.landing-nav-actions .landing-primary{padding:10px 11px;font-size:11px}.landing-hero{padding:48px 20px 60px;gap:25px}.landing-copy h1{font-size:clamp(43px,10vw,59px)}.landing-copy>p:not(.landing-kicker){font-size:15px}.landing-cta{align-items:stretch}.landing-cta button{flex:1}.landing-preview{max-width:450px}.landing-install{flex-direction:column;align-items:stretch}.landing-install .landing-outline{width:100%}.landing-feature-grid{grid-template-columns:1fr}.landing-features{padding-bottom:60px}.landing-footer{flex-direction:column;text-align:center}.map-shell .workspace{min-height:100dvh;padding:0}.map-shell .mobile-header{flex:none}.map-stage{height:calc(100dvh - 64px - 63px - env(safe-area-inset-bottom));min-height:400px}.map-top{top:11px;left:11px;right:11px}.map-city{min-width:0;max-width:75%;padding:9px 11px}.map-city strong{font-size:12px}.map-privacy-chip{display:none}.map-float-actions{top:79px;right:12px}.map-round{width:39px;height:39px;border-radius:11px}.map-drawer{left:0;bottom:0;width:100%;border-radius:21px 21px 0 0;max-height:78%;padding:10px 16px 16px;box-shadow:0 -12px 35px #193c3233}.map-drawer:not(.expanded){height:175px;overflow:hidden}.map-drawer:not(.expanded) #map-panel,.map-drawer:not(.expanded) .map-panel-note{display:none}.map-drawer.expanded{max-height:78%;height:auto}.map-drawer.expanded .map-drawer-body{max-height:none}.map-attribution{bottom:auto;top:12px;right:8px;font-size:7px}}

/* Apresentação compacta: feed e evento fictícios. */
.landing-tour{padding:64px clamp(18px,4vw,48px) 47px}
.landing-tour-intro{margin-bottom:23px}.landing-tour-intro h2{font-size:clamp(32px,3.5vw,48px);max-width:810px}.landing-tour-intro>p:last-child{font-size:13px;max-width:720px}
.landing-tour-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:19px;align-items:stretch}
.landing-demo{padding:19px;box-shadow:0 15px 36px #174e3b18}.landing-demo-top{padding-bottom:15px}.landing-demo-top strong{font-size:18px}.landing-demo-tabs{margin-bottom:13px}.landing-demo-label{margin:0 2px 11px}
.landing-sample-post{background:#f9fcf9;padding:19px}.landing-sample-avatar{font-size:12px;font-weight:900;letter-spacing:-.04em;color:#fff;background:linear-gradient(145deg,#0e8f7c,#0d665f);border-radius:50%}.landing-sample-category{margin-top:18px}.landing-sample-post h3{font-size:20px}.landing-sample-post p{margin-bottom:15px}
.landing-event{min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #d5e7dc;border-radius:25px;box-shadow:0 15px 36px #174e3b18}.landing-event-art{position:relative;height:235px;overflow:hidden;background:#16766c}.landing-event-art img{display:block;width:100%;height:100%;object-fit:cover}.landing-event-chip{position:absolute;top:17px;left:17px;background:#fffffff2;color:#0b574e;border-radius:99px;padding:8px 12px;font-size:10px;font-weight:900;box-shadow:0 6px 14px #073d3433}.landing-event-copy{padding:21px 23px 20px;display:flex;flex-direction:column;flex:1}.landing-event-copy>small{font-size:10px;font-weight:900;letter-spacing:.12em;color:#0f8a76}.landing-event-copy h3{font-size:26px;line-height:1.14;letter-spacing:-.04em;color:#123e38;margin:10px 0 9px}.landing-event-copy p{font-size:12px;line-height:1.6;color:#60796f;margin:0 0 18px}.landing-event-meta{display:flex;gap:9px;flex-wrap:wrap;margin-top:auto}.landing-event-meta span{display:inline-flex;align-items:center;gap:5px;border-radius:8px;background:#edf6ef;color:#317365;padding:7px 9px;font-size:10px;font-weight:800}.landing-event-meta svg{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}
.landing-flow{max-width:1140px;margin:21px auto 0;display:flex;justify-content:space-between;gap:14px;padding:15px 3px 0;border-top:1px solid #cfe3d5}.landing-flow span{display:flex;align-items:center;gap:8px;color:#1d5549;font-size:12px;font-weight:800}.landing-flow b{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:8px;background:#d3ede0;color:#087665;font-size:10px}.landing-tour>.landing-tour-note{max-width:1140px;margin:15px auto 0;font-size:10px;color:#638276}
.landing-close{display:flex;align-items:center;justify-content:space-between;gap:24px;text-align:left;padding:40px max(18px,calc((100vw - 1140px)/2))}.landing-close .landing-kicker{justify-content:flex-start;margin-bottom:11px}.landing-close h2{font-size:clamp(26px,2.9vw,38px)}.landing-close>div>p:not(.landing-kicker){font-size:12px;color:#c4dfd1;margin:9px 0 0}.landing-close-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:none}.landing-close .landing-outline{background:transparent;border-color:#78a89b;color:#fff}.landing-close .landing-outline:hover{background:#165a50}
@media(max-width:800px){.landing-tour-layout{grid-template-columns:1fr 1fr;gap:13px}.landing-event-art{height:195px}.landing-event-copy{padding:17px}.landing-event-copy h3{font-size:22px}.landing-close{flex-direction:column;align-items:flex-start}.landing-flow{flex-wrap:wrap}}
@media(max-width:680px){.landing-tour{padding:50px 18px 40px}.landing-tour-intro h2{font-size:34px}.landing-tour-layout{grid-template-columns:1fr}.landing-event-art{height:190px}.landing-event-copy h3{font-size:23px}.landing-flow{display:grid;grid-template-columns:1fr;gap:9px;padding-top:13px}.landing-close{padding:34px 20px}.landing-close-actions{width:100%;flex-direction:column;align-items:stretch}.landing-close-actions button{width:100%}.landing-close .landing-outline{border-color:#8bbcaf}}
