/* Castle Scotland Living Atlas — accurate, palette-aware regional map */

.cs-living-atlas {
  --atlas-line: color-mix(in srgb, var(--cs-text, var(--color-primary-text)) 34%, transparent);
  --atlas-line-strong: color-mix(in srgb, var(--ghost-accent-color) 70%, var(--cs-text, var(--color-primary-text)));
}

:root[data-theme="dark"] .cs-living-atlas {
  --atlas-line: color-mix(in srgb, var(--cs-text, #f7f2e8) 38%, transparent);
  --atlas-line-strong: color-mix(in srgb, var(--ghost-accent-color) 76%, #ffffff);
}

.cs-living-atlas .cs-region-map-shell {
  position: relative;
  padding: clamp(24px, 4vw, 54px);
  overflow: hidden;
  border: 1px solid var(--cs-card-border, var(--color-border));
  border-radius: 28px;
  background:
    radial-gradient(circle at 12% 12%, color-mix(in srgb, var(--ghost-accent-color) 12%, transparent), transparent 24rem),
    radial-gradient(circle at 88% 62%, color-mix(in srgb, var(--ghost-accent-color) 8%, transparent), transparent 28rem),
    var(--cs-card, var(--background-color));
  box-shadow: 0 34px 90px color-mix(in srgb, var(--cs-text, #17243a) 11%, transparent);
}

.cs-living-atlas .cs-region-map-copy {
  max-width: 780px;
  margin-bottom: 24px;
}

.cs-living-atlas .cs-region-map-copy h2 {
  margin: 7px 0 10px;
  color: var(--cs-text, var(--color-primary-text));
}

.cs-living-atlas .cs-region-map-copy > p:last-child {
  max-width: 720px;
  margin: 0;
  color: var(--cs-muted, var(--color-secondary-text));
}

.cs-atlas-controls {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

.cs-atlas-controls[hidden] { display: none; }
.cs-atlas-controls--single { justify-content: flex-end; }

.cs-atlas-controls label {
  width: 100%;
  color: var(--cs-muted, var(--color-secondary-text));
  font-family: var(--cs-font-label, var(--font-sans));
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.cs-atlas-controls select {
  min-width: min(100%, 340px);
  min-height: 46px;
  padding: 0 42px 0 15px;
  color: var(--cs-text, var(--color-primary-text));
  font: 600 1.35rem/1 var(--font-sans);
  border: 1px solid var(--cs-card-border, var(--color-border));
  border-radius: 13px;
  background-color: var(--cs-card, var(--background-color));
  box-shadow: 0 10px 30px color-mix(in srgb, var(--cs-text, #17243a) 7%, transparent);
}

.cs-atlas-reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 16px;
  color: var(--cs-text, var(--color-primary-text));
  font: 700 1.25rem/1 var(--font-sans);
  border: 1px solid var(--cs-card-border, var(--color-border));
  border-radius: 13px;
  background: color-mix(in srgb, var(--ghost-accent-color) 8%, var(--cs-card, var(--background-color)));
  cursor: pointer;
  transition: border-color .2s ease, transform .2s ease, background-color .2s ease;
}

.cs-atlas-reset[hidden] { display: none; }
.cs-atlas-reset:hover { transform: translateY(-2px); border-color: var(--ghost-accent-color); }
.cs-atlas-reset svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.cs-living-atlas .cs-region-map-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(270px, .72fr);
  gap: 16px;
  align-items: stretch;
}

.cs-living-atlas .cs-region-map-frame.cs-atlas-map-frame {
  position: relative;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--cs-card-border, var(--color-border));
  border-radius: 22px;
  background:
    radial-gradient(circle at 38% 26%, color-mix(in srgb, var(--ghost-accent-color) 10%, transparent), transparent 26rem),
    radial-gradient(circle at 72% 74%, color-mix(in srgb, var(--ghost-accent-color) 7%, transparent), transparent 28rem),
    linear-gradient(145deg, color-mix(in srgb, var(--cs-card, var(--background-color)) 88%, transparent), color-mix(in srgb, var(--cs-bg, var(--background-color)) 78%, transparent));
  box-shadow: inset 0 1px 0 color-mix(in srgb, #ffffff 38%, transparent);
}

.cs-atlas-svg {
  display: block;
  width: 100%;
  height: auto;
  min-height: 500px;
  color: var(--cs-muted, var(--color-secondary-text));
}

.cs-atlas-terrain { color: var(--cs-muted, var(--color-secondary-text)); }

.cs-atlas-outline {
  fill: none;
  stroke: var(--atlas-line);
  stroke-width: 2.2;
  vector-effect: non-scaling-stroke;
  filter: url(#cs-atlas-shadow);
}

.cs-atlas-region {
  --atlas-fill: hsl(38 34% 68%);
  color: var(--ghost-accent-color);
  cursor: pointer;
  outline: none;
}

.cs-atlas-region.is-empty {
  pointer-events: none;
  cursor: default;
}

.cs-atlas-region.is-empty path {
  opacity: .42;
  filter: saturate(.42);
}

.cs-atlas-post-data { display: none; }

.cs-atlas-region path {
  fill: var(--atlas-fill);
  stroke: var(--atlas-line);
  stroke-width: 1.3;
  vector-effect: non-scaling-stroke;
  transform-box: fill-box;
  transform-origin: center;
  transition: opacity .28s ease, fill .28s ease, stroke .28s ease, filter .28s ease, transform .28s ease;
}

.cs-atlas-region:hover path,
.cs-atlas-region:focus path,
.cs-atlas-region.is-hovered path {
  fill: color-mix(in srgb, var(--atlas-fill) 72%, var(--ghost-accent-color));
  stroke: var(--atlas-line-strong);
  filter: url(#cs-atlas-shadow);
  transform: translateY(-2px) scale(1.006);
}

.cs-atlas-region.is-selected path {
  fill: color-mix(in srgb, var(--atlas-fill) 58%, var(--ghost-accent-color));
  stroke: var(--atlas-line-strong);
  stroke-width: 2.25;
  filter: url(#cs-atlas-glow);
  transform: translateY(-3px) scale(1.012);
}

.cs-atlas-map-frame.has-atlas-selection .cs-atlas-region:not(.is-selected) path { opacity: .48; }

.la-c1 { --atlas-fill: hsl(38 34% 68%); }
.la-c2 { --atlas-fill: hsl(154 25% 68%); }
.la-c3 { --atlas-fill: hsl(278 24% 72%); }
.la-c4 { --atlas-fill: hsl(17 30% 70%); }
.la-c5 { --atlas-fill: hsl(210 27% 69%); }
.la-c6 { --atlas-fill: hsl(184 25% 68%); }
.la-c7 { --atlas-fill: hsl(66 25% 69%); }
.la-c8 { --atlas-fill: hsl(328 24% 72%); }
.la-c9 { --atlas-fill: hsl(226 25% 70%); }
.la-c10 { --atlas-fill: hsl(96 24% 69%); }
.la-c11 { --atlas-fill: hsl(27 31% 68%); }
.la-c12 { --atlas-fill: hsl(198 27% 69%); }
.la-c13 { --atlas-fill: hsl(288 23% 71%); }
.la-c14 { --atlas-fill: hsl(47 32% 68%); }
.la-c15 { --atlas-fill: hsl(166 24% 68%); }

:root[data-theme="dark"] .la-c1 { --atlas-fill: hsl(38 28% 38%); }
:root[data-theme="dark"] .la-c2 { --atlas-fill: hsl(154 25% 36%); }
:root[data-theme="dark"] .la-c3 { --atlas-fill: hsl(278 23% 39%); }
:root[data-theme="dark"] .la-c4 { --atlas-fill: hsl(17 27% 38%); }
:root[data-theme="dark"] .la-c5 { --atlas-fill: hsl(210 26% 38%); }
:root[data-theme="dark"] .la-c6 { --atlas-fill: hsl(184 25% 36%); }
:root[data-theme="dark"] .la-c7 { --atlas-fill: hsl(66 24% 37%); }
:root[data-theme="dark"] .la-c8 { --atlas-fill: hsl(328 23% 39%); }
:root[data-theme="dark"] .la-c9 { --atlas-fill: hsl(226 24% 38%); }
:root[data-theme="dark"] .la-c10 { --atlas-fill: hsl(96 23% 37%); }
:root[data-theme="dark"] .la-c11 { --atlas-fill: hsl(27 28% 37%); }
:root[data-theme="dark"] .la-c12 { --atlas-fill: hsl(198 26% 38%); }
:root[data-theme="dark"] .la-c13 { --atlas-fill: hsl(288 22% 39%); }
:root[data-theme="dark"] .la-c14 { --atlas-fill: hsl(47 28% 37%); }
:root[data-theme="dark"] .la-c15 { --atlas-fill: hsl(166 23% 36%); }

.cs-atlas-count-marker {
  pointer-events: none;
  transition: opacity .24s ease;
}

.cs-atlas-count-marker circle {
  fill: var(--cs-card, var(--background-color));
  stroke: var(--atlas-line-strong);
  stroke-width: 1.6;
  filter: drop-shadow(0 3px 5px color-mix(in srgb, var(--cs-text, #17243a) 20%, transparent));
  transform-box: fill-box;
  transform-origin: center;
  transition: fill .24s ease, stroke .24s ease, transform .24s ease;
}

.cs-atlas-count-marker text {
  fill: var(--cs-text, var(--color-primary-text));
  font: 800 11.5px/1 var(--font-sans);
  text-anchor: middle;
  dominant-baseline: middle;
  transition: fill .24s ease;
}

.cs-atlas-region:hover .cs-atlas-count-marker circle,
.cs-atlas-region:focus .cs-atlas-count-marker circle,
.cs-atlas-region.is-hovered .cs-atlas-count-marker circle,
.cs-atlas-region.is-selected .cs-atlas-count-marker circle {
  fill: var(--ghost-accent-color);
  stroke: color-mix(in srgb, var(--ghost-accent-color) 62%, var(--cs-text, #17243a));
  transform: scale(1.1);
}

.cs-atlas-region:hover .cs-atlas-count-marker text,
.cs-atlas-region:focus .cs-atlas-count-marker text,
.cs-atlas-region.is-hovered .cs-atlas-count-marker text,
.cs-atlas-region.is-selected .cs-atlas-count-marker text {
  fill: var(--cs-accent-ink, #102035);
}

.cs-living-atlas .cs-region-map-panel.cs-atlas-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(24px, 3vw, 38px);
  color: var(--cs-text, var(--color-primary-text));
  border: 1px solid var(--cs-card-border, var(--color-border));
  border-radius: 22px;
  background:
    radial-gradient(circle at 88% 10%, color-mix(in srgb, var(--ghost-accent-color) 12%, transparent), transparent 14rem),
    color-mix(in srgb, var(--cs-card, var(--background-color)) 94%, transparent);
  box-shadow: 0 24px 60px color-mix(in srgb, var(--cs-text, #17243a) 10%, transparent);
}

.cs-living-atlas .cs-region-map-panel.has-region-gallery {
  justify-content: flex-start;
}

.cs-atlas-panel-topline {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

.cs-atlas-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--cs-muted, var(--color-secondary-text));
  font: 700 1rem/1 var(--font-sans);
  letter-spacing: .05em;
  text-transform: uppercase;
}

.cs-atlas-status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ghost-accent-color);
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--ghost-accent-color) 12%, transparent);
}

.cs-living-atlas .cs-atlas-panel h3 {
  margin: 0 0 12px;
  color: var(--cs-text, var(--color-primary-text));
  text-wrap: balance;
}

.cs-living-atlas .cs-atlas-panel.has-region-gallery h3 {
  margin-bottom: 8px;
  font-size: clamp(2rem, 2.25vw, 2.9rem);
  line-height: 1.12;
}

.cs-living-atlas .cs-region-map-total {
  display: flex;
  align-items: baseline;
  gap: 9px;
  margin-bottom: 14px;
}

.cs-living-atlas .cs-region-map-total[hidden] { display: none; }

.cs-living-atlas .cs-region-map-total strong {
  color: var(--ghost-accent-color);
  font-family: var(--cs-font-display, var(--font-serif));
  font-size: clamp(4.2rem, 6vw, 6.8rem);
  font-weight: 400;
  line-height: .9;
}

.cs-living-atlas .cs-region-map-total span {
  color: var(--cs-muted, var(--color-secondary-text));
  font-weight: 700;
}

.cs-living-atlas .has-region-gallery .cs-region-map-total {
  margin-bottom: 16px;
}

.cs-living-atlas .has-region-gallery .cs-region-map-total strong {
  font-family: var(--cs-font-label, var(--font-sans));
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.cs-living-atlas .has-region-gallery .cs-region-map-total span {
  font-size: 1.15rem;
}

.cs-living-atlas .cs-atlas-panel > p {
  margin: 0;
  color: var(--cs-muted, var(--color-secondary-text));
}

.cs-atlas-region-gallery {
  display: grid;
  gap: 12px;
}

.cs-atlas-region-gallery[hidden],
.cs-atlas-mini-castle[hidden] { display: none; }

.cs-atlas-featured-castle,
.cs-atlas-mini-castle {
  min-width: 0;
  color: var(--cs-text, var(--color-primary-text));
  text-decoration: none;
}

.cs-atlas-featured-castle {
  display: grid;
  gap: 9px;
}

.cs-atlas-post-image {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border: 1px solid var(--cs-card-border, var(--color-border));
  border-radius: 13px;
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--ghost-accent-color) 15%, var(--cs-card, var(--background-color))), color-mix(in srgb, var(--cs-muted, #687285) 14%, var(--cs-card, var(--background-color))));
}

.cs-atlas-post-image--wide {
  aspect-ratio: 16 / 9;
  border-radius: 16px;
}

.cs-atlas-post-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s cubic-bezier(.22,.8,.28,1);
}

.cs-atlas-post-image.has-image .cs-atlas-post-fallback { display: none; }

.cs-atlas-post-fallback {
  display: grid;
  place-items: center;
  width: 42%;
  color: color-mix(in srgb, var(--ghost-accent-color) 72%, var(--cs-text, #17243a));
}

.cs-atlas-post-fallback svg { width: 100%; height: auto; fill: currentColor; }

.cs-atlas-featured-castle:hover img,
.cs-atlas-mini-castle:hover img { transform: scale(1.045); }

.cs-atlas-featured-copy {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.cs-atlas-featured-copy > span { min-width: 0; }
.cs-atlas-featured-copy strong,
.cs-atlas-featured-copy small,
.cs-atlas-mini-castle strong { display: block; }
.cs-atlas-featured-copy strong,
.cs-atlas-mini-castle strong { overflow: hidden; text-overflow: ellipsis; }
.cs-atlas-featured-copy small { margin-top: 2px; color: var(--cs-muted, var(--color-secondary-text)); }

.cs-atlas-featured-copy i {
  flex: 0 0 auto;
  padding: 5px 8px;
  color: var(--cs-accent-ink, #102035);
  font: 800 1rem/1 var(--font-sans);
  font-style: normal;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ghost-accent-color) 74%, var(--cs-card, var(--background-color)));
}

.cs-atlas-mini-castles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cs-atlas-mini-castle {
  display: grid;
  gap: 6px;
}

.cs-atlas-mini-castle strong {
  color: var(--cs-text, var(--color-primary-text));
  font-size: 1.1rem;
  white-space: nowrap;
}

.cs-atlas-panel-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 22px; }

.cs-living-atlas .cs-region-map-link,
.cs-atlas-map-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 999px;
  font: 800 1.2rem/1 var(--font-sans);
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.cs-living-atlas .cs-region-map-link {
  color: var(--cs-accent-ink, #102035) !important;
  -webkit-text-fill-color: var(--cs-accent-ink, #102035);
  border: 1px solid transparent;
  background: var(--ghost-accent-color);
  box-shadow: 0 12px 30px color-mix(in srgb, var(--ghost-accent-color) 24%, transparent);
}

.cs-atlas-map-link {
  color: var(--cs-text, var(--color-primary-text));
  border: 1px solid var(--cs-card-border, var(--color-border));
  background: var(--cs-card, var(--background-color));
}

.cs-living-atlas .cs-region-map-link:hover,
.cs-atlas-map-link:hover { transform: translateY(-2px); border-color: var(--ghost-accent-color); }

/* ------------------------------------------------------------------
   Filmic load — "drawn in like a survey"

   Triggered by .is-atlas-ready, which the reveal observer in
   partials/scotland-region-map.hbs adds when the section scrolls into
   view. Two things make this pure CSS:

   1. every shape carries pathLength="1", so stroke-dasharray: 1 always
      means "the whole path" and no getTotalLength() call is needed;
   2. every region group carries --geo, its north-to-south rank
      (0 = Outer Hebrides, 12 = Dumfries and Galloway), so the map draws
      down the country instead of in template order.
   ------------------------------------------------------------------ */

/* Held back until the section is in view. */
.cs-region-map-shell.is-atlas-pending .cs-atlas-outline,
.cs-region-map-shell.is-atlas-pending .cs-atlas-region path,
.cs-region-map-shell.is-atlas-pending .cs-atlas-count-marker,
.cs-region-map-shell.is-atlas-pending .cs-atlas-panel {
  opacity: 0;
}

/* Coastline: one continuous stroke in wet gold ink.

   The drop shadow is an SVG filter, and re-running it on every frame of a
   1900-point path is the single most expensive thing on this page. It stays
   off while the line is moving and comes back once the map has settled. */
.cs-region-map-shell.is-atlas-ready:not(.is-atlas-drawn) .cs-atlas-outline {
  filter: none;
}

.cs-region-map-shell.is-atlas-ready .cs-atlas-outline {
  opacity: 0;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  animation:
    cs-atlas-outline-draw 1.5s cubic-bezier(.2, .55, .3, 1) .1s forwards,
    cs-atlas-ink-cool 2.3s ease .1s backwards;
}

/* Region borders: north to south, ink cools and fill washes in. */
/* Two animations on purpose. The draw keeps its end state (forwards), but the
   ink colour must NOT stick: a forwards animation outranks normal rules, and
   would silently disable the hover and selected styling below. */
.cs-region-map-shell.is-atlas-ready .cs-atlas-region path {
  fill-opacity: 0;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  animation:
    cs-atlas-region-draw .8s cubic-bezier(.25, .5, .3, 1) calc(1s + var(--geo, 0) * .055s) forwards,
    cs-atlas-region-ink 1.15s ease calc(1s + var(--geo, 0) * .055s) backwards;
}

/* Castle counts land last, stamped rather than faded. */
.cs-region-map-shell.is-atlas-ready .cs-atlas-count-marker {
  opacity: 0;
  animation: cs-atlas-marker-arrive .35s ease
             calc(2.15s + var(--geo, 0) * .022s) forwards;
}

.cs-region-map-shell.is-atlas-ready .cs-atlas-count-marker circle {
  transform-box: fill-box;
  transform-origin: center;
  animation: cs-atlas-marker-stamp .4s cubic-bezier(.2, 1.5, .4, 1)
             calc(2.15s + var(--geo, 0) * .022s) backwards;
}

.cs-region-map-shell.is-atlas-ready .cs-atlas-panel {
  opacity: 0;
  transform: translateY(12px);
  animation: cs-atlas-ui-arrive .45s cubic-bezier(.22, .8, .28, 1) 1.45s forwards;
}

@keyframes cs-atlas-outline-draw {
  from { opacity: 0; stroke-dashoffset: 1; }
  10%  { opacity: 1; }
  to   { opacity: 1; stroke-dashoffset: 0; }
}

@keyframes cs-atlas-ink-cool {
  0%, 55% { stroke: var(--atlas-line-strong); }
  100%    { stroke: var(--atlas-line); }
}

@keyframes cs-atlas-region-draw {
  0%   { fill-opacity: 0; stroke-dashoffset: 1; }
  62%  { fill-opacity: 0; }
  100% { fill-opacity: .94; stroke-dashoffset: 0; }
}

@keyframes cs-atlas-region-ink {
  0%, 48% { stroke: var(--atlas-line-strong); stroke-width: 1.8; }
  100%    { stroke: var(--atlas-line); stroke-width: 1.3; }
}

@keyframes cs-atlas-marker-arrive {
  from { opacity: 0; }
  to   { opacity: .74; }
}

@keyframes cs-atlas-marker-stamp {
  from { transform: scale(.4); }
  to   { transform: scale(1); }
}

@keyframes cs-atlas-ui-arrive {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes cs-atlas-mist {
  from { opacity: 0; filter: blur(14px); }
  to   { opacity: 1; filter: blur(0); }
}

/* Phones get the cheap version: no stroke animation on 16 long paths,
   just a blur lifting off the finished map. */
@media (max-width: 820px) {
  .cs-region-map-shell.is-atlas-ready .cs-atlas-outline {
    stroke: var(--atlas-line);
    stroke-dashoffset: 0;
    opacity: 1;
    animation: none;
  }

  .cs-region-map-shell.is-atlas-ready .cs-atlas-region path {
    stroke: var(--atlas-line);
    stroke-width: 1.3;
    stroke-dashoffset: 0;
    fill-opacity: .94;
    animation: none;
  }

  .cs-region-map-shell.is-atlas-ready .cs-atlas-count-marker {
    animation: cs-atlas-marker-arrive .4s ease .7s forwards;
  }

  .cs-region-map-shell.is-atlas-ready .cs-atlas-count-marker circle {
    animation: none;
  }

  .cs-region-map-shell.is-atlas-ready .cs-atlas-svg {
    animation: cs-atlas-mist 1.05s cubic-bezier(.22, .8, .28, 1) forwards;
  }

  .cs-region-map-shell.is-atlas-ready .cs-atlas-panel {
    animation-delay: .8s;
  }
}

@media (max-width: 860px) {
  .cs-living-atlas .cs-region-map-layout { grid-template-columns: 1fr; }
  .cs-living-atlas .cs-atlas-panel { min-height: auto; }
  .cs-atlas-svg { min-height: 0; }
}

@media (max-width: 560px) {
  .cs-living-atlas .cs-region-map-shell { padding: 18px; border-radius: 20px; }
  .cs-atlas-controls { display: grid; grid-template-columns: 1fr; }
  .cs-atlas-reset { width: 100%; min-width: 0; }
  .cs-living-atlas .cs-region-map-panel.cs-atlas-panel { padding: 22px; }
  .cs-atlas-panel-actions > * { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .cs-living-atlas *, .cs-living-atlas *::before, .cs-living-atlas *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  .cs-atlas-region path { transform: none !important; }
}
