:root{--paper:#eceeeb;--bright:#f7f8f5;--ink:#202523;--muted:#6a706d;--line:rgba(32,37,35,.17);--petrol:#38544f;--petrol-dark:#263c38;--white:#fff;--container:1240px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Manrope","Segoe UI Variable",sans-serif;font-size:16px;line-height:1.6}body::after{content:"";position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.027;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.container{width:min(calc(100% - 64px),var(--container));margin-inline:auto}.section{padding:clamp(96px,10vw,150px) 0}.skip-link{position:fixed;left:20px;top:-60px;z-index:30;padding:10px 15px;background:var(--ink);color:#fff;transition:transform 300ms var(--ease)}.skip-link:focus{transform:translateY(80px)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:absolute;z-index:10;top:24px;left:0;width:100%}.header__inner{width:min(calc(100% - 48px),1400px);height:68px;margin-inline:auto;padding:0 10px 0 20px;display:flex;align-items:center;justify-content:space-between;background:rgba(247,248,245,.88);box-shadow:0 16px 48px rgba(36,48,43,.11);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:13px;line-height:1}.brand__mark{position:relative;width:35px;height:35px;display:block;transform:rotate(45deg);border:1px solid var(--petrol)}.brand__mark i{position:absolute;display:block;background:var(--petrol)}.brand__mark i:first-child{left:50%;top:6px;bottom:6px;width:1px}.brand__mark i:last-child{top:50%;left:6px;right:6px;height:1px}.brand__name{display:grid;gap:3px;font-size:12px;letter-spacing:.16em;text-transform:uppercase}.brand__name strong{font-size:13px;font-weight:700;letter-spacing:.12em}.brand__name span{color:var(--muted)}.main-nav{display:flex;align-items:center;gap:clamp(22px,3vw,43px);font-size:13px;font-weight:600}.main-nav>a:not(.nav-contact){position:relative}.main-nav>a:not(.nav-contact)::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--petrol);transition:right 450ms var(--ease)}.main-nav>a:hover::after{right:0}.nav-contact{display:inline-flex;align-items:center;gap:18px;padding:14px 17px;background:var(--petrol);color:#fff;transition:background 450ms var(--ease),transform 450ms var(--ease)}.nav-contact:hover{background:var(--petrol-dark);transform:translateY(-2px)}.nav-toggle{display:none}
.hero{position:relative;min-height:min(880px,100dvh);display:grid;grid-template-columns:minmax(420px,.82fr) minmax(0,1.18fr);padding:116px 24px 24px}.hero__image{grid-column:2;grid-row:1;min-height:680px;overflow:hidden}.hero__image img{object-position:center 43%;transition:transform 1.6s var(--ease)}.hero:hover .hero__image img{transform:scale(1.018)}.hero__copy{position:relative;z-index:2;grid-column:1;grid-row:1;align-self:center;width:calc(100% + 68px);margin-right:-68px;padding:clamp(46px,5vw,76px) clamp(42px,5vw,72px);background:rgba(247,248,245,.96)}.hero__kicker{margin:0 0 27px;color:var(--petrol);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}h1{max-width:620px;margin-bottom:25px;font-size:clamp(42px,4.4vw,64px);font-weight:500;line-height:1.06}.hero__lead{max-width:520px;margin-bottom:0;color:var(--muted);font-size:17px}.hero__actions{display:flex;align-items:center;gap:28px;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:54px;padding:7px 8px 7px 21px;border:0;background:var(--petrol);color:#fff;cursor:pointer;font-weight:600;transition:transform 500ms var(--ease),background 500ms var(--ease)}.button b{width:38px;height:38px;display:grid;place-items:center;background:rgba(255,255,255,.13);font-size:15px;font-weight:400;transition:transform 500ms var(--ease)}.button:hover{transform:translateY(-3px);background:var(--petrol-dark)}.button:hover b{transform:translate(2px,2px)}.button:active{transform:translateY(0) scale(.985)}.quiet-link{position:relative;padding-bottom:4px;font-size:14px;font-weight:600;border-bottom:1px solid var(--ink)}.hero__signature{position:absolute;right:56px;bottom:51px;z-index:3;display:flex;align-items:center;gap:15px;padding:14px 19px;background:rgba(32,37,35,.9);color:#fff;backdrop-filter:blur(12px);font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase}.hero__signature i{width:22px;height:1px;background:rgba(255,255,255,.38)}
.intro{padding-top:clamp(110px,12vw,170px)}.intro__grid{display:grid;grid-template-columns:1fr 3fr;gap:40px}.section-index{color:var(--petrol);font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.intro__statement h2{max-width:850px;margin-bottom:38px;font-size:clamp(45px,5.5vw,76px);font-weight:500;line-height:1.04}.intro__statement>p{max-width:610px;margin-left:24%;margin-bottom:0;color:var(--muted);font-size:18px}
.services{padding-top:30px}.services__layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);align-items:stretch;gap:clamp(50px,7vw,100px)}.services__visual{position:relative;min-height:770px;overflow:hidden}.services__visual img{object-position:center;transition:transform 1.2s var(--ease)}.services__visual:hover img{transform:scale(1.025)}.material-note{position:absolute;left:0;bottom:0;display:grid;gap:5px;width:68%;padding:24px 27px;background:var(--bright)}.material-note span{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.material-note strong{font-size:13px;font-weight:600}.services__content{padding-top:35px}.section-title>span,.process__heading>span,.contact__copy>span{color:var(--petrol);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.section-title h2{max-width:620px;margin:19px 0 60px;font-size:clamp(35px,3.5vw,50px);font-weight:500;line-height:1.12}.service-list{border-top:1px solid var(--line)}.service-item{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:126px;padding:25px 4px;border-bottom:1px solid var(--line);transition:color 450ms var(--ease),padding 450ms var(--ease)}.service-item>span{display:grid;gap:8px}.service-item strong{font-size:clamp(20px,2vw,26px);font-weight:500;letter-spacing:-.025em}.service-item small{color:var(--muted);font-size:12px}.service-item i{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--line);font-style:normal;transition:transform 500ms var(--ease),background 500ms var(--ease),color 500ms var(--ease)}.service-item:hover{padding-left:16px;color:var(--petrol)}.service-item:hover i{transform:rotate(45deg);background:var(--petrol);color:#fff}
.work{background:var(--bright)}.work__heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:70px}.work__heading h2{margin-bottom:0;font-size:clamp(42px,5vw,68px);font-weight:500;line-height:1.05}.work__heading p{max-width:380px;margin-bottom:7px;color:var(--muted)}.work__gallery{display:grid;grid-template-columns:1.28fr .72fr;grid-template-rows:360px 360px;gap:22px}.project{margin:0}.project--main{grid-row:1/3}.project__image{height:calc(100% - 54px);overflow:hidden}.project__image img{transition:transform 1s var(--ease),filter 1s var(--ease)}.project:hover img{transform:scale(1.025);filter:saturate(.84)}.project figcaption{height:54px;display:flex;align-items:end;justify-content:space-between;gap:20px}.project figcaption strong{font-size:14px;font-weight:600}.project figcaption span{color:var(--muted);font-size:11px}.gallery-link{display:flex;align-items:center;justify-content:space-between;margin-top:52px;padding:19px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;font-weight:600;transition:padding 450ms var(--ease),color 450ms var(--ease)}.gallery-link:hover{padding-inline:13px;color:var(--petrol)}
.process{overflow:hidden}.process__heading{max-width:700px;margin-bottom:75px}.process__heading h2{margin:18px 0 0;font-size:clamp(42px,5vw,66px);font-weight:500;line-height:1.06}.process__path{position:relative;display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:0;list-style:none;border-top:1px solid var(--line)}.process__path::before{content:"";position:absolute;top:-5px;left:0;width:10px;height:10px;background:var(--petrol);transform:rotate(45deg)}.process__path li{position:relative;min-height:245px;padding:47px 34px 20px 0}.process__path li:not(:last-child){margin-right:34px;border-right:1px solid var(--line)}.process__path strong{display:block;margin-bottom:25px;font-size:23px;font-weight:500}.process__path p{max-width:220px;margin-bottom:0;color:var(--muted);font-size:14px}
.atelier{padding-block:0;background:var(--petrol-dark);color:#fff}.atelier__layout{min-height:760px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(400px,1.1fr);gap:clamp(60px,8vw,120px);align-items:center}.atelier__copy{padding-block:100px}.atelier .section-index{color:rgba(255,255,255,.57)}.atelier h2{max-width:600px;margin:28px 0;font-size:clamp(42px,4.5vw,62px);font-weight:500;line-height:1.06}.atelier__copy>p:not(.section-index){max-width:560px;color:rgba(255,255,255,.67)}.award{display:grid;gap:12px;max-width:520px;margin-top:55px;padding:24px 0 0 28px;border-left:1px solid rgba(255,255,255,.36)}.award span{color:rgba(255,255,255,.5);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.award strong{font-size:17px;font-weight:500;line-height:1.45}.atelier__image{height:620px}.atelier__image img{object-position:center 42%;filter:saturate(.7) contrast(.97)}
.contact__layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(70px,10vw,150px)}.contact__copy h2{max-width:570px;margin:20px 0 28px;font-size:clamp(42px,4.5vw,62px);font-weight:500;line-height:1.08}.contact__copy>p{max-width:510px;color:var(--muted)}.contact__direct{display:grid;gap:8px;margin-top:42px;font-size:16px;font-weight:600}.contact__direct a{width:max-content;border-bottom:1px solid transparent;transition:border-color 450ms var(--ease)}.contact__direct a:hover{border-color:var(--ink)}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:9px 22px;padding:37px;background:var(--bright);box-shadow:0 28px 70px rgba(36,48,43,.09)}.demo-note{grid-column:1/-1;margin-bottom:15px;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.contact-form label{color:var(--muted);font-size:11px;font-weight:600}.contact-form label[for="message"],.contact-form textarea,.form-status,.contact-form .button{grid-column:1/-1}.contact-form input,.contact-form textarea{width:100%;margin-bottom:18px;padding:13px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;outline:none;background:transparent;color:var(--ink);transition:border-color 350ms var(--ease)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--petrol)}.contact-form textarea{resize:vertical}.contact-form .is-invalid{border-color:#a94c45}.form-status{min-height:22px;margin:0;color:#a94c45;font-size:12px}.form-status.is-success{color:var(--petrol)}.button--dark{width:100%;margin-top:8px}
.footer{padding:58px 0;border-top:1px solid var(--line)}.footer__grid{display:grid;grid-template-columns:1.5fr 1fr .7fr .8fr;gap:45px;align-items:start}.footer p{margin:0;color:var(--muted);font-size:12px}.footer__grid>div{display:grid;gap:6px;font-size:12px}.brand--footer .brand__name{display:grid}.reveal{opacity:0;transform:translateY(30px);transition:opacity 900ms var(--ease),transform 900ms var(--ease)}.reveal--delay{transition-delay:120ms}.reveal.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:1020px){.main-nav{gap:22px}.hero{grid-template-columns:minmax(390px,.9fr) 1.1fr}.hero__copy{width:calc(100% + 36px);margin-right:-36px;padding:52px 42px}.intro__statement>p{margin-left:10%}.services__layout{grid-template-columns:.9fr 1.1fr;gap:45px}.services__visual{min-height:680px}.service-item{min-height:116px}.atelier__layout{gap:55px}}
@media(max-width:767px){.container{width:calc(100% - 32px)}.section{padding:82px 0}.site-header{top:14px}.header__inner{width:calc(100% - 28px);height:62px;padding-inline:15px 11px}.brand__mark{width:30px;height:30px}.brand__name{font-size:10px}.brand__name strong{font-size:11px}.nav-toggle{position:relative;z-index:3;width:42px;height:42px;display:block;border:0;background:transparent}.nav-toggle>span:not(.sr-only){position:absolute;left:9px;width:24px;height:1px;background:var(--ink);transition:transform 500ms var(--ease)}.nav-toggle>span:first-child{top:17px}.nav-toggle>span:nth-child(2){top:24px}.nav-toggle[aria-expanded="true"]>span:first-child{top:21px;transform:rotate(45deg)}.nav-toggle[aria-expanded="true"]>span:nth-child(2){top:21px;transform:rotate(-45deg)}.main-nav{position:fixed;inset:0;z-index:2;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:0;padding:90px 28px 35px;background:rgba(247,248,245,.97);backdrop-filter:blur(20px);visibility:hidden;opacity:0;transform:translateY(-14px);transition:opacity 500ms var(--ease),transform 500ms var(--ease),visibility 0s linear 500ms}.main-nav.is-open{visibility:visible;opacity:1;transform:translateY(0);transition-delay:0s}.main-nav>a{padding:17px 3px;border-bottom:1px solid var(--line);font-size:25px;font-weight:500;opacity:0;transform:translateY(16px);transition:opacity 450ms var(--ease),transform 450ms var(--ease)}.main-nav.is-open>a{opacity:1;transform:translateY(0)}.main-nav.is-open>a:nth-child(2){transition-delay:50ms}.main-nav.is-open>a:nth-child(3){transition-delay:100ms}.main-nav.is-open>a:nth-child(4){transition-delay:150ms}.main-nav.is-open>a:nth-child(5){transition-delay:200ms}.nav-contact{margin-top:22px;justify-content:space-between;color:#fff;font-size:17px!important}.hero{min-height:auto;grid-template-columns:1fr;grid-template-rows:auto auto;padding:91px 14px 14px}.hero__image{grid-column:1;grid-row:1;min-height:55dvh}.hero__copy{grid-column:1;grid-row:2;width:auto;margin:-36px 13px 0;padding:35px 23px 38px}.hero__kicker{margin-bottom:19px}h1{font-size:clamp(38px,11vw,48px)}.hero__lead{font-size:15px}.hero__actions{align-items:flex-start;flex-direction:column;gap:18px}.button{width:100%}.hero__signature{display:none}.intro__grid{grid-template-columns:1fr;gap:25px}.intro__statement h2{margin-bottom:28px;font-size:43px}.intro__statement>p{margin-left:0;font-size:16px}.services{padding-top:0}.services__layout{grid-template-columns:1fr;gap:60px}.services__visual{min-height:540px}.services__content{padding-top:0}.section-title h2{margin:16px 0 37px;font-size:36px}.service-item{min-height:106px}.service-item strong{font-size:20px}.service-item small{line-height:1.45}.work__heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:45px}.work__heading h2{font-size:43px}.work__gallery{grid-template-columns:1fr;grid-template-rows:none;gap:42px}.project--main{grid-row:auto}.project__image{height:460px}.project--top .project__image,.project--bottom .project__image{height:350px}.project figcaption{align-items:flex-start;flex-direction:column;justify-content:center;gap:0}.process__heading{margin-bottom:45px}.process__heading h2{font-size:43px}.process__path{grid-template-columns:1fr;border-top:0;border-left:1px solid var(--line)}.process__path::before{top:0;left:-5px}.process__path li{min-height:0;padding:0 10px 45px 30px}.process__path li:not(:last-child){margin-right:0;border-right:0}.process__path strong{margin-bottom:10px}.process__path p{max-width:280px}.atelier__layout{min-height:0;grid-template-columns:1fr;gap:0}.atelier__copy{padding:82px 0 55px}.atelier h2{font-size:43px}.atelier__image{height:520px}.contact__layout{grid-template-columns:1fr;gap:55px}.contact__copy h2{font-size:43px}.contact-form{grid-template-columns:1fr;padding:26px 20px}.contact-form label,.contact-form input{grid-column:1}.footer__grid{grid-template-columns:1fr 1fr;gap:35px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
@media(prefers-reduced-transparency:reduce){.header__inner,.main-nav{background:var(--bright);backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Brand joint: two fitted corners instead of a generic cross. */
.brand__logo{width:auto;height:58px;object-fit:contain}
.brand--footer .brand__logo{height:84px}
.brand__mark i{width:11px;height:11px;background:transparent}
.brand__mark i:first-child{left:7px;top:7px;right:auto;bottom:auto;border-left:1px solid var(--petrol);border-top:1px solid var(--petrol)}
.brand__mark i:last-child{right:7px;bottom:7px;left:auto;top:auto;border-right:1px solid var(--petrol);border-bottom:1px solid var(--petrol)}

@media(max-width:767px){
  .brand__logo{height:52px}
  .brand--footer .brand__logo{height:76px}
  .header__inner{background:var(--bright);backdrop-filter:none;-webkit-backdrop-filter:none}
}

@media(min-width:768px){
  .hero{height:max(680px,100dvh);min-height:680px;max-height:860px;overflow:hidden}
  .hero__image{height:100%;min-height:0}
  .hero__copy{align-self:center;margin-top:0}
}

/* Realizacje zachowują naturalne proporcje źródłowych fotografii. */
.work__gallery{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);grid-template-rows:none;align-items:start;gap:clamp(38px,6vw,82px)}
.project--main{grid-row:auto}
.project-column{display:grid;gap:clamp(64px,8vw,112px)}
.project--bottom{width:68%;justify-self:end}
.project__image{height:auto;overflow:hidden}
.project__image img{width:100%;height:auto;object-fit:contain}
.project figcaption{height:auto;min-height:54px;padding-top:13px;align-items:flex-start}

@media(max-width:767px){
  .work__gallery{grid-template-columns:1fr;gap:44px}
  .project-column{gap:44px}
  .project--bottom{width:100%;justify-self:stretch}
  .project__image,.project--top .project__image,.project--bottom .project__image{height:auto}
}

/* Zbalansowana mozaika: 4:3 i dwa piony 3:4. */
.work__gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:76px;align-items:start}
.project--landscape{grid-column:1 / span 8;grid-row:1}
.project--portrait-right{grid-column:9 / -1;grid-row:1;margin-top:72px}
.project--portrait-lower{grid-column:3 / span 4;grid-row:2}

@media(max-width:767px){
  .work__gallery{grid-template-columns:1fr;gap:44px}
  .project--landscape,.project--portrait-right,.project--portrait-lower{grid-column:1;grid-row:auto;margin-top:0}
  .hero__image{height:auto;min-height:0;overflow:hidden}
  .hero__image img{height:auto;aspect-ratio:auto;object-fit:contain}
  .atelier__image{height:auto}
  .atelier__image img{height:auto;aspect-ratio:auto;object-fit:contain}
}
