/* Komponenty i sekcje strony */
/* header */
    .topline{background:var(--ink);color:rgba(255,255,255,.68);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.topline .wrap{height:34px;display:flex;align-items:center;justify-content:space-between}.topline strong{color:#eee8df;font-weight:600}.topline a:hover{color:white}
    .header{height:86px;position:sticky;top:0;z-index:50;background:rgba(245,243,238,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:inline-flex;align-items:center;gap:12px;min-width:220px}.brand-logo{width:64px;height:64px;object-fit:contain;flex-shrink:0}.brand-logo--on-dark{width:72px;height:72px}.brand-name{font:800 13px/1.1 var(--display);letter-spacing:.055em}.brand-name span{display:block;color:var(--copper-dark);font-weight:700;letter-spacing:.16em;font-size:9px;margin-top:0}.nav{display:flex;align-items:center;gap:clamp(16px,2.4vw,34px)}.nav a{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:#55584f;transition:color .2s}.nav a:hover{color:var(--copper-dark)}.header-cta{display:flex;align-items:center;gap:20px}.header-phone{font-size:12px;font-weight:700;white-space:nowrap}.header-phone small{display:block;color:var(--muted);font-size:9px;font-weight:500;letter-spacing:.08em;text-align:right}.header-cta .button{min-height:43px;padding-inline:18px}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);background:none;color:var(--ink);font-size:22px;cursor:pointer}
    /* hero */
    .hero{padding:74px 0 86px;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;right:-190px;top:30px;width:590px;height:590px;border:1px solid rgba(185,130,94,.18);border-radius:50%;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.01fr .99fr;gap:64px;align-items:center;position:relative;z-index:1}.hero-copy{padding:15px 0 20px}.hero-logo{width:clamp(110px,14vw,148px);height:auto;margin:0 0 22px}.hero h1{font:600 clamp(47px,6.25vw,79px)/1.02 var(--display);letter-spacing:-.075em;margin:24px 0 25px;max-width:690px}.hero h1 em{font-family:var(--serif);font-weight:500;color:var(--copper-dark);letter-spacing:-.065em}.hero-lead{font-size:16px;line-height:1.8;color:#62655c;max-width:570px;margin:0 0 32px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-note{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:11px;margin-top:34px}.hero-note:before{content:"";height:1px;width:34px;background:var(--copper)}.hero-visual{position:relative;padding:0 0 34px 34px}.hero-main{height:590px;width:100%;object-fit:cover;object-position:center;border-radius:2px}.hero-visual:before{content:"";position:absolute;left:0;bottom:0;width:57%;height:44%;border:1px solid var(--copper);z-index:-1}.hero-label{position:absolute;right:-17px;bottom:62px;background:var(--white);padding:19px 23px;box-shadow:var(--shadow);max-width:240px}.hero-label b{display:block;font:700 11px var(--display);letter-spacing:.1em;text-transform:uppercase}.hero-label span{display:block;color:var(--muted);font-size:11px;margin-top:4px}.hero-index{position:absolute;top:24px;left:10px;color:white;background:var(--ink);padding:10px 13px;font-size:9px;letter-spacing:.16em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg)}
    /* intro strip */
    .intro-strip{background:var(--ink);color:white;padding:27px 0}.intro-strip .wrap{display:flex;justify-content:space-between;gap:30px;align-items:center}.intro-statement{font:500 clamp(18px,2.1vw,25px)/1.35 var(--serif);max-width:650px;color:#f1ece4}.intro-points{display:flex;gap:28px;color:rgba(255,255,255,.62);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.intro-points span:before{content:"✳";color:var(--copper);margin-right:9px}
    /* categories */
    .categories{background:var(--white)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.category-card{min-width:0}.category-image{height:260px;overflow:hidden;background:var(--sand);position:relative}.category-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.category-card:hover .category-image img{transform:scale(1.055)}.category-no{position:absolute;top:14px;left:14px;color:white;background:rgba(36,39,34,.86);padding:7px 10px;font-size:9px;letter-spacing:.12em}.category-info{padding:20px 2px 0}.category-info h3{font:700 20px var(--display);letter-spacing:-.04em;margin:0 0 7px}.category-info p{color:var(--muted);font-size:12px;line-height:1.65;margin:0 0 15px;max-width:260px}.category-info a{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:var(--copper-dark)}
    /* services dark */
    .services{background:#e9e5dc}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(36,39,34,.13);border:1px solid rgba(36,39,34,.13)}.service{background:#e9e5dc;padding:31px 31px 34px;min-height:235px;transition:background .25s}.service:hover{background:#f6f3ed}.service-num{color:var(--copper-dark);font:500 13px var(--serif)}.service h3{font:700 21px var(--display);letter-spacing:-.04em;margin:22px 0 9px}.service p{color:#6f7168;font-size:13px;line-height:1.75;margin:0;max-width:330px}
    /* brand partners */
    .partners{background:var(--paper)}.partner-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:end;margin-bottom:37px}.partner-intro h2{font:600 clamp(34px,4vw,51px)/1.08 var(--display);letter-spacing:-.06em;margin:14px 0 0}.partner-intro p{color:var(--muted);font-size:14px;max-width:560px;margin:0 0 4px}.partner-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.partner{min-height:104px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.partner:hover{background:var(--white)}.partner strong{font:800 17px var(--display);letter-spacing:-.05em}.partner span{color:var(--muted);font-size:9px;letter-spacing:.13em;text-transform:uppercase;margin-top:3px}.partner-note{font-size:10px;color:var(--muted);margin:16px 0 0}
    /* material editorial */
    .editorial{background:var(--ink);color:#f8f6f0;padding:0;display:grid;grid-template-columns:1fr 1fr;min-height:550px}.editorial-image{min-height:550px;overflow:hidden}.editorial-image img{width:100%;height:100%;object-fit:cover}.editorial-copy{padding:90px clamp(36px,7vw,110px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.editorial .eyebrow{color:#d2a887}.editorial h2{font:500 clamp(38px,4.2vw,56px)/1.1 var(--serif);letter-spacing:-.04em;margin:18px 0 22px;max-width:540px}.editorial p{color:rgba(255,255,255,.65);font-size:14px;line-height:1.85;max-width:500px;margin:0 0 29px}.editorial .button{background:var(--copper);border-color:var(--copper)}
    /* gallery */
    .gallery{background:var(--white)}.gallery-grid{display:grid;grid-template-columns:1.25fr .8fr .8fr;grid-template-rows:230px 230px;gap:14px}.gallery-item{position:relative;overflow:hidden;background:var(--sand)}.gallery-item:first-child{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.gallery-item:hover img{transform:scale(1.04)}.gallery-caption{position:absolute;left:0;right:0;bottom:0;padding:35px 18px 16px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.62));font-size:11px;letter-spacing:.04em}.gallery-footnote{font-size:10px;color:var(--muted);margin:15px 0 0}
    /* process */
    .process{background:var(--paper)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;counter-reset:steps}.step{position:relative;border-top:1px solid rgba(36,39,34,.22);padding-top:22px}.step:before{counter-increment:steps;content:"0" counter(steps);font:500 14px var(--serif);color:var(--copper-dark)}.step h3{font:700 17px var(--display);letter-spacing:-.035em;margin:20px 0 8px}.step p{font-size:12px;color:var(--muted);line-height:1.75;margin:0;max-width:250px}
    /* about */
    .about{background:#e9e5dc}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.about-image{height:520px;position:relative}.about-image img{width:100%;height:100%;object-fit:cover}.about-image:after{content:"";position:absolute;left:-16px;bottom:-16px;width:45%;height:45%;border-left:1px solid var(--copper);border-bottom:1px solid var(--copper);pointer-events:none}.about-copy h2{font:500 clamp(38px,4.2vw,57px)/1.09 var(--serif);letter-spacing:-.05em;margin:17px 0 22px}.about-copy p{color:#65685f;font-size:14px;line-height:1.9;max-width:580px}.about-values{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px;margin:28px 0 32px}.about-value{display:flex;gap:11px;align-items:flex-start;font-size:12px;font-weight:600}.about-value i{width:18px;height:18px;display:grid;place-items:center;color:var(--copper-dark);font-style:normal}
    /* CTA contact */
    .contact{background:var(--white)}.contact-panel{display:grid;grid-template-columns:.88fr 1.12fr;background:var(--paper);border:1px solid var(--line)}.contact-copy{background:var(--ink);color:white;padding:55px clamp(28px,5vw,66px)}.contact-copy .eyebrow{color:#d2a887}.contact-copy h2{font:500 clamp(37px,4vw,53px)/1.08 var(--serif);letter-spacing:-.05em;margin:18px 0}.contact-copy>p{color:rgba(255,255,255,.65);font-size:13px;line-height:1.8;max-width:390px}.contact-details{margin-top:38px;display:grid;gap:18px}.contact-detail small{display:block;color:#c4a68f;font-size:9px;text-transform:uppercase;letter-spacing:.18em;margin-bottom:4px}.contact-detail a,.contact-detail address{font-size:14px;font-style:normal;color:white}.contact-detail a:hover{color:#d2a887}.contact-form{padding:55px clamp(28px,5vw,66px)}.contact-form h3{font:700 20px var(--display);letter-spacing:-.04em;margin:0 0 6px}.contact-form>p{color:var(--muted);font-size:12px;margin:0 0 24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:10px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:#5e6158}.field input,.field textarea,.field select{width:100%;background:var(--white);border:1px solid var(--line);padding:13px 14px;outline:none;color:var(--ink);border-radius:0;font-size:13px;transition:border .2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--copper)}.field textarea{min-height:105px;resize:vertical}.form-bottom{display:flex;align-items:center;gap:17px;margin-top:19px;flex-wrap:wrap}.form-bottom small{font-size:10px;color:var(--muted);max-width:230px}.form-status{font-size:12px;color:var(--copper-dark);margin-top:12px;min-height:18px}.contact-map{margin-top:22px;border:1px solid var(--line);height:260px;overflow:hidden;background:#ddd}.contact-map iframe{width:100%;height:100%;border:0;filter:grayscale(1) contrast(.9)}
    /* footer */
    .footer{background:#1b1e1a;color:white;padding:55px 0 24px}.footer-main{display:flex;justify-content:space-between;gap:35px;align-items:start;padding-bottom:38px}.footer-brand .brand{min-width:0;align-items:center}.footer-brand .brand-name{color:white}.footer-brand .brand-name span{color:#c9a78e;margin-top:0}.footer-brand p{font-size:11px;color:rgba(255,255,255,.5);max-width:300px;margin:16px 0 0}.footer-links{display:flex;gap:60px}.footer-col b{display:block;color:#c9a78e;font-size:9px;letter-spacing:.17em;text-transform:uppercase;margin-bottom:14px}.footer-col a,.footer-col span{display:block;color:rgba(255,255,255,.65);font-size:11px;margin:8px 0}.footer-col a:hover{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding-top:19px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.42);font-size:9px;letter-spacing:.05em}
    .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}

.mobile-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--line);padding:13px 24px 22px;box-shadow:0 22px 30px rgba(20,20,20,.08)}.mobile-nav.open{display:grid}.mobile-nav a{padding:13px 0;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.mobile-nav a:last-child{color:var(--copper-dark);border:0}
