/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */ 
@font-face {
    font-family: 'Inter';
    src: url('/fonts/inter-regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('/fonts/inter-medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face { 
    font-family: 'Inter';
    src: url('/fonts/inter-bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
} 
@font-face { 
    font-family: 'Montserrat';
    src: url('/fonts/montserrat.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
} 
@font-face { 
    font-family: 'Montserrat';
    src: url('/fonts/montserrat-semibold.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
} 
:root {
    --theme-font-family: 'Montserrat', sans-serif; 
    --theme-font-weight: 400; 
	--theme-form-field-border-radius: 10px; 
	--theme-text-decoration: none; 
	} 
h1, h2, h3, h4, h5, h6 {
	--theme-font-family: 'Inter', sans-serif; 
	--theme-font-weight: 500; 
}
a {
	text-decoration: none;
}
.wpcf7 form.sent .wpcf7-response-output {
	font-size: 14px;
    border-color: #597ffb;
    border-radius: 0 0 10px 10px;
    background: #e3eaff;
    border-top: 2px solid #597ffb;
    border-width: 2px 0 0 0;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	font-size: 14px;
	border-color: #cab889;
    border-radius: 0 0 10px 10px;
    background: #fffaed; 
    border-top: 2px solid #cab889;
    border-width: 2px 0 0 0;
}
#header {
	position: sticky!important;
    top: 0;
    backdrop-filter: blur(7px);
	-webkit-backdrop-filter: blur(7px);
	border-bottom: 1px solid #e1e1e1;
}
[data-header*="type-1"] .ct-header [data-row*="middle"] {
    background-color: #ffffffd1;
} 
#header-menu-1 {
	margin-right: 50px; 
}
.main_menu_btn {
	color: #fff; 
	padding: 10px 20px; 
	border-radius: 25px;
	font-size: 11px; 
	font-weight: 500;
	text-transform: uppercase;
	cursor: pointer;
}
.main_menu_btn.menu_btn_blue {
	background: linear-gradient(to right, #587aff, #6ac0cf);
    padding: 7px 40px 9px 15px;
    letter-spacing: 0.3px;
    transition: background 3s ease;
    font-size: 14px;
	text-decoration: none;
} 
.main_menu_btn.menu_btn_blue:hover {
	color: #fff;
	background: linear-gradient(to right, #385ff2, #4ca2b1);
}
.main_menu_btn.menu_btn_blue img {
	margin-right: 7px; 
}
.main_menu_btn.main_menu_btn_black {
	background: #000; 
	margin-left: -25px;
	text-decoration: none;
}
/* Mobile Menu ------------------------------------ */
[data-header*="type-1"] #offcanvas .ct-panel-inner { 
	background:
    /* PRAWA GÓRA - mocniejsza niebieska poświata */
    radial-gradient(
        ellipse 52% 62% at 100% 0%,
        rgb(45 72 141 / 52%) 0%,
        rgb(45 72 141 / 34%) 30%,
        rgb(45 72 141 / 16%) 58%,
        transparent 90%
    ),

    /* GÓRA ŚRODEK-LEWO - bardzo miękka fioletowa poświata */
    radial-gradient(
        ellipse 58% 52% at 38% 5%,
        rgb(74 63 112 / 30%) 0%,
        rgb(74 63 112 / 19%) 32%,
        rgb(74 63 112 / 8%) 65%,
        transparent 92%
    ),

    /* prawa dolna - granat */
    radial-gradient(
        ellipse 42% 62% at 100% 100%,
        rgb(45 72 141 / 55%) 0%,
        rgb(45 72 141 / 34%) 32%,
        rgb(45 72 141 / 14%) 62%,
        transparent 90%
    ),

    /* prawa dolna / środek - granatowo-fioletowy */
    radial-gradient(
        ellipse 60% 75% at 78% 105%,
        rgb(45 72 141 / 38%) 0%,
        rgb(55 61 117 / 24%) 36%,
        rgb(74 63 112 / 10%) 68%,
        transparent 92%
    ),

    /* środek - fiolet */
    radial-gradient(
        ellipse 58% 78% at 48% 108%,
        rgb(74 63 112 / 38%) 0%,
        rgb(74 63 112 / 24%) 38%,
        rgb(74 63 112 / 10%) 68%,
        transparent 92%
    ),

    /* lewy dół - niebieski */
    radial-gradient(
        ellipse 44% 64% at 0% 100%,
        rgb(45 72 141 / 48%) 0%,
        rgb(45 72 141 / 28%) 35%,
        rgb(45 72 141 / 11%) 65%,
        transparent 90%
    ),

    /* górny lewy - bardzo subtelny fiolet */
    radial-gradient(
        ellipse 52% 76% at 20% 0%,
        rgb(74 63 112 / 30%) 0%,
        rgb(74 63 112 / 18%) 40%,
        rgb(74 63 112 / 7%) 68%,
        transparent 94%
    ),

    #000;
}
nav.mobile-menu li>.ct-menu-link, nav.mobile-menu li>.ct-sub-menu-parent {
    color: #949cff!important;
}
nav.mobile-menu .ct-menu-link {
	color: #949cff!important;
}
.mobile-menu>ul {
	padding-top: 55px;
} 
.mobile-menu>ul:before {
	content: url('https://marketing-vision.com/wp-content/uploads/2026/09/logo_Marketing_Vision.svg');
	position: absolute; 
	top: 35px; 
	left: 35px; 
}
nav.mobile-menu .ct-menu-link {
    text-transform: uppercase;
    font-size: 18px;
    line-height: 2;
}
/* ------------------------------------------------ */
/* Footer ----------------------------------------- */
.footer_outer .footer_wrap {
	display: flex;
	  gap: 40px; 
	margin: 0 auto; 
	width: min(1500px, calc(100% - 40px));
	padding: 50px 0;
	font-size: 13px;
}
.footer_outer .footer_div {
	flex: 1;
	  padding: 20px;
}
.footer_outer .footer_wrap > div:first-child span.footer_company_name {
	font-weight: 700; 
	text-transform: uppercase;
	padding-top: 5px;
}
.footer_outer .footer_wrap > div:first-child img:first-child {
	padding-bottom: 25px;
}
.footer_outer .color_title {
	font-weight: 700;
    font-size: 16px;
}
.footer_outer .footer_wrap > div:first-child img:nth-child(2) {
	padding-right: 7px;
}
.footer_email {
	padding-right: 7px;
	max-width: 34px!important;
}
.footer_icon {
	padding-right: 10px; 
	max-width: 47px !important;
}
.footer_div p {
	max-width: 550px; 
	padding-top: 15px;
}
.footer_outer .footer_wrap > div:nth-child(2) {
	display: flex;
	  gap: 20px;
}
.footer_outer .footer_wrap > div:nth-child(2) span {
	font-weight: 700; 
	text-transform: uppercase;
}
.footer_outer .footer_wrap > div:nth-child(2) {
	line-height: 2;
}
.footer-column {
	flex: 1;
	  padding: 20px;
}
.footer_outer {
	border-radius: 30px;
	margin: 0 10px;
}
[data-footer*="type-1"] .ct-footer [data-row*="top"] > div {
    --container-spacing: 30px 0;
}
[data-footer*="type-1"] .ct-footer [data-row*="middle"] > div {
    --container-spacing: 0 30px;
}
[data-footer*="type-1"] [data-id="copyright"] {
    --theme-font-size: 12px;
}
.footer_copyright_right {
	font-size: 12px!important;
	text-align: right;
	color: #3a4f66;
} 
.footer_copyright_right a { 
	color: #3a4f66!important;
}
.footer_outer .footer_div:first-child {
    flex: 35;
}
.footer_outer .footer_div:last-child {
    flex: 65;
}
.strong_footer {
	font-weight: 700; 
	color: #89e4e8;
}
/* ------------------------------------------------ */ 
.page-id-8 {
	--theme-normal-container-max-width: 100%; 
	--theme-container-width-base: 100%; 
} 
.page-id-8 [data-content=normal]>article {
    --theme-block-width: 100%; 
} 
.page-id-8 [data-vertical-spacing*=bottom] {
    padding-bottom: 0; 
}
.page-id-8 [data-vertical-spacing*=top] {
    padding-top: 0; 
} 
.page-id-8 h2 {
    --theme-font-size: 38px;
    --theme-line-height: 1.325;
}
.btn_classic {
	background: #000; 
	color: #fff;
	cursor: pointer;
    padding: 9px 9px 9px 24px;  
    border-radius: 25px;
    font-size: 11px; 
    font-weight: 500;
    text-transform: uppercase;
	transition: background 1s ease, color 1s ease;
} 
.btn_classic:hover {
	background: #0e1d36; 
}
.btn_classic img {
	margin-left: 14px; 
	padding-bottom: 2px;
} 
.btn_classic_white {
    background: #fff;
    color: #000;
    cursor: pointer;
    padding: 15px 25px 15px 24px;
    border-radius: 45px;
    line-height: 1.425;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
	text-decoration: none; 
    max-width: 150px; 
	margin-right: 7px;
	transition: background 1s ease, color 1s ease;
} 
.btn_classic_white:hover {
	background: #e1e1e1;
	color: #3d6df1; 
}
.btn_classic_white img {
    margin-left: 10px;
    padding-bottom: 2px;
	width: 50px;
}
.btn_classic_white span { 
display: inline-block;
    vertical-align: middle; 
}
.btn_white {
	background: #fff; 
	color: #000;
	cursor: pointer;
    padding: 15px 22px; 
    border-radius: 25px;
    font-size: 11px; 
    font-weight: 500;
    text-transform: uppercase; 	
	border: 2px solid #000;
	transition: border 1s ease, color 1s ease;
}
.btn_white:hover {
	border: 2px solid #6089fb;
	color: #3d6df1; 
}
.home_1 h1 {
    color: #fff;
    line-height: 1.225;
    font-size: 48px;
	margin-top: 35px; 
	margin-bottom: 35px; 
} 
.home_1 .blurred_text {
  animation: showText 1.6s ease-out forwards;
}
@keyframes showText {
  0% {
    opacity: 0;
    filter: blur(20px);
    transform: translateY(10px);
  }

  100% {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }
}
span.color_title {
background: linear-gradient(
    90deg,
    #5a79f3 0%,
    #57c5d4 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
} 
.page-id-8 .is-layout-constrained>:where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    width: calc(100% - 60px);
    margin-left: 30px;
	margin-right: 30px;
} 
.home_1 { 
	border-radius: 30px; 
	color: #fff; 
	text-align: center; 
	
	position: relative;
    overflow: hidden;

	background:
        /* prawa dolna niebieska poświata */
        radial-gradient(
            ellipse 35% 55% at 100% 100%,
            rgba(63, 91, 190, 0.95) 0%,
            rgba(45, 75, 160, 0.65) 30%,
            transparent 82%
        ),

        /* prawa dolna turkusowa poświata */
        radial-gradient(
            ellipse 52% 72% at 77% 100%,
            rgb(53 139 150 / 86%) 0%, 
			rgb(40 87 101 / 53%) 35%,
            transparent 72%
        ),

        /* centralna fioletowa poświata */
        radial-gradient(
            ellipse 48% 68% at 48% 105%,
            rgb(109 91 163) 0%, 
			rgb(109 91 163 / 73%) 38%,
            transparent 84%
        ),

        /* lewy dolny niebieski */
        radial-gradient(
            ellipse 36% 58% at 0% 100%,
            rgba(43, 112, 183, 0.90) 0%,
            rgba(34, 83, 145, 0.65) 45%,
            transparent 82%
        ),

        /* górny lewy teal */
        radial-gradient(
            ellipse 45% 70% at 22% 0%,
            rgba(49, 103, 110, 0.82) 0%,
            rgba(35, 75, 82, 0.62) 48%,
            transparent 92%
        ),

        /* główna baza */
        #05070d;
}
.gradient_bg {
	background:
        /* prawa dolna niebieska poświata */
        radial-gradient(
            ellipse 35% 55% at 100% 100%,
            rgba(63, 91, 190, 0.95) 0%,
            rgba(45, 75, 160, 0.65) 30%,
            transparent 82%
        ),

        /* prawa dolna turkusowa poświata */
        radial-gradient(
            ellipse 52% 72% at 77% 100%,
            rgb(53 139 150 / 86%) 0%, 
			rgb(40 87 101 / 53%) 35%,
            transparent 72%
        ),

        /* centralna fioletowa poświata */
        radial-gradient(
            ellipse 48% 68% at 48% 105%,
            rgb(109 91 163) 0%, 
			rgb(109 91 163 / 73%) 38%,
            transparent 84%
        ),

        /* lewy dolny niebieski */
        radial-gradient(
            ellipse 36% 58% at 0% 100%,
            rgba(43, 112, 183, 0.90) 0%,
            rgba(34, 83, 145, 0.65) 45%,
            transparent 82%
        ),

        /* górny lewy teal */
        radial-gradient(
            ellipse 45% 70% at 22% 0%,
            rgba(49, 103, 110, 0.82) 0%,
            rgba(35, 75, 82, 0.62) 48%,
            transparent 92%
        ),

        /* główna baza */
        #05070d;
}
.page-id-8 .wrap_in {
	padding: 100px 0; 
	width: min(1280px, calc(100% - 40px));
	margin: 0 auto; 
}
.home_1 span.gradient-text { 
	text-transform: uppercase; 
	font-family: 'Inter', sans-serif; 
	font-weight: 700;  
	font-size: 20px; 
	margin-bottom: 25px;
	background: linear-gradient(
    90deg,
    #5a79f3,
    #7698ff,
    #9f9bee,
    #628af8,
    #7ac5da
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.home_1 .btn_classic {
	margin-right: 25px; 	
} 
.home_1 p {
	margin-bottom: 50px; 
	color: #d0d0d0; 
}
/* Slider Home 2 ---------- */
.home_2 {
	background: #fff; 
}
.page-id-8 .home_2 .wrap_in {
    padding: 5px 0; 
	width: min(1920px, 100%);
    margin: 0 auto;
}
.logos-slider { width: 100%; overflow: hidden; position: relative; } .logos-track { display: flex; align-items: center; width: max-content; animation: logosMove 70s linear infinite; will-change: transform; } .logos-track img { display: block; width: auto; height: 52px; object-fit: contain; margin: 0 75px; flex-shrink: 0; } /* Delikatny, ciągły ruch w lewo */ @keyframes logosMove { from { transform: translateX(0); } to { transform: translateX(-50%); } } /* Na mniejszych ekranach */ @media (max-width: 768px) { .logos-track { animation-duration: 28s; } .logos-track img { height: 55px; max-width: 140px; margin: 0 25px; } }
/* --------------------------------------------- */
/* Home 3 --------------------------------------- */ 
.home_3 {
	background: #f7f7f7; 
	border-radius: 30px;
}
.columns_1 {
  display: flex;
  gap: 24px; 
  margin-bottom: 25px; 
}
.columns_1 > div {
  flex: 1;
}
.columns_2 {
  display: flex;
  gap: 24px;
}
.columns_2 > div {
  flex: 1;
  padding: 30px 30px 37px;
  border-radius: 15px;

  background: #ececec;

  position: relative;
  isolation: isolate;

  transition: background-color 1s ease;
}

.columns_2 > div::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 2px;

  background: linear-gradient(90deg, #5987f7, #6abfcf);

  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;

  opacity: 0;
  transition: opacity 1s ease;

  pointer-events: none;
  z-index: -1;
}

.columns_2 > div:hover {
  background: #fff;
}

.columns_2 > div:hover::before {
  opacity: 1;
}
.home_3 h3 {
    --theme-font-size: 22px;
	line-height: 1.225; 
	transition: color 0.5s ease;
} 
.columns_2 > div:hover h3 {
	background: linear-gradient(90deg, #5a79f3 0%, #57c5d4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent; 
} 
.home_3 .columns_2 p {
	font-size: 12px; 
	line-height: 1.325; 
	margin-bottom: 25px;
} 
.home_3 .btn_classic {
    padding: 7px 7px 6px 24px; 
} 
.home_3 .btn_classic img {
    width: 26px;
} 
.home_3 .columns_1 p {
	font-size: 12px; 
	line-height: 1.325;  
	text-align: right; 
} 
/* ------------------------------------------------- */
/* Home 4 ------------------------------------------------ */ 
.page-id-8 .home_4 .wrap_in {
	padding: 80px 0;
}
.home_4 .wrap_in {
	display: flex;
  gap: 24px;
}
.home_4 .column-50 {
  flex: 2;
}
.home_4 .column-25 {
  flex: 1;
}
.home_4 {
	border-radius: 30px; 
	color: #fff; 
	position: relative;
    overflow: hidden;
	margin-bottom: 0;
}
.home_4 h2.title {
	color: #fff;
	padding-top: 15px; 
}
.home_4 .wrap_in > div:nth-child(3) {
	padding-top: 10px;
    text-align: right;
}
.home_4 .wrap_in > div:nth-child(3) img.contact_circle {
	padding-top: 20px;
}
/* --------------------------------------------------------- */
/* Home 5 ---------------------------------------------------- */
.home_5 .row {
    display: flex;
    gap: 24px;
    border-bottom: 2px solid #e3e3e3;
	padding: 20px 25px 7px; 
	background: #fff;
	transition: background 1s ease;
}
.home_5 .row:hover {
	background: #f3f3f3;
	border-radius: 20px;
}
.home_5 .row > div {
    flex: 1;
}
.home_5 h3, .home_5 h4 {
	display: inline-block; 
}
.home_5 h3 {
	font-weight: 700;
    margin-left: 30px;
}
.home_5 h4 { 
	color: #5987f8;
    font-weight: 300;
    margin-right: 50px;
    font-size: 26px; 
    padding-top: 5px;
} 
.home_5 .row > div:nth-child(2) {
    text-align: right;
}
.home_5 .row > div:nth-child(2) img {
    width: 50px;
}
.home_5 h2.title {
	text-align: center; 
} 
span.number {
	background: linear-gradient(90deg, #5a79f3 0%, #57c5d4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-size: 32px;
    font-weight: 700;
} 
.page-id-8 .home_5 .wrap_in {
    padding: 70px 0;
}
.home_5 .grid {
	padding-top: 15px;
}
/* -------------------------------------------------------------- */
/* Home 6 ------------------------------------------------------- */
.home_6 {
	border-radius: 30px; 
	color: #fff; 
	position: relative;
    overflow: hidden;
	margin-bottom: 0;
}
.home_6 h2.title {
	color: #fff;
	padding-bottom: 35px; 
}
.home_6 img.main_zespol {
	border-radius: 10px;
}
.home_6 .outer, .home_6 .flex {
  display: flex;
  gap: 24px; 
}
.home_6 .flex {
	padding-bottom: 35px;
}
.home_6 .col, .home_6 .flex > div {
  flex: 1;
}
.home_6 .col:nth-child(2) {
	padding-left: 80px; 
}
.home_6 h3 {
    color: #fff;
    font-size: 22px;
    margin-top: 15px;
    margin-bottom: 10px;
}
.btn_ekspert span.color_title {
	padding-right: 10px;
}
.home_6 .flex p {
	font-size: 14px;
}
.home_6 .flex img.logo {
	margin-bottom: 25px;
	max-width: 71px;
}
.home_6 .btn_ekspert {
  position: relative;
    border-radius: 30px;
    background: rgb(0 0 0 / 0%);
    padding: 16px 20px;
    font-weight: 500;
	transition: background 1s ease;
}
.home_6 .btn_ekspert:hover {
	background: rgb(85 169 211 / 15%);
}
.home_6 .btn_ekspert::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px; /* grubość bordera */
  border-radius: inherit;
  background: linear-gradient(135deg, #77a6ff, #48b4cd);

  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;

  pointer-events: none;
}
.home_6 .btn_ekspert:after {
	content: url('http://marketing-vision.com/wp-content/uploads/2026/09/3-ekspertow_mini-1.png');
	position: absolute;
    right: -100px;
	top: 0;
}
.home_6 .row { 
	background: #50b1d959; 
    border-radius: 0 20px 20px 0;
    border-left: 3px solid #83d1d752;
    padding: 15px;
    color: #cccccc;
    line-height: 1.325;
    font-size: 14px;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
    margin-bottom: 15px;
    width: 100%;
    transition: background 1s ease, color 1s ease, border 1s ease, width 1s ease;
}
.home_6 .row:hover {
	border-left: 3px solid #54a3d5;
	width: 102%; 
	background: radial-gradient(
    circle at center,
    rgba(80, 169, 209, 0.25) 0%,
    rgba(80, 169, 209, 0.18) 35%,
    rgba(80, 169, 209, 0.35) 70%,
    rgba(80, 169, 209, 0.55) 100%
  );
}
.home_6 .row .text span {
	font-size: 17px;
    color: #47b4c7; 
    transition: background 1s ease, color 1s ease;
}
.home_6 .row:hover .text span {
	color: #fff;
}
.home_6 .row img {
	display: block;
    float: left;
    padding-right: 15px;
	filter: grayscale(1);
}
.home_6 .row .text {
	overflow: hidden;
	max-width: 488px; 
}
.home_6 .btn_classic_zespol {
	background: #fff;
	color: #000;
	position: relative;
	cursor: pointer;
	float: right;
	margin-right: 63px; 
    padding: 18px 24px; 
    border-radius: 25px;
    font-size: 11px; 
    font-weight: 500;
    text-transform: uppercase;
	transition: background 1s ease, color 1s ease;
	margin-top: 5px;
} 
.home_6 .btn_classic_zespol:hover {
	background: #e1e1e1;
	color: #3d6df1; 
}
.home_6 .btn_classic_zespol:after {
	content: url('http://marketing-vision.com/wp-content/uploads/2026/09/button_white_arrow_.svg');
	position: absolute;
    right: -60px;
	top: 0;
	opacity: 1; 
	transition: opacity 1s ease;
}
.home_6 .btn_classic_zespol img {
	margin-left: 14px; 
	padding-bottom: 2px;
} 
.home_6 .btn_classic_zespol:hover::after {
	opacity: 0.85;
}
/* -------------------------------------------------------------- */
/* Home 7 ------------------------------------------------------------ */ 
.home_7 {
	background: #ebebeb; 
	border-radius: 30px;
}
.home_7 .columns_1_ {
  display: flex;
  gap: 24px; 
  margin-bottom: 25px; 
}
.home_7 .columns_1_ > div {
  flex: 1;
}
.home_7 .columns_2_ {
  display: flex;
  gap: 24px;
}

.home_7 .columns_2_ > div {
  flex: 1;
  padding: 30px 30px 37px;
  border-radius: 15px;
  background: #fff;
  position: relative;
  isolation: isolate;
  transition: background-color 1s ease;
}

.home_7 .columns_2_ > div::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 2px;

  background: linear-gradient(90deg, #5987f7, #6abfcf);

  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;

  opacity: 0;
  transition: opacity 1s ease;

  pointer-events: none;
  z-index: -1;
}

.home_7 .columns_2_ > div:hover {
  background: #fff;
}

.home_7 .columns_2_ > div:hover::before {
  opacity: 1;
}
.home_7 .columns_2_ > div:after {
	position: absolute; 
	top: 15px; 
	right: 20px; 
}
.home_7 .columns_2_ > div:first-child:after {
	content: url('http://marketing-vision.com/wp-content/uploads/2026/09/icon_1.png'); 
}
.home_7 .columns_2_ > div:nth-child(2):after {
	content: url('http://marketing-vision.com/wp-content/uploads/2026/09/icon_2.png'); 
}
.home_7 .columns_2_ > div:nth-child(3):after {
	content: url('http://marketing-vision.com/wp-content/uploads/2026/09/icon_3.png'); 
}
.home_7 .columns_2_ > div:nth-child(4):after {
	content: url('http://marketing-vision.com/wp-content/uploads/2026/09/icon_4.png'); 
}
.home_7 h3 {
    --theme-font-size: 20px;
	line-height: 1.225; 
	transition: color 0.5s ease;
} 
.home_7 .columns_2_ > div:hover h3 {
   background: linear-gradient(90deg, #5a79f3 0%, #57c5d4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent; 
} 
.home_7 .columns_2_ p {
	font-size: 12px; 
	line-height: 1.325;
	margin-bottom: 5px; 
} 
.home_7 .columns_1_ p {
	font-size: 12px;
    line-height: 1.325;
    text-align: right;
	padding-top: 15px;
}
.home_7 .outer {
	width: 100%; 
	overflow: hidden; 
	margin-top: 35px; 
	display: block; 
	text-align: center;
	padding: 10px;
}
/* -------------------------------------------------------- */
/* Home 8 ------------------------------------------------- */ 
.home_8 {
	border-radius: 30px;
}
.home_8 h2.title {
	text-align: center; 
	color: #fff;
} 
.page-id-8 .home_8 .wrap_in {
    padding: 70px 0 25px; 
}
.home_8 h3 {
	font-size: 22px;
	line-height: 1.325;
}
.home_8 h3 span {
	color: #000; 
}
.home_8 .card .btn_classic {
    padding: 9px 9px 8px 20px;
    font-size: 10px;
} 
.home_8 .card .btn_classic img {
    width: 24px;
}
.home_8 video {
	border-radius: 15px;
}
.home_8 .pill {
	background: #d8e4ff;
    padding: 3px 10px;
    border: 2px solid #235993;
    border-radius: 25px;
    color: #235993;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 8px;
    margin: 4px 2px;
    display: inline-block;
}
.home_8 .card-2 .pill {
   background: #f2dde5;
    border: 2px solid #854869;
    color: #854869;
}
.home_8 .card-3 .pill {
    background: rgb(209 236 237);
    border: 2px solid rgb(52 108 126);
    color: rgb(53 108 128);
}
.home_8 .card p {
	    font-size: 12px;
    line-height: 1.325;
	padding-right: 50px; 
}
.home_8 .card_outer {
  display: flex;
  gap: 60px;
} 
.home_8 .card_outer > div {
  flex: 1;
}
.home_8 .cards {
      width: min(1280px, 100%);
      margin: 65px auto 0;
	padding-bottom: 10px;
    }
.home_8 .card {
      position: sticky;
      top: 250px;
      padding: 60px;
      margin-bottom: 70px;
      border-radius: 30px;
      display: flex;
      align-items: flex-end;
    }
    /* pierwsza karta */
.home_8 .card-1 {
      background: #f5f6f7; 
      z-index: 1;
    }
    /* druga karta */
.home_8 .card-2 {
      background: #e8eaee;  
      z-index: 2;
    }
    /* trzecia karta */
.home_8 .card-3 {
      background: /* #e3e3e3; */ #dcdee3;
      z-index: 3;
    }
/* --------------------------------------------------------- */ 
/* Home 9 -------------------------------------------------- */ 
.home_9 { 
	border-radius: 30px;
}
.page-id-8 .home_9  .wrap_in {
	padding: 100px 0 25px;
}
.home_9 .columns_2_ {
  display: flex;
  gap: 24px;
}
.home_9 h2.title {
	margin-bottom: 45px;
	color: #fff; 
}
.home_9 h3 {
    --theme-font-size: 18px;
	line-height: 1.225; 
	transition: color 0.5s ease;
	color: #fff;
} 
.home_9 .columns_2_ p {
  font-size: 12px; 
	line-height: 1.425; 
}
.home_9 .columns_2_ p br + br {
    line-height: 0.5;
}
.home_9 .row {
    display: flex;
    gap: 15px;
}
.home_9 .row > div {
    flex: 1;
}
.home_9 .columns_2_ img {
    width: 50px; 
	height: 50px; 
}
.home_9 .columns_2_ span {
    font-size: 12px;
    line-height: 1.325;
    display: block;
    margin-top: 7px;
	color: #57c4d5;
}
/* ============================== SLIDER OPINII ============================== */
.opinia a {
	font-size: 11px;
    font-weight: 700; 
	text-decoration: none!important;
	color: #fff;
	line-height: 2; 
}
.opinia:hover {
  background: radial-gradient(
    circle at center,
    rgba(80, 169, 209, 0.25) 0%,
    rgba(80, 169, 209, 0.18) 35%,
    rgba(80, 169, 209, 0.35) 70%,
    rgba(80, 169, 209, 0.55) 100%
  );
}
.wrap_in_opinie {
	width: 100%;
	padding: 0 0 100px;
}
.opinie { width: 100%; overflow: hidden; position: relative; } /* Tor slidera */ .opinie-track { display: flex; width: max-content; animation: opinie-scroll 60s linear infinite; will-change: transform; } /* Każda grupa opinii */ .opinie-grupa { display: flex; flex-shrink: 0; } 
/* Pojedyncza opinia */ 
.opinia { 
	width: 300px;
    flex-shrink: 0;
    margin-right: 20px;
    background: #50a9d140;
    color: #fff;
    border-radius: 15px;
    padding: 30px 25px 30px 30px; 
    transition: background 0.1s ease, color 1s ease;
    position: relative;
    overflow: hidden;
    font-size: 13px;
    line-height: 1.325;
	transition: background-color 1s ease;
} 
/* Zatrzymanie po najechaniu */ .opinie:hover .opinie-track { animation-play-state: paused; } /* Nieskończona animacja */ @keyframes opinie-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } } /* ============================== TELEFONY ============================== */ @media (max-width: 600px) { .opinia { width: 280px; margin-right: 15px; padding: 20px; } .opinie-track { animation-duration: 35s; } }
/* ---------------------------------------------------------- */
/* Home 10 --------------------------------------------------------- */
.page-id-8 .home_10 h2 {
    text-align: center; 
	margin-bottom: 100px;
}
.home_10 {
  animation: fade-out-opacity linear both;
  animation-timeline: view();
  animation-range: 50% 90%;
}

@keyframes fade-out-opacity {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}
.home_10 .gallery {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 34px;
  width: min(1280px, 100%);
}
.home_10 .column {
  display: flex;
  flex-direction: column;
  gap: 34px;
  will-change: transform;
}
.home_10 .column img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 15px;
}
/* KOLUMNA 1 — DO GÓRY */
.home_10 .column:nth-child(1) {
  animation: moveUp 5s ease-in-out infinite alternate;
}
/* KOLUMNA 2 — W DÓŁ */
.home_10 .column:nth-child(2) {
  animation: moveDown 5.5s ease-in-out infinite alternate;
}
/* KOLUMNA 3 — DO GÓRY */
.home_10 .column:nth-child(3) {
  animation: moveUp 7s ease-in-out infinite alternate;
}
/* KOLUMNA 4 — W DÓŁ */
.home_10 .column:nth-child(4) {
  animation: moveDown 5.5s ease-in-out infinite alternate;
}
/* KOLUMNA 5 — DO GÓRY */
.home_10 .column:nth-child(5) {
  animation: moveUp 5s ease-in-out infinite alternate;
}
/* KOLUMNA 6 — W DÓŁ */
.home_10 .column:nth-child(6) {
  animation: moveDown 6s ease-in-out infinite alternate;
}
.home_10 .column:nth-child(4) img:first-child {
  margin-top: 50px;
}
@keyframes moveUp {
  from {
    transform: translateY(0);
  }

  to {
    transform: translateY(-25px);
  }
}

@keyframes moveDown {
  from {
    transform: translateY(-20px);
  }

  to {
    transform: translateY(0);
  }
}

/* Delikatne opóźnienia sprawiają, że ruch nie jest zsynchronizowany */

.home_10 .column:nth-child(2) {
  animation-delay: -1.2s;
}

.home_10 .column:nth-child(3) {
  animation-delay: -2.4s;
}

.home_10 .column:nth-child(4) {
  animation-delay: -0.8s;
}

.home_10 .column:nth-child(5) {
  animation-delay: -1.8s;
}

.home_10 .column:nth-child(6) {
  animation-delay: -2.8s;
}

/* Mobile */

@media (max-width: 700px) {
  .home_10 .gallery {
    gap: 8px;
    width: 96vw;
  }

  .home_10 .column {
    gap: 8px;
  }

  .home_10 .column img {
    border-radius: 6px;
  }

  @keyframes moveUp {
    from {
      transform: translateY(0);
    }

    to {
      transform: translateY(-20px);
    }
  }

  @keyframes moveDown {
    from {
      transform: translateY(-10px);
    }

    to {
      transform: translateY(20px);
    }
  }
}

/* Szanuj ustawienie "reduce motion" */

@media (prefers-reduced-motion: reduce) {
  .home_10 .column {
    animation: none !important;
  }
}
/* -------------------------------------------------------------------- */ 
/* Home 11 ---------------------------------------------------------- */ 
.page-id-8 .home_11 .wrap_in {
	padding: 80px 0;
}
.home_11 .wrap_in {
	display: flex;
  gap: 24px;
}
.home_11 .column-50 {
  flex: 1;
}
.home_11 .column-50:nth-child(2) {
	padding-top: 10px;
}
.home_11 {
	border-radius: 30px; 
	color: #fff; 
	position: relative;
    overflow: hidden;
	margin-bottom: 0;
}
.home_11 h2.title {
	color: #fff;
	animation: showText_scroll linear both;
  animation-timeline: view();
  animation-range: entry 0% cover 40%;
}
.home_11 .btn_classic_zespol {
	background: #fff;
	color: #000;
	position: relative;
	cursor: pointer;
	margin-top: -12px;
	margin-right: 63px; 
    padding: 17px 24px; 
    border-radius: 25px;
    font-size: 11px; 
    font-weight: 500;
    text-transform: uppercase;
	transition: background 1s ease, color 1s ease;
} 
.home_11 .btn_classic_zespol:hover {
	background: #e1e1e1;
	color: #3d6df1; 
}
.home_11 .btn_classic_zespol:after {
	content: url('http://marketing-vision.com/wp-content/uploads/2026/09/button_white_arrow_.svg');
	position: absolute;
    right: -60px;
	top: 0;
	opacity: 1; 
	transition: opacity 1s ease;
}
.home_11 .btn_classic_zespol img {
	margin-left: 14px; 
	padding-bottom: 2px;
} 
.home_11 .btn_classic_zespol:hover::after {
	opacity: 0.85;
}
.home_11 p {
	margin-bottom: 20px;
}
/* ------------------------------------------------------------ */
/* Home 12 ------------------------------------------------------- */
.home_12 {
	background: #f2f2f2;
	border-radius: 30px;
}
.home_12 .outer {
	display: flex;
    gap: 24px;
}
.home_12 .column-50 {
  flex: 1;
}
.home_12 .column-50:first-child { 
	padding-right: 75px; 
	font-size: 14px;
}
.home_12 .column-50:nth-child(2) {
	background: #fff;
    padding: 40px 20px 35px 45px; 
    border-radius: 30px;
}
.home_12 form .column-2 {
	width: 50%;
    padding-right: 25px;
    float: left;
	margin-bottom: 7px; 
} 
.home_12 form .column-1 {
	width: 100%;
    padding-right: 25px;
	margin-bottom: 10px; 
}
.home_12 .wpcf7 label {
	font-size: 14px!important;
    line-height: 1.125!important;
    font-weight: 300!important;
}
.home_12 .wpcf7 label input, .home_12 .wpcf7 label textarea {
	margin-top: 5px;
}
.home_12 form textarea {
    --theme-form-field-height: 100px;
}
.page-id-8 .home_12 h2.title {
	text-align: left;
	margin-bottom: 45px;
}
.page-id-8 .wpcf7 .wpcf7-submit {
    margin-top: 5px;
    background: #000;
    color: #fff;
    cursor: pointer;
    padding: 14px 40px;
    border-radius: 25px;
    font-size: 11px;
    letter-spacing: 1px;
    font-weight: 500;
    text-transform: uppercase;
    transition: background 1s ease, color 1s ease;
}
.page-id-8 .wpcf7 .wpcf7-submit:after {
	content: url('');
}
.home_12 .column-50 .color_title_small {
	text-transform: uppercase;
	font-weight: 700;
	display: block; 
	margin-bottom: 35px;
	background: linear-gradient(90deg, #5a79f3 0%, #57c5d4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.home_12 .column-50:first-child span:not(h2 span) {
	font-weight: 700; 
}
.home_12 .outer_inside { 
	display: flex;
    gap: 24px;
	margin-top: 15px;
}
.home_12 .outer_inside .col-50 {
	flex: 1;
    border-radius: 0 20px 20px 0;
    padding: 17px;
    font-weight: 700;
    color: #229bad;
    background: linear-gradient(90deg, #efefef96 0%, #b5b5b533 100%);
    border-left: 2px solid #a9bbff;
}
.contact_name{
	background: linear-gradient(90deg, #5a79f3 0%, #57c5d4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.home_12 .outer_inside .col-50 span.kontakt_mini {
	font-size: 11px; 
	font-weight: 500;
	color: #3a4f66;
	line-height: 1.225;
}
.home_12 .outer_inside .col-50 a.kontakt_phone {
	color: #000;
}
.home_12 .outer_inside .col-50 > div {
	display: block;
    overflow: hidden;
    line-height: 1;
	font-size: 16px;
}
.outer_inside img {
	border-radius: 25px; 
	float: left; 
	margin-right: 15px;
}
.home_12 .column-50:nth-child(2) h3 {
	font-size: 18px;
    margin-bottom: 30px;
}
.home_12 .column-50:first-child .contact_email {
	font-size: 16px;
	color: #000; 
}
/* ----------------------------------------------------------------- */
/* RESPONSIVE CSS — STRONA GŁÓWNA, PAGE ID 8 */
.page-id-8,
.page-id-8 *,
.page-id-8 *::before,
.page-id-8 *::after {
    box-sizing: border-box;
}
.page-id-8 img,
.page-id-8 video {
    max-width: 100%;
    height: auto;
}
.page-id-8 {
    overflow-x: clip;
}
.page-id-8 .wrap_in {
    width: min(1280px, calc(100% - 40px));
    margin-left: auto;
    margin-right: auto;
}
.page-id-8 .btn_classic,
.page-id-8 .btn_white,
.page-id-8 .btn_classic_white,
.page-id-8 .btn_ekspert,
.page-id-8 .btn_classic_zespol {
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Laptop ≤1440px */
@media (max-width: 1440px) {
	[data-header*="type-1"] .ct-header [data-id="menu"] > ul > li > a {
    --theme-font-size: 11px;
    padding: 0 15px;
}
	.main_menu_btn.menu_btn_blue {
    padding: 7px 36px 9px 12px;
    font-size: 12px;
}
	.home_12 .column-50:first-child {
    padding-right: 35px; 
}
	.page-id-8 .home_12 h2.title br {
display: none; 
}
.main_menu_btn.main_menu_btn_black {
    font-size: 10px;
    padding: 9px 18px;
}
.home_1 h1 {
    font-size: 40px;
} 
.page-id-8 h2 {
    --theme-font-size: 32px;
}
.home_1 span.gradient-text {
    font-size: 18px;
}
.btn_classic {
    font-size: 10px;
}
.page-id-8 .wrap_in {
    width: min(1140px, calc(100% - 40px));
}
	.home_3 .btn_classic {
    padding: 6px 7px 5px 14px; 
}
	.home_3 h3 {
    --theme-font-size: 20px;
}
	.btn_classic_white {
    padding: 10px 15px 10px 14px;
    font-size: 11px;
    margin-right: 7px;
}
.btn_classic_white img {
    width: 40px;
}
	.home_4 .wrap_in > div:nth-child(3) img.contact_circle {
    padding-top: 18px;
    width: 70px;
}
.home_5 h3 {
    font-size: 26px;
	margin-bottom: 20px;
}
.home_5 h4 {
    font-size: 22px;
    padding-top: 10px;
}
	.home_6 .row {
		font-size: 13px;
	}
	.home_6 .col:nth-child(2) {
    padding-left: 40px;
}
	.home_7 h3 {
    padding-right: 25px;
}
	.home_8 .card_outer {
		gap: 40px;
	}
	.home_8 .card p {
    padding-right: 0;
}
	.home_8 .card {
    top: 200px;
	}
	.btn_classic {
    padding: 7px 9px 7px 24px; 
	} 
	.btn_white {
    padding: 12px 22px;
	}
	.home_11 .btn_classic_zespol {
		padding: 16px 24px; 
	}
	.home_6 .btn_classic_zespol {
		padding: 16px 24px; 
	}
	.home_6 .btn_ekspert:after {
    top: -3px;
	}
} 
/* Laptop ≤1280px */
@media (max-width: 1280px) {
    .page-id-8 .wrap_in {
        width: calc(100% - 40px);
    }
	.main_menu_btn.main_menu_btn_black {
        display: none;
    }
	.main_menu_btn.menu_btn_blue {
        padding: 7px 14px 9px 12px;
    }
    .home_1 h1 {
        font-size: 36px;
    }
	.home_1 span.gradient-text {
        font-size: 16px;
    }
	.home_1 p br {
		display: none;
	}
    .home_4 .wrap_in,
    .home_6 .outer,
    .home_11 .wrap_in,
    .home_12 .outer {
        gap: 20px;
    }
    .home_6 .col:nth-child(2) {
        padding-left: 30px;
    }
    .home_8 .card {
        padding: 45px;
    }
    .home_8 .card_outer {
        gap: 40px;
    }
    .home_10 .gallery {
        gap: 16px;
    }
	.btn_classic img {
    	margin-left: 10px;
	}
	.page-id-8 .wrap_in {
        width: 90%;
    }
	.page-id-8 h2 {
        --theme-font-size: 32px;
    }
	.home_5 h3 {
    margin-left: 20px;
}
	.home_5 h4 {
    margin-right: 35px;
	}
	.home_6 .col:first-child > div:last-child:not(.flex) a {
	display: flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
}
	.home_6 .btn_classic_zespol {
		float: left;
		margin-top: 15px; 
	}
	.home_12 .outer_inside {
        flex-direction: column;
    }
    .home_12 .outer_inside .col-50 {
        width: 85%;
        flex: 0 0 100%; 
    }
	.footer_outer .footer_wrap {
    gap: 30px;
    padding: 35px 0;
    font-size: 12px;
	}
}
/* Laptop ≤1225px */
@media (max-width: 1225px) {
	.columns_2 {
        flex-wrap: wrap;
    }
    .columns_2 > div {
        flex: 0 0 calc(50% - 12px);
    }
	.home_5 .row {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.home_5 .row > div {
    width: 100%;
    flex: none;
	text-align: center;
}
	.home_5 .row > div:nth-child(2) {
    text-align: center;
}
	.home_5 h4 {
        padding-top: 0;
    }
	    .home_5 h3 {
        margin-bottom: 0;
    }
	.home_8 h3 {
    font-size: 18px;
}
	.footer-column { 
    padding: 20px 0 20px 20px;
 }
}
/* Tablet ≤1140px */
@media (max-width: 1140px) {
.home_4 .wrap_in > div:nth-child(3) img.contact_circle {
    display: none;
}
	.home_4 .wrap_in > div:nth-child(3) {
    padding-top: 35px;
}
	.home_4 .wrap_in > div:nth-child(2) {
        padding-top: 12px;
    }
	.home_7 .columns_2_ {
    display: flex;
    flex-wrap: wrap;
}
.home_7 .columns_2_ > div {
    flex: 0 0 calc(50% - 12px);
    box-sizing: border-box;
}
	.footer_outer .footer_wrap > div:nth-child(2) {
    line-height: 1.825;
}
}
/* Tablet ≤1040px */
@media (max-width: 1040px) {
	.columns_1 {
        flex-direction: column;
    }
	.home_3 .columns_1 p {
		text-align: center;
	}
	.page-id-8 .columns_1 h2 {
	text-align: center;
}
	.home_6 h2.title {
    text-align: center;
}
}
/* Tablet ≤1024px */
@media (max-width: 1024px) {
    .page-id-8 .wrap_in {
        width: calc(100% - 80px);
        padding-top: 75px;
        padding-bottom: 75px;
    }
	 .page-id-8 .home_11 h2 {
        text-align: left;
    }
    .page-id-8 h2 {
        font-size: 30px;
        line-height: 1.15;
		text-align: center;
    }
	.home_11 .column-50:nth-child(2) {
		padding-top: 5px;
	}
	.home_11 p {
    margin-bottom: 0px;
		font-size: 14px;
}
    .home_1 span.gradient-text {
        font-size: 17px;
    }
    .home_2 .wrap_in {
        padding-top: 5px;
        padding-bottom: 5px;
    }
    .logos-track img {
        height: 48px;
        margin-left: 40px;
        margin-right: 40px;
    }
    .home_3 .columns_1 {
        gap: 25px;
    }
    .home_3 .columns_2 {
        gap: 18px;
    }
    .home_3 .columns_2 > div {
        padding: 25px;
    }
    .home_4 .wrap_in {
        gap: 18px;
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .home_4 .column-25 img {
        max-width: 100%;
        height: auto;
    }
    .home_5 .row {
        gap: 10px;
    }
    .home_5 h3,
    .home_5 h4 {
        overflow-wrap: anywhere;
    }
    .home_6 .col:nth-child(2) {
        padding-left: 30px;
    }
    .home_6 .flex {
        gap: 18px;
    }
    .home_6 .main_zespol {
        max-width: 100%;
        height: auto;
    }
    .home_6 .btn_classic_zespol {
        margin-right: 30px;
    }
    .home_7 .columns_1_ {
        gap: 25px;
		flex-direction: column;
    }
    .home_7 .columns_2_ {
        gap: 18px;
    }
    .home_7 .columns_2_ > div {
        padding: 25px;
    }
    .home_8 .cards {
        width: 100%;
    }
    .home_8 .card {
        padding: 40px;
        top: 180px;
    }
    .home_8 .card_outer {
        gap: 35px;
    }
    .home_8 .card img,
    .home_8 .card video {
        max-width: 100%;
        height: auto;
    }
	.home_7 .columns_1_ p {
    text-align: center;
    padding-top: 0;
}
    .home_9 .columns_2_ {
        gap: 18px;
    }
    .home_11 .wrap_in {
        gap: 30px;
    }
    .home_12 .column-50:first-child {
        padding-right: 30px;
    }
	    .home_4 .wrap_in > div:nth-child(3) {
        padding-top: 25px;
    }
.home_4 .wrap_in > div:nth-child(2) {
        padding-top: 7px;
    }
	.home_12 .outer_inside {
        display: flex;
        flex-direction: row;
        gap: 24px;
    }
.home_12 .outer_inside .col-50 {
        width: calc(50% - 12px);
        flex: 0 0 calc(50% - 12px);
        box-sizing: border-box;
    }
	.home_12 .column-50 {
	width: 100%; 
} 
.home_12 .outer {
    flex-direction: column;
}
	.page-id-8 .home_12 h2.title {
    text-align: center;
}
	.home_12 .column-50:first-child {
		text-align: center; 
	}
	.footer_outer .footer_wrap {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.footer_div p {
    max-width: 80%;
    margin: 0 auto 25px;
}
.footer_outer .footer_div:first-child {
    flex: 0 0 100%;
	text-align: center;
}
.footer_outer .footer_div:nth-child(2) {
    flex: 0 0 100%;
}
}
/* Tablet/mobile ≤930px */
@media (max-width: 930px) {
.home_4 .wrap_in {
        flex-direction: column;
    }
    .home_4 .column-50,
    .home_4 .column-25 {
        flex: none;
        width: 100%;
    }
.home_4 h2.title {
    text-align: center;
}
	.home_4 .wrap_in > div:nth-child(3) img.contact_circle {
        display: inline;
    }
	.home_4 .wrap_in > div:nth-child(2) {
        max-width: 270px; 
		text-align: center;
		margin: 0 auto;
    }
	    .home_4 .wrap_in > div:nth-child(3) {
        padding-top: 0;
        text-align: center;
    }
	.home_4 h2.title {
    padding-top: 0;
}
	.home_6 .outer {
    display: flex;
    flex-direction: column;
    gap: 24px;
}
	.home_6 .col:first-child > div:last-child:not(.flex) a {
        display: flex;
        width: fit-content;
        align-items: center;
        justify-content: center;
        text-align: center;
        float: none;
        margin: 0 auto 25px;
    }
	.home_6 .btn_ekspert { 
		margin-left: -15px;
	} 
	.home_6 .flex img.logo {
		display: none;
	}
.home_6 .flex > div {
    text-align: center;
}
	.home_6 .flex p {
    max-width: 280px;
    margin: 0 auto;
}
	.home_6 .col:nth-child(2) {
        padding-left: 0;
    }
	    .home_6 .row {
        max-width: 80%;
        margin: 0 auto 15px;
    }
	.home_6 .btn_ekspert:after {
    	position: static;
	}
	.home_6 .btn_classic_zespol {
padding: 0px 28px;
border-radius: 50px;
} 
.home_6 .btn_classic_zespol:after {
    margin-left: 10px; 
	position: static; 
}
	.home_6 .btn_ekspert:after {
		position: static;
	}
	.home_6 .row {
        max-width: 100%;
	}
	[data-footer*="type-1"] .ct-footer [data-row*="bottom"] > div {
        --grid-template-columns: repeat(1, 1fr);
		        gap: 10px;
    }
	.ct-footer [data-column="copyright"] {
		text-align: center;
	}
	.ct-footer [data-column="widget-area-2"] {
		margin: 0 auto;
	}
}
/* Tablet/mobile ≤880px */
@media (max-width: 880px) {
	.home_8 .card_outer {
        flex-direction: column;
        gap: 25px;
    }
	.home_8 .card {
    position: static;
    margin-bottom: 50px;	
	}
}
/* Tablet/mobile ≤768px */
@media (max-width: 768px) {
    .page-id-8 .wrap_in {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .page-id-8 .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
        width: calc(100% - 30px);
        margin-left: 15px;
        margin-right: 15px;
    }
    .page-id-8 h2 {
        font-size: 30px;
    }
    .main_menu_btn.menu_btn_blue {
        padding: 7px 14px;
        font-size: 12px;
    }
	.page-id-8 .home_11 h2 {
        text-align: center;
    }
	    .home_11 .column-50 {
        text-align: center;
    }
    .main_menu_btn.main_menu_btn_black {
        margin-left: 0;
    }
	.page-id-8 h2 { 
    animation: none;
}
    .home_1 {
        border-radius: 22px;
    }
    .home_1 h1 {
        font-size: 34px; 
        line-height: 1.15;
        margin-top: 25px;
        margin-bottom: 25px;
    }
    .home_1 span.gradient-text {
        font-size: 15px;
        line-height: 1.25;
    }
    .home_1 p {
        font-size: 15px;
        line-height: 1.55;
        margin-bottom: 30px;
    }
    .home_1 .btn_classic,
    .home_1 .btn_white {
        width: 100%;
        max-width: 300px;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 12px;
    }
    .home_2 .wrap_in {
        width: 100%;
        padding-top: 5px;
        padding-bottom: 5px;
    }
    .logos-track img {
        max-height: 44px;
        margin-left: 32px;
        margin-right: 32px;
    }
    .home_3 .columns_1 {
        flex-direction: column;
        gap: 20px;
    }
    .home_3 .columns_1 > div {
        width: 100%;
    }
    .home_3 .columns_2 {
        flex-direction: column;
        gap: 16px;
    }
    .home_3 .columns_2 > div {
        width: 90%;
        padding: 24px 24px 28px; 
		text-align: center; 
		margin: 0 auto;
    }
    .home_4 .wrap_in {
        flex-direction: column;
        gap: 25px;
        text-align: center;
    }
    .home_4 .column-50,
    .home_4 .column-25 {
        width: 100%;
        flex: none;
    }
    .home_4 .column-25 {
        text-align: center;
    }
    .home_4 .column-25 img {
        display: block;
        max-width: 240px;
        margin-left: auto;
        margin-right: auto;
    }
    .home_4 .column-25:last-child img {
        max-width: 210px;
    }
    .home_5 .row {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 18px 15px;
    }
    .home_5 .row > div {
        width: 100%;
        min-width: 0;
    }
    .home_5 .row > div:first-child {
        text-align: center;
    }
    .home_5 .row > div:nth-child(2) {
        text-align: center; 
    }
    .home_5 h3 {
        margin-left: 10px;
    }
    .home_5 h4 {
        margin-right: 25px;
    }
    .home_6 .outer {
        flex-direction: column;
        gap: 30px;
    }
    .home_6 .col {
        width: 100%;
    }
    .home_6 .col:nth-child(2) {
        padding-left: 0;
    }
    .home_6 .flex {
        gap: 18px;
    }
    .home_6 .main_zespol {
        width: 100%;
        max-width: 100%;
    }
    .home_6 .btn_classic_zespol {
        float: none;
        display: inline-flex;
        margin: 15px 0 0 0;
    }
    .home_6 .row,
    .home_6 .row:hover {
        width: 100%;
    }
    .home_7 .columns_1_ {
        flex-direction: column;
        gap: 20px;
    }
    .home_7 .columns_1_ > div {
        width: 100%;
    }
	.home_7 h3 {
        padding-right: 0;
        color: #4b73df;
    }
    .home_7 .columns_2_ {
        flex-direction: column;
        gap: 16px;
    }
    .home_7 .columns_2_ > div {
        width: 100%;
        padding: 24px;
		text-align: center;
    }
	.home_7 .columns_2_ > div:after {
		display: none;
	}
	.home_7 h3 br {
        display: none;
    }
    .home_8 .cards {
        margin-top: 35px;
    }
    .home_8 .card {
        position: relative;
        top: auto;
        padding: 30px;
        margin-bottom: 25px;
    }
    .home_8 .card p {
        padding-right: 0;
    }
    .home_8 .card video {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
    }
    .home_9 .columns_2_ {
        flex-direction: column;
        gap: 16px;
    }
    .home_9 .row {
        gap: 12px;
        align-items: center;
    }
    .home_10 .gallery {
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        width: 100%;
    }
	.home_10 .column {
    animation: none !important;
}
	.home_10 .column:nth-child(4) img:first-child {
    margin-top: 0;
}
    .home_11 .wrap_in {
        flex-direction: column;
        gap: 30px;
    }
    .home_11 .column-50 {
        width: 100%;
    }
    .home_12 .outer {
        flex-direction: column;
        gap: 30px;
    }
    .home_12 .column-50 {
        width: 100%;
    }
    .home_12 .column-50:first-child {
        padding-right: 0;
		text-align: center;
    }
    .home_12 .column-50:nth-child(2) {
        padding: 30px 25px;
    }
    .home_12 .outer_inside {
        gap: 15px;
		        text-align: left;
    }
    .home_12 form .column-2,
    .home_12 form .column-1 {
        width: 100%;
        padding-right: 0;
        float: none;
    }
    .home_12 form input,
    .home_12 form textarea,
    .home_12 form select { 
        max-width: 100%;
    }
	.footer_div p {
    max-width: 90%;
	}
	.footer-column {
        padding: 0;
    }
	.footer_outer .footer_wrap > div:nth-child(2) {  
    flex-direction: column;
	}
	.footer_outer .footer-column {
    	flex: 0 0 100%;
		text-align: center;
	}
	    .footer_outer .footer_wrap { 
        gap: 0;
    }
}
/* Mobile ≤689.98px */
@media (max-width: 689.98px) {
	[data-header*="type-1"] #offcanvas {
    --side-panel-width: 100%; 
} 
}
/* Mobile ≤630px */
@media (max-width: 630px) {
	.home_12 .outer_inside {
        flex-direction: column;
    }
    .home_12 .outer_inside .col-50 {
        width: 100%;
    }
}
/* Mobile ≤600px */
@media (max-width: 600px) {
    .page-id-8 .wrap_in {
        width: 85%; 
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .page-id-8 h2 {
        font-size: 28px;
        line-height: 1.15;
    }
    .home_1 h1 {
        font-size: 32px;
        line-height: 1.15;
        margin-top: 20px;
        margin-bottom: 22px;
    }
    .home_1 span.gradient-text {
        font-size: 14px;
    }
    .home_1 p {
        font-size: 14px;
        line-height: 1.55;
    }
    .home_1 .btn_classic,
    .home_1 .btn_white {
        width: 100%;
        max-width: 360px;
    }
    .home_3 .columns_2 > div {
        padding: 22px;
    }
    .home_4 .wrap_in {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .home_4 .column-25 img {
        max-width: 220px;
    }
    .home_5 .row {
        padding: 16px 12px;
    }
    .home_5 h3 {
        font-size: 24px;
        margin-left: 8px;
    }
	span.number {
    	font-size: 28px; 
	}
    .home_5 h4 {
        font-size: 17px;
    }
    .home_5 .row > div:nth-child(2) img {
        width: 36px;
        height: auto;
    }
    .home_6 .flex {
        flex-direction: column;
    }
    .home_6 .flex > div {
        width: 100%;
        min-width: 0;
		margin-bottom: 20px;
    }
    .home_6 .flex p {
        font-size: 13px;
    }
    .home_6 .row {
        width: 100%;
		min-height: 105px;
        padding: 12px;
        font-size: 13px;
    }
    .home_6 .row .text span {
        font-size: 15px;
    }
    .home_6 .row img {
        padding-right: 10px;
    }
	.home_6 .flex > div img {
		max-width: 300px; 
	}
    .home_6 .btn_ekspert,
    .home_6 .btn_classic_zespol {
        max-width: 100%;
    }
	.home_6 .flex img.logo {
        display: block;
        margin: 0 auto 35px;
    }
    .home_7 .columns_2_ > div {
        padding: 21px;
    }
    .home_7 .columns_2_ > div::after {
        transform: scale(.8);
        transform-origin: top right;
    }
    .home_8 .card {
        padding: 22px;
        margin-bottom: 20px;
        border-radius: 20px;
    }
    .home_8 .card_outer {
        gap: 20px;
    }
    .home_8 .pill {
        font-size: 7px;
        padding: 3px 8px;
    }
    .home_9 .columns_2_ img {
        width: 42px;
        height: 42px;
    }
    .home_9 h3 {
        font-size: 16px;
    } 
    .home_10 .column img {
        border-radius: 6px;
    }
    .home_11 .wrap_in {
        gap: 25px;
    }
    .home_12 .column-50:nth-child(2) {
        padding: 25px 18px;
    }
    .home_12 .column-50:nth-child(2) h3 {
        font-size: 20px;
        margin-bottom: 25px;
    } 
}

/* Small mobile ≤480px */
@media (max-width: 480px) {
    .page-id-8 .wrap_in { 
        padding-top: 45px;
        padding-bottom: 45px;
    }
    .page-id-8 h2 {
        font-size: 26px;
    }
    .home_1 h1 {
        font-size: 29px;
        line-height: 1.15;
    }
    .home_1 span.gradient-text {
        font-size: 13px;
    }
    .home_1 p br {
        display: none;
    }
    .home_1 p {
        font-size: 14px;
    }
    .home_1 .btn_classic,
    .home_1 .btn_white {
        width: 95%;
        max-width: 95%;
    }
    .home_3 .columns_2 > div {
        padding: 20px;
    }
    .home_4 .wrap_in {
        gap: 20px;
    }
    .home_4 .column-25 img {
        max-width: 200px;
    }
    .home_5 .row {
        padding: 15px 10px;
    } 
    .home_5 h4 {
        font-size: 16px;
    }
    .home_5 .row > div:nth-child(2) {
        gap: 8px;
    }
    .home_5 .row > div:nth-child(2) img {
        display: block;
        text-align: center;
        margin: 0 auto;
    }
	.home_5 h4 {
        margin-right: 0;
    }
	span.number {
		display: block;
	}
    .home_6 .row {
        padding: 11px;
        font-size: 12.5px;
    }
    .home_6 .row .text span {
        font-size: 14px;
    }
    .home_6 .row img {
        width: 34px;
        padding-right: 8px;
    }
	.home_3 .columns_2 > div {
        width: 100%; 
	}
    .home_7 .columns_2_ > div {
        padding: 20px;
    }
    .home_7 .columns_2_ > div::after {
        transform: scale(.7);
    }
    .home_7 .columns_2_ h3 {
        padding-right: 40px;
    }
    .home_8 .card {
        padding: 18px;
        border-radius: 18px;
    }
    .home_8 .card_outer {
        gap: 18px;
    }
    .home_8 .pill {
        font-size: 7px;
        padding: 3px 7px;
    }
    .home_8 .btn_classic {
        max-width: 100%;
    }
    .home_9 .row {
        gap: 10px;
    }
    .home_9 .columns_2_ img {
        width: 40px;
        height: 40px;
    }
    .home_10 .gallery {
        gap: 5px;
    }
    .home_11 .wrap_in {
        gap: 20px;
    }
    .home_12 .column-50:nth-child(2) {
        padding: 20px 15px;
    }
    .home_12 .outer_inside .col-50 {
        width: 100%;
        padding-left: 14px;
        padding-right: 14px;
    }
}

/* Bardzo mały mobile ≤375px */
@media (max-width: 375px) {
    .page-id-8 .wrap_in {
        width: calc(100% - 16px);
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .page-id-8 h2 {
        font-size: 24px;
    }
    .home_1 h1 {
        font-size: 26px;
    }
    .home_1 span.gradient-text {
        font-size: 12px;
    }
    .home_1 p {
        font-size: 13px;
    }
    .home_1 .btn_classic,
    .home_1 .btn_white {
        font-size: 12px;
        padding: 13px 12px;
    }
    .home_5 .row {
        padding: 14px 9px;
    }
    .home_5 h3 {
        font-size: 15px;
    }
    .home_5 h4 {
        font-size: 15px;
    }
    .home_5 .row > div:nth-child(2) img {
        width: 30px;
    }
    .home_6 .row {
        padding: 10px;
        font-size: 12px;
    }
    .home_6 .row .text span {
        font-size: 13px;
    }
    .home_6 .row img {
        width: 32px;
        padding-right: 7px;
    }
    .home_7 .columns_2_ > div {
        padding: 18px;
    }
    .home_7 .columns_2_ h3 {
        padding-right: 35px;
    }
    .home_8 .card {
        padding: 16px;
    }
    .home_8 .pill {
        font-size: 6.5px;
        padding: 3px 6px;
    }
    .home_9 h3 {
        font-size: 15px;
    }
    .home_9 .columns_2_ img {
        width: 38px;
        height: 38px;
    }
    .home_12 .column-50:nth-child(2) {
        padding: 18px 12px;
    }
    .home_12 .outer_inside .col-50 {
        padding-left: 10px;
        padding-right: 10px;
    }
}

/* Ultra small ≤320px */
@media (max-width: 320px) {
    .page-id-8 .wrap_in {
        width: calc(100% - 30px);
        padding-top: 35px;
        padding-bottom: 35px;
    }
    .page-id-8 h2 {
        font-size: 22px;
    }
    .home_1 h1 {
        font-size: 24px;
    }
    .home_1 span.gradient-text {
        font-size: 11.5px;
    }
    .home_1 p {
        font-size: 12.5px;
    }
    .home_1 .btn_classic,
    .home_1 .btn_white {
        font-size: 11px;
        padding: 12px 10px;
    }
    .home_4 .column-25 img {
        max-width: 180px;
    }
    .home_5 .row {
        padding: 12px 8px;
    }
    .home_5 h4 {
        font-size: 14px;
    }
    .home_5 .row > div:nth-child(2) img {
        width: 28px;
    }
    .home_6 .row {
        padding: 9px;
        font-size: 11.5px;
    }
    .home_6 .row .text span {
        font-size: 12.5px;
    }
    .home_6 .row img {
        width: 30px;
        padding-right: 6px;
    }
    .home_7 .columns_2_ > div {
        padding: 16px;
    }
    .home_7 .columns_2_ h3 {
        padding-right: 30px;
        font-size: 18px;
    }
    .home_8 .card {
        padding: 14px;
        border-radius: 15px;
    }
    .home_8 .pill {
        font-size: 6px;
        padding: 2px 5px;
    }
    .home_9 h3 {
        font-size: 14px;
    }
    .home_10 .gallery {
        gap: 4px;
    }
    .home_12 .column-50:nth-child(2) {
        padding: 15px 10px;
    }
    .home_12 .outer_inside .col-50 {
        padding-left: 8px;
        padding-right: 8px;
    }
    .home_12 .column-50:nth-child(2) h3 {
        font-size: 18px;
    }
}

/* Minimum viewport ≤280px */
@media (max-width: 280px) {
    .page-id-8 .wrap_in {
        width: calc(100% - 8px);
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .page-id-8 h2 {
        font-size: 21px;
    }
    .home_1 {
        border-radius: 16px;
    }
    .home_1 h1 {
        font-size: 22px;
    }
    .home_1 span.gradient-text {
        font-size: 10.5px;
    }
    .home_1 p {
        font-size: 12px;
    }
    .home_1 .btn_classic,
    .home_1 .btn_white {
        font-size: 10px;
        padding: 11px 8px;
    }
    .home_3 .columns_2 > div {
        padding: 16px;
    }
    .home_4 .wrap_in {
        gap: 15px;
    }
    .home_4 .column-25 img {
        max-width: 160px;
    }
    .home_5 .row {
        padding: 11px 7px;
    }
    .home_5 h3 {
        font-size: 13px;
    }
    .home_5 h4 {
        font-size: 13px;
    }
    .home_5 .row > div:nth-child(2) {
        gap: 6px;
    }
    .home_5 .row > div:nth-child(2) img {
        width: 25px;
    }
    .home_6 .row {
        padding: 8px;
        font-size: 11px;
    }
    .home_6 .row .text span {
        font-size: 12px;
    }
    .home_6 .row img {
        width: 28px;
        padding-right: 5px;
    }
    .home_7 .columns_2_ > div {
        padding: 14px;
    }
    .home_7 .columns_2_ h3 {
        font-size: 17px;
        padding-right: 25px;
    }
    .home_8 .card {
        padding: 12px;
        border-radius: 13px;
    }
    .home_8 .pill {
        font-size: 5.5px;
        padding: 2px 4px;
    }
    .home_9 h3 {
        font-size: 13px;
    }
    .home_9 .columns_2_ img {
        width: 34px;
        height: 34px;
    }
    .home_10 .gallery {
        gap: 3px;
    }
    .home_12 .column-50:nth-child(2) {
        padding: 12px 8px;
    }
    .home_12 .outer_inside .col-50 {
        padding-left: 6px;
        padding-right: 6px;
    }
    .home_12 .column-50:nth-child(2) h3 {
        font-size: 17px;
    }
    .home_12 form input,
    .home_12 form textarea,
    .home_12 form select {
        font-size: 12px;
    }
}
/* Podstrony ------ */
/* ==============================================================
   1. GLOBALNE USTAWIENIA DLA PODSTRONY (Typografia, Światło)
============================================================== */
.sub_o_nas_1, .sub_o_nas_2, .sub_o_nas_3, .sub_o_nas_5, .sub_o_nas_6, .sub_o_nas_7, .sub_o_nas_8, .sub_o_nas_11 {
    border-radius: 30px; 
    position: relative;
    overflow: hidden;
}
.sub_o_nas_1 .wrap_in {
	width: min(1280px, calc(100% - 40px)); 
    margin: 0 auto;
	padding: 50px 0 80px;
}
.sub_o_nas_2 .wrap_in, .sub_o_nas_3 .wrap_in, .sub_o_nas_5 .wrap_in, .sub_o_nas_7 .wrap_in, .sub_o_nas_11 .wrap_in {
    width: min(1280px, calc(100% - 40px)); 
    margin: 0 auto;
    padding: 50px 0;
}
.sub_o_nas_1 .btn_classic {
    padding: 17px 16px; 
	margin: 0 25px;
}
.sub_o_nas_7 .btn_classic {
	padding: 10px 14px;
}
/* Poprawa czytelności długich tekstów */
.sub_o_nas_3 p, .sub_o_nas_7 p {
    color: #4b5563; /* Złamana, bardzo czytelna szarość dla jasnego tła */
    line-height: 1.7; /* Większe światło między wierszami */
    font-size: 15px;
    margin-bottom: 16px;
}
.sub_o_nas_3 .columns_1 {
	width: min(1050px, calc(100% - 60px)); 
	margin: 0 auto;
	text-align: center;
}
.sub_o_nas_6 .wrap_in {
	width: min(1050px, calc(100% - 60px)); 
	margin: 0 auto; 
	padding: 50px 0;
} 
.sub_o_nas_8 .wrap_in {
	width: min(1050px, calc(100% - 60px)); 
	margin: 0 auto; 
	padding: 50px 0;
}
.sub_o_nas_6 p, .sub_o_nas_11 p {
    color: #d1d5db; /* Jasna szarość dla ciemnego tła, nie męczy wzroku tak jak czysta biel */
    line-height: 1.6;
}
.sub_o_nas_8 .cards p {
	color: #000; 
}
.sub_o_nas_11 h2 {
	color: #fff; 
}
.sub_o_nas_3.sub_strony_3 {
	text-align: center; 
} 
.sub_o_nas_6.sub_strony_6 {
	text-align: center; 
}
.sub_o_nas_1.sub_audyt_1 p {
    margin-bottom: 0;
    max-width: auto;
    margin-left: auto;
    margin-right: auto;
    font-size: 12px; 
}
.sub_o_nas_1.sub_audyt_1 form p {
text-align: left;
}
.sub_audyt_1 form .column-2 {
    width: 50%;
    padding-right: 25px;
    float: left;
    margin-bottom: 7px;
} 
.sub_o_nas_3.sub_audyt_3 .btn_classic {
    padding: 10px 14px;
} 
.sub_o_nas_6.sub_seo_6 .img_row img {
	max-height: 70px;
    margin: 0 12px;
    border: 1px solid #e1e1e1;
    padding: 10px;
    border-radius: 15px; 
} 
/* SEO ----------------------------------------- */
.sub_o_nas_3.sub_seo_3 .btn_classic {
    padding: 10px 14px;
} 
.sub_o_nas_11.sub_seo_11 form p {
	color: #000;
}
.sub_o_nas_11.sub_seo_11 form .column-2 {
    width: 50%;
    padding-right: 25px;
    float: left;
    margin-bottom: 7px;
}
.sub_o_nas_1.sub_seo_1 .columns_2_ {
    display: flex;
    gap: 30px;
}
.sub_o_nas_1.sub_seo_1 .columns_2_ > div {
    flex: 1; 
}
.sub_o_nas_1.sub_seo_1 .columns_2_ > div:first-child {
    text-align: left; 
} 
.sub_seo_1 {
	text-align: left;
}
.sub_seo_1 .span_color_fiolet {
	color: #8ba2ef; 
} 
.sub_o_nas_1.sub_seo_1 h1 {
    font-size: 38px;
    margin-top: 10px;
}
.sub_o_nas_1.sub_seo_1 p { 
    font-size: 13px; 
	margin-bottom: 30px; 
	padding-right: 90px; 
	line-height: 1.525; 
} 
.sub_o_nas_1.sub_seo_1 .wrap_in {
	width: min(1280px, calc(100% - 40px)); 
    margin: 0 auto;
	padding: 80px 0 40px;
} 
.sub_o_nas_7.sub_seo_7 .columns_4_ {
	display: flex;
    gap: 24px;
} 
.sub_o_nas_7.sub_seo_7 .columns_4_ > div {
  flex: 1;
  padding: 30px 30px 25px; 
  border-radius: 15px;

  background: #f6f6f6; 

  position: relative;
  isolation: isolate;

  transition: background-color 1s ease;
}
.sub_o_nas_7.sub_seo_7 .columns_4_ > div:hover {
  background: #fff;
}

.sub_o_nas_7.sub_seo_7 .columns_4_ > div:hover::before {
  opacity: 1;
}
.sub_o_nas_7.sub_seo_7 .columns_4_ > div::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 2px;

  background: linear-gradient(90deg, #5987f7, #6abfcf);

  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;

  opacity: 0;
  transition: opacity 1s ease;

  pointer-events: none;
  z-index: -1;
} 
.sub_o_nas_7.sub_seo_7 h3 {
    --theme-font-size: 20px;
	line-height: 1.225; 
	transition: color 0.5s ease;
	padding-top: 15px; 
} 
.sub_o_nas_7.sub_seo_7 .columns_4_ > div:hover h3 {
	background: linear-gradient(90deg, #5a79f3 0%, #57c5d4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent; 
} 
.sub_o_nas_7.sub_seo_7 .columns_4_ p {
	font-size: 12px; 
	line-height: 1.325; 
	margin-bottom: 25px;
} 
.sub_o_nas_2.sub_seo_2 .columns_2_ {
	display: flex;
    gap: 30px; 
	font-size: 15px; 
} 
.sub_o_nas_2.sub_seo_2 .columns_2_ > div { 
	flex: 1; 
	background: #50b1d959;
    border-radius: 20px;
    padding: 25px 40px; 
    color: #fff;
    margin-bottom: 15px;
    transition: background 1s ease, color 1s ease, border 1s ease, width 1s ease;
} 
.sub_o_nas_2.sub_seo_2 .columns_2_ > div:hover {
  background: radial-gradient(
    circle at center,
    rgba(80, 169, 209, 0.25) 0%,
    rgba(80, 169, 209, 0.18) 35%,
    rgba(80, 169, 209, 0.35) 70%,
    rgba(80, 169, 209, 0.55) 100%
  );
}
.sub_o_nas_2.sub_seo_2 {
	background: #05070d;
    background: radial-gradient(ellipse 35% 55% at 100% 100%, rgba(63, 91, 190, 0.95) 0%, rgba(45, 75, 160, 0.65) 30%, transparent 82%), radial-gradient(ellipse 52% 72% at 77% 100%, rgba(53, 139, 150, 0.86) 0%, rgba(40, 87, 101, 0.53) 35%, transparent 72%), radial-gradient(ellipse 48% 68% at 48% 105%, rgb(109, 91, 163) 0%, rgba(109, 91, 163, 0.73) 38%, transparent 84%), radial-gradient(ellipse 36% 58% at 0% 100%, rgba(43, 112, 183, 0.90) 0%, rgba(34, 83, 145, 0.65) 45%, transparent 82%), radial-gradient(ellipse 45% 70% at 22% 0%, rgba(49, 103, 110, 0.82) 0%, rgba(35, 75, 82, 0.62) 48%, transparent 92%), #05070d;
    color: #fff;
} 
.sub_o_nas_2.sub_seo_2 h2 {
	color: #fff;
} 
.sub_o_nas_2.sub_seo_2 h3 {
	color: #86d0e0; 
	font-size: 22px; 
} 
.sub_o_nas_2.sub_seo_2 .small_text {
	font-size: 13px;
    color: #c9c9c9; 
    margin-top: 10px; 
	margin-bottom: 0; 
} 
.sub_o_nas_2.sub_seo_2 .more_box summary {
    cursor: pointer;
    font-weight: 600;
    margin-top: 8px;
	background: #2190ca4a; 
    user-select: none;
    transition: opacity 0.2s;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    font-size: 12px;
    color: #86b3bc;
    list-style: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 25px;
    border: 2px solid #86b3bc;
    padding: 4px 16px 3px;
}
/* Ukrywa domyślny marker w przeglądarkach Safari / WebKit */
.sub_o_nas_2.sub_seo_2 .more_box summary::-webkit-details-marker {
    display: none;
}
/* Nowy marker po tekście */
.sub_o_nas_2.sub_seo_2 .more_box summary::after {
    content: url('https://marketing-vision.com/wp-content/uploads/2026/10/arrow-1.svg'); 
    font-size: 0.7em;
    display: inline-block;
    transition: transform 0.35s ease;
}
/* Płynny obrót markera w dół po otwarciu */
.sub_o_nas_2.sub_seo_2 .more_box[open] summary::after {
    transform: rotate(90deg);
}
.sub_o_nas_2.sub_seo_2 .more_box summary:hover {
    opacity: 0.8;
}
/* Odstęp przeniesiony na tekst, żeby nie "skakał" przy otwieraniu */
.sub_o_nas_2.sub_seo_2 .more_box .small_text {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 20px; 
} 
/* Płynne pojawianie się (fallback dla starszych przeglądarek) */
.sub_o_nas_2.sub_seo_2 .more_box[open] .small_text {
    animation: smoothOpen 0.35s ease-out;
}
@keyframes smoothOpen {
    from {
        opacity: 0;
        transform: translateY(-6px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* Pełna animacja wysokości w obie strony (otwieranie + zamykanie) */
@supports (interpolate-size: allow-keywords) {
    .sub_o_nas_2.sub_seo_2 .more_box {
        interpolate-size: allow-keywords;
    }
    .sub_o_nas_2.sub_seo_2 .more_box::details-content {
        height: 0;
        opacity: 0;
        overflow: clip;
        transition: height 0.35s ease, opacity 0.35s ease, content-visibility 0.35s ease allow-discrete;
    }
    .sub_o_nas_2.sub_seo_2 .more_box[open]::details-content {
        height: auto;
        opacity: 1;
    }
    .sub_o_nas_2.sub_seo_2 .more_box[open] .small_text {
        animation: none;
    }
}
.sub_o_nas_6.sub_seo_6 {
	background: #f4f4f4; 
} 
.sub_o_nas_6 p {
	color: #4b5563; 
}
/* ==============================================================
   2. SEKCJA HERO (Wstęp) - .sub_o_nas_1
============================================================== */
.sub_o_nas_1 {
    background: #05070d;
    background: 
        radial-gradient(ellipse 35% 55% at 100% 100%, rgba(63, 91, 190, 0.95) 0%, rgba(45, 75, 160, 0.65) 30%, transparent 82%),
        radial-gradient(ellipse 52% 72% at 77% 100%, rgba(53, 139, 150, 0.86) 0%, rgba(40, 87, 101, 0.53) 35%, transparent 72%),
        radial-gradient(ellipse 48% 68% at 48% 105%, rgb(109, 91, 163) 0%, rgba(109, 91, 163, 0.73) 38%, transparent 84%),
        radial-gradient(ellipse 36% 58% at 0% 100%, rgba(43, 112, 183, 0.90) 0%, rgba(34, 83, 145, 0.65) 45%, transparent 82%),
        radial-gradient(ellipse 45% 70% at 22% 0%, rgba(49, 103, 110, 0.82) 0%, rgba(35, 75, 82, 0.62) 48%, transparent 92%),
        #05070d; 
    color: #fff;
    text-align: center;
}

.sub_o_nas_1 h1 {
    color: #fff;
    line-height: 1.25;
    font-size: 42px;
    margin-top: 20px;
    margin-bottom: 30px;
    max-width: 1050px;
    margin-left: auto;
    margin-right: auto;
}

.sub_o_nas_1 p {
    margin-bottom: 50px;
    max-width: 1050px;
    margin-left: auto;
    margin-right: auto;
    font-size: 16px;
}

.sub_o_nas_1 span.gradient-text {
    text-transform: uppercase;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 18px;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
    display: inline-block;
    background: linear-gradient(90deg, #5a79f3, #7ac5da); 
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* Efekt pojawiania się głównego nagłówka */
.blurred_text {
    animation: showText 1.2s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}
@keyframes showText {
    0% { opacity: 0; filter: blur(15px); transform: translateY(15px); }
    100% { opacity: 1; filter: blur(0); transform: translateY(0); }
}

/* ==============================================================
   3. SEKCJE TEKSTOWE - .sub_o_nas_3
============================================================== */
.sub_o_nas_3 {
    background: #f8fafc; /* Niezwykle delikatna, przyjemna dla oka szaro-błękitna biel */
}
.sub_o_nas_3 ul {
	text-align: left;
}
.sub_o_nas_3 li {
	 width: fit-content;
  margin: 0 auto;
}
/* ==============================================================
   4. ZESPÓŁ - .sub_o_nas_6
============================================================== */
.sub_o_nas_6 h2.title {
    color: #fff;
    padding-bottom: 30px;
}
.sub_o_nas_6 .flex {
    display: flex;
    gap: 40px; 
	max-width: 80%; 
	margin: 0 auto; 
} 
.sub_o_nas_6 .outer {
    display: flex;
    gap: 40px;
}
.sub_o_nas_6 .col, .sub_o_nas_6 .flex > div {
    flex: 1;
    color: #fff;
} 
.sub_o_nas_6 .question_item {
	color: #90e1db; 
}
.sub_o_nas_6 img.main_zespol {
    border-radius: 20px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.25); /* Dodanie głębi zdjęciom */
    transition: transform 0.4s ease;
}
.sub_o_nas_6 .flex, .sub_o_nas_6 h2 {
	text-align: center;
}
.sub_o_nas_6 img.main_zespol:hover {
    transform: scale(1.02); /* Subtelne przybliżenie zdjęcia po najechaniu */
}
.sub_o_nas_6 h3 {
    color: #fff;
    font-size: 26px; /* Powiększenie nagłówka imienia i nazwiska */
    margin-top: 25px;
    margin-bottom: 8px;
}
.sub_o_nas_6 .row {
    background: rgba(80, 177, 217, 0.15); 
    border-radius: 12px;
    border-left: 4px solid rgba(84, 163, 213, 0.5); 
    padding: 20px;
    color: #e5e7eb;
    line-height: 1.5;
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 15px;
    width: 100%;
    transition: all 0.4s ease; 
}
.sub_o_nas_6 .row:hover {
    border-left: 4px solid #57c5d4;
    background: rgba(80, 177, 217, 0.25); 
    transform: translateX(5px); /* Mikro-interakcja: przesunięcie w prawo */
}
.sub_o_nas_6 .row .text span {
    font-size: 14px;
    color: #57c5d4;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: block;
    margin-bottom: 6px;
}

/* ==============================================================
   5. OFERTA I WIDOCZNOŚĆ (Karty) - .sub_o_nas_7
============================================================== */
.sub_o_nas_7 {
    background: transparent;
}
.sub_o_nas_7 .columns_2_ {
    display: flex;
    gap: 30px; 
}
.sub_o_nas_7 .columns_2_ > div, .sub_o_nas_7 .columns_1_ > div {
    flex: 1;
    padding: 40px 35px;
    border-radius: 20px;
    background: #fff;
    position: relative;
    isolation: isolate;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03); 
    transform: translateY(0);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}
/* Karta nadal delikatnie unosi się po najechaniu, co daje fajny efekt interakcji */
.sub_o_nas_7 .columns_2_ > div:hover, .sub_o_nas_7 .columns_1_ > div:hover {
    transform: translateY(-7px); 
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08); 
}

/* Gradientowa obwódka widoczna cały czas (zmieniono opacity na 1) */
.sub_o_nas_7 .columns_2_ > div::before, .sub_o_nas_7 .columns_1_ > div::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 2px;
    background: linear-gradient(135deg, #5987f7, #6abfcf); 
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); 
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    opacity: 1; /* <-- Ramka jest teraz widoczna domyślnie */
    pointer-events: none;
    z-index: -1;
}

/* Gradientowy nagłówek H3 widoczny cały czas */
.sub_o_nas_7 .columns_2_ h3 {
    font-size: 20px;
    line-height: 1.3;
    margin-bottom: 15px;
    font-weight: 700;
    background: linear-gradient(90deg, #5a79f3 0%, #57c5d4 100%); /* <-- Kolor nałożony domyślnie */
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
/* ==============================================================
   6. PROJEKTY (Karty sticky) - .sub_o_nas_8
============================================================== */
.sub_o_nas_8 h2.title {
    text-align: center;
    color: #fff;
    margin-bottom: 20px;
}
.sub_o_nas_8 .cards {
    width: min(1000px, 100%); /* Zwężenie ułatwia odbiór kart jedna pod drugą */
    margin: 60px auto 0;
    padding-bottom: 10px;
}
.sub_o_nas_8 .card {
    position: sticky;
    top: 150px; /* Płynniejszy moment przylegania do góry ekranu */
    padding: 50px 60px;
    margin-bottom: 70px;
    border-radius: 30px;
    display: flex;
    align-items: center;
    box-shadow: 0 -10px 40px rgba(0,0,0,0.15); /* Cień nadaje efekt układania w stos */
}
.sub_o_nas_8 h3 {
	font-size: 22px;
	line-height: 1.325;
}
.sub_o_nas_8 h3 span {
	color: #000; 
}
.sub_o_nas_8 .card .btn_classic {
    padding: 9px 9px 8px 20px;
    font-size: 10px;
} 
.sub_o_nas_8 .card .btn_classic img {
    width: 24px;
}
.sub_o_nas_8 video {
	border-radius: 15px;
}
.sub_o_nas_8 .pill {
	background: #d8e4ff;
    padding: 3px 10px;
    border: 2px solid #235993;
    border-radius: 25px;
    color: #235993;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 8px;
    margin: 4px 2px;
    display: inline-block;
}
.sub_o_nas_8 .card-2 .pill {
   background: #f2dde5;
    border: 2px solid #854869;
    color: #854869;
}
.sub_o_nas_8 .card-3 .pill {
    background: rgb(209 236 237);
    border: 2px solid rgb(52 108 126);
    color: rgb(53 108 128);
}
.sub_o_nas_8 .card p {
	    font-size: 12px;
    line-height: 1.325;
	padding-right: 50px; 
}
.sub_o_nas_8 .card_outer {
  display: flex;
  gap: 60px;
} 
.sub_o_nas_8 .card_outer > div {
  flex: 1;
}
.sub_o_nas_8 .cards {
      width: min(1280px, 100%);
      margin: 65px auto 0;
	padding-bottom: 10px;
    }
.sub_o_nas_8 .card {
      position: sticky;
      top: 250px;
      padding: 60px;
      margin-bottom: 70px;
      border-radius: 30px;
      display: flex;
      align-items: flex-end;
    }
    /* pierwsza karta */
.sub_o_nas_8 .card-1 {
      background: #f5f6f7; 
      z-index: 1;
    }
    /* druga karta */
.sub_o_nas_8 .card-2 {
      background: #e8eaee;  
      z-index: 2;
    }
    /* trzecia karta */
.sub_o_nas_8 .card-3 {
      background: /* #e3e3e3; */ #dcdee3;
      z-index: 3;
    }
.sub_o_nas_8 .card-1 { background: #f8fafc; z-index: 1; }
.sub_o_nas_8 .card-2 { background: #f1f5f9; z-index: 2; }
.sub_o_nas_8 .card-3 { background: #e2e8f0; z-index: 3; }

.sub_o_nas_8 .card_outer {
    display: flex;
    gap: 40px;
    width: 100%;
}
.sub_o_nas_8 .card h3 {
    font-size: 20px;
    color: #111827;
}
/* ==============================================================
   7. SEKCJA FAQ - .sub_o_nas_5
============================================================== */
.sub_o_nas_5 .grid {
    padding-top: 10px;
    max-width: 900px;
    margin: 0 auto;
}
.sub_o_nas_5 .row {
    border: 1px solid #e5e7eb; /* Subtelna ramka wokoło elementu */
    padding: 25px 35px;
    background: #fff;
    border-radius: 16px;
    margin-bottom: 16px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.02);
    transition: all 0.3s ease;
    cursor: default;
}
.sub_o_nas_5 .row:hover {
    box-shadow: 0 10px 20px rgba(0,0,0,0.06);
    border-color: #cbd5e1;
    transform: translateY(-2px);
}
.sub_o_nas_5 h2 {
	text-align: center; 
}
.sub_o_nas_5 h3 {
    font-weight: 600;
    font-size: 18px;
    color: #111827;
    margin: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
/* Dodanie znaku "+" na końcu nagłówka sugerującego Q&A */
.sub_o_nas_5 h3::after {
    content: '+';
    font-size: 24px;
    font-weight: 300;
    color: #5a79f3;
    transition: transform 0.3s ease;
}
.sub_o_nas_5 .row:hover h3::after {
    transform: rotate(90deg); /* Animacja krzyżyka po najechaniu */
}
.sub_o_nas_5 .row p {
    font-size: 15px;
    margin-left: 0 !important; /* Nadpisanie brzydkiego marginesu inline z HTML */
    margin-top: 15px !important;
    color: #4b5563 !important;
    line-height: 1.6;
}

/* ==============================================================
   8. MEDIA QUERIES (Responsywność dopasowana do w/w zmian)
============================================================== */
@media (max-width: 1024px) {
    .sub_o_nas_1 h1 { font-size: 38px; line-height: 1.2; }
    .sub_o_nas_6 .outer, .sub_o_nas_6 .flex { gap: 30px; }
    .sub_o_nas_7 .columns_2_ { flex-wrap: wrap; }
    .sub_o_nas_7 .columns_2_ > div { flex: 0 0 calc(50% - 15px); box-sizing: border-box; }
    .sub_o_nas_8 .card { top: 120px; padding: 40px; }
}

@media (max-width: 768px) {
    .sub_o_nas_1 .wrap_in, .sub_o_nas_3 .wrap_in, .sub_o_nas_5 .wrap_in, 
    .sub_o_nas_6 .wrap_in, .sub_o_nas_7 .wrap_in, .sub_o_nas_8 .wrap_in, .sub_o_nas_11 .wrap_in {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .sub_o_nas_6 .outer, .sub_o_nas_6 .flex { flex-direction: column; gap: 30px; }
    .sub_o_nas_7 .columns_2_ { flex-direction: column; gap: 20px; }
    .sub_o_nas_7 .columns_2_ > div { width: 100%; flex: none; }
    
    .sub_o_nas_8 .card {
        position: relative; /* Usunięcie sticky na mobilnych by oszczędzić miejsce */
        top: auto;
        padding: 30px;
        margin-bottom: 25px;
    }
    .sub_o_nas_8 .card_outer { flex-direction: column; gap: 20px; }
    .sub_o_nas_5 .row { padding: 20px 25px; }
}

@media (max-width: 600px) {
	.sub_strony_1 .btn_white {
        clear: both;
        float: none;
        display: block;
        max-width: 170px;
        text-align: center;
        margin: 30px auto 0;
    }
    .sub_o_nas_1 h1 { font-size: 30px; }
    .sub_o_nas_8 .card { padding: 25px; border-radius: 20px; }
    .sub_o_nas_6 .row { padding: 15px; }
    .sub_o_nas_7 .columns_2_ > div { padding: 30px 25px; }
}