/* ==========================================================================
   Sony Cashback Zima 2026 — Landing Page Sony Centre
   Prefix: cbw26-   Root: #sony-cbw26.cbw26-lp   Slot: #sony-cbw26-host
   Motywy: .cbw26-theme-dark (Nocne miasto) / .cbw26-theme-light (Szron) / .cbw26-theme-orange (G Master)
   Font: Inter (OFL, fonts/OFL-Inter.txt)
   ========================================================================== */

@font-face {
  font-family: 'CBW26 Inter';
  src: url('fonts/inter-latin-ext-wght-normal.woff2') format('woff2');
  font-weight: 100 900; font-style: normal; font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'CBW26 Inter';
  src: url('fonts/inter-latin-wght-normal.woff2') format('woff2');
  font-weight: 100 900; font-style: normal; font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Slot partnera ------------------------------------------------------ */
#sony-cbw26-host.cbw26-embed-host {
  all: revert;
  container-type: inline-size;
  container-name: cbw26-host;
  visibility: visible !important; /* HTML ukrywa slot do czasu wczytania arkusza */
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}

/* --- Reset w obrebie LP --------------------------------------------------- */
#sony-cbw26.cbw26-lp, #sony-cbw26.cbw26-lp *:not(svg *), #sony-cbw26.cbw26-lp *::before, #sony-cbw26.cbw26-lp *::after {
  all: revert;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
#sony-cbw26.cbw26-lp h1, #sony-cbw26.cbw26-lp h2, #sony-cbw26.cbw26-lp h3, #sony-cbw26.cbw26-lp h4 { font-size: inherit; font-weight: inherit; }
#sony-cbw26.cbw26-lp a { color: inherit; text-decoration: none; }
#sony-cbw26.cbw26-lp img, #sony-cbw26.cbw26-lp picture { display: block; max-width: 100%; height: auto; }
#sony-cbw26.cbw26-lp button, #sony-cbw26.cbw26-lp select { font: inherit; color: inherit; background: none; border: 0; }
#sony-cbw26.cbw26-lp ul, #sony-cbw26.cbw26-lp ol { list-style: none; }
#sony-cbw26.cbw26-lp svg { fill: currentColor; }

/* --- Root: tokeny + baza dziedziczonych ---------------------------------- */
#sony-cbw26.cbw26-lp {
  --w-content: 1376px;
  --gutter: 48px;
  --radius: 10px;
  --radius-sm: 6px;

  --accent: #ec323a;
  --accent2: #c9262d;
  --accent-rgb: 236, 50, 58;
  --accent-ink: #ffffff;
  --gm: #d85e00;
  --gm2: #b84f00;
  --af: #3ddc84;
  --trail-red: #ff3d3d;
  --trail-amber: #ffa12b;
  --trail-cyan: #3cc8f5;

  /* motyw ciemny (domyslny) */
  --canvas: #0b0d12;
  --s1: #12151c;
  --s2: #181c25;
  --s3: #1e2330;
  --hairline: rgba(255, 255, 255, 0.09);
  --hairline-strong: rgba(255, 255, 255, 0.16);
  --ink: #ffffff;
  --soft: #cfd4dd;
  --muted: #8f98a8;
  --media-bg: radial-gradient(120% 90% at 50% 60%, #2a3040 0%, #1a1f2a 55%, #151922 100%);
  --trail-opacity: 1;
  --g1: #ffffff;
  --g2: #ff4b4b;
  --g3: #ffa12b;
  --g4: #4fd2ff;

  --font: 'CBW26 Inter', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;

  display: block;
  width: 100%;
  margin: 0;
  position: relative;
  overflow-x: clip;
  isolation: isolate;
  container-type: inline-size;
  container-name: cbw26-lp;
  background-color: var(--canvas);

  font-family: var(--font); color: var(--ink); line-height: 1.5;
  font-size: 16px; font-weight: 400; font-style: normal; font-variant: normal;
  font-feature-settings: 'cv05' 1, 'cv08' 1, 'ss03' 1; /* Inter: l z ogonkiem, 1 bez daszka, zaokraglone przecinki */
  letter-spacing: normal; word-spacing: normal;
  text-align: left; text-indent: 0; text-transform: none; text-shadow: none;
  white-space: normal; word-break: normal; overflow-wrap: normal; hyphens: manual;
  direction: ltr; visibility: visible; cursor: auto; tab-size: 8;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}

#sony-cbw26.cbw26-lp.cbw26-theme-light {
  --canvas: #f3f5f8;
  --s1: #ffffff;
  --s2: #ffffff;
  --s3: #ffffff;
  --hairline: #dde2ea;
  --hairline-strong: #c9d0db;
  --ink: #111318;
  --soft: #3b424e;
  --muted: #5d6573;
  --media-bg: radial-gradient(120% 90% at 50% 60%, #ffffff 0%, #f6f7f9 60%, #eef1f5 100%);
  --trail-opacity: 0.55;
  --g1: #111318;
  --g2: #e0262f;
  --g3: #d46a00;
  --g4: #0b8fc4;
}

/* Ciemny z akcentem G Master: CTA pomaranczowe, bez czerwieni w gradientach */
#sony-cbw26.cbw26-lp.cbw26-theme-orange {
  --accent: #d85e00;
  --accent2: #b84f00;
  --accent-rgb: 216, 94, 0;
  --trail-red: #ff7a1a;
  --g2: #ff7a1a;
  --g3: #ffb347;
}

/* --- Kroki szerokosci (reguly NA roocie -> kontener hosta) --------------- */
@container cbw26-host (max-width: 1440px) { #sony-cbw26.cbw26-lp { --w-content: 1218px; } }
@container cbw26-host (max-width: 1230px) { #sony-cbw26.cbw26-lp { --w-content: 960px; --gutter: 32px; } }
@container cbw26-host (max-width: 960px)  { #sony-cbw26.cbw26-lp { --w-content: 100%; --gutter: 20px; } }

/* --- Wspolne -------------------------------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-container {
  width: 100%;
  max-width: calc(var(--w-content) + var(--gutter) * 2);
  margin: 0 auto;
  padding: 0 var(--gutter);
}
@container cbw26-lp (max-width: 960px) {
  #sony-cbw26.cbw26-lp .cbw26-container { max-width: 100%; }
}

#sony-cbw26.cbw26-lp .cbw26-icon {
  display: inline-block;
  width: 1.25em;
  height: 1.25em;
  flex: none;
  vertical-align: -0.25em;
}
#sony-cbw26.cbw26-lp .cbw26-nowrap { white-space: nowrap; }
#sony-cbw26.cbw26-lp .cbw26-inline-link {
  color: var(--ink);
  font-weight: 600;
  white-space: nowrap;
  text-decoration: underline;
  text-decoration-color: var(--hairline-strong);
  text-underline-offset: 3px;
  transition: text-decoration-color .2s ease;
}
#sony-cbw26.cbw26-lp .cbw26-inline-link:hover { text-decoration-color: currentColor; }
#sony-cbw26.cbw26-lp .cbw26-inline-link:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
#sony-cbw26.cbw26-lp .cbw26-alpha { display: inline-block; white-space: nowrap; }
#sony-cbw26.cbw26-lp .cbw26-alpha-svg {
  display: inline-block;
  height: 0.7em;
  width: auto;
  aspect-ratio: 78.8 / 55.4;
  margin-right: 0.05em;
  vertical-align: baseline;
  fill: currentColor;
}
#sony-cbw26.cbw26-lp .cbw26-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

#sony-cbw26.cbw26-lp .cbw26-section { padding: clamp(72px, 7.2cqw, 112px) 0 0; }
#sony-cbw26.cbw26-lp .cbw26-section--tight { padding-top: clamp(64px, 6cqw, 96px); }

#sony-cbw26.cbw26-lp .cbw26-section-head { margin-bottom: clamp(32px, 3.4cqw, 52px); position: relative; }
#sony-cbw26.cbw26-lp .cbw26-section-head--split {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px 48px;
  flex-wrap: wrap;
}
#sony-cbw26.cbw26-lp .cbw26-section-title {
  display: inline-block;
  font-size: clamp(42px, 4.8cqw, 72px);
  font-weight: 750;
  line-height: 1.02;
  letter-spacing: -0.035em;
  padding-bottom: 0.06em; /* ogonki (ą, ę, j) nie ucinane przez background-clip */
  color: var(--ink);
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 20%, var(--g3) 36%, var(--g1) 50%, var(--g4) 66%, var(--g1) 84%, var(--g1) 100%);
  background-size: 250% 100%;
  background-position: calc(100% - var(--p, 0) * 100%) 0;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-section-title {
  background-image: none;
  -webkit-text-fill-color: currentColor;
  color: var(--ink);
}
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-section-title .cbw26-alpha-svg { fill: currentColor; }
#sony-cbw26.cbw26-lp .cbw26-section-title .cbw26-alpha-svg { height: 0.62em; margin-left: 0.06em; fill: #fff; }
#sony-cbw26.cbw26-lp .cbw26-cam-name .cbw26-alpha-svg { height: 0.58em; margin-right: 0.07em; }
#sony-cbw26.cbw26-lp .cbw26-section-desc {
  max-width: 420px;
  font-size: 16px;
  line-height: 1.55;
  color: var(--muted);
  padding-bottom: 6px;
}

/* --- Przyciski i linki ---------------------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 11px 22px;
  border-radius: var(--radius-sm);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.005em;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .15s ease, box-shadow .2s ease;
}
#sony-cbw26.cbw26-lp .cbw26-btn .cbw26-icon { width: 20px; height: 20px; }
#sony-cbw26.cbw26-lp .cbw26-btn--primary { background-color: var(--accent); color: var(--accent-ink); }
#sony-cbw26.cbw26-lp .cbw26-btn--primary:hover { background-color: var(--accent2); box-shadow: 0 6px 22px rgba(var(--accent-rgb), 0.32); }
#sony-cbw26.cbw26-lp .cbw26-btn--lg { min-height: 54px; padding: 15px 30px; font-size: 16px; }
#sony-cbw26.cbw26-lp .cbw26-btn--sm { min-height: 38px; padding: 8px 16px; font-size: 14px; }
#sony-cbw26.cbw26-lp .cbw26-btn--gm { background-color: var(--gm); color: #fff; }
#sony-cbw26.cbw26-lp .cbw26-btn--gm:hover { background-color: var(--gm2); }
#sony-cbw26.cbw26-lp .cbw26-btn--outline { border: 1px solid var(--hairline-strong); color: var(--ink); }
#sony-cbw26.cbw26-lp .cbw26-btn--outline:hover { border-color: var(--ink); }
#sony-cbw26.cbw26-lp .cbw26-btn:active { transform: translateY(1px); }
#sony-cbw26.cbw26-lp .cbw26-btn:focus-visible,
#sony-cbw26.cbw26-lp .cbw26-link-arrow:focus-visible,
#sony-cbw26.cbw26-lp .cbw26-pill:focus-visible,
#sony-cbw26.cbw26-lp .cbw26-hero-item:focus-visible,
#sony-cbw26.cbw26-lp .cbw26-cam-media:focus-visible,
#sony-cbw26.cbw26-lp .cbw26-lens-media:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

#sony-cbw26.cbw26-lp .cbw26-link-arrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 600;
  color: var(--ink);
  padding: 6px 0;
  border-bottom: 1px solid var(--hairline-strong);
  transition: border-color .2s ease;
}
#sony-cbw26.cbw26-lp .cbw26-link-arrow .cbw26-icon { width: 20px; height: 20px; transition: transform .2s ease; }
#sony-cbw26.cbw26-lp .cbw26-link-arrow:hover { border-color: currentColor; }
#sony-cbw26.cbw26-lp .cbw26-link-arrow:hover .cbw26-icon { transform: translateX(4px); }

/* --- Kwota cashbacku (+ efekt „wyostrzenia” B) ---------------------------- */
#sony-cbw26.cbw26-lp .cbw26-amount { display: flex; flex-direction: column; line-height: 1; color: var(--ink); }
#sony-cbw26.cbw26-lp .cbw26-amount-val {
  font-size: 34px;
  font-weight: 750;
  letter-spacing: -0.035em;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
#sony-cbw26.cbw26-lp .cbw26-amount-lbl { font-size: 14px; font-weight: 500; color: var(--muted); margin: 0 0 6px; } /* „Zwrot” nad kwota (uwagi Sony 09-24) */
#sony-cbw26.cbw26-lp .cbw26-amount--xl .cbw26-amount-val { font-size: clamp(48px, 5cqw, 72px); }
#sony-cbw26.cbw26-lp .cbw26-amount--xl .cbw26-amount-lbl { font-size: 18px; margin: 0 0 8px; }
#sony-cbw26.cbw26-lp .cbw26-amount--sm .cbw26-amount-val { font-size: 30px; }

#sony-cbw26.cbw26-lp [data-motion] .cbw26-amount-val,
#sony-cbw26.cbw26-lp .cbw26-hero-title-big[data-motion] {
  --mb: color-mix(in srgb, currentColor 30%, transparent);
  --mb2: color-mix(in srgb, currentColor 14%, transparent);
}
#sony-cbw26.cbw26-lp .cbw26-visible[data-motion] .cbw26-amount-val,
#sony-cbw26.cbw26-lp .cbw26-visible [data-motion] .cbw26-amount-val,
#sony-cbw26.cbw26-lp .cbw26-visible .cbw26-hero-title-big[data-motion],
#sony-cbw26.cbw26-lp .cbw26-visible.cbw26-hero-title-big[data-motion] {
  animation: cbw26-sharpen 1.1s cubic-bezier(.2, .7, .1, 1) both;
}
@keyframes cbw26-sharpen {
  0% {
    transform: translateX(-0.35em);
    text-shadow: 0.12em 0 0 var(--mb), 0.26em 0 0 var(--mb2), 0.44em 0 0 var(--mb2);
    opacity: 0.25;
  }
  45% { opacity: 1; }
  100% { transform: none; text-shadow: 0 0 0 transparent, 0 0 0 transparent, 0 0 0 transparent; opacity: 1; }
}

/* --- Ramka AF na packshotach (efekt C) ------------------------------------ */
#sony-cbw26.cbw26-lp .cbw26-af { position: absolute; inset: 10%; pointer-events: none; z-index: 2; }
#sony-cbw26.cbw26-lp .cbw26-af-c {
  position: absolute;
  width: 18px;
  height: 18px;
  border: 0 solid rgba(255, 255, 255, 0.75);
  opacity: 0;
  transition: transform .45s cubic-bezier(.2, .8, .2, 1), opacity .3s ease, border-color .25s ease;
}
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-af-c { border-color: rgba(17, 19, 24, 0.55); }
#sony-cbw26.cbw26-lp .cbw26-af-c--tl { top: 0; left: 0; border-top-width: 2px; border-left-width: 2px; transform: translate(-14px, -14px); }
#sony-cbw26.cbw26-lp .cbw26-af-c--tr { top: 0; right: 0; border-top-width: 2px; border-right-width: 2px; transform: translate(14px, -14px); }
#sony-cbw26.cbw26-lp .cbw26-af-c--bl { bottom: 0; left: 0; border-bottom-width: 2px; border-left-width: 2px; transform: translate(-14px, 14px); }
#sony-cbw26.cbw26-lp .cbw26-af-c--br { bottom: 0; right: 0; border-bottom-width: 2px; border-right-width: 2px; transform: translate(14px, 14px); }
@media (hover: hover) and (pointer: fine) {
  #sony-cbw26.cbw26-lp .cbw26-cam:hover .cbw26-af-c,
  #sony-cbw26.cbw26-lp .cbw26-lens:hover .cbw26-af-c,
  #sony-cbw26.cbw26-lp .cbw26-gm-banner:hover .cbw26-af-c {
    opacity: 1;
    transform: none;
    border-color: var(--af);
    transition-delay: 0s, 0s, .32s;
  }
}

/* --- Smugi swiatla (efekt A) ---------------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-trails { position: absolute; left: 0; right: 0; pointer-events: none; z-index: 1; opacity: var(--trail-opacity); }
#sony-cbw26.cbw26-lp .cbw26-trail {
  position: absolute;
  left: -30%;
  width: 90%;
  height: 2px;
  border-radius: 2px;
  transform: translate3d(calc(var(--p, 0) * 70%), 0, 0) scaleX(calc(0.35 + var(--p, 0) * 0.65));
  transform-origin: left center;
  will-change: transform;
}
#sony-cbw26.cbw26-lp .cbw26-trail::after {
  content: '';
  position: absolute;
  inset: -3px 0;
  border-radius: 6px;
  background: inherit;
  opacity: 0.35;
}
#sony-cbw26.cbw26-lp .cbw26-trail--red   { background: linear-gradient(90deg, transparent, var(--trail-red) 55%, #fff 92%, transparent); }
#sony-cbw26.cbw26-lp .cbw26-trail--amber { background: linear-gradient(90deg, transparent, var(--trail-amber) 60%, #fff4df 94%, transparent); }
#sony-cbw26.cbw26-lp .cbw26-trail--cyan  { background: linear-gradient(90deg, transparent, var(--trail-cyan) 60%, #eafaff 94%, transparent); }


/* --- Preloader ------------------------------------------------------------ */
#sony-cbw26.cbw26-lp .cbw26-preloader {
  position: absolute;
  inset: 0 0 auto 0;
  height: min(100%, 900px);
  z-index: 200;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 28px;
  background-color: #0b0d12;
  transition: opacity .5s ease, visibility .5s ease;
}
#sony-cbw26.cbw26-lp .cbw26-preloader-logo { width: 150px; height: auto; }
#sony-cbw26.cbw26-lp .cbw26-preloader-ring {
  display: block;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.15);
  border-top-color: var(--accent);
  animation: cbw26-spin .9s linear infinite;
}
@keyframes cbw26-spin { to { transform: rotate(360deg); } }
#sony-cbw26.cbw26-lp .cbw26-preloader--hidden { opacity: 0; visibility: hidden; }

/* --- Header --------------------------------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-header {
  position: relative;
  z-index: 100;
  color: #fff;
}
#sony-cbw26.cbw26-lp .cbw26-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  height: 84px;
  max-width: calc(var(--w-content) + var(--gutter) * 2);
  margin: 0 auto;
  padding: 0 var(--gutter);
}
#sony-cbw26.cbw26-lp .cbw26-header-left { display: flex; align-items: center; gap: 20px; min-width: 0; }
#sony-cbw26.cbw26-lp .cbw26-logo-sony { width: 132px; height: auto; }
#sony-cbw26.cbw26-lp .cbw26-header-right { display: block; color: #fff; }
#sony-cbw26.cbw26-lp .cbw26-header .cbw26-alpha-logo { width: 52px; margin: 0; color: #fff; }

/* --- Hero ----------------------------------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-hero {
  position: relative;
  margin-top: -84px;
  padding: calc(84px + clamp(40px, 5cqw, 84px)) 0 clamp(28px, 3cqw, 44px);
  min-height: clamp(640px, 50cqw, 900px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  background-color: #0b0d12;
  overflow: hidden;
  contain: paint;
}
#sony-cbw26.cbw26-lp .cbw26-hero-bg { position: absolute; inset: 0; z-index: 0; }
#sony-cbw26.cbw26-lp .cbw26-hero-bg picture { width: 100%; height: 100%; }
#sony-cbw26.cbw26-lp .cbw26-hero-bg-img {
  width: 100%;
  height: 112%;
  max-width: none;
  object-fit: cover;
  object-position: 42% 40%;
  transform: translate3d(0, calc(var(--hp, 0) * -6%), 0);
  will-change: transform;
}
#sony-cbw26.cbw26-lp .cbw26-hero-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(8, 10, 14, 0.9) 0%, rgba(8, 10, 14, 0.72) 30%, rgba(8, 10, 14, 0.18) 58%, rgba(8, 10, 14, 0.05) 100%),
    linear-gradient(180deg, rgba(8, 10, 14, 0.55) 0%, transparent 20%, transparent 46%, rgba(11, 13, 18, 0.55) 66%, rgba(11, 13, 18, 0.92) 84%, var(--canvas) 100%);
}
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-hero-bg::after {
  background:
    linear-gradient(90deg, rgba(8, 10, 14, 0.9) 0%, rgba(8, 10, 14, 0.72) 30%, rgba(8, 10, 14, 0.18) 58%, rgba(8, 10, 14, 0.05) 100%),
    linear-gradient(180deg, rgba(8, 10, 14, 0.55) 0%, transparent 20%, transparent 55%, rgba(8, 10, 14, 0.55) 100%);
}
#sony-cbw26.cbw26-lp .cbw26-hero-inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  align-items: end;
  gap: 32px;
}
#sony-cbw26.cbw26-lp .cbw26-hero-content { padding-bottom: clamp(8px, 2cqw, 36px); }
#sony-cbw26.cbw26-lp .cbw26-hero-title { display: flex; flex-direction: column; font-weight: 750; color: #fff; }
#sony-cbw26.cbw26-lp .cbw26-hero-title-top {
  font-size: clamp(52px, 6.2cqw, 96px);
  line-height: 0.95;
  letter-spacing: -0.04em;
}
#sony-cbw26.cbw26-lp .cbw26-hero-title-big {
  display: inline-flex;
  align-items: baseline;
  font-size: clamp(96px, 11.4cqw, 176px);
  line-height: 0.9;
  letter-spacing: -0.055em;
  font-variant-numeric: lining-nums;
  margin-top: 0.02em;
}
#sony-cbw26.cbw26-lp .cbw26-hero-title-do,
#sony-cbw26.cbw26-lp .cbw26-hero-title-zl { font-size: 0.42em; letter-spacing: -0.03em; }
#sony-cbw26.cbw26-lp .cbw26-hero-title-do {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  align-self: last baseline;
  line-height: 1;
  margin-right: 0.22em;
}
#sony-cbw26.cbw26-lp .cbw26-hero-sub {
  font-size: clamp(22px, 2.3cqw, 34px);
  font-weight: 450;
  line-height: 1.18;
  letter-spacing: -0.015em;
  color: #fff;
  max-width: 14em;
  margin-top: clamp(14px, 1.6cqw, 22px);
}
#sony-cbw26.cbw26-lp .cbw26-hero-date {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: clamp(16px, 1.8cqw, 24px);
  font-size: 17px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.82);
  font-variant-numeric: tabular-nums;
}
#sony-cbw26.cbw26-lp .cbw26-hero-date .cbw26-icon { width: 22px; height: 22px; color: rgba(255, 255, 255, 0.7); }
#sony-cbw26.cbw26-lp .cbw26-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 32px; margin-top: clamp(24px, 2.6cqw, 36px); }
#sony-cbw26.cbw26-lp .cbw26-hero .cbw26-link-arrow { color: #fff; border-color: rgba(255, 255, 255, 0.45); }

#sony-cbw26.cbw26-lp .cbw26-hero-media { position: relative; align-self: end; }
#sony-cbw26.cbw26-lp .cbw26-hero-cascade {
  position: relative;
  width: 100%;
  aspect-ratio: 5091 / 2675;
  margin-left: auto;
}
#sony-cbw26.cbw26-lp .cbw26-hero-cascade::after { /* cien gruntu pod grupa */
  content: '';
  position: absolute;
  left: 2%;
  right: -2%;
  bottom: -4%;
  height: 14%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0.7), transparent 70%);
  z-index: 0;
}
/* pieczec Sony Alpha nad kaskada */
#sony-cbw26.cbw26-lp .cbw26-seal {
  position: absolute;
  left: 79%;
  top: -2%;
  width: 21%;
  aspect-ratio: 1;
  z-index: 10;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 35%, #ffffff, #eef1f5);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
  container-type: inline-size;
  transform: translate3d(0, calc(var(--hp, 0) * -60px), 0);
}
#sony-cbw26.cbw26-lp .cbw26-seal-ring {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  animation: cbw26-seal-spin 28s linear infinite;
}
#sony-cbw26.cbw26-lp .cbw26-seal-text {
  fill: #3b424e;
  font-family: var(--font);
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
@keyframes cbw26-seal-spin { to { transform: rotate(360deg); } }
#sony-cbw26.cbw26-lp .cbw26-seal-center {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #0b0d12;
  line-height: 1;
}
#sony-cbw26.cbw26-lp .cbw26-seal-small { font-size: 9.5cqi; font-weight: 600; color: #4a515e; }
#sony-cbw26.cbw26-lp .cbw26-seal-big { font-size: 24cqi; font-weight: 800; letter-spacing: -0.04em; margin: 3cqi 0 2cqi; font-variant-numeric: tabular-nums; color: var(--accent); }
#sony-cbw26.cbw26-lp .cbw26-hero-item {
  position: absolute;
  display: block;
  transform: translate3d(0, calc(var(--hp, 0) * var(--d, 0.3) * -40px), 0);
  transition: filter .3s ease;
  will-change: transform;
}
#sony-cbw26.cbw26-lp .cbw26-hero-item-img { width: 100%; height: auto; }
@media (hover: hover) and (pointer: fine) {
  #sony-cbw26.cbw26-lp .cbw26-hero-item:hover { filter: brightness(1.12); }
}
#sony-cbw26.cbw26-lp .cbw26-hero-credit {
  position: relative;
  z-index: 2;
  margin-top: clamp(20px, 2.4cqw, 36px);
  font-size: 12px;
  color: rgba(255, 255, 255, 0.55);
  text-align: right;
}

/* smugi pod paskiem */
#sony-cbw26.cbw26-lp .cbw26-trails--strip { position: relative; left: auto; right: auto; height: 64px; margin-bottom: -64px; overflow: hidden; z-index: 1; }
#sony-cbw26.cbw26-lp .cbw26-trails--strip .cbw26-trail--red   { top: 14px; }
#sony-cbw26.cbw26-lp .cbw26-trails--strip .cbw26-trail--amber { top: 34px; width: 70%; left: -18%; transform: translate3d(calc(var(--p, 0) * 95%), 0, 0) scaleX(calc(0.3 + var(--p, 0) * 0.7)); }
#sony-cbw26.cbw26-lp .cbw26-trails--strip .cbw26-trail--cyan  { top: 52px; width: 60%; left: -8%; height: 1px; transform: translate3d(calc(var(--p, 0) * 120%), 0, 0); }

/* --- Jak odebrac ---------------------------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-steps-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  counter-reset: cbw26-step;
}
#sony-cbw26.cbw26-lp .cbw26-step { position: relative; padding-right: 12px; }
#sony-cbw26.cbw26-lp .cbw26-step-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  border: 1px solid var(--hairline-strong);
  background-color: var(--s1);
  color: var(--ink);
  margin-bottom: 22px;
  position: relative;
  z-index: 1;
  isolation: isolate;
}
#sony-cbw26.cbw26-lp .cbw26-step-icon .cbw26-icon { width: 30px; height: 30px; }
#sony-cbw26.cbw26-lp .cbw26-step:not(:last-child)::after { /* linia laczaca */
  content: '';
  position: absolute;
  top: 32px;
  left: 80px;
  right: 8px;
  height: 1px;
  background: linear-gradient(90deg, var(--hairline-strong), var(--hairline) 70%, transparent);
}
/* kroki zapalaja sie kolorami smug przy przewijaniu (--p z JS na liscie) */
#sony-cbw26.cbw26-lp .cbw26-step { --i: 0; --c1: var(--trail-red); --c2: var(--trail-amber); --ink-on: #fff;
  --l: clamp(0, calc((var(--p, 0) * 5 - 1 - 0.9 * var(--i)) * 2), 1);
  --f: clamp(0, calc((var(--p, 0) * 5 - 1.5 - 0.9 * var(--i)) / 0.9), 1); }
#sony-cbw26.cbw26-lp .cbw26-step:nth-child(2) { --i: 1; --c1: var(--trail-amber); --c2: var(--trail-cyan); --ink-on: #16110a; }
#sony-cbw26.cbw26-lp .cbw26-step:nth-child(3) { --i: 2; --c1: var(--trail-cyan); --c2: var(--trail-red); --ink-on: #07161c; }
#sony-cbw26.cbw26-lp .cbw26-step:nth-child(4) { --i: 3; --c1: var(--trail-red); --c2: var(--trail-cyan); --ink-on: #fff; }
#sony-cbw26.cbw26-lp .cbw26-step-icon { transition: color .35s ease, border-color .35s ease, box-shadow .35s ease; overflow: visible; }
#sony-cbw26.cbw26-lp .cbw26-step-icon::before {
  content: '';
  position: absolute;
  inset: -1px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--c1), color-mix(in srgb, var(--c1) 55%, #fff));
  opacity: var(--l);
  transform: scale(calc(0.6 + var(--l) * 0.4));
  z-index: -1;
}
#sony-cbw26.cbw26-lp .cbw26-step:nth-child(4) .cbw26-step-icon::before { background: linear-gradient(135deg, var(--trail-red), var(--trail-amber) 50%, var(--trail-cyan)); }
#sony-cbw26.cbw26-lp .cbw26-step-icon .cbw26-icon { position: relative; }
#sony-cbw26.cbw26-lp .cbw26-step--lit .cbw26-step-icon {
  color: var(--ink-on);
  border-color: transparent;
  box-shadow: 0 0 28px color-mix(in srgb, var(--c1) 45%, transparent);
}
#sony-cbw26.cbw26-lp .cbw26-step:not(:last-child)::before { /* wypelnienie linii gradientem */
  content: '';
  position: absolute;
  top: 32px;
  left: 80px;
  right: 8px;
  height: 2px;
  margin-top: -0.5px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--c1), var(--c2));
  transform: scaleX(var(--f));
  transform-origin: left center;
  z-index: 1;
}
#sony-cbw26.cbw26-lp .cbw26-step-title { font-size: 19px; font-weight: 650; letter-spacing: -0.012em; line-height: 1.25; margin-bottom: 8px; }
#sony-cbw26.cbw26-lp .cbw26-step-text { font-size: 15px; line-height: 1.55; color: var(--muted); max-width: 270px; }
#sony-cbw26.cbw26-lp .cbw26-extra {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: clamp(48px, 4.4cqw, 64px);
  border-radius: var(--radius);
  background-color: var(--s1);
  border: 1px solid var(--hairline);
  overflow: hidden;
}
#sony-cbw26.cbw26-lp .cbw26-extra-col {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 20px;
  padding: clamp(28px, 3cqw, 44px);
}
#sony-cbw26.cbw26-lp .cbw26-extra-col + .cbw26-extra-col { border-left: 1px solid var(--hairline); }
#sony-cbw26.cbw26-lp .cbw26-extra-icon { display: flex; color: var(--ink); }
#sony-cbw26.cbw26-lp .cbw26-extra-icon .cbw26-icon { width: 44px; height: 44px; }
#sony-cbw26.cbw26-lp .cbw26-extra-body { display: flex; flex-direction: column; align-items: flex-start; }
#sony-cbw26.cbw26-lp .cbw26-extra-title { font-size: 22px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; margin: 6px 0 18px; }
#sony-cbw26.cbw26-lp .cbw26-extra-text { font-size: 15px; line-height: 1.6; color: var(--muted); margin-bottom: 22px; max-width: 460px; }
#sony-cbw26.cbw26-lp .cbw26-help-list { counter-reset: cbw26-li; display: grid; gap: 12px; }
#sony-cbw26.cbw26-lp .cbw26-help-list li {
  counter-increment: cbw26-li;
  display: grid;
  grid-template-columns: 30px 1fr;
  align-items: center;
  gap: 14px;
  font-size: 16px;
  line-height: 1.5;
  color: var(--soft);
}
#sony-cbw26.cbw26-lp .cbw26-help-list li::before {
  content: counter(cbw26-li);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  font-size: 13px;
  font-weight: 650;
  color: var(--ink);
  background-color: var(--s3);
  border: 1px solid var(--hairline-strong);
}

/* --- Aparaty (bento) ------------------------------------------------------ */
#sony-cbw26.cbw26-lp .cbw26-cams-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 1fr);
  grid-auto-rows: minmax(0, auto);
  gap: 16px;
}
#sony-cbw26.cbw26-lp .cbw26-cam {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  align-items: center;
  gap: 8px;
  padding: 24px;
  border-radius: var(--radius);
  background-color: var(--s2);
  border: 1px solid var(--hairline);
  overflow: hidden;
  transition: border-color .25s ease;
}
#sony-cbw26.cbw26-lp .cbw26-cam:hover { border-color: var(--hairline-strong); }
#sony-cbw26.cbw26-lp .cbw26-cam--big {
  grid-row: span 2;
  grid-template-columns: minmax(0, 1fr);
  align-content: space-between;
  padding: clamp(28px, 3cqw, 44px);
  background:
    radial-gradient(70% 60% at 85% 70%, rgba(var(--accent-rgb), 0.16), transparent 70%),
    radial-gradient(60% 50% at 20% 110%, rgba(60, 200, 245, 0.08), transparent 70%),
    var(--s2);
}
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-cam--big {
  background:
    radial-gradient(70% 60% at 85% 70%, rgba(var(--accent-rgb), 0.07), transparent 70%),
    var(--s2);
}
#sony-cbw26.cbw26-lp .cbw26-cam-body { position: relative; z-index: 3; display: flex; flex-direction: column; align-items: flex-start; }
#sony-cbw26.cbw26-lp .cbw26-cam-name { font-size: 24px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.1; }
#sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-cam-name { font-size: clamp(40px, 3.8cqw, 56px); letter-spacing: -0.03em; }
/* maly aparat: nazwa + kit + kod na cala szerokosc karty; kit w jednej linii (uwagi Sony 09-24) */
#sony-cbw26.cbw26-lp .cbw26-cam-head { grid-column: 1 / -1; align-self: start; }
#sony-cbw26.cbw26-lp .cbw26-cam-suffix { display: block; font-size: 14px; font-weight: 500; letter-spacing: 0; color: var(--soft); margin-top: 4px; white-space: nowrap; }
#sony-cbw26.cbw26-lp .cbw26-cam-code { font-size: 13px; color: var(--muted); margin-top: 6px; letter-spacing: 0.01em; }
#sony-cbw26.cbw26-lp .cbw26-cam .cbw26-amount { margin-top: 18px; }
#sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-amount { margin-top: clamp(22px, 2.4cqw, 34px); }
#sony-cbw26.cbw26-lp .cbw26-cam-lead { font-size: 15px; line-height: 1.4; color: var(--soft); margin: 12px 0 18px; }
#sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-cam-lead { font-size: 20px; font-weight: 600; color: var(--ink); margin: clamp(20px, 2cqw, 28px) 0 8px; }
#sony-cbw26.cbw26-lp .cbw26-cam-desc { font-size: 15px; line-height: 1.55; color: var(--muted); max-width: 360px; }
#sony-cbw26.cbw26-lp .cbw26-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 26px; }
#sony-cbw26.cbw26-lp .cbw26-chip {
  font-size: 13px;
  font-weight: 500;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid var(--hairline-strong);
  color: var(--soft);
}
#sony-cbw26.cbw26-lp .cbw26-cam-media { position: relative; display: block; align-self: center; }
#sony-cbw26.cbw26-lp .cbw26-cam-img { width: 100%; height: auto; transition: transform .5s cubic-bezier(.2, .8, .2, 1); }
#sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-cam-body { max-width: 50%; }
#sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-cam-media {
  position: absolute;
  right: -4%;
  bottom: 9%;
  width: 60%;
  z-index: 1;
}
@media (hover: hover) and (pointer: fine) {
  #sony-cbw26.cbw26-lp .cbw26-cam:hover .cbw26-cam-img { transform: scale(1.03); }
}

/* --- Obiektywy ------------------------------------------------------------ */
#sony-cbw26.cbw26-lp .cbw26-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 20px;
}
#sony-cbw26.cbw26-lp .cbw26-pills { display: flex; flex-wrap: wrap; gap: 8px; }
#sony-cbw26.cbw26-lp .cbw26-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 16px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--hairline-strong);
  font-size: 14px;
  font-weight: 600;
  color: var(--soft);
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
#sony-cbw26.cbw26-lp .cbw26-pill:hover { border-color: var(--ink); color: var(--ink); }
#sony-cbw26.cbw26-lp .cbw26-pill-count { font-size: 12px; font-weight: 500; color: var(--muted); font-variant-numeric: tabular-nums; }
#sony-cbw26.cbw26-lp .cbw26-pill--active { background-color: var(--accent); border-color: var(--accent); color: #fff; }
#sony-cbw26.cbw26-lp .cbw26-pill--active:hover { color: #fff; border-color: var(--accent); }
#sony-cbw26.cbw26-lp .cbw26-pill--active .cbw26-pill-count { color: rgba(255, 255, 255, 0.78); }

#sony-cbw26.cbw26-lp .cbw26-sort { position: relative; display: inline-flex; align-items: center; gap: 12px; font-size: 14px; color: var(--muted); }
#sony-cbw26.cbw26-lp .cbw26-sort-select {
  -webkit-appearance: none;
  appearance: none;
  min-height: 40px;
  padding: 8px 40px 8px 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--hairline-strong);
  background-color: var(--s1);
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
  cursor: pointer;
}
#sony-cbw26.cbw26-lp .cbw26-sort-select:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
#sony-cbw26.cbw26-lp .cbw26-filter { position: relative; display: none; align-items: center; }
#sony-cbw26.cbw26-lp .cbw26-filter-select {
  -webkit-appearance: none;
  appearance: none;
  min-height: 40px;
  padding: 8px 40px 8px 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--hairline-strong);
  background-color: var(--s1);
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
  cursor: pointer;
}
#sony-cbw26.cbw26-lp .cbw26-filter-select:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
#sony-cbw26.cbw26-lp .cbw26-icon--sort { position: absolute; right: 10px; width: 20px; height: 20px; pointer-events: none; color: var(--ink); }

#sony-cbw26.cbw26-lp .cbw26-gm-banner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr);
  align-items: center;
  min-height: 250px;
  margin-bottom: 16px;
  border-radius: var(--radius);
  overflow: hidden;
  color: #fff;
  background-color: #10131a;
  contain: paint;
}
#sony-cbw26.cbw26-lp .cbw26-gm-banner-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: 50% 40%;
}
#sony-cbw26.cbw26-lp .cbw26-gm-banner::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(10, 12, 16, 0.35) 0%, rgba(10, 12, 16, 0.55) 40%, rgba(10, 12, 16, 0.82) 70%),
    radial-gradient(60% 90% at 22% 60%, rgba(216, 94, 0, 0.32), transparent 70%);
}
#sony-cbw26.cbw26-lp .cbw26-gm-banner-media { position: relative; z-index: 2; display: block; padding: 20px 0 20px clamp(20px, 3cqw, 48px); }
#sony-cbw26.cbw26-lp .cbw26-gm-banner-lens { width: min(100%, 440px); height: auto; margin: 0 auto; filter: drop-shadow(0 18px 30px rgba(0, 0, 0, 0.55)); }
#sony-cbw26.cbw26-lp .cbw26-gm-banner-body { position: relative; z-index: 2; padding: 32px clamp(24px, 3.4cqw, 56px) 32px 8px; display: flex; flex-direction: column; align-items: flex-start; }
#sony-cbw26.cbw26-lp .cbw26-gm-banner-logo { width: clamp(150px, 13cqw, 200px); height: auto; margin-bottom: 18px; }
#sony-cbw26.cbw26-lp .cbw26-gm-banner-kicker { font-size: 16px; font-weight: 600; color: rgba(255, 255, 255, 0.86); }
#sony-cbw26.cbw26-lp .cbw26-gm-banner-title { font-size: clamp(26px, 2.4cqw, 36px); font-weight: 700; letter-spacing: -0.022em; line-height: 1.1; margin-top: 12px; }
#sony-cbw26.cbw26-lp .cbw26-amount--banner { color: #fff; margin: 16px 0 22px; align-items: flex-start; gap: 8px; }
#sony-cbw26.cbw26-lp .cbw26-amount--banner .cbw26-amount-val { font-size: clamp(48px, 4.6cqw, 68px); }
#sony-cbw26.cbw26-lp .cbw26-amount--banner .cbw26-amount-lbl { font-size: 20px; color: rgba(255, 255, 255, 0.8); margin: 0; }
#sony-cbw26.cbw26-lp .cbw26-gm-banner--hidden { display: none; }

#sony-cbw26.cbw26-lp .cbw26-lens-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
#sony-cbw26.cbw26-lp .cbw26-lens {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  grid-template-areas:
    "head head"
    "amount media"
    "lead lead"
    "cta cta";
  grid-template-rows: auto auto 1fr auto;
  column-gap: 8px;
  padding: 20px;
  border-radius: var(--radius);
  background-color: var(--s2);
  border: 1px solid var(--hairline);
  transition: border-color .25s ease;
}
#sony-cbw26.cbw26-lp .cbw26-lens:hover { border-color: var(--hairline-strong); }
#sony-cbw26.cbw26-lp .cbw26-lens--hidden { display: none; }
#sony-cbw26.cbw26-lp .cbw26-lens-head { grid-area: head; margin-bottom: 14px; min-height: 3.4em; }
#sony-cbw26.cbw26-lp .cbw26-lens-name { font-size: 17px; font-weight: 650; letter-spacing: -0.012em; line-height: 1.25; }
#sony-cbw26.cbw26-lp .cbw26-lens-code { display: flex; align-items: center; gap: 8px; margin-top: 6px; font-size: 12.5px; color: var(--muted); letter-spacing: 0.01em; }
#sony-cbw26.cbw26-lp .cbw26-lens-badge { width: auto; height: 17px; flex: none; }
#sony-cbw26.cbw26-lp .cbw26-lens-series { font-weight: 600; color: var(--soft); }
#sony-cbw26.cbw26-lp .cbw26-lens-sep { width: 3px; height: 3px; border-radius: 50%; background-color: var(--hairline-strong); }
#sony-cbw26.cbw26-lp .cbw26-pill-badge { width: auto; height: 16px; flex: none; }
#sony-cbw26.cbw26-lp .cbw26-lens .cbw26-amount { grid-area: amount; align-self: center; }
#sony-cbw26.cbw26-lp .cbw26-lens-media { grid-area: media; position: relative; display: block; align-self: center; }
#sony-cbw26.cbw26-lp .cbw26-lens-media { aspect-ratio: 46 / 34; }
#sony-cbw26.cbw26-lp .cbw26-lens-img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: contain; transition: transform .5s cubic-bezier(.2, .8, .2, 1); }
@media (hover: hover) and (pointer: fine) {
  #sony-cbw26.cbw26-lp .cbw26-lens:hover .cbw26-lens-img { transform: scale(1.04); }
}
#sony-cbw26.cbw26-lp .cbw26-lens-lead { grid-area: lead; font-size: 14px; line-height: 1.45; color: var(--soft); margin-top: 14px; }
#sony-cbw26.cbw26-lp .cbw26-lens .cbw26-btn { grid-area: cta; justify-self: start; margin-top: 18px; }

/* --- Inspiracje: pas ze zdjeciem ----------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-band {
  position: relative;
  margin-top: clamp(72px, 7cqw, 120px);
  min-height: clamp(560px, 52cqw, 820px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  background-color: #0b0d12;
  overflow: hidden;
  contain: paint;
}
#sony-cbw26.cbw26-lp .cbw26-band-bg { position: absolute; inset: 0; }
#sony-cbw26.cbw26-lp .cbw26-band-img {
  position: absolute;
  left: 0;
  top: -10%;
  width: 100%;
  height: 120%;
  max-width: none;
  object-fit: cover;
  object-position: 30% 40%;
  transform: translate3d(0, calc(var(--pp, 0) * 8%), 0);
  will-change: transform;
}
#sony-cbw26.cbw26-lp .cbw26-band-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(270deg, rgba(8, 10, 14, 0.9) 0%, rgba(8, 10, 14, 0.66) 34%, rgba(8, 10, 14, 0.1) 62%, transparent 100%),
    linear-gradient(180deg, var(--canvas) 0%, rgba(11, 13, 18, 0) 18%, rgba(11, 13, 18, 0) 62%, var(--canvas) 100%);
}
#sony-cbw26.cbw26-lp .cbw26-band-inner { position: relative; z-index: 2; padding-top: 80px; padding-bottom: 160px; }
#sony-cbw26.cbw26-lp .cbw26-band-content { max-width: 560px; margin-left: auto; }
#sony-cbw26.cbw26-lp .cbw26-band-kicker { font-size: 18px; font-weight: 600; color: rgba(255, 255, 255, 0.8); margin-bottom: 14px; }
#sony-cbw26.cbw26-lp .cbw26-band-title {
  font-size: clamp(44px, 5.4cqw, 84px);
  font-weight: 750;
  line-height: 0.98;
  letter-spacing: -0.04em;
  padding-bottom: 0.2em; /* ogonki g, ę, y w ostatniej linii nie ucinane przez background-clip */
  margin-bottom: -0.14em;
  color: #fff;
}
#sony-cbw26.cbw26-lp.cbw26-theme-dark .cbw26-band-title,
#sony-cbw26.cbw26-lp.cbw26-theme-orange .cbw26-band-title {
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 20%, var(--g3) 36%, var(--g1) 50%, var(--g4) 66%, var(--g1) 84%, var(--g1) 100%);
  background-size: 250% 100%;
  background-position: calc(100% - var(--p, 0) * 100%) 0;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
#sony-cbw26.cbw26-lp .cbw26-band-text { font-size: clamp(17px, 1.4cqw, 20px); line-height: 1.55; color: rgba(255, 255, 255, 0.84); margin-top: 22px; max-width: 30em; }
#sony-cbw26.cbw26-lp .cbw26-band-product {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-top: 30px;
  padding: 10px 20px 10px 12px;
  border-radius: var(--radius);
  background-color: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.16);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: background-color .2s ease, border-color .2s ease;
}
#sony-cbw26.cbw26-lp .cbw26-band-product:hover { background-color: rgba(255, 255, 255, 0.14); border-color: rgba(255, 255, 255, 0.3); }
#sony-cbw26.cbw26-lp .cbw26-band-product:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
#sony-cbw26.cbw26-lp .cbw26-band-product-img { width: 84px; height: auto; }
#sony-cbw26.cbw26-lp .cbw26-band-product-txt { display: flex; flex-direction: column; gap: 2px; }
#sony-cbw26.cbw26-lp .cbw26-band-product-name { font-size: 15px; font-weight: 650; }
#sony-cbw26.cbw26-lp .cbw26-band-product-cb { font-size: 14px; color: rgba(255, 255, 255, 0.72); }
#sony-cbw26.cbw26-lp .cbw26-band-product .cbw26-icon { width: 20px; height: 20px; transition: transform .2s ease; }
#sony-cbw26.cbw26-lp .cbw26-band-product:hover .cbw26-icon { transform: translateX(4px); }
#sony-cbw26.cbw26-lp .cbw26-band-credit {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 150px;
  z-index: 2;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.5);
  text-align: left;
}

/* --- Inspiracje: karty (wjezdzaja na pas) --------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-insp { position: relative; z-index: 3; margin-top: -120px; }
#sony-cbw26.cbw26-lp .cbw26-insp-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
#sony-cbw26.cbw26-lp .cbw26-insp-card {
  display: flex;
  flex-direction: column;
  border-radius: var(--radius);
  overflow: hidden;
  background-color: var(--s2);
  border: 1px solid var(--hairline);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
}
#sony-cbw26.cbw26-lp .cbw26-insp-media { position: relative; aspect-ratio: 3 / 2; overflow: hidden; }
#sony-cbw26.cbw26-lp .cbw26-insp-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.2, .8, .2, 1);
}
@media (hover: hover) and (pointer: fine) {
  #sony-cbw26.cbw26-lp .cbw26-insp-card:hover .cbw26-insp-img { transform: scale(1.04); }
}
#sony-cbw26.cbw26-lp .cbw26-insp-body { display: flex; flex-direction: column; align-items: flex-start; flex: 1; padding: 24px; }
#sony-cbw26.cbw26-lp .cbw26-insp-kicker { font-size: 14px; font-weight: 600; color: var(--muted); margin-bottom: 8px; }
#sony-cbw26.cbw26-lp .cbw26-insp-title { font-size: 22px; font-weight: 700; letter-spacing: -0.018em; line-height: 1.2; }
#sony-cbw26.cbw26-lp .cbw26-insp-text { font-size: 15px; line-height: 1.55; color: var(--muted); margin: 10px 0 18px; flex: 1; }
#sony-cbw26.cbw26-lp .cbw26-insp .cbw26-link-arrow { font-size: 14px; }

/* --- Mini galeria: zdjecie kafelka otwiera lightbox ---------------------- */
#sony-cbw26.cbw26-lp .cbw26-insp-media { display: block; width: 100%; cursor: zoom-in; }
#sony-cbw26.cbw26-lp .cbw26-insp-media:focus-visible { outline: 2px solid var(--accent); outline-offset: -3px; }
#sony-cbw26.cbw26-lp .cbw26-insp-badge {
  position: absolute;
  left: 12px;
  bottom: 12px;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px 6px 8px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  color: #fff;
  background-color: rgba(8, 10, 14, 0.66);
  transition: background-color .2s ease;
}
#sony-cbw26.cbw26-lp .cbw26-insp-badge .cbw26-icon { width: 18px; height: 18px; }
#sony-cbw26.cbw26-lp .cbw26-insp-media:hover .cbw26-insp-badge { background-color: var(--accent); }

/* Natywny <dialog> + showModal(): warstwa top-layer, wiec position:fixed liczy sie
   od okna, a nie od slotu z container-type. Zawsze ciemny, niezaleznie od motywu. */
#sony-cbw26.cbw26-lp .cbw26-lb {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  overscroll-behavior: contain;
  color: #fff;
  background-color: rgba(6, 8, 12, 0.96);
  --ink: #fff;
  --hairline-strong: rgba(255, 255, 255, 0.3);
  container: cbw26-lb / size;
}
#sony-cbw26.cbw26-lp .cbw26-lb[open] { position: fixed; inset: 0; display: flex; flex-direction: column; animation: cbw26-lb-in .25s ease; }
#sony-cbw26.cbw26-lp .cbw26-lb::backdrop { background-color: rgba(6, 8, 12, 0.6); }
@keyframes cbw26-lb-in { from { opacity: 0; } to { opacity: 1; } }
#sony-cbw26.cbw26-lp .cbw26-lb-bar { flex: none; display: flex; align-items: center; justify-content: space-between; padding: 16px 24px; }
#sony-cbw26.cbw26-lp .cbw26-lb-count { font-size: 14px; font-weight: 600; color: rgba(255, 255, 255, 0.7); font-variant-numeric: tabular-nums; }
#sony-cbw26.cbw26-lp .cbw26-lb-close,
#sony-cbw26.cbw26-lp .cbw26-lb-nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  color: #fff;
  background-color: rgba(255, 255, 255, 0.08);
  cursor: pointer;
  transition: background-color .2s ease;
}
#sony-cbw26.cbw26-lp .cbw26-lb-close:hover,
#sony-cbw26.cbw26-lp .cbw26-lb-nav:hover { background-color: rgba(255, 255, 255, 0.18); }
#sony-cbw26.cbw26-lp .cbw26-lb-close:focus-visible,
#sony-cbw26.cbw26-lp .cbw26-lb-nav:focus-visible,
#sony-cbw26.cbw26-lp .cbw26-lb .cbw26-link-arrow:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
#sony-cbw26.cbw26-lp .cbw26-lb-close .cbw26-icon,
#sony-cbw26.cbw26-lp .cbw26-lb-nav .cbw26-icon { width: 28px; height: 28px; }
#sony-cbw26.cbw26-lp .cbw26-lb--single .cbw26-lb-nav,
#sony-cbw26.cbw26-lp .cbw26-lb--single .cbw26-lb-count { visibility: hidden; }
#sony-cbw26.cbw26-lp .cbw26-lb-stage {
  flex: 1;
  min-height: 0;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 48px;
  align-items: center;
  gap: 24px;
  padding: 0 24px 24px;
}
/* wysokosc znana (flex w oknie), wiec kontener size: zdjecie + podpis mieszcza sie w pudelku */
#sony-cbw26.cbw26-lp .cbw26-lb-slides { position: relative; height: 100%; container-type: size; touch-action: pan-y; --lb-cap: 64px; }
#sony-cbw26.cbw26-lp .cbw26-lb-slide { position: absolute; inset: 0; display: none; flex-direction: column; align-items: center; justify-content: center; margin: 0; }
#sony-cbw26.cbw26-lp .cbw26-lb-slide--on { display: flex; animation: cbw26-lb-in .3s ease; }
#sony-cbw26.cbw26-lp .cbw26-lb-img,
#sony-cbw26.cbw26-lp .cbw26-lb-cap { width: min(100cqw, calc((100cqh - var(--lb-cap)) * var(--ar))); }
#sony-cbw26.cbw26-lp .cbw26-lb-img { height: auto; max-width: none; aspect-ratio: var(--ar); border-radius: var(--radius-sm); background-color: #11141b; }
#sony-cbw26.cbw26-lp .cbw26-lb-cap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 4px 24px;
  min-height: var(--lb-cap);
  padding-top: 12px;
}
#sony-cbw26.cbw26-lp .cbw26-lb-txt { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; }
#sony-cbw26.cbw26-lp .cbw26-lb-name { font-size: 16px; font-weight: 650; }
#sony-cbw26.cbw26-lp .cbw26-lb-cb { font-size: 14px; color: rgba(255, 255, 255, 0.7); }
#sony-cbw26.cbw26-lp .cbw26-lb .cbw26-link-arrow { font-size: 14px; }
@container cbw26-lb (max-width: 700px) {
  #sony-cbw26.cbw26-lp .cbw26-lb-bar { padding: 8px 12px; }
  #sony-cbw26.cbw26-lp .cbw26-lb-stage { position: relative; grid-template-columns: minmax(0, 1fr); padding: 0 12px 12px; }
  #sony-cbw26.cbw26-lp .cbw26-lb-slides { --lb-cap: 92px; }
  #sony-cbw26.cbw26-lp .cbw26-lb-cap { flex-direction: column; align-items: flex-start; justify-content: flex-start; }
  #sony-cbw26.cbw26-lp .cbw26-lb-nav { position: absolute; z-index: 2; top: calc(50% - 46px - 20px); width: 40px; height: 40px; background-color: rgba(8, 10, 14, 0.55); }
  #sony-cbw26.cbw26-lp .cbw26-lb-nav--prev { left: 18px; }
  #sony-cbw26.cbw26-lp .cbw26-lb-nav--next { right: 18px; }
}

/* --- Final CTA ------------------------------------------------------------ */
#sony-cbw26.cbw26-lp .cbw26-final {
  position: relative;
  margin-top: clamp(80px, 8cqw, 128px);
  padding: clamp(80px, 8cqw, 128px) 0 clamp(88px, 9cqw, 140px);
  text-align: center;
  overflow: hidden;
  contain: paint;
  background:
    radial-gradient(60% 80% at 50% 110%, rgba(var(--accent-rgb), 0.22), transparent 70%),
    radial-gradient(40% 60% at 85% 0%, rgba(60, 200, 245, 0.08), transparent 70%),
    var(--canvas);
  border-top: 1px solid var(--hairline);
}
#sony-cbw26.cbw26-lp .cbw26-final-inner { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; }
#sony-cbw26.cbw26-lp .cbw26-alpha-logo { display: block; width: clamp(76px, 7cqw, 104px); height: auto; color: var(--ink); margin-bottom: clamp(48px, 5cqw, 72px); }
#sony-cbw26.cbw26-lp .cbw26-alpha-logo * { fill: currentColor; }
#sony-cbw26.cbw26-lp .cbw26-final-title { display: flex; flex-direction: column; align-items: center; color: var(--ink); }
#sony-cbw26.cbw26-lp .cbw26-final-kicker { font-size: clamp(30px, 3.2cqw, 46px); font-weight: 700; letter-spacing: -0.03em; line-height: 1; }
#sony-cbw26.cbw26-lp .cbw26-final-amount { position: relative; display: block; margin-top: clamp(4px, 0.6cqw, 10px); }
#sony-cbw26.cbw26-lp .cbw26-final-num {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: baseline;
  font-size: clamp(88px, 12cqw, 190px);
  font-weight: 750;
  line-height: 0.92;
  letter-spacing: -0.055em;
}
#sony-cbw26.cbw26-lp .cbw26-final-do, #sony-cbw26.cbw26-lp .cbw26-final-zl { font-size: 0.4em; letter-spacing: -0.03em; }
#sony-cbw26.cbw26-lp .cbw26-final-do { margin-right: 0.2em; }
/* smugi za cyframi, na cala szerokosc sekcji */
#sony-cbw26.cbw26-lp .cbw26-trails--final { left: -100cqw; right: -100cqw; top: 58%; height: 60px; z-index: 1; }
#sony-cbw26.cbw26-lp .cbw26-trails--final .cbw26-trail { left: 20%; width: 45%; }
#sony-cbw26.cbw26-lp .cbw26-trails--final .cbw26-trail--red   { top: 0; }
#sony-cbw26.cbw26-lp .cbw26-trails--final .cbw26-trail--amber { top: 22px; left: 26%; width: 40%; }
#sony-cbw26.cbw26-lp .cbw26-trails--final .cbw26-trail--cyan  { top: 44px; left: 32%; width: 36%; height: 1px; }
#sony-cbw26.cbw26-lp .cbw26-final-sub { font-size: clamp(22px, 2.2cqw, 32px); font-weight: 500; letter-spacing: -0.015em; line-height: 1.25; color: var(--ink); margin-top: clamp(20px, 2cqw, 30px); text-wrap: balance; }
#sony-cbw26.cbw26-lp .cbw26-final-dates { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px 14px; margin-top: 14px; font-size: 17px; color: var(--muted); }
#sony-cbw26.cbw26-lp .cbw26-final-dates strong { font-weight: 650; color: var(--soft); }
#sony-cbw26.cbw26-lp .cbw26-final-dot { width: 4px; height: 4px; border-radius: 50%; background-color: var(--hairline-strong); }
#sony-cbw26.cbw26-lp .cbw26-final-actions { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 16px 32px; margin-top: clamp(34px, 3.4cqw, 48px); }

/* --- Footer (ciemny w obu motywach) --------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-footer { background-color: #07080b; color: #fff; border-top: 1px solid rgba(255, 255, 255, 0.07); }
#sony-cbw26.cbw26-lp .cbw26-footer-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding-top: 36px;
  padding-bottom: 28px;
}
#sony-cbw26.cbw26-lp .cbw26-footer-sony-img { width: 100px; height: auto; }
#sony-cbw26.cbw26-lp .cbw26-footer-copy { font-size: 12px; color: rgba(255, 255, 255, 0.45); text-align: center; }

/* --- Scroll reveal -------------------------------------------------------- */
#sony-cbw26.cbw26-lp .cbw26-reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s cubic-bezier(.2, .7, .2, 1); }
#sony-cbw26.cbw26-lp .cbw26-reveal.cbw26-visible { opacity: 1; transform: none; }
#sony-cbw26.cbw26-lp .cbw26-reveal-d1 { transition-delay: .08s; }
#sony-cbw26.cbw26-lp .cbw26-reveal-d2 { transition-delay: .16s; }
#sony-cbw26.cbw26-lp .cbw26-reveal-d3 { transition-delay: .24s; }
#sony-cbw26.cbw26-lp.cbw26-no-js .cbw26-reveal { opacity: 1; transform: none; }


/* ==========================================================================
   Motyw jasny — wyciszenie: bez kolorowych teł sekcji, bez mgieł, lekkie cienie
   ========================================================================== */
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-cam--big { background: var(--s2); }
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-step--lit .cbw26-step-icon { box-shadow: none; }
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-step-icon::before { background: var(--c1); }
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-step:nth-child(4) .cbw26-step-icon::before { background: var(--trail-red); }
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-band-bg::after {
  background: linear-gradient(270deg, rgba(8, 10, 14, 0.82) 0%, rgba(8, 10, 14, 0.55) 34%, rgba(8, 10, 14, 0.08) 62%, transparent 100%);
}
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-insp-card { box-shadow: 0 10px 30px rgba(17, 19, 24, 0.08); }
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-final { background: var(--canvas); }
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-cam:hover,
#sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-lens:hover { border-color: #b9c1cd; }

/* ==========================================================================
   Responsywnosc (kontener LP)
   ========================================================================== */
@container cbw26-lp (max-width: 1230px) {
  #sony-cbw26.cbw26-lp .cbw26-lens-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  #sony-cbw26.cbw26-lp .cbw26-cams-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #sony-cbw26.cbw26-lp .cbw26-cam--big { grid-column: 1 / -1; grid-row: auto; min-height: 460px; }
  #sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-cam-media { width: 50%; right: 2%; }
}

@container cbw26-lp (max-width: 960px) {
  #sony-cbw26.cbw26-lp .cbw26-header-inner { height: 64px; }
  #sony-cbw26.cbw26-lp .cbw26-logo-sony { width: 104px; }
  #sony-cbw26.cbw26-lp .cbw26-header .cbw26-alpha-logo { width: 42px; }
  #sony-cbw26.cbw26-lp .cbw26-hero { margin-top: -64px; padding-top: calc(64px + 36px); min-height: 0; }
  #sony-cbw26.cbw26-lp .cbw26-hero-inner { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  #sony-cbw26.cbw26-lp .cbw26-hero-bg::after {
    background: linear-gradient(180deg, rgba(8, 10, 14, 0.78) 0%, rgba(8, 10, 14, 0.62) 45%, rgba(8, 10, 14, 0.4) 70%, rgba(11, 13, 18, 0.95) 100%);
  }
  #sony-cbw26.cbw26-lp.cbw26-theme-light .cbw26-hero-bg::after {
    background: linear-gradient(180deg, rgba(8, 10, 14, 0.78) 0%, rgba(8, 10, 14, 0.62) 45%, rgba(8, 10, 14, 0.4) 70%, rgba(8, 10, 14, 0.7) 100%);
  }
  #sony-cbw26.cbw26-lp .cbw26-hero-bg-img { object-position: 50% 40%; }
  #sony-cbw26.cbw26-lp .cbw26-hero-media { max-width: 640px; width: 100%; margin: 0 auto; }
  #sony-cbw26.cbw26-lp .cbw26-steps-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 24px; }
  #sony-cbw26.cbw26-lp .cbw26-step:nth-child(2)::after, #sony-cbw26.cbw26-lp .cbw26-step:nth-child(2)::before { display: none; }
  #sony-cbw26.cbw26-lp .cbw26-lens-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  #sony-cbw26.cbw26-lp .cbw26-extra { grid-template-columns: minmax(0, 1fr); }
  #sony-cbw26.cbw26-lp .cbw26-extra-col + .cbw26-extra-col { border-left: 0; border-top: 1px solid var(--hairline); }
  #sony-cbw26.cbw26-lp .cbw26-insp-grid { grid-template-columns: minmax(0, 1fr); }
  #sony-cbw26.cbw26-lp .cbw26-insp-card { flex-direction: row; }
  #sony-cbw26.cbw26-lp .cbw26-insp-media { flex: 0 0 42%; aspect-ratio: auto; min-height: 200px; }
  #sony-cbw26.cbw26-lp .cbw26-band { min-height: 0; }
  #sony-cbw26.cbw26-lp .cbw26-band-inner { padding-top: 120px; padding-bottom: 180px; }
  #sony-cbw26.cbw26-lp .cbw26-band-bg::after {
    background:
      linear-gradient(180deg, var(--canvas) 0%, rgba(8, 10, 14, 0.5) 20%, rgba(8, 10, 14, 0.55) 55%, var(--canvas) 100%);
  }
  #sony-cbw26.cbw26-lp .cbw26-band-credit { bottom: 140px; }
  #sony-cbw26.cbw26-lp .cbw26-insp { margin-top: -100px; }
}

@container cbw26-lp (max-width: 700px) {
  #sony-cbw26.cbw26-lp .cbw26-hero-title-big { font-size: clamp(52px, calc((100cqw - 40px) / 4.6), 120px); }
  #sony-cbw26.cbw26-lp .cbw26-hero-title-top { font-size: clamp(46px, 12cqw, 64px); }
  #sony-cbw26.cbw26-lp .cbw26-hero-actions { flex-direction: column; align-items: stretch; gap: 14px; }
  #sony-cbw26.cbw26-lp .cbw26-hero-actions .cbw26-btn { width: 100%; }
  #sony-cbw26.cbw26-lp .cbw26-hero-actions .cbw26-link-arrow { align-self: center; }
  #sony-cbw26.cbw26-lp .cbw26-cams-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  #sony-cbw26.cbw26-lp .cbw26-cam--big { min-height: 0; display: flex; flex-direction: column; align-items: stretch; align-content: normal; justify-content: flex-start; padding: 24px 22px 28px; }
  #sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-cam-body { max-width: none; }
  #sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-cam-media { position: relative; width: 84%; right: auto; bottom: auto; top: auto; transform: none; order: -1; margin: 4px auto 20px; }
  #sony-cbw26.cbw26-lp .cbw26-cam--big .cbw26-amount { margin-top: 18px; }
  #sony-cbw26.cbw26-lp .cbw26-cam { grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr); padding: 20px; }
  #sony-cbw26.cbw26-lp .cbw26-gm-banner { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  #sony-cbw26.cbw26-lp .cbw26-gm-banner-media { padding: 28px 28px 0; }
  #sony-cbw26.cbw26-lp .cbw26-gm-banner-lens { width: min(78%, 340px); }
  #sony-cbw26.cbw26-lp .cbw26-gm-banner-body { padding: 8px 24px 28px; }
  #sony-cbw26.cbw26-lp .cbw26-gm-banner::before {
    background:
      linear-gradient(180deg, rgba(10, 12, 16, 0.3) 0%, rgba(10, 12, 16, 0.6) 45%, rgba(10, 12, 16, 0.88) 100%),
      radial-gradient(80% 50% at 50% 25%, rgba(216, 94, 0, 0.3), transparent 70%);
  }
  #sony-cbw26.cbw26-lp .cbw26-toolbar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  #sony-cbw26.cbw26-lp .cbw26-pills { display: none; }
  #sony-cbw26.cbw26-lp .cbw26-filter { display: inline-flex; }
  #sony-cbw26.cbw26-lp .cbw26-sort-label { display: none; }
  #sony-cbw26.cbw26-lp .cbw26-sort-select, #sony-cbw26.cbw26-lp .cbw26-filter-select { width: 100%; }
  #sony-cbw26.cbw26-lp .cbw26-gm-banner-media { padding: 28px 28px 8px; }
  #sony-cbw26.cbw26-lp .cbw26-gm-banner-lens { width: min(70%, 300px); }
  #sony-cbw26.cbw26-lp .cbw26-gm-banner-logo { width: 140px; margin-top: 12px; }
  #sony-cbw26.cbw26-lp .cbw26-cams-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  #sony-cbw26.cbw26-lp .cbw26-cam--big { grid-column: 1 / -1; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) { display: flex; flex-direction: column; align-items: stretch; padding: 14px; gap: 0; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-cam-media { order: -1; margin: 0 0 10px; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-cam-name { font-size: 19px; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-cam-suffix { font-size: 12px; white-space: normal; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-amount { margin-top: 12px; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-amount-val { font-size: 24px; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-cam-lead { font-size: 13px; margin: 8px 0 12px; flex: 1; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-btn { width: 100%; margin-top: auto; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-cam-body { flex: 1; align-items: stretch; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-cam-media { aspect-ratio: 1; align-self: stretch; width: 100%; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-cam-img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: contain; }
  #sony-cbw26.cbw26-lp .cbw26-cam:not(.cbw26-cam--big) .cbw26-cam-name { min-height: 0; }
  #sony-cbw26.cbw26-lp .cbw26-insp-card { flex-direction: column; }
  #sony-cbw26.cbw26-lp .cbw26-insp-media { flex: none; aspect-ratio: 3 / 2; min-height: 0; }
  #sony-cbw26.cbw26-lp .cbw26-band-product { padding-right: 14px; }
  #sony-cbw26.cbw26-lp .cbw26-band-product-img { width: 64px; }
  #sony-cbw26.cbw26-lp .cbw26-final-actions { flex-direction: column; align-items: stretch; width: 100%; }
  #sony-cbw26.cbw26-lp .cbw26-final-dates { flex-direction: column; gap: 4px; }
  #sony-cbw26.cbw26-lp .cbw26-final-dot { display: none; }
  #sony-cbw26.cbw26-lp .cbw26-final-actions .cbw26-link-arrow { align-self: center; }
  #sony-cbw26.cbw26-lp .cbw26-final-num { font-size: clamp(64px, 22cqw, 120px); }
}

@container cbw26-lp (max-width: 520px) {
  #sony-cbw26.cbw26-lp .cbw26-header-inner { height: 56px; }
  #sony-cbw26.cbw26-lp .cbw26-logo-sony { width: 88px; }
  #sony-cbw26.cbw26-lp .cbw26-header .cbw26-alpha-logo { width: 36px; }
  #sony-cbw26.cbw26-lp .cbw26-hero { margin-top: -56px; padding-top: calc(56px + 28px); }
  #sony-cbw26.cbw26-lp .cbw26-steps-list { grid-template-columns: minmax(0, 1fr); gap: 0; }
  #sony-cbw26.cbw26-lp .cbw26-step {
    display: grid;
    grid-template-columns: 56px 1fr;
    column-gap: 18px;
    padding: 0 0 26px;
  }
  #sony-cbw26.cbw26-lp .cbw26-step-icon { grid-row: span 2; width: 56px; height: 56px; margin: 0; }
  #sony-cbw26.cbw26-lp .cbw26-step-icon .cbw26-icon { width: 26px; height: 26px; }
  #sony-cbw26.cbw26-lp .cbw26-step-title { align-self: end; margin-top: 4px; }
  #sony-cbw26.cbw26-lp .cbw26-step:not(:last-child)::after { top: 64px; left: 28px; right: auto; bottom: 4px; width: 1px; height: auto; background: var(--hairline-strong); }
  #sony-cbw26.cbw26-lp .cbw26-step:not(:last-child)::before { top: 64px; left: 27.5px; right: auto; bottom: 4px; width: 2px; height: auto; margin: 0; background: linear-gradient(180deg, var(--c1), var(--c2)); transform: scaleY(var(--f)); transform-origin: center top; }
  #sony-cbw26.cbw26-lp .cbw26-step:nth-child(2)::after, #sony-cbw26.cbw26-lp .cbw26-step:nth-child(2)::before { display: block; }
  #sony-cbw26.cbw26-lp .cbw26-lens-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  #sony-cbw26.cbw26-lp .cbw26-lens {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "head" "media" "amount" "lead" "cta";
    grid-template-rows: auto auto auto 1fr auto;
    padding: 14px;
  }
  #sony-cbw26.cbw26-lp .cbw26-lens-head { margin-bottom: 8px; min-height: 0; }
  #sony-cbw26.cbw26-lp .cbw26-lens-name { font-size: 15px; }
  #sony-cbw26.cbw26-lp .cbw26-lens-code { font-size: 11.5px; flex-wrap: wrap; gap: 6px; }
  #sony-cbw26.cbw26-lp .cbw26-lens-media { margin: 4px 0 10px; }
  #sony-cbw26.cbw26-lp .cbw26-amount--sm .cbw26-amount-val { font-size: 24px; }
  #sony-cbw26.cbw26-lp .cbw26-lens .cbw26-amount-lbl { font-size: 13px; margin: 0 0 4px; }
  #sony-cbw26.cbw26-lp .cbw26-lens-lead { font-size: 13px; margin-top: 8px; }
  #sony-cbw26.cbw26-lp .cbw26-lens .cbw26-btn { margin-top: 12px; width: 100%; align-self: end; }
  #sony-cbw26.cbw26-lp .cbw26-lens-sep { display: none; }
}

/* --- Ograniczenie ruchu --------------------------------------------------- */
/* Dotyk / waski ekran: bez parallaxu (JS nie nadaza za scrollem kompozytora -> klatkowanie),
   bez blur-u na kafelku nad zdjeciem, mniej warstw GPU. */
@media (hover: none), (max-width: 700px) {
  #sony-cbw26.cbw26-lp .cbw26-hero-bg-img,
  #sony-cbw26.cbw26-lp .cbw26-hero-item,
  #sony-cbw26.cbw26-lp .cbw26-seal,
  #sony-cbw26.cbw26-lp .cbw26-band-img { transform: none; will-change: auto; }
  #sony-cbw26.cbw26-lp .cbw26-band-img { top: 0; height: 100%; }
  #sony-cbw26.cbw26-lp .cbw26-band-product {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background-color: rgba(14, 16, 22, 0.72);
  }
}

@media (prefers-reduced-motion: reduce) {
  #sony-cbw26.cbw26-lp .cbw26-reveal { opacity: 1; transform: none; transition: none; }
  #sony-cbw26.cbw26-lp [data-motion] .cbw26-amount-val,
  #sony-cbw26.cbw26-lp .cbw26-hero-title-big[data-motion],
  #sony-cbw26.cbw26-lp .cbw26-visible [data-motion] .cbw26-amount-val,
  #sony-cbw26.cbw26-lp .cbw26-visible .cbw26-hero-title-big[data-motion],
  #sony-cbw26.cbw26-lp .cbw26-visible.cbw26-hero-title-big[data-motion],
  #sony-cbw26.cbw26-lp .cbw26-visible[data-motion] .cbw26-amount-val { animation: none; }
  #sony-cbw26.cbw26-lp .cbw26-trail, #sony-cbw26.cbw26-lp .cbw26-hero-bg-img, #sony-cbw26.cbw26-lp .cbw26-hero-item, #sony-cbw26.cbw26-lp .cbw26-band-img { transform: none; }
  #sony-cbw26.cbw26-lp .cbw26-band-title { background-position: 50% 0; }
  #sony-cbw26.cbw26-lp .cbw26-seal-ring { animation: none; }
  #sony-cbw26.cbw26-lp .cbw26-seal { transform: none; }
  #sony-cbw26.cbw26-lp .cbw26-step { --l: 1; --f: 1; }
  #sony-cbw26.cbw26-lp .cbw26-section-title { background-position: 50% 0; }
  #sony-cbw26.cbw26-lp .cbw26-preloader-ring { animation-duration: 2.4s; }
  #sony-cbw26.cbw26-lp .cbw26-af-c, #sony-cbw26.cbw26-lp .cbw26-cam-img, #sony-cbw26.cbw26-lp .cbw26-lens-img, #sony-cbw26.cbw26-lp .cbw26-insp-img { transition: none; }
  #sony-cbw26.cbw26-lp .cbw26-lb[open], #sony-cbw26.cbw26-lp .cbw26-lb-slide--on { animation: none; }
}

/* ==========================================================================
   Tylko podglad standalone (poza fragmentem do osadzenia)
   ========================================================================== */
.cbw26-preview-body { margin: 0; background-color: #0b0d12; }
.cbw26-preview-bar {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 9999;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px;
  border-radius: 10px;
  background: rgba(17, 19, 24, 0.92);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35);
  font: 600 13px/1 -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: #fff;
}
.cbw26-preview-bar-label { padding: 0 8px; color: rgba(255, 255, 255, 0.6); font-weight: 500; }
.cbw26-preview-btn {
  font: inherit;
  color: #fff;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 6px;
  padding: 8px 12px;
  cursor: pointer;
}
.cbw26-preview-btn--active { background: #ec323a; border-color: #ec323a; }
