/* =========================================================================
   TH Core — globalny design system (wzorzec: VamTam Execor)
   Typografia: Forum (nagłówki) + DM Sans (treść) · przyciski, bordery, radius
   ========================================================================= */

/* Mapowanie na globalne tokeny Elementor kit — jedno źródło prawdy dla całej strony. */
:root{
	--thx-green:var(--e-global-color-vamtam_accent_1,#0F3D3A);
	--thx-green-d:#0A2B29;
	--thx-lime:var(--e-global-color-vamtam_accent_2,#C8F8A9);
	--thx-lime-s:#E4FBD2;
	--thx-grey:var(--e-global-color-vamtam_accent_3,#F2F5F1);
	--thx-grey-2:var(--e-global-color-vamtam_accent_4,#F8F7F3);
	--thx-ink:var(--e-global-color-vamtam_accent_1,#0F3D3A);
	--thx-mut:#54655f;
	--thx-line:var(--e-global-color-vamtam_accent_7,#0000001A);
	--thx-radius:0;          /* karty, pola, submenu */
	--thx-radius-btn:0;       /* zgodnie z --vamtam-btn-border-radius */
	--thx-radius-lg:0;
}

/* ---------- Typografia globalna ---------- */
body,
body.elementor-page,
.elementor-kit-9,
.elementor-widget-text-editor,
.elementor-widget-heading,
input,select,textarea,button{
	font-family:"DM Sans",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
}
body{color:var(--thx-ink);-webkit-font-smoothing:antialiased}

h1,h2,h3,h4,
.elementor-heading-title,
.elementor-widget-heading h1.elementor-heading-title,
.elementor-widget-heading h2.elementor-heading-title{
	font-family:"Forum",Georgia,"Times New Roman",serif!important;
	font-weight:400!important;
	letter-spacing:.01em;
	color:var(--thx-ink);
}
h5,h6,
.elementor-widget-heading h5.elementor-heading-title,
.elementor-widget-heading h6.elementor-heading-title{
	font-family:"DM Sans",Arial,sans-serif!important;
	font-weight:700!important;
	letter-spacing:.01em;
}
h1,.elementor-widget-heading h1.elementor-heading-title{font-size:clamp(2.4rem,4.6vw,3.9rem)!important;line-height:1.08!important}
h2,.elementor-widget-heading h2.elementor-heading-title{font-size:clamp(2rem,3.6vw,3rem)!important;line-height:1.12!important}
h3,.elementor-widget-heading h3.elementor-heading-title{font-size:clamp(1.5rem,2.4vw,2.1rem)!important;line-height:1.2!important}
h4,.elementor-widget-heading h4.elementor-heading-title{font-size:1.35rem!important;line-height:1.25!important}
h5,.elementor-widget-heading h5.elementor-heading-title{font-size:1.1rem!important}
h6,.elementor-widget-heading h6.elementor-heading-title{font-size:.95rem!important;text-transform:none}
p,li,.elementor-widget-text-editor{line-height:1.65}

/* ---------- Przyciski (jeden wzorzec w całym serwisie) ---------- */
.elementor-button,
.elementor-button-link,
.wp-block-button__link,
button:not(.th-x-tab):not(.th-x-acc-h):not(.th-p-tile):not([class*="elementor-menu-toggle"]):not(.th-mm-toggle):not(.e-n-menu-dropdown-icon):not(.e-n-menu-toggle),
input[type="submit"],
input[type="button"],
.vamtam-button,
a.button{
	font-family:"DM Sans",Arial,sans-serif!important;
	font-weight:500!important;
	font-size:1rem!important;
	line-height:1.2!important;
	border-radius:var(--thx-radius-btn)!important;
	padding:.95rem 1.8rem!important;
	border:0;
	transition:background .15s,color .15s,border-color .15s;
}
/* wariant podstawowy: limonka na zieleni */
.elementor-button:not(.elementor-button-info):not([class*="th-x-"]),
input[type="submit"],
.wp-block-button__link{
	background-color:var(--thx-lime)!important;
	color:var(--thx-green)!important;
}
.elementor-button:not([class*="th-x-"]):hover,
input[type="submit"]:hover,
.wp-block-button__link:hover{
	background-color:var(--thx-green)!important;
	color:#fff!important;
}
/* przyciski wewnątrz ciemnych sekcji zostają limonkowe */
.th-x .elementor-button{background-color:var(--thx-lime)!important;color:var(--thx-green)!important}

/* ---------- Pola formularzy ---------- */
input:not([type=button]):not([type=submit]):not([type=checkbox]):not([type=radio]),
textarea,select,
.elementor-field-textual{
	box-sizing:border-box!important;
	border-radius:var(--thx-radius-btn)!important;
	border:1px solid var(--thx-line)!important;
	font-family:"DM Sans",Arial,sans-serif!important;
	background:#fff;
}
input:focus,textarea:focus,select:focus,.elementor-field-textual:focus{
	border-color:var(--thx-green)!important;outline:none;box-shadow:0 0 0 3px rgba(15,61,58,.08)!important;
}

/* ---------- Karty, kontenery, obrazy: wspólny promień i obrys ---------- */
.elementor-widget-image img,
.elementor-widget-theme-post-featured-image img,
.vgblk-post-thumb img,
.elementor-post__thumbnail,
.elementor-widget-image-box .elementor-image-box-img img{
	border-radius:var(--thx-radius)!important;
}
.elementor-widget-image-box .elementor-image-box-wrapper,
.elementor-widget-icon-box .elementor-icon-box-wrapper,
.elementor-post,
.vamtam-post-card,
.elementor-widget-posts article,
.elementor-widget-loop-grid .e-loop-item{
	border-radius:var(--thx-radius)!important;
}
.elementor-widget-toggle .elementor-toggle-item,
.elementor-widget-accordion .elementor-accordion-item{
	border-radius:var(--thx-radius)!important;overflow:hidden;border-color:var(--thx-line)!important;
}

/* ---------- Nawigacja: submenu z promieniem kart ---------- */
.elementor-nav-menu--dropdown,
.elementor-nav-menu__container.elementor-nav-menu--dropdown,
.elementor-nav-menu .sub-menu,
.elementor-nav-menu ul.sub-menu,
.vamtam-mega-menu .elementor-nav-menu--dropdown,
nav.elementor-nav-menu--dropdown{
	border-radius:var(--thx-radius)!important;
	overflow:hidden!important;
	border:1px solid var(--thx-line)!important;
	box-shadow:0 18px 40px rgba(19,36,32,.10)!important;
}
.elementor-nav-menu .sub-menu li:first-child>a{border-top-left-radius:var(--thx-radius);border-top-right-radius:var(--thx-radius)}
.elementor-nav-menu .sub-menu li:last-child>a{border-bottom-left-radius:var(--thx-radius);border-bottom-right-radius:var(--thx-radius)}
.elementor-nav-menu--main .elementor-item{font-family:"DM Sans",Arial,sans-serif!important;font-weight:500!important}
/* przycisk CTA w nawigacji: ten sam promień co reszta przycisków */
.elementor-element-38d6a75 a,
.elementor-element-38d6a75 .elementor-button,
.elementor-widget-button .elementor-button{border-radius:var(--thx-radius-btn)!important}

/* ---------- Tekstury (Execor) ---------- */
.thx-fluted{position:relative;background-color:var(--th-glass,#0E6E45)}
.thx-fluted::before{
	content:"";position:absolute;inset:0;pointer-events:none;
	background-image:var(--thx-tex-fluted);background-size:cover;background-position:center;
	mix-blend-mode:soft-light;opacity:.85;
}
.thx-fluted>*{position:relative;z-index:1}

/* =========================== STOPKA (układ Execor) =========================== */
.thx-foot{font-family:"DM Sans",Arial,sans-serif}
.thx-foot-wrap{max-width:1280px;margin:0 auto;padding:0 24px}
.thx-foot *{box-sizing:border-box}

/* newsletter */
.thx-foot-news{background:var(--thx-grey);padding:9rem 0 11rem;position:relative;text-align:center;overflow:hidden}
.thx-foot-news::after{content:"";position:absolute;left:0;right:0;bottom:0;height:150px;
	background-image:var(--thx-tex-stripes);background-repeat:repeat-x;background-position:center bottom;background-size:auto 150px;opacity:.9}
.thx-foot-news h3{font-family:"Forum",Georgia,serif!important;font-weight:400!important;
	font-size:clamp(1.7rem,3.2vw,2.7rem)!important;line-height:1.2!important;color:var(--thx-ink);margin:0 0 2.2rem!important}
.thx-foot-news h3 span{display:inline}
.thx-news-form{max-width:900px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto 300px;gap:15px;align-items:start;text-align:left;position:relative;z-index:1}
.thx-news-form input[type=email]{width:100%;min-height:54px;padding:.9rem 1.1rem;border:1px solid var(--thx-line);border-radius:var(--thx-radius-btn);background:#fff;font-size:1rem}
.thx-news-form button{min-height:54px;display:inline-flex;align-items:center;gap:3rem;justify-content:space-between;
	background:var(--thx-lime);color:var(--thx-green);border:0;border-radius:var(--thx-radius-btn);padding:0 1.4rem;font-weight:500;font-size:1rem;cursor:pointer;transition:background .15s,color .15s}
.thx-news-form button:hover{background:var(--thx-green);color:#fff}
.thx-news-form button[disabled]{opacity:.6;cursor:progress}
.thx-news-note{grid-column:3;margin:0;font-size:.82rem;line-height:1.45;color:var(--thx-mut)}
.thx-news-note a{color:var(--thx-mut);text-decoration:underline}
.thx-news-msg{grid-column:1/-1;margin:.2rem 0 0;font-size:.9rem;color:var(--thx-green);font-weight:500}

/* główny blok */
.thx-foot-main{background:var(--thx-green);color:#fff;padding:4.5rem 0 2.5rem}
.thx-foot-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:2.5rem;align-items:start}
.thx-foot-logo{font-family:"Forum",Georgia,serif;font-size:1.7rem;color:#fff!important;text-decoration:none!important;display:inline-block;margin-bottom:1rem}
.thx-foot-brand p{margin:0;color:rgba(255,255,255,.75);font-size:.98rem;line-height:1.6}
.thx-foot-note{margin-top:1rem!important;color:rgba(255,255,255,.55)!important;font-size:.92rem!important;max-width:34ch}
.thx-foot-brand p span{color:var(--thx-lime)}
.thx-foot-col h6{font-family:"DM Sans",Arial,sans-serif!important;font-size:.95rem!important;font-weight:400!important;color:rgba(255,255,255,.55)!important;margin:0 0 1.1rem!important}
.thx-foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem}
.thx-foot-col a{color:#fff!important;text-decoration:none!important;font-size:.98rem;transition:color .15s}
.thx-foot-col a:hover{color:var(--thx-lime)!important}
.thx-foot-contact li{color:rgba(255,255,255,.75);font-size:.98rem;line-height:1.5}
.thx-foot-contact span{color:var(--thx-lime)}
.thx-foot-cta{display:inline-block;margin-top:.6rem;background:var(--thx-lime);color:var(--thx-green)!important;
	border-radius:var(--thx-radius-btn);padding:.7rem 1.3rem;font-weight:500;font-size:.95rem}
.thx-foot-cta:hover{background:var(--th-color-accent-dark,#ADEE84);color:var(--thx-green)!important}

/* pas social */
.thx-foot-social{background:var(--thx-green);padding:1.5rem 0 .5rem}
.thx-foot-social-in{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.thx-foot-up{width:44px;height:44px;border-radius:0;border:1px solid rgba(255,255,255,.28);display:inline-flex;align-items:center;justify-content:center;
	color:#fff!important;text-decoration:none!important;font-size:1.1rem;transition:background .15s,border-color .15s}
.thx-foot-up:hover{background:var(--thx-lime);border-color:var(--thx-lime);color:var(--thx-green)!important}
.thx-foot-soc{display:flex;gap:1.4rem;align-items:center}
.thx-foot-soc a{color:rgba(255,255,255,.8);display:inline-flex}
.thx-foot-soc a:hover{color:var(--thx-lime)}
.thx-foot-soc svg{width:18px;height:18px;display:block}

/* copyright */
.thx-foot-legal{background:var(--thx-green);padding:1.2rem 0 2.2rem}
.thx-foot-legal-in{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;
	border-top:1px solid rgba(255,255,255,.16);padding-top:1.5rem}
.thx-foot-legal span,.thx-foot-legal a{color:rgba(255,255,255,.6);font-size:.88rem}
.thx-foot-legal a{text-decoration:none!important}
.thx-foot-legal a:hover{color:var(--thx-lime)}
.thx-foot-legal ul{list-style:none;margin:0;padding:0;display:flex;gap:1.5rem}

/* nota prawna pod kolumnami */
.thx-foot-disc{max-width:1280px;margin:3rem auto 0;padding:1.6rem 0 0;border-top:1px solid rgba(255,255,255,.14);
	color:rgba(255,255,255,.5);font-size:.88rem;line-height:1.6;max-width:92ch}

@media(max-width:1100px){.thx-foot-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:980px){
	.thx-foot-grid{grid-template-columns:1fr 1fr;gap:2rem}
	.thx-news-form{grid-template-columns:1fr}
	.thx-news-note{grid-column:1}
	.thx-foot-news{padding:5rem 0 8rem}
}
@media(max-width:600px){
	.thx-foot-grid{grid-template-columns:1fr}
	.thx-foot-legal-in{justify-content:center;text-align:center}
	.thx-news-form button{justify-content:center;gap:.8rem}
}

/* ---------- Nasze przyciski funkcyjne vs style motywu ----------
   .elementor-kit-9 button / html button nadpisuja `all:unset`, dlatego
   akordeon i przelacznik zakladek wymagaja jawnych deklaracji. */

/* Akordeon w układzie FAQ: hairline, bez tła, znak +/− po prawej */
.th-x .th-x-acc{border:0!important;background:transparent!important;padding:0!important}
.th-x .th-x-acc .th-x-acc-item{border-bottom:1px solid var(--thx-line)!important;border-radius:0!important}
.th-x .th-x-acc .th-x-acc-item:first-child{border-top:1px solid var(--thx-line)!important}
.th-x .th-x-acc .th-x-acc-h{
	display:flex!important;width:100%!important;align-items:center!important;justify-content:space-between!important;gap:1rem!important;
	background:transparent!important;background-color:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
	font-family:"Forum",Georgia,serif!important;font-weight:400!important;font-size:1.35rem!important;line-height:1.3!important;
	color:var(--thx-ink)!important;text-align:left!important;padding:1.35rem 0!important;margin:0!important;cursor:pointer!important;
	transition:color .15s;
}
.th-x .th-x-acc .th-x-acc-h:hover{color:var(--thx-green)!important;background:transparent!important}
.th-x .th-x-acc .th-x-acc-h span{position:relative;width:16px;height:16px;flex:none}
.th-x .th-x-acc .th-x-acc-h span::before,
.th-x .th-x-acc .th-x-acc-h span::after{content:"";position:absolute;left:0;top:7px;width:16px;height:1.5px;background:var(--thx-mut);transition:transform .2s}
.th-x .th-x-acc .th-x-acc-h span::after{transform:rotate(90deg)}
.th-x .th-x-acc .th-x-acc-item.is-open .th-x-acc-h{color:var(--thx-green)!important}
.th-x .th-x-acc .th-x-acc-item.is-open .th-x-acc-h span::after{transform:rotate(0)}
.th-x .th-x-acc .th-x-acc-b{border-top:0!important;padding:0 0 1.6rem!important}
.th-x .th-x-acc .th-x-acc-b p{padding-top:0!important;color:var(--thx-mut);line-height:1.7}

/* Przełącznik zakładek jako jeden segmentowany kontrolek */
.th-x .th-x-tabs-nav{
	display:inline-flex!important;width:100%;gap:4px;padding:5px!important;margin-bottom:3rem;
	background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.16)!important;
	border-radius:var(--thx-radius)!important;
}
.th-x .th-x-tabs-nav .th-x-tab{
	flex:1 1 0;min-width:0;background:transparent!important;background-color:transparent!important;border:0!important;box-shadow:none!important;
	border-radius:0!important;
	font-family:"DM Sans",Arial,sans-serif!important;font-weight:500!important;font-size:1rem!important;line-height:1.2!important;
	color:rgba(255,255,255,.7)!important;text-align:center!important;padding:.9rem 1rem!important;margin:0!important;cursor:pointer!important;
	transition:background .18s,color .18s;
}
.th-x .th-x-tabs-nav .th-x-tab:hover{color:#fff!important;background:rgba(255,255,255,.06)!important}
.th-x .th-x-tabs-nav .th-x-tab.is-on{background:var(--thx-lime)!important;color:var(--thx-green)!important}
@media(max-width:820px){
	.th-x .th-x-tabs-nav{flex-direction:column!important}
	.th-x .th-x-tabs-nav .th-x-tab{text-align:left!important}
}

/* ---------- Nawigacja: Elementor Nested Menu (e-n-menu) ----------
   Widget ma wlasne promienie (pigulka 30px, panel 24px) i odstep 4px,
   przez co przycisk i rozwijane menu wygladaja jak dwa osobne elementy. */
.elementor-element-033afc3{--n-menu-title-distance-from-content:0px!important}
.e-n-menu-title{border-radius:var(--thx-radius)!important}
.e-n-menu-content > .e-con,
.e-n-menu-content > .e-con > .e-con-inner{
	border-radius:var(--thx-radius)!important;
	--border-radius:var(--thx-radius)!important;
	overflow:hidden!important;
}
/* pozycje w rozwijanym menu bez wlasnych promieni — panel je przycina */
.e-n-menu-content .elementor-item,
.e-n-menu-content .e-n-menu-title,
.e-n-menu-content a{border-radius:0!important}

/* Nested Menu: przycisk strzałki dziedziczy padding motywu (28px po bokach)
   + margines — stąd zbyt szeroka „pigułka" Finanse i duży odstęp od tekstu */
.elementor-element-033afc3{--n-menu-title-space-between:0px!important;--n-menu-dropdown-indicator-space:6px!important}
button.e-n-menu-dropdown-icon{padding:0!important;margin:0 0 0 6px!important;min-width:0!important;width:auto!important;background:transparent!important}
.e-n-menu-dropdown-icon svg,.e-n-menu-dropdown-icon i{width:12px!important;height:12px!important;font-size:12px!important}

/* CTA w nawigacji „Porównaj oferty": wygląd jak Free Consultation (Execor)
   — limonkowe tło, tekst zielony, prosta strzałka po prawej zamiast kółka */
.elementor-element-8bcdb95 .elementor-button{
	display:inline-flex!important;align-items:center;gap:.7rem;
	background:var(--thx-lime)!important;color:var(--thx-green)!important;fill:var(--thx-green)!important;
	border-radius:var(--thx-radius-btn)!important;padding:.85rem 1.4rem!important;font-weight:500!important;
}
.elementor-element-8bcdb95 .elementor-button:hover{background:var(--thx-green)!important;color:#fff!important;fill:#fff!important}
.elementor-element-8bcdb95 .elementor-button-content-wrapper{flex-direction:row!important;gap:.7rem!important;align-items:center}
/* usuń zielone kółko wokół strzałki */
.elementor-element-8bcdb95 .vamtam-btn-icon-wrap,
.elementor-element-8bcdb95 .elementor-button-icon{background:transparent!important;padding:0!important;margin:0!important;border-radius:0!important;width:auto!important;height:auto!important}
.elementor-element-8bcdb95 .elementor-button-icon i,
.elementor-element-8bcdb95 .elementor-button-icon svg{display:none!important}
.elementor-element-8bcdb95 .elementor-button-icon{display:none!important}

/* Przycisk telefonu w nawigacji (Execor) */
.th-nav-phone-wrap{display:flex;align-items:center}
.th-nav-phone{display:inline-flex;align-items:center;text-decoration:none!important;color:var(--thx-ink)!important}
.th-nav-phone-ico{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--thx-radius-btn);background:var(--thx-grey);color:var(--thx-ink);transition:background .15s,color .15s}
.th-nav-phone-ico svg{width:18px;height:18px}
.th-nav-phone-num{color:var(--thx-ink)}
.th-nav-phone:hover .th-nav-phone-ico{background:var(--thx-green);color:#fff}
@media(max-width:1024px){.th-nav-phone-wrap{display:none}}

/* Mobilna nawigacja — wzór Execor: usunięty search, cienki burger/X bez kółka,
   pozycje na białym tle z hairline (bez limonkowego bloku na aktywnej sekcji) */
.elementor-element-3d4688c{display:none!important}
/* zielone kółko jest na .elementor-widget-container (rodzic toggle), nie na samym toggle */
.elementor-element-6d7bcb6 > .elementor-widget-container{background:transparent!important;background-color:transparent!important;border-radius:0!important;box-shadow:none!important;border:0!important}
/* burger/X: własne ikony (hamburger 3 linie / X) bez tła i kółka */
.elementor-element-6d7bcb6 .elementor-menu-toggle,
.elementor-element-6d7bcb6 .elementor-menu-toggle.elementor-active{
	width:auto!important;height:auto!important;border:0!important;border-radius:0!important;background:transparent!important;
	color:var(--thx-ink)!important;padding:.25rem!important;box-shadow:none!important;display:flex;align-items:center;justify-content:center}
.elementor-element-6d7bcb6 .elementor-menu-toggle i{color:var(--thx-ink)!important;position:relative;display:block}
/* hamburger (menu zamknięte) — 3 cienkie linie zamiast 9 kropek */
.elementor-element-6d7bcb6 .elementor-menu-toggle__icon--open{width:24px;height:16px}
.elementor-element-6d7bcb6 .elementor-menu-toggle__icon--open::before{
	content:""!important;position:absolute;left:0;top:0;width:24px;height:2px;background:currentColor;border-radius:0;
	box-shadow:0 7px 0 currentColor,0 14px 0 currentColor}
/* X (menu otwarte) — mniejszy, cienki */
.elementor-element-6d7bcb6 .elementor-menu-toggle__icon--close{width:20px;height:20px}
.elementor-element-6d7bcb6 .elementor-menu-toggle__icon--close::before{
	content:""!important;position:absolute;left:0;top:9px;width:20px;height:2px;background:currentColor;border-radius:0;transform:rotate(45deg)}
.elementor-element-6d7bcb6 .elementor-menu-toggle__icon--close::after{
	content:"";position:absolute;left:0;top:9px;width:20px;height:2px;background:currentColor;border-radius:0;transform:rotate(-45deg)}
/* mobilny dropdown: białe pozycje, hairline między nimi */
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown{background:#fff!important;border-radius:0!important;overflow:hidden;box-shadow:0 18px 40px rgba(19,36,32,.12)!important}
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown .elementor-item,
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown .elementor-sub-item{
	background:#fff!important;color:var(--thx-ink)!important;border-bottom:1px solid var(--thx-line)!important;
	padding:16px 22px!important;font-family:"DM Sans",Arial,sans-serif!important;font-weight:500!important}
/* aktywna sekcja NIE dostaje limonki — tylko realny hover/tap */
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown li.current-menu-item>a,
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown li.current-menu-parent>a,
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown li.current-menu-ancestor>a,
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown li.current_page_item>a{
	background:#fff!important;color:var(--thx-ink)!important}
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown .elementor-sub-item:hover{
	background:var(--thx-lime)!important;color:var(--thx-green)!important}
.elementor-element-6d7bcb6 .elementor-nav-menu--dropdown .sub-menu .elementor-sub-item{padding-left:2.6rem!important;background:var(--thx-grey)!important}
/* nagłówek mobilny (logo + toggle): kompaktowy jak Execor */
@media(max-width:1024px){
	.elementor-element-4f5f688{padding-top:6px!important;padding-bottom:6px!important}
	.elementor-element-b30485c img{max-height:22px!important;width:auto!important}
	.elementor-element-b30485c{max-width:104px}
	/* mobilny rząd nagłówka (0604a4a) — niższy, mniejsze logo */
	.elementor-element-0604a4a > .e-con-inner{padding-top:6px!important;padding-bottom:6px!important;min-height:0!important}
	.elementor-element-0604a4a .elementor-element-b30485c img{max-height:22px!important}
	.elementor-element-0604a4a .elementor-element-b30485c a,
	.elementor-element-0604a4a .elementor-element-b30485c .elementor-widget-container{max-height:38px!important;display:flex;align-items:center}
}

/* Nagłówek musi być nad mapą Leaflet (panes/kontrolki mają wysoki z-index) */
.elementor-location-header{position:relative;z-index:1000}
.leaflet-container,.th-mapa,.th-mapa-wrap{z-index:0}
.leaflet-pane,.leaflet-top,.leaflet-bottom{z-index:auto}
.leaflet-control{z-index:400}

/* Strona eksperta: ukryty badge „Zespół" nad imieniem */
body.single-ekspert .elementor-element-828e2cc{display:none!important}

/* ---------- Blog detail (single post) — czytelny układ jak demo Execor ----------
   Globalne h1-h4 (Forum serif) przeciekały do treści artykułu; treść ma być
   sans-serif bold, w węższej kolumnie, z luźniejszymi akapitami. */
.single-post .elementor-widget-theme-post-content{max-width:760px!important;margin-left:auto!important;margin-right:auto!important}
.single-post .elementor-widget-theme-post-content h2,
.single-post .elementor-widget-theme-post-content h3,
.single-post .elementor-widget-theme-post-content h4{
	font-family:"DM Sans",Arial,sans-serif!important;font-weight:700!important;letter-spacing:0!important;color:var(--thx-ink)}
.single-post .elementor-widget-theme-post-content h2{font-size:clamp(1.6rem,2.6vw,2.1rem)!important;line-height:1.2!important;margin:2.2rem 0 .9rem!important}
.single-post .elementor-widget-theme-post-content h3{font-size:1.4rem!important;line-height:1.25!important;margin:1.8rem 0 .7rem!important}
.single-post .elementor-widget-theme-post-content p,
.single-post .elementor-widget-theme-post-content li{
	font-family:"DM Sans",Arial,sans-serif!important;font-size:1.05rem!important;line-height:1.75!important;color:#3f4d48}
.single-post .elementor-widget-theme-post-content p{margin:0 0 1.3rem!important}
.single-post .elementor-widget-theme-post-content ul,
.single-post .elementor-widget-theme-post-content ol{margin:0 0 1.4rem;padding-left:1.4rem}
.single-post .elementor-widget-theme-post-content li{margin-bottom:.5rem}
/* tytuł artykułu (H1) zostaje serif Forum, ale węższy blok pod niego */
.single-post .elementor-widget-theme-post-featured-image img{aspect-ratio:auto!important}

/* Nav logo: podmiana na "Team hipoteczny" handwriting Nothing You Could Do */
.elementor-element-b30485c .elementor-widget-container,
.elementor-element-bdda596 .elementor-widget-container{position:relative}
.elementor-element-b30485c img,
.elementor-element-bdda596 img{opacity:0!important;visibility:hidden!important;max-height:52px}
.elementor-element-b30485c .elementor-widget-container::after,
.elementor-element-bdda596 .elementor-widget-container::after{
	content:"Team hipoteczny";
	position:absolute;left:0;top:50%;transform:translateY(-50%);
	font-family:"Nothing You Could Do",cursive;
	font-size:1.9rem;
	color:var(--th-color-primary);
	line-height:1;
	letter-spacing:-.01em;
	white-space:nowrap;
	pointer-events:none
}
@media(max-width:820px){
	.elementor-element-b30485c .elementor-widget-container::after,
	.elementor-element-bdda596 .elementor-widget-container::after{font-size:1.5rem}
}

/* Fix skakania podczas scroll: wyłącz Elementor sticky--effects animacje na mobile navie.
   Konflikt: .elementor-sticky--effects próbuje shrinking/scale on scroll, mój padding override triggeruje reflow za każdym Elementor RAF tick. */
.elementor-element-0604a4a.elementor-sticky,
.elementor-element-0604a4a.elementor-sticky--effects,
.elementor-element-0604a4a.elementor-sticky--active{
	transform:none!important;
	transition:none!important;
	animation:none!important;
	will-change:auto!important
}
.elementor-element-0604a4a.elementor-sticky--effects > .e-con-inner{
	transform:none!important;
	transition:none!important
}
body.disable-hover .elementor-element-0604a4a,
body.disable-hover .elementor-element-0604a4a *{transition:none!important;animation:none!important}

/* =================================================================
 * Global Elementor kit tokens override (kit-9) — nowa paleta 2026-09-22
 * Podmiana kolorów + typografii + buttonów Vamtam na całej stronie.
 * ================================================================= */
.elementor-kit-9{
	--e-global-color-vamtam_accent_1:#0F3D3A;
	--e-global-color-vamtam_accent_2:#C8F8A9;
	--e-global-color-vamtam_accent_3:#F2F5F1;
	--e-global-color-vamtam_accent_4:#F8F7F3;
	--e-global-color-vamtam_accent_5:#FFFFFF;
	--e-global-color-vamtam_accent_6:#000000;
	--e-global-color-vamtam_accent_7:#0000001A;
	--e-global-color-vamtam_accent_8:#00000099;
	--e-global-color-vamtam_sticky_header_bg_color:#FFFFFF;
	--e-global-color-0e53263:#FFFFFF80;
	--e-global-color-cd36427:#1F6E69;
	--e-global-color-597ed21:#000000BF;
	--e-global-color-d8fe409:#0F3D3A66;

	--e-global-typography-vamtam_primary_font-font-family:"DM Sans";
	--e-global-typography-vamtam_primary_font-font-size:15px;
	--e-global-typography-vamtam_primary_font-font-weight:400;
	--e-global-typography-vamtam_primary_font-line-height:1.5em;
	--e-global-typography-vamtam_h1-font-family:"DM Sans";
	--e-global-typography-vamtam_h1-font-size:46px;
	--e-global-typography-vamtam_h1-font-weight:400;
	--e-global-typography-vamtam_h1-line-height:1.2em;
	--e-global-typography-vamtam_h2-font-family:"DM Sans";
	--e-global-typography-vamtam_h2-font-size:40px;
	--e-global-typography-vamtam_h2-font-weight:300;
	--e-global-typography-vamtam_h2-line-height:1.2em;
	--e-global-typography-vamtam_h3-font-family:"DM Sans";
	--e-global-typography-vamtam_h3-font-size:30px;
	--e-global-typography-vamtam_h3-font-weight:400;
	--e-global-typography-vamtam_h3-line-height:1.2em;
	--e-global-typography-vamtam_h4-font-family:"DM Sans";
	--e-global-typography-vamtam_h4-font-size:24px;
	--e-global-typography-vamtam_h4-font-weight:300;
	--e-global-typography-vamtam_h4-line-height:1.4em;
	--e-global-typography-vamtam_h5-font-family:"DM Sans";
	--e-global-typography-vamtam_h5-font-size:20px;
	--e-global-typography-vamtam_h5-font-weight:400;
	--e-global-typography-vamtam_h5-line-height:1.4em;
	--e-global-typography-vamtam_h6-font-family:"DM Sans";
	--e-global-typography-vamtam_h6-font-size:16px;
	--e-global-typography-vamtam_h6-font-weight:400;
	--e-global-typography-vamtam_h6-line-height:1.2em;

	--e-global-typography-1c16242-font-family:"Forum";
	--e-global-typography-1c16242-font-size:56px;
	--e-global-typography-1c16242-font-weight:400;
	--e-global-typography-1c16242-line-height:1em;
	--e-global-typography-d778ca5-font-size:12px;
	--e-global-typography-d778ca5-line-height:1.4em;
	--e-global-typography-0c1fb19-font-size:17px;
	--e-global-typography-0c1fb19-font-weight:400;
	--e-global-typography-0c1fb19-line-height:1.5em;
	--e-global-typography-aa3d2ee-font-family:"Forum";
	--e-global-typography-aa3d2ee-font-size:21px;
	--e-global-typography-aa3d2ee-font-weight:400;
	--e-global-typography-aa3d2ee-line-height:1.4em;
	--e-global-typography-47d0553-font-family:"DM Sans";
	--e-global-typography-47d0553-font-size:16px;
	--e-global-typography-47d0553-font-weight:500;
	--e-global-typography-47d0553-line-height:1.2em;
	--e-global-typography-6cc3f6e-font-family:"DM Sans";
	--e-global-typography-6cc3f6e-font-size:14px;
	--e-global-typography-6cc3f6e-font-weight:500;
	--e-global-typography-6cc3f6e-line-height:1em;
	--e-global-typography-798d94d-font-family:"DM Sans";
	--e-global-typography-798d94d-font-size:12px;
	--e-global-typography-798d94d-font-weight:500;
	--e-global-typography-798d94d-line-height:1em;
	--e-global-typography-82eb0df-font-family:"DM Sans";
	--e-global-typography-82eb0df-font-size:66px;
	--e-global-typography-82eb0df-font-weight:200;
	--e-global-typography-82eb0df-line-height:1em;
	--e-global-typography-8f74279-font-family:"Nothing You Could Do";
	--e-global-typography-8f74279-font-size:20px;
	--e-global-typography-8f74279-font-weight:400;
	--e-global-typography-8f74279-line-height:1.2em;

	background-color:var(--e-global-color-vamtam_accent_5)
}

body{
	--vamtam-widget-text-darker:#1b1b1b;
	--vamtam-widget-text-lighter:#383838;
	--vamtam-content-space-xxl:calc(var(--vamtam-content-space-l) * 2);
	--vamtam-content-space-xl:calc(var(--vamtam-content-space-l) * 1.5);
	--vamtam-content-space-l:50px;
	--vamtam-content-space-m:calc(var(--vamtam-content-space-l) * 0.4);
	--vamtam-content-space-s:calc(var(--vamtam-content-space-l) * 0.2);
	--vamtam-content-space-xs:calc(var(--vamtam-content-space-l) * 0.1);
	--vamtam-sidebar-content-margin:var(--vamtam-content-space-l);
	--vamtam-left-sidebar-width:30%;
	--vamtam-right-sidebar-width:30%;

	--vamtam-body-link-regular:#000000;
	--vamtam-body-link-visited:#000000;
	--vamtam-body-background-color:#FFFFFF;
	--vamtam-input-border-radius:0;
	--vamtam-input-border-color:#0000001A;
	--vamtam-btn-text-color:#0F3D3A;
	--vamtam-btn-hover-text-color:#F2F5F1;
	--vamtam-btn-bg-color:#C8F8A9;
	--vamtam-btn-hover-bg-color:#0F3D3A;
	--vamtam-btn-border-radius:0;
	--vamtam-site-max-width:1280px
}


/* =================================================================
 * Global border-radius reset — ostre rogi w całym serwisie (2026-09-22)
 * ================================================================= */
:root{
	--vamtam-btn-border-radius:0;
	--vamtam-input-border-radius:0;

	--thx-radius:0;
	--thx-radius-btn:0;
	--thx-radius-lg:0;
	--th-radius:0;
}
.elementor-button,.elementor-button-link,.wp-block-button__link,
input,select,textarea,button,
.elementor-field-textual,
.elementor-widget-image img,
.elementor-widget-theme-post-featured-image img,
.elementor-post__thumbnail,
.elementor-widget-image-box .elementor-image-box-img img,
.elementor-widget-image-box .elementor-image-box-wrapper,
.elementor-widget-icon-box .elementor-icon-box-wrapper,
.elementor-post,.vamtam-post-card,
.elementor-widget-posts article,
.elementor-widget-loop-grid .e-loop-item,
.elementor-widget-toggle .elementor-toggle-item,
.elementor-widget-accordion .elementor-accordion-item,
.elementor-nav-menu--dropdown,
.elementor-nav-menu .sub-menu,
.elementor-nav-menu ul.sub-menu,
nav.elementor-nav-menu--dropdown,
.e-con,.e-con-inner,
[class*="th-x-"],[class*="th-p-"],[class*="th-ex-"],[class*="thx-"],
.leaflet-container,.th-mapa2-canvas,
.wp-block-button__link,
.wp-block-button .wp-block-button__link{
	border-radius:0!important
}

/* Linki motywu Vamtam — motyw definiuje je inline na body, więc override też musi być na body */
body{
	--vamtam-body-link-hover:#0F3D3A;
	--vamtam-body-link-active:#0F3D3A;
	--vamtam-btn-border-radius:0;
	--vamtam-input-border-radius:0;
}

/* Hover przycisków Elementor/motywu: ciemniejsza limonka zamiast żółtej (token). */
.elementor-kit-9 .elementor-button:hover,
.elementor-kit-9 .elementor-button:focus,
.elementor-kit-9 button:hover,
.elementor-kit-9 input[type="button"]:hover,
.elementor-kit-9 input[type="submit"]:hover,
html .button:hover,
html button:hover{
	background-color:var(--th-color-accent-dark,#ADEE84)!important;
	color:var(--th-color-primary,#0F3D3A)!important;
	border-color:var(--th-color-accent-dark,#ADEE84)!important
}


/* Execor 1:1: Forum tylko dla dużych nagłówków display.
   h3/h4 i nazwiska w kartach = DM Sans (u nich vamtam_h4 = DM Sans 300). */
.elementor-widget-heading h3.elementor-heading-title,
.elementor-widget-heading h4.elementor-heading-title,
.th-x .th-x-person h3,
.th-x .th-x-person-v2 h3,
.th-x .th-x-post h3,
.th-x .th-x-cc h3{
	font-family:"DM Sans",Arial,sans-serif!important;
	font-weight:500!important;
	letter-spacing:0!important;
}

/* Wygładzanie fontów jak w motywie (vamtam-font-smoothing). */
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

/* ===== Strona główna: nawigacja jako overlay nad hero (wzór Execor) =====
   Stan przezroczysty = motywowa klasa --transparent-header BEZ --fixed-shown.
   Gdy motyw pokaże sticky (scroll w górę), sam ustawia białe tło z tranzycją 0.35s. */
body.th-nav-over header.elementor-location-header{
	position:absolute;top:0;left:0;right:0;z-index:1000
}
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown),
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown) > .e-con-inner{
	background-color:transparent!important
}
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown) .e-n-menu-title-text,
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown) .e-n-menu-title-container,
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown) .e-n-menu-toggle-icon,
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown) .e-n-menu-dropdown-icon i{
	color:var(--th-color-white,#fff)!important;fill:var(--th-color-white,#fff)!important
}
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown) .elementor-element-b30485c .elementor-widget-container::after{
	color:var(--th-color-white,#fff)
}
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown) .th-nav-phone-ico{
	background:rgba(255,255,255,.14)!important;color:var(--th-color-white,#fff)!important
}
/* Menu: bez podświetleń tłem — podkreślenie jak w Execor (e--pointer-underline).
   Kit ustawia tło na .e-n-menu-title:hover, więc kasujemy je w obu stanach. */
.elementor-location-header .e-n-menu-title,
.elementor-location-header .e-n-menu-title:hover,
.elementor-location-header .e-n-menu-title.e-current,
.elementor-location-header .e-n-menu-title.e-active,
.elementor-location-header .e-n-menu-title > .e-n-menu-title-container,
.elementor-location-header .e-n-menu-title:hover > .e-n-menu-title-container,
.elementor-location-header .e-n-menu-title.e-current > .e-n-menu-title-container{
	background-color:transparent!important
}
.elementor-location-header .e-n-menu-title-container{position:relative}
.elementor-location-header .e-n-menu-title-container::after{
	content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;
	background:var(--th-nav-line,var(--th-color-primary,#0F3D3A));
	transform:scaleX(0);transform-origin:left center;
	transition:transform .3s cubic-bezier(.58,.3,.005,1)
}
.elementor-location-header .e-n-menu-title:hover > .e-n-menu-title-container::after,
.elementor-location-header .e-n-menu-title.e-current > .e-n-menu-title-container::after,
.elementor-location-header .e-n-menu-title.e-active > .e-n-menu-title-container::after{
	transform:scaleX(1)
}
/* nad hero: linia i tekst w kolorze limonki/bieli */
body.th-nav-over .vamtam-sticky-header--transparent-header:not(.vamtam-sticky-header--fixed-shown){
	--th-nav-line:var(--th-color-accent,#C8F8A9)
}
