/** RiseApex 2.3.6 — monochrome architecture. Loaded after section styles. */
:root {
  --rs-font-heading: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --rs-font-body: "Cormorant Garamond", Georgia, "Times New Roman", serif;
}
html, body { background: #030303; }
/* Use the existing site background layer; body layers were hidden by .site. */
body::before, body::after { content: none; }
.site { background: #030303; isolation: isolate; }
.site::before {
  position: fixed; inset: 0; z-index: 0; pointer-events: none;
  background-image: linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.24)),url("../images/backgrounds/riseapex-clean-bg.png");
  background-size: cover; background-position: center center;
  background-repeat: no-repeat; background-attachment: scroll;
}
.site-main, .site-footer { background-color: transparent; }
.section { background: rgba(3,3,3,.76); }
.section.section-hero { background: linear-gradient(90deg,rgba(0,0,0,.65),rgba(0,0,0,.06)); }
.section.section-pillars { background: rgba(3,3,3,.52); }
.section-hero__ambient, .section-hero__grain, .section-hero__bg { display: none; }
.section-hero__media-placeholder { visibility: hidden; }
body, button, input, textarea, select, .btn, .rs-label { font-family: var(--rs-font-body); }
h1,h2,h3,h4,h5,h6 { font-family: var(--rs-font-heading); }
.section-hero__heading { font-weight: 400; letter-spacing: -.025em; }
.section-hero__description { color: #d0d0d0; }
.section-pillars__head { max-width: 760px; margin: 0 auto 3.5rem; text-align: center; }
.section-pillars__heading { font-weight: 400; }
.section-pillars__grid {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
  width: 100%; max-width: 1040px; margin: 0 auto;
  gap: clamp(1.5rem,3vw,2.5rem); align-items: stretch;
}
.section-pillars__item {
  position: relative; isolation: isolate; min-width: 0; min-height: 440px;
  display: flex; flex-direction: column; align-items: flex-start;
  padding: clamp(2rem,3.4vw,3.25rem); overflow: hidden;
  border: 1px solid rgba(255,255,255,.23); border-radius: 14px;
  background: rgba(6,6,6,.92);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07),0 24px 64px rgba(0,0,0,.24);
  transition: transform .3s ease,border-color .3s ease;
}
.section-pillars__item::before {
  content: ""; position: absolute; inset: 12px; width: auto; height: auto;
  background: none; border: 1px solid rgba(255,255,255,.055); border-radius: 6px;
  opacity: 1; pointer-events: none; z-index: -1;
}
.section-pillars__item::after {
  content: ""; position: absolute; top: 0; left: 3rem; right: 3rem;
  height: 1px; background: #d3d3d3; opacity: .5;
}
.section-pillars__numeral {
  position: absolute; top: 1.25rem; right: 1.75rem;
  font-family: var(--rs-font-heading); font-size: clamp(5rem,8vw,7rem);
  font-weight: 400; line-height: 1; letter-spacing: -.045em;
  color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.2); opacity: 1;
}
.section-pillars__icon {
  flex: 0 0 auto; width: 52px; height: 52px; display: grid; place-items: center;
  margin: 0 0 3.25rem; border: 1px solid rgba(255,255,255,.28);
  border-radius: 50%; background: #0a0a0a; color: #eee; filter: none;
}
.section-pillars__icon .rs-icon { width: 24px; height: 24px; stroke-width: 1.2; }
.section-pillars__title {
  margin: 0 0 1.1rem; font-size: clamp(2.2rem,3.3vw,3.35rem);
  font-weight: 400; line-height: 1.15; letter-spacing: -.015em; overflow-wrap: anywhere;
}
.section-pillars__description {
  margin: 0; max-width: 42ch; color: #bdbdbd; font-size: 1.125rem; line-height: 1.7;
  overflow-wrap: anywhere;
}
.section-pillars__detail { width: 56px; height: 1px; flex-shrink: 0; margin-top: 2rem; background: #ddd; opacity: .7; }
@media (hover:hover) {
  .section-pillars__item:hover { transform: translateY(-4px); border-color: rgba(255,255,255,.5); box-shadow: 0 24px 64px rgba(0,0,0,.3); }
}
@media (max-width:767px) {
  .site::before { background-position: 50% center; }
  .section.section-hero { background: rgba(0,0,0,.42); }
  .section-hero__media:has(.section-hero__media-placeholder) { display: none; }
  .section-pillars__grid { grid-template-columns: minmax(0,1fr); max-width: 520px; }
  .section-pillars__item { min-height: 390px; }
}
@media (prefers-reduced-motion:reduce) {
  .section-pillars__item, .section-pillars__item:hover { transition: none; transform: none; }
}

/* RiseApex 2.3.7: compact header, shared navigation, product details, footer. */
:root { --rs-header-height: 88px; }
.site-header__inner {
  display: grid; grid-template-columns: minmax(44px,1fr) auto minmax(44px,1fr);
  min-height: 88px; gap: 0 12px;
}
.site-header__side { grid-column: 1; grid-row: 1; }
.site-header__branding { grid-column: 2; grid-row: 1; justify-self: center; }
.site-header__actions { grid-column: 3; grid-row: 1; justify-self: end; }
.site-header__branding img { max-height: 60px; max-width: 42vw; width: auto; object-fit: contain; }
.site-navigation__item a::before { content: none; }
.site-navigation__item:not(:first-child)::before { content: none; }
.site-navigation.is-open { background: #080808; padding-block: 1rem; }
.site-navigation__list a { min-height: 44px; }
@media (min-width:860px) {
  :root { --rs-header-height: 120px; }
  .site-header__inner { min-height: 120px; grid-template-rows: auto auto; padding-block: 10px 8px; row-gap: 2px; }
  .site-header__branding img { max-height: 64px; max-width: 300px; }
  .site-header .site-navigation, .site-header .site-navigation.is-open {
    display: block; grid-row: 2; grid-column: 1 / -1; justify-self: center;
    position: static; inset: auto; padding: 0; border: 0; background: transparent;
    box-shadow: none; backdrop-filter: none; animation: none;
  }
  .site-header .site-navigation__list { justify-content: center; gap: 2.5rem; }
  .site-header .site-navigation__list a { min-height: 32px; padding: 5px 0; font-size: .875rem; line-height: 1.5; }
}
.section-products__group-numeral {
  font-size: clamp(1.05rem,1.2vw,1.25rem); color: #c8c8c8;
  letter-spacing: .1em; line-height: 1.2; flex-shrink: 0;
}
.section-products__card-link { min-height: 48px; gap: 1rem; font-size: .875rem; letter-spacing: .06em; }
.section-products__card-link .section-products__arrow {
  display: inline-grid; place-items: center; width: 36px; height: 36px; flex: 0 0 36px;
  border: 1px solid rgba(255,255,255,.3); border-radius: 50%;
  color: #e8e8e8; background: transparent; transform: none;
  transition: border-color .25s ease, background-color .25s ease;
}
.section-products__arrow svg { width: 17px; height: 17px; transition: transform .25s ease; }
.section-products__card-link:focus-visible .section-products__arrow { border-color: #fff; }
@media (hover:hover) {
  .section-products__card-link:hover .section-products__arrow { background: rgba(255,255,255,.07); border-color: #ddd; }
  .section-products__card-link:hover .section-products__arrow svg { transform: translate(1px,-1px); }
}
.site-footer--apex { padding-top: clamp(3rem,6vw,5rem); background: rgba(3,3,3,.82); }
.site-footer--apex .site-footer__brand { margin: 0 0 2.5rem; text-align: left; }
.site-footer--apex .site-footer__brand img { max-width: min(240px,65vw); max-height: 64px; width: auto; }
.site-footer--apex .site-footer__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem 4rem; padding-bottom: 1.5rem; }
.site-footer--apex .site-footer__col--legal { justify-self: end; min-width: min(100%,260px); }
.site-footer--apex .site-footer__col-title { font-size: 1rem; letter-spacing: .08em; line-height: 1.5; }
.site-footer--apex .site-footer__col ul { list-style: none; margin: 0; padding: 0; gap: .2rem; }
.site-footer--apex .site-footer__col a { display: inline-flex; align-items: center; min-height: 44px; font-size: 1.0625rem; overflow-wrap: anywhere; }
.site-footer--apex .site-footer__networks { margin-top: 1rem; }
.site-footer--apex .site-footer__networks ul { flex-direction: row; flex-wrap: wrap; gap: 1rem; }
#o-marce, #produkty { scroll-margin-top: calc(var(--rs-header-height) + 20px); }
@media (max-width:859px) {
  .section.section-hero { display: flex; min-height: 0; padding-block: 2rem 3rem; }
  .section-hero__inner { display: grid; grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .section-hero__content { order: 1; min-width: 0; }
  .section-hero__heading { font-size: clamp(2.4rem,7.5vw,4rem); overflow-wrap: anywhere; }
  .section-hero__description { font-size: 1.125rem; }
  .section-hero__media, .section-hero__media:has(.section-hero__media-placeholder) { display: block; order: 2; min-width: 0; }
  .section-hero__media-placeholder { visibility: visible; aspect-ratio: 4/3; min-height: 0; max-height: 350px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; overflow: hidden; }
  .section-hero__mobile-art { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 75%; }
  .section-hero__media-frame { max-height: 440px; }
  .section-hero__media [data-parallax] { transform: none !important; }
}
@media (min-width:860px) { .section-hero__mobile-art { display: none; } }
@media (max-width:479px) {
  .site-footer--apex .site-footer__grid { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .site-footer--apex .site-footer__col--legal { justify-self: start; }
}
@media (prefers-reduced-motion:reduce) {
  .section-products__arrow, .section-products__arrow svg { transition: none !important; transform: none !important; }
}
.section-products__card:hover .section-products__card-link .section-products__arrow { transform: none; }

/* RiseApex 2.3.8 — larger brand mark, portrait mobile hero and outlined navigation. */
.site-header__branding { min-width: 0; }
/* Zoom reserves layout space and scales both uploaded and fallback logos. */
.site-header__branding .custom-logo-link,
.site-header__branding .site-branding__link { zoom: 1.21125; }
.site-header__inner { padding-block: 10px; }
.site-header__branding img {
  max-width: min(42vw, calc((100vw - 160px) / 1.425));
  height: auto;
}
.section-products__card-price {
  display: block; font-size: 1rem; line-height: 1.5;
  color: #f2f2f2; font-weight: 600; letter-spacing: .025em;
  margin-bottom: 1.25rem;
}
.section-products__card-price .amount { font-size: inherit; }
.section-products__card-price ins { text-decoration: none; color: #fff; }
.section-products__card-price del { font-size: .875em; color: #aaa; margin-right: .4rem; }
.site-header .site-navigation__list { gap: .75rem; }
.site-header .site-navigation__item { border: 0; margin: 0; padding: 0; }
.site-header .site-navigation__list .site-navigation__link {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: .65rem 1.35rem; gap: 0;
  border: 1px solid rgba(255,255,255,.25); border-radius: 6px;
  background: rgba(10,10,10,.8); color: #ddd;
  font-size: .875rem; font-weight: 500; line-height: 1.5; letter-spacing: .09em;
  text-decoration: none; text-shadow: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
  transition: background-color .25s ease, border-color .25s ease, color .25s ease;
}
.site-header .site-navigation__link::before,
.site-header .site-navigation__link::after { content: none; }
.site-header .site-navigation__list .site-navigation__link:focus-visible {
  border-color: #fff; outline: 2px solid #fff; outline-offset: 4px; color: #fff;
}
@media (hover:hover) {
  .site-header .site-navigation__list .site-navigation__link:hover {
    background: #151515; border-color: rgba(255,255,255,.6); color: #fff;
  }
}
@media (min-width:860px) {
  :root { --rs-header-height: 158px; }
  .site-header__inner { min-height: 158px; row-gap: 8px; padding-block: 10px 12px; }
  .site-header__branding img { max-width: 300px; }
}
@media (max-width:859px) {
  :root { --rs-header-height: 106px; }
  .site-header__inner { min-height: 106px; }
  .site-header .site-navigation__list .site-navigation__link { display: flex; width: 100%; }
  .section-hero__media,
  .section-hero__media:has(.section-hero__media-placeholder) {
    order: 1; width: 100%; max-width: 400px; margin-inline: auto;
  }
  .section-hero__content { order: 2; }
  .section-hero__media-frame,
  .section-hero__media-placeholder {
    width: 100%; height: auto; aspect-ratio: 3 / 4; min-height: 0; max-height: none;
  }
  .section-hero__media-frame { padding: 10px; }
  .section-hero__main-image,
  .section-hero__main-image:hover { object-fit: contain; transform: none; }
  .section-hero__mobile-art { object-fit: cover; object-position: center; }
  .section-hero__inner { gap: 2rem; }
}
@media (prefers-reduced-motion:reduce) {
  .site-header .site-navigation__list .site-navigation__link { transition: none; }
}

/* 2.3.9: remove navigation separators, including older high-specificity rules. */
.site-header .site-navigation__list { list-style: none; }
.site-header .site-navigation .site-navigation__list > li::before,
.site-header .site-navigation .site-navigation__list > li::after { content: none; display: none; }
.site-header .site-navigation .site-navigation__list > li::marker { content: ''; }
.rs-contact { padding-block: clamp(2.5rem,6vw,5rem); }
.rs-contact__panel { max-width: 760px; margin-inline: auto; padding: clamp(1.5rem,5vw,3.5rem); background: rgba(6,6,6,.94); border: 1px solid #333; border-radius: 14px; }
.rs-contact__panel h1 { font-size: clamp(2.5rem,5vw,4rem); margin-bottom: 1rem; }
.rs-contact__form { display: grid; gap: 1.3rem; margin-top: 2rem; }
.rs-contact__names { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.25rem; }
.rs-contact__form label { display: block; color: #eee; font-size: 1.125rem; }
.rs-contact__form label > span { display: inline; }
.rs-contact__form input, .rs-contact__form textarea { display: block; margin-top: .5rem; width: 100%; min-width: 0; min-height: 48px; border: 1px solid #555; border-radius: 6px; background: #101010; color: #fff; padding: .8rem 1rem; font: inherit; font-size: 1.0625rem; }
.rs-contact__form textarea { resize: vertical; }
.rs-contact__form input:focus, .rs-contact__form textarea:focus { border-color: #fff; outline: 2px solid #bcbcbc; outline-offset: 3px; }
.rs-contact__form .btn { justify-self: start; }
.rs-contact__hint { font-size: .9375rem; color: #bbb; margin: 0; }
.rs-contact__notice { padding: 1rem; border: 1px solid #777; border-radius: 6px; color: #fff; }
.rs-contact__trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media(max-width:540px) { .rs-contact__names { grid-template-columns: minmax(0,1fr); } .rs-contact__form .btn { justify-self: stretch; } }

/* 2.3.10: editorial typography, slightly lower header, mobile art. */
h1,h2,h3,h4,h5,h6,
.section-build__item-title,.section-pillars__title,.section-products__card-title,
.section-transformation__step-title,.section-faq__trigger {
  font-family: var(--rs-font-heading); font-weight: 400; letter-spacing: -.015em; line-height: 1.15;
}
.section-hero__heading { text-transform: none; line-height: 1.08; }
.section-build__item-title { font-size: 1.65rem; }
.section-products__card-title { font-size: 1.85rem; }
.section-faq__trigger { font-size: 1.5rem; }
.site-footer__col-title,.rs-label,.section-products__card-price,
.section-products__card-link,.site-navigation__link { font-family: var(--rs-font-body); }
.section-products__card-meta { font-size: .75rem; }
.rs-label { font-size: .8125rem; }
:root { --rs-header-height: 100.7px; }
.site-header__inner { min-height: 100.7px; padding-block: 9.5px; }
@media(min-width:860px) {
  :root { --rs-header-height: 150.1px; }
  .site-header__inner { min-height: 150.1px; row-gap: 6px; padding-block: 8px 9px; }
}
@media(max-width:767px) {
  .site::before {
    background-image: linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.24)),url('../images/backgrounds/riseapex-mobile-bg.png');
    background-size: cover; background-position: center; background-repeat: no-repeat;
  }
  /* Same central axis and alternating stages as desktop, with readable mobile gutters. */
  .section-transformation__step { padding-bottom: 3rem; min-width: 0; }
  .section-transformation__step:nth-of-type(odd) { padding-right: 1.15rem; }
  .section-transformation__step:nth-of-type(even) { padding-left: 1.15rem; }
  .section-transformation__step-title { font-size: clamp(1.35rem,4.8vw,1.8rem); overflow-wrap: anywhere; }
  .section-transformation__step-desc { font-size: 1rem; line-height: 1.65; overflow-wrap: anywhere; hyphens: auto; }
  .section-transformation__step-label { font-family: var(--rs-font-body); font-size: .875rem; gap: .4rem; }
  .section-transformation__step-label::after { width: 20px; }
}

/* 2.3.11 — one family, distinct hierarchy, comfortable reading. */
:root { --rs-size-body: 1.1875rem; --rs-size-small: 1.0625rem; --rs-size-label: 1rem; }
body { line-height: 1.75; letter-spacing: .01em; }
button,input,select,textarea,table,code,pre,kbd,samp { font-family: var(--rs-font-body); }
button,input,select,textarea { font-size: 1.125rem; }
p { overflow-wrap: break-word; }
.site-header .site-navigation__list .site-navigation__link { font-size: 1.0625rem; font-weight: 600; letter-spacing: .045em; line-height: 1.4; }
.btn,.section-products__card-link { font-size: 1.0625rem; font-weight: 600; letter-spacing: .045em; line-height: 1.5; }
.rs-label,.section-products__card-meta { font-size: 1rem; font-weight: 600; letter-spacing: .1em; line-height: 1.5; }
.section-products__card-price { font-size: 1.375rem; font-weight: 600; letter-spacing: .025em; line-height: 1.5; }
.section-products__card-price,.woocommerce-Price-amount,.quantity input,.page-numbers,.site-header__cart-count { font-variant-numeric: lining-nums tabular-nums; }
.section-products__card-title { line-height: 1.2; }
.site-footer__col-title { font-size: 1.25rem; font-weight: 600; letter-spacing: .06em; }
.site-footer a,.site-footer p,.site-footer small { font-size: 1.125rem; line-height: 1.75; }
.section-build__item-desc,.section-reviews__text,.section-faq__answer { font-size: 1.1875rem; line-height: 1.75; }
.section-build__item-number { font-size: 1rem; letter-spacing: .08em; }
/* No fixed text height or clipping: both pillars grow with their content. */
.section-pillars__grid { max-width: 1160px; }
.section-pillars__item { height: auto; min-height: 500px; }
.section-pillars__title { flex-shrink: 0; }
.section-pillars__description,.section-pillars__extended { width: 100%; max-width: 52ch; font-size: 1.1875rem; line-height: 1.75; color: #c5c5c5; overflow-wrap: anywhere; }
.section-pillars__description p,.section-pillars__extended p { margin: 0 0 1em; }
.section-pillars__description p:last-child,.section-pillars__extended p:last-child { margin-bottom: 0; }
.section-pillars__extended { padding-top: 1.4rem; margin-top: 1.4rem; border-top: 1px solid #333; }
.section-pillars__detail { flex-shrink: 0; }
@media(max-width:767px) {
 .section-pillars__grid { grid-template-columns: minmax(0,1fr); }
 .section-pillars__item { min-height: 420px; padding: 2rem 1.6rem; }
 .section-transformation__step-desc { font-size: 1.125rem; line-height: 1.65; }
 .section-transformation__step-label { font-size: 1rem; letter-spacing: .025em; }
}
