#nx-europe-map{position:relative;aspect-ratio:9/10;max-width:490px;width:100%;margin:auto;overflow:hidden;isolation:isolate;touch-action:pan-y}
#nx-europe-map>img{display:block;width:100%;height:auto;max-width:none;transition:opacity .6s;opacity:.85}
#nx-europe-map.nx-map-active>img{opacity:.28}
#nx-europe-map .nx-map-hit{position:absolute;inset:0;z-index:5;cursor:pointer}
#nx-europe-map .nx-map-model{position:absolute;z-index:8;pointer-events:none;opacity:0;transform:translateY(0);transition:opacity .7s,transform .7s}
#nx-europe-map .nx-map-country.is-active .nx-map-model{opacity:1;transform:translateY(-30px)}
#nx-europe-map .nx-map-pin{position:absolute;z-index:15;pointer-events:none;display:flex;flex-direction:column;align-items:center;opacity:0;transform:translate(-50%,-90%) scale(.3);transform-origin:center bottom;transition:opacity .7s,transform .7s}
#nx-europe-map .nx-map-country.is-active .nx-map-pin{opacity:1;transform:translate(-50%,-100%) scale(1)}
#nx-europe-map .nx-map-icon{width:74px;height:74px;filter:drop-shadow(0 0 16px color-mix(in srgb,var(--pin-color),transparent 65%))}
#nx-europe-map .nx-map-model canvas,#nx-europe-map .nx-map-icon canvas{display:block;width:100%;height:100%}
#nx-europe-map .nx-map-stem{width:2px;height:36px;background:linear-gradient(white,var(--pin-color),transparent)}
#nx-europe-map .nx-map-pin>span,#nx-europe-map .nx-map-rest>span{white-space:nowrap;font:8px/1.5 monospace;text-transform:uppercase;letter-spacing:.08em;background:#0a1422dc;color:#e3eaf5;border:1px solid #ffffff26;border-radius:4px;padding:4px 7px}
#nx-europe-map .nx-map-rest{position:absolute;z-index:12;pointer-events:none;display:flex;align-items:center;gap:7px;transition:opacity .3s}
#nx-europe-map .nx-map-rest i{display:block;flex-shrink:0;width:8px;height:8px;background:var(--pin-color);border-radius:50%;box-shadow:0 0 16px var(--pin-color)}
#nx-europe-map .nx-map-country.is-active .nx-map-rest{opacity:0}
@media(max-width:600px){#nx-europe-map .nx-map-icon{width:58px;height:58px}#nx-europe-map .nx-map-stem{height:28px}#nx-europe-map .nx-map-pin>span,#nx-europe-map .nx-map-rest>span{font-size:6px}}
@media(prefers-reduced-motion:reduce){#nx-europe-map *{transition:none!important}#nx-europe-map .nx-map-model,#nx-europe-map .nx-map-pin{display:none}#nx-europe-map .nx-map-rest{opacity:1!important}}
/* Original Nexoria hero composition: 1200px container, two columns, 64px gap. */
#problem-statement{overflow:hidden}
#problem-statement .nx-knowledge-layout{max-width:1200px;box-sizing:border-box;padding:80px 32px 64px;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;align-items:center;min-height:760px}
#problem-statement .nx-knowledge-copy h2{font:700 48px/1 'Nexoria Inter',sans-serif;letter-spacing:-1.2px;margin:0 0 24px;color:var(--nx-ink)}
#problem-statement .nx-knowledge-eyebrow{font:500 11px/1.5 monospace;letter-spacing:2px;color:#5593d2;margin:0 0 22px}
#problem-statement .nx-sovereignty-intro{font:400 18px/1.55 'Nexoria Inter',sans-serif;color:var(--nx-muted);margin:0 0 40px}
.nx-original-actions{display:flex;gap:12px;margin-bottom:12px;align-items:stretch}
.nx-original-actions a{display:flex;align-items:center;justify-content:center;padding:16px 22px;border-radius:8px;font:500 14px/1.5 'Nexoria Inter',sans-serif;text-decoration:none;white-space:nowrap;border:1px solid var(--nx-line);color:var(--nx-ink)}
.nx-original-actions a:first-child{background:#2563eb!important;border-color:#2563eb;color:white!important}
.nx-original-caption{font-size:13px;line-height:1.5;color:var(--nx-muted);margin:0 0 48px}
.nx-original-facts{display:flex;flex-wrap:wrap;gap:32px;padding-top:32px;border-top:1px solid var(--nx-line);font:13px/1.5 monospace;color:var(--nx-ink)}
.nx-original-facts span{display:block;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--nx-muted);margin-bottom:3px}
#problem-statement .nx-knowledge-map{position:relative;height:auto;min-height:0;padding:16px 16px 0;border:0;border-radius:0;background:none!important;overflow:visible;isolation:auto}
#problem-statement .nx-map-caption{font:9px/1.5 monospace;letter-spacing:1.8px;text-align:center;color:var(--nx-muted);margin:0 0 8px;padding:0}
#nx-europe-map{position:relative;inset:auto;width:100%;max-width:none;aspect-ratio:9/10;margin:0;transform:none;overflow:hidden;perspective:800px}
#nx-europe-map>img{height:auto;object-fit:contain;opacity:.85;filter:none;mask-image:none;transform:translateY(3%)}
#nx-europe-map .nx-map-pin{gap:0;white-space:normal}
#nx-europe-map .nx-map-pin>span{background:#0a1422ed!important;color:#e3eaf5!important}
#problem-statement .nx-map-podcast{position:absolute;top:4%;right:-80px;width:300px;padding:18px;border:1px solid var(--nx-line);border-radius:12px;background:var(--nx-bg)!important;box-shadow:0 24px 64px #0002;backdrop-filter:blur(20px);color-scheme:normal}
#problem-statement .nx-map-podcast h3{font:600 12px/1.375 'Nexoria Inter',sans-serif;color:var(--nx-ink);margin:0 0 2px}
#problem-statement .nx-podcast-subtitle{font-size:10px;line-height:1.5;color:var(--nx-muted);margin:0 0 12px}
#problem-statement .nx-podcast-wave{height:82px;background:var(--nx-panel);border-color:var(--nx-line);margin-bottom:8px}
#problem-statement .nx-podcast-play{width:44px;height:44px;font-size:18px}
#problem-statement .nx-podcast-audio{height:30px;margin-bottom:12px}
#problem-statement .nx-podcast-description{font-size:10px;line-height:1.6;color:var(--nx-muted);margin:0 0 10px}
#problem-statement .nx-podcast-tags{gap:6px;margin-bottom:12px}
#problem-statement .nx-podcast-tags span{font-size:9px;padding:2px 8px;line-height:1.4}
#problem-statement .nx-map-podcast>a{font-size:11px}
.nx-original-map-footer{text-align:center;font:9px/1.5 monospace;letter-spacing:1px;color:var(--nx-muted);margin-top:8px}
@media(min-width:1024px) and (max-width:1450px){#problem-statement .nx-knowledge-layout{margin-right:65px;max-width:1160px}.nx-original-actions{flex-wrap:wrap}}
@media(max-width:1023px){#problem-statement .nx-knowledge-layout{grid-template-columns:1fr;padding:64px 32px;gap:48px;min-height:0}#problem-statement .nx-knowledge-map{max-width:500px;width:100%;margin:auto}#problem-statement .nx-map-podcast{position:relative;top:auto;right:auto;width:100%;margin:24px auto 0}#problem-statement .nx-knowledge-copy h2{font-size:40px}}
@media(max-width:550px){#problem-statement .nx-knowledge-layout{padding:48px 22px}#problem-statement .nx-knowledge-copy h2{font-size:34px}#problem-statement .nx-sovereignty-intro{font-size:16px}.nx-original-actions{flex-direction:column}.nx-original-facts{gap:20px}.nx-original-facts>div{font-size:11px}}

/* The location is the dot center, not the label box corner. */
#nx-europe-map .nx-map-rest{transform:translate(-4px,-50%)}

#problem-statement .nx-sovereignty-details{list-style:none;padding:0;margin:32px 0;display:flex;flex-direction:column;gap:22px}
#problem-statement .nx-sovereignty-details li{margin:0;padding:0}
#problem-statement .nx-sovereignty-details svg{display:block;width:22px;height:22px;margin-bottom:12px;color:var(--nx-ink)}
#problem-statement .nx-sovereignty-details p{border-top:1px solid var(--nx-line);padding-top:12px;margin:0;font-size:18px;line-height:1.4;letter-spacing:-.3px;color:var(--nx-muted)}
#problem-statement .nx-sovereignty-details strong{font-weight:500;color:var(--nx-ink)}
#problem-statement .nx-knowledge-copy .nx-original-caption{margin-bottom:0}
@media(max-width:550px){#problem-statement .nx-sovereignty-details p{font-size:17px}}
html[data-nx-theme] #problem-statement .nx-sovereignty-details p{color:var(--nx-muted)!important}
html[data-nx-theme] #problem-statement .nx-sovereignty-details strong{color:var(--nx-ink)!important}
/* Original podcast card: independent of the surrounding page theme. */
html[data-nx-theme] #problem-statement .nx-map-podcast{--nx-bg:#0a0a0a;--nx-panel:#111;--nx-ink:#f5f5f5;--nx-muted:#999;--nx-line:#222;background:#0a0a0a!important;border-color:#202020;box-shadow:none;backdrop-filter:none;padding:18px;border-radius:12px;color:#999!important;color-scheme:dark}
html[data-nx-theme] #problem-statement .nx-map-podcast h3{color:#f5f5f5!important;margin-bottom:4px}
html[data-nx-theme] #problem-statement .nx-map-podcast p,html[data-nx-theme] #problem-statement .nx-map-podcast .nx-podcast-description span{color:#999!important}
#problem-statement .nx-podcast-subtitle{margin-bottom:13px}
html[data-nx-theme] #problem-statement .nx-podcast-wave{background:#111!important;border-color:#222;margin-bottom:9px}
#problem-statement .nx-podcast-play{box-shadow:none}
#problem-statement .nx-podcast-audio{display:none}
#problem-statement .nx-podcast-timeline{display:flex;align-items:center;gap:14px;margin-bottom:7px}
#problem-statement .nx-podcast-timeline output{font:9px/1.4 monospace;color:#999!important;flex-shrink:0}
#problem-statement .nx-podcast-timeline input{flex:1;min-width:0}
#problem-statement .nx-podcast-volume{display:flex;align-items:center;gap:7px;margin-bottom:16px}
#problem-statement .nx-podcast-volume svg{width:15px;height:15px;color:#999!important}
#problem-statement .nx-podcast-volume input{width:64px;background:linear-gradient(to right,#3b82f6 70%,#e5e5e5 70%)}
#problem-statement .nx-map-podcast input[type=range]{appearance:none;-webkit-appearance:none;height:10px;border:1px solid white;border-radius:20px;padding:0;cursor:pointer;background-color:#e5e5e5;color-scheme:light}
#problem-statement .nx-map-podcast input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:24px;height:16px;background:white;border:0;border-radius:20px;box-shadow:0 1px 3px #0002}
#problem-statement .nx-map-podcast input[type=range]::-moz-range-thumb{width:24px;height:16px;background:white;border:0;border-radius:20px}
#problem-statement .nx-podcast-description{margin-bottom:11px}
html[data-nx-theme] #problem-statement .nx-podcast-tags span{background:#141414!important;color:#999!important;border-color:#222;padding:3px 8px}
#problem-statement .nx-podcast-tags{gap:6px;margin-bottom:13px}
html[data-nx-theme] #problem-statement .nx-map-podcast>a{color:#58a6ff!important}
html[data-nx-theme] #problem-statement .nx-podcast-seek{background:#e5e5e5!important}
#problem-statement .nx-podcast-description{font-size:10.5px}
/* Keep the location at the same SVG coordinate in both 2D and 3D states.
   The label must not contribute to the height used to anchor the pointer. */
#nx-europe-map .nx-map-pin{width:0;height:0;display:block;transform:none!important;transform-origin:center;transition:opacity .3s}
#nx-europe-map .nx-map-country.is-active .nx-map-pin{transform:none!important}
#nx-europe-map .nx-map-pin .nx-map-icon{position:absolute;left:0;bottom:36px;transform:translateX(-50%)}
#nx-europe-map .nx-map-pin .nx-map-stem{position:absolute;left:-1px;bottom:0;height:36px;background:linear-gradient(white,var(--pin-color))}
#nx-europe-map .nx-map-pin:after{content:"";position:absolute;width:8px;height:8px;left:-4px;top:-4px;border-radius:50%;background:var(--pin-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--pin-color) 20%,transparent)}
#nx-europe-map .nx-map-pin>span{position:absolute;top:9px;left:0;transform:translateX(-50%)}
@media(max-width:600px){#nx-europe-map .nx-map-pin .nx-map-icon{bottom:28px}#nx-europe-map .nx-map-pin .nx-map-stem{height:28px}}

/* Country relief uses the exact source outline. Lift the surface and its pin
   together; independent GLB framing cannot preserve geographic alignment. */
#nx-europe-map .nx-map-model>img{display:block;width:100%;height:100%;max-width:none;filter:drop-shadow(0 8px 6px #0003)}
#nx-europe-map .nx-map-country.is-active .nx-map-model{transform:translateY(-12px)}
#nx-europe-map .nx-map-pin{transition:opacity .7s,transform .7s;transform:translateY(0)!important}
#nx-europe-map .nx-map-country.is-active .nx-map-pin{transform:translateY(-12px)!important}
#nx-europe-map .nx-map-pin>span{top:12px;left:12px;transform:none}
#nx-europe-map .nx-map-country[data-key=fr] .nx-map-pin>span{left:-12px;transform:translateX(-100%)}
#nx-europe-map .nx-map-country[data-key=fr] .nx-map-rest{flex-direction:row-reverse;transform:translate(calc(-100% + 4px),-50%)}

#nx-europe-map .nx-map-hit{pointer-events:none;overflow:visible}
#nx-europe-map .nx-map-hit path{pointer-events:fill}

/* Wide navy podcast panel, separate from the map. */
html[data-nx-theme] #problem-statement .nx-map-podcast{position:relative;inset:auto;width:100%;margin:28px 0 0;padding:22px;background:#17283c!important;border:1px solid #455d78;border-radius:16px;box-shadow:none;box-sizing:border-box}
html[data-nx-theme] #problem-statement .nx-map-podcast h3{font-size:16px;line-height:1.4;margin-bottom:5px}
#problem-statement .nx-map-podcast .nx-podcast-subtitle{font-size:12px;margin-bottom:16px}
#problem-statement .nx-map-podcast .nx-podcast-description{font-size:12px;line-height:1.6;margin-bottom:16px}
#problem-statement .nx-map-podcast .nx-podcast-wave{height:60px}
#problem-statement .nx-map-podcast .nx-podcast-tags{display:none}
#problem-statement .nx-map-podcast>a{font-size:12px}

/* Legible place labels in both the resting and raised map states. */
#nx-europe-map{container-type:inline-size}
#nx-europe-map .nx-map-pin>span,#nx-europe-map .nx-map-rest>span{font-family:'Nexoria Brand','Nexoria Inter',Arial,sans-serif;font-size:16px;font-weight:500;line-height:1.4;letter-spacing:0;text-transform:none;white-space:normal;max-width:min(215px,40cqw);width:max-content;box-sizing:border-box;padding:9px 12px;border-radius:7px;background:#101c30f5;color:#fff;border-color:#ffffff40;box-shadow:0 3px 12px #0002}
#nx-europe-map .nx-map-rest>span{flex-shrink:0}
@media(max-width:600px){#nx-europe-map .nx-map-pin>span,#nx-europe-map .nx-map-rest>span{font-size:15px;padding:8px 10px}}
@media(max-width:600px){#nx-europe-map .nx-map-country[data-key=fr] .nx-map-rest{flex-direction:column;transform:translate(-50%,-4px);gap:7px}#nx-europe-map .nx-map-country[data-key=fr] .nx-map-pin>span{left:0;transform:translateX(-50%)}}
