/* Pile Studio: site chrome, the project grid and project pages. */

body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }

/* ---------- Header and footer ---------- */

.ps-header {
	position: fixed; top: 0; left: 0; right: 0; z-index: 60;
	padding: 18px 28px 30px;
	background: linear-gradient(#000 30%, rgba(0, 0, 0, 0));
	pointer-events: none;
}
.ps-header > * { pointer-events: auto; }
.admin-bar .ps-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .ps-header { top: 46px; } }
/* Logo top left, menu top right. */
.ps-header { align-items: center; }
.ps-nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px 26px; }
.ps-nav a {
	color: #cfcfd6; font: 400 16px var(--wp--preset--font-family--average);
	text-decoration: none; border-bottom: 1px dotted transparent; padding-bottom: 2px;
}
.ps-nav a:hover, .ps-nav a:focus-visible { color: var(--wp--preset--color--accent); border-bottom-color: currentColor; }
.ps-logo img { display: block; width: 44px; height: 44px; border-radius: 50%; transition: transform 0.35s cubic-bezier(0.3, 1.6, 0.5, 1); }
.ps-logo:hover img, .ps-logo:focus-visible img { transform: rotate(-10deg) scale(1.08); }

.ps-footer {
	padding: 40px 28px; border-top: 1px solid rgba(255, 255, 255, 0.08);
	color: var(--wp--preset--color--muted); font-size: 15px;
}
.ps-footer p { margin: 0; }
.ps-footer__links { display: flex; gap: 22px; }
.ps-footer a { color: #cfcfd6; text-decoration: none; }
.ps-footer a:hover { color: var(--wp--preset--color--accent); }

.ps-main { padding-top: 112px; padding-bottom: 80px; }
.ps-main--project { padding-top: 0; padding-bottom: 0; }
.ps-page-title { margin-bottom: 28px; font-size: var(--wp--preset--font-size--xx-large); }

/* ---------- Project grid ---------- */

.ps-grid-wrap { margin-top: 56px; }
.ps-page-title + .ps-grid-wrap { margin-top: 0; }
.ps-filters { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 36px; }
.ps-grid {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 56px 36px;
}
.ps-card__link { display: block; color: #fff; text-decoration: none; }
.ps-card__media {
	position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden;
	border: 2px solid rgba(255, 255, 255, 0.06); border-radius: 4px; background: #111;
	transition: border-color 0.25s, transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.ps-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.8s; }
.ps-card__link:hover .ps-card__media, .ps-card__link:focus-visible .ps-card__media { border-color: var(--ps-accent, var(--wp--preset--color--accent)); transform: translateY(-4px); }
.ps-card__link:hover .ps-card__media img { transform: scale(1.05); }
.ps-card__link:focus-visible { outline: 0; }
.ps-card__title { display: block; margin-top: 14px; font: 700 18px/1.3 var(--wp--preset--font-family--lato); }
.ps-card__meta { display: block; margin-top: 3px; color: var(--wp--preset--color--muted); font-size: 15px; }

/* Cards sit in an even grid: every row lines up, nothing drifts on scroll. */
@media (max-width: 1000px) { .ps-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 24px; } }
@media (max-width: 640px) { .ps-grid { grid-template-columns: 1fr; } }

/* ---------- Project page ---------- */

.ps-project { --ps-accent: var(--wp--preset--color--accent); }
.ps-project__hero {
	position: relative; display: flex; align-items: flex-end;
	height: 100vh; height: 100svh; min-height: 520px; overflow: hidden;
}
.ps-project__hero::after {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0) 55%, #000 100%);
}
.ps-project__hero-copy { position: relative; z-index: 2; width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 28px 64px; box-sizing: border-box; }
.ps-project__hero-copy::before { content: ""; display: block; width: 64px; height: 4px; margin-bottom: 18px; background: var(--ps-accent); }
.ps-project__cats { margin: 0 0 10px; color: var(--ps-accent); font-size: 18px; }
.ps-project__cats a { color: inherit; text-decoration: none; }
.ps-project__cats a:hover { text-decoration: underline dotted; }
.ps-project__title { margin: 0; font: 900 clamp(40px, 7vw, 96px)/0.95 var(--wp--preset--font-family--lato); letter-spacing: -0.02em; }

.ps-project__body { display: grid; gap: 44px; max-width: 1100px; margin: 0 auto; padding: 64px 28px 48px; box-sizing: border-box; }
.ps-project__text { max-width: 760px; color: #ececf0; font-size: 21px; line-height: 1.7; }
.ps-project__text p { margin: 0 0 1em; }
.ps-project__text p:last-child { margin-bottom: 0; }
.ps-project__text h3 { margin: 1.2em 0 0.4em; font-size: 26px; }
.ps-project__credits {
	display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 20px;
	margin: 0; padding: 26px 0 0; border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.ps-project__credits a { color: #fff; }
.ps-project__ask { margin: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.ps-chip--team { display: inline-flex; align-items: center; gap: 8px; }
.ps-chip--team svg { width: 16px; height: 16px; }

/* Team & Awards on the Recognition page: one story per team project. */
.ps-team { display: grid; gap: 104px; }
.ps-team__item { display: grid; gap: 28px; padding-top: 56px; border-top: 1px solid rgba(255, 255, 255, 0.1); }
.ps-team__item:first-child { padding-top: 0; border-top: 0; }
.ps-team__head { max-width: 860px; }
.ps-team__head .ps-kicker { color: var(--ps-accent, var(--wp--preset--color--accent)); }
.ps-team__head h2 { margin: 8px 0 14px; }
.ps-team__head h2 a { color: #fff; text-decoration: none; }
.ps-team__head h2 a:hover { text-decoration: underline dotted; text-underline-offset: 6px; }
.ps-team__summary { margin: 0; font-size: 20px; line-height: 1.6; color: #e2e2e7 !important; }
.ps-team__media { width: 100%; max-width: 1000px; }
.ps-team__item--feature .ps-team__media { max-width: 1120px; }
.ps-team__media .ps-reel, .ps-team__media img { border-radius: 16px; overflow: hidden; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55); }
.ps-team__media img { display: block; width: 100%; height: auto; }
.ps-team__item .wp-block-buttons { margin: 0; }
.ps-case-credits.ps-case-credits--toggle { padding: 0; border-top: 0; }
.ps-story .ps-case-credits__group h3 { margin: 0 0 12px; font-size: 16px; }
.ps-case-credits--toggle summary { display: inline-flex; align-items: center; gap: 10px; cursor: pointer; padding: 10px 18px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.22); color: #fff; font: 700 15px var(--wp--preset--font-family--lato); list-style: none; }
.ps-case-credits--toggle summary::-webkit-details-marker { display: none; }
.ps-case-credits--toggle summary::after { content: ""; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translate(-2px, -2px); transition: transform 0.2s; }
.ps-case-credits--toggle[open] summary::after { transform: rotate(-135deg) translate(-2px, -2px); }
.ps-case-credits--toggle summary span { color: var(--wp--preset--color--muted); font-weight: 400; }
.ps-case-credits--toggle summary:hover, .ps-case-credits--toggle summary:focus-visible { border-color: var(--ps-accent, var(--wp--preset--color--accent)); outline: 0; }
.ps-case-credits--toggle .ps-case-credits__groups { margin-top: 22px; }
@media (max-width: 781px) {
	.ps-team { gap: 72px; }
	.ps-team__item { padding-top: 40px; }
	.ps-team__summary { font-size: 18px; }
}
.ps-project__year { color: #fff; font-weight: 700; }

/* Case-study details: when, client, role, results, awards, press, credits. */
.ps-case { display: grid; gap: 26px; padding: 30px 32px; border-radius: 18px; background: var(--wp--preset--color--surface); border: 1px solid rgba(255, 255, 255, 0.08); }
.ps-case__facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 18px 28px; margin: 0; }
.ps-case__facts > .is-wide { grid-column: 1 / -1; }
.ps-case__facts dt { color: var(--wp--preset--color--muted); font: 700 12px var(--wp--preset--font-family--lato); letter-spacing: 0.14em; text-transform: uppercase; }
.ps-case__facts dd { margin: 5px 0 0; color: #fff; font-size: 18px; line-height: 1.4; }
.ps-case__team { margin: 0; padding: 14px 18px; border-left: 3px solid var(--ps-accent); background: rgba(255, 255, 255, 0.03); border-radius: 0 10px 10px 0; color: #e2e2e7; font-size: 18px; line-height: 1.55; }
.ps-case__results { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 12px; }
.ps-case__results li { padding: 16px 18px; border-radius: 12px; background: rgba(0, 0, 0, 0.35); border: 1px solid rgba(255, 255, 255, 0.08); }
.ps-case__results strong { display: block; color: var(--ps-accent); font: 900 clamp(28px, 3vw, 38px)/1.05 var(--wp--preset--font-family--lato); letter-spacing: -0.01em; }
.ps-case__results span { display: block; margin-top: 6px; color: #c9c9d1; font-size: 15px; line-height: 1.35; }
.ps-case__awards { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.ps-case__awards li { position: relative; padding-left: 26px; color: #f1f1f4; font-size: 18px; line-height: 1.45; }
.ps-case__awards li::before { content: ""; position: absolute; left: 0; top: 8px; width: 10px; height: 10px; border-radius: 50%; background: var(--ps-accent); box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.08); }
.ps-case__press { margin: 0; color: #d8d8de; font-size: 17px; }
.ps-case__press span { margin-right: 8px; color: var(--wp--preset--color--muted); font: 700 12px var(--wp--preset--font-family--lato); letter-spacing: 0.14em; text-transform: uppercase; }
.ps-case__quote { margin: 0; padding: 0 0 0 20px; border-left: 3px solid var(--ps-accent); }
.ps-case__quote p { margin: 0; color: #fff; font-size: 21px; line-height: 1.5; }
.ps-case__quote cite { display: block; margin-top: 10px; color: var(--wp--preset--color--muted); font-style: normal; font-size: 15px; }
.ps-case__source { margin: 0; color: var(--wp--preset--color--muted); font-size: 14px; }
.ps-case__source a { color: inherit; }
.ps-case-credits { padding-top: 26px; border-top: 1px solid rgba(255, 255, 255, 0.1); }
.ps-case-credits__title { margin: 0 0 18px; font: 900 26px var(--wp--preset--font-family--lato); }
.ps-case-credits__groups { display: grid; gap: 28px; }
.ps-case-credits__group h3 { margin: 0 0 12px; color: var(--ps-accent); font: 700 16px var(--wp--preset--font-family--lato); }
.ps-case-credits__group ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 14px 28px; }
.ps-case-credits__name { display: block; color: #fff; font-size: 17px; }
.ps-case-credits__role { display: block; color: var(--wp--preset--color--muted); font-size: 14px; }
@media (max-width: 640px) {
	.ps-case { padding: 22px 20px; }
}

.ps-project__next {
	position: relative; display: flex; flex-direction: column; justify-content: flex-end;
	height: 56vh; min-height: 320px; overflow: hidden; padding: 0 28px 52px;
	color: #fff; text-decoration: none; border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.ps-project__next img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.42; transition: transform 1.2s, opacity 0.4s; }
.ps-project__next::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.7)); }
.ps-project__next:hover img { transform: scale(1.04); opacity: 0.62; }
.ps-project__next-label, .ps-project__next-title { position: relative; z-index: 2; width: 100%; max-width: 1280px; margin: 0 auto; }
.ps-project__next-label { color: var(--ps-accent); font: 700 13px var(--wp--preset--font-family--lato); letter-spacing: 0.14em; text-transform: uppercase; }
.ps-project__next-title { margin-top: 8px; font: 900 clamp(32px, 5vw, 64px)/1 var(--wp--preset--font-family--lato); }

/* More projects under a project page: category tabs, then cards. */
.ps-related { max-width: 1280px; margin: 0 auto; padding: 88px 28px 72px; box-sizing: border-box; }
.ps-related__title { margin: 8px 0 24px; font: 900 clamp(30px, 3.6vw, 44px)/1.1 var(--wp--preset--font-family--lato); }
.ps-related__tabs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 36px; }
.ps-related__count { opacity: 0.65; font-weight: 400; }
.ps-related__panel[hidden] { display: none; }
.ps-related__panel:not(.is-all) .ps-card--more { display: none; }
.ps-related__foot { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 44px; }
.ps-related__foot:empty { display: none; }
.ps-main--project .ps-rp--launcher { margin-bottom: 96px; }

/* ---------- Pages ---------- */

.ps-button { margin: 4px 0; }
.wp-block-post-content .ps-contact { margin-top: 32px; }

@media (max-width: 640px) {
	.ps-header { padding: 14px 16px 24px; }
	.ps-nav { gap: 6px 16px; max-width: calc(100vw - 96px); }
	.ps-nav a { font-size: 15px; }
	.ps-main { padding-top: 92px; }
	.ps-project__hero { height: 78svh; }
	/* A still hero (like a logo) shows whole on a phone instead of cropping. */
	.ps-ambient--still img { object-fit: contain; object-position: 50% 38%; }
	.ps-project__hero-copy { padding: 0 20px 40px; }
	.ps-project__body { padding: 40px 20px 32px; gap: 32px; }
	.ps-project__text { font-size: 19px; }
}

/* ---------- Story pages (Leadership, Recognition, Speaking & Press) ---------- */

.ps-story { padding-top: 120px; }
.ps-story .wp-block-post-content > * + * { margin-block-start: 96px; }
.ps-story h1 { font-size: clamp(42px, 6vw, 76px); line-height: 1.02; letter-spacing: -0.02em; margin: 10px 0 24px; }
.ps-story h2 { font-size: clamp(30px, 3.6vw, 44px); margin: 6px 0 20px; }
.ps-story h3 { font-size: 22px; margin: 0 0 10px; }
.ps-story p { color: #e2e2e7; }
.ps-kicker {
	margin: 0; color: var(--wp--preset--color--accent);
	font: 700 13px/1.2 var(--wp--preset--font-family--lato); letter-spacing: 0.16em; text-transform: uppercase;
}
.ps-lede { font-size: clamp(21px, 2.2vw, 26px); line-height: 1.5; color: #fff !important; }

.ps-story-hero { align-items: center !important; gap: 56px !important; }
.ps-story-hero--solo { max-width: 900px; }
.ps-portrait img { width: 100%; height: auto; border-radius: 18px; display: block; box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6); }
.ps-story-hero .ps-portrait { margin: 0; position: relative; }
.ps-story-hero .ps-portrait::after {
	content: ""; position: absolute; inset: auto -14px -14px auto; width: 58%; height: 58%;
	border: 2px solid var(--wp--preset--color--accent); border-radius: 18px; z-index: -1;
}

.ps-stats { gap: 18px !important; }
.ps-stats > .wp-block-column {
	padding: 26px 24px; border-radius: 16px; background: var(--wp--preset--color--surface);
	border: 1px solid rgba(255, 255, 255, 0.08);
}
.ps-stat__num { margin: 0; color: var(--wp--preset--color--accent) !important; font: 900 clamp(38px, 3.6vw, 54px)/1 var(--wp--preset--font-family--lato); letter-spacing: -0.02em; white-space: nowrap; }
.ps-stat__label { margin: 10px 0 0; font-size: 17px; line-height: 1.4; color: #c9c9d1 !important; }

.ps-principles > .ps-principle { margin-top: 0; padding: 32px 0; border-top: 1px solid rgba(255, 255, 255, 0.1); display: grid; grid-template-columns: 72px minmax(0, 1fr); column-gap: 20px; }
.ps-principles > .ps-principle > * { grid-column: 2; margin: 0 0 10px !important; max-width: none; }
.ps-principles > .ps-principle > .ps-principle__num { grid-column: 1; grid-row: 1 / span 3; margin: 2px 0 0; color: var(--wp--preset--color--accent) !important; font: 900 28px/1 var(--wp--preset--font-family--lato); }
.ps-proof { padding: 14px 18px; border-left: 3px solid var(--wp--preset--color--accent); background: rgba(0, 216, 199, 0.06); border-radius: 0 10px 10px 0; font-size: 17px; color: #d8d8de !important; }
.ps-proof strong { color: #fff; }

.ps-tags { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.ps-tags li {
	margin: 0; padding: 9px 16px; border-radius: 999px; border: 1px solid rgba(0, 216, 199, 0.45);
	background: rgba(0, 216, 199, 0.06); color: #e9fffd; font: 700 15px/1.2 var(--wp--preset--font-family--lato);
}

.ps-quote { margin: 0 0 18px; padding: 26px 30px; border-left: 3px solid var(--wp--preset--color--accent); border-radius: 0 16px 16px 0; background: var(--wp--preset--color--surface); }
.ps-quote p { margin: 0; font-size: 21px; line-height: 1.55; color: #f1f1f4 !important; }
.ps-quote cite { display: block; margin-top: 14px; color: var(--wp--preset--color--muted); font-style: normal; font-size: 15px; }

.ps-cta { padding: 48px 40px; border-radius: 22px; text-align: center; border: 1px solid rgba(0, 216, 199, 0.25); background: radial-gradient(700px 300px at 50% 0%, rgba(0, 216, 199, 0.16), transparent 70%), var(--wp--preset--color--surface); }
.ps-cta h2 { margin-top: 0; }
.ps-cta .wp-block-buttons { justify-content: center; }

.ps-story .wp-block-button__link { padding: 14px 22px; }
.ps-story .is-style-outline .wp-block-button__link { background: transparent; color: #fff; border: 1px solid rgba(255, 255, 255, 0.3); }
.ps-story .is-style-outline .wp-block-button__link:hover { border-color: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent); }

.ps-campaign { gap: 48px !important; align-items: center !important; padding-top: 56px; border-top: 1px solid rgba(255, 255, 255, 0.1); }
.ps-poster { margin: 0; }
.ps-poster img { width: 100%; height: auto; border-radius: 16px; display: block; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55); }
.ps-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 12px; margin: 26px 0; }
.ps-results > .ps-result { margin: 0; padding: 16px 18px; border-radius: 12px; background: var(--wp--preset--color--surface); border: 1px solid rgba(255, 255, 255, 0.08); }
.ps-result__num { margin: 0; color: var(--wp--preset--color--accent) !important; font: 900 30px/1.05 var(--wp--preset--font-family--lato); }
.ps-result__label { margin: 6px 0 0; font-size: 15px; line-height: 1.35; color: #c9c9d1 !important; }
.ps-awards { list-style: none; padding: 0; margin: 0 0 22px; }
.ps-awards li { position: relative; margin: 0 0 8px; padding-left: 26px; font-size: 18px; color: #f1f1f4; }
.ps-awards li::before { content: ""; position: absolute; left: 0; top: 9px; width: 10px; height: 10px; border-radius: 50%; background: var(--wp--preset--color--accent); box-shadow: 0 0 0 4px rgba(0, 216, 199, 0.18); }
.ps-awards a { color: var(--wp--preset--color--accent); }

.ps-panels { gap: 18px !important; }
.ps-panels > .wp-block-column > .ps-panel { height: 100%; box-sizing: border-box; padding: 28px; border-radius: 18px; background: var(--wp--preset--color--surface); border: 1px solid rgba(255, 255, 255, 0.08); }
.ps-panel ul { padding-left: 20px; margin: 0 0 6px; }
.ps-panel li { margin-bottom: 8px; color: #e2e2e7; font-size: 17px; }
.ps-panel li::marker { color: var(--wp--preset--color--accent); }
.ps-press { gap: 56px !important; align-items: flex-start !important; }
.ps-bio { font-size: 18px; line-height: 1.65; padding: 18px 22px; border-radius: 12px; background: var(--wp--preset--color--surface); border: 1px solid rgba(255, 255, 255, 0.08); }

/* About: story, career timeline, what I live by, the Amazon Design film, contact. */
.ps-about-columns { gap: 72px !important; align-items: flex-start !important; }
.ps-about-columns p:not(.ps-kicker):not(.ps-lede) { font-size: 19px; line-height: 1.7; }
.ps-about-columns p a, .ps-contact-card p a { color: var(--wp--preset--color--accent); text-decoration: underline dotted; text-underline-offset: 4px; }
.ps-about-quote .ps-quote { max-width: 980px; }
/* The contact form, in a card right under the About hero. */
.ps-contact-card {
	scroll-margin-top: 100px; padding: 40px; border-radius: 22px; border: 1px solid rgba(0, 216, 199, 0.28);
	background: radial-gradient(700px 320px at 0% 0%, rgba(0, 216, 199, 0.16), transparent 70%), var(--wp--preset--color--surface);
}
.ps-contact-card__cols { gap: 48px !important; margin: 0 !important; }
.ps-contact-card h2 { margin-top: 6px; }
.ps-contact-card .ps-contact { padding: 0; background: none; border: 0; }
.ps-timeline { list-style: none; margin: 8px 0 0; padding: 0 0 0 6px; }
.ps-timeline li {
	position: relative; margin: 0; padding: 0 0 30px 34px;
	border-left: 2px solid rgba(0, 216, 199, 0.28);
	color: #fff; font: 700 20px/1.35 var(--wp--preset--font-family--lato);
}
.ps-timeline li:last-child { padding-bottom: 0; border-left-color: transparent; }
.ps-timeline li::before {
	content: ""; position: absolute; left: -8px; top: 2px; width: 14px; height: 14px; border-radius: 50%;
	background: #000; border: 2px solid var(--wp--preset--color--accent);
}
.ps-timeline li:first-child::before { background: var(--wp--preset--color--accent); box-shadow: 0 0 0 5px rgba(0, 216, 199, 0.18); }
.ps-timeline strong {
	display: block; margin-bottom: 6px; color: var(--wp--preset--color--accent);
	font: 700 13px/1.2 var(--wp--preset--font-family--lato); letter-spacing: 0.14em; text-transform: uppercase;
}
.ps-timeline__note { display: block; margin-top: 6px; color: #c9c9d1; font: 400 17px/1.55 var(--wp--preset--font-family--average); }
.ps-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 8px; }
.ps-values > .ps-value {
	margin: 0; padding: 28px; border-radius: 18px; background: var(--wp--preset--color--surface);
	border: 1px solid rgba(255, 255, 255, 0.08); border-top: 3px solid var(--wp--preset--color--accent);
}
.ps-value h3 { margin: 0 0 10px; }
.ps-value p { margin: 0; font-size: 18px; line-height: 1.6; }
.ps-feature { gap: 48px !important; align-items: center !important; padding: 36px; border-radius: 22px; border: 1px solid rgba(0, 216, 199, 0.25); background: radial-gradient(700px 320px at 0% 0%, rgba(0, 216, 199, 0.14), transparent 70%), var(--wp--preset--color--surface); }
.ps-feature h2 { margin-top: 6px; }
.ps-feature .ps-reel { box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55); }

@media (max-width: 781px) {
	.ps-values { grid-template-columns: 1fr; }
	.ps-values > .ps-value { padding: 22px; }
	.ps-feature { gap: 24px !important; padding: 20px; }
	.ps-timeline li { padding-left: 26px; font-size: 18px; }
	.ps-timeline__note { font-size: 16px; }
	.ps-contact-card { padding: 22px; }
	.ps-contact-card__cols, .ps-about-columns { gap: 24px !important; }
	.ps-related { padding: 64px 20px 56px; }
	.ps-related__tabs { flex-wrap: nowrap; overflow-x: auto; margin: 0 -20px 28px; padding: 0 20px 6px; scrollbar-width: none; }
	.ps-related__tabs .ps-chip { flex: none; }
}

@media (max-width: 781px) {
	.ps-story { padding-top: 96px; }
	.ps-story .wp-block-post-content > * + * { margin-block-start: 64px; }
	.ps-story-hero, .ps-campaign, .ps-press { gap: 28px !important; }
	.ps-story-hero .ps-portrait::after { display: none; }
	.ps-principles > .ps-principle { grid-template-columns: 48px minmax(0, 1fr); }
	.ps-cta { padding: 36px 22px; }
	.ps-poster { max-width: 360px; }
}
