.kabiny-page { overflow: clip; }
.kabiny-page .section { position: relative; }
.kabiny-breadcrumb { display: flex; flex-wrap: wrap; gap: var(--space-2); font-size: var(--text-caption); margin-bottom: var(--space-5); }
.kabiny-hero { padding: calc(var(--space-9) + var(--space-4)) 0 var(--space-9); background: var(--color-pearl-white); }
.kabiny-hero__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(360px, 5fr); gap: var(--space-5); align-items: start; }
.kabiny-hero__copy { grid-column: 1; min-width: 0; max-width: 600px; display: flex; flex-direction: column; gap: var(--space-4); }
.kabiny-hero__copy > * { min-width: 0; margin: 0; }
.kabiny-hero__copy h1 { font-size: clamp(3.25rem, 5vw, 4rem); }
.kabiny-hero__independent { color: var(--color-text-muted); font-size: var(--text-caption); }
.kabiny-hero__actions { margin-top: var(--space-2); }
.kabiny-text-link { align-self: center; font-size: var(--text-control); font-weight: 600; }
.kabiny-hero__media { grid-column: 2; grid-row: 1 / span 2; min-width: 0; height: 540px; margin: 0; border-radius: var(--radius-xl) var(--radius-xl) 3.5rem var(--radius-xl); }
.kabiny-hero__media figcaption { position: absolute; width: min(88%, 420px); margin: 0; right: var(--space-4); bottom: var(--space-4); padding: var(--space-3); border: var(--border); border-radius: var(--radius-md); background: rgb(248 247 242 / 84%); backdrop-filter: blur(10px); }
.kabiny-hero__facts { grid-column: 1; min-width: 0; max-width: 520px; display: flex; flex-direction: column; gap: var(--space-3); background: var(--color-mist-blue); }
.kabiny-hero__facts > * { margin: 0; }
.kabiny-hero__facts ul { padding-left: 1.2em; }
.kabiny-hero__facts li + li { margin-top: var(--space-2); }
.kabiny-compare__intro { max-width: 650px; }
.kabiny-compare__scroll { margin-top: var(--space-5); border: var(--border); border-radius: var(--radius-md); background: var(--color-white); }
.kabiny-table { min-width: 1080px; font-size: 0.95rem; }
.kabiny-table th:first-child { position: sticky; left: 0; z-index: 2; min-width: 210px; background: var(--color-limestone); }
.kabiny-table td, .kabiny-table th:not(:first-child) { min-width: 170px; }
.kabiny-table thead th { position: sticky; top: 0; z-index: 3; background: var(--color-mist-blue); }
.kabiny-table thead th:first-child { z-index: 4; }
.kabiny-compare__toggle { display: none; margin-top: var(--space-4); }
.kabiny-filter { display: flex; flex-direction: column; gap: var(--space-4); margin-top: var(--space-5); padding: var(--space-5); border: var(--border); border-radius: var(--radius-lg); background: var(--color-pearl-white); }
.kabiny-filter__controls { display: flex; flex-wrap: wrap; gap: var(--space-3); min-width: 0; }
.kabiny-filter__controls label { display: inline-flex; align-items: center; min-height: 44px; margin: 0; padding: 0 var(--space-3); border: var(--border); border-radius: var(--radius-sm); background: var(--color-white); }
.kabiny-filter__result { margin: 0; padding: var(--space-4); border-left: 3px solid var(--color-coral); background: var(--color-seafoam); }
.kabiny-profile__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(220px, 3fr) minmax(0, 4fr); gap: var(--space-5); align-items: start; }
.kabiny-profile__copy, .kabiny-plan, .kabiny-data { min-width: 0; }
.kabiny-profile__copy { max-width: 560px; }
.kabiny-small-photo { margin-top: var(--space-5); }
.kabiny-small-photo { height: 220px; border-radius: var(--radius-lg); }
.kabiny-plan { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border: var(--border); border-radius: var(--radius-lg); background: var(--color-mist-blue); }
.kabiny-plan > * { margin: 0; }
.kabiny-plan__drawing { position: relative; width: 100%; min-height: 250px; overflow: hidden; border: 1px solid var(--color-mediterranean-blue); background: var(--color-pearl-white); }
.kabiny-plan__drawing span { position: absolute; display: grid; place-items: center; padding: var(--space-2); border: 1px solid var(--color-brushed-silver); color: var(--color-deep-harbour); font-size: 0.72rem; font-weight: 600; text-align: center; }
.plan-bath { inset: 6% auto auto 6%; width: 35%; height: 30%; background: var(--color-mist-blue); }.plan-bed { inset: 42% 8% auto auto; width: 66%; height: 36%; background: var(--color-limestone); }.plan-wardrobe { inset: auto auto 7% 7%; width: 31%; height: 20%; background: var(--color-seafoam); }.plan-desk { inset: 7% 7% auto auto; width: 32%; height: 20%; background: var(--color-white); }.plan-entry { inset: auto 7% 7% auto; width: 25%; height: 18%; background: var(--color-white); }.plan-balcony { inset: auto 0 0 0; width: 100%; height: 15%; background: var(--color-seafoam); }
.kabiny-plan__button { min-height: 44px; width: 100%; border: 1px solid var(--color-mediterranean-blue); border-radius: var(--radius-sm); background: transparent; color: var(--color-mediterranean-blue); font-weight: 600; }
.kabiny-plan__legend { padding-top: var(--space-3); border-top: var(--border); }
.kabiny-data { display: flex; flex-direction: column; gap: var(--space-4); }
.kabiny-data > * { margin: 0; }
.kabiny-data__groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.kabiny-data__groups > * { min-width: 0; margin: 0; }
.kabiny-data dl { display: flex; flex-direction: column; gap: var(--space-1); }
.kabiny-data dt { color: var(--color-mediterranean-blue); font-size: var(--text-meta); font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.kabiny-data dd { margin: 0 0 var(--space-3); font-size: .94rem; line-height: 1.45; }
.kabiny-window__top { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-5); align-items: start; }
.kabiny-window__copy { min-width: 0; max-width: 570px; }.kabiny-window__media { min-width: 0; height: 420px; margin: 0; border-radius: var(--radius-xl); }.kabiny-window__data { width: min(100%, 980px); margin-top: var(--space-6); }.kabiny-decision { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); width: min(100%, 860px); margin-top: var(--space-5); padding: var(--space-5); border: var(--border); border-radius: var(--radius-lg); background: var(--color-seafoam); }.kabiny-decision > * { min-width: 0; }.kabiny-decision h3, .kabiny-decision p { margin: 0; }.kabiny-decision p { margin-top: var(--space-2); }
.kabiny-balcony__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-5); align-items: start; }.kabiny-balcony__main { min-width: 0; max-width: 720px; }.kabiny-balcony__main .kabiny-data { margin-top: var(--space-5); }.kabiny-balcony__questions { min-width: 0; margin-top: var(--space-8); max-width: 380px; }.kabiny-balcony__questions ol { padding-left: 1.3em; }.kabiny-balcony__questions li + li { margin-top: var(--space-3); }.kabiny-plan--wide { margin-top: var(--space-5); }.kabiny-plan__drawing--balcony { min-height: 300px; }
.kabiny-duo__intro { max-width: 650px; }.kabiny-duo__grid { display: grid; grid-template-columns: minmax(360px, 5fr) minmax(0, 7fr); gap: var(--space-5); margin-top: var(--space-6); }.kabiny-duo__grid > * { min-width: 0; padding: var(--space-5); border: var(--border); border-radius: var(--radius-lg); background: var(--color-white); }.kabiny-mini-data { margin-top: var(--space-4); padding-top: var(--space-4); border-top: var(--border); font-size: .95rem; line-height: 1.5; }.kabiny-group-check { width: min(100%, 980px); margin-top: var(--space-5); padding: var(--space-5); border: var(--border); border-radius: var(--radius-lg); background: var(--color-mist-blue); }.kabiny-group-check h3 { margin-bottom: var(--space-3); }.kabiny-group-check ul { columns: 2; }.kabiny-group-check li { break-inside: avoid; margin-bottom: var(--space-2); }
.kabiny-location__top { display: grid; grid-template-columns: minmax(0, 7fr) minmax(320px, 5fr); gap: var(--space-5); align-items: start; }.kabiny-location__copy { min-width: 0; max-width: 680px; }.kabiny-deck { min-width: 0; padding: var(--space-5); border: var(--border); border-radius: var(--radius-lg); background: var(--color-mist-blue); }.kabiny-deck__controls { display: flex; gap: var(--space-2); }.kabiny-deck__controls button { flex: 1 1 0; min-width: 0; min-height: 44px; border: 1px solid var(--color-mediterranean-blue); border-radius: var(--radius-sm); background: var(--color-pearl-white); color: var(--color-mediterranean-blue); font-size: .85rem; font-weight: 600; }.kabiny-deck__controls .is-active { background: var(--color-mediterranean-blue); color: var(--color-white); }.kabiny-deck__layers { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-4); }.kabiny-deck__layers div { min-height: 72px; padding: var(--space-4); border: var(--border); background: var(--color-pearl-white); }.kabiny-deck__layers .is-active { border-color: var(--color-mediterranean-blue); background: var(--color-seafoam); }.kabiny-scenarios { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-6); }.kabiny-scenarios > * { min-width: 0; padding: var(--space-4) 0; border-top: var(--border); }.kabiny-scenarios span, .kabiny-steps__grid span { color: var(--color-coral); font-size: 2rem; font-weight: 700; line-height: 1; }.kabiny-checklist { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--space-3); width: min(100%, 800px); margin-top: var(--space-6); padding: var(--space-5); border: var(--border); border-radius: var(--radius-lg); background: var(--color-seafoam); }.kabiny-checklist h3 { grid-column: 1 / -1; margin: 0; }.kabiny-checklist label { min-width: 0; margin: 0; font-size: .9rem; }
.kabiny-life__intro { max-width: 680px; }.kabiny-life__grid { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 4fr) minmax(0, 5fr); gap: var(--space-5); margin-top: var(--space-6); }.kabiny-life__grid > * { min-width: 0; }.kabiny-life__grid article { padding: var(--space-4) 0; border-top: var(--border); }.kabiny-life__grid li + li { margin-top: var(--space-3); }.kabiny-example { min-height: 44px; border: 0; border-bottom: 1px solid var(--color-mediterranean-blue); background: transparent; color: var(--color-mediterranean-blue); font-weight: 600; }.kabiny-power { display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-5); border: var(--border); border-radius: var(--radius-lg); background: var(--color-mist-blue); }.kabiny-power > * { margin: 0; }.kabiny-power .button { align-self: flex-start; }
.kabiny-steps__intro { max-width: 680px; }.kabiny-steps__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-6); }.kabiny-steps__grid > * { min-width: 0; padding: 0 var(--space-5); border-left: var(--border); }.kabiny-steps__grid > *:first-child { padding-left: 0; border-left: 0; }
.kabiny-faq__intro { max-width: 680px; }.kabiny-faq__list { width: min(100%, 860px); margin-top: var(--space-5); }.kabiny-faq__list article { border-bottom: var(--border); }.kabiny-faq__list h3 { margin: 0; }.kabiny-faq__list button { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 56px; padding: var(--space-3) 0; border: 0; background: transparent; color: var(--color-deep-harbour); font-family: var(--font-heading); font-size: 1.45rem; font-weight: 600; text-align: left; }.kabiny-faq__list button::after { content: '+'; flex: 0 0 auto; margin-left: var(--space-4); color: var(--color-mediterranean-blue); font-family: var(--font-body); }.kabiny-faq__list button[aria-expanded="true"]::after { content: '−'; }.kabiny-faq__list [role="region"] { padding: 0 0 var(--space-4); max-width: 760px; }.kabiny-faq__list [role="region"] p { margin: 0; }
.kabiny-next__panel { display: flex; flex-direction: column; gap: var(--space-6); width: min(100%, 980px); margin-inline: auto; padding: var(--space-8); border: var(--border); border-radius: var(--radius-lg); background: var(--color-seafoam); }.kabiny-next__copy { display: flex; flex-direction: column; align-items: center; gap: var(--space-4); min-width: 0; max-width: 680px; margin-inline: auto; text-align: center; }.kabiny-next__copy > * { margin: 0; }.kabiny-next__note { width: 100%; max-width: 720px; margin: 0; }.kabiny-next__note p { margin-bottom: 0; }
@media (max-width: 68.75rem) { .kabiny-hero__grid { grid-template-columns: minmax(0, 7fr) minmax(360px, 5fr); }.kabiny-balcony__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.kabiny-balcony__questions { max-width: none; }.kabiny-steps__grid > * { padding: 0 var(--space-4); } }
@media (max-width: 61.25rem) { .kabiny-profile__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.kabiny-profile__copy { grid-column: 1; }.kabiny-profile__data { grid-column: 2; }.kabiny-plan { grid-column: 1 / -1; }.kabiny-duo__grid { grid-template-columns: 1fr; }.kabiny-life__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.kabiny-power { grid-column: 1 / -1; }.kabiny-location__top { grid-template-columns: 1fr; }.kabiny-scenarios { grid-template-columns: repeat(2, minmax(0, 1fr)); }.kabiny-scenarios > :last-child { grid-column: 1 / -1; }.kabiny-checklist { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 56.25rem) { .kabiny-hero { padding-top: var(--space-8); }.kabiny-hero__grid, .kabiny-window__top { grid-template-columns: 1fr; }.kabiny-hero__copy, .kabiny-window__copy { max-width: none; }.kabiny-hero__media { grid-column: 1; grid-row: auto; height: min(92vw, 540px); }.kabiny-hero__facts { grid-column: 1; max-width: none; }.kabiny-window__media { height: min(75vw, 420px); }.kabiny-window__data { width: 100%; }.kabiny-decision { width: 100%; }.kabiny-balcony__grid { grid-template-columns: 1fr; }.kabiny-balcony__main { max-width: none; }.kabiny-balcony__questions { margin-top: 0; order: -1; }.kabiny-group-check ul { columns: 1; }.kabiny-steps__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.kabiny-steps__grid > :first-child { grid-column: 1 / -1; }.kabiny-steps__grid > * { border-left: 0; border-top: var(--border); padding: var(--space-4) 0; }.kabiny-steps__grid > :first-child { border-top: 0; padding-top: 0; } }
@media (max-width: 47.5rem) { .kabiny-compare__toggle { display: inline-flex; }.kabiny-data__groups, .kabiny-decision, .kabiny-life__grid, .kabiny-scenarios, .kabiny-steps__grid { grid-template-columns: 1fr; }.kabiny-profile__grid { grid-template-columns: 1fr; }.kabiny-profile__copy, .kabiny-profile__data, .kabiny-plan { grid-column: 1; }.kabiny-profile__copy { max-width: none; }.kabiny-data__groups { gap: 0; }.kabiny-data dd { padding-bottom: var(--space-3); border-bottom: var(--border); }.kabiny-scenarios > :last-child, .kabiny-steps__grid > :first-child { grid-column: 1; }.kabiny-checklist { grid-template-columns: 1fr; }.kabiny-filter__controls { flex-wrap: nowrap; overflow-x: auto; padding-bottom: var(--space-2); }.kabiny-filter__controls label { flex: 0 0 auto; }.kabiny-next__panel { padding: var(--space-5); }.kabiny-next__copy .button-group { width: 100%; flex-direction: column; }.kabiny-next__copy .button { width: 100%; }.kabiny-faq__list button { font-size: 1.1rem; }.kabiny-hero__copy h1 { font-size: 2.75rem; }.kabiny-hero__media { height: min(115vw, 420px); }.kabiny-window__media { height: min(100vw, 360px); }.kabiny-power .button { width: 100%; }.kabiny-deck { padding: var(--space-4); } }
@media print { .kabiny-page .button, .kabiny-page button, .kabiny-filter, .kabiny-deck__controls { display: none !important; } .kabiny-page { color: #000; } }
