:root{
  --forest-ink:#2E2A27;
  --walnut:#5A4637;
  --brass:#A67C52;
  --linen:#F5F2EC;
  --stone:#D8D2C8;
  --moss:#1E2F21;
  --sage:#9A9882;
  --soft:#EEE7DC;
  --paper:#FBF8F2;
  --line:rgba(46,42,39,.18);
  --max:1260px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--linen);color:var(--forest-ink);font-family:Inter,Arial,sans-serif;line-height:1.55}.serif,h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;letter-spacing:.02em}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 72px));margin-inline:auto}.top{position:absolute;top:0;left:0;right:0;z-index:10;padding:42px 0}.nav{display:grid;grid-template-columns:210px 1fr auto;align-items:start;gap:42px}.brand img{width:165px;height:auto}.menu{display:flex;justify-content:center;gap:52px;padding-top:10px;font-size:13px;text-transform:uppercase;letter-spacing:.13em;font-weight:700}.menu a{position:relative;display:inline-block;padding-bottom:16px;transition:color .35s ease}.menu a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--brass);transition:width .35s cubic-bezier(.4,0,.2,1)}.menu a:hover{color:var(--brass)}.menu a:hover::after{width:100%}.langs{display:flex;gap:20px;align-items:center;padding-top:9px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.langs a{opacity:.8;transition:opacity .3s ease,color .3s ease}.langs a:hover{opacity:1;color:var(--brass)}.hero{min-height:840px;position:relative;overflow:hidden;background-color:var(--paper);background-image:linear-gradient(90deg,var(--paper) 0%,rgba(251,248,242,.98) 25%,rgba(251,248,242,.74) 37%,rgba(251,248,242,.32) 49%,rgba(251,248,242,.08) 58%,rgba(251,248,242,0) 68%),linear-gradient(180deg,rgba(245,242,236,.18),rgba(238,229,216,.04)),url("../assets/images/hero-forest.webp");background-size:cover;background-position:center right;background-repeat:no-repeat}.hero .wrap{position:relative;min-height:840px;display:grid;grid-template-columns:38% 62%;align-items:stretch}.hero-copy{padding-top:90px;z-index:2;align-self:center}.hero h1{font-size:90px;line-height:.95;margin:0 0 16px;letter-spacing:.18em;color:#243722}.tag{font-family:Georgia,serif;font-size:28px;color:var(--brass);margin-bottom:44px}.rule{width:60px;height:1px;background:var(--brass);margin:0 0 38px}.lead{font-family:Georgia,serif;font-size:18px;line-height:1.8;max-width:345px;margin:0 0 42px}.btn{display:inline-flex;align-items:center;gap:26px;border:1px solid rgba(46,42,39,.55);padding:17px 30px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:12px;background:rgba(245,242,236,.35);transition:background-color .35s ease,border-color .35s ease,color .35s ease}.btn:hover{background:#E9E1D5;border-color:var(--forest-ink);color:var(--forest-ink)}.hero-visual{height:auto;min-height:840px;margin-top:0;margin-left:0;width:100%;background:transparent;position:relative;overflow:visible}.hero-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 22%,rgba(255,255,255,.10),transparent 34%)}.hero-visual:after{content:"";display:none}.hero-seal{position:absolute;right:80px;top:120px;width:178px;opacity:.78;filter:sepia(.25)}.mission{background:var(--paper);padding:70px 0 72px;border-top:1px solid rgba(0,0,0,.04)}.section-label{font-size:13px;letter-spacing:.35em;text-transform:uppercase;font-weight:700;margin-bottom:18px}.section-label:after{content:"";display:block;width:36px;height:1px;background:var(--brass);margin-top:14px}.mission-grid{display:grid;grid-template-columns:31% 1fr;gap:80px;align-items:start}.mission h2{font-size:36px;line-height:1.06;margin:0 0 28px}.mission p{font-size:15px;margin:0 0 32px;max-width:420px}.link{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);font-weight:700;border-bottom:1px solid var(--brass);padding-bottom:8px;transition:color .3s ease,border-color .3s ease}.link:hover{color:var(--forest-ink);border-color:var(--forest-ink)}.values{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.value{padding:20px 28px 0;text-align:center;border-left:1px solid var(--line);min-height:210px}.value-icon{height:58px;width:58px;margin:0 auto 26px;border:1.5px solid var(--forest-ink);border-radius:50%;position:relative;opacity:.95}.value-icon.rings:before,.value-icon.rings:after{content:"";position:absolute;inset:10px;border:1.5px solid var(--forest-ink);border-radius:50%}.value-icon.rings:after{inset:20px}.value-icon.leaf:before{content:"";position:absolute;left:24px;top:10px;width:14px;height:28px;border:1.5px solid var(--forest-ink);border-radius:100% 0 100% 0;transform:rotate(35deg)}.value-icon.leaf:after{content:"";position:absolute;left:11px;right:10px;bottom:15px;height:1.5px;background:var(--forest-ink);transform:rotate(-13deg)}.value-icon.shield{border-radius:48% 48% 54% 54%;height:62px}.value-icon.globe:before{content:"";position:absolute;left:12px;right:12px;top:27px;height:1.5px;background:var(--forest-ink)}.value-icon.globe:after{content:"";position:absolute;top:6px;bottom:6px;left:27px;width:1.5px;background:var(--forest-ink)}.value h3{font-family:Inter,Arial,sans-serif;text-transform:uppercase;font-size:15px;line-height:1.5;letter-spacing:.08em;font-weight:700;margin:0 0 14px}.value p{font-size:12px;line-height:1.7;margin:auto;max-width:160px}.craft{display:grid;grid-template-columns:35% 65%;min-height:330px}.craft-copy{background:linear-gradient(135deg,var(--moss),#29371F);color:var(--linen);padding:62px 8vw 54px 48px}.craft-copy h2{font-size:34px;line-height:1.1;margin:0 0 18px}.craft-copy p{font-size:14px;max-width:360px;margin:0 0 28px}.craft-visual{background-image:linear-gradient(0deg,rgba(30,47,33,.32),rgba(30,47,33,.32)),url("../assets/images/craft-workshop.webp");background-size:cover;background-position:center center;background-repeat:no-repeat;position:relative}.craft-visual:after{content:"";display:none}.materials{display:grid;grid-template-columns:46% 54%;min-height:300px}.materials-visual{background-image:linear-gradient(0deg,rgba(30,47,33,.10),rgba(30,47,33,.10)),url("../assets/images/materials-wood.webp");background-size:cover;background-position:center center;background-repeat:no-repeat;position:relative}.materials-visual:after{content:"";display:none}.materials-copy{background:var(--paper);padding:58px 8vw 45px 70px;display:grid;grid-template-columns:1fr 160px;gap:50px;align-items:center}.materials h2{font-size:34px;line-height:1.08;margin:0 0 18px}.materials p{font-size:14px;max-width:380px;margin:0 0 26px}.nature-mark{width:150px;height:150px;display:grid;place-items:center;position:relative;opacity:.9}.nature-mark img{width:150px;height:150px;display:block}.cta{background:var(--moss);color:var(--linen);padding:36px 0;position:relative;overflow:hidden}.cta:before{content:"";position:absolute;left:0;top:0;bottom:0;width:330px;background:repeating-radial-gradient(ellipse at 0% 100%,rgba(216,210,200,.12) 0 1px,transparent 1px 18px);opacity:.55;pointer-events:none}.cta-grid{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;position:relative;z-index:1}.cta h2{font-size:31px;text-align:center;margin:0}.cta p{text-align:center;margin:8px 0 0;font-size:14px}.cta .btn{color:var(--linen);border-color:rgba(245,242,236,.55);background:transparent}.cta .btn:hover{background:var(--linen);border-color:var(--linen);color:var(--moss)}footer{background:var(--paper);padding:72px 0 58px}.footer-grid{display:grid;grid-template-columns:160px 1.2fr .6fr .6fr auto;gap:68px;align-items:start}.footer-logo img{width:96px;height:auto;display:block}.footer-text{font-size:14px;max-width:320px;margin:0}.footer-links{display:grid;gap:8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.social{display:flex;gap:12px}.social span{width:34px;height:34px;border:1px solid var(--forest-ink);border-radius:50%;display:grid;place-items:center;font-size:13px}.copy{grid-column:1/-1;text-align:right;font-size:12px;margin-top:6px;color:rgba(46,42,39,.75)}a:focus-visible{outline:1px solid var(--brass);outline-offset:6px}section,footer{scroll-margin-top:24px}
.nav-toggle,.hamburger{display:none}

@media(max-width:980px){
  .wrap{width:min(100% - 36px,var(--max))}
  .top{position:relative;padding:24px 0;background:var(--paper)}
  .nav{grid-template-columns:1fr auto;gap:18px;text-align:left;align-items:start}
  .brand img{margin:0;width:140px}
  .nav-toggle{display:block;position:absolute;opacity:0;pointer-events:none}
  .hamburger{display:flex;width:42px;height:42px;border:1px solid rgba(46,42,39,.28);align-items:center;justify-content:center;flex-direction:column;gap:6px;cursor:pointer;justify-self:end;margin-top:4px;transition:border-color .3s ease,background-color .3s ease}
  .hamburger span{display:block;width:18px;height:1px;background:var(--forest-ink);transition:transform .3s ease,opacity .3s ease}
  .hamburger:hover{border-color:var(--brass);background:rgba(150,115,74,.06)}
  .nav-toggle:checked + .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle:checked + .hamburger span:nth-child(2){opacity:0}
  .nav-toggle:checked + .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .menu,.langs{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap;gap:18px;text-align:left}
  .menu{display:none;padding-top:18px;border-top:1px solid var(--line);margin-top:6px}
  .langs{display:none;padding-top:4px}
  .nav-toggle:checked ~ .menu,.nav-toggle:checked ~ .langs{display:flex}
  .hero,.hero .wrap{min-height:auto}
  .hero{background:var(--paper)}
  .hero .wrap{display:block;padding:34px 0}
  .hero-copy{padding-top:0}
  .hero h1{font-size:54px}
  .tag{font-size:22px}
  .hero-visual{height:390px;min-height:390px;margin-top:35px;margin-left:0;width:100%;background-image:linear-gradient(90deg,rgba(251,248,242,.38),rgba(251,248,242,.03)),url("../assets/images/hero-forest.webp");background-size:cover;background-position:center right;background-repeat:no-repeat}
  .hero-seal{width:110px;right:44px;top:50px}
  .mission-grid,.craft,.materials,.cta-grid,.footer-grid{grid-template-columns:1fr}
  .values{grid-template-columns:1fr 1fr}
  .value{border-left:0;border-top:1px solid var(--line)}
  .craft-copy{order:1}
  .craft-visual{order:2;min-height:330px}
  .materials-copy{order:1;grid-template-columns:1fr;padding:44px 28px}
  .materials-visual{order:2;min-height:330px}
  .nature-mark{margin:auto}
  footer{padding:58px 0 48px}
  .footer-grid{gap:34px}
  .copy{text-align:left}
}@media(max-width:560px){.menu,.langs{flex-direction:column;align-items:flex-start}.values{grid-template-columns:1fr}.hero h1{font-size:42px;letter-spacing:.12em}.brand img{width:120px}.menu{font-size:11px}.craft-copy{padding:44px 28px}.footer-grid{gap:26px}.cta h2{text-align:left}.cta p{text-align:left}}

/* HERITAO v0.7 — poprawka linku na ciemnym tle sekcji Rzemiosło */
.craft .link{
  color: var(--brass);
  border-color: var(--brass);
}
.craft .link:hover{
  color: var(--linen);
  border-color: var(--linen);
}


/* HERITAO v0.16 — ikona Naturalne materiały jako plik SVG */
.value-icon.icon-img{
  border:0;
  border-radius:0;
  width:70px;
  height:70px;
  display:grid;
  place-items:center;
}
.value-icon.icon-img img{
  width:70px;
  height:70px;
  display:block;
}


/* HERITAO v0.18 — małe ikonki flag w wyborze języka */
.langs{
  gap:14px;
}
.langs a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  opacity:.82;
  transition:opacity .3s ease,color .3s ease,transform .3s ease;
}
.langs a img{
  width:24px;
  height:16px;
  display:block;
  border-radius:2px;
  box-shadow:0 0 0 1px rgba(46,42,39,.12);
}
.langs a span{
  font-size:12px;
  letter-spacing:.08em;
}
.langs a:hover{
  opacity:1;
  color:var(--brass);
  transform:translateY(-1px);
}

@media(max-width:980px){
  .langs{
    gap:14px;
    flex-direction:row;
    align-items:center;
  }
  .langs a img{
    width:26px;
    height:17px;
  }
}


/* Kontakt – skrócony HERO o ok. 300 px */
.hero{min-height:540px;}
.hero .wrap{min-height:540px;}
.hero-visual{min-height:540px;}


/* Kontakt – sekcja formularza zamiast "Nasza misja" */
.contact-section{
  background:var(--paper);
  padding:76px 0 72px;
  border-top:1px solid rgba(0,0,0,.04);
}
.contact-grid{
  display:grid;
  grid-template-columns:34% 1fr;
  gap:84px;
  align-items:start;
}
.contact-details{
  padding-right:54px;
  border-right:1px solid var(--line);
}
.contact-item{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:22px;
  align-items:start;
  margin-top:42px;
}
.contact-icon{
  width:54px;
  height:54px;
  border:1px solid var(--brass);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--brass);
  font-size:24px;
  line-height:1;
}
.contact-item h3{
  font-family:Inter,Arial,sans-serif;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.13em;
  font-weight:700;
  margin:2px 0 10px;
}
.contact-item p{
  font-size:17px;
  line-height:1.65;
  margin:0;
}
.contact-intro{
  font-size:17px;
  line-height:1.75;
  margin:28px 0 28px;
  max-width:560px;
}
.contact-form{
  display:grid;
  gap:20px;
}
.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
.contact-form input,
.contact-form textarea{
  width:100%;
  border:1px solid rgba(46,42,39,.18);
  background:rgba(251,248,242,.72);
  color:var(--forest-ink);
  font:600 14px Inter,Arial,sans-serif;
  padding:19px 22px;
  outline:none;
  transition:border-color .25s ease,background-color .25s ease;
}
.contact-form input::placeholder,
.contact-form textarea::placeholder{
  color:rgba(46,42,39,.78);
}
.contact-form textarea{
  min-height:142px;
  resize:vertical;
}
.contact-form input:focus,
.contact-form textarea:focus{
  border-color:var(--brass);
  background:var(--paper);
}
.contact-submit{
  justify-self:start;
  min-width:305px;
  justify-content:center;
  background:linear-gradient(135deg,#3b2210,#5a3419);
  color:var(--linen);
  border-color:rgba(46,42,39,.35);
}
.contact-submit:hover{
  background:var(--moss);
  color:var(--linen);
  border-color:var(--moss);
}

@media(max-width:980px){
  .contact-grid{
    grid-template-columns:1fr;
    gap:46px;
  }
  .contact-details{
    padding-right:0;
    border-right:0;
    border-bottom:1px solid var(--line);
    padding-bottom:36px;
  }
  .form-row{
    grid-template-columns:1fr;
  }
}

@media(max-width:560px){
  .contact-section{
    padding:48px 0 52px;
  }
  .contact-item{
    grid-template-columns:48px 1fr;
    gap:18px;
    margin-top:32px;
  }
  .contact-icon{
    width:46px;
    height:46px;
    font-size:20px;
  }
  .contact-submit{
    width:100%;
    min-width:0;
  }
}


/* Korekta położenia nagłówka Kontakt */
.hero-copy{
    padding-top:120px;
    padding-bottom:0;
    z-index:2;
    align-self:center;
}

/* HERITAO — kontakt bez formularza */
.contact-grid-no-form{
  grid-template-columns:32% 1fr;
}
.contact-message h2{
  font-size:42px;
  line-height:1.08;
  max-width:660px;
  margin:0 0 26px;
}
.contact-message .contact-intro{
  max-width:660px;
  margin:0 0 34px;
  font-size:17px;
  line-height:1.8;
}
.contact-actions{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  margin:0 0 52px;
}
.contact-main-btn{
  background:var(--walnut);
  color:var(--linen);
  border-color:var(--walnut);
}
.contact-main-btn:hover{
  background:var(--forest-ink);
  color:var(--linen);
  border-color:var(--forest-ink);
}
.contact-secondary-btn{
  background:transparent;
}
.contact-secondary-btn:hover{
  background:#E9E1D5;
}
.trust-panel{
  border-top:1px solid var(--line);
  padding-top:34px;
  max-width:660px;
}
.trust-panel p{
  margin:0 0 10px;
  font-size:15px;
  line-height:1.75;
}
.trust-panel strong{
  letter-spacing:.12em;
}
.trust-note{
  color:rgba(46,42,39,.74);
  max-width:520px;
  margin-top:18px!important;
}

@media(max-width:980px){
  .contact-grid-no-form{
    grid-template-columns:1fr;
  }
  .contact-message h2{
    font-size:34px;
  }
  .contact-actions{
    margin-bottom:42px;
  }
}

@media(max-width:560px){
  .contact-message h2{
    font-size:30px;
  }
  .contact-actions .btn{
    width:100%;
    justify-content:center;
  }
}


/* HERITAO v1.0 — style wspólne nowych podstron */
.subpage-section{
  padding:86px 0 88px;
}
.subpage-grid{
  display:grid;
  grid-template-columns:34% 1fr;
  gap:82px;
  align-items:start;
}
.subpage-aside{
  border-right:1px solid var(--line);
  padding-right:58px;
}
.subpage-aside h2,
.legal-wrap h2{
  font-size:42px;
  line-height:1.08;
  margin:0 0 28px;
}
.subpage-aside p,
.legal-lead{
  font-size:17px;
  line-height:1.82;
  margin:0;
}
.cards-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
.content-card{
  border-top:1px solid var(--line);
  padding-top:24px;
}
.content-card h3,
.timeline-list h3,
.legal-wrap h3{
  font-family:Inter,Arial,sans-serif;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.14em;
  font-weight:700;
  margin:0 0 10px;
}
.content-card p,
.timeline-list p,
.legal-wrap p{
  font-size:15px;
  line-height:1.76;
  margin:0;
}
.timeline-list{
  display:grid;
  gap:30px;
}
.timeline-list article{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:24px;
  border-top:1px solid var(--line);
  padding-top:24px;
}
.timeline-list span{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:34px;
  line-height:1;
  color:var(--brass);
}
.legal-wrap{
  max-width:900px;
}
.legal-section article{
  border-top:1px solid var(--line);
  padding-top:22px;
  margin-top:28px;
}
.legal-wrap a{
  color:var(--brass);
  border-bottom:1px solid var(--brass);
}
.menu a.is-active{
  color:var(--brass);
}
.menu a.is-active::after{
  width:100%;
}
@media(max-width:980px){
  .subpage-grid{
    grid-template-columns:1fr;
    gap:52px;
  }
  .subpage-aside{
    border-right:0;
    padding-right:0;
    border-bottom:1px solid var(--line);
    padding-bottom:44px;
  }
  .cards-grid{
    grid-template-columns:1fr;
  }
  .subpage-aside h2,
  .legal-wrap h2{
    font-size:34px;
  }
}
@media(max-width:560px){
  .subpage-section{
    padding:58px 0;
  }
  .timeline-list article{
    grid-template-columns:1fr;
    gap:12px;
  }
  .subpage-aside h2,
  .legal-wrap h2{
    font-size:30px;
  }
}
