/* ===== PP Sp. z o.o. — wspólny arkusz stylów ===== */
:root{
  --green-900:#07271f;
  --green-800:#0b352b;
  --green-700:#11493b;
  --gold:#c9a24b;
  --gold-light:#e3c98a;
  --cream:#f7f3ea;
  --ink:#1c2422;
  --muted:#5c6b66;
  --radius:14px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Lato',system-ui,sans-serif;
  color:var(--ink);
  background:var(--cream);
  line-height:1.65;
}
h1,h2,h3,.serif{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;line-height:1.15}
img{max-width:100%;display:block}
a{color:inherit}
.container{max-width:1160px;margin:0 auto;padding:0 24px}

/* ---------- Nagłówek ---------- */
header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  background:rgba(7,39,31,.92);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(201,162,75,.25);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:76px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand img{height:46px;width:auto}
.brand-name{color:#fff;font-family:'Cormorant Garamond',serif;font-size:1.35rem;letter-spacing:.04em}
.brand-name small{display:block;font-size:.62rem;letter-spacing:.22em;color:var(--gold);text-transform:uppercase;font-family:'Lato',sans-serif}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{color:#e8e4d8;text-decoration:none;font-size:.92rem;letter-spacing:.03em;transition:color .2s}
.nav-links a:hover{color:var(--gold-light)}
.lang{display:flex;gap:6px;margin-left:18px;border-left:1px solid rgba(255,255,255,.25);padding-left:18px}
.lang a{font-size:.78rem;font-weight:700;letter-spacing:.08em;padding:4px 8px;border-radius:6px;color:#cfcabc;text-decoration:none}
.lang a.active{background:var(--gold);color:var(--green-900)}
.burger{display:none;background:none;border:none;color:#fff;font-size:1.6rem;cursor:pointer}

/* ---------- Hero ---------- */
.hero{
  min-height:92vh;display:flex;align-items:center;position:relative;color:#fff;
  background:linear-gradient(100deg,rgba(7,39,31,.97) 38%,rgba(7,39,31,.55) 68%,rgba(7,39,31,.25)),url('hero.png') center/cover no-repeat;
  background-color:var(--green-900);
}
.hero-inner{max-width:640px;padding:130px 0 90px}
.hero .kicker{color:var(--gold);letter-spacing:.28em;text-transform:uppercase;font-size:.78rem;font-weight:700}
.hero h1{font-size:clamp(2.6rem,5vw,4.1rem);margin:18px 0 22px;color:#fff}
.hero h1 em{font-style:normal;color:var(--gold-light)}
.hero p{font-size:1.08rem;color:#d8d3c4;max-width:520px}
.hero .cta-row{margin-top:36px;display:flex;gap:16px;flex-wrap:wrap}
.btn{
  display:inline-block;padding:15px 34px;border-radius:50px;text-decoration:none;
  font-weight:700;letter-spacing:.06em;font-size:.92rem;transition:transform .2s,box-shadow .2s;
}
.btn-gold{background:var(--gold);color:var(--green-900)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(201,162,75,.35)}
.btn-ghost{border:1.5px solid rgba(255,255,255,.55);color:#fff}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-light)}
.hero-badges{display:flex;gap:34px;margin-top:60px;flex-wrap:wrap}
.hero-badges div{border-left:2px solid var(--gold);padding-left:14px}
.hero-badges strong{display:block;font-size:1.5rem;font-family:'Cormorant Garamond',serif;color:var(--gold-light)}
.hero-badges span{font-size:.8rem;color:#bdb7a6;letter-spacing:.04em}

/* ---------- Sekcje ---------- */
section{padding:96px 0}
.section-kicker{color:var(--gold);letter-spacing:.26em;text-transform:uppercase;font-size:.76rem;font-weight:700;text-align:center}
.section-title{font-size:clamp(2rem,3.6vw,2.9rem);text-align:center;margin:14px 0 18px;color:var(--green-800)}
.section-sub{text-align:center;max-width:680px;margin:0 auto 60px;color:var(--muted)}

/* O nas */
.about{background:#fff}
.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.about-grid img{border-radius:var(--radius);box-shadow:0 24px 60px rgba(7,39,31,.18)}
.about-grid h2{font-size:2.2rem;color:var(--green-800);margin-bottom:20px}
.about-grid p{color:var(--muted);margin-bottom:16px}
.about-list{list-style:none;margin-top:22px}
.about-list li{padding:12px 0;border-bottom:1px solid #eee7d8;display:flex;gap:12px;align-items:flex-start;color:var(--ink)}
.about-list li::before{content:"◆";color:var(--gold);font-size:.7rem;margin-top:7px}

/* Produkty */
.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:36px}
.card{
  background:#fff;border-radius:var(--radius);overflow:hidden;
  box-shadow:0 14px 40px rgba(7,39,31,.1);display:flex;flex-direction:column;
  transition:transform .25s,box-shadow .25s;
}
.card:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(7,39,31,.18)}
.card img{height:250px;object-fit:cover;width:100%}
.card-body{padding:30px 32px 36px;flex:1;display:flex;flex-direction:column}
.card-body h3{font-size:1.7rem;color:var(--green-800);margin-bottom:6px}
.card-body .tag{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:14px}
.card-body p{color:var(--muted);font-size:.95rem;margin-bottom:18px}
.spec{list-style:none;margin-top:auto}
.spec li{display:flex;justify-content:space-between;padding:9px 0;border-top:1px dashed #e4dcc9;font-size:.88rem}
.spec li span:first-child{color:var(--muted)}
.spec li span:last-child{font-weight:700;color:var(--green-800)}

/* Dlaczego my */
.why{background:var(--green-800);color:#eee7d8}
.why .section-title{color:#fff}
.why .section-sub{color:#b9c4bd}
.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px}
.why-item{background:rgba(255,255,255,.05);border:1px solid rgba(201,162,75,.25);border-radius:var(--radius);padding:32px 28px}
.why-item .icon{font-size:1.9rem;margin-bottom:16px}
.why-item h3{font-size:1.35rem;color:var(--gold-light);margin-bottom:10px}
.why-item p{font-size:.9rem;color:#c9cfc6}

/* Jak współpracujemy */
.process{background:var(--cream)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px;counter-reset:step}
.step{background:#fff;border-radius:var(--radius);padding:34px 26px;position:relative;box-shadow:0 10px 30px rgba(7,39,31,.08)}
.step::before{
  counter-increment:step;content:counter(step,decimal-leading-zero);
  font-family:'Cormorant Garamond',serif;font-size:3rem;color:var(--gold);opacity:.55;
  position:absolute;top:14px;right:22px;
}
.step h3{font-size:1.25rem;color:var(--green-800);margin-bottom:10px;max-width:80%}
.step p{font-size:.88rem;color:var(--muted)}

/* Kontakt */
.contact{background:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.contact-info h2{font-size:2.2rem;color:var(--green-800);margin-bottom:18px}
.contact-info p{color:var(--muted);margin-bottom:26px}
.contact-line{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid #eee7d8}
.contact-line .ic{color:var(--gold);font-size:1.15rem;margin-top:2px}
.contact-line strong{display:block;color:var(--green-800);font-size:.95rem}
.contact-line span{color:var(--muted);font-size:.92rem}
form{background:var(--cream);border:1px solid #ece4d2;border-radius:var(--radius);padding:36px}
form label{display:block;font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green-700);margin:16px 0 6px}
form label:first-child{margin-top:0}
form input,form select,form textarea{
  width:100%;padding:13px 15px;border:1px solid #d9cfba;border-radius:8px;
  font-family:inherit;font-size:.95rem;background:#fff;color:var(--ink);
}
form input:focus,form select:focus,form textarea:focus{outline:2px solid var(--gold);border-color:var(--gold)}
form textarea{min-height:120px;resize:vertical}
form button{margin-top:24px;width:100%;padding:16px;border:none;border-radius:50px;background:var(--green-800);color:#fff;font-size:.95rem;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:background .2s}
form button:hover{background:var(--green-700)}
.form-note{font-size:.78rem;color:var(--muted);margin-top:14px;text-align:center}

/* Stopka */
footer{background:var(--green-900);color:#a8b5ad;padding:56px 0 34px;font-size:.88rem}
.footer-grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;align-items:flex-start}
.footer-brand{display:flex;align-items:center;gap:14px}
.footer-brand img{height:52px}
.footer-brand strong{color:#fff;font-family:'Cormorant Garamond',serif;font-size:1.25rem;display:block}
.footer-brand small{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;font-size:.62rem}
.footer-col h4{color:var(--gold-light);font-family:'Lato',sans-serif;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.footer-col a,.footer-col span{display:block;color:#a8b5ad;text-decoration:none;margin-bottom:8px}
.footer-col a:hover{color:var(--gold-light)}
.copyright{text-align:center;margin-top:44px;padding-top:24px;border-top:1px solid rgba(201,162,75,.18);color:#6d7f77;font-size:.8rem}

/* ---------- Tabele ---------- */
.tbl{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(7,39,31,.08);font-size:.92rem}
.tbl th{background:var(--green-800);color:#fff;text-align:left;padding:13px 16px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.tbl td{padding:13px 16px;border-bottom:1px solid #eee7d8;color:var(--ink);vertical-align:top}
.tbl tr:last-child td{border-bottom:none}
.tbl tr:nth-child(even) td{background:#faf7f0}
.tbl .center{text-align:center}
.tbl td strong{color:var(--green-800)}
.table-wrap{overflow-x:auto}

/* ---------- Podsekcje informacyjne ---------- */
.info-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;margin-bottom:72px}
.info-hero img{border-radius:var(--radius);box-shadow:0 20px 50px rgba(7,39,31,.16)}
.info-hero h3{font-size:1.9rem;color:var(--green-800);margin-bottom:16px}
.info-hero p{color:var(--muted);margin-bottom:14px}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;margin-top:24px}
.fact{background:#fff;border:1px solid #ece4d2;border-radius:var(--radius);padding:18px 16px;text-align:center}
.fact strong{display:block;font-family:'Cormorant Garamond',serif;font-size:1.7rem;color:var(--gold)}
.fact span{font-size:.8rem;color:var(--muted);line-height:1.4;display:block;margin-top:4px}
.sub-head{font-size:1.55rem;color:var(--green-800);margin:56px 0 10px}
.sub-note{color:var(--muted);max-width:760px;margin-bottom:28px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:8px}
.two-col .col-card{background:#fff;border:1px solid #ece4d2;border-radius:var(--radius);padding:30px 30px 34px}
.two-col .col-card h4{font-size:1.35rem;color:var(--green-800);margin-bottom:6px}
.two-col .col-card .tag{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700;display:block;margin-bottom:14px}
.two-col .col-card p{color:var(--muted);font-size:.93rem;margin-bottom:14px}
.two-col .col-card ul{list-style:none}
.two-col .col-card ul li{padding:8px 0 8px 20px;position:relative;font-size:.9rem;color:var(--ink);border-bottom:1px dashed #eee7d8}
.two-col .col-card ul li::before{content:"◆";color:var(--gold);font-size:.6rem;position:absolute;left:0;top:14px}
.hint{margin-top:36px;background:var(--green-800);color:#d8d3c4;border-radius:var(--radius);padding:26px 30px;font-size:.92rem}
.hint strong{color:var(--gold-light)}

/* ---------- Responsywność ---------- */
@media (max-width:900px){
  .about-grid,.contact-grid,.info-hero,.two-col{grid-template-columns:1fr;gap:44px}
  .hero-inner{padding-top:120px}
}
@media (max-width:760px){
  .nav-links{
    display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;
    background:var(--green-900);padding:24px;gap:18px;align-items:flex-start;
  }
  .nav-links.open{display:flex}
  .lang{margin:0;border:none;padding:0}
  .burger{display:block}
  section{padding:70px 0}
}
