/*/////////////////////////////////////////////////////
//// BEGIN: Service Pages
/////////////////////////////////////////////////////*/
.full-width-content main,
.full-width-content .site-inner {
	width: 100%;
	max-width: 100%;
}

.full-width-content .site-inner {
	padding-top: 50px;
}

.site-inner .content-sidebar-wrap {
	padding: 0;
}

.entry-header {
	display: none;
}

.site-inner section {
	position: relative;
	padding: 100px 0;
}

section .section-wrapper {
	width: 1440px;
	max-width: 95%;
	margin: 0 auto;
}

section .section-header {
	position: relative;
	margin-bottom: 60px;
}

section .column-group {
	gap: 40px 80px;
}

section .column-group .section-header {
	margin-bottom: 0;
}

section .section-header .eyebrow {
	margin-bottom: 0;
	color: var(--mg-primary);
}

section h2 {
	margin-bottom: 24px;
	font-size: clamp(2.6rem, 5vw, 4.5rem);
}

section h2:last-child {
    margin-bottom: 0;
}

section h2 span {
	color: var(--mg-primary);
}

section h3 {
	font-size: clamp(1.5rem, 2.5vw, 2rem);
}

section p {
	margin-bottom: 16px;
	color: rgb(85, 85, 85);
	font-size: 20px;
	font-weight: 300;
}

/* BEGIN: Section Hero
-----------------------------------------------*/
.section-hero {
	position: relative;
	background: #0e0408;
	color: var(--mg-white);
}

.section-hero .hero-section-image {
	opacity: 0.35;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0.3);
}

.section-hero .section-hero-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(rgba(14, 4, 8, 0.5) 0%, rgba(14, 4, 8, 0.2) 40%, rgba(14, 4, 8, 0.75) 100%);
	pointer-events: none;
}

.section-hero .section-header {
	width: 650px;
	max-width: 100%;
	margin-bottom: 0;
}

.section-hero .section-header .eyebrow {
	margin-bottom: 0;
	color: var(--mg-light);
}

.section-hero .section-header h1,
.section-hero .section-header p {
	color: var(--mg-white);
}

.section-hero .section-header h1 {
	margin-bottom: 50px;
	font-size: clamp(3.5rem, 9vw, 7.5rem);
	line-height: 1;
}

.section-hero .section-header h1 span {
	color: var(--mg-light);
}

.section-hero .section-header p {
	color: rgba(255, 255, 255, 0.7);
	font-size: 26px;
}

.section-hero .section-header .addbutton + a {
	color: var(--mg-green);
}

/* BEGIN: Section Services
-----------------------------------------------*/
.section-services {
}

.section-services .col-left {
	width: 700px;
	max-width: 50%;
}

.section-services .col-right {
	width: 545px;
	max-width: 41%;
	padding-top: 10px;
}

.section-services .col-right h3 {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--mg-green)
}

.section-services .col-right ul {
	padding-left: 30px;
}

.section-services .col-right li {
	margin-bottom: 20px;
	color: rgb(102, 102, 102);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.8;
}

.section-services .col-right li:before {
	content: '';
	display: inline-block;
	width: 7px;
	height: 7px;
	margin-left: -18px;
	margin-right: 11px;
	background: rgb(196, 96, 125);
	border-radius: 50%;
	vertical-align: middle;
}

.section-services .col-right li strong {
	color: rgb(26, 26, 26);
	font-size: 14px;
	letter-spacing: 0.1em;
	font-weight: 600;
	text-transform: uppercase;
}

/* BEGIN: Section Quick Reference
-----------------------------------------------*/
.site-inner .section-reference {
	padding: 0;
}

.section-reference .dual-background {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.section-reference .dual-background--top {
	width: 100%;
	height: 50%;
}

.section-reference .dual-background--bottom {
	width: 100%;
	height: 50%;
	background-color: rgb(249, 247, 244);
}

.section-reference .callout-box,
.section-experience .callout-box {
	position: relative;
	background: var(--mg-primary);
	padding: 40px;
	color: var(--mg-green);
	text-align: center;
}

.section-reference .callout-box .section-header,
.section-experience .callout-box .section-header {
	width: 768px;
	max-width: 100%;
	margin: 0 auto 60px;
}

.section-reference .callout-box ul {
	gap: 40px 20px;
}

.section-reference .callout-box h2,
.section-experience .callout-box h2 {
	color: var(--mg-green);
	font-size: clamp(2.6rem, 3.5vw, 2.8rem);
}

.section-reference .callout-box p,
.section-experience .callout-box p {
	color: var(--mg-white);
}

.section-reference .callout-box .aag-title,
.section-experience .callout-box .experience-title {
	display: block;
	margin: 2px auto 10px;
	font-family: var(--mg-heading-font);
	font-size: 30px;
}

.section-experience .callout-box .experience-title {
	font-size: 60px;
}

.section-reference .callout-box .aag-eyebrow,
.section-experience .callout-box .experience-footer {
	display: block;
	font-size: 11px;
	color: rgba(226, 217, 134, 0.55);
}

.section-reference .callout-box .aag-eyebrow--footer {
	color: rgba(245, 240, 232, 0.4);
}

/* BEGIN: Section Meet the Founder
-----------------------------------------------*/
.section-meet-founder {
	background-color: rgb(249, 247, 244);
}

.section-meet-founder .section-wrapper {
	width: 1150px;
}

.section-meet-founder .column-group {
	align-items: center;
}

.section-meet-founder .col-left {
	gap: 80px;
}

.section-meet-founder .col-left {
	width: 585px;
	max-width: 51%;
}

.section-meet-founder .col-right {
	position: relative;
	width: 460px;
	max-width: 40%;
}

.section-meet-founder .col-right .attribution {
	content: 'Irene Barbieri, Founder';
	display: flex;
	position: absolute;
	right: -10px;
	bottom: -10px;
	width: 110px;
	height: 110px;
	padding: 10px 5px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: var(--mg-primary);
	border: 1px solid var(--mg-green);
	color: var(--mg-green);
	font-size: 17px;
	text-align: center;
}

.section-meet-founder .col-right .attribution .eyebrow {
	display: block;
	color: rgba(245, 240, 232, 0.6);
	font-size: 10px;
}

/* BEGIN: Section Ideas
-----------------------------------------------*/
.section-ideas {
}

.section-ideas .col-left {
	width: 480px;
	max-width: 34%;
}

.section-ideas .col-right {
	width: 875px;
	max-width: 58%;
}

.section-ideas .col-right ul {
	gap: 32px 40px;
}

.section-ideas .col-right li {
	justify-content: flex-start;
	flex-wrap: nowrap;
	gap: 15px;
	border-bottom: var(--mg-green);
	font-size: 18px;
	line-height: 1.6;
}

.section-ideas .col-right li svg {
	width: 32px;
	height: 32px;
	padding: 6px;
	border-radius: 50%;
	border: 1px solid rgba(226, 217, 134, 0.5);
	flex-shrink: 0;
}

.section-ideas .col-right li strong {
	font-size: 22px;
	font-family: var(--mg-heading-font);
	line-height: 1.1;
}

.section-ideas .col-right li span {
	display: inline-block;
	margin-left: 10px;
	padding: 2px 8px;
	background-color: rgba(196, 96, 125, 0.12);
	border: 1px solid rgba(125, 36, 62, 0.25);
	vertical-align: text-bottom;
	white-space: nowrap;
	color: var(--mg-primary);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

/* BEGIN: Section How It Works Steps
-----------------------------------------------*/
.section-steps {
	background-color: rgb(249, 247, 244);
}

.section-steps .section-wrapper {
	width: 1150px;
}

.section-steps .section-header {
	text-align: center;
}

.section-steps .steps-group {
	counter-reset: fieldset-counter;
}

.section-steps .steps-group__item {
	counter-increment: fieldset-counter;
	position: relative;
	flex-wrap: nowrap;
	justify-content: space-between;
	gap: 50px;
	align-items: center;
	padding: 30px 0;
}

.section-steps .steps-group__item:nth-child(even) {
	position: relative;
}

.section-steps .steps-group__item:before {
	content: counter(fieldset-counter, decimal-leading-zero) '. ';
	color: var(--mg-green);
	font-family: var(--mg-heading-font);
	font-weight: 200;
	font-size: 80px;
	writing-mode: vertical-rl;
	letter-spacing: -0.05em;
}

.section-steps .steps-group__item:not(:last-child):after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: rgba(226, 217, 134, 0.35);
}

.section-steps .steps-group__item .content-container {
	width: 460px;
	max-width: 40%;
}

.section-steps .steps-group__item .steps-group__item-counter {
	justify-content: flex-start;
	align-items: center;
	gap: 20px;
	color: #b6b4b4;
}

.section-steps .steps-group__item h3 {
	font-size: clamp(1.6rem, 2.5vw, 2.2rem);
}

.section-steps .steps-group__item ul {
	padding-left: 30px;
}

.section-steps .steps-group__item li {
	margin-bottom: 12px;
	font-size: 18px;
}

.section-steps .steps-group__item li:before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' aria-hidden='true' style='color: rgb(196, 96, 125); flex-shrink: 0;'%3E%3Cpath d='M21.801 10A10 10 0 1 1 17 3.335'%3E%3C/path%3E%3Cpath d='m9 11 3 3L22 4'%3E%3C/path%3E%3C/svg%3E");
	display: inline-block;
	width: 13px;
	height: 13px;
	margin-left: -28px;
	margin-right: 15px;
}

.section-steps .steps-group__item strong {
	color: var(--mg-primary);
	font-size: 14px;
	letter-spacing: 0.1em;
	font-weight: 600;
	text-transform: uppercase;
}

.section-steps .image-container {
	width: 480px;
	max-width: 57%;
	border: 1px solid var(--mg-green);
	border-radius: 4px;
	overflow: hidden;
}

.section-steps .image-container img {
	width: 100%;
}

.section-steps__cta {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid var(--mg-green);
}

.section-steps__cta h2 {
	font-size: 32px;
}

.section-steps__cta .section-steps__cta--cols {
	flex-wrap: nowrap;
}

.section-steps__cta .section-steps__cta--left {
	flex-grow: 1;
}

/* BEGIN: Section Selected Works
-----------------------------------------------*/
.section-works {

}

.selected-works {
	gap: 40px;
}

.selected-works .section-header {
    align-items: flex-end;
}

.selected-works__item {
	gap: 20px;
	position: relative;
	padding: 10px;
	background: #fff;
	border: 1px solid #ebe2e2;
	transition: transform 0.3s ease-out;
}

.selected-works__item .selected-works__item-photo {
}

.selected-works__item .selected-works__item-photo--before {
	background: rgb(249, 247, 244);
	color: #b6b0b0;
}

.selected-works__item-photo-wrap {
	display: block;
	position: relative;
	margin-bottom: 10px;
	border: 1px solid #ebe2e2;
	border-radius: 4px;
	overflow: hidden;
	aspect-ratio: 1 / 1;
}

.selected-works__item-photo-wrap:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #f7f7f7;
	mix-blend-mode: multiply;
}

.selected-works__item .selected-works__item-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.selected-works__item-photo-text h3 {
	font-size: 28px;
}

.selected-works__item .selected-works__item-photo--before h3 {
	color: #7f7e7e;
}

/* BEGIN: Section FAQ
-----------------------------------------------*/
.section-faq {

}

.section-faq .col-left {
	width: 455px;
	max-width: 33%;
}

.section-faq .col-right {
	width: 765px;
	max-width: 55%;
}

.section-faq .faq-item {
	border-top: 1px solid var(--mg-green);
	overflow: hidden;
}

.section-faq .faq-item__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0;
	cursor: pointer;
}

.section-faq .faq-item__icon {
	transition: transform 0.3s ease;
}

.section-faq .faq-item.is-open .faq-item__icon {
	transform: rotate(180deg);
}

.section-faq .faq-item__content {
	max-height: 0;
	padding: 0;
	overflow: hidden;
	transition: max-height 0.3s ease, padding 0.3s ease;
}

.section-faq .faq-item.is-open .faq-item__content {
	max-height: 500px;
	padding: 0 32px 20px 0;
}

.section-faq .faq-item.is-open .faq-item__content p {
}

/* BEGIN: Section Our Experience
-----------------------------------------------*/
.section-experience {
	position: relative;
	background: var(--mg-primary);
	color: var(--mg-white);
}

.section-experience .section-angle {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: var(--mg-white);
}

.section-experience .section-angle--top {
	clip-path: polygon(0px 0px, 100% 0px, 100% 0px, 0px 100%);
}

.section-experience .section-angle--bottom {
	top: auto;
	bottom: 0;
	clip-path: polygon(0px 100%, 100% 0px, 100% 100%);
}

/* BEGIN: Section CTA
-----------------------------------------------*/
.section-cta {

}

.section-cta .column-group {
	align-items: flex-start;
}

.section-cta .col-left {
	width: 555px;
	max-width: 40%;
}

.section-cta .col-left .contact-group {
	justify-content: flex-start;
	gap: 20px;
	align-items: center;
	flex-wrap: nowrap;
	margin-bottom: 20px;
	font-size: 18px;
}

.section-cta .col-left .contact-group__icon {
	width: 42px;
	height: 42px;
	border: 1px solid rgba(226, 217, 134, 0.4);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.section-cta .col-left .contact-group .eyebrow {
	display: block;
	color: rgb(153, 153, 153);
	font-size: 10px;
}

.section-cta .col-right {
	width: 765px;
	max-width: 50%;
	border: 1px solid rgba(226, 217, 134, 0.3);
	padding: 48px;
}

/*/////////////////////////////////////////////
//// BEGIN: Media Queries
/////////////////////////////////////////////*/

/* BEGIN: Hovers
-----------------------------------*/
@media screen and (min-width: 961px) {

	.section-hero .addbutton + a:hover {
		color: var(--mg-white);
	}
	
	.selected-works__item:hover {
		transform: translateY(-10px);
	}
}

/* BEGIN: Mobile */
@media only screen and (max-width: 1024px) {

	.full-width-content .site-inner {
		padding-top: 0;
	}

	.section-meet-founder .col-left,
	.section-ideas .col-left,
	.section-steps .column-group > li,
	.selected-works {
		gap: 20px;
	}
}

/* BEGIN: Mobile */
@media only screen and (min-width: 768px) and (max-width: 1160px) {

	.section-ideas .col-left,
	.section-ideas .col-right {
		width: 100%;
		max-width: 100%;
	}

	.section-ideas .col-right ul {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* BEGIN: Mobile */
@media only screen and (max-width: 990px) {

	.site-inner section {
		padding: 80px 0;
	}

	.section-page .section-wrapper {
		max-width: 100%;
		padding: 0 20px;
	}

	.section-page .column-group {
		gap: 40px 20px;
	}
	
	.section-steps .steps-group__item {
		flex-wrap: wrap;
	}
	
	.section-steps .steps-group__item:before {
		display: none;
	}
	
	.section-cta .col-right {
		padding: 36px;
	}
}

/* BEGIN: Hovers
-----------------------------------*/
@media screen and (max-width: 767px) {

	.section-page .column-group .col,
	.section-steps .column-group > li .content-container {
		width: 100%;
		max-width: 100%;
	}

	.selected-works .selected-works__item {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
/* FIN */