/**
 * Helpful Saints OS 1.7.9.2 — Experience System 4.1 experience choreography.
 * One explicit component language; no substring class selectors or theme-wide
 * visual guessing. Route identity belongs to the surface bundles.
 */

/*
 * Self-contained typography. These compact Latin Modern subsets are bundled
 * with the plugin under the GUST Font License; system fonts remain fallbacks.
 */
@font-face {
	font-family:"HSC Sovereign Serif";src:url("../fonts/hsc-sovereign-serif-regular-1791.woff2") format("woff2");
	font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+0100-017F,U+2010-205E,U+20AC,U+2122,U+2190-2199,U+2212,U+271D;
}
@font-face {
	font-family:"HSC Sovereign Serif";src:url("../fonts/hsc-sovereign-serif-bold-1791.woff2") format("woff2");
	font-style:normal;font-weight:700;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+0100-017F,U+2010-205E,U+20AC,U+2122,U+2190-2199,U+2212,U+271D;
}
@font-face {
	font-family:"HSC Sovereign Serif";src:url("../fonts/hsc-sovereign-serif-italic-1791.woff2") format("woff2");
	font-style:italic;font-weight:400;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+0100-017F,U+2010-205E,U+20AC,U+2122,U+2190-2199,U+2212,U+271D;
}
@font-face {
	font-family:"HSC Sovereign Sans";src:url("../fonts/hsc-sovereign-sans-regular-1791.woff2") format("woff2");
	font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+0100-017F,U+2010-205E,U+20AC,U+2122,U+2190-2199,U+2212,U+271D;
}
@font-face {
	font-family:"HSC Sovereign Sans";src:url("../fonts/hsc-sovereign-sans-bold-1791.woff2") format("woff2");
	font-style:normal;font-weight:700;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+0100-017F,U+2010-205E,U+20AC,U+2122,U+2190-2199,U+2212,U+271D;
}
@font-face {
	font-family:"HSC Sovereign Mono";src:url("../fonts/hsc-sovereign-mono-regular-1791.woff2") format("woff2");
	font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+0100-017F,U+2010-205E,U+20AC,U+2122,U+2190-2199,U+2212,U+271D;
}

body.hsc179-experience {
	--hsc179-night:#030916;
	--hsc179-navy-950:#05101f;
	--hsc179-navy-900:#08192d;
	--hsc179-navy-800:#0d2945;
	--hsc179-ink:#10273c;
	--hsc179-ink-soft:#536c81;
	--hsc179-ivory:#fffdf7;
	--hsc179-paper:#f8f5ed;
	--hsc179-gold-100:#fff2c7;
	--hsc179-gold-300:#f1d083;
	--hsc179-gold-500:#dba845;
	--hsc179-gold-700:#a96a12;
	--hsc179-sky:#66c9f6;
	--hsc179-jade:#62d3a1;
	--hsc179-violet:#a997ff;
	--hsc179-coral:#f59183;
	--hsc179-danger:#c34250;
	--hsc179-line:rgba(255,240,196,.17);
	--hsc179-line-dark:rgba(18,63,96,.16);
	--hsc179-display:"HSC Sovereign Serif",Georgia,"Times New Roman",serif;
	--hsc179-ui:"HSC Sovereign Sans","Segoe UI",Arial,sans-serif;
	--hsc179-mono:"HSC Sovereign Mono","SFMono-Regular",Consolas,monospace;
	--hsc179-radius-sm:12px;
	--hsc179-radius-md:20px;
	--hsc179-radius-lg:32px;
	--hsc179-space:clamp(20px,5vw,72px);
	--hsc179-content:1240px;
	--hsc179-ease:cubic-bezier(.2,.78,.2,1);
	--hsc179-focus:0 0 0 3px var(--hsc179-night),0 0 0 6px var(--hsc179-gold-300);
	--hsc179-shadow:0 20px 64px rgba(0,7,18,.25);
	--hsc179-depth:0px;
	background:var(--hsc179-night);
	font-kerning:normal;
	font-synthesis:none;
	text-underline-offset:.18em;
}

/*
 * Astra is the WordPress host on governed routes, never a second visual shell.
 * Every rule in this boundary is guarded by the server-issued body class.
 */
body.hsc179-governed-shell {
	inline-size:100%;max-inline-size:none;margin:0;overflow-x:clip;background:var(--hsc179-night);
}
body.hsc179-governed-shell :where(#page,.site,#content,.site-content,.ast-container,.content-area,#primary,main#primary,.site-main,.entry-content,.ast-article-single,.wp-site-blocks) {
	inline-size:100%!important;max-inline-size:none!important;min-inline-size:0!important;
	margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
}
body.hsc179-governed-shell :where(.ast-separate-container,.ast-plain-container,.ast-page-builder-template) :where(.site-content,.ast-container,.content-area,#primary,main#primary,.site-main,.ast-article-single) {
	inline-size:100%!important;max-inline-size:none!important;margin:0!important;padding:0!important;
}
body.hsc179-governed-shell :where(#secondary,.widget-area,.sidebar-main,.ast-sidebar-container,.ast-separate-container .ast-sidebar-main) {
	display:none!important;inline-size:0!important;margin:0!important;padding:0!important;border:0!important;
}
body.hsc179-governed-shell :where(.site-content,.ast-container,.content-area,#primary,main#primary,.site-main,.ast-article-single) {
	float:none!important;inset:auto!important;border-inline:0!important;
}
body.hsc179-governed-shell :where(#masthead,header#masthead,.site-header:not(.hsc-rh175-bar),.ast-mobile-header-wrap,#ast-mobile-header,.ast-mobile-popup-drawer,.main-header-bar-wrap,.ast-primary-header-bar,.ast-builder-menu-mobile,.ast-mobile-header-content) {
	display:none!important;
}
/*
 * The Helpful Saints shell is the only global header/footer owner on governed
 * routes. Block themes render template parts outside the Astra-era selectors
 * above, so suppress only their top-level shell and generated page-title band.
 * Route content and embedded header/footer elements remain untouched.
 */
body.hsc179-governed-shell .wp-site-blocks > header.wp-block-template-part,
body.hsc179-governed-shell .wp-site-blocks > footer.wp-block-template-part,
body.hsc179-governed-shell .wp-site-blocks > main .wp-block-post-title,
body.hsc179-governed-shell .wp-site-blocks > main > .wp-block-group:has(> .wp-block-post-title):not(:has(.wp-block-post-content, .entry-content)) {
	display:none!important;
}
body.hsc179-governed-shell :where(.ast-above-header-wrap,.ast-below-header-wrap,.ast-breadcrumbs-wrapper,.ast-archive-description,.ast-page-title-wrap,.ast-title-bar-wrap) {
	display:none!important;
}
body.hsc179-governed-shell :where(#colophon,footer#colophon,.site-footer:not(.hsc1111-footer),.ast-footer-overlay,.ast-small-footer,.site-above-footer-wrap,.site-primary-footer-wrap,.site-below-footer-wrap,.footer-adv-overlay,.ast-builder-footer-grid-columns,.ast-footer-copyright,.site-footer-section,.footer-widget-area) {
	display:none!important;
}
body.hsc179-governed-shell :where(.entry-header,.page-header,.entry-title) {
	display:none!important;
}
body.hsc179-governed-shell .hsc179,
body.hsc179-governed-shell .hsc1111-footer {
	inline-size:100%!important;max-inline-size:none!important;margin:0!important;clear:both;
}

.hsc179 {
	position:relative;isolation:isolate;inline-size:100%;min-block-size:70vh;overflow:clip;
	background:var(--hsc179-night);color:#f7f2e7;font-family:var(--hsc179-ui);line-height:1.58;
}
.hsc179 *, .hsc179 *::before, .hsc179 *::after { box-sizing:border-box; }
.hsc179 :where(h1,h2,h3,p,blockquote,figure) { margin-block-start:0; }
.hsc179 :where(h1,h2,h3) { color:inherit;font-family:var(--hsc179-display);font-weight:520;line-height:.98;text-wrap:balance; }
.hsc179 :where(p,li,dd,figcaption,blockquote) { line-height:1.66; }
.hsc179 :where(img,svg,canvas) { display:block;max-inline-size:100%; }
.hsc179 :where(a) { color:inherit; }
.hsc179 :where(button,input,select,textarea,summary,a[href]) { min-block-size:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent; }
.hsc179 :where(button,input,select,textarea) { font:inherit; }
.hsc179 :where(a,button,input,select,textarea,summary,[role="button"],[tabindex]):focus-visible {
	outline:3px solid transparent!important;outline-offset:3px;box-shadow:var(--hsc179-focus)!important;
}
.hsc179 :where(button,[role="button"]):disabled,
.hsc179 :where(button,[role="button"])[aria-disabled="true"] { cursor:not-allowed;filter:saturate(.5);opacity:.58; }
.hsc179 :where(input,select,textarea)[aria-invalid="true"] { border-color:var(--hsc179-danger)!important;box-shadow:0 0 0 4px rgba(195,66,80,.15)!important; }
.hsc179 ::selection { background:var(--hsc179-gold-300);color:var(--hsc179-night); }

.hsc179-u-sr-only {
	position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0!important;margin:-1px!important;
	overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.hsc179-u-cluster { display:flex;flex-wrap:wrap;align-items:center;gap:10px; }
.hsc179-u-stack { display:grid;gap:16px; }

.hsc179-c-section { position:relative;max-inline-size:var(--hsc179-content);margin-inline:auto;padding:clamp(70px,9vw,132px) var(--hsc179-space); }
.hsc179-c-heading { max-inline-size:790px;margin-block-end:clamp(28px,4vw,52px); }
.hsc179-c-heading h2 { margin:0;font-size:clamp(42px,5.4vw,76px);letter-spacing:-.035em; }
.hsc179-c-heading > p:not(.hsc179-c-eyebrow) { max-inline-size:700px;margin:20px 0 0;color:#aebfd0;font-size:clamp(16px,1.4vw,20px); }
.hsc179-c-eyebrow {
	display:flex;align-items:center;gap:10px;margin:0 0 17px;color:var(--hsc179-gold-300);
	font-size:11px;font-weight:850;letter-spacing:.19em;line-height:1.3;text-transform:uppercase;
}
.hsc179-c-eyebrow::after { content:"";inline-size:64px;block-size:1px;background:linear-gradient(90deg,var(--hsc179-gold-500),transparent); }

.hsc179-c-panel {
	position:relative;border:1px solid var(--hsc179-line);border-radius:var(--hsc179-radius-md);
	background:linear-gradient(145deg,rgba(13,41,69,.86),rgba(4,14,29,.94));box-shadow:var(--hsc179-shadow);
}
.hsc179-c-panel::before {
	content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;
	background:radial-gradient(circle at var(--hsc179-pointer-x,72%) var(--hsc179-pointer-y,18%),rgba(102,201,246,.09),transparent 20rem);
}
.hsc179-c-button {
	display:inline-flex;align-items:center;justify-content:center;gap:9px;min-block-size:48px;padding:10px 20px;
	border:1px solid transparent;border-radius:999px;text-decoration:none;font-size:13px;font-weight:850;letter-spacing:.02em;cursor:pointer;
	transition:transform 180ms var(--hsc179-ease),box-shadow 180ms ease,border-color 180ms ease,background 180ms ease;
}
.hsc179-c-button--gold {
	border-color:rgba(255,244,206,.5);background:linear-gradient(135deg,#fff2c6,var(--hsc179-gold-500) 58%,#b67618);color:#111827;
	box-shadow:0 12px 30px rgba(183,112,21,.25),inset 0 1px 0 rgba(255,255,255,.62);
}
.hsc179-c-button--quiet { border-color:var(--hsc179-line);background:rgba(7,24,43,.76);color:#eaf3fc; }
.hsc179-c-text-link { display:inline-flex;align-items:center;gap:10px;color:var(--hsc179-gold-300);font-weight:800;text-decoration:none; }
.hsc179-c-text-link span { transition:transform 180ms var(--hsc179-ease); }
.hsc179-c-quote {
	position:relative;margin:0;padding:clamp(27px,4vw,46px);border-inline-start:2px solid var(--hsc179-gold-500);
	background:linear-gradient(100deg,rgba(219,168,69,.1),transparent 70%);
}
.hsc179-c-quote blockquote { margin:0;color:#f5e8c8;font:italic clamp(23px,2.7vw,38px)/1.25 var(--hsc179-display); }
.hsc179-c-quote cite { display:block;margin-block-start:18px;color:#93a9bf;font-size:11px;font-style:normal;font-weight:800;letter-spacing:.16em;text-transform:uppercase; }

.hsc179-c-field { display:grid;gap:8px; }
.hsc179-c-field label { color:#d8e4ee;font-size:12px;font-weight:800;letter-spacing:.04em; }
.hsc179-c-field :where(input,textarea,select) {
	inline-size:100%;border:1px solid rgba(148,189,221,.25);border-radius:var(--hsc179-radius-sm);background:rgba(2,12,25,.8);color:#f8fbff;
	box-shadow:inset 0 1px 5px rgba(0,0,0,.2);padding:14px 16px;
}
.hsc179-c-field :where(input,textarea)::placeholder { color:#7890a7;opacity:1; }
.hsc179-c-field :where(input,textarea,select):focus { border-color:var(--hsc179-sky);background:#06182b;outline:none; }
.hsc179-c-field textarea { min-block-size:132px;resize:vertical; }

.hsc179-c-chip {
	display:inline-flex;align-items:center;gap:7px;min-block-size:36px;padding:7px 12px;border:1px solid rgba(146,184,214,.2);
	border-radius:999px;background:rgba(6,25,45,.74);color:#b6c8d8;font-size:11px;font-weight:800;
}
.hsc179-c-chip[aria-pressed="true"], .hsc179-c-chip[aria-selected="true"], .hsc179-c-chip.is-active {
	border-color:rgba(241,208,131,.58);background:rgba(219,168,69,.14);color:#fff1c8;
}
.hsc179-c-status { padding:13px 15px;border-inline-start:3px solid var(--hsc179-sky);background:rgba(102,201,246,.08);color:#bcd2e3;font-size:12px; }
.hsc179-c-status[data-state="success"] { border-color:var(--hsc179-jade);background:rgba(98,211,161,.08); }
.hsc179-c-status[data-state="warning"] { border-color:var(--hsc179-gold-500);background:rgba(219,168,69,.09); }
.hsc179-c-status[data-state="error"] { border-color:var(--hsc179-danger);background:rgba(195,66,80,.09); }

.hsc179-c-stage {
	position:relative;display:grid;grid-template-columns:auto 1fr;gap:5px 12px;min-block-size:68px;padding:13px 16px;
	border:1px solid rgba(143,181,211,.16);border-radius:var(--hsc179-radius-sm);background:rgba(4,18,34,.58);color:#8198ae;
}
.hsc179-c-stage > i { grid-row:1/3;display:grid;place-items:center;inline-size:30px;block-size:30px;border:1px solid currentColor;border-radius:50%;font-style:normal;font-weight:900; }
.hsc179-c-stage > strong { color:#dce7ef;font-size:12px; }
.hsc179-c-stage > small { font-size:11px; }
.hsc179-c-stage.is-current { border-color:rgba(102,201,246,.48);background:rgba(102,201,246,.09);color:var(--hsc179-sky); }
.hsc179-c-stage.is-complete { border-color:rgba(98,211,161,.34);color:var(--hsc179-jade); }

.hsc179-c-dialog {
	inline-size:min(760px,calc(100% - 28px));max-block-size:min(82vh,760px);padding:0;border:1px solid rgba(241,208,131,.3);
	border-radius:var(--hsc179-radius-lg);background:#061528;color:#f4f7fb;box-shadow:0 35px 110px rgba(0,0,0,.62);overflow:auto;
}
.hsc179-c-dialog::backdrop { background:rgba(1,5,13,.78);backdrop-filter:blur(7px); }
.hsc179-c-dialog__header { position:sticky;inset-block-start:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-block-end:1px solid var(--hsc179-line);background:rgba(6,21,40,.96); }
.hsc179-c-dialog__body { padding:22px; }
.hsc179-c-icon-button { display:grid;place-items:center;inline-size:44px;block-size:44px;padding:0;border:1px solid var(--hsc179-line);border-radius:50%;background:#0b2440;color:#fff;cursor:pointer; }

/* One motion language across every governed surface and the global footer. */
.hsc179-motion-unit {
	--hsc179-motion-order:0;
	transition:opacity .72s var(--hsc179-ease),transform .82s var(--hsc179-ease),filter .72s var(--hsc179-ease);
	transition-delay:calc(var(--hsc179-motion-order) * 42ms);
	will-change:opacity,transform;
}
html.hsc179-runtime-ready:not(.hsc179-reduced-motion):not(.hsc179-tier-essential) .hsc179-motion-unit:not(.is-hsc179-visible) {
	opacity:.01;transform:translate3d(0,22px,0) scale(.992);filter:saturate(.82);
}
.hsc179-motion-unit.is-hsc179-visible { opacity:1;transform:none;filter:none;will-change:auto; }
.hsc179-c-panel,.hsc179-home__path,.hsc179-member__grid > a {
	transform-style:preserve-3d;backface-visibility:hidden;
}

.hsc179-system-boundary { max-inline-size:820px;min-block-size:360px;margin:80px auto;padding:clamp(32px,6vw,64px);border:1px solid var(--hsc179-line);border-radius:var(--hsc179-radius-lg);background:linear-gradient(145deg,#0a223c,#050f1e); }
.hsc179-system-boundary h1 { font-size:clamp(44px,7vw,82px); }
.hsc179-system-boundary p:last-child { color:#aec0d0;font-size:18px; }

/* Every tier is an authored destination, not merely Full with animation removed. */
html.hsc179-tier-essential body.hsc179-experience { --hsc179-shadow:0 8px 24px rgba(0,7,18,.18);--hsc179-depth:0px; }
html.hsc179-tier-essential .hsc179-c-panel {
	border-width:2px;border-color:rgba(241,208,131,.25);background:linear-gradient(155deg,#102b46,#061425);
}
html.hsc179-tier-essential .hsc179-c-panel::before { background:linear-gradient(125deg,rgba(255,255,255,.025),transparent 44%); }
html.hsc179-tier-balanced body.hsc179-experience { --hsc179-depth:2px; }
html.hsc179-tier-balanced .hsc179-c-panel { background:linear-gradient(145deg,rgba(13,41,69,.92),rgba(4,14,29,.96)); }
html.hsc179-tier-full body.hsc179-experience { --hsc179-depth:5px; }
html.hsc179-tier-full .hsc179-c-panel { backdrop-filter:blur(16px); }

@media (hover:hover) and (pointer:fine) {
	html:not(.hsc179-reduced-motion) .hsc179-c-button:hover { transform:translateY(-2px); }
	html:not(.hsc179-reduced-motion) .hsc179-c-button--gold:hover { box-shadow:0 18px 40px rgba(183,112,21,.35),inset 0 1px 0 rgba(255,255,255,.7); }
	html:not(.hsc179-reduced-motion) .hsc179-c-text-link:hover span { transform:translateX(4px); }
}

html.hsc179-tab-hidden .hsc179 *, html.hsc179-tab-hidden .hsc179 *::before, html.hsc179-tab-hidden .hsc179 *::after,
html.hsc179-runtime-paused .hsc179 *, html.hsc179-runtime-paused .hsc179 *::before, html.hsc179-runtime-paused .hsc179 *::after { animation-play-state:paused!important; }
html.hsc179-reduced-motion .hsc179 *, html.hsc179-save-data .hsc179 * { scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important; }
html.hsc179-reduced-motion .hsc179-motion-unit,
html.hsc179-save-data .hsc179-motion-unit,
html.hsc179-tier-essential .hsc179-motion-unit { opacity:1!important;transform:none!important;filter:none!important;will-change:auto!important; }
html.hsc179-forced-colors .hsc179 { forced-color-adjust:auto; }

@media (max-width:760px) {
	.hsc179-c-section { padding-block:64px; }
	.hsc179-c-heading h2 { font-size:clamp(38px,12vw,56px); }
	.hsc179-c-dialog { inline-size:calc(100% - 16px);border-radius:20px; }
}
@media print {
	.hsc179 { background:#fff!important;color:#111!important; }
	.hsc179-c-button,.hsc179-c-dialog { display:none!important; }
	.hsc179-c-panel,.hsc179-c-quote { border:1px solid #777!important;background:#fff!important;box-shadow:none!important;color:#111!important; }
}
@media (prefers-reduced-motion:reduce) {
	.hsc179 *, .hsc179 *::before, .hsc179 *::after { scroll-behavior:auto!important;animation:none!important;transition:none!important; }
}
@media (forced-colors:active) {
	.hsc179 { forced-color-adjust:auto; }
	.hsc179-c-button,.hsc179-c-panel,.hsc179-c-chip,.hsc179-c-stage { border:1px solid ButtonText;box-shadow:none; }
}
