/* Approved shared portfolio component — 2026-10-08. */
.gallery-arrow {background:rgba(17,17,17,.92); border-color:rgba(255,255,255,.45); opacity:1; color:#fff}
.gallery-arrow:hover,.gallery-arrow:focus-visible {background:#111; color:#fff; border-color:#fff}
.gallery-arrow {display:inline-flex; align-items:center; justify-content:center; padding:0; width:54px; height:54px}
.gallery-arrow svg {display:block; width:30px; height:36px; overflow:visible; pointer-events:none}
.gallery-arrow svg path {fill:none; stroke:currentColor; stroke-width:3.4; stroke-linecap:round; stroke-linejoin:round}
.gallery-arrow[data-dir="1"] svg {transform:rotate(180deg)}
.portfolio-thumbnails {min-width:0; max-width:100%}
.portfolio-thumbnails__label {margin:0 0 8px; font:500 12px/1.2 'Inter',sans-serif; color:rgba(255,255,255,.9)}
@media(min-width:1181px) {.slide-stage {height:calc(100vh - 270px)}}
@media(min-width:1181px) and (max-height:820px) {.slide-stage {height:calc(100vh - 306px)}}
@media(max-width:760px) {.portfolio-thumbnails__label {padding:0 14px; font-size:11px}}
@media(max-width:760px) {
  .gallery-ui .gallery-arrow,.mobile-arrow-controls .gallery-arrow {width:48px; height:48px}
}
@media(max-width:760px) {
  .hero-facts .hero-fact {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); align-items:baseline; gap:12px; padding:10px 0}
  .hero-facts .hero-fact span {min-width:0; overflow-wrap:anywhere}
  .hero-facts .hero-fact strong {min-width:0; max-width:none; text-align:right; overflow-wrap:anywhere}
  .hero-facts .hero-fact.hero-fact--rooms {display:grid !important; align-items:baseline !important; gap:12px !important}
  .hero-facts .hero-fact.hero-fact--rooms span {width:auto; margin-bottom:0}
}
.related-projects {background:#ebe9e3; border-top:1px solid #d8d5cd; border-bottom:1px solid #d8d5cd; padding:36px 0 32px}
#related-projects,#description {scroll-margin-top:90px}
.related-projects .page-container {width:min(1480px,calc(100% - 128px))}
@media(min-width:1181px) {.page-section--light .page-container {width:min(1480px,calc(100% - 128px))}}
@media(min-width:1600px) and (max-width:1919px) {.related-projects .page-container,.page-section--light .page-container {width:min(1680px,calc(100% - 112px))}}
@media(min-width:1920px) {.related-projects .page-container,.page-section--light .page-container {width:min(1880px,calc(100% - 128px))}}
@media(max-width:1180px) {.related-projects .page-container {width:calc(100% - 40px)}}
.related-projects__head {display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:20px}
.related-projects__head h2 {margin:0; font:500 clamp(24px,2.25vw,32px)/1.15 'Oswald',sans-serif; text-transform:uppercase}
.related-projects__all {font:600 12px/1.5 'Inter',sans-serif; text-underline-offset:5px; text-decoration-thickness:1px; white-space:nowrap}
.related-projects__grid {display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px}
.related-projects__swipe-hint {display:none}
.related-projects__grid::-webkit-scrollbar {height:3px}
.related-projects__grid::-webkit-scrollbar-track {background:transparent}
.related-projects__grid::-webkit-scrollbar-thumb {background:#a8a49c}
.related-project-card {display:block; color:#282828; background:#fff; text-decoration:none; border:1px solid #d8d5cd; min-width:0; transition:border-color .2s}
.related-project-card:hover,.related-project-card:focus-visible {border-color:#282828; outline-offset:4px}
.related-project-card__image {aspect-ratio:3/2; overflow:hidden; background:#dedbd5}
.related-project-card__image img {width:100%; height:100%; object-fit:contain}
.related-project-card__body {display:grid; grid-template-columns:1fr; align-items:center; gap:8px; padding:16px 18px}
.related-project-card__profile {grid-column:1/-1; font:500 11px/1.4 'Inter',sans-serif; color:#777}
.related-project-card__body h3 {margin:0; font:500 22px/1.2 'Oswald',sans-serif; text-transform:uppercase}
.related-project-card__cue {font:500 11px/1.4 'Inter',sans-serif; white-space:nowrap; color:#666}
.related-project-card__cue span {margin-left:8px; font-size:18px; color:#282828}
.related-about {display:block; width:max-content; max-width:100%; margin-top:20px; font:600 12px/1.5 'Inter',sans-serif; text-underline-offset:5px}
.current-project-heading {margin-bottom:32px}
.current-project-heading span {font:600 11px/1.5 'Inter',sans-serif; letter-spacing:.12em; text-transform:uppercase; color:#6f6f69}
.current-project-heading h2 {margin:8px 0 0; font:500 40px/1.1 'Oswald',sans-serif; text-transform:uppercase}
@media(max-width:1024px) and (orientation:portrait), (max-width:760px) {
  .related-projects:has(.related-project-card:nth-child(2)) .related-projects__swipe-hint {display:flex; align-items:center; justify-content:flex-end; gap:8px; margin:0 0 12px; font:500 12px/1.4 'Inter',sans-serif; color:#666}
  .related-projects__swipe-hint span {font-size:22px; line-height:1; color:#282828}
  .related-projects__grid {grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:76%; gap:16px; overflow-x:auto; scroll-snap-type:x proximity; padding-bottom:12px}
  .related-project-card {scroll-snap-align:start}
}
@media(max-width:760px) {
  .related-projects .page-container {width:calc(100% - 32px)}
  .related-projects {padding:26px 0}
  .related-projects__head {display:block; margin-bottom:18px}
  .related-projects__head h2 {font-size:25px; max-width:290px; margin-bottom:10px}
  .related-projects__all {font-size:12px}
  .related-projects__grid {display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:82%; gap:12px; overflow-x:auto; scroll-snap-type:x proximity; padding-bottom:12px}
  .related-project-card {scroll-snap-align:start}
  .related-project-card__body {display:block; padding:14px 16px}
  .related-project-card__profile {display:block; margin-bottom:6px}
  .related-project-card__body h3 {font-size:23px; margin-bottom:6px}
  .related-project-card__cue {font-size:12px}
  .current-project-heading h2 {font-size:32px}
}

