/* Forms — Request Proposal Split (Frame 13) */
.cew-rps{
	--cew-rps-gap:40px;
	--cew-rps-left-bg:#071A35;
	--cew-rps-card-bg:#FAFBF8;
	--cew-rps-card-border:#E8E8E8;
	--cew-rps-tick:#727B89;
	--cew-rps-logo-h:40px;
	--cew-rps-logo-gap:56px;
	--cew-rps-speed:30s;
	--cew-rps-input-color:#111111;
	--cew-rps-ph:#727272;
	--cew-rps-input-bg:#FFFFFF;
	--cew-rps-input-border:#E8E8E8;
	--cew-rps-input-focus:#071A35;
	--cew-rps-input-h:40px;
	--cew-rps-textarea-h:116px;
	--cew-rps-radius:0px;
	--cew-rps-row-gap:15px;
	--cew-rps-col-gap:8px;
	--cew-rps-btn-bg:#071A35;
	--cew-rps-btn-color:#FFFFFF;
	--cew-rps-btn-bg-h:#12305C;
	--cew-rps-btn-color-h:#FFFFFF;
	--cew-rps-btn-h:48px;
	--cew-rps-btn-space:24px;
	--cew-rps-min-h:623px;
	--cew-rps-foot-logo-h:28px;
	--cew-rps-soc-box:32px;
	--cew-rps-soc-icon:16px;
	--cew-rps-soc-gap:8px;
	--cew-rps-soc-bg:#203149;
	--cew-rps-soc-color:#FFFFFF;
	--cew-rps-soc-bg-h:#31A2FF;
	--cew-rps-soc-color-h:#FFFFFF;
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(0,1fr);
	grid-template-rows:minmax(var(--cew-rps-min-h),auto);
	column-gap:var(--cew-rps-gap);
	font-family:"PP Neue Montreal",Arial,sans-serif;
}
.cew-rps *,.cew-rps *::before,.cew-rps *::after{box-sizing:border-box}

/* ---------- Left panel ---------- */
.cew-rps .cew-rps-left{
	position:relative;
	isolation:isolate;
	display:flex;
	flex-direction:column;
	min-width:0;
	padding:23px 40px 40px 0;
	background:var(--cew-rps-left-bg);
	color:#fff;
}
/* "Whole section": the form card sits on the dark background (Form design) */
.cew-rps--full{
	position:relative;
	isolation:isolate;
	padding:80px 0 24px;
	background:var(--cew-rps-left-bg);
}
.cew-rps--full .cew-rps-left{background:transparent}
.cew-rps--full.cew-rps--bleed{background:transparent}
.cew-rps--full.cew-rps--bleed::before{
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background:var(--cew-rps-left-bg);
	/* extend to the screen edges with a shadow + clip: unlike width:100vw
	   this never adds a horizontal scrollbar */
	box-shadow:0 0 0 100vmax var(--cew-rps-left-bg);
	clip-path:inset(0 -100vmax);
	z-index:-1;
	pointer-events:none;
}

/* "Left side only": dark colour continues to the left screen edge */
.cew-rps--split.cew-rps--bleed .cew-rps-left{background:transparent}
.cew-rps--split.cew-rps--bleed .cew-rps-left::before{
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background:var(--cew-rps-left-bg);
	box-shadow:0 0 0 100vmax var(--cew-rps-left-bg);
	clip-path:inset(0 0 0 -100vmax);
	z-index:-1;
	pointer-events:none;
}

.cew-rps .cew-rps-eyebrow{
	margin:0 0 6px;
	color:#DDDDDD;
	font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
	font-size:14px;
	line-height:1.2;
	letter-spacing:.02em;
	text-transform:uppercase;
}
.cew-rps .cew-rps-heading{
	margin:0 0 32px;
	padding:0;
	color:#fff;
	font-family:inherit;
	font-size:36px;
	font-weight:400;
	line-height:43px;
	letter-spacing:-.01em;
	text-transform:none;
}
.cew-rps .cew-rps-hl{color:#31A2FF}

.cew-rps .cew-rps-checks{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}
.cew-rps .cew-rps-check{
	display:flex;
	align-items:flex-start;
	gap:8px;
	margin:0;
	padding:0;
	color:#fff;
	font-size:14px;
	line-height:20px;
	list-style:none;
}
.cew-rps-check::marker{content:none}
.cew-rps .cew-rps-tick{flex:none;width:12px;height:12px;margin-top:4px;color:var(--cew-rps-tick)}

/* logos: slow marquee with faded edges */
.cew-rps .cew-rps-logos{
	margin-top:auto;
	padding-top:40px;
	overflow:hidden;
	-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%);
	mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%);
}
.cew-rps .cew-rps-logos-track{
	display:flex;
	align-items:center;
	width:max-content;
}
.cew-rps .cew-rps-logos img{
	display:block;
	flex:none;
	width:auto;
	height:var(--cew-rps-logo-h);
	max-width:none;
	margin-right:var(--cew-rps-logo-gap);
	object-fit:contain;
	opacity:.85;
}
.cew-rps--marquee .cew-rps-logos-track{animation:cew-rps-marquee var(--cew-rps-speed) linear infinite}
.cew-rps--marquee .cew-rps-logos:hover .cew-rps-logos-track{animation-play-state:paused}
@keyframes cew-rps-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- Right: form card ---------- */
.cew-rps .cew-rps-right{min-width:0;display:flex}
.cew-rps .cew-rps-card{
	width:100%;
	padding:22px 24px 24px;
	border:1px solid var(--cew-rps-card-border);
	background:var(--cew-rps-card-bg);
}
.cew-rps .cew-rps-notice{margin:0;padding:16px;border:1px dashed #c9c9c9;color:#555;font-size:13px}

/* Custom Forms Manager form, restyled to the design */
.cew-rps .cfm-form-title{margin:0 0 20px;text-align:left}
.cew-rps .cfm-form-grid{gap:var(--cew-rps-row-gap) var(--cew-rps-col-gap)}
.cew-rps .cfm-field{gap:7px}
.cew-rps .cfm-field > label{
	color:#000;
	font-family:inherit;
	font-size:14px;
	font-weight:400;
	line-height:20px;
}
.cew-rps .cfm-required{display:none}
.cew-rps .cfm-field input:not([type="checkbox"]):not([type="file"]),
.cew-rps .cfm-field select,
.cew-rps .cfm-field textarea{
	min-height:var(--cew-rps-input-h);
	height:var(--cew-rps-input-h);
	padding:0 16px;
	border:1px solid var(--cew-rps-input-border);
	border-radius:var(--cew-rps-radius);
	background-color:var(--cew-rps-input-bg);
	color:var(--cew-rps-input-color);
	font-family:inherit;
	font-size:14px;
	line-height:20px;
	box-shadow:none;
	transition:border-color .2s ease;
}
.cew-rps .cfm-field textarea{
	height:var(--cew-rps-textarea-h);
	min-height:var(--cew-rps-textarea-h);
	padding:8px 16px;
	resize:vertical;
}
.cew-rps .cfm-field select{
	-webkit-appearance:none;
	appearance:none;
	padding-right:40px;
	color:var(--cew-rps-ph);
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%234B4B4B' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat:no-repeat;
	background-position:right 16px center;
	background-size:12px 12px;
	cursor:pointer;
}
.cew-rps .cfm-field input::placeholder,
.cew-rps .cfm-field textarea::placeholder{color:var(--cew-rps-ph);opacity:1}
.cew-rps .cfm-field input:focus,
.cew-rps .cfm-field select:focus,
.cew-rps .cfm-field textarea:focus{border-color:var(--cew-rps-input-focus);outline:none}

.cew-rps .cfm-form-response{min-height:0;margin:0}
.cew-rps .cfm-form-response:not(:empty){margin-top:14px;font-size:13px}
.cew-rps .cfm-submit-button{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:var(--cew-rps-btn-h);
	margin:var(--cew-rps-btn-space) 0 0;
	padding:0 24px;
	border:0;
	border-radius:0;
	background:var(--cew-rps-btn-bg);
	color:var(--cew-rps-btn-color);
	font-family:inherit;
	font-size:16px;
	font-weight:400;
	line-height:1.2;
	transition:background-color .2s ease,color .2s ease;
}
.cew-rps .cfm-submit-button:hover,
.cew-rps .cfm-submit-button:focus-visible{background:var(--cew-rps-btn-bg-h);color:var(--cew-rps-btn-color-h)}
.cew-rps .cfm-submit-note{margin:15px 0 0;color:#4B4B4B;font-size:12px;line-height:1.4;text-align:center}

/* ---------- Footer: logo + social ---------- */
.cew-rps .cew-rps-foot{
	grid-column:1 / -1;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	margin-top:64px;
}
.cew-rps .cew-rps-foot-logo{display:inline-flex;align-items:center;color:#fff;text-decoration:none}
.cew-rps .cew-rps-foot-logo img{display:block;width:auto;height:var(--cew-rps-foot-logo-h);max-width:none}
.cew-rps .cew-rps-foot-name{font-size:24px;line-height:1;letter-spacing:.02em}
.cew-rps .cew-rps-social{display:flex;align-items:center;gap:var(--cew-rps-soc-gap);margin:0;padding:0;list-style:none}
.cew-rps .cew-rps-social li{margin:0;padding:0;list-style:none}
.cew-rps .cew-rps-social li::marker{content:none}
.cew-rps .cew-rps-social a{
	display:flex;
	align-items:center;
	justify-content:center;
	width:var(--cew-rps-soc-box);
	height:var(--cew-rps-soc-box);
	background:var(--cew-rps-soc-bg);
	color:var(--cew-rps-soc-color);
	font-size:var(--cew-rps-soc-icon);
	line-height:1;
	text-decoration:none;
	transition:background-color .2s ease,color .2s ease;
}
.cew-rps .cew-rps-social a:hover,
.cew-rps .cew-rps-social a:focus-visible{background:var(--cew-rps-soc-bg-h);color:var(--cew-rps-soc-color-h)}
.cew-rps .cew-rps-social i{font-size:inherit;color:inherit}
.cew-rps .cew-rps-social svg{width:var(--cew-rps-soc-icon);height:var(--cew-rps-soc-icon);fill:currentColor}

/* ---------- Responsive ---------- */
@media(max-width:1024px){
	.cew-rps{--cew-rps-gap:24px}
	.cew-rps .cew-rps-heading{font-size:30px;line-height:1.2}
}
@media(max-width:767px){
	.cew-rps{grid-template-columns:1fr;grid-template-rows:auto;row-gap:24px;--cew-rps-min-h:0px}
	.cew-rps .cew-rps-left{padding:32px 0 24px}
	.cew-rps--split.cew-rps--bleed .cew-rps-left::before{clip-path:inset(0 -100vmax)}
	.cew-rps .cew-rps-foot{margin-top:40px}
	.cew-rps .cew-rps-heading{font-size:28px;line-height:1.2;margin-bottom:24px}
	.cew-rps .cfm-form-grid{grid-template-columns:1fr}
	.cew-rps .cfm-width-half,.cew-rps .cfm-width-full{grid-column:1/-1}
}
@media(prefers-reduced-motion:reduce){
	.cew-rps--marquee .cew-rps-logos-track{animation:none}
}
