/*
 Theme Name:   Tokyo Child Theme
 Theme URI:    https://themeforest.net/item/tokyo-personal-portfolio-wordpress-theme
 Description:  Child theme for Tokyo theme
 Author:       Marketify
 Author URI:   http://themeforest.net/user/marketify
 Template:     tokyo
 Version:      1.0
 License: 	   Located in 'licensing' folder
 License URI:  license.txt
 Tags:         custom-header, custom-background, threaded-comments, custom-menu, featured-images, full-width-template, theme-options, translation-ready
 Text Domain:  tokyo-child
*/

/* Ukrycie brandingu "TOKYO" (logo z parent theme) nad menu — desktop i mobile.
   Motyw nie ma opcji "logo tekstowe"; logo to PNG z framework/img. */
.header_logo,
.tokyo_fn_mobilemenu_wrap .menu_logo {
	display: none;
}

/* ===== Cookie bar =====
   Globalny element chrome renderowany na wp_footer (functions.php). Stylizowany
   na tokeny motywu Tokyo: biale tlo, subtelna gorna linia, tekst body (#767676 /
   Mulish), czarny przycisk z bialym tekstem (jak button_bg/button_text_color).
   Domyslnie ukryty — JS dodaje .is-visible gdy brak zapisanej zgody. */
.tokyo-child-cookiebar {
	display: none;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
	box-sizing: border-box;
	padding: 18px 30px;
	background: #ffffff;
	border-top: 1px solid #eeeeee;
	box-shadow: 0 -6px 24px rgba(0, 0, 0, 0.06);
	font-family: "Mulish", "Muli", sans-serif;
}

.tokyo-child-cookiebar.is-visible {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
}

.tokyo-child-cookiebar__text {
	margin: 0;
	color: #767676;
	font-size: 14px;
	line-height: 1.6;
}

.tokyo-child-cookiebar__link {
	color: #767676;
	font-weight: 600;
	text-decoration: underline;
	transition: color .3s ease;
}

.tokyo-child-cookiebar__link:hover {
	color: #000000;
}

.tokyo-child-cookiebar__accept {
	flex: none;
	cursor: pointer;
	border: 0;
	padding: 12px 34px;
	background: #000000;
	color: #ffffff;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .5px;
	line-height: 1;
	transition: opacity .3s ease;
}

.tokyo-child-cookiebar__accept:hover {
	opacity: .8;
}

@media (max-width: 600px) {
	.tokyo-child-cookiebar {
		padding: 16px 20px;
	}
	.tokyo-child-cookiebar.is-visible {
		flex-direction: column;
		gap: 14px;
		text-align: center;
	}
	.tokyo-child-cookiebar__accept {
		width: 100%;
	}
}

/* ===== Pasek z logotypami UE =====
   Globalny pasek (wymog informacyjny projektu re_d) renderowany na wp_footer
   (functions.php), statycznie na dole kazdej strony. Stylizowany na tokeny
   motywu: jasne tlo, subtelna gorna linia (#eeeeee), wysrodkowany strip. */
.tokyo-child-funding-bar {
	/* Wyrownanie do kolumny tresci: omija staly lewy nav .tokyo_fn_header
	   (position:fixed; width:450px). Bez width:100% — blokowy div sam
	   zmniejsza szerokosc o margines (inaczej 100%+450px = poziomy scroll). */
	margin-left: 450px;
	box-sizing: border-box;
	padding: 20px 30px;
	background: #f8f8f8;
	border-top: 1px solid #eeeeee;
	text-align: center;
	line-height: 0;
}

/* Te same breakpointy co Tokyo: nav zweza sie do 400px (<=1600px) i znika
   (<=1040px, wtedy .tokyo_fn_content ma padding-left:0). */
@media (max-width: 1600px) {
	.tokyo-child-funding-bar {
		margin-left: 400px;
	}
}

@media (max-width: 1040px) {
	.tokyo-child-funding-bar {
		margin-left: 0;
	}
}

.tokyo-child-funding-bar a {
	display: inline-block;
	text-decoration: none;
	transition: opacity .3s ease;
}

.tokyo-child-funding-bar a:hover,
.tokyo-child-funding-bar a:focus-visible {
	opacity: .85;
}

.tokyo-child-funding-bar img {
	max-width: 700px;
	width: 100%;
	height: auto;
	display: inline-block;
}

@media (max-width: 600px) {
	.tokyo-child-funding-bar {
		padding: 16px 20px;
	}
	.tokyo-child-funding-bar img {
		max-width: 100%;
	}
}

/* ===== Linki w tresci stron =====
   Ani motyw, ani Elementor nie stylizuja linkow w widgecie text-editor —
   spadaly do domyslnego niebieskiego linku przegladarki (UA). Ujednolicamy
   do palety projektu (mono, bez akcentu koloru): ta sama konwencja co link
   w cookie barze — #767676 + podkreslenie, hover #000000. Scope: linki w
   text-editorach w kolumnie tresci (nie rusza nav / buttonow / info-box). */
.tokyo_fn_content .elementor-widget-text-editor a {
	color: #767676;
	font-weight: 600;
	text-decoration: underline;
	transition: color .3s ease;
}

.tokyo_fn_content .elementor-widget-text-editor a:hover {
	color: #000000;
}
/* ===== Kafelki oferty (Work With Me) =====
   Widget frel-numbered-list (tokyo-core): plugin sklada kafle flexem
   (ul flex+wrap, li 33%/50%/100% + gutter margin-left:-40px/padding-left:40px),
   a .list_inner ma height:auto — flex wyrownuje wysokosci tylko W OBREBIE
   rzedu, wiec rzad 1 i 2 wychodzily rozne. Przechodzimy na grid z
   grid-auto-rows:1fr — wszystkie 6 kafli identyczne. Breakpointy jak w
   pluginie (1040/768); na 1 kolumnie auto-rows wracaja do auto (rozciaganie
   kazdego kafla do najdluzszego wyglada zle na mobile). "Read More" dopiete
   do dolu przez margin-top:auto. Modal (popup) bez zmian — ukryte elementy
   (.popup_service_image / .service_hidden_details / span.hidden_icon) maja
   display:none, wiec nie staja sie grid itemami. */
.fn_cs_numbered_list ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: 1fr;
	gap: 40px;
	margin: 0;
}

.fn_cs_numbered_list ul li {
	width: auto;
	margin: 0;
	padding-left: 0;
	display: flex;
}

.fn_cs_numbered_list ul li .list_inner {
	float: none;
	display: flex;
	flex-direction: column;
	width: 100%;
}

.fn_cs_numbered_list ul li .tokyo_fn_read {
	margin-top: auto;
}

@media (max-width: 1040px) {
	.fn_cs_numbered_list ul {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.fn_cs_numbered_list ul {
		grid-template-columns: 1fr;
		grid-auto-rows: auto;
	}
}

/* Przycisk "Download the offer" w modalu oferty — wstrzykiwany filtrem
   tokyo_child_offer_download_button (functions.php) na koniec
   .service_popup_informations; renderuje sie tylko w popupie (w kaflu caly
   .service_hidden_details ma display:none). Czarny przycisk jak submit CF7
   nizej; jawny color na hover — guard przed regulami linkow motywu. */
.fn_modalbox .service_popup_informations .offer_download {
	/* Siblingi (.image/.main_title/.descriptions) sa float:left — bez
	   clear ten blok zaczyna sie na gorze kontenera pod floatami i margines
	   nie przesuwa przycisku (pozycje line boxa wyznaczaja floaty). Idiom
	   float+width jak u siblingow, zeby BFC kontenera liczyl wysokosc. */
	float: left;
	clear: both;
	width: 100%;
	margin-top: 55px;
	text-align: left;
}

.fn_modalbox .service_popup_informations .offer_download_btn {
	display: inline-block;
	background: #000000;
	color: #ffffff;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	line-height: 50px;
	padding: 0 40px;
	text-decoration: none;
	transition: opacity .3s ease;
}

.fn_modalbox .service_popup_informations .offer_download_btn:hover {
	opacity: .85;
	color: #ffffff;
}

/* Modal ofert dopasowany wysokoscia do tresci (tokyo-core rozciaga box_inner
   na sztywno top/bottom 70px). Centrujemy w pionie przez translate; margin-top
   -20px -> 0 z animacji otwarcia (tokyo-core) dziala bez zmian. description_wrap
   przestaje byc floatem (auto-height rodzica nie obejmuje floatow) i dostaje
   wlasny limit wysokosci — przy dluzszej tresci scrolluje jak dotychczas.
   Fixed paski :before/:after (biale maski scrolla) pozycjonuja sie wzgledem
   box_inner (transform = containing block), wiec zostaja poprawne. */
.fn_modalbox .box_inner {
	top: 50%;
	bottom: auto;
	height: auto;
	transform: translate(-50%, -50%);
}

.fn_modalbox .description_wrap {
	float: none;
	height: auto;
	max-height: calc(100vh - 140px);
	overflow-y: auto;
}

/* ===== Formularz kontaktowy (CF7) =====
   Tokyo styluje tylko pola (border, full width) — submit spadal do stylu UA.
   Czarny przycisk jak CTA/cookie bar (tokeny motywu). */

/* Odstepy miedzy polami przenosimy z inputa (margin-bottom:30px w tokyo/style.css)
   na akapit CF7 — inaczej inline tip walidacji (.wpcf7-not-valid-tip, renderowany
   ZA inputem w tym samym wrapie) laduje 30px pod swoim polem i wyglada, jakby
   nalezal do nastepnego. base.css motywu zeruje .elementor p, wiec margines
   akapitu ustawiamy sami. */
.wpcf7 input:not([type='submit']),
.wpcf7 textarea {
	margin-bottom: 0;
}

.wpcf7 form p {
	margin-bottom: 30px;
}

.wpcf7 form p:last-child {
	margin-bottom: 0;
}

.wpcf7 .wpcf7-not-valid-tip {
	margin-top: 8px;
	font-size: 13px;
}

/* base.css motywu na :focus robi border prawie niewidoczny
   (rgba(255,255,255,.042) na bialym tle) — pole "znika". Przywracamy. */
.wpcf7 input:not([type='submit']):focus,
.wpcf7 textarea:focus {
	border-color: rgba(0, 0, 0, .4);
	background: transparent;
	outline: none;
}

/* base.css motywu daje input[type=submit] height:44px — bez nadpisania tekst
   o linii 50px wystaje z 44px pudelka (przyciety/nisko osadzony napis). */
.wpcf7 input[type="submit"] {
	background: #000000;
	color: #ffffff;
	border: none;
	border-radius: 0;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	text-transform: none;
	height: 50px;
	line-height: 50px;
	padding: 0 40px;
	cursor: pointer;
	transition: opacity .3s ease;
}

.wpcf7 input[type="submit"]:hover {
	opacity: .85;
}
