/* Hero: kontur przestrzenny na spokojnym tle, bez kratki i ekranów. */
.hero{background:radial-gradient(ellipse at 78% 40%,#547bff0c,transparent 48%),var(--paper)}
.hero-layout{min-height:550px}
.contour-art{height:570px;display:grid;place-items:center;perspective:1000px;overflow:visible;isolation:isolate}
.contour-object{width:100%;height:100%;overflow:visible;transform:rotateX(23deg) rotateY(-22deg) rotateZ(-21deg);animation:contour-turn 18s ease-in-out infinite}
.contour-object rect{transform-origin:50% 50%;animation:contour-breathe 12s ease-in-out infinite;animation-delay:calc(var(--i) * -.13s);stroke-dasharray:1;stroke-dashoffset:0}
.contour-shadow{position:absolute;width:65%;height:12%;bottom:5%;background:radial-gradient(ellipse,#214bfa18,transparent 70%);filter:blur(15px);transform:rotate(-15deg)}
.contour-note{position:absolute;bottom:0;right:8%;color:var(--muted);font-size:8px;letter-spacing:.16em}
.contour-point{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--accent);right:16%;top:15%;box-shadow:0 0 0 8px #214bfa08;animation:contour-point 8s ease-in-out infinite}
@keyframes contour-turn{0%,100%{transform:rotateX(23deg) rotateY(-22deg) rotateZ(-21deg)}50%{transform:rotateX(9deg) rotateY(13deg) rotateZ(-10deg)}}
@keyframes contour-breathe{0%,100%{transform:rotate(0deg);stroke-dashoffset:0}50%{transform:rotate(calc((var(--i) - 9) * 1.2deg));stroke-dashoffset:.06}}
@keyframes contour-point{50%{transform:translate(-24px,35px);opacity:.4}}
.seam-gallery{height:100px;background:var(--paper);margin-bottom:-1px}.seam-gallery:before,.seam-gallery:after{display:none}.seam-gallery svg{display:block}.seam-gallery .seam-stroke{stroke:#537cff}
.work-grid{gap:30px;position:relative;padding-bottom:6px}.work-card{flex-basis:80%;max-width:1120px}.project-media{aspect-ratio:1.9;border-radius:2px}.hospesly .cover-image{object-fit:contain;background:#101214}.work-card:not(.is-active) .project-media{transform:none;opacity:1}
/* Część warsztatowa po realizacjach: biały rysunek na kobaltowym papierze. */
.blue-paper{height:240svh;position:relative;background:#234be8;color:#f3f5ff;--bp-draw:1;--bp-detail:1;--bp-result:0;--bp-open:0;--bp-copy:1;--bp-tilt:0deg}
.blueprint-sticky{height:100svh;min-height:680px;position:sticky;top:0;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 65% 50%,#3c64f4,transparent 65%),#234be8}
.paper-grain{position:absolute;inset:0;opacity:.33;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.23' d='M0 0h180v180H0z'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.blueprint-sticky:before{content:'';position:absolute;inset:22px;border:1px solid #e6eeff2b;pointer-events:none}
.blueprint-copy{position:absolute;left:var(--gutter);top:23%;z-index:2;opacity:var(--bp-copy);transform:translateY(calc((1 - var(--bp-copy)) * -35px))}
.blueprint-copy>.micro{color:#d4dfff;margin-bottom:40px;display:block;font-size:9px}
.blueprint-copy h2{font-size:clamp(58px,6.4vw,102px);line-height:1.08;letter-spacing:-.055em}
.blueprint-copy h2 em{font-weight:350;color:#c7d5ff}
.blueprint-copy p{margin-top:35px;font-size:17px;color:#d7e2ff;line-height:1.6}
.blueprint-board{position:absolute;right:0;top:20%;width:63%;aspect-ratio:900/650;transform:perspective(1200px) rotateY(var(--bp-tilt));color:#e8eeff;transform-origin:65% 50%}
.blueprint-guides{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.bp-line{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--bp-draw));vector-effect:non-scaling-stroke}
.bp-detail{stroke-dashoffset:calc(1 - var(--bp-detail))}
.blueprint-result{position:absolute;left:18.89%;top:24.62%;width:61.67%;height:53.85%;overflow:hidden;clip-path:inset(0 calc((1 - var(--bp-result)) * 100%) 0 0);background:#101214}
.blueprint-result img{width:100%;height:100%;object-fit:cover;object-position:top}
.blueprint-pen{position:absolute;left:calc(18.89% + var(--bp-result) * 61.67%);top:24.62%;height:53.85%;width:1px;background:#fff;box-shadow:0 0 18px #fff8;opacity:var(--bp-detail)}
.blueprint-meta{position:absolute;bottom:45px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;gap:25px;font-size:8px;opacity:var(--bp-copy);color:#dbe4ff}
.paper-aperture{position:absolute;inset:0;background:var(--paper);z-index:3;clip-path:inset(calc(33% * (1 - var(--bp-open))) calc(12% * (1 - var(--bp-open))) calc(24% * (1 - var(--bp-open))) calc(48% * (1 - var(--bp-open))));opacity:var(--bp-open);display:flex;align-items:center;justify-content:center;pointer-events:none}
.paper-aperture span{font:450 clamp(50px,8vw,130px)/1.05 Manrope;letter-spacing:-.055em;color:var(--accent);opacity:var(--bp-end-text,0);transform:translateY(calc((1 - var(--bp-end-text,0)) * 25px))}
.offer{border-top:0}.site-header.over-blue{background:#234be8ed;border-color:#ffffff26;color:#fff}.site-header.over-blue .header-cta{background:#f5f4f0;color:#214bfa}.site-header.over-blue nav{background:transparent}
body.dark .client-mark img{filter:url(#logo-mono);mix-blend-mode:normal}
@media(max-width:900px){.contour-art{height:420px}.blueprint-copy{top:19%}.blueprint-copy h2{font-size:7vw}.blueprint-copy p{font-size:14px}.blueprint-board{width:72%;right:-9%;top:29%}.blueprint-copy>.micro{font-size:8px}.blueprint-sticky{min-height:650px}}
@media(max-width:560px){.hero-layout{min-height:0;gap:20px}.hero-art.contour-art{height:320px;width:100%;margin:0}.contour-note{font-size:7px;bottom:3%}.seam-gallery{height:65px}.work-card{flex-basis:calc(100vw - 58px)}.project-media{aspect-ratio:1.35}.blue-paper{height:210svh}.blueprint-sticky{min-height:650px}.blueprint-sticky:before{inset:13px}.blueprint-copy{top:19%;left:22px}.blueprint-copy>.micro{font-size:7px;margin-bottom:25px}.blueprint-copy h2{font-size:13vw}.blueprint-copy p{font-size:12px;margin-top:20px}.blueprint-board{width:110%;right:-5%;top:49%}.blueprint-meta{bottom:30px;left:22px;right:22px;font-size:6px}.blueprint-phase{max-width:120px;text-align:right}.paper-aperture{clip-path:inset(calc(54% * (1 - var(--bp-open))) calc(15% * (1 - var(--bp-open))) calc(17% * (1 - var(--bp-open))) calc(15% * (1 - var(--bp-open))))}.paper-aperture span{font-size:15vw}.site-header.over-blue nav{background:#234be8ed}}
.motion-paused .blue-paper{height:auto}.motion-paused .blueprint-sticky{position:relative}.motion-paused .bp-line{stroke-dashoffset:0}.motion-paused .blueprint-result{clip-path:inset(0)}.motion-paused .blueprint-copy,.motion-paused .blueprint-meta{opacity:1;transform:none}.motion-paused .paper-aperture{display:none}
@media(prefers-reduced-motion:reduce){.blue-paper{height:auto}.blueprint-sticky{position:relative}.bp-line{stroke-dashoffset:0}.blueprint-result{clip-path:inset(0)}.blueprint-copy,.blueprint-meta{opacity:1;transform:none}.paper-aperture{display:none}.contour-object{animation:none}.contour-object rect{animation:none}}
/* Proces to jedna scena, a nie cztery niezależne miniatury. */
.blue-paper{height:270svh}
.blueprint-copy{top:19%;max-width:48%}
.blueprint-copy h2{font-size:clamp(48px,5.6vw,86px)}
.blueprint-copy h2 em{white-space:nowrap}
.blueprint-steps{position:relative;height:195px;margin-top:45px;width:330px;max-width:85%}
.blueprint-steps article{position:absolute;inset:0;opacity:0;transform:translateY(18px);visibility:hidden;transition:opacity .5s,transform .6s var(--ease),visibility .5s}
.blueprint-steps article.step-active{opacity:1;transform:translateY(0);visibility:visible}
.blueprint-steps .day{font:400 12px 'DM Sans';letter-spacing:.15em;text-transform:uppercase;color:#c7d5ff;border-bottom:1px solid #fff4;padding-bottom:10px;margin-bottom:16px}
.blueprint-steps h3{font-size:27px;line-height:1.15;font-weight:400;letter-spacing:-.035em}
.blueprint-steps p{margin-top:15px;font-size:14px;color:#d7e2ff;max-width:310px}
.blueprint-phase{display:flex;gap:25px}
.blueprint-phase span{opacity:.4;position:relative;transition:opacity .4s}
.blueprint-phase span:before{content:'';position:absolute;top:-13px;left:0;right:0;height:1px;background:white;transform:scaleX(0);transform-origin:left;transition:transform .7s}
.blueprint-phase .stage-active{opacity:1}.blueprint-phase .stage-active:before{transform:scaleX(1)}
.paper-aperture{background:var(--navy)}.paper-aperture span{color:#f5f4f0}
.process-scope{background:var(--navy);color:#9fb0ca;padding:30px var(--gutter) 20px}.process-scope p{max-width:940px;font-size:11px;line-height:1.7}
.pricing{background:var(--paper);border-top:1px solid var(--line)}
.offer{padding-top:100px}.work{padding-bottom:65px}
@media(max-width:900px){.blueprint-copy h2{font-size:5.8vw}.blueprint-steps{width:270px}.blueprint-steps h3{font-size:23px}.blueprint-steps p{font-size:12px}.blueprint-phase{gap:16px}}
@media(max-width:560px){.blue-paper{height:260svh}.blueprint-copy{top:20%;max-width:calc(100% - 44px)}.blueprint-copy>.micro{margin-bottom:15px}.blueprint-copy h2{font-size:10.5vw}.blueprint-steps{margin-top:20px;height:140px;max-width:90%;width:310px}.blueprint-steps .day{font-size:9px;padding-bottom:6px;margin-bottom:10px}.blueprint-steps h3{font-size:21px}.blueprint-steps p{font-size:12px;margin-top:9px}.blueprint-board{top:57%;width:100%;right:0}.blueprint-meta>span:first-child{display:none}.blueprint-phase{max-width:none;width:100%;justify-content:space-between;font-size:7px;gap:10px}.blueprint-meta{bottom:27px}.process-scope{padding:25px 22px}.process-scope p{font-size:10px}.paper-aperture{clip-path:inset(calc(62% * (1 - var(--bp-open))) calc(15% * (1 - var(--bp-open))) calc(10% * (1 - var(--bp-open))) calc(15% * (1 - var(--bp-open))))}}
.motion-paused .blueprint-steps{height:auto}.motion-paused .blueprint-steps article{position:relative;opacity:1;visibility:visible;transform:none;margin-bottom:25px}.motion-paused .blueprint-sticky{min-height:950px}.motion-paused .blueprint-phase{display:none}
@media(prefers-reduced-motion:reduce){.blueprint-steps{height:auto}.blueprint-steps article{position:relative;opacity:1;visibility:visible;transform:none;margin-bottom:25px}.blueprint-sticky{min-height:950px}.blueprint-phase{display:none}}
.hero h1{font-size:clamp(54px,5.85vw,100px)}.hero-subtitle{max-width:390px;font-size:21px;line-height:1.5}.included-scope{border:1px solid var(--line);padding:27px 30px;margin:30px 0;display:grid;grid-template-columns:.7fr 2fr;gap:15px 30px}.included-scope h3{font-size:24px;grid-row:span 2}.included-scope p{font-size:13px;color:var(--muted)}.included-scope p:last-child{font-size:11px}.booking-intro h2{font-size:clamp(40px,4.8vw,78px)}.paper-aperture span{word-spacing:.05em}
.motion-paused .blueprint-sticky{display:grid;grid-template-columns:1fr 1fr;gap:30px;height:auto;min-height:0;padding:150px var(--gutter) 90px}.motion-paused .blueprint-copy{position:relative;inset:auto;max-width:none}.motion-paused .blueprint-copy h2{font-size:4.5vw}.motion-paused .blueprint-board{position:relative;inset:auto;width:100%;align-self:center;transform:none}.motion-paused .blueprint-meta{display:none}
@media(max-width:560px){.hero h1{font-size:11.2vw}.hero-subtitle{font-size:18px}.included-scope{display:block;padding:22px}.included-scope h3{font-size:22px;margin-bottom:15px}.included-scope p{margin-top:12px;font-size:12px}.booking-intro h2{font-size:11vw}.motion-paused .blueprint-sticky{display:block;padding:60px 22px}.motion-paused .blueprint-copy h2{font-size:11vw}.motion-paused .blueprint-board{margin-top:35px}}
@media(prefers-reduced-motion:reduce){.blueprint-sticky{display:grid;grid-template-columns:1fr 1fr;gap:30px;height:auto;min-height:0;padding:150px var(--gutter) 90px}.blueprint-copy{position:relative;inset:auto;max-width:none}.blueprint-copy h2{font-size:4.5vw}.blueprint-board{position:relative;inset:auto;width:100%;align-self:center;transform:none}.blueprint-meta{display:none}}
@media(max-width:560px) and (prefers-reduced-motion:reduce){.blueprint-sticky{display:block;padding:60px 22px}.blueprint-copy h2{font-size:11vw}.blueprint-board{margin-top:35px}}
.faq-title-block h2{font-size:clamp(42px,4.8vw,72px)}
@media(max-width:560px){.faq-title-block h2{font-size:39px;margin-left:22%}}
/* Hero typograficzne. Rysunek techniczny pojawia się dopiero w procesie. */
.hero{background:var(--paper);min-height:92svh;padding-top:150px;padding-bottom:30px}
.hero-layout{display:block;min-height:0;margin:100px 0 85px;flex:1;align-content:center}
.hero-body{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:28px 50px;align-items:end}
.hero h1{grid-column:1;grid-row:1/4;font-size:clamp(72px,7.65vw,132px);line-height:1.07;letter-spacing:-.062em;font-weight:450}
.hero-subtitle{grid-column:2;font-size:19px;line-height:1.5;letter-spacing:-.025em;margin:0;max-width:245px}
.hero-body>.button{grid-column:2;align-self:start;justify-self:start;margin-top:0;min-height:50px;font-size:13px;padding:12px 22px}
.hero-base{padding-top:24px;border-top:1px solid var(--line)}
@media(max-width:1100px){.hero-body{grid-template-columns:minmax(0,1fr) 205px;gap:25px}.hero h1{font-size:7.9vw}.hero-subtitle{font-size:16px}}
@media(max-width:800px){.hero-body{display:block}.hero h1{font-size:10.2vw}.hero-subtitle{max-width:320px;margin:35px 0 25px}.hero-layout{margin:70px 0 55px}.hero{min-height:85svh}.hero-base{margin-top:0}}
@media(max-width:560px){.hero{padding-top:150px;min-height:calc(100svh - 30px)}.hero-layout{margin:80px 0 50px}.hero h1{font-size:11.1vw}.hero-subtitle{font-size:18px;max-width:280px;line-height:1.5;margin-top:30px}.hero-body>.button{font-size:13px}.hero-margin-note{top:145px}.hero-base{padding-top:20px}.hero-base .scroll-cue{letter-spacing:.01em}}
@media(max-width:800px){.offer-intro h2 br:first-child{display:block}}
.scene-controls #motion{width:auto;min-width:120px;border-radius:20px;padding:0 12px;font-size:10px;white-space:nowrap}.motion-paused .scene-controls #motion{background:#f5f4f0;color:#214bfa}
/* Oryginalne kadry: napisy i linki pozostają poza okładkami. */
.project-media{aspect-ratio:3/2}.project-media .cover-image{object-fit:cover;object-position:center}.project-media.map{background:#ecf1ee}.project-media.map .cover-image{object-fit:contain;padding:2.5%;background:#ecf1ee}.project-media.forest .cover-image{object-fit:contain;background:#e5e9df}.project-media.hospesly .cover-image{object-fit:contain;background:#101214}.project-media:hover .cover-image{transform:none}.project-media-controls{align-items:center;flex-wrap:wrap;gap:12px 28px}.project-media-controls .visit{position:static;margin-left:auto;border:0;border-radius:0;background:none;color:#dce5f5;padding:8px 0;font-size:10px}.project-media-controls .visit:hover{color:#91acff;background:none}.blueprint-result img{object-fit:contain;object-position:center;background:#101214}.project-screen>img{object-fit:contain;object-position:top;background:#e6e9ed}.closing-transition{height:180px;margin-bottom:-1px;overflow:hidden;background:var(--paper)}.closing-transition svg{display:block;width:100%;height:100%}
@media(min-width:1100px){.work-card{flex-basis:74%}}
@media(max-width:560px){.project-media{aspect-ratio:3/2}.project-media-controls{column-gap:20px}.project-media-controls .visit{font-size:9px}.closing-transition{height:110px}}
@media(prefers-reduced-motion:reduce){.closing-transition{height:65px}}
/* Rozwinięcie planszy łączy typografię hero z rysunkiem zakresu. */
.hero-base{justify-content:flex-end}.hero-layout{margin-top:60px}.hero-bridge{height:85svh;min-height:460px;position:relative;background:var(--paper);--bridge-open:0;--bridge-exit:0;--bridge-draw:0;overflow:hidden}.bridge-sticky{height:100%;position:relative;perspective:1200px}.bridge-sheet{position:absolute;inset:0;background:#214bfa;color:white;overflow:hidden;clip-path:polygon(calc(10% * (1 - var(--bridge-open)) + 59% * var(--bridge-exit)) calc(47% * (1 - var(--bridge-open)) + 14% * var(--bridge-exit)),calc(90% + 10% * var(--bridge-open) - 10% * var(--bridge-exit)) calc(47% * (1 - var(--bridge-open))),calc(90% + 10% * var(--bridge-open) - 10% * var(--bridge-exit)) calc(53% + 47% * var(--bridge-open)),calc(10% * (1 - var(--bridge-open)) + 59% * var(--bridge-exit)) calc(53% + 47% * var(--bridge-open) - 14% * var(--bridge-exit)));opacity:calc(1 - var(--bridge-exit) * .8)}.bridge-word{position:absolute;left:var(--gutter);top:50%;transform:translateY(-50%) translateX(calc(var(--bridge-exit) * -120px));font:450 clamp(90px,16vw,250px)/1 Manrope;letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px #ffffff9e;opacity:calc(1 - var(--bridge-exit))}.bridge-word span{color:white;-webkit-text-stroke:0}.bridge-wire{position:absolute;right:6%;top:10%;height:80%;width:43%;transform:rotate(calc((1 - var(--bridge-open)) * -12deg));color:#f0f4ff}.bridge-wire svg{width:100%;height:100%;stroke-dasharray:2000;stroke-dashoffset:calc(2000 * (1 - var(--bridge-draw)))}.bridge-axis{position:absolute;inset:6%;border:1px solid #ffffff2b;pointer-events:none}.bridge-axis:before,.bridge-axis:after{content:'';position:absolute;top:0;bottom:0;left:55%;width:1px;background:#fff2}.bridge-axis:after{left:0;right:0;top:50%;width:auto;height:1px;bottom:auto}.care-row{background:#e9eeff;color:#0e1a2d;border:0;padding:35px;margin-top:45px}.care-row h3{font-size:32px}.care-row p{color:#4f5d75}.care-price strong{font-size:45px;color:#214bfa}.care-price>span{color:#4f5d75}.motion-paused .hero-bridge{height:300px;min-height:0}.motion-paused .bridge-sheet{clip-path:none;opacity:1}.motion-paused .bridge-wire svg{stroke-dashoffset:0}.motion-paused .bridge-word{opacity:1;transform:translateY(-50%)}
@media(max-width:560px){.hero-layout{margin-top:60px}.hero-bridge{height:65svh;min-height:410px}.bridge-word{font-size:23vw;top:26%}.bridge-wire{width:65%;height:64%;right:0;top:32%}.bridge-axis{inset:22px}.care-row{padding:25px 22px}.care-row h3{font-size:29px}.care-price strong{font-size:40px}}
@media(prefers-reduced-motion:reduce){.hero-bridge{height:300px;min-height:0}.bridge-sheet{clip-path:none;opacity:1}.bridge-wire svg{stroke-dashoffset:0}.bridge-word{opacity:1;transform:translateY(-50%)}}
