html {
  scroll-behavior: smooth;
}
.hero-firemni {
  background: radial-gradient(circle at top left, #f9f5ee, #f0e6d8);
}
.hero-firemni-inner {
  align-items: center;
}
.hero-firemni-media-main {
  position: relative;
  background-color: #e5e5e5;
}
.hero-firemni-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.section-header {
  max-width: 720px;
  margin-bottom: var(--space-xl);
}
.section-intro {
  font-size: var(--text-md);
  color: var(--color-text-soft);
}
.section-business {
  background: linear-gradient(135deg, #f6f1e9, #f0e6d8);
}
.section-spaced {
  padding-top: var(--space-3xl);
  padding-bottom: var(--space-3xl);
}
.media-row-business {
  align-items: stretch;
}
.card-business {
  background: linear-gradient(135deg, #ffffff, #f7f4ef);
  border-color: #e5e5e5;
}
.media-visual-business-inner {
  background-color: #e5e5e5;
}
.business-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.feature-list-business {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.feature-item h4 {
  margin-bottom: var(--space-2xs);
  font-size: var(--text-md);
  color: #2d2d2d;
}
.feature-item p {
  margin: 0;
  color: var(--color-text-soft);
}
.section-gallery {
  background-color: var(--color-bg);
}
.gallery-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  gap: var(--space-xl);
  align-items: flex-start;
}
.gallery-figure {
  margin: 0;
}
.gallery-media {
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-soft);
  background-color: #e5e5e5;
}
.gallery-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery-caption {
  margin-top: var(--space-sm);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}
.gallery-card {
  height: 100%;
}
.story-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.story-item h4 {
  margin-bottom: var(--space-2xs);
  font-size: var(--text-md);
  color: #2d2d2d;
}
.story-item p {
  margin: 0;
}
.surface-highlight {
  margin-top: var(--space-lg);
  padding: var(--space-md) var(--space-lg);
  background: linear-gradient(135deg, #ffffff, #f3f3f3);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-subtle);
  border: 1px solid #e5e5e5;
}
.highlight-text {
  margin: 0;
  font-size: var(--text-sm);
  color: var(--color-text-soft);
}
.section-contact {
  background: radial-gradient(circle at top, #f7f2ea, #f0e6d8);
}
.contact-grid {
  align-items: stretch;
}
.contact-card {
  background: linear-gradient(135deg, #ffffff, #f7f4ef);
  border-color: #e5e5e5;
}
.contact-aside {
  padding: var(--space-lg);
  box-shadow: var(--shadow-subtle);
  border-radius: var(--radius-xl);
  background: linear-gradient(135deg, #2d2d2d, #4a4a4a);
  color: #f6f1e9;
}
.contact-aside-title {
  margin-bottom: var(--space-md);
  color: #ffffff;
}
.contact-steps {
  list-style: none;
  margin: 0 0 var(--space-md);
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.contact-step {
  display: flex;
  align-items: flex-start;
  gap: var(--space-sm);
}
.contact-step-number {
  width: 28px;
  height: 28px;
  border-radius: var(--radius-full);
  background-color: #f6f1e9;
  color: #2d2d2d;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-sm);
  font-weight: 600;
}
.contact-step-content h4 {
  margin-bottom: var(--space-2xs);
  font-size: var(--text-md);
  color: #ffffff;
}
.contact-step-content p {
  margin: 0;
  font-size: var(--text-sm);
  color: #f0e6d8;
}
.contact-note {
  margin: 0;
  font-size: var(--text-sm);
  color: #f6f1e9;
}
.hero-actions {
  gap: var(--space-sm);
}
.hero-actions .btn {
  max-width: 100%;
}
.form-actions {
  gap: var(--space-sm);
}
.form-actions .btn {
  max-width: 100%;
}
.gallery-media,
.business-image,
.hero-firemni-image {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.gallery-media:hover,
.media-visual-business-inner:hover,
.hero-firemni-media-main:hover {
  transform: translateY(-4px);
  box-shadow: 0 22px 50px rgba(0, 0, 0, 0.18);
}
.btn,
.nav-link,
.footer-link {
  transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, transform 0.12s ease;
}
@media (max-width: 1023.98px) {
  .gallery-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 767.98px) {
  .section-header {
    margin-bottom: var(--space-lg);
  }
  .section-spaced {
    padding-top: var(--space-2xl);
    padding-bottom: var(--space-2xl);
  }
  .contact-aside {
    margin-top: var(--space-md);
  }
  .hero-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .hero-actions .btn {
    width: 100%;
  }
  .form-actions {
    flex-direction: column;
  }
  .form-actions .btn {
    width: 100%;
  }
}
