/* ----------------------------------------------------------------
	Canvas: Home
-----------------------------------------------------------------*/

:root {
	--cnvs-themecolor: #4B5333;
	--cnvs-themecolor-rgb: 75, 83, 51;

	--cnvs-body-font: neue-haas-grotesk-display, sans-serif;
	--cnvs-primary-font: new-kansas, sans-serif;

	--cnvs-body-bg: #FEFAF2;
}

#header {
	--cnvs-primary-menu-font-weight: 500;
	--cnvs-primary-menu-tt:	none;
	--cnvs-primary-menu-ls:	0;
	--cnvs-primary-menu-font-size: 1.15rem;
	--cnvs-primary-menu-color: var(--cnvs-contrast-800);
}

.is-expanded-menu .menu-link {
	--cnvs-primary-menu-padding-x: 20px;
}

.hero-image-one {
	--cnvs-hero-img-w: 170px;
	--cnvs-hero-img-h: 64px;
	--cnvs-hero-img: url('home/images/hero-title.jpg');
	position: relative;
	display: inline-flex;
    justify-content: center;
    align-items: center;
	width: var(--cnvs-hero-img-w);
    height: var(--cnvs-hero-img-h);
    background-image: var(--cnvs-hero-img);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 40px;
}

.hero-image-one.size-sm {
	--cnvs-hero-img-w: 120px;
	--cnvs-hero-img: url('home/images/hero-title-2.jpg');
}

.hero-image-one.square {
	--cnvs-hero-img: url('home/images/hero-title-3.jpg');
}



@-webkit-keyframes rotating /* Safari and Chrome */ {
	from {
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
  @keyframes rotating {
	from {
		-ms-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-ms-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
.rotating {
	-webkit-animation: rotating 20s linear infinite;
	-moz-animation: rotating 20s linear infinite;
	-ms-animation: rotating 20s linear infinite;
	-o-animation: rotating 20s linear infinite;
	animation: rotating 20s linear infinite;
}

.circular-text {
	display: inline-flex;
	width: 180px;
    height: 180px;
	border-radius: 50%;
    align-items: center;
    justify-content: center;
}

.fbox-md {
	--cnvs-featured-box-padding-x: 0;
    --cnvs-featured-box-icon: 3.5rem;
    --cnvs-featured-box-icon-size: 1.25rem;
}

.fbox-md .fbox-icon {
    width: var(--cnvs-featured-box-icon);
    height: var(--cnvs-featured-box-icon);
}

.contact-arrow {
	display: none;
}

.device-up-md .contact-arrow {
	display: block;
	position: absolute;
    width: 130px;
    top: 90px;
    right: -130px;
    rotate: 80deg;
    opacity: .1;
}

.section-contact .fbox-icon {
    --cnvs-featured-box-icon: 2.5rem;
    --cnvs-featured-box-icon-size: 1rem;
}
/* ----------------------------------------------------------------
	ADDITIVE — what the design states through an engine this theme does
	not ship. Every value below is transcribed from the design's own
	declaration, named in the comment beside it; nothing is invented.
-----------------------------------------------------------------*/

/* The design's header carries `transparent-header`, whose whole effect on a
   header that sits in the page flow is these two declarations (style.css
   `.is-expanded-menu #header.transparent-header` and its `#header-wrap`
   companion). The class itself needs an `include-header` sibling to be
   delivered safely, which this design has none of. */
#header {
	--cnvs-header-bg: transparent;
}

#header:not(.sticky-header) #header-wrap {
	border-bottom-color: transparent;
}

/* Slider navigation. The design positions these with per-layer coordinates its
   own engine resolves in JavaScript; the theme's slider draws the same two
   controls and the same counter, so they are placed here with the design's own
   numbers. `min(Xpx, Yvh)` reproduces the engine's own layer scaling
   (reference grid height 900, so 1vh = 9px) and its cap at the authored size. */
#slider .slider-arrow-left,
#slider .slider-arrow-right {
	top: auto;
	left: auto;
	right: min(80px, 16.667vw, 8.889vh);			/* static layer 29 xo:80px */
	width: min(80px, 16.667vw, 8.889vh);			/* static layer 30 data-width:80 */
	height: min(80px, 16.667vw, 8.889vh);
	background-color: transparent;
	border: 1px solid rgba(255, 255, 255, 0.25);		/* static layer 30 boc */
	border-radius: 50%;					/* static layer 30 bor:50% */
	transform: none;
}

#slider .slider-arrow-left {
	bottom: min(195px, 40.625vw, 21.667vh);			/* 100px + 80px + the 15px gap */
}

#slider .slider-arrow-right {
	bottom: min(100px, 20.834vw, 11.112vh);			/* static layer 29 yo:100px */
}

#slider .slider-arrow-left:hover,
#slider .slider-arrow-right:hover {
	background-color: transparent !important;
	border-color: #fff;					/* static layer 30 frame_hover boc */
}

#slider .slider-arrow-left i,
#slider .slider-arrow-right i {
	height: 100%;
	line-height: min(80px, 16.667vw, 8.889vh);
	font-size: min(30px, 4.584vw, 3.334vh);			/* static layer 30 s:30, level-4 s:22 */
	color: #fff;
}

#slider .slide-number {
	display: flex;
	align-items: baseline;
	right: auto;
	left: calc(75% + min(60px, 4.584vw, 6.667vh));		/* layer 35 x:r w:25% + layer 33 xo:60px */
	bottom: min(100px, 20.834vw, 11.112vh);			/* static layer 33 yo:100px */
	width: auto;
	height: auto;
	opacity: 1;
	color: #fff;
}

#slider .slide-number-current,
#slider .slide-number-total {
	position: static;
}

#slider .slide-number-current {
	font-family: var(--cnvs-primary-font);			/* static layer 34 font-family */
	font-size: min(35px, 5.209vw, 3.89vh);			/* static layer 34 s:35, level-4 s:25 */
	line-height: min(50px, 6.25vw, 5.556vh);
	letter-spacing: -1px;
	font-weight: 500;
	padding-right: min(10px, 0.834vw, 1.112vh);		/* static layer 34 padding r:10 */
}

#slider .slide-number-total,
#slider .slide-number span {
	font-size: min(15px, 5.209vw, 1.667vh);			/* static layer 3 s:15, level-4 s:25 */
	line-height: min(40px, 6.25vw, 4.445vh);
	letter-spacing: 1px;
}

/* The design hides its slide counter on a phone (static layer 33
   `data-vbility="t,f,t,f"`). Its level-2 hide, between 1024 and 1239, has no
   framework breakpoint and is not reproduced. */
@media (max-width: 575.98px) {
	#slider .slide-number {
		display: none;
	}
}
