.specialty-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: clamp(1.25rem, 4vw, 3rem);
  align-items: center;
  margin-bottom: clamp(2rem, 5vw, 4rem);
  padding: clamp(1.5rem, 5vw, 4rem);
  border: 1px solid var(--line);
  border-radius: var(--radius-editorial);
  background:
    radial-gradient(circle at 92% 8%, rgba(236, 170, 99, .24), transparent 34%),
    linear-gradient(145deg, #fff 0%, #f5f7f2 100%);
  overflow: hidden;
}

.specialty-hero h1 {
  max-width: 13ch;
  margin: .2rem 0 1rem;
  font-size: var(--font-size-display-title);
  line-height: var(--line-height-display);
  letter-spacing: var(--title-tracking);
}

.specialty-hero .lead { max-width: 65ch; }

.specialty-promise {
  display: grid;
  gap: .75rem;
}

.specialty-promise p {
  display: grid;
  gap: .2rem;
  margin: 0;
  padding: 1rem 1.1rem;
  border-left: 4px solid var(--brand-green);
  border-radius: 0 var(--radius-group) var(--radius-group) 0;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 8px 24px rgba(30, 49, 40, .07);
}

.specialty-promise span,
.idea-format-grid p,
.specialty-bulk-callout p {
  color: var(--muted);
}

.specialty-project-overview {
  scroll-margin-top: 6rem;
}

.specialty-project-overview .section-heading p {
  max-width: 76ch;
}

.specialty-project-inputs {
  margin-top: 1.25rem;
}

.specialty-project-inputs h3 {
  margin: 0 0 .75rem;
  font-size: 1rem;
}

.idea-format-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .85rem;
}

.idea-format-grid article {
  min-height: 0;
  padding: 1rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: var(--surface);
}

.idea-format-grid article::before {
  display: block;
  width: 36px;
  height: 4px;
  margin-bottom: .75rem;
  border-radius: 99px;
  background: var(--brand-terra);
  content: "";
}

.idea-format-grid p { margin-bottom: 0; }

.specialty-bulk-callout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr);
  gap: clamp(1rem, 4vw, 3rem);
  margin-block: clamp(2rem, 5vw, 4rem);
  padding: clamp(1.5rem, 4vw, 3rem);
  border-radius: var(--radius-editorial);
  color: #fff;
  background: var(--brand-bluegray);
}

.specialty-bulk-callout h2 { color: #fff; }
.specialty-bulk-callout p { color: rgba(255, 255, 255, .83); }
.specialty-bulk-callout ul { align-self: center; margin: 0; }
.specialty-bulk-callout li + li { margin-top: .55rem; }

.project-inquiry-section {
  scroll-margin-top: 6rem;
}

.project-inquiry-section .section-heading p {
  max-width: 70ch;
}

.project-inquiry-section .inquiry-layout {
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
}

.project-inquiry-form {
  padding: clamp(1rem, 3vw, 1.75rem);
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: #fff;
}

.concept-file-field {
  min-width: 0;
  margin: 0;
  padding: 1rem;
  border: 1px dashed var(--brand-bluegray);
  border-radius: var(--radius-group);
  background: var(--group-surface);
}

.concept-file-field legend {
  padding-inline: .25rem;
  font-size: var(--font-size-meta);
  font-weight: var(--font-weight-bold);
}

.concept-file-inputs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
  margin-bottom: .75rem;
}

.concept-file-inputs label {
  min-width: 0;
}

.concept-file-field input[type="file"] {
  padding: .65rem;
  border-style: dashed;
  background: #fff;
}

.file-status {
  min-height: 1.25rem;
  color: var(--brand-bluegray);
  font-size: .78rem;
  font-weight: 750;
}

.inquiry-confirmation {
  grid-template-columns: 22px minmax(0, 1fr) !important;
  align-items: start;
  padding: .9rem;
  border-radius: var(--radius-group);
  background: var(--group-surface);
}

.inquiry-confirmation input {
  width: 20px;
  height: 20px;
  margin: .1rem 0 0;
}

.inquiry-recaptcha:empty { display: none; }

.inquiry-layout > aside {
  position: sticky;
  top: 6rem;
}

.inquiry-layout > aside h2 { margin-top: 0; }
.inquiry-layout > aside h3 { margin-top: 1.5rem; }

.inquiry-email-option {
  margin-top: .75rem;
}

@media (max-width: 1000px) {
  .idea-format-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .concept-file-inputs { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .specialty-hero,
  .specialty-bulk-callout,
  .project-inquiry-section .inquiry-layout {
    grid-template-columns: 1fr;
  }

  .specialty-hero h1 { max-width: none; }
  .inquiry-layout > aside { position: static; }
}

@media (max-width: 520px) {
  .specialty-hero {
    margin-inline: -.45rem;
    padding: 1.25rem;
    border-radius: 16px;
  }

  .specialty-hero .button-row {
    align-items: stretch;
    flex-direction: column;
  }

  .specialty-hero .button { width: 100%; }
  .idea-format-grid { grid-template-columns: 1fr; }
  .idea-format-grid article { min-height: 0; }
  .project-inquiry-form { padding: .85rem; }
}
