﻿#start.hero .hero-video{display:block!important}

/* Force hero glass block margin reset and use main site font */
#start.hero .hero-glass-block{margin-left:0!important;margin-inline-start:0!important}
#start.hero{font-family:var(--font-main),sans-serif!important}

/* Subtle shadow for portfolio topbar like header */
.portfolio-topbar{box-shadow:0 6px 18px rgba(0,0,0,0.12);}

#start.hero .hero-stats-track{
	padding:0!important;
	border:0!important;
	background:none!important;
	box-shadow:none!important;
	filter:none!important;
	clip-path:none!important;
	-webkit-clip-path:none!important;
}

#start.hero .hero-content{filter:drop-shadow(0 20px 48px rgba(0,0,0,.42)) drop-shadow(0 8px 20px rgba(0,0,0,.28))}


#faq.card.faq{padding:0!important}

#kontakt .contact-grid{margin-top:0}

#kontakt p.contact-lead{padding-bottom:15px!important}

#o-nas.card.about.cv-auto{padding-bottom:30px!important}

#o-nas p.about-lead{padding-top:15px!important}

#uslugi.card.services.cv-auto,.uslugi.card.services.cv-auto{padding-bottom:30px!important}

#doswiadczenie.card.experience.cv-auto,.doswiadczenie.card.experience.cv-auto{padding-bottom:30px!important}

#zespol.card.team.cv-auto,.zespol.card.team.cv-auto{padding-top:30px!important;padding-bottom:30px!important}

/* Keep Team heading/intro on the same content area as .org-graph */
#zespol > .section-header{padding-left:clamp(18px,2.4vw,28px)!important;padding-right:clamp(18px,2.4vw,28px)!important}
#zespol .org-graph__caption{max-width:none!important}

#kontakt.card.contact.cv-auto,.kontakt.card.contact.cv-auto{padding-bottom:30px!important}

#kontakt .contact-coverage .coverage-map{--coverage-map-pad:clamp(8px,2vw,14px);position:relative;overflow:hidden;isolation:isolate;padding:var(--coverage-map-pad)}

#kontakt .contact-coverage .coverage-map img{position:relative;z-index:1}

#kontakt .contact-coverage .coverage-map::before{content:"";position:absolute;inset:var(--coverage-map-pad);z-index:3;pointer-events:none;background:url("../img/shared/map/poland/polandmaphoverdot.svg") center/100% 100% no-repeat;clip-path:inset(100% 0 0 0);opacity:0;transform-origin:50% 50%;filter:drop-shadow(0 0 0 rgba(255,255,255,0));will-change:clip-path,opacity,transform,filter}

#kontakt .contact-coverage .coverage-map::after{content:"";position:absolute;inset:var(--coverage-map-pad);z-index:2;pointer-events:none;background:url("../img/shared/map/poland/polandmaphover.svg") center/100% 100% no-repeat;clip-path:inset(100% 0 0 0);opacity:0;will-change:clip-path,opacity}

#kontakt.is-revealed .contact-coverage .coverage-map::before{animation:contactCoverageMapReveal 12.8s cubic-bezier(.22,.9,.32,1) .52s forwards,contactCoverageDotBreathGlow 4.6s ease-in-out 1s infinite}

#kontakt.is-revealed .contact-coverage .coverage-map::after{animation:contactCoverageMapReveal 12.8s cubic-bezier(.22,.9,.32,1) .08s forwards}

@keyframes contactCoverageMapReveal{
	0%{clip-path:inset(100% 0 0 0);opacity:0}
	18%{opacity:.85}
	100%{clip-path:inset(0 0 0 0);opacity:1}
}

@keyframes contactCoverageDotBreathGlow{
	0%{transform:scale(.988);filter:drop-shadow(0 0 0 rgba(255,255,255,0));opacity:.94}
	35%{transform:scale(1.014);filter:drop-shadow(0 0 6px rgba(255,255,255,.16));opacity:.98}
	50%{transform:scale(1.026);filter:drop-shadow(0 0 10px rgba(255,255,255,.24));opacity:1}
	75%{transform:scale(1.012);filter:drop-shadow(0 0 5px rgba(255,255,255,.14));opacity:.97}
	100%{transform:scale(.989);filter:drop-shadow(0 0 0 rgba(255,255,255,0));opacity:.95}
}

@media (prefers-reduced-motion:reduce){
	#kontakt.is-revealed .contact-coverage .coverage-map::before{animation:none;clip-path:inset(0 0 0 0);opacity:1}
	#kontakt.is-revealed .contact-coverage .coverage-map::after{animation:none;clip-path:inset(0 0 0 0);opacity:1}
}

#kontakt .contact-faq-card{grid-column:1/-1}

#kontakt .contact-faq__details{border:0;border-radius:0;background:transparent;box-shadow:none}

#kontakt .contact-faq__summary{cursor:pointer;display:flex;align-items:center;gap:10px;padding:0;color:var(--text-muted)}

#kontakt .contact-faq__summary::-webkit-details-marker{display:none}

#kontakt .contact-faq__title{color:var(--brand-navy);font-weight:700;font-size:1.1rem;line-height:1.2}

#kontakt .contact-faq__body{padding:0;margin-top:12px}

#kontakt .contact-faq__body .faq-lead{margin-top:0}

#kontakt .contact-faq-card .faq-list{margin-top:12px}
















/* Strong dark shadow for footer logo (override) */
.site-footer .footer-logo{
	display:inline-block;
	width:auto;
	max-width:220px;
	filter: drop-shadow(0 2px 0 rgba(0,0,0,0.78)) drop-shadow(0 10px 18px rgba(0,0,0,0.58));
	transition: filter .24s ease, transform .2s ease;
}

@media (prefers-reduced-motion:reduce){
	.site-footer .footer-logo{transition:none}
}

/* Header: ensure ZINELFM1.svg / zinel-logo displays fully inside .card.header.logo-hidden */
.card.header.logo-hidden .brand{
	overflow: visible;
	width: auto;
	flex: 0 0 auto;
}
.card.header.logo-hidden .zinel-logo,
.card.header.logo-hidden .brand img.zinel-logo{
	width: auto !important;
	height: auto !important;
	max-width: 165px !important;
	max-height: 36px !important;
	object-fit: contain !important;
	display: inline-block !important;
}

@media (max-width: 480px){
	.card.header.logo-hidden .zinel-logo{max-width:120px !important; max-height:30px !important}
}

/* Experience slider cards: location left, year right in one row. */
#doswiadczenie .experience-showcase__card .portfolio-card__head > div{width:100%}
#doswiadczenie .experience-showcase__card .portfolio-card__location{display:flex;align-items:center;justify-content:space-between;gap:12px}
#doswiadczenie .experience-showcase__card .portfolio-card__location .portfolio-card__year{margin-left:auto;white-space:nowrap}

/* Experience map layout: title above, filters to the right (desktop). */

#doswiadczenie .experience-showcase__more .filter-link,
#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	position:relative;
	overflow:hidden;
	isolation:isolate;
	padding:12px 24px;
	border-radius:999px !important;
	border:2px solid color-mix(in srgb,var(--overlay-top) 46%,white 54%) !important;
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom)) !important;
	background-size:170% 170%;
	background-position:0% 50%;
	color:var(--hero-h1-color) !important;
	-webkit-text-fill-color:currentColor !important;
	background-clip:border-box !important;
	-webkit-background-clip:border-box !important;
	font-weight:700;
	font-size:14px;
	letter-spacing:.012em;
	text-decoration:none !important;
	backdrop-filter:blur(12px) saturate(120%);
	-webkit-backdrop-filter:blur(12px) saturate(120%);
	box-shadow:0 14px 30px rgba(11,42,92,.34),0 6px 14px rgba(20,140,205,.22),inset 0 1px 0 rgba(255,255,255,.56),inset 0 -2px 0 rgba(7,38,86,.42),0 0 0 1px rgba(140,205,255,.34) !important;
	white-space:nowrap;
	transition:transform .2s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease,color .25s ease,filter .25s ease;
	animation:moreBtnOutlinePulse 1.6s ease-in-out infinite,ctaBtnGradientDrift 10.67s ease-in-out infinite alternate;
}

#doswiadczenie .experience-showcase__more .filter-link::after,
#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn::after{
	content:"";
	position:absolute;
	left:0;
	width:var(--cta-shine-width,48%);
	top:0;
	bottom:0;
	border-radius:inherit;
	clip-path:inset(0 round 999px);
	background:linear-gradient(118deg,transparent var(--cta-shine-from,26%),color-mix(in srgb,white 70%,transparent) 50%,transparent var(--cta-shine-to,74%));
	transform:translateX(var(--cta-shine-start,-150%));
	opacity:0;
	pointer-events:none;
	transition:transform .9s cubic-bezier(.22,.9,.32,1),opacity .3s ease;
	z-index:1;
}

#doswiadczenie .experience-showcase__more .filter-link::before,
#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn::before{
	content:"";
	position:absolute;
	left:5px;
	right:5px;
	top:2px;
	height:42%;
	border-radius:999px;
	background:linear-gradient(180deg,color-mix(in srgb,white 64%,transparent),color-mix(in srgb,white 0%,transparent));
	opacity:.46;
	pointer-events:none;
	z-index:0;
}

@media (hover:hover) and (pointer:fine){
	#doswiadczenie .experience-showcase__more .filter-link:is(:hover,:focus-visible),
	#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn:is(:hover,:focus-visible){
		transform:translateY(-3px);
		filter:saturate(1.05);
		background:linear-gradient(90deg,color-mix(in srgb,var(--overlay-top) 88%,white 12%),color-mix(in srgb,var(--overlay-bottom) 94%,black 6%)) !important;
		border-color:color-mix(in srgb,var(--overlay-top) 56%,white 44%) !important;
		box-shadow:0 24px 50px color-mix(in srgb,var(--overlay-bottom) 34%,transparent),0 10px 24px color-mix(in srgb,var(--overlay-bottom) 18%,transparent),inset 0 1px 0 color-mix(in srgb,white 72%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--overlay-bottom) 20%,transparent) !important;
		text-decoration:none !important;
	}

	#doswiadczenie .experience-showcase__more .filter-link:is(:hover,:focus-visible){
		box-shadow:0 20px 48px rgba(30,70,120,.28) !important;
	}

	#doswiadczenie .experience-showcase__more .filter-link:active,
	#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn:active{
		transform:translateY(-1px);
		box-shadow:0 10px 22px color-mix(in srgb,var(--overlay-bottom) 26%,transparent),inset 0 2px 4px color-mix(in srgb,var(--overlay-bottom) 24%,transparent),inset 0 1px 0 color-mix(in srgb,white 60%,transparent) !important;
	}

	#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn:is(:hover,:focus-visible)::after{
		opacity:1;
		transform:translateX(var(--cta-shine-end,140%));
	}

	#doswiadczenie .experience-showcase__more .filter-link:is(:hover,:focus-visible)::after,
	#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn:is(:hover,:focus-visible)::after{
		animation:ctaHoverShineSweep 760ms cubic-bezier(.22,.9,.32,1) 1 both;
	}

	#doswiadczenie .experience-showcase__more .filter-link:not(:hover):not(:focus-visible)::after,
	#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn:not(:hover):not(:focus-visible)::after{
		animation:none;
		opacity:0;
		transform:translateX(var(--cta-shine-start,-18%));
	}

	#doswiadczenie .experience-showcase__more .filter-link:is(:hover,:focus-visible)::before{
		opacity:.46;
	}

	#doswiadczenie .experience-showcase__more .filter-link:is(:hover,:focus-visible)::after,
	#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn:is(:hover,:focus-visible)::after{
		will-change:transform,opacity;
	}
}

@keyframes moreBtnOutlinePulse{
	0%,100%{
		border-color:rgba(182,223,255,.45);
		box-shadow:0 14px 30px rgba(11,42,92,.34),0 6px 14px rgba(20,140,205,.22),inset 0 1px 0 rgba(255,255,255,.56),inset 0 -2px 0 rgba(7,38,86,.42),0 0 0 2px rgba(140,205,255,.36),0 0 0 0 rgba(93,214,255,0);
	}
	50%{
		border-color:rgba(219,244,255,.95);
		box-shadow:0 16px 34px rgba(12,46,100,.38),0 8px 16px rgba(27,158,224,.28),inset 0 1px 0 rgba(255,255,255,.66),inset 0 -2px 0 rgba(8,44,98,.48),0 0 0 3px rgba(160,226,255,.88),0 0 22px 4px rgba(93,214,255,.45);
	}
}

@keyframes moreBtnBgDrift{
	0%{background-position:0% 50%}
	50%{background-position:55% 50%}
	100%{background-position:100% 50%}
}

@keyframes ctaHoverShineSweep{
	0%{
		opacity:.20;
		transform:translateX(var(--cta-shine-start,-18%));
	}
	20%{
		opacity:.9;
	}
	50%{
		opacity:.9;
	}
	78%{
		opacity:.38;
	}
	100%{
		opacity:0;
		transform:translateX(var(--cta-shine-end,194%));
	}
}

@keyframes ctaBtnGradientDrift{
	0%{background-position:6% 46%}
	33%{background-position:42% 54%}
	66%{background-position:72% 48%}
	100%{background-position:94% 52%}
}

nav#primary-nav.nav a.active::before,
nav#primary-nav.nav a.active-anim::before{
	background-size:170% 170%;
	background-position:0% 50%;
	animation:moreBtnBgDrift 12s ease-in-out infinite alternate;
}

nav#primary-nav.nav a.active,
nav#primary-nav.nav a.active-anim{
	transform:translateY(-1px) perspective(520px) rotateX(7deg);
	box-shadow:0 10px 18px rgba(10,48,108,.24),0 4px 8px rgba(21,116,191,.2),inset 0 1px 0 rgba(255,255,255,.58),inset 0 -1px 0 rgba(8,44,98,.34);
}

@media (hover:hover) and (pointer:fine){
	nav#primary-nav.nav:not(.no-hover) a:is(:hover,:focus-visible)::before{
		background-size:170% 170%;
		background-position:0% 50%;
		animation:moreBtnBgDrift 12s ease-in-out infinite alternate;
	}

	nav#primary-nav.nav:not(.no-hover) a:is(:hover,:focus-visible){
		transform:translateY(-2px) perspective(520px) rotateX(7deg);
		box-shadow:0 12px 22px rgba(10,52,116,.28),0 5px 10px rgba(24,130,210,.22),inset 0 1px 0 rgba(255,255,255,.62),inset 0 -1px 0 rgba(8,44,98,.36);
	}
}

@media (prefers-reduced-motion: reduce){
		animation:none;
	}

	#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn{
		animation:none;
	}

	nav#primary-nav.nav a::before{
		animation:none !important;
	}
}

@media(min-width:1025px){
}

@media (prefers-reduced-motion: reduce){
		opacity:1;
		transform:none;
		transition:none;
		pointer-events:auto;
	}
}
@media (max-width:1024px){
	#doswiadczenie .experience-map{display:block!important}
}

@media (max-width:1000px){
}

/* Portfolio page: header-like top bar with one tab aligned right. */
.portfolio-topbar{
	position:fixed;
	top:0;
	left:0;
	right:0;
	width:100%;
	display:block;
	z-index:1200;
	background:rgba(255,255,255,.56);
	backdrop-filter:blur(10px) saturate(120%);
	-webkit-backdrop-filter:blur(10px) saturate(120%);
	border-radius:0 0 14px 14px;
	box-shadow:0 14px 32px rgba(30,70,120,.16),0 4px 12px rgba(8,16,32,.1);
	border-bottom:0;
	padding:0;
	transform:translateY(0);
	transition:transform .3s ease,opacity .2s ease;
	will-change:transform;
}

.portfolio-topbar.is-hidden{
	transform:translateY(-110%);
	opacity:0;
}

.portfolio-topbar.header--at-start{
	transform:translateY(0);
	opacity:1;
}

.portfolio-topbar__inner{
	max-width:var(--maxw);
	margin:0 auto;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	padding:14px 18px;
	transition:justify-content .28s ease;
}

.portfolio-topbar__brand{
	display:inline-flex;
	align-items:center;
	gap:12px;
	width:auto;
	flex:0 0 auto;
	overflow:visible;
	text-decoration:none;
	color:inherit;
	transition:opacity .28s ease,transform .28s ease;
}

.portfolio-topbar__logo{
	display:block;
	height:auto;
	width:auto;
	max-width:165px;
	max-height:36px;
	object-fit:contain;
	transition:opacity .28s ease,transform .28s ease;
}

@media (max-width:480px){
	.portfolio-topbar__logo{max-width:120px;max-height:30px;}
}

.portfolio-topbar.header--at-start:not(.nav-open) .portfolio-topbar__brand{
	opacity:0 !important;
	transform:translateY(-8px) !important;
	pointer-events:none !important;
	visibility:hidden !important;
}

.portfolio-topbar.header--enter .portfolio-topbar__brand{
	opacity:1;
	transform:translateY(0);
	visibility:visible;
}

.portfolio-topbar__link{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:8px 14px;
	margin:0 8px;
	font-weight:700;
	font-size:13px;
	color:rgba(30,70,120,.7);
	text-decoration:none;
	border-radius:999px;
	overflow:hidden;
	position:relative;
	z-index:1;
	isolation:isolate;
	transition:color .22s ease;
	will-change:transform,color;
	text-align:center;
}

.portfolio-topbar__link::before{
	content:"";
	position:absolute;
	inset:0;
	border-radius:inherit;
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom));
	transform:scaleX(0);
	transform-origin:left center;
	opacity:0;
	transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .18s ease;
	z-index:0;
	pointer-events:none;
}

.portfolio-topbar__link.active{
	color:var(--nav-highlight-text);
}

.portfolio-topbar__label{
	position:relative;
	z-index:3;
	display:inline-block;
	color:inherit !important;
	-webkit-text-fill-color:currentColor !important;
	opacity:1 !important;
	visibility:visible !important;
	line-height:1;
}

.portfolio-topbar__link.active-anim{
	transform:translateY(-1px);
	text-shadow:0 4px 12px rgba(30,70,120,.35);
	transition:transform .16s ease,color .22s ease;
}

.portfolio-topbar__link.active-anim::before{
	transform:scaleX(1);
	opacity:1;
}

@media (hover:hover) and (pointer:fine){
	.portfolio-topbar__link:hover,
	.portfolio-topbar__link:focus-visible{
		color:var(--nav-highlight-text);
		transform:translateY(-1px);
		text-shadow:0 4px 12px rgba(30,70,120,.35);
		transition:transform .16s ease,color .22s ease;
	}

	.portfolio-topbar__link:hover::before,
	.portfolio-topbar__link:focus-visible::before{
		transform:scaleX(1);
		opacity:1;
		transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .18s ease;
	}
}

.portfolio-topbar__link:focus-visible{
	outline:2px solid rgba(30,70,120,.45);
	outline-offset:3px;
}

.portfolio-topbar.nav-open{
	background:0;
	backdrop-filter:none;
	-webkit-backdrop-filter:none;
	box-shadow:none;
	transform:translateY(0)!important;
	opacity:1!important;
}

.portfolio-topbar.nav-open .portfolio-topbar__inner{
	justify-content:flex-end;
	padding:0;
	min-height:0;
	height:0;
	pointer-events:none;
}

.portfolio-topbar.nav-open .portfolio-topbar__brand{
	display:none !important;
}

/* Experience map: cap height to ~70vh (by constraining width using the SVG aspect ratio). */
	padding:0!important;
	width:100%;
	max-width:calc(70vh * 1.062);
	max-height:70vh;
	min-height:min(320px,70vh);
	margin-inline:0;
	border:0 !important;
	overflow:visible !important;
}

#doswiadczenie .experience-map{overflow:visible !important}

	opacity:0 !important;
	transform:translate3d(0,4px,0) scale(.98) !important;
	pointer-events:none !important;
}

	opacity:1;
	transform:none;
	visibility:visible;
	pointer-events:auto;
}

/* Stronger footer logo shadow override for all pages */
.site-footer .footer-logo{
	filter: drop-shadow(0 2px 0 rgba(0,0,0,0.78)) drop-shadow(0 10px 18px rgba(0,0,0,0.58));
	-webkit-filter: drop-shadow(0 2px 0 rgba(0,0,0,0.78)) drop-shadow(0 10px 18px rgba(0,0,0,0.58));
    transition: filter .24s ease, -webkit-filter .24s ease, opacity .2s ease;
}

.site-footer,
.site-footer *{
	font-family: var(--font-main);
}

.card.site-footer :is(p,li,a,span,small,.footer-column h3,.footer-bottom){
	font-family:var(--font-main),sans-serif;
	font-style:normal;
	font-size:var(--font-size-content);
	font-weight:400;
	line-height:1.55;
	letter-spacing:.01em;
	text-shadow:0 1px 2px rgba(8,16,32,.24);
}

.card.site-footer .footer-column h3{
	font-weight:600;
	line-height:1.35;
	letter-spacing:.08em;
}

/* Experience: branch pins always visible (independent of the selected filter). */
	display:block!important;
	visibility:visible!important;
	opacity:1!important;
	pointer-events:auto!important;
}

/* Experience: enforce single-column layout (H3 -> filter -> map -> stats) */
#doswiadczenie .experience-content{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:clamp(14px,2vw,20px)!important}

/* About: subtly highlight the "Our strength" paragraph and split the features list into two columns on larger screens. */
.card.about .about-copy--highlight,
#uslugi.card.services .services-intro > article.service-item.service-item--cta{background:linear-gradient(165deg,rgba(255,255,255,.98) 0%,rgba(241,246,255,.96) 62%,rgba(225,235,252,.94) 100%) !important}
.card.about .about-copy--highlight{border:1px solid var(--border-soft);box-shadow:var(--shadow-soft);border-radius:14px;padding:clamp(12px,1.8vw,16px);color:var(--text-primary)}
.card.about .about-copy--highlight strong{color:inherit}

/* Services: CTA tile in intro column - Luxury Card variant (premium look, layout-aligned). */
#uslugi.card.services .services-intro > article.service-item.service-item--cta{
	border:1px solid var(--border-soft) !important;
	box-shadow:none !important;
	border-radius:12px !important;
	padding:clamp(14px,1.8vw,18px) !important;
	color:var(--text-primary) !important;
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	align-items:center;
	gap:clamp(10px,1.4vw,16px);
	width:100%;
	max-width:100%;
	min-height:0;
	box-sizing:border-box;
	position:relative;
	overflow:visible;
	transition:border-color .2s ease, background-color .2s ease;
	align-self:stretch;
}

#uslugi.card.services .services-intro > article.service-item.service-item--cta:is(:hover,:focus-within){
	transform:none;
	box-shadow:none !important;
	border-color:color-mix(in srgb,var(--border-soft) 72%,var(--overlay-top) 28%) !important;
}

/* Hero: text layout aligned to reference key visual. */
#start.hero .hero-content{
	align-items:flex-start;
	text-align:left;
	justify-self:start;
	width:40vw;
	margin:0;
	margin-left:15vw;
	padding-top:0;
	text-shadow:0 2px 8px rgba(8,16,32,.34);
}

#start.hero .hero-title-stack{
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	gap:0;
	width:max-content;
}

#start.hero .hero-content h1{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	width:max-content;
	max-width:none;
	letter-spacing:.03em;
	line-height:1.05;
	margin:0 0 10px;
	padding-bottom:12px;
	border-bottom:0;
	position:relative;
}

#start.hero .hero-content h1 span{
	display:block;
	white-space:nowrap;
}

#start.hero .hero-kicker{
	align-self:flex-end;
	position:relative;
	isolation:isolate;
	overflow:visible;
	z-index:0;
	transform:translateZ(0);
	display:inline-flex;
	align-items:center;
	flex-wrap:wrap;
	gap:8px;
	margin:-1px 0 0;
	padding:7px 14px 7px 16px;
	min-height:0;
	border-radius:10px;
	font-weight:700;
	font-size:clamp(18px,calc(1vw + 6px),20px);
	line-height:1;
	letter-spacing:.055em;
	text-transform:uppercase;
	color:var(--hero-h1-color);
	text-shadow:0 1px 4px rgba(8,16,32,.2);
}

#start.hero .hero-kicker__item{
	opacity:.98;
}

#start.hero .hero-kicker__sep{
	opacity:.55;
	font-size:.92em;
}

#start.hero .hero-kicker__time{
	display:inline-flex;
	align-items:center;
	padding:1px 7px;
	border-radius:4px;
	background:color-mix(in srgb,var(--overlay-top) 22%,transparent);
	border:1px solid color-mix(in srgb,var(--overlay-top) 38%,white 62%);
	box-shadow:inset 0 1px 0 color-mix(in srgb,white 30%,transparent);
	font-weight:900;
	letter-spacing:.045em;
	color:var(--overlay-top);
}

#start.hero .hero-glass-block{
	align-self:flex-end;
	display:flex;
	flex-direction:column;
	inline-size:max-content;
	max-inline-size:100%;
	gap:8px;
	margin-top:-10px;
	padding:10px 12px;
	border-radius:0;
	position:relative;
	isolation:isolate;
	border:none;
	box-shadow:none;
	backdrop-filter:none;
	-webkit-backdrop-filter:none;
}

#start.hero .hero-glass-block::before{
	content:"";
	position:absolute;
	inset:0;
	background:rgba(5,10,18,.33);
	border:1px solid color-mix(in srgb,rgba(255,255,255,.2) 38%,transparent);
	box-shadow:0 14px 30px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.14);
	backdrop-filter:blur(10px) saturate(135%);
	-webkit-backdrop-filter:blur(10px) saturate(135%);
	pointer-events:none;
	z-index:0;
	-webkit-mask-image:
		linear-gradient(to right,#000 0%,#000 70%,transparent 100%),
		linear-gradient(to bottom,#000 0%,#000 70%,transparent 100%);
	-webkit-mask-composite:source-in;
	mask-image:
		linear-gradient(to right,#000 0%,#000 70%,transparent 100%),
		linear-gradient(to bottom,#000 0%,#000 70%,transparent 100%);
	mask-composite:intersect;
}

#start.hero .hero-lead{
	align-self:flex-start;
	margin:0;
	inline-size:0;
	min-inline-size:100%;
	max-inline-size:100%;
	font-size:calc(1em + 2px);
	overflow-wrap:anywhere;
	color:rgba(255,255,255,.95);
	font-weight:500;
	line-height:1.4;
	text-shadow:0 6px 16px rgba(30,70,120,.35);
}

#start.hero .hero-glass-block .hero-cta{
	align-self:stretch;
	inline-size:100%;
	justify-content:flex-start;
	flex-wrap:nowrap;
	gap:0;
	margin-top:8px;
}

#start.hero .hero-glass-block .hero-cta .btn{
	flex:1 1 0;
	min-inline-size:0;
	justify-content:center;
}

#start.hero .hero-stats-carousel{
	margin-top:14px;
	overflow:visible;
	width:100%;
}

#start.hero .hero-track-wrapper{
	overflow:visible;
	width:100%;
}

#start.hero .hero-stats-track{
	display:flex;
	align-items:stretch;
	gap:0;
	width:max-content;
	max-width:none;
	position:relative;
	overflow:hidden;
	isolation:isolate;
	padding:14px 14px 12px;
	border:1px solid color-mix(in srgb,rgba(255,255,255,.26) 52%,transparent);
	background:linear-gradient(175deg,rgba(8,20,46,.66) 0%,rgba(8,20,42,.48) 54%,rgba(8,18,38,.54) 100%);
	box-shadow:0 12px 28px rgba(3,10,25,.32),0 0 30px rgba(86,205,255,.34),0 0 64px rgba(86,205,255,.24),0 0 96px rgba(86,205,255,.14),inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(70,182,255,.12);
	backdrop-filter:none;
	-webkit-backdrop-filter:none;
	clip-path:polygon(0 18px,18px 0,calc(100% - 22px) 0,100% 18px,100% calc(100% - 12px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px));
	animation:none;
}

#start.hero .hero-stats-track::before{
	content:"";
	position:absolute;
	inset:-1px auto -1px -46%;
	width:38%;
	background:linear-gradient(90deg,transparent 0%,rgba(120,220,255,.12) 42%,rgba(120,220,255,.24) 50%,rgba(120,220,255,.12) 58%,transparent 100%);
	filter:blur(1px);
	pointer-events:none;
	animation:none;
	display:none;
	z-index:0;
}

#start.hero .hero-stats-track::after{
	content:"";
	position:absolute;
	inset:1px;
	clip-path:polygon(0 18px,18px 0,calc(100% - 22px) 0,100% 18px,100% calc(100% - 12px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px));
	border:1px solid rgba(126,220,255,.44);
	border-top-color:rgba(190,242,255,.68);
	opacity:.95;
	box-shadow:0 0 0 1px rgba(126,220,255,.3) inset,0 0 24px rgba(126,220,255,.34),0 0 42px rgba(126,220,255,.18);
	pointer-events:none;
	z-index:0;
	animation:none;
}

#start.hero .hero-stat{
	position:relative;
	display:grid;
	grid-template-columns:84px 1fr;
	grid-template-rows:auto auto;
	column-gap:14px;
	row-gap:4px;
	align-items:center;
	min-inline-size:0;
	inline-size:max-content;
	flex:0 0 auto;
	padding:10px 20px 10px 16px;
	border-radius:0;
	background:linear-gradient(168deg,rgba(10,24,50,.82) 0%,rgba(8,20,42,.72) 100%);
	background-size:160% 160%;
	border:1px solid rgba(138,222,255,.14);
	box-shadow:0 6px 12px rgba(4,14,32,.18),inset 0 1px 0 rgba(190,242,255,.1);
	text-align:left;
	color:#ecf7ff;
	transition:transform .22s ease,background-color .22s ease,box-shadow .22s ease;
	z-index:1;
	isolation:isolate;
	clip-path:none;
	overflow:visible;
	animation:heroStatAmbient 2.8s ease-in-out infinite;
}

#start.hero .hero-stat + .hero-stat{
	margin-left:0;
}

#start.hero .hero-stat:nth-child(2){animation-delay:.9s;}
#start.hero .hero-stat:nth-child(3){animation-delay:1.8s;}

#start.hero .hero-stat:not(:last-child)::after{
	content:"";
	position:absolute;
	right:1px;
	top:10px;
	bottom:10px;
	width:1px;
	background:linear-gradient(180deg,transparent 0%,rgba(128,221,255,.44) 18%,rgba(110,214,255,.3) 82%,transparent 100%);
	display:none;
}

#start.hero .hero-stat::before{
	content:"";
	position:absolute;
	left:0;
	right:0;
	top:1px;
	height:42%;
	clip-path:none;
	background:linear-gradient(180deg,rgba(196,244,255,.12) 0%,rgba(196,244,255,.04) 40%,rgba(196,244,255,0) 100%);
	opacity:.35;
	pointer-events:none;
	z-index:0;
	animation:heroStatSheen 2.2s ease-in-out infinite;
}

#start.hero .hero-stat:first-child{
	clip-path:none;
}

#start.hero .hero-stat:last-child{
	clip-path:none;
}

#start.hero .hero-stat .stat-icon{
	grid-row:1 / span 2;
	grid-column:1;
	position:relative;
	z-index:1;
	width:76px;
	height:76px;
	border-radius:50%;
	background:radial-gradient(circle at 35% 30%,rgba(156,238,255,.26),rgba(20,52,104,.72) 56%,rgba(7,24,54,.9) 100%);
	border:1px solid rgba(136,228,255,.44);
	box-shadow:0 0 0 1px rgba(30,132,203,.24) inset,0 0 8px rgba(72,208,255,.18);
	color:#88ddff;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	transition:box-shadow .24s ease,transform .24s ease;
	animation:heroStatIconPop 2.1s ease-in-out infinite;
}

#start.hero .hero-stat:nth-child(2) .stat-icon{animation-delay:.9s;}
#start.hero .hero-stat:nth-child(3) .stat-icon{animation-delay:1.8s;}

#start.hero .hero-stat .stat-icon svg{
	width:38px;
	height:38px;
	stroke-width:1.8;
}

#start.hero .hero-stat .stat-icon img{
	width:40px;
	height:40px;
	display:block;
	object-fit:contain;
	filter:drop-shadow(0 0 7px rgba(136,221,255,.45));
}

#start.hero .hero-stat .stat-title{
	grid-column:2;
	grid-row:1;
	position:relative;
	z-index:5 !important;
	margin:0;
	font-size:clamp(24px,1.8vw,34px);
	line-height:1.05;
	font-weight:800;
	letter-spacing:.045em;
	text-transform:uppercase;
	color:#ffffff;
	text-shadow:none;
	opacity:1 !important;
	visibility:visible !important;
}

#start.hero .hero-stat .stat-sub{
	grid-column:2;
	grid-row:2;
	position:relative;
	z-index:5 !important;
	margin:0;
	font-size:clamp(14px,1vw,18px);
	line-height:1.15;
	font-weight:620;
	letter-spacing:.045em;
	text-transform:uppercase;
	color:rgba(255,255,255,.98);
	text-shadow:none;
	opacity:1 !important;
	visibility:visible !important;
	white-space:normal;
	overflow-wrap:anywhere;
}

#start.hero .hero-stat .stat-accent{
	color:#5de8ff;
	text-shadow:0 0 8px rgba(93,232,255,.34);
	animation:heroStatAccent 1.5s ease-in-out infinite;
}

@media (hover:hover) and (pointer:fine){
	#start.hero .hero-stat:is(:hover,:focus-within){
		transform:translateY(-3px);
		background-color:rgba(130,220,255,.05);
		box-shadow:0 14px 24px rgba(3,12,28,.34),inset 0 0 0 1px rgba(166,232,255,.28),0 0 14px rgba(82,202,255,.18);
	}

	#start.hero .hero-stat:is(:hover,:focus-within) .stat-icon{
		transform:translateY(-1px) scale(1.06);
		box-shadow:0 0 0 1px rgba(30,132,203,.32) inset,0 0 14px rgba(72,198,255,.32);
	}
}

@keyframes heroStatAmbient{
	0%,100%{background-position:8% 50%;box-shadow:0 6px 12px rgba(4,14,32,.18),inset 0 1px 0 rgba(190,242,255,.1);}
	50%{background-position:92% 50%;box-shadow:0 12px 20px rgba(4,14,32,.3),inset 0 1px 0 rgba(190,242,255,.24),0 0 16px rgba(90,210,255,.2);}
}

@keyframes heroStatSheen{
	0%,100%{opacity:.4;}
	50%{opacity:.95;}
}

@keyframes heroStatIconPop{
	0%,100%{transform:translateY(0) scale(1);}
	50%{transform:translateY(-2px) scale(1.12);}
}

@keyframes heroStatAccent{
	0%,100%{text-shadow:0 0 8px rgba(93,232,255,.34);color:#5de8ff;}
	50%{text-shadow:0 0 18px rgba(93,232,255,.82),0 0 32px rgba(93,232,255,.36);color:#b2f9ff;}
}

@keyframes heroStatsEnergyFlow{
	0%{transform:translateX(0);opacity:.12;}
	10%{opacity:.35;}
	50%{opacity:.28;}
	90%{opacity:.35;}
	100%{transform:translateX(390%);opacity:.12;}
}

@keyframes heroStatsPlateMorph{
	0%{clip-path:polygon(0 18px,18px 0,calc(100% - 22px) 0,100% 18px,100% calc(100% - 12px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px));}
	100%{clip-path:polygon(0 14px,16px 0,calc(100% - 18px) 0,100% 14px,100% calc(100% - 16px),calc(100% - 18px) 100%,18px 100%,0 calc(100% - 10px));}
}

@keyframes heroStatsIconPulse{
	0%,100%{transform:translateY(0) scale(1);}
	50%{transform:translateY(-1px) scale(1.04);}
}

@keyframes heroStatsAccentPulse{
	0%,100%{text-shadow:0 0 14px rgba(93,232,255,.5),0 0 24px rgba(93,232,255,.2);color:#5de8ff;}
	45%{text-shadow:0 0 20px rgba(93,232,255,.82),0 0 34px rgba(93,232,255,.4);color:#a4f7ff;}
	60%{text-shadow:0 0 16px rgba(93,232,255,.6),0 0 28px rgba(93,232,255,.28);color:#72eeff;}
}

@media (prefers-reduced-motion: reduce){
	#start.hero .hero-stats-track::before,
	#start.hero .hero-stats-track,
	#start.hero .hero-stats-track::after,
	#start.hero .hero-stat,
	#start.hero .hero-stat::before,
	#start.hero .hero-stat .stat-icon,
	#start.hero .hero-stat .stat-accent{
		animation:none;
	}

	#start.hero .hero-stat,
	#start.hero .hero-stat .stat-icon{
		transition:none;
	}
}

@media (max-width:1199px){
	#start.hero .hero-content{
		align-items:center;
		text-align:center;
		justify-self:center;
		width:min(92vw,860px);
		margin:0 auto;
	}

	#start.hero .hero-title-stack,
	#start.hero .hero-content h1,
	#start.hero .hero-glass-block,
	#start.hero .hero-kicker,
	#start.hero .hero-content h1 span,
	#start.hero .hero-lead{
		align-self:center;
	}

	#start.hero .hero-title-stack,
	#start.hero .hero-content h1,
	#start.hero .hero-glass-block .hero-cta{
		align-items:center;
	}

	#start.hero .hero-kicker,
	#start.hero .hero-glass-block .hero-cta{
		justify-content:center;
	}

	#start.hero .hero-stats-carousel{
		display:flex;
		justify-content:center;
		width:100%;
	}

	#start.hero .hero-track-wrapper{
		width:80vw;
		max-width:80vw;
		min-width:80vw;
	}

	#start.hero .hero-stats-track{
		width:100%;
		max-width:100%;
		min-width:100%;
	}

	#start.hero .hero-stat{
		flex:1 1 0;
		min-inline-size:0;
		inline-size:auto;
	}
}

@media (min-width:901px) and (max-width:1199px){
	#start.hero .hero-track-wrapper{
		overflow:visible;
		display:flex;
		justify-content:center;
	}

	#start.hero .hero-stats-track{
		transform:none;
		transform-origin:initial;
		width:100%;
	}

	#start.hero .hero-stat{
		grid-template-columns:clamp(62px,5.8vw,84px) 1fr;
		column-gap:clamp(10px,1.2vw,14px);
		padding:clamp(8px,0.9vw,10px) clamp(14px,1.6vw,20px) clamp(8px,0.9vw,10px) clamp(12px,1.2vw,16px);
	}

	#start.hero .hero-stat .stat-icon{
		width:clamp(58px,5.8vw,76px);
		height:clamp(58px,5.8vw,76px);
	}

	#start.hero .hero-stat .stat-icon img{
		width:clamp(30px,3.1vw,40px);
		height:clamp(30px,3.1vw,40px);
	}

	#start.hero .hero-stat .stat-icon svg{
		width:clamp(28px,3vw,38px);
		height:clamp(28px,3vw,38px);
	}

	#start.hero .hero-stat .stat-title{
		font-size:clamp(20px,2.2vw,34px);
	}

	#start.hero .hero-stat .stat-sub{
		font-size:clamp(12px,1.15vw,18px);
	}
}

@media (max-width:900px){
	#start.hero .hero-stats-carousel{
		display:flex;
		justify-content:center;
		overflow-x:auto;
		padding-bottom:4px;
	}

	#start.hero .hero-track-wrapper{
		width:max-content;
		max-width:none;
		min-width:0;
		margin-inline:auto;
		display:flex;
		justify-content:center;
	}

	#start.hero .hero-stats-track{
		width:max-content;
		min-width:0;
		margin-inline:auto;
		padding:12px 12px 10px;
		clip-path:polygon(0 14px,12px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 10px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 10px));
	}

	#start.hero .hero-stat{
		min-inline-size:0;
		inline-size:max-content;
		grid-template-columns:68px 1fr;
		column-gap:12px;
		row-gap:3px;
		padding:8px 14px;
	}

	#start.hero .hero-stat .stat-icon{
		width:64px;
		height:64px;
	}

	#start.hero .hero-stat .stat-icon svg{
		width:32px;
		height:32px;
	}

	#start.hero .hero-stat .stat-title{
		font-size:clamp(20px,5vw,28px);
	}

	#start.hero .hero-stat .stat-sub{
		font-size:clamp(12px,2.8vw,15px);
	}

}

@media (max-width:768px){
	#start.hero .hero-stat{
		grid-template-columns:1fr;
		grid-template-rows:auto auto auto;
		padding:8px 10px;
	}

	#start.hero .hero-stat .stat-icon{
		grid-row:1;
		grid-column:1;
		width:32px;
		height:32px;
		margin-inline:auto;
	}

	#start.hero .hero-stat .stat-icon svg,
	#start.hero .hero-stat .stat-icon img{
		width:16px;
		height:16px;
	}

	#start.hero .hero-stat .stat-title,
	#start.hero .hero-stat .stat-sub{
		display:block;
		position:relative;
		z-index:999 !important;
		text-align:center;
	}

	#start.hero .hero-stat .stat-title{
		grid-row:2;
		grid-column:1;
		font-size:clamp(16px,4.2vw,22px);
	}

	#start.hero .hero-stat .stat-sub{
		grid-row:3;
		grid-column:1;
		font-size:clamp(11px,2.8vw,14px);
		white-space:normal;
		overflow-wrap:anywhere;
		word-break:normal;
	}
}

/* Hard guard: keep text above all hero-stat decorative layers on every breakpoint */
#start.hero .hero-stat .stat-title,
#start.hero .hero-stat .stat-sub{
	position:relative !important;
	z-index:1000 !important;
	display:block;
}

#start.hero .hero-stat .stat-sub{
	width:100%;
	max-width:100%;
	box-sizing:border-box;
	white-space:normal;
	overflow-wrap:anywhere;
	word-break:normal;
	text-wrap:pretty;
}

@media (max-width:900px){
	#start.hero .hero-content{
		align-items:center;
		text-align:center;
		width:min(92vw,760px);
		margin:0 auto;
	}

	#start.hero .hero-content h1,
	#start.hero .hero-lead{
		max-width:100%;
	}

	#start.hero .hero-lead{
		align-self:center;
	}

	#start.hero .hero-title-stack{
		width:auto;
		align-items:center;
	}

	#start.hero .hero-glass-block{
		align-self:center;
		padding:10px 12px;
	}

	#start.hero .hero-kicker{
		justify-content:center;
	}

	#start.hero .hero-content h1{
		align-items:center;
	}

	#start.hero .hero-content h1 span,
	#start.hero .hero-kicker{
		align-self:center;
	}

	#start.hero .hero-glass-block .hero-cta{
		justify-content:center;
	}
}

#uslugi.card.services .services-intro > article.service-item.service-item--cta::before,
#uslugi.card.services .services-intro > article.service-item.service-item--cta::after{
	display:none !important;
}

#uslugi.card.services .services-intro > article.service-item.service-item--cta .services-footer-text{
	margin:0;
	color:inherit;
	font-size:clamp(.95rem,1.1vw,1rem);
	line-height:1.55;
	font-weight:500;
	text-align:left;
	max-width:44ch;
}

#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn{
	margin:0;
	align-self:center;
	justify-self:end;
}

@media(max-width:720px){
	#uslugi.card.services .services-intro > article.service-item.service-item--cta{grid-template-columns:1fr;align-items:start}
	#uslugi.card.services .services-intro > article.service-item.service-item--cta .btn{justify-self:start}
}

#start.hero .hero-content{
	align-items:flex-start;
	text-align:left;
	justify-self:start;
	width:min(78vw, 1020px);
	margin-left:clamp(7vw, 11vw, 15vw);
	padding-top:clamp(88px, 12vh, 132px);
	padding-bottom:clamp(42px, 8vh, 84px);
	gap:clamp(18px, 2.2vw, 28px);
	text-shadow:0 10px 30px rgba(7,16,33,.34);
	filter:drop-shadow(0 18px 40px rgba(0,0,0,.24)) drop-shadow(0 6px 16px rgba(0,0,0,.18));
	--hero-sheen:linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.04) 48%, rgba(100,183,255,.12) 100%);
	--hero-glass:linear-gradient(180deg, rgba(12,26,52,.30), rgba(12,26,52,.18));
	--hero-soft-shadow:0 20px 50px rgba(8,18,36,.22);
	--hero-highlight:inset 0 1px 0 rgba(255,255,255,.18);
	--hero-blur:blur(16px) saturate(128%);
	--hero-radius:26px;
	--hero-flare-core:rgba(255,255,255,.94);
	--hero-flare-accent:rgba(100,183,255,.78);
	--hero-flare-tail:rgba(47,181,196,.20);
	--hero-edge-flare:rgba(255,255,255,.98);
}

#start.hero .hero-title-stack{
	position:relative;
	align-items:flex-start;
	gap:14px;
	width:min(100%, 640px);
	max-width:100%;
	padding-bottom:6px;
}

#start.hero .hero-content h1{
	width:auto;
	max-width:100%;
	margin:0;
	padding:0 0 22px;
	line-height:.96;
	letter-spacing:.01em;
	gap:4px;
	text-wrap:balance;
	text-shadow:0 10px 28px rgba(6,16,34,.34);
	position:relative;
}

#start.hero .hero-content h1 span:last-child::before,
#start.hero .hero-content h1 span:last-child::after{
	display:none;
}

#start.hero .hero-content h1::after{
	display:none;
}

#start.hero .hero-content h1 span,
#start.hero .hero-content h1 span:last-child{
	white-space:normal;
	align-self:flex-start;
	margin:0;
	padding:0;
	text-shadow:inherit;
	letter-spacing:inherit;
	filter:none;
	background:none;
	border:0;
	box-shadow:none;
}

#start.hero .hero-kicker{
	align-self:flex-start;
	margin:0;
	padding:10px 16px;
	gap:10px;
	border-radius:999px;
	font-size:clamp(13px, .72vw + 10px, 17px);
	font-weight:700;
	letter-spacing:.11em;
	text-transform:uppercase;
	color:rgba(255,255,255,.96);
	background:rgba(15,35,69,.24);
	box-shadow:var(--hero-highlight), 0 10px 26px rgba(8,18,36,.16);
	backdrop-filter:var(--hero-blur);
	-webkit-backdrop-filter:var(--hero-blur);
	border:0;
	text-shadow:none;
}

#start.hero .hero-kicker::before,
#start.hero .hero-kicker::after{
	display:none;
}

#start.hero .hero-kicker__sep{
	opacity:.42;
	color:rgba(255,255,255,.72);
}

#start.hero .hero-kicker__time{
	padding:4px 10px;
	border-radius:999px;
	background:rgba(100,183,255,.18);
	color:rgba(255,255,255,.98);
	border:0;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}

#start.hero .hero-glass-block{
	align-self:flex-start;
	inline-size:min(100%, 980px);
	max-inline-size:min(100%, 980px);
	gap:14px;
	margin-top:4px;
	margin-left:0;
	padding:18px 20px 20px;
	border-radius:var(--hero-radius);
	background:var(--hero-glass);
	box-shadow:var(--hero-highlight), var(--hero-soft-shadow);
	backdrop-filter:var(--hero-blur);
	-webkit-backdrop-filter:var(--hero-blur);
	border:0;
	overflow:visible;
}

#start.hero .hero-glass-block::before{
	content:"";
	position:absolute;
	inset:0;
	border-radius:inherit;
	background:
		var(--hero-sheen),
		radial-gradient(circle at top right, rgba(100,183,255,.18), transparent 34%),
		radial-gradient(circle at bottom left, rgba(47,181,196,.10), transparent 28%);
	box-shadow:none;
	border:0;
	backdrop-filter:none;
	-webkit-backdrop-filter:none;
	mask:none;
	mask-image:none;
	-webkit-mask-image:none;
	opacity:1;
	pointer-events:none;
	z-index:0;
}

#start.hero .hero-glass-block::after{
	content:"";
	position:absolute;
	left:0%;
	top:0;
	width:220px;
	height:54px;
	background:
		radial-gradient(ellipse at center, rgba(255,255,255,.98) 0%, rgba(255,255,255,.94) 18%, rgba(100,183,255,.78) 42%, rgba(47,181,196,.22) 66%, rgba(47,181,196,0) 84%);
	filter:blur(7px);
	opacity:.24;
	pointer-events:none;
	z-index:1;
	transform:translate(-50%, -50%) scale(.92);
	transform-origin:center;
	will-change:left, transform, opacity, filter;
	animation:heroEdgeFlareSweep 4.8s linear infinite alternate;
}

@keyframes heroEdgeFlareSweep{
	0%{
		left:10%;
		transform:translate(-50%, -50%) scale(.86);
		filter:blur(8px) brightness(.92);
		opacity:.22;
	}
	25%{
		left:30%;
		transform:translate(-50%, -50%) scale(.89);
		filter:blur(7px) brightness(1.00);
		opacity:.38;
	}
	50%{
		left:50%;
		transform:translate(-50%, -50%) scale(.93);
		filter:blur(6px) brightness(1.12);
		opacity:.62;
	}
	75%{
		left:70%;
		transform:translate(-50%, -50%) scale(.89);
		filter:blur(7px) brightness(1.00);
		opacity:.38;
	}
	100%{
		left:90%;
		transform:translate(-50%, -50%) scale(.86);
		filter:blur(8px) brightness(.92);
		opacity:.22;
	}
}

#start.hero .hero-glass-block > *{
	position:relative;
	z-index:2;
}

#start.hero .hero-glass-block .hero-kicker{
	display:none;
}

#start.hero{
	--hero-cyan-rgb:100 183 255;
	--hero-text-rgb:233 239 255;
	--hero-dark-rgb:8 18 36;
	--hero-white-rgb:255 255 255;

	font-family:var(--font-main),sans-serif;
}

#start.hero .hero-inner{
	background-image:url("../img/hero/background/jherobg-1280.png");
	background-image:image-set(
		url("../img/hero/background/jherobg-1280.avif") type("image/avif") 1x,
		url("../img/hero/background/jherobg-1280.webp") type("image/webp") 1x,
		url("../img/hero/background/jherobg-1280.png") type("image/png") 1x,
		url("../img/hero/background/jherobg-1920.avif") type("image/avif") 2x,
		url("../img/hero/background/jherobg-1920.webp") type("image/webp") 2x,
		url("../img/hero/background/jherobg-1920.png") type("image/png") 2x
	);
	background-position:center;
	background-size:cover;
	background-repeat:no-repeat;
}

@media (max-width:767px){
	#start.hero .hero-inner{
		background-image:url("../img/hero/background/jherobg-480.png");
		background-image:image-set(
			url("../img/hero/background/jherobg-480.avif") type("image/avif") 1x,
			url("../img/hero/background/jherobg-480.webp") type("image/webp") 1x,
			url("../img/hero/background/jherobg-480.png") type("image/png") 1x
		);
	}
}

#start.hero .hero-glass-separator{
	display:none;
}

#start.hero .hero-lead{
	align-self:flex-start;
	margin:0;
	inline-size:auto;
	min-inline-size:0;
	max-inline-size:52ch;
	font-size:clamp(16px, .5vw + 14px, 20px);
	font-weight:500;
	line-height:1.55;
	color:rgb(var(--hero-text-rgb) / .94);
	text-shadow:none;
}

#start.hero .hero-glass-block .hero-cta{
	align-self:stretch;
	justify-content:flex-start;
	flex-wrap:nowrap;
	gap:8px;
	margin-top:0;
	margin-bottom:0;
	inline-size:100%;
	padding-top:2px;
}

#start.hero .hero-glass-block .hero-cta .btn{
	flex:1 1 0;
	min-inline-size:0;
	padding:13px 16px;
	border-radius:18px;
	border:0;
	box-shadow:0 14px 32px rgb(var(--hero-dark-rgb) / .14), inset 0 1px 0 rgb(var(--hero-white-rgb) / .18);
	backdrop-filter:blur(12px) saturate(124%);
	-webkit-backdrop-filter:blur(12px) saturate(124%);
	transition:transform .18s ease, box-shadow .22s ease, background-color .22s ease, color .22s ease;
	text-shadow:none;
	font-size:14px;
	font-weight:700;
}

#start.hero .hero-glass-block .hero-cta .btn.btn-primary{
	background:linear-gradient(135deg, color-mix(in srgb, var(--overlay-top) 88%, white 12%), color-mix(in srgb, var(--overlay-bottom) 86%, var(--overlay-top) 14%));
	color:var(--hero-h1-color);
	box-shadow:0 16px 34px rgb(var(--hero-dark-rgb) / .2), 0 8px 20px rgb(var(--hero-cyan-rgb) / .1), inset 0 1px 0 rgb(var(--hero-white-rgb) / .22);
	border:0;
}

#start.hero .hero-glass-block .hero-cta .btn.btn-outline{
	background:rgba(255,255,255,.08);
	color:rgb(var(--hero-white-rgb) / .96);
	box-shadow:inset 0 1px 0 rgb(var(--hero-white-rgb) / .14), 0 12px 28px rgb(var(--hero-dark-rgb) / .12);
	border:0;
	backdrop-filter:blur(14px) saturate(130%);
	-webkit-backdrop-filter:blur(14px) saturate(130%);
}

@media (hover:hover) and (pointer:fine){
	#start.hero .hero-glass-block .hero-cta .btn:hover,
	#start.hero .hero-glass-block .hero-cta .btn:focus-visible{
		transform:translateY(-2px);
		box-shadow:0 18px 36px rgb(var(--hero-dark-rgb) / .24), inset 0 1px 0 rgb(var(--hero-white-rgb) / .22);
	}
}

#start.hero .hero-stats-carousel,
#start.hero .hero-track-wrapper{
	margin-top:0;
	width:100%;
	overflow:visible;
}

#start.hero .hero-glass-block .hero-stats-carousel{
	padding-bottom:14px;
	border-bottom:1px solid rgb(var(--hero-white-rgb) / .08);
}

#start.hero .hero-stats-track{
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr)) minmax(0, 1.2fr);
	gap:8px;
	width:100%;
	max-width:100%;
	margin-left:0;
	padding:0;
	background:none;
	box-shadow:none;
	border:0;
	clip-path:none;
	overflow:visible;
	animation:none;
}

#start.hero .hero-glass-block .hero-stats-carousel,
#start.hero .hero-glass-block .hero-track-wrapper,
#start.hero .hero-glass-block .hero-stats-track{
	width:100%;
	max-width:100%;
	min-width:0;
}

#start.hero .hero-stats-track::before,
#start.hero .hero-stats-track::after,
#start.hero .hero-stat::before,
#start.hero .hero-stat:not(:last-child)::after{
	display:none;
	animation:none;
}

#start.hero .hero-stat{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:flex-start;
	gap:14px;
	min-inline-size:0;
	inline-size:auto;
	padding:16px 12px 14px;
	border-radius:22px;
	background:transparent;
	backdrop-filter:none;
	-webkit-backdrop-filter:none;
	border:0;
	box-shadow:none;
	color:#ecf7ff;
	text-align:left;
	clip-path:none;
	animation:none;
	transition:transform .18s ease;
	overflow:visible;
	position:relative;
	isolation:isolate;
}

#start.hero .hero-stat--service{
	padding-left:0;
}

#start.hero .hero-stat--fm{
	cursor:pointer;
	pointer-events:auto;
	text-decoration:none;
}

#start.hero .hero-stat[data-service-target]{
	cursor:pointer;
	pointer-events:auto;
	text-decoration:none;
	color:inherit;
}

#start.hero .hero-stat::after{
	content:"";
	position:absolute;
	left:50%;
	top:18px;
	width:118px;
	height:118px;
	border-radius:34px;
	background:radial-gradient(circle at center, rgb(var(--hero-cyan-rgb) / .3) 0%, rgb(var(--hero-cyan-rgb) / .16) 38%, rgb(var(--hero-cyan-rgb) / 0) 74%);
	filter:blur(12px);
	opacity:.65;
	pointer-events:none;
	z-index:0;
	transform:translateX(-50%);
	animation:heroStatAuraPulse 3.2s ease-in-out infinite;
}

#start.hero .hero-stat .stat-icon{
	width:98px;
	height:98px;
	border-radius:30px;
	background:radial-gradient(circle at 30% 24%, rgb(var(--hero-white-rgb) / .34), rgb(var(--hero-white-rgb) / .1) 34%, rgb(var(--hero-cyan-rgb) / .16) 100%);
	box-shadow:inset 0 1px 0 rgb(var(--hero-white-rgb) / .26), 0 18px 36px rgb(var(--hero-dark-rgb) / .22), 0 0 0 1px rgb(var(--hero-cyan-rgb) / .14), 0 0 26px rgb(var(--hero-cyan-rgb) / .14);
	border:0;
	color:rgba(255,255,255,.92);
	position:relative;
	z-index:1;
	animation:heroStatIconLift 3.2s ease-in-out infinite;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	grid-column:auto;
	grid-row:auto;
}

#start.hero .hero-stat .stat-icon::before{
	content:"";
	position:absolute;
	inset:-7px;
	border-radius:36px;
	border:1px solid rgba(150,220,255,.22);
	box-shadow:0 0 0 1px rgb(var(--hero-white-rgb) / .04) inset;
	opacity:.72;
	animation:heroStatIconRing 3.2s ease-in-out infinite;
}

#start.hero .hero-stat:nth-child(2)::after,
#start.hero .hero-stat:nth-child(2) .stat-icon{
	animation-delay:.45s;
}

#start.hero .hero-stat:nth-child(3)::after,
#start.hero .hero-stat:nth-child(3) .stat-icon{
	animation-delay:.9s;
}

#start.hero .hero-stat .stat-icon img{
	width:54px;
	height:54px;
	filter:drop-shadow(0 6px 14px rgb(var(--hero-cyan-rgb) / .22));
}

#start.hero .hero-stat--fm .stat-icon img{
	/* FM icon is from a different source set, so normalize its tint to the hero cyan style. */
	filter:brightness(0) saturate(100%) invert(84%) sepia(14%) saturate(1749%) hue-rotate(171deg) brightness(101%) contrast(98%) drop-shadow(0 6px 14px rgba(100,183,255,.22));
}

#start.hero .hero-stat--service .stat-icon img{
	/* MobileService source is black; tint to hero cyan and add crisp edge thickening (no blur radius). */
	filter:brightness(0) saturate(100%) invert(84%) sepia(14%) saturate(1749%) hue-rotate(171deg) brightness(101%) contrast(98%) drop-shadow(0.8px 0 0 rgba(100,183,255,.9)) drop-shadow(-0.8px 0 0 rgba(100,183,255,.9)) drop-shadow(0 0.8px 0 rgba(100,183,255,.9)) drop-shadow(0 -0.8px 0 rgba(100,183,255,.9));
}

#start.hero .hero-stat .stat-icon svg{
	width:54px;
	height:54px;
}

@keyframes heroStatAuraPulse{
	0%,100%{
		opacity:.48;
		transform:translateX(-50%) scale(.9);
	}
	50%{
		opacity:.82;
		transform:translateX(-50%) scale(1.1);
	}
}

@keyframes heroStatIconLift{
	0%,100%{
		transform:translateY(0) scale(1);
	}
	50%{
		transform:translateY(-3px) scale(1.04);
	}
}

@keyframes heroStatIconRing{
	0%,100%{
		opacity:.42;
		transform:scale(.96);
	}
	50%{
		opacity:.88;
		transform:scale(1.06);
	}
}

#start.hero .hero-stat .stat-title,
#start.hero .hero-stat .stat-sub{
	grid-column:auto;
	grid-row:auto;
	min-inline-size:0;
	margin:0;
	text-transform:none;
	letter-spacing:.015em;
	text-shadow:none;
	text-align:center;
	white-space:normal;
	opacity:1 !important;
	visibility:visible !important;
	position:relative !important;
	z-index:1 !important;
	animation:none;
}

#start.hero .hero-stat .stat-title{
	font-size:clamp(14px, .5vw + 11px, 18px);
	font-weight:800;
	line-height:1.12;
	letter-spacing:.02em;
	color:#ffffff;
	max-inline-size:100%;
	overflow-wrap:anywhere;
	text-wrap:balance;
}

#start.hero .hero-stat--service .stat-title{
	white-space:nowrap;
	overflow-wrap:normal;
	text-wrap:nowrap;
}

#start.hero .hero-stat .stat-sub{
	inline-size:100%;
	max-width:18ch;
	font-size:clamp(12px, .36vw + 10px, 14px);
	font-weight:520;
	line-height:1.3;
	color:rgb(var(--hero-text-rgb) / .84);
	overflow-wrap:anywhere;
	word-break:break-word;
}

#start.hero .hero-stat .stat-accent{
	color:color-mix(in srgb, var(--brand-sky) 72%, white 28%);
	text-shadow:none;
	animation:none;
}

@media (hover:hover) and (pointer:fine){
	#start.hero .hero-stat:hover,
	#start.hero .hero-stat:focus-within{
		transform:translateY(-2px);
	}

	#start.hero .hero-stat:hover .stat-icon,
	#start.hero .hero-stat:focus-within .stat-icon{
		box-shadow:inset 0 1px 0 rgb(var(--hero-white-rgb) / .24), 0 16px 30px rgb(var(--hero-dark-rgb) / .2), 0 0 0 1px rgb(var(--hero-cyan-rgb) / .16);
	}
}

@media (max-width:1199px){
	#start.hero .hero-content{
		width:min(92vw, 760px);
		margin-inline:auto;
		align-items:center;
		text-align:center;
		justify-self:center;
	}

	#start.hero .hero-title-stack,
	#start.hero .hero-content h1,
	#start.hero .hero-glass-block,
	#start.hero .hero-lead,
	#start.hero .hero-kicker{
		align-self:center;
	}

	#start.hero .hero-title-stack,
	#start.hero .hero-content h1{
		align-items:center;
	}

	#start.hero .hero-content h1 span,
	#start.hero .hero-lead,
	#start.hero .hero-stat .stat-title,
	#start.hero .hero-stat .stat-sub{
		text-align:center;
	}

	#start.hero .hero-glass-block,
	#start.hero .hero-stats-track{
		max-width:min(100%, 760px);
		margin-left:0;
	}

	#start.hero .hero-glass-block .hero-cta{
		justify-content:center;
		flex-wrap:wrap;
	}
}

@media (max-width:900px){
	#start.hero .hero-content{
		width:min(92vw, 720px);
		gap:18px;
	}

	#start.hero .hero-glass-block{
		padding:16px;
	}

	#start.hero .hero-stats-track{
		grid-template-columns:repeat(4, minmax(0, 1fr));
		max-width:100%;
	}

	#start.hero .hero-stat{
		align-items:center;
	}

	#start.hero .hero-stat .stat-icon{
		margin-inline:auto;
	}
}

@media (max-width:640px){
	#start.hero .hero-content{
		padding-top:96px;
		padding-bottom:52px;
	}

	#start.hero .hero-kicker{
		padding:8px 14px;
		gap:8px;
	}

	#start.hero .hero-glass-block{
		border-radius:22px;
	}

	#start.hero .hero-glass-block .hero-cta .btn{
		flex:1 1 100%;
		min-inline-size:0;
	}

	#start.hero .hero-lead{
		font-size:15px;
	}

	#start.hero .hero-stat{
		padding:14px;
		border-radius:20px;
	}
	}

@media (max-width:619px){
	#start.hero .hero-stats-track{
		grid-template-columns:1fr;
		gap:10px;
		max-width:min(100%, 460px);
		margin-inline:auto;
	}

	#start.hero .hero-stat{
		display:grid;
		grid-template-columns:56px minmax(0, 1fr);
		grid-template-rows:auto auto;
		column-gap:12px;
		row-gap:2px;
		align-items:center;
		text-align:left;
		padding:11px 14px;
	}

	#start.hero .hero-stat .stat-icon{
		grid-column:1;
		grid-row:1 / span 2;
		margin-inline:0;
		width:52px;
		height:52px;
	}

	#start.hero .hero-stat .stat-title,
	#start.hero .hero-stat .stat-sub{
		text-align:left;
	}

	#start.hero .hero-stat .stat-title{
		grid-column:2;
		grid-row:1;
		font-size:clamp(14px, 3.4vw, 18px);
	}

	#start.hero .hero-stat .stat-sub{
		grid-column:2;
		grid-row:2;
		font-size:clamp(11px, 3.2vw, 13px);
		max-width:none;
	}

}

/* About: 3-row grid inside .about-content
	 1) intro copy + media (2 cols)
	 2) highlight paragraph (full width)
	 3) "Co nas wyrÄ‚Ĺ‚ÄąÄ˝nia" + features list (2 cols)
*/
@media(min-width:1025px){
	#o-nas.card.about .about-content{display:grid !important;grid-template-columns:minmax(320px,1.15fr) minmax(300px,0.85fr);grid-template-areas:"intro media" "highlight highlight" "features features";gap:clamp(22px,3.6vw,38px);align-items:start}
	#o-nas.card.about .about-copy-block{grid-area:intro;max-width:min(560px,96%)}
	#o-nas.card.about .about-media{grid-area:media}
	#o-nas.card.about .about-content>p.about-copy--highlight{grid-area:highlight}
	#o-nas.card.about .about-content>.about-features-block{grid-area:features;align-self:start;display:grid;grid-template-columns:1fr;row-gap:clamp(10px,1.6vw,14px);align-items:start}
	#o-nas.card.about .about-content>.about-features-block>p.about-copy--note{grid-column:1}
	#o-nas.card.about .about-content>.about-features-block>ul.about-list--features{grid-column:1;columns:2;column-gap:28px}
	#o-nas.card.about .about-content>.about-features-block>ul.about-list--features li{break-inside:avoid}
}

/* Services: keep intro CTA aligned to bottom of the intro panel on wide screens */
@media(min-width:1025px){
	#uslugi.card.services .services-intro{justify-content:space-between}
}

/* Services: show CTA text and button on one line on medium+ screens; keep column on very small screens */
@media (min-width:420px){
	#uslugi.card.services .services-intro-cta{
		flex-direction:row;
		align-items:center;
		gap:12px;
	}
}
@media (max-width:419px){
	#uslugi.card.services .services-intro-cta{flex-direction:column}
}

/* Secondary link buttons: remove rounded corners and background fill. */
a.btn.btn-secondary,
a.btn.btn-secondary:is(:hover,:focus-visible,:active){
	border-radius:0 !important;
	background:none !important;
	background-color:transparent !important;
	border:0 !important;
	box-shadow:none !important;
}

/* Privacy banner: keep section links readable and aligned as a nav bar. */
.privacy-body .hero.privacy-hero .privacy-hero__links{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	align-items:center;
	justify-content:flex-start;
}

.privacy-body .hero.privacy-hero .privacy-hero__links a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	position:relative;
	overflow:hidden;
	isolation:isolate;
	white-space:nowrap;
	flex:0 0 auto;
	padding:8px 12px;
	border:1px solid var(--border-soft);
	border-radius:999px;
	background:var(--surface-primary);
	color:var(--text-primary) !important;
	-webkit-text-fill-color:currentColor !important;
	text-decoration:none;
	line-height:1.2;
	opacity:1 !important;
	transition:color .22s ease,transform .16s ease,border-color .22s ease;
}

.privacy-body .hero.privacy-hero .privacy-hero__links a::before{
	content:"";
	position:absolute;
	inset:0;
	border-radius:inherit;
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom));
	transform:scaleX(0);
	transform-origin:left center;
	opacity:0;
	transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .18s ease;
	z-index:-1;
}

@media (hover:hover) and (pointer:fine){
	.privacy-body .hero.privacy-hero .privacy-hero__links a:is(:hover,:focus-visible){
		color:#fff !important;
		-webkit-text-fill-color:currentColor !important;
		transform:translateY(-1px);
		text-shadow:none;
		text-decoration:none !important;
		border-color:transparent;
	}
	.privacy-body .hero.privacy-hero .privacy-hero__links a:is(:hover,:focus-visible)::before{
		transform:scaleX(1);
		opacity:1;
	}
}

@media (max-width:900px){
	.privacy-body .hero.privacy-hero .privacy-hero__links{
		flex-wrap:nowrap;
		overflow-x:auto;
		-webkit-overflow-scrolling:touch;
		padding-bottom:4px;
		scrollbar-width:thin;
	}
	.privacy-body .hero.privacy-hero .privacy-hero__links a{width:auto !important}
}

/* Portfolio: remove hover/focus visual state from the header logo link. */
.portfolio-body .portfolio-banner .brand:hover,
.portfolio-body .portfolio-banner .brand:focus-visible,
.portfolio-body .portfolio-banner .brand:active{
	transform:none !important;
	filter:none !important;
	opacity:1 !important;
	text-shadow:none !important;
}

.portfolio-body .portfolio-banner picture:hover,
.portfolio-body .portfolio-banner picture:focus-visible,
.portfolio-body .portfolio-banner picture:active{
	transform:none !important;
	filter:none !important;
	opacity:1 !important;
	text-shadow:none !important;
}

/* Portfolio banner: remove blur/glow around the logo image. */
.portfolio-body .portfolio-banner .hero-logo{
	filter:none !important;
	box-shadow:none !important;
	opacity:1 !important;
}

/* Privacy/Clauses subpages (all languages): match portfolio logo behavior (no hover/focus effects, no blur). */
.privacy-body .privacy-hero .brand:hover,
.privacy-body .privacy-hero .brand:focus-visible,
.privacy-body .privacy-hero .brand:active{
	transform:none !important;
	filter:none !important;
	opacity:1 !important;
	text-shadow:none !important;
}

.privacy-body .privacy-hero picture:hover,
.privacy-body .privacy-hero picture:focus-visible,
.privacy-body .privacy-hero picture:active{
	transform:none !important;
	filter:none !important;
	opacity:1 !important;
	text-shadow:none !important;
}

.privacy-body .privacy-hero .hero-logo{
	filter:none !important;
	box-shadow:none !important;
	opacity:1 !important;
}

.privacy-body .portfolio-banner{
	margin-top:clamp(104px,12vh,144px);
}

.privacy-body .privacy-main{
	padding-top:0;
}

.privacy-body .privacy-card--single{
	max-width:var(--privacy-content-maxw,920px);
	margin:0 auto;
	padding:15px;
	border-radius:24px;
	line-height:1.7;
	box-shadow:var(--shadow-soft);
}

.privacy-body .privacy-card--single > :first-child{
	margin-top:0;
}

.privacy-body .privacy-card--single h1{
	margin-bottom:clamp(18px,2.2vw,28px);
	font-size:clamp(2rem,4.2vw,3.25rem);
	line-height:1.04;
	letter-spacing:-0.03em;
}

.privacy-body .privacy-contact-panel{
	margin-top:clamp(24px,3vw,36px);
	padding:clamp(20px,2.6vw,32px);
	border-radius:22px;
	background:linear-gradient(180deg,rgba(255,255,255,0.82),rgba(244,247,255,0.96));
	border:1px solid rgba(82,95,129,0.14);
	box-shadow:0 12px 28px rgba(15,23,42,0.06);
}

.privacy-body .privacy-contact-panel > :first-child{
	margin-top:0;
}

.privacy-body .privacy-contact-panel h2{
	margin-top:0;
	margin-bottom:clamp(12px,1.6vw,18px);
	font-size:clamp(1.28rem,2.1vw,1.72rem);
	line-height:1.16;
	letter-spacing:-0.02em;
}

.privacy-body .privacy-contact-panel p:last-of-type{
	margin-bottom:0;
}

.privacy-body .privacy-card--single h2{
	margin-top:clamp(28px,4vw,44px);
	margin-bottom:clamp(10px,1.4vw,16px);
	font-size:clamp(1.25rem,2vw,1.6rem);
	line-height:1.16;
}

.privacy-body .privacy-card--single p,
.privacy-body .privacy-card--single li{
	font-size:clamp(1rem,1.1vw,1.08rem);
}

.privacy-body .privacy-card--single .privacy-lead{
	font-size:clamp(1.08rem,1.25vw,1.18rem);
	max-width:72ch;
	margin-bottom:clamp(20px,2.2vw,30px);
}

.privacy-body .privacy-card--single .privacy-list{
	display:flex;
	flex-direction:column;
	gap:12px;
	padding-left:1.2em;
}

.privacy-body .privacy-card--single .privacy-list li{
	margin:0;
	padding:0;
}

.privacy-body .privacy-card--single .email-obf{
	font-weight:700;
	text-decoration:underline;
	text-underline-offset:0.16em;
	text-decoration-thickness:0.08em;
	text-decoration-color:rgba(82,95,129,0.42);
}

/* Portfolio cards: show location + title on image and keep text inside image bounds. */
.portfolio-body .portfolio-grid .portfolio-card__media{
	position:relative;
	overflow:hidden;
	isolation:isolate;
}

.portfolio-body .portfolio-grid .portfolio-card__media picture,
.portfolio-body .portfolio-grid .portfolio-card__media img{
	display:block;
	width:100%;
	height:auto;
}

.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__media::after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	height:56%;
	background:linear-gradient(to top, rgba(8,16,32,.74) 0%, rgba(8,16,32,.44) 36%, rgba(8,16,32,0) 100%);
	pointer-events:none;
	z-index:1;
}

.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__head{
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	z-index:2;
	padding:clamp(10px,1.6vw,14px);
	display:flex;
	align-items:flex-end;
	justify-content:flex-start !important;
	gap:12px;
	color:var(--nav-highlight-text);
	max-width:100%;
	box-sizing:border-box;
	text-align:left;
}

.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__head > div{
	min-width:0;
	max-width:100%;
	margin-left:0 !important;
	margin-right:auto !important;
	text-align:left;
}

.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__location,
.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__title,
.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__year{
	color:var(--nav-highlight-text);
	text-shadow:0 2px 10px rgba(0,0,0,.55);
}

.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__year{
	display:none;
}

.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__location,
.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__title{
	overflow-wrap:anywhere;
	word-break:break-word;
	max-width:100%;
	margin:0;
	text-align:left !important;
}

.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__title{
	font-size:clamp(1.02rem,1.5vw,1.18rem);
	line-height:1.22;
}

.portfolio-body .portfolio-grid .portfolio-card--head-on-media .portfolio-card__location{
	opacity:.95;
	margin-bottom:4px;
}

@media(max-width:1024px){
	#o-nas.card.about .about-content{display:flex !important;flex-direction:column !important;gap:clamp(18px,3vw,32px) !important;align-items:stretch !important}
}

/* Default stacking for the features block (mobile and as a safe fallback). */
.card.about .about-features-block{display:flex;flex-direction:column;gap:clamp(10px,1.6vw,14px)}

/* Ensure moved paragraphs/lists keep consistent spacing in all languages. */
.card.about .about-copy{margin:0}
#o-nas.card.about .about-content>p.about-copy{margin:0;line-height:1.7}
.card.about .about-list,.card.about .about-list--features{margin:0;padding-left:1.1em}
.card.about .about-list li,.card.about .about-list--features li{line-height:1.65;margin-bottom:var(--about-li-gap,clamp(6px,1vw,8px))}
.card.about .about-list li:last-child,.card.about .about-list--features li:last-child{margin-bottom:0}

/* Ensure footer gradient overrides the base .card background. */
.card.site-footer{background:linear-gradient(90deg,var(--overlay-bottom),var(--overlay-top))}

/* Experience map: offset pins that would overlap (fixed offsets, not random). */



/* Team org chart: "On Site" overlay panel behind (authorized + site managers + technicians). */
#zespol .org-graph__grid{position:relative}
#zespol .org-graph__grid>.org-graph__col{position:relative;z-index:1}

#zespol .org-graph__col--tree-ops .org-flow>.org-flow__item{position:relative;z-index:1}
#zespol .org-onsite-wrap{--org-onsite-pad:12px;--org-onsite-top-pad:24px;--org-onsite-bottom-pad:12px;position:absolute;z-index:0;left:0;top:0;width:0;height:0;border:1px solid var(--border-soft);border-radius:18px;background:var(--gradient-card);pointer-events:none}
#zespol .org-onsite__badge{position:absolute;top:10px;left:12px;display:inline-flex;align-items:center;border-radius:999px;padding:3px 10px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(200,220,255,.9));border:1px solid rgba(120,160,230,.6);color:var(--brand-navy);box-shadow:inset 0 1px 2px rgba(255,255,255,.7),inset 0 -2px 4px rgba(70,110,190,.25),0 6px 12px rgba(30,60,120,.18)}
#zespol .org-graph__col--legend-ops .org-onsite__authorized{
	position:absolute;
	pointer-events:auto;
	z-index:3;
	max-width:min(100%,clamp(270px,29vw,360px));
	padding:12px 14px;
	border-radius:18px;
	border:1px solid rgba(134,168,235,.58) !important;
	background:linear-gradient(160deg,rgba(255,255,255,.98),rgba(231,241,255,.95)) !important;
	box-shadow:0 16px 30px rgba(15,23,42,.16),0 6px 14px rgba(15,23,42,.10),inset 0 1px 0 rgba(255,255,255,.9) !important;
	transition:transform .24s cubic-bezier(.22,.61,.36,1),box-shadow .24s ease,border-color .24s ease,background .24s ease;
}

#zespol .org-onsite__authorized .org-flow__label{
	font-size:.97rem;
	line-height:1.35;
	letter-spacing:.01em;
	color:var(--brand-navy);
	text-shadow:0 1px 0 rgba(255,255,255,.65);
}

#zespol .org-onsite__authorized .org-flow__pin{
	width:48px;
	height:48px;
	flex:0 0 48px;
}

#zespol .org-onsite__authorized .org-flow__icon,
#zespol .org-onsite__authorized .org-flow__icon--img{
	width:22px !important;
	height:22px !important;
}

#zespol .org-onsite__authorized:is(:hover,:focus-visible){
	transform:translateY(-2px);
	border-color:color-mix(in srgb,var(--overlay-top) 42%,white 58%) !important;
	box-shadow:0 22px 38px rgba(15,23,42,.20),0 10px 20px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.92) !important;
}

#zespol .org-onsite__authorized.is-active{
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom)) !important;
	background-size:170% 170%;
	background-position:0% 50%;
	border-color:color-mix(in srgb,var(--overlay-top) 46%,white 54%) !important;
	box-shadow:0 14px 30px rgba(11,42,92,.34),0 6px 14px rgba(20,140,205,.22),inset 0 1px 0 rgba(255,255,255,.24),inset 0 -2px 0 rgba(7,38,86,.34) !important;
	animation:ctaBtnGradientDrift 10.67s ease-in-out infinite alternate;
}

#zespol .org-onsite__authorized.is-active .org-flow__label{
	color:var(--hero-h1-color) !important;
	text-shadow:0 1px 0 rgba(8,16,32,.28);
}

#zespol .org-onsite__authorized::after{display:none}

/* Team: refine specific list items "Kierownik obiektow" and "Serwisy mobilne". */
#zespol li.org-flow__item--fm,
#zespol li.org-flow__item--services-field{
	border-color:rgba(134,168,235,.52) !important;
	background:
		linear-gradient(160deg,rgba(255,255,255,.99),rgba(236,245,255,.97)) padding-box,
		linear-gradient(138deg,rgba(186,210,255,.78),rgba(103,137,223,.48) 48%,rgba(31,42,68,.58) 100%) border-box !important;
	box-shadow:0 20px 40px rgba(15,23,42,.18),0 10px 22px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.90),inset 0 -3px 0 rgba(79,107,255,.24) !important;
}

#zespol li.org-flow__item--fm .org-flow__label,
#zespol li.org-flow__item--services-field .org-flow__label{
	font-size:1rem;
	line-height:1.32;
}

#zespol li.org-flow__item--fm .org-flow__pin,
#zespol li.org-flow__item--services-field .org-flow__pin{
	box-shadow:0 12px 22px rgba(8,16,32,.34),inset 0 1px 2px rgba(255,255,255,.2),inset 0 -8px 14px rgba(0,0,0,.22) !important;
}

#zespol li.org-flow__item--fm.is-active,
#zespol li.org-flow__item--services-field.is-active{
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom)) !important;
	background-size:170% 170%;
	background-position:0% 50%;
	border-color:color-mix(in srgb,var(--overlay-top) 46%,white 54%) !important;
	box-shadow:0 14px 30px rgba(11,42,92,.34),0 6px 14px rgba(20,140,205,.22),inset 0 1px 0 rgba(255,255,255,.24),inset 0 -2px 0 rgba(7,38,86,.34) !important;
	animation:ctaBtnGradientDrift 10.67s ease-in-out infinite alternate;
}

#zespol li.org-flow__item--fm.is-active .org-flow__label,
#zespol li.org-flow__item--services-field.is-active .org-flow__label{
	color:var(--hero-h1-color) !important;
	text-shadow:0 1px 0 rgba(8,16,32,.28);
}

/* Team org chart: <1200px layout: row1 (1,2), row2 (4,3). */
@media(max-width:1199px){
	#zespol .org-graph__grid{grid-template-columns:1fr 1fr;grid-template-areas:"legendOps treeOps" "legendServices treeServices"}
	#zespol .org-flow__item{grid-template-columns:1fr;grid-template-rows:auto auto;justify-items:center;gap:10px;align-items:start;text-align:center}
	#zespol .org-flow__pin{justify-self:center}
}

/* Contact: when "ZasiĂ„â„˘g operacyjny" is hidden (<1024px), make concierge span full width. */
@media(max-width:1024px){
	#kontakt .contact-grid{grid-template-columns:1fr !important}
	#kontakt .contact-card.contact-concierge{grid-column:1 / -1}
}

@media(max-width:520px){#zespol .org-onsite-wrap{--org-onsite-pad:10px;--org-onsite-top-pad:20px}}

/* Team org chart: match the Services pin look (same lens/highlight and shadow bias). */
#zespol .org-flow__pin{
	transform:none !important;
	will-change:auto !important;
	filter:none !important;
	border:0 !important;
	position:relative !important;
	/* Keep the original pin color; only unify depth/shadow. */
	box-shadow:6px 12px 18px rgba(8,16,32,0.34),inset 0 0 14px rgba(255,255,255,0.10),inset 0 1px 2px rgba(255,255,255,0.18),inset 0 -10px 16px rgba(0,0,0,0.28) !important;
}

/* Subtle global hover feedback for clickable controls (except navbar controls). */
:where(a.btn,button,[role="button"]):not(.nav-toggle):not(.lang-switcher__button):not(:disabled):not([aria-disabled="true"]){
	transition:transform .16s ease,box-shadow .2s ease,filter .2s ease;
}

@media (hover:hover) and (pointer:fine){
	:where(a.btn,button,[role="button"]):not(.nav-toggle):not(.lang-switcher__button):not(:disabled):not([aria-disabled="true"]):hover{
		transform:translateY(-1px);
		box-shadow:0 8px 20px rgba(30,70,120,.12);
		filter:saturate(1.03);
	}
}

:where(a.btn,button,[role="button"]):not(.nav-toggle):not(.lang-switcher__button):not(:disabled):not([aria-disabled="true"]):active{
	transform:translateY(0);
}

/* Broader clickable affordance: links and JS-driven interactive controls. */
:where(
	a[href],
	summary,
	.filter-chip,
	.team-filter__chip,
	.portfolio-card,
	.portfolio-thumb,
	.thumb,
	.cp-step,
	.org-flow__item,
	[data-filter],
	[data-team-filter],
	[data-org-role],
	[data-city-card],
	[data-city-pin],
	[data-clause-tab]
):not(nav.nav a):not(.brand):not(.lang-switcher__link){
	cursor:pointer;
	transition:transform .16s ease,box-shadow .2s ease,filter .2s ease,opacity .2s ease;
}

@media (hover:hover) and (pointer:fine){
	:where(
		a[href],
		summary,
		.filter-chip,
		.team-filter__chip,
		.portfolio-card,
		.portfolio-thumb,
		.thumb,
		.cp-step,
		.org-flow__item,
		[data-filter],
		[data-team-filter],
		[data-org-role],
		[data-city-card],
		[data-city-pin],
		[data-clause-tab]
	):not(nav.nav a):not(.brand):not(.lang-switcher__link):hover{
		transform:translateY(-2px);
		box-shadow:0 10px 24px rgba(30,70,120,.12);
	}
}

:where(
	a[href],
	summary,
	.filter-chip,
	.team-filter__chip,
	.portfolio-card,
	.portfolio-thumb,
	.thumb,
	.cp-step,
	.org-flow__item,
	[data-filter],
	[data-team-filter],
	[data-org-role],
	[data-city-card],
	[data-city-pin],
	[data-clause-tab]
):not(nav.nav a):not(.brand):not(.lang-switcher__link):focus-visible{
	box-shadow:0 0 0 3px rgba(79,107,255,.16), var(--shadow-soft);
}

/* Portfolio cards: keep meta columns at 2/3 (Zakres) and 1/3 (Status). */
.portfolio-card__meta{
	grid-template-columns:minmax(0,2fr) minmax(0,1fr) !important;
}

.portfolio-card__meta > div{
	min-width:0;
}

/* Text-only clickable controls: gradient text fill on hover/focus (like footer). */
:where(
	a[href]:not(.btn):not(nav.nav a):not(.brand):not(.lang-switcher__link):not(.hero-stat),
	.email-obf,
	.filter-link,
	button.filter-link
){
	position:relative;
	overflow:visible !important;
	transform:none !important;
	box-shadow:none !important;
	filter:none !important;
	text-decoration:none;
}

@supports ((-webkit-background-clip:text) or (background-clip:text)){
	:where(
		a[href]:not(.btn):not(nav.nav a):not(.brand):not(.lang-switcher__link):not(.hero-stat),
		.email-obf,
		.filter-link,
		button.filter-link
	):not(.card.site-footer :is(a,.email-obf,.filter-link,button.filter-link)){
		background-image:linear-gradient(90deg,currentColor 0 50%,color-mix(in srgb,currentColor 78%,white 22%) 50% 100%);
		background-size:200% 100%;
		background-position:0% 50%;
		-webkit-background-clip:text;
		background-clip:text;
		-webkit-text-fill-color:transparent;
		transition:background-position 2.4s cubic-bezier(.22,.61,.36,1),text-shadow .3s ease;
	}

	@media (hover:hover) and (pointer:fine){
		:where(
			a[href]:not(.btn):not(nav.nav a):not(.brand):not(.lang-switcher__link),
			.email-obf,
			.filter-link,
			button.filter-link
		):not(.card.site-footer :is(a,.email-obf,.filter-link,button.filter-link)):is(:hover,:focus-visible){
			background-position:100% 50%;
			text-shadow:0 0 10px rgba(255,255,255,.18);
		}
	}
}

@supports not ((-webkit-background-clip:text) or (background-clip:text)){
	:where(
		a[href]:not(.btn):not(nav.nav a):not(.brand):not(.lang-switcher__link):not(.hero-stat),
		.email-obf,
		.filter-link,
		button.filter-link
	):not(.card.site-footer :is(a,.email-obf,.filter-link,button.filter-link)){
		transition:text-shadow .3s ease;
	}

	@media (hover:hover) and (pointer:fine){
		:where(
			a[href]:not(.btn):not(nav.nav a):not(.brand):not(.lang-switcher__link),
			.email-obf,
			.filter-link,
			button.filter-link
		):not(.card.site-footer :is(a,.email-obf,.filter-link,button.filter-link)):is(:hover,:focus-visible){
			text-shadow:0 0 8px color-mix(in srgb,currentColor 65%,white 35%);
		}
	}
}

/* Light shine sweep on interactive controls (outside navbar). */
:where(
	a.btn,
	a[href],
	button,
	[role="button"],
	summary,
	.filter-chip,
	.team-filter__chip,
	.portfolio-card,
	.portfolio-thumb,
	.thumb,
	.cp-step,
	.org-flow__item,
	[data-filter],
	[data-team-filter],
	[data-org-role],
	[data-city-card],
	[data-city-pin],
	[data-clause-tab]
):not(:disabled):not([aria-disabled="true"]){
	position:relative;
	overflow:hidden;
	isolation:isolate;
}

:where(
	a.btn,
	a[href],
	button,
	[role="button"],
	summary,
	.filter-chip,
	.team-filter__chip,
	.portfolio-card,
	.portfolio-thumb,
	.thumb,
	.cp-step,
	.org-flow__item,
	[data-filter],
	[data-team-filter],
	[data-org-role],
	[data-city-card],
	[data-city-pin],
	[data-clause-tab]
):not(:disabled):not([aria-disabled="true"])::after{
	content:"";
	position:absolute;
	inset:-120% -35%;
	background:linear-gradient(110deg,transparent 44%,rgba(255,255,255,.24) 50%,transparent 56%);
	transform:translateX(-140%);
	opacity:0;
	pointer-events:none;
	z-index:1;
	transition:transform 3s cubic-bezier(.22,.61,.36,1),opacity .4s ease;
}

@media (hover:hover) and (pointer:fine){
	:where(
		a.btn,
		a[href],
		button,
		[role="button"],
		summary,
		.filter-chip,
		.team-filter__chip,
		.portfolio-card,
		.portfolio-thumb,
		.thumb,
		.cp-step,
		.org-flow__item,
		[data-filter],
		[data-team-filter],
		[data-org-role],
		[data-city-card],
		[data-city-pin],
		[data-clause-tab]
	):not(:disabled):not([aria-disabled="true"]):is(:hover,:focus-visible)::after{
		transform:translateX(140%);
		opacity:1;
	}
}

@media (prefers-reduced-motion: reduce){
	:where(
		a.btn,
		a[href],
		button,
		[role="button"],
		summary,
		.filter-chip,
		.team-filter__chip,
		.portfolio-card,
		.portfolio-thumb,
		.thumb,
		.cp-step,
		.org-flow__item,
		[data-filter],
		[data-team-filter],
		[data-org-role],
		[data-city-card],
		[data-city-pin],
		[data-clause-tab]
	):not(:disabled):not([aria-disabled="true"])::after{
		transition:none;
	}
}

/* Hero logo: no hover effect. */
#start .hero-content > a.brand,
#start .hero-content > a.brand:is(:hover,:focus-visible){
	transform:none !important;
	box-shadow:none !important;
	filter:none !important;
	text-shadow:none !important;
	overflow:visible !important;
	isolation:auto !important;
}

#start .hero-content > a.brand::after,
#start .hero-content > a.brand:is(:hover,:focus-visible)::after{
	content:none !important;
}

/* Contact coverage: keep "14 dni" in a single line. */
#kontakt .contact-coverage .coverage-stats li:last-child .stat-value{
	white-space:nowrap;
}

/* Services: tailored hover effect for service-toggle buttons. */
#uslugi.card.services button.service-toggle{
	position:relative;
	isolation:isolate;
	transition:transform .2s ease, box-shadow .25s ease, filter .25s ease;
}

#uslugi.card.services button.service-toggle::after{
	content:"";
	position:absolute;
	inset:0;
	border-radius:inherit;
	background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.22) 50%,transparent 62%);
	transform:translateX(-130%);
	opacity:0;
	pointer-events:none;
	z-index:1;
	transition:transform 1.8s cubic-bezier(.22,.61,.36,1),opacity .35s ease;
}

#uslugi.card.services button.service-toggle > *{
	position:relative;
	z-index:2;
}

@media (hover:hover) and (pointer:fine){
	#uslugi.card.services button.service-toggle:is(:hover,:focus-visible){
		transform:translateY(-1px);
		box-shadow:0 14px 30px rgba(15,23,42,.16);
		filter:saturate(1.03);
	}

	#uslugi.card.services button.service-toggle:is(:hover,:focus-visible)::after{
		transform:translateX(130%);
		opacity:1;
	}
}

/* Mobile nav: keep language dropdown fully inside viewport. */
@media (max-width: 960px){
	nav.nav{
		overflow-y:auto;
		-webkit-overflow-scrolling:touch;
		padding-bottom:16px;
	}

	nav.nav .lang-switcher{
		width:100%;
		display:flex;
		flex-direction:column;
		align-items:center;
	}

	nav.nav .lang-switcher__menu{
		position:static;
		left:auto;
		top:auto;
		transform:none;
		margin-top:8px;
		width:min(92vw,240px);
		max-width:min(92vw,240px);
		max-height:40vh;
		overflow-x:hidden;
		overflow:auto;
	}

	nav.nav .lang-switcher__menu.is-open{
		display:block;
	}

	nav.nav .lang-switcher__menu .lang-switcher__link{
		display:block;
		width:100%;
		min-width:0;
		margin:0;
		padding:.45rem 1rem;
		box-sizing:border-box;
		text-align:center;
	}
}

@media (max-width: 960px) and (max-height: 500px){
	nav.nav .lang-switcher{
		position:relative;
	}

	nav.nav .lang-switcher__menu{
		position:absolute;
		left:50%;
		top:auto;
		bottom:calc(100% + 20px);
		transform:translateX(-50%);
		margin-top:0;
		max-height:34vh;
	}

	nav.nav .lang-switcher__menu .lang-switcher__link{
		padding:.3rem .9rem;
		font-size:.8rem;
		line-height:1.2;
	}
}

@media (prefers-reduced-motion: reduce){
	#uslugi.card.services button.service-toggle::after{
		transition:none;
	}
}

/* Team section: disable added global hover effects (shimmer/extra lift). */
#zespol :is(a.btn,a[href],button,[role="button"],summary):not(.org-flow__item)::after{
	content:none !important;
}

@media (hover:hover) and (pointer:fine){
	#zespol :is(a.btn,a[href],button,[role="button"],summary):not(.org-flow__item):is(:hover,:focus-visible){
		transform:none !important;
		box-shadow:none !important;
		filter:none !important;
		text-shadow:none !important;
		background-position:0 50% !important;
	}
}

#zespol :is(a[href],.email-obf,.filter-link,button.filter-link){
	background-image:none !important;
	-webkit-text-fill-color:currentColor !important;
	color:inherit !important;
}

/* Team: prevent inherited/global hover glow on non-tile role blocks. */
#zespol [data-org-role]:not(.org-flow__item),
#zespol .org-role,
#zespol .org-role-list{
	transform:none !important;
	box-shadow:none !important;
	filter:none !important;
}

#zespol [data-org-role]:not(.org-flow__item)::after,
#zespol .org-role::after,
#zespol .org-role-list::after{
	content:none !important;
}

/* Team: keep legend-services column fully plain (no panels, borders, or glow). */
#zespol .org-graph__col.org-graph__col--legend-services,
#zespol .org-graph__col.org-graph__col--legend-services::before,
#zespol .org-graph__col.org-graph__col--legend-services::after,
#zespol .org-graph__col.org-graph__col--legend-services .org-role,
#zespol .org-graph__col.org-graph__col--legend-services .org-role::before,
#zespol .org-graph__col.org-graph__col--legend-services .org-role::after,
#zespol .org-graph__col.org-graph__col--legend-services .org-role-list,
#zespol .org-graph__col.org-graph__col--legend-services .org-role-list::before,
#zespol .org-graph__col.org-graph__col--legend-services .org-role-list::after{
	background:none !important;
	background-image:none !important;
	border:0 !important;
	box-shadow:none !important;
	filter:none !important;
}

/* Team: keep legend-ops column plain (also when has-selection is set). */
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops.has-selection,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops::before,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops::after,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops .org-role,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops .org-role::before,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops .org-role::after,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops .org-role-list,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops .org-role-list::before,
#zespol .org-graph__col.org-graph__col--legend.org-graph__col--legend-ops .org-role-list::after{
	background:none !important;
	background-image:none !important;
	border:0 !important;
	box-shadow:none !important;
	filter:none !important;
}

/* Team: tree columns plain, but keep effects on list items (.org-flow__item). */
#zespol .org-graph__col.org-graph__col--tree,
#zespol .org-graph__col.org-graph__col--tree::before,
#zespol .org-graph__col.org-graph__col--tree::after,
#zespol .org-graph__col.org-graph__col--tree .org-role,
#zespol .org-graph__col.org-graph__col--tree .org-role::before,
#zespol .org-graph__col.org-graph__col--tree .org-role::after,
#zespol .org-graph__col.org-graph__col--tree .org-role-list,
#zespol .org-graph__col.org-graph__col--tree .org-role-list::before,
#zespol .org-graph__col.org-graph__col--tree .org-role-list::after{
	background:none !important;
	background-image:none !important;
	border:0 !important;
	box-shadow:none !important;
	filter:none !important;
}

/* Team: remove background/border effects from org-graph wrappers globally. */
#zespol .org-graph,
#zespol .org-graph::before,
#zespol .org-graph::after,
#zespol .org-graph__grid,
#zespol .org-graph__grid::before,
#zespol .org-graph__grid::after,
#zespol .org-graph__col,
#zespol .org-graph__col::before,
#zespol .org-graph__col::after,
#zespol .org-graph .org-role,
#zespol .org-graph .org-role::before,
#zespol .org-graph .org-role::after,
#zespol .org-graph .org-role-list,
#zespol .org-graph .org-role-list::before,
#zespol .org-graph .org-role-list::after{
	background:none !important;
	background-image:none !important;
	border:0 !important;
	box-shadow:none !important;
	filter:none !important;
}

/* Keep org-chart connector arrows visible despite generic ::after resets. */
#zespol .org-flow__item:not(:last-child)::after{
	content:"" !important;
	position:absolute !important;
	left:50% !important;
	top:calc(100% + var(--org-arrow-pad)) !important;
	height:var(--org-connector-len) !important;
	width:16px !important;
	transform:translateX(-8px) !important;
	background:var(--org-arrow-fill) !important;
	clip-path:polygon(44% 0%,56% 0%,56% calc(100% - var(--org-arrow-head)),100% calc(100% - var(--org-arrow-head)),50% 100%,0% calc(100% - var(--org-arrow-head)),44% calc(100% - var(--org-arrow-head))) !important;
	opacity:1 !important;
	pointer-events:none !important;
	transition:none !important;
	z-index:0;
}

/* Footer: slow gradient color fill on hover; full color stays while hover is active. */
.card.site-footer :is(.footer-nav a,.footer-compliance a,.footer-utility a,.footer-brand a)[href]{
	position:relative;
	overflow:visible !important;
	transform:none !important;
	box-shadow:none !important;
	filter:none !important;
}

.card.site-footer :is(.footer-nav a,.footer-compliance a,.footer-utility a,.footer-brand a)[href]::after{
	content:none !important;
}

@supports ((-webkit-background-clip:text) or (background-clip:text)){
	.card.site-footer :is(.footer-nav a,.footer-compliance a,.footer-utility a,.footer-brand a)[href]{
		background-image:linear-gradient(90deg,currentColor 0 50%,color-mix(in srgb,currentColor 78%,white 22%) 50% 100%);
		background-size:200% 100%;
		background-position:0% 50%;
		-webkit-background-clip:text;
		background-clip:text;
		-webkit-text-fill-color:transparent;
		transition:background-position 2.4s cubic-bezier(.22,.61,.36,1),text-shadow .3s ease;
	}

	@media (hover:hover) and (pointer:fine){
		.card.site-footer :is(.footer-nav a,.footer-compliance a,.footer-utility a,.footer-brand a)[href]:is(:hover,:focus-visible){
			background-position:100% 50%;
			text-shadow:0 0 10px rgba(255,255,255,.22);
		}
	}
}

@supports not ((-webkit-background-clip:text) or (background-clip:text)){
	.card.site-footer :is(.footer-nav a,.footer-compliance a,.footer-utility a,.footer-brand a)[href]{
		transition:text-shadow .3s ease;
	}

	@media (hover:hover) and (pointer:fine){
		.card.site-footer :is(.footer-nav a,.footer-compliance a,.footer-utility a,.footer-brand a)[href]:is(:hover,:focus-visible){
			text-shadow:0 0 8px color-mix(in srgb,currentColor 65%,white 35%);
		}
	}
}

/* Footer CTA emphasis: "E-mail" and "Zarezerwuj rozmowe" links */
.card.site-footer .footer-utility :is(a.email-obf,a[href*="#kontakt-form"]){
	font-weight:700;
}

#zespol .org-flow__pin::before{
	content:"" !important;
	position:absolute !important;
	inset:6px !important;
	border-radius:50% !important;
	background:rgba(255,255,255,0.08) !important;
	border:1px solid rgba(255,255,255,0.18) !important;
	box-shadow:inset 0 1px 2px rgba(255,255,255,0.16),inset 0 -8px 12px rgba(0,0,0,0.25) !important;
	opacity:1 !important;
	pointer-events:none !important;
	animation:none !important;
	z-index:0 !important;
}

#zespol .org-flow__pin::after{
	content:"" !important;
	position:absolute !important;
	inset:0 !important;
	border-radius:50% !important;
	background:radial-gradient(circle at 30% 25%, rgba(255,255,255,0.35), rgba(255,255,255,0) 60%) !important;
	opacity:0.85 !important;
	pointer-events:none !important;
	z-index:0 !important;
}

#zespol .org-flow__icon,
#zespol .org-flow__icon--img{
	position:relative !important;
	z-index:1 !important;
	width:22px !important;
	height:22px !important;
	filter:brightness(0) invert(1) drop-shadow(0 1px 0 rgba(255,255,255,0.35)) drop-shadow(0 -1px 2px rgba(0,0,0,0.55)) drop-shadow(0 2px 3px rgba(0,0,0,0.35)) !important;
}

#zespol .org-flow__item:is(:hover,:focus-visible) .org-flow__pin,
#zespol .org-flow__pin:hover{
	transform:translateY(-2px) !important;
	box-shadow:8px 16px 22px rgba(8,16,32,0.40),inset 0 0 16px rgba(255,255,255,0.12),inset 0 1px 2px rgba(255,255,255,0.22),inset 0 -10px 16px rgba(0,0,0,0.28) !important;
}

/* Team pins: match Services hover lens tweak. */
#zespol .org-flow__item:is(:hover,:focus-visible) .org-flow__pin::before,
#zespol .org-flow__pin:hover::before{
	background:rgba(255,255,255,0.10) !important;
	border-color:rgba(255,255,255,0.22) !important;
}

/* Team list tiles: stronger 3D cards, visually aligned with emblem/pin styling. */
#zespol .org-flow__item{
	--team-tile-glow:rgba(126,173,255,.62);
	border:1px solid transparent !important;
	background:
		linear-gradient(160deg,rgba(255,255,255,1) 0%,rgba(234,244,255,.98) 52%,rgba(214,229,251,.95) 100%) padding-box,
		linear-gradient(138deg,rgba(186,210,255,.88),rgba(103,137,223,.54) 48%,rgba(31,42,68,.62) 100%) border-box !important;
	box-shadow:0 28px 52px rgba(15,23,42,.24),0 12px 26px rgba(15,23,42,.16),0 0 0 1px rgba(109,144,228,.20),inset 0 1px 0 rgba(255,255,255,.94),inset 0 -4px 0 rgba(79,107,255,.34) !important;
	text-shadow:0 1px 0 rgba(255,255,255,.6);
	transform-style:preserve-3d;
	will-change:transform,box-shadow;
	transition:transform .24s cubic-bezier(.22,.61,.36,1),box-shadow .26s ease,background .26s ease !important;
}

#zespol .org-flow__item::before{
	content:"" !important;
	position:absolute !important;
	left:1px !important;
	right:1px !important;
	top:1px !important;
	height:58% !important;
	border-radius:17px 17px 12px 12px !important;
	background:
		radial-gradient(130% 100% at 12% -8%,rgba(255,255,255,.78),rgba(255,255,255,0) 62%),
		linear-gradient(180deg,rgba(255,255,255,.74),rgba(255,255,255,0)) !important;
	opacity:.92 !important;
	pointer-events:none !important;
	z-index:0 !important;
	display:block !important;
	transition:opacity .24s ease,transform .24s ease;
}

#zespol .org-flow__item > *{
	position:relative;
	z-index:1;
}

#zespol .org-flow__item .org-flow__label{
	text-shadow:0 1px 0 rgba(255,255,255,.68);
}

/* Team ultra: keep glow clipped to each li tile. */
#zespol li.org-flow__item{
	position:relative;
	overflow:visible !important;
	isolation:isolate;
}

#zespol li.org-flow__item.is-active{
	--org-active-bg:var(--overlay-bottom);
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom)) !important;
	background-size:170% 170%;
	background-position:0% 50%;
	border-color:color-mix(in srgb,var(--overlay-top) 46%,white 54%) !important;
	box-shadow:0 14px 30px rgba(11,42,92,.34),0 6px 14px rgba(20,140,205,.22),inset 0 1px 0 rgba(255,255,255,.24),inset 0 -2px 0 rgba(7,38,86,.34) !important;
	text-shadow:0 1px 0 rgba(8,16,32,.28);
	animation:ctaBtnGradientDrift 10.67s ease-in-out infinite alternate;
}

#zespol .org-flow__item.is-active .org-flow__pin{
	background:linear-gradient(145deg,rgba(244,248,255,.98),rgba(204,222,252,.96)) !important;
	box-shadow:0 12px 26px rgba(8,16,32,.34),inset 0 1px 0 rgba(255,255,255,.94),inset 0 -8px 14px rgba(79,107,255,.22) !important;
	border:1px solid rgba(136,168,230,.65) !important;
}

#zespol .org-flow__item.is-active .org-flow__pin::before{
	background:rgba(255,255,255,.58) !important;
	border-color:rgba(150,182,240,.7) !important;
	box-shadow:inset 0 1px 2px rgba(255,255,255,.75),inset 0 -8px 12px rgba(79,107,255,.18) !important;
}

#zespol .org-flow__item.is-active .org-flow__icon{
	color:var(--org-active-bg) !important;
	filter:drop-shadow(0 1px 0 rgba(255,255,255,.65)) drop-shadow(0 1px 2px rgba(31,42,68,.22)) !important;
}

#zespol .org-flow__item.is-active .org-flow__icon--img{
	filter:brightness(0) saturate(100%) invert(13%) sepia(20%) saturate(1267%) hue-rotate(183deg) brightness(93%) contrast(92%) drop-shadow(0 1px 0 rgba(255,255,255,.65)) !important;
}

/* Team: remove extra shimmer/glow on end tiles (Technicy, Serwisy mobilne). */
#zespol .org-flow__item--tech::after,
#zespol .org-flow__item--services-field::after{
	content:none !important;
}

/* Services: CTA "Porozmawiajmy" - remove the button frame (border). */
#uslugi.card.services .services-intro-cta .btn.btn-secondary{
	border:0 !important;
	box-shadow:none !important;
}

#uslugi.card.services .services-intro-cta .btn.btn-secondary:is(:hover,:focus-visible,:active){
	box-shadow:none !important;
}

/* Services: keep card decorative layers behind content (avoid masking pin shadows). */
#uslugi.card.services .service-item::before{
	z-index:0!important;
}

/* Section reveal: subtle entrance for whole sections, only once (JS toggles classes). */
html.reveal-boot [data-reveal-section]{
	transition:none !important;
}

[data-reveal-section]{
	opacity:0;
	transform:translateY(16px) scale(.99);
	filter:blur(6px);
	transition:opacity .7s ease-out, transform .9s cubic-bezier(.16,1,.3,1), filter .9s cubic-bezier(.16,1,.3,1);
	will-change:opacity,transform,filter;
}

[data-reveal-section].is-revealed{
	opacity:1;
	transform:none;
	filter:none;
}

@supports not (filter: blur(1px)){
	[data-reveal-section]{
		filter:none;
		transition:opacity .7s ease-out, transform .9s cubic-bezier(.16,1,.3,1);
		will-change:opacity,transform;
	}
}

@media (prefers-reduced-motion: reduce){
	[data-reveal-section]{
		opacity:1;
		transform:none;
		transition:none;
	}
}

#uslugi.card.services .service-item>*{
	position:relative;
	z-index:1;
}

#uslugi.card.services button.service-toggle>*{
	position:relative;
	z-index:1;
}

/* Services: avoid compositor clipping artifacts (can cut shadows as a square edge). */
#uslugi.card.services .service-item{
	backdrop-filter:none !important;
	-webkit-backdrop-filter:none !important;
}

/* Services: prevent GPU/compositor shadow clipping artifacts on pins. */
#uslugi.card.services .service-pin{
	position:relative;
	transform:none !important;
	will-change:auto !important;
	filter:none !important;
	border:0 !important;
	/* Bias the ambient shadow to the right to avoid a hard cut near the viewport edge. */
	box-shadow:6px 12px 18px rgba(8,16,32,0.34),inset 0 0 14px rgba(255,255,255,0.10),inset 0 1px 2px rgba(255,255,255,0.18),inset 0 -10px 16px rgba(0,0,0,0.28) !important;
}

#uslugi.card.services button.service-toggle:is(:hover,:focus-visible) .service-pin{
	transform:translateY(-2px) !important;
	will-change:auto !important;
	filter:none !important;
	box-shadow:8px 16px 22px rgba(8,16,32,0.40),inset 0 0 16px rgba(255,255,255,0.12),inset 0 1px 2px rgba(255,255,255,0.22),inset 0 -10px 16px rgba(0,0,0,0.28) !important;
}

#uslugi.card.services .service-pin::before{
	content:"";
	position:absolute;
	inset:6px;
	border-radius:50%;
	background:rgba(255,255,255,0.08);
	border:1px solid rgba(255,255,255,0.18);
	box-shadow:inset 0 1px 2px rgba(255,255,255,0.16),inset 0 -8px 12px rgba(0,0,0,0.25);
	opacity:1;
	pointer-events:none;
	animation:none !important;
	z-index:0;
}

#uslugi.card.services .service-pin::after{
	content:"";
	position:absolute;
	inset:0;
	border-radius:50%;
	background:radial-gradient(circle at 30% 25%, rgba(255,255,255,0.35), rgba(255,255,255,0) 60%);
	opacity:0.85;
	pointer-events:none;
	z-index:0;
}

#uslugi.card.services .service-pin>.service-icon{
	position:relative !important;
	z-index:1 !important;
	width:22px !important;
	height:22px !important;
	filter:brightness(0) invert(1) drop-shadow(0 1px 0 rgba(255,255,255,0.35)) drop-shadow(0 -1px 2px rgba(0,0,0,0.55)) drop-shadow(0 2px 3px rgba(0,0,0,0.35)) !important;
}

#uslugi.card.services button.service-toggle:is(:hover,:focus-visible) .service-pin::before{
	background:rgba(255,255,255,0.10);
	border-color:rgba(255,255,255,0.22);
}

/* Services: allow pins (and their shadows) to overflow; avoid "square" clipping. */
#uslugi.card.services,
#uslugi.card.services .services-content,
#uslugi.card.services .services-list,
#uslugi.card.services .service-item,
#uslugi.card.services .service-toggle{
	overflow:visible !important;
}

/* Services: timeline tokens kept for spacing consistency. */
#uslugi.card.services{
	--svc-pin-size:50px;
	--svc-shadow-safe:clamp(8px,1.2vw,14px);
	--svc-gutter:clamp(10px,1.4vw,14px);
	--svc-pad-x:clamp(16px,2vw,22px);
	--svc-pad-y:clamp(12px,2vw,18px);
	--svc-pad-left:calc(var(--svc-pad-x) + var(--svc-shadow-safe));
	--svc-axis-x:calc(var(--svc-gutter) + var(--svc-pad-left) + (var(--svc-pin-size) * 0.5));
}

#uslugi.card.services .services-list{
	position:relative;
	padding-left:var(--svc-gutter) !important;
	gap:clamp(14px,1.8vw,18px) !important;
}

/* Services: dashed axis intentionally disabled. */
#uslugi.card.services .services-list::before{
	display:none !important;
}

/* Remove the old per-item connector stub; the axis line replaces it. */
#uslugi.card.services .service-item::after{
	display:none !important;
}

#uslugi.card.services .service-toggle{
	padding:var(--svc-pad-y) var(--svc-pad-x) var(--svc-pad-y) var(--svc-pad-left) !important;
}

/* Contact: ensure concierge and coverage cards have equal height on medium+ screens
   and keep FAQ as a full-width row below them. */
@media (min-width:768px){
	#kontakt .contact-grid{
		display:grid;
		grid-template-columns:minmax(280px,1fr) minmax(320px,1fr);
		gap:clamp(16px,2vw,28px);
		align-items:stretch;
		align-content:start;
	}
	/* make the two left/top cards stretch to same height */
	#kontakt .contact-grid .contact-card{display:flex;flex-direction:column}
	/* force FAQ to span full row */
	#kontakt .contact-grid .contact-faq-card{grid-column:1/-1}
}

/* Services: remove the decorative glow that gets visibly "cut" at the left edge. */
#uslugi.card.services .service-toggle::before{
	display:none !important;
}

/* Services: add requested top padding inside each expandable panel. */
#uslugi.card.services div.service-panel{
	padding:0 clamp(16px,2vw,28px) 0 !important;
}

#uslugi.card.services div.service-panel.is-open{
	padding:18px clamp(16px,2vw,28px) clamp(18px,2vw,28px) !important;
}

/* Services: minimalist premium visual direction for cards and panel content. */
#uslugi.card.services .service-item{
	background:linear-gradient(180deg,rgba(248,252,255,.96),rgba(240,247,255,.92)) !important;
	border:1px solid rgba(168,188,222,.48) !important;
	box-shadow:0 10px 24px rgba(9,20,42,.14),inset 0 1px 0 rgba(255,255,255,.68) !important;
	backdrop-filter:blur(10px);
}

#uslugi.card.services .service-item::before{
	display:none !important;
}

#uslugi.card.services .service-toggle{
	background:transparent !important;
	border-radius:14px !important;
	gap:14px;
}

#uslugi.card.services .service-title{
	color:rgba(10,28,56,.96) !important;
	font-weight:600;
	letter-spacing:.01em;
}

#uslugi.card.services .service-tagline{
	color:rgba(43,71,114,.72) !important;
	font-size:.88rem;
}

#uslugi.card.services .service-chevron{
	color:rgba(43,71,114,.62) !important;
}

#uslugi.card.services .service-toggle[aria-expanded=true] .service-chevron{
	color:rgba(10,28,56,.92) !important;
}

#uslugi.card.services .service-panel.is-open{
	display:grid;
	grid-template-columns:minmax(0,1.25fr) minmax(180px,.75fr);
	gap:clamp(12px,1.8vw,20px);
	align-items:start;
}

#uslugi.card.services .service-panel > .service-copy,
#uslugi.card.services .service-panel > .service-metrics{
	opacity:0;
	transform:translateY(6px);
	transition:opacity 220ms ease,transform 220ms ease;
}

#uslugi.card.services .service-panel.is-open > .service-copy,
#uslugi.card.services .service-panel.is-open > .service-metrics{
	opacity:1;
	transform:translateY(0);
}

#uslugi.card.services .service-copy p{
	color:rgba(18,40,76,.86) !important;
	font-size:.93rem;
	line-height:1.62;
}

#uslugi.card.services .service-points{
	color:rgba(22,46,86,.8) !important;
	gap:6px;
}

#uslugi.card.services .service-points li::marker{
	content:"▸  ";
	color:rgba(140,180,255,.75) !important;
	font-size:1.02em;
	font-weight:800;
}

#uslugi.card.services .service-metrics{
	gap:8px;
}

#uslugi.card.services .service-metric{
	padding:5px 0 5px 12px;
	border-radius:0;
	background:transparent !important;
	border:0 !important;
	border-left:2px solid rgba(55,92,146,.42) !important;
	box-shadow:none !important;
	gap:1px;
	font-family:var(--font-main),sans-serif;
}

#uslugi.card.services .service-metric:not(:last-child){
	border-bottom:1px solid rgba(98,129,176,.2);
	padding-bottom:7px;
}

#uslugi.card.services .service-metric-value{
	color:rgba(14,34,66,.82);
	font-size:.9rem;
	font-weight:600;
	letter-spacing:.008em;
	line-height:1.35;
	font-family:var(--font-main),sans-serif;
}

#uslugi.card.services .service-metric-label{
	color:rgba(34,60,102,.58) !important;
	font-size:.74rem;
	font-weight:500;
	letter-spacing:.03em;
	text-transform:none;
	line-height:1.35;
	font-family:var(--font-main),sans-serif;
}

@media (max-width:860px){
	#uslugi.card.services .service-panel.is-open{
		grid-template-columns:1fr;
	}
}

/* Services: keep expanded panel content above any decorative axis layers. */
#uslugi.card.services .service-panel > .service-copy,
#uslugi.card.services .service-panel > .service-metrics{
	position:relative;
	z-index:3;
}

/* Team mobile: services-like accordion cards for role descriptions. */
.team-mobile-accordion{
	display:none;
}

@media (max-width: 960px){
	#zespol .org-graph{
		display:block;
	}

	#zespol .org-graph__grid{
		display:none;
	}

	#zespol .org-graph__caption{
		margin-bottom:12px;
	}

	#zespol .team-mobile-accordion{
		display:grid;
		gap:12px;
		margin-top:8px;
	}

	#zespol .team-mobile-accordion__item{
		border-radius:18px;
		border:1px solid rgba(164, 183, 209, 0.36);
		background:linear-gradient(170deg, rgba(255,255,255,0.98), rgba(241,247,255,0.95));
		overflow:hidden;
		box-shadow:0 12px 24px rgba(15, 23, 42, 0.1);
	}

	#zespol .team-mobile-accordion__toggle{
		width:100%;
		display:grid;
		grid-template-columns:auto 1fr auto;
		align-items:center;
		gap:12px;
		padding:14px 16px;
		border:0;
		background:transparent;
		color:#15396b;
		font:inherit;
		text-align:left;
		cursor:pointer;
	}

	#zespol .team-mobile-accordion__pin{
		position:relative;
		display:inline-flex;
		align-items:center;
		justify-content:center;
		width:50px;
		height:50px;
		border-radius:999px;
		background:linear-gradient(165deg,#6f95cf 0%,#2b4d80 56%,#18355d 100%);
		box-shadow:6px 12px 18px rgba(8,16,32,0.34),inset 0 0 14px rgba(255,255,255,0.10),inset 0 1px 2px rgba(255,255,255,0.18),inset 0 -10px 16px rgba(0,0,0,0.28);
		color:#f8fbff;
		overflow:hidden;
	}

	#zespol .team-mobile-accordion__pin::before{
		content:"";
		position:absolute;
		inset:6px;
		border-radius:999px;
		background:rgba(255,255,255,0.08);
		border:1px solid rgba(255,255,255,0.18);
		box-shadow:inset 0 1px 2px rgba(255,255,255,0.16),inset 0 -8px 12px rgba(0,0,0,0.25);
		pointer-events:none;
		z-index:0;
	}

	#zespol .team-mobile-accordion__pin::after{
		content:"";
		position:absolute;
		inset:0;
		border-radius:999px;
		background:radial-gradient(circle at 30% 25%, rgba(255,255,255,0.35), rgba(255,255,255,0) 60%);
		opacity:.85;
		pointer-events:none;
		z-index:0;
	}

	#zespol .team-mobile-accordion__pin img,
	#zespol .team-mobile-accordion__pin svg{
		position:relative;
		z-index:1;
		width:22px;
		height:22px;
		object-fit:contain;
		display:block;
		filter:brightness(0) invert(1) drop-shadow(0 1px 0 rgba(255,255,255,0.35)) drop-shadow(0 -1px 2px rgba(0,0,0,0.55)) drop-shadow(0 2px 3px rgba(0,0,0,0.35));
	}

	#zespol .team-mobile-accordion__item.is-open .team-mobile-accordion__pin,
	#zespol .team-mobile-accordion__toggle:is(:hover,:focus-visible) .team-mobile-accordion__pin{
		transform:translateY(-2px);
		box-shadow:8px 16px 22px rgba(8,16,32,0.40),inset 0 0 16px rgba(255,255,255,0.12),inset 0 1px 2px rgba(255,255,255,0.22),inset 0 -10px 16px rgba(0,0,0,0.28);
	}

	#zespol .team-mobile-accordion__item.is-open .team-mobile-accordion__pin::before,
	#zespol .team-mobile-accordion__toggle:is(:hover,:focus-visible) .team-mobile-accordion__pin::before{
		background:rgba(255,255,255,0.10);
		border-color:rgba(255,255,255,0.22);
	}

	#zespol .team-mobile-accordion__title{
		font-weight:700;
		line-height:1.25;
	}

	#zespol .team-mobile-accordion__chevron{
		font-size:13px;
		line-height:1;
		transition:transform .2s ease;
	}

	#zespol .team-mobile-accordion__item.is-open .team-mobile-accordion__chevron{
		transform:rotate(180deg);
	}

	#zespol .team-mobile-accordion__panel{
		padding:0 16px 14px;
		border-top:1px solid rgba(164, 183, 209, 0.28);
	}

	#zespol .team-mobile-accordion__panel p{
		margin:12px 0 0;
		color:rgba(24, 46, 77, 0.94);
		line-height:1.45;
	}
}

/* Ensure the pin renders above the axis line. */
#uslugi.card.services button.service-toggle>.service-pin{
	z-index:4;
}

/* FAQ: remove text background-formatting effects and decorative text overlays. */
#faq :is(.faq-lead,.faq-item h3,.faq-item p,.contact-faq__title,.contact-faq__summary,.contact-faq__body),
#kontakt .contact-faq-card :is(.faq-lead,.faq-item h3,.faq-item p,.contact-faq__title,.contact-faq__summary,.contact-faq__body){
	background:none !important;
	-webkit-background-clip:border-box !important;
	background-clip:border-box !important;
	-webkit-text-fill-color:currentColor !important;
	text-shadow:none !important;
	filter:none !important;
}

#faq .faq-item::before,
#kontakt .contact-faq-card .faq-item::before{
	content:none !important;
}

/* FAQ summary: remove background-color visual effect and hover lift. */
#kontakt summary.contact-faq__summary,
#kontakt summary.contact-faq__summary:is(:hover,:focus-visible,:active){
	background:transparent !important;
	box-shadow:none !important;
	filter:none !important;
	transform:none !important;
}

/* FAQ: use the same right-side chevron behavior as in Services. */
#kontakt .contact-faq__details{
	display:block;
	width:100% !important;
}

#kontakt .contact-faq__summary{
	display:flex !important;
	align-items:center;
	gap:10px;
	box-sizing:border-box;
	width:100% !important;
	margin:calc(-1 * clamp(18px,2.4vw,28px));
	padding:clamp(18px,2.4vw,28px) !important;
}

#kontakt .contact-faq__title{
	display:block;
	flex:1 1 auto;
	min-width:0;
}

#kontakt .contact-faq__summary::after{
	content:"\25BE";
	position:static;
	margin-left:auto;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	font-size:1.5rem;
	line-height:1;
	color:var(--text-secondary);
	opacity:1;
	transform:translateY(0);
	transition:transform 240ms cubic-bezier(.22,.9,.32,1),color 160ms ease;
}

#kontakt .contact-faq__details[open] > .contact-faq__summary::after{
	transform:rotate(180deg);
	color:var(--brand-navy);
}

/* Hero CTA: premium button finish (section-scoped). */
#start .hero-cta .btn{
	position:relative;
	overflow:hidden;
	isolation:isolate;
	border-radius:12px;
	padding:12px 24px;
	font-size:14px;
	font-weight:700;
	letter-spacing:.012em;
	backdrop-filter:blur(12px) saturate(120%);
	-webkit-backdrop-filter:blur(12px) saturate(120%);
	border:1px solid color-mix(in srgb,var(--overlay-bottom) 42%,white 58%);
	box-shadow:0 16px 34px color-mix(in srgb,var(--overlay-bottom) 20%,transparent),0 5px 14px color-mix(in srgb,var(--overlay-bottom) 18%,transparent),inset 0 1px 0 color-mix(in srgb,white 72%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--overlay-bottom) 28%,transparent);
	transition:transform .2s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease,color .25s ease,filter .25s ease;
}

#start .hero-cta .btn::before{
	content:"";
	position:absolute;
	left:4px;
	right:4px;
	top:2px;
	height:44%;
	border-radius:10px 10px 8px 8px;
	background:linear-gradient(180deg,color-mix(in srgb,white 64%,transparent),color-mix(in srgb,white 0%,transparent));
	opacity:.5;
	pointer-events:none;
	z-index:0;
}

#start .hero-cta .btn::after{
	content:"";
	position:absolute;
	inset:0;
	border-radius:inherit;
	background:linear-gradient(118deg,transparent 26%,color-mix(in srgb,white 70%,transparent) 50%,transparent 74%);
	transform:translateX(-150%);
	opacity:0;
	pointer-events:none;
	transition:transform .9s cubic-bezier(.22,.9,.32,1),opacity .3s ease;
	z-index:1;
}

#start .hero-cta .btn > *{
	position:relative;
	z-index:2;
}

#start .hero-cta .btn.btn-primary{
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom));
	color:var(--hero-h1-color);
	border-color:color-mix(in srgb,var(--overlay-top) 42%,white 58%);
	box-shadow:0 14px 30px color-mix(in srgb,var(--overlay-bottom) 34%,transparent),0 6px 14px color-mix(in srgb,var(--overlay-top) 24%,transparent),inset 0 1px 0 color-mix(in srgb,white 56%,transparent),inset 0 -2px 0 color-mix(in srgb,var(--overlay-bottom) 42%,transparent);
}

#start.hero .hero-glass-block .hero-cta .btn.btn-primary::before{
	left:5px;
	right:5px;
	top:2px;
	height:42%;
	border-radius:9px 9px 7px 7px;
	opacity:.46;
}

#start .hero-cta .btn.btn-outline{
	background:linear-gradient(150deg,color-mix(in srgb,white 92%,transparent),color-mix(in srgb,var(--brand-sky) 22%,white 78%));
	color:var(--overlay-bottom);
	border-color:color-mix(in srgb,var(--overlay-bottom) 60%,white 40%);
	box-shadow:0 14px 30px color-mix(in srgb,var(--overlay-bottom) 20%,transparent),0 5px 14px color-mix(in srgb,var(--overlay-bottom) 14%,transparent),inset 0 1px 0 color-mix(in srgb,white 76%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--overlay-bottom) 16%,transparent);
}

@media (hover:hover) and (pointer:fine){
	#start .hero-cta .btn:is(:hover,:focus-visible){
		transform:translateY(-3px);
		filter:saturate(1.05);
		box-shadow:0 24px 50px color-mix(in srgb,var(--overlay-bottom) 34%,transparent),0 10px 24px color-mix(in srgb,var(--overlay-bottom) 18%,transparent),inset 0 1px 0 color-mix(in srgb,white 72%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--overlay-bottom) 20%,transparent);
	}

	#start .hero-cta .btn:is(:hover,:focus-visible)::after{
		transform:translateX(140%);
		opacity:1;
	}

	#start .hero-cta .btn.btn-primary:is(:hover,:focus-visible){
		background:linear-gradient(90deg,color-mix(in srgb,var(--overlay-top) 88%,white 12%),color-mix(in srgb,var(--overlay-bottom) 94%,black 6%));
		border-color:color-mix(in srgb,var(--overlay-top) 56%,white 44%);
	}

	#start .hero-cta .btn.btn-outline:is(:hover,:focus-visible){
		background:linear-gradient(150deg,color-mix(in srgb,white 94%,transparent),color-mix(in srgb,var(--brand-sky) 30%,white 70%));
		border-color:color-mix(in srgb,var(--brand-indigo) 50%,white 50%);
	}
}

#start .hero-cta .btn:active{
	transform:translateY(-1px);
	box-shadow:0 10px 22px color-mix(in srgb,var(--overlay-bottom) 26%,transparent),inset 0 2px 4px color-mix(in srgb,var(--overlay-bottom) 24%,transparent),inset 0 1px 0 color-mix(in srgb,white 60%,transparent);
}

@media (prefers-reduced-motion: reduce){
	#start .hero-cta .btn,
	#start .hero-cta .btn::before,
	#start .hero-cta .btn::after{
		transition:none;
	}
}

/* Portfolio: filter chips styled like Experience filters on index page. */
.portfolio-page .experience-filter .filter-chip{
	position:relative;
	overflow:hidden;
	display:inline-flex;
	align-items:center;
	gap:8px;
	--experience-chip-accent:color-mix(in srgb,var(--brand-navy) 54%,var(--brand-indigo) 46%);
	border:1px solid rgba(99,117,181,.46);
	background:linear-gradient(165deg,rgba(255,255,255,.98) 0%,rgba(241,246,255,.96) 62%,rgba(225,235,252,.94) 100%);
	box-shadow:0 8px 18px rgba(31,42,68,.10),inset 0 1px 0 rgba(255,255,255,.82),inset 0 -2px 0 color-mix(in srgb,var(--experience-chip-accent) 32%,white 68%);
	font-weight:650;
	letter-spacing:.01em;
	text-shadow:0 1px 0 rgba(255,255,255,.72);
	transition:transform .18s ease,box-shadow .24s ease,border-color .24s ease,background-color .24s ease,color .24s ease,filter .24s ease;
}

.portfolio-page .experience-filter .filter-chip::before{
	content:"";
	position:absolute;
	left:12%;
	right:12%;
	top:1px;
	height:46%;
	border-radius:999px;
	background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,0));
	opacity:.9;
	pointer-events:none;
	z-index:0;
}

.portfolio-page .experience-filter .filter-chip > *{
	position:relative;
	z-index:1;
}

.portfolio-page .experience-filter .filter-chip:is(.is-active,[aria-selected="true"]){
	border-color:color-mix(in srgb,var(--experience-chip-accent) 42%,white 58%);
	background:linear-gradient(165deg,rgba(255,255,255,.99) 0%,rgba(234,242,255,.97) 65%,rgba(219,232,255,.95) 100%);
	box-shadow:0 12px 26px rgba(31,42,68,.16),0 0 0 1px color-mix(in srgb,var(--experience-chip-accent) 26%,white 74%),inset 0 1px 0 rgba(255,255,255,.86),inset 0 -3px 0 var(--experience-chip-accent);
	text-shadow:0 1px 0 rgba(255,255,255,.8);
}

.portfolio-page .experience-filter .filter-chip:focus-visible{
	outline:0;
	box-shadow:0 0 0 3px rgba(79,107,255,.24),0 12px 26px rgba(31,42,68,.14),inset 0 -3px 0 var(--brand-indigo);
}

@media (hover:hover) and (pointer:fine){
	.portfolio-page .experience-filter .filter-chip:hover,
	.portfolio-page .experience-filter .filter-chip:focus-visible{
		transform:translateY(-3px);
		border-color:color-mix(in srgb,var(--experience-chip-accent) 46%,white 54%);
		background:linear-gradient(160deg,rgba(255,255,255,.99),rgba(231,240,255,.97));
		color:var(--brand-navy);
		box-shadow:0 18px 36px rgba(31,42,68,.20),0 0 0 1px color-mix(in srgb,var(--experience-chip-accent) 28%,white 72%),inset 0 1px 0 rgba(255,255,255,.88),inset 0 -4px 0 var(--experience-chip-accent);
		text-shadow:0 1px 0 rgba(255,255,255,.84);
	}

	.portfolio-page .experience-filter .filter-chip:is(.is-active,[aria-selected="true"]):hover,
	.portfolio-page .experience-filter .filter-chip:is(.is-active,[aria-selected="true"]):focus-visible{
		transform:translateY(-3px);
		box-shadow:0 20px 38px rgba(31,42,68,.22),0 0 0 1px color-mix(in srgb,var(--experience-chip-accent) 34%,white 66%),inset 0 1px 0 rgba(255,255,255,.90),inset 0 -4px 0 var(--experience-chip-accent);
	}

	.portfolio-page .experience-filter .filter-chip:active{
		transform:translateY(-1px);
		box-shadow:0 10px 20px rgba(31,42,68,.18),0 0 0 1px color-mix(in srgb,var(--experience-chip-accent) 24%,white 76%),inset 0 1px 0 rgba(255,255,255,.7),inset 0 -2px 0 color-mix(in srgb,var(--experience-chip-accent) 60%,white 40%);
	}
}

/* Portfolio cards: 3-up layout, title/location over image, and cooperation/characteristics strip. */
.portfolio-page .portfolio-grid{
	grid-template-columns:repeat(3,minmax(0,1fr)) !important;
	gap:clamp(14px,1.8vw,20px) !important;
}

.portfolio-page .portfolio-card{
	display:flex;
	flex-direction:column;
	border-radius:14px;
	overflow:hidden;
	position:relative;
}

.portfolio-page .portfolio-card[hidden],
.portfolio-page .portfolio-card.is-filtered-out{
	display:none !important;
}

.portfolio-page .portfolio-card__media{
	position:relative;
	aspect-ratio:16 / 9 !important;
	border-radius:14px 14px 0 0;
	overflow:hidden;
	margin-bottom:0;
	display:block;
}
.portfolio-page .portfolio-card__media img {
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center bottom;
}

.portfolio-page .portfolio-card__head {
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	margin:0;
	padding:20px 18px 12px 18px;
	border-radius:0 0 14px 14px;
	box-sizing:border-box;
	width:100%;
	max-width:100%;
	background:linear-gradient(180deg,rgba(15,23,42,0) 0%,rgba(15,23,42,.38) 28%,rgba(15,23,42,.78) 100%);
	align-items:flex-end;
	z-index:2;
	min-height:56px;
	max-height:calc(100% - 12px);
	overflow:auto;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	pointer-events:none;
}

.portfolio-page .portfolio-card__media picture,
.portfolio-page .portfolio-card__media img{
	width:100%;
	height:100%;
}

.portfolio-page .portfolio-card__media img{
	object-fit:cover;
	object-position:center bottom;
	transform:scale(1.08);
	transition:none;
}

.portfolio-page .portfolio-card:is(:hover,:focus-visible) .portfolio-card__media img{
	transform:scale(1.08);
	filter:none;
}

.portfolio-page .portfolio-card__content{
	position:relative;
	padding:0 18px 18px;
	display:flex;
	flex-direction:column;
	gap:0;
	overflow:hidden;
	min-height:0;
	height:auto;
}

.portfolio-page .portfolio-card__head{
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	margin:0;
	padding:20px 18px 12px 18px;
	border-radius:0 0 14px 14px;
	box-sizing:border-box;
	width:100%;
	max-width:100%;
	background:linear-gradient(180deg,rgba(15,23,42,0) 0%,rgba(15,23,42,.38) 28%,rgba(15,23,42,.78) 100%);
	align-items:flex-end;
	z-index:2;
	min-height:56px;
	max-height:calc(100% - 12px);
	overflow:auto;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	pointer-events:none;
}

.portfolio-page .portfolio-card__location,
.portfolio-page .portfolio-card__title,
.portfolio-page .portfolio-card__year{
	color:var(--hero-h1-color);
	text-shadow:0 2px 8px rgba(8,16,32,.45);
}

.portfolio-page .portfolio-card__title{
	font-size:1.08rem;
	line-height:1.25;
}


.portfolio-page .portfolio-card__summary{
	margin:0 0 12px;
	color:var(--text-secondary);
	line-height:1.55;
	order:2;
	margin-top:auto;
	margin-bottom:0;
}

.portfolio-page .portfolio-card__meta{
	margin:0;
	padding-top:10px;
	border-top:1px solid var(--border-soft);
	order:1;
}

@media (max-width:1100px){
	.portfolio-page .portfolio-grid{
		grid-template-columns:repeat(2,minmax(0,1fr)) !important;
	}
}

@media (max-width:720px){
	.portfolio-page .portfolio-grid{
		grid-template-columns:1fr !important;
	}

	.portfolio-page .portfolio-card__head{
		position:absolute;
		left:0;
		right:0;
		bottom:0;
		margin:0;
		padding:20px 18px 12px 18px;
		border-radius:0 0 14px 14px;
		box-sizing:border-box;
		width:100%;
		max-width:100%;
		background:linear-gradient(180deg,rgba(15,23,42,0) 0%,rgba(15,23,42,.38) 28%,rgba(15,23,42,.78) 100%);
		align-items:flex-end;
		z-index:2;
}

}


/* Hero heading: soft baseline shadow + subtle metallic letter finish. */
#start.hero .hero-content h1{
	filter:drop-shadow(0 10px 20px rgba(7,14,28,.24));
}

#start.hero .hero-content h1 span{
	position:relative;
	color:transparent;
	background-image:linear-gradient(170deg,#fdfefe 8%,#dce4ee 34%,#ffffff 52%,#c7d1dd 72%,#f9fcff 94%);
	background-size:100% 100%;
	-webkit-background-clip:text;
	background-clip:text;
	text-shadow:0 1px 0 rgba(255,255,255,.32),0 2px 7px rgba(6,14,30,.18);
}

#start.hero .hero-content h1 span,
#start.hero .hero-content h1 span:last-child{
	font-size:inherit;
	font-weight:inherit;
	line-height:inherit;
	letter-spacing:inherit;
	margin:0;
	padding:0;
	transform:none;
	filter:none;
	text-transform:none;
}

#start.hero .hero-content h1 > span:first-child,
#start.hero .hero-content h1 > span:last-child{
	display:block;
	align-self:auto;
	font-size:inherit;
	font-weight:inherit;
	line-height:inherit;
	letter-spacing:inherit;
	color:var(--hero-h1-color);
	background:none;
	-webkit-background-clip:border-box;
	background-clip:border-box;
	text-shadow:0 6px 18px rgba(30,70,120,.45);
	font-variation-settings:normal;
}

@supports not ((-webkit-background-clip:text) or (background-clip:text)){
	#start.hero .hero-content h1 span{
		color:var(--hero-h1-color);
	}
}

/* Experience: slider-only layout (without map) */
#doswiadczenie[data-experience-slider]{
	position:relative;
	overflow:hidden;
	background:
		radial-gradient(circle at top left,rgba(90,186,214,.12),transparent 34%),
		radial-gradient(circle at 82% 22%,rgba(31,80,153,.14),transparent 26%),
		linear-gradient(180deg,rgba(255,255,255,.94),rgba(244,248,253,.98));
	border:1px solid rgba(167,189,222,.26);
	box-shadow:0 30px 80px rgba(17,35,68,.08);
	padding-inline:clamp(18px,3vw,34px);
	padding-block:clamp(26px,3.2vw,36px) !important;
	border-radius:28px;
}

#doswiadczenie[data-experience-slider]::after{
	content:"";
	position:absolute;
	inset:auto -10% -30% auto;
	width:clamp(220px,34vw,440px);
	height:clamp(220px,34vw,440px);
	border-radius:50%;
	background:radial-gradient(circle,rgba(98,128,238,.16),rgba(98,128,238,0) 68%);
	pointer-events:none;
	filter:blur(10px);
	opacity:.8;
}

#doswiadczenie .experience-showcase__head{
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	align-items:end;
	gap:clamp(16px,2.4vw,28px);
	position:relative;
	z-index:1;
	max-width:min(1180px,100%);
	margin-inline:auto;
}

#doswiadczenie .experience-showcase__intro{
	max-width:min(56ch,100%);
	display:grid;
	gap:12px;
}

#doswiadczenie .experience-showcase__head h2{
	margin:0;
	font-size:clamp(26px,4vw,34px);
	line-height:1.08;
	letter-spacing:0;
	color:var(--brand-navy);
	max-width:none;
}

#doswiadczenie .experience-showcase__lead{
	margin:0;
	font-size:clamp(1rem,1.4vw,1.08rem);
	line-height:1.65;
	color:var(--text-secondary);
	max-width:52ch;
}

#doswiadczenie .experience-showcase__navs{
	display:flex;
	align-items:center;
	gap:12px;
	align-self:end;
}

#doswiadczenie .experience-showcase__nav{
	--cta-shine-width:58%;
	--cta-shine-from:24%;
	--cta-shine-to:76%;
	--cta-shine-start:-28%;
	--cta-shine-end:184%;
	width:54px;
	height:54px;
	border-radius:999px;
	border:2px solid color-mix(in srgb,var(--overlay-top) 46%,white 54%);
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom));
	background-size:170% 170%;
	background-position:0% 50%;
	color:var(--hero-h1-color);
	font-size:1.35rem;
	line-height:1;
	position:relative;
	overflow:hidden;
	isolation:isolate;
	box-shadow:0 14px 30px rgba(11,42,92,.34),0 6px 14px rgba(20,140,205,.22),inset 0 1px 0 rgba(255,255,255,.56),inset 0 -2px 0 rgba(7,38,86,.42),0 0 0 1px rgba(140,205,255,.34);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	transition:transform .2s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease,color .25s ease,filter .25s ease;
	animation:moreBtnOutlinePulse 1.6s ease-in-out infinite,ctaBtnGradientDrift 10.67s ease-in-out infinite alternate;
	cursor:pointer;
}

#doswiadczenie .experience-showcase__nav::before{
	content:"";
	position:absolute;
	left:5px;
	right:5px;
	top:2px;
	height:42%;
	border-radius:999px;
	background:linear-gradient(180deg,color-mix(in srgb,white 64%,transparent),color-mix(in srgb,white 0%,transparent));
	opacity:.46;
	pointer-events:none;
	z-index:0;
}

#doswiadczenie .experience-showcase__nav::after{
	content:"";
	position:absolute;
	left:0;
	width:var(--cta-shine-width,58%);
	top:0;
	bottom:0;
	border-radius:inherit;
	clip-path:inset(0 round 999px);
	background:linear-gradient(118deg,transparent var(--cta-shine-from,24%),color-mix(in srgb,white 70%,transparent) 50%,transparent var(--cta-shine-to,76%));
	transform:translateX(var(--cta-shine-start,-28%));
	opacity:0;
	pointer-events:none;
	transition:transform .9s cubic-bezier(.22,.9,.32,1),opacity .3s ease;
	z-index:1;
}

#doswiadczenie .experience-showcase__nav:is(:hover,:focus-visible){
	transform:translateY(-3px);
	filter:saturate(1.05);
	background:linear-gradient(90deg,color-mix(in srgb,var(--overlay-top) 88%,white 12%),color-mix(in srgb,var(--overlay-bottom) 94%,black 6%));
	border-color:color-mix(in srgb,var(--overlay-top) 56%,white 44%);
	box-shadow:0 24px 50px color-mix(in srgb,var(--overlay-bottom) 34%,transparent),0 10px 24px color-mix(in srgb,var(--overlay-bottom) 18%,transparent),inset 0 1px 0 color-mix(in srgb,white 72%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--overlay-bottom) 20%,transparent);
	outline:0;
}

#doswiadczenie .experience-showcase__nav:is(:hover,:focus-visible)::after{
	animation:ctaHoverShineSweep 760ms cubic-bezier(.22,.9,.32,1) 1 both;
	will-change:transform,opacity;
}

#doswiadczenie .experience-showcase__nav:active{
	transform:translateY(-1px);
	box-shadow:0 10px 22px color-mix(in srgb,var(--overlay-bottom) 26%,transparent),inset 0 2px 4px color-mix(in srgb,var(--overlay-bottom) 24%,transparent),inset 0 1px 0 color-mix(in srgb,white 60%,transparent);
}

#doswiadczenie [data-experience-viewport]{
	overflow:hidden;
	margin-top:clamp(20px,3vw,30px);
	border-radius:28px;
	padding:0;
	background:transparent;
	border:0;
	box-shadow:none;
	position:relative;
	z-index:1;
	max-width:min(1180px,100%);
	margin-inline:auto;
	isolation:isolate;
}

#doswiadczenie [data-experience-track]{
	display:flex;
	flex-wrap:nowrap;
	gap:0;
	width:100%;
	align-items:stretch;
	transition:transform .45s ease;
	will-change:transform;
}

#doswiadczenie .experience-showcase__card{
	flex:0 0 100%;
	width:100%;
	max-width:100%;
	margin:0;
	min-width:0;
	box-sizing:border-box;
	padding-inline:0;
	border-radius:24px;
	border:1px solid rgba(135,159,203,.16);
	background:var(--surface-primary);
	box-shadow:0 28px 56px rgba(9,18,38,.16);
	transform:translateZ(0);
	overflow:hidden;
	opacity:.56;
	scale:.985;
	transition:opacity .3s ease,scale .3s ease,box-shadow .3s ease;
}

#doswiadczenie .experience-showcase__card.is-active{
	opacity:1;
	scale:1;
	box-shadow:0 36px 72px rgba(9,18,38,.20);
}

#doswiadczenie .experience-showcase__card .portfolio-card__media{
	min-height:clamp(320px,48vw,560px);
	height:100%;
	margin:0;
	border-radius:24px 0 0 24px;
	position:relative;
	overflow:hidden;
	border-right:0;
}

#doswiadczenie .experience-showcase__card .portfolio-card__media::after{
	content:none;
}

#doswiadczenie .experience-showcase__card .portfolio-card__media img{
	display:block;
	width:100%;
	height:100%;
	min-height:inherit;
	object-fit:cover;
	object-position:center center;
	filter:saturate(1.02) contrast(1.02);
}

#doswiadczenie .experience-showcase__card .portfolio-card__content{
	display:grid;
	align-content:center;
	gap:clamp(18px,2.2vw,24px);
	padding:clamp(26px,3vw,38px);
	background:var(--surface-primary);
	position:relative;
	min-width:0;
	width:100%;
	max-width:100%;
	box-sizing:border-box;
	overflow:hidden;
}

#doswiadczenie .experience-showcase__card .portfolio-card__content::before{
	content:none;
}

#doswiadczenie .experience-showcase__card .portfolio-card__head{
	padding:0;
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	gap:18px;
	align-items:flex-start;
	padding-bottom:2px;
	min-width:0;
}

#doswiadczenie .experience-showcase__card .portfolio-card__head > div{
	display:grid;
	gap:4px;
	min-width:0;
}

#doswiadczenie .experience-showcase__card .portfolio-card__location{
	margin:0;
	font-size:.78rem;
	font-weight:800;
	letter-spacing:.16em;
	color:var(--overlay-bottom);
	opacity:.86;
}

#doswiadczenie .experience-showcase__card .portfolio-card__title{
	margin:8px 0 0;
	font-size:clamp(1.35rem,1.55vw + .75rem,2.15rem);
	line-height:1.05;
	letter-spacing:-.03em;
	color:var(--brand-navy);
	overflow-wrap:anywhere;
	hyphens:auto;
}

#doswiadczenie .experience-showcase__card .portfolio-card__year{
	display:inline-flex;
	align-items:center;
	align-self:flex-start;
	justify-content:center;
	inline-size:fit-content;
	max-inline-size:100%;
	min-height:36px;
	padding:8px 12px;
	border-radius:999px;
	background:rgba(232,239,249,.92);
	color:var(--brand-navy);
	font-weight:700;
	font-size:.78rem;
	letter-spacing:.05em;
	text-transform:uppercase;
	white-space:normal;
	overflow-wrap:anywhere;
	word-break:break-word;
	max-width:100%;
	text-align:center;
	border:1px solid rgba(147,167,205,.24);
}

#doswiadczenie .experience-showcase__card .portfolio-card__location .portfolio-card__year{
	white-space:normal;
}

#doswiadczenie .experience-showcase__card .portfolio-card__summary{
	margin:0;
	font-size:1rem;
	line-height:1.72;
	color:var(--text-secondary);
	max-width:52ch;
	overflow-wrap:anywhere;
	hyphens:auto;
}

#doswiadczenie .experience-showcase__card .portfolio-card__meta{
	margin:0;
	display:flex;
	flex-direction:column;
	gap:0;
	padding-top:8px;
	border-top:1px solid rgba(135,159,203,.22);
}

#doswiadczenie .experience-showcase__card .portfolio-card__meta > div{
	padding:10px 0 10px 14px;
	display:flex;
	flex-direction:column;
	gap:3px;
	position:relative;
	background:transparent;
	border:0;
	border-radius:0;
	box-shadow:none;
}

#doswiadczenie .experience-showcase__card .portfolio-card__meta > div + div{
	border-top:1px solid rgba(135,159,203,.16);
}

#doswiadczenie .experience-showcase__card .portfolio-card__meta dt{
	order:2;
	margin:0;
	font-size:.72rem;
	text-transform:uppercase;
	letter-spacing:.1em;
	color:rgba(39,62,108,.58);
	line-height:1.25;
}

#doswiadczenie .experience-showcase__card .portfolio-card__meta dd{
	order:1;
	margin:0;
	font-size:1rem;
	font-weight:700;
	letter-spacing:.02em;
	line-height:1.25;
	color:var(--brand-navy);
	overflow-wrap:anywhere;
	hyphens:auto;
}

#doswiadczenie .experience-showcase__footer{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:16px;
	margin-top:-6px;
	position:relative;
	z-index:1;
	max-width:min(1180px,100%);
	margin-inline:auto;
}

#doswiadczenie .experience-showcase__dots{
	display:flex;
	gap:10px;
	align-items:center;
}

#doswiadczenie .experience-showcase__dot{
	width:30px;
	height:6px;
	border-radius:999px;
	border:0;
	background:rgba(31,42,68,.28);
	padding:0;
	cursor:pointer;
	position:relative;
	appearance:none;
	-webkit-appearance:none;
	overflow:visible;
	isolation:auto;
	background-clip:border-box;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	box-shadow:none;
	transition:width .24s ease,height .2s ease,transform .2s ease,box-shadow .2s ease,background-color .2s ease;
}

#doswiadczenie .experience-showcase__dot::-moz-focus-inner{
	border:0;
	padding:0;
}

#doswiadczenie .experience-showcase__dot::after{
	content:none;
	display:none;
}

#doswiadczenie .experience-showcase__dot.is-active{
	width:58px;
	height:9px;
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom));
	box-shadow:0 6px 14px rgba(31,42,68,.24);
}

#doswiadczenie .experience-showcase__dot:is(:hover,:focus-visible){
	transform:translateY(-1px);
	background:rgba(31,42,68,.4);
	box-shadow:0 3px 8px rgba(31,42,68,.16);
	outline:0;
}

#doswiadczenie .experience-showcase__dot:focus-visible{
	box-shadow:0 0 0 3px rgba(79,96,238,.22),0 6px 14px rgba(31,42,68,.16);
	outline:0;
}

#doswiadczenie .experience-showcase__more{
	margin-left:auto;
}

#doswiadczenie .experience-showcase__more .filter-link{
	min-width:124px;
	justify-content:center;
}

#o-nas .gallery-thumbs{
	display:flex;
	gap:10px;
	align-items:center;
	justify-content:center;
	flex-wrap:wrap;
	width:100%;
}

#o-nas .thumb{
	width:30px;
	height:6px;
	border-radius:999px;
	border:0;
	background:rgba(31,42,68,.28);
	padding:0;
	cursor:pointer;
	position:relative;
	appearance:none;
	-webkit-appearance:none;
	overflow:visible;
	isolation:auto;
	background-clip:border-box;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	box-shadow:none;
	transition:width .24s ease,height .2s ease,transform .2s ease,box-shadow .2s ease,background-color .2s ease;
}

#o-nas .thumb::-moz-focus-inner{
	border:0;
	padding:0;
}

#o-nas .thumb::after{
	content:none;
	display:none;
}

#o-nas .thumb img,
#o-nas .thumb picture{
	display:none;
}

#o-nas .thumb.is-active{
	width:58px;
	height:9px;
	background:linear-gradient(90deg,var(--overlay-top),var(--overlay-bottom));
	box-shadow:0 6px 14px rgba(31,42,68,.24);
	border-color:transparent;
}

#o-nas .thumb:is(:hover,:focus-visible){
	transform:translateY(-1px);
	background:rgba(31,42,68,.4);
	box-shadow:0 3px 8px rgba(31,42,68,.16);
	outline:0;
}

#o-nas .thumb:focus-visible{
	box-shadow:0 0 0 3px rgba(79,96,238,.22),0 6px 14px rgba(31,42,68,.16);
	outline:0;
}

@media (min-width:900px){
	#doswiadczenie .experience-showcase__card{
		display:grid;
		grid-template-columns:minmax(0,1.3fr) minmax(0,.92fr);
		align-items:stretch;
	}
}

@media (max-width:899px){
	#doswiadczenie[data-experience-slider]{
		padding-inline:18px;
	}

	#doswiadczenie .experience-showcase__head{
		grid-template-columns:1fr;
		align-items:start;
	}

	#doswiadczenie .experience-showcase__navs{
		padding-top:0;
	}

	#doswiadczenie .experience-showcase__card{
		display:grid;
		grid-template-columns:1fr;
		padding-inline:0;
		background:var(--surface-primary);
		opacity:1;
		scale:1;
	}

	#doswiadczenie .experience-showcase__card .portfolio-card__media{
		min-height:300px;
		border-radius:24px 24px 0 0;
		border-right:0;
	}

	#doswiadczenie .experience-showcase__card .portfolio-card__head{
		grid-template-columns:1fr;
		align-items:flex-start;
	}

	#doswiadczenie .experience-showcase__card .portfolio-card__meta{
		display:flex;
		flex-direction:column;
	}

	#doswiadczenie .experience-showcase__footer{
		flex-wrap:wrap;
	}
	
	#doswiadczenie .experience-showcase__more{
		width:100%;
	}
	
	#doswiadczenie .experience-showcase__more .filter-link{
		width:100%;
	}
}

@media (max-width:620px){
	#start.hero .hero-logo{
		width:70% !important;
		max-width:70% !important;
		height:auto;
	}

	#start.hero .hero-stat .stat-icon{
		width:51px;
		height:51px;
	}

	#start.hero .hero-stat .stat-icon svg,
	#start.hero .hero-stat .stat-icon img{
		width:26px;
		height:26px;
	}

	#doswiadczenie[data-experience-slider]{
		border-radius:22px;
		padding-block:22px !important;
	}

	#doswiadczenie .experience-showcase__head h2{
		max-width:none;
	}

	#doswiadczenie .experience-showcase__nav{
		width:48px;
		height:48px;
	}

	#doswiadczenie [data-experience-viewport]{
		border-radius:22px;
		padding:0;
	}

	#doswiadczenie .experience-showcase__card,
	#doswiadczenie .experience-showcase__card .portfolio-card__media{
		border-radius:20px 20px 0 0;
	}

	#doswiadczenie .experience-showcase__card{
		border-radius:20px;
	}

	#doswiadczenie .experience-showcase__card .portfolio-card__content{
		padding:22px 18px;
	}

	#doswiadczenie .experience-showcase__card .portfolio-card__meta{
		display:flex;
		flex-direction:column;
	}
}




/* Global typography guard: do not split words between lines. */
html body p,
html body div,
html body li,
html body dd,
html body dt,
html body span,
html body a,
html body button,
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body figcaption,
html body small,
html body strong,
html body em,
html body label,
html body blockquote{
  word-break:normal !important;
  overflow-wrap:normal !important;
  word-wrap:normal !important;
  hyphens:none !important;
  -webkit-hyphens:none !important;
  -ms-hyphens:none !important;
}

