/*
Theme Name: Amped Rentals
Author:     Northsail Studio
Version:    0.0.1
*/

#page { overflow:hidden; position:relative; }

#overlay { background-color:rgba(0, 0, 0, 0.5); height:100%; left:0; opacity:0; position:fixed; top:0; transition:all 0.3s; visibility:hidden; width:100%; z-index:100; }
.show-mobile-menu #overlay { opacity:1; visibility:visible; }

.container { padding:0 30px; width:1500px; max-width:100%; margin:0 auto; }
.container.wide { padding:0; width:1560px; max-width:100%; margin:0 auto; }

.swiper { display:none; }
.swiper.swiper-initialized { display:block; }

.with_frm_style .frm_error_style p, .with_frm_style .frm_message p, .frm_success_style p { margin-bottom:0; }

.frm_style_formidable-style.with_frm_style .frm_error, .frm_style_formidable-style.with_frm_style .frm_limit_error { color:#a94442; }

.frm_forms .frm_rootline input { font-size:18px; font-weight:700; }
.frm_style_formidable-style.with_frm_style .frm_rootline input, .frm_style_formidable-style.with_frm_style .frm_rootline input:hover { border-radius:50%; width:60px; height:60px; }

.frm_rootline_title { font-size:18px; }

.frm_current_page .frm_rootline_title { color:#000; }

.with_frm_style .frm_error_style, .with_frm_style .frm_message, .frm_success_style { padding:18px; }

.frm_style_formidable-style.with_frm_style .frm-show-form .frm_section_heading h3 { text-align:center; }

.frm_combo_inputs_container { margin-bottom:-30px; }

/* Header */
#header { background-color:#fff; position:relative; z-index:101; }

#header .navigation { display:flex; justify-content:flex-end; position:relative; }

#header .logo { position:absolute; top:0; left:0; min-width:108px; width:10%; z-index:1; }
#header .logo img { background-color:#fff; border-bottom-left-radius:6px; border-bottom-right-radius:6px; box-shadow:3px 3px 3px rgba(0, 0, 0, 0.15); display:block; padding:15px; transition:transform 0.3s; }
#header .logo a:hover img { transform:scale(1.05); }

#header .navigation .menu ul { display:flex; gap:45px; list-style-type:none; margin-bottom:0; padding-left:0; white-space:nowrap; }
#header .navigation .menu ul li { line-height:90px; position:relative; }
#header .navigation .menu ul li a { color:#000; display:flex; align-items:center; gap:6px; justify-content:space-between; text-decoration:none; }

#header .navigation .menu ul li::after { background-color:#ffc306; content:''; display:block; position:absolute; bottom:0; left:50%; transition:width 0.3s; transform:translateX(-50%); width:0; height:3px; }
#header .navigation .menu ul li.current-menu-item::after, #header .navigation .menu ul li.current-menu-ancestor::after, #header .navigation .menu ul li.hover::after { width:100%; }

#header .navigation .menu ul li.menu-item-has-children > a::after { content:'\f107'; font-family:'Font Awesome 6 Pro'; font-size:16px; font-weight:400; }

#header .navigation .menu .sub-menu { background-color:#fff; border-radius:6px; box-shadow:3px 3px 9px rgba(0, 0, 0, 0.15); display:none; min-width:100%; position:absolute; top:100%; left:0; }
#header .navigation .menu .sub-menu li { font-size:16px; line-height:1; }
#header .navigation .menu .sub-menu li:first-child > a { border-top-left-radius:6px; border-top-right-radius:6px; }
#header .navigation .menu .sub-menu li:last-child > a { border-bottom-left-radius:6px; border-bottom-right-radius:6px; }
#header .navigation .menu .sub-menu li a { padding:15px; gap:15px; transition:background-color 0.3s; }
#header .navigation .menu .sub-menu li a:hover { background-color:#f5f5f5; }

#header .navigation .menu .sub-menu li::after { content:none; }

#header .navigation .menu .sub-menu li.menu-item-has-children > a::after { content:'\f061'; }

#header .navigation .menu .sub-menu .sub-menu { top:0; left:100%; }

#header .mobile-menu-toggle { display:none; padding:9px 0; }
#header .mobile-menu-toggle a { background-color:#60a822; border-radius:50%; color:#fff; display:block; text-align:center; text-decoration:none; transition:transform 0.3s; width:54px; height:54px; line-height:54px; }
#header .mobile-menu-toggle a::before { content:'\f0c9'; font-family:'Font Awesome 6 Pro'; font-size:24px; font-weight:900; }
.show-mobile-menu #header .mobile-menu-toggle a::before { content:'\f00d'; }
#header .mobile-menu-toggle a:hover { transform:scale(1.05); }

#header .mobile-menu { background-color:#fff; display:none; padding-top:54px; position:absolute; top:100%; left:0; width:100%; }

#header .mobile-menu .menu ul { list-style-type:none; margin-bottom:0; padding-left:0; white-space:nowrap; }
#header .mobile-menu .menu ul li { border-top:1px solid #f2f2f2; font-weight:400; line-height:60px; }
#header .mobile-menu .menu ul li a { color:#000; display:block; overflow:hidden; padding:0 15px; text-overflow:ellipsis; text-decoration:none; transition:background-color 0.3s; }
#header .mobile-menu .menu ul li a:hover, #header .mobile-menu .menu ul li.active > a { background-color:#f5f5f5; }

#header .mobile-menu .menu ul li.menu-item-has-children > a { padding-right:0; }

#header .mobile-menu .menu ul li a .sub-menu-toggle { display:none; float:right; height:60px; margin-left:15px; text-align:center; transition:background-color 0.3s; width:60px; }
#header .mobile-menu .menu ul li.menu-item-has-children > a .sub-menu-toggle { display:block; }
#header .mobile-menu .menu ul li a .sub-menu-toggle::before { content:'\f105'; font-family:'Font Awesome 6 Pro'; }
#header .mobile-menu .menu ul li.active > a .sub-menu-toggle::before { content:'\f107'; }
#header .mobile-menu .menu ul li a .sub-menu-toggle:hover { background-color:rgba(0, 0, 0, 0.1); }

#header .mobile-menu .menu .sub-menu { display:none; }
#header .mobile-menu .menu .sub-menu li { border-top:1px solid #f2f2f2; font-size:16px; font-weight:400; }

/* Body */
#body .layout { margin-bottom:90px; }

/* Home Header */
#home-header { margin-bottom:90px; padding-bottom:60px; }

#home-header .block { aspect-ratio:13 / 5; background-position:center; background-size:cover; border-radius:12px; display:flex; gap:30px; position:relative; width:100%; }
#home-header .block .container { display:flex; align-items:center; }

#home-header .content { display:flex; flex-direction:column; gap:1em; padding:60px 0 30px; width:50%; }

#home-header .heading { color:#fff; font-size:3.6em; font-weight:700; line-height:1; text-shadow:3px 3px 3px rgba(0, 0, 0, 0.3); }

#home-header .button { font-size:18px; }

#home-header .image { position:absolute; bottom:-25%; right:-10%; width:60%; }
#home-header .image img { display:block; }

/* Interior Header */
#interior-header { margin-bottom:90px; }

#interior-header .block { aspect-ratio:13 / 3; background-position:center; background-size:cover; border-radius:12px; display:flex; min-height:120px; width:100%; }
#interior-header .block .container { display:flex; align-items:flex-end; }

#interior-header h1 { color:#fff; margin-bottom:0.6em; text-shadow:3px 3px 3px rgba(0, 0, 0, 0.3); }

/* Layout > Text */
.layout.text .columns { column-gap:60px; margin:0 auto; max-width:100%; }

.layout.text .columns.two { column-count:2; }
.layout.text .columns.three { column-count:3; }

.layout.text .columns > *:last-child { margin-bottom:0; }

/* Layout > Text + Media */
.layout.text-media .container { display:flex; column-gap:90px; row-gap:60px; align-items:center; }
.layout.text-media.media-right .container { flex-direction:row-reverse; }

.layout.text-media .text { flex-basis:0; flex-grow:1; min-width:calc(50% - 45px); }
.layout.text-media .text > *:last-child { margin-bottom:0; }

.layout.text-media .media { max-width:100%; min-width:0; }

.layout.text-media .image img { border-radius:9px; display:block; }

.layout.text-media .video iframe { aspect-ratio:16 / 9; width:600px; max-width:100%; }

/* Layout > Separator */
.layout.separator .arrow { text-align:center; }
.layout.separator .arrow::before { color:#60a822; content:'\f078'; font-family:'Font Awesome 6 Pro'; font-size:60px; line-height:1; }

/* Layout > FAQs */
.layout.faqs .question { background-color:#f4f4f4; border:1px solid #dfdfdf; border-radius:6px; color:#000; cursor:pointer; display:flex; gap:15px; justify-content:space-between; margin-bottom:3px; padding:15px; transition:background-color 0.3s, border-color 0.3s, color 0.3s; }
.layout.faqs .question::after { content:'\f105'; font-family:'Font Awesome 6 Pro'; font-weight:900; }
.layout.faqs .question:hover { background-color:#dfdfdf; }
.layout.faqs .question.active { background-color:#60a822; border-color:#60a822; color:#fff; }
.layout.faqs .question.active::after { content:'\f107'; }

.layout.faqs .answer { display:none; padding:30px 15px; }

/* Layout > Blocks */
.layout.blocks h2 { margin-bottom:60px; text-align:center; }

.layout.blocks .blocks { border-radius:12px; display:flex; flex-wrap:wrap; justify-content:center; overflow:hidden; }

.layout.blocks .block { aspect-ratio:1; display:flex; align-items:center; width:312px; }

.layout.blocks .block.green { background-color:#60a822; color:#fff; }
.layout.blocks .block.blue { background-color:#0088a8; color:#fff; }
.layout.blocks .block.yellow { background-color:#ffc306; color:#000; }

.layout.blocks .block .text { display:flex; flex-direction:column; gap:12px; padding:30px; text-align:center; }

.layout.blocks .block .icon { font-size:30px; line-height:1; }

.layout.blocks .block .title { font-size:21px; font-weight:700; line-height:1; }

.layout.blocks .block .description { font-size:16px; line-height:1.2; }

.layout.blocks .block img { aspect-ratio:1; display:block; object-fit:cover; width:100%; }

/* Layout > Features */
.layout.features { text-align:center; }

.layout.features .heading { background-color:#60a822; border-radius:12px; color:#fff; font-size:21px; font-weight:700; letter-spacing:3px; margin-bottom:60px; padding:30px 0; position:relative; text-transform:uppercase; }
.layout.features .heading::after { border-left:18px solid transparent; border-right:18px solid transparent; border-top:18px solid #60a822; content:''; position:absolute; top:100%; left:50%; transform:translateX(-18px); width:0; height:0; }

.layout.features .feature { display:flex; flex-direction:column; gap:30px; }

.layout.features .feature .image img { aspect-ratio:1; border-radius:50%; display:block; margin:0 auto; object-fit:cover; opacity:0.3; transform:scale(0.9); transition:opacity 0.6s, transform 0.6s; width:240px; }
.layout.features .swiper-slide-active .feature .image img { opacity:1; transform:scale(1); }

.layout.features .feature .content { display:flex; flex-direction:column; gap:6px; opacity:0; transition:opacity 0.6s; }
.layout.features .swiper-slide-active .feature .content { opacity:1; }

.layout.features .feature .title { font-size:24px; font-weight:700; line-height:1.2; }

.layout.features .arrows { display:inline-flex; gap:12px; margin-top:48px; }
.layout.features .arrows a { background-color:#ffc306; border-radius:6px; color:#000; display:block; font-size:24px; width:48px; height:48px; line-height:48px; transition:transform 0.3s; }
.layout.features .arrows a:hover { transform:scale(1.05); }

/* Layout > Contact Boxes */
.layout.contact-boxes .boxes { display:flex; justify-content:center; gap:30px; flex-wrap:wrap; text-align:center; }

.layout.contact-boxes a { aspect-ratio:1; border:1px solid #e6e6e6; border-radius:9px; color:#000; display:flex; flex-direction:column; gap:12px; align-items:center; justify-content:center; font-size:21px; text-decoration:none; transition:background-color 0.3s, color 0.3s; width:300px; max-width:100%; padding:12px; }
.layout.contact-boxes a:hover { background-color:#60a822; color:#fff; }

.layout.contact-boxes a i { background-color:#60a822; border-radius:50%; color:#fff; font-size:24px; width:54px; height:54px; line-height:54px; transition:background-color 0.3s; }
.layout.contact-boxes a:hover i { background-color:#358113; }

.layout.contact-boxes a span { overflow:hidden; text-overflow:ellipsis; width:100%; }

/* Footer */
#footer { border-top:1px solid #f2f2f2; line-height:1; text-align:center; }

#footer .top { padding:45px 0; }
#footer .top .container { display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; }

#footer .logo img { width:300px; vertical-align:bottom; }

#footer .callout { display:flex; align-items:center; column-gap:30px; row-gap:12px; }
#footer .callout .heading { font-size:36px; }

#footer .bar { background-color:#60a822; border-radius:12px; margin-bottom:30px; padding:30px 0; }
#footer .bar .container { display:flex; gap:30px; align-items:center; justify-content:space-between; flex-wrap:wrap; }

#footer .menu ul { display:flex; column-gap:30px; row-gap:6px; list-style-type:none; margin-bottom:0; padding-left:0; white-space:nowrap; }
#footer .menu ul li a { color:#fff; text-decoration:none; }
#footer .menu ul li a:hover { text-decoration:underline; }

#footer .contact { display:flex; align-items:center; column-gap:30px; row-gap:6px; }
#footer .contact a { color:#fff; text-decoration:none; }
#footer .phone { font-size:24px; font-weight:700; }
#footer .email a:hover { text-decoration:underline; }

#footer .bottom .container { display:flex; align-items:center; justify-content:space-between; column-gap:30px; row-gap:6px; font-size:14px; padding-bottom:30px; }

/* Media Queries */
@media (max-width:1439px) {
	/* Home Header */
	#home-header { font-size:16px; }

	/* Interior Header */
	#interior-header { font-size:16px; }
}

@media (max-width:1199px) {
	/* Home Header */
	#home-header { font-size:14px; }

	/* Interior Header */
	#interior-header { font-size:14px; }
}

@media (max-width:991px) {
	.container { padding:0 15px; }

	/* Header */
	#header .navigation .menu ul li { font-size:16px; line-height:75px; }

	/* Home Header */
	#home-header { font-size:12px; }

	/* Interior Header */
	#interior-header { font-size:12px; }

	/* Layout > Text */
	.layout.text .columns.three { column-count:2; }

	/* Layout > Text + Media */
	.layout.text-media .container, .layout.text-media.media-right .container { flex-direction:column-reverse; }

	/* Footer */
	#footer .top .container { flex-direction:column; }
	
	#footer .callout { flex-direction:column; }

	#footer .bar .container { flex-direction:column; }

	#footer .menu ul { flex-wrap:wrap; justify-content:center; }

	#footer .contact { flex-wrap:wrap; justify-content:center; }
}

@media (max-width:767px) {
	.column-break { break-before:auto; }

	/* Header */
	#header .navigation .menu { display:none; }	

	#header .mobile-menu-toggle { display:block; }

	/* Home Header */
	#home-header { padding-bottom:0; }

	#home-header .block { flex-direction:column; align-items:center; }

	#home-header .content { text-align:center; width:100%; }

	#home-header .image { position:static; margin-bottom:-15%; width:100%; }

	/* Interior Header */
	#interior-header { font-size:10px; }

	/* Layout > Text */
	.layout.text .columns.two, .layout.text .columns.three { column-count:1; }

	/* Footer */
	#footer .bottom .container { flex-direction:column; }
}

@media (max-width:575px) {
	.alignleft, .alignright { display:block; float:none; margin:0 0 30px; }

	/* Interior Header */
	#interior-header { font-size:8px; }
}