/**
 * This CSS file is intended to be loaded remotely from external iMIS site which will be loaded via iframe.
 */

 :root {
	--primary-color: #d7282f;
	--secondary-color: #111;
	--text-color: #333;
	/* --text-color: #4a5568; */
	--link-color: var(--primary-color);
	--link-hover-color: var(--primary-color);
	--button-color: var(--primary-color);
	--button-hover-color: var(--secondary-color);

	--light-color: #f3f3f3;

	--error-color: #e53e3e;
	--disabled-color: #ded0be;
}

html,
#MainBody,
#MainBody > form {
	height: auto;
}

.EmptyMasterContentPanel {
	overflow-y: hidden !important;
}

/**
 * Account iframe full-width styles
 */
.agcga-account-fullwidth {
	width: 100%;
	max-width: 100%;
	padding: 0;
}

.agcga-account-content-fullwidth {
	width: 100%;
	max-width: 100%;
	padding: 0;
}

.agcga-iframe-container {
	width: 100%;
	height: 800px; /* Adjust height as needed */
	overflow: hidden;
}

.agcga-iframe {
	width: 100%;
	height: 100%;
	border: none;
}

/**
 * My Profile Page - Modern & Fresh Styling
 */

/* Overall Layout Improvements */
.body-container {
	font-family:
		-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu,
		Cantarell, "Helvetica Neue", sans-serif;
	color: #4a5568;
	line-height: 1.6;
	max-width: 1200px;
	margin: 0 auto;
	padding: 30px;
	background-color: #f8fafc;
	border-radius: 6px; /* Reduced rounded corners */
	box-shadow: 0 5px 20px rgba(0, 0, 0, 0.03);
}

/* Layout Adjustments to Match Design - Using Flexbox */
.body-container {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.col-sm-3.col-secondary {
	display: block !important;
	width: 30%;
	padding-right: 15px;
	flex: 0 0 30%;
}

.col-sm-9.col-primary {
	width: 70%;
	padding-left: 15px;
	flex: 0 0 70%;
}

/* Profile Header and Name */
.BreakWord .SectionLabel {
	font-size: 18px;
	font-weight: 600;
	color: #333;
	margin: 10px 0;
	text-transform: uppercase;
}

/* Profile Section Styling */
#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactName_divFullName {
	text-align: center;
	box-shadow: none;
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactName_divFullName .PanelField {
	margin-bottom: 0;
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactName_fullName {
	box-shadow: none;
	text-align: center;
	display: block;
	margin: 0 auto;
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture_ctl00 {
	box-shadow: none;
}

#ctl00_ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture_RadAjaxPanel1Panel {
	padding: 5px 0;
}

/* Show edit button */
#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture_ctl000 .rbHideElement {
	display: inline-block !important;
	visibility: visible !important;
	width: auto !important;
	height: auto !important;
	overflow: visible !important;
	border: 0 !important;
	padding: 0 5px !important;
	background-color: transparent !important;
	color: var(--primary-color) !important;
	font-weight: 500 !important;
	font-size: 14px !important;
	font-family: "Montserrat", sans-serif !important;
	bottom: 8px;
	position: relative;
}

/* Edit button styling */
#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture_ctl000 {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease;
	position: absolute;
	z-index: 71;
	/* width: 50px; */
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: -7px;
	background: none !important;
	color: var(--primary-color) !important;
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture_ctl000::before {
	/* content: "\270E";  /* Pencil icon */
	/* display: inline-block;
	margin-right: 5px;
	font-size: 14px; */
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture_RadAjaxPanel1 {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	width: 90px;
	height: 90px;
	border: 2px solid var(--light-color);
	border-radius: 50%;
	overflow: hidden;
	position: relative;
	background-color: #f8f8f8;
}

/* Profile image styling */
#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture_profileImage {
	/* width: 120px; */
	/* height: 120px; */
	object-fit: cover;
	max-width:50px;
	/* border-radius: 50%; */
}

#ctl00_TemplateBody_WebPartManager1_gwpciNewContactMiniProfileCommon_ciNewContactMiniProfileCommon_contactPicture__Head, #ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture__Head {
	display: block;
	background-color: transparent;
	padding: 0;
	position: relative;
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_contactPicture__Head .panel-heading-options {
	position: relative;
	width: 100%;
	z-index: 10;
	height: 30px;
}

/* Profile Picture Section */
#ctl01_TemplateBody_WebPartManager1_gwpciNewContactMiniProfileCommon_ciNewContactMiniProfileCommon_contactPicture_profileImage {
	border-radius: 50%;
	border: 2px solid #f5f5f5;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	width: 100px;
	height: 100px;
	object-fit: cover;
}

/* Panel Styling - Matching Event Calendar Card Style */
.panel {
	border: none;
	border-radius: 6px; /* Reduced rounded corners */
	margin-bottom: 24px;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
	transition: all 0.3s ease;
	background-color: #fff;
	display: flex;
	flex-direction: column;
}

.panel:hover {
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
}

.panel-heading {
	padding: 14px 20px;
	color: #fff;
	border: none;
	border-radius: 6px 6px 0 0;
	background-color: var(--secondary-color);
}

.agcga-login-area .panel-heading {
	color: var(--text-color);
	text-align: center;
	background-color: transparent;
}

.agcga-login-area .panel-heading.Distinguish {
	border-bottom-width: 0;
}

.panel-title {
	font-size: 1.6rem;
	color: #fff;
}

/* Ensure text and links in red backgrounds have white color */
.panel-heading a,
.panel-heading span,
.panel-heading div,
[style*="background-color: #d7282f"] a,
[style*="background-color: #d7282f"] span,
[style*="background-color: #d7282f"] div,
[style*="background-color:#d7282f"] a,
[style*="background-color:#d7282f"] span,
[style*="background-color:#d7282f"] div,
[class*="bg-d7282f"] a,
[class*="bg-d7282f"] span,
[class*="bg-d7282f"] div {
	color: white !important;
}

.panel-heading.Collapsible {
	cursor: pointer;
}

.panel-body .panel .panel-heading:not(.Distinguish) {
	display: none;
}

#ctl00_TemplateBody_WebPartManager1_gwpciNewContactMiniProfileCommon_ciNewContactMiniProfileCommon_contactPicture__Head
	.panel-heading-options
	.IconSprite {
	filter: none;
}

#ctl00_TemplateBody_WebPartManager1_gwpciNewContactMiniProfileCommon_ciNewContactMiniProfileCommon__Body
	.panel {
	margin-bottom: 0;
	box-shadow: none;
}

.Distinguish .panel-heading-options {
	margin-top: 0;
}

.panel-heading-options .IconSprite {
	color: #fff;
	/* filter: brightness(0) invert(1); */
}

.panel-heading-options {
	display: flex;
	justify-content: flex-end;
	padding: 5px 0;
}

.member-directory-section .panel-heading {
	display: none;
}

.member-directory-section .filter-panel .panel-heading {
	display: none;
}

/* Beginning of Address editor in "Address" tab */
.AddressEditor .RadTabStrip {
	margin-bottom: 20px;
}
/* End of Address editor */

.agcga-login-area {
	font-family: "Montserrat", sans-serif;
	color: #333;
	font-size: 1.4rem;
}

.agcga-login-area .panel-title,
.member-directory-section .iMIS-WebPart .ContentItemContainer h2 {
	display: block;
	color: var(--text-color);
	font-size: 3.2rem;
	font-weight: 700;
	margin: 0 0 10px;
	font-family: "Montserrat", sans-serif;
}

.agcga-login-area .panel-description {
	font-size: 1.6rem;
}

.agcga-login-area .panel-body {
	padding: 0;
	background-color: #fff;
	border-radius: 0 0 6px 6px; /* Reduced rounded corners */
	flex-grow: 1;
}

.agcga-login-area .panel-body-container {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.agcga-account-page .panel-body-container {
	background-image: none;
}

/* Remove box-shadow from panels in account page */
#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection__Body .panel {
	box-shadow: none;
	margin-bottom: 0px;
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection__Body .panel:hover {
	box-shadow: none;
}

/* Form Fields Styling */
.PanelField {
	margin-bottom: 18px;
	display: flex;
	align-items: flex-start;
	gap: 1rem;
}

.PanelField label {
	display: block;
	font-weight: 600;
	color: #4a5568;
	margin-bottom: 6px;
	font-size: 14px;
}

.agcga-login-area .PanelField label {
	width: 100%;
}

.agcga-account-page
	.ContentItemContainer
	> .panel
	> .panel-heading:not(.Distinguish) {
	display: none;
}

.agcga-account-page .panel-heading-collapse-img {
	border-radius: 50%;
	/* filter: brightness(0) invert(1); */
}

.agcga-account-page .ContentItemContainer > .panel .rtsUL {
	width: 100%;
}

.agcga-account-page .ContentWizardDisplay {
	border-width: 0;
}

.agcga-account-page .ContentWizardDisplay > div > .row > .col-sm-12,
.member-directory-section .EmptyMasterContentPanel > div > .row > .col-sm-12 {
	padding-top: 0;
}

.member-search-form {
	margin-top: 40px;
}

/* Table cell alignment */
table .PanelField {
	margin-bottom: 10px;
}

table .PanelFieldLabelColumn {
	text-align: right;
	padding-right: 15px;
	vertical-align: top;
	width: 35%;
}

table .PanelFieldValueColumn {
	text-align: left;
	vertical-align: top;
	width: 65%;
}

/* General table styling for forms */
.panel-body table {
	width: 100%;
}

.panel-body table td:first-of-type {
	text-align: right;
	padding-right: 15px;
}

.panel-body table td:last-of-type {
	text-align: left;
}

.PanelFieldValue input[type="text"],
.PanelFieldValue input[type="email"],
.PanelFieldValue input[type="password"],
.PanelFieldValue input[type="tel"],
.PanelFieldValue select,
.PanelFieldValue textarea,
.RadInput .riTextBox {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 4px; /* Reduced rounded corners */
	font-size: 14px;
	transition: all 0.3s ease;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
	background-color: #f8fafc;
	color: #4a5568;
}

.PanelFieldValue input[type="text"]:hover,
.PanelFieldValue input[type="email"]:hover,
.PanelFieldValue input[type="password"]:hover,
.PanelFieldValue input[type="tel"]:hover,
.PanelFieldValue select:hover,
.PanelFieldValue textarea:hover,
.RadInput .riTextBox:hover {
	border-color: #cbd5e0;
}

.PanelFieldValue input[type="text"]:focus,
.PanelFieldValue input[type="email"]:focus,
.PanelFieldValue input[type="password"]:focus,
.PanelFieldValue input[type="tel"]:focus,
.PanelFieldValue select:focus,
.PanelFieldValue textarea:focus,
.RadInput .riTextBox:focus {
	border-color: #d7282f;
	outline: none;
	box-shadow: 0 0 0 3px rgba(215, 40, 47, 0.1);
	background-color: #fff;
}

.PanelFieldValue select {
	height: 40px;
	background-color: #f8fafc;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d7282f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-right: 30px;
}

#ctl00_TemplateBody_WebPartManager1_gwpciNewContentCollectionOrganizerCommon_ciNewContentCollectionOrganizerCommon_NewPanelEditorCommon_panelEditor_CsContact___BirthDate {
	display: block !important;
}

.agcga-account-page .RadPicker,
.agcga-account-page .RadInput .riTextBox {
	display: block !important;
	width: 100% !important;
}

html body .riSingle .riTextBox {
	padding: 10px 12px;
	height: auto;
}

/* Button Styling - Matching Event Calendar */
.TextButton,
input.TextButton,
.PrimaryButton,
input.PrimaryButton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 40px;
	height: 48px;
	background-image: none;
	background-color: var(--button-color);
	font-size: 1.4rem;
	text-transform: uppercase;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: all 0.3s ease;
	letter-spacing: 0.5px;
	margin-bottom: 1.5rem;
	font-family: "Montserrat", sans-serif;
	box-shadow: 0 2px 4px rgba(215, 40, 47, 0.2);
}

.PrimaryButton[disabled] {
	display: inline-flex;
	height: 48px;
	font-size: 1.4rem !important;
	background-color: var(--disabled-color);
	cursor: not-allowed;
}

.HorizontalButtons a.btn {
	background: #d7282f !important;
	color: white !important;
	margin: 1em 0;
}

.PrimaryButton a,
.PrimaryButton span,
.PrimaryButton div {
	color: white;
}

.TextButton.Cancel {
	color: var(--text-color);
	background-color: transparent;
}

.TextButton:hover {
	border-color: #cbd5e0;
}

.TextButton:hover,
.PrimaryButton:hover,
.TextButton:active,
.PrimaryButton:active,
.TextButton:focus,
.PrimaryButton:focus {
	color: white;
	text-decoration: none;
	background-image: none;
	background-color: var(--button-hover-color);
	box-shadow: 0 4px 6px rgba(215, 40, 47, 0.3);
}

.TextButton.Cancel:hover {
	color: var(--text-color);
	background-color: var(--light-color);
}

/* Tab Navigation - Matching Event Page Color Scheme */
.RadTabStrip {
	border-width: 0 !important;
}

.RadTabStrip .rtsLevel .rtsUL {
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid #e2e8f0;
	padding: 0;
	margin: 0;
	color: var(--text-color) !important;
	background-color: #f8fafc !important;
	border-radius: 8px 8px 0 0;
	overflow: hidden;
}

.rtsLI {
	list-style: none !important;
}

.RadTabStrip .rtsLevel .rtsLink {
	border: none;
}

.RadTabStrip .rtsLevel {
	background-color: white !important;
}

.RadTabStrip .rtsLevel .rtsUL .rtsLink:hover {
	color: #d7282f !important;
	background-color: rgba(215, 40, 47, 0.05) !important;
	text-decoration: none !important;
}

.RadTabStrip .rtsLevel .rtsUL .rtsLink {
	display: block;
	position: relative;
	padding: 12px 13px;
	margin-right: 0;
	color: var(--text-color);
	text-decoration: none;
	font-weight: 500;
	background-color: transparent !important;
	border: none;
	border-bottom: 2px solid transparent !important;
	transition: all 0.3s ease;
}

.RadTabStrip .rtsLevel .rtsUL .rtsLink.rtsSelected {
	color: #d7282f !important;
	background-color: #fff;
	border: none;
	border-bottom: 2px solid var(--primary-color) !important;
	font-weight: 600;
}

/* Calendar Popup Button */
.rcCalPopup {
	background-color: #f8fafc !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 6px;
	padding: 8px 10px;
	color: #4a5568;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.RadPicker_Default .rcCalPopup {
	background-position: 8px 8px;
}

.RadPicker_Default a.rcCalPopup:hover {
	background-position: 8px -42px;
}

.rcCalPopup:hover {
	background-color: #f1f5f9;
	border-color: #cbd5e0;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* View Company Profile Section */
#ctl01_TemplateBody_WebPartManager1_gwpciNewQueryMenuCommon_ciNewQueryMenuCommon__Head {
	background-color: #d7282f;
}

/* Links Styling */
a {
	color: #d7282f;
	text-decoration: none;
	transition: all 0.3s ease;
	font-weight: 500;
}

a:hover {
	color: #b5151c;
	text-decoration: underline;
}

/* Layout for the profile content columns - Using Flexbox */
.row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	column-gap: 0;
	row-gap: 0;
	font-family: "Montserrat", sans-serif;
}

.col-sm-4 {
	width: 24%;
	flex: 0 0 24%;
	/* padding-right: 25px; */
	margin-bottom: 20px;
}

.agcga-account-page.account-section.event-detail .col-sm-4, 
.agcga-account-page.account-section.event-detail .col-sm-8 {
	margin-bottom: 0 !important;
	display: none !important;
}

.col-sm-8 {
	width: 70%;
	flex: 0 0 70%;
}

.col-sm-12 {
	width: 100%;
	flex: 0 0 100%;
	padding-top: 20px;
}

/* Hide secondary column and make primary column full width */
.col-secondary {
	display: none;
}

.col-primary {
	width: 100%;
}

/* Row styles - Using Flexbox */
.ClearFix {
	/* display: flex; */
	flex-wrap: wrap;
}

/* My Profile Layout Structure - Matching the Event Calendar Style - Using Flexbox */
.iframe-sources {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.iframe-sources .col-sm-4,
.iframe-sources .col-sm-8,
.iframe-sources .col-sm-12 {
	box-sizing: border-box;
	padding: 0.75rem;
}

.iframe-sources .col-sm-4 {
	width: 22%;
	padding-right: 2rem;
	flex: 0 0 22%;
}

.iframe-sources .col-sm-8 {
	width: 73%;
	padding-left: 2rem;
	flex: 0 0 73%;
}

.iframe-sources .col-sm-12 {
	width: 100%;
	flex: 0 0 100%;
	margin-top: 1.5rem;
	padding-top: 1.5rem;
}

/* Meta items styling similar to event calendar */
.PanelFieldValue {
	flex: 1;
	position: relative;
}

/* Table styling for better alignment */
table.FormPanel {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0 8px;
}

table.FormPanel td {
	padding: 4px 8px;
	vertical-align: top;
}

table.FormPanel td:first-child {
	text-align: right;
	width: 35%;
	padding-right: 15px;
}

table.FormPanel td:last-child {
	text-align: left;
	width: 65%;
}

.PanelFieldValue p {
	margin: 0;
	font-size: 0.9rem;
	color: #4a5568;
	line-height: 1.6;
	padding: 0.25rem 0;
}

.PanelFieldValue strong {
	color: #2d3748;
	font-weight: 600;
}

/* Icon styling for profile elements */
.profile-meta-icon {
	width: 32px;
	height: 32px;
	background-color: rgba(215, 40, 47, 0.1);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #d7282f;
	font-size: 0.9rem;
	flex-shrink: 0;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	transition: all 0.3s ease;
}

.profile-meta-icon:hover {
	transform: scale(1.05);
	background-color: rgba(215, 40, 47, 0.15);
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
}

/* Responsive Adjustments - Using Flexbox */
@media (max-width: 992px) {
	.body-container,
	.row,
	.iframe-sources,
	.ClearFix {
		flex-direction: column;
	}

	.col-sm-3.col-secondary,
	.col-sm-9.col-primary,
	.col-sm-4,
	.col-sm-8 {
		width: 100%;
		flex: 0 0 100%;
		padding: 0.5rem;
		margin-bottom: 1rem;
	}

	.agcga-account-page.account-section.event-detail .col-sm-4, 
	.agcga-account-page.account-section.event-detail .col-sm-8 {
		display: none !important;
		margin-bottom: 0 !important;
	}

	.col-sm-12 {
		width: 100%;
		flex: 0 0 100%;
		padding: 0.5rem;
		margin-bottom: 1rem;
	}

	.panel-body {
		padding: 0.75rem;
	}

	.RadTabStrip .rtsLevel .rtsUL .rtsLink {
		padding: 8px 12px;
	}

	.PanelField {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 576px) {
	.body-container {
		padding: 10px;
	}

	.panel-heading {
		padding: 10px 15px;
	}

	.panel-body {
		padding: 0.5rem;
	}

	.TextButton,
	input.TextButton,
	.PrimaryButton,
	input.PrimaryButton {
		display: flex;
		width: 100%;
		margin-bottom: 0.5rem;
	}
}

/**
 * Login Page Styles - Frame Sources
 */

/* Login Page Layout */
.col-sm-3 {
	width: 25%;
	padding: 0 15px;
	box-sizing: border-box;
}

.col-sm-6 {
	width: 50%;
	padding: 0 15px;
	box-sizing: border-box;
	margin: 0 auto;
}

/* Login Panel Styling */
.agcga-login-area .panel-border {
	margin: 0 auto;
	padding: 40px;
	max-width: 450px;
	font-family: "Montserrat", sans-serif;
	border: none;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
	background-color: #fff;
	transition: all 0.3s ease;
}

.agcga-login-area .panel-border:hover {
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

/* Login Form Fields */
.SignIn {
	max-width: none;
	margin: 0;
}

.SignIn .PanelField {
	margin-bottom: 1.5rem;
	display: block;
}

.SignIn .PanelField label {
	margin-bottom: 0.8rem;
}

.SignIn .PanelField input[type="text"],
.SignIn .PanelField input[type="password"] {
	display: flex;
	align-items: center;
	padding: 0 15px;
	width: 100%;
	height: 48px;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	font-size: 1.5rem;
	transition: all 0.3s ease;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
	background-color: #f8fafc;
	box-sizing: border-box;
	font-family: "Montserrat", sans-serif;
}

.SignIn .PanelField input[type="text"]:focus,
.SignIn .PanelField input[type="password"]:focus {
	border-color: #d7282f;
	outline: none;
	box-shadow: 0 0 0 3px rgba(215, 40, 47, 0.1);
	background-color: #fff;
}

/* Error Messages */
.SignIn .Error.ValidationError {
	display: block;
	color: var(--error-color);
	margin-top: 0.8rem;
}

/* Sign In Button */
.SignIn .SignInButton.TextButton {
	display: flex;
	width: 100%;
	background-image: none;
	background-color: var(--button-color);
}

.SignIn .SignInButton.TextButton:hover {
	background-image: none;
	background-color: var(--button-hover-color);
}

/* Forgot Username/Password Links */
.SignIn .CenterText {
	text-align: center;
}

.SignIn .CenterText a {
	color: var(--link-color);
	text-decoration: none;
	transition: all 0.3s ease;
}

.SignIn .CenterText a:hover {
	color: var(--link-hover-color);
	text-decoration: underline;
}

/* Start of "Community resource library" */
#SplitterContainer {
	height: auto !important;
}

.community-resource-library table.RadSplitter .rspPane > div {
	height: auto !important;
}

/* Start data table UIs */
.data-table-section .RadGrid .rgPager input.rgPagerButton:hover,
.data-table-section .RadGrid .rgPager input.rgPagerButton:active,
.data-table-section .RadGrid .rgPager input.rgPagerButton:focus {
	background-color: var(--secondary-color);
}

.data-table-section .RadGrid .rgPager input.rgPagerButton {
	background-color: var(--primary-color);
}

.data-table-section .RadGrid .rgPager .rgPagerButton {
	display: inline-flex;
	line-height: 1;
	align-items: center;
	justify-content: center;
	padding: 0 12px;
	border-radius: 4px;
}

.data-table-section .RadGrid .rgNumPart a.rgCurrentPage,
.data-table-section .RadGrid .rgNumPart a.rgCurrentPage:hover,
.data-table-section .RadGrid .rgNumPart a.rgCurrentPage:active,
.data-table-section .RadGrid .rgNumPart a.rgCurrentPage:focus {
	background-color: var(--secondary-color);
}

.data-table-section .RadGrid .rgPageFirst,
.data-table-section .RadGrid .rgPagePrev,
.data-table-section .RadGrid .rgPageNext,
.data-table-section .RadGrid .rgPageLast {
	margin: 0 2px;
}

.data-table-section .RadGrid .rgPageFirst {
	margin-left: 0;
}

.data-table-section .RadGrid .rgPageLast {
	margin-right: 0;
}

.data-table-section .RadGrid .rgNumPart a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 2px;
	width: 30px;
	height: 30px;
	line-height: 1;
}

.member-directory-section
	.data-table-section
	.RadGrid
	.NextPrevNumericAndAdvanced
	.rgAdvPart {
	float: left;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid var(--light-color);
}
/* End of data tabale UIs */

/* Responsive Adjustments for Login */
@media (max-width: 768px) {
	.col-sm-3 {
		display: none;
	}

	.col-sm-6 {
		width: 100%;
		padding: 0 15px;
	}

	.panel-border {
		margin: 1rem auto;
	}
}

@media (max-width: 576px) {
	.account-section .TwoColumns {
		display: block;
		width: 100%;
	}

	.agcga-login-area .panel-border {
		padding: 0 24px;
		box-shadow: none;
	}

	.SignIn .PanelField input[type="text"],
	.SignIn .PanelField input[type="password"] {
		padding: 10px 12px;
	}

	.SignIn .SignInButton {
		padding: 10px 16px;
	}

	.agcga-account-page .PanelField label {
		width: 100%;
	}

	.PanelFieldValue,
	.Left .PanelFieldValue {
		float: none;
		display: block;
		width: 100%;
	}
}

.agcga-event-details .TitleBarTitle {
	display: none !important;
}

.Description p,
.Description ul li,
.Description span {
	font-size: 1.5rem !important;
	font-weight: 500;
}

#ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_ContactLocationAreaDiv {
	display: none !important;
}

.EventSummary {
	background-color: #fff;
}

.ProgramGroup .PanelHead {
	background-color: var(--primary-color);
}

.PanelTitle {
	color: #fff;
}

.inline-auth .panel {
	margin: 0 auto;
	padding: 40px;
	max-width: 450px;
	font-family: "Montserrat", sans-serif;
	border: none;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
	background-color: #fff;
	transition: all 0.3s ease;
}

/**
 * Event Display Page Styles
 */
.EventDisplay {
	font-family: "Montserrat", sans-serif;
	max-width: 1200px;
	margin: 0 auto;
	padding: 30px;
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
	color: var(--text-color);
	line-height: 1.6;
}

/* Hide empty spaces and elements in Event Display */
.EventDisplay div:empty {
	display: none !important;
}

.EventDisplay div:not(:has(*)):not(:has(text)):empty {
	display: none !important;
}

/* Hide divs that only contain whitespace */
.EventDisplay div:not(:has(*)):not(:has(img)):not(:has(input)):not(:has(button)):not(:has(a)) {
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
}

/* Specifically target empty areas in EventSummary */
.EventDisplay .EventSummary > div:empty {
	display: none !important;
}

/* Hide empty lines and spaces in ContactLocationArea */
.EventDisplay .ContactLocationArea > div:empty,
.EventDisplay .RegistrationArea > div:empty {
	display: none !important;
}

/* Remove spacing from elements that appear empty */
.EventDisplay div:not(:has(span)):not(:has(div)):not(:has(input)):not(:has(button)):not(:has(a)):not(:has(img)) {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

/* Hide clear divs that create unnecessary space */
.EventDisplay div[style*="clear: both"]:empty {
	display: none !important;
}

/* Reduce spacing for elements with minimal content */
.EventDisplay .EventSummary {
	margin-bottom: 20px; /* Reduced from 30px */
}

.EventDisplay .EventDetails {
	margin-top: 20px; /* Reduced from 30px */
}

/* Event Summary Section */
.EventDisplay .EventSummary {
	margin-bottom: 30px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e2e8f0;
}

/* Description Content */
.EventDisplay .Description {
	position: relative;
	overflow: hidden;
}

/* Panel Field Styling */
.EventDisplay .PanelField {
	margin-bottom: 20px;
	overflow: hidden;
}

/* Typography Improvements */
.EventDisplay h1,
.EventDisplay h2,
.EventDisplay h3,
.EventDisplay h4 {
	color: var(--secondary-color);
	margin-top: 1.5em;
	margin-bottom: 0.75em;
	line-height: 1.3;
}

.EventDisplay p {
	margin-bottom: 1.2em;
	font-size: 1.5rem;
	line-height: 1.6;
}

.EventDisplay ul,
.EventDisplay ol {
	margin-bottom: 1.5em;
	padding-left: 1.5em;
}

.EventDisplay li {
	margin-bottom: 0.5em;
	font-size: 1.5rem;
}

/* Image Styling - Making Images Responsive */
.EventDisplay img {
	max-width: 100%;
	height: auto;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Fix for Floating Images - Using Modern CSS Grid/Flexbox */
.EventDisplay .Description {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
}

.EventDisplay .Description img[style*="float: right"],
.EventDisplay .Description img[style*="float:right"] {
	float: none !important;
	margin-left: auto;
	margin-right: 0;
	margin-bottom: 20px;
	max-width: 50%;
}

.EventDisplay .Description img[style*="float: left"],
.EventDisplay .Description img[style*="float:left"] {
	float: none !important;
	margin-right: auto;
	margin-left: 0;
	margin-bottom: 20px;
	max-width: 50%;
}

/* For larger screens, use CSS Grid for text and image layout */
@media (min-width: 768px) {
	.EventDisplay .Description {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}

	.EventDisplay .Description > div:first-child {
		grid-column: 1 / -1;
	}
}

/* Styling for Event Details Section */
.EventDisplay .EventDetails {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 30px;
}

.EventDisplay .ContactLocationArea {
	flex: 1;
	min-width: 300px;
	background-color: #f8fafc;
	padding: 20px;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

/* Panel Field Label and Value Styling */
.EventDisplay .PanelFieldLabel {
	font-weight: 600;
	color: var(--secondary-color);
	margin-bottom: 5px;
}

.EventDisplay .PanelFieldValue {
	color: var(--text-color);
}

/* Highlight Important Text */
.EventDisplay strong {
	color: #2d3748;
}

.EventDisplay [style*="color: #c00000"],
.EventDisplay [style*="color:#c00000"] {
	color: var(--primary-color) !important;
}

/* Links Styling */
.EventDisplay a {
	color: var(--link-color);
	text-decoration: none;
	transition: all 0.3s ease;
	font-weight: 500;
}

.EventDisplay a:hover {
	color: var(--link-hover-color);
	text-decoration: underline;
}

/* Background Highlight Styling */
.EventDisplay [style*="background-color: #c4bd97"],
.EventDisplay [style*="background-color:#c4bd97"] {
	background-color: rgba(215, 40, 47, 0.1) !important;
	padding: 2px 0px;
	border-radius: 4px;
	color: var(--primary-color) !important;
}

/* Clear Fix */
.EventDisplay .ClearFix {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.EventDisplay .ClearFix .PanelFieldLabel {
	flex: 0 0 100px;
	text-align: right;
	padding-right: 15px;
}

.EventDisplay .ClearFix .PanelFieldValue {
	flex: 1;
}

/* Responsive Breakpoints */
@media (max-width: 992px) {
	.EventDisplay {
		padding: 20px;
	}

	.EventDisplay .Description img[style*="float: right"],
	.EventDisplay .Description img[style*="float:right"],
	.EventDisplay .Description img[style*="float: left"],
	.EventDisplay .Description img[style*="float:left"] {
		max-width: 70%;
		margin: 0 auto 20px;
		display: block;
	}
}

@media (max-width: 768px) {
	.EventDisplay {
		padding: 15px;
		border-radius: 6px;
	}

	.EventDisplay .Description img[style*="float: right"],
	.EventDisplay .Description img[style*="float:right"],
	.EventDisplay .Description img[style*="float: left"],
	.EventDisplay .Description img[style*="float:left"] {
		max-width: 100%;
	}

	.EventDisplay .ClearFix {
		flex-direction: column;
	}

	.EventDisplay .ClearFix .PanelFieldLabel {
		flex: 0 0 100%;
		text-align: left;
		padding-right: 0;
	}
}

@media (max-width: 576px) {
	.EventDisplay {
		padding: 10px;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	}

	.EventDisplay p,
	.EventDisplay li {
		font-size: 1.4rem;
	}
}

/* Additional rules to hide specific empty elements that cause spacing issues */
.EventDisplay .EventSummary > div:not(:has(div)):not(:has(span)):not(:has(p)):not(:has(img)):not(:has(a)) {
	display: none !important;
}

/* Hide empty paragraph tags that only contain non-breaking spaces */
.EventDisplay p:empty,
.EventDisplay p:not(:has(*)):not(:has(text)) {
	display: none !important;
}

/* Target specific empty divs in the ContactLocationArea */
.EventDisplay .ContactLocationArea > div:not([id]):not([class]):empty {
	display: none !important;
}

/* Hide divs that only contain line breaks or whitespace */
.EventDisplay div:not(:has(*)):not(:has(text)):not([id]):not([class]) {
	display: none !important;
}

/* Reduce spacing between sections when there are empty elements */
.EventDisplay .EventSummary + .EventDetails {
	margin-top: 15px !important;
}

/* Hide any remaining empty divs at the end of sections */
.EventDisplay > div:last-child:empty {
	display: none !important;
}

/* Reduce top spacing in EventDisplay to minimize empty space at the top */
.EventDisplay {
	padding-top: 15px !important; /* Reduced from default 30px */
}

/* Target the main container that might have excessive top spacing */
.EventDisplay .EventSummary {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Reduce spacing in the Description section */
.EventDisplay .Description {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Hide empty elements at the very beginning of EventDisplay */
.EventDisplay > div:first-child:empty {
	display: none !important;
}

/* Reduce spacing for the first non-empty element */
.EventDisplay > div:first-child {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/**
 * Enhanced Responsive Styles for inline-auth login form
 */
@media (max-width: 768px) {
	.inline-auth .panel {
		max-width: 100%;
		padding: 30px;
	}

	.inline-auth .SignIn .PanelField {
		margin-bottom: 20px;
	}

	.inline-auth .SignIn .PanelField input[type="text"],
	.inline-auth .SignIn .PanelField input[type="password"] {
		height: 46px;
		font-size: 16px; /* Better size for mobile readability */
	}

	.inline-auth .SignIn .SignInButton.TextButton {
		height: 46px;
	}
}

@media (max-width: 576px) {
	.inline-auth .panel {
		padding: 20px;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	}

	.inline-auth .panel-title {
		font-size: 2.4rem;
	}

	.inline-auth .SignIn .PanelField {
		margin-bottom: 16px;
	}

	.inline-auth .SignIn .PanelField label {
		font-size: 14px;
		margin-bottom: 6px;
	}

	.inline-auth .SignIn .PanelField input[type="text"],
	.inline-auth .SignIn .PanelField input[type="password"] {
		height: 44px;
		padding: 0 12px;
	}

	.inline-auth .SignIn .SignInButton.TextButton {
		height: 44px;
		font-size: 14px;
	}

	.inline-auth .SignIn .CenterText {
		margin-top: 16px;
	}

	.inline-auth .SignIn .CenterText a {
		padding: 6px; /* Larger touch target */
		display: inline-block;
	}
}

@media (max-width: 375px) {
	.inline-auth .panel {
		padding: 15px;
		margin: 0;
	}

	.inline-auth .panel-title {
		font-size: 2.2rem;
		margin-bottom: 15px;
	}

	.inline-auth .SignIn .PanelField {
		margin-bottom: 12px;
	}

	.inline-auth .SignIn .PanelField input[type="text"],
	.inline-auth .SignIn .PanelField input[type="password"] {
		height: 42px;
	}

	.inline-auth .SignIn .SignInButton.TextButton {
		height: 42px;
	}
}

/**
 * Pricing Data Table Styles
 */

/* Main container styling */
.PricingData {
  font-family: "Montserrat", sans-serif;
  max-width: 1200px;
  margin: 0 auto 30px;
  padding: 25px;
  background-color: #fff;
  border-radius: 6px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  color: var(--text-color);
  line-height: 1.6;
}

/* Registration options container */
#ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_RegistrationOptionsDiv {
  margin-bottom: 20px;
}

/* Table styling */
.PricingData .RadGrid,
.PricingData .RadGrid_MetroTouch {
  border: none;
  background: transparent;
}

.PricingData .rgMasterTable,
.PricingData table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin-bottom: 20px;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  overflow: hidden;
}

/* Table header styling */
.PricingData .rgHeader,
.PricingData th.rgHeader {
  background-color: var(--secondary-color);
  color: #fff;
  font-weight: 600;
  font-size: 1.5rem;
  padding: 15px 20px;
  text-align: left;
  border: none;
}

.PricingData .rgHeader:last-child,
.PricingData th.rgHeader:last-child,
.PricingData th[style*="text-align:right"] {
  text-align: right;
}

/* Table row styling */
.PricingData .rgRow,
.PricingData tbody tr {
  background-color: #fff;
  transition: all 0.3s ease;
}

.PricingData .rgRow:nth-child(even),
.PricingData tbody tr:nth-child(even) {
  background-color: #f8fafc;
}

.PricingData .rgRow:hover,
.PricingData tbody tr:hover {
  background-color: rgba(215, 40, 47, 0.05);
}

.PricingData .rgRow td,
.PricingData tbody td {
  padding: 15px 20px;
  border-bottom: 1px solid #e2e8f0;
  vertical-align: middle;
}

.PricingData .rgRow:last-child td,
.PricingData tbody tr:last-child td {
  border-bottom: none;
}

/* Radio button and label styling */
.PricingData input[type="radio"] {
  margin-right: 10px;
  cursor: pointer;
}

.PricingData input[type="radio"]:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

.PricingData label {
  font-size: 1.4rem;
  color: var(--text-color);
  cursor: pointer;
  font-weight: 500;
}

.PricingData .aspNetDisabled label {
  cursor: not-allowed;
  color: #666;
}

/* Price column styling */
.PricingData .AlignRight {
  text-align: right;
}

.PricingData .Disabled {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--text-color);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .PricingData {
    padding: 15px;
    margin-bottom: 20px;
  }

  .PricingData .rgHeader,
  .PricingData .rgRow td {
    padding: 12px 15px;
  }

  .PricingData .rgHeader {
    font-size: 1.4rem;
  }

  .PricingData label,
  .PricingData .Disabled {
    font-size: 1.3rem;
  }
}

@media (max-width: 576px) {
  .PricingData {
    padding: 10px;
    margin-bottom: 15px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  }

  .PricingData .rgHeader,
  .PricingData .rgRow td {
    padding: 10px;
  }

  .PricingData .rgHeader {
    font-size: 1.3rem;
  }

  .PricingData label,
  .PricingData .Disabled {
    font-size: 1.2rem;
  }
}

/**
 * Event Details Row Styles
 */

/* Event Details Row Container */
.EventDetails.row {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin: 30px 0;
	font-family: "Montserrat", sans-serif;
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
	padding: 25px;
}

/* Hide empty elements in EventDetails row */
.EventDetails.row > div:empty {
	display: none !important;
}

.EventDetails.row .ContactLocationArea > div:empty,
.EventDetails.row .RegistrationArea > div:empty {
	display: none !important;
}

/* Remove spacing from empty divs in registration area */
.EventDetails.row .RegistrationArea > div:not(:has(input)):not(:has(span)):not(:has(div)):empty {
	display: none !important;
}

/* Hide empty lines between registration elements */
.EventDetails.row div:not([id]):not([class]):not(:has(*)):empty {
	display: none !important;
}

/* Contact Location Area */
.ContactLocationArea {
	flex: 1;
	min-width: 280px;
	background-color: #f8fafc;
	padding: 20px;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	margin-bottom: 15px;
}

/* Registration Area */
.RegistrationArea {
	flex: 1;
	min-width: 280px;
	background-color: #f8fafc;
	padding: 20px;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	margin-bottom: 15px;
}

/* Panel Field Styling */
.EventDetails .PanelField {
	margin-bottom: 15px;
	overflow: hidden;
}

.EventDetails .PanelFieldLabel {
	font-weight: 600;
	color: var(--secondary-color);
	margin-bottom: 5px;
	font-size: 1.4rem;
}

.EventDetails .PanelFieldValue {
	color: var(--text-color);
	font-size: 1.5rem;
}

/* When and Where Sections */
.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_WhenDiv,
.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_WhereDiv {
	position: relative;
	padding-left: 30px;
	margin-bottom: 20px;
}

.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_WhenDiv:before,
.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_WhereDiv:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 24px;
	height: 24px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_WhenDiv:before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23d7282f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
}

.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_WhereDiv:before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23d7282f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'%3E%3C/path%3E%3Ccircle cx='12' cy='10' r='3'%3E%3C/circle%3E%3C/svg%3E");
}

.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_WhenData,
.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_AddressData {
	font-weight: 500;
}

/* Address Styling */
.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_AddressData {
	display: block;
	line-height: 1.6;
	padding: 5px 0;
}

/* Clear Fix for Panel Fields */
.EventDetails .ClearFix {
	display: flex;
	flex-direction: column;
}

/* Registration Buttons */
.EventDetails .PrimaryButton,
.EventDetails .SecondaryButton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-bottom: 15px;
	padding: 0 20px;
	height: 48px;
	background-image: none;
	background-color: var(--button-color);
	font-size: 1.4rem;
	text-transform: uppercase;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: all 0.3s ease;
	letter-spacing: 0.5px;
	font-family: "Montserrat", sans-serif;
	box-shadow: 0 2px 4px rgba(215, 40, 47, 0.2);
	color: white;
	position: relative;
	overflow: hidden;
}

.EventDetails .SecondaryButton {
	background-color: var(--secondary-color);
}

.EventDetails .PrimaryButton:hover,
.EventDetails .SecondaryButton:hover {
	background-color: var(--button-hover-color);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
	transform: translateY(-2px);
}

.EventDetails .PrimaryButton:active,
.EventDetails .SecondaryButton:active {
	transform: translateY(1px);
	box-shadow: 0 2px 3px rgba(0, 0, 0, 0.2);
}

/* Button Ripple Effect */
.EventDetails .PrimaryButton:after,
.EventDetails .SecondaryButton:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 5px;
	height: 5px;
	background: rgba(255, 255, 255, 0.5);
	opacity: 0;
	border-radius: 100%;
	transform: scale(1, 1) translate(-50%);
	transform-origin: 50% 50%;
}

.EventDetails .PrimaryButton:focus:not(:active)::after,
.EventDetails .SecondaryButton:focus:not(:active)::after {
	animation: ripple 1s ease-out;
}

@keyframes ripple {
	0% {
		transform: scale(0, 0);
		opacity: 0.5;
	}
	20% {
		transform: scale(25, 25);
		opacity: 0.3;
	}
	100% {
		opacity: 0;
		transform: scale(40, 40);
	}
}

/* Registration Status */
.EventDetails .HelperText {
	display: block;
	font-size: 1.3rem;
	color: var(--primary-color);
	margin-bottom: 15px;
	font-style: italic;
}

.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_RegistrationStatusCaption,
.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_RegistrationStatusData {
	display: inline-block;
	margin-top: 10px;
	font-size: 1.4rem;
}

.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_RegistrationStatusCaption {
	font-weight: 600;
	margin-right: 5px;
}

.EventDetails #ctl00_TemplateBody_WebPartManager1_gwpciEventDisplay_ciEventDisplay_RegistrationStatusData {
	color: var(--primary-color);
	font-weight: 500;
}

/* Staff Use Only Section */
.EventDetails .NeutralShading {
	background-color: rgba(0, 0, 0, 0.03);
	padding: 15px;
	border-radius: 6px;
	margin-top: 20px;
}

.EventDetails .NeutralShading i {
	font-style: italic;
	color: #666;
	margin-bottom: 10px;
	display: block;
}

/* Responsive Styles */
@media (max-width: 992px) {
	.EventDetails.row {
		flex-direction: column;
		padding: 20px;
	}

	.ContactLocationArea,
	.RegistrationArea {
		width: 100%;
	}
}

@media (max-width: 768px) {
	.EventDetails.row {
		padding: 15px;
		margin: 20px 0;
	}

	.ContactLocationArea,
	.RegistrationArea {
		padding: 15px;
	}

	.EventDetails .PanelFieldLabel,
	.EventDetails .PanelFieldValue {
		font-size: 1.4rem;
	}
}

@media (max-width: 576px) {
	.EventDetails.row {
		padding: 12px;
		margin: 15px 0;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	}

	.ContactLocationArea,
	.RegistrationArea {
		padding: 12px;
	}

	.EventDetails .PanelFieldLabel,
	.EventDetails .PanelFieldValue {
		font-size: 1.3rem;
	}

	.EventDetails .PrimaryButton,
	.EventDetails .SecondaryButton {
		height: 44px;
		font-size: 1.3rem;
	}
}

/**
 * Program List Page Styles
 */

/* TitleBarCaption Styling */
.agcga-account-page.account-section.event-detail .TitleBarCaption {
	background-color: #fff;
	padding: 20px;
	margin-bottom: 20px;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	font-family: "Montserrat", sans-serif;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	display: none;
}

.agcga-account-page.account-section.event-detail .event-summary-section {
	/* display: none !important; */
}

.TitleBarCaption span {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	width: 100%;
}

.TitleBarCaption label {
	font-weight: 600;
	color: var(--secondary-color);
	margin-right: 10px;
	font-size: 1.5rem;
}

.TitleBarCaption select {
	padding: 10px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 4px;
	font-size: 14px;
	transition: all 0.3s ease;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
	background-color: #f8fafc;
	color: #4a5568;
	min-width: 150px;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d7282f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-right: 30px;
}

.TitleBarCaption select:hover {
	border-color: #cbd5e0;
}

.TitleBarCaption select:focus {
	border-color: var(--primary-color);
	outline: none;
	box-shadow: 0 0 0 3px rgba(215, 40, 47, 0.1);
	background-color: #fff;
}

/* ProgramGroup Styling */
.ProgramGroup {
	font-family: "Montserrat", sans-serif;
	margin-bottom: 30px;
}

.ProgramGroup .PanelHead {
	background-color: var(--secondary-color);
	color: #fff;
	padding: 5px 0px;
	border-radius: 5px;
	/* display: flex; */
	justify-content: space-between;
	align-items: center;
	text-align: left;
}

.ProgramGroup .PanelTitle {
	color: #fff;
	font-size: 1.5rem;
	font-weight: 400;
	margin: 0;
}

.ProgramGroup .PanelHeadOptions {
	display: flex;
	align-items: center;
}

.ProgramGroup .PanelHeadCollapseImage {
	/* width: 25px; */
	/* height: 20px; */
	cursor: pointer;
	/* filter: brightness(0) invert(1); */
	/* border-radius: 50%; */
	transition: transform 0.3s ease;
}

.ProgramGroup .PanelBody {
	background-color: #fff;
	/* border: 1px solid #e2e8f0; */
	border-top: none;
	border-radius: 5px;
	padding: 20px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

/* Program Item Summary Styling */
.ProgramItemSummary {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #f0f0f0;
}

.ProgramItemSummary:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.DescriptionColumn {
	flex: 1;
	min-width: 250px;
	padding-right: 15px;
}

.WhenColumn {
	width: 120px;
	text-align: center;
	padding: 0 10px;
}

.IteneraryColumn {
	width: 150px;
	text-align: right;
}

.ListItemTitle {
	margin-bottom: 10px;
}

.ListItemTitle a {
	color: var(--primary-color);
	font-weight: 600;
	font-size: 1.5rem;
	text-decoration: none;
	transition: all 0.3s ease;
}

.ListItemTitle a:hover {
	color: var(--secondary-color);
	text-decoration: underline;
}

.PanelField {
	margin-bottom: 10px;
}

.PanelFieldLabel {
	font-weight: 600;
	color: var(--secondary-color);
	margin-bottom: 5px;
}

.FloatRight {
	float: right;
}

/* Responsive Styles */
@media (max-width: 992px) {
	.ProgramItemSummary {
		flex-direction: column;
	}

	.DescriptionColumn {
		width: 100%;
		padding-right: 0;
		margin-bottom: 10px;
	}

	.WhenColumn {
		width: 100%;
		text-align: left;
		padding: 0;
		margin-bottom: 10px;
	}

	.IteneraryColumn {
		width: 100%;
		text-align: left;
	}
}

@media (max-width: 768px) {
	.TitleBarCaption {
		padding: 15px;
	}

	.TitleBarCaption span {
		flex-direction: column;
		align-items: flex-start;
	}

	.TitleBarCaption label {
		margin-bottom: 10px;
		margin-right: 0;
	}

	.TitleBarCaption select {
		width: 100%;
	}

	.ProgramGroup .PanelHead {
		padding: 12px 15px;
	}

	.ProgramGroup .PanelTitle {
		font-size: 1.6rem;
	}

	.ProgramGroup .PanelBody {
		padding: 15px;
	}
}

@media (max-width: 576px) {
	.TitleBarCaption {
		padding: 12px;
		margin-bottom: 15px;
	}

	.ProgramGroup .PanelHead {
		padding: 10px 12px;
	}

	.ProgramGroup .PanelTitle {
		font-size: 1.4rem;
	}

	.ProgramGroup .PanelBody {
		padding: 12px;
	}

	.ListItemTitle a {
		font-size: 1.4rem;
	}
}


.iframe-logout-btn {
	background-color: var(--primary-color) !important;
	padding: 5px 10px;
	color:#fff;
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_divContactName {
	display: none !important;
}

.iframe-logout-btn {
	background-color: var(--primary-color) !important;
	padding: 5px 10px;
	color:#fff;
}

#ctl00_TemplateBody_WebPartManager1_gwpciMiniProfileSection_ciMiniProfileSection_divContactName {
	display: none !important;
}

/**
 * SIC Codes Page Styles
 */

/* Main SIC Codes Container */
.agcga-account-page.account-section.org-profile {
	font-family: "Montserrat", sans-serif;
	max-width: 1200px;
	margin: 0 auto;
	padding: 30px;
	background-color: #f8fafc;
	color: var(--text-color);
	line-height: 1.6;
}

/* SIC Codes Panel Styling */
.agcga-account-page.account-section.org-profile .panel {
	border: none;
	border-radius: 8px;
	margin-bottom: 24px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
	transition: all 0.3s ease;
	background-color: #fff;
}

.agcga-account-page.account-section.org-profile .panel:hover {
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
}

/* Panel Heading */
.agcga-account-page.account-section.org-profile .panel-heading {
	background-color: var(--secondary-color);
	color: #fff;
	padding: 20px 25px;
	border: none;
	border-radius: 8px 8px 0 0;
	position: relative;
}

.agcga-account-page.account-section.org-profile .panel-heading.Collapsible {
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.agcga-account-page.account-section.org-profile .panel-heading.Collapsible:hover {
	background-color: rgba(17, 17, 17, 0.9);
}

.agcga-account-page.account-section.org-profile .panel-title {
	font-size: 1.8rem;
	font-weight: 600;
	color: #fff;
	margin: 0;
	line-height: 1.3;
}

.agcga-account-page.account-section.org-profile .panel-title a {
	color: #fff;
	text-decoration: none;
	display: block;
}

.agcga-account-page.account-section.org-profile .panel-title a:hover {
	color: #fff;
	text-decoration: none;
}

/* Panel Heading Options */
.agcga-account-page.account-section.org-profile .panel-heading-options {
	position: absolute;
	right: 25px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	gap: 10px;
}

.agcga-account-page.account-section.org-profile .panel-heading-collapse {
	color: #fff;
	text-decoration: none;
	transition: all 0.3s ease;
}

.agcga-account-page.account-section.org-profile .panel-heading-collapse:hover {
	color: rgba(255, 255, 255, 0.8);
}

.agcga-account-page.account-section.org-profile .panel-heading-collapse-img {
	width: 20px;
	height: 20px;
	filter: brightness(0) invert(1);
	transition: transform 0.3s ease;
}

.agcga-account-page.account-section.org-profile .panel-heading-collapse-img:hover {
	transform: scale(1.1);
}

/* Panel Body */
.agcga-account-page.account-section.org-profile .panel-body {
	padding: 30px;
	background-color: #fff;
}

/* Product Code Section */
.agcga-account-page.account-section.org-profile .PanelField {
	margin-bottom: 0;
}

.agcga-account-page.account-section.org-profile .PanelField .Label {
	font-size: 1.6rem;
	font-weight: 600;
	color: var(--secondary-color);
	margin-bottom: 20px;
	display: block;
}

/* Checkbox List Container */
.agcga-account-page.account-section.org-profile .CheckBoxList {
	border: 2px solid #e2e8f0 !important;
	border-radius: 8px !important;
	background-color: #f8fafc !important;
	padding: 20px !important;
	margin: 0 !important;
	max-height: 400px;
	overflow-y: auto;
	transition: all 0.3s ease;
}

.agcga-account-page.account-section.org-profile .CheckBoxList:hover {
	border-color: #cbd5e0 !important;
}

.agcga-account-page.account-section.org-profile .CheckBoxList:focus-within {
	border-color: var(--primary-color) !important;
	box-shadow: 0 0 0 3px rgba(215, 40, 47, 0.1);
}

/* Custom Scrollbar */
.agcga-account-page.account-section.org-profile .CheckBoxList::-webkit-scrollbar {
	width: 8px;
}

.agcga-account-page.account-section.org-profile .CheckBoxList::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius: 4px;
}

.agcga-account-page.account-section.org-profile .CheckBoxList::-webkit-scrollbar-thumb {
	background: #cbd5e0;
	border-radius: 4px;
	transition: background 0.3s ease;
}

.agcga-account-page.account-section.org-profile .CheckBoxList::-webkit-scrollbar-thumb:hover {
	background: var(--primary-color);
}

/* Individual Checkbox Items */
.agcga-account-page.account-section.org-profile .CheckBoxList input[type="checkbox"] {
	margin-right: 12px;
	margin-bottom: 8px;
	width: 18px;
	height: 18px;
	cursor: pointer;
	accent-color: var(--primary-color);
	transition: all 0.3s ease;
}

.agcga-account-page.account-section.org-profile .CheckBoxList input[type="checkbox"]:hover {
	transform: scale(1.05);
}

.agcga-account-page.account-section.org-profile .CheckBoxList input[type="checkbox"]:focus {
	outline: 2px solid var(--primary-color);
	outline-offset: 2px;
}

.agcga-account-page.account-section.org-profile .CheckBoxList label {
	font-size: 1.4rem;
	color: var(--text-color);
	cursor: pointer;
	line-height: 1.5;
	margin-bottom: 12px;
	display: inline-block;
	transition: all 0.3s ease;
	padding: 4px 0;
	border-radius: 4px;
	width: calc(100% - 30px);
}

.agcga-account-page.account-section.org-profile .CheckBoxList label:hover {
	color: var(--primary-color);
	background-color: rgba(215, 40, 47, 0.05);
	padding-left: 8px;
	padding-right: 8px;
}

/* "Check all" option styling */
.agcga-account-page.account-section.org-profile .CheckBoxList input[type="checkbox"][value=""] + label {
	font-weight: 600;
	color: var(--secondary-color);
	border-bottom: 1px solid #e2e8f0;
	padding-bottom: 12px;
	margin-bottom: 16px;
	background-color: rgba(17, 17, 17, 0.02);
	padding-left: 8px;
	padding-right: 8px;
	border-radius: 6px;
}

.agcga-account-page.account-section.org-profile .CheckBoxList input[type="checkbox"][value=""]:checked + label {
	background-color: rgba(215, 40, 47, 0.1);
	color: var(--primary-color);
}

/* Responsive Design */
@media (max-width: 992px) {
	.agcga-account-page.account-section.org-profile {
		padding: 20px;
	}

	.agcga-account-page.account-section.org-profile .panel-heading {
		padding: 18px 20px;
	}

	.agcga-account-page.account-section.org-profile .panel-title {
		font-size: 1.6rem;
	}

	.agcga-account-page.account-section.org-profile .panel-body {
		padding: 25px;
	}

	.agcga-account-page.account-section.org-profile .CheckBoxList {
		max-height: 350px;
		padding: 18px !important;
	}
}

@media (max-width: 768px) {
	.agcga-account-page.account-section.org-profile {
		padding: 15px;
	}

	.agcga-account-page.account-section.org-profile .panel-heading {
		padding: 15px 18px;
	}

	.agcga-account-page.account-section.org-profile .panel-title {
		font-size: 1.5rem;
		line-height: 1.4;
	}

	.agcga-account-page.account-section.org-profile .panel-body {
		padding: 20px;
	}

	.agcga-account-page.account-section.org-profile .CheckBoxList {
		max-height: 300px;
		padding: 15px !important;
	}

	.agcga-account-page.account-section.org-profile .CheckBoxList label {
		font-size: 1.3rem;
	}

	.agcga-account-page.account-section.org-profile .panel-heading-options {
		right: 18px;
	}
}

@media (max-width: 576px) {
	.agcga-account-page.account-section.org-profile {
		padding: 10px;
	}

	.agcga-account-page.account-section.org-profile .panel-heading {
		padding: 12px 15px;
	}

	.agcga-account-page.account-section.org-profile .panel-title {
		font-size: 1.4rem;
	}

	.agcga-account-page.account-section.org-profile .panel-body {
		padding: 15px;
	}

	.agcga-account-page.account-section.org-profile .CheckBoxList {
		max-height: 250px;
		padding: 12px !important;
	}

	.agcga-account-page.account-section.org-profile .CheckBoxList label {
		font-size: 1.2rem;
		line-height: 1.4;
	}

	.agcga-account-page.account-section.org-profile .CheckBoxList input[type="checkbox"] {
		width: 16px;
		height: 16px;
		margin-right: 10px;
	}

	.agcga-account-page.account-section.org-profile .panel-heading-options {
		right: 15px;
	}

	.agcga-account-page.account-section.org-profile .panel-heading-collapse-img {
		width: 18px;
		height: 18px;
	}
}

/* Focus and Accessibility Improvements */
.agcga-account-page.account-section.org-profile .CheckBoxList input[type="checkbox"]:focus + label {
	background-color: rgba(215, 40, 47, 0.1);
	color: var(--primary-color);
	outline: 2px solid var(--primary-color);
	outline-offset: 2px;
}

/* Animation for collapsible content */
.agcga-account-page.account-section.org-profile .panel-body-container.collapse {
	transition: height 0.3s ease;
}

.agcga-account-page.account-section.org-profile .panel-body-container.collapse.in {
	height: auto;
}

/* Loading state styling */
.agcga-account-page.account-section.org-profile .RadAjax {
	border-radius: 8px;
	background-color: rgba(248, 250, 252, 0.9) !important;
}

.agcga-account-page.account-section.org-profile .RadAjax .raDiv {
	background-color: var(--primary-color);
	border-radius: 4px;
}

/* #ste_container_ciCopyofActionButtons .panel {
	box-shadow: none !important;
	margin: 0;
	bottom: 12px;
	position: relative;
}

#ste_container_ciCopyofActionButtons .panel-heading {
	padding: 0;
	margin: 0px;
}

div#ste_container_ciCopyofActionButtons .HorizontalButtons a.btn {
	margin: 0;
} */

/**
 * Event Detail Form Fields Styling (Question Fields in iframe)
 */

/* Main form section container */
.FormSectionWrapper {
	background-color: #fff;
	border-radius: 8px;
	padding: 25px;
	margin-bottom: 20px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
	font-family: "Montserrat", sans-serif;
}

/* Individual form field containers */
.PanelField.FormFieldResponse {
	margin-bottom: 25px;
	padding: 20px 0;
	border-bottom: 1px solid #f0f0f0;
}

.PanelField.FormFieldResponse:last-of-type {
	border-bottom: none;
	margin-bottom: 15px;
}

/* Form field labels */
.FormFieldResponse .PanelFieldLabel {
	margin-bottom: 15px;
	width: 100%;
}

.FormFieldResponse .PanelFieldLabel label,
.FormFieldResponse .PanelFieldLabel span.Required.Label {
	display: block;
	font-weight: 600;
	color: var(--secondary-color);
	font-size: 1.5rem;
	line-height: 1.4;
	margin-bottom: 10px;
	width: 100%;
}

.FormFieldResponse .PanelFieldLabel span.Required.Label {
	color: var(--text-color);
}

/* Text input fields */
.FormFieldResponse .PanelFieldValue input[type="text"] {
	width: 100%;
	padding: 12px 15px;
	border: 2px solid #e2e8f0;
	border-radius: 6px;
	font-size: 1.4rem;
	font-family: "Montserrat", sans-serif;
	transition: all 0.3s ease;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	background-color: #f8fafc;
	color: var(--text-color);
	box-sizing: border-box;
}

.FormFieldResponse .PanelFieldValue input[type="text"]:hover {
	border-color: #cbd5e0;
	background-color: #fff;
}

.FormFieldResponse .PanelFieldValue input[type="text"]:focus {
	border-color: var(--primary-color);
	outline: none;
	box-shadow: 0 0 0 3px rgba(215, 40, 47, 0.1);
	background-color: #fff;
}

/* Radio button table styling */
.FormFieldResponse .PanelFieldValue table.AutoWidth {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	margin-top: 5px;
}

.FormFieldResponse .PanelFieldValue table.AutoWidth tbody tr {
	background: transparent;
	display: flex;
	flex-wrap: wrap;
	gap: 25px;
	align-items: center;
}

.FormFieldResponse .PanelFieldValue table.AutoWidth td {
	padding: 0;
	vertical-align: middle;
	border: none;
	display: flex;
	align-items: center;
}

/* Radio button styling */
.FormFieldResponse .PanelFieldValue input[type="radio"] {
	width: 18px;
	height: 18px;
	margin-right: 8px;
	margin-left: 0;
	cursor: pointer;
	accent-color: var(--primary-color);
	flex-shrink: 0;
}

.FormFieldResponse .PanelFieldValue input[type="radio"]:focus {
	outline: 2px solid var(--primary-color);
	outline-offset: 2px;
}

/* Radio button labels */
.FormFieldResponse .PanelFieldValue table label {
	font-size: 1.4rem;
	font-weight: 500;
	color: var(--text-color);
	cursor: pointer;
	line-height: 1.4;
	display: flex;
	align-items: center;
	margin: 0;
	white-space: nowrap;
}

.FormFieldResponse .PanelFieldValue table label:hover {
	color: var(--primary-color);
}

/* Validation error messages */
.FormFieldResponse .ValidationError {
	display: block;
	color: var(--error-color);
	font-size: 1.3rem;
	margin-top: 8px;
	font-weight: 500;
}

.FormFieldResponse .ValidationError.Important {
	color: #e67e22;
}

/* Update Responses button styling */
.FormSectionWrapper .PrimaryButton.FloatRight.TextButton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 30px;
	height: 48px;
	background-image: none;
	background-color: var(--button-color);
	font-size: 1.4rem;
	font-weight: 600;
	text-transform: uppercase;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: all 0.3s ease;
	letter-spacing: 0.5px;
	margin-top: 20px;
	margin-bottom: 0;
	font-family: "Montserrat", sans-serif;
	box-shadow: 0 3px 6px rgba(215, 40, 47, 0.2);
	color: white;
	float: none;
	width: auto;
	min-width: 200px;
}

.FormSectionWrapper .PrimaryButton.FloatRight.TextButton:hover {
	background-color: var(--button-hover-color);
	box-shadow: 0 4px 8px rgba(215, 40, 47, 0.3);
	transform: translateY(-1px);
}

.FormSectionWrapper .PrimaryButton.FloatRight.TextButton:active {
	transform: translateY(0);
	box-shadow: 0 2px 4px rgba(215, 40, 47, 0.2);
}

/* Save message label */
.FormSectionWrapper .FloatRight {
	float: none;
	display: block;
	text-align: center;
	margin-top: 15px;
}

/* Button container alignment */
.FormSectionWrapper {
	text-align: center;
}

/* Responsive adjustments for form fields */
@media (max-width: 768px) {
	.FormSectionWrapper {
		padding: 20px;
		margin-bottom: 15px;
	}

	.PanelField.FormFieldResponse {
		margin-bottom: 20px;
		padding: 15px 0;
	}

	.FormFieldResponse .PanelFieldLabel label,
	.FormFieldResponse .PanelFieldLabel span.Required.Label {
		font-size: 1.4rem;
	}

	.FormFieldResponse .PanelFieldValue input[type="text"] {
		padding: 10px 12px;
		font-size: 1.3rem;
	}

	.FormFieldResponse .PanelFieldValue table.AutoWidth tbody tr {
		gap: 20px;
	}

	.FormFieldResponse .PanelFieldValue table.AutoWidth td {
		padding: 0;
	}

	.FormFieldResponse .PanelFieldValue table label {
		font-size: 1.3rem;
	}

	.FormSectionWrapper .PrimaryButton.FloatRight.TextButton {
		width: 100%;
		margin-top: 15px;
		height: 44px;
		font-size: 1.3rem;
	}
}

@media (max-width: 576px) {
	.FormSectionWrapper {
		padding: 15px;
		border-radius: 6px;
	}

	.PanelField.FormFieldResponse {
		margin-bottom: 18px;
		padding: 12px 0;
	}

	.FormFieldResponse .PanelFieldLabel label,
	.FormFieldResponse .PanelFieldLabel span.Required.Label {
		font-size: 1.3rem;
		margin-bottom: 6px;
	}

	.FormFieldResponse .PanelFieldValue input[type="text"] {
		padding: 10px;
		font-size: 1.2rem;
	}

	.FormFieldResponse .PanelFieldValue table.AutoWidth tbody tr {
		gap: 15px;
		flex-wrap: wrap;
	}

	.FormFieldResponse .PanelFieldValue table.AutoWidth td {
		padding: 0;
	}

	.FormFieldResponse .PanelFieldValue table label {
		font-size: 1.2rem;
	}

	.FormFieldResponse .PanelFieldValue input[type="radio"] {
		width: 16px;
		height: 16px;
		margin-right: 6px;
	}

	.FormSectionWrapper .PrimaryButton.FloatRight.TextButton {
		height: 42px;
		font-size: 1.2rem;
		padding: 0 20px;
		min-width: 180px;
	}

	.FormFieldResponse .ValidationError {
		font-size: 1.2rem;
		margin-top: 6px;
	}
}
