/* Landing styles (ported from supplied HTML) */
:root{
  --primary:#0f3d3a;
  --primary-soft:#17544f;
  --primary-light:#e4f1ef;
  --gold:#c99a2e;
  --gold-soft:#f5e6bf;
  --text-main:#222;
  --muted:#6c757d;
  --snow-color:rgba(255,255,255,.9);

  --hero-bg-url: url('../img/bg.jpg');
  --about-bg-url: url('../img/about.jpg');
  --faq-bg-url: url('../img/bg-faq.jpg');
}

html{ scroll-behavior:smooth; }
body{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:radial-gradient(circle at top,#fff 0,#fdfaf4 40%,#f5efe3 100%);
  color:var(--text-main);
  overflow-x:hidden;
}

/* Snow */
.snowflake{
  position:fixed;
  top:-10px;
  color:var(--snow-color);
  user-select:none;
  pointer-events:none;
  z-index:9999;
  font-size:.8rem;
  opacity:.9;
  animation:fall linear infinite;
  text-shadow:0 0 6px rgba(0,0,0,.2);
}
@keyframes fall{
  0%{transform:translateY(0) translateX(0);opacity:0}
  10%{opacity:1}
  100%{transform:translateY(110vh) translateX(25px);opacity:0}
}

/* Navbar */
.navbar{
  backdrop-filter:blur(16px);
  background:rgba(0,0,0,.85);
  border-bottom:1px solid rgba(255,255,255,.08);
  padding-block:.85rem;
}
.navbar .nav-link{color:#fff;font-weight:600;padding:.55rem .9rem}
.navbar .nav-link:hover{color:var(--gold)}
.navbar-brand span{font-weight:800;letter-spacing:.05em}

.badge-pill{border-radius:999px}
.badge-danger-subtle{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.4);
}

.btn-nav-cta{
  padding:.6rem 1.05rem !important;
  border-radius:999px !important;
  font-weight:800 !important;
  letter-spacing:.02em;
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  box-shadow:0 10px 26px rgba(15,61,58,.35);
}

/* Buttons (ONE source of truth) */
.btn.btn-primary{
  position:relative;
  overflow:hidden;
  border:none;
  font-weight:700;
  background:linear-gradient(135deg,var(--primary),var(--primary-soft)) !important;
  background-size:180% 180% !important;
  background-position:0% 50% !important;
  transition:background-position .35s ease, filter .25s ease, box-shadow .25s ease !important;
  will-change:background-position;
  box-shadow:0 10px 26px rgba(15,61,58,.45);
}
.btn.btn-primary:hover{
  background-position:100% 50% !important;
  filter:brightness(1.04);
  box-shadow:0 12px 30px rgba(15,61,58,.55);
}
.btn.btn-primary, .btn.btn-primary:hover, .btn.btn-primary:active{ transform:none !important; }

.btn.btn-primary::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.10) 50%,transparent 65%);
  opacity:0;
  transition:opacity .35s ease;
  pointer-events:none;
}
.btn.btn-primary:hover::after{opacity:1}

.btn-outline-light{
  border-radius:999px;
  border-color:rgba(255,255,255,.85);
  color:#fff;
  background:transparent;
  font-weight:700;
  transition:background-color .2s ease, border-color .2s ease;
}
.btn-outline-light:hover{background:rgba(255,255,255,.15);color:#fff;border-color:#fff}

/* Hero */
.hero{
  padding-top:7.5rem;
  padding-bottom:5.25rem;
  position:relative;
  overflow:hidden;
  background:#0a2826 var(--hero-bg-url) center/cover no-repeat;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(to bottom,rgba(0,0,0,.45),rgba(0,0,0,.45),rgba(0,0,0,.62));
  z-index:0;
}
.hero-gradient{
  position:absolute; inset:0;
  background:
    radial-gradient(circle at top left,rgba(15,61,58,.18),transparent 55%),
    radial-gradient(circle at bottom right,rgba(201,154,46,.18),transparent 55%);
  pointer-events:none;
  z-index:-1;
}
.hero > .container{position:relative;z-index:1}

.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:#fff}
.hero-title{
  font-size:clamp(2.2rem,4vw,3.4rem);
  font-weight:900;
  line-height:1.07;
  color:#fff;
  text-shadow:0 3px 14px rgba(0,0,0,.7);
}
.hero-subtitle{color:#f9f9f9;text-shadow:0 2px 10px rgba(0,0,0,.65)}

.hero-ebook{
  border-radius:1.5rem;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.06);
  background:#fff;
  position:relative;
}
.hero-ebook::after{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(145deg,rgba(201,154,46,.3),transparent 40%,rgba(255,255,255,.4));
  mix-blend-mode:screen;
  pointer-events:none;
}
.hero-price-badge{
  position:absolute;
  top:1.25rem; right:1.25rem;
  background:linear-gradient(135deg,var(--gold),#e6b847);
  padding:.55rem 1.1rem;
  border-radius:999px;
  font-weight:900;
  font-size:.95rem;
  color:#3c2b00;
  box-shadow:0 12px 26px rgba(201,154,46,.65);
}
.floating-label{
  position:absolute;
  left:1.2rem; bottom:1.2rem;
  background:rgba(255,255,255,.92);
  border-radius:999px;
  padding:.45rem .95rem;
  font-size:.82rem;
  border:1px solid rgba(0,0,0,.06);
  display:inline-flex;
  gap:.45rem;
  align-items:center;
  color:var(--primary);
}
.floating-label i{color:var(--gold)}

.rating-wrap{margin-top:.6rem}
.rating-badge{
  display:inline-flex; align-items:center; gap:.7rem;
  padding:.45rem .9rem;
  border-radius:999px;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(10px);
  color:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.45);
}
.rating-stars i{font-size:.8rem;color:#f0b400}
.rating-score{font-size:.9rem;font-weight:900}
.rating-note{font-size:.75rem;opacity:.92}

/* Sections */
.section{padding-block:4.5rem;background:transparent}
.section-title{font-weight:800;margin-bottom:1rem;color:var(--primary)}
.section-muted{color:var(--muted)}

/* About */
.about-full{width:100%;overflow:hidden;min-height:740px}
.about-grid{min-height:740px;display:grid;grid-template-columns:1.08fr .92fr}
.about-left{position:relative;overflow:hidden;background:#111}
.about-parallax-layer{
  position:absolute; inset:-12%;
  background:var(--about-bg-url) center/cover no-repeat;
}
.about-left::after{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(circle at 30% 20%,rgba(255,255,255,.10),transparent 60%),
    linear-gradient(to bottom,rgba(0,0,0,.05),rgba(0,0,0,.60));
  pointer-events:none;
}
.about-chip{
  position:absolute; left:2.2rem; bottom:2.2rem;
  display:inline-flex; align-items:center; gap:.55rem;
  padding:.6rem 1.15rem;
  border-radius:999px;
  background:rgba(0,0,0,.55);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  backdrop-filter:blur(10px);
  font-weight:900;
  z-index:2;
}
.about-right{
  background:var(--primary);
  color:#fff;
  display:flex;
  align-items:center;
  padding:5.2rem 4rem;
  position:relative;
}
.about-right::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(circle at 15% 15%,rgba(201,154,46,.18),transparent 55%),
    radial-gradient(circle at 90% 85%,rgba(255,255,255,.08),transparent 55%);
  pointer-events:none;
}
.about-content{position:relative;z-index:1;max-width:640px}
.about-kicker{
  display:inline-flex;align-items:center;gap:.6rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:.78rem;
  opacity:.92;
  margin-bottom:1rem;
}
.about-title{font-weight:900;font-size:clamp(2.05rem,3vw,3rem);line-height:1.06;margin-bottom:1.1rem}
.about-text{color:rgba(255,255,255,.92);font-size:1.02rem;line-height:1.65;margin-bottom:1.5rem}
.about-points li{display:flex;gap:.75rem;margin-bottom:.75rem;color:rgba(255,255,255,.92)}
.about-points i{color:var(--gold);margin-top:.25rem}
.btn-about-outline{
  border-radius:999px;
  border:1px solid rgba(255,255,255,.75);
  color:#fff;
  background:rgba(255,255,255,.06);
  font-weight:800;
}
.btn-about-outline:hover{background:rgba(255,255,255,.14);color:#fff}

/* Cards */
.feature-card{
  background:#fff;
  border-radius:1.25rem;
  border:1px solid rgba(0,0,0,.05);
  height:100%;
  padding:1.75rem 1.5rem;
  position:relative;
  overflow:hidden;
  box-shadow:0 10px 26px rgba(0,0,0,.03);
}
.feature-icon{
  width:42px;height:42px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  margin-bottom:.75rem;
  background:radial-gradient(circle at top,var(--primary),var(--primary-soft));
  color:#fff;
}
.feature-chip{
  position:absolute;top:1.2rem;right:1.2rem;
  font-size:.7rem;padding:.3rem .8rem;border-radius:999px;
  background:var(--gold-soft);
  border:1px solid rgba(201,154,46,.5);
  text-transform:uppercase;letter-spacing:.07em;color:#6a5210;
}

.checklist li{margin-bottom:.65rem;display:flex;gap:.55rem}
.checklist i{color:#4caf50;margin-top:.25rem}

.ebook-preview{
  border-radius:1.5rem;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.06);
  background:#fff;
  box-shadow:0 12px 30px rgba(0,0,0,.06);
}

/* Testimonials */
.testimonial-card{
  background:#fff;
  border-radius:1.5rem;
  border:1px solid rgba(0,0,0,.05);
  padding:1.75rem 1.6rem;
  height:100%;
  box-shadow:0 10px 24px rgba(0,0,0,.05);
}
.testimonial-carousel{position:relative;overflow:visible;}
#testimonialsCarousel{position:relative;overflow:visible;}
.testimonials-arrow{
  position:absolute;
  top:45%;
  transform:translateY(-50%);
  width:2.4rem;
  height:2.4rem;
  background:none!important;
  border:none!important;
  box-shadow:none!important;
  opacity:.95;
}
.testimonials-arrow i{
  font-size:1.6rem;
  color:var(--gold);
  text-shadow:0 10px 24px rgba(0,0,0,.18);
}
.testimonials-arrow:hover{opacity:1;}
.testimonials-arrow:focus{box-shadow:none!important;}
.testimonial-carousel .carousel-control-prev-icon,
.testimonial-carousel .carousel-control-next-icon{display:none!important;}

@media (min-width: 992px){
  .testimonial-carousel{ padding-inline:3.2rem; }
  #testimonialsCarousel .carousel-control-prev{ left:-3.4rem; }
  #testimonialsCarousel .carousel-control-next{ right:-3.4rem; }
}
@media (max-width: 991.98px){
  .testimonial-carousel{ padding-inline:0; }
  #testimonialsCarousel .carousel-control-prev{ left:-.6rem; }
  #testimonialsCarousel .carousel-control-next{ right:-.6rem; }
}
.testimonial-carousel .carousel-indicators{
  position:static;
  margin-top:1.5rem;
  gap:.4rem;
}
.testimonial-carousel .carousel-indicators [data-bs-target]{
  width:8px;height:8px;border-radius:999px;
  background:var(--primary-light);
  opacity:1;border:none;
}
.testimonial-carousel .carousel-indicators .active{
  width:16px;
  background:var(--primary);
}

/* Pricing */
.pricing-card{
  background:linear-gradient(135deg,#fff 0%,#fff7e4 45%,#f8f2e6 100%);
  border-radius:1.8rem;
  border:1px solid rgba(201,154,46,.4);
  padding:2.4rem 2.1rem;
  box-shadow:0 18px 50px rgba(0,0,0,.08);
  overflow:hidden;
}
.pricing-badge{
  display:inline-block;
  margin-inline:auto;
  padding:.45rem 1rem;
  border-radius:999px;
  font-size:.75rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  background:var(--primary-light);
  color:var(--primary);
  border:1px solid rgba(15,61,58,.3);
  font-weight:800;
}
.price-main{font-size:2.8rem;font-weight:900;color:var(--primary)}
.price-main span{font-size:2.3rem;font-weight:600}
.price-old{text-decoration:line-through;opacity:.7;font-size:.95rem;color:var(--muted)}

/* FAQ */
.accordion-button{background:#fff;color:var(--text-main);font-weight:600}
.accordion-button:not(.collapsed){
  color:var(--primary);
  background:var(--primary-light);
  box-shadow:inset 0 -1px 0 rgba(0,0,0,.06);
}
.accordion-item{
  border-radius:1rem!important;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.06)!important;
  margin-bottom:.8rem;
  background:#fff;
  box-shadow:0 4px 14px rgba(0,0,0,.04);
}
.faq-bg{
  position:relative;
  background:
    linear-gradient(to bottom,rgba(10,20,22,.72),rgba(10,20,22,.72)),
    var(--faq-bg-url) center/cover no-repeat;
  margin-bottom:60px;
}
.faq-bg::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 15% 20%,rgba(201,154,46,.18),transparent 55%),
    radial-gradient(circle at 85% 80%,rgba(15,61,58,.12),transparent 60%);
  pointer-events:none;
}
.faq-bg > .container{position:relative;z-index:1}
.faq-bg .accordion-item{background:rgba(255,255,255,.92);backdrop-filter:blur(6px)}
#faq .section-title,#faq .section-muted{color:#fff!important}

/* Newsletter / footer */
.footer-cta{
  background:linear-gradient(135deg,#fff 0%,#fdf1da 50%,#f9f4e8 100%);
  border-radius:1.5rem;
  border:1px solid rgba(201,154,46,.35);
  padding:2.2rem 1.8rem;
  box-shadow:0 14px 38px rgba(0,0,0,.08);
}
footer{
  border-top:1px solid rgba(0,0,0,.06);
  padding-block:1.5rem;
  margin-top:3rem;
  font-size:.9rem;
  color:var(--muted);
}
a{color:var(--primary)}
a:hover{color:var(--gold)}

.newsletter-form .form-check-input{border-color:rgba(15,61,58,.35)}
.newsletter-form .form-check-input:checked{background:var(--primary);border-color:var(--primary)}
.newsletter-form a{text-decoration:underline;text-underline-offset:3px}
.newsletter-form a:hover{color:var(--gold)}

/* Scroll to top */
.scrolltop{
  position:fixed;
  right:18px;
  bottom:18px;
  width:46px;
  height:46px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(0,0,0,.55);
  color:#fff;
  backdrop-filter:blur(10px);
  box-shadow:0 12px 30px rgba(0,0,0,.35);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:opacity .25s ease, transform .25s ease, visibility .25s ease;
  z-index:9998;
}
.scrolltop.show{opacity:1;visibility:visible;transform:translateY(0)}
.scrolltop:hover{filter:brightness(1.08)}

/* Mobile polish */
@media (max-width: 991.98px){
  .about-full,.about-grid{min-height:860px}
  .about-grid{grid-template-columns:1fr}
  .about-left{min-height:420px}
  .about-right{padding:3.2rem 1.4rem}
  .about-chip{left:1.2rem;bottom:1.2rem}
  .about-parallax-layer{inset:-18%}

  .navbar .nav-link{padding:.7rem 0}
  .btn-nav-cta{width:100%;justify-content:center;margin-top:.8rem}
}
@media (max-width: 767.98px){
  .hero{padding-top:6.9rem;padding-bottom:4.2rem}
  .hero-title{font-size:2.05rem}
  .section{padding-block:3.4rem}
  .footer-cta{padding:1.6rem 1.25rem}
  .pricing-card{padding:1.9rem 1.4rem}
  .testimonial-carousel .carousel-control-prev{left:-.6rem}
  .testimonial-carousel .carousel-control-next{right:-.6rem}
}
@media (prefers-reduced-motion: reduce){
  *{scroll-behavior:auto!important}
  .btn,.scrolltop{transition:none!important}
}

/* FIX: arrows outside carousel */
#testimonialsCarousel,
#testimonialsCarousel .carousel-inner {
  overflow: visible !important;
}

#testimonialsCarousel .carousel-control-prev,
#testimonialsCarousel .carousel-control-next {
  width: auto;
}

/* =========================================================
   TESTIMONIALS – FINAL FIX (działa z Twoim HTML)
   ========================================================= */

/* pozwól wychodzić poza carousel */
#testimonials .carousel,
#testimonials .carousel-inner{
  overflow: visible !important;
}

/* bazowe kontrolki */
#testimonials .carousel-control-prev,
#testimonials .carousel-control-next{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.6rem;
  height: 2.6rem;
  background: none !important;
  box-shadow: none !important;
  filter: none !important;
  opacity: 1;
  z-index: 20;
}

/* USUŃ bootstrapowe efekty (ten "dziwny cień") */
#testimonials .carousel-control-prev::before,
#testimonials .carousel-control-next::before,
#testimonials .carousel-control-prev::after,
#testimonials .carousel-control-next::after{
  display: none !important;
}

/* ikony */
#testimonials .carousel-control-prev i,
#testimonials .carousel-control-next i{
  font-size: 1.6rem;
  color: var(--gold);
  text-shadow: 0 10px 24px rgba(0,0,0,.18);
}

/* ================== DESKTOP ================== */
@media (min-width: 992px){

  /* miejsce na strzałki */
  #testimonials .testimonial-carousel{
    padding-inline: 3.2rem;
  }

  /* WYPCHNIĘCIE POZA SLIDER */
  #testimonials .carousel-control-prev{
    left: 0;
    transform: translate(-3.4rem, -50%);
  }

  #testimonials .carousel-control-next{
    right: 0;
    transform: translate(3.4rem, -50%);
  }
}

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

  #testimonials .testimonial-carousel{
    padding-inline: 0;
  }

  #testimonials .carousel-control-prev{
    left: 0;
    transform: translate(-0.6rem, -50%);
  }

  #testimonials .carousel-control-next{
    right: 0;
    transform: translate(0.6rem, -50%);
  }
}


/* ===== testimonials: no flash of all slides while clicking ===== */

/* Strzałki mogą wychodzić, ale okno slajdów ma być przycinane */
#testimonials .carousel{ overflow: visible !important; }
#testimonials .carousel-inner{ overflow: hidden !important; }

/* (opcjonalnie) lekki boost, żeby w trakcie animacji nic nie migało */
#testimonials .carousel-item{ backface-visibility: hidden; }
#testimonials .carousel-item.active,
#testimonials .carousel-item-next,
#testimonials .carousel-item-prev{ display: block; }


/* Woo Blocks – usuń link do produktu w koszyku */
.wc-block-components-product-name {
    pointer-events: none;
    cursor: default;
    text-decoration: none !important;
    color: inherit !important;
}


/* Woo Blocks – usuń przycisk "Usuń" */
.wc-block-cart-item__remove-link {
    display: none !important;
}



/* Woo Blocks – zablokuj link w nazwie produktu */
.wc-block-components-product-name{
  pointer-events: none;
  cursor: default;
  text-decoration: none !important;
  color: inherit !important;
}

/* Woo Blocks – zablokuj link w obrazku produktu */
.wc-block-cart-item__image a{
  pointer-events: none;
  cursor: default;
}



/* =========================================================
   WOO BLOCKS – CART CTA (Przejdź do płatności) – COMPACT
   ========================================================= */

.wc-block-cart__submit-container{
  margin-top: 1.4rem;
}

.wc-block-cart__submit-button{
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  width: 100%;

  /* ↓ mniejsze */
  padding: .85rem 1.15rem !important;
  border-radius: 999px !important;

  font-weight: 900 !important;
  font-size: .98rem;
  letter-spacing: .035em;
  text-transform: uppercase;

  color: #fff !important;
  background: linear-gradient(
    135deg,
    var(--primary),
    var(--primary-soft)
  ) !important;

  box-shadow:
    0 10px 24px rgba(15,61,58,.42),
    0 0 0 0 rgba(201,154,46,0);

  border: none !important;
  position: relative;
  overflow: hidden;

  transition:
    box-shadow .3s ease,
    filter .25s ease,
    transform .12s ease;
}

/* shine */
.wc-block-cart__submit-button::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    120deg,
    transparent 38%,
    rgba(255,255,255,.13) 50%,
    transparent 62%
  );
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none;
}

.wc-block-cart__submit-button:hover{
  filter: brightness(1.045);
  box-shadow:
    0 14px 32px rgba(15,61,58,.52),
    0 0 0 2px rgba(201,154,46,.22);
}

.wc-block-cart__submit-button:hover::after{
  opacity: 1;
}

/* active */
.wc-block-cart__submit-button:active{
  transform: translateY(1px);
  box-shadow:
    0 8px 18px rgba(15,61,58,.42);
}

/* focus */
.wc-block-cart__submit-button:focus-visible{
  outline: none !important;
  box-shadow:
    0 0 0 3px rgba(201,154,46,.42),
    0 10px 24px rgba(15,61,58,.45);
}

/* text wrapper */
.wc-block-cart__submit-button .wc-block-components-button__text{
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  text-decoration: none !important;
}

/* arrow */
.wc-block-cart__submit-button
.wc-block-components-button__text::after{
  content: "→";
  font-size: 1.05em;
  margin-left: .1rem;
  transition: transform .25s ease;
}

.wc-block-cart__submit-button:hover
.wc-block-components-button__text::after{
  transform: translateX(3px);
}

/* mobile */
@media (max-width: 767.98px){
  .wc-block-cart__submit-button{
    font-size: .95rem;
    padding: .8rem 1.05rem !important;
  }
}

/* no underline ever */
.wc-block-cart__submit-button,
.wc-block-cart__submit-button *{
  text-decoration: none !important;
}



/* =========================================================
   WOO BLOCKS – CHECKOUT CTA (NORMAL WIDTH)
   ========================================================= */

.wc-block-components-checkout-place-order-button{
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: .45rem;

  /* 🔥 TO JEST KLUCZ */
  width: auto !important;
  max-width: 320px;
  min-width: unset !important;

  padding: .65rem 1rem !important;
  border-radius: 999px !important;

  font-weight: 800 !important;
  font-size: .9rem;
  letter-spacing: .02em;
  text-transform: uppercase;

  color: #fff !important;
  background: linear-gradient(
    135deg,
    var(--primary),
    var(--primary-soft)
  ) !important;

  border: none !important;
  position: relative;
  overflow: hidden;

  box-shadow: 0 8px 20px rgba(15,61,58,.35);
}

/* 🔥 WYŚRODKOWANIE (Woo owija w kontener) */
.wc-block-components-checkout-place-order-button
{
  margin-inline: auto !important;
}

/* tekst */
.wc-block-components-checkout-place-order-button__text,
.wc-block-components-checkout-place-order-button
.wc-block-components-button__text{
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  white-space: nowrap;
}

/* ikona koszyka */
.wc-block-components-checkout-place-order-button__text::before{
  content: "\f07a";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: .95em;
}

/* mobile – jeszcze ciaśniej */
@media (max-width: 767.98px){
  .wc-block-components-checkout-place-order-button{
    max-width: 260px;
    font-size: .88rem;
    padding: .6rem .9rem !important;
  }
}

/* zero underline */
.wc-block-components-checkout-place-order-button,
.wc-block-components-checkout-place-order-button *{
  text-decoration: none !important;
}


/* =========================================================
   WOO BLOCKS – CHECKOUT CTA (RIGHT ALIGNED, WIDER)
   ========================================================= */

.wc-block-components-checkout-place-order-button{
  /* szerokość */
  max-width: 380px;          /* było 320 */
  padding: .7rem 1.15rem !important;

  /* wyrównanie do prawej */
  margin-left: auto !important;
  margin-right: 0 !important;
}

/* mobile – trochę wężej, ale nadal po prawej */
@media (max-width: 767.98px){
  .wc-block-components-checkout-place-order-button{
    max-width: 300px;
    padding: .65rem 1.05rem !important;
  }
}


/* =========================================================
   WOO BLOCKS – COUPON BUTTON (Zastosuj)
   ========================================================= */

.wc-block-components-totals-coupon__button{
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  padding: .45rem .85rem !important;
  border-radius: 999px !important;

  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;

  color: var(--primary) !important;
  background: var(--primary-light) !important;

  border: 1px solid rgba(15,61,58,.25) !important;
  box-shadow: none !important;

  transition:
    background-color .2s ease,
    color .2s ease,
    opacity .2s ease;
}

/* stan disabled (domyślny) */
.wc-block-components-totals-coupon__button[disabled],
.wc-block-components-totals-coupon__button[aria-disabled="true"]{
  opacity: .55;
  cursor: not-allowed !important;
}

/* gdy aktywny (po wpisaniu kuponu) */
.wc-block-components-totals-coupon__button:not([disabled]):hover{
  background: var(--primary) !important;
  color: #fff !important;
  border-color: var(--primary) !important;
}

/* tekst */
.wc-block-components-totals-coupon__button
.wc-block-components-button__text{
  text-decoration: none !important;
}

/* mobile */
@media (max-width: 767.98px){
  .wc-block-components-totals-coupon__button{
    font-size: .8rem;
    padding: .42rem .8rem !important;
  }
}



/* =========================================================
   TOPBAR – KOSZYK / KASA
   ========================================================= */

.seb-topbar{
  position: sticky;
  top: 0;
  z-index: 9999;

  background: linear-gradient(
    135deg,
    rgba(15,61,58,.95),
    rgba(23,84,79,.95)
  );
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,.12);

  box-shadow: 0 10px 26px rgba(0,0,0,.18);
}

.seb-topbar__inner{
  max-width: 1280px;
  margin-inline: auto;
  padding: .65rem 1.1rem;
  display: flex;
  align-items: center;
}

.seb-topbar__back{
  display: inline-flex;
  align-items: center;
  gap: .55rem;

  font-weight: 800;
  font-size: .9rem;
  letter-spacing: .02em;
  color: #fff !important;
  text-decoration: none !important;

  padding: .45rem .85rem;
  border-radius: 999px;

  transition:
    background-color .2s ease,
    transform .15s ease,
    box-shadow .2s ease;
}

.seb-topbar__back i{
  font-size: .9rem;
  color: var(--gold);
}

.seb-topbar__back:hover{
  background: rgba(255,255,255,.12);
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
}

.seb-topbar__back:active{
  transform: translateY(1px);
}

/* mobile polish */
@media (max-width: 767.98px){
  .seb-topbar__inner{
    padding: .6rem .9rem;
  }

  .seb-topbar__back{
    font-size: .85rem;
  }
}


/* Testimonials – hide arrows on mobile completely */
@media (max-width: 991.98px){
  #testimonials .carousel-control-prev,
  #testimonials .carousel-control-next{
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}


/* =========================================================
   TESTIMONIALS – MOBILE: keep headers + content in grid
   ========================================================= */
@media (max-width: 991.98px){

  /* container ma zachowywać się jak reszta strony */
  #testimonials .testimonial-carousel{
    overflow: hidden !important;     /* to przycina wszystko do siatki */
    padding-left: var(--bs-gutter-x, .75rem) !important;
    padding-right: var(--bs-gutter-x, .75rem) !important;
  }

  /* nagłówki nie mogą "wyjeżdżać" */
  #testimonials .testimonial-carousel > .row{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #testimonials .testimonial-carousel > .row > [class*="col-"]{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* slider też trzymamy w ryzach */
  #testimonials .carousel,
  #testimonials .carousel-inner{
    overflow: hidden !important;
  }

  /* na mobile chowamy strzałki (masz już, ale zostawiamy “twardo”) */
  #testimonials .carousel-control-prev,
  #testimonials .carousel-control-next{
    display: none !important;
    pointer-events: none !important;
  }
}


#faq {
  padding-top: 140px;
  padding-bottom: 140px;
}


