/*
	Theme Name: Akutan 2025
	Theme URI: http://www.acsquantumdesign.com/
	Author: Elly Cabral
	Version: 2025.5.22
	Author URI: http://www.acsquantumdesign.com/
	Description: This theme was built in 2025 using HTML5 and CSS3. It is fully responsive, adjusting to various screen sizes and optimizing the view appropriately. It is also ADA compliant up to Level AA and WCAG 2.2 standards.
*/

/* FONTS */
	@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
	/* 
		font-family: "Inter", sans-serif;
	*/

/* GENERAL */
	div#access_tools {
		display: none;
	}
	body {
		font: normal 400 16px/26px "Inter", sans-serif;
		margin: 0;
		padding: 0;
		background: #fefaf1;
		color: #4a4a4a;
	}
	p {
		font: normal 400 1em/1.6em "Inter", sans-serif;
		padding: 0 0 15px 0;
		margin: 0;
		color: #4a4a4a;
	}
	a {
		color: #14424c;
		transition: .1s all ease-out;
	}
	a:hover {
		color: #dd5929;
		text-decoration: underline;
	}
	h1, h2, h3, h4, h5, h6 {
		font-family: "Inter", sans-serif;
		font-weight: 700;
		margin: 0;
		color: #1a1a1a;
		line-height: 1.2em;
	}
	h1 {
		padding: 0 0 20px 0;
		font-size: 3em;
	}
	h2 {
		padding: 0 0 20px 0;
		font-size: 2.25em;
	}
	h3 {
		padding: 0 0 18px 0;
		font-size: 1.875em;
	}
	h4 {
		padding: 0 0 18px 0;	
		font-size: 1.5em;
	}
	h5 {
		padding: 0 0 15px 0;
		font-size: 1.33em;
	}
	h6 {
		padding: 0 0 15px 0;
		font-size: 1em;
	}
	.wp-block-button .wp-block-button__link,
	.button {
		font: normal 400 0.875em/1em "Inter", sans-serif;
		text-transform: uppercase;
		padding: 10px;
		display: inline-block;
		cursor: pointer;
		text-decoration: none;
		letter-spacing: 0.15em;
		border-radius: 0;
		color: #fff;
		background: #ccb187;
		transition: .2s all ease-out;
	}
	.wp-block-button .wp-block-button__link:hover,
	.button:hover {
		text-decoration: none;
		color: #fff;
		background: #977744;
	}
	mark.has-inline-color {
		padding: 10px;
		font: normal 400 0.875em/1em "Inter", sans-serif;
		text-transform: uppercase;
		letter-spacing: 0.15em;
		margin-bottom: 10px;
		display: inline-block;
	}
	ul, ol {
		margin: 0 0 20px 20px;
	}
	ul ul, ul ol,
	ol ol, ol ul {
		margin-bottom: 0;
	}
	.wp-block-separator,
	hr {
		border-top: 0;
		border-left: 0;
		border-right: 0;
		border-bottom: 1px solid #e0e0e0;
	}
	strong {
		color: #1a1a1a;
		font-weight: bold;
	}
	.main.wrap,
	.hero-wrap .info,
	.footer.wrap {
		width: 90%;
		max-width: 1400px;
		margin: 0 auto;
	}
	.wp-block-columns:where(.wp-block-columns.is-layout-flex) {
		gap: 100px;
	}
	
/* HEADER */
	header {
		width: 100%;
		clear: both;
		position: fixed;
		top: 0;
		left: 0;	
		z-index: 9;
		background: none;
	}
	.main-wrap {
		width: 100%;
		position: relative;
		padding: 20px 0;
		transition: .8s all ease;
	}
	.main-wrap:after {
		width: 100%;
		height: 78px;
		background: #1a1a1a;
		content: "";
		display: block;
		position: absolute;
		top: calc(50% - 39px);
		box-shadow: 0 5px 0 #1a1a1a inset,
		0 6px 0 rgba(247, 226, 194, .4) inset,
		0 -5px 0 #1a1a1a inset,
		0 -6px 0 rgba(247, 226, 194, .4) inset;
		z-index: 1;
	}
	.main.wrap {
		display: flex;
		flex-direction: row;
		align-items: center;
		position: relative;
		z-index: 2;
	}
	#logo {
		width: auto;
		max-width: 25%;
		transition: .8s all ease;
	}
	#logo img {
		max-width: 100%;
		height: auto;
	}
	#logo * {
		margin: 0;
		padding: 0;
		line-height: 0;
	}
	#primary {
		width: auto;
		margin-left: 50px;
	}
	header.stick #logo {
		max-width: 12%;
		transition: .5s all ease;
	}
	header.stick .main-wrap {
		padding: 10px 0;
		transition: .5s all ease;
	}
	
/* MENU - PRIMARY */
	/* Primary Base */
	nav ul, ul.menu { padding: 0; margin: 0; list-style: none;}
	nav ul li, ul.menu li { display: inline-block; position: relative; padding: 0; list-style: none; -moz-text-size-adjust: none; -ms-text-size-adjust: none; -webkit-text-size-adjust: none; }
	nav ul li a, ul.menu li a { display: block; text-decoration: none; }	
	nav ul li:hover a, nav ul li.current-menu-item a, nav ul li.current-menu-ancestor a, nav ul li.current_page_parent a, nav ul li ul.sub-menu, 
	ul.menu li:hover a, ul.menu li.current-menu-item a, ul.menu li.current-menu-ancestor a, ul.menu li.current_page_parent a, ul.menu li ul.sub-menu { outline: none; }
	/* 2nd level nav */
	nav ul li li, ul.menu li li { padding: 0; }
	nav ul li ul.sub-menu, ul.menu li ul.sub-menu { left: -9999px; position: absolute; opacity: 0; min-width: 200px; }
	nav ul li:hover ul.sub-menu, nav ul li.active ul.sub-menu, nav ul li a:focus + ul.sub-menu,
	ul.menu li:hover ul.sub-menu, ul.menu li.active ul.sub-menu, ul.menu li a:focus + ul.sub-menu { left: auto; opacity: 1; z-index: 9999; }
	nav ul li.right-submenu:hover ul.sub-menu, nav ul li:last-child:hover ul.sub-menu, nav ul li.active:last-child ul.sub-menu, nav ul li a:last-child:focus + ul.sub-menu,
	ul.menu li.right-submenu:hover ul.sub-menu, ul.menu li:last-child:hover ul.sub-menu, ul.menu li.active:last-child ul.sub-menu, ul.menu li a:last-child:focus + ul.sub-menu { left: auto; right: 0; }
	nav ul li ul.sub-menu li, ul.menu li ul.sub-menu li { display: block; height: auto; }
	/* 3rd level nav */
	nav ul li ul.sub-menu li ul.sub-menu, ul.menu li ul.sub-menu li ul.sub-menu { left: -9999em; top: 0; }
	nav ul li ul.sub-menu li:hover ul.sub-menu, ul.menu li ul.sub-menu li:hover ul.sub-menu { left: 100%; opacity: 1; }
	#primary nav ul li a, 
	#primary ul.menu li a {
		color: #fff;
		padding: 0 18px;
	}
	#primary nav ul li:first-child a, 
	#primary ul.menu li:first-child a {
		padding-left: 0;
	}
	#primary nav ul li:last-child a, 
	#primary ul.menu li:last-child a {
		padding-right: 0;
	}
	#primary nav ul li.current-menu-item a, 
	#primary nav ul li.current_page_item a, 
	#primary ul.menu li.current-menu-item a,
	#primary ul.menu li.current_page_item a {
		color: #f7e2c2;
	}
	
/* MENU - LINES */
	#navbtn {
		display: none;
		position: relative;
		width: auto;
		text-align: right;
		float: right;
		clear: both;
		overflow: hidden;
		padding: 15px;
		height: 52px;
		background: none;
		border: 0;
	}
	#navbtn span {
		font-size: 0;
	}
	.lines {
		clear: both;
		text-align: center;
		width: 35px;
		height: 22px;
		margin: 0 auto;
		cursor: pointer;
		float: right;
	}
	.lines .line {
		background-color: #fff;
		height: 4px;
	}
	.lines .line.one {
		width: 100%;
	}
	.lines .line.two {
		width: 68%;
		margin: 5px 0;
	}
	.lines .line.three {
		width: 85%;
	}
	.lines:hover .line.one {
		width: 85%;
	}
	.lines:hover .line.two {
		width: 100%;
	}
	.lines:hover .line.three {
		width: 68%;
	}
	.open .lines .line.two {
		display: none;
	}
	.open .lines .line.one {
		width: 90%;
		margin: 9px 0 0 0;
		transform: rotate(45deg);
	}
	.open .lines .line.three {
		width: 90%;
		margin: -4px 0 0 0;
		transform: rotate(-45deg);
	}

/* HERO */
	.hero-wrap {
		position: relative;
		clear: both;
		overflow: hidden;
	}
	.hero-wrap #hero {
		position: relative;
	}
	.hero-wrap ul, .hero-wrap li {
		padding: 0;
		margin: 0;
		list-style: none;
		min-height: 100vh;
	}
	.hero-wrap .widget_hero_slideshow > p {
		display: none;
	}
	.hero-wrap .splide__slide__container,
	.hero-wrap.featured #hero figure {
		width: 100%;
		top: 0;
		left: 0;
		height: 100%;
		min-height: 100%;
		position: absolute;
	}
	.hero-wrap.featured #hero figure img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.hero-wrap .info {
		position: relative;
		display: flex;
		flex-direction: row;
		justify-content: flex-end;
		align-items: center;
		min-height: 100%;
	}
	.hero-wrap.featured #hero .info {
		min-height: 74vh;
		z-index: 1;
		justify-content: flex-start;
		align-items: center;
		padding: 0;
		max-width: 600px;
	}
	.hero-wrap .info .info-inner {
		width: 100%;
		max-width: 530px;
		padding-top: 50px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
	}
	.hero-wrap .acs_hero_slider .stage .slide .title,
	.hero-wrap .acs_hero_slider .stage .slide .caption {
		position: relative;
		left: auto;
		top: auto;
		background: none;
		padding: 0px 0 20px;
	}
	.hero-wrap .acs_hero_slider .stage .slide .title {
		font: normal 600 3.5em/1.1em 'Inter', sans-serif;
		color: #fff;
		padding-top: 0;
	}
	.hero-wrap.featured #hero .info h1 {
		font: normal 600 5em/1em 'Inter', sans-serif;
		color: #fff;
	}
	.hero-wrap .acs_hero_slider .stage .slide .caption p {
		font: normal 400 1.125em/1.6em 'Inter', sans-serif;
		color: #fff;
		padding-top: 0;
	}
	.hero-wrap .acs_hero_slider .stage .slide a.button {
		background: none;
		border: 2px solid #f7e2c2;
		border-radius: 25px;
		color: #fff;
		text-transform: uppercase;
		font-size: .875em;
		font-family: 'Inter', sans-serif;
		padding: 14px 0px 12px 30px;
		display: inline-block;
		height: auto;
		left: auto;
		position: relative;
		top: auto;
		width: auto;
		margin-top: 20px;
	}
	.hero-wrap .acs_hero_slider .stage .slide .button::after {
		content: "\f061";
		background: #f7e2c2;
		color: #1a1a1a;
		padding: 15px 20px;
		margin: 0 0 0 30px;
		border-radius: 0 25px 25px 0;
	}
	.hero-wrap .acs_hero_slider .stage .slide .button:hover {
		text-decoration: none;
		color: #1a1a1a;
		background: #f7e2c2;
	}
	.hero-wrap::after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		height: 110px!important;
		width: 100%;
		background: url(assets/images/waves-white.png) repeat-x;
	}
	
/* CONTENT */
	.content-blocks {
		position: relative;
		width: 100%;
		background: #fff;
	}
	.content-blocks .content {
		position: relative;
		clear: both;
	}
	.content ul {
		margin-left: 0;
		padding-left: 15px;
	}
	.content ul li::marker {
		content: "\f058";
		color: #ccb187;
		padding: 0 10px 0 0;
	}
	.content ul li {
		padding: 0 0 5px 8px;
	}
	.content .wp-block-cover, 
	.content .wp-block-cover-image {
		padding: 0;
	}
	.content .wp-block-cover .wp-block-group {
		width: 90%;
	}
	.content .wp-block-cover .is-layout-flex {
		margin: 0 auto;
	}
	.home .content > .wp-block-group,
	.reusable-before-footer .wp-block-group {
	    padding-top: 150px;
	    padding-bottom: 150px;
	}
	.content > .wp-block-group {
	    padding-top: 100px;
	    padding-bottom: 100px;
	}
	.content > .wp-block-group:nth-child(1n) {
		background: url(assets/images/one-circle-big.png) no-repeat left 80px, url(assets/images/two-circles-small-big.png) no-repeat right 200px;
	}
	.content > .wp-block-group:nth-child(3n) {
		background: url(assets/images/two-circles-big-small.png) no-repeat left -30px, url(assets/images/pattern.png) repeat-y right 0;
	}
	.content > .wp-block-group:nth-child(5n) {
		background: url(assets/images/pattern.png) repeat-y left 0, url(assets/images/two-circles-small-big.png) no-repeat right 200px;
	}
	.wp-block-media-text .wp-block-media-text__content {
		padding: 0!important;
	}
	.wp-block-media-text {
		gap: 100px;
	}

/* ACCORDIONS */
	.content .c-accordion__title {
		font-size: 1.1em;
		background: #f6f6f6;
		padding: 15px 20px;
		margin: 0 0 20px 0;
	}
	.content .c-accordion__title:after {
		right: 20px;
	}
	.content .c-accordion__content {
		padding: 10px 20px;
	}

/* FORMS */
	.content .frm_style_formidable-style.with_frm_style input[type=submit], 
	.content .frm_style_formidable-style.with_frm_style .frm_submit input[type=button], 
	.content .frm_style_formidable-style.with_frm_style .frm_submit button {
		font: normal 400 0.875em/1em "Inter", sans-serif;
		text-transform: uppercase;
		padding: 10px;
		display: inline-block;
		cursor: pointer;
		text-decoration: none;
		letter-spacing: 0.15em;
		border-radius: 0;
		border: 0;
		color: #fff;
		background: #ccb187;
		transition: .2s all ease-out;
	}
	.content .frm_style_formidable-style.with_frm_style input[type=submit]:hover, 
	.content .frm_style_formidable-style.with_frm_style .frm_submit input[type=button]:hover, 
	.content .frm_style_formidable-style.with_frm_style .frm_submit button:hover {
		text-decoration: none;
		color: #fff;
		background: #977744;
	}

/* BOTTOM AREA */
	.bottom-form {
		position: relative;
		z-index: 1;
	}
	.bottom-form .wp-block-button .wp-block-button__link {
		background: none;
		border: 2px solid #f7e2c2;
		border-radius: 25px;
		color: #fff;
		text-transform: uppercase;
		font-size: .875em;
		font-family: 'Inter', sans-serif;
		padding: 0 0 0 30px;
		display: flex;
		flex-direction: row;
		align-items: center;
	}
	.bottom-form .wp-block-button .wp-block-button__link::after {
		content: "\f061";
		background: #f7e2c2;
		color: #1a1a1a;
		padding: 15px 20px;
		margin: 0 0 0 30px;
		border-radius: 0 25px 25px 0;
	}
	.bottom-form .wp-block-button .wp-block-button__link:hover {
		background: #f7e2c2;
		color: #1a1a1a;
	}
	
/* FOOTER */
	footer {
		z-index: 8;
		width: 100%;
		clear: both;
		position: relative;
		background: none;
		margin: -110px 0 0 0;
	}
	footer:before {
		width: 100%;
		height: 110px;
		background: url(assets/images/waves-black.png) repeat-x top center;
		content: "";
		display: block;
	}
	.footer-wrap {
		width: 100%;
		position: relative;
		padding: 60px 0 0 0;
		background: #1a1a1a;
	}
	footer p, footer a {
		color: #fff;
	}
	.copyright {
		width: 100%;
		padding: 20px 0;
		margin: 60px 0 0 0;
		border-top: 1px solid rgba(247, 226, 194, .4);
		text-align: center;
	}
	.copyright p {
		color: #f7e2c2;
		font-size: 0.75em;
		padding: 0;
	}
	.copyright a {
		color: #f7e2c2;
		text-decoration: none;
	}

/* FOCUS */
	a:focus-visible { outline: 4px solid #ff5722; outline-offset: 4px; box-shadow: 0 0 0 4px #ffeb3b; text-decoration: underline; }
	#navbtn:focus-visible { outline: 4px solid #ff5722; outline-offset: 4px; box-shadow: 0 0 0 4px #ffeb3b; text-decoration: underline; }
	#navbtn:focus-visible .lines .line.one { width: 85%; }
	#navbtn:focus-visible .lines .line.two { width: 100%; }
	#navbtn:focus-visible .lines .line.three { width: 68%; }
	.open #navbtn:focus-visible .lines .line.two { display: none; }
	.open #navbtn:focus-visible .lines .line.one { width: 90%; margin: 9px 0 0 0; transform: rotate(45deg); }
	.open #navbtn:focus-visible .lines .line.three { width: 90%; margin: -4px 0 0 0; transform: rotate(-45deg); }
	
/* RESPONSIVE */
	@media all and (max-width: 1200px) {
		.content > .wp-block-group {
			padding-left: 5%;
			padding-right: 5%;
		}
	}
	@media all and (max-width: 900px) {
		#primary { width: 100%; }
		header nav .menu-primary-menu-container ul { width: 100%; }
		header nav .menu-primary-menu-container { display: block; position: fixed; top: 0; left: -100%; background-color: rgba(0, 0, 0, 1); width: 80%; height: 100%; overflow-y: scroll; z-index: 9; }
		header.open nav .menu-primary-menu-container { left: 0; }
		header nav .menu-primary-menu-container > ul,
		header nav .menu-primary-menu-container > ul.menu { padding: 0; width: 100%; }
		header nav .menu-primary-menu-container ul li,
		header nav .menu-primary-menu-container ul.menu li { display: block; padding: 0; float: none; }
		header nav .menu-primary-menu-container ul li a,
		header nav .menu-primary-menu-container ul.menu li a,
		header nav .menu-primary-menu-container ul li:first-child a,
		header nav .menu-primary-menu-container ul.menu li:first-child a,
		header nav .menu-primary-menu-container ul li:last-child a,
		header nav .menu-primary-menu-container ul.menu li:last-child a,
		#primary nav ul li:first-child a, #primary ul.menu li:first-child a { display: block; color: #fff; padding: 20px 30px; font-size: 1.5em; line-height: 1.4em; border-top: 1px solid #919191; text-align: left; }
		#primary nav ul li a, #primary ul.menu li a { padding: 20px 30px; }
		header nav .menu-primary-menu-container ul li ul.sub-menu,
		header nav .menu-primary-menu-container ul.menu li ul.sub-menu, 
		header nav .menu-primary-menu-container ul li ul.sub-menu li ul.sub-menu,
		header nav .menu-primary-menu-container ul.menu li ul.sub-menu li ul.sub-menu { width: 100%; background: none; display: block; clear: both; overflow: hidden; position: relative; left: 0; opacity: 1; }
		header nav .menu-primary-menu-container ul li ul.sub-menu li a,
		header nav .menu-primary-menu-container ul.menu li ul.sub-menu li a { padding: 20px 30px 20px 50px; background-color: rgba(20, 66, 76, .9); color: #fff; }
		header nav .menu-primary-menu-container ul li ul.sub-menu li ul.sub-menu li a,
		header nav .menu-primary-menu-container ul.menu li ul.sub-menu li ul.sub-menu li a { padding: 20px 30px 20px 70px; }
		header nav .menu-primary-menu-container ul li ul.sub-menu li ul.sub-menu li ul.sub-menu li a,
		header nav .menu-primary-menu-container ul.menu li ul.sub-menu li ul.sub-menu li ul.sub-menu li a { padding: 20px 30px 20px 90px; }
		header nav .menu-primary-menu-container ul li:hover a, 
		header nav .menu-primary-menu-container ul li.active a, 
		header nav .menu-primary-menu-container ul li a:focus, 
		header nav .menu-primary-menu-container ul li.current-menu-item a, 
		header nav .menu-primary-menu-container ul li.current-menu-ancestor a,
		header nav .menu-primary-menu-container ul li.current_page_parent a,
		header nav .menu-primary-menu-container ul.menu li:hover a, 
		header nav .menu-primary-menu-container ul.menu li.active a, 
		header nav .menu-primary-menu-container ul.menu li a:focus, 
		header nav .menu-primary-menu-container ul.menu li.current-menu-item a, 
		header nav .menu-primary-menu-container ul.menu li.current-menu-ancestor a,
		header nav .menu-primary-menu-container ul.menu li.current_page_parent a {  color: #fff; background-color: #1a1a1a; border-bottom: none;  }
		#navbtn { display: block; }
		.wp-block-cover__inner-container.wp-container-core-cover-is-layout-c0cf8e29 .wp-block-column {
			flex-basis: 100%!important;
		}
		.hero-wrap { clear: both; overflow: hidden;}
		.hero-wrap .info {
			justify-content: center;
		}
		.wp-container-core-group-is-layout-0dfbf163 {
			flex-wrap: wrap!important;
			text-align: center;
		}
		.wp-container-core-group-is-layout-0dfbf163 figure,
		.wp-container-core-group-is-layout-0dfbf163 p {
			width: 100%;
		}
	}
	@media all and (max-width: 600px) {
		body {
			font: normal 400 14px/24px "Inter", sans-serif;
		}
		.hero-wrap ul, .hero-wrap li {
			min-height: 110vh;
		}
		.hero-wrap #hero .info .title {
			font-size: 2.5em;
		}
		.hero-wrap.featured #hero .info h1 {
			font-size: 3.5em;
		}
	    .hero-wrap .info {
	        display: flex!important;
	        text-align: left!important;
	    }
	    .wp-block-column.has-background {
	    	padding: 5%!important;
	    }
	    .home .content > .wp-block-group, 
	    .reusable-before-footer .wp-block-group {
	    	padding-top: 80px;
	    	padding-bottom: 80px;
	    }
	}