/*
Theme Name: lowvol26
Theme URI: 
Author: We Are Volume
Author URI: 
Description: low volume (less code, less bloat, little complication)
Version: 1.02
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lowvol
*/

@layer reset, base, hero, main, footer, responsive;

@layer reset {
	*, *::before, *::after { box-sizing: border-box; }
	body, h1, h2, h3, h4, h5, h6, p, figure { margin: 0; padding: 0; }
	img, picture, video, canvas, svg { display: block; max-width: 100%; }
	input, button, textarea, select { font: inherit; }
}

@layer base {
	@font-face {
		font-family: "Tomorrow";
		src: url("font/Tomorrow/Tomorrow-Regular.ttf") format("truetype");
		font-weight: 400;
		font-style: normal;
		font-display: swap;
	}

	/* @font-face {
		font-family: "Tomorrow";
		src: url("font/Tomorrow/Tomorrow-Italic.ttf") format("truetype");
		font-weight: 400;
		font-style: italic;
		font-display: swap;
	} */

	@font-face {
		font-family: "Tomorrow";
		src: url("font/Tomorrow/Tomorrow-Medium.ttf") format("truetype");
		font-weight: 500;
		font-style: normal;
		font-display: swap;
	}

	@font-face {
		font-family: "Tomorrow";
		src: url("font/Tomorrow/Tomorrow-MediumItalic.ttf") format("truetype");
		font-weight: 500;
		font-style: italic;
		font-display: swap;
	}

	/* @font-face {
		font-family: "Tomorrow";
		src: url("font/Tomorrow/Tomorrow-Bold.ttf") format("truetype");
		font-weight: 700;
		font-style: normal;
		font-display: swap;
	} */

	@font-face {
		font-family: "Inter Tight";
		src: url("font/Inter_Tight/static/InterTight-Light.ttf") format("truetype");
		font-weight: 300;
		font-display: swap;
	}

	html,
	body {
		font-family: Helvetica, Arial, sans-serif;
	}

	.is-layout-flex {
		display: flex;
	}

	.is-layout-grid {
		display: grid;
	}

	html,
	body {
		font-size: 62.5%;
	}

	strong {
		font-weight: bold;
	}

	.has-text-align-center {
		text-align: center;
	}
	
	.has-text-align-right {
		text-align: right;
	}
}

@layer hero {
	#hero-intro {
		background: url('img/bg-hero-2.jpg') no-repeat;
		background-position: center;
		background-size: cover;
		color: #fff;
		min-height: 386px;

		.wp-block-cover__inner-container {
			margin: 0 auto;
			max-width: 840px;
			padding: 46px 0;

			h1,
			h2 {
				margin: 0 auto;
				text-indent: -9630rem;
			}

			h1 {
				background: url('img/unbreakable-hdr-2.png') no-repeat;
				background-size: contain;
				margin-top: 1%;
				width: 837px; 
				height: 241px;
			}

			h2 {
				background: url('img/deloitte-presents.png') no-repeat;
				background-size: contain;
				width: 163px;
				height: 54px;
			}

			p {
				font-size: 2rem;
				line-height: 1.2;
			}
			
			p + p {
				margin-top: 1.7rem;
			}
		}
	}
}

@layer main {
	main {

		> div {
			padding-top: 43px;
		}
		
		#intro {
			.wp-block-group {
				margin: 0 auto;
				max-width: 900px;
			}

			h2 {
				color: #7ae203;
				font-family: Tomorrow;
				font-weight: 500;
				font-size: 3.5rem;
				font-style: italic;
				line-height: .93;
				margin-bottom: 28px;
				text-transform: uppercase;
				text-wrap: balance;
			}

			p  {
				font-size: 2.45rem;
				margin-bottom: 1.5rem;
			}
		}

		#video 	{
			.wp-block-group {
				width: 100%;
			}

			iframe {
				aspect-ratio: 16 / 9;
				width: 100%;
				height: auto;
			}

			#video-container {
				margin-top: 32px;
				padding-bottom: 32px;
				width: 100%;
				height: auto;
			}
		}
		.copy-img + .copy-img {
			margin-top: 30px;
		}

		.copy-img > .wp-block-group :has(.wp-block-heading) {
			padding-left: 50px;
		}

		.copy-img.reverse > .wp-block-group :has(.wp-block-heading) {
			padding-right: 50px;
			padding-left: 0;
		}

		.wp-block-group :has(.wp-block-heading) {
			justify-content: center;
			display: flex;
			flex-direction: column;
		}

		.copy-img {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 50px;
			margin: 0 auto;
			max-width: 1080px;
			
			.wp-block-group :has(img){
				justify-self: end;
			}
		}

		.copy-img.reverse {
			grid-template-columns: calc(50% - 60px) calc(50% + 10px);
		}

		h3 {
			color: #7ae203;
			font-family: Tomorrow;
			font-weight: 500;
			font-style: italic;
			font-size: 5rem;
		}
		
		h3 + p {
			margin-top: 15px;
		}

		p {
			font-family: "Inter Tight";
			font-size: 2.2rem;
			font-weight: 300;
		}

		img {
			height: auto;
			max-width: 490px;
		}
	}
}

@layer footer {
	footer {
		background: url('img/bg-footer.jpg') no-repeat;
		background-size: cover;
		color: #fff;
		display: block;
		margin-top: 40px;
		
		#footer-inner-container {
			padding: 50px 24px;
		}

		#hdr-join {
			color: #fff;
			font-family: Tomorrow;
			font-size: 5.3rem;
			font-style: italic;
			font-weight: 500;
			margin-bottom: 20px;
			text-align: center;
		}
		
		#join-form {
			display: flex;
			justify-content: space-between;
			font-family: Tomorrow;
			font-size: 1.5rem;
			font-weight: 500;
			margin: 0 auto;
			max-width: 970px;

			p {
				display: flex;
				position: relative;
			}

			.wpcf7-form-control-wrap {
				flex: 1;
			}

			input[type="email"],
			input[type="submit"] {
				height: 40px;
			}

			input[type="email"] {
				border: 2px solid #86c440;
				padding: 0 6px;
				width: 100%;
				min-width: 0;
				max-width: 350px;
			}

			input[type="submit"] {
				background-color: #86c440;
				border: 0 none;
				color: #fff;
				font-family: Tomorrow;
				font-weight: 500;
				font-size: 2.4rem;
				font-style: italic;
				padding: 0 12px;
			}

			.wpcf7-spinner {
				margin: 0 !important;
				position: absolute !important;
				transform: translateX(calc(100% + 6px));
				top: 0;
				right: 0;
			}

			.wpcf7-not-valid-tip {
				display: none;
			}

			.wpcf7-response-output {
				background-color: none;
				border: 0 none;
				margin: 0 !important;
				text-align: center;
			}
		}
	}
}

@layer responsive {
	@media (max-width: 1079px){
		#hero-intro {
			min-height: 1px;
			padding-right: 12px;
			padding-left: 12px;

			& .wp-block-cover__inner-container {
				h1 {
					margin-top: 3%;
					width: 77.5vw;
					height: 22.314vw;
				}

				h2 {
					width: 136px;
					height: 45px;
				}
			}
		}

		#intro {
			padding-right: 12px;
			padding-left: 12px;

			h2 {
				font-size: 2.4rem;
				line-height: 1.1;
				margin-bottom: 12px;
			}

			p {
				font-size: 1.6rem;
				text-wrap: balance;
			}
		}

		#video 	{
			iframe,
			#video-container {
				aspect-ratio: 16 / 9;
			}	
		}

		.copy-img {
			gap: 30px;
		}

		.copy-img.is-layout-flex,
		.copy-img.reverse.is-layout-flex {
			grid-template-columns: 1fr;

			> div:first-child {
				order: 2;
			}
			
			> div:last-child {
				order: 1;
			}
		}

		.copy-img.reverse.is-layout-flex {
			grid-template-columns: 1fr;

			> div:first-child {
				order: 1;
			}
			
			> div:last-child {
				order: 2;
			}
		}

		main {
			img {
				max-width: none;
			}

			& > div {
				padding-top: 30px;
			}

			& .copy-img > .wp-block-group :has(.wp-block-heading) {
				padding-left: 0;
			}

			& .copy-img.reverse > .wp-block-group :has(.wp-block-heading) {
				padding-right: 0;
			}

			& .copy-img h3,
			& .copy-img p {
				padding-right: 12px;
				padding-left: 12px;
			}

			& .copy-img h3 {
				font-size: 4rem;
			}

			& .copy-img p {
				font-size: 1.6rem;
			}

			#video-container {
				/* background: url('img/bg-video.jpg') no-repeat; */
				background-position: bottom center;
			}

		}

		footer {
			& #footer-inner-container {
				padding: 10px;
			}

			& #join-form {
				.wpcf7-spinner {
					transform: translateX(calc(-170%));
					top: 9px;
				}
			}

			#hdr-join {
				font-size: 1.8rem;
			}
			
			#join-form {
				flex-direction: column;
				
				> div:first-child {
					text-align: center;
				}
			}

			form {
				margin-top: 15px;
				margin-bottom: 30px;
				
				.wpcf7-response-output {
					text-wrap: balance;
				}
			}

		}
}
