/*
 * jQuery FlexSlider v2.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 */


/* Browser Resets */
.oc-banner7-container .flex-container a:active,
.oc-banner7-container .flexslider a:active,
.oc-banner7-container .flex-container a:focus,
.oc-banner7-container .flexslider a:focus  {outline: none;}
.oc-banner7-container .slides,
.oc-banner7-container .flex-control-nav,
.oc-banner7-container .flex-direction-nav {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* FlexSlider Necessary Styles
*********************************/
.oc-banner7-container .flexslider {
	margin: 0;
	padding: 0;
}
.oc-banner7-container .flexslider .slides > li {
	display: none;
	-webkit-backface-visibility: hidden;
	position: relative;
}
/* Hide the slides before the JS is loaded. Avoids iocge jumping */
.oc-banner7-container .flexslider .slides img {
	display: block;
}
.oc-banner7-container .flex-pauseplay span {
text-transform: capitalize;
}

/* Clearfix for the .slides element */
.oc-banner7-container .slides:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
html[xmlns] .oc-banner7-container .slides {display: block;}
* html .oc-banner7-container .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, ocke sure you
 * include js that eliminates this class on page load */
.no-js .oc-banner7-container .slides > li:first-child {display: block;}


/* FlexSlider Default Theme
*********************************/
.oc-banner7-container .flexslider {
	margin: 0 0 0px 0;
	position: relative;
	zoom: 1;
}
.oc-banner7-container .flex-viewport {
	max-height: 2000px;
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	transition: all 1s ease;
}
.oc-banner7-container .loading .flex-viewport {
	max-height: 300px;
}
.oc-banner7-container .flexslider .slides {zoom: 1;}

.oc-banner7-container .carousel li {
	margin-right: 5px
}

/* Control Nav */
.nivo-controlNav {
	text-align:center;
	padding:0;
}
.nivo-controlNav a {
	cursor:pointer;
}
.nivo-controlNav a.active {
	font-weight:bold;
}
.oc-banner7-container .flex-control-nav,
.nivo-controlNav {
	width: 100%;
	position: absolute;
	bottom: 4%;
}
.oc-banner7-container .flex-control-nav li {
	margin: 0 6px;
	display: inline-block;
	zoom: 1;
	display: inline;
}
.oc-banner7-container .flex-control-paging li a,
.nivo-controlNav a {
	width: 11px;
	height: 11px;
	display: block;
	background: #aaa;
	cursor: pointer;
	text-indent: -9999px;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	-o-border-radius: 100%;
	border-radius: 100%;
	/* box-shadow: inset 0 0 3px rgba(0,0,0,0.3); */
	z-index: 9;
}
.oc-banner7-container .flex-control-paging li a:hover,
.oc-banner7-container .flex-control-paging li a.flex-active,
.nivo-controlNav a:hover,
.nivo-controlNav a.active {
	cursor: pointer;
    height: 10px;
    line-height: 10px;
    width: 10px;
}
.oc-banner7-container .flex-control-thumbs {margin: 5px 0 0; position: static; overflow: hidden;}
.oc-banner7-container .flex-control-thumbs li {width: 25%; float: left; margin: 0;}
.oc-banner7-container .flex-control-thumbs img {width: 100%; display: block; opacity: .7; cursor: pointer;}
.oc-banner7-container .flex-control-thumbs img:hover {opacity: 1;}
.oc-banner7-container .flex-control-thumbs .flex-active {opacity: 1; cursor: default;}
.oc-nivoslider {
	/*overflow: hidden;*/
}
.nivoslider {
	position: relative;
	overflow: hidden;
	height: auto;
	width: 100%;
}
.nivoslider img {
	position: absolute;
	top: 0;
	left: 0;
	display: none;
}
.nivo-controlNav {
    padding: 0px 0;
    text-align: center;
}
.nivo-controlNav a {
    background-color: #ffffff;
    border: 0 none;
    border-radius: 100%;
    cursor: pointer;
    display: inline-block;
    height: 8px;
    line-height: 8px;
    margin: 0 3px;
    position: relative;
    text-indent: -9999px;
    width: 8px;
}
.banner7-caption {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	background: none repeat scroll 0% 0% transparent;
	color: #FFF;
	font-size: 16px;
	z-index: 8;
}
@-webkit-keyframes timeloading {
  from {width: 0;}
  to {width: 100%;}
 }
@keyframes timeloading {
  from {width: 0;}
  to {width: 100%;}
 }
.timeloading{
	position: absolute;
	bottom: 0px;
	left: 0px;
	right: 0;
	background-color: rgba(0, 0, 0, 0.2);
	height: 5px;
	animation: ease-in-out 0s normal none 1 running timeloading;
}
.nivoSlider {
	position:relative;
	width:100%;
	height:auto;
	overflow: hidden;
}
.banner7-content {
	height: 100%;
	position: relative;
}
.banner7-content .text-content {
	position: absolute;
	top: 50%;
	left: 0;
	max-width: 60%;
	text-align: left;
	padding: 0;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.banner7-content.slider-2 .text-content {

}
.banner7-content .title1 {
	font-size: 16px;
	color: #f7d049;
	font-weight: 300;
	text-transform: capitalize;
	line-height: 1;
	margin-top: 0;
	margin-bottom: 0;
	font-family: Arial, 'Helvetica Neue', sans-serif;
}
.banner7-content.slider-2 .title1 {

}
.banner7-content .sub-title {
	font-size: 60px;
	color: #fff;
	font-weight: 400;
	text-transform: capitalize;
	margin-bottom: 3px;
	margin-top: 0;
}
.banner7-content.slider-2 .sub-title {

}
.banner7-content .banner7-des:first-letter{
	text-transform: uppercase;
}
.banner7-content .banner7-des{/* display: inline-block; *//* vertical-align: top; */}

.banner7-content .banner7-des p{
	font-size: 16px;
	margin: auto;
	padding: 0;
	color: #777777;
	text-transform: capitalize;
	font-weight: 300;
	line-height: 24px;
}
.banner7-content .banner7-des p:last-child {
	margin-top: 30px;
}
.banner7-content .banner7-des p span {
	margin-bottom: 10px;
	font-weight: 500;
	color: #f7d049;
	font-size: 30px;
}
.banner7-readmore{
	position: relative;
	z-index: 10;
}

.banner7-readmore a{
	font-size: 13px;
	color: #f7d049;
	line-height: 46px;
	text-transform: uppercase;
	font-weight: 500;
	display: inline-block;
	vertical-align: top;
	padding: 0 45px;
	margin-top: 77px;
	border: 2px solid #f7d049;
	border-radius: 3px;
	background: transparent;
}
.banner7-readmore a:hover {
}
.slider-2 .banner7-readmore a {

}
.banner7-content.slider-1 .banner7-readmore{
	animation: slideInUp 0.5s linear alternate;
	-webkit-animation: slideInUp 0.5s linear alternate;
	-moz-animation: slideInUp 0.5s linear alternate;
}
.banner7-content.slider-2 .banner7-readmore{
	animation: slideInUp 0.5s linear alternate;
	-webkit-animation: slideInUp 0.5s linear alternate;
	-moz-animation: slideInUp 0.5s linear alternate;
}
.banner7-content.slider-3 .banner7-readmore{
	animation: slideInUp 0.5s linear alternate;
	-webkit-animation: slideInUp 0.5s linear alternate;
	-moz-animation: slideInUp 0.5s linear alternate;
}
.banner7-content.slider-2 .title1{
	animation: zoomIn 1s linear alternate;
	-webkit-animation: zoomIn 1s linear alternate;
	-moz-animation: zoomIn 1s linear alternate;
}
.banner7-content.slider-1 .title1{
	animation: rollIn 1s linear alternate;
	-webkit-animation: rollIn 1s linear alternate;
	-moz-animation: rollIn 1s linear alternate;
}
.banner7-content.slider-3 .title1{
	animation: fadeInLeft 1s linear alternate;
	-webkit-animation: fadeInLeft 1s linear alternate;
	-moz-animation: fadeInLeft 1s linear alternate;
}
.banner7-content.slider-1 .banner7-des {
	animation: slideInDown 2s linear alternate;
	-webkit-animation: slideInDown 2s linear alternate;
	-moz-animation: slideInDown 2s linear alternate;
}
.banner7-content.slider-2 .banner7-des{
	animation: bounceIn 2s linear alternate;
	-webkit-animation: bounceIn 2s linear alternate;
	-moz-animation: bounceIn 2s linear alternate;
}
.banner7-content.slider-3 .banner7-des{
	animation: fadeInRight 1.5s linear alternate;
	-webkit-animation: fadeInRight 1.5s linear alternate;
	-moz-animation: fadeInRight 1.5s linear alternate;
}.banner7-content.slider-1 .sub-title  {
	animation: slideInDown 2s linear alternate;
	-webkit-animation: slideInDown 2s linear alternate;
	-moz-animation: slideInDown 2s linear alternate;
}
.banner7-content.slider-2 .sub-title {
	animation: bounceIn 2s linear alternate;
	-webkit-animation: bounceIn 2s linear alternate;
	-moz-animation: bounceIn 2s linear alternate;
}
.banner7-content.slider-3 .sub-title {
	animation: rotateInDownRight 2s linear alternate;
	-webkit-animation: rotateInDownRight 2s linear alternate;
	-moz-animation: rotateInDownRight 2s linear alternate;
}
/* The Nivo Slider styles */
.nivoSlider {
	position:relative;
	width:100%;
	height:auto;
	overflow: hidden;
}
.nivoSlider img {
	position:absolute;
	top:0px;
	left:0px;
	max-width: none;
}
.nivo-main-image {
	display: block !important;
	position: relative !important;
	width: 100% !important;
}

/* If an image is wrapped in a link */
.nivoSlider a.nivo-imageLink {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	border:0;
	padding:0;
	margin:0;
	z-index:8;
	display:none;
	background:transparent; /* Phase 6.1 polish — was 'white'; created visible light stripes during nivoslider slice transitions over dark theme */
	filter:alpha(opacity=0);
	opacity:0;
}

/* Phase 6.1 polish — dark backdrop on slider container only (NOT slices/boxes — those need transparency to reveal slide images underneath during transitions) */
.banner7,
.oc-banner7-container,
.flexslider.oc-nivoslider,
.nivoSlider {
	background-color: #242424 !important;
	position: relative;
}

/* Phase 6.1.9 — slide-image dark overlay/vignette REMOVED per PM 2026-05-22 (hero must show service tiles without darkening) */

/* Phase 6.1 polish (2026-06-05) — hero caption legibility.
   Full-image darkening stays OFF per PM 2026-05-22. Instead: brighten caption copy to
   white, add a strong text-shadow, and place a localized left-to-transparent scrim
   ONLY behind the text box so the headline reads over bright slide areas while the
   equipment photo on the right stays fully visible. */
.banner7-content .sub-title,
.banner7-content .banner7-des p {
	color: #ffffff !important;
}
.banner7-content .title1,
.banner7-content .sub-title,
.banner7-content .banner7-des p {
	text-shadow: 0 2px 10px rgba(0,0,0,0.85), 0 1px 2px rgba(0,0,0,0.9) !important;
}
/* A-bg (2026-06-11): removed the dark gradient scrim behind the hero caption — not in Figma (text sits directly on the photo; legibility kept by .title1/.sub-title/.banner7-des text-shadow above). Padding kept so text position doesn't shift. PM: «це произвол, прибрати». */
.banner7-content .text-content {
	padding: 24px 60px 24px 30px !important;
}

/* Phase 6.1 polish — push slide caption inside image area (was left:0 — text sat on edge boundary) */
.banner7-content .text-content {
	left: 80px !important;
	max-width: 55% !important;
	z-index: 9;
}

/* Phase 6.1 polish — Mirora's text-transform: capitalize made every word in slide caption start with a capital letter ("Heavy Equipment Rental In Kyiv Region"). Restore natural sentence case. Button (banner7-readmore a) keeps uppercase as intended visual accent. */
.banner7-content .title1,
.banner7-content .sub-title,
.banner7-content .banner7-des p {
	text-transform: none !important;
}
/* The slices and boxes in the Slider */
.nivo-slice {
	display:block;
	position:absolute;
	z-index:5;
	height:100%;
	top:0;
}
.nivo-box {
	display:block;
	position:absolute;
	z-index:5;
	overflow:hidden;
}
.nivo-box img { display:block; }

/* Caption styles */
.nivo-caption {
	position: absolute;
	left: 0px;
	top: 0px;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 7;
}
.nivo-caption .container{

}
.nivo-caption p {
	padding:5px;
	margin:0;
}

.nivo-html-caption {
    display:none;
}
/** ocslideshow **/

.banner7 {
	position:relative;
	z-index: 6;
}
.nivo-directionNav i{
	font-size: 12px;
	line-height: inherit;
}
.oc-banner7-container .flex-direction-nav a,
.nivo-directionNav a {
	width: 60px;
	height: 60px;
	margin: -30px 0 0;
	display: block;
	position: absolute;
	top: 50%;
	cursor: pointer;
	font-size: 0;
	z-index: 9;
	background: #1d1d1d;
	border-radius: 100%;
	line-height: 60px;
	text-align: center;
	color: #3e3e3e;
}
.oc-banner7-container .flex-direction-nav .flex-next,
.oc-banner7-container .nivo-directionNav a.nivo-nextNav {
	opacity: 0;
	transition: all 0.3s ease-out;
	right: 10px;
}
.oc-banner7-container .flex-direction-nav .flex-prev,
.oc-banner7-container .nivo-directionNav a.nivo-prevNav {
	left: 10px;
	opacity: 0;
	transition: all 0.3s ease-in-out;
}
.oc-banner7-container:hover .nivo-directionNav a{opacity: 1;}
.oc-banner7-container .flexslider .flex-next:hover,
.oc-banner7-container .nivo-directionNav a.nivo-nextNav:hover,
.oc-banner7-container .flexslider .flex-prev:hover,
.oc-banner7-container .nivo-directionNav a.nivo-prevNav:hover {color: #fff;background: #f7d049;}
.oc-banner7-container .flex-direction-nav .flex-disabled {
	opacity: .3!important;
	filter:alpha(opacity=30);
	cursor: default;
}

.oc-banner7-container .flex-direction-nav a:hover::before,
.oc-banner7-container .nivo-directionNav a:hover::before{

}
.oc-banner7-container .nivo-controlNav a {
	display: inline-block;
	vertical-align: top;
	height: 8px;
	margin: 5px;
	font-size: 0;
	width: 8px;
	cursor: pointer;
	position: relative;
	z-index: 9;
	border-radius: 100%;
	background: #2f2f2f;
	line-height: 10px;
	position: relative;
}
.oc-banner7-container .nivo-controlNav a.active,
.oc-banner7-container .nivo-controlNav a:hover {
	background: #f7d049;
	transform: scale(1.8);
}

/** /ocslideshow **/
/* responsive */
@media(min-width:1600px) {
 	.oc-banner7-container .flex-direction-nav .flex-prev, .oc-banner7-container .nivo-directionNav a.nivo-prevNav {
 		left: 70px;
 	}
 	.oc-banner7-container .flex-direction-nav .flex-next,
	.oc-banner7-container .nivo-directionNav a.nivo-nextNav {
		right: 70px;
	}
 }
@media(max-width:1199px){

	  .banner7-content .title1 {
	    font-size: 1.6vw;
	  }
	  .banner7-content .sub-title {
	    font-size: 5vw;
	  }
	.banner7-content .banner7-des p {
		font-size: 1.6vw;
		line-height: 1.3;
	}
	.banner7-content .banner7-des p:last-child {
		margin-top: 1.5vw;
	}
	.banner7-content .banner7-des p span {
		font-size: 2.4vw;
	}
	.banner7-content .text-content {
		max-width: 60%;
	}
	.banner7-readmore a {
		font-size: 1.3vw;
	    line-height: 3vw;
	    margin-top: 2.5vw;
	    padding: 0 1.5vw;
	}

}
@media(max-width:991px){

}
@media(max-width:767px){
	.nivo-directionNav{
		display: none;
	}

	.oc-banner7-container .flex-control-nav, .nivo-controlNav {
		bottom: 2%;
	}
	.banner7-content .title1 {
	    font-size: 1.8vw;
	  }
	  .banner7-content .sub-title {
	    font-size: 4vw;
	  }
	.banner7-content .banner7-des p {
		font-size: 1.8vw;
	}
	.banner7-content .banner7-des p:last-child {
		margin-top: 1.5vw;
	}
	.banner7-content .banner7-des p span {
		font-size: 2.4vw;
	}
	.banner7-content .text-content {
		max-width: 60%;
	}
	.banner7-readmore a {
		font-size: 1.3vw;
	    line-height: 3vw;
	    margin-top: 2.5vw;
	    padding: 0 1.5vw;
	}
}
@media(max-width:568px){

}
@media(max-width:479px){
	.banner7-content .title1 {
	    font-size: 2vw;
	  }
	  .banner7-content .sub-title {
	    font-size:3.5vw;
			margin: 0;
	  }
	.banner7-content .banner7-des p {
		font-size: 2vw;
	}
	.banner7-content .banner7-des p:last-child {
		margin-top: 1vw;
	}
	.banner7-content .banner7-des p span {
		font-size: 2.4vw;
	}
	.banner7-content .text-content {
		max-width: 60%;
	}
	.banner7-readmore a {
		font-size: 1.8vw;
	    line-height: 3vw;
	    margin-top: 2.5vw;
	    padding: 0 1.5vw;
		border-width: 1px;

	}
}

/* Etap B — HOME hero caption mobile offset (Figma 15:357) (2026-06-17)
   Desktop pushes caption to left:80px (inside the photo). On phones an 80px
   shove cramps the text into the right portion; pull it back to a small inset
   and widen so the hero stays readable at ≤420 (home plan §3.3 / DoD).
   Rollback: git checkout home_page -- catalog/view/theme/tt_mirora1/stylesheet/opentheme/ocslideshow/ocslideshow.css */
@media(max-width:767px){
	.banner7-content .text-content{ left: 24px !important; max-width: 86% !important; }
}
@media(max-width:420px){
	.banner7-content .text-content{ left: 16px !important; max-width: 90% !important; }
}

/* Single static hero (replaces nivoSlider carousel) */
/* Single static hero (replaces nivoSlider carousel) */
.home1 .banner7 {
	width: 100%;
	/*max-width: 100vw;*/
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}
.home1 .banner7 .oc-banner7-container,
.home1 .banner7 .oc-nivoslider,
.home1 .banner7 .oc-hero-single {
	width: 100%;
}
.nivoSlider.oc-hero-single {
	position: relative;
	overflow: hidden;
}
.oc-hero-single .nivo-main-image {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	/*object-fit: cover;*/
	object-fit: inherit;
	object-position: center center;
}
.oc-hero-single .nivo-caption {
	display: block !important;
}
@media(max-width:1280px){
	.oc-hero-single .nivo-main-image {
		object-fit: cover;
	}
}


/* Figma Frame 153 — full-bleed hero slider (edge-to-edge below header) */
.home1 #content,
.home1 main#content {
	overflow-x: clip;
}
.home1 main#content {
	width: 100% !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	float: none !important;
}
.home1 .banner7 {
	width: 100vw !important;
	max-width: 100vw !important;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	padding: 0 !important;
}
.home1 .banner7 .oc-banner7-container,
.home1 .banner7 .flexslider.oc-nivoslider,
.home1 .banner7 .oc-nivoslider,
.home1 .banner7 .oc-hero-single,
.home1 .banner7 #oc-inivoslider1.nivoSlider {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
/* Fixed hero height — nivo defaults to image aspect (1140×380) and looks boxed/cropped wrong */
.home1 .banner7 #oc-inivoslider1.nivoSlider,
.home1 .banner7 .nivoSlider {
	/*height: clamp(380px, 40vw, 560px) !important;*/
	/*min-height: clamp(380px, 40vw, 560px) !important;*/
	/*max-height: none !important;*/

	height: min(40vw, 400px) !important;
	min-height: 280px !important;
	max-height: 400px !important;

	overflow: hidden !important;
}
.home1 .banner7 .nivoSlider img,
.home1 .banner7 .nivoSlider .nivo-main-image {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
	object-position: center right;
}
/* Caption grid — align text with site container, not viewport edge */
@media (min-width: 768px) {
	.home1 .banner7-caption .container {
		width: 100% !important;
		max-width: clamp(1043px, calc(100% - 400px), 1440px) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.home1 .banner7-content .text-content {
		left: 0 !important;
		max-width: 52% !important;
		padding: 0 !important;
	}
}
.home1 .banner7-readmore a {
	margin-top: 28px !important;
}
.nivoSlider.oc-hero-single {
	position: relative;
	overflow: hidden;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	min-height: 320px;
}
@media (min-width: 768px) {
	.nivoSlider.oc-hero-single { min-height: 400px; }
}
@media (min-width: 1200px) {
	.nivoSlider.oc-hero-single { min-height: 450px; }
}
.oc-hero-single .nivo-caption {
	display: block !important;
}


/* Mobile — edge-to-edge hero (no side gutters; nivo JS can shrink the image) */
@media (max-width: 767px) {
	.home1 main#content,
	.home1 #content {
		padding-left: 0 !important;
		padding-right: 0 !important;
		overflow-x: hidden;
	}
	.home1 .banner7 {
		width: 100% !important;
		max-width: none !important;
		left: 0 !important;
		right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.home1 .banner7 .oc-banner7-container,
	.home1 .banner7 .flexslider.oc-nivoslider,
	.home1 .banner7 .oc-nivoslider,
	.home1 .banner7 #oc-inivoslider1.nivoSlider {
		width: 100% !important;
		max-width: 100% !important;
	}
	.home1 .banner7 #oc-inivoslider1.nivoSlider,
	.home1 .banner7 .nivoSlider {
		height: clamp(300px, 72vw, 440px) !important;
		min-height: clamp(300px, 72vw, 440px) !important;
	}
	.home1 .banner7 .nivoSlider img,
	.home1 .banner7 .nivoSlider .nivo-main-image {
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		min-width: 100% !important;
		max-width: none !important;
		height: 100% !important;
		min-height: 100% !important;
		margin: 0 !important;
		object-fit: cover !important;
		object-position: center center !important;
	}
	.home1 .banner7-caption .container {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 16px !important;
		padding-right: 16px !important;
		margin: 0 !important;
	}
	.home1 .banner7-content .text-content {
		left: 16px !important;
		right: 16px !important;
		max-width: none !important;
		width: auto !important;
		text-align: center !important;
		transform: translateY(-50%) !important;
	}
	.home1 .banner7-readmore {
		text-align: center;
	}
}
