
  div.svelte-1osucwe {
    position: relative;
    width: 100%;
    height: 100%;
  }

  canvas.svelte-1osucwe {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
  }

	.construction-hero.svelte-1brnfe8 {
		position: relative;
		border-radius: 0; /* full-bleed hero: no rounded corners */
		overflow: hidden;
		/* Lighten dark overlay to make the scene more visible */
		background: linear-gradient(
			135deg,
			rgba(15, 23, 42, 0.35) 0%,
			rgba(30, 41, 59, 0.35) 100%
		);
	}

	.fallback-hero.svelte-1brnfe8 {
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		background: linear-gradient(135deg, #e0f2fe 0%, #b3e5fc 100%);
		position: relative;
		overflow: hidden;
	}

	.building-illustration.svelte-1brnfe8 {
		position: relative;
		width: 200px;
		height: 200px;
	}

	.building-main.svelte-1brnfe8 {
		position: absolute;
		width: 60px;
		height: 120px;
		background: #3b82f6;
		bottom: 0;
		left: 50px;
		border-radius: 4px 4px 0 0;
		animation: svelte-1brnfe8-float 3s ease-in-out infinite;
	}

	.building-extension.svelte-1brnfe8 {
		position: absolute;
		width: 48px;
		height: 96px;
		background: #10b981;
		bottom: 0;
		left: 120px;
		border-radius: 4px 4px 0 0;
		animation: svelte-1brnfe8-float 3s ease-in-out infinite 0.5s;
	}

	.crane.svelte-1brnfe8 {
		position: absolute;
		width: 4px;
		height: 150px;
		background: #f59e0b;
		bottom: 0;
		right: 20px;
		border-radius: 2px;
		animation: svelte-1brnfe8-sway 4s ease-in-out infinite;
	}

	.crane.svelte-1brnfe8::before {
		content: '';
		position: absolute;
		width: 80px;
		height: 4px;
		background: #f59e0b;
		top: 20px;
		left: -40px;
		border-radius: 2px;
	}



	.loading-hero.svelte-1brnfe8 {
		width: 100%;
		height: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
		color: #64748b;
	}

	.loading-spinner.svelte-1brnfe8 {
		width: 40px;
		height: 40px;
		border: 4px solid #e2e8f0;
		border-top: 4px solid #10b981;
		border-radius: 50%;
		animation: svelte-1brnfe8-spin 1s linear infinite;
		margin-bottom: 16px;
	}

	@keyframes svelte-1brnfe8-float {
		0%, 100% { transform: translateY(0px); }
		50% { transform: translateY(-10px); }
	}

	@keyframes svelte-1brnfe8-sway {
		0%, 100% { transform: rotate(0deg); }
		50% { transform: rotate(2deg); }
	}



	@keyframes svelte-1brnfe8-spin {
		0% { transform: rotate(0deg); }
		100% { transform: rotate(360deg); }
	}
