﻿:root {
	--black: #000000;
	--darK-grey: #1B252E;
	--medium-grey: #3E474E;
	--light-grey: #ece9e5;
	--deep-blue: #09093A;
	--white: #ffffff;
	/*--cream: #FFFCF7;*/
	--cream: #F0EEE9;
	--agency-purple: #81097F;
	--agency-orange: #F68500;
	--agency-green: #7BBE23;
	--bureau-blue1: #A3E69;
	--bureau-blue2: #121169;
	--bureau-purple: #471368;
	/*--border-radius: 30px;*/
	--border-radius: 12px;
	--border-radius2: 18px;
	--border-radius3: 30px;
	--border-radius-quad-cta: 48px 12px 24px 12px;
	--dark-magenta: #1F1B1C;
	--font-sans: "Work Sans", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
	--font-serif: "Lora",'Times New Roman', Times, serif;
	--contact-bg: var(--darK-grey);
	--form-input-radius: 3px;
	--input-bg: #fff;
	--service-group-background: #000000;
}

	:root[data-node='Agency'] {
		--contact-bg: hsl(301 87% 10% / 1);
		--form-input-radius: 6px;
		--input-bg: hsl(38deg 100% 98% / 90%);
	}

	:root[data-node='AI'] {
		--contact-bg: #290b3c;
		--form-input-radius: 0;
		--input-bg: hsl(38deg 100% 98% / 90%);
	}

/******************* for reference *******************/
.work-sans-normal {
	font-family: var(--font-sans);
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

.work-sans-bold {
	font-family: var(--font-sans);
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
}


.lora-regular {
	font-family: "Lora", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

.lora-regular-italic {
	font-family: "Lora", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: italic;
}

.lora-medium {
	font-family: "Lora", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}

.lora-medium-italic {
	font-family: "Lora", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: italic;
}

.lora-semibold {
	font-family: "Lora", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
}

.lora-semibold-italic {
	font-family: "Lora", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: italic;
}

.lora-bold {
	font-family: "Lora", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
}

.lora-bold-italic {
	font-family: "Lora", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: italic;
}
/****************************************/

html {
	overflow-x: hidden;
	background-color: var(--cream);
}

body {
	/*background: #fff;*/
	font-family: var(--font-sans);
	font-weight: 400;
	line-height: 1.5;
	color: #111;
	overflow-x: hidden;
}

h1, h2, h3 {
	font-family: var(--font-serif);
	font-weight: 400;
	/*color: #000;*/
}

h4, h5, h6 {
	font-family: var(--font-sans);
	font-weight: 600;
	/*color: #000;*/
}

a {
	transition: all ease-in-out .3s;
}

.serif,
.serif * {
	font-family: var(--font-serif);
}

.sans, .sans * {
	font-family: var(--font-sans);
}


.breadcrumb-wrap {
	padding: 24px;
}

.breadcrumb-guts {
}

	.breadcrumb-guts * {
		margin-right: 12px;
		color: var(--darK-grey);
		font-size: 12px;
		font-weight: 500;
	}

	.breadcrumb-guts a {
		text-decoration: underline;
		font-weight: normal;
	}

ul.agency-icon li {
	position: relative;
	padding-left: 1.4em;
	margin: 0.35em 0;
}

	ul.agency-icon li::before {
		content: "";
		position: absolute;
		left: 0;
		top: 0.4em;
		width: 1em;
		height: 1em;
		background: url("/favicon-32x32.png") no-repeat center / contain;
		opacity: 1;
		/* filter: grayscale(1) contrast(0) brightness(0.5); */
	}

ul.standard-bullet li {
	position: relative;
	padding-left: 1.2em;
	margin: 0.35em 0;
}

	ul.standard-bullet li::before {
		content: "•";
		position: absolute;
		left: 0;
		top: 0;
	}
/* START CONTENT BLOCKS */

.cb-sidebyside-wrap {
	background: transparent;
	width: 93.3385vw;
	margin: auto;
	display: flex;
	gap: 0;
	position: relative;
	height: auto;
	flex-direction: column;
}

.cb-sidebyside-col {
	box-sizing: border-box;
	display: flex;
	justify-content: flex-start;
	overflow-y: auto;
	max-height: 500px;
	border-radius: var(--border-radius) var(--border-radius) 0 0;
	flex-direction: column;
	box-shadow: 0px 6px 6px -3px #0000005c;
	margin-bottom: 12px;
}

	.cb-sidebyside-col.cb-col-text {
		padding: 24px;
		line-height: clamp(20px, 2vw, 32px);
		font-size: clamp(12px, 2vw, 16px);
	}


	.cb-sidebyside-col.cb-col-media {
		border: .25px solid var(--light-grey);
		overflow-y: hidden;
	}

		.cb-sidebyside-col.cb-col-media img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: top;
			display: block;
		}

.cb-sidebyside-left {
}

.cb-sidebyside-right {
	border-radius: 0 0 var(--border-radius) var(--border-radius);
}


a.white {
	color: #fff;
}

a.white {
	color: var(--cream);
}


@media (min-width: 768px) {
	.cb-sidebyside-wrap {
		background: transparent;
		/* width: 93.3385vw; */
		margin: auto;
		/* display: flex; */
		gap: 12px;
		overflow: hidden;
		/* position: relative; */
		/* max-height: 500px; */
		/* flex-direction: row; */
		/* max-height: calc(((93.3385vw - 12px) / 2) * 1); */
		/* height: calc(((93.3385vw - 12px) / 2) * 1); */
		/* max-height: unset; */
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cb-sidebyside-col {
		border-radius: var(--border-radius);
	}

		.cb-sidebyside-col.cb-col-text {
			padding: 24px;
		}

		.cb-sidebyside-col.cb-col-media {
		}

	.cb-sidebyside-left {
	}

	.cb-sidebyside-right {
	}
}
/* END CONTENT BLOCKS */




.header-bar {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 110;
	width: 100vw;
	height: 60px;
	padding: 10px 18px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: linear-gradient( 180deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.25) 55%, rgba(0,0,0,0.00) 100% );
	/*background: linear-gradient( 180deg, rgba(0,0,0,0.0) 0%, rgba(0,0,0,0.50) 50%, rgba(0,0,0,0.00) 100% );*/
}

.ask-pill {
	position: relative;
	display: inline-flex;
	align-items: center;
	/*width: clamp(260px, 34vw, 520px);*/
	width: 100vw;
	height: 32px;
	border-radius: 999px;
	border: 1px solid rgba(255,255,255,0.45);
	background: rgba(255,255,255,0.06);
	transition: left 260ms cubic-bezier(.2, .8, .2, 1), transform 260ms cubic-bezier(.2, .8, .2, 1);
}



[data-node="AI"] .ask-pill,
[data-node="AI"] .ask-input {
	border-radius: 0;
	background: transparent;
}

.ask-input {
	width: 100%;
	height: 100%;
	border: 0;
	outline: none;
	padding: 0 56px 0 18px;
	background: hsl(0deg 0% 100% / 25%);
	color: rgba(255,255,255,0.92);
	border-radius: 999px;
	font: inherit;
	font-size: .875rem;
}


	.ask-input::placeholder {
		color: rgba(255,255,255,0.55);
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}


body:has(.bureau-chat-container:not([data-status='collapse'])) .ask-input {
	background: #fff;
	color: #000;
}

	body:has(.bureau-chat-container:not([data-status='collapse'])) .ask-input::placeholder {
		color: #888; /* Set to your preferred color */
		opacity: 1; /* Firefox requires this to show the full color */
	}



.ask-ai-icon {
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	width: 22px;
	height: 22px;
	object-fit: contain;
	pointer-events: none;
}

.ask-pill:focus-within {
	background: rgba(255,255,255,0.95);
	border-color: rgba(255,255,255,0.95);
	box-shadow: 0 0 0 3px rgba(255,255,255,0.18);
}

	.ask-pill:focus-within .ask-input {
		color: #111;
	}

		.ask-pill:focus-within .ask-input::placeholder {
			color: rgba(0,0,0,0.35);
		}



.bureau-chat-resume {
	display: none;
}



.home-btn {
	width: 44px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

	.home-btn.off {
		display: none;
	}



.home-icon,
.close-icon {
	width: 24px;
	height: auto;
	aspect-ratio: 37 / 32;
	z-index: 1;
}


.home-btn-shadow {
	position: absolute;
	width: 24px;
	height: auto;
	aspect-ratio: 37 / 32;
	mix-blend-mode: darken;
	top: 12px;
	left: 11px;
	filter: invert(1) blur(.2px);
	opacity: .5;
	z-index: 2;
}


.search-close-btn {
	width: 44px;
	height: 44px;
	display: none;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 1;
}

	.search-close-btn.on {
		display: inline-flex;
	}

body:has(.bureau-chat-container[data-status="prime"]) .search-close-btn {
	display: inline-flex;
}




*::-webkit-scrollbar {
	width: 6px;
	background-color: transparent;
}

*::-webkit-scrollbar-track {
	background-color: transparent;
	margin-top: 7px;
	margin-bottom: 7px;
	width: 6px;
	-webkit-border-radius: 999px;
	border-radius: 999px;
}

*::-webkit-scrollbar-button {
	display: none;
}

*::-webkit-scrollbar-thumb {
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background: rgba(120,120,120,.55);
	opacity: .8;
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
}
/*****************************/
.button1 {
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	flex-wrap: nowrap;
	background: rgba(249,243,249,.5);
	border: 1px solid #81097F;
	border-radius: 30px;
	padding: 0px;
	margin: 0px;
	font-size: 1rem;
	line-height: 1;
	text-transform: uppercase;
	transition: all ease-in-out .3s;
	overflow: auto;
}

	.button1 .text {
		display: inline-block;
		padding: 15px 15px 15px 20px;
		color: #000;
		transition: all ease-in-out .3s;
		line-height: 1;
	}

	.button1 .icon {
		background: rgba(129,9,127,.8);
		color: #fff;
		aspect-ratio: 1/1;
		transition: all ease-in-out .3s;
		text-align: center;
		line-height: 1;
		/****************************/
		display: flex;
		align-items: center;
		justify-content: center;
		height: auto; /* inherit stretch height */
		padding: 0 15px; /* horizontal breathing room */
		border-radius: 999px; /* fully round */
	}

	.button1:hover, .button1:active, .button1:focus {
		background: rgba(129,9,127,.9);
	}

		.button1:hover .text, .button1:active .text, .button1:focus .text {
			color: #fff;
		}

		.button1:hover .icon, .button1:active .icon, .button1:focus .icon {
			color: #81097F;
			background: rgba(255,255,255,.9);
		}

	.button1.btn-transparent {
		background: rgba(249,243,249,.05);
		color: #fff;
	}

		.button1.btn-transparent .text {
			color: #fff;
		}

		.button1.btn-transparent .icon {
			color: #fff;
		}

		.button1.btn-transparent:hover, .button1.btn-transparent:active, .button1.btn-transparent:focus {
			background: rgba(249,243,249,.3);
		}

			.button1.btn-transparent:hover .text, .button1.btn-transparent:active .text, .button1.btn-transparent:focus .text {
			}

			.button1.btn-transparent:hover .icon, .button1.btn-transparent:active .icon, .button1.btn-transparent:focus .icon {
				color: #81097F;
				background: rgba(255,255,255,.9);
			}



	.button1.reverse {
		transform: scaleX(-1);
	}

		.button1.reverse .text {
			transform: scaleX(-1);
			padding: 15px 20px 15px 15px;
		}

[data-node="Impartium"] .button1.btn-transparent {
	border-radius: 0 999px 999px 0;
	border: 1px solid #fff;
}

[data-node="Impartium"] .button1 .icon {
	border-radius: 0 999px 999px 0;
	background: #fff;
	color: var(--black);
}

[data-node="Impartium"] .button1.btn-transparent:hover .icon,
[data-node="Impartium"] .button1.btn-transparent:active .icon,
[data-node="Impartium"] .button1.btn-transparent:focus .icon {
	background: var(--bureau-blue2);
	color: rgba(255,255,255,.9);
}



.button2 {
	cursor: pointer;
	display: inline-block;
	background: rgba(255,255,255,.9);
	border: 1px solid #fff;
	border-radius: 10px;
	padding: 15px 20px;
	margin: 0px;
	font-size: 1rem;
	line-height: 1;
	text-transform: uppercase;
	transition: all ease-in-out .3s;
}

	.button2:hover, .button2:active, .button2:focus {
		background: radial-gradient(circle at 0% 5%, rgba(255,255,255,.3) 50%,rgba(129,9,127,.3) 100%)
	}
/*****************************/
@media (min-width: 768px) {
	.ask-pill {
		max-width: calc(clamp(260px, 34vw, 520px));
	}
}

@media (min-width: 1024px) {
	/*.button1 .text {
		display: block;
		padding: 15px 15px 15px 25px;
	}

	.button1 .icon {
		display: flex;
		align-items: center;
		justify-content: center;
		height: auto;*/ /* inherit stretch height */
	/*aspect-ratio: 1 / 1;*/ /* width follows height */
	/*padding: 0 15px;*/ /* horizontal breathing room */
	/*background: rgba(129, 9, 127, .8);
		color: #fff;
		border-radius: 999px;*/ /* fully round */
	/*}*/
}
/*****************************/

.footer {
	position: relative;
	z-index: 1;
	background: #000;
	background-image: url(/assets/images/theAgencySilk.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 1500px;
	/*box-shadow: inset 0px 20px 20px 0px #000;*/
	background-position-y: -120px;
}

.footer-content {
	padding: 30px;
	text-transform: uppercase;
	font-weight: 400;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	background-image: linear-gradient(to bottom, rgba(0,0,0, 1) 0px, rgba(0,0,0, .5) 40px );
	/*
	background-image: radial-gradient(circle,rgba(0,0,0, .5) 0%, rgba(0,0,0, 1) 80%);
	*/
}

.footer-logo img {
	max-height: 70px;
}

.footer-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0px;
}

.footer-content a {
	font-size: clamp(16px,1vw,18px);
	text-transform: uppercase;
	font-weight: 400;
	cursor: pointer;
	color: var(--cream);
	padding: 6px;
	line-height: 1;
	font-size: 11px;
}

	.footer-content a:hover,
	.footer-content a:focus,
	.footer-content a:active {
		color: #fff;
		background: rgba(255,255,255,.2);
	}

@media (min-width: 768px) {
	.footer {
	}

	.footer-content a {
		font-size: clamp(14px,1vw,16px);
	}

	.footer-nav {
	}
}

@media (min-width: 1024px) {
	.footer {
		background-position: center top;
		/* background-size: cover; */
		background-position-y: -120px;
	}

	.footer-content {
		/* background-image: linear-gradient(to bottom, rgba(0,0,0, 1) 0px, rgba(0,0,0, .1) 40px ); */
	}

		.footer-content a {
			font-size: clamp(16px,1vw,18px);
			padding: 15px;
		}


	.footer-nav {
	}
}
/***************************************/
.modal {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1005;
	background-color: rgba(0,0,0, 0.8);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.modal-content {
	/*-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	display: none;*/

	z-index: 1006;
	border-radius: 0;
	position: relative;
	margin-right: auto;
	margin-left: auto;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	/*
	border: 1px solid #cacaca;
	top: 100px;
	padding: 1rem;
	background-color: #fefefe;
	*/
}

.modal-close {
	position: absolute;
	top: 5px;
	right: 5px;
	color: rgba(255,255,255,.5);
	cursor: pointer;
	font-size: 16px;
	line-height: 1;
	padding: 5px;
	margin: 0;
	z-index: 1007;
	transition: all ease-in-out .3s;
}

	.modal-close:hover {
		color: rgba(255,255,255,.8);
	}
/***************************************/

.pnl-contact-thanks {
	display: none;
}

#modalContact .modal-content {
	padding: 30px;
	background: var(--contact-bg);
	border: 1px solid rgba(255,255,255,.1);
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
	color: var(--cream);
	min-height: 100vh;
}

@media (min-width: 768px) {
	#modalContact .modal-content {
		width: 90%;
		max-width: 75rem;
		top: 30px;
		min-height: unset;
		margin-bottom: 60px;
	}
}

@media (min-width: 1024px) {
	#modalContact .modal-content {
	}
}
/****************************************/


.validation-inline .active {
	outline: 1px solid #f00;
}
/*===========================  REVEAL ANIMATIONS =========================*/
/* Rotating word (the <span> inside the h2 that has data-words) */
h2[data-words] > span {
	display: inline-block;
	white-space: nowrap;
	width: auto;
	transition: width 350ms ease, opacity 200ms ease;
	vertical-align: baseline;
	will-change: width, opacity;
}
/* Scroll-reveal: default (pre-scroll) state */
.home-header-text3 .reveal-item {
	opacity: 0;
	transform: translateX(0);
	transition: transform 700ms ease, opacity 500ms ease;
	will-change: transform, opacity;
}
/* Per-child directions */
.home-header-text3 h2.reveal-item {
	transform: translateX(0); /* no slide, just fade */
}

.home-header-text3 .home-logo.reveal-item {
	transform: translateX(-160px); /* from left */
}

.home-header-text3 .hhtt1.reveal-item {
	transform: translateX(160px); /* from right */
}
/* Active (in-view) state */
.home-header-text3.is-visible .reveal-item {
	opacity: 1;
	transform: translateX(0);
}
/* Optional: subtle stagger */
.home-header-text3.is-visible h2.reveal-item {
	transition-delay: 0ms;
}

.home-header-text3.is-visible .home-logo.reveal-item {
	transition-delay: 80ms;
}

.home-header-text3.is-visible .hhtt1.reveal-item {
	transition-delay: 160ms;
}
/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
	.home-header-text3 .reveal-item {
		transition: none;
		opacity: 1;
		transform: none;
	}
}
/* -------------------------------------------
   Side-by-side reveal (per block)
   - observer adds: .is-visible to .reveal-block
   - media side leads, text follows
   - bigger travel distance + opacity
-------------------------------------------- */
/* Only offset + hide BEFORE reveal */
.service-side-by-side.reveal-block-quick10:not(.is-visible) .reveal-item,
.portfolio-item.reveal-block-quick10:not(.is-visible) .reveal-item,
.cb-sidebyside-wrap.reveal-block:not(.is-visible) .reveal-item {
	opacity: 0;
	transition: transform 800ms ease, opacity 650ms ease;
	will-change: transform, opacity;
}
/* If media is on the LEFT: it leads from left, text follows from left */
.service-side-by-side:nth-child(even).reveal-block-quick10:not(.is-visible) .reveal-item,
.portfolio-item:nth-child(even).reveal-block-quick10:not(.is-visible) .reveal-item,
.cb-sidebyside-wrap.reveal-block:not(.is-visible) .cb-sidebyside-left.cb-col-media.reveal-item,
.cb-sidebyside-wrap.reveal-block:not(.is-visible) .cb-sidebyside-left.cb-col-text.reveal-item {
	transform: translateX(-160px);
}


.service-side-by-side:nth-child(odd).reveal-block-quick10:not(.is-visible) .reveal-item,
.portfolio-item:nth-child(odd).reveal-block-quick10:not(.is-visible) .reveal-item,
.cb-sidebyside-wrap.reveal-block:not(.is-visible) .cb-sidebyside-right.cb-col-media.reveal-item,
.cb-sidebyside-wrap.reveal-block:not(.is-visible) .cb-sidebyside-right.cb-col-text.reveal-item {
	transform: translateX(160px);
}
/* Visible (in-view) state */
.service-side-by-side.reveal-block-quick10.is-visible .reveal-item,
.portfolio-item.reveal-block-quick10.is-visible .reveal-item,
.cb-sidebyside-wrap.reveal-block.is-visible .reveal-item {
	opacity: 1;
	transform: translateX(0);
	transition: transform 800ms ease, opacity 650ms ease;
}
/* Stagger: media first, then text */
.service-side-by-side.reveal-block-quick10.is-visible .cb-col-media.reveal-item,
.portfolio-item.reveal-block-quick10.is-visible .cb-col-media.reveal-item,
.cb-sidebyside-wrap.reveal-block.is-visible .cb-col-media.reveal-item {
	transition-delay: 0ms;
}

.service-side-by-side.reveal-block-quick10.is-visible .cb-col-text.reveal-item,
.portfolio-item.reveal-block-quick10.is-visible .cb-col-text.reveal-item,
.cb-sidebyside-wrap.reveal-block.is-visible .cb-col-text.reveal-item {
	/*transition-delay: 140ms;*/
}
/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	.service-side-by-side.reveal-block-quick10 .reveal-item,
	.portfolio-item.reveal-block-quick10 .reveal-item,
	.cb-sidebyside-wrap.reveal-block .reveal-item {
		transition: none !important;
		opacity: 1 !important;
		transform: none !important;
	}
}

@media print {
	.no-print {
		display: none !important;
	}
}


@supports (-webkit-touch-callout: none) {
	.your-hero-class {
		background-attachment: scroll  !important;
	}
}