/* Portfolio desktop layout; scoped by its own block, including all languages. */
@media (min-width: 1024px) {
  main:has(.portfolio-slider) .heading-with-text { padding-top: 150px; }
  main:has(.portfolio-slider) .heading-with-text__content { margin-top: 6px; max-width: 680px; }
  main:has(.portfolio-slider) .heading-with-text__content p { font-size: 14px; line-height: 20px; }
  main .portfolio-slider { padding-top: 16px; }
  main .portfolio-slider__filters { margin-bottom: 22px; }
  main .portfolio-slider .dropdown__label { font-size: 14px; line-height: 18px; padding-bottom: 3px; }
  main .portfolio-slider .dropdown__head { font-size: 14px; line-height: 18px; padding-top: 8px; padding-bottom: 8px; }
  main .portfolio-slider .dropdown__selected-value { font-size: 14px; line-height: 18px; }
  main .portfolio-slider__controls { top: -54px; }
}
@media (min-width: 1024px) {
  main .portfolio-slider__items { position: relative; }
  main .portfolio-slider__controls { top: 304px; left: auto; right: 0; width: 124px; z-index: 2; }
  main .portfolio-slider .object-card__line { margin-top: 12px; margin-bottom: 8px; }
  main .portfolio-slider .object-card__title { font-size: 34px; line-height: 40px; margin-bottom: 8px; padding-right: 125px; }
  main .portfolio-slider .object-card__option { margin-bottom: 4px; }
  main .portfolio-slider .object-card-option__title { flex-basis: 160px; line-height: 20px; }
  main .portfolio-slider .object-card-option__value { line-height: 20px; }
}
@media (min-width: 1920px) {
  main .portfolio-slider__controls { top: 460px; }
}

/* Softer divider between portfolio photographs and object descriptions. */
main .portfolio-slider .object-card__line { background-color: transparent; }

/* Only the requested mobile gaps; other spacing stays unchanged. */
@media (max-width: 767px) {
  main .portfolio-slider { padding-top: 12px; }
  main .portfolio-slider__filters { margin-top: 0; }
  main .portfolio-slider__filter_industry { margin-bottom: 0; }
  main .portfolio-slider .object-card__option { margin-bottom: 4px; }
}

/* Place arrows inside the existing gap before the next section. */
main .portfolio-slider__items { position: relative; }
main .portfolio-slider__controls {
  position: absolute;
  top: 100%;
  right: 0;
  left: auto;
  width: auto;
  margin-top: 0;
  justify-content: flex-end;
}
@media (min-width: 1024px) {
  main .portfolio-slider .object-card__title { padding-right: 0; }
}
@media (min-width: 1920px) {
  main .portfolio-slider__controls { margin-top: -17px; }
}

/* Smaller portfolio descriptions on desktop only. Mobile retains its original typography. */
@media (min-width:1024px) {
  main .portfolio-slider .object-card__description { font-size:14.4px; line-height:21.6px; }
}
@media (min-width:1920px) {
  main .portfolio-slider .object-card__description { font-size:16.2px; line-height:23.4px; }
}

/* Vertical desktop portfolio. Mobile retains the existing single-column layout. */
main .portfolio-slider_vertical { user-select: text; }
main .portfolio-slider_vertical .portfolio-slider__item {
  width: 100%; margin: 0 0 44px; padding: 0 0 44px;
  border-bottom: 1px solid #dedede;
}
main .portfolio-slider_vertical .object-card {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  grid-template-rows: auto 1fr; column-gap: 36px; row-gap: 14px;
  align-items: start;
}
main .portfolio-slider_vertical .object-card__media {
  grid-column: 1; grid-row: 1 / span 2; min-width: 0; width: 100%;
}
main .portfolio-slider_vertical .object-card__media .f-slider-wrapper {
  width: 100%; max-width: none; height: 100%;
}
main .portfolio-slider_vertical .object-card__line { display: none; }
main .portfolio-slider_vertical .object-card__title {
  grid-column: 2; grid-row: 1; margin: 0; padding-right: 0;
}
main .portfolio-slider_vertical .object-card__options-and-description {
  grid-column: 2; grid-row: 2; min-width: 0; width: 100%; display: block;
}
main .portfolio-slider_vertical .object-card__description {
  margin: 18px 0 0; width: 100%;
}
main .portfolio-slider_vertical .object-card__options { display: block; }
main .portfolio-slider_vertical .object-card-option__title { flex: 0 0 145px; }
main .portfolio-slider_vertical .object-card-option__value { min-width: 0; overflow-wrap: anywhere; }
@media (min-width:1600px) {
  main .portfolio-slider_vertical .object-card { column-gap: 52px; }
}
/* Landscape tablets need the available screen width, not the legacy 584px column. */
@media (min-width:768px) and (max-width:1279.98px) {
  main .portfolio-slider_vertical > .container,
  main .heading-with-text:has(+ .portfolio-slider_vertical) > .container {
    width: calc(100% - 80px); max-width: none;
  }
  main .portfolio-slider_vertical .object-card { column-gap: 28px; }
  main .portfolio-slider_vertical .object-card-option__title { flex-basis: 120px; }
}
