/* One connected composition at every aspect ratio. Its labels stay anchored. */
.site-production{height:100svh;min-height:0;overflow:hidden}
.site-production #map{flex:1 1 0;min-height:0;height:auto}
.site-production .island{min-width:44px;min-height:44px}
.site-production .site-footer{flex:0 0 auto}
body[data-terrain=continuous] .map-drawing{z-index:0}
body[data-terrain=continuous] .island-navigation,body[data-terrain=continuous] .logo-island{z-index:1}
body[data-terrain=continuous] .logo-island{grid-template: minmax(0,1fr) / minmax(0,1fr);mix-blend-mode:multiply;opacity:.84}
body[data-terrain=continuous] .island-label{font-size:clamp(18px,1.65vw,26px)}
body[data-terrain=continuous] .instagram .island-label{font-size:clamp(16px,1.4vw,23px)}
body[data-terrain=continuous] .portfolio .island-label{font-size:clamp(22px,2.15vw,34px)}
/* Preserve the full mark over freely moving terrain. Multiply blending removes
   its source paper; a softer fixed opacity lets the contours pass underneath. */
body[data-terrain=continuous] .logo-island img{width:auto;height:auto;max-width:min(76%,220px);max-height:min(72%,150px);object-fit:contain;filter:none}
@media(max-width:600px){
  body[data-terrain=continuous] .island-label{font-size:18px}
  body[data-terrain=continuous] .instagram .island-label{font-size:15px}
  body[data-terrain=continuous] .portfolio .island-label{font-size:21px}
}
@media(max-height:500px) and (min-width:601px){
  body[data-terrain=continuous] .island-label{font-size:18px}
  body[data-terrain=continuous] .instagram .island-label{font-size:16px}
  body[data-terrain=continuous] .portfolio .island-label{font-size:23px}
}
