:root {
	--uc-border: color-mix(in srgb, currentColor 14%, transparent);
	--uc-ease: cubic-bezier(.2,.8,.2,1);
	--uc-gutter: 24px;
	--uc-section-gap: 80px;
	--uc-card-gap: 24px;
	--uc-radius: 12px;
	--uc-border-width: 1px;
	--uc-heading-weight: 700;
	--uc-body-weight: 400;
	--uc-base-size: 16px;
	--uc-nav-size: 13px;
	--uc-type-scale: 1.25;
	--uc-line-height: 1.7;
	--uc-heading-line-height: 1.05;
	--uc-letter-spacing: 0em;
	--uc-heading-letter-spacing: -.025em;
	--uc-hero-height: 86vh;
	--uc-grid-columns: 3;
	--uc-gradient-angle: 135deg;
	--uc-grain-opacity: .04;
	--uc-overlay-opacity: .58;
	--uc-graphic-scale: 1;
	--uc-card-shadow: 0 24px 70px rgba(0,0,0,.32);
	--uc-blur: 16px;
	--uc-hover-lift: 6px;
	--uc-motion-speed: 700ms;
	--uc-h1: 49px;
	--uc-h2: 39px;
	--uc-h3: 31px;
	--uc-h4: 25px;
	--uc-h5: 20px;
}

*, *::before, *::after { box-sizing: border-box; }
body { overflow-x: hidden; font-size: var(--uc-base-size); font-weight: var(--uc-body-weight); line-height: var(--uc-line-height); letter-spacing: var(--uc-letter-spacing); }
h1, h2, h3, h4, h5, h6 { font-weight: var(--uc-heading-weight); letter-spacing: var(--uc-heading-letter-spacing); line-height: var(--uc-heading-line-height); }
h1:not([class*="has-"]) { font-size: clamp(var(--uc-h3), 6vw, var(--uc-h1)); }
h2:not([class*="has-"]) { font-size: clamp(var(--uc-h4), 4.5vw, var(--uc-h2)); }
h3:not([class*="has-"]) { font-size: var(--uc-h3); }
h4:not([class*="has-"]) { font-size: var(--uc-h4); }
h5:not([class*="has-"]) { font-size: var(--uc-h5); }
a, button { transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--wp--preset--color--accent); outline-offset: 4px; }
.wp-site-blocks { isolation: isolate; padding-top: 0; padding-bottom: 0; position: relative; }

.uc-header {
	position: relative;
	z-index: 50;
	border-bottom: 1px solid var(--uc-border);
	background: color-mix(in srgb, var(--wp--preset--color--ink) 88%, transparent);
	backdrop-filter: blur(18px);
}
.uc-header.is-sticky { position: sticky; top: var(--wp-admin--admin-bar--height, 0); }
.uc-brand-line { color: var(--wp--preset--color--muted); font-size: .72rem; letter-spacing: .08em; }
.uc-brand { min-width: 0; }
.uc-brand .wp-block-site-logo img { border-radius: max(4px, calc(var(--uc-radius) * .45)); display: block; }
.wp-block-navigation { font-size: var(--uc-nav-size); }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--ink) !important; padding: var(--wp--preset--spacing--40) !important; }

.uc-hero { min-height: var(--uc-hero-height); position: relative; isolation: isolate; overflow: hidden; }
.uc-hero::before {
	content: "";
	position: absolute;
	inset: -20%;
	z-index: -2;
	background:
		radial-gradient(circle at 72% 38%, color-mix(in srgb, var(--wp--preset--color--signal) 65%, transparent) 0 8%, transparent 34%),
		radial-gradient(circle at 42% 78%, color-mix(in srgb, var(--wp--preset--color--accent) 55%, transparent), transparent 28%),
		linear-gradient(var(--uc-gradient-angle), #11131c 0%, var(--wp--preset--color--ink) 44%, #2a1533 100%);
	transform: rotate(-3deg) scale(1.08);
}
.uc-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg, rgba(9,9,13,.94) 0%, rgba(9,9,13,.64) 43%, rgba(9,9,13,.12) 76%), linear-gradient(0deg, var(--wp--preset--color--ink), transparent 35%);
}
.uc-hero__ghost { position: absolute; right: -2vw; bottom: -8%; font: 700 clamp(9rem, 31vw, 32rem)/.72 var(--wp--preset--font-family--display); color: transparent; -webkit-text-stroke: 1px rgba(245,239,226,.1); user-select: none; }
.uc-kicker { display: flex; align-items: center; gap: .8rem; color: var(--wp--preset--color--accent); font-size: .74rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.uc-kicker::before { content: ""; width: 3rem; height: 1px; background: currentColor; }
.uc-hero h1 { max-width: 11ch; text-wrap: balance; }
.uc-hero p { max-width: 58ch; }

.uc-section-title { display: flex; align-items: center; gap: 1rem; }
.uc-section-title::after { content: ""; flex: 1; border-top: 1px solid var(--uc-border); }
.uc-card { height: 100%; overflow: hidden; background: var(--wp--preset--color--surface); border: var(--uc-border-width) solid var(--uc-border); border-radius: var(--uc-radius); box-shadow: var(--uc-card-shadow); transition: box-shadow var(--uc-motion-speed) var(--uc-ease), transform var(--uc-motion-speed) var(--uc-ease); }
.uc-card .wp-block-post-featured-image { overflow: hidden; border-radius: 0; }
.uc-card .wp-block-post-featured-image img { transition: transform var(--uc-motion-speed) var(--uc-ease), filter var(--uc-motion-speed) var(--uc-ease); }
.uc-card:hover .wp-block-post-featured-image img { transform: scale(1.035); filter: saturate(1.1); }
.uc-card .wp-block-post-title a { color: inherit; text-decoration: none; }
.uc-card .wp-block-post-title a:hover { color: var(--wp--preset--color--accent); }
.uc-meta { color: var(--wp--preset--color--accent); font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.uc-number { color: transparent; -webkit-text-stroke: 1px color-mix(in srgb, var(--wp--preset--color--accent) 42%, transparent); font: 700 clamp(4rem,8vw,8rem)/1 var(--wp--preset--font-family--display); }
.uc-glass { border: 1px solid var(--uc-border); background: color-mix(in srgb, var(--wp--preset--color--surface) 74%, transparent); backdrop-filter: blur(16px); }
.uc-rule { border-color: var(--uc-border) !important; }
.uc-footer { border-top: 1px solid var(--uc-border); }
.uc-front-page > .wp-block-post-content { margin-block-start: 0; }
.uc-page-hero { isolation: isolate; overflow: hidden; }
.uc-page-hero .wp-block-cover__background { background: linear-gradient(0deg, color-mix(in srgb, var(--wp--preset--color--ink) 96%, transparent), color-mix(in srgb, var(--wp--preset--color--ink) 38%, transparent)); }
.uc-page-hero .wp-block-post-title { margin-inline: auto; max-width: 18ch; text-wrap: balance; }
.uc-archive-hero { background: radial-gradient(circle at 78% 20%, color-mix(in srgb, var(--wp--preset--color--signal) 23%, transparent), transparent 34%), linear-gradient(135deg, var(--wp--preset--color--raised), var(--wp--preset--color--ink)); border-bottom: 1px solid var(--uc-border); min-height: 420px; place-content: center; }
.uc-archive-hero .uc-kicker { justify-content: center; }
.uc-archive-hero .wp-block-query-title { margin-inline: auto; max-width: 16ch; text-wrap: balance; }
.uc-archive-hero .wp-block-term-description { margin-inline: auto; max-width: 62ch; }

/* Site Studio component choices. */
.uc-no-sticky-header .uc-header.is-sticky { position: relative; top: auto; }
.uc-header-centered .uc-header > .wp-block-group { flex-direction: column; justify-content: center; text-align: center; }
.uc-header-centered .uc-header .wp-block-navigation { justify-content: center; }
.uc-header-compact .uc-header { backdrop-filter: blur(10px); }
.uc-header-compact .uc-header.is-sticky { padding-block: .35rem !important; }
.uc-header-compact .uc-brand-line { display: none; }
.uc-header-overlay .uc-header { background: transparent; border-color: transparent; margin-bottom: -96px; }
.uc-header-sidebar .uc-header { bottom: 0; left: 0; position: fixed; top: var(--wp-admin--admin-bar--height, 0); width: min(260px, 22vw); }
.uc-header-sidebar .uc-header > .wp-block-group { align-items: flex-start; flex-direction: column; height: 100%; }
.uc-header-sidebar .uc-header .wp-block-navigation__container { align-items: flex-start; flex-direction: column; }
.uc-header-sidebar .wp-site-blocks { padding-left: min(260px, 22vw); }

.uc-navigation-underline .wp-block-navigation-item__content { position: relative; }
.uc-navigation-underline .wp-block-navigation-item__content::after { background: var(--wp--preset--color--accent); bottom: -.35rem; content: ""; height: 1px; left: 0; position: absolute; transform: scaleX(0); transform-origin: right; transition: transform .25s var(--uc-ease); width: 100%; }
.uc-navigation-underline .wp-block-navigation-item__content:hover::after { transform: scaleX(1); transform-origin: left; }
.uc-navigation-pills .wp-block-navigation-item__content { background: color-mix(in srgb, var(--wp--preset--color--raised) 75%, transparent); border-radius: 999px; padding: .55em 1em; }
.uc-navigation-boxed .wp-block-navigation-item__content { border: var(--uc-border-width) solid var(--uc-border); padding: .55em 1em; }

.uc-button-rounded .wp-element-button { border-radius: max(6px, calc(var(--uc-radius) * .7)); }
.uc-button-square .wp-element-button { border-radius: 0; }
.uc-button-outline .wp-element-button { background: transparent; border: 1px solid currentColor; color: var(--wp--preset--color--accent); }
.uc-button-outline .wp-element-button:hover { background: var(--wp--preset--color--accent); border-color: var(--wp--preset--color--accent); color: var(--wp--preset--color--ink); }
.uc-button-soft .wp-element-button { background: color-mix(in srgb, var(--wp--preset--color--accent) 18%, transparent); color: var(--wp--preset--color--accent); }
.uc-button-link .wp-element-button { background: transparent; border-radius: 0; border-width: 0 0 1px; color: var(--wp--preset--color--accent); padding-inline: 0; }
.uc-button-size-compact .wp-element-button { padding: .58rem 1rem; }
.uc-button-size-large .wp-element-button { font-size: .9rem; padding: 1.05rem 1.8rem; }

.uc-card-outlined .uc-card { box-shadow: none; background: transparent; }
.uc-card-flat .uc-card { border-color: transparent; box-shadow: none; }
.uc-card-glass .uc-card { background: color-mix(in srgb, var(--wp--preset--color--surface) 72%, transparent); backdrop-filter: blur(var(--uc-blur)); box-shadow: var(--wp--preset--shadow--glow); }
.uc-card-bordered .uc-card { border-color: var(--wp--preset--color--paper); border-width: max(2px, var(--uc-border-width)); box-shadow: 8px 8px 0 var(--wp--preset--color--paper); }
.uc-card-poster .uc-card { background: var(--wp--preset--color--raised); }
.uc-card-hover-lift .uc-card:hover { transform: translateY(calc(-1 * var(--uc-hover-lift))); }
.uc-card-hover-zoom .uc-card:hover .wp-block-post-featured-image img { transform: scale(1.075); }
.uc-card-hover-glow .uc-card:hover { box-shadow: 0 0 calc(var(--uc-shadow-depth) * 2) color-mix(in srgb, var(--wp--preset--color--signal) 45%, transparent); }
.uc-card-hover-none .uc-card,
.uc-card-hover-none .uc-card .wp-block-post-featured-image img { transition: none; }
.uc-card-hover-none .uc-card:hover .wp-block-post-featured-image img { filter: none; transform: none; }
.uc-image-square .wp-block-post-featured-image,
.uc-image-square .wp-block-image img { border-radius: 0; }
.uc-image-rounded .wp-block-post-featured-image,
.uc-image-rounded .wp-block-image img { border-radius: var(--uc-radius); overflow: hidden; }
.uc-image-organic .wp-block-post-featured-image,
.uc-image-organic .wp-block-image img { border-radius: 38% 62% 48% 52% / 52% 42% 58% 48%; overflow: hidden; }
.uc-image-arch .wp-block-post-featured-image,
.uc-image-arch .wp-block-image img { border-radius: 50% 50% var(--uc-radius) var(--uc-radius); overflow: hidden; }
.uc-image-circle .wp-block-post-featured-image,
.uc-image-circle .wp-block-image img { aspect-ratio: 1; border-radius: 50%; object-fit: cover; overflow: hidden; }
.uc-treatment-monochrome :is(.wp-block-image img,.wp-block-post-featured-image img) { filter: grayscale(1); }
.uc-treatment-vivid :is(.wp-block-image img,.wp-block-post-featured-image img) { filter: saturate(1.45) contrast(1.08); }
.uc-treatment-muted :is(.wp-block-image img,.wp-block-post-featured-image img) { filter: saturate(.58) contrast(.94); }
.uc-treatment-duotone :is(.wp-block-image img,.wp-block-post-featured-image img) { filter: grayscale(1) sepia(1) hue-rotate(165deg) saturate(1.7); }
.uc-natural-labels .uc-kicker,
.uc-natural-labels .uc-meta,
.uc-natural-labels .wp-block-navigation { letter-spacing: normal; text-transform: none; }
.uc-no-reveal-motion [data-uc-reveal] { opacity: 1; transform: none; transition: none; }

.uc-layout-compact { --uc-section-gap: min(var(--uc-section-gap), 64px); }
.uc-layout-airy { --uc-card-gap: max(var(--uc-card-gap), 28px); }
.uc-layout-editorial .wp-block-post-content { font-family: var(--wp--preset--font-family--display); }
.uc-layout-editorial .wp-block-post-content p,
.uc-layout-editorial .wp-block-post-content li { font-size: 1.08em; }
.wp-block-post-template { gap: var(--uc-card-gap); grid-template-columns: repeat(var(--uc-grid-columns), minmax(0, 1fr)); }

/* Site Studio template directions. */
.uc-align-center :is(.uc-hero,.uc-section-title) { text-align: center; }
.uc-align-center .uc-kicker,
.uc-align-center .uc-section-title { justify-content: center; }
.uc-align-right :is(.uc-hero,.uc-section-title) { text-align: right; }
.uc-align-right .uc-kicker,
.uc-align-right .uc-section-title { justify-content: flex-end; }
.uc-page-fullwidth main > .wp-block-post-content { max-width: none; }
.uc-page-framed .wp-site-blocks { border: var(--uc-border-width) solid var(--uc-border); margin: var(--uc-gutter); }
.uc-page-split main > .wp-block-post-content { column-count: 2; column-gap: var(--uc-section-gap); }
.uc-post-magazine .wp-block-post-content > p:first-of-type { font-size: 1.25em; }
.uc-post-immersive .wp-block-post-featured-image { height: min(86vh, 960px); }
.uc-post-immersive .wp-block-post-featured-image img { height: 100%; object-fit: cover; }
.uc-post-minimal .wp-block-post-content { max-width: 66ch; }
.uc-archive-list .wp-block-post-template { grid-template-columns: 1fr; }
.uc-archive-masonry .wp-block-post-template { display: block; columns: var(--uc-grid-columns); column-gap: var(--uc-card-gap); }
.uc-archive-masonry .wp-block-post-template > li { break-inside: avoid; margin-bottom: var(--uc-card-gap); }
.uc-archive-editorial .wp-block-post-template > li:first-child { grid-column: span 2; grid-row: span 2; }
.uc-project-case-study .wp-block-post-content > .wp-block-group { max-width: var(--wp--style--global--content-size); }
.uc-project-gallery .wp-block-gallery { gap: var(--uc-card-gap); }
.uc-hero-centered .uc-hero > .wp-block-group { align-items: center; margin-inline: auto; text-align: center; }
.uc-hero-fullbleed .uc-hero { align-items: end; display: flex; }
.uc-hero-editorial .uc-hero h1 { font-size: clamp(var(--uc-h2), 10vw, calc(var(--uc-h1) * 1.55)); max-width: 9ch; }
.uc-hero-showcase .uc-hero h1 { max-width: 14ch; }
.uc-footer-centered .uc-footer > .wp-block-group { align-items: center; flex-direction: column; text-align: center; }
.uc-footer-minimal .uc-footer .wp-block-navigation,
.uc-footer-minimal .uc-footer .uc-brand-line { display: none; }

/* Code-native decorative systems; no remote imagery or runtime dependency. */
.uc-background-aurora .wp-site-blocks { background: radial-gradient(circle at 82% 12%, color-mix(in srgb, var(--wp--preset--color--signal) 18%, transparent), transparent 34%), linear-gradient(var(--uc-gradient-angle), var(--wp--preset--color--ink), color-mix(in srgb, var(--wp--preset--color--accent) 7%, var(--wp--preset--color--ink))); }
.uc-background-mesh .wp-site-blocks { background: radial-gradient(circle at 8% 18%, color-mix(in srgb, var(--wp--preset--color--accent) 16%, transparent), transparent 28%), radial-gradient(circle at 92% 62%, color-mix(in srgb, var(--wp--preset--color--signal) 18%, transparent), transparent 34%), var(--wp--preset--color--ink); }
.uc-background-spotlight .wp-site-blocks { background: radial-gradient(circle at 50% 0, color-mix(in srgb, var(--uc-highlight) 17%, transparent), transparent 42%), var(--wp--preset--color--ink); }
.uc-background-grid .wp-site-blocks { background-color: var(--wp--preset--color--ink); background-image: linear-gradient(color-mix(in srgb, var(--uc-border) 50%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--uc-border) 50%, transparent) 1px, transparent 1px); background-size: 48px 48px; }
.uc-background-noise .wp-site-blocks::after { background-image: repeating-radial-gradient(circle at 0 0, color-mix(in srgb, currentColor 11%, transparent) 0 1px, transparent 1px 5px); content: ""; inset: 0; opacity: var(--uc-grain-opacity); pointer-events: none; position: fixed; z-index: 100; }
.uc-decoration-orbs .wp-site-blocks::before,
.uc-decoration-glow .wp-site-blocks::before,
.uc-decoration-lines .wp-site-blocks::before,
.uc-decoration-geometry .wp-site-blocks::before { content: ""; pointer-events: none; position: fixed; z-index: -1; }
.uc-decoration-orbs .wp-site-blocks::before { background: radial-gradient(circle, var(--wp--preset--color--signal), transparent 66%); filter: blur(var(--uc-blur)); height: calc(34vw * var(--uc-graphic-scale)); opacity: .22; right: -10vw; top: 12vh; width: calc(34vw * var(--uc-graphic-scale)); }
.uc-decoration-glow .wp-site-blocks::before { background: var(--wp--preset--color--accent); filter: blur(calc(var(--uc-blur) * 5)); height: calc(20vw * var(--uc-graphic-scale)); left: 40%; opacity: .18; top: 20vh; width: calc(20vw * var(--uc-graphic-scale)); }
.uc-decoration-lines .wp-site-blocks::before { border-left: 1px solid var(--uc-border); border-right: 1px solid var(--uc-border); inset: 0 12%; }
.uc-decoration-geometry .wp-site-blocks::before { border: max(2px, var(--uc-border-width)) solid var(--wp--preset--color--accent); height: calc(16vw * var(--uc-graphic-scale)); opacity: .22; right: 8vw; top: 22vh; transform: rotate(18deg); width: calc(16vw * var(--uc-graphic-scale)); }

.uc-motion-fade [data-uc-reveal] { transform: none; }
.uc-motion-scale [data-uc-reveal] { transform: scale(.96); }
.uc-motion-slide [data-uc-reveal] { transform: translateX(-32px); }
.uc-motion-none [data-uc-reveal] { opacity: 1; transform: none; transition: none; }

[data-uc-reveal] { opacity: 0; transform: translateY(24px); transition: opacity var(--uc-motion-speed) var(--uc-ease), transform var(--uc-motion-speed) var(--uc-ease); }
[data-uc-reveal].is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
	[data-uc-reveal] { opacity: 1; transform: none; }
}
@media (max-width: 781px) {
	:root { --uc-gutter: min(var(--uc-gutter), 22px); --uc-section-gap: min(var(--uc-section-gap), 64px); }
	.uc-hero { min-height: 72vh; }
	.uc-hero::after { background: linear-gradient(0deg, var(--wp--preset--color--ink) 0%, rgba(9,9,13,.58) 65%, rgba(9,9,13,.35) 100%); }
	.uc-hero__ghost { opacity: .55; }
	.uc-header-sidebar .uc-header { position: relative; width: auto; }
	.uc-header-sidebar .uc-header > .wp-block-group { align-items: center; flex-direction: row; }
	.uc-header-sidebar .wp-site-blocks { padding-left: 0; }
	.uc-page-split main > .wp-block-post-content { column-count: 1; }
	.uc-archive-masonry .wp-block-post-template { columns: 1; }
	.wp-block-post-template { grid-template-columns: 1fr; }
}
