:root {
	--ihcp-wine: #883621;
	--ihcp-wine-dark: #792314;
	--ihcp-wine-soft: rgba(136, 54, 33, .08);
	--ihcp-ink: #0C0A15;
	--ihcp-muted: rgba(12, 10, 21, .68);
	--ihcp-line: rgba(136, 54, 33, .22);
	--ihcp-paper: #fff;
	--ihcp-cream: rgba(136, 54, 33, .05);
	--ihcp-green: #883621;
	--ihcp-blue: #0C0A15;
	--ihcp-amber: #792314;
	--ihcp-red: #792314;
	--ihcp-font-heading: "Merriweather";
	--ihcp-font-body: "Proxima Nova";
	--ihcp-shadow: 0 18px 50px rgba(12, 10, 21, .10);
}

.ihcp-portal,
.ihcp-public-home,
.ihcp-application-shell {
	box-sizing: border-box;
	color: var(--ihcp-ink);
	font-family: var(--ihcp-font-body);
	font-size: 19px;
	line-height: 1.55;
}

.ihcp-portal *,
.ihcp-public-home *,
.ihcp-application-shell * { box-sizing: border-box; }
.ihcp-portal h1, .ihcp-portal h2, .ihcp-portal h3,
.ihcp-public-home h1, .ihcp-public-home h2,
.ihcp-application-shell h1, .ihcp-application-shell h2 {
	color: var(--ihcp-ink); font-family: var(--ihcp-font-heading); line-height: 1.14; margin-top: 0;
}
.ihcp-portal p, .ihcp-public-home p { color: var(--ihcp-muted); }

.ihcp-portal {
	max-width: 1240px;
	margin: 0 auto;
	background: var(--ihcp-paper);
	border: 1px solid var(--ihcp-line);
	border-top: 4px solid var(--ihcp-wine);
	border-radius: 18px;
	box-shadow: 0 20px 60px rgba(12,10,21,.1);
	overflow: hidden;
}

.ihcp-portal__topbar {
	display: flex; align-items: center; justify-content: space-between; gap: 24px;
	padding: 22px clamp(20px, 4vw, 40px);
	background: linear-gradient(105deg,#fff 0%,#fff 68%,rgba(136,54,33,.05) 100%);
}

.ihcp-brand { display: inline-flex; align-items: center; gap: 15px; color: var(--ihcp-ink); text-decoration: none !important; }
.ihcp-brand:hover { color: var(--ihcp-wine); }
.ihcp-brand strong { color: var(--ihcp-ink); font-family: "Merriweather" !important; font-size: 25px; font-weight: 700; letter-spacing: -.025em; line-height: 1; }
.ihcp-brand > span { padding-left: 15px; border-left: 1px solid var(--ihcp-line); color: var(--ihcp-wine); font-family: "Proxima Nova" !important; font-size: 11px; font-weight: 800; letter-spacing: .13em; line-height: 1.2; text-transform: uppercase; }
.ihcp-user-chip span { display: grid; }
.ihcp-user-chip small { color: var(--ihcp-muted); font-size: 11px; }

.ihcp-user-chip { display: flex; align-items: center; gap: 9px; padding: 5px 11px 5px 5px; border: 1px solid var(--ihcp-line); border-radius: 999px; background: #fff; }
.ihcp-user-chip img { width: 36px; height: 36px; border-radius: 50%; }
.ihcp-user-chip strong { color: var(--ihcp-ink); font-family: "Proxima Nova" !important; font-size: 13px; line-height: 1.25; }

.ihcp-portal__nav {
	display: flex; gap: 6px; padding: 10px clamp(14px, 3vw, 34px); overflow-x: auto;
	background: #fff; border-top: 1px solid var(--ihcp-line); border-bottom: 1px solid var(--ihcp-line);
	scrollbar-width: thin;
}
.ihcp-portal__nav a {
	display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-height: 40px; padding: 9px 15px;
	border: 1px solid transparent; border-radius: 999px; color: var(--ihcp-muted) !important; font-family: "Proxima Nova" !important; font-size: 14px !important; font-weight: 700; line-height: 1.2; text-decoration: none !important; transition: .18s ease;
}
.ihcp-portal__nav a:hover { border-color: var(--ihcp-line); background: var(--ihcp-cream); color: var(--ihcp-wine) !important; }
.ihcp-portal__nav a.is-active { border-color: var(--ihcp-wine); background: var(--ihcp-wine); color: #fff !important; box-shadow: 0 7px 18px rgba(136,54,33,.16); }
.ihcp-portal__nav a:focus-visible { outline: 3px solid rgba(136,54,33,.18); outline-offset: 2px; }

.ihcp-portal__content { min-height: 660px; padding: clamp(24px, 5vw, 54px); background: linear-gradient(180deg,rgba(136,54,33,.05) 0%,#fff 42%); }
.ihcp-eyebrow {
	margin: 0 0 8px !important; color: var(--ihcp-wine) !important; font-size: 11px; font-weight: 800;
	letter-spacing: .13em; text-transform: uppercase;
}

.ihcp-button {
	display: inline-flex; align-items: center; justify-content: center; gap: 7px;
	min-height: 44px; padding: 11px 18px; border: 1px solid var(--ihcp-wine); border-radius: 10px;
	background: var(--ihcp-wine); color: #fff !important; font-size: 14px; font-weight: 750; line-height: 1.2; text-decoration: none !important; cursor: pointer;
	box-shadow: 0 7px 18px rgba(136, 54, 33, .16); transition: .18s ease;
}
.ihcp-button:hover { transform: translateY(-1px); background: var(--ihcp-wine-dark); border-color: var(--ihcp-wine-dark); }
.ihcp-button--light { background: #fff; border-color: #fff; color: var(--ihcp-wine) !important; }
.ihcp-button--outline-light { background: transparent; border-color: rgba(255,255,255,.72); color: #fff !important; box-shadow: none; }
.ihcp-button--secondary { background: #fff; border-color: var(--ihcp-line); color: var(--ihcp-ink) !important; box-shadow: none; }
.ihcp-button--ghost { background: transparent; color: var(--ihcp-wine) !important; box-shadow: none; }
.ihcp-text-link { color: var(--ihcp-wine) !important; font-weight: 750; text-decoration: none !important; }

/* Keep Elementor, BuddyPress themes, and form plugins from washing out buttons. */
body .ihcp-portal a.ihcp-button,
body .ihcp-portal button.ihcp-button,
body .ihcp-community-hub a.ihcp-button,
body .ihcp-community-hub button.ihcp-button,
body .ihcp-application-shell a.ihcp-button,
body .ihcp-application-shell button.ihcp-button,
body .ihcp-public-home a.ihcp-button,
body .ihcp-public-home button.ihcp-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 0 !important;
	min-height: 44px !important;
	padding: 11px 18px !important;
	border: 1px solid #883621 !important;
	border-radius: 10px !important;
	background: #883621 !important;
	background-image: none !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	font-size: 14px !important;
	font-weight: 750 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	text-shadow: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	cursor: pointer !important;
	box-shadow: 0 7px 18px rgba(136,54,33,.18) !important;
}
body .ihcp-portal .ihcp-button > *,
body .ihcp-community-hub .ihcp-button > *,
body .ihcp-application-shell .ihcp-button > *,
body .ihcp-public-home .ihcp-button > * {
	display: inline !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	font-size: inherit !important;
	opacity: 1 !important;
}
body .ihcp-portal .ihcp-button::before,
body .ihcp-portal .ihcp-button::after,
body .ihcp-community-hub .ihcp-button::before,
body .ihcp-community-hub .ihcp-button::after,
body .ihcp-application-shell .ihcp-button::before,
body .ihcp-application-shell .ihcp-button::after,
body .ihcp-public-home .ihcp-button::before,
body .ihcp-public-home .ihcp-button::after { display: none !important; content: none !important; }
body .ihcp-portal .ihcp-button:hover,
body .ihcp-portal .ihcp-button:focus-visible,
body .ihcp-community-hub .ihcp-button:hover,
body .ihcp-community-hub .ihcp-button:focus-visible,
body .ihcp-application-shell .ihcp-button:hover,
body .ihcp-application-shell .ihcp-button:focus-visible,
body .ihcp-public-home .ihcp-button:hover,
body .ihcp-public-home .ihcp-button:focus-visible {
	border-color: #792314 !important;
	background: #792314 !important;
	background-image: none !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
}

.ihcp-notice {
	margin: 0 0 24px; padding: 14px 18px; border: 1px solid rgba(136,54,33,.22); border-left: 4px solid var(--ihcp-green);
	border-radius: 9px; background: rgba(136,54,33,.06); color: #883621;
}
.ihcp-notice--error { border-color: rgba(136,54,33,.22); border-left-color: var(--ihcp-red); background: rgba(136,54,33,.06); color: #792314; }

.ihcp-welcome {
	position: relative; display: flex; align-items: center; justify-content: space-between; gap: 30px;
	padding: clamp(28px, 5vw, 46px); border-radius: 22px; overflow: hidden;
	background: linear-gradient(135deg, #792314, var(--ihcp-wine) 58%, #792314); color: #fff;
}
.ihcp-welcome::after {
	content: ""; position: absolute; right: -55px; bottom: -100px; width: 280px; height: 280px;
	border: 45px solid rgba(255,255,255,.07); border-radius: 50%;
}
.ihcp-welcome > * { position: relative; z-index: 1; }
.ihcp-welcome h1 { margin-bottom: 10px; color: #fff; font-family: "Merriweather"; font-size: clamp(30px, 4vw, 46px); font-weight: 500; }
.ihcp-welcome p:not(.ihcp-eyebrow) { max-width: 660px; margin-bottom: 0; color: rgba(255,255,255,.82); }
.ihcp-welcome .ihcp-eyebrow { color: rgba(255,255,255,.82) !important; }

.ihcp-profile-progress {
	display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 20px;
	margin: 24px 0; padding: 20px 24px; border: 1px solid var(--ihcp-line); border-radius: 16px; background: #fff;
}
.ihcp-profile-progress h2 { margin: 0 0 3px; font-size: 18px; }
.ihcp-profile-progress p { margin: 0; font-size: 13px; }
.ihcp-progress-ring {
	--progress: 0; display: grid; place-items: center; width: 62px; height: 62px; border-radius: 50%;
	background: radial-gradient(closest-side, #fff 72%, transparent 73% 100%), conic-gradient(var(--ihcp-wine) calc(var(--progress) * 1%), rgba(136,54,33,.06) 0);
}
.ihcp-progress-ring strong { font-size: 13px; }

.ihcp-stats-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin: 24px 0; }
.ihcp-stat-card {
	display: grid; grid-template-columns: auto 1fr; gap: 2px 12px; padding: 18px; border: 1px solid var(--ihcp-line); border-radius: 14px; background: #fff;
}
.ihcp-stat-card > span { grid-row: 1 / 3; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: rgba(136,54,33,.06); color: var(--ihcp-muted); }
.ihcp-stat-card strong { font-size: 24px; line-height: 1; }
.ihcp-stat-card small { color: var(--ihcp-muted); }
.ihcp-stat-card--review > span { background: rgba(136,54,33,.06); color: var(--ihcp-blue); }
.ihcp-stat-card--revision > span { background: rgba(136,54,33,.06); color: var(--ihcp-amber); }
.ihcp-stat-card--approved > span, .ihcp-stat-card--published > span { background: rgba(136,54,33,.06); color: var(--ihcp-green); }

.ihcp-dashboard-section, .ihcp-lane-section { margin-top: 34px; }
.ihcp-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 20px; }
.ihcp-section-heading h1 { margin-bottom: 8px; font-family: "Merriweather"; font-size: clamp(29px, 4vw, 42px); font-weight: 500; }
.ihcp-section-heading h2 { margin: 0; font-size: 23px; }
.ihcp-section-heading p:not(.ihcp-eyebrow) { max-width: 720px; margin: 0; }

.ihcp-submission-list { display: grid; gap: 10px; }
.ihcp-activity-row, .ihcp-submission-card {
	display: grid; align-items: center; gap: 16px; padding: 17px 20px; border: 1px solid var(--ihcp-line); border-radius: 13px; background: #fff;
}
.ihcp-activity-row { grid-template-columns: auto 1fr auto; }
.ihcp-activity-row__icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: var(--ihcp-cream); }
.ihcp-activity-row div:nth-child(2) { display: grid; }
.ihcp-activity-row small { color: var(--ihcp-muted); }
.ihcp-activity-row p { margin: 5px 0 0; font-size: 13px; }
.ihcp-submission-card { grid-template-columns: 1fr auto; padding: 22px; }
.ihcp-submission-card h2 { margin: 6px 0 0; font-size: 20px; }
.ihcp-submission-card__meta { display: flex; align-items: center; gap: 8px; color: var(--ihcp-muted); font-size: 12px; }
.ihcp-submission-card__actions { display: grid; justify-items: end; gap: 11px; min-width: 180px; }
.ihcp-editor-message { margin-top: 14px; padding: 12px 14px; border-radius: 9px; background: rgba(136,54,33,.06); color: #792314; font-size: 13px; }
.ihcp-editor-message p { margin: 3px 0 0; color: inherit; }

.ihcp-status-badge, .ihcp-verified {
	display: inline-flex; width: max-content; align-items: center; gap: 5px; padding: 5px 9px; border-radius: 999px;
	background: rgba(136,54,33,.06); color: #0C0A15; font-size: 11px; font-weight: 800; letter-spacing: .02em;
}
.ihcp-status--submitted, .ihcp-status--review, .ihcp-status--resubmit { background: rgba(136,54,33,.06) !important; color: #883621 !important; }
.ihcp-status--clinical { background: rgba(136,54,33,.06) !important; color: #883621 !important; }
.ihcp-status--revision, .ihcp-status--more-information-requested { background: rgba(136,54,33,.06) !important; color: #792314 !important; }
.ihcp-status--approved, .ihcp-status--published { background: rgba(136,54,33,.06) !important; color: #883621 !important; }
.ihcp-status--declined, .ihcp-status--withdrawn { background: rgba(136,54,33,.06) !important; color: #792314 !important; }
.ihcp-status--draft { background: rgba(136,54,33,.06) !important; color: #0C0A15 !important; }
.ihcp-lane-dot { width: 9px; height: 9px; border-radius: 50%; background: #0C0A15; }
.ihcp-lane-dot--community-groups { background: #883621; }
.ihcp-lane-dot--ouch-files { background: #792314; }
.ihcp-lane-dot--pain-insights { background: #883621; }

.ihcp-empty-state {
	display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 320px; padding: 40px;
	border: 1px dashed rgba(136,54,33,.22); border-radius: 18px; background: rgba(255,255,255,.65); text-align: center;
}
.ihcp-empty-state__icon { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 12px; border-radius: 50%; background: var(--ihcp-wine-soft); color: var(--ihcp-wine); font-size: 26px; }
.ihcp-empty-state h2, .ihcp-empty-state h3 { margin-bottom: 8px; }
.ihcp-empty-state p { max-width: 500px; margin-top: 0; }
.ihcp-empty-state--compact { min-height: 0; flex-direction: row; gap: 18px; justify-content: flex-start; text-align: left; }
.ihcp-empty-state--compact .ihcp-empty-state__icon { flex: 0 0 auto; margin: 0; }
.ihcp-empty-state--compact div { flex: 1; }

.ihcp-onboarding { max-width: 980px; margin: 0 auto; }
.ihcp-onboarding__header { max-width: 720px; margin-bottom: 28px; }
.ihcp-onboarding__header h1 { margin-bottom: 12px; font-family: "Merriweather"; font-size: clamp(34px, 5vw, 52px); font-weight: 500; }
.ihcp-steps { display: grid; grid-template-columns: repeat(5, 1fr); margin: 0 0 22px; padding: 0; list-style: none; }
.ihcp-steps li {
	position: relative; display: grid; justify-items: center; gap: 6px; color: #0C0A15; font-size: 11px; font-weight: 700; text-align: center;
}
.ihcp-steps li::before { content: ""; position: absolute; top: 16px; right: 50%; z-index: 0; width: 100%; height: 2px; background: rgba(136,54,33,.22); }
.ihcp-steps li:first-child::before { display: none; }
.ihcp-steps span { position: relative; z-index: 1; display: grid; place-items: center; width: 34px; height: 34px; border: 2px solid rgba(136,54,33,.22); border-radius: 50%; background: var(--ihcp-cream); }
.ihcp-steps li.is-active, .ihcp-steps li.is-complete { color: var(--ihcp-wine); }
.ihcp-steps li.is-active span, .ihcp-steps li.is-complete span { border-color: var(--ihcp-wine); background: var(--ihcp-wine); color: #fff; }
.ihcp-steps li.is-complete::before, .ihcp-steps li.is-active::before { background: var(--ihcp-wine); }

.ihcp-form, .ihcp-form input, .ihcp-form select, .ihcp-form textarea, .ihcp-form button { font: inherit; }
.ihcp-step-form, .ihcp-form-card {
	padding: clamp(22px, 4vw, 36px); border: 1px solid var(--ihcp-line); border-radius: 18px; background: #fff; box-shadow: 0 10px 28px rgba(121,35,20,.045);
}
.ihcp-step { min-width: 0; margin: 0; padding: 0; border: 0; }
.ihcp-step[hidden], [hidden] { display: none !important; }
.ihcp-step legend { margin-bottom: 7px; padding: 0; color: var(--ihcp-ink); font-family: "Merriweather"; font-size: 29px; font-weight: 600; }
.ihcp-step-intro { margin: 0 0 24px; }
.ihcp-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.ihcp-fields-spaced { margin-top: 24px; }
.ihcp-field--wide { grid-column: 1 / -1; }
.ihcp-form label { display: grid; gap: 7px; color: var(--ihcp-ink); font-size: 13px; font-weight: 700; }
.ihcp-form label small { color: var(--ihcp-muted); font-size: 11px; font-weight: 500; }
.ihcp-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.ihcp-form select, .ihcp-form textarea {
	width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid rgba(136,54,33,.22); border-radius: 9px; outline: 0;
	background: #fff; color: var(--ihcp-ink); transition: .16s ease;
}
.ihcp-form textarea { min-height: 110px; resize: vertical; }
.ihcp-form input:focus, .ihcp-form select:focus, .ihcp-form textarea:focus { border-color: var(--ihcp-wine); box-shadow: 0 0 0 3px rgba(136,54,33,.1); }
.ihcp-form input[type="file"] { padding: 10px; border: 1px dashed rgba(136,54,33,.22); border-radius: 9px; background: var(--ihcp-cream); }

.ihcp-form-error-summary {
	margin: 0 0 24px;
	padding: 18px 20px;
	border: 1px solid #b42318;
	border-left-width: 5px;
	border-radius: 12px;
	background: #fff6f5;
	color: #7a271a;
}
.ihcp-form-error-summary:focus { outline: 3px solid rgba(180,35,24,.2); outline-offset: 3px; }
.ihcp-form-error-summary h2 { margin: 0 0 6px; font-size: 20px; color: #7a271a; }
.ihcp-form-error-summary p { margin: 0 0 10px; }
.ihcp-form-error-summary ul { margin: 0; padding-left: 22px; }
.ihcp-form-error-summary li + li { margin-top: 6px; }
.ihcp-field-has-error input,
.ihcp-field-has-error select,
.ihcp-field-has-error textarea { border-color: #b42318 !important; box-shadow: 0 0 0 3px rgba(180,35,24,.12) !important; }
.ihcp-field-has-error > span { color: #7a271a; }

.ihcp-form-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--ihcp-line); }
.ihcp-form-actions [data-step-back] { margin-right: auto; }
.ihcp-step-form > .ihcp-form-actions,
.ihcp-wb-flow [data-ihcp-brief-form] > .ihcp-form-actions { position: sticky; z-index: 7; bottom: 0; padding: 16px; border-radius: 12px; background: rgba(255,255,255,.97); box-shadow: 0 -10px 22px rgba(121,35,20,.06); backdrop-filter: blur(10px); }
.ihcp-form-progress { color: var(--ihcp-muted); font-size: 12px; }
.ihcp-button[disabled] { cursor: wait; opacity: .72; transform: none; }

.ihcp-choice-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.ihcp-choice-card { position: relative; }
.ihcp-choice-card input { position: absolute; opacity: 0; pointer-events: none; }
.ihcp-choice-card > span { display: grid; gap: 3px; min-height: 82px; padding: 16px; border: 1px solid var(--ihcp-line); border-radius: 12px; cursor: pointer; }
.ihcp-choice-card small { color: var(--ihcp-muted); font-weight: 500; }
.ihcp-choice-card input:checked + span { border-color: var(--ihcp-wine); background: var(--ihcp-wine-soft); box-shadow: inset 0 0 0 1px var(--ihcp-wine); }
.ihcp-choice-card input:focus-visible + span { outline: 3px solid rgba(136,54,33,.16); }
.ihcp-check { grid-template-columns: auto 1fr; align-items: start; margin-top: 15px; }
.ihcp-check input { margin-top: 4px; accent-color: var(--ihcp-wine); }
.ihcp-check a { color: #883621 !important; font-weight: 800; text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 2px; }
.ihcp-check a:hover, .ihcp-check a:focus-visible { color: #792314 !important; }
.ihcp-review-card { padding: 20px; border-radius: 13px; background: var(--ihcp-cream); }
.ihcp-review-card h3 { margin: 0 0 10px; }
.ihcp-review-card ul { margin-bottom: 0; padding-left: 20px; color: var(--ihcp-muted); }

.ihcp-status-panel {
	display: grid; grid-template-columns: auto 1fr; gap: 18px; max-width: 980px; margin: 0 auto 24px; padding: 22px;
	border: 1px solid var(--ihcp-line); border-radius: 16px; background: #fff;
}
.ihcp-status-panel__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--ihcp-wine-soft); color: var(--ihcp-wine); font-size: 20px; }
.ihcp-status-panel h2 { margin: 0 0 5px; }
.ihcp-status-panel p { margin-top: 0; }
.ihcp-message { margin-top: 15px; padding: 14px; border-radius: 10px; background: rgba(255,255,255,.68); }
.ihcp-message p { margin: 5px 0 0; color: inherit; }

.ihcp-lane-section > h2 { margin-bottom: 16px; font-size: 20px; }
.ihcp-lane-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.ihcp-lane-card {
	position: relative; display: grid !important; align-content: start; gap: 9px; min-height: 210px; padding: 22px;
	border: 1px solid var(--ihcp-line); border-radius: 16px; background: #fff; color: var(--ihcp-ink); cursor: pointer; text-decoration: none !important; transition: .18s ease;
}
.ihcp-lane-card:hover { transform: translateY(-2px); box-shadow: var(--ihcp-shadow); }
.ihcp-lane-card.is-selected { border-color: var(--ihcp-wine); box-shadow: inset 0 0 0 2px var(--ihcp-wine); }
.ihcp-lane-card input { position: absolute; opacity: 0; pointer-events: none; }
.ihcp-lane-card__icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 13px; background: rgba(136,54,33,.06); color: #883621; font-size: 23px; }
.ihcp-lane-card--ouch-files .ihcp-lane-card__icon { background: rgba(136,54,33,.06); color: #792314; }
.ihcp-lane-card--pain-insights .ihcp-lane-card__icon { background: rgba(136,54,33,.06); color: #883621; }
.ihcp-lane-card strong { font-family: "Merriweather"; font-size: 21px; }
.ihcp-lane-card > span:not(.ihcp-lane-card__icon) { color: var(--ihcp-muted); font-size: 13px; font-weight: 500; }
.ihcp-lane-card small { margin-top: auto; color: var(--ihcp-wine); font-size: 11px; }
.ihcp-community-create { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 14px; padding: 18px 20px; border: 1px solid rgba(136,54,33,.22); border-radius: 14px; background: rgba(136,54,33,.06); }
.ihcp-community-create > div { display: grid; gap: 3px; }
.ihcp-community-create strong { color: var(--ihcp-ink); }
.ihcp-community-create span { color: var(--ihcp-muted); font-size: 13px; }

.ihcp-community-workspace .ihcp-portal { max-width: none; border: 0; border-radius: 16px; box-shadow: none; }
.ihcp-community-workspace .ihcp-portal__topbar { display: none; }

.ihcp-community-hub { margin: 0 0 26px; padding: clamp(18px,3vw,28px); border: 1px solid rgba(136,54,33,.22); border-top: 4px solid var(--ihcp-wine); border-radius: 16px; background: #fff; box-shadow: 0 12px 34px rgba(121,35,20,.07); color: var(--ihcp-ink); font-family: "Proxima Nova"; }
.ihcp-community-hub * { box-sizing: border-box; }
.ihcp-community-hub h2 { margin: 0 0 6px; color: var(--ihcp-ink); font-family: "Merriweather"; font-size: clamp(24px,3vw,34px); font-weight: 500; line-height: 1.15; }
.ihcp-community-hub p { margin: 0; color: var(--ihcp-muted); }
.ihcp-community-hub--expanded { padding: 0; border: 0; background: transparent; box-shadow: none; }
.ihcp-community-hub--expanded .ihcp-portal { max-width: none; border-radius: 16px; box-shadow: none; }
.ihcp-community-hub__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.ihcp-community-hub__header > div:first-child { max-width: 680px; }
.ihcp-community-hub__links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px 16px; }
.ihcp-community-hub__links a { color: var(--ihcp-wine); font-size: 12px; font-weight: 800; text-decoration: none; }
.ihcp-community-lanes { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 20px; }
.ihcp-community-lane { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; min-width: 0; padding: 15px; border: 1px solid var(--ihcp-line); border-radius: 13px; background: rgba(136,54,33,.06); color: var(--ihcp-ink); text-decoration: none !important; transition: .18s ease; }
.ihcp-community-lane:hover { transform: translateY(-2px); border-color: rgba(136,54,33,.22); box-shadow: 0 10px 25px rgba(121,35,20,.08); }
.ihcp-community-lane .ihcp-lane-card__icon { width: 40px; height: 40px; border-radius: 11px; font-size: 19px; }
.ihcp-community-lane > span:nth-child(2) { display: grid; min-width: 0; }
.ihcp-community-lane strong { color: var(--ihcp-ink); font-family: "Merriweather"; font-size: 17px; }
.ihcp-community-lane small { overflow: hidden; color: var(--ihcp-muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.ihcp-community-lane b { color: var(--ihcp-wine); }
.ihcp-community-lane--ouch-files .ihcp-lane-card__icon { background: rgba(136,54,33,.06); color: #792314; }
.ihcp-community-lane--pain-insights .ihcp-lane-card__icon { background: rgba(136,54,33,.06); color: #883621; }
.ihcp-community-hub__footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--ihcp-line); }
.ihcp-community-mini-stats { display: flex; flex-wrap: wrap; gap: 10px 24px; }
.ihcp-community-mini-stats span { display: flex; align-items: baseline; gap: 5px; color: var(--ihcp-muted); font-size: 10px; font-weight: 700; text-transform: uppercase; }
.ihcp-community-mini-stats strong { color: var(--ihcp-wine); font-size: 20px; }
.ihcp-community-admin { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin: -8px -8px 22px; padding: 14px 16px; border: 1px solid rgba(136,54,33,.22); border-radius: 12px; background: rgba(136,54,33,.06); }
.ihcp-community-admin > div { display: flex; align-items: center; gap: 12px; }
.ihcp-community-admin > div > span:last-child { display: grid; }
.ihcp-community-admin small { color: #792314; }
.ihcp-community-admin__count { display: grid; flex: 0 0 auto; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: #792314; color: #fff; font-size: 18px; font-weight: 900; }
.ihcp-community-applicant { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 18px; }
.ihcp-community-applicant .ihcp-status-badge { align-self: start; }

.ihcp-submission-form { display: grid; gap: 18px; margin-top: 20px; }
.ihcp-form-card__heading { display: flex; gap: 14px; margin-bottom: 25px; }
.ihcp-form-card__heading > span { display: grid; flex: 0 0 auto; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--ihcp-wine); color: #fff; font-weight: 800; }
.ihcp-form-card__heading h2 { margin: 0 0 2px; font-size: 22px; }
.ihcp-form-card__heading p { margin: 0; font-size: 13px; }
.ihcp-editor-label { margin: 22px 0 7px; }
.ihcp-submission-form .wp-editor-wrap { border-radius: 8px; overflow: hidden; }
.ihcp-inline-fieldset { margin: 0 0 18px; padding: 0; border: 0; }
.ihcp-inline-fieldset legend { margin-bottom: 11px; color: var(--ihcp-ink); font-size: 13px; font-weight: 750; }
.ihcp-radio-pill { display: inline-grid !important; margin-right: 8px; }
.ihcp-radio-pill input { position: absolute; opacity: 0; }
.ihcp-radio-pill span { min-width: 70px; padding: 9px 16px; border: 1px solid var(--ihcp-line); border-radius: 999px; text-align: center; cursor: pointer; }
.ihcp-radio-pill input:checked + span { border-color: var(--ihcp-wine); background: var(--ihcp-wine-soft); color: var(--ihcp-wine); }
.ihcp-form-actions--sticky { position: sticky; z-index: 5; bottom: 0; margin: 0; padding: 14px 18px; border: 1px solid var(--ihcp-line); border-radius: 12px; background: rgba(255,255,255,.94); backdrop-filter: blur(12px); }
.ihcp-current-image img { max-width: 180px; height: auto; border-radius: 10px; }

.ihcp-preview { width: min(780px, calc(100vw - 28px)); max-height: 86vh; padding: clamp(25px, 4vw, 48px); border: 0; border-radius: 18px; box-shadow: 0 24px 100px rgba(12,10,21,.28); }
.ihcp-preview::backdrop { background: rgba(12,10,21,.66); backdrop-filter: blur(3px); }
.ihcp-preview__close { position: absolute; top: 14px; right: 17px; border: 0; background: transparent; font-size: 28px; cursor: pointer; }
.ihcp-preview h2 { font-family: "Merriweather"; font-size: 36px; }
.ihcp-preview__meta { padding-bottom: 15px; border-bottom: 1px solid var(--ihcp-line); }

.ihcp-profile-layout { display: grid; grid-template-columns: 270px 1fr; gap: 20px; align-items: start; }
.ihcp-profile-card { display: grid; justify-items: center; padding: 28px 20px; border: 1px solid var(--ihcp-line); border-radius: 18px; background: #fff; text-align: center; }
.ihcp-profile-card img { border-radius: 50%; box-shadow: 0 0 0 6px var(--ihcp-wine-soft); }
.ihcp-profile-card h2 { margin: 18px 0 3px; font-family: "Merriweather"; font-size: 24px; }
.ihcp-profile-card p { margin: 0 0 12px; }
.ihcp-profile-card .ihcp-text-link { margin-top: 20px; font-size: 12px; }
.ihcp-verified { background: rgba(136,54,33,.06); color: var(--ihcp-green); }

.ihcp-guideline-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.ihcp-guideline-grid article { position: relative; min-height: 190px; padding: 26px; border: 1px solid var(--ihcp-line); border-radius: 16px; background: #fff; overflow: hidden; }
.ihcp-guideline-grid article > span { position: absolute; right: 18px; top: 10px; color: rgba(136,54,33,.06); font-family: "Merriweather"; font-size: 56px; }
.ihcp-guideline-grid h2 { position: relative; margin-bottom: 10px; font-size: 20px; }
.ihcp-guideline-grid p { position: relative; margin-bottom: 0; }

.ihcp-public-home { max-width: 1240px; margin: 0 auto; overflow: hidden; border-radius: 24px; box-shadow: var(--ihcp-shadow); background: var(--ihcp-cream); }
.ihcp-studio-gate { display: grid; justify-items: center; max-width: 760px; min-height: 430px; align-content: center; gap: 13px; padding: clamp(38px,8vw,76px); border: 1px solid var(--ihcp-line); background: #fff; text-align: center; }
.ihcp-studio-gate__icon { display: grid; place-items: center; width: 66px; height: 66px; border-radius: 18px; background: var(--ihcp-wine); color: #fff; font-family: "Merriweather"; font-size: 25px; font-weight: 800; box-shadow: 0 12px 30px rgba(136,54,33,.2); }
.ihcp-studio-gate h1 { max-width: 600px; margin: 0; font-family: "Merriweather"; font-size: clamp(32px,5vw,48px); font-weight: 500; }
.ihcp-studio-gate p:not(.ihcp-eyebrow) { max-width: 560px; margin: 0 0 10px; font-size: 16px; }
.ihcp-public-hero { display: grid; grid-template-columns: 1.4fr .6fr; align-items: center; gap: clamp(30px, 6vw, 80px); padding: clamp(44px, 8vw, 90px); background: linear-gradient(135deg, #792314, var(--ihcp-wine) 58%, #792314); color: #fff; }
.ihcp-public-hero h1 { max-width: 760px; margin-bottom: 18px; color: #fff; font-family: "Merriweather"; font-size: clamp(42px, 7vw, 72px); font-weight: 500; }
.ihcp-public-hero p { color: rgba(255,255,255,.8); font-size: 17px; }
.ihcp-public-hero .ihcp-eyebrow { color: rgba(255,255,255,.82) !important; }
.ihcp-hero-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 28px; }
.ihcp-hero-quote { padding: 28px; border: 1px solid rgba(255,255,255,.22); border-radius: 18px; background: rgba(255,255,255,.1); backdrop-filter: blur(6px); }
.ihcp-hero-quote > span { color: rgba(255,255,255,.82); font-family: "Merriweather"; font-size: 64px; line-height: .7; }
.ihcp-hero-quote p { margin-bottom: 0; color: #fff; font-family: "Merriweather"; font-size: 21px; }
.ihcp-public-section { padding: clamp(42px, 7vw, 74px); }
.ihcp-public-section > h2 { margin-bottom: 24px; font-family: "Merriweather"; font-size: clamp(31px, 5vw, 47px); font-weight: 500; }
.ihcp-public-cta { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0 clamp(24px, 6vw, 74px) clamp(24px, 6vw, 74px); padding: clamp(28px, 5vw, 48px); border-radius: 20px; background: #fff; }
.ihcp-public-cta h2 { margin: 0; font-family: "Merriweather"; font-size: clamp(26px, 4vw, 38px); font-weight: 500; }

.ihcp-standing-strip { display: grid; grid-template-columns: 1.3fr repeat(2,auto) auto; align-items: center; gap: 24px; margin: 18px 0; padding: 18px 22px; border: 1px solid var(--ihcp-line); border-radius: 14px; background: #fff; }
.ihcp-standing-strip p,.ihcp-standing-strip span { display: block; margin: 0 0 3px; color: var(--ihcp-muted); font-size: 11px; }
.ihcp-standing-strip strong { color: var(--ihcp-ink); font-size: 17px; }
.ihcp-wb-flow .ihcp-form-card { margin-top: 18px; }
.ihcp-route-summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 18px 0; padding: 20px 22px; border: 1px solid var(--ihcp-line); border-radius: 14px; background: #fff; }
.ihcp-route-summary h2,.ihcp-route-summary p { margin: 2px 0; }
.ihcp-member-blog-editor { padding: clamp(18px,3vw,32px); border: 1px solid var(--ihcp-line); border-radius: 16px; background: #fff; box-shadow: var(--ihcp-shadow); }

.ihcp-public-profile { --ihcp-profile-bg:rgba(136,54,33,.06); max-width: 1180px; margin: 0 auto; color: var(--ihcp-ink); }
.ihcp-public-profile__hero { display: grid; grid-template-columns: auto 1fr; gap: clamp(24px,5vw,54px); align-items: center; padding: clamp(32px,6vw,68px); border-radius: 22px; background: linear-gradient(135deg,rgba(136,54,33,.06),#fff 62%); box-shadow: var(--ihcp-shadow); }
.ihcp-public-profile__avatar { position: relative; }
.ihcp-public-profile__avatar img { border-radius: 50%; box-shadow: 0 0 0 8px #fff,0 16px 40px rgba(121,35,20,.14); }
.ihcp-public-profile__avatar > span { position: absolute; right: -4px; bottom: 3px; display: grid; place-items: center; width: 34px; height: 34px; border: 4px solid #fff; border-radius: 50%; background: var(--ihcp-green); color: #fff; font-weight: 900; }
.ihcp-public-profile__hero h1 { margin: 4px 0 7px; font-family: "Merriweather"; font-size: clamp(36px,6vw,58px); font-weight: 500; }
.ihcp-public-profile__title { color: var(--ihcp-wine)!important; font-weight: 700; }
.ihcp-public-profile__bio { max-width: 760px; font-size: 16px; line-height: 1.7; }
.ihcp-public-profile__links { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.ihcp-public-profile__links > span { padding: 7px 11px; border-radius: 999px; background: rgba(136,54,33,.06); color: var(--ihcp-green); font-size: 11px; font-weight: 800; }
.ihcp-profile-badges { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; }
.ihcp-profile-badges > span { display: inline-flex; align-items: center; gap: 6px; padding: 5px 9px 5px 5px; border: 1px solid var(--ihcp-line); border-radius: 999px; background: #fff; color: #0C0A15; font-size: 10px; font-weight: 750; }
.ihcp-profile-badges b { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #883621; color: #fff; font-size: 8px; }
.ihcp-public-profile__stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin: 18px 0; }
.ihcp-public-profile__stats article { display: grid; gap: 4px; padding: 23px; border: 1px solid var(--ihcp-line); border-radius: 14px; background: #fff; }
.ihcp-public-profile__stats strong { color: var(--ihcp-wine); font-size: 30px; }
.ihcp-public-profile__stats span { color: var(--ihcp-muted); font-size: 12px; }
.ihcp-public-profile__work { padding: clamp(24px,4vw,42px); border-radius: 18px; background: var(--ihcp-profile-bg); }
.ihcp-publication-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.ihcp-publication-grid article { padding: 22px; border: 1px solid var(--ihcp-line); border-radius: 14px; background: #fff; }
.ihcp-publication-grid h3 { margin: 14px 0 8px; font-family: "Merriweather"; font-size: 21px; }
.ihcp-publication-grid h3 a { color: var(--ihcp-ink); text-decoration: none; }
.ihcp-publication-grid p,.ihcp-publication-grid small { color: var(--ihcp-muted); }
.ihcp-attribution { display: grid; grid-template-columns: auto 1fr; gap: 20px; margin: 36px 0; padding: 24px; border: 1px solid rgba(136,54,33,.22); border-radius: 16px; background: rgba(136,54,33,.06); }
.ihcp-attribution img { border-radius: 50%; }
.ihcp-attribution h3 { margin: 2px 0 5px; font-family: "Merriweather"; font-size: 24px; }
.ihcp-attribution h3 a { color: #0C0A15; text-decoration: none; }
.ihcp-attribution p { margin: 5px 0; }
.ihcp-attribution__credentials { color: #883621; font-size: 13px; font-weight: 700; }
.ihcp-attribution__links { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 10px; }
.ihcp-attribution__links a { color: #883621; font-size: 12px; font-weight: 800; }
.ihcp-community-byline { margin-top: 18px; padding-top: 12px; border-top: 1px solid rgba(12,10,21,.1); }
.ihcp-button--small { min-height: 36px; padding: 8px 13px; font-size: 12px; }
.ihcp-activity-row__actions { display: grid; justify-items: end; gap: 8px; }
.ihcp-member-blog-management { margin-top: 32px; padding-top: 28px; border-top: 1px solid rgba(136,54,33,.22); }
.ihcp-member-blog-management > header { margin-bottom: 18px; }
.ihcp-member-blog-management h2 { margin: 4px 0 7px; color: #0C0A15; font: 700 26px/1.2 "Merriweather"; }
.ihcp-member-blog-management p { margin: 0; color: #0C0A15; }
.ihcp-member-blog-dashboard { overflow-x: auto; border: 1px solid rgba(136,54,33,.22); border-radius: 16px; background: #fff; padding: 18px; }
.ihcp-community-tools-fallback[hidden] { display: none !important; }
.ihcp-community-tools-fallback:not([hidden]) { position: fixed; right: 18px; bottom: 18px; z-index: 9999; width: min(760px, calc(100vw - 36px)); max-height: calc(100vh - 36px); overflow: auto; }

/* Submission Terms — public, branded and deliberately independent of theme typography. */
body.ihcp-is-terms-page .entry-header .entry-title,
body.ihcp-is-terms-page .page-header .page-title,
body.ihcp-is-terms-page .elementor-widget-theme-post-title { display: none !important; }
body.ihcp-is-terms-page .entry-content { margin-top: 0 !important; }
.ihcp-terms-page { max-width: 1280px; margin: 0 auto; border: 1px solid rgba(136,54,33,.22); border-radius: 26px; background: rgba(136,54,33,.06); color: #0C0A15; overflow: hidden; box-shadow: 0 22px 65px rgba(121,35,20,.1); font-family: "Proxima Nova"; line-height: 1.65; }
.ihcp-terms-page * { box-sizing: border-box; }
.ihcp-terms-page h1,.ihcp-terms-page h2 { color: #0C0A15; font-family: "Merriweather"; letter-spacing: -.025em; }
.ihcp-terms-page p { color: #0C0A15; }
.ihcp-terms-hero { position: relative; display: grid; grid-template-columns: minmax(0,1fr); align-items: center; gap: 0; min-height: 480px; padding: clamp(48px,8vw,92px); overflow: hidden; background: radial-gradient(circle at 86% 10%,rgba(255,255,255,.22),transparent 31%),linear-gradient(135deg,#792314 0%,#883621 58%,#792314 100%); }
.ihcp-terms-hero::after { content: ""; position: absolute; right: -110px; bottom: -160px; width: 420px; height: 420px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; box-shadow: 0 0 0 54px rgba(255,255,255,.035),0 0 0 110px rgba(255,255,255,.025); }
.ihcp-terms-kicker { display: flex; align-items: center; gap: 11px; margin: 0 0 20px; color: rgba(255,255,255,.82) !important; font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.ihcp-terms-kicker span { padding: 6px 9px; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; color: #fff; letter-spacing: .05em; }
.ihcp-terms-hero h1 { max-width: 800px; margin: 0 0 22px; color: #fff; font-size: clamp(44px,6.5vw,76px); font-weight: 500; line-height: 1.02; }
.ihcp-terms-hero__intro { max-width: 760px; margin: 0; color: rgba(255,255,255,.82) !important; font-size: clamp(17px,2vw,20px); line-height: 1.7; }
.ihcp-terms-meta { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 31px; }
.ihcp-terms-meta span { padding: 8px 11px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; background: rgba(255,255,255,.09); color: #fff; font-size: 11px; font-weight: 750; backdrop-filter: blur(6px); }
.ihcp-terms-summary { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin: -38px clamp(24px,5vw,66px) 0; }
.ihcp-terms-summary article { display: grid; grid-template-columns: auto 1fr; gap: 15px; align-items: start; min-width: 0; padding: 22px; border: 1px solid rgba(136,54,33,.22); border-radius: 16px; background: #fff; box-shadow: 0 13px 34px rgba(121,35,20,.08); }
.ihcp-terms-summary__icon { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: rgba(136,54,33,.06); color: #883621; font-size: 19px; font-weight: 800; }
.ihcp-terms-summary strong { display: block; margin: 1px 0 5px; color: #0C0A15; font-size: 14px; }
.ihcp-terms-summary p { margin: 0; font-size: 12px; line-height: 1.55; }
.ihcp-terms-layout { display: grid; grid-template-columns: 250px minmax(0,1fr); gap: clamp(28px,5vw,65px); align-items: start; padding: clamp(48px,7vw,86px) clamp(24px,6vw,76px) clamp(60px,8vw,100px); }
.ihcp-terms-nav { position: sticky; top: 26px; padding: 22px; border: 1px solid rgba(136,54,33,.22); border-radius: 17px; background: rgba(255,255,255,.86); box-shadow: 0 12px 32px rgba(121,35,20,.055); backdrop-filter: blur(10px); }
.ihcp-terms-nav > p { margin: 0 0 13px; color: #883621; font-size: 10px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.ihcp-terms-nav ol { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.ihcp-terms-nav a { display: grid; grid-template-columns: 25px 1fr; gap: 7px; align-items: center; padding: 7px 8px; border-radius: 8px; color: #0C0A15; font-size: 11px; font-weight: 700; line-height: 1.35; text-decoration: none !important; }
.ihcp-terms-nav a:hover,.ihcp-terms-nav a:focus-visible { background: rgba(136,54,33,.06); color: #883621; }
.ihcp-terms-nav a span { color: #0C0A15; font-size: 9px; font-weight: 900; letter-spacing: .05em; }
.ihcp-terms-nav__note { display: grid; gap: 2px; margin-top: 16px; padding: 13px; border-radius: 10px; background: rgba(136,54,33,.06); }
.ihcp-terms-nav__note strong { color: #0C0A15; font-size: 10px; }
.ihcp-terms-nav__note span { color: #0C0A15; font-size: 9px; }
.ihcp-terms-content { display: grid; gap: 16px; min-width: 0; }
.ihcp-terms-section { scroll-margin-top: 28px; display: grid; grid-template-columns: 54px minmax(0,1fr); gap: 22px; padding: clamp(25px,4vw,38px); border: 1px solid rgba(136,54,33,.22); border-radius: 19px; background: #fff; box-shadow: 0 10px 28px rgba(121,35,20,.04); }
.ihcp-terms-section__number { display: grid; place-items: center; width: 50px; height: 50px; border: 1px solid rgba(136,54,33,.22); border-radius: 15px; background: rgba(136,54,33,.06); color: #883621; font-family: "Merriweather"; font-size: 16px; font-weight: 700; }
.ihcp-terms-section__eyebrow { margin: 0 0 5px !important; color: #792314 !important; font-size: 10px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.ihcp-terms-section h2 { margin: 0 0 13px; font-size: clamp(25px,3.4vw,36px); font-weight: 500; line-height: 1.15; }
.ihcp-terms-section p { margin: 0 0 13px; font-size: 15px; line-height: 1.75; }
.ihcp-terms-section p:last-child { margin-bottom: 0; }
.ihcp-terms-section--featured { border-color: rgba(136,54,33,.22); background: linear-gradient(145deg,#fff,rgba(136,54,33,.06)); box-shadow: 0 16px 44px rgba(136,54,33,.08); }
.ihcp-terms-routes { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin: 22px 0 13px; }
.ihcp-terms-routes article { display: grid; align-content: start; gap: 6px; min-height: 150px; padding: 17px; border: 1px solid rgba(136,54,33,.22); border-radius: 13px; background: #fff; }
.ihcp-terms-routes .ihcp-lane-dot { width: 11px; height: 11px; margin-bottom: 5px; }
.ihcp-terms-routes strong { color: #0C0A15; font-size: 13px; }
.ihcp-terms-routes p { margin: 0; color: #0C0A15; font-size: 11px; line-height: 1.45; }
.ihcp-terms-routes small { margin-top: auto; color: #792314; font-size: 9px; font-weight: 800; }
.ihcp-terms-fine-print { color: #0C0A15 !important; font-size: 11px !important; }
.ihcp-terms-callout { display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: start; margin-top: 19px; padding: 16px; border-radius: 12px; background: rgba(136,54,33,.06); }
.ihcp-terms-callout > span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #792314; color: #fff; font-size: 12px; font-weight: 900; }
.ihcp-terms-callout p { margin: 1px 0 0; color: #792314; font-size: 12px; line-height: 1.55; }
.ihcp-terms-callout--positive { background: rgba(136,54,33,.06); }
.ihcp-terms-callout--positive > span { background: #883621; }
.ihcp-terms-callout--positive p { color: #883621; }
.ihcp-terms-rules { display: grid; grid-template-columns: repeat(2,1fr); gap: 9px; margin: 20px 0 0; padding: 0; list-style: none; }
.ihcp-terms-rules li { display: grid; grid-template-columns: 31px 1fr; gap: 10px; align-items: center; min-height: 66px; padding: 12px; border: 1px solid rgba(136,54,33,.22); border-radius: 11px; color: #0C0A15; font-size: 11px; line-height: 1.45; }
.ihcp-terms-rules li span { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 9px; background: rgba(136,54,33,.06); color: #883621; font-weight: 900; }
.ihcp-terms-acceptance { border-color: rgba(136,54,33,.22); background: radial-gradient(circle at 90% 0,rgba(255,255,255,.9),transparent 34%),linear-gradient(135deg,rgba(136,54,33,.06),rgba(136,54,33,.06)); box-shadow: 0 18px 45px rgba(121,35,20,.09); }
.ihcp-terms-acceptance .ihcp-terms-section__number { border-color: rgba(136,54,33,.22); background: #883621; color: #fff; }
.ihcp-terms-acceptance p { max-width: 670px; }
.ihcp-terms-acceptance .ihcp-button { margin-top: 6px; }

@media (max-width: 980px) {
	.ihcp-stats-grid { grid-template-columns: repeat(3, 1fr); }
	.ihcp-public-hero { grid-template-columns: 1fr; }
	.ihcp-hero-quote { max-width: 520px; }
	.ihcp-profile-layout { grid-template-columns: 220px 1fr; }
	.ihcp-publication-grid { grid-template-columns: repeat(2,1fr); }
	.ihcp-terms-summary { grid-template-columns: 1fr; margin-top: -48px; }
	.ihcp-terms-summary article { min-height: 0; }
	.ihcp-terms-layout { grid-template-columns: 210px minmax(0,1fr); }
	.ihcp-terms-routes { grid-template-columns: 1fr; }
	.ihcp-terms-routes article { min-height: 0; }
}

@media (max-width: 760px) {
	.ihcp-portal { border-radius: 0; border-left: 0; border-right: 0; }
	.ihcp-portal__topbar { gap: 12px; padding: 15px 16px; }
	.ihcp-brand { gap: 9px; min-width: 0; }
	.ihcp-brand strong { font-size: 20px; }
	.ihcp-brand > span { padding-left: 9px; font-size: 9px; letter-spacing: .09em; }
	.ihcp-user-chip { flex: 0 0 auto; padding: 3px; border: 0; background: transparent; }
	.ihcp-user-chip span { display: none; }
	.ihcp-user-chip { margin-left: auto; }
	.ihcp-portal__nav { gap: 5px; padding: 9px 12px; }
	.ihcp-portal__nav a { min-height: 38px; padding: 8px 13px; font-size: 13px !important; }
	.ihcp-portal__content { padding: 22px 15px 35px; }
	.ihcp-welcome { display: grid; padding: 27px 23px; }
	.ihcp-welcome .ihcp-button { justify-self: start; }
	.ihcp-profile-progress { grid-template-columns: auto 1fr; }
	.ihcp-profile-progress .ihcp-text-link { grid-column: 2; }
	.ihcp-stats-grid { grid-template-columns: repeat(2, 1fr); }
	.ihcp-stat-card:last-child { grid-column: 1 / -1; }
	.ihcp-section-heading { align-items: flex-start; flex-direction: column; }
	.ihcp-lane-grid, .ihcp-guideline-grid, .ihcp-choice-grid { grid-template-columns: 1fr; }
	.ihcp-lane-card { min-height: 185px; }
	.ihcp-field-grid { grid-template-columns: 1fr; }
	.ihcp-field--wide { grid-column: auto; }
	.ihcp-submission-card { grid-template-columns: 1fr; }
	.ihcp-submission-card__actions { justify-items: start; }
	.ihcp-activity-row { grid-template-columns: auto 1fr; }
	.ihcp-activity-row__actions { grid-column: 2; justify-items: start; }
	.ihcp-form-actions { flex-wrap: wrap; }
	.ihcp-form-actions [data-step-back] { margin-right: 0; }
	.ihcp-form-actions--sticky { display: grid; grid-template-columns: 1fr 1fr; }
	.ihcp-form-actions--sticky .ihcp-button:last-child { grid-column: 1 / -1; }
	.ihcp-profile-layout { grid-template-columns: 1fr; }
	.ihcp-standing-strip { grid-template-columns: 1fr 1fr; }
	.ihcp-standing-strip > a { grid-column: 1 / -1; }
	.ihcp-public-profile__hero { grid-template-columns: 1fr; text-align: center; }
	.ihcp-public-profile__avatar { justify-self: center; }
	.ihcp-public-profile__links { justify-content: center; }
	.ihcp-public-profile__stats,.ihcp-publication-grid { grid-template-columns: 1fr; }
	.ihcp-attribution { grid-template-columns: 1fr; text-align: center; }
	.ihcp-attribution__avatar { justify-self: center; }
	.ihcp-attribution__links { justify-content: center; }
	.ihcp-profile-card { grid-template-columns: auto 1fr; justify-items: start; text-align: left; column-gap: 18px; }
	.ihcp-profile-card img { grid-row: 1 / 5; }
	.ihcp-profile-card h2 { margin-top: 4px; }
	.ihcp-profile-card .ihcp-text-link { margin-top: 7px; }
	.ihcp-empty-state--compact { align-items: flex-start; flex-wrap: wrap; }
	.ihcp-public-home { border-radius: 0; }
	.ihcp-public-hero, .ihcp-public-section { padding: 40px 22px; }
	.ihcp-public-cta { align-items: flex-start; flex-direction: column; margin: 0 18px 30px; padding: 25px; }
	.ihcp-community-create { align-items: flex-start; flex-direction: column; }
	.ihcp-community-hub__header,.ihcp-community-hub__footer,.ihcp-community-admin { align-items: flex-start; flex-direction: column; }
	.ihcp-community-lanes { grid-template-columns: 1fr; }
	.ihcp-community-applicant { grid-template-columns: 1fr; }
	.ihcp-terms-page { border-radius: 0; border-left: 0; border-right: 0; }
	.ihcp-terms-hero { grid-template-columns: 1fr; min-height: 0; padding: 52px 24px 86px; }
	.ihcp-terms-hero h1 { font-size: clamp(40px,12vw,58px); }
	.ihcp-terms-summary { margin: -50px 16px 0; }
	.ihcp-terms-layout { grid-template-columns: 1fr; padding: 38px 16px 58px; }
	.ihcp-terms-nav { position: static; }
	.ihcp-terms-nav ol { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.ihcp-terms-section { grid-template-columns: 42px minmax(0,1fr); gap: 15px; padding: 22px 18px; }
	.ihcp-terms-section__number { width: 40px; height: 40px; border-radius: 12px; font-size: 13px; }
	.ihcp-terms-rules { grid-template-columns: 1fr; }
	.ihcp-steps li { font-size: 0; }
	.ihcp-steps li span { font-size: 11px; }
}

@media (max-width: 430px) {
	.ihcp-stats-grid { grid-template-columns: 1fr 1fr; }
	.ihcp-stat-card { grid-template-columns: auto 1fr; padding: 14px; }
	.ihcp-stat-card small { font-size: 10px; }
	.ihcp-profile-progress { padding: 16px; }
	.ihcp-progress-ring { width: 54px; height: 54px; }
	.ihcp-step-form, .ihcp-form-card { padding: 20px 16px; }
	.ihcp-form-actions { justify-content: stretch; }
	.ihcp-form-actions .ihcp-button { flex: 1; }
	.ihcp-choice-card > span { min-height: 72px; }
	.ihcp-standing-strip { grid-template-columns: 1fr; }
	.ihcp-standing-strip > a { grid-column: auto; }
	.ihcp-terms-meta { display: grid; }
	.ihcp-terms-meta span { width: max-content; max-width: 100%; }
	.ihcp-terms-summary article { padding: 18px; }
	.ihcp-terms-nav ol { grid-template-columns: 1fr; }
	.ihcp-terms-section { grid-template-columns: 1fr; }
	.ihcp-terms-section h2 { font-size: 27px; }
	.ihcp-terms-acceptance .ihcp-button { width: 100% !important; }
}

/* ItHurts brand typography: Merriweather headlines and Proxima Nova content only. */
.ihcp-community-hub,
.ihcp-public-profile,
.ihcp-terms-page {
	color: var(--ihcp-ink);
	font-family: var(--ihcp-font-body);
	font-size: 19px;
}

.ihcp-portal :is(h1,h2,h3,h4,h5,h6,legend),
.ihcp-public-home :is(h1,h2,h3,h4,h5,h6,legend),
.ihcp-application-shell :is(h1,h2,h3,h4,h5,h6,legend),
.ihcp-community-hub :is(h1,h2,h3,h4,h5,h6,legend),
.ihcp-public-profile :is(h1,h2,h3,h4,h5,h6,legend),
.ihcp-terms-page :is(h1,h2,h3,h4,h5,h6,legend) {
	font-family: var(--ihcp-font-heading);
}

.ihcp-portal h1,
.ihcp-public-home h1,
.ihcp-application-shell h1,
.ihcp-community-hub h1,
.ihcp-public-profile h1,
.ihcp-terms-page h1 {
	font-size: 40px;
}

.ihcp-welcome > div > p:last-child,
.ihcp-section-heading p:not(.ihcp-eyebrow),
.ihcp-profile-progress p:not(.ihcp-eyebrow),
.ihcp-public-hero__copy > p:not(.ihcp-eyebrow),
.ihcp-public-profile__bio,
.ihcp-community-hub__header p,
.ihcp-terms-hero__intro,
.ihcp-terms-section > div > p:not(.ihcp-terms-section__eyebrow) {
	font-family: var(--ihcp-font-body);
	font-size: 19px;
}

.ihcp-portal :is(input,select,textarea,button),
.ihcp-public-home :is(input,select,textarea,button),
.ihcp-application-shell :is(input,select,textarea,button),
.ihcp-community-hub :is(input,select,textarea,button),
.ihcp-terms-page :is(input,select,textarea,button) {
	font-family: var(--ihcp-font-body);
}

@media (max-width: 760px) {
	.ihcp-portal h1,
	.ihcp-public-home h1,
	.ihcp-application-shell h1,
	.ihcp-community-hub h1,
	.ihcp-public-profile h1,
	.ihcp-terms-page h1 { font-size: 34px; }
}

/* Private contributor community pages. */
.ihcp-contributor-feature-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin: 15px 0 28px; }
.ihcp-contributor-feature-grid > a { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 11px; min-width: 0; padding: 14px; border: 1px solid var(--ihcp-line); border-radius: 13px; background: #fff; color: #0C0A15; text-decoration: none !important; transition: .18s ease; }
.ihcp-contributor-feature-grid > a:hover { transform: translateY(-2px); border-color: #883621; box-shadow: 0 9px 24px rgba(136,54,33,.08); }
.ihcp-contributor-feature-grid > a > span { display: grid; min-width: 0; }
.ihcp-contributor-feature-grid strong { color: #0C0A15; font-size: 13px; }
.ihcp-contributor-feature-grid small { overflow: hidden; color: var(--ihcp-muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.ihcp-contributor-feature-grid b { display: grid; place-items: center; min-width: 43px; height: 43px; border-radius: 12px; background: rgba(136,54,33,.08); color: #883621; font-family: "Merriweather"; font-size: 17px; }
.ihcp-contributor-feature-grid .ihcp-mini-badges { flex-wrap: nowrap; justify-content: flex-start; gap: 0; min-width: 44px; }
.ihcp-contributor-feature-grid .ihcp-mini-badges span { width: 28px; height: 28px; margin-right: -12px; border: 2px solid #fff; font-size: 8px; }
.ihcp-avatar-stack { display: flex; min-width: 48px; }
.ihcp-avatar-stack img { width: 30px; height: 30px; margin-right: -14px; border: 2px solid #fff; border-radius: 50%; object-fit: cover; }

.ihcp-contributor-page-hero {
	display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 22px;
	margin-bottom: 24px; padding: clamp(22px,4vw,34px); border: 1px solid var(--ihcp-line); border-radius: 20px;
	background: linear-gradient(115deg,#fff 0%,#fff 68%,rgba(136,54,33,.08) 100%); box-shadow: 0 14px 38px rgba(12,10,21,.1);
}
.ihcp-contributor-page-hero__avatar { position: relative; }
.ihcp-contributor-page-hero__avatar img { display: block; border: 4px solid #fff; border-radius: 50%; box-shadow: 0 0 0 2px #883621,0 12px 28px rgba(121,35,20,.14); }
.ihcp-contributor-page-hero__avatar > span { position: absolute; right: -2px; bottom: 1px; display: grid; place-items: center; width: 28px; height: 28px; border: 3px solid #fff; border-radius: 50%; background: #883621; color: #fff; font-size: 12px; font-weight: 900; }
.ihcp-contributor-page-hero h1 { margin: 0 0 6px; }
.ihcp-contributor-page-hero p:not(.ihcp-eyebrow) { max-width: 720px; margin: 0; color: var(--ihcp-muted); font-size: 19px; }

.ihcp-contributor-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 20px; padding: 15px 18px; border: 1px solid var(--ihcp-line); border-radius: 14px; background: #fff; }
.ihcp-contributor-toolbar > div { display: flex; align-items: baseline; gap: 7px; }
.ihcp-contributor-toolbar > div strong { color: #883621; font-family: "Merriweather"; font-size: 28px; }
.ihcp-contributor-toolbar > div span { color: var(--ihcp-muted); font-size: 12px; font-weight: 700; }
.ihcp-contributor-toolbar form { display: flex; align-items: center; gap: 8px; }
.ihcp-contributor-toolbar input { width: min(320px,42vw); min-height: 44px; padding: 10px 13px; border: 1px solid var(--ihcp-line); border-radius: 10px; background: #fff; color: #0C0A15; font-family: "Proxima Nova"; font-size: 15px; }

.ihcp-contributor-directory { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.ihcp-contributor-card { position: relative; display: grid; justify-items: center; align-content: start; gap: 13px; min-width: 0; padding: 27px 22px 22px; border: 1px solid var(--ihcp-line); border-radius: 18px; background: #fff; text-align: center; box-shadow: 0 10px 26px rgba(121,35,20,.04); }
.ihcp-contributor-card.is-current-user { border-color: #883621; background: linear-gradient(145deg,#fff,rgba(136,54,33,.05)); }
.ihcp-contributor-card__avatar { position: relative; }
.ihcp-contributor-card__avatar img { display: block; border-radius: 50%; box-shadow: 0 0 0 6px rgba(136,54,33,.08); }
.ihcp-contributor-card__avatar > span { position: absolute; right: -2px; bottom: 2px; display: grid; place-items: center; width: 27px; height: 27px; border: 3px solid #fff; border-radius: 50%; background: #883621; color: #fff; font-size: 11px; font-weight: 900; }
.ihcp-contributor-card__identity { min-width: 0; }
.ihcp-contributor-card__identity h2 { margin: 0 0 5px; font-size: 25px; }
.ihcp-contributor-card__identity p { margin: 5px 0 0; color: var(--ihcp-muted); font-size: 13px; }
.ihcp-contributor-card__identity .ihcp-contributor-card__title { color: #792314; font-size: 14px; font-weight: 700; }
.ihcp-contributor-card__stats { display: grid; grid-template-columns: repeat(2,1fr); width: 100%; border-top: 1px solid var(--ihcp-line); border-bottom: 1px solid var(--ihcp-line); }
.ihcp-contributor-card__stats span { display: grid; gap: 2px; padding: 12px 8px; color: var(--ihcp-muted); font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.ihcp-contributor-card__stats span + span { border-left: 1px solid var(--ihcp-line); }
.ihcp-contributor-card__stats strong { color: #0C0A15; font-size: 19px; letter-spacing: 0; }
.ihcp-mini-badges { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; min-height: 31px; }
.ihcp-mini-badges span { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid rgba(136,54,33,.22); border-radius: 50%; background: rgba(136,54,33,.08); color: #883621; font-family: "Proxima Nova"; font-size: 9px; font-weight: 900; }

.ihcp-reward-overview { display: grid; grid-template-columns: 260px minmax(0,1fr); align-items: stretch; margin-bottom: 18px; overflow: hidden; border-radius: 19px; background: linear-gradient(135deg,#792314,#883621 62%,#792314); color: #fff; box-shadow: 0 16px 40px rgba(121,35,20,.14); }
.ihcp-reward-score { display: grid; align-content: center; padding: 28px; border-right: 1px solid rgba(255,255,255,.18); }
.ihcp-reward-score span,.ihcp-reward-score small { color: rgba(255,255,255,.82); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.ihcp-reward-score strong { margin: 4px 0; color: #fff; font-family: "Merriweather"; font-size: 52px; line-height: 1; }
.ihcp-reward-progress { display: grid; align-content: center; gap: 14px; padding: 30px; }
.ihcp-reward-progress > div:first-child { display: flex; justify-content: space-between; gap: 15px; }
.ihcp-reward-progress strong,.ihcp-reward-progress span { color: #fff; font-size: 13px; }
.ihcp-reward-progress__track { height: 12px; overflow: hidden; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; background: rgba(255,255,255,.12); }
.ihcp-reward-progress__track span { display: block; height: 100%; border-radius: inherit; background: #fff; }
.ihcp-reward-tiers { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.ihcp-reward-tiers article { position: relative; min-height: 220px; padding: 22px; border: 1px solid var(--ihcp-line); border-radius: 16px; background: #fff; overflow: hidden; }
.ihcp-reward-tiers article.is-locked { opacity: .58; }
.ihcp-reward-tiers article.is-current { border: 2px solid #883621; box-shadow: 0 12px 30px rgba(136,54,33,.1); }
.ihcp-reward-tier__number { position: absolute; right: 14px; top: 12px; color: rgba(136,54,33,.18); font-family: "Merriweather"; font-size: 38px; font-weight: 800; }
.ihcp-reward-tiers h2 { margin: 10px 0 8px; font-size: 23px; }
.ihcp-reward-tiers article > p:last-child { margin: 0; color: var(--ihcp-muted); font-size: 13px; }
.ihcp-reward-breakdown { margin-top: 22px; padding: clamp(22px,4vw,34px); border: 1px solid var(--ihcp-line); border-radius: 18px; background: #fff; }
.ihcp-reward-breakdown > div:not(.ihcp-section-heading) { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.ihcp-reward-breakdown > div:not(.ihcp-section-heading) span { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 15px; border-radius: 10px; background: rgba(136,54,33,.05); }
.ihcp-reward-breakdown em { color: var(--ihcp-muted); font-size: 12px; font-style: normal; }
.ihcp-reward-breakdown span strong { color: #883621; }
.ihcp-reward-breakdown > p { margin: 18px 0 0; color: var(--ihcp-muted); font-size: 12px; }

.ihcp-badge-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
.ihcp-badge-grid article { display: grid; justify-items: center; align-content: start; min-height: 280px; padding: 29px 24px; border: 1px solid var(--ihcp-line); border-radius: 18px; background: #fff; text-align: center; }
.ihcp-badge-grid article.is-earned { border-color: #883621; background: radial-gradient(circle at 50% 0,rgba(136,54,33,.08),#fff 52%); box-shadow: 0 12px 32px rgba(136,54,33,.08); }
.ihcp-badge-grid article.is-locked { opacity: .58; }
.ihcp-badge-medallion { display: grid; place-items: center; width: 92px; height: 92px; margin-bottom: 18px; border: 1px solid rgba(136,54,33,.22); border-radius: 50%; background: rgba(136,54,33,.08); box-shadow: inset 0 0 0 8px #fff,0 0 0 3px rgba(136,54,33,.08); }
.ihcp-badge-medallion span { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; background: #883621; color: #fff; font-family: "Merriweather"; font-size: 17px; font-weight: 800; }
.ihcp-badge-grid h2 { margin: 7px 0; font-size: 24px; }
.ihcp-badge-grid article > p:last-child { margin: 0; color: var(--ihcp-muted); font-size: 14px; }

.ihcp-invite-layout { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(280px,.65fr); gap: 18px; align-items: stretch; }
.ihcp-invite-form { margin: 0; }
.ihcp-invite-summary { padding: 29px; border-radius: 18px; background: linear-gradient(145deg,#792314,#883621); color: #fff; }
.ihcp-invite-summary .ihcp-eyebrow,.ihcp-invite-summary h2,.ihcp-invite-summary p { color: #fff !important; }
.ihcp-invite-summary h2 { margin: 7px 0 18px; font-size: 27px; }
.ihcp-invite-summary > div { display: grid; grid-template-columns: repeat(3,1fr); margin-bottom: 20px; border-top: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); }
.ihcp-invite-summary > div span { display: grid; gap: 3px; padding: 15px 7px; color: rgba(255,255,255,.82); font-size: 9px; font-weight: 800; text-align: center; text-transform: uppercase; }
.ihcp-invite-summary > div span + span { border-left: 1px solid rgba(255,255,255,.18); }
.ihcp-invite-summary > div strong { color: #fff; font-size: 25px; }
.ihcp-invite-summary > p:last-child { margin: 0; color: rgba(255,255,255,.82) !important; font-size: 13px; }
.ihcp-invitation-history { margin-top: 25px; }
.ihcp-invite-list { display: grid; gap: 9px; }
.ihcp-invite-list article { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 14px 17px; border: 1px solid var(--ihcp-line); border-radius: 13px; background: #fff; }
.ihcp-invite-list article > div:nth-child(2) { display: grid; }
.ihcp-invite-list article small { color: var(--ihcp-muted); font-size: 11px; }
.ihcp-invite-avatar img,.ihcp-invite-avatar > span { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; }
.ihcp-invite-avatar img { object-fit: cover; }
.ihcp-invite-avatar > span { background: rgba(136,54,33,.08); color: #883621; font-family: "Merriweather"; font-size: 21px; font-weight: 800; }
.ihcp-invite-status--approved { background: rgba(136,54,33,.08); color: #883621; }
.ihcp-invite-status--registered,.ihcp-invite-status--sent { background: rgba(136,54,33,.05); color: #0C0A15; }
.ihcp-invite-status--failed,.ihcp-invite-status--expired { background: rgba(121,35,20,.08); color: #792314; }

@media (max-width: 1000px) {
	.ihcp-contributor-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.ihcp-contributor-directory,.ihcp-badge-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.ihcp-reward-tiers { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.ihcp-reward-breakdown > div:not(.ihcp-section-heading) { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 760px) {
	.ihcp-contributor-page-hero { grid-template-columns: auto 1fr; gap: 16px; }
	.ihcp-contributor-page-hero > .ihcp-button { grid-column: 1 / -1; justify-self: start; }
	.ihcp-contributor-page-hero__avatar img { width: 70px; height: 70px; }
	.ihcp-contributor-toolbar { align-items: stretch; flex-direction: column; }
	.ihcp-contributor-toolbar form { align-items: stretch; flex-wrap: wrap; }
	.ihcp-contributor-toolbar input { flex: 1 1 210px; width: auto; }
	.ihcp-reward-overview { grid-template-columns: 1fr; }
	.ihcp-reward-score { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
	.ihcp-invite-layout { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
	.ihcp-contributor-feature-grid { grid-template-columns: 1fr; }
	.ihcp-contributor-directory,.ihcp-badge-grid,.ihcp-reward-tiers,.ihcp-reward-breakdown > div:not(.ihcp-section-heading) { grid-template-columns: 1fr; }
	.ihcp-contributor-page-hero { grid-template-columns: 1fr; text-align: center; }
	.ihcp-contributor-page-hero__avatar,.ihcp-contributor-page-hero > .ihcp-button { justify-self: center; }
	.ihcp-invite-list article { grid-template-columns: auto 1fr; }
	.ihcp-invite-list article > .ihcp-status-badge { grid-column: 2; justify-self: start; }
}

/* Contributor FAQs and support */
.ihcp-faq-page {
	max-width: 1180px;
	margin: 0 auto;
	padding: 32px 20px 72px;
}

.ihcp-faq-hero {
	background: linear-gradient(135deg, #fff8f4 0%, #f5fbfa 100%);
	border: 1px solid #eadfd9;
	border-radius: 24px;
	padding: clamp(28px, 5vw, 58px);
	margin-bottom: 28px;
	box-shadow: 0 18px 55px rgba(64, 37, 29, 0.08);
}

.ihcp-faq-hero h1 {
	margin: 0 0 12px;
	font-size: clamp(2rem, 5vw, 3.5rem);
	line-height: 1.05;
}

.ihcp-faq-hero p {
	max-width: 760px;
	margin: 0;
	font-size: 1.08rem;
	line-height: 1.75;
	color: #5f514c;
}

.ihcp-faq-notice {
	margin: 0 0 24px;
	padding: 14px 18px;
	border-radius: 12px;
	font-weight: 600;
}

.ihcp-faq-notice--success {
	background: #edf9f2;
	border: 1px solid #b8e2c8;
	color: #17643a;
}

.ihcp-faq-notice--error {
	background: #fff1f1;
	border: 1px solid #efb8b8;
	color: #8b2323;
}

.ihcp-faq-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-bottom: 42px;
}

.ihcp-faq-item {
	background: #fff;
	border: 1px solid #e8dfda;
	border-radius: 16px;
	box-shadow: 0 7px 24px rgba(64, 37, 29, 0.045);
	overflow: hidden;
}

.ihcp-faq-item summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 20px;
	font-weight: 700;
	line-height: 1.45;
}

.ihcp-faq-item summary::-webkit-details-marker {
	display: none;
}

.ihcp-faq-item summary::after {
	content: '+';
	margin-left: auto;
	font-size: 1.35rem;
	line-height: 1;
	color: #883621;
}

.ihcp-faq-item[open] summary::after {
	content: '−';
}

.ihcp-faq-number {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 999px;
	background: #f5e9e4;
	color: #883621;
	font-size: .82rem;
}

.ihcp-faq-answer {
	padding: 0 20px 22px 62px;
	color: #5f514c;
	line-height: 1.72;
}

.ihcp-faq-answer p:last-child {
	margin-bottom: 0;
}

.ihcp-support-form {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: 28px;
	background: #fff;
	border: 1px solid #e8dfda;
	border-radius: 22px;
	padding: clamp(24px, 4vw, 42px);
	box-shadow: 0 16px 48px rgba(64, 37, 29, 0.07);
}

.ihcp-support-form__intro h2 {
	margin-top: 0;
	font-size: clamp(1.55rem, 3vw, 2.25rem);
}

.ihcp-support-form__intro p {
	color: #655650;
	line-height: 1.7;
}

.ihcp-support-form__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.ihcp-support-form__fields .ihcp-field--full,
.ihcp-support-form__fields .ihcp-form-actions {
	grid-column: 1 / -1;
}

.ihcp-support-honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

@media (max-width: 820px) {
	.ihcp-faq-grid,
	.ihcp-support-form {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 560px) {
	.ihcp-faq-page {
		padding-inline: 14px;
	}

	.ihcp-faq-item summary {
		padding: 17px;
	}

	.ihcp-faq-answer {
		padding: 0 17px 19px;
	}

	.ihcp-support-form__fields {
		grid-template-columns: 1fr;
	}
}

.ihcp-faq-item summary > span {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 999px;
	background: #f5e9e4;
	color: #883621;
	font-size: .82rem;
}

.ihcp-faq-item > div {
	padding: 0 20px 22px 62px;
	color: #5f514c;
	line-height: 1.72;
}

.ihcp-faq-item > div p:last-child {
	margin-bottom: 0;
}

.ihcp-support-form .ihcp-field-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.ihcp-support-form .ihcp-field--wide {
	grid-column: 1 / -1;
}

@media (max-width: 560px) {
	.ihcp-faq-item > div {
		padding: 0 17px 19px;
	}

	.ihcp-support-form .ihcp-field-grid {
		grid-template-columns: 1fr;
	}
}

/* FAQ support form embedded in Contributor Community */
.ihcp-community-support {
	margin-top: 48px;
}

.ihcp-community-support > .ihcp-section-heading {
	margin-bottom: 18px;
}

.ihcp-support-form > .ihcp-faq-notice {
	grid-column: 1 / -1;
}
