/* Light canvas, dark discovery surfaces, and a shared slowly changing accent. */
@property --gold{syntax:'<color>';inherits:true;initial-value:#ff7a1a}
@property --accent-ink{syntax:'<color>';inherits:true;initial-value:#a64100}
@keyframes expo-spectrum{
 0%,16%,100%{--gold:#ff7a1a;--accent-ink:#a64100}
 25%,41%{--gold:#ff4b4b;--accent-ink:#b12525}
 50%,66%{--gold:#64a8ff;--accent-ink:#095db7}
 75%,91%{--gold:#ffce00;--accent-ink:#806000}
}
:root{color-scheme:light;--bg:#f5f5f7;--text:#1d1d1f;--muted:#6e6e73;--line:#1d1d1f14;--gold:#ff7a1a;--accent-ink:#a64100;animation:expo-spectrum 24s linear infinite}
body{background:#f5f5f7;color:#1d1d1f}
.header{background:#ffffffc9;border-bottom-color:#1d1d1f13}
.header nav{color:#68686e}.header nav .active{color:#1d1d1f}
button:hover,a:hover{color:#1d1d1f}
.brand>span:not(.brand-icon):not(.brand-dot),.brand-dot,.brand-icon{color:var(--accent-ink)}
.eyebrow{color:var(--accent-ink)}.tiny-line{background:var(--accent-ink)}
h1 span{color:#777780}.intro p{color:#6e6e73}.edition{color:#51515a}.edition small{color:#73737d}
.preview-label{color:#6e6e73}.outline{border-color:#1d1d1f2b;background:#fff;color:#1d1d1f}
.gold{background:var(--gold);color:#101720}.gold:hover{background:var(--gold);color:#101720;filter:brightness(1.07)}
.text-button{color:#626975}.text-button:hover{color:#1d1d1f}
.explorer{border:1px solid #d9dde3;box-shadow:0 9px 40px #14203a08;grid-template-columns:minmax(0,1fr) 330px;background:#fff}
.world{color:#eff3f8;--line:#ffffff1a;min-height:740px}
.world .text-button{color:#a3b6cc}.world .text-button:hover{color:#fff}.world .eyebrow{color:#93a6bc}
.world canvas{z-index:0}.globe-title{z-index:1}.globe-title h2{font-size:23px}.globe-title p{color:#9badc1}
.world-top,.world-bottom{z-index:3}.world-bottom{color:#9bafc8}
.world .country-callout{position:absolute;inset:119px 24px auto auto;width:230px;display:block;opacity:1;pointer-events:auto;background:linear-gradient(120deg,#10213730,#08121ccc 75%);border:0;border-left:1px solid #dcecff21;border-radius:0;padding:0 0 0 22px;box-shadow:none;z-index:2;backdrop-filter:blur(5px);color:#e6eef7}
.country-kicker{font-size:9px;letter-spacing:1.7px;color:#a3b6cc}
.country-callout h3{font:italic 38px/1.1 Georgia,'Times New Roman',serif;letter-spacing:-1px;font-weight:400;margin:15px 0 20px;color:#fff;overflow-wrap:anywhere}
.country-metrics{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;border-bottom:1px solid #dcecff22;padding-bottom:16px}
.country-metrics strong{display:block;color:var(--gold);font-size:33px;line-height:1.1;font-weight:400;font-variant-numeric:tabular-nums;padding:0}
.country-metrics span{display:block;font-size:9px;color:#a3b6cc;letter-spacing:1px;margin-top:8px}
.country-next{padding:15px 0;border-bottom:1px solid #dcecff22}.country-next>span,.country-city-heading{font-size:9px;letter-spacing:1.5px;color:#9eafc4}
.country-next p{margin:6px 0 0;font-size:12px;line-height:1.5;color:#edf4fd}
.country-city-heading{padding-top:16px;padding-bottom:3px}.country-city{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dcecff14;gap:10px;padding:8px 0}
.country-city>div>span{font-size:13px;color:#e9f1fa}.country-city small{display:block;font-size:10px;line-height:1.4;color:#97acc4;margin-top:2px}
.country-city strong{color:#c7d9ed;font-size:15px;font-weight:450;text-align:right;padding:0}.country-city strong small{font-size:9px}
#callout-more{font-size:10px;color:#97acc4;margin:10px 0 11px}.country-explore{border:1px solid color-mix(in srgb,var(--gold) 60%,transparent);border-radius:5px;width:100%;padding:9px;color:var(--gold);font-size:12px;text-align:left}.country-explore:hover{color:#fff;background:#ffffff0a}.country-empty{font-size:12px;color:#a3b6cc}
.planner{background:#fff;color:#1d1d1f;border-left-color:#d9dde3}.planner .eyebrow{color:var(--accent-ink)}
.tabs{background:#f1f1f4;border:1px solid #e7e7eb}.tabs button{color:#666671;font-size:14px}.tabs button[aria-selected=true]{background:#fff;color:var(--accent-ink);box-shadow:0 2px 7px #10102013}
.field-label{color:#6e6e73;font-size:11px}.select-wrap select,input,select{background:#f8f8fa;color:#1d1d1f;border-color:#dddde3;color-scheme:light}
.select-wrap select{background:#f8f8fa;color:#26262a}.popular-label{color:#73737c;border-bottom-color:#e7e7ec}
.destination{color:#34343b;border-bottom-color:#e8e8ed;font-size:14px}.destination strong{color:#777781}.destination.selected{color:var(--accent-ink)}.destination:hover{background:#f6f6f8}
.planner-footer>div{color:#6e6e73}.planner-footer strong{color:#1d1d1f}.filter-chip{border-color:color-mix(in srgb,var(--gold) 45%,#d8d8de);color:var(--accent-ink);background:#fff}.filter-chip:hover{color:var(--accent-ink)}
.stats{border-color:#dcdce2}.stats>div{border-color:#dcdce2}.stats strong{color:#1d1d1f}.stat-label{color:#63636f}.stats small{color:#777780}
.industry-card,.event-card,.gate,dialog{color:#eff3f8;--line:#ffffff1a;--muted:#9aabc1}
.industry-card h3,.gate h3,.event-card h3{color:#eff3f8}.industry-card:hover,.event-card:hover{color:#fff;border-color:color-mix(in srgb,var(--gold) 70%,transparent)}
.industry-card.selected{border-color:var(--gold)}.card-arrow{color:var(--gold)}
.gate{background:radial-gradient(ellipse at 50% 150%,color-mix(in srgb,var(--gold) 10%,transparent),transparent 80%),#0e1622;border-color:color-mix(in srgb,var(--gold) 30%,#132031)}
.date-mode button{color:#686872}.date-mode .selected{background:color-mix(in srgb,var(--gold) 15%,#fff);color:var(--accent-ink)}
.calendar-top button{color:#25252b}.calendar-top button:first-child,.calendar-top button:last-child{color:#777780}
.weekdays{color:#777781;font-size:12px}.calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px 4px}
.calendar button,.calendar .blank{width:32px;height:32px;min-width:32px;min-height:32px;max-width:32px;max-height:32px;aspect-ratio:1/1;justify-self:center;box-sizing:border-box}
.calendar button{border-radius:50%;padding:0;font-size:13px;line-height:32px;display:grid;place-items:center;color:#41414a;background:linear-gradient(145deg,#ededf1,#fff);box-shadow:inset 2px 2px 4px #d0d0d86b,inset -2px -2px 4px #fff,1px 1px 0 #fff}
.calendar button:hover{box-shadow:inset 1px 1px 3px #c0c0ca80,0 0 0 1px #cdced8}.calendar button.chosen{background:var(--gold);color:#101720;box-shadow:inset 1px 1px 1px #ffffff66,0 3px 8px color-mix(in srgb,var(--gold) 30%,transparent)}
.calendar button.has-events:after{background:var(--accent-ink);bottom:4px}.calendar button.chosen:after{background:#17202b}
.calendar-hint,.range-fields label{color:#6e6e73}.range-fields input{background:#f8f8fa;color:#26262b;border-color:#dddde3}
#industry-options label{border-bottom-color:#e7e7ec;color:#44444c;font-size:13px}#industry-options label small{color:#72727b}#industry-options input{accent-color:var(--accent-ink)}
.member-banner{background:#fff;border-color:#d8d8df;color:var(--accent-ink)}.member-banner button{color:var(--accent-ink)}
.event-card{background:#101926}.event-card .event-date{color:var(--gold)}.event-card .event-bottom span:last-child{color:var(--gold)}
.empty{background:#fff;border-color:#d7d7df;color:#6e6e73}.empty h3{color:#1d1d1f}.empty button{color:var(--accent-ink)}
dialog{background:#111c2a;color:#eff3f8}dialog .eyebrow{color:var(--gold)}dialog .close:hover{color:#fff}.preview-notice{border-color:color-mix(in srgb,var(--gold) 25%,transparent);background:color-mix(in srgb,var(--gold) 5%,transparent)}
footer{border-top-color:#dcdce2;color:#74747e}footer .brand{color:#25252b}
@media(min-width:1450px){.explorer{grid-template-columns:minmax(0,1fr) 360px}.world{min-height:760px}.world .country-callout{width:250px;right:28px}.country-callout h3{font-size:43px}.country-city>div>span{font-size:14px}.country-city{padding:9px 0}}
@media(min-width:761px) and (max-width:1100px){.explorer{grid-template-columns:minmax(0,1fr) 300px}.world .country-callout{right:16px;width:202px;padding-left:16px}.country-callout h3{font-size:33px}.country-metrics strong{font-size:29px}.globe-title h2{font-size:19px}.country-kicker{font-size:8px;letter-spacing:1px}}
@media(max-width:760px){.explorer{grid-template-columns:1fr}.world{min-height:835px}.world .country-callout{inset:auto 22px 67px 22px;width:auto;border-left:0;border-top:1px solid #dcecff21;padding:19px 0 0;background:linear-gradient(180deg,#0a17224d,#08121ca1);display:grid;grid-template-columns:1fr 1fr;column-gap:24px;backdrop-filter:blur(3px)}.country-kicker{grid-column:1/-1;font-size:9px}.country-callout h3{grid-column:1;margin:10px 0 16px;font-size:35px;align-self:center}.country-metrics{grid-column:2;grid-row:2;align-self:center;padding:10px 0 12px;border-bottom:0}.country-metrics strong{font-size:28px}.country-metrics span{font-size:8px}.country-next{grid-column:1/-1;grid-row:3;padding:0 0 12px}.country-next p{font-size:12px}.country-city-heading{grid-column:1/-1;padding-top:12px}#callout-cities{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.country-city{padding:7px 0}.country-city>div>span{font-size:12px}.country-city small{font-size:9px}#callout-more{grid-column:1;font-size:9px}.country-explore{grid-column:2;margin-top:9px;align-self:start;font-size:11px;padding:8px}.planner{border-top-color:#d9dde3}.calendar button,.calendar .blank{width:36px;height:36px;min-width:36px;min-height:36px;max-width:36px;max-height:36px}.calendar button{line-height:36px;font-size:14px}.globe-title h2{font-size:22px}}
@media(max-width:390px){.world{min-height:860px}.world .country-callout{column-gap:15px}.country-callout h3{font-size:30px}.country-metrics{gap:8px}.country-metrics strong{font-size:25px}.country-metrics span{font-size:7px}.country-explore{font-size:10px}.country-next p{font-size:11px}}
@media(prefers-reduced-motion:reduce){:root{animation:none;--gold:#ff7a1a;--accent-ink:#a64100}}

.city-weather{position:relative;isolation:isolate;overflow:hidden;margin:20px 0;padding:22px;border:1px solid #d4e7f6;border-radius:22px;background:linear-gradient(145deg,#193e60 0%,#245e83 60%,#3b7fa1 100%);box-shadow:0 14px 28px -22px #17395380;color:#fff}.city-weather .weather-art{position:absolute;z-index:-1;right:-10px;top:0;width:160px;height:130px;object-fit:contain;pointer-events:none}.city-weather .weather-kicker{margin:0 0 7px;color:#cbe9fa;font-size:10px;font-weight:650;line-height:1.4;letter-spacing:.14em;text-transform:uppercase}.city-weather h3{max-width:calc(100% - 65px);font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.03em;margin:0 0 36px;color:#fff;overflow-wrap:anywhere}.weather-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;border:1px solid #ffffff30;border-radius:16px;background:#0c2c486b;backdrop-filter:blur(8px)}.weather-metrics strong{display:block;font-size:29px;font-weight:600;line-height:1.25;letter-spacing:-.045em;color:#fff;white-space:nowrap}.weather-metrics span{display:block;margin-top:5px;font-size:12px;line-height:1.45;color:#d2e9f7}.city-weather p{font-size:11px;line-height:1.55;color:#d4e7f4;margin:14px 0 0}.city-weather .weather-credit{padding-top:12px;border-top:1px solid #ffffff2b;color:#c9e3f2;font-size:10px}.city-weather .weather-credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}#weather-content{position:relative;min-height:95px;font-size:14px;color:#e3f2fc}.weather-retry{display:block;margin:12px 0 0;padding:9px 12px;border:1px solid #d8edfa;border-radius:10px;background:#eef8ff;color:#173e5e;font:inherit;font-size:12px;cursor:pointer}.weather-retry:focus-visible{outline:2px solid #fff;outline-offset:3px}.city-weather[data-weather-state="unavailable"] #weather-content{padding:14px;border-radius:12px;background:#0c2c4859}.city-weather[hidden]{display:none}
