/* CADMINE Design Atlas: independent final layer, kept separate from legacy styles. */
body.mine-map-mode .notice,
body.mine-video-mode .notice,
body.mine-library-mode .notice,
body.mine-video-mode > header,
body.mine-map-mode:not(.mine-atlas-ready) > header { display:none !important; }

body.mine-map-mode.mine-atlas-ready > header,
header.mine-map-header {
  position:fixed !important; inset:0 0 auto !important; z-index:10000 !important;
  display:flex !important; min-height:76px !important; padding:0 4.5vw !important;
  background:rgba(255,255,252,.97) !important; border-bottom:1px solid #d9e1dc !important;
  box-shadow:0 8px 28px rgba(27,52,42,.08) !important; backdrop-filter:blur(16px) !important;
}
body.mine-map-mode > header .studio-wordmark strong { color:#263f35 !important; }
body.mine-map-mode > header .studio-wordmark span { color:#b88b45 !important; }
body.mine-map-mode > header a,
body.mine-map-mode > header button,
body.mine-map-mode > header select { color:#263f35 !important; }
body.mine-map-mode > header nav a::after { background:#b88b45 !important; }

/* Library starts immediately below the real header, with no announcement gap. */
body.mine-library-mode > header { position:sticky !important; top:0 !important; z-index:10000 !important; }
body.mine-library-mode main,
body.mine-library-mode #app { margin-top:0 !important; }

/* Homepage mission: the studio mark is replaced by the real interactive model. */
.studio-mission .mission-glb-card {
  position:relative !important; z-index:2 !important; width:100% !important; min-width:0 !important;
  max-width:none !important; justify-self:stretch !important; border:1px solid #c7d1d3 !important;
  background:#eef2f2 !important; box-shadow:0 26px 60px rgba(46,64,83,.13) !important;
}
.studio-mission .mission-glb-card model-viewer { height:clamp(410px,38vw,610px) !important; background:radial-gradient(circle at 50% 40%,#fff 0,#eef2f2 70%) !important; }
.studio-mission .mission-glb-card .home-glb-tools { background:rgba(255,255,255,.96) !important; }
.studio-mission .mission-glb-card .home-glb-tools a { background:#2e4053 !important; color:#fff !important; }
@media(min-width:821px) {
  .studio-mission { grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important; gap:clamp(36px,5vw,92px) !important; }
  .studio-mission .studio-mission-copy { max-width:none !important; }
  .studio-mission .studio-mission-copy h2 { font-size:clamp(50px,5.6vw,88px) !important; }
}
@media(max-width:820px) {
  .studio-mission .mission-glb-card { width:100% !important; max-width:none !important; justify-self:stretch !important; }
  .studio-mission .mission-glb-card model-viewer { height:460px !important; }
}

body.mine-map-mode main,
body.mine-map-mode #app { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }
body.mine-map-mode #mine-hub.mine-world {
  width:100vw !important; max-width:none !important; min-height:100svh !important;
  margin:0 !important; padding:76px 0 0 !important; overflow:hidden !important;
  background:#fff !important; color:#263f35 !important;
}
body.mine-map-mode .mine-world-head {
  display:none !important;
  text-align:center !important; background:transparent !important; border:0 !important;
}
body.mine-map-mode .mine-world-head .eyebrow { color:#b88b45 !important; letter-spacing:.19em !important; }
body.mine-map-mode .mine-world-head h1 { margin:9px 0 10px !important; color:#263f35 !important; font-size:clamp(42px,6vw,80px) !important; line-height:.89 !important; }
body.mine-map-mode .mine-world-head h1 em { color:#7a9384 !important; }
body.mine-map-mode .mine-world-head p { max-width:540px !important; margin:auto !important; color:#5c7066 !important; }

body.mine-map-mode .mine-map-canvas {
  position:relative !important; width:100vw !important; max-width:none !important;
  height:calc(100svh - 76px) !important; min-height:690px !important; margin:0 !important; padding:0 !important;
  overflow:visible !important; isolation:isolate !important;
  /* Expand the exported artwork past its built-in white margin so the world fills the screen. */
  background:#fff url('/images/design-atlas-boundaries-v2.png') center center / 245% auto no-repeat !important;
}
body.mine-map-mode .mine-map-canvas::before,
body.mine-map-mode .mine-map-canvas::after { content:none !important; }

/* A location pin, not a product card: photo sits in the round pin head. */
body.mine-map-mode .mine-map-node,
body.mine-map-mode .mine-map-node:nth-child(n+1) {
  position:absolute !important; display:block !important; width:142px !important; height:176px !important;
  min-height:0 !important; margin:0 !important; padding:0 !important; overflow:visible !important;
  background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important;
  transform:none !important; text-align:center !important; isolation:isolate !important;
}
body.mine-map-mode .mine-map-node::before {
  content:"" !important; position:absolute !important; z-index:0 !important; top:0 !important; left:20px !important;
  width:112px !important; height:142px !important; border-radius:0 !important;
  transform:none !important; background:#294a3c !important;
  clip-path:polygon(50% 100%,16% 57%,4% 36%,5% 20%,17% 6%,50% 0,83% 6%,95% 20%,96% 36%,84% 57%) !important;
  box-shadow:0 11px 20px rgba(26,56,44,.27), inset 0 0 0 2px rgba(255,255,255,.32) !important;
}
body.mine-map-mode .mine-map-node::after { display:none !important; }
body.mine-map-mode .mine-map-node .mine-card-art {
  position:absolute !important; z-index:1 !important; top:8px !important; left:28px !important;
  display:block !important; width:96px !important; height:122px !important; overflow:hidden !important;
  border:0 !important; border-radius:0 !important; background:#dde5df !important; box-shadow:none !important;
  clip-path:polygon(50% 100%,17% 57%,7% 36%,8% 21%,19% 9%,50% 3%,81% 9%,92% 21%,93% 36%,83% 57%) !important;
  transform:none !important;
}
body.mine-map-mode .mine-map-node .mine-card-film { position:absolute !important; inset:0 !important; display:block !important; width:100% !important; height:100% !important; object-fit:cover !important; filter:saturate(.75) contrast(1.05) !important; }
body.mine-map-mode .mine-map-node .mine-card-orbit,
body.mine-map-mode .mine-map-node .mine-card-gem,
body.mine-map-mode .mine-map-node .mine-card-index { display:none !important; }
body.mine-map-mode .mine-map-node .mine-card-copy { position:absolute !important; z-index:2 !important; top:147px !important; left:50% !important; display:block !important; width:180px !important; transform:translateX(-50%) !important; color:#263f35 !important; }
body.mine-map-mode .mine-map-node .mine-card-copy > span,
body.mine-map-mode .mine-map-node .mine-card-copy em { display:none !important; }
body.mine-map-mode .mine-map-node .mine-card-copy strong { display:block !important; color:#263f35 !important; font-family:Georgia,'Times New Roman',serif !important; font-size:22px !important; font-weight:400 !important; line-height:1 !important; white-space:nowrap !important; }
body.mine-map-mode .mine-map-node .mine-card-copy b { display:inline-block !important; margin-top:7px !important; padding-bottom:2px !important; border-bottom:1px solid #9bb0a2 !important; color:#536d60 !important; font-size:8px !important; font-weight:700 !important; letter-spacing:.13em !important; text-transform:uppercase !important; }
body.mine-map-mode .mine-map-node:hover .mine-card-art { transform:translateY(-7px) scale(1.06) !important; transition:transform .35s ease !important; }
body.mine-map-mode .mine-map-node:focus-visible { outline:2px solid #b88b45 !important; outline-offset:5px !important; }

/* Geographic placement for current and future mine territories. */
body.mine-map-mode .mine-map-node:nth-child(1) { left:17% !important; top:18% !important; }
body.mine-map-mode .mine-map-node:nth-child(2) { left:44% !important; top:7% !important; }
body.mine-map-mode .mine-map-node:nth-child(3) { left:69% !important; top:48% !important; }
body.mine-map-mode .mine-map-node:nth-child(4) { left:31% !important; top:62% !important; }
body.mine-map-mode .mine-map-node:nth-child(5) { left:80% !important; top:18% !important; }
body.mine-map-mode .mine-map-node:nth-child(6) { left:56% !important; top:67% !important; }
body.mine-map-mode .mine-map-node:nth-child(7) { left:8% !important; top:51% !important; }
body.mine-map-mode .mine-map-node:nth-child(8) { left:85% !important; top:61% !important; }
body.mine-map-mode .mine-map-node:nth-child(9) { left:52% !important; top:31% !important; }
body.mine-map-mode .mine-world-foot { width:88vw !important; max-width:1280px !important; margin:0 auto !important; padding:17px 0 0 !important; border-top:1px solid #dce4df !important; color:#5c7066 !important; }

/* Mine library starts directly with catalogue controls; no oversized second hero. */
.mine-library-hero { display:none !important; }
.mine-library-body { width:100% !important; max-width:none !important; padding:38px 6vw 76px !important; }

@media (max-width:760px) {
  body.mine-map-mode > header { min-height:65px !important; padding:0 18px !important; }
  body.mine-map-mode > header nav,
  body.mine-map-mode > header .language-picker { display:none !important; }
  body.mine-map-mode #mine-hub.mine-world { padding-top:65px !important; }
  body.mine-map-mode .mine-world-head { display:none !important; }
  body.mine-map-mode .mine-world-head h1 { font-size:48px !important; }
  body.mine-map-mode .mine-world-head p { font-size:14px !important; }
  /* Keep the complete world visible on a phone; pins sit on real map positions. */
  body.mine-map-mode .mine-map-canvas { height:465px !important; min-height:465px !important; background-size:100% auto !important; background-position:center top !important; }
  body.mine-map-mode .mine-map-node,
  body.mine-map-mode .mine-map-node:nth-child(n+1) { width:76px !important; height:105px !important; }
  body.mine-map-mode .mine-map-node::before { left:9px !important; width:59px !important; height:75px !important; }
  body.mine-map-mode .mine-map-node .mine-card-art { top:4px !important; left:13px !important; width:52px !important; height:66px !important; }
  body.mine-map-mode .mine-map-node .mine-card-copy { top:80px !important; width:108px !important; }
  body.mine-map-mode .mine-map-node .mine-card-copy strong { font-size:13px !important; }
  body.mine-map-mode .mine-map-node .mine-card-copy b { margin-top:4px !important; font-size:6px !important; }
  body.mine-map-mode .mine-map-node:nth-child(1) { left:13% !important; top:12% !important; }
  body.mine-map-mode .mine-map-node:nth-child(2) { left:45% !important; top:2% !important; }
  body.mine-map-mode .mine-map-node:nth-child(3) { left:70% !important; top:25% !important; }
  body.mine-map-mode .mine-map-node:nth-child(4) { left:31% !important; top:39% !important; }
  body.mine-map-mode .mine-map-node:nth-child(5) { left:79% !important; top:10% !important; }
  body.mine-map-mode .mine-map-node:nth-child(6) { left:56% !important; top:43% !important; }
  body.mine-map-mode .mine-map-node:nth-child(7) { left:4% !important; top:31% !important; }
  body.mine-map-mode .mine-map-node:nth-child(8) { left:83% !important; top:41% !important; }
  body.mine-map-mode .mine-map-node:nth-child(9) { left:53% !important; top:17% !important; }
  body.mine-map-mode .mine-world-foot { display:none !important; }
}

/* Mine library begins directly below the header; no inherited empty hero gap. */
body.mine-library-mode #catalogue-grid.collection-section {
  width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important;
}
body.mine-library-mode #catalogue-grid .mine-library-body { padding:30px 6vw 76px !important; }

/* Library card information hierarchy. */
#results .catalogue-card { position:relative !important; overflow:hidden !important; }
#results .catalogue-card .pdf-card-select {
  position:absolute !important; z-index:20 !important; top:14px !important; right:14px !important; left:auto !important;
  display:grid !important; width:30px !important; height:30px !important; place-items:center !important;
  background:rgba(255,255,255,.96) !important; border:1px solid #d1dbd5 !important; border-radius:50% !important; cursor:pointer !important;
}
#results .catalogue-card .pdf-card-select input { width:15px !important; height:15px !important; accent-color:#294a3c !important; }
#results .catalogue-card .card-minimal { display:block !important; padding:17px 19px 19px !important; }
#results .catalogue-card .catalogue-design-no { display:grid !important; justify-items:center !important; gap:5px !important; text-align:center !important; }
#results .catalogue-card .catalogue-metrics { display:grid !important; grid-template-columns:1fr 1fr !important; gap:0 !important; margin-top:17px !important; background:transparent !important; border-top:1px solid #dde5e0 !important; }
#results .catalogue-card .catalogue-metrics.has-csw { grid-template-columns:1fr 1fr 1fr !important; }
#results .catalogue-card .catalogue-metrics span { display:grid !important; gap:4px !important; padding:11px 0 0 !important; background:transparent !important; }
#results .catalogue-card .catalogue-metrics span:first-child { text-align:left !important; }
#results .catalogue-card .catalogue-metrics span:last-child { text-align:right !important; }
#results .catalogue-card .catalogue-metrics.has-csw span:nth-child(2) { text-align:center !important; }
#results .catalogue-card .card-add {
  display:flex !important; width:100% !important; min-height:39px !important; margin:18px 0 0 !important; padding:0 13px !important;
  align-items:center !important; justify-content:space-between !important; border:1px solid #294a3c !important; border-radius:0 !important;
  background:#294a3c !important; color:#fff !important; font-size:10px !important; letter-spacing:.11em !important; text-transform:uppercase !important;
}
#results .catalogue-card .card-add span { font-size:17px !important; line-height:1 !important; }
@media(max-width:760px) { body.mine-library-mode #catalogue-grid .mine-library-body { padding:20px 16px 60px !important; } }

/* CADMINE mine cursor: a restrained pickaxe for browsing and actions. */
body,
body * {
  cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cpath d='M7 9c7-7 16-7 23 0l-2.7 2.7C21 7 14 8 9.7 11.7z' fill='%23c4a366' stroke='%23283f35' stroke-width='1.4'/%3E%3Cpath d='M18 12.3 8.2 29.4' stroke='%23283f35' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M18 12.3 8.2 29.4' stroke='%23c4a366' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") 8 28, auto !important;
}
input[type='text'], input[type='search'], input[type='email'], input[type='password'], input[type='number'], textarea { cursor:text !important; }
select { cursor:pointer !important; }

/* Final atlas override. It deliberately matches the legacy #mine-hub selector
   so an older visual experiment cannot replace this image or shrink its canvas. */
body.mine-map-mode #mine-hub.mine-world .mine-map-canvas {
  width:100vw !important; height:auto !important; min-height:0 !important; aspect-ratio:1672 / 941 !important;
  margin:0 !important; overflow:hidden !important;
  background-image:url('/images/design-atlas-boundaries-v2.png') !important;
  background-repeat:no-repeat !important; background-size:100% 100% !important;
  background-position:center center !important;
}
@media (max-width:760px) {
  body.mine-map-mode #mine-hub.mine-world .mine-map-canvas {
    width:100vw !important; height:310px !important; min-height:310px !important; aspect-ratio:auto !important; margin:0 !important;
    background-size:100% auto !important; background-position:center top !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node,
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(n+1) { width:76px !important; height:105px !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(1) { left:13% !important; top:12% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(2) { left:45% !important; top:2% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(3) { left:70% !important; top:25% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(4) { left:31% !important; top:39% !important; }
}

/* Soft atlas backdrop: map supports the story instead of competing with mines. */
body.mine-map-mode #mine-hub.mine-world .mine-map-canvas {
  background:none !important;
  isolation:isolate !important;
}
body.mine-map-mode #mine-hub.mine-world .mine-map-canvas::before {
  content:"" !important; position:absolute !important; z-index:-1 !important; inset:-2px !important; display:block !important;
  background:#fff url('/images/design-atlas-boundaries-v2.png') center center / 100% 100% no-repeat !important;
  opacity:.62 !important; filter:blur(.8px) saturate(.72) !important; transform:scale(1.008) !important;
}
@media (max-width:760px) {
  body.mine-map-mode #mine-hub.mine-world .mine-map-canvas {
    height:325px !important; min-height:325px !important; overflow:visible !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-canvas::before {
    background-size:100% auto !important; background-position:center top !important; opacity:.55 !important;
  }
  /* Compact mobile pins: all four stay attached to their continents. */
  body.mine-map-mode #mine-hub.mine-world .mine-map-node,
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(n+1) {
    width:68px !important; height:96px !important; min-height:0 !important; border-radius:0 !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node::before {
    top:0 !important; left:8px !important; width:53px !important; height:68px !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node .mine-card-art {
    top:4px !important; left:12px !important; inset:auto !important; width:47px !important; height:60px !important;
    border:0 !important; border-radius:0 !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node .mine-card-copy {
    top:74px !important; left:50% !important; width:110px !important; min-width:0 !important; padding:0 !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node .mine-card-copy strong {
    margin:0 !important; font-size:13px !important; line-height:1 !important; letter-spacing:-.04em !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node .mine-card-copy b { margin-top:4px !important; font-size:6px !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(1) { left:14% !important; top:9% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(2) { left:46% !important; top:1% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(3) { left:72% !important; top:25% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(4) { left:31% !important; top:41% !important; }
}

/* No inherited top spacer on a library route. */
body.mine-library-mode main,
body.mine-library-mode #app,
body.mine-library-mode #catalogue-grid { padding-top:0 !important; margin-top:0 !important; }

/* Premium platinum-and-yellow-gold pickaxe cursor and a restrained mining strike. */
body, body * {
  cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Cdefs%3E%3ClinearGradient id='p' x1='0' x2='1'%3E%3Cstop stop-color='%23fff'/%3E%3Cstop offset='.25' stop-color='%23839198'/%3E%3Cstop offset='.53' stop-color='%23f8fafb'/%3E%3Cstop offset='1' stop-color='%23616f78'/%3E%3C/linearGradient%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop stop-color='%237c5725'/%3E%3Cstop offset='.45' stop-color='%23f6df9a'/%3E%3Cstop offset='1' stop-color='%23a97831'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M7 12C16 3 29 3 39 12l-3.6 3.6c-8-5.8-16.8-5.8-25 0z' fill='url(%23p)' stroke='%232b3f39' stroke-width='1.5'/%3E%3Cpath d='m24 16-13 22' stroke='%232b3f39' stroke-width='6.2' stroke-linecap='round'/%3E%3Cpath d='m24 16-13 22' stroke='url(%23g)' stroke-width='3.4' stroke-linecap='round'/%3E%3Ccircle cx='24' cy='16' r='2.8' fill='%23f3d98d' stroke='%2333443e' stroke-width='1'/%3E%3C/svg%3E") 11 35, auto !important;
}
.mine-strike { position:fixed; z-index:999999; width:8px; height:8px; margin:-4px; pointer-events:none; border:1px solid #d7b664; border-radius:50%; background:#fff3bd; box-shadow:0 0 0 2px rgba(255,255,255,.9); transform:scale(.15); opacity:0; }
.mine-strike::before,.mine-strike::after { content:""; position:absolute; left:50%; top:50%; width:1px; height:24px; background:linear-gradient(#fff7c9,#c4943f,transparent); transform-origin:50% 0; }
.mine-strike::before { transform:rotate(45deg); }.mine-strike::after { transform:rotate(-45deg); }
.mine-strike.is-striking { animation:mineStrike .62s cubic-bezier(.12,.8,.28,1) forwards; }
@keyframes mineStrike { 0% { opacity:0; transform:scale(.1) rotate(-16deg); } 16% { opacity:1; transform:scale(.75) rotate(0); } 100% { opacity:0; transform:scale(4.8) rotate(18deg); } }
@media (prefers-reduced-motion:reduce) { .mine-strike { display:none; } }
input[type='text'], input[type='search'], input[type='email'], input[type='password'], input[type='number'], textarea { cursor:text !important; }
select { cursor:pointer !important; }

/* Animated cursor layer: its lower handle tip is the click hot-spot. */
.mine-axe-cursor { display:none; }
@media (pointer:fine) {
  body, body * { cursor:none !important; }
  input[type='text'], input[type='search'], input[type='email'], input[type='password'], input[type='number'], textarea { cursor:text !important; }
  select { cursor:pointer !important; }
  .mine-axe-cursor {
    position:fixed; z-index:1000000; display:block; width:46px; height:46px; pointer-events:none; opacity:0;
    /* Pickaxe tip is the impact point; the rest of the tool swings around it. */
    transform-origin:4px 30px; transform:none; transition:opacity .16s ease; will-change:transform;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Cdefs%3E%3ClinearGradient id='steel' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop stop-color='%23ffffff'/%3E%3Cstop offset='.32' stop-color='%238a969a'/%3E%3Cstop offset='.58' stop-color='%23f4f6f5'/%3E%3Cstop offset='1' stop-color='%235a686d'/%3E%3C/linearGradient%3E%3ClinearGradient id='wood' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop stop-color='%236d421b'/%3E%3Cstop offset='.45' stop-color='%23d5a24a'/%3E%3Cstop offset='1' stop-color='%23824f1e'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M13 16C17 8 24 3 31 2l3.5 3.2c-7.2 4.7-12.4 10.1-16 16.5L5 31c2.2-6.3 4.9-11.3 8-15z' fill='url(%23steel)' stroke='%232b3c3d' stroke-width='1.35' stroke-linejoin='round'/%3E%3Cpath d='M15 17 40 38.5c2.2 1.9.8 5-2.1 4.4l-3.7-.7L12.5 20z' fill='url(%23wood)' stroke='%233d2b1c' stroke-width='1.4' stroke-linejoin='round'/%3E%3Cpath d='M14.5 17.2 39 39.2' fill='none' stroke='%23f4ce77' stroke-width='1.05' stroke-linecap='round' opacity='.85'/%3E%3Cellipse cx='14.5' cy='17' rx='4.2' ry='5.2' fill='url(%23steel)' stroke='%232d3d3f' stroke-width='1.25'/%3E%3Cellipse cx='14.5' cy='17' rx='1.55' ry='2.1' fill='%23d6a950' stroke='%23754e1d' stroke-width='.75'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  .mine-axe-cursor.is-visible { opacity:1; }
  .mine-axe-cursor.is-swinging { animation:axeSwing .33s cubic-bezier(.18,.74,.26,1) both; }
  body:has(input:hover,textarea:hover,select:hover) .mine-axe-cursor { opacity:0 !important; }
}
@keyframes axeSwing {
  0% { transform:rotate(0) translate(0,0); }
  34% { transform:rotate(31deg) translate(3px,-4px); }
  72% { transform:rotate(-16deg) translate(-2px,4px); }
  86% { transform:rotate(-5deg) translate(0,1px); }
  100% { transform:rotate(0) translate(0,0); }
}

/* V96 · final storefront consistency and accessibility pass. */
:where(a,button,input,select,textarea):focus-visible {
  outline:2px solid #b89652 !important;
  outline-offset:3px !important;
}

/* The product route should begin as a working surface, not after an empty hero-sized strip. */
body:has(.interactive-detail) main {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:24px 0 80px !important;
}
body:has(.interactive-detail) .product-topline,
body:has(.interactive-detail) .interactive-heading {
  padding-right:clamp(18px,5vw,72px) !important;
  padding-left:clamp(18px,5vw,72px) !important;
}
body:has(.interactive-detail) .interactive-detail { min-width:0 !important; }
.interactive-panel .interactive-tabs {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:1px !important;
  overflow:visible !important;
  border:1px solid #d7e0da !important;
  background:#d7e0da !important;
}
.interactive-panel .interactive-tabs button {
  width:100% !important;
  min-width:0 !important;
  min-height:44px !important;
  padding:10px 7px !important;
  overflow-wrap:anywhere !important;
  background:#fff !important;
  border:0 !important;
  text-align:center !important;
}
.interactive-panel .interactive-tabs button.active { background:#294a3c !important; color:#fff !important; }

/* Controls use one quiet physical scale across service, membership and commerce pages. */
.service-page-actions .button,
.service-page-actions .text-link,
.service-page-list a,
.service-page-cta .button,
.interactive-page .button,
.cami-page .button { min-height:44px; display:inline-flex; align-items:center; }
.service-page-list p,
.service-process p,
.interactive-page-specs p,
.cami-page-access p { max-width:62ch; line-height:1.72; }

/* Reduced-motion users must receive the content immediately, never invisible cards. */
@media (prefers-reduced-motion:reduce) {
  .mine-library-reveal .card,
  .mine-category-card,
  .featured-design,
  .cami-panel,
  .trust-section,
  .plans-section,
  .article-card,
  .collection-section {
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
  }
  html { scroll-behavior:auto !important; }
}

@media (max-width:760px) {
  header .studio-wordmark,
  header .drawer-toggle,
  header .bag,
  header .language-picker select { min-height:44px !important; }
  header .studio-wordmark { display:flex !important; align-items:center !important; }
  .service-page-actions .button,
  .service-page-actions .text-link { width:100% !important; justify-content:center !important; }
  .interactive-panel .interactive-tabs { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body:has(.interactive-detail) main { padding-top:12px !important; }
  body:has(.interactive-detail) .interactive-heading { gap:22px !important; }
  body:has(.interactive-detail) .interactive-actions { display:grid !important; grid-template-columns:1fr 1fr !important; width:100% !important; }
  body:has(.interactive-detail) .interactive-actions button { min-height:44px !important; width:100% !important; }
  .pdf-card-select { width:40px !important; height:40px !important; }
  #results .catalogue-card .card-add { min-height:44px !important; }
  footer .footer-links a,
  footer .footer-project-link,
  footer .business-links a { min-height:36px; display:flex; align-items:center; }
  footer .footer-social a { width:44px !important; height:44px !important; }
}

/* V96 mobile atlas: a softly detailed map, readable pins and no dead white canvas. */
body.mine-map-mode #mine-hub.mine-world .mine-map-canvas::before {
  opacity:.9 !important;
  filter:blur(.65px) saturate(.86) !important;
}
@media (max-width:760px) {
  body.mine-map-mode #mine-hub.mine-world { min-height:100svh !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-canvas {
    height:calc(100svh - 65px) !important;
    min-height:620px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,#fbfcfa 0%,#fff 100%) !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-canvas::before {
    inset:-8px !important;
    background-size:cover !important;
    background-position:center center !important;
    opacity:.88 !important;
    filter:blur(1px) saturate(.82) !important;
    transform:scale(1.02) !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node,
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(n+1) {
    width:88px !important;
    height:122px !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node::before {
    display:none !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node .mine-card-art {
    top:5px !important;
    left:15px !important;
    width:58px !important;
    height:75px !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node .mine-card-copy {
    top:92px !important;
    width:132px !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node .mine-card-copy strong {
    font-size:15px !important;
    text-shadow:0 1px 10px rgba(255,255,255,.95) !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node .mine-card-copy b {
    margin-top:6px !important;
    padding:4px 5px !important;
    background:rgba(255,255,255,.82) !important;
    font-size:7px !important;
  }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(1) { left:6% !important; top:15% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(2) { left:40% !important; top:4% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(3) { left:69% !important; top:42% !important; }
  body.mine-map-mode #mine-hub.mine-world .mine-map-node:nth-child(4) { left:27% !important; top:57% !important; }
}
