:root {
  --bg-dark:#0a0a0b;
  --bg-main:#050505;
  --text:#e8e6e3;
  --muted:#a8a39c;
  --accent:#c6a96b;
}

/* RESET */
* {
  margin:0;
  padding:0;
  box-sizing:border-box;
}

/* BODY */
body {
  background:var(--bg-dark);
  color:var(--text);
  font-family:'Inter', sans-serif;
  line-height:1.7;
}

/* CONTAINER */
.container {
  max-width:520px;
  margin:0 auto;
  padding:100px 20px;
}

/* TYPOGRAPHY */
h1, h2, h3 {
  font-family:'Fraunces', serif;
  font-weight:400;
  letter-spacing:-0.5px;
}

h1 {
  font-size:40px;
  margin-bottom:22px;
}

h2 {
  font-size:28px;
  margin-bottom:20px;
}

p {
  color:var(--muted);
  margin-bottom:18px;
  line-height:1.6;
}

.highlight {
  color:var(--accent);
}

/* SECTIONS */
.section {
  margin-bottom:100px;
}

/* LINKS */
a {
  color:var(--accent);
  text-decoration:none;
}

a:hover {
  opacity:0.8;
}

/* BUTTON */
.button {
  display:inline-block;
  width:100%;
  text-align:center;

  margin-top:30px;
  padding:16px 32px;

  background:linear-gradient(135deg,#f2efe9,#dcd7cf);
  color:#111;

  font-weight:500;
  letter-spacing:0.5px;

  border:none;
  cursor:pointer;

  position:relative;
  overflow:hidden;

  box-shadow:
    0 12px 40px rgba(0,0,0,0.6),
    0 0 25px rgba(198,169,107,0.15);

  transition:all 0.35s ease;
}

/* 🔥 subtelne światło */
.button::after {
  content:"";
  position:absolute;
  inset:0;

  background:linear-gradient(
    120deg,
    transparent,
    rgba(255,255,255,0.35),
    transparent
  );

  opacity:0;
  transition:0.5s;
}

/* 🔥 hover */
.button:hover {
  transform:translateY(-2px) scale(1.01);

  box-shadow:
    0 18px 50px rgba(0,0,0,0.7),
    0 0 35px rgba(198,169,107,0.25);
}

.button:hover::after {
  opacity:1;
}

/* 🔥 kliknięcie */
.button:active {
  transform:translateY(0px) scale(0.99);
}

/* 🔥 disabled (ważne!) */
.button[style*="pointer-events:none"] {
  opacity:0.5 !important;
  box-shadow:none;
}
.button {
  opacity:0;
  transform:translateY(10px);
  animation:buttonFade 0.8s ease forwards;
  animation-delay:0.3s;
}

@keyframes buttonFade {
  to {
    opacity:1;
    transform:translateY(0);
  }
}

/* FORMS */
form {
  margin-top:30px;
  display:flex;
  flex-direction:column;
  gap:16px;
}

label {
  font-size:13px;
  opacity:0.85;
}

input, textarea {
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  padding:12px;
  color:var(--text);
  font-family:'Inter';
}

input[type="date"] {
  color:var(--muted);
}

textarea {
  min-height:80px;
}

/* OFFER */
.offer {
  background:rgba(255,255,255,0.02);
  padding:25px 20px;
  border-left:2px solid var(--accent);
}

.price {
  color:var(--accent);
  font-size:22px;
  margin-top:10px;
}

/* NOTE */
.note {
  font-size:13px;
  color:var(--muted);
  margin-top:12px;
}

/* FOOTER */
.footer {
  font-size:12px;
  color:#777;
  margin-top:90px;
}

/* ANIMATIONS */
.fade-in {
  opacity:0;
  transform:translateY(20px);
  transition:0.8s ease;
}

.fade-in.visible {
  opacity:1;
  transform:translateY(0);
}

/* OPTIONAL EFFECT (landing) */
.line {
  height:2px;
  background:var(--accent);
  margin:50px 0;
}

/* BLOK DECYZJI */
.decision {
  margin-top:28px;
}

/* CHECKBOX */
.consent {
  margin-top:18px;
  font-size:12px;
  opacity:0.75;
  line-height:1.5;
  display:block;
}

.consent input {
  margin-right:6px;
  transform:scale(1.1);
  accent-color:#c6a96b;
}

/* PRZYCISK */
.button {
  margin-top:30px;
}

/* MOBILE */
@media (max-width: 768px) {

  .container {
    padding:80px 18px;
    max-width:100%;
  }

  h1 {
    font-size:32px;
    line-height:1.3;
  }

  p {
    font-size:15px;
    line-height:1.7;
  }

  .section {
    margin-bottom:80px;
  }

}

@media (max-width: 768px) {

  .button {
    width:100%;
    padding:18px;
    font-size:15px;
    border-radius:6px;
  }

}

@media (max-width: 768px) {

  .consent {
    font-size:13px;
    line-height:1.6;
  }

  .consent input {
    transform:scale(1.3);
    margin-top:3px;
  }

}

@media (max-width: 768px) {

  .offer {
    padding:22px 18px;
  }

  .price {
    font-size:20px;
  }

}

@media (max-width: 768px) {

  h1 {
    margin-bottom:18px;
  }

  p {
    margin-bottom:16px;
  }

}

@media (max-width: 768px) {

  .decision {
    margin-top:34px;
  }

}

if (checkbox) {
  checkbox.addEventListener(...)
}
/* STICKY tylko mobile */
.sticky-cta {
  display:none;
}

@media (max-width: 768px) {
  .sticky-cta {
    position:fixed;
    bottom:0;
    left:0;
    width:100%;

    background:rgba(10,10,11,0.95);
    backdrop-filter:blur(6px);

    padding:12px 16px;
    border-top:1px solid rgba(255,255,255,0.08);

    display:none;
    z-index:999;
  }

  .sticky-cta.show {
    display:block;
  }
}
.footer {
  margin-top:120px;
  text-align:center;
  font-size:12px;
  color:#777;
  line-height:1.6;
}

.separator {
  height:1px;
  margin:90px 0 50px;

  background:linear-gradient(
    to right,
    transparent,
    rgba(198,169,107,0.6),
    transparent
  );

  box-shadow:0 0 10px rgba(198,169,107,0.2);
}
ul {
  list-style-position: inside;
  padding-left:0;
  margin-left:0;
}
