.page-portfolio .portfolio-detail-inner {
  align-items: flex-start;
}

@media (min-width: 881px) {
  .page-portfolio .portfolio-detail-inner {
    grid-template-columns: minmax(0, 1.22fr) minmax(460px, 1.18fr);
    gap: 36px;
  }
}

.page-portfolio .portfolio-media-stack {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.page-portfolio .portfolio-media-frame {
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(8, 20, 38, 0.16);
}

.page-portfolio .ai-search-breakdown {
  position: relative;
  padding: 22px;
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(145deg, #0b1a2b, #12263a);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.14);
  color: #fff;
}

.page-portfolio .ai-search-breakdown::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='280' viewBox='0 0 520 280'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Ccircle cx='88' cy='70' r='42' fill='rgba(63,208,201,0.05)'/%3E%3Ccircle cx='88' cy='70' r='41.5' stroke='rgba(117,213,255,0.14)'/%3E%3Ccircle cx='232' cy='118' r='18' fill='rgba(54,163,255,0.06)'/%3E%3Ccircle cx='232' cy='118' r='17.5' stroke='rgba(117,213,255,0.16)'/%3E%3Ccircle cx='360' cy='78' r='56' fill='rgba(54,163,255,0.04)'/%3E%3Ccircle cx='360' cy='78' r='55.5' stroke='rgba(117,213,255,0.11)'/%3E%3Ccircle cx='442' cy='192' r='28' fill='rgba(63,208,201,0.05)'/%3E%3Ccircle cx='442' cy='192' r='27.5' stroke='rgba(117,213,255,0.14)'/%3E%3Ccircle cx='170' cy='214' r='64' fill='rgba(54,163,255,0.03)'/%3E%3Ccircle cx='170' cy='214' r='63.5' stroke='rgba(117,213,255,0.09)'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 520px 280px;
  background-repeat: repeat;
  opacity: 0.36;
  pointer-events: none;
}

.page-portfolio .ai-search-breakdown h3,
.page-portfolio .ai-search-breakdown p,
.page-portfolio .ai-search-steps {
  position: relative;
  z-index: 1;
}

.page-portfolio .ai-search-breakdown h3 {
  margin: 0 0 12px;
  font-size: 22px;
  line-height: 1.2;
  color: #fff;
}

.page-portfolio .ai-search-breakdown p {
  margin: 0 0 12px;
  color: rgba(255, 255, 255, 0.88);
  line-height: 1.7;
}

.page-portfolio .ai-search-steps {
  margin: 0;
  padding-left: 18px;
}

.page-portfolio .ai-search-steps li {
  margin: 0 0 8px;
  color: rgba(255, 255, 255, 0.92);
  line-height: 1.6;
}

.page-portfolio .ai-search-note {
  margin-top: 14px !important;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.76) !important;
}

.page-portfolio .portfolio-copy {
  position: relative;
  padding: clamp(24px, 2.8vw, 38px);
  border-radius: 24px;
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff, #f6f9fd);
  box-shadow: 0 20px 48px rgba(11, 25, 46, 0.12);
}

.page-portfolio .portfolio-copy-eyebrow {
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.page-portfolio .portfolio-detail-title {
  max-width: 16ch;
}

.page-portfolio .portfolio-detail-lead {
  font-size: 1.08rem;
  line-height: 1.75;
}

.page-portfolio .portfolio-role {
  margin-top: 18px;
  line-height: 1.75;
}

.page-portfolio .portfolio-highlights-heading {
  margin-top: 24px;
}

.page-portfolio .portfolio-detail-list {
  display: grid;
  gap: 12px;
}

.page-portfolio .portfolio-detail-list li {
  line-height: 1.72;
}

@media (max-width: 980px) {
  .page-portfolio .portfolio-media-stack {
    gap: 16px;
  }

  .page-portfolio .ai-search-breakdown {
    padding: 18px;
  }

  .page-portfolio .ai-search-breakdown h3 {
    font-size: 20px;
  }
}
