/* * * * * * * * * * * * * * * * * * * *
 *
 *   @site		infimor.pl
 *   @name		custom.css
 *   @author	Bartosz Machnik
 *   @created	03.2026
 *   @licence	copyright (c) by sitte.pl
 *   @version	1.0.0
 *
 */

:root {
	--bRad: 16px;
	--transition: 0.375s;
	--icon-size: 80px;
}

/* *::selection { background: var(--sppb-main); color: #fff; } */

p:last-child { margin: 0; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { margin: 0; margin-bottom: 0.2em;}

/* reset preset */
.sp-page-title h2::before { background: inherit}
#sp-header.menu-fixed { background: #000;}

/* *:has(> p) {container-type: inline-size;}   */
	/* p{text-align: justify; text-align-last: left; text-justify: inter-word;} */
		/* @container (max-width: 40ch) { p {text-align: left;} } */
		
/* td, p { container-type: inline-size; text-align: justify; hyphens: auto; text-align-last: left;} */
/* @container (max-width: 40ch) { td, p { text-align: left; } }  */
/* @container (max-width: 530px) { td, p, div { text-align: left; } } */

/* domyślne marginesy sekcji */
.sppb-section { padding: 100px 0; }
	@media (max-width: 767px) { .sppb-section { padding: 50px 0; } }
.top0{padding-top:0;}
.bottom0{padding-bottom:0;}
.sppb-section .sppb-section { padding: 0 0; }
.sppb-section:not(.row > .sppb-section) { padding-left: 0; }
.sppb-section.no-bg { background-color: transparent; }

.sp-page-title { background: url('/images/template/gastronomia-czyste-bg.jpg') no-repeat scroll center center / cover; }

/* poprawki globalne */
.sppb-addon-overlay-image:hover a, .sppb-addon-overlay-image:focus a, .sppb-addon-overlay-image:active a { color: #fff; }
.sppb-slideshow-fullwidth-item .bottom-slider-img { display: none; }
.sppb-addon-tab .sppb-nav-tabs { justify-content: center; }
@media (max-width: 767.9007px) { .sppb-addon-tab .sppb-tab .sppb-nav-tabs li a { padding: 13px 20px; }}
@media (max-width: 575.9007px) {
	.sppb-addon-tab .sppb-nav-tabs { flex-direction: column; align-items: center; }
	.sppb-addon-tab .sppb-tab .sppb-nav-tabs li { width: 100%; max-width: 300px; }
}

/* poprawki oryginalnych kształtek z szablonu */
.up-curve-grey::before {
	background-image: none;
	background-color: var(--sppb-color2);
	mask: url("/images/template/up-mask.png") center / contain no-repeat; -webkit-mask: url("/images/template/up-mask.png") center / contain no-repeat;
	mask-size: 100%; mask-position: bottom;
	top: -42px;
}
.down-curve-grey::after {
	background-image: none;
	background-color: var(--sppb-color2);
	mask: url("/images/template/down-mask.png") center / contain no-repeat; -webkit-mask: url("/images/template/down-mask.png") center / contain no-repeat;
	mask-size: 100%; mask-position: top;
	bottom: -42px;
}
/* dodanie własnych kształtek na podstawie tych oryginalnych z szablonu */
.up-curve-black::before {
	content: ''; width: 100%; height: 43px; position: absolute;
	background-color: #000;
	mask: url("/images/template/up-mask.png") center / contain no-repeat; -webkit-mask: url("/images/template/up-mask.png") center / contain no-repeat;
	mask-size: 100%; mask-position: bottom;
	top: -42px;
}
.down-curve-black::after {
	content: ''; width: 100%; height: 43px; position: absolute;
	background-color: #000;
	mask: url("/images/template/down-mask.png") center / contain no-repeat; -webkit-mask: url("/images/template/down-mask.png") center / contain no-repeat;
	mask-size: 100%; mask-position: top;
	bottom: -42px;
}





/* --- header --- */
/* --- menu --- */
#sp-header .social-icons li a, .sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span { color: #fff; }
#offcanvas-toggler > i { color: var(--sppb-main); }
#offcanvas-toggler:hover > i, #offcanvas-toggler:active > i, #offcanvas-toggler:focus > i { color: #fff; }
@media only screen and (max-width: 479px) { #sp-menu { width: 50%; }}
@media (min-width: 992px) { #sp-menu .sp-megamenu-wrapper { display: flex; justify-content: center; }}
/* --- offcanvas --- */
.offcanvas-menu { background: #000; }
/* bordery */
.offcanvas-menu .offcanvas-inner .sp-module ul > li { border-bottom: 1px solid #fff3; }
.offcanvas-menu .offcanvas-inner .sp-module ul > li:last-child { border-bottom: 0; }
.offcanvas-menu .offcanvas-inner .sp-module li.deeper ul > li:first-child { border-top: 1px solid #fff3; }
/* wygląd podmenu */
.offcanvas-menu .offcanvas-inner .sp-module li.deeper ul > li a { font-size: 13px; opacity: 0.666; }
/* wygląd togglera podmenu */
.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler { border: 1px solid #555; padding: 11px 18px; background: #000; }
.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler:hover { background: #fff3 }
/* close offcanvas */
.close-offcanvas { transition: var(--transition); }
.close-offcanvas:hover { background: var(--sppb-main); border-color: var(--sppb-main); }
/* moduły */
.offcanvas-menu .offcanvas-inner .sp-module { padding: 0 20px; }
.offcanvas-menu .offcanvas-inner .sp-module:last-child { margin-bottom: 30px; }
.offcanvas-menu .offcanvas-inner .sp-module.s-off-logo { padding: 30px 15px 0 15px; }
/* definicje kolorów */
.offcanvas-menu .offcanvas-inner .sp-module ul > li ul > li > a:hover, .offcanvas-menu .offcanvas-inner .sp-module ul > li ul > li > a:focus,
.offcanvas-menu .offcanvas-inner .sp-module ul > li a:hover, .offcanvas-menu .offcanvas-inner .sp-module ul > li a:focus,
.offcanvas-menu-toggler:not(.collapsed)
	{ background: #fff3!important; }





/* --- footer --- */
#sp-bottom .bottom-wrapper { padding-top: 30px; border-bottom: 1px solid rgba(255,255,255,0.25); }
#sp-bottom .sppb-icons-group-list a { color: #fff; }
#sp-bottom .sppb-icons-group-list a:hover { color: var(--sppb-main); }
@media (max-width: 767.9007px) {
	#sp-bottom .sppb-icons-group-list { text-align: left; }
	#sp-bottom2 { padding: 20px 0; order: 5; }
}
@media only screen and (max-width: 767px) { #sp-bottom .nav.menu { padding: 0; }}




/* --- buttony --- */
body .sppb-btn.sppb-btn-primary, body .btn.sppb-btn-primary { border: 2px solid var(--sppb-main); background: var(--sppb-main); color: #fff; }
body .sppb-btn.sppb-btn-primary:hover, body .sppb-btn.sppb-btn-primary:active, body .sppb-btn.sppb-btn-primary:focus, body .btn.sppb-btn-primary:hover, body .btn.sppb-btn-primary:active, body .btn.sppb-btn-primary:focus	{ border: 2px solid var(--sppb-color1); background: var(--sppb-color1); color: var(--sppb-main); }

body .sppb-btn.sppb-btn-secondary, body .btn.sppb-btn-secondary { border: 1px solid #000; background: linear-gradient(to bottom, #fff, #faede8); color: #333; position: relative; z-index: 3; }
body .sppb-btn.sppb-btn-secondary::after, body .btn.sppb-btn-secondary::after
	{ content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, #fff, var(--sppb-color-main1)); border-radius: 200px; transition: var(--transition); opacity: 0; z-index: -1; }
body .sppb-btn.sppb-btn-secondary:hover, body .btn.sppb-btn-secondary:hover,
body .sppb-btn.sppb-btn-secondary:active, body .btn.sppb-btn-secondary:active,
body .sppb-btn.sppb-btn-secondary:focus, body .btn.sppb-btn-secondary:focus
	{ border: 1px solid #000; background: linear-gradient(to bottom, #fff, #faede8); color: #333; z-index: 3; }
body .sppb-btn.sppb-btn-secondary:hover::after, body .btn.sppb-btn-secondary:hover::after,
body .sppb-btn.sppb-btn-secondary:active::after, body .btn.sppb-btn-secondary:active::after,
body .sppb-btn.sppb-btn-secondary:focus::after, body .btn.sppb-btn-secondary:focus::after
	{ background: linear-gradient(to bottom, #fff, var(--sppb-color-main1)); opacity: 1; z-index: -1; }
.btn.btn-link, .sppb-btn.btn-link, .sppb-btn.sppb-btn-link { padding: 12px 0; margin: 0; }
.btn.btn-link:hover, .sppb-btn.btn-link:hover, .btn.sppb-btn-link:hover, .sppb-btn.sppb-btn-link:hover,
.btn.btn-link:focus, .sppb-btn.btn-link:focus, .btn.sppb-btn-link:focus, .sppb-btn.sppb-btn-link:focus,
.btn.btn-link:active, .sppb-btn.btn-link:active, .btn.sppb-btn-link:active, .sppb-btn.sppb-btn-link:active
	{ color: #000; }





/* --- nadpisania presetu (?) / template.css --- */
@media only screen and (max-width: 991px) { br { display: initial; }}
/* (taka długa ścieżka to dla pewności, że złapię nią WSZYSTKIE sekcje) */
.major-color-bg4, .top-search-input-wrap .search-bottom-part, .icon-top-wrapper i.search-open-icon, #sp-bottom, #sp-footer, .rhino-skill-section .sppb-progress-bar-wrap .sppb-progress .sppb-progress-bar-warning, .top-search-input-wrap .search-bottom-part, .sppb-slider-fullwidth-wrapper { background: var(--sppb-color1); color: #eee; }
/* wycinki - NA BANK nie łapię tym wszystkich miejsc */
.rhino-home-news .sppb-addon-article .sppb-article-meta time { color: var(--sppb-main); }
.rhino-home-news .sppb-addon-article:hover { background: var(--sppb-main); }
.rhino-home-news .sppb-addon-article:hover h3 a:hover, .rhino-home-news .sppb-addon-article:hover h3 a:focus, .rhino-home-news .sppb-addon-article:hover h3 a:active { color: var(--sppb-color1); opacity: 1; }
.rhino-home-news .sppb-addon-article .sppb-article-introtext { color: #333; }
.rhino-started-with .sppb-row .sppb-col-md-6:nth-child(1) { border-right: 0; }
.about-us-who-we-are .sppb-addon-text-block { padding: 65px 40px;}




/* fixy */
.service-page-feature .sppb-addon-feature.fix1 { background: var(--sppb-main); transition: 0.3s; }
.service-page-feature .sppb-addon-feature.fix1 a { color: #fff; }
.service-page-feature .sppb-addon-feature.fix1 a, .service-page-feature .sppb-addon-feature.fix1 p { transition: none; }
.service-page-feature .sppb-addon-feature.fix1:hover { background: #000; }

.fix2 .sppb-addon-feature .sppb-addon-title a { position: absolute; inset: 0; padding-top: 60.5%; }
.fix2.rhino-feature-section .sppb-addon-feature { position: relative; display: flex; align-items: center; aspect-ratio: 1/1; }
.fix2 .sppb-addon-content { display: flex; flex-direction: column; gap: 25px; }

.fix3 img { width: var(--icon-size); }

.fix4 .sppb-gallery li { position: relative; }
.fix4 .sppb-gallery li::before {
	content: ''; display: block; position: absolute; inset: 15px; opacity: 0; transition: 0.5s;
	background-image: linear-gradient(to bottom, transparent, var(--sppb-main));
}
.fix4 .sppb-gallery li:hover::before { opacity: 0.9; }
.fix4 .sppb-addon-gallery .sppb-gallery li .gallery-info-wrap { left: 30px; right: 30px; }
.fix4 .sppb-addon-gallery .sppb-gallery li:hover .gallery-info-wrap { bottom: 25px; }















