/*
 * O inwestycji — siatka klienta z Figmy K-M-fin, node 1:226.
 * Wartości pochodzą z frame'u 1920 px: content 1620 (150+1620+150),
 * „Lokalizacja” 945/1140, „5 kondygnacji” 792/1331,
 * „Smaki” 725+103+792. Bez zmian w innych podstronach.
 */
@media (min-width: 1601px) {
  .page-id-47 .km-invest-location__badge { top:15px; }
  .page-id-47 .km-invest-tastes__inner {
    position:relative;
    width:min(84.375vw,1620px);
    height:100%;
    margin-inline:auto;
  }
  .page-id-47 .km-invest-tastes__copy {
    position:absolute;
    left:0; top:89px; right:auto; bottom:auto;
    width:min(37.760417vw,725px);
    margin:0;
  }
  .page-id-47 .km-invest-tastes__copy h2 {
    max-width:658px;
    font-size:48px;
    line-height:1.1;
  }
  .page-id-47 .km-invest-tastes__image {
    position:absolute;
    right:0; top:81px; left:auto;
    width:min(41.25vw,792px);
    height:auto;
    aspect-ratio:792/522;
    object-fit:cover;
  }
}

/* Węższy desktop zachowuje proporcje Figmy zamiast rozciągać kolumny
   do 24 px od krawędzi i zamieniać kompozycje w losowe gridy. */
@media (min-width: 1201px) and (max-width: 1600px) {
  .page-id-47 .km-invest-location {
    height:37.708333vw;
    padding:0;
    background:#fff;
  }
  .page-id-47 .km-invest-location__inner {
    position:relative;
    display:block;
    width:100%;
    max-width:1920px;
    height:100%;
    min-height:0;
    margin:0 auto;
  }
  .page-id-47 .km-invest-location__panel {
    position:absolute;
    left:auto;right:0;top:0;bottom:auto;
    width:59.375%;
    height:37.395833vw;
    min-height:0;
    margin:0;
    padding:0;
    background:#f8f5f1;
  }
  .page-id-47 .km-invest-location__visual {
    position:absolute;
    left:0;right:auto;top:4.427083vw;bottom:auto;
    width:49.21875vw;
    height:28.072917vw;
    min-height:0;
    margin:0;
    z-index:2;
    overflow:hidden;
  }
  .page-id-47 .km-invest-location__visual .km-invest-location__image {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    min-height:0;
    max-height:none;
    object-fit:cover;
  }
  .page-id-47 .km-invest-location__copy {
    position:absolute;
    left:13.75vw;right:7.8125vw;top:3.4375vw;bottom:auto;
    width:auto;
    max-width:none;
    padding:0;
    margin:0;
  }
  .page-id-47 .km-invest-location__badge {
    position:absolute;
    left:34.375vw;top:.78125vw;right:auto;bottom:auto;
    display:block;
    width:12.760417vw;
    height:12.760417vw;
    min-width:0;
    min-height:0;
    padding:0;
    z-index:4;
  }
  .page-id-47 .km-invest-location__badge img {
    display:block;width:100%;height:100%;object-fit:contain;
  }
  .page-id-47 .km-invest-location__copy h2 {
    font-size:clamp(32px,2.5vw,48px);
    line-height:1.21;
    margin-bottom:1.35vw;
  }
  .page-id-47 .km-invest-location__copy h3 {
    font-size:clamp(18px,1.25vw,24px);
    line-height:1.4;
    margin-bottom:1.15vw;
  }
  .page-id-47 .km-invest-location__copy p {
    font-size:clamp(14px,.9375vw,18px);
    line-height:1.55;
    margin:0 0 1.12vw;
  }

  .page-id-47 .km-invest-floors {
    position:relative;
    height:36.041667vw;
    min-height:0;
    padding:0;
    background:#fff;
  }
  .page-id-47 .km-invest-floors__inner {
    position:relative;
    display:block;
    height:100%;
    width:100%;
    max-width:1920px;
    margin:0 auto;
  }
  .page-id-47 .km-invest-floors__panel {
    position:absolute;
    left:auto;right:0;top:0;bottom:auto;
    width:69.322917%;
    height:36.041667vw;
    min-height:0;
    margin:0;padding:0;
    background:#6a4533;
  }
  .page-id-47 .km-invest-floors__image {
    position:absolute;
    left:7.8125vw;top:4.583333vw;right:auto;bottom:auto;
    width:41.25vw;
    height:27.1875vw;
    max-height:none;
    object-fit:cover;
    z-index:2;
  }
  .page-id-47 .km-invest-floors__copy {
    position:absolute;
    left:23.75vw;top:5.104167vw;
    right:7.8125vw;bottom:auto;
    width:auto;
    padding:0;margin:0;
  }
  .page-id-47 .km-invest-floors__copy h2 {
    font-size:clamp(32px,2.5vw,48px);
    line-height:1.21;
    margin:0 0 1.5vw;
  }
  .page-id-47 .km-invest-floors__copy p {
    font-size:clamp(14px,.9375vw,18px);
    line-height:1.55;
    margin:0 0 1.25vw;
  }

  .page-id-47 .km-invest-tastes {
    height:auto;
    min-height:35.3125vw;
    padding:0 0 4.21875vw;
  }
  .page-id-47 .km-invest-tastes__inner {
    display:grid;
    grid-template-columns:minmax(0,725fr) minmax(0,792fr);
    column-gap:5.364583vw;
    align-items:start;
    width:84.375vw;
    max-width:calc(100% - 64px);
    height:auto;
    margin:0 auto;
  }
  .page-id-47 .km-invest-tastes__copy {
    position:relative;
    inset:auto;
    width:100%;
    min-width:0;
    margin:4.635417vw 0 0;
    padding:0;
    align-self:start;
  }
  .page-id-47 .km-invest-tastes__copy h2 {
    max-width:658px;
    font-size:clamp(32px,2.5vw,48px);
    line-height:1.1;
  }
  .page-id-47 .km-invest-tastes__copy p {
    font-size:clamp(15px,.9375vw,18px);
    line-height:1.55;
  }
  .page-id-47 .km-invest-tastes__image {
    position:relative;
    inset:auto;
    display:block;
    width:100%;
    height:auto;
    max-height:none;
    margin-top:4.21875vw;
    aspect-ratio:792/522;
    object-fit:cover;
  }
}

/* Ekrany tabletowe: czytelny układ, lecz wciąż z marginesem
   wydzielonym z siatki projektowej. */
@media (min-width: 821px) and (max-width: 1200px) {
  .page-id-47 .km-invest-tastes__inner {
    width:calc(100% - 12vw);
    margin:0 auto;
    grid-template-columns:minmax(0,1fr) minmax(0,1.09fr);
    gap:5vw;
  }
  .page-id-47 .km-invest-tastes__copy {min-width:0;}
  .page-id-47 .km-invest-tastes__copy h2 {
    font-size:clamp(28px,3.5vw,42px);
    line-height:1.17;
  }
  .page-id-47 .km-invest-tastes__copy p {font-size:15px;line-height:1.55;}
  .page-id-47 .km-invest-tastes__image {
    display:block;width:100%;height:auto;
    aspect-ratio:792/522;
  }
  .page-id-47 .km-invest-location__inner {width:calc(100% - 12vw);}
  .page-id-47 .km-invest-location__panel {padding:60px 4vw;}
  .page-id-47 .km-invest-floors__inner {width:calc(100% - 12vw);}
  .page-id-47 .km-invest-floors__panel {padding:60px 4vw 60px 8vw;}
}

/* Przełącznik B1/B2 musi pozostać poza kolumną tekstową. */
@media (min-width:821px) {
  .page-id-47 .km-invest-tastes__copy,
  .page-id-47 .km-invest-location__copy,
  .page-id-47 .km-invest-floors__copy {min-width:0;}
}

/*
 * Siatka akceptacyjna: "Smaki Mazur" są punktem odniesienia.
 * Wyrównuje pozostałe białe sekcje do tej samej osi 150 px / 1620 px
 * przy 1920 px szerokości. Nie dotyka: Lokalizacja, 5 kondygnacji, Smaki.
 */
@media (min-width: 1601px) {
  .page-id-47 .km-invest-intro__inner,
  .page-id-47 .km-invest-outdoor__inner,
  .page-id-47 .km-invest-everyday__inner,
  .page-id-47 .km-invest-standard__inner {
    width: min(84.375vw, 1620px);
    max-width: none;
    margin-inline: auto;
    position: relative;
  }

  .page-id-47 .km-invest-intro__copy,
  .page-id-47 .km-invest-outdoor__copy,
  .page-id-47 .km-invest-standard__copy {
    left: 0;
    right: auto;
    width: min(37.760417vw, 725px);
    max-width: 100%;
  }
  .page-id-47 .km-invest-intro__copy { top: 70px; }
  .page-id-47 .km-invest-outdoor__copy { top: 100px; }
  .page-id-47 .km-invest-standard__copy { top: 54px; }
  .page-id-47 .km-invest-intro__media,
  .page-id-47 .km-invest-outdoor__image {
    right: 0;
    left: auto;
    width: min(41.25vw, 792px);
  }
  .page-id-47 .km-invest-intro__media { top: 60px; }
  .page-id-47 .km-invest-outdoor__image { top: 83px; }

  /* Codzienność: zdjęcie z lewej, tekst od drugiej kolumny Figmy. */
  .page-id-47 .km-invest-everyday__image {
    left: 0;
    right: auto;
    top: 60px;
    width: min(41.25vw, 792px);
  }
  .page-id-47 .km-invest-everyday__copy {
    left: min(46.5625vw, 894px);
    right: 0;
    top: 95px;
    width: auto;
    max-width: 726px;
  }
  /* Standard ma kadr do prawej krawędzi viewportu, ale tekst
     jest na tej samej osi co Smaki Mazur. */
  .page-id-47 .km-invest-standard__image {
    left: auto;
    right: calc((100vw - min(84.375vw, 1620px)) / -2);
    top: 0;
    width: 50vw;
    height: 752px;
    object-fit: cover;
  }
  .page-id-47 .km-invest-standard__body li {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 5px;
  }
  .page-id-47 .km-invest-standard__pdf {
    font-size: 18px;
    line-height: 28px;
    margin-top: 22px;
  }
}

/* Węższe desktopy zachowują ten sam układ kompozycyjny w siatce,
   zamiast startować kolumny tuż przy krawędzi okna. */
@media (min-width: 1201px) and (max-width: 1600px) {
  .page-id-47 .km-invest-intro__inner,
  .page-id-47 .km-invest-outdoor__inner,
  .page-id-47 .km-invest-everyday__inner,
  .page-id-47 .km-invest-standard__inner {
    width: 84.375vw;
    max-width: 1620px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 725fr) minmax(0, 792fr);
    column-gap: 5.364583vw;
    align-items: center;
    height: auto;
  }
  .page-id-47 .km-invest-intro,
  .page-id-47 .km-invest-everyday,
  .page-id-47 .km-invest-standard {
    height: auto;
    min-height: 0;
    padding: 4.5vw 0;
  }
  /* Outdoor + Everyday: tylko jeden odstęp między sąsiednimi sekcjami.
     Outdoor zachowuje odstęp od góry; Everyday odpowiada za przerwę przed sobą. */
  .page-id-47 .km-invest-outdoor {
    height: auto;
    min-height: 0;
    padding: 4.5vw 0 0;
  }
  .page-id-47 .km-invest-intro__copy,
  .page-id-47 .km-invest-outdoor__copy,
  .page-id-47 .km-invest-everyday__copy,
  .page-id-47 .km-invest-standard__copy {
    position: relative;
    inset: auto;
    left: auto;right: auto;top: auto;bottom: auto;
    width: 100%;
    max-width: none;
    min-width: 0;
    padding: 0;
    margin: 0;
  }
  .page-id-47 .km-invest-intro__media,
  .page-id-47 .km-invest-intro__image,
  .page-id-47 .km-invest-outdoor__image,
  .page-id-47 .km-invest-everyday__image,
  .page-id-47 .km-invest-standard__image {
    position: relative;
    inset: auto;
    left: auto;right: auto;top: auto;bottom: auto;
    width: 100%;
    height: auto;
    max-height: none;
    aspect-ratio: 792 / 522;
    object-fit: cover;
  }
  .page-id-47 .km-invest-intro__media {
    height: auto;
    aspect-ratio: 792 / 522;
  }
  .page-id-47 .km-invest-intro__lines {
    position: absolute;
    right: -1vw;
    bottom: -3.5vw;
    width: 73%;
    height: auto;
  }
  .page-id-47 .km-invest-everyday__image { grid-column: 1;grid-row:1; }
  .page-id-47 .km-invest-everyday__copy { grid-column:2;grid-row:1; }
  .page-id-47 .km-invest-standard__copy h2,
  .page-id-47 .km-invest-intro__copy h2,
  .page-id-47 .km-invest-outdoor__copy h2,
  .page-id-47 .km-invest-everyday__copy h2 {
    font-size: clamp(32px, 2.5vw, 48px);
    line-height: 1.13;
  }
  .page-id-47 .km-invest-standard__body li,
  .page-id-47 .km-invest-standard__pdf,
  .page-id-47 .km-invest-intro__copy p,
  .page-id-47 .km-invest-outdoor__copy p,
  .page-id-47 .km-invest-everyday__copy p {
    font-size: clamp(15px, .9375vw, 18px);
    line-height: 1.55;
  }
}

/* Sekcja korzyści: tak jak na Figmie tytuł i podpis są centralnie,
   a karty mają wspólną, czytelną siatkę 3 kolumn. */
@media (min-width: 1201px) {
  .page-id-47 .km-invest-amenities {
    background: #f8f5f1;
    text-align: center;
  }
  .page-id-47 .km-invest-amenities > .km-shell {
    width: min(84.375vw, 1620px);
    max-width: none;
    margin-inline: auto;
    text-align: center;
  }
  .page-id-47 .km-invest-amenities > .km-shell > h2,
  .page-id-47 .km-invest-amenities > .km-shell > h3 {
    display: block;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .page-id-47 .km-invest-amenities__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .page-id-47 .km-invest-amenity {
    min-width: 0;
    text-align: center;
  }
}

/* Tablet: rozsądny odstęp od boków, nie zmieniamy układu na dwie
   kolumny z marginesem 24 px. */
@media (min-width: 821px) and (max-width: 1200px) {
  .page-id-47 .km-invest-intro__inner,
  .page-id-47 .km-invest-outdoor__inner,
  .page-id-47 .km-invest-everyday__inner,
  .page-id-47 .km-invest-standard__inner,
  .page-id-47 .km-invest-amenities > .km-shell {
    width: 88%;
    max-width: none;
    margin-inline: auto;
  }
  .page-id-47 .km-invest-everyday__image { order: 0; }
  .page-id-47 .km-invest-everyday__copy { order: 1; }
  .page-id-47 .km-invest-amenities { text-align: center; }
  .page-id-47 .km-invest-amenities > .km-shell > h2,
  .page-id-47 .km-invest-amenities > .km-shell > h3 { text-align: center; }
}

/* Korekty typografii Mrągowa i szerokości kart wg projektu K-M-fin.
 * Przywracamy odstępy akapitów, ściślejszy blok tekstu i karty 402px.
 * Selektory są bardziej szczegółowe niż globalne .km-invest-main .km-copy p.
 */
@media (min-width: 1201px) {
  .page-id-47 .km-invest-rhythm .km-invest-rhythm__copy {
    max-width: min(48.59375vw, 933px);
  }
  .page-id-47 .km-invest-main .km-invest-rhythm .km-invest-rhythm__copy p {
    font-size: 16px;
    line-height: 1.55;
    font-weight: 400;
    margin: 0 0 18px;
  }
  .page-id-47 .km-invest-main .km-invest-rhythm .km-invest-rhythm__copy p:last-child {
    margin-bottom: 0;
  }
  .page-id-47 .km-invest-nearby .km-invest-nearby__grid {
    width: min(78.125vw, 1500px);
    max-width: 100%;
    margin: 70px auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 402fr));
    gap: 55px min(7.65625vw, 147px);
    justify-items: center;
  }
  .page-id-47 .km-invest-nearby .km-invest-nearby__item {
    width: 100%;
    max-width: 402px;
    min-width: 0;
    padding: 0;
  }
  .page-id-47 .km-invest-nearby .km-invest-nearby__item p {
    font-size: 16px;
    line-height: 1.55;
    margin: 0;
  }
  .page-id-47 .km-invest-nearby .km-invest-nearby__item h3 {
    font-size: 18px;
    line-height: 28px;
    margin: 0 0 14px;
  }
}
@media (min-width: 821px) and (max-width: 1200px) {
  .page-id-47 .km-invest-main .km-invest-rhythm .km-invest-rhythm__copy p {
    font-size: 16px;
    line-height: 1.55;
    margin-bottom: 17px;
  }
  .page-id-47 .km-invest-nearby__grid {
    width: min(88%, 990px);
    margin-left: auto;
    margin-right: auto;
  }
  .page-id-47 .km-invest-nearby .km-invest-nearby__item {
    max-width: 310px;
    padding: 0;
  }
}


