:root{--rose:#e7b5a6;--rose-bright:#f8d7cc;--rose-deep:#b77f70;--gold:var(--rose);--navy:#050505;--ink:#050505;--cream:#f8f0ed;--muted:#aaa19e;--wine:#2a1917;color-scheme:dark}
body{background:#050505;color:#f8f0ed}.logo,.hero h1 em{color:var(--rose-bright)}.hero{background:#000}.eyebrow,.tiny,.mini-label,.text-link,.destinations .sub,.story a,.quest-link,.recbody a,.recbody button{color:var(--rose)}.links .business,.back{border-color:#d59e8d66;background:#11101080}.links button:hover{color:var(--rose-bright)}.desc,.hint,.destination-intro{color:#a99e99}.destinations,.stories,.quest,.explorer{background:#080707}.card,.story,.rec{background:linear-gradient(145deg,#171312,#0b0a09);border-color:#c68d7d38}.card:hover,.card:focus-visible{border-color:var(--rose)}.card small,.filters label{color:#cc9d8e}.card strong{font-weight:400}.card .card-arrow{position:absolute;right:19px;top:19px;color:var(--rose);font-size:19px}.card .visit-tag{font:9px Arial,sans-serif;letter-spacing:.12em;color:#a99c96;display:block;margin-bottom:12px;text-transform:uppercase}.modal,.sampledialog{background:#100d0c;border-color:#bd887866;color:#f8f0ed}.modal p,.sampledialog p{color:#beb0aa}.modal h2{color:#f8d7cc}.modal .mini-label{margin-top:8px}.cta,.btn,.quest-action{background:linear-gradient(120deg,#f4cec0,#ca9180);color:#241513;border:1px solid #e4b4a3;text-decoration:none}.pill{border-color:#d29e8b55;color:var(--rose)}.globe-controls{background:#100d0cc9;border-color:#c79a8c33}.globe-controls button{color:#e9c3b5}.globe-controls button:hover{background:#e7b5a61c;color:#ffe3d7}.control-divider{background:#d5aa9840}.globe-tooltip{background:#100c0bf0;border-color:#e4b4a36b}.globe-tooltip span{color:var(--rose-bright)}.globe-tooltip small{color:var(--rose)}.passport-invite{border-color:#c18b7a44}.passport-invite strong{color:#f3d6cb}.passport-invite p{color:#aa9b94}.passport-mini{background:linear-gradient(125deg,#201413,#3b2420,#130d0c);border-color:#d6a39099;color:#efc4b3}.passport-arrow{color:var(--rose)}.journal{background:radial-gradient(ellipse at bottom,#301c18,#090707 70%)}.floating{background:#100b09ed;border-color:#d2a08a88;color:var(--rose-bright)}.preview{background:#15100e;color:#bca298}.footer,.notice,.texture-credit{color:#978b85}.region{border-color:#c18a753b;background:#19110e}.quest-screen{background:#100c0b;border-color:#cb9a8588}.quest-top{background:#080605;color:var(--rose)}.route-options button{background:linear-gradient(135deg,#2c1c17,#110b09);border-color:#d3a18b66}.quest-map{background:#1e1310}.quest-map-bg{background:radial-gradient(ellipse at 30% 25%,#ba857b66,transparent 36%),radial-gradient(ellipse at 65% 75%,#d7a09160,transparent 40%),linear-gradient(125deg,#443028,#1f1714 53%,#0b0908)}.quest-path{border-color:#e1b6aaa8}.quest-pin span{background:radial-gradient(#f4e4df,#be8474);box-shadow:0 0 0 8px #d5a09232,0 0 30px #ecc0aaa8;color:#24130d}.quest-pin.done span{background:#bd8a77;color:#120a07;box-shadow:0 0 0 7px #dbac9850}.quest-pin.locked span{background:#514440}.passport-mark{border-color:#dfb2a6;color:var(--rose)}.filters select,.modal input{background:#1c1411;border-color:#bb8d7866}.recpic span{background:#130d0bea;border-color:#d9a59777;color:#e1b6aa}.detailmock{background:#211411}
@keyframes questPulse{50%{box-shadow:0 0 0 14px #d8a28f12,0 0 50px #e7b5a6bb}}
.globe-legend{position:relative;text-align:center;display:flex;align-items:center;justify-content:center;gap:9px;color:#e5b7a7;font-size:11px;letter-spacing:.05em;margin:-4px 0 17px}.globe-legend>span{width:6px;height:6px;background:#f0b7a1;border-radius:50%;box-shadow:0 0 12px #f4b49e}.globe-spotlight{position:absolute;left:4px;top:40%;width:176px;padding:17px 16px;border-left:1px solid #d1907f88;background:linear-gradient(90deg,#100c0bd9,transparent);z-index:4;display:flex;flex-direction:column;gap:10px}.globe-spotlight[hidden]{display:none}.globe-spotlight .mini-label{font-size:8px;letter-spacing:.2em;color:#bc8e7f}.globe-spotlight strong{font:27px/1.06 Georgia,serif;color:#f8d6c7;font-weight:400}.globe-spotlight #spotlight-note{color:#a9958b;font-size:10px;line-height:1.5}.globe-spotlight button{font-size:10px;text-align:left;border:0;background:none;color:#eec2b0;padding:4px 0;letter-spacing:.03em}.globe-spotlight button:hover{text-decoration:underline;text-underline-offset:4px}
.marker{width:36px;height:36px}.marker .dot{width:7px;height:7px;border:1px solid #f4e4e0;background:#f0baa4;box-shadow:0 0 0 4px #d9947928,0 0 17px #e9cac1b8}.marker::before{content:'';position:absolute;width:23px;height:23px;border:1px solid #d7a09166;border-radius:50%;animation:destinationPulse 3.2s ease-out infinite;animation-delay:var(--pulse-delay,0s)}.marker.is-brief .dot{width:5px;height:5px;background:#c39585;box-shadow:0 0 12px #deb09b88}.marker.is-brief::before{border-style:dotted;opacity:.45}.marker.is-spotlight .dot{width:9px;height:9px;background:#f1ddd7;box-shadow:0 0 0 7px #ecb69a35,0 0 27px #e0b5a9}.marker .marker-label{position:absolute;top:34px;left:50%;transform:translateX(-50%);padding:5px 9px;border:1px solid #deb09859;border-radius:30px;background:#110a07e8;color:#f2e0dc;white-space:nowrap;font-size:10px;opacity:0;pointer-events:none}.marker.is-spotlight .marker-label{opacity:1}.marker:hover .marker-label{opacity:0}@keyframes destinationPulse{0%{transform:scale(.55);opacity:.8}85%,100%{transform:scale(1.55);opacity:0}}
.destination-intro{font-size:14px;line-height:1.7;margin:-14px 0 28px;max-width:590px}.destination-tools{display:flex;gap:20px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin:25px 0 19px}.destination-search{display:flex;flex-direction:column;gap:9px;flex:1;min-width:240px;max-width:400px}.destination-search>span{font-size:11px;color:#cda38f;letter-spacing:.06em}.destination-search input{width:100%;border:1px solid #c9957d55;border-radius:8px;padding:14px 16px;background:#140e0d;color:#f5e6e2;font:14px Arial;outline-offset:4px}.destination-search input::placeholder{color:#87756a}.destination-filters{display:flex;flex-wrap:wrap;gap:7px}.destination-filters button{font-size:11px;padding:12px 15px;border:1px solid #b4836d55;border-radius:30px;background:transparent;color:#bb9f98}.destination-filters button[aria-pressed=true]{background:#e8b99f;color:#23140d;border-color:#e8b99f}.destination-count{color:#a4837a;font-size:11px;margin:0 0 20px}.destination-empty{grid-column:1/-1;color:#c6a39a;padding:30px 0}.story-links{display:grid;gap:10px;margin:23px 0}.story-link{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 18px;background:#20140e;border:1px solid #bf896c55;border-radius:10px;text-decoration:none;color:#ebd0c9;font-size:14px;line-height:1.5}.story-link small{display:block;font-size:9px;color:#c98e7e;letter-spacing:.1em;margin-bottom:6px}.story-link:hover{border-color:#e2b8ad;background:#2a1a11}.story-link>span:last-child{font-size:21px;color:#d9a496}.modal .map-link{display:block;color:#daa597;border:0;background:none;padding:12px 0;font-size:12px;text-underline-offset:5px}.modal .map-link:hover{text-decoration:underline}.place-status{display:inline-block;font-size:10px;border:1px solid #c381704d;padding:7px 11px;border-radius:30px;color:#d7a091;margin:5px 0 2px}
@media(max-width:850px){.globe-spotlight{left:0;top:8px;width:155px;padding:10px 12px}.globe-spotlight strong{font-size:24px}.globe-spotlight #spotlight-note{display:none}.globe-legend{font-size:10px;margin-top:8px}.destination-tools{align-items:stretch}.destination-search{max-width:none}.destination-filters{align-items:center}.destination-filters button{padding:11px 12px}}
@media(max-width:500px){.globe-spotlight{top:auto;bottom:1px;left:2px;width:calc(100% - 160px);padding:7px 10px;gap:5px;background:#100a08bb}.globe-spotlight .mini-label{font-size:7px}.globe-spotlight strong{font-size:20px}.globe-spotlight button{font-size:9px;padding:1px 0}.globe-legend{margin-top:18px;font-size:9px}.globe-footer{margin-top:0}.marker{width:32px;height:32px}.marker .marker-label{font-size:9px;top:30px}.destination-tools{gap:15px}.destination-filters{gap:6px}.destination-filters button{font-size:10px;padding:10px 12px}.card .card-arrow{right:14px;top:14px}.card .visit-tag{font-size:8px}.card strong{font-size:20px}.section-title{font-size:34px;line-height:1.13}.story-link{padding:14px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.marker::before{animation:none;opacity:.4}.quest-pin span{animation:none}}

/* Keep pinches on the globe even when a finger starts on a destination. */
.marker{touch-action:none;user-select:none;-webkit-user-select:none}.globe-controls button{touch-action:manipulation}.globe-controls button:disabled{opacity:.3;cursor:default}

/* The home screen is a single globe view. The directory lives on its own page. */
.home-surface .hero{min-height:100svh;padding:108px 20px 22px;display:flex;flex-direction:column;align-items:center;overflow:hidden}.home-surface .hero-copy{flex:none;width:100%;max-width:1060px;margin:0 auto}.home-surface .hero .eyebrow{margin-bottom:14px}.home-surface .hero h1{font-size:clamp(37px,4.4vw,60px)}.home-surface .globe-stage{height:min(62svh,610px);min-height:400px;margin:0 auto;flex:none}.home-surface .globe-spotlight{top:41%}.home-surface .home-bottom{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;margin-top:-5px}.home-surface .globe-legend{margin:0}.home-surface .hint{font-size:10px;letter-spacing:.045em}.home-surface .hint span{color:var(--rose)}.home-explore{display:inline-flex;align-items:center;gap:22px;text-decoration:none;border:1px solid #e7b5a6b0;background:#e7b5a6;color:#1c1110;border-radius:50px;padding:16px 25px;font-size:11px;font-weight:700;letter-spacing:.09em;transition:transform .2s,background .2s}.home-explore:hover{background:#f8d7cc;transform:translateY(-2px)}.home-explore span{font-size:17px;font-weight:400}.passport-icon{display:flex;align-items:center;gap:10px;border:1px solid #d29a8b70;border-radius:35px;background:#100d0cc9;color:#efcabe;padding:10px 15px;font-size:10px;letter-spacing:.09em;line-height:1;white-space:nowrap}.passport-icon:hover,.work-side:hover,.work-plain:hover{border-color:#f8d7cc;color:#f8d7cc;background:#231714}.home-surface header{z-index:8;height:78px}.work-side{position:absolute;right:max(18px,2.3vw);top:50%;z-index:7;padding:14px 17px;border:1px solid #d29a8b80;background:#100d0cc9;border-radius:35px;color:#e9bbad;letter-spacing:.06em;font-size:11px;white-space:nowrap}.work-side span{padding-left:8px}.home-credit{position:relative;z-index:2;margin:auto 0 0;padding-top:24px;font-size:9px;color:#6f625e;text-align:center}.home-credit a{color:#9b8179}.directory-surface{background:#050505}.directory-header{position:relative;height:92px;border-bottom:1px solid #e7b5a61f;background:#050505}.directory-nav{display:flex;align-items:center;gap:17px}.back-to-globe{color:#d8b4a7;font-size:11px;text-decoration:none;letter-spacing:.05em}.back-to-globe:hover{text-decoration:underline}.work-plain{padding:11px 17px;color:#e9bbad;background:#100d0c;border:1px solid #d29a8b70;border-radius:35px;font-size:11px}.directory-content{padding-top:52px;min-height:calc(100svh - 92px)}.directory-content .texture-credit{text-align:center;font-size:10px;padding-top:35px}.directory-content .texture-credit a{color:#bc9a8e}
@media(max-width:1200px){.work-side{top:82px;right:22px}}
@media(max-width:850px){.home-surface .hero{padding-top:118px}.home-surface .hero h1{font-size:clamp(36px,5.6vw,49px)}.home-surface .globe-stage{height:min(58svh,530px);min-height:365px}.home-surface .globe-spotlight{top:14px}.directory-header{padding:0 5%}}
@media(max-width:500px){.home-surface header{height:66px}.home-surface .hero{padding:96px 14px 20px}.home-surface .hero h1{font-size:clamp(36px,9.8vw,42px)}.home-surface .hero h1 em{display:block}.home-surface .globe-stage{height:min(48svh,430px);min-height:345px;width:calc(100% + 20px);margin:0 -10px}.home-surface .globe-spotlight{top:auto;bottom:4px}.home-surface .globe-legend{font-size:9px}.home-surface .home-bottom{gap:12px;margin-top:10px}.home-surface .hint{font-size:9px}.home-explore{padding:14px 19px;font-size:10px;gap:13px}.passport-icon{padding:10px 12px;gap:7px;font-size:9px}.passport-icon svg{width:18px;height:21px}.work-side{top:75px;right:15px;padding:9px 12px;font-size:9px}.directory-header{height:76px;padding:0 4%}.directory-header .logo{font-size:18px}.directory-header .logo small{font-size:7px}.directory-nav{gap:6px}.directory-nav .passport-icon{padding:10px 11px}.directory-nav .passport-icon span{display:none}.directory-nav .work-plain{font-size:9px;padding:10px}.directory-nav .back-to-globe{font-size:9px}.directory-content{padding-top:38px}}


/* A quiet book icon with one small blinking sparkle. */
.passport-book{position:relative;display:grid;place-items:center;width:52px;height:52px;padding:6px;border:0;border-radius:12px;background:transparent;color:#e9baa8;box-shadow:none}.passport-book:hover,.passport-book:focus-visible{background:#211411;color:#f8d7cc;border:0}.passport-book svg{width:30px;height:34px;filter:drop-shadow(0 0 7px #e6a98a66)}.passport-sparkle{position:absolute;right:1px;top:0;color:#ffe0cd;font-size:17px;line-height:1;text-shadow:0 0 10px #e9ac8a;animation:passportBlink 3s ease-in-out infinite;transform-origin:center}.directory-nav .passport-book{width:46px;height:46px;padding:5px}.directory-nav .passport-book .passport-sparkle{display:block}
@keyframes passportBlink{0%,32%,58%,100%{opacity:.3;transform:scale(.68)}38%,48%{opacity:1;transform:scale(1.12)}54%{opacity:.85;transform:scale(.94)}}
.home-surface .home-actions{display:flex;align-items:stretch;justify-content:center;gap:12px}.home-surface .work-bottom{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid #d29a8b9c;background:#100d0cc9;color:#f0c3b3;border-radius:50px;padding:16px 24px;font-size:11px;font-weight:700;letter-spacing:.07em;white-space:nowrap;transition:transform .2s,background .2s}.home-surface .work-bottom:hover{background:#251815;transform:translateY(-2px)}.home-surface .work-bottom span{font-size:17px;font-weight:400}.home-surface .home-explore{white-space:nowrap}
@media(max-width:500px){.home-surface .home-actions{gap:7px;width:min(100%,380px)}.home-surface .home-actions>*{flex:1;min-width:0}.home-surface .home-explore,.home-surface .work-bottom{padding:13px 10px;font-size:9px;letter-spacing:.02em;gap:6px}.home-surface .home-explore span,.home-surface .work-bottom span{font-size:14px}.home-surface .work-bottom{justify-content:center}.home-surface .passport-book{width:45px;height:45px;padding:4px}.home-surface .passport-book svg{width:27px;height:31px}.directory-nav .passport-book{padding:4px}}
@media(prefers-reduced-motion:reduce){.passport-sparkle{animation:none;opacity:1;transform:none}}

/* Let the globe lead into two clear actions. */
.home-surface .home-bottom{margin-top:-1px;gap:0}.home-surface .home-actions{gap:15px}.home-surface .home-explore,.home-surface .work-bottom{min-height:58px;min-width:230px;padding:18px 30px;justify-content:center;font-size:12px;letter-spacing:.07em}.home-surface .work-bottom{min-width:202px}
@media(max-width:500px){.home-surface .home-bottom{margin-top:4px}.home-surface .home-actions{gap:8px;width:min(100%,380px)}.home-surface .home-explore,.home-surface .work-bottom{min-height:54px;min-width:0;padding:14px 12px;font-size:10px;letter-spacing:.015em}.home-surface .home-explore{flex:1.25}.home-surface .work-bottom{flex:.9}}

/* Keep page scrolling natural while the globe responds to sideways drags. */
@media(max-width:850px){.home-surface #globe canvas,.home-surface .marker{touch-action:pan-y}}
@media(max-width:500px){
 .home-surface .hero{min-height:0;padding-bottom:12px;overflow:hidden}
 .home-surface .globe-stage{height:min(49svh,440px);min-height:345px}
 .home-surface .globe-spotlight{top:auto;bottom:0;left:2px;width:min(58%,235px);min-height:0;padding:12px 14px;gap:7px;background:linear-gradient(90deg,#100c0be8,#100c0b55 76%,transparent);border:0;border-left:1px solid #d1907f88;border-radius:0}
 .home-surface .globe-spotlight #spotlight-note{display:none}
 .home-surface .globe-spotlight strong{font-size:26px}
 .home-surface .globe-spotlight button{font-size:10px}
 .home-surface .globe-controls{top:calc(100% - 3px);bottom:auto;right:10px;transform:none;gap:6px;padding:0;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
 .home-surface .globe-controls button{width:32px;height:34px;font-size:20px;color:#e9b9a9;text-shadow:0 0 12px #000}
 .home-surface .globe-controls button svg{width:13px;height:13px}
 .home-surface .globe-controls .control-divider{display:none}
 .home-surface .home-bottom{width:100%;margin-top:88px}
 .home-surface .home-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:380px;gap:10px}
 .home-surface .home-explore,.home-surface .work-bottom{width:100%;min-width:0;min-height:56px;padding:12px 8px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;font-size:clamp(10px,2.7vw,12px);line-height:1.2;letter-spacing:0}
}

/* A finer wordmark and a clearly named passport invitation. */
.home-surface .globe-key{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;max-width:100%;margin:0 0 16px;color:#d9ad9e;font:10px/1.35 Arial,Helvetica,sans-serif;letter-spacing:.09em;text-align:center}.home-surface .globe-key .key-dot{width:7px;height:7px;flex:none;border-radius:50%;background:#efbca9;box-shadow:0 0 0 4px #d9947928,0 0 14px #e9cac1b8}.home-surface .globe-key small{color:#9f8c84;font:inherit;letter-spacing:.04em}.home-surface .globe-key small::before{content:'·';margin-right:9px;color:#9f8c84}
@media(max-width:500px){.home-surface .home-bottom{margin-top:67px}.home-surface .globe-key{gap:7px;margin-bottom:17px;font-size:9px;transform:translateY(-16px)}.home-surface .globe-key small{width:100%}.home-surface .globe-key small::before{content:none}}
@keyframes keyLight{0%,100%{box-shadow:0 0 0 4px #d9947928,0 0 11px #e9cac1aa}50%{box-shadow:0 0 0 7px #d9947942,0 0 22px 5px #efbca9bb}}
@keyframes keyWords{0%,100%{text-shadow:0 0 0 transparent}50%{text-shadow:0 0 12px #efbca995}}
.home-surface .globe-key .key-dot{animation:keyLight 3.2s ease-in-out infinite}
.home-surface .globe-key .key-title{animation:keyWords 3.2s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.home-surface .globe-key .key-dot,.home-surface .globe-key .key-title{animation:none}}
@media(max-width:500px){.home-surface .hero-copy{transform:translateY(12px)}}
.home-surface .logo,.directory-surface .logo{display:inline-flex;flex-direction:column;align-items:flex-start;font-family:Didot,"Bodoni MT",Georgia,serif;font-size:30px;font-weight:400;line-height:.94;letter-spacing:.16em;text-shadow:0 0 14px #e9baa825}
.home-surface .logo small,.directory-surface .logo small{display:block;margin:0 0 8px 2px;font:500 9px/1.1 Arial,Helvetica,sans-serif;letter-spacing:.52em;text-align:left}
.directory-surface .logo{font-size:25px}
.passport-book,.directory-nav .passport-book{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:62px;height:64px;padding:2px 3px;border-radius:9px}
.passport-book svg,.directory-nav .passport-book svg{flex:none;width:27px;height:30px}
.passport-book .passport-sparkle{top:1px;right:5px}
.passport-label{display:block;color:#dcb09f;font:700 7px/1 Arial,Helvetica,sans-serif;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}
@media(max-width:500px){
 .home-surface .logo{font-size:25px}
 .home-surface .logo small{font-size:8px;letter-spacing:.47em;margin-bottom:7px}
 .home-surface .passport-book{width:58px;height:60px}
 .directory-surface .logo{font-size:19px}
 .directory-surface .logo small{font-size:7px;letter-spacing:.36em;margin-bottom:5px}
 .directory-nav .passport-book{width:50px;height:57px}
 .directory-nav .passport-label{font-size:6px;letter-spacing:.08em}
}



.country-preview-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;text-align:left;margin:25px 0;padding:22px 0;border-block:1px solid #e7b5a638}
.country-preview-facts dt{font-size:11px;color:#b78470;margin-bottom:6px}.country-preview-facts dd{margin:0;font-size:14px;line-height:1.5;color:#f8d7cc}
.country-preview-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:25px}.country-preview-actions .cta{display:inline-flex;width:auto;margin:0;padding:14px 24px;text-decoration:none}
.country-preview-back{background:transparent;border:1px solid #e7b5a660;border-radius:30px;color:#e7b5a6;padding:14px 24px;min-height:48px;cursor:pointer;font:inherit}
.shade.show{overflow-y:auto;overscroll-behavior:contain}.modal{max-height:calc(100dvh - 40px);overflow-y:auto}
@media(max-width:580px){.country-preview-actions{flex-direction:column;align-items:stretch}.country-preview-actions .cta{justify-content:center}.country-preview-facts{gap:15px}.modal{max-height:calc(100dvh - 24px)}}
