:root {
  --bg: #ffffff !important;
  --card: #ffffff !important;
  --text: #000000 !important;
  --muted: #333333 !important;
  --accent: #0d1f18 !important;
  --navy: #000000 !important;
  --navy-soft: #0d1f18 !important;
  --line: #e5e5e5 !important;
  --shadow: 0 14px 36px rgba(0,0,0,0.10) !important;
}

html,
body {
  background: #ffffff !important;
  color: #000000 !important;
}

.top-nav,
.brand::before,
.brand::after,
.top-nav::before,
.card,
.product-card,
.contact-card,
.cta-banner,
.map-card,
.seo-card,
.hero-copy,
.hero-visual,
.article-main,
.article-aside,
.cookie-modal,
.cookie-card,
.cookie-preferences,
.details-card,
.info-card,
.price-card,
.sample-card,
.offer-card,
.policy-card,
.content-card,
.panel,
.box {
  background: #ffffff !important;
  color: #000000 !important;
  border-color: #e5e5e5 !important;
}

.nav-links a,
.nav-domain,
h1,
h2,
h3,
h4,
strong,
.price,
.product-lead,
.price-line,
.product-link-note,
.map-copy,
.map-copy h3,
.map-copy .address,
.seo-card h2,
.seo-card h3,
.article-main h2,
.article-aside h3,
.hero-copy h1,
.article-tag,
.highlight-card,
.highlight-card strong,
.highlight-card .highlight-label,
.highlight-card p,
.cta-text-dark,
.cta-banner .price-title {
  color: #000000 !important;
}

p,
li,
.muted,
.years-note,
.map-copy p,
.seo-card p,
.seo-card li,
.product-body p,
.price-line span,
.article-main p,
.article-aside ul,
.hero-copy p,
.map-consent-note,
.cookie-text,
.cookie-note {
  color: #333333 !important;
}

a:hover,
.product-link-note,
.article-tag {
  color: #0d1f18 !important;
}

.phone,
.btn-primary,
.cookie-accept,
.cookie-save,
.cookie-primary,
button[type="submit"],
input[type="submit"],
.highlight-card::before,
.highlight-card--shop::before,
.highlight-card--delivery::before,
.highlight-card--advice::before {
  background: #0d1f18 !important;
  border-color: #0d1f18 !important;
  color: #ffffff !important;
}

.phone:hover,
.btn-primary:hover,
.cookie-accept:hover,
.cookie-save:hover,
.cookie-primary:hover,
button[type="submit"]:hover,
input[type="submit"]:hover {
  background: #1f6f4a !important;
  border-color: #1f6f4a !important;
  color: #ffffff !important;
}

.btn-secondary,
.cookie-secondary,
.cookie-manage,
.cookie-toggle,
.btn:not(.btn-primary) {
  background: #ffffff !important;
  border-color: #000000 !important;
  color: #000000 !important;
}

.btn-secondary:hover,
.cookie-secondary:hover,
.cookie-manage:hover,
.cookie-toggle:hover,
.btn:not(.btn-primary):hover {
  border-color: #0d1f18 !important;
  color: #0d1f18 !important;
}

.article-cta,
footer,
.article-cta {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
}

.article-cta h3,
.article-cta p,
footer,
footer a,
.footer-meta a {
  color: #ffffff !important;
}

.article-cta .btn-primary {
  background: #0d1f18 !important;
  border-color: #0d1f18 !important;
  color: #ffffff !important;
}

.article-cta .btn-secondary {
  background: transparent !important;
  border-color: #ffffff !important;
  color: #ffffff !important;
}

.nav-toggle {
  border-color: #000000 !important;
  color: #000000 !important;
}

.nav-toggle span {
  background: #000000 !important;
}

.nav-links a + a::before,
.product-card,
.card,
.seo-card,
.map-frame,
table,
th,
td {
  border-color: #e5e5e5 !important;
}

.nav-links a:hover {
  background: rgba(31,111,74,0.10) !important;
  color: #0d1f18 !important;
}

body.home-page .nav-links a[href="index.html"],
body.products-page .nav-links a[href="produkty.html"],
body.usage-page .nav-links a[href="uzytkowanie.html"],
body.articles-page .nav-links a[href="artykuly.html"],
body.samples-page .nav-links a[href="probki.html"],
body.contact-page .nav-links a[href="kontakt.html"] {
  color: #0d1f18 !important;
}

.article-tag,
[class*="tag"],
[class*="badge"],
[class*="pill"] {
  background: #eaf7f0 !important;
  color: #0d1f18 !important;
}

.hero-visual,
.map-frame,
.product-card img,
.highlight-card,
.cookie-preference-row,
thead,
th {
  background: #f7f7f7 !important;
}

.highlight-card::after {
  border-top-color: #0d1f18 !important;
  border-right-color: #0d1f18 !important;
}

.hero .overlay {
  background: linear-gradient(180deg, rgba(0,0,0,0.08) 0%, rgba(0,0,0,0.70) 100%) !important;
  color: #ffffff !important;
}

.hero .overlay h1,
.hero .overlay p,
.hero .overlay .hero-content,
.hero .overlay a {
  color: #ffffff !important;
}



.cookie-backdrop {
  background: rgba(0,0,0,0.55) !important;
}

::selection {
  background: #0d1f18;
  color: #ffffff;
}

@media (max-width: 980px) {
  .nav-links {
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    justify-self: auto !important;
    background: #ffffff !important;
    border-color: #e5e5e5 !important;
    box-shadow: 0 18px 36px rgba(0,0,0,0.16) !important;
  }

  .nav-links a {
    color: #000000 !important;
  }

  .nav-links a:hover,
  body.home-page .nav-links a[href="index.html"],
  body.products-page .nav-links a[href="produkty.html"],
  body.usage-page .nav-links a[href="uzytkowanie.html"],
  body.articles-page .nav-links a[href="artykuly.html"],
  body.samples-page .nav-links a[href="probki.html"],
  body.contact-page .nav-links a[href="kontakt.html"] {
    color: #0d1f18 !important;
    background: #eaf7f0 !important;
  }

  .phone {
    background: #0d1f18 !important;
    border-color: #0d1f18 !important;
    color: #ffffff !important;
  }

  .top-nav.open .nav-toggle {
    background: #ffffff !important;
    border-color: #000000 !important;
  }

  .top-nav.open .nav-toggle span {
    background: #000000 !important;
  }
}
@media (min-width: 981px) {
  .nav-inner {
    grid-template-columns: 380px minmax(0, 1fr) 72px max-content !important;
  }

  .brand {
    width: 355px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
  }

  .brand img {
    height: 72px !important;
    max-width: none !important;
    transform: none !important;
    transform-origin: left center !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px) {
  .nav-inner {
    grid-template-columns: 330px minmax(0, 1fr) 72px max-content !important;
  }

  .brand {
    width: 305px !important;
  }

  .brand img {
    height: 64px !important;
  }
}

@media (max-width: 980px) {
  .brand img {
    transform: scale(1.16) !important;
    transform-origin: left center !important;
  }
}

@media (min-width: 981px) {
  .top-nav {
    --nav-pad-y: 4px !important;
  }
}
.cookie-banner {
  background: #ffffff !important;
  color: #000000 !important;
  border-color: #e5e5e5 !important;
  box-shadow: 0 14px 34px rgba(0,0,0,0.16) !important;
}

.cookie-copy,
.cookie-copy strong,
.cookie-copy p,
.cookie-copy a {
  color: #000000 !important;
}

.cookie-copy a:hover,
.cookie-copy a:focus-visible {
  color: #0d1f18 !important;
}

.cookie-banner .cookie-btn,
.cookie-modal-panel .cookie-btn {
  background: #0d1f18 !important;
  border: 1px solid #0d1f18 !important;
  color: #ffffff !important;
}

.cookie-banner .cookie-btn:hover,
.cookie-banner .cookie-btn:focus-visible,
.cookie-modal-panel .cookie-btn:hover,
.cookie-modal-panel .cookie-btn:focus-visible {
  background: #1f6f4a !important;
  border-color: #1f6f4a !important;
  color: #ffffff !important;
}

.cookie-banner .cookie-btn-secondary,
.cookie-modal-panel .cookie-btn-secondary {
  background: #ffffff !important;
  border: 1px solid #000000 !important;
  color: #000000 !important;
}

.cookie-banner .cookie-btn-secondary:hover,
.cookie-banner .cookie-btn-secondary:focus-visible,
.cookie-modal-panel .cookie-btn-secondary:hover,
.cookie-modal-panel .cookie-btn-secondary:focus-visible {
  background: #ffffff !important;
  border-color: #0d1f18 !important;
  color: #0d1f18 !important;
}

.cookie-modal-panel {
  background: #ffffff !important;
  color: #000000 !important;
}

.cookie-modal-panel h2,
.cookie-modal-intro,
.cookie-option-copy strong,
.cookie-option-copy small {
  color: #000000 !important;
}
@media (min-width: 981px) {
  .nav-inner {
    grid-template-columns: 320px minmax(560px, 1fr) 96px max-content !important;
    column-gap: 16px !important;
  }

  .brand {
    width: 315px !important;
    margin-left: -44px !important;
  }

  .brand img {
    height: 72px !important;
  }

  .nav-links {
    gap: 10px !important;
    justify-content: space-between !important;
  }

  .nav-links a {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .nav-domain {
    width: 96px !important;
    text-align: center !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px) {
  .nav-inner {
    grid-template-columns: 280px minmax(500px, 1fr) 88px max-content !important;
    column-gap: 12px !important;
  }

  .brand {
    width: 276px !important;
    margin-left: -30px !important;
  }

  .brand img {
    height: 64px !important;
  }

  .nav-links {
    gap: 6px !important;
  }

  .nav-links a {
    font-size: 14px !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  .nav-domain {
    width: 88px !important;
  }
}
/* Samples page hero - simple white panel */
body:has(.sample-layout) header.hero {
  position: relative !important;
  min-height: 0 !important;
  background: #ffffff !important;
  border: 1px solid #e5e5e5 !important;
  border-left: 8px solid #0d1f18 !important;
  box-shadow: 0 14px 34px rgba(0,0,0,0.08) !important;
  overflow: hidden !important;
}

body:has(.sample-layout) header.hero::before,
body:has(.sample-layout) header.hero::after {
  content: none !important;
}

body:has(.sample-layout) header.hero .overlay {
  position: relative !important;
  z-index: 1 !important;
  min-height: 0 !important;
  width: 100% !important;
  display: block !important;
  padding: 34px 40px !important;
  background: transparent !important;
}

body:has(.sample-layout) header.hero h1 {
  max-width: 760px !important;
  margin: 0 0 18px !important;
  color: #000000 !important;
  font-size: clamp(32px, 3.4vw, 50px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.04em !important;
  text-shadow: none !important;
}

body:has(.sample-layout) header.hero p {
  max-width: 720px !important;
  margin: 0 !important;
  color: #333333 !important;
  font-size: 20px !important;
  line-height: 1.45 !important;
  text-shadow: none !important;
}

@media (max-width: 640px) {
  body:has(.sample-layout) header.hero {
    border-left-width: 5px !important;
  }

  body:has(.sample-layout) header.hero .overlay {
    padding: 26px 22px !important;
  }

  body:has(.sample-layout) header.hero h1 {
    font-size: 26px !important;
  }

  body:has(.sample-layout) header.hero p {
    font-size: 16px !important;`n  }
}
/* Home mobile floating phone button */
@media (max-width: 980px) {
  body.home-page .top-nav::before {
    height: 154px !important;
  }

  body.home-page .nav-inner {
    padding: 14px 16px 16px !important;
    row-gap: 10px !important;
  }

  body:has(.mobile-home) .top-nav {
    margin-bottom: 0 !important;
    background: transparent !important;
  }

  body:has(.mobile-home) .top-nav::before {
    height: 126px !important;
  }

  body:has(.mobile-home) .nav-inner {
    padding: 14px 16px 16px !important;
    row-gap: 10px !important;
  }

  body:has(.mobile-home) .phone {
    position: relative !important;
    z-index: 3 !important;
    width: 100% !important;
    margin-top: 2px !important;
    padding: 13px 16px !important;
    border-radius: 999px !important;
    font-size: 15px !important;
    line-height: normal !important;
    text-align: center !important;
    box-shadow: 0 14px 28px rgba(0,0,0,0.16) !important;
  }

  body:has(.mobile-home) .mobile-home .wrap {
    padding-top: 0 !important;
  }

  body:has(.mobile-home) .mobile-home .hero-media {
    margin-top: 10px !important;
  }

  body:has(.mobile-home) .mobile-home .hero-stock-badge {
    min-height: 72px !important;
  }
}
/* Larger mobile logo */
@media (max-width: 980px) {
  .brand {
    width: min(58vw, 360px) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
  }

  .brand img {
    height: clamp(54px, 14vw, 72px) !important;
    max-width: none !important;
    transform: none !important;
  }
}

@media (max-width: 420px) {
  .brand {
    width: min(62vw, 300px) !important;
  }

  .brand img {
    height: clamp(50px, 13vw, 64px) !important;
  }
}
/* Shared mobile nav layout */
@media (max-width: 980px) {
  .top-nav {
    margin-bottom: 0 !important;
    background: transparent !important;
  }

  .top-nav::before {
    height: 94px !important;
  }

  .nav-inner {
    padding-bottom: 16px !important;
  }

  .phone {
    position: relative !important;
    z-index: 3 !important;
    order: 3 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 2px 0 0 !important;
    padding: 13px 16px !important;
    border-radius: 999px !important;
    font-size: 15px !important;
    text-align: center !important;
    box-shadow: 0 14px 28px rgba(0,0,0,0.16) !important;
  }
}
/* Desktop nav spacing tune */
@media (min-width: 981px) {
  .nav-inner {
    max-width: 1200px !important;
    grid-template-columns: 310px minmax(0, 1fr) max-content !important;
    column-gap: 18px !important;
    padding: 10px 24px !important;
  }

  .brand {
    width: auto !important;
    margin-left: -34px !important;
    padding: 0 !important;
  }

  .brand img {
    height: 58px !important;
    max-width: 300px !important;
    transform: scale(1.28) !important;
    transform-origin: left center !important;
  }

  .nav-links {
    width: 100% !important;
    justify-self: stretch !important;
    justify-content: space-between !important;
    gap: 0 !important;
  }

  .nav-links a {
    flex: 1 1 0 !important;
    padding: 8px 10px !important;
    font-size: 15px !important;
    text-align: center !important;
  }

  .nav-domain {
    display: none !important;
  }

  .phone {
    padding: 14px 22px !important;
    border-radius: 14px !important;
    font-size: 18px !important;
    letter-spacing: 0.02em !important;
    justify-self: end !important;
  }
}

@media (min-width: 981px) and (max-width: 1180px) {
  .nav-inner {
    grid-template-columns: 250px minmax(0, 1fr) max-content !important;
    column-gap: 12px !important;
  }

  .brand {
    margin-left: -24px !important;
  }

  .brand img {
    height: 50px !important;
    max-width: 245px !important;
    transform: scale(1.2) !important;
    transform-origin: left center !important;
  }

  .nav-links {
    gap: 0 !important;
  }

  .nav-links a {
    font-size: 14px !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
}
/* Contact page call label */
a.quick-card.link-card[href^="tel:"] p strong,
a.quick-card.link-card[href^="mailto:"] p strong {
  color: #0d1f18 !important;
}

a.quick-card.link-card[href^="tel:"]:hover p strong,
a.quick-card.link-card[href^="tel:"]:focus-visible p strong,
a.quick-card.link-card[href^="mailto:"]:hover p strong,
a.quick-card.link-card[href^="mailto:"]:focus-visible p strong {
  color: #1f6f4a !important;
}

/* Contact page hours accent */
.hours-card {
  border-left: 8px solid #0d1f18 !important;
}

@media (max-width: 640px) {
  .hours-card {
    border-left-width: 5px !important;
  }
}

/* Contact page transport accent */
.transport-card {
  border-right: 8px solid #0d1f18 !important;
}

@media (max-width: 640px) {
  .transport-card {
    border-right-width: 5px !important;
  }
}

/* Usage page label */
.eyebrow {
  background: #eaf7f0 !important;
  color: #0d1f18 !important;
}

/* Product cards CTA */
.product-card .product-link-note,
.product-card .product-link-note::after {
  color: #0d1f18 !important;
}

.product-card:hover .product-link-note,
.product-card:hover .product-link-note::after {
  color: #1f6f4a !important;
}

/* Products page mobile spacing */
@media (max-width: 640px) {
  body:has(#sekcja-produkty) .wrap {
    margin-top: 0 !important;
    padding-top: 12px !important;
  }
}

/* Final red theme guard */
.phone,
.btn-primary,
.hero-products-link,
.transport-products-link,
.cookie-accept,
.cookie-save,
.cookie-primary,
button[type="submit"],
input[type="submit"],
.highlight-card::before,
.highlight-card--shop::before,
.highlight-card--delivery::before,
.highlight-card--advice::before {
  background: #0d1f18 !important;
  border-color: #0d1f18 !important;
  color: #ffffff !important;
}

.phone:hover,
.btn-primary:hover,
.hero-products-link:hover,
.transport-products-link:hover,
.cookie-accept:hover,
.cookie-save:hover,
.cookie-primary:hover,
button[type="submit"]:hover,
input[type="submit"]:hover {
  background: #1f6f4a !important;
  border-color: #1f6f4a !important;
  color: #ffffff !important;
}

.nav-links a:hover,
body.home-page .nav-links a[href="index.html"],
body.products-page .nav-links a[href="produkty.html"],
body.usage-page .nav-links a[href="uzytkowanie.html"],
body.articles-page .nav-links a[href="artykuly.html"],
body.samples-page .nav-links a[href="probki.html"],
body.contact-page .nav-links a[href="kontakt.html"],
.product-link-note,
.article-tag,
.eyebrow {
  color: #0d1f18 !important;
}

.highlight-card::after,
.product-card .product-link-note::after {
  border-top-color: #0d1f18 !important;
  border-right-color: #0d1f18 !important;
  color: #0d1f18 !important;
}

@media (max-width: 980px) {
  body.home-page .top-nav::before {
    height: calc(100% - 38px) !important;
  }

  body.home-page .top-nav {
    overflow: visible !important;
  }

  body.home-page .mobile-nav-claim {
    width: calc(100% + 40px) !important;
    margin: 4px -20px 0 !important;
    padding: 2px 20px 0 !important;
    background: #ffffff !important;
  }

  .top-nav.open .nav-toggle {
    background: #ffffff !important;
    border-color: #000000 !important;
  }

  .top-nav.open .nav-toggle span {
    background: #000000 !important;
  }
}






/* Geoguma overrides copied only into geoguma 2 */
.seo-assist {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.page-main-h1 {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.map-frame--image {
  position: relative !important;
  overflow: hidden !important;
  min-height: 340px !important;
  background: #eef6f1 !important;
}
.map-frame--image > img {
  width: 100% !important;
  height: 100% !important;
  min-height: 340px !important;
  object-fit: cover !important;
  display: block !important;
}
.map-frame--image .map-placeholder__card {
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  max-width: none !important;
  background: rgba(255,255,255,0.94) !important;
}
.cta-banner > picture,
.highlight-card > picture {
  display: contents !important;
}
.cta-banner > picture > img {
  width: 100% !important;
  height: 100% !important;
  min-height: 340px !important;
  object-fit: cover !important;
  display: block !important;
}
.doc-section {
  max-width: 1200px !important;
  margin: 32px auto 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 48px 24px !important;
}
.doc-section__intro,
.doc-tile {
  background: #ffffff !important;
  border: 1px solid #d9eadf !important;
  border-radius: 18px !important;
  box-shadow: 0 14px 36px rgba(13,31,24,0.10) !important;
}
.doc-section__intro {
  padding: clamp(26px, 3vw, 42px) !important;
  margin-bottom: 22px !important;
}
.doc-tile {
  overflow: hidden !important;
  margin-top: 22px !important;
}
.doc-tile__copy {
  padding: clamp(24px, 3vw, 40px) !important;
}
.doc-tile__media {
  margin: 0 !important;
  padding: 0 !important;
  background: #f4faf6 !important;
  border-top: 1px solid #d9eadf !important;
}
.doc-tile__media img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
}
.doc-section h2,
.doc-section h3,
.doc-section p,
.doc-section li {
  color: #000000 !important;
}
.doc-section p,
.doc-section li {
  font-size: 17px !important;
  line-height: 1.62 !important;
}
.doc-section .sizes li {
  background: #eaf7f0 !important;
  color: #0d1f18 !important;
}
@media (min-width: 981px) {
  body.home-page .cta-banner--offer {
    grid-template-columns: 1fr 1fr !important;
  }
  body.home-page .cta-banner--offer .price-title {
    font-size: clamp(28px, 2vw, 38px) !important;
    white-space: nowrap !important;
  }
  body.home-page .cta-banner--offer .btn {
    font-size: 17px !important;
  }
}
@media (max-width: 980px) {
  .doc-section {
    padding: 0 14px 22px !important;
    margin-top: 18px !important;
  }
  .map-frame--image,
  .map-frame--image > img {
    min-height: 0 !important;
  }
  .map-frame--image > img {
    height: auto !important;
    object-fit: contain !important;
  }
}
@media (max-width: 420px) {
  .brand {
    width: min(52vw, 240px) !important;
  }
  .brand img {
    height: clamp(42px, 11vw, 54px) !important;
  }
}
/* Geoguma 2: remove mobile claim strip and keep green mobile header background */
.mobile-nav-claim {
  display: none !important;
}
@media (max-width: 980px) {
  body.home-page .mobile-nav-claim {
    display: none !important;
  }
  body.home-page .top-nav::before,
  body:has(.mobile-home) .top-nav::before {
    background: #0d1f18 !important;
  }
  body.home-page .top-nav,
  body:has(.mobile-home) .top-nav {
    background: #0d1f18 !important;
  }
}
/* Geoguma 2: main page background must stay green, not white */
html,
body {
  background: #0d1f18 !important;
}
body.home-page {
  background: #0d1f18 !important;
}
@media (max-width: 980px) {
  html,
  body,
  body.home-page,
  .mobile-home {
    background: #0d1f18 !important;
  }
}
/* Geoguma 2: no gradient overlay on the main banner */
header.hero::before,
header.hero::after,
.mobile-home .hero::before,
.mobile-home .hero::after,
.desktop-home header.hero::before,
.desktop-home header.hero::after {
  content: none !important;
  display: none !important;
  background: none !important;
}
.hero .overlay {
  background: transparent !important;
}
/* Geoguma 2: desktop price banner exactly split like geow */
@media (min-width: 981px) {
  body.home-page .desktop-home .cta-banner--offer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: stretch !important;
    min-height: 320px !important;
    max-height: 360px !important;
    overflow: hidden !important;
  }
  body.home-page .desktop-home .cta-banner--offer > picture {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }
  body.home-page .desktop-home .cta-banner--offer > picture > img {
    width: 100% !important;
    height: 100% !important;
    min-height: 320px !important;
    max-height: 360px !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
  }
  body.home-page .desktop-home .cta-banner--offer .copy {
    min-width: 0 !important;
    height: 100% !important;
    padding: clamp(34px, 4vw, 58px) clamp(28px, 3vw, 48px) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
  }
}
/* Geoguma 2: center text in the lowest prices banner */
body.home-page .desktop-home .cta-banner--offer .copy {
  align-items: center !important;
  text-align: center !important;
}
body.home-page .desktop-home .cta-banner--offer .cta-row {
  justify-content: center !important;
}
@media (max-width: 980px) {
  body.home-page .mobile-home .stack-card--prices .stack-card__copy {
    align-items: center !important;
    text-align: center !important;
  }
  body.home-page .mobile-home .stack-card--prices .cta-row {
    justify-content: center !important;
  }
}
/* Geoguma 2: lowest prices copy like reference - left aligned, vertically centered */
body.home-page .desktop-home .cta-banner--offer .copy {
  align-items: flex-start !important;
  text-align: left !important;
  justify-content: center !important;
  padding-left: clamp(44px, 5vw, 70px) !important;
}
body.home-page .desktop-home .cta-banner--offer .cta-row {
  justify-content: flex-start !important;
}
body.home-page .desktop-home .cta-banner--offer .price-title {
  text-align: left !important;
}
/* Geoguma 2: lowest prices copy a bit closer to the left edge */
body.home-page .desktop-home .cta-banner--offer .copy {
  padding-left: clamp(34px, 4vw, 54px) !important;
}
/* Geoguma 2: remove grey image backing in material/geoguma banner */
body.home-page .cta-banner--material,
body.home-page .cta-banner--material > img,
body.home-page .cta-banner--material > picture,
body.home-page .cta-banner--material .info-card__media,
body.home-page .mobile-home .info-card--material .info-card__media {
  background: #ffffff !important;
}
body.home-page .cta-banner--material > img,
body.home-page .cta-banner--material > picture > img {
  padding: 0 !important;
}
body.home-page .mobile-home .info-card--material .info-card__media {
  padding: 0 !important;
}
/* Geoguma 2: geoguma material image fills its side without inner margins */
body.home-page .desktop-home .cta-banner--material {
  gap: 0 !important;
  align-items: stretch !important;
}
body.home-page .desktop-home .cta-banner--material > img {
  width: 100% !important;
  height: 100% !important;
  min-height: 340px !important;
  max-height: none !important;
  padding: 0 !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
body.home-page .desktop-home .cta-banner--material .copy {
  margin: 0 !important;
}
/* Geoguma 2: offer graphic should fit without cropping or green spill */
body.home-page .desktop-home .cta-banner--uses {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr) !important;
  overflow: hidden !important;
  background: #ffffff !important;
}
body.home-page .desktop-home .cta-banner--uses > img {
  width: 100% !important;
  height: 100% !important;
  min-height: 260px !important;
  max-height: 320px !important;
  padding: 0 !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #ffffff !important;
  display: block !important;
}
body.home-page .mobile-home .stack-card img[src="oferujemy.webp"] {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #ffffff !important;
}
/* Geoguma 2: final mobile nav copied from geow layout, with geoguma green accents */
@media (max-width: 980px) {
  .top-nav,
  body.home-page .top-nav,
  body:has(.mobile-home) .top-nav {
    position: sticky !important;
    top: 0 !important;
    z-index: 30 !important;
    margin-bottom: 0 !important;
    background: transparent !important;
    border-bottom: none !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .top-nav::before,
  body.home-page .top-nav::before,
  body:has(.mobile-home) .top-nav::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    height: calc(100% - 38px) !important;
    background: #ffffff !important;
    z-index: 0 !important;
    display: block !important;
  }

  .nav-inner,
  body.home-page .nav-inner,
  body:has(.mobile-home) .nav-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 0 !important;
    row-gap: 10px !important;
    padding: 14px 16px 16px !important;
    position: relative !important;
    z-index: 1 !important;
    max-width: 1200px !important;
  }

  .brand {
    width: min(58vw, 360px) !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  .brand::before,
  .brand::after {
    background: #ffffff !important;
  }

  .brand img {
    height: clamp(54px, 14vw, 72px) !important;
    max-width: none !important;
    transform: none !important;
    transform-origin: left center !important;
  }

  .nav-toggle {
    display: block !important;
    position: relative !important;
    z-index: 4 !important;
    margin-left: auto !important;
    padding: 10px !important;
    border: 1.5px solid #000000 !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  .nav-toggle span {
    display: block !important;
    width: 26px !important;
    height: 3px !important;
    margin: 5px 0 !important;
    background: #000000 !important;
    border-radius: 8px !important;
  }

  .nav-links {
    display: none !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 8px) !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 10px !important;
    flex-direction: column !important;
    gap: 6px !important;
    background: #ffffff !important;
    border: 1px solid #d9eadf !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 36px rgba(0,0,0,0.16) !important;
    z-index: 5 !important;
  }

  .top-nav.open .nav-links {
    display: flex !important;
  }

  .nav-links a,
  .top-nav.open .nav-links a {
    display: block !important;
    flex: none !important;
    width: 100% !important;
    padding: 14px 16px !important;
    border-radius: 14px !important;
    color: #000000 !important;
    background: transparent !important;
    text-align: left !important;
  }

  .nav-links a + a::before {
    content: none !important;
  }

  .nav-links a:hover,
  body.home-page .nav-links a[href="index.html"],
  body.products-page .nav-links a[href="produkty.html"],
  body.usage-page .nav-links a[href="uzytkowanie.html"],
  body.articles-page .nav-links a[href="artykuly.html"],
  body.samples-page .nav-links a[href="probki.html"],
  body.contact-page .nav-links a[href="kontakt.html"] {
    color: #0d1f18 !important;
    background: #eaf7f0 !important;
  }

  .phone,
  body:has(.mobile-home) .phone,
  body.home-page .phone {
    position: relative !important;
    z-index: 3 !important;
    order: 3 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 2px 0 0 !important;
    padding: 13px 16px !important;
    border-radius: 999px !important;
    background: #0d1f18 !important;
    border-color: #0d1f18 !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: normal !important;
    text-align: center !important;
    box-shadow: 0 14px 28px rgba(0,0,0,0.16) !important;
  }

  .mobile-nav-claim,
  body.home-page .mobile-nav-claim {
    display: none !important;
  }

  .top-nav.open .nav-toggle {
    background: #ffffff !important;
    border-color: #000000 !important;
  }

  .top-nav.open .nav-toggle span {
    background: #000000 !important;
  }
}

@media (max-width: 420px) {
  .brand {
    width: min(62vw, 300px) !important;
  }
  .brand img {
    height: clamp(50px, 13vw, 64px) !important;
  }
}
/* Geoguma 2: mobile hamburger menu must be opaque and readable */
@media (max-width: 980px) {
  .top-nav.open .nav-links,
  body.home-page .top-nav.open .nav-links {
    display: flex !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 8px) !important;
    z-index: 9999 !important;
    background: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid #d9eadf !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 36px rgba(0,0,0,0.18) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .top-nav.open .nav-links a,
  body.home-page .top-nav.open .nav-links a {
    color: #000000 !important;
    opacity: 1 !important;
    background: #ffffff !important;
    text-shadow: none !important;
  }

  .top-nav.open .nav-links a:hover,
  body.home-page .top-nav.open .nav-links a[href="index.html"] {
    color: #0d1f18 !important;
    background: #eaf7f0 !important;
  }
}
/* Geoguma 2: remove the white strip directly above the mobile banner */
@media (max-width: 980px) {
  body.home-page .mobile-home .hero {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin-top: 0 !important;
  }

  body.home-page .mobile-home .hero-media,
  body:has(.mobile-home) .mobile-home .hero-media {
    margin-top: 0 !important;
    background: transparent !important;
  }

  body.home-page .mobile-home .wrap,
  body:has(.mobile-home) .mobile-home .wrap {
    padding-top: 0 !important;
  }
}
/* Geoguma 2: same mobile nav on every subpage as on index */
@media (max-width: 980px) {
  body:not(.home-page) .top-nav {
    position: sticky !important;
    top: 0 !important;
    z-index: 30 !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    background: transparent !important;
    border-bottom: none !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  body:not(.home-page) .top-nav::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    height: calc(100% - 38px) !important;
    background: #ffffff !important;
    z-index: 0 !important;
    display: block !important;
  }

  body:not(.home-page) .nav-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 0 !important;
    row-gap: 10px !important;
    padding: 14px 16px 16px !important;
    position: relative !important;
    z-index: 1 !important;
    max-width: 1200px !important;
  }

  body:not(.home-page) .brand {
    width: min(58vw, 360px) !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  body:not(.home-page) .brand img {
    height: clamp(54px, 14vw, 72px) !important;
    max-width: none !important;
    transform: none !important;
    transform-origin: left center !important;
  }

  body:not(.home-page) .nav-toggle {
    display: block !important;
    position: relative !important;
    z-index: 4 !important;
    margin-left: auto !important;
    padding: 10px !important;
    border: 1.5px solid #000000 !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  body:not(.home-page) .nav-toggle span {
    display: block !important;
    width: 26px !important;
    height: 3px !important;
    margin: 5px 0 !important;
    background: #000000 !important;
    border-radius: 8px !important;
  }

  body:not(.home-page) .phone {
    position: relative !important;
    z-index: 3 !important;
    order: 3 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 2px 0 0 !important;
    padding: 13px 16px !important;
    border-radius: 999px !important;
    background: #0d1f18 !important;
    border-color: #0d1f18 !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: normal !important;
    text-align: center !important;
    box-shadow: 0 14px 28px rgba(0,0,0,0.16) !important;
  }

  body:not(.home-page) .mobile-nav-claim {
    display: none !important;
  }

  body:not(.home-page) .top-nav + main.wrap,
  body:not(.home-page) .top-nav + .wrap {
    margin-top: 0 !important;
    padding-top: 42px !important;
  }
}

@media (max-width: 420px) {
  body:not(.home-page) .brand {
    width: min(62vw, 300px) !important;
  }
  body:not(.home-page) .brand img {
    height: clamp(50px, 13vw, 64px) !important;
  }
}
/* Geoguma 2: kill old site-nav mobile offset on subpages */
@media (max-width: 980px) {
  body:not(.home-page) {
    padding-top: 0 !important;
  }

  body:not(.home-page) .top-nav {
    position: sticky !important;
    top: 0 !important;
    left: auto !important;
    right: auto !important;
  }

  body:not(.home-page) .top-nav + main.wrap,
  body:not(.home-page) .top-nav + .wrap {
    padding-top: 18px !important;
    margin-top: 0 !important;
  }

  body:not(.home-page) .article-hero,
  body:not(.home-page) header.hero,
  body:not(.home-page) main.wrap > section:first-child {
    margin-top: 0 !important;
  }
}
/* Geoguma 2 FINAL CLEAN NAV */
@media (max-width: 980px) {
  body {
    padding-top: 0 !important;
  }

  .top-nav,
  body.home-page .top-nav,
  body:not(.home-page) .top-nav {
    position: sticky !important;
    top: 0 !important;
    left: auto !important;
    right: auto !important;
    z-index: 3000 !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    background: transparent !important;
    border-bottom: none !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .top-nav::before,
  body.home-page .top-nav::before,
  body:not(.home-page) .top-nav::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    height: calc(100% - 38px) !important;
    background: #ffffff !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
    z-index: 0 !important;
    display: block !important;
  }

  .nav-inner,
  body.home-page .nav-inner,
  body:not(.home-page) .nav-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0 !important;
    row-gap: 10px !important;
    padding: 14px 16px 16px !important;
    position: relative !important;
    z-index: 1 !important;
    max-width: 1200px !important;
    min-height: 0 !important;
  }

  .brand,
  body.home-page .brand,
  body:not(.home-page) .brand {
    order: 1 !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: min(58vw, 360px) !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  .brand::before,
  .brand::after {
    content: none !important;
    display: none !important;
  }

  .brand img,
  body.home-page .brand img,
  body:not(.home-page) .brand img {
    height: clamp(38px, 10vw, 52px) !important;
    width: auto !important;
    max-width: 100% !important;
    transform: none !important;
    object-fit: contain !important;
  }

  .nav-toggle,
  body.home-page .nav-toggle,
  body:not(.home-page) .nav-toggle {
    order: 2 !important;
    display: block !important;
    position: relative !important;
    z-index: 4 !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 0 auto !important;
    padding: 10px !important;
    border: 1.5px solid #000000 !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  .nav-toggle span,
  body.home-page .nav-toggle span,
  body:not(.home-page) .nav-toggle span {
    display: block !important;
    width: 26px !important;
    height: 3px !important;
    margin: 5px 0 !important;
    background: #000000 !important;
    border-radius: 8px !important;
  }

  .phone,
  body.home-page .phone,
  body:not(.home-page) .phone {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    z-index: 3 !important;
    order: 3 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 2px 0 0 !important;
    padding: 13px 16px !important;
    border-radius: 999px !important;
    background: #0d1f18 !important;
    border: 1px solid #0d1f18 !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: normal !important;
    font-weight: 900 !important;
    text-align: center !important;
    box-shadow: 0 14px 28px rgba(13,31,24,0.16) !important;
  }

  .nav-links,
  body.home-page .nav-links,
  body:not(.home-page) .nav-links {
    display: none !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 8px) !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    max-height: calc(100vh - 132px) !important;
    overflow-y: auto !important;
    margin: 0 !important;
    padding: 10px !important;
    flex-direction: column !important;
    gap: 6px !important;
    background: #ffffff !important;
    border: 1px solid #d9eadf !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 36px rgba(0,0,0,0.16) !important;
    z-index: 9999 !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .top-nav.open .nav-links,
  body.home-page .top-nav.open .nav-links,
  body:not(.home-page) .top-nav.open .nav-links {
    display: flex !important;
  }

  .nav-links a,
  .top-nav.open .nav-links a,
  body.home-page .top-nav.open .nav-links a,
  body:not(.home-page) .top-nav.open .nav-links a {
    display: block !important;
    flex: none !important;
    width: 100% !important;
    padding: 14px 16px !important;
    border-radius: 14px !important;
    color: #000000 !important;
    background: #ffffff !important;
    text-align: left !important;
    text-shadow: none !important;
    opacity: 1 !important;
  }

  .nav-links a + a::before {
    content: none !important;
    display: none !important;
  }

  .nav-links a:hover,
  body.home-page .nav-links a[href="index.html"],
  body.products-page .nav-links a[href="produkty.html"],
  body.usage-page .nav-links a[href="uzytkowanie.html"],
  body.articles-page .nav-links a[href="artykuly.html"],
  body.samples-page .nav-links a[href="probki.html"],
  body.contact-page .nav-links a[href="kontakt.html"] {
    color: #0d1f18 !important;
    background: #eaf7f0 !important;
  }

  .top-nav.open .nav-toggle {
    background: #ffffff !important;
    border-color: #000000 !important;
  }

  .top-nav.open .nav-toggle span {
    background: #000000 !important;
  }

  .top-nav + main.wrap,
  .top-nav + .wrap {
    padding-top: 18px !important;
    margin-top: 0 !important;
  }

  body.home-page .mobile-home .wrap {
    padding-top: 0 !important;
  }

  body.home-page .mobile-home .hero,
  body.home-page .mobile-home .hero-media {
    margin-top: 0 !important;
    background: transparent !important;
  }
}

@media (max-width: 420px) {
  .brand,
  body.home-page .brand,
  body:not(.home-page) .brand {
    width: min(58vw, 260px) !important;
  }

  .brand img,
  body.home-page .brand img,
  body:not(.home-page) .brand img {
    height: clamp(34px, 9.5vw, 44px) !important;
  }

  .phone,
  body.home-page .phone,
  body:not(.home-page) .phone {
    padding: 12px 14px !important;
    font-size: 14px !important;
  }
}
/* Geoguma 2: white quick contact heading */
#sekcja-szybki-kontakt,
.section-heading-row #sekcja-szybki-kontakt {
  color: #ffffff !important;
}
/* Geoguma 2: white dark-background page headings */
body:not(.home-page) main.wrap > h1,
body:not(.home-page) main.wrap > section > h1,
body:not(.home-page) main.wrap > section > h2.section-title,
body:not(.home-page) #sekcja-szybki-kontakt {
  color: #ffffff !important;
}
/* Geoguma 2: keep experience heading on one line */
@media (min-width: 981px) {
  body.home-page .desktop-home .cta-banner--experience .price-title {
    white-space: nowrap !important;
    font-size: clamp(22px, 1.8vw, 30px) !important;
    line-height: 1.12 !important;
  }
}
/* Geoguma 2: larger lower index SEO headings */
body.home-page .doc-section h2 {
  font-size: clamp(34px, 3.8vw, 54px) !important;
  line-height: 1.06 !important;
}
body.home-page .doc-section h3 {
  font-size: clamp(28px, 2.8vw, 42px) !important;
  line-height: 1.1 !important;
}
@media (max-width: 640px) {
  body.home-page .doc-section h2 {
    font-size: 30px !important;
  }
  body.home-page .doc-section h3 {
    font-size: 25px !important;
  }
}
/* Geoguma 2: tighter lower SEO tile top spacing */
body.home-page .doc-section__intro,
body.home-page .doc-tile__copy {
  padding-top: clamp(20px, 2.2vw, 30px) !important;
}
body.home-page .doc-tile__copy h3:first-child,
body.home-page .doc-section__intro h2:first-child {
  margin-top: 0 !important;
}
body.home-page .doc-tile__copy h3 {
  margin-top: 0 !important;
  margin-bottom: 14px !important;
}
@media (max-width: 640px) {
  body.home-page .doc-section__intro,
  body.home-page .doc-tile__copy {
    padding-top: 18px !important;
  }
}
/* Geoguma 2: merged intro with first lower SEO tile */
body.home-page .doc-section__intro {
  display: none !important;
}
body.home-page .doc-tile--intro .doc-tile__copy h2 {
  margin: 0 0 18px !important;
  font-size: clamp(34px, 3.8vw, 54px) !important;
  line-height: 1.06 !important;
}
body.home-page .doc-tile--intro .doc-tile__copy .lead {
  margin-bottom: 22px !important;
}
/* Geoguma 2: clean footer */
.site-footer,
body footer {
  width: 100% !important;
  margin: 34px 0 0 !important;
  padding: 20px 24px !important;
  background: #edf8f1 !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #0b251b !important;
  text-align: center !important;
}

.site-footer *,
body footer * {
  color: #0b251b !important;
}

.footer-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px 22px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

.footer-meta a {
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

.footer-ai-note {
  font-size: 12px !important;
  opacity: .72 !important;
}

@media (max-width: 640px) {
  .site-footer,
  body footer {
    margin-top: 24px !important;
    padding: 18px 16px !important;
  }

  .footer-meta {
    flex-direction: column !important;
    gap: 6px !important;
    font-size: 14px !important;
  }
}
/* Geoguma 2: samples heading on dark background */
body:not(.home-page) #sekcja-probki,
body:not(.home-page) h2#sekcja-probki {
  color: #ffffff !important;
}
/* Geoguma 2: phone button color */
.phone,
body.home-page .phone,
body:not(.home-page) .phone {
  background: #2f7d57 !important;
  border-color: #2f7d57 !important;
  color: #ffffff !important;
  box-shadow: 0 14px 28px rgba(47, 125, 87, 0.22) !important;
}

.phone:hover,
body.home-page .phone:hover,
body:not(.home-page) .phone:hover {
  background: #276a4a !important;
  border-color: #276a4a !important;
}
/* Geoguma 2: mobile lowest prices like geow */
@media (max-width: 760px) {
  body.home-page .mobile-home .stack-card--prices {
    overflow: hidden !important;
    padding: 0 !important;
    border-radius: 28px !important;
    background: #ffffff !important;
    border: 1px solid #d9eadf !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  body.home-page .mobile-home .stack-card--prices .stack-card__media {
    order: 1 !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
  }

  body.home-page .mobile-home .stack-card--prices .stack-card__media img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1.55 / 1 !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 28px 28px 0 0 !important;
  }

  body.home-page .mobile-home .stack-card--prices .stack-card__copy {
    order: 2 !important;
    width: 100% !important;
    padding: 18px 30px 26px !important;
    align-items: stretch !important;
    text-align: left !important;
    background: #ffffff !important;
  }

  body.home-page .mobile-home .stack-card--prices .price-title {
    margin: 0 0 16px !important;
    font-size: clamp(26px, 7vw, 34px) !important;
    line-height: 1.12 !important;
    text-align: left !important;
    white-space: normal !important;
  }

  body.home-page .mobile-home .stack-card--prices .cta-row {
    width: 100% !important;
    justify-content: stretch !important;
    margin: 0 !important;
  }

  body.home-page .mobile-home .stack-card--prices .btn {
    width: 100% !important;
    min-height: 58px !important;
    justify-content: center !important;
    padding: 16px 20px !important;
    font-size: 22px !important;
    border-radius: 20px !important;
  }
}
/* Geoguma 2: lighter mobile lowest prices card */
@media (max-width: 760px) {
  body.home-page .mobile-home .stack-card--prices .stack-card__copy {
    padding: 16px 30px 24px !important;
    align-items: stretch !important;
    text-align: left !important;
  }

  body.home-page .mobile-home .stack-card--prices .price-title {
    margin: 0 0 14px !important;
    font-size: clamp(26px, 6.2vw, 31px) !important;
    line-height: 1.08 !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  body.home-page .mobile-home .stack-card--prices .cta-row {
    width: 100% !important;
    justify-content: stretch !important;
  }

  body.home-page .mobile-home .stack-card--prices .btn {
    width: 100% !important;
    min-height: 52px !important;
    padding: 13px 18px !important;
    font-size: 19px !important;
    border-radius: 18px !important;
  }
}

@media (max-width: 390px) {
  body.home-page .mobile-home .stack-card--prices .stack-card__copy {
    padding: 15px 24px 22px !important;
  }

  body.home-page .mobile-home .stack-card--prices .price-title {
    font-size: clamp(23px, 6vw, 28px) !important;
  }
}
/* Geoguma 2: FINAL mobile prices text sizing */
@media (max-width: 760px) {
  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy {
    padding: 14px 30px 22px !important;
  }

  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy h2,
  html body.home-page .mobile-home article.stack-card.stack-card--prices h2.price-title,
  html body.home-page .mobile-home article.stack-card.stack-card--prices #sekcja-ceny {
    font-size: 22px !important;`n    line-height: 1.1 !important;
    margin: 0 0 13px !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy .btn,
  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy a.btn,
  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy a.btn.btn-primary {
    min-height: 50px !important;
    padding: 12px 18px !important;
    font-size: 18px !important;`n    line-height: 1.15 !important;
    border-radius: 18px !important;
  }
}

@media (max-width: 390px) {
  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy {
    padding: 13px 24px 20px !important;
  }

  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy h2,
  html body.home-page .mobile-home article.stack-card.stack-card--prices h2.price-title,
  html body.home-page .mobile-home article.stack-card.stack-card--prices #sekcja-ceny {
    font-size: 20px !important;`n  }

  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy .btn,
  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy a.btn,
  html body.home-page .mobile-home article.stack-card.stack-card--prices .stack-card__copy a.btn.btn-primary {
    min-height: 48px !important;
    font-size: 16px !important;`n  }
}
/* Geoguma 2: bigger mobile logo without taller nav */
@media (max-width: 760px) {
  html body .brand,
  html body.home-page .brand,
  html body:not(.home-page) .brand,
  html body:has(.mobile-home) .brand {
    width: min(64vw, 300px) !important;
  }

  html body .brand img,
  html body.home-page .brand img,
  html body:not(.home-page) .brand img,
  html body:has(.mobile-home) .brand img {
    height: clamp(42px, 11vw, 54px) !important;
    max-height: 54px !important;
  }

  html body .nav-inner,
  html body.home-page .nav-inner,
  html body:not(.home-page) .nav-inner,
  html body:has(.mobile-home) .nav-inner {
    padding-top: 10px !important;
    padding-bottom: 12px !important;
  }
}
/* Geoguma 2: footer visibility fix */
html body footer,
html body .site-footer {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 34px 0 0 !important;
  padding: 20px 24px !important;
  background: #edf8f1 !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #0b251b !important;
  text-align: center !important;
}

html body footer *,
html body .site-footer *,
html body footer a,
html body .site-footer a,
html body .footer-meta,
html body .footer-meta a {
  color: #0b251b !important;
}

html body .footer-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px 22px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

html body .footer-meta a {
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

@media (max-width: 640px) {
  html body footer,
  html body .site-footer {
    margin-top: 24px !important;
    padding: 18px 16px !important;
  }

  html body .footer-meta {
    flex-direction: column !important;
    gap: 6px !important;
    font-size: 14px !important;
  }
}

/* Geoguma 2: readable calculator price on dark result panel */
html body .price-result,
html body .price-result *,
html body .price-result strong,
html body .price-result span,
html body .price-result [data-result-gross],
html body .price-result [data-result-net],
html body .price-result [data-result-delivery],
html body .price-result .result-meta,
html body .price-result .result-delivery {
  color: #ffffff !important;
}

html body .price-result .result-cta {
  color: #0d1f18 !important;
}

/* Geoguma 2: light green CTA panels */
html body .article-cta {
  background: #edf8f1 !important;
  border: 1px solid #cfe6d8 !important;
  color: #0b251b !important;
}

html body .article-cta h3,
html body .article-cta p,
html body .article-cta strong {
  color: #0b251b !important;
}

html body .article-cta .btn-primary,
html body .article-cta a.btn-primary {
  background: #0d1f18 !important;
  border-color: #0d1f18 !important;
  color: #ffffff !important;
}

html body .article-cta .btn-secondary,
html body .article-cta a.btn-secondary {
  background: #ffffff !important;
  border-color: #0d1f18 !important;
  color: #0d1f18 !important;
}