/**
 * =============================================================================
 * Apartmore — Wynajem korporacyjny + długoterminowy (v3, 2026-07-11)
 * Tokeny z design-system (--cream/--paper/--stone/--ink/--amber/--sand).
 * Nowe komponenty: pin (sticky steps), worry-card, day-toggle, hgal,
 * strike-list, compare-slider, kalkulator z taśmą miesięcy, mapa trasy.
 * =============================================================================
 */

/* ---------- BAZA ---------- */
.najem-wrap{max-width:1280px;margin:0 auto;padding:0 24px}
.najem-hero{position:relative;min-height:74vh;min-height:74svh;display:flex;align-items:flex-end;color:#fff;margin-top:-96px;padding:170px 56px 64px;overflow:hidden}
.najem-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.1);animation:najemKB 16s ease-out forwards;z-index:0}
@keyframes najemKB{to{transform:scale(1)}}
.najem-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,22,20,.55) 0%,rgba(26,22,20,.3) 45%,rgba(26,22,20,.82) 100%);z-index:1}
.najem-hero-inner{position:relative;max-width:1280px;margin:0 auto;width:100%;z-index:2}
.najem-hero .eyebrow,.najem-h1,.najem-sub,.najem-hero-ctas,.najem-hero-trust{opacity:0;transform:translateY(18px);animation:najemUp .8s cubic-bezier(.22,.8,.3,1) forwards}
.najem-h1{animation-delay:.12s}.najem-sub{animation-delay:.26s}.najem-hero-ctas{animation-delay:.4s}.najem-hero-trust{animation-delay:.55s}
@keyframes najemUp{to{opacity:1;transform:none}}
.najem-hero .eyebrow{color:#fff}
.najem-h1{font-family:var(--display);font-weight:400;font-size:clamp(44px,6.5vw,84px);line-height:1.02;letter-spacing:.04em;text-transform:uppercase;max-width:24ch;margin-top:10px}
.najem-h1 .accent{color:#e8d5bd}
.najem-sub{margin-top:22px;max-width:62ch;font-size:16px;line-height:1.65;font-weight:300}
.najem-hero-ctas{margin-top:30px;display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.najem-hero-phone{color:#fff;text-decoration:none;font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;font-size:18px;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:2px;transition:border-color .2s}
.najem-hero-phone:hover{border-color:var(--sand)}
.najem-hero-phone span{font-family:var(--sans);font-size:12px;text-transform:none;letter-spacing:0;opacity:.75;margin-right:6px}
.najem-hero-trust{margin-top:34px;padding-top:18px;border-top:1px solid rgba(255,255,255,.22);display:flex;align-items:baseline;gap:10px 22px;flex-wrap:wrap}
.najem-hero-trust em{font-style:normal;font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:.65}
.najem-hero-trust b{font-family:var(--display);font-weight:400;font-size:19px;letter-spacing:.08em;text-transform:uppercase;color:#e8d5bd;white-space:nowrap}

.najem-h2{font-family:var(--display);font-weight:400;font-size:clamp(34px,4.4vw,56px);line-height:1.04;letter-spacing:.04em;text-transform:uppercase;margin:10px 0 18px;max-width:28ch}
.najem-lead{max-width:76ch;font-size:16px;line-height:1.7;color:var(--ink-2);margin-bottom:32px}

/* pasek liczb */
.najem-stats{background:var(--ink);color:#fff;padding:36px 32px}
.najem-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center}
.najem-stat strong{display:block;font-family:var(--display);font-weight:400;font-size:clamp(30px,3.2vw,46px);letter-spacing:.04em;color:var(--sand)}
.najem-stat-lbl{display:block;margin-top:4px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.7;line-height:1.5}

/* sekcje */
.corp-worry{background:var(--cream);padding:80px 32px 40px}
.corp-day{background:var(--stone);padding:96px 32px}
.corp-standard{background:var(--paper);padding:96px 32px 80px}
.corp-groups{background:var(--cream);padding:96px 32px}
.lt-route{background:var(--cream);padding:80px 32px 40px}
.lt-pack{background:var(--stone);padding:96px 32px}
.lt-compare-sec{background:var(--paper);padding:96px 32px}
.lt-calc{background:var(--cream);padding:96px 32px}
.lt-facts{background:var(--stone);padding:80px 32px}
.najem-faq{background:var(--paper);padding:96px 32px;border-top:1px solid var(--line)}
.corp-cta{background:var(--ink);color:#fff;padding:96px 32px}
.corp-cta .eyebrow{color:var(--sand)}
.corp-cta .najem-h2{color:#fff}

/* ---------- PINNED STEPS (wspólny szkielet) ---------- */
.pin-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:start}
.pin-steps{padding:2vh 0 12vh}
.pin-step:first-child{min-height:34vh;min-height:34svh;justify-content:flex-start;padding-top:3vh}
.pin-step{min-height:42vh;min-height:42svh;display:flex;flex-direction:column;justify-content:center;opacity:.25;transition:opacity .4s ease;padding:0 12px 7vh 0}
.pin-step.is-active{opacity:1}
.pin-step h3{font-family:var(--display);font-weight:400;font-size:clamp(24px,2.4vw,34px);letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px}
.pin-step h3 small{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--amber);margin-bottom:10px}
.pin-step p{font-size:15px;line-height:1.7;color:var(--ink-2);max-width:46ch}
.pin-visual{position:sticky;top:calc(50vh - 270px);height:540px;display:flex;align-items:center}

/* ---------- KORPO: karta zmartwień ---------- */
.cw-card{width:100%;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);padding:34px 36px;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}
.cw-col h4{font-family:var(--display);font-weight:400;font-size:16px;letter-spacing:.14em;text-transform:uppercase;padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:14px}
.cw-col-you h4{color:var(--ink-3)}
.cw-col-us h4{color:var(--amber)}
.cw-col ul{list-style:none}
.cw-col li{position:relative;font-size:14px;line-height:1.5;padding:10px 0 10px 24px;border-bottom:1px dashed var(--line);transition:opacity .5s ease,transform .5s ease}
.cw-col li:last-child{border-bottom:none}
.cw-col-you li::before{content:"";position:absolute;left:0;top:17px;width:14px;height:2px;background:var(--ink-3)}
.cw-col-you li{color:var(--ink)}
.cw-col-us li{opacity:0;transform:translateX(-14px);color:var(--ink)}
.cw-col-us li::before{content:"✓";position:absolute;left:0;top:9px;color:var(--amber);font-weight:700}
/* przenoszenie: krok i => zmartwienie i znika u Ciebie, pojawia się u nas */
.corp-worry.pin-on-0 .cw-i-0, .corp-worry.pin-on-1 .cw-i-0, .corp-worry.pin-on-1 .cw-i-1,
.corp-worry.pin-on-2 .cw-i-0, .corp-worry.pin-on-2 .cw-i-1, .corp-worry.pin-on-2 .cw-i-2,
.corp-worry.pin-on-3 .cw-i-0, .corp-worry.pin-on-3 .cw-i-1, .corp-worry.pin-on-3 .cw-i-2, .corp-worry.pin-on-3 .cw-i-3,
.corp-worry.pin-on-4 .cw-i-0, .corp-worry.pin-on-4 .cw-i-1, .corp-worry.pin-on-4 .cw-i-2, .corp-worry.pin-on-4 .cw-i-3, .corp-worry.pin-on-4 .cw-i-4{--moved:1}
.cw-col-you li{opacity:calc(1 - .72*var(--moved,0));text-decoration:none}
.cw-col-you li[style*="--moved"]{}
.cw-col-you .cw-strike{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-size:calc(var(--moved,0)*100%) 1.5px;background-position:0 55%;transition:background-size .55s ease .1s}
.cw-col-us li{opacity:var(--moved,0);transform:translateX(calc((1 - var(--moved,0))*-14px))}
.cw-count{grid-column:1/-1;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.cw-count b{font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:.06em;color:var(--amber)}

/* ---------- KORPO: dzień pracownika (toggle) ---------- */
.corp-day-switch{display:inline-flex;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:5px;margin:6px 0 34px;gap:4px}
.corp-day-switch button{border:none;background:transparent;cursor:pointer;font-family:var(--display);font-size:15px;letter-spacing:.1em;text-transform:uppercase;padding:11px 22px 9px;border-radius:999px;color:var(--ink-2);transition:background .25s,color .25s}
.corp-day-switch button.is-on{background:var(--amber);color:#fff}
.corp-day-views{position:relative}
.corp-day-list{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;transition:opacity .35s ease,transform .35s ease}
.corp-day-list li{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px;min-height:150px}
.corp-day-list time{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.12em;color:var(--amber);margin-bottom:10px}
.corp-day-list b{display:block;font-family:var(--display);font-weight:400;font-size:19px;letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px}
.corp-day-list p{font-size:13px;line-height:1.6;color:var(--ink-2)}
.corp-day-list[data-view=hotel] li{background:#3b3734;border-color:rgba(255,255,255,.08)}
.corp-day-list[data-view=hotel] b{color:#a89f96}
.corp-day-list[data-view=hotel] p{color:#cfc9c2}
.corp-day-list[data-view=hotel] time{color:var(--sand)}
[data-apm-day] .corp-day-list{display:none}
[data-apm-day][data-day-view=apm] .corp-day-list[data-view=apm]{display:grid;animation:najemUp .45s ease both}
[data-apm-day][data-day-view=hotel] .corp-day-list[data-view=hotel]{display:grid;animation:najemUp .45s ease both}

/* ---------- KORPO: galeria pozioma + klaster ---------- */
.hgal{display:flex;gap:16px;overflow-x:auto;padding:8px 4px 22px;cursor:grab;-webkit-overflow-scrolling:touch;touch-action:pan-y pan-x;scrollbar-width:thin;scrollbar-color:var(--amber) var(--line)}
.hgal.is-drag{cursor:grabbing}
.hgal-item{flex:0 0 clamp(260px,32vw,420px);aspect-ratio:4/3;border-radius:14px;background-size:cover;background-position:center;box-shadow:var(--shadow);user-select:none}
.hgal-item--wide{flex-basis:clamp(340px,44vw,560px)}
.najem-gal-note{margin-top:8px;font-size:13px;color:var(--ink-3);max-width:none}

.corp-groups-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.cluster-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);padding:26px}
.cluster-card svg{width:100%;height:auto;display:block}
.cluster-dot{transition:transform 1.1s cubic-bezier(.22,.8,.3,1) .2s;transform:translate(var(--sx,0),var(--sy,0))}
.cluster-card.on .cluster-dot{transform:translate(0,0)}
.cluster-road{stroke-dasharray:420;stroke-dashoffset:420;transition:stroke-dashoffset 1.4s ease .7s}
.cluster-card.on .cluster-road{stroke-dashoffset:0}
.cluster-lbl{font-family:var(--sans);font-size:10px;letter-spacing:.08em;fill:var(--ink-3);text-transform:uppercase}

.najem-list{list-style:none;margin-top:8px}
.najem-list li{position:relative;padding:10px 0 10px 30px;font-size:15px;line-height:1.6;color:var(--ink-2);border-bottom:1px solid var(--line)}
.najem-list li:last-child{border-bottom:none}
.najem-list li::before{content:"";position:absolute;left:2px;top:17px;width:14px;height:2px;background:var(--amber)}
.najem-split-visual{min-height:420px;border-radius:16px;background-size:cover;background-position:center;box-shadow:var(--shadow-lg)}
.najem-split-visual.on{transition:opacity .6s ease;will-change:transform}

/* ---------- LT: mapa trasy ---------- */
.route-map{width:100%;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);padding:18px}
.route-map svg{width:100%;height:auto;display:block}
.route-path{fill:none;stroke:var(--amber);stroke-width:3;stroke-linecap:round;stroke-dasharray:6 8;opacity:0;transition:opacity .4s ease}
.route-path-draw{fill:none;stroke:var(--amber);stroke-width:3;stroke-linecap:round;stroke-dasharray:900;stroke-dashoffset:900;opacity:0;transition:stroke-dashoffset 1.5s ease,opacity .3s ease}
.lt-route.pin-on-0 .rp-0,.lt-route.pin-on-1 .rp-1,.lt-route.pin-on-2 .rp-2,.lt-route.pin-on-3 .rp-3{opacity:1;stroke-dashoffset:0}
.route-dest{opacity:.35;transition:opacity .4s ease}
.lt-route.pin-on-0 .rd-0,.lt-route.pin-on-1 .rd-1,.lt-route.pin-on-2 .rd-2,.lt-route.pin-on-3 .rd-3{opacity:1}
.route-time{opacity:0;transition:opacity .5s ease .9s}
.lt-route.pin-on-0 .rt-0,.lt-route.pin-on-1 .rt-1,.lt-route.pin-on-2 .rt-2,.lt-route.pin-on-3 .rt-3{opacity:1}
.route-lbl{font-family:var(--sans);font-size:11px;letter-spacing:.06em;fill:var(--ink-2)}
.route-lbl-b{font-family:var(--display);font-size:15px;letter-spacing:.08em;fill:var(--ink)}
.route-time text{font-family:var(--mono);font-size:12px;fill:var(--amber)}
.pin-step .lt-fav-mini{display:flex;gap:12px;margin-top:18px}
.lt-fav-mini a{flex:1;display:block;text-decoration:none;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper);transition:transform .25s ease,box-shadow .25s ease}
.lt-fav-mini a:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.lt-fav-mini .im{display:block;aspect-ratio:16/10;background-size:cover;background-position:center}
.lt-fav-mini .nm{display:block;padding:10px 12px;font-size:12.5px;color:var(--ink-2)}

/* ---------- LT: nie pakuj ---------- */
.lt-pack-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.pack-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:30px 34px}
.pack-card h3{font-family:var(--display);font-weight:400;font-size:20px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px}
.pack-card--out h3{color:var(--ink-3)}
.pack-card--in h3{color:var(--amber)}
.pack-card ul{list-style:none}
.pack-card li{position:relative;padding:9px 0 9px 26px;font-size:14.5px;border-bottom:1px dashed var(--line);color:var(--ink)}
.pack-card li:last-child{border-bottom:none}
[data-apm-strike] li::before{content:"";position:absolute;left:0;top:16px;width:14px;height:2px;background:var(--ink-3)}
[data-apm-strike] li span{background-image:linear-gradient(var(--ink-3),var(--ink-3));background-repeat:no-repeat;background-size:0% 1.5px;background-position:0 55%;transition:background-size 1.4s ease,color 1.4s ease}
[data-apm-strike] li.is-struck span{background-size:100% 1.5px;color:var(--ink-3)}
.pack-card--in li::before{content:"✓";position:absolute;left:0;top:8px;color:var(--amber);font-weight:700}
.pack-punch{margin-top:18px;font-size:14px;color:var(--ink-2);font-style:italic}

/* ---------- LT: suwak porównania ---------- */
.cmp{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-lg);user-select:none}
.cmp-pane{padding:44px 48px 44px 72px;min-height:380px}
.cmp-base{background:#3b3734;color:#cfc9c2}
.cmp-top{position:absolute;inset:0;background:var(--cream);color:var(--ink);clip-path:inset(0 45% 0 0)}
.cmp-pane h3{font-family:var(--display);font-weight:400;font-size:clamp(22px,2.4vw,32px);letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}
.cmp-base h3{color:#a89f96}
.cmp-top h3{color:var(--amber)}
.cmp-pane ul{list-style:none;max-width:none}
.cmp-pane li{padding:8px 0;font-size:14.5px;line-height:1.55;border-bottom:1px dashed rgba(128,120,110,.35)}
.cmp-pane li:last-child{border-bottom:none}
.cmp-handle{position:absolute;top:0;bottom:0;left:55%;width:2px;background:var(--amber);pointer-events:none}
.cmp-handle::after{content:"◂ ▸";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--amber);color:#fff;border-radius:999px;padding:9px 12px 8px;font-size:11px;letter-spacing:2px;white-space:nowrap;box-shadow:var(--shadow)}
.cmp input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.cmp-note{margin-top:14px;font-size:13px;color:var(--ink-3)}

/* ---------- LT: kalkulator z taśmą ---------- */
.lt-calc-box{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:34px 36px;box-shadow:var(--shadow)}
.lt-strip{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;margin:6px 0 8px}
.lt-mbtn{position:relative;border:1px solid var(--line);background:var(--cream);border-radius:10px;padding:14px 4px 12px;cursor:pointer;font-family:var(--display);font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);transition:background .2s,color .2s,border-color .2s,transform .2s}
.lt-mbtn:hover{border-color:var(--amber);transform:translateY(-2px)}
.lt-mbtn.is-in{background:rgba(163,119,83,.82);border-color:var(--amber);color:#fff}
.lt-mbtn.is-edge{background:var(--amber);color:#fff}
.lt-mbtn.is-summer::after{content:"☀";position:absolute;top:3px;right:6px;font-size:9px;color:var(--sand)}
.lt-mbtn.is-summer.is-edge::after,.lt-mbtn.is-summer.is-in::after{color:#fff}
.lt-calc-hint{font-size:12.5px;color:var(--ink-3);margin-bottom:22px;min-height:1.4em}
.lt-calc-chart{display:flex;align-items:flex-end;gap:8px;height:210px;padding:10px 4px 0;border-bottom:1px solid var(--line)}
.lt-bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;min-width:0}
.lt-bar-fill{width:100%;max-width:52px;border-radius:6px 6px 0 0;background:var(--amber);transition:height .45s cubic-bezier(.22,.8,.3,1)}
.lt-bar.is-summer .lt-bar-fill{background:var(--sand)}
.lt-bar-val{font-family:var(--mono);font-size:11px;color:var(--ink-2);white-space:nowrap}
.lt-bar-lbl{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:8px 0 2px}
.lt-calc-summary{display:flex;gap:44px;flex-wrap:wrap;margin-top:20px;align-items:flex-end}
.lt-calc-summary>div{display:flex;flex-direction:column;gap:2px}
.lt-calc-summary span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.lt-calc-summary strong{font-family:var(--display);font-size:34px;letter-spacing:.04em;color:var(--ink);font-weight:400}
.lt-calc-summary .lt-summer-flag{display:none;align-items:flex-start;gap:10px;margin-left:auto;background:rgba(224,194,142,.25);border:1px solid var(--sand);border-radius:10px;padding:11px 16px;font-size:13px;line-height:1.5;color:var(--ink)}
.lt-calc-summary .lt-summer-flag svg{flex:0 0 auto;width:20px;height:20px;color:var(--amber);margin-top:2px}
.lt-calc-summary .lt-summer-flag span{max-width:315px}
.lt-calc-summary .lt-summer-flag.is-show{display:flex;animation:najemUp .4s ease both}
.lt-calc-note{margin-top:18px;font-size:13px;color:var(--ink-3)}
.lt-summer{margin-top:36px;background:var(--paper);border-left:3px solid var(--amber);border-radius:0 14px 14px 0;padding:26px 30px;box-shadow:var(--shadow)}
.lt-summer h3{font-family:var(--display);font-weight:400;font-size:24px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}
.lt-summer p{font-size:14px;line-height:1.65;color:var(--ink-2);max-width:80ch}

/* ---------- karty faktów (dobrze wiedzieć) ---------- */
.lt-facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
.lt-fact{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px 22px;display:flex;flex-direction:column;gap:10px;transition:transform .25s ease,box-shadow .25s ease}
.lt-fact:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.lt-fact-ico{width:46px;height:46px;border-radius:50%;background:rgba(163,119,83,.12);color:var(--amber);display:flex;align-items:center;justify-content:center;transition:background .25s ease,color .25s ease}
.lt-fact:hover .lt-fact-ico{background:var(--amber);color:#fff}
.lt-fact-ico svg{width:22px;height:22px}
.lt-fact strong{font-family:var(--display);font-weight:400;font-size:19px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.lt-fact>span:not(.lt-fact-ico){font-size:13px;line-height:1.55;color:var(--ink-2)}

/* ---------- FAQ ---------- */
.najem-faq-list{max-width:860px}
.najem-faq-item{border-bottom:1px solid var(--line)}
.najem-faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;font-family:var(--display);font-size:20px;letter-spacing:.05em;text-transform:uppercase;transition:color .2s}
.najem-faq-item summary:hover{color:var(--amber)}
.najem-faq-item summary::-webkit-details-marker{display:none}
.najem-faq-item summary::after{content:"+";flex:0 0 auto;font-size:26px;line-height:1;color:var(--amber);transition:transform .25s ease}
.najem-faq-item[open] summary::after{transform:rotate(45deg)}
.najem-faq-item p{padding:0 34px 22px 0;font-size:14px;line-height:1.7;color:var(--ink-2);max-width:74ch}

/* ---------- kroki + CTA ---------- */
.najem-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0 44px}
.najem-step{display:flex;gap:16px;align-items:flex-start}
.najem-step span{flex:0 0 auto;width:40px;height:40px;border-radius:50%;border:1px solid var(--sand);color:var(--sand);font-family:var(--display);font-size:20px;display:flex;align-items:center;justify-content:center;padding-top:2px}
.najem-step p{font-size:14px;line-height:1.6;opacity:.85}
.najem-cta-box{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:36px 40px;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.najem-cta-lead{font-size:19px;line-height:1.55;max-width:none;flex:1 1 540px}
.najem-cta-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.najem-cta-phone{color:#fff;text-decoration:none;font-family:var(--display);font-size:22px;letter-spacing:.1em;display:flex;flex-direction:column;line-height:1.1}
.najem-cta-phone small{font-family:var(--sans);font-size:11px;letter-spacing:.04em;opacity:.65;margin-top:4px}
.najem-cta-phone:hover{color:var(--sand)}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.on{opacity:1;transform:none}

/* ---------- RESPONSYWNOŚĆ ---------- */
@media (max-width:1000px){
    .najem-stats-row,.lt-facts-grid{grid-template-columns:repeat(2,1fr)}
    .pin-grid{grid-template-columns:1fr}
    .pin-visual{position:relative;top:auto;height:auto;order:-1;margin-bottom:8px}
    .pin-steps{padding:0}
    .pin-step{min-height:0;padding:26px 0;opacity:1}
    .pin-step.is-active{opacity:1}
    .corp-day-list{grid-template-columns:repeat(2,1fr)}
    .corp-groups-grid,.lt-pack-grid{grid-template-columns:1fr;gap:32px}
    .cmp-top{clip-path:none!important;position:relative;inset:auto}
    .cmp-handle,.cmp input[type=range]{display:none}
    .cw-card{grid-template-columns:1fr;gap:22px;padding:26px}
}
@media (max-width:640px){
    .najem-hero{padding:150px 24px 48px;min-height:0}
    .corp-worry,.lt-route{padding:56px 20px 24px}
    .corp-day,.corp-standard,.corp-groups,.lt-pack,.lt-compare-sec,.lt-calc,.najem-faq,.corp-cta{padding:64px 20px}
    .lt-facts{padding:56px 20px}
    .lt-facts-grid{gap:12px}
    .lt-fact{padding:18px 16px}
    .corp-day-list{grid-template-columns:1fr}
    .lt-strip{grid-template-columns:repeat(6,1fr)}
    .lt-calc-box{padding:24px 18px}
    .lt-calc-chart{height:160px;gap:4px}
    .lt-bar-val{font-size:9px}
    .najem-cta-box{padding:28px 24px}
    .cmp-pane{padding:28px 22px;min-height:0}
    .najem-hero-trust b{font-size:15px}
}
@media (prefers-reduced-motion:reduce){
    .reveal{opacity:1;transform:none;transition:none}
    .lt-bar-fill,.cluster-dot,.cluster-road,.route-path-draw,[data-apm-strike] li span,.cw-col-you .cw-strike{transition:none}
    .najem-hero-bg,.najem-hero .eyebrow,.najem-h1,.najem-sub,.najem-hero-ctas,.najem-hero-trust{animation:none;opacity:1;transform:none}
    .pin-step{opacity:1}
    .cw-col-us li{opacity:1;transform:none}
    .cluster-dot{transform:none}
    .cluster-road{stroke-dashoffset:0}
    .route-path-draw{stroke-dashoffset:0}
}

/* ---------- korekty 2026-07-11 (flagi, day-note, galeria, naglowek) ---------- */
.najem-hero-trust b{display:inline-flex;align-items:center;gap:9px}
.apm-flags{display:inline-flex;gap:4px}
.apm-flags svg{width:20px;height:13px;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.35);display:block}
[data-apm-day] .corp-day-note{display:none;margin-top:28px;font-family:var(--display);font-weight:400;font-size:clamp(20px,2.1vw,28px);letter-spacing:.07em;text-transform:uppercase}
[data-apm-day][data-day-view=apm] .corp-day-note[data-view=apm]{display:block;color:var(--amber);animation:najemUp .45s ease both}
[data-apm-day][data-day-view=hotel] .corp-day-note[data-view=hotel]{display:block;color:var(--ink-3);animation:najemUp .45s ease both}
.najem-h2--wide{max-width:none}
.hgal{scrollbar-width:none}
.hgal::-webkit-scrollbar{display:none}
.hgal.is-drag,.hgal.is-scrub{scrollbar-width:thin}
.hgal.is-drag::-webkit-scrollbar,.hgal.is-scrub::-webkit-scrollbar{display:block;height:6px}
.hgal::-webkit-scrollbar-thumb{background:var(--amber);border-radius:3px}
.hgal::-webkit-scrollbar-track{background:var(--line);border-radius:3px}

/* ---------- korekty #2: wedrujacy apartament, cmp-inner, lato-ikony ---------- */
.route-dest{opacity:.55}
.route-home{opacity:0}
.lt-route.pin-on-0 .route-home{opacity:1;transform:translate(171px,217px);animation:hp0 .9s ease both}
.lt-route.pin-on-1 .route-home{opacity:1;transform:translate(186px,382px);animation:hp1 .9s ease both}
.lt-route.pin-on-2 .route-home{opacity:1;transform:translate(388px,209px);animation:hp2 .9s ease both}
.lt-route.pin-on-3 .route-home{opacity:1;transform:translate(403px,364px);animation:hp3 .9s ease both}
@keyframes hp0{0%,40%{opacity:0}100%{opacity:1}}
@keyframes hp1{0%,40%{opacity:0}100%{opacity:1}}
@keyframes hp2{0%,40%{opacity:0}100%{opacity:1}}
@keyframes hp3{0%,40%{opacity:0}100%{opacity:1}}
.route-path-draw{stroke-dasharray:120;stroke-dashoffset:120}
.cmp-inner{max-width:none}
.cmp-pane li{min-height:56px;display:flex;align-items:center}
.cmp.on .cmp-handle{animation:cmpNudge 1.3s ease .9s 2}
@keyframes cmpNudge{0%,100%{margin-left:0}50%{margin-left:14px}}
.lt-summer{display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap}
.lt-summer-txt{max-width:58ch;flex:1 1 320px}
.lt-summer-icons{display:flex;align-items:center;gap:12px;flex:0 0 auto;padding-right:8px}
.lsi{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;max-width:92px}
.lsi-ico{width:54px;height:54px;border-radius:50%;background:rgba(163,119,83,.12);color:var(--amber);display:flex;align-items:center;justify-content:center}
.lsi-ico svg{width:24px;height:24px}
.lsi-sun .lsi-ico{background:rgba(224,194,142,.35)}
.lsi em{font-style:normal;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);line-height:1.4}
.lsi-arrow{color:var(--amber);font-size:20px;padding-bottom:26px}
@media (max-width:1000px){
    .cmp-pane li{min-height:0}
    .lt-summer-icons{padding-right:0}
}
@media (prefers-reduced-motion:reduce){
    .route-home{animation:none!important}
    .lt-route .route-home{opacity:1}
}

/* ikonki wierszy suwaka */
.cmp-pane li{gap:14px}
.cmp-ico{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.cmp-ico svg{width:17px;height:17px}
.cmp-base .cmp-ico{background:rgba(255,255,255,.07);color:#a89f96}
.cmp-top .cmp-ico{background:rgba(163,119,83,.12);color:var(--amber)}
@media (max-width:640px){.cmp-pane{padding:28px 22px 28px 30px}}

/* blok zaufania w CTA (długoterminowy) */
.lt-trust{display:flex;flex-wrap:wrap;align-items:center;gap:14px 30px;margin:4px 0 30px;padding:18px 0;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.lt-trust em{font-style:normal;font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:.6;flex:0 0 100%}
.lt-trust span{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;line-height:1.4;opacity:.92}
.lt-trust svg{width:19px;height:19px;color:var(--sand);flex:0 0 auto}
@media (max-width:640px){.lt-trust{gap:12px}.lt-trust span{flex:0 0 100%}}

/* ---------- LT: sekcja koncowa v2 — dwie kolumny (2026-07-14) ---------- */
.lt-final{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center}
.lt-final-left .najem-cta-lead{margin:16px 0 26px;max-width:548px}
.lt-final-right{border-left:1px solid rgba(255,255,255,.16);padding-left:52px;display:flex;flex-direction:column;gap:18px}
.lt-final-claim{font-style:normal;font-family:var(--display);font-weight:400;font-size:clamp(19px,1.8vw,24px);letter-spacing:.06em;line-height:1.25;color:var(--sand);max-width:none;margin-bottom:8px}
.lt-final-row{display:flex;align-items:center;gap:14px;font-size:14px;line-height:1.5;opacity:.94}
.lt-final-row svg{flex:0 0 auto;width:40px;height:40px;padding:10px;border-radius:50%;background:rgba(224,194,142,.15);color:var(--sand)}
@media (max-width:1000px){
    .lt-final{grid-template-columns:1fr;gap:36px}
    .lt-final-right{border-left:none;padding-left:0}
}

/* ---------- poprawki 2026-07-15 ---------- */
.lt-route .pin-step p{max-width:none}
.lt-fav-cta{margin-top:18px}
.lt-route .najem-gal-note{margin-top:44px}
.lt-route.pin-on-1 .route-home .rh-lbl,.lt-route.pin-on-3 .route-home .rh-lbl{transform:translateY(-64px)}
.najem-h2 .accent{color:var(--amber)}

/* ---------- poprawki corp 2026-07-23 ---------- */
.pin-step h3 sup{font-size:.55em;vertical-align:super;line-height:0}
.corp-day .najem-lead{max-width:none}

/* corp hero (2026-07-23): mocniejsza nakladka pod tekstem — czytelnosc na jasnym niebie */
.corp-hero::before{background:linear-gradient(90deg,rgba(26,22,20,.66) 0%,rgba(26,22,20,.42) 46%,rgba(26,22,20,.08) 78%,rgba(26,22,20,0) 100%),linear-gradient(180deg,rgba(26,22,20,.5) 0%,rgba(26,22,20,.22) 45%,rgba(26,22,20,.82) 100%)}
/* ---------- mobile 2026-07-23: poprawki z audytu telefonow (przetestowane w symulacji 390px) ----------
   DO DOPISANIA na koniec assets/css/page-najem.css (z backupem .bak-mob) gdy wroci srodowisko poleceń.
   Po wgraniu: purge obu stron przez wp litespeed-purge url + audyt w ramce mobilnej. */
@media (max-width:640px){
    /* korpo: kroki 1-2-3 w kolumnie — usuwa poziome bujanie strony (bylo +135px) */
    .najem-steps{grid-template-columns:1fr;gap:14px}
    /* LT: ikonki umowa-slonce-umowa mieszcza sie na ekranie (bylo +51px poza) */
    .lt-summer{padding:22px 18px}
    .lt-summer-icons{gap:6px;width:100%;justify-content:center;margin-top:14px;padding-right:0}
    .lsi{max-width:66px}
    .lsi-ico{width:40px;height:40px}
    .lsi-ico svg{width:18px;height:18px}
    .lsi em{font-size:9px}
    .lsi-arrow{font-size:16px;padding-bottom:22px}
    /* LT: wieksze napisy na mapie kierunkow (bylo ~8px na ekranie, jest 10-15px) */
    .route-lbl{font-size:18px}
    .route-lbl-b{font-size:26px}
    .route-time text{font-size:20px}
    /* korpo: wieksze napisy na mapce klastra (bylo ~5px); MIEJSCE PRACY kotwiczone od prawej, zeby sie nie obcinalo */
    .cluster-lbl{font-size:16px}
    text.cluster-lbl[x="392"]{text-anchor:end;transform:translateX(14px)}
}

/* lead suwaka: PC widzi "przeciagnij", ekrany bez suwaka (<=1000px) wariant "porownaj" (2026-07-23) */
.cmp-lead-mob{display:none}
@media (max-width:1000px){
    .cmp-lead-pc{display:none}
    .cmp-lead-mob{display:block}
}

/* link w bloku wakacyjnym (2026-08-04) */
.lt-summer-txt a{color:var(--amber);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.lt-summer-txt a:hover{color:var(--ink)}

/* ---------- podglad apartamentu w kafelkach kierunkow (2026-08-04) ---------- */
.apt-peek{position:fixed;inset:0;background:rgba(26,22,20,.72);display:flex;align-items:center;justify-content:center;padding:24px;z-index:400;opacity:0;pointer-events:none;transition:opacity .25s ease}
.apt-peek.is-open{opacity:1;pointer-events:auto}
.apt-peek-card{position:relative;width:min(720px,94vw);background:var(--paper);border-radius:18px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35);transform:scale(.96);transition:transform .25s ease}
.apt-peek.is-open .apt-peek-card{transform:scale(1)}
.apt-peek-img{aspect-ratio:16/10;background-size:cover;background-position:center;background-color:var(--stone)}
.apt-peek-bar{display:flex;align-items:center;justify-content:space-between;gap:14px 18px;padding:18px 22px;flex-wrap:wrap}
.apt-peek-bar strong{font-family:var(--display);font-weight:400;font-size:24px;letter-spacing:.06em;text-transform:uppercase}
.apt-peek-x{position:absolute;top:10px;right:10px;width:38px;height:38px;border:none;border-radius:50%;background:rgba(26,22,20,.55);color:#fff;font-size:22px;line-height:1;cursor:pointer;z-index:2}
.apt-peek-x:hover{background:rgba(26,22,20,.8)}
@media (prefers-reduced-motion:reduce){.apt-peek,.apt-peek-card{transition:none}}
@media (max-width:640px){.apt-peek{padding:14px}.apt-peek-bar{padding:14px 16px}.apt-peek-bar strong{font-size:20px}}

/* notka nad kafelkami + metraz w podgladzie (2026-08-06) */
.lt-fav-note{display:block;font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-top:18px}
.lt-fav-note + .lt-fav-mini{margin-top:8px}
.apt-peek-meta{display:flex;flex-direction:column;gap:2px}
.apt-peek-meta em{font-style:normal;font-family:var(--mono);font-size:13px;letter-spacing:.08em;color:var(--amber)}

/* 2026-09-13 (przeniesienie z testu) — strona dawala sie przesuwac w bok na telefonie.
 * Dwie przyczyny: kolumny `1fr` w siatce faktow rosly do min-content kafelka,
 * a przycisk „Doradzcie mi lokalizacje" ma white-space:nowrap i nie miescil sie
 * w szerokosci ekranu. */
@media (max-width:640px){
  .lt-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lt-facts-grid > *{min-width:0}
  .lt-fav-cta .btn{white-space:normal;text-align:center}
  /* Napis „Sprawdz stawki w kalkulatorze" wychodzil poza ekran (nowrap). */
  .najem-hero-ctas .btn{white-space:normal;text-align:center}
}

/* 2026-09-13 — ekrany <=360 px. Kalkulator stawek (tasma miesiecy, slupki, etykiety)
 * nie miesci sie w 360 px i przy TAK waskim oknie strona dawala sie przesunac o 14 px.
 * Na emulacji telefonu przesuniecia nie ma, problem widac w waskim oknie desktopowym,
 * ale nadmiar i tak jest — domykamy go na kontenerze sekcji. `clip` zamiast `hidden`,
 * zeby nie zepsuc sticky naglowka. */
@media (max-width:420px){
  .najem-wrap{overflow-x:clip}
}
