/* A fixed shared silhouette; only the bottom-up result clipping changes. */
.norway-visual{display:block}
.featured-visual .norway-outline{position:absolute;top:2%;left:50%;transform:translateX(-50%);width:88%;height:82%;overflow:visible}
.norway-base{fill:#e9e2ec;fill-opacity:.3}
.norway-fill{fill-opacity:.96}
.norway-edge{fill:none;stroke:#a899af;stroke-width:1.15;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.norway-visual>.orbital-result{left:auto;right:4%;top:59%;transform:none;align-items:flex-end}
.norway-visual>.orbital-result strong{font-size:clamp(48px,5.4vw,78px);letter-spacing:-.06em;color:#49354f}
.norway-visual>.orbital-result>span{color:#706775;font-size:12px;letter-spacing:.03em}
.norway-visual>.orbital-legend{bottom:9%;gap:24px}
.norway-visual>.orbital-caption{bottom:2%;opacity:1}
.norway-visual .orbital-legend span+span i,.norway-visual.norway-no-selected .orbital-legend span:first-child i{background:#e9e2ec;box-shadow:0 0 0 1px #a899af}
.norway-visual .orbital-legend span:first-child i,.norway-visual.norway-no-selected .orbital-legend span+span i{background:#49354f;box-shadow:none}
@media(max-width:700px){
 .featured-visual.norway-visual .norway-outline{height:79%;width:92%;top:1%}
 .featured-visual.norway-visual>.orbital-result{top:57%;right:2%;left:auto;transform:none}
 .featured-visual.norway-visual>.orbital-result strong{font-size:54px}
 .featured-visual.norway-visual>.orbital-legend{bottom:10%}
 .featured-visual.norway-visual>.orbital-caption{bottom:3%}
}

/* Keep the map, result key and signature together as one responsive composition. */
.featured-visual.norway-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding-bottom:8px}
.featured-visual.norway-visual .norway-outline{position:static;inset:auto;transform:none;width:88%;height:auto;max-height:calc(100% - 95px);min-height:0;flex:0 1 auto}
.featured-visual.norway-visual>.orbital-legend{position:static;inset:auto;flex:none;min-height:16px;order:1;margin:0}
.featured-visual.norway-visual>.orbital-caption{position:static;inset:auto;order:2;flex:none;display:block;width:100%;height:auto;margin:0;text-align:center;opacity:1;line-height:1.5}
.featured-visual.norway-visual>.orbital-caption span{font-size:clamp(12px,1.1vw,15px);font-weight:500;letter-spacing:.15em;color:#49354f;white-space:nowrap}
@media(max-width:700px){
 .featured-visual.norway-visual{gap:6px}
 .featured-visual.norway-visual .norway-outline{width:92%;max-height:calc(100% - 80px)}
 .featured-visual.norway-visual>.orbital-caption span{font-size:clamp(11px,3vw,13px);letter-spacing:.13em}
}

/* A slow breathing signal beside today's featured question. */
#featured .tiny-dot{position:relative;display:inline-block;flex-shrink:0;width:9px;height:9px;border-radius:50%;background:#49354f;animation:featured-dot-breathe 3.4s ease-in-out infinite}
#featured .tiny-dot::after{content:"";position:absolute;inset:-5px;border:1px solid #49354f;border-radius:50%;opacity:0;pointer-events:none;animation:featured-dot-ripple 3.4s ease-out infinite}
@keyframes featured-dot-breathe{0%,100%{opacity:.8;transform:scale(.96)}45%{opacity:1;transform:scale(1.06)}}
@keyframes featured-dot-ripple{0%,15%{opacity:0;transform:scale(.5)}30%{opacity:.34}80%,100%{opacity:0;transform:scale(1.5)}}
@media(prefers-reduced-motion:reduce){#featured .tiny-dot{animation:none;opacity:1;transform:none}#featured .tiny-dot::after{animation:none;opacity:0}}

/* The outline gains definition as the liquid result is revealed. */
.norway-visual .norway-edge{stroke:#a899af;stroke-opacity:.65;transition:stroke-opacity .55s ease}
.norway-visual.norway-result-visible .norway-edge{stroke-opacity:1}
.norway-sheen{pointer-events:none}
@media(prefers-reduced-motion:reduce){.norway-visual .norway-edge{transition:none}}
