
:root{--ink:#121211;--paper:#f1eee8;--cream:#e8e2d8;--line:rgba(18,18,17,.18);--accent:#a47c52}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%}
.nav-wrap{position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:26px clamp(20px,4vw,64px);color:white}.brand{display:inline-flex;flex-direction:column;line-height:.85;letter-spacing:.16em;font-weight:500}.brand span{font-family:Georgia,'Times New Roman',serif;font-size:25px;letter-spacing:.08em}.brand small{margin-top:7px;font-size:9px;letter-spacing:.65em;padding-left:3px}nav{display:flex;align-items:center;gap:25px;font-size:13px}nav a{opacity:.82}nav a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.55);padding:12px 18px}.menu-btn{display:none;border:0;background:none;color:#fff;font-size:24px}
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;color:white;overflow:hidden;background:#111}.page-hero{min-height:72svh}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.32) 58%,rgba(0,0,0,.12)),linear-gradient(0deg,rgba(0,0,0,.5),transparent 52%)}.hero-content{position:relative;z-index:2;width:min(1050px,94%);padding:150px clamp(20px,7vw,110px) 58px}.eyebrow,.section-label{font-size:11px;letter-spacing:.22em;font-weight:700}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(45px,7vw,92px);line-height:.96;letter-spacing:-.04em;margin:24px 0;font-weight:400}.page-hero h1{font-size:clamp(45px,6vw,78px)}.hero h1 em,h2 em{font-weight:400;color:#dfc4a5}.hero-copy{max-width:690px;font-size:clamp(16px,1.6vw,20px);line-height:1.6;opacity:.88}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:center;border:0;padding:16px 25px;font:inherit;font-size:13px;letter-spacing:.04em;cursor:pointer}.button.light{background:white;color:var(--ink)}.button.dark{background:var(--ink);color:white}.text-link{display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:13px}.hero-facts{display:flex;gap:38px;margin-top:54px;padding-top:22px;border-top:1px solid rgba(255,255,255,.3);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.hero-facts span{display:flex;flex-direction:column;gap:5px;opacity:.76}.hero-facts b{font-size:13px;color:white}
.section{padding:clamp(75px,10vw,145px) clamp(20px,7vw,110px)}.intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:10vw;align-items:start;margin-top:38px}h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,5.6vw,72px);line-height:1.05;letter-spacing:-.035em;font-weight:400;margin:0}h2 em{color:var(--accent)}.intro-copy{padding-top:10px;font-size:17px;line-height:1.75}.intro-copy p{margin-top:0;margin-bottom:22px}
.projects{background:var(--ink);color:white}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}.section-heading>div{max-width:820px}.section-heading h2{margin-top:22px}.section-heading>p{max-width:340px;line-height:1.6;opacity:.62}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}.project-card{margin-bottom:50px}.project-1,.project-4{grid-column:span 7}.project-2,.project-3{grid-column:span 5}.project-image-wrap{aspect-ratio:4/3;overflow:hidden;background:#282826}.project-2 .project-image-wrap,.project-3 .project-image-wrap{aspect-ratio:3/4}.project-image{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.project-card:hover .project-image{transform:scale(1.025)}.project-meta{display:flex;justify-content:space-between;gap:20px;margin-top:17px}.project-meta h3{font-family:Georgia,serif;font-size:24px;font-weight:400;margin:0}.project-meta p{margin:4px 0 0;font-size:11px;opacity:.6;text-transform:uppercase;letter-spacing:.08em}
.possibility-grid{display:grid;grid-template-columns:1fr .9fr;gap:7vw;margin-top:40px;align-items:stretch}.possibility-copy>p{margin:30px 0;font-size:17px;line-height:1.7}.possibility-copy ul{list-style:none;margin:40px 0 0;padding:0;border-top:1px solid var(--line)}.possibility-copy li{display:grid;grid-template-columns:48px 1fr;padding:22px 0;border-bottom:1px solid var(--line)}.possibility-copy li>span{font-size:11px;color:var(--accent)}.possibility-copy b{font-size:16px}.possibility-copy li p{margin:7px 0 0;opacity:.65;line-height:1.5}.feature-image-wrap,.story-image-wrap{min-height:690px;overflow:hidden}.feature-image,.story-image{width:100%;height:100%;object-fit:cover}
.process{background:#dcd4c7}.process>h2{max-width:800px;margin-top:22px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:65px;background:rgba(18,18,17,.14)}.process article{background:#dcd4c7;padding:30px;min-height:260px}.process article span{color:var(--accent);font-size:12px}.process article h3{font-family:Georgia,serif;font-size:25px;font-weight:400;margin:55px 0 12px}.process article p{line-height:1.6;opacity:.66}
.story{display:grid;grid-template-columns:.95fr 1.05fr;gap:8vw;align-items:center;background:var(--ink);color:white}.story-image-wrap{min-height:650px}.story-copy h2{margin:24px 0 30px}.story-copy>p:not(.section-label){max-width:650px;line-height:1.8;opacity:.7;font-size:17px}
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;background:#dcd4c7}.contact-copy h2{margin:24px 0 28px}.contact-copy>p:not(.section-label){line-height:1.75;font-size:17px;max-width:620px}.contact-direct{display:flex;flex-direction:column;gap:8px;margin-top:38px;font-family:Georgia,serif;font-size:22px}.contact-direct span{font-family:Arial,sans-serif;font-size:13px;opacity:.6;margin-top:10px}.contact-form{background:var(--paper);padding:clamp(25px,4vw,52px)}.contact-form label{display:flex;flex-direction:column;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:22px}input,select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);padding:10px 0 13px;font:inherit;border-radius:0;outline:0}input:focus,select:focus,textarea:focus{border-color:var(--ink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-note{text-align:center;font-size:10px;opacity:.55;margin-bottom:0}
footer{background:#080808;color:white;padding:60px clamp(20px,7vw,110px) 35px;display:grid;grid-template-columns:.6fr 1.2fr 1fr;gap:40px;align-items:start}.footer-brand{align-self:start}footer>p{margin:0;max-width:470px;line-height:1.6;opacity:.6}.footer-links{display:flex;flex-wrap:wrap;gap:16px 26px;justify-content:flex-end;font-size:13px}footer>small{grid-column:1/-1;padding-top:35px;border-top:1px solid rgba(255,255,255,.15);opacity:.45}
.collection{background:var(--ink);color:white}.collection-item{padding:70px 0;border-top:1px solid rgba(255,255,255,.16)}.collection-item:first-of-type{border-top:0}.collection-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:25px}.collection-head h3{font-family:Georgia,serif;font-size:clamp(30px,4vw,52px);font-weight:400;margin:0}.collection-head p{max-width:470px;opacity:.58;margin:0;text-transform:uppercase;font-size:11px;letter-spacing:.08em}.model-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.model-gallery img{height:520px;object-fit:cover;grid-column:span 4;cursor:zoom-in}.model-gallery img:first-child{grid-column:span 6}.model-gallery img:nth-child(2){grid-column:span 6}.model-gallery.two img{grid-column:span 6}.portfolio-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.portfolio-nav a{border:1px solid var(--line);padding:12px 15px;font-size:12px}.projects .portfolio-nav a{border-color:rgba(255,255,255,.3)}
.shape-options{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:18px 0 28px}.shape-option{position:relative;cursor:pointer}.shape-option input{position:absolute;opacity:0}.shape-option img{aspect-ratio:1.25;object-fit:cover;border:2px solid transparent}.shape-option span{display:block;padding:10px 0;font-size:12px}.shape-option input:checked+img{border-color:var(--accent)}
.lightbox{display:none;position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.94);padding:30px;align-items:center;justify-content:center}.lightbox.open{display:flex}.lightbox img{width:auto;max-width:94vw;max-height:90vh}.lightbox button{position:absolute;right:22px;top:15px;background:none;border:0;color:white;font-size:40px}.breadcrumb{position:relative;z-index:3;padding:120px clamp(20px,7vw,110px) 0;font-size:12px;opacity:.7}
@media(max-width:900px){.menu-btn{display:block}nav{display:none;position:absolute;top:76px;left:20px;right:20px;background:#111;padding:24px;flex-direction:column;align-items:stretch}nav.open{display:flex}.nav-wrap{padding-top:20px}.hero-content{padding-bottom:35px}.hero-facts{gap:18px;flex-wrap:wrap}.intro-grid,.possibility-grid,.story,.contact{grid-template-columns:1fr}.project-1,.project-2,.project-3,.project-4{grid-column:span 12}.project-2 .project-image-wrap,.project-3 .project-image-wrap{aspect-ratio:4/3}.feature-image-wrap,.story-image-wrap{min-height:520px}.process-grid{grid-template-columns:1fr 1fr}.section-heading{align-items:start;flex-direction:column}footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.model-gallery img,.model-gallery img:first-child,.model-gallery img:nth-child(2){grid-column:span 6}.shape-options{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.hero{min-height:780px}.page-hero{min-height:680px}.hero-content{width:100%}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-facts{display:grid;grid-template-columns:1fr 1fr}.section{padding-left:20px;padding-right:20px}.project-grid{gap:0}.process-grid,.form-row{grid-template-columns:1fr}.process article{min-height:auto}.process article h3{margin-top:30px}.feature-image-wrap,.story-image-wrap{min-height:430px}.project-meta,.collection-head{flex-direction:column;align-items:flex-start}.model-gallery img,.model-gallery img:first-child,.model-gallery img:nth-child(2){grid-column:span 12;height:400px}.shape-options{grid-template-columns:1fr 1fr}}


/* Realizacje w ruchu */
.motion-section{background:#0d0d0c;color:#fff}
.motion-section .section-heading>p{color:rgba(255,255,255,.62)}
.motion-section .section-label{color:#b9966e}
.motion-main{position:relative;margin-top:50px;background:#171715;overflow:hidden}
.motion-main video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#171715}
.motion-caption{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:24px 0 8px;border-bottom:1px solid rgba(255,255,255,.16)}
.motion-caption h3{font-size:clamp(28px,4vw,48px);margin:0}
.motion-caption p{max-width:520px;color:rgba(255,255,255,.62);margin:0}
.motion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px}
.motion-card{margin:0}
.motion-card video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#171715}
.motion-card figcaption{display:flex;justify-content:space-between;gap:15px;padding:14px 0;color:rgba(255,255,255,.72);font-size:13px;border-bottom:1px solid rgba(255,255,255,.14)}
.motion-card figcaption b{color:#fff;font-weight:500}
.motion-note{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:46px;padding-top:28px;border-top:1px solid rgba(255,255,255,.16)}
.motion-note p{max-width:650px;color:rgba(255,255,255,.62);margin:0}
@media(max-width:850px){
 .motion-grid{grid-template-columns:1fr}
 .motion-caption,.motion-note{align-items:flex-start;flex-direction:column}
}

/* Ikona mechanizmów rozkładania na stronie głównej */
.possibility-copy li.mechanism-home-link{
  grid-template-columns:48px 1fr;
  align-items:center;
  background:rgba(177,139,98,.07);
  padding-left:10px;
  padding-right:10px;
  transition:background .2s ease,transform .2s ease;
}
.possibility-copy li.mechanism-home-link:hover{
  background:rgba(177,139,98,.13);
  transform:translateX(3px);
}
.mechanism-home-icon{
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--accent);
}
.mechanism-home-icon svg{
  width:34px;
  height:34px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.mechanism-home-link a{display:block}
.mechanism-home-link small{
  display:inline-block;
  margin-top:10px;
  padding-bottom:3px;
  border-bottom:1px solid currentColor;
  font-size:11px;
  letter-spacing:.06em;
}


/* Profesjonalny formularz kontaktowy */
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-consent{display:flex!important;align-items:flex-start!important;gap:12px!important;margin:18px 0!important;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;line-height:1.55!important;color:rgba(18,18,17,.68)!important}
.form-consent input{width:18px!important;height:18px!important;min-width:18px!important;margin-top:1px!important;accent-color:var(--accent)}
.form-submit[disabled]{opacity:.58;cursor:wait}
.form-status{min-height:20px;margin:12px 0 0;font-size:13px;line-height:1.5}
.form-status.error{color:#8b1e1e}
.thank-you{min-height:72vh;display:grid;place-items:center;text-align:center;background:var(--paper)}
.thank-you-inner{max-width:760px;padding:120px 24px}
.thank-you h1{font-family:Georgia,serif;font-size:clamp(42px,7vw,92px);font-weight:400;line-height:1.02;margin:18px 0 24px}
.thank-you h1 em{color:var(--accent);font-weight:400}
.thank-you p{max-width:600px;margin:0 auto 30px;line-height:1.75;color:rgba(18,18,17,.66)}

/* Formularz premium — stan, błędy i wysyłanie */
.contact-form [aria-invalid="true"]{border-color:#8b1e1e}
.contact-form .field-error{color:#8b1e1e;font-size:11px;text-transform:none;letter-spacing:0;margin-top:-14px;margin-bottom:16px}
.form-submit{position:relative;gap:10px;min-height:50px}
.submit-spinner{display:none;width:17px;height:17px;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;border-radius:50%;animation:noir-spin .75s linear infinite}
.form-submit.is-loading .submit-spinner{display:block}
.form-submit.is-loading .submit-label{opacity:.82}
.form-status.success{color:#315c3b}
@keyframes noir-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.submit-spinner{animation-duration:1.5s}}
