:root{--ink:#173f3a;--ink-2:#295b50;--cream:#f6f2ea;--paper:#fffdf9;--coral:#f27960;--yellow:#f5c45a;--lilac:#d9d4ec;--muted:#7c8881;--line:#dce4dc;--shadow:0 18px 55px #173f3a18}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px}a{color:inherit;text-decoration:none}button,input{font:inherit}button{border:0;cursor:pointer;color:inherit}.topbar{height:78px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(246,242,234,.9);position:sticky;top:0;z-index:10;backdrop-filter:blur(16px);border-bottom:1px solid #dfe5de}.brand{display:flex;align-items:center;gap:9px;font-family:Manrope,sans-serif;font-size:23px;font-weight:800;letter-spacing:-1px}.brand-mark{width:29px;height:29px;border-radius:10px;background:var(--coral);display:grid;place-items:center;color:#fff;font-size:16px;transform:rotate(-10deg)}.desktop-nav{display:flex;gap:37px;margin-left:7vw}.desktop-nav a{color:#74817b;font-weight:600;padding:29px 0;position:relative}.desktop-nav a.active,.desktop-nav a:hover{color:var(--ink)}.desktop-nav a.active:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;border-radius:3px;background:var(--coral)}.top-actions{display:flex;align-items:center;gap:19px}.icon-btn{background:#e9eee8;border-radius:50%;width:38px;height:38px;font-size:21px}.profile-trigger{display:flex;align-items:center;gap:9px;background:none;font-weight:700}.avatar,.large-avatar,.person-dot{display:grid;place-items:center;border-radius:50%;background:var(--yellow);width:33px;height:33px;font-weight:800}.chevron{color:#8b9790}.hero-wrap{max-width:1300px;margin:0 auto;min-height:558px;padding:77px 5vw 62px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4vw;overflow:hidden}.eyebrow,.section-kicker,.modal-kicker{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:var(--coral);font-weight:800}.live-dot{display:inline-block;width:7px;height:7px;background:#53ab74;border-radius:50%;box-shadow:0 0 0 4px #53ab7425;margin-right:5px}.hero-copy h1{font:800 clamp(48px,6vw,80px)/.98 Manrope,sans-serif;letter-spacing:-4px;margin:19px 0 25px}.hero-copy h1 em{font-style:normal;color:var(--coral)}.hero-copy p{max-width:490px;line-height:1.65;color:#6d7b74;font-size:17px}.search-box{display:flex;align-items:center;gap:13px;background:var(--paper);box-shadow:var(--shadow);border:1px solid #e8e6dc;border-radius:14px;max-width:495px;margin-top:31px;padding:14px 17px;color:#8b9790}.search-box span{font-size:25px;line-height:0}.search-box input{flex:1;border:0;outline:0;background:transparent;color:var(--ink);min-width:0}.search-box kbd{background:#eff0eb;padding:4px 7px;border-radius:5px;font-size:11px}.hero-links{display:flex;gap:24px;margin-top:20px;font-size:13px}.hero-links a{font-weight:700;border-bottom:1px solid var(--coral);padding-bottom:4px}.hero-links a span{color:var(--coral);font-size:17px}.muted{color:#8c9790}.hero-art{height:385px;position:relative;background:var(--lilac);border-radius:180px 22px 22px 180px;overflow:hidden}.sun{position:absolute;width:240px;height:240px;border-radius:50%;background:#f0b4a6;right:15%;top:9%}.art-card{position:absolute;background:#fffdf9;box-shadow:0 14px 30px #173f3a22;border-radius:13px;padding:20px}.art-card-back{width:235px;left:15%;top:21%;transform:rotate(-7deg)}.art-card-back span,.art-card-front span{display:block;color:#7f8d85;font-size:12px}.art-card-back strong{display:block;font:700 20px Manrope;margin:10px 0 30px}.art-card-back small{color:var(--coral);font-weight:700}.art-card-front{width:265px;right:8%;bottom:15%;display:flex;align-items:center;gap:12px;transform:rotate(6deg)}.art-card-front strong{display:block}.art-card-front button{margin-left:auto;border-radius:50%;width:28px;height:28px;background:var(--ink);color:#fff}.mini-avatar{width:37px;height:37px;border-radius:12px;background:var(--yellow);display:grid;place-items:center}.path{position:absolute;border:2px solid #f279605c;border-radius:50%;width:420px;height:180px;left:20%;bottom:-7%}.path-two{width:540px;height:280px;left:-18%;bottom:28%;transform:rotate(20deg)}.art-label{position:absolute;color:#587068;font-size:12px;writing-mode:vertical-rl}.label-one{top:14%;right:6%}.label-two{bottom:10%;left:6%}.content-section{max-width:1300px;margin:0 auto;padding:70px 5vw 100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:26px}.section-heading h2,.feature-copy h2,.cta-section h2{font:800 clamp(30px,4vw,48px)/1.05 Manrope;margin:9px 0 0;letter-spacing:-2px}.pill-button{padding:11px 17px;border-radius:30px;background:#e8eee7;color:var(--ink-2);font-weight:700}.category-row{display:flex;gap:10px;overflow:auto;padding-bottom:22px}.category{padding:12px 16px;border:1px solid #dce4dc;background:transparent;border-radius:30px;white-space:nowrap;color:#79867f;font-weight:600}.category span{margin-right:5px}.category.active,.category:hover{background:var(--ink);border-color:var(--ink);color:#fff}.map-layout{display:grid;grid-template-columns:1.45fr .82fr;gap:20px}.map-card{height:530px;background:#cbdeda;border-radius:18px;overflow:hidden;position:relative;box-shadow:var(--shadow)}#map{height:100%;width:100%;filter:saturate(.65) sepia(.08)}.map-overlay{position:absolute;z-index:400;top:16px;left:16px;right:16px;display:flex;justify-content:space-between}.map-status,.map-control{background:#fffdf9;border-radius:9px;padding:9px 12px;box-shadow:0 5px 15px #173f3a1b;font-size:12px;font-weight:700}.map-control{padding:9px 12px;font-size:18px}.leaflet-popup-content-wrapper{border-radius:12px}.leaflet-popup-content{font-family:'DM Sans';font-size:13px}.place-pin{background:var(--coral);border:3px solid #fff;width:25px;height:25px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 4px 12px #173f3a44}.place-pin:after{content:'';display:block;background:#fff;width:6px;height:6px;border-radius:50%;margin:6px}.places-panel{background:var(--paper);border-radius:18px;padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column}.panel-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panel-top h3{font:800 19px Manrope;margin:0}.sort-button{font-size:11px;color:#809087;background:none}.place-item{padding:17px 0;border-bottom:1px solid #ecede7;display:flex;gap:12px;align-items:center;cursor:pointer}.place-item:hover .place-title{color:var(--coral)}.place-icon{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;font-size:22px;flex:none}.place-meta{min-width:0}.place-title{font-weight:800;font-size:14px;transition:.2s}.place-sub{display:block;color:#89958d;font-size:12px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.distance{margin-left:auto;color:#85928a;font-size:11px;white-space:nowrap}.outline-button{background:transparent;border:1px solid #cdd9d0;border-radius:10px;padding:12px 15px;margin-top:18px;color:var(--ink);font-weight:700}.outline-button span{float:right;color:var(--coral);font-size:19px}.feature-strip{background:var(--lilac);display:grid;grid-template-columns:1fr 1fr;min-height:460px;align-items:center;padding:60px max(5vw,40px);gap:8vw;overflow:hidden}.feature-visual{height:330px;position:relative;max-width:500px;margin:auto;width:100%}.ring{border:1px solid #fff8;width:300px;height:300px;border-radius:50%;position:absolute;left:15%;top:5%}.ring-b{width:210px;height:210px;left:25%;top:19%;border-color:#c0b9dd}.person-dot{position:absolute;width:54px;height:54px;color:#fff}.p1{background:#e68675;left:14%;top:33%}.p2{background:#597e76;right:11%;top:22%}.p3{background:#efb94c;left:44%;bottom:3%}.feature-pin{position:absolute;left:44%;top:41%;background:var(--ink);color:#fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);width:45px;height:45px;display:grid;place-items:center}.feature-pin::first-letter{transform:rotate(45deg)}.feature-copy{max-width:450px}.feature-copy p,.cta-section p{color:#6d7b74;line-height:1.65;font-size:16px;max-width:430px;margin:24px 0}.dark-button{background:var(--ink);color:#fff;border-radius:10px;padding:13px 18px;font-weight:700}.dark-button span{color:var(--yellow);margin-left:18px;font-size:18px}.cta-section{max-width:1300px;margin:0 auto;padding:95px 5vw;display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:3vw}.cta-section .dark-button{justify-self:start}.cta-section p{margin:0 0 3px}.footer-right{margin-left:auto}.footer-right,footer>span{color:#8a968f;font-size:12px}footer{border-top:1px solid #dce4dc;padding:28px 5vw;display:flex;align-items:center;gap:27px}.modal-backdrop{position:fixed;inset:0;background:#173f3a66;z-index:50;display:none;place-items:center;padding:20px}.modal-backdrop.open{display:grid}.modal{background:var(--paper);border-radius:20px;width:min(100%,450px);padding:35px;position:relative;box-shadow:0 20px 80px #173f3a44}.modal-close{position:absolute;right:18px;top:13px;background:none;font-size:27px;color:#94a098}.modal h2{font:800 32px Manrope;letter-spacing:-1.5px;margin:11px 0}.modal p{color:#7b8981;line-height:1.55;margin:0 0 24px}.form-field{margin:15px 0}.form-field label{display:block;color:#697870;font-size:12px;font-weight:700;margin-bottom:6px}.form-field input,.friend-search input{width:100%;border:1px solid #dce4dc;border-radius:9px;padding:12px;background:#fbfaf6;outline:none}.form-field input:focus,.friend-search input:focus{border-color:var(--coral)}.full{width:100%;margin-top:10px}.text-button{background:none;color:var(--coral);font-weight:700;margin:20px auto 0;display:block;font-size:13px}.hidden{display:none!important}.profile-head{display:flex;align-items:center;gap:15px;margin-bottom:25px}.large-avatar{width:60px;height:60px;font-size:23px}.handle{color:#89958d;font-size:13px}.profile-settings{border-top:1px solid #edf0eb}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;border-bottom:1px solid #edf0eb}.setting-row b{display:block;font-size:14px}.setting-row small{color:#89958d;display:block;margin-top:4px}.clickable{cursor:pointer}.toggle{width:43px;height:25px;border-radius:20px;background:#c8d2cb;padding:3px}.toggle i{width:19px;height:19px;background:#fff;display:block;border-radius:50%;transition:.2s}.toggle.on{background:#53ab74}.toggle.on i{transform:translateX(18px)}.friend-search{display:flex;gap:8px}.friend-search button{background:var(--ink);color:#fff;border-radius:9px;padding:0 14px}.friend-result{display:flex;align-items:center;gap:12px;background:#f0f3ed;border-radius:11px;padding:12px;margin-top:18px}.friend-result span{display:block;font-size:12px;color:#89958d;margin-top:4px}.lilac{width:43px;height:43px;background:var(--lilac);font-size:17px}.add-friend{margin-left:auto;background:var(--coral);color:#fff;border-radius:7px;padding:8px 10px;font-size:12px;font-weight:700}.friends-note{color:#89958d;font-size:12px;line-height:1.5;background:#f8f6ef;padding:12px;border-radius:9px;margin-top:20px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;background:var(--ink);color:#fff;padding:12px 18px;border-radius:10px;z-index:80;transition:.25s;box-shadow:var(--shadow);font-size:13px}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:800px){.topbar{height:66px;padding:0 20px}.desktop-nav{display:none}.profile-name,.chevron{display:none}.top-actions{gap:10px}.hero-wrap{grid-template-columns:1fr;padding:58px 20px 30px;min-height:0}.hero-copy h1{font-size:53px;letter-spacing:-3px}.hero-copy p{font-size:15px}.hero-art{height:280px;border-radius:150px 18px 18px 150px;margin-top:26px}.art-card-back{left:10%;top:17%;transform:scale(.8) rotate(-7deg);transform-origin:left top}.art-card-front{right:1%;bottom:9%;transform:scale(.8) rotate(6deg);transform-origin:right bottom}.content-section{padding:55px 20px 70px}.section-heading{align-items:flex-start;gap:15px}.section-heading h2{font-size:32px}.pill-button{font-size:12px;padding:10px 12px}.map-layout{grid-template-columns:1fr}.map-card{height:390px}.places-panel{padding:20px}.place-item:nth-of-type(n+4){display:none}.feature-strip{grid-template-columns:1fr;padding:55px 20px;gap:10px}.feature-visual{height:250px;transform:scale(.82)}.feature-copy h2{font-size:34px}.cta-section{grid-template-columns:1fr;padding:65px 20px;gap:4px}.cta-section h2{font-size:39px}.cta-section p{font-size:14px}.cta-section .dark-button{margin-top:18px}footer{padding:25px 20px;flex-wrap:wrap;gap:14px}.footer-right{margin-left:0;width:100%}.hero-links{flex-wrap:wrap;gap:12px}.modal{padding:30px 22px}.search-box kbd{display:none}}
