/**
 * Theme Name: AWYB 2025
 * Template: hello-elementor
 * Description: A custom Elementor theme for AWYB.
 * Version:   1.0.0
 * Author: Dragon Army
 * Author URI: https://www.dragonarmy.com
 */

/* font */
@font-face {
	font-family: Founders Grotesk;
	src: local("Founders Grotesk"), url(https://atl-assets.s3.amazonaws.com/fonts/Klim-Order-23100982/WOFF2/founders-grotesk-regular.woff2) format("woff2"), url(https://atl-assets.s3.amazonaws.com/fonts/Klim-Order-23100982/OTF/FoundersGrotesk-Regular.otf) format("opentype");
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: Resolve Sans;
	src: local("Resolve Sans"), url(https://atl-assets.s3.amazonaws.com/fonts/My_Fontspring_Fonts_Order_86442622/Web%20Fonts/resolvesansregular_regular_macroman/resolve-regular-webfont.woff2) format("woff2"), url(https://atl-assets.s3.amazonaws.com/fonts/My_Fontspring_Fonts_Order_86442622/Web%20Fonts/resolvesansregular_regular_macroman/resolve-regular-webfont.woff) format("woff"), url(https://atl-assets.s3.amazonaws.com/fonts/My_Fontspring_Fonts_Order_86442622/Fonts/resolve-regular.otf) format("opentype");
	font-weight: 400;
	font-style: normal;
}

/* --- BRAND LIBRARY --- */
/* color */
:root {
	--animation-duration: 1s;
	--animation-duration-fast: 0.5s;
	--animation-duration-slow: 1.5s;
	--animation-delay-second: 0.2s;
	--animation-delay-third: 0.4s;
	--animation-delay-fourth: 0.6s;

	--font-family-headings: Resolve Sans, sans-serif;
	--font-family-body: Founders Grotesk, sans-serif;
	--base-foreground: #0a0a0a;
	--neutrals-white: #ffffff;
	--neutrals-black: #000000;
	--brand-light-green: #d4ffeb;
	--brand-red: #d52d2d;
	--brand-yellow: #ffc870;
	--brand-yellow-selected: #f6ac35;

	--stroke-width: 2px;
	--spacing-margins-base: 80px;
	--spacing-margins-l: 64px;
	--spacing-margins-m: 48px;
	--spacing-margins-s: 24px;
	--spacing-gap-base: 64px;
	--spacing-gap-xl: 56px;
	--spacing-gap-l: 40px;
	--spacing-gap-m: 32px;
	--spacing-gap-s: 24px;
	--spacing-gap-xs: 16px;
	--spacing-gap-xxs: 8px;

	--text-normal-font-size: 28px;
	--text-normal-line-height: 38px;

	--text-sm-line-height: 20px;

	--text-7xl-font-size: 72px;
	--text-7xl-line-height: 72px;

	--text-4xl-font-size: 36px;
	--text-4xl-line-height: 40px;

	--awyb-theme-primary-color: #FFC870;  
  --awyb-theme-primary-color-text: #000;  
  --awyb-theme-secondary-color: #AFD8C5;
  --awyb-theme-secondary-color-text: #000;
  --awyb-theme-accent-button: #177BC4;
  --awyb-theme-accent-ornament: #177BC4;
  --awyb-theme-accent-ornament-text: #FFF;
  --awyb-theme-tertiary-color: #E49880;
  --awyb-theme-labels: #000000;
  --awyb-theme-banner-color: #AFD8C5;
  --awyb-theme-banner-text-color: #333333;
  --awyb-theme-banner-pattern-color: #3B6348;
  --awyb-theme-banner-secondary-color: #3B6348;
  --awyb-theme-banner-secondary-text-color: #FFF;
}

/* Mode: Desktop HD */
:root {
}

/* Mode: Desktop */
@media (min-width: 1201px) and (max-width: 1600px) {
	:root {
	}
}

/* Mode: Tablet */
@media (min-width: 601px) and (max-width: 1200px) {
	:root {
	}
}

/* Mode: Mobile */
@media (max-width: 600px) {
	:root {
	}
}

/* animations
   example: class="animated animated-fast fadeInUp"
   You can sequence them by adding "animation-delay-second" or third or fourth.
*/
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translate3d(0, 20%, 0);
	}
	to {
		opacity: 1;
		transform: none;
	}
}
.fadeInUp {
	animation-name: fadeInUp;
}
@keyframes fadeInRight {
	from {
		opacity: 0;
		transform: translate3d(20%, 0, 0);
	}
	to {
		opacity: 1;
		transform: none;
	}
}
.fadeInRight {
	animation-name: fadeInRight;
}
@keyframes fadeInLeft {
	from {
		opacity: 0;
		transform: translate3d(-20%, 0, 0);
	}
	to {
		opacity: 1;
		transform: none;
	}
}
.fadeInLeft {
	animation-name: fadeInLeft;
}
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
.fadeIn {
	animation-name: fadeIn;
}
.fadeInUp.animated {
	animation-duration: var(--animation-duration);
	animation-fill-mode: both;
	animation-timing-function: ease-out;
}
.fadeInUp.animated-fast {
	animation-duration: var(--animation-duration-fast);
}
.fadeInUp.animated-slow {
	animation-duration: var(--animation-duration-slow);
}
.fadeInRight.animated {
	animation-duration: var(--animation-duration);
	animation-fill-mode: both;
	animation-timing-function: ease-out;
}
.fadeInRight.animated-fast {
	animation-duration: var(--animation-duration-fast);
}
.fadeInRight.animated-slow {
	animation-duration: var(--animation-duration-slow);
}
.fadeInLeft.animated {
	animation-duration: var(--animation-duration);
	animation-fill-mode: both;
	animation-timing-function: ease-out;
}
.fadeInLeft.animated-fast {
	animation-duration: var(--animation-duration-fast);
}
.fadeInLeft.animated-slow {
	animation-duration: var(--animation-duration-slow);
}
.fadeIn.animated {
	animation-duration: var(--animation-duration);
	animation-fill-mode: both;
	animation-timing-function: ease-out;
}
.fadeIn.animated-fast {
	animation-duration: var(--animation-duration-fast);
}
.fadeIn.animated-slow {
	animation-duration: var(--animation-duration-slow);
}
.animation-delay-second {
	animation-delay: var(--animation-delay-second);
}
.animation-delay-third {
	animation-delay: var(--animation-delay-third);
}
.animation-delay-fourth {
	animation-delay: var(--animation-delay-fourth);
}
.doAnimation {
	animation-play-state: paused;
	opacity: 0;
}
.elementor-editor-active .doAnimation {
	opacity: 1;
	animation: none;
}
.animated {
	animation-play-state: running;
}

/* Prevents rubber-band / overscroll “bounce” effect on mobile */
html,
body {
	overscroll-behavior-x: none;
	overflow-x: hidden;
}

body {
	font-family: var(--font-family-body);
	color: var(--base-foreground);
	font-optical-sizing: auto;
	font-size: 28px;
	font-style: normal;
	font-weight: 400;
	line-height: 38px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-family-headings);
}

.heading-text {
	font-family: var(--font-family-headings);
	font-weight: 700;
	font-size: 72px;
	line-height: 76px;
	letter-spacing: -2%;
}

.text-badge {
	font-family: var(--font-family-headings);
	font-weight: 700;
	font-size: 38px;
	line-height: 46px;
	text-transform: uppercase;
	letter-spacing: 14%;
}

.label-title {
	font-family: var(--font-family-headings);
	font-weight: 700;
	font-size: 28px;
	line-height: 34px;
	letter-spacing: 0%;
}

.tab-label {
	font-family: var(--font-family-headings);
	font-weight: 700;
	font-size: 36px;
	line-height: 38px;
	letter-spacing: 0%;
}

@media screen and (max-width: 767px) {
	.heading-text {
		font-size: 48px;
		line-height: 72px;
	}

	.text-badge {
		font-size: 28px;
		line-height: 34px;
	}

	.label-title {
		font-size: 24px;
		line-height: 30px;
	}

	.tab-label {
		font-size: 28px;
		line-height: 30px;
	}
}

.awyb-yellow {
  --awyb-theme-primary-color: #FFC870;  
  --awyb-theme-primary-color-text: #000;  
  --awyb-theme-secondary-color: #AFD8C5;
  --awyb-theme-secondary-color-text: #000;
  --awyb-theme-accent-button: #177BC4;
  --awyb-theme-accent-ornament: #177BC4;
  --awyb-theme-accent-ornament-text: #FFF;
  --awyb-theme-labels: #000000;
}

.awyb-purple {
  --awyb-theme-primary-color: #6970A4;  
  --awyb-theme-primary-color-text: #FFF;  
  --awyb-theme-secondary-color: #AFD8C5;
  --awyb-theme-secondary-color-text: #FFF;
  --awyb-theme-accent-button: #3B6348;
  --awyb-theme-accent-ornament: #3B6348;
  --awyb-theme-accent-ornament-text: #FFF;
  --awyb-theme-labels: #000000;
}

.awyb-peach {
  --awyb-theme-primary-color: #E49880;  
  --awyb-theme-primary-color-text: #FFF;  
  --awyb-theme-secondary-color: #AFD8C5;
  --awyb-theme-secondary-color-text: #FFF;
  --awyb-theme-accent-button: #177BC4;
  --awyb-theme-accent-ornament: #177BC4;
  --awyb-theme-accent-ornament-text: #FFF;
  --awyb-theme-labels: #000000;
}

.awyb-region-yellow {
	--awyb-theme-primary-color: #FFC870;
	--awyb-theme-accent-ornament-text: #000;
	--awyb-theme-secondary-color: #AFD8C5;
	--awyb-theme-secondary-color-text: #171717;
	--awyb-theme-tertiary-color: #FFC870;
	--awyb-theme-tertiary-color-text: #0A0A0A;
	--awyb-theme-accent-ornament: #3B6348;
	--awyb-theme-banner-color: #AFD8C5;
	--awyb-theme-banner-text-color: #171717;
	--awyb-theme-banner-pattern-color: #3B6348;
	--awyb-theme-banner-secondary-color: #FFC870;
	--awyb-theme-banner-secondary-text-color: #171717;
}

.awyb-region-green {
	--awyb-theme-primary-color: #3B6348;
	--awyb-theme-accent-ornament-text: #fff;
	--awyb-theme-secondary-color: #6970A4;
	--awyb-theme-secondary-color-text: #fff;
	--awyb-theme-tertiary-color: #AFD8C5;
	--awyb-theme-tertiary-color-text: #333333;
	--awyb-theme-accent-ornament: #E49880;
	--awyb-theme-banner-color: #6970A4;
	--awyb-theme-banner-text-color: #ffffff;
	--awyb-theme-banner-pattern-color: #333333;
	--awyb-theme-banner-secondary-color: #E49880;
	--awyb-theme-banner-secondary-text-color: #333333;
}

.awyb-region-green-variant {
	--awyb-theme-primary-color: #3B6348;
	--awyb-theme-accent-ornament-text: #fff;
	--awyb-theme-secondary-color: #6970A4;
	--awyb-theme-secondary-color-text: #fff;
	--awyb-theme-tertiary-color: #AFD8C5;
	--awyb-theme-tertiary-color-text: #333333;
	--awyb-theme-accent-ornament: #FFC870;
	--awyb-theme-banner-color: #6970A4;
	--awyb-theme-banner-text-color: #ffffff;
	--awyb-theme-banner-pattern-color: #333333;
	--awyb-theme-banner-secondary-color: #D4FFEB;
	--awyb-theme-banner-secondary-text-color: #333333;
}

.awyb-region-blue {
	--awyb-theme-primary-color: #177BC4;
	--awyb-theme-accent-ornament-text: #fff;
	--awyb-theme-secondary-color: #E49880;
	--awyb-theme-secondary-color-text: #fff;
	--awyb-theme-tertiary-color: #177BC4;
	--awyb-theme-tertiary-color-text: #ffffff;
	--awyb-theme-accent-ornament: #AFD8C5;
	--awyb-theme-banner-color: #E49880;
	--awyb-theme-banner-text-color: #FFFDF9;
	--awyb-theme-banner-pattern-color: #333333;
	--awyb-theme-banner-secondary-color: #AFD8C5;
	--awyb-theme-banner-secondary-text-color: #333333;
}

.awyb-region-purple {
	--awyb-theme-primary-color: #6970A4;
	--awyb-theme-accent-ornament-text: #fff;
	--awyb-theme-secondary-color: #FFC870;
	--awyb-theme-secondary-color-text: #000;
	--awyb-theme-tertiary-color: #6970A4;
	--awyb-theme-tertiary-color-text: #ffffff;
	--awyb-theme-accent-ornament: #6970A4;
	--awyb-theme-banner-color: #FFC870;
	--awyb-theme-banner-text-color: #333333;
	--awyb-theme-banner-pattern-color: #333333;
	--awyb-theme-banner-secondary-color: #6970A4;
	--awyb-theme-banner-secondary-text-color: #FFFDF9;
}

.atlanta-bg {
	background-color: var(--awyb-theme-primary-color, #FFC870);
	position: relative;
	overflow: hidden;
}

.atlanta-bg::before {
	content: "";
	position: absolute;
	background-image: url("/wp-content/themes/awyb2025/assets/atlanta-pattern-tall.svg");
	background-repeat: repeat;
	transform: rotate(-10deg);
	width: 200%;
	height: 200%;
	left: -50%;
	top: -50%;
	mix-blend-mode: exclusion;
	opacity: 0.2;
	/* z-index: 1; */
}

.atlanta-bg-fill {
		position: absolute;
		inset: 0;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
}

.map-ring {
    border-color: var(--awyb-theme-accent-ornament);
    aspect-ratio: 1/1;
}