/* "Co wywozimy?" — built from native Elementor elements. Class hooks live in each element's Advanced > CSS Classes.
   Geometry/motion: oprozniamy-gdansk-web-optimized/README.md. Scoped to .cw-section / .cw-dialog. */
@font-face { font-family: "CW Manrope"; src: url("fonts/Manrope-Variable.woff2") format("woff2"); font-weight: 200 800; font-style: normal; font-display: swap; }
@font-face { font-family: "CW Caveat"; src: url("fonts/Caveat-Variable.woff2") format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; }

.cw-section, .cw-dialog {
  --cw-bg: #062639; --cw-teal: #072a40; --cw-text: #f4f0e7; --cw-muted: #cfd7dd;
  --cw-gold: #0eaef2; --cw-gold-light: #0eaef2; --cw-gold-deep: #0eaef2;
  --cw-border: rgba(220, 228, 234, 0.48); --cw-border-soft: rgba(207, 226, 222, 0.2);
  --cw-ease: cubic-bezier(0.22, 1, 0.36, 1);
  font-family: "CW Manrope", Arial, sans-serif; color: var(--cw-text); -webkit-font-smoothing: antialiased;
}
.cw-section *, .cw-section *::before, .cw-section *::after, .cw-dialog *, .cw-dialog *::before, .cw-dialog *::after { box-sizing: border-box; }
.cw-section .elementor-heading-title { margin: 0 !important; padding: 0 !important; font-family: inherit; text-transform: none; color: var(--cw-text); }
.cw-section p { margin: 0 !important; }
.cw-section svg { display: block; }
.cw-section a:focus-visible, .cw-dialog :is(button, a):focus-visible { outline: 2px solid var(--cw-gold) !important; outline-offset: 4px; }
.cw-section .cw-arrow .elementor-button-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* ---------- Section frame ---------- */
.e-con.cw-section { display: block; padding: 0 24px !important; background: var(--cw-bg); overflow: clip; text-align: left; }
.cw-section .e-con.cw-inner { position: relative; isolation: isolate; display: block; width: 100%; max-width: 1392px; margin: 0 auto; padding-bottom: 32px; }
.cw-section .e-con.cw-inner::before {
  content: ""; position: absolute; inset: 0 -24px; z-index: -1; pointer-events: none; display: block; width: auto; height: auto; opacity: 1; mix-blend-mode: normal;
  background: url("img/section-background-navy.webp?v=2609241859") center top / 100% 100% no-repeat;
  background-image: image-set(url("img/section-background-navy-1199.avif?v=2609241859") type("image/avif"), url("img/section-background-navy-1199.webp?v=2609241859") type("image/webp"));
}

/* ---------- Header ---------- */
.cw-section .e-con.cw-head { position: relative; display: block; height: 222px; padding-top: 30px; text-align: center; }
.cw-section .cw-eyebrow .elementor-heading-title { display: flex; align-items: center; justify-content: center; gap: 15px; margin: 0 0 4px !important; font-size: 16px; font-weight: 500; line-height: 1.4; letter-spacing: 2.4px; }
.cw-section .cw-eyebrow .elementor-heading-title::before, .cw-section .cw-eyebrow .elementor-heading-title::after { content: ""; width: 34px; height: 1px; background: var(--cw-gold); }
.cw-section .cw-title .elementor-heading-title { margin: 0 0 13px !important; font-size: 80px; font-weight: 800; line-height: 1.08; letter-spacing: -2.4px; text-wrap: nowrap; }
.cw-section .cw-title .elementor-heading-title span:not(.split-word) { color: var(--cw-gold); }
.cw-section .cw-intro p { font-size: 15px; font-weight: 400; line-height: 23px; color: var(--cw-text); }
.cw-section .cw-intro strong { font-weight: 700; }
.cw-section .cw-note { position: absolute; width: auto; margin: 0; }
.cw-section .cw-note .elementor-heading-title { font-family: "CW Caveat", cursive; font-size: 30px; font-weight: 500; line-height: 1.03; }
.cw-section .cw-note .elementor-heading-title::after { content: ""; display: block; width: 155px; height: 24px; margin: 8px auto 0 !important; background: url("icons/underline.svg?v=1790323642") center / contain no-repeat; }
.cw-section .cw-note--left { left: 15px; top: 47px; transform: rotate(-9deg); }
.cw-section .cw-note--right { right: 13px; top: 32px; transform: rotate(-8deg); }
.cw-section .cw-note--right .elementor-heading-title { font-size: 23px; }
.cw-section .cw-note--right em { font-style: normal; font-size: 30px; color: var(--cw-gold); }
.cw-section .cw-note--right .elementor-heading-title::after { width: 68px; margin-top: 0 !important; }

/* ---------- Category grid (1155 : 650, columns 414 : 726) ---------- */
.cw-section .e-con.cw-grid { display: grid; grid-template-columns: 414fr 726fr; gap: 14px; aspect-ratio: 1155 / 650; }
.cw-section .e-con.cw-right { display: grid; grid-template-rows: 214fr 222fr 186fr; gap: 14px; min-width: 0; min-height: 0; }
.cw-section .e-con.cw-row { display: grid; gap: 14px; min-width: 0; min-height: 0; }
.cw-section .e-con.cw-row--two { grid-template-columns: 368fr 344fr; }
.cw-section .e-con.cw-row--three { grid-template-columns: 230fr 233fr 238fr; }
.cw-section .e-con.cw-card { position: relative; isolation: isolate; display: block; min-width: 0; margin: 0; border: 1px solid var(--cw-border); border-radius: 16px; overflow: hidden; background: #062639; transition: border-color 0.3s, box-shadow 0.3s; }
.cw-section .e-con.cw-card::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, rgba(3, 24, 28, 0.54), rgba(3, 24, 28, 0.22) 46%, transparent 82%), linear-gradient(0deg, rgba(3, 24, 28, 0.4), transparent 60%); }
.cw-section .cw-photo { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; margin: 0; }
.cw-section .cw-photo img { display: block; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; object-position: 50% 50%; transition: transform 550ms var(--cw-ease); }
.cw-section .e-con.cw-card__body { position: relative; display: block; height: 100%; padding: 16px 22px; }
.cw-section .cw-num .elementor-heading-title { display: block; margin-bottom: 10px !important; font-size: 14px; font-weight: 700; line-height: 20px; color: #0eaef2; }
.cw-section .cw-card__title .elementor-heading-title { margin: 0 0 12px !important; font-size: 26px; font-weight: 800; line-height: 1.08; letter-spacing: -0.35px; text-wrap: nowrap; }
.cw-section .cw-card__sub .elementor-heading-title { font-size: 12px; font-weight: 400; line-height: 1.45; letter-spacing: 0.25px; color: var(--cw-muted); }

.cw-section .cw-arrow { position: absolute; left: 18px; bottom: 14px; width: auto; margin: 0; }
.cw-section .cw-arrow .elementor-button { position: relative; display: grid; place-items: center; width: 44px; height: 44px; min-height: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; box-shadow: none; color: #fff; }
.cw-section .cw-arrow .elementor-button::before { content: ""; position: absolute; inset: 2px; border: 1px solid #fff; border-radius: 50%; transition: background 220ms, border-color 220ms; }
.cw-section .cw-arrow .elementor-button-icon { margin: 0 !important; }
.cw-section .cw-arrow .elementor-button-icon svg { width: 21px; height: 21px; transition: transform 220ms var(--cw-ease); }
.cw-section .cw-arrow .elementor-button:hover, .cw-section .cw-arrow .elementor-button:focus { background: transparent; color: #fff; }
.cw-section .cw-row--three .e-con.cw-card__body { padding: 17px 19px; }
.cw-section .cw-row--three .cw-num .elementor-heading-title { margin-bottom: 15px !important; }
.cw-section .cw-card--07 .cw-arrow { left: calc(44% - 22px); }
.cw-section .cw-card--08 .cw-arrow { left: calc(61% - 22px); }
.cw-section .cw-card--08 .cw-card__title .elementor-heading-title { font-size: 25px; }

/* Feature card 01 */
.cw-section .cw-card--01 .e-con.cw-card__body { padding: 22px 26px; }
.cw-section .cw-card--01 .cw-num .elementor-heading-title { margin-bottom: 15px !important; font-size: 18px; }
.cw-section .cw-card--01 .cw-card__title .elementor-heading-title { margin-bottom: 18px !important; font-size: 40px; line-height: 1.04; }
.cw-section .cw-card--01 .cw-card__sub .elementor-heading-title { margin-bottom: 19px !important; font-size: 13px; font-weight: 600; color: #0eaef2; }
.cw-section .cw-feature-list .elementor-icon-list-items { margin: 0; padding: 0; }
.cw-section .cw-feature-list .elementor-icon-list-item { display: flex; align-items: center; gap: 10px; margin: 0 !important; padding: 0 !important; }
.cw-section .cw-feature-list .elementor-icon-list-item::after { display: none !important; }
.cw-section .cw-feature-list .elementor-icon-list-icon { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; width: 17px; height: 17px; margin: 0 !important; padding: 0 !important; border-radius: 50%; background: var(--cw-gold); }
.cw-section .cw-feature-list .elementor-icon-list-icon svg { width: 12px !important; height: 12px !important; }
.cw-section .cw-feature-list .elementor-icon-list-icon svg * { stroke: #062639; }
.cw-section .cw-feature-list .elementor-icon-list-text { padding: 0 !important; font-size: 16px; font-weight: 500; line-height: 28px; color: var(--cw-text); }
.cw-section .cw-feature-list .elementor-icon-list-item:nth-child(n+7) .elementor-icon-list-text { color: var(--cw-gold); }
.cw-section .cw-more { width: auto; margin: 0; }
.cw-section .cw-more .elementor-button { position: relative; display: flex; align-items: center; gap: 10px; min-height: 28px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; font: italic 600 16px/28px "CW Manrope", Arial, sans-serif; letter-spacing: 0; text-transform: none; color: var(--cw-gold); }
.cw-section .cw-more .elementor-button::before { content: ""; flex: none; width: 17px; height: 17px; border-radius: 50%; background: var(--cw-gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 0 28 26' fill='none' stroke='%23062639' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E") center / 12px 12px no-repeat; }
.cw-section .cw-more .elementor-button::after { content: ""; position: absolute; inset: -8px 0; }
.cw-section .cw-more .elementor-button:hover, .cw-section .cw-more .elementor-button:focus { background: transparent; color: var(--cw-gold); text-decoration: underline !important; text-underline-offset: 3px; }
.cw-section .cw-full { position: absolute; left: 26px; bottom: 23px; width: auto; margin: 0; }
.cw-section .cw-full .elementor-button { display: flex; align-items: center; height: 56px; min-height: 0; padding: 0 26px; border: 2px solid var(--cw-gold); border-radius: 30px; background: rgba(3, 24, 28, 0.45); box-shadow: none; font: 700 16px/1.4 "CW Manrope", Arial, sans-serif; letter-spacing: 0; text-transform: none; color: var(--cw-gold); transition: transform 220ms ease, background 220ms ease; }
.cw-section .cw-full .elementor-button-content-wrapper { gap: 20px; align-items: center; }
.cw-section .cw-full .elementor-button-icon { margin: 0 !important; }
.cw-section .cw-full .elementor-button-icon svg { width: 19px; height: 19px; }
.cw-section .cw-full .elementor-button:hover, .cw-section .cw-full .elementor-button:focus { background: rgba(3, 24, 28, 0.6); color: var(--cw-gold); }

/* ---------- Keyword strip (text editor) + highlight loop ---------- */
.cw-section .cw-keywords { display: flex; align-items: center; justify-content: center; gap: 18px; height: 70px; padding: 0 24px; overflow-x: auto; white-space: nowrap; scrollbar-width: thin; }
.cw-section .cw-keywords__label { flex: none; font-size: 14px; font-weight: 700; letter-spacing: 0.8px; color: var(--cw-gold); }
.cw-section .cw-keywords ul { display: flex; align-items: center; gap: 18px; margin: 0; padding: 0; list-style: none; }
.cw-section .cw-keywords li { display: flex; align-items: center; gap: 18px; margin: 0; padding: 0; font-size: 14px; font-weight: 400; letter-spacing: 0.8px; color: var(--cw-text); }
.cw-section .cw-keywords li::marker { content: none; }
.cw-section .cw-keywords li:not(:last-child)::after { content: "•"; font-size: 10px; color: var(--cw-gold); }
.cw-section .cw-keywords li span { display: inline-block; transform-origin: 50% 55%; will-change: transform; animation: cw-kw 12.8s ease-in-out infinite; }
.cw-section .cw-keywords li:nth-child(2) span { animation-delay: 1.6s; }
.cw-section .cw-keywords li:nth-child(3) span { animation-delay: 3.2s; }
.cw-section .cw-keywords li:nth-child(4) span { animation-delay: 4.8s; }
.cw-section .cw-keywords li:nth-child(5) span { animation-delay: 6.4s; }
.cw-section .cw-keywords li:nth-child(6) span { animation-delay: 8s; }
.cw-section .cw-keywords li:nth-child(7) span { animation-delay: 9.6s; }
.cw-section .cw-keywords li:nth-child(8) span { animation-delay: 11.2s; }
.cw-section .cw-keywords:hover li span { animation-play-state: paused; }
@keyframes cw-kw {
  0%, 12.5%, 100% { transform: scale(1); color: var(--cw-text); text-shadow: none; }
  3%, 9.5% { transform: scale(1.14); color: var(--cw-gold); text-shadow: 0 0 18px rgba(14, 174, 242, 0.45); }
}

/* ---------- Contact panel ---------- */
.cw-section .e-con.cw-contact { display: grid; grid-template-columns: 108px minmax(0, 1fr) auto; align-items: center; gap: 20px 32px; min-height: 166px; margin: 0 8px; padding: 24px 44px 24px 30px; border: 1px solid var(--cw-border-soft); border-radius: 40px; background: rgba(7, 42, 64, 0.22); }
.cw-section .cw-contact__box .elementor-icon-wrapper { line-height: 0; }
.cw-section .cw-contact__box .elementor-icon, .cw-section .cw-contact__box svg { width: 108px; height: 108px; font-size: 108px; }
.cw-section .e-con.cw-contact__copy { display: block; }
.cw-section .cw-contact__eyebrow .elementor-heading-title { margin: 0 0 7px !important; font-size: 13px; font-weight: 700; line-height: 1.4; letter-spacing: 1.4px; color: #0eaef2; }
.cw-section .cw-contact__title .elementor-heading-title { margin: 0 0 9px !important; font-size: 24px; font-weight: 800; line-height: 1.25; letter-spacing: -0.5px; }
.cw-section .cw-contact__text p { font-size: 15px; line-height: 23px; color: var(--cw-text); }
.cw-section .e-con.cw-phone, .cw-section .e-con.cw-message { display: grid; grid-template-columns: auto auto; grid-template-rows: auto auto; align-content: center; justify-content: center; column-gap: 17px; text-decoration: none; cursor: pointer; }
.cw-section .e-con.cw-phone { min-height: 78px; padding: 8px 14px; border-radius: 24px; background: linear-gradient(var(--cw-gold-light), var(--cw-gold-deep)); transition: transform 220ms ease, filter 220ms ease; }
.cw-section .cw-phone__icon, .cw-section .cw-message__icon { grid-row: 1 / 3; align-self: center; }
.cw-section .cw-phone__icon .elementor-icon-wrapper, .cw-section .cw-message__icon .elementor-icon-wrapper { line-height: 0; }
.cw-section .cw-phone__icon svg { width: 24px; height: 24px; }
.cw-section .cw-phone__icon svg * { stroke: #062639; }
.cw-section .cw-phone__label .elementor-heading-title { font-size: 17px; font-weight: 700; line-height: 1.3; color: #062639; }
.cw-section .cw-phone__number .elementor-heading-title { margin-top: 2px !important; font-size: 19px; font-weight: 700; line-height: 1.3; letter-spacing: 0.5px; color: #062639; }
.cw-section .e-con.cw-message { min-height: 74px; padding: 10px 16px; border: 1px solid var(--cw-gold); border-radius: 22px; background: transparent; column-gap: 14px; transition: transform 220ms ease, background 220ms ease; }
.cw-section .cw-message__icon svg { width: 31px; height: 31px; }
.cw-section .cw-message__label .elementor-heading-title { font-size: 14px; font-weight: 700; white-space: nowrap; }
.cw-section .cw-message__hint .elementor-heading-title { margin-top: 5px !important; font-size: 12px; color: var(--cw-muted); }

/* ---------- Trust strip ---------- */
.cw-section .e-con.cw-trust { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: stretch; margin: 24px 8px 0; }
.cw-section .e-con.cw-trust__item { position: relative; display: block; padding: 0 14px; text-align: center; }
.cw-section .e-con.cw-trust__item:not(:last-child)::after { content: ""; position: absolute; top: 5px; right: 0; bottom: 3px; left: auto; width: 1px; height: auto; background: var(--cw-border-soft); }
.cw-section .cw-trust__icon .elementor-icon-wrapper { line-height: 0; }
.cw-section .cw-trust__icon svg { width: 46px; height: 46px; margin: 0 auto 10px; }
.cw-section .cw-trust__text p { font-size: 15px; line-height: 22px; color: var(--cw-text); }
.cw-section .cw-trust__text strong { font-weight: 600; }
.cw-section .cw-closing .elementor-heading-title { display: flex; align-items: center; justify-content: center; gap: 22px; margin: 24px 0 0 !important; font-size: 14px; font-weight: 500; line-height: 22px; letter-spacing: 2px; color: var(--cw-gold); }
.cw-section .cw-closing .elementor-heading-title::before, .cw-section .cw-closing .elementor-heading-title::after { content: ""; width: 46px; height: 1px; background: var(--cw-gold); }
.cw-section .cw-dialog-src { position: absolute; width: 0; height: 0; overflow: hidden; }

/* ---------- Dialog (from the HTML widget; rendered in the top layer) ---------- */
.cw-dialog { width: calc(100% - 32px); max-width: 540px; max-height: 85dvh; margin: auto; padding: 36px; overflow: auto; border: 1px solid var(--cw-gold); border-radius: 24px; background: var(--cw-teal); box-shadow: 0 24px 80px rgba(0, 0, 0, 0.53); overscroll-behavior: contain; text-align: left; }
.cw-dialog::backdrop { background: rgba(2, 16, 20, 0.8); }
.cw-dialog[open] { animation: cw-dialog-in 220ms var(--cw-ease); }
.cw-dialog[open]::backdrop { animation: cw-fade 180ms ease; }
.cw-dialog .cw-dialog__close { position: absolute; top: 12px; right: 12px; display: grid; place-items: center; width: 44px; height: 44px; min-height: 0; margin: 0; padding: 0; border: 1px solid #8b9aa3; border-radius: 50%; background: transparent; box-shadow: none; cursor: pointer; }
.cw-dialog .cw-dialog__close:hover, .cw-dialog .cw-dialog__close:focus { background: rgba(14, 174, 242, 0.12); border-color: var(--cw-gold); }
.cw-dialog .cw-dialog__eyebrow { margin: 0 0 8px; font-size: 12px; font-weight: 700; letter-spacing: 2px; color: var(--cw-gold); }
.cw-dialog .cw-dialog__title { margin: 0 0 18px; padding: 0 30px 0 0; font-family: inherit; font-size: 28px; font-weight: 800; line-height: 1.15; color: var(--cw-text); text-transform: none; }
.cw-dialog .cw-dialog__list { margin: 0 0 18px; padding: 0 0 0 23px; }
.cw-dialog .cw-dialog__list li, .cw-dialog .cw-dialog__note { margin: 0; font-size: 16px; line-height: 1.6; color: var(--cw-text); }
.cw-dialog .cw-dialog__list li::marker { color: var(--cw-gold); }
.cw-dialog .cw-dialog__note { margin-bottom: 20px; color: var(--cw-muted); }
.cw-dialog .cw-dialog__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.cw-dialog .cw-dialog__cta { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 12px 20px; border: 1px solid var(--cw-gold); border-radius: 25px; background: linear-gradient(var(--cw-gold-light), var(--cw-gold-deep)); font-size: 16px; font-weight: 700; color: #062639; text-decoration: none; }
.cw-dialog .cw-dialog__cta--ghost { background: transparent; color: var(--cw-gold); }
.cw-dialog .cw-dialog__cta:hover, .cw-dialog .cw-dialog__cta:focus { color: #062639; filter: brightness(1.04); }
.cw-dialog .cw-dialog__cta--ghost:hover, .cw-dialog .cw-dialog__cta--ghost:focus { color: var(--cw-gold); background: rgba(14, 174, 242, 0.1); }

/* ---------- Motion (opt-in once cw.js installs its observer) ---------- */
.cw-section.cw-motion .cw-reveal { opacity: 0; transform: translateY(20px); transition: opacity 650ms var(--cw-ease), transform 650ms var(--cw-ease), border-color 0.3s, box-shadow 0.3s; transition-delay: var(--cw-delay, 0ms); }
.cw-section.cw-motion .cw-reveal.is-visible { opacity: 1; transform: none; }
.cw-section.cw-motion .cw-head { opacity: 0; transform: translateY(16px); transition: opacity 600ms var(--cw-ease), transform 600ms var(--cw-ease); }
.cw-section.cw-motion .cw-head.is-visible { opacity: 1; transform: none; }
@keyframes cw-dialog-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes cw-fade { from { opacity: 0; } to { opacity: 1; } }

@media (hover: hover) and (pointer: fine) {
  .cw-section .e-con.cw-card:hover { border-color: var(--cw-gold); box-shadow: 0 10px 30px rgba(0, 21, 24, 0.25); }
  .cw-section .e-con.cw-card:hover .cw-photo img { transform: scale(1.035); }
  .cw-section .cw-arrow .elementor-button:hover svg, .cw-section .cw-arrow .elementor-button:focus-visible svg { transform: translateX(3px); }
  .cw-section .cw-arrow .elementor-button:hover::before, .cw-section .cw-arrow .elementor-button:focus-visible::before { background: rgba(14, 174, 242, 0.13); border-color: var(--cw-gold); }
  .cw-section .cw-full .elementor-button:hover, .cw-section .e-con.cw-phone:hover, .cw-section .e-con.cw-message:hover { transform: translateY(-2px); }
  .cw-section .e-con.cw-phone:hover { filter: brightness(1.04); }
  .cw-section .e-con.cw-message:hover { background: rgba(14, 174, 242, 0.06); }
}
.cw-section .cw-full .elementor-button:active, .cw-section .e-con.cw-phone:active, .cw-section .e-con.cw-message:active, .cw-section .cw-arrow .elementor-button:active, .cw-dialog .cw-dialog__cta:active { transform: scale(0.985); transition-duration: 100ms; }

/* ---------- Wide desktop ---------- */
@media (min-width: 1400px) {
  .cw-section .e-con.cw-head { height: 240px; padding-top: 38px; }
  .cw-section .e-con.cw-card__body, .cw-section .cw-row--three .e-con.cw-card__body { padding: 24px; }
  .cw-section .cw-card__title .elementor-heading-title { font-size: 30px; }
  .cw-section .cw-card--01 .e-con.cw-card__body { padding: 30px; }
  .cw-section .cw-card--01 .cw-card__title .elementor-heading-title { font-size: 46px; }
  .cw-section .cw-feature-list .elementor-icon-list-text { line-height: 31px; }
  .cw-section .cw-card--08 .cw-card__title .elementor-heading-title { font-size: 29px; }
}
@media (min-width: 1441px) {
  .cw-section .e-con.cw-inner::before { -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
}

/* ---------- Tablet 768–1099 ---------- */
@media (max-width: 1099px) {
  .cw-section .e-con.cw-inner::before {
    background-size: 100% auto;
    -webkit-mask-image: linear-gradient(#000, #000 180px, transparent 550px); mask-image: linear-gradient(#000, #000 180px, transparent 550px);
    background-image: image-set(url("img/section-background-navy-800.avif?v=2609241859") type("image/avif"), url("img/section-background-navy-800.webp?v=2609241859") type("image/webp"));
  }
  .cw-section .e-con.cw-head { height: auto; padding: 35px 0 30px; }
  .cw-section .cw-title .elementor-heading-title { font-size: 60px; }
  .cw-section .cw-eyebrow .elementor-heading-title { font-size: 14px; }
  .cw-section .cw-note { display: none; }
  .cw-section .cw-intro { max-width: 730px; margin: 0 auto; }
  .cw-section .e-con.cw-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; aspect-ratio: auto; }
  .cw-section .e-con.cw-right, .cw-section .e-con.cw-row { display: contents; }
  .cw-section .cw-card--01, .cw-section .cw-card--08 { grid-column: 1 / -1; }
  .cw-section .e-con.cw-card--01 { min-height: 540px; }
  .cw-section .cw-card--01 .cw-photo img { object-fit: contain; object-position: right center; background: #062639; }
  .cw-section .e-con.cw-card:not(.cw-card--01) { min-height: 250px; }
  .cw-section .e-con.cw-card__body, .cw-section .cw-row--three .e-con.cw-card__body { padding: 22px; }
  .cw-section .cw-card__title .elementor-heading-title { font-size: 25px; }
  .cw-section .cw-card--01 .cw-card__title .elementor-heading-title { font-size: 36px; margin-bottom: 14px !important; }
  .cw-section .cw-card--01 .cw-card__sub .elementor-heading-title { margin-bottom: 15px !important; }
  .cw-section .cw-card--01 .cw-num .elementor-heading-title { margin-bottom: 10px !important; }
  .cw-section .cw-card--01 .cw-full { bottom: 22px; }
  .cw-section .cw-card--07 .cw-arrow { left: 18px; }
  .cw-section .cw-card--08 .cw-arrow { left: calc(61% - 22px); }
  .cw-section .cw-keywords { flex-wrap: wrap; height: auto; min-height: 64px; padding: 16px 0; row-gap: 8px; white-space: normal; overflow: visible; justify-content: center; text-align: center; }
  .cw-section .cw-keywords ul { flex-wrap: wrap; justify-content: center; row-gap: 8px; }
  .cw-section .cw-keywords li { white-space: nowrap; }
  .cw-section .e-con.cw-contact { grid-template-columns: 90px minmax(0, 1fr); gap: 20px; margin: 0; padding: 24px; }
  .cw-section .cw-contact__box .elementor-icon, .cw-section .cw-contact__box svg { width: 90px; height: 90px; }
  .cw-section .e-con.cw-contact__copy { grid-column: 2; }
  .cw-section .cw-ask { grid-column: 2; justify-self: start; }
  .cw-section .e-con.cw-trust { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 0; }
  .cw-section .e-con.cw-trust__item:nth-child(3)::after { display: none; }
  .cw-section .cw-trust__text p { font-size: 14px; line-height: 21px; }
  .cw-section .cw-closing .elementor-heading-title { margin-top: 30px !important; }
  .cw-section .cw-br { display: none; }
}
@media (min-width: 768px) and (max-width: 1099px) {
  .cw-section .e-con.cw-contact { grid-template-columns: minmax(0, 1fr) auto; gap: 16px 32px; padding: 26px 32px; }
  .cw-section .cw-contact__box { display: none; }
  .cw-section .e-con.cw-contact__copy { grid-column: 1; }
  .cw-section .cw-ask { grid-column: 2; justify-self: end; }
  .cw-section .e-con.cw-trust { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .cw-section .e-con.cw-trust__item { grid-column: span 2; }
  .cw-section .e-con.cw-trust__item:nth-child(4) { grid-column: 2 / span 2; }
  .cw-section .e-con.cw-trust__item:nth-child(5)::after { display: none; }
}

/* ---------- Mobile 400–767 ---------- */
@media (max-width: 767px) {
  .e-con.cw-section { padding: 0 16px !important; }
  .cw-section .e-con.cw-inner { padding-bottom: 28px; }
  .cw-section .e-con.cw-inner::before {
    inset: 0 -16px;
    background-image: image-set(url("img/section-background-navy-480.avif?v=2609241859") type("image/avif") 1x, url("img/section-background-navy-800.avif?v=2609241859") type("image/avif") 2x, url("img/section-background-navy-480.webp?v=2609241859") type("image/webp") 1x, url("img/section-background-navy-800.webp?v=2609241859") type("image/webp") 2x);
  }
  .cw-section .e-con.cw-head { padding: 28px 0; }
  .cw-section .cw-title .elementor-heading-title { margin: 8px 0 14px !important; font-size: 42px; letter-spacing: -1.3px; }
  .cw-section .cw-eyebrow .elementor-heading-title { font-size: 12px; }
  .cw-section .cw-intro p { font-size: 14px; line-height: 22px; }
  .cw-section .cw-intro strong { display: inline-block; margin-bottom: 5px; }
  .cw-section .e-con.cw-grid { gap: 12px; }
  .cw-section .e-con.cw-card--01 { min-height: 600px; }
  .cw-section .cw-card--01 .cw-photo img { object-fit: cover; object-position: 65% center; }
  .cw-section .cw-card--01 .e-con.cw-card__body { padding: 22px; }
  .cw-section .cw-card--01 .cw-card__title .elementor-heading-title { font-size: 34px; }
  .cw-section .cw-card--01 .cw-full { left: 20px; bottom: 22px; }
  .cw-section .cw-card--01 .cw-full .elementor-button { padding: 0 22px; }
  .cw-section .e-con.cw-card:not(.cw-card--01) { min-height: 252px; }
  .cw-section .e-con.cw-card__body, .cw-section .cw-row--three .e-con.cw-card__body { padding: 16px; }
  .cw-section .cw-card__title .elementor-heading-title, .cw-section .cw-card--08 .cw-card__title .elementor-heading-title { font-size: 22px; letter-spacing: -0.45px; text-wrap: wrap; }
  .cw-section .cw-card--06 .cw-card__title .elementor-heading-title { font-size: 20px; letter-spacing: -0.7px; }
  .cw-section .cw-num .elementor-heading-title { margin-bottom: 12px !important; }
  .cw-section .cw-arrow { left: 12px; bottom: 12px; }
  .cw-section .cw-card--08 .cw-arrow { left: auto; right: 16px; }
  .cw-section .cw-card__sub .elementor-heading-title, .cw-section .cw-card--01 .cw-card__sub .elementor-heading-title { font-size: 12px; letter-spacing: 0; }
  .cw-section .cw-keywords { gap: 14px; }
  .cw-section .cw-keywords__label, .cw-section .cw-keywords li { font-size: 12px; }
  .cw-section .cw-keywords ul, .cw-section .cw-keywords li { gap: 14px; }
  .cw-section .e-con.cw-contact { display: flex; flex-direction: column; align-items: stretch; gap: 18px; padding: 24px 20px; border-radius: 28px; }
  .cw-section .cw-contact__box { align-self: flex-start; }
  .cw-section .cw-contact__box .elementor-icon, .cw-section .cw-contact__box svg { width: 64px; height: 64px; }
  .cw-section .cw-contact__title .elementor-heading-title { font-size: 23px; }
  .cw-section .cw-contact__eyebrow .elementor-heading-title { font-size: 11px; letter-spacing: 1.1px; }
  .cw-section .cw-contact__text p { font-size: 14px; line-height: 22px; }
  .cw-section .cw-ask { align-self: flex-start; }
  .cw-section .e-con.cw-trust { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 0; margin-top: 30px; }
  .cw-section .e-con.cw-trust__item:nth-child(2n)::after { display: none; }
  .cw-section .e-con.cw-trust__item:nth-child(3)::after { display: block; }
  .cw-section .e-con.cw-trust__item:last-child { grid-column: 1 / -1; }
  .cw-section .cw-trust__icon svg { width: 44px; height: 44px; }
  .cw-section .cw-closing .elementor-heading-title { gap: 12px; font-size: 11px; letter-spacing: 1.4px; }
  .cw-section .cw-closing .elementor-heading-title::before, .cw-section .cw-closing .elementor-heading-title::after { width: 26px; }
  .cw-dialog { padding: 30px 24px; }
}
/* ---------- Narrow mobile < 400 ---------- */
@media (max-width: 399px) {
  .cw-section .e-con.cw-grid { grid-template-columns: minmax(0, 1fr); }
  .cw-section .e-con.cw-card { grid-column: 1 !important; }
  .cw-section .e-con.cw-card:not(.cw-card--01) { min-height: 248px; }
  .cw-section .cw-card__title .elementor-heading-title, .cw-section .cw-card--08 .cw-card__title .elementor-heading-title, .cw-section .cw-card--06 .cw-card__title .elementor-heading-title { font-size: 24px; letter-spacing: -0.3px; }
  .cw-section .cw-card--08 .cw-arrow { left: 12px; right: auto; }
  .cw-section .cw-card--01 .cw-full .elementor-button { padding: 0 18px; font-size: 14px; }
  .cw-section .cw-card--01 .cw-full .elementor-button-content-wrapper { gap: 15px; }
  .cw-section .cw-card--01 .cw-card__sub .elementor-heading-title { font-size: 11px; }
  .cw-section .e-con.cw-card::after { background: linear-gradient(90deg, rgba(3, 24, 28, 0.64), rgba(3, 24, 28, 0.2) 50%, transparent 90%), linear-gradient(0deg, rgba(3, 24, 28, 0.4), transparent 60%); }
}
@media (max-width: 359px) {
  .cw-section .cw-title .elementor-heading-title { font-size: 38px; }
  .cw-section .cw-card--01 .e-con.cw-card__body { padding: 20px; }
  .cw-section .e-con.cw-contact { padding: 22px 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .cw-section *, .cw-section *::before, .cw-section *::after, .cw-dialog, .cw-dialog::backdrop { animation: none !important; transition: none !important; }
  .cw-section.cw-motion .cw-reveal, .cw-section.cw-motion .cw-head { opacity: 1 !important; transform: none !important; }
  .cw-section .cw-photo img, .cw-section .elementor-button, .cw-section .e-con.cw-phone, .cw-section .e-con.cw-message, .cw-section .cw-keywords li span { transform: none !important; }
}

/* Elementor paints inline SVG icons with the kit primary colour (light blue); these icons are outline-only */
.cw-section .elementor-icon svg, .cw-section .elementor-icon svg *, .cw-section .elementor-icon-list-icon svg, .cw-section .elementor-icon-list-icon svg *, .cw-section .elementor-button-icon svg, .cw-section .elementor-button-icon svg * { fill: none !important; }

/* ---------- "Nie widzisz czegoś" — understated text link ---------- */
.cw-section .cw-ask { width: auto; justify-self: end; }
.cw-section .cw-ask .elementor-button { display: inline-flex; align-items: center; min-height: 44px; padding: 0 !important; border: 0; border-radius: 0; background: transparent; box-shadow: none; font-family: inherit; font-size: 16px; font-weight: 700; line-height: 1.3; letter-spacing: 0; text-transform: none; color: var(--cw-gold); transition: color 220ms ease; }
.cw-section .cw-ask .elementor-button-content-wrapper { gap: 10px; align-items: center; }
.cw-section .cw-ask .elementor-button-text { padding-bottom: 4px; border-bottom: 1px solid rgba(14, 174, 242, 0.5); transition: border-color 220ms ease; }
.cw-section .cw-ask .elementor-button-icon { margin: 0 !important; }
.cw-section .cw-ask .elementor-button-icon svg { width: 18px; height: 18px; transition: transform 220ms var(--cw-ease); }
.cw-section .cw-ask .elementor-button-icon svg, .cw-section .cw-ask .elementor-button-icon svg * { fill: none !important; stroke: currentColor; }
.cw-section .cw-ask .elementor-button:hover, .cw-section .cw-ask .elementor-button:focus { background: transparent; color: var(--cw-gold-light); }
.cw-section .cw-ask .elementor-button:hover .elementor-button-text { border-bottom-color: var(--cw-gold-light); }
.cw-section .cw-ask .elementor-button:hover svg { transform: translate(2px, -2px); }
