@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Italiana&display=swap');
:root{--bg:#0b1316;--ink:#f0eee5;--muted:#9ca7a8;--line:#ffffff21;--accent:#e6ad68;--serif:'Italiana',Georgia,serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13px 'DM Sans',sans-serif;overflow:hidden}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:none;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}#globe{position:fixed;inset:0 0 0 20%;cursor:grab}#globe:active{cursor:grabbing}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,#0b1316 0%,#0b1316e8 19%,transparent 49%),linear-gradient(0deg,#0b1316 0%,transparent 21%,transparent 85%,#0b131680)}header{position:absolute;z-index:3;top:0;left:0;right:0;height:112px;margin:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;font-size:26px;letter-spacing:-1px}.brand i{font-family:var(--serif);font-size:31px;font-weight:400}.brand small{font-size:8px;display:block;letter-spacing:2.4px;margin-top:5px;color:#b4bcb9}.brand-mark{color:var(--accent);font-size:50px;font-weight:400;line-height:1}nav{display:flex;gap:26px;align-items:center}.nav{color:var(--muted);font-size:12px;padding:13px 0}.nav.active{color:var(--ink);border-bottom:1px solid var(--accent)}#saved-count{font-size:9px;border:1px solid var(--line);border-radius:50%;padding:2px 5px;margin-left:5px}.edition{font-size:8px;letter-spacing:1.6px;color:var(--muted)}.edition span{color:var(--accent);margin:0 9px;font-size:5px}.intro{position:absolute;left:4%;top:16%;pointer-events:none}.eyebrow{font-size:9px;letter-spacing:2px;color:var(--accent);display:flex;align-items:center;gap:9px}.eyebrow span{width:5px;height:5px;background:var(--accent);border-radius:50%}h1{font-family:var(--serif);font-size:clamp(48px,4.5vw,75px);line-height:1.02;font-weight:400;letter-spacing:-1.5px;margin:23px 0 20px}h1 em{color:var(--accent);font-weight:400}p{line-height:1.8;color:var(--muted)}.intro p{font-size:12px;line-height:1.9}.stats{display:flex;gap:29px;margin-top:24px}.stats div{display:flex;flex-direction:column;gap:4px}.stats strong{font-family:var(--serif);font-size:27px;font-weight:400}.stats span{font-size:9px;color:var(--muted)}.explorer{position:absolute;top:60%;left:4%;width:320px;bottom:65px;display:flex;flex-direction:column}.search{border:1px solid #ffffff38;background:#101b1ee8;display:flex;align-items:center;gap:10px;border-radius:5px;padding:0 12px;min-height:43px}.search>span{font-size:25px;color:var(--accent)}input{color:var(--ink);outline:none;background:none;border:0;width:100%;font-size:11px;min-width:0}input::placeholder{color:#9ba5a6}kbd{border:1px solid var(--line);color:var(--muted);padding:1px 5px;font-size:11px}.filters{display:flex;gap:8px;margin-top:9px}.filters select{min-width:0;background:#111b1e;color:#c6ceca;border:1px solid var(--line);padding:8px;border-radius:3px;font-size:10px;flex:1}.filters button{font-size:19px;color:var(--muted)}.results-head{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;margin:17px 0 5px;text-transform:uppercase;letter-spacing:1px}.results{overflow:auto;min-height:40px;scrollbar-width:thin;scrollbar-color:#455455 transparent}.place-row{width:100%;text-align:left;padding:12px 2px;border-bottom:1px solid #ffffff12;display:flex;align-items:center;gap:12px}.place-row:hover,.place-row.selected{background:#ffffff08}.place-row .dot{width:6px;height:6px;border:1px solid var(--accent);border-radius:50%;flex-shrink:0}.place-row strong{font-weight:450;font-size:12px;display:block}.place-row small{display:block;color:var(--muted);font-size:9px;margin-top:5px}.place-row .arrow{margin-left:auto;color:var(--accent)}.text-button{padding:13px 0;text-align:left;font-size:10px;color:var(--accent)}.text-button span{float:right}.globe-caption{position:absolute;left:59%;top:17%;display:flex;align-items:center;gap:10px;color:#cbd2d0;pointer-events:none;font-size:9px;letter-spacing:2px}.globe-caption small{display:block;letter-spacing:.4px;font-size:9px;color:var(--muted);margin-top:6px}.tiny-orbit{font-size:27px;color:var(--accent)}.globe-controls{position:absolute;right:4%;top:44%;display:flex;flex-direction:column;background:#0f1b20bb;border:1px solid var(--line);border-radius:28px;padding:8px}.globe-controls button{font-size:21px;width:30px;height:38px;font-weight:400}.globe-controls button:hover{color:var(--accent)}.globe-controls div{height:1px;background:var(--line);margin:4px}.featured{position:absolute;bottom:12%;right:9%;width:340px;background:linear-gradient(110deg,#19272be6,#0d191de6);border:1px solid #b3c4bb30;border-radius:5px;padding:17px 20px;backdrop-filter:blur(12px)}.feature-index{font-size:8px;letter-spacing:1.6px;color:var(--accent)}.featured button{padding:15px 0 0;width:100%;display:flex;align-items:center;text-align:left;gap:16px}.feature-icon{font-size:48px;font-family:Georgia;color:#b9b09c}.featured small{font-size:6px;letter-spacing:1.5px;color:var(--muted)}.featured strong{font-family:var(--serif);font-size:31px;font-weight:400;display:block;margin:5px 0}.featured button span span{font-size:9px;color:var(--muted)}.featured b{margin-left:auto;color:var(--accent);font-weight:400;font-size:20px}footer{position:absolute;bottom:0;height:47px;border-top:1px solid var(--line);left:4%;right:4%;display:flex;align-items:center;justify-content:space-between;font-size:8px;color:var(--muted);letter-spacing:.5px}footer i{display:inline-block;background:var(--accent);width:4px;height:4px;border-radius:50%;margin-right:7px}footer button{font-size:9px}footer>span:last-child{font-size:13px;color:var(--accent)}.detail{position:absolute;right:24px;top:130px;bottom:65px;width:365px;background:#111d21;border:1px solid #ffffff29;border-radius:8px;overflow-y:auto;z-index:5;box-shadow:0 20px 80px #0008;transform:translateX(115%);transition:transform .35s;scrollbar-width:thin;scrollbar-color:#455455 transparent}.detail.open{transform:translateX(0)}.photo{height:205px;position:relative;background:radial-gradient(ellipse at bottom,#4d574a,#233536 45%,#13262b);overflow:hidden;display:flex;align-items:center;justify-content:center}.photo img{width:100%;height:100%;object-fit:cover}.photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#111d21)}.photo-placeholder{color:#96a99a;text-align:center;font:60px var(--serif)}.photo-placeholder small{display:block;font:10px 'DM Sans';letter-spacing:2px;margin-top:10px}.photo-credit{position:absolute;right:10px;bottom:8px;z-index:1;font-size:8px;text-decoration:underline;text-shadow:0 1px 3px #000}.close{position:absolute;right:12px;top:12px;border:1px solid #ffffff30;background:#0b151ccc;border-radius:50%;width:32px;height:32px;font-size:23px;z-index:3}.detail-body{padding:20px 25px 28px}.detail h2{font:37px/1.08 var(--serif);margin:12px 0}.detail-location{font-size:11px;color:var(--muted)}.tags{display:flex;gap:5px;flex-wrap:wrap;margin:17px 0}.tag{font-size:8px;line-height:1.5;letter-spacing:.3px;background:#e6ad6810;border:1px solid #e6ad682c;border-radius:3px;color:#d4ba96;padding:4px 7px}.detail p{font-size:11px;line-height:1.9}.detail h3{font-size:9px;text-transform:uppercase;letter-spacing:1.7px;margin-top:24px;font-weight:500}.actions{display:flex;gap:8px;margin:21px 0}.primary-link,.save-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e6ad6850;color:#f3d6af;padding:11px 15px;border-radius:4px;font-size:10px;background:#e6ad6810}.save-button{color:var(--ink);border-color:var(--line);background:transparent}.source{display:block;color:var(--accent);font-size:10px;margin-top:15px}.coordinates{border-top:1px solid var(--line);margin-top:20px;padding-top:15px;color:var(--muted);font-size:9px;line-height:1.7}.empty{padding:16px 0;color:var(--muted);font-size:11px;line-height:1.8}dialog{max-width:610px;width:calc(100% - 32px);max-height:85vh;background:#132025;color:var(--ink);border:1px solid #ffffff29;border-radius:10px;padding:45px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#02090cba;backdrop-filter:blur(8px)}dialog h2{font:42px/1.1 var(--serif);margin:22px 0}dialog p{font-size:12px}dialog h3{font-size:12px;font-weight:500}.about-grid{display:flex;gap:30px;border-block:1px solid var(--line);padding:22px 0;margin:25px 0}.about-grid strong{font:26px var(--serif);display:block}.about-grid span{font-size:9px;color:var(--muted);display:block;margin-top:8px}.subtle-link{font-size:10px;margin-left:15px;color:var(--muted)}#toast{position:fixed;bottom:65px;left:50%;transform:translateX(-50%);padding:12px 20px;border:1px solid var(--line);border-radius:5px;background:#213035;z-index:10;opacity:0;pointer-events:none;transition:opacity .2s;font-size:11px}#toast.show{opacity:1}#loading{position:fixed;left:60%;top:50%;color:var(--accent);font:18px var(--serif);pointer-events:none}#loading span{display:block;margin-top:15px;width:50px;height:1px;background:var(--accent);animation:loading 1s infinite alternate}@keyframes loading{to{width:140px;opacity:.3}}body.detail-visible .featured{display:none}.scene-tooltip{background:#102126e8!important;border:1px solid #e6ad6860!important;border-radius:5px!important;padding:10px 14px!important;font:12px 'DM Sans'!important;color:#f0eee5!important}.scene-tooltip small{display:block;color:#bbc3bd;margin-top:4px;font-size:10px}
@media(min-height:900px){.explorer{top:56%;bottom:80px}}@media(max-height:760px) and (min-width:801px){header{height:85px}.intro{top:17%}h1{font-size:49px;margin:15px 0}.stats{margin-top:14px}.intro p{margin:10px 0}.explorer{top:61%}.detail{top:103px}.results-head{margin-top:10px}.stats strong{font-size:23px}}
@media(max-width:1100px){.edition{display:none}nav{gap:20px}.featured{right:11%;width:280px}.intro{left:4%}.explorer{width:290px}}
@media(max-width:800px){body{overflow:auto;min-height:100vh}header{height:85px;margin:0 6%}.brand{font-size:23px}.brand-mark{font-size:39px}.brand i{font-size:26px}.brand small{font-size:6px}nav .nav{font-size:0;border:0!important}nav .nav#saved{font-size:10px}#about,#explore{display:none}nav{gap:0}.intro{top:115px;left:6%}.intro .eyebrow{font-size:7px;letter-spacing:1.5px}h1{font-size:46px;margin:18px 0 10px;line-height:1.03}.intro p{font-size:10px}.stats{gap:22px;margin-top:16px}.stats strong{font-size:25px}.stats span{font-size:8px}#globe{inset:160px 0 auto 5%;height:530px}.vignette{background:linear-gradient(180deg,#0b1316 0,transparent 35%,transparent 60%,#0b1316 88%);height:780px}.globe-caption{top:470px;left:7%;font-size:7px;letter-spacing:1px}.globe-caption small{font-size:8px}.globe-controls{top:410px;right:5%;padding:3px}.globe-controls button{height:30px;width:27px;font-size:19px}.featured{display:none}.explorer{position:relative;top:auto;left:auto;margin:590px 6% 85px;width:auto;bottom:auto;max-height:450px}.search{min-height:48px}.filters select{padding:10px}.results{max-height:270px}.place-row{padding:14px 3px}.place-row strong{font-size:13px}.place-row small{font-size:10px}footer{position:relative;left:auto;right:auto;margin:0 6%;height:55px;gap:10px;font-size:7px}footer>span:last-child{display:none}.detail{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;max-height:82vh;border-radius:15px 15px 0 0;transform:translateY(110%)}.detail.open{transform:translateY(0)}.detail .photo{height:200px}.detail-body{padding:20px 24px}.detail p{font-size:12px}#loading{top:440px;left:30%;font-size:14px}dialog{padding:32px 24px}dialog h2{font-size:36px}.about-grid{gap:20px}.subtle-link{display:block;margin:17px 0}.globe-controls{z-index:2}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.detail{visibility:hidden}.detail.open{visibility:visible}
@media(max-width:800px){#globe{top:310px;left:0;height:330px}.vignette{background:linear-gradient(180deg,#0b1316 0%,#0b1316 34%,transparent 57%,transparent 75%,#0b1316 95%)}.globe-caption{top:560px}.globe-controls{top:435px}.intro{pointer-events:none}.intro p{max-width:280px}.stats{display:none}.explorer{margin-top:650px}}

@media(max-width:800px){#globe{position:absolute}.vignette{position:absolute}}

/* Exploration mode gives the destination a dedicated, unobscured viewport. */
#globe{height:100vh}
body.detail-visible .intro,body.detail-visible .explorer,body.detail-visible .globe-caption{opacity:0;pointer-events:none;visibility:hidden}
body.detail-visible #globe{left:0;right:390px}
body.detail-visible .globe-controls{right:410px}
body.detail-visible .vignette{background:linear-gradient(0deg,#0b1316 0%,transparent 20%,transparent 85%,#0b131680)}
@media(max-width:800px){
 #globe{height:330px}
 body.detail-visible{overflow:hidden}
 body.detail-visible #globe{position:fixed;top:85px;left:0;right:0;height:calc(45vh - 85px)}
 body.detail-visible .detail{max-height:55vh;height:55vh}
 body.detail-visible .globe-controls{position:fixed;top:100px;right:12px}
 body.detail-visible .vignette{display:none}
}

/* Quieter atlas navigation and readable cards. */
.intro{top:17%}h1{font-size:clamp(39px,3.5vw,56px);line-height:1.08;margin:18px 0 12px}
.intro p{font-size:12px;max-width:270px}.stats,.featured,.globe-caption,.edition{display:none}
.explorer{top:42%;width:310px;bottom:80px}.results{flex:1}.place-row{padding:14px 5px}
.place-row strong{font-size:13px}.place-row small{font-size:11px;line-height:1.4}.search input{font-size:12px}
.region-pills{display:flex;gap:5px;overflow-x:auto;scrollbar-width:thin;padding:13px 0 5px;flex-shrink:0}
.region-pills button{font-size:11px;padding:7px 9px;border-radius:20px;white-space:nowrap;border:1px solid transparent;color:#b5bdbb}
.region-pills button[aria-pressed=true]{color:#f5dab9;border-color:#dba36166;background:#e6ad6812}
.filters select{font-size:11px}.results-head{font-size:10px;letter-spacing:.5px}
.detail-body{padding:24px}.detail p{font-size:13px;line-height:1.8}.detail-location{font-size:12px}.tag{font-size:10px}.primary-link,.save-button{font-size:12px;min-height:44px}
.card-section{border-top:1px solid var(--line);padding:17px 0}.card-section summary{font-size:13px;cursor:pointer;line-height:1.5}.card-section h3{font-size:11px}
.coordinates{font-size:10px}.share-place{font-size:12px;min-height:44px}.close{width:40px;height:40px}
.map-credit{position:absolute;bottom:57px;right:4%;font-size:8px;color:#c5cecb;background:#0b1316aa;padding:4px 6px;max-width:48%;z-index:2}
body.detail-visible .map-credit{right:405px;max-width:calc(100% - 420px)}
.skip-link{position:fixed;top:-100px;left:20px;z-index:50;padding:15px;background:#f0eee5;color:#111}.skip-link:focus{top:12px}
header{background:linear-gradient(#0b1316ee,transparent)}.globe-controls button{min-height:40px}
@media(max-width:800px){.intro{top:110px}h1{font-size:43px}.intro p{max-width:300px}.explorer{margin-top:590px;top:auto;width:auto;bottom:auto;max-height:560px}#globe{top:240px}.region-pills{gap:6px}.region-pills button{min-height:40px}.map-credit{top:555px;bottom:auto;left:6%;right:6%;max-width:none;font-size:7px}.globe-controls{top:370px}.detail p{font-size:13px}body.detail-visible .map-credit{position:fixed;top:calc(45vh - 22px);left:8px;right:60px;max-width:none;font-size:6px}body.detail-visible .globe-controls{top:105px}.detail h2{font-size:32px}body.detail-visible header{height:85px}.detail .photo{height:160px}}

.result-item{display:flex;border-bottom:1px solid #ffffff14}.result-item .place-row{border:0;min-width:0;flex:1}.place-row>span:nth-child(2){min-width:0}.favorite{flex:0 0 38px;font-size:23px;color:#aeb8b5;min-height:44px}.favorite[aria-pressed=true]{color:var(--accent)}.result-item:hover{background:#ffffff07}.favorite:hover{color:var(--accent)}
#wishlist-note{font-size:10px;color:var(--muted);padding:12px 0;line-height:1.7}#export-wishlist{color:var(--accent);padding:0}

@media(max-width:800px){body.detail-visible header{position:fixed;left:0;right:0;top:0;background:#0b1316;z-index:6}.favorite{min-width:44px}}
