/*
 * Gold Sessions — early visual system (Phase 2).
 * Brand tokens live in :root so the final brand direction can replace them
 * without touching component rules.
 */
:root {
	--gs-ink: #1b1813;
	--gs-ink-2: #4f483d;
	--gs-paper: #fbf8f2;
	--gs-paper-2: #f3ede2;
	--gs-line: #ddd3c2;
	--gs-gold: #b8862b;          /* decorative */
	--gs-gold-ink: #835e12;      /* gold for text/links (AA on paper) */
	--gs-gold-soft: #f2e6cc;
	--gs-ok: #2f6b3b;
	--gs-bad: #9a2f22;
	--gs-focus: #1f5fbf;
	--gs-serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
	--gs-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--gs-wrap: 1120px;
	--gs-gutter: clamp(16px, 4vw, 40px);
	color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body.gs {
	margin: 0;
	background: var(--gs-paper);
	color: var(--gs-ink);
	font-family: var(--gs-sans);
	font-size: 17px;
	line-height: 1.6;
	overflow-x: hidden;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--gs-gold-ink); text-underline-offset: 3px; }
a:hover { color: var(--gs-ink); }
:focus-visible { outline: 3px solid var(--gs-focus); outline-offset: 2px; }
h1, h2, h3 { font-family: var(--gs-serif); font-weight: 600; line-height: 1.2; margin: 0 0 .5em; letter-spacing: -.01em; }
h1 { font-size: clamp(30px, 4.4vw, 46px); }
.gs-h2 { font-size: clamp(22px, 2.6vw, 28px); }
.gs-h3, h3 { font-size: 20px; }
p { margin: 0 0 1em; }

.gs-wrap { max-width: var(--gs-wrap); margin: 0 auto; padding: 0 var(--gs-gutter); }
.gs-narrow { max-width: 760px; }
.gs-visually-hidden, .gs-hp { position: absolute !important; left: 0; top: 0; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.gs-skip { position: absolute; left: -9999px; }
.gs-skip:focus { left: 16px; top: 16px; z-index: 10; background: #fff; padding: 8px 12px; }

/* ---- Header ---- */
.gs-header { border-bottom: 1px solid var(--gs-line); background: var(--gs-paper); }
.gs-header__inner { display: flex; align-items: center; gap: 24px; min-height: 68px; flex-wrap: wrap; }
.gs-brand { display: inline-flex; align-items: center; gap: 10px; font-family: var(--gs-serif); font-size: 21px; font-weight: 600; color: var(--gs-ink); text-decoration: none; }
.gs-brand__mark { width: 18px; height: 18px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #e9c877, var(--gs-gold) 60%, #7d5a17); }
.gs-nav { display: flex; align-items: center; gap: 24px; flex: 1; justify-content: space-between; }
.gs-nav ul { display: flex; gap: 22px; list-style: none; margin: 0; padding: 0; flex-wrap: wrap; }
.gs-nav a { color: var(--gs-ink); text-decoration: none; font-size: 16px; }
.gs-nav a[aria-current="page"] { box-shadow: inset 0 -2px 0 var(--gs-gold); }
.gs-nav a:hover { color: var(--gs-gold-ink); }
.gs-nav__account { display: flex; align-items: center; gap: 16px; font-size: 15px; flex-wrap: wrap; }
.gs-nav__account form { margin: 0; }
.gs-nav__name { color: var(--gs-ink-2); }
.gs-nav__signin { font-weight: 600; }
.gs-menu-toggle { display: none; margin-left: auto; font: inherit; background: none; border: 1px solid var(--gs-line); padding: 6px 12px; border-radius: 2px; color: var(--gs-ink); min-height: 44px; }
@media (max-width: 920px) {
	.gs-menu-toggle { display: inline-block; }
	.gs-nav { display: none; flex-basis: 100%; flex-direction: column; align-items: flex-start; gap: 12px; padding: 4px 0 16px; }
	.gs-nav.is-open, .no-js .gs-nav { display: flex; }
	.gs-nav ul { flex-direction: column; gap: 4px; width: 100%; }
	.gs-nav ul a { display: block; padding: 10px 0; }
	.gs-nav__account { width: 100%; border-top: 1px solid var(--gs-line); padding-top: 12px; }
}

/* ---- Common ---- */
.gs-main { display: block; padding-bottom: 72px; outline: none; }
.gs-page-head { padding: 44px 0 24px; }
.gs-page-head--row { display: flex; gap: 24px; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; }
.gs-eyebrow { text-transform: uppercase; letter-spacing: .1em; font-size: 14px; font-weight: 600; color: var(--gs-gold-ink); margin-bottom: 10px; }
.gs-lede { font-size: 19px; color: var(--gs-ink-2); max-width: 62ch; }
.gs-small, .gs-hint { font-size: 15px; color: var(--gs-ink-2); }
.gs-hint { display: block; margin-top: 6px; }
.gs-optional { font-weight: 400; color: var(--gs-ink-2); font-size: 14px; }
.gs-notice { margin: 20px 0 0; padding: 12px 16px; border-left: 4px solid var(--gs-ok); background: #eef4ec; }
.gs-callout { padding: 12px 16px; border-left: 4px solid var(--gs-gold); background: var(--gs-gold-soft); }
.gs-errors { margin: 0 0 24px; padding: 14px 18px; border-left: 4px solid var(--gs-bad); background: #f8ebe8; }
.gs-errors__title { font-weight: 600; margin-bottom: 4px; }
.gs-errors ul { margin: 0; padding-left: 20px; }
.gs-empty { color: var(--gs-ink-2); font-style: italic; }
.gs-back { padding-top: 24px; margin: 0; }
.gs-count { font-family: var(--gs-sans); font-size: 15px; background: var(--gs-gold-soft); padding: 2px 10px; border-radius: 99px; vertical-align: middle; }
.gs-tag { display: inline-block; font-size: 14px; font-weight: 600; padding: 1px 8px; border-radius: 2px; margin-left: 6px; vertical-align: 1px; }
.gs-tag--ok { background: #e3efe2; color: var(--gs-ok); }
.gs-tag--bad { background: #f6e1dc; color: var(--gs-bad); }
.gs-tag--warn { background: var(--gs-gold-soft); color: var(--gs-gold-ink); }
.gs-state { font-family: var(--gs-serif); font-size: 24px; margin-bottom: 6px; }
.gs-state--live { color: var(--gs-ok); }
.gs-state--bad { color: var(--gs-bad); }
.gs-message { margin: 0 0 1em; padding: 4px 0 4px 18px; border-left: 2px solid var(--gs-gold); font-family: var(--gs-serif); font-size: 18px; }

/* Rule lists instead of card grids */
.gs-list-rule { list-style: none; padding: 0; margin: 0 0 1em; border-top: 1px solid var(--gs-line); }
.gs-list-rule li { padding: 12px 0; border-bottom: 1px solid var(--gs-line); }

/* ---- Buttons ---- */
.gs-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px; font: 600 16px/1 var(--gs-sans); color: var(--gs-ink); background: transparent; border: 1.5px solid var(--gs-ink); border-radius: 2px; text-decoration: none; cursor: pointer; }
.gs-button:hover { background: var(--gs-paper-2); color: var(--gs-ink); }
.gs-button--primary { background: var(--gs-ink); color: var(--gs-paper); }
.gs-button--primary:hover { background: #000; color: #fff; }
.gs-button--danger { border-color: var(--gs-bad); color: var(--gs-bad); }
/* v0.26.0 — action hierarchy (existing tokens only): primary = filled ink; secondary = outlined (default);
   destructive = outlined red; staff/test utility = quiet dashed teal, never mistaken for a real action. */
.gs-button--danger:hover { background: #f8ebe7; color: var(--gs-bad); border-color: var(--gs-bad); }
.gs-button--utility { border: 1px dashed var(--gs-teal, var(--gs-ink-2)); color: var(--gs-teal, var(--gs-ink-2)); background: var(--gs-paper-2); font-weight: 600; }
.gs-button--utility:hover { background: var(--gs-gold-soft); color: var(--gs-ink); }
.gs-link-button { font: inherit; background: none; border: 0; padding: 0; color: var(--gs-gold-ink); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; min-height: 44px; }
.gs-actions { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; margin-top: 8px; }
.gs-actions--sticky { position: sticky; bottom: 0; background: linear-gradient(to top, var(--gs-paper) 75%, rgba(251,248,242,0)); padding: 18px 0 14px; z-index: 2; }

/* ---- Become an Expert ---- */
.gs-hero { border-bottom: 1px solid var(--gs-line); background:
	linear-gradient(180deg, rgba(242,230,204,.55), rgba(251,248,242,0) 70%); }
.gs-hero__inner { padding-top: clamp(48px, 8vw, 104px); padding-bottom: clamp(48px, 7vw, 88px); }
.gs-display { font-size: clamp(36px, 6vw, 68px); max-width: 17ch; line-height: 1.08; }
.gs-hero .gs-lede { font-size: clamp(18px, 2vw, 21px); }
.gs-hero__cta { margin-top: 28px; }
.gs-section { padding: clamp(40px, 6vw, 72px) 0; border-bottom: 1px solid var(--gs-line); }
.gs-section--tint { background: var(--gs-paper-2); }
.gs-section__title { font-size: clamp(24px, 3vw, 32px); }
.gs-split { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: clamp(20px, 5vw, 64px); }
.gs-prose { max-width: 64ch; }
.gs-kicker { font-weight: 600; margin-top: 1.4em; }
.gs-steps { list-style: none; margin: 24px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; border-top: 1px solid var(--gs-ink); }
.gs-steps li { padding: 20px 22px 8px 0; }
.gs-steps li + li { padding-left: 22px; border-left: 1px solid var(--gs-line); }
.gs-steps__n { display: block; font-family: var(--gs-serif); font-size: 40px; color: var(--gs-gold); line-height: 1; margin-bottom: 10px; }
.gs-sum { margin: 20px 0; border-top: 1px solid var(--gs-line); max-width: 480px; }
.gs-sum div { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--gs-line); }
.gs-sum dt { color: var(--gs-ink-2); }
.gs-sum dd { margin: 0; font-variant-numeric: tabular-nums; font-weight: 600; white-space: nowrap; }
.gs-sum__total dt, .gs-sum__total dd { color: var(--gs-ink); font-weight: 700; }
@media (max-width: 860px) {
	.gs-split { grid-template-columns: minmax(0, 1fr); }
	.gs-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gs-steps li:nth-child(3) { padding-left: 0; border-left: 0; }
}
@media (max-width: 520px) {
	.gs-steps { grid-template-columns: minmax(0, 1fr); }
	.gs-steps li, .gs-steps li + li { padding-left: 0; border-left: 0; border-bottom: 1px solid var(--gs-line); }
}

/* ---- Forms ---- */
.gs-field { margin: 0 0 18px; }
.gs-field label, .gs-label { display: block; font-weight: 600; margin-bottom: 6px; }
.gs-field input:not([type=checkbox]):not([type=file]), .gs-field textarea, .gs-field select {
	width: 100%; font: 17px/1.45 var(--gs-sans); color: var(--gs-ink); background: #fff;
	border: 1.5px solid #bfb3a0; border-radius: 2px; padding: 11px 12px; min-height: 48px;
}
.gs-field input[readonly] { background: var(--gs-paper-2); color: var(--gs-ink-2); }
.gs-field textarea { resize: vertical; }
.gs-field input:focus, .gs-field textarea:focus { border-color: var(--gs-ink); outline: 3px solid rgba(31,95,191,.25); outline-offset: 0; }
.gs-check label { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; cursor: pointer; min-height: 44px; padding: 8px 0; }
.gs-check input { width: 22px; height: 22px; margin-top: 3px; flex: none; accent-color: var(--gs-ink); }
.gs-row-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
.gs-row-3 { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) auto; gap: 0 16px; align-items: end; }
@media (max-width: 640px) { .gs-row-2, .gs-row-3 { grid-template-columns: minmax(0, 1fr); } }
.gs-fieldset { border: 0; border-top: 1px solid var(--gs-ink); margin: 0 0 32px; padding: 20px 0 0; min-width: 0; }
.gs-fieldset legend { font-family: var(--gs-serif); font-size: 23px; font-weight: 600; padding: 0 12px 0 0; display: flex; align-items: baseline; gap: 12px; }
.gs-fieldset--plain, .gs-fieldset--inline { border-top: 0; padding-top: 0; }
.gs-fieldset--plain legend { font-family: var(--gs-sans); font-size: 16px; margin-bottom: 8px; }
.gs-fieldset--inline legend { font-size: 20px; margin-bottom: 8px; }
.gs-fieldset__n { font-size: 15px; font-family: var(--gs-sans); color: var(--gs-gold-ink); border: 1.5px solid var(--gs-gold); border-radius: 50%; width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.gs-fieldset__intro { color: var(--gs-ink-2); max-width: 64ch; }
.gs-form-page { max-width: 820px; }
.gs-repeat__row { padding: 14px 0 0; border-top: 1px dashed var(--gs-line); }
.gs-repeat__row:first-child { border-top: 0; padding-top: 0; }
.gs-repeat-add { margin-bottom: 8px; }
.gs-money { display: flex; align-items: center; max-width: 280px; }
.gs-money > span { padding: 0 12px; min-height: 48px; display: inline-flex; align-items: center; border: 1.5px solid #bfb3a0; border-right: 0; background: var(--gs-paper-2); font-weight: 600; }
.gs-money input { border-radius: 0 2px 2px 0 !important; }
.gs-portrait { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
.gs-portrait__frame { width: 112px; height: 136px; background: var(--gs-paper-2); border: 1px solid var(--gs-line); display: flex; align-items: center; justify-content: center; color: var(--gs-ink-2); font-size: 14px; text-align: center; overflow: hidden; flex: none; }
.gs-portrait__frame img { width: 100%; height: 100%; object-fit: cover; }
.gs-file { position: relative; display: inline-flex; align-items: center; min-height: 48px; padding: 0 18px; border: 1.5px solid var(--gs-ink); border-radius: 2px; font-weight: 600; cursor: pointer; font-size: 16px; }
.gs-field .gs-file { display: inline-flex; margin-bottom: 0; }
.gs-file input { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; }
.gs-file:focus-within { outline: 3px solid var(--gs-focus); outline-offset: 2px; }
.gs-file-name { display: block; font-size: 15px; margin-top: 6px; }

/* ---- Auth ---- */
.gs-auth { border-top: 1px solid var(--gs-ink); max-width: 560px; }
.gs-auth__tabs { display: flex; gap: 0; margin-bottom: 24px; }
.gs-auth__tabs a { flex: 1; text-align: center; padding: 14px 8px; text-decoration: none; color: var(--gs-ink-2); border-bottom: 1px solid var(--gs-line); font-weight: 600; }
.gs-auth__tabs a[aria-selected="true"] { color: var(--gs-ink); border-bottom: 3px solid var(--gs-gold); }

/* ---- Status ---- */
.gs-status { border-top: 1px solid var(--gs-ink); padding-top: 20px; }
.gs-history { margin-top: 40px; }

/* ---- Setup ---- */
.gs-setup { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: clamp(20px, 4vw, 56px); align-items: start; }
.gs-setup__steps ol { list-style: none; margin: 0; padding: 0; border-left: 1px solid var(--gs-line); position: sticky; top: 16px; }
.gs-setup__steps li { position: relative; }
.gs-setup__steps a { display: flex; align-items: center; gap: 12px; padding: 10px 0 10px 18px; text-decoration: none; color: var(--gs-ink-2); margin-left: -1px; border-left: 3px solid transparent; }
.gs-setup__steps li.is-current a { color: var(--gs-ink); border-left-color: var(--gs-gold); font-weight: 600; }
.gs-setup__dot { width: 28px; height: 28px; flex: none; border-radius: 50%; border: 1.5px solid var(--gs-line); display: inline-flex; align-items: center; justify-content: center; font-size: 14px; background: var(--gs-paper); }
.gs-setup__steps li.is-done .gs-setup__dot { border-color: var(--gs-ok); color: var(--gs-ok); }
.gs-setup__body, .gs-setup__steps { min-width: 0; }
.gs-stepcheck { list-style: none; padding: 0; margin: 0 0 24px; display: flex; flex-wrap: wrap; gap: 8px 16px; font-size: 15px; }
.gs-stepcheck li::before { content: "○ "; color: var(--gs-bad); }
.gs-stepcheck li.is-done::before { content: "✓ "; color: var(--gs-ok); }
.gs-review { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(20px, 4vw, 48px); align-items: start; }
@media (max-width: 960px) { .gs-review { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 820px) {
	.gs-setup { grid-template-columns: minmax(0, 1fr); }
	.gs-setup__steps ol { position: static; display: flex; overflow-x: auto; border-left: 0; border-bottom: 1px solid var(--gs-line); gap: 4px; -webkit-overflow-scrolling: touch; scrollbar-width: thin; }
	.gs-setup__steps a { padding: 10px 12px 10px 0; border-left: 0; border-bottom: 3px solid transparent; white-space: nowrap; margin: 0 0 -1px; font-size: 15px; }
	.gs-setup__steps li.is-current a { border-bottom-color: var(--gs-gold); }
}

.gs-readiness__count { margin-bottom: 8px; }
.gs-readiness ul { list-style: none; padding: 0; margin: 0 0 20px; border-top: 1px solid var(--gs-line); }
.gs-readiness li { display: flex; gap: 12px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--gs-line); }
.gs-readiness__mark { width: 24px; height: 24px; flex: none; border-radius: 50%; border: 1.5px solid var(--gs-bad); display: inline-flex; align-items: center; justify-content: center; font-size: 14px; }
.gs-readiness li.is-done .gs-readiness__mark { border-color: var(--gs-ok); background: var(--gs-ok); color: #fff; }
.gs-readiness li.is-done { color: var(--gs-ink-2); }

.gs-home { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(20px, 5vw, 64px); border-top: 1px solid var(--gs-ink); padding-top: 24px; }
@media (max-width: 760px) { .gs-home { grid-template-columns: minmax(0, 1fr); } }

.gs-edit { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(20px, 4vw, 56px); align-items: start; }
.gs-edit__section { border-top: 1px solid var(--gs-ink); padding: 20px 0 24px; }
.gs-edit__preview { position: sticky; top: 16px; }
@media (max-width: 960px) { .gs-edit { grid-template-columns: minmax(0, 1fr); } .gs-edit__preview { position: static; } }

/* ---- Availability ---- */
.gs-field--action { align-self: end; }
.gs-slots { list-style: none; padding: 0; margin: 24px 0 0; border-top: 1px solid var(--gs-ink); }
.gs-slots__item { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1.4fr) 80px auto; gap: 8px 16px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--gs-line); }
.gs-slots__item form { margin: 0; }
.gs-slots__date { font-weight: 600; }
.gs-slots__status { color: var(--gs-ok); font-size: 15px; }
@media (max-width: 560px) { .gs-slots__item { grid-template-columns: minmax(0, 1fr) auto; } .gs-slots__time { grid-column: 1; } .gs-slots__status { grid-row: 1; grid-column: 2; } }

/* ---- Profile (public + preview) ---- */
.gs-profile { background: #fff; border: 1px solid var(--gs-line); border-top: 4px solid var(--gs-gold); padding: clamp(18px, 3vw, 36px); }
.gs-public .gs-profile { margin-top: 40px; }
/* v0.22.0: "Start Your Page", quiet and last on a public Expert page; it never competes with booking */
.gs-startpage { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px; margin: clamp(40px, 6vw, 64px) 0 0; padding: 18px 0 0; border-top: 1px solid var(--gs-line); color: var(--gs-ink-2); font-size: 15px; line-height: 1.5; }
.gs-startpage p { margin: 0; }
.gs-startpage__link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--gs-ink); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.gs-profile--preview { font-size: 16px; }
.gs-profile__head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 20px; align-items: center; padding-bottom: 20px; border-bottom: 1px solid var(--gs-line); }
.gs-profile__portrait { width: 120px; height: 144px; background: var(--gs-paper-2); overflow: hidden; display: flex; align-items: center; justify-content: center; color: var(--gs-ink-2); font-size: 14px; }
.gs-profile--preview .gs-profile__portrait { width: 88px; height: 106px; }
.gs-profile__portrait img { width: 100%; height: 100%; object-fit: cover; }
.gs-profile__name { margin: 0 0 4px; font-size: clamp(26px, 3.4vw, 38px); }
.gs-profile--preview .gs-profile__name { font-size: 24px; }
.gs-profile__descriptor { font-size: 18px; margin: 0 0 4px; }
.gs-profile__loc { color: var(--gs-ink-2); margin: 0; font-size: 15px; }
.gs-profile__price { text-align: right; }
.gs-profile__amount { display: block; font-family: var(--gs-serif); font-size: 26px; font-weight: 600; }
.gs-profile__block { padding-top: 20px; }
.gs-profile__label { font-family: var(--gs-sans); text-transform: uppercase; letter-spacing: .08em; font-size: 14px; color: var(--gs-gold-ink); }
.gs-proofs { list-style: none; padding: 0; margin: 0; }
.gs-proofs li { padding: 10px 0 10px 18px; border-left: 2px solid var(--gs-gold); margin-bottom: 10px; display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; }
ol.gs-proofs { counter-reset: p; }
@media (max-width: 640px) {
	.gs-profile__head { grid-template-columns: auto minmax(0, 1fr); }
	.gs-profile__price { grid-column: 1 / -1; text-align: left; display: flex; gap: 10px; align-items: baseline; }
	.gs-profile__portrait { width: 88px; height: 106px; }
}

/* ---- Admin ---- */
.gs-admin-list { border-top: 1px solid var(--gs-ink); padding: 20px 0 32px; }
.gs-table { width: 100%; border-collapse: collapse; }
.gs-table th { text-align: left; font-size: 14px; text-transform: uppercase; letter-spacing: .06em; color: var(--gs-ink-2); padding: 8px 12px 8px 0; border-bottom: 1px solid var(--gs-line); }
.gs-table td { padding: 12px 12px 12px 0; border-bottom: 1px solid var(--gs-line); vertical-align: top; }
@media (max-width: 640px) {
	.gs-table thead { position: absolute; left: 0; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.gs-table, .gs-table tbody, .gs-table tr, .gs-table td { display: block; width: 100%; }
	.gs-table tr { padding: 10px 0; border-bottom: 1px solid var(--gs-line); }
	.gs-table td { border: 0; padding: 2px 0; }
	.gs-table td::before { content: attr(data-label) ": "; color: var(--gs-ink-2); font-size: 14px; }
}
.gs-review-layout { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: clamp(20px, 4vw, 48px); align-items: start; }
@media (max-width: 960px) { .gs-review-layout { grid-template-columns: minmax(0, 1fr); } }
.gs-facts { margin: 0 0 24px; border-top: 1px solid var(--gs-ink); }
.gs-facts div { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--gs-line); }
.gs-facts dt { color: var(--gs-ink-2); }
.gs-facts dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 560px) { .gs-facts div { grid-template-columns: minmax(0, 1fr); gap: 2px; } }
.gs-review-block { padding: 8px 0 16px; }
.gs-panel { border-top: 3px solid var(--gs-ink); padding: 16px 0 24px; }
.gs-panel--internal { border-top-color: var(--gs-gold); background: linear-gradient(var(--gs-gold-soft), rgba(242,230,204,0) 120px); padding-left: 16px; padding-right: 16px; }
.gs-admin-portrait { width: 120px; height: 144px; object-fit: cover; border: 1px solid var(--gs-line); }
.gs-reject > summary { list-style: none; }
.gs-reject > summary::-webkit-details-marker { display: none; }
.gs-reject[open] > summary { margin-bottom: 16px; }
.gs-expert-row { border-bottom: 1px solid var(--gs-line); padding: 12px 0; }
.gs-expert-row > summary { cursor: pointer; padding: 6px 0; }
.gs-expert-row__name { font-weight: 600; }
.gs-expert-row .gs-profile { margin: 12px 0; }

.gs-footer { border-top: 1px solid var(--gs-line); padding: 24px 0; color: var(--gs-ink-2); font-size: 15px; }
.gs-footer p { margin: 0; font-family: var(--gs-serif); }

/* Preview cards sit in narrow columns: price drops below the name. */
.gs-profile--preview .gs-profile__head { grid-template-columns: auto minmax(0, 1fr); }
.gs-profile--preview .gs-profile__price { grid-column: 1 / -1; text-align: left; display: flex; gap: 10px; align-items: baseline; }
.gs-fieldset--plain legend { display: block; }
.gs-fieldset--plain legend .gs-optional { display: block; }

/* v0.2.5 hero correction: retain the reference crop and keep the bleed restrained. */
:root{--gs-ink:#25231f;--gs-ink-2:#514d48;--gs-paper:#fffdf9;--gs-paper-2:#f5eee5;--gs-line:#e8dfd5;--gs-gold:#d98532;--gs-gold-ink:#754019;--gs-gold-soft:#f6e5ce;--gs-burnt:#c5532b;--gs-amber:#f0ad54;--gs-teal:#174d49;--gs-sand:#fffaf4;--gs-surface:#fffdf9;--gs-border:#e8dfd5;--gs-muted:#615c56;--gs-label:#726a64;--gs-serif:"Literata",Georgia,serif;--gs-sans:"Karla",Arial,sans-serif;--gs-wrap:1280px}
body.gs{background:var(--gs-sand);color:var(--gs-ink);font:16px/1.55 var(--gs-sans);overflow-x:hidden}
.gs-wrap{max-width:1280px;padding-left:clamp(22px,5vw,72px);padding-right:clamp(22px,5vw,72px)}
.gs-main{padding-bottom:0}.gs-eyebrow{margin:0 0 11px;color:var(--gs-burnt);font:700 11px/1.25 var(--gs-sans);letter-spacing:.15em;text-transform:uppercase}
.gs-header{position:relative;z-index:10;background:#fffdf9;border:0}.gs-header__inner{max-width:1420px;min-height:72px;gap:32px;padding-left:clamp(22px,4.5vw,64px);padding-right:clamp(22px,4.5vw,64px)}
.gs-brand{display:block;flex:0 0 auto;line-height:0}.gs-brand img{width:190px;height:auto;max-height:42px}.gs-nav{display:flex;align-items:center;gap:26px}.gs-nav ul{display:flex;align-items:center;gap:27px}.gs-nav ul a{padding:8px 0;border-radius:0!important;background:none!important;color:var(--gs-ink)!important;font:600 14px/1.2 var(--gs-sans)}.gs-nav ul a:hover{color:var(--gs-burnt)!important}.gs-nav ul a[aria-current=page]{box-shadow:inset 0 -2px var(--gs-amber)}.gs-nav__account{gap:0}.gs-nav__signin{padding:8px 0!important;border:0!important;background:none!important;color:var(--gs-ink)!important;font-size:14px;font-weight:700}.gs-nav__signin:hover{color:var(--gs-burnt)!important}.gs-nav .gs-nav__find{display:inline-flex;align-items:center;min-height:40px;padding:0 18px!important;border-radius:3px!important;background:var(--gs-ink)!important;color:#fff!important;font-weight:700}.gs-nav .gs-nav__find:hover{background:var(--gs-burnt)!important;color:#fff!important}.gs-menu-toggle{border-radius:3px}
/* Hero image overlays the orange field and fades under the copy. */
.gs-public-hero{position:relative;isolation:isolate;overflow:hidden;padding:0;background:#c9552d;color:#fff}.gs-public-hero__grid{position:relative;display:flex;align-items:center;min-height:clamp(490px,49vw,665px)}.gs-public-hero__copy{position:relative;z-index:2;width:min(52%,560px);padding:58px 0 66px}.gs-kicker-dark{margin:0 0 20px;color:#ffe3c9;font:700 11px/1.35 var(--gs-sans);letter-spacing:.16em;text-transform:uppercase}.gs-public-hero h1{max-width:560px;margin:0 0 18px;color:#fff;font:600 clamp(46px,5.1vw,70px)/1.02 var(--gs-serif);letter-spacing:-.052em;text-wrap:balance}.gs-public-hero__copy>p:not(.gs-kicker-dark){max-width:470px;margin:0;color:#fff6ef;font:400 clamp(16px,1.5vw,19px)/1.55 var(--gs-sans)}.gs-hero-button{display:inline-flex;align-items:center;gap:20px;margin-top:26px;padding:15px 20px;background:#fffdf9;color:#27231f!important;text-decoration:none;font:700 14px/1 var(--gs-sans);border-radius:3px;transition:background .2s,color .2s}.gs-hero-button:hover{background:#f4bb72;color:#25231f!important}.gs-hero-button span{font-size:18px;line-height:1}.gs-hero-bleed{position:absolute;z-index:1;top:0;left:45%;right:calc((100vw - 100%)/-2);bottom:0;width:auto;overflow:hidden;pointer-events:none}.gs-hero-bleed:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#c9552d 0%,rgba(201,85,45,.92) 14%,rgba(201,85,45,.43) 25%,transparent 38%)}.gs-hero-bleed img{width:100%;height:100%;object-fit:cover;object-position:center center;mix-blend-mode:normal}
/* Three compact value columns echo the approved visual rhythm. */
.gs-value-strip{padding:0;background:#fffdf9;border:0}.gs-value-strip__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:24px;padding-bottom:24px}.gs-value-strip article{display:flex;align-items:center;gap:14px;min-height:86px;padding:8px clamp(13px,2vw,26px);background:transparent!important;border:0;border-right:1px solid var(--gs-border)!important;border-radius:0!important}.gs-value-strip article:first-child{padding-left:0}.gs-value-strip article:last-child{border-right:0!important}.gs-value-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;margin:0;border-radius:50%;background:#f5e4ce;color:#704020}.gs-value-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.gs-value-icon--sessions{background:#f5e0d7;color:#a2472c}.gs-value-icon--answers{background:#e3ebdf;color:#3f664c}.gs-value-strip article>div{min-width:0}.gs-value-strip h2{margin:0 0 2px;font:700 16px/1.25 var(--gs-sans);letter-spacing:-.01em}.gs-value-strip p{max-width:290px;margin:0;color:#625c56;font-size:13px;line-height:1.35}
.gs-home-section{padding:72px 0}.gs-section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.gs-section-heading h2{max-width:700px;margin:0;font:600 clamp(36px,4.2vw,54px)/1.04 var(--gs-serif);letter-spacing:-.045em}.gs-section-heading>a{flex:0 0 auto;margin-bottom:5px;color:var(--gs-ink);font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--gs-burnt);padding-bottom:5px}.gs-section-heading>a span{margin-left:8px;color:var(--gs-burnt);font-size:16px}
/* Database-backed Expert cards: no mock ratings, session counts or identities. */
.gs-featured{background:#f8f3ed;border-top:1px solid var(--gs-border);border-bottom:1px solid var(--gs-border)}.gs-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.gs-feature-card,.gs-feature-card:nth-child(2),.gs-feature-card:nth-child(3){margin:0;overflow:hidden;background:#fff;border:1px solid #eee7e0;border-radius:5px;box-shadow:0 3px 14px rgba(35,32,27,.05)}.gs-feature-card__image,.gs-feature-card:nth-child(2) .gs-feature-card__image,.gs-feature-card:nth-child(3) .gs-feature-card__image{position:relative;display:block;height:clamp(210px,22vw,280px);overflow:hidden;background:#e9e1d7}.gs-feature-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gs-feature-card__image:hover img{transform:scale(1.025)}.gs-feature-card__initials{display:grid;place-items:center;width:100%;height:100%;background:#e9e1d7;color:#51453b;font:500 58px var(--gs-serif)}.gs-feature-card__body{padding:17px 18px 18px}.gs-feature-card h3{margin:0;font:600 23px/1.15 var(--gs-serif);letter-spacing:-.02em}.gs-feature-card h3 a{color:var(--gs-ink);text-decoration:none}.gs-feature-card h3 a:hover{color:var(--gs-burnt)}.gs-feature-card__descriptor{margin:5px 0 0;color:var(--gs-muted);font-size:13px}.gs-feature-card__location{margin:10px 0 0;color:var(--gs-muted);font-size:12px}.gs-feature-card__proof{margin:13px 0 8px;padding:0;border:0;color:var(--gs-ink);font:500 14px/1.4 var(--gs-serif)}.gs-feature-card__proof span{display:block;margin:0 0 3px;color:#466850;font:700 9px/1.2 var(--gs-sans);letter-spacing:.1em;text-transform:uppercase}.gs-feature-card__proof:before{content:"“";margin-right:4px;color:var(--gs-burnt);font-size:19px}.gs-expertise-list{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none}.gs-expertise-list li{padding:4px 7px;border:1px solid #e2d9ce;border-radius:2px;color:#514b45;font-size:10px;line-height:1.2}.gs-feature-card__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:11px;border-top:1px solid var(--gs-border)}.gs-feature-card__foot strong{font:600 16px var(--gs-serif);white-space:nowrap}.gs-feature-card__foot small{font:500 11px var(--gs-sans);color:var(--gs-muted)}.gs-feature-card__foot a{color:var(--gs-ink);font-size:12px;font-weight:700;text-decoration:none}.gs-feature-card__foot a span{margin-left:5px;color:var(--gs-burnt);font-size:16px}.gs-featured-empty{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px 0;border-top:1px solid var(--gs-border);border-bottom:1px solid var(--gs-border)}.gs-featured-empty p{max-width:680px;margin:0;color:var(--gs-muted);font-size:15px}.gs-featured-empty>a{flex:0 0 auto;color:var(--gs-ink);font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--gs-burnt);padding-bottom:5px}
/* Three clear steps in a single vertical sequence. */
.gs-how{background:#fffdf9}.gs-how__layout{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr);gap:clamp(45px,9vw,120px);align-items:start}.gs-how-intro h2{max-width:410px;margin:0 0 12px;font:600 clamp(40px,4.4vw,58px)/1.03 var(--gs-serif);letter-spacing:-.05em}.gs-how-intro>p:last-child{margin:0;color:var(--gs-muted);font-size:15px}.gs-how ol{list-style:none;margin:0;padding:0;border-top:1px solid #ded5ca}.gs-how li{display:grid;grid-template-columns:52px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid #ded5ca}.gs-how li>span{font:500 22px/1.2 var(--gs-serif);color:var(--gs-burnt)}.gs-how h3{margin:0 0 4px;font:700 17px/1.3 var(--gs-sans)}.gs-how p{margin:0;color:var(--gs-muted);font-size:13px;line-height:1.45}
/* Search destination band with the approved book photograph fading into the teal field. */
.gs-home-cta{position:relative;isolation:isolate;overflow:hidden;min-height:310px;padding:46px 0;background:#174d49;color:#fff}.gs-home-cta__inner{position:relative;z-index:2;display:block}.gs-cta-copy{max-width:590px}.gs-cta-kicker{margin:0 0 9px;color:#f0bd7b;font:700 10px var(--gs-sans);letter-spacing:.14em;text-transform:uppercase}.gs-home-cta h2{max-width:500px;margin:0 0 8px;font:600 clamp(34px,4vw,48px)/1.04 var(--gs-serif);letter-spacing:-.04em}.gs-cta-copy>p:not(.gs-cta-kicker){margin:0 0 16px;color:#e7efeb;font-size:14px}.gs-cta-search{display:flex;width:100%;max-width:560px;min-height:51px;padding:4px;background:#fffdf9;border-radius:3px}.gs-cta-search input{min-width:0;flex:1;border:0!important;outline:0!important;padding:0 13px;background:transparent!important;color:var(--gs-ink);font:500 13px var(--gs-sans)}.gs-cta-search input::placeholder{color:#77716a}.gs-cta-search button{display:flex;align-items:center;gap:13px;padding:0 15px;border:0;border-radius:2px;background:#efad54;color:#28231f;font:700 12px var(--gs-sans);white-space:nowrap;cursor:pointer}.gs-cta-search button:hover{background:#ffd080}.gs-cta-search button span{font-size:17px}.gs-cta-photo{position:absolute;z-index:1;top:0;right:0;bottom:0;width:min(48vw,640px);overflow:hidden}.gs-cta-photo:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#174d49 0%,rgba(23,77,73,.75) 9%,rgba(23,77,73,.10) 30%,transparent 48%)}.gs-cta-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.gs-search-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0 0;padding:0;list-style:none}.gs-search-suggestions a{display:inline-block;padding:5px 10px;border:1px solid rgba(255,255,255,.38);border-radius:2px;color:#fff;text-decoration:none;font-size:11px}.gs-search-suggestions a:hover{background:rgba(255,255,255,.13)}
.gs-footer{margin:0;padding:18px 0;background:#fffdf9;border-top:1px solid var(--gs-border)}.gs-footer>.gs-wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.gs-footer__brand{line-height:0}.gs-footer__brand img{width:166px;height:auto}.gs-footer__nav{display:flex;flex-wrap:wrap;gap:24px}.gs-footer__nav a{color:var(--gs-ink);font-size:12px;font-weight:600;text-decoration:none}.gs-footer__nav a:hover{color:var(--gs-burnt)}.gs-footer span{color:var(--gs-muted);font-size:11px}
/* Expert directory shares the same real-profile cards and public navigation. */
.gs-directory-head{padding:49px 0 37px;background:#f4e9df}.gs-directory-head h1{max-width:780px;margin:0 0 10px;font:600 clamp(42px,5.5vw,66px)/1.02 var(--gs-serif);letter-spacing:-.05em}.gs-directory-head>div>p:not(.gs-eyebrow){margin:0;color:var(--gs-muted);font-size:16px}.gs-directory-search{display:flex;max-width:710px;min-height:56px;margin-top:22px;background:#fffdf9;border-bottom:3px solid var(--gs-burnt)}.gs-directory-search input{min-width:0;flex:1;border:0!important;outline:0!important;padding:0 16px;background:transparent!important;color:var(--gs-ink);font:500 15px var(--gs-sans)}.gs-directory-search button{display:flex;align-items:center;gap:14px;margin:4px;padding:0 17px;border:0;border-radius:2px;background:var(--gs-ink);color:#fff;font:700 13px var(--gs-sans);cursor:pointer}.gs-directory-search button:hover{background:var(--gs-burnt)}.gs-directory-section{padding:38px 0 75px}.gs-directory-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:20px;padding-bottom:11px;border-bottom:1px solid var(--gs-border)}.gs-directory-heading h2{margin:0;font:600 23px var(--gs-serif)}.gs-directory-heading span{color:var(--gs-muted);font-size:12px}.gs-directory-grid{row-gap:24px}.gs-directory-grid .gs-feature-card,.gs-directory-grid .gs-feature-card:nth-child(2),.gs-directory-grid .gs-feature-card:nth-child(3){margin:0}.gs-directory-grid .gs-feature-card__image,.gs-directory-grid .gs-feature-card:nth-child(2) .gs-feature-card__image,.gs-directory-grid .gs-feature-card:nth-child(3) .gs-feature-card__image{height:clamp(210px,23vw,290px)}.gs-directory-empty{padding:30px 0;border-top:1px solid var(--gs-border);border-bottom:1px solid var(--gs-border)}.gs-directory-empty h2{margin:0 0 7px;font:600 clamp(28px,3.5vw,40px)/1.1 var(--gs-serif)}.gs-directory-empty>p:not(.gs-eyebrow){max-width:610px;color:var(--gs-muted)}.gs-directory-empty>a{color:var(--gs-ink);font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--gs-burnt);padding-bottom:5px}
/* Login starts with the two account choices; Expert recruitment remains its own flow. */
.gs-route-login .gs-header,.gs-route-login .gs-footer{display:none}.gs-route-login .gs-main{padding:0}.gs-auth-page{min-height:100vh;background:linear-gradient(110deg,#fffaf4 0 55%,#f5e4d8 55%);padding:32px}.gs-auth-brand{max-width:1180px;margin:0 auto}.gs-auth-shell{max-width:980px;margin:8vh auto 0}.gs-auth-intro{max-width:620px}.gs-auth-intro h1{font:500 clamp(38px,5vw,58px)/1.05 var(--gs-serif);letter-spacing:-.04em;margin:8px 0 14px}.gs-auth-intro>p:last-child{font-size:18px;color:var(--gs-muted)}.gs-role-choices{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:34px}.gs-role-choices>a{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:5px;padding:30px;text-decoration:none;color:var(--gs-ink);min-height:225px;display:flex;flex-direction:column;box-shadow:0 5px 18px rgba(58,53,45,.05);transition:transform .18s,border-color .18s}.gs-role-choices>a:hover{transform:translateY(-3px);border-color:var(--gs-burnt)}.gs-role-choices span{font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--gs-burnt);text-transform:uppercase}.gs-role-choices strong{font:500 27px/1.15 var(--gs-serif);margin:18px 0 8px}.gs-role-choices small{font-size:15px;color:var(--gs-muted)}.gs-role-choices b{margin-top:auto;color:var(--gs-teal);font-size:14px}.gs-auth-form-wrap{max-width:580px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:5px;padding:38px;box-shadow:0 10px 26px rgba(58,53,45,.06)}.gs-auth__tabs{display:flex;gap:8px;margin:24px 0}.gs-auth__tabs a{padding:8px 13px;border-radius:3px;text-decoration:none;font-weight:700;color:var(--gs-teal);border:1px solid var(--gs-border)}.gs-auth__tabs a[aria-current=page]{background:var(--gs-teal);color:#fff}.gs-auth-meta{display:flex;justify-content:space-between;gap:18px;font-size:13px;margin:4px 0 22px}.gs-button--wide{width:100%}.gs-auth-back{text-align:center;margin:18px 0 0;font-size:13px}
.gs-route-become-an-expert .gs-main{padding:0}.gs-recruit-hero{position:relative;isolation:isolate;overflow:hidden;background:#c9552d;color:#fff}.gs-recruit-grid{position:relative;display:flex;align-items:center;min-height:480px}.gs-recruit-copy{position:relative;z-index:2;width:min(53%,580px);padding:55px 0}.gs-recruit-copy h1{max-width:600px;margin:0 0 18px;color:#fff;font:600 clamp(42px,5vw,64px)/1.02 var(--gs-serif);letter-spacing:-.05em}.gs-recruit-copy>p:not(.gs-kicker-dark){max-width:480px;color:#fff6ef;font-size:17px}.gs-recruit-photo{position:absolute;z-index:1;top:0;left:45%;right:calc((100vw - 100%)/-2);bottom:0;overflow:hidden}.gs-recruit-photo:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#c9552d 0%,rgba(201,85,45,.92) 14%,rgba(201,85,45,.43) 25%,transparent 38%)}.gs-recruit-photo img{width:100%;height:100%;object-fit:cover;object-position:center center}.gs-route-become-an-expert .gs-section{padding:62px 0}.gs-route-become-an-expert .gs-section--tint{background:#f7eee5}.gs-route-become-an-expert .gs-section__title{font-size:34px}.gs-route-become-an-expert .gs-prose{font-size:17px}.gs-route-become-an-expert .gs-button--primary{background:var(--gs-burnt);color:#fff}
@media(max-width:920px){.gs-menu-toggle{display:inline-block;margin-left:auto}.gs-nav{display:none;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:9px;padding:4px 0 15px}.gs-nav.is-open,.no-js .gs-nav{display:flex}.gs-nav ul{flex-direction:column;gap:3px;width:100%}.gs-nav ul a{display:block;padding:10px 0}.gs-nav__account{width:100%;border-top:1px solid var(--gs-border);padding-top:10px}.gs-public-hero__copy{width:55%}.gs-hero-bleed{left:46%}.gs-public-hero h1{font-size:clamp(45px,6vw,60px)}.gs-how__layout{gap:48px}}
@media(max-width:700px){.gs-wrap{padding-left:22px;padding-right:22px}.gs-header__inner{min-height:66px}.gs-brand img{width:172px}.gs-public-hero__grid{display:block;min-height:0;padding-top:0;padding-bottom:0}.gs-public-hero__copy{width:100%;max-width:560px;padding:36px 0 24px}.gs-kicker-dark{margin-bottom:15px;font-size:9px}.gs-public-hero h1{max-width:550px;font-size:clamp(46px,10vw,64px)}.gs-public-hero__copy>p:not(.gs-kicker-dark){max-width:550px;font-size:16px}.gs-hero-button{margin-top:19px}.gs-hero-bleed{position:relative;top:auto;left:auto;right:auto;bottom:auto;width:calc(100% + 44px);height:290px;margin:0 -22px;overflow:hidden}.gs-hero-bleed:after{background:linear-gradient(180deg,#c9552d 0%,rgba(201,85,45,.15) 19%,transparent 38%)}.gs-hero-bleed img{object-fit:cover;object-position:center 43%}.gs-value-strip__grid{grid-template-columns:1fr;padding-top:10px;padding-bottom:10px}.gs-value-strip article,.gs-value-strip article:first-child{min-height:77px;padding:11px 0;border-right:0!important;border-bottom:1px solid var(--gs-border)!important}.gs-value-strip article:last-child{border-bottom:0!important}.gs-value-strip p{max-width:450px}.gs-home-section{padding:52px 0}.gs-section-heading{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:21px}.gs-section-heading h2{font-size:39px}.gs-featured-grid{grid-template-columns:1fr;gap:17px}.gs-feature-card__image,.gs-feature-card:nth-child(2) .gs-feature-card__image,.gs-feature-card:nth-child(3) .gs-feature-card__image{height:clamp(240px,74vw,400px)}.gs-featured-empty{align-items:flex-start;flex-direction:column;gap:12px}.gs-how__layout{grid-template-columns:1fr;gap:24px}.gs-how-intro h2{font-size:43px}.gs-home-cta{min-height:0;padding:32px 0 255px}.gs-home-cta__inner{display:block}.gs-home-cta h2{font-size:39px}.gs-cta-photo{top:auto;left:0;right:0;bottom:0;width:100%;height:245px}.gs-cta-photo:after{background:linear-gradient(180deg,#174d49 0%,rgba(23,77,73,.35) 24%,transparent 60%)}.gs-footer>.gs-wrap{align-items:flex-start;flex-direction:column;gap:13px}.gs-footer__nav{gap:18px}.gs-directory-head{padding:40px 0 30px}.gs-directory-head h1{font-size:45px}.gs-directory-search{display:grid;grid-template-columns:1fr;padding:4px}.gs-directory-search input{min-height:48px}.gs-directory-search button{min-height:45px;justify-content:space-between}.gs-directory-section{padding:30px 0 55px}.gs-directory-grid{row-gap:17px}.gs-directory-grid .gs-feature-card__image,.gs-directory-grid .gs-feature-card:nth-child(2) .gs-feature-card__image,.gs-directory-grid .gs-feature-card:nth-child(3) .gs-feature-card__image{height:clamp(240px,74vw,400px)}.gs-role-choices{grid-template-columns:1fr}.gs-auth-page{padding:22px;background:var(--gs-sand)}.gs-auth-shell{margin-top:6vh}.gs-auth-form-wrap{padding:25px}.gs-recruit-grid{display:block;min-height:0;padding-top:0;padding-bottom:0}.gs-recruit-copy{width:100%;padding:37px 0 20px}.gs-recruit-copy h1{font-size:clamp(42px,9vw,56px)}.gs-recruit-photo{position:relative;top:auto;left:auto;right:auto;bottom:auto;width:calc(100% + 44px);height:290px;margin:0 -22px}.gs-recruit-photo:after{background:linear-gradient(180deg,#c9552d 0%,rgba(201,85,45,.15) 19%,transparent 38%)}.gs-recruit-photo img{object-fit:cover;object-position:center 43%}.gs-route-become-an-expert .gs-section{padding:48px 0}}
@media(max-width:420px){.gs-public-hero h1{font-size:45px}.gs-section-heading h2{font-size:35px}.gs-how li{grid-template-columns:43px 1fr;gap:11px}.gs-cta-search{display:grid;grid-template-columns:1fr;gap:3px}.gs-cta-search input{min-height:44px}.gs-cta-search button{min-height:43px;justify-content:space-between}.gs-feature-card__foot{align-items:flex-start;flex-direction:column}.gs-directory-head h1{font-size:40px}.gs-footer__nav{gap:12px}}
@media(prefers-reduced-motion:reduce){.gs-feature-card__image img,.gs-hero-button,.gs-role-choices>a{transition:none}}

/* v0.5.1 approved editorial homepage direction */
.gs-public-hero{background:#c6532e}
.gs-public-hero__grid{min-height:clamp(650px,57vw,790px)}
.gs-public-hero__copy{width:min(52%,650px);padding:76px 0 90px}
.gs-kicker-dark{max-width:560px;margin-bottom:20px;color:#ffe5d0;font:600 clamp(18px,1.8vw,23px)/1.35 var(--gs-serif);letter-spacing:-.01em;text-transform:none}
.gs-public-hero h1{max-width:630px;margin-bottom:22px;font-size:clamp(55px,6vw,82px);line-height:.99;letter-spacing:-.052em}
.gs-public-hero__copy>p:not(.gs-kicker-dark){max-width:530px;margin:0 0 12px;color:#fff7f1;font-size:clamp(16px,1.32vw,18px);line-height:1.55}
.gs-hero-button{margin-top:22px;padding:16px 21px;border-radius:3px;font-size:15px}
.gs-hero-bleed{left:30%;right:calc((100vw - 100%)/-2);overflow:hidden}
.gs-hero-bleed:after{inset:0;background:linear-gradient(90deg,#c6532e 0%,rgba(198,83,46,.98) 10%,rgba(198,83,46,.86) 21%,rgba(198,83,46,.55) 34%,rgba(198,83,46,.16) 48%,transparent 60%);}
.gs-hero-bleed img{object-position:61% center;mask-image:none;-webkit-mask-image:none}
.gs-hero-proof{top:12%;right:clamp(28px,6vw,88px);left:auto;gap:12px}
.gs-hero-proof__item{min-width:202px;padding:11px 14px;border-radius:5px;background:rgba(255,250,243,.97);box-shadow:0 9px 24px rgba(49,29,20,.15);transform:none}
.gs-hero-proof__item:nth-child(2),.gs-hero-proof__item:nth-child(3){margin-left:22px;transform:none}
.gs-hero-proof__item:nth-child(3){margin-left:4px}
.gs-hero-proof__mark{flex-basis:32px;width:32px;height:32px}
.gs-value-strip{background:#fbf6ed;border-top:1px solid #e8d8c7;border-bottom:1px solid #e8d8c7}
.gs-value-strip__grid{padding-top:38px;padding-bottom:38px}
.gs-value-strip article,.gs-value-strip article:first-child{align-items:flex-start;gap:18px;min-height:146px;padding:8px clamp(18px,2.3vw,31px)}
.gs-value-strip article:first-child{padding-left:0}
.gs-value-number{flex:0 0 auto;color:#bb552f;font:600 30px/1 var(--gs-serif);letter-spacing:-.04em}
.gs-value-strip article>div{max-width:350px}
.gs-value-strip h2{margin:-3px 0 9px;color:#26211d;font:600 clamp(20px,1.75vw,25px)/1.18 var(--gs-serif);letter-spacing:-.025em}
.gs-value-strip p{max-width:355px;color:#474039;font-size:16px;line-height:1.55}
.gs-featured{background:#f5ede4;border:0}
.gs-featured .gs-wrap{max-width:1420px}
.gs-section-heading--featured{align-items:end;gap:clamp(34px,7vw,104px);margin-bottom:42px}
.gs-section-heading--featured>div:first-child{max-width:620px}
.gs-section-heading--featured h2{max-width:610px;font-size:clamp(43px,5vw,66px);line-height:1.02}
.gs-section-heading__aside{max-width:465px;padding-bottom:5px}
.gs-section-heading__aside p{margin:0 0 10px;color:#453e37;font-size:16px;line-height:1.55}
.gs-section-heading__aside strong{color:#25211d;font-weight:700}
.gs-section-heading__aside>a{display:inline-block;margin-top:7px;color:#28231f;font-size:15px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--gs-burnt);padding-bottom:5px}
.gs-section-heading__aside>a span{margin-left:7px;color:var(--gs-burnt)}
.gs-featured-grid{gap:22px}
.gs-feature-card,.gs-feature-card:nth-child(2),.gs-feature-card:nth-child(3){border:0;border-radius:4px;background:#fffdf9;box-shadow:0 8px 26px rgba(42,32,22,.07)}
.gs-feature-card__image,.gs-feature-card:nth-child(2) .gs-feature-card__image,.gs-feature-card:nth-child(3) .gs-feature-card__image{height:clamp(310px,33vw,440px);border-radius:0;background:#ded2c5}
.gs-feature-card__image img{object-position:center 38%}
.gs-feature-card__body{padding:22px 23px 23px}
.gs-feature-card__body>.gs-eyebrow{margin-bottom:10px;font-size:10px}
.gs-feature-card h3{font-size:29px}
.gs-feature-card__descriptor{color:#39342f;font-size:16px;line-height:1.45}
.gs-feature-card__proof{font-size:15px}
.gs-feature-card__location{color:#514a43;font-size:14px}
.gs-feature-card__foot{align-items:center;margin-top:20px;padding-top:15px}
.gs-feature-card__foot strong{font-size:20px}
.gs-feature-card__foot a{font-size:14px}
.gs-feature-card--preview{position:relative}
.gs-preview-label{position:absolute;left:12px;bottom:12px;padding:8px 10px;background:#fffdf9;color:#27231f;font:700 10px/1.25 var(--gs-sans);letter-spacing:.07em}
.gs-feature-card--preview .gs-feature-card__body>.gs-eyebrow{margin:0 0 10px}
.gs-feature-card--preview .gs-feature-card__foot span{color:#27231f;font-size:13px;font-weight:700}
.gs-how{background:#fffaf4}
.gs-how .gs-wrap{max-width:1420px}
.gs-how-intro{max-width:950px;margin-bottom:43px}
.gs-how-intro h2{max-width:920px;font-size:clamp(44px,5vw,67px);line-height:1.03}
.gs-how ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.gs-how li{grid-template-columns:88px minmax(0,1fr);grid-template-rows:24px 1fr;min-height:196px;padding:16px 25px;border-left-color:#dfd2c3}
.gs-how li:first-child{padding-left:0}
.gs-how li>span{font-size:20px}
.gs-how h3{font-size:22px;line-height:1.25}
.gs-how p{color:#49423c;font-size:16px;line-height:1.55}
.gs-how__image{width:78px;height:112px;border-radius:2px}
.gs-home-cta{min-height:500px;padding:58px 0;background:#183f3c}
.gs-home-cta__inner{display:block}
.gs-cta-photo{top:0;left:0;right:auto;bottom:0;width:75%;overflow:hidden}
.gs-cta-photo:after{background:linear-gradient(90deg,rgba(24,63,60,0) 0%,rgba(24,63,60,.05) 36%,rgba(24,63,60,.42) 58%,#183f3c 84%,#183f3c 100%)}
.gs-cta-photo img{object-position:42% center}
.gs-cta-copy{max-width:690px;margin-left:40%;padding:12px 0 20px}
.gs-cta-kicker{margin-bottom:14px;color:#edbe86;font-size:12px}
.gs-home-cta h2{max-width:660px;margin-bottom:14px;font-size:clamp(40px,4.6vw,60px);line-height:1.03}
.gs-cta-copy>p:not(.gs-cta-kicker){max-width:600px;margin-bottom:22px;color:#edf2ed;font-size:17px;line-height:1.55}
.gs-cta-search{display:flex;max-width:680px;min-height:62px;flex-wrap:nowrap;padding:5px;border-radius:3px}
.gs-cta-search input{font-size:15px}
.gs-cta-search button{gap:8px;padding:0 17px;background:#e6b472;font-size:13px}
.gs-cta-search button:hover{background:#f3cb93}
.gs-suggestions-label{margin:18px 0 9px;color:#efc28c;font-size:11px;font-weight:700;letter-spacing:.13em}
.gs-search-suggestions{gap:8px;margin-top:0}
.gs-search-suggestions a{padding:7px 10px;border:1px solid rgba(255,255,255,.48);border-radius:2px;color:#fff;font-size:13px}
@media(max-width:920px){
 .gs-public-hero__grid{min-height:680px}
 .gs-public-hero__copy{width:54%}
 .gs-public-hero h1{font-size:clamp(52px,7vw,68px)}
 .gs-hero-bleed{left:28%}
 .gs-hero-proof{right:24px;top:10%}
 .gs-value-strip__grid{padding-top:30px;padding-bottom:30px}
 .gs-value-strip article,.gs-value-strip article:first-child{gap:13px;padding-left:14px;padding-right:14px}
 .gs-value-number{font-size:26px}
 .gs-value-strip h2{font-size:20px}
 .gs-value-strip p{font-size:15px}
 .gs-section-heading--featured{align-items:flex-start}
 .gs-how li{grid-template-columns:62px minmax(0,1fr);padding-left:13px;padding-right:13px}
 .gs-how__image{width:56px;height:92px}
 .gs-how h3{font-size:19px}
 .gs-how p{font-size:15px}
 .gs-cta-copy{margin-left:36%;max-width:64%}
 .gs-cta-search{flex-wrap:wrap}
}
@media(max-width:700px){
 .gs-public-hero__grid{min-height:0;padding-bottom:0}
 .gs-public-hero__copy{width:100%;padding:35px 0 26px}
 .gs-kicker-dark{font-size:18px;margin-bottom:13px}
 .gs-public-hero h1{max-width:570px;font-size:clamp(48px,11vw,64px)}
 .gs-public-hero__copy>p:not(.gs-kicker-dark){max-width:600px;font-size:16px}
 .gs-hero-bleed{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:calc(100% + 44px);height:350px;margin:0 -22px}
 .gs-hero-bleed:after{background:linear-gradient(180deg,#c6532e 0%,rgba(198,83,46,.86) 8%,rgba(198,83,46,.32) 25%,transparent 48%)}
 .gs-hero-bleed img{object-position:63% 42%}
 .gs-hero-proof{top:auto;left:14px;right:auto;bottom:17px;gap:7px}
 .gs-hero-proof__item{min-width:185px;padding:7px 9px;gap:8px}
 .gs-hero-proof__item:nth-child(2){margin-left:13px}
 .gs-hero-proof__item:nth-child(3){margin-left:2px}
 .gs-hero-proof__mark{flex-basis:27px;width:27px;height:27px}
 .gs-hero-proof__item strong{font-size:13px}
 .gs-hero-proof__item small{font-size:11px}
 .gs-value-strip__grid{grid-template-columns:1fr;padding-top:14px;padding-bottom:14px}
 .gs-value-strip article,.gs-value-strip article:first-child{min-height:0;padding:18px 0;gap:16px;border-right:0!important;border-bottom:1px solid var(--gs-border)!important}
 .gs-value-strip article:last-child{border-bottom:0!important}
 .gs-value-number{font-size:25px}
 .gs-value-strip article>div{max-width:520px}
 .gs-value-strip h2{font-size:21px}
 .gs-value-strip p{font-size:15px}
 .gs-section-heading--featured{gap:20px;margin-bottom:25px}
 .gs-section-heading--featured h2{font-size:43px}
 .gs-section-heading__aside{max-width:unset}
 .gs-featured-grid{grid-template-columns:1fr}
 .gs-feature-card__image,.gs-feature-card:nth-child(2) .gs-feature-card__image,.gs-feature-card:nth-child(3) .gs-feature-card__image{height:clamp(320px,92vw,480px)}
 .gs-how-intro{margin-bottom:25px}
 .gs-how-intro h2{font-size:44px}
 .gs-how ol{grid-template-columns:1fr}
 .gs-how li,.gs-how li:first-child{grid-template-columns:76px minmax(0,1fr);min-height:140px;padding:17px 0;border-left:0;border-top:1px solid #dfd2c3}
 .gs-how__image{width:68px;height:95px}
 .gs-how h3{font-size:20px}
 .gs-how p{font-size:15px}
 .gs-home-cta{min-height:0;padding:34px 0 295px}
 .gs-cta-photo{top:auto;left:0;right:0;bottom:0;width:100%;height:320px}
 .gs-cta-photo:after{background:linear-gradient(180deg,#183f3c 0%,rgba(24,63,60,.92) 10%,rgba(24,63,60,.55) 31%,rgba(24,63,60,.08) 68%,transparent 100%)}
 .gs-cta-photo img{object-position:center 45%}
 .gs-cta-copy{position:relative;z-index:2;max-width:none;margin:0;padding:0}
 .gs-home-cta h2{font-size:42px}
 .gs-cta-copy>p:not(.gs-cta-kicker){font-size:16px}
 .gs-cta-search{display:grid;grid-template-columns:1fr;gap:4px;max-width:none;padding:5px}
 .gs-cta-search input{min-height:48px;font-size:14px}
 .gs-cta-search button{min-height:48px;justify-content:space-between}
 .gs-search-suggestions a{font-size:12px}
}
@media(max-width:420px){
 .gs-public-hero h1{font-size:47px}
 .gs-hero-bleed{height:310px}
 .gs-value-strip h2{font-size:19px}
 .gs-section-heading--featured h2,.gs-how-intro h2{font-size:38px}
 .gs-home-cta h2{font-size:36px}
 .gs-preview-label{font-size:9px}
}


/* v0.2.7 visual correction: photographic scenes, clear proof, and stronger type. */
.gs-public-hero{background:#c9552d}
.gs-public-hero__grid{min-height:clamp(540px,51vw,690px)}
.gs-public-hero__copy{width:min(47%,570px);padding:66px 0 72px}
.gs-public-hero h1{max-width:555px;font-size:clamp(54px,5.3vw,76px);line-height:.99}
.gs-public-hero__copy>p:not(.gs-kicker-dark){font-size:clamp(17px,1.55vw,20px);line-height:1.58}
.gs-hero-bleed{left:31%;right:calc((100vw - 100%)/-2)}
.gs-hero-bleed:after{display:none}
.gs-hero-bleed img{object-position:64% center;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 12%,rgba(0,0,0,.25) 24%,rgba(0,0,0,.62) 39%,#000 54%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 12%,rgba(0,0,0,.25) 24%,rgba(0,0,0,.62) 39%,#000 54%)}
.gs-hero-proof{position:absolute;z-index:4;top:14%;left:51%;display:flex;flex-direction:column;align-items:flex-start;gap:13px;pointer-events:none}
.gs-hero-proof__item{display:flex;align-items:center;gap:10px;min-width:174px;padding:10px 13px;border:1px solid rgba(74,49,27,.12);border-radius:8px;background:rgba(255,248,226,.96);color:#26231e;box-shadow:0 9px 22px rgba(38,26,18,.14);transform:rotate(-2deg)}
.gs-hero-proof__item:nth-child(2){margin-left:12px;transform:rotate(1.5deg)}
.gs-hero-proof__item:nth-child(3){margin-left:-4px;transform:rotate(-1deg)}
.gs-hero-proof__item--coral{background:rgba(255,231,225,.97)}
.gs-hero-proof__item--mint{background:rgba(231,242,226,.97)}
.gs-hero-proof__mark{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#f1cc71;color:#25231f;font:700 18px/1 var(--gs-sans)}
.gs-hero-proof__item--coral .gs-hero-proof__mark{background:#e37d67;color:#fff}
.gs-hero-proof__item--mint .gs-hero-proof__mark{background:#6f9874;color:#fff}
.gs-hero-proof__item strong,.gs-hero-proof__item small{display:block}
.gs-hero-proof__item strong{font:700 14px/1.2 var(--gs-sans)}
.gs-hero-proof__item small{margin-top:2px;color:#4f4942;font:500 12px/1.25 var(--gs-sans)}
.gs-value-strip{background:#fffaf3}
.gs-value-strip__grid{padding-top:30px;padding-bottom:30px}
.gs-value-strip article{gap:17px;min-height:106px;padding:12px clamp(20px,2.6vw,34px)}
.gs-value-icon{flex-basis:58px;width:58px;height:58px}
.gs-value-icon svg{width:36px;height:36px;stroke-width:2}
.gs-value-strip h2{margin-bottom:5px;font:700 21px/1.2 var(--gs-serif);letter-spacing:-.015em;color:#201c17}
.gs-value-strip p{max-width:310px;color:#48413b;font-size:16px;line-height:1.4}
.gs-home-section{padding:82px 0}
.gs-section-heading{margin-bottom:34px}
.gs-section-heading h2{font-size:clamp(40px,4.5vw,58px)}
.gs-section-heading>a{font-size:15px}
.gs-featured{background:#f7f0e8}
.gs-featured-grid{gap:23px}
.gs-feature-card,.gs-feature-card:nth-child(2),.gs-feature-card:nth-child(3){border-color:#e5dbcf;border-radius:10px;box-shadow:0 8px 25px rgba(42,32,22,.08)}
.gs-feature-card__image,.gs-feature-card:nth-child(2) .gs-feature-card__image,.gs-feature-card:nth-child(3) .gs-feature-card__image{height:clamp(280px,28vw,360px);background:#ded2c5}
.gs-feature-card__image img{object-position:center 38%}
.gs-feature-card__body{padding:20px 21px 21px}
.gs-feature-card h3{font-size:28px;line-height:1.1}
.gs-feature-card__descriptor{margin-top:7px;color:#49433d;font-size:16px;line-height:1.45}
.gs-feature-card__proof{margin:16px 0 10px;font-size:16px;line-height:1.48}
.gs-feature-card__proof span{font-size:11px}
.gs-feature-card__location{font-size:14px}
.gs-expertise-list{gap:7px;margin-bottom:14px}
.gs-expertise-list li{padding:5px 9px;border-radius:20px;font-size:13px}
.gs-feature-card__foot{margin-top:18px;padding-top:14px}
.gs-feature-card__foot strong{font-size:20px}
.gs-feature-card__foot small{font-size:13px}
.gs-feature-card__foot a{font-size:14px}
.gs-how{background:#fffdf9}
.gs-how__layout{display:block}
.gs-how-intro{margin-bottom:30px}
.gs-how-intro h2{max-width:840px;font-size:clamp(44px,4.7vw,62px)}
.gs-how-intro>p:last-child{font-size:17px}
.gs-how ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:0}
.gs-how li{display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:30px 1fr;align-items:start;gap:10px 16px;min-height:164px;padding:17px 24px;border:0;border-left:1px solid #ddd2c5}
.gs-how li:first-child{padding-left:0;border-left:0}
.gs-how li>span{grid-column:2;grid-row:1;align-self:center;font:700 20px/1 var(--gs-serif);color:#28231e}
.gs-how li>div{grid-column:2;grid-row:2}
.gs-how h3{margin:0 0 7px;font:700 21px/1.25 var(--gs-serif);letter-spacing:-.01em}
.gs-how p{color:#514b45;font-size:15px;line-height:1.5}
.gs-how__image{grid-column:1;grid-row:1/3;width:72px;height:112px;margin:0;overflow:hidden;border-radius:7px;background:#e8ddd1}
.gs-how__image img{width:100%;height:100%;object-fit:cover}
.gs-how__image--expert img{object-position:59% 39%}
.gs-how__image--session{height:90px;align-self:center}
.gs-home-cta{min-height:355px;padding:54px 0;background:#174d49}
.gs-cta-copy{max-width:585px}
.gs-home-cta h2{max-width:550px;font-size:clamp(40px,4.3vw,54px);line-height:1.03}
.gs-cta-copy>p:not(.gs-cta-kicker){font-size:16px}
.gs-cta-search{max-width:570px;min-height:58px;border-radius:6px}
.gs-cta-search input{font-size:16px}
.gs-cta-search button{min-width:56px;justify-content:center;font-size:15px}
.gs-search-suggestions{gap:9px;margin-top:15px}
.gs-search-suggestions a{padding:7px 12px;border-color:rgba(255,255,255,.58);font-size:13px}
.gs-cta-photo{left:32%;right:calc((100vw - 100%)/-2);width:auto}
.gs-cta-photo:after{background:linear-gradient(90deg,#174d49 0%,rgba(23,77,73,.97) 13%,rgba(23,77,73,.83) 30%,rgba(23,77,73,.43) 53%,rgba(23,77,73,.07) 76%,transparent 100%)}
.gs-cta-photo img{object-position:61% center}
@media(max-width:920px){
 .gs-public-hero__copy{width:49%}
 .gs-hero-bleed{left:29%}
 .gs-public-hero h1{font-size:clamp(50px,6.3vw,66px)}
 .gs-hero-proof{left:49%;top:16%;gap:11px}
 .gs-hero-proof__item{min-width:162px;padding:9px 11px}
 .gs-value-strip article{padding-left:16px;padding-right:16px}
 .gs-value-strip h2{font-size:19px}
 .gs-value-strip p{font-size:15px}
 .gs-how li{grid-template-columns:60px minmax(0,1fr);gap:9px 12px;padding-left:16px;padding-right:16px}
 .gs-how__image{width:60px;height:98px}
 .gs-how h3{font-size:19px}
}
@media(max-width:700px){
 .gs-public-hero__copy{width:100%;padding:34px 0 25px}
 .gs-public-hero h1{max-width:550px;font-size:clamp(47px,10vw,62px)}
 .gs-public-hero__copy>p:not(.gs-kicker-dark){font-size:17px}
 .gs-hero-bleed{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:calc(100% + 44px);height:290px;margin:0 -22px}
 .gs-hero-bleed img{object-position:65% 44%;mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.10) 8%,rgba(0,0,0,.76) 25%,#000 40%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.10) 8%,rgba(0,0,0,.76) 25%,#000 40%)}
 .gs-hero-proof{top:auto;left:12px;bottom:18px;gap:8px}
 .gs-hero-proof__item{min-width:166px;padding:7px 10px;gap:8px;border-radius:7px}
 .gs-hero-proof__item:nth-child(2){margin-left:7px}
 .gs-hero-proof__item:nth-child(3){margin-left:0}
 .gs-hero-proof__mark{flex-basis:26px;width:26px;height:26px;font-size:16px}
 .gs-hero-proof__item strong{font-size:13px}
 .gs-hero-proof__item small{font-size:12px}
 .gs-value-strip__grid{padding-top:12px;padding-bottom:12px}
 .gs-value-strip article,.gs-value-strip article:first-child{min-height:92px;padding:13px 0;gap:16px}
 .gs-value-icon{flex-basis:54px;width:54px;height:54px}
 .gs-value-icon svg{width:34px;height:34px}
 .gs-value-strip h2{font-size:21px}
 .gs-value-strip p{font-size:16px}
 .gs-home-section{padding:58px 0}
 .gs-section-heading h2{font-size:40px}
 .gs-featured-grid{grid-template-columns:1fr;gap:21px}
 .gs-feature-card__image,.gs-feature-card:nth-child(2) .gs-feature-card__image,.gs-feature-card:nth-child(3) .gs-feature-card__image{height:clamp(280px,84vw,430px)}
 .gs-feature-card__body{padding:18px}
 .gs-feature-card h3{font-size:27px}
 .gs-how-intro{margin-bottom:20px}
 .gs-how-intro h2{font-size:43px}
 .gs-how ol{grid-template-columns:1fr;gap:0}
 .gs-how li,.gs-how li:first-child{grid-template-columns:76px minmax(0,1fr);grid-template-rows:28px 1fr;min-height:140px;padding:17px 0;border-left:0;border-top:1px solid #ddd2c5}
 .gs-how li>span{font-size:20px}
 .gs-how__image{width:76px;height:104px}
 .gs-how__image--session{height:88px}
 .gs-how h3{font-size:21px}
 .gs-how p{font-size:15px}
 .gs-home-cta{min-height:0;padding:35px 0 255px}
 .gs-home-cta h2{font-size:40px}
 .gs-cta-copy>p:not(.gs-cta-kicker){font-size:16px}
 .gs-cta-photo{left:0;right:0;top:auto;bottom:0;width:100%;height:285px}
 .gs-cta-photo:after{background:linear-gradient(180deg,#174d49 0%,rgba(23,77,73,.94) 11%,rgba(23,77,73,.62) 30%,rgba(23,77,73,.08) 59%,transparent 75%)}
 .gs-search-suggestions a{font-size:13px}
}
@media(max-width:420px){
 .gs-hero-proof__item{min-width:154px}
 .gs-value-strip h2{font-size:20px}
 .gs-section-heading h2{font-size:36px}
 .gs-how h3{font-size:19px}
 .gs-home-cta h2{font-size:37px}
}

/* ---- Expert discovery (v0.3.0) ---- */
.gs-search-examples{margin:14px 0 0;color:var(--gs-muted);font-size:15px;line-height:1.6}
.gs-search-examples a{color:var(--gs-ink);text-decoration:underline;text-decoration-color:var(--gs-burnt);text-underline-offset:3px}
.gs-results-note{margin:-8px 0 20px;color:var(--gs-muted);font-size:15px}
.gs-result-card .gs-feature-card__image{height:clamp(220px,20vw,280px)}
.gs-matched{margin:14px 0 0;padding:10px 12px;background:#f3f7f4;border-left:3px solid #466850}
.gs-matched__label{margin:0 0 2px;color:#466850;font:700 12px/1.2 var(--gs-sans);letter-spacing:.08em;text-transform:uppercase}
.gs-matched__terms{margin:0;color:var(--gs-ink);font-size:15px;font-weight:600}
.gs-result-card .gs-feature-card__proof span{font-size:12px}
.gs-result-outcome{display:block;margin-top:6px;color:#466850;font:600 14px/1.4 var(--gs-sans)}
.gs-result-reason{margin:0 0 12px;color:var(--gs-muted);font-size:15px;line-height:1.5}
.gs-repeat--inline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px}
.gs-repeat--inline .gs-repeat__row{border-top:0;padding-top:0}
@media(max-width:700px){.gs-repeat--inline{grid-template-columns:minmax(0,1fr)}}

.gs-public{padding-bottom:20px}
.gs-xp{margin-top:14px;background:#fff;border:1px solid var(--gs-border);border-radius:10px;box-shadow:0 8px 25px rgba(42,32,22,.06);padding:clamp(20px,3.4vw,40px)}
.gs-xp--preview{margin-top:0;padding:20px;box-shadow:none;font-size:16px}
.gs-xp__head{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(200px,auto);gap:clamp(16px,3vw,32px);align-items:start;padding-bottom:24px;border-bottom:1px solid var(--gs-border)}
.gs-xp__portrait{width:clamp(110px,14vw,170px);aspect-ratio:5/6;border-radius:8px;overflow:hidden;background:#e9e1d7;display:grid;place-items:center;color:#51453b;font:500 44px var(--gs-serif)}
.gs-xp__portrait img{width:100%;height:100%;object-fit:cover;object-position:center 35%}
.gs-xp__portrait span{font-size:15px;font-family:var(--gs-sans)}
.gs-xp__name{margin:0 0 6px;font:600 clamp(30px,4vw,46px)/1.05 var(--gs-serif);letter-spacing:-.03em}
.gs-xp__descriptor{margin:0 0 6px;font-size:clamp(17px,1.6vw,20px);line-height:1.45;color:var(--gs-ink)}
.gs-xp__loc{margin:0 0 12px;color:var(--gs-muted);font-size:15px}
.gs-xp__expertise{margin:6px 0 0}
.gs-xp__price{padding:16px 18px;background:var(--gs-sand,#fffaf4);border:1px solid var(--gs-border);border-radius:8px}
.gs-xp__price-label{margin:0;color:var(--gs-muted);font-size:14px;font-weight:600}
.gs-xp__amount{margin:2px 0 6px;font:600 30px/1.1 var(--gs-serif)}
.gs-xp__breakdown summary{cursor:pointer;color:var(--gs-ink);font-size:14px;text-decoration:underline;text-underline-offset:3px;min-height:32px}
.gs-xp__breakdown dl{margin:8px 0 0}
.gs-xp__breakdown dl div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid var(--gs-border);font-size:14px}
.gs-xp__breakdown dd{margin:0;font-weight:600;white-space:nowrap}
.gs-xp__total{font-weight:700}
.gs-xp__block{padding-top:26px}
.gs-xp__label{margin:0 0 12px;color:#466850;font:700 13px/1.2 var(--gs-sans);letter-spacing:.09em;text-transform:uppercase}
.gs-xp__intro .gs-prose{max-width:68ch;font-size:17px}
.gs-xp__proofs{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.gs-xp__proof{padding:14px 16px;border:1px solid var(--gs-border);border-left:3px solid var(--gs-burnt);border-radius:6px;background:#fffdf9}
.gs-xp__proof-statement{margin:0 0 6px;font:600 18px/1.4 var(--gs-serif)}
.gs-xp__proof-meta{margin:0 0 4px;font-size:15px;color:var(--gs-ink)}
.gs-xp__proof-meta span{display:inline-block;min-width:76px;color:var(--gs-muted);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.gs-xp__proof-foot{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin:8px 0 0;font-size:14px}
.gs-xp__topics{color:var(--gs-muted)}
.gs-xp__convs li{font-size:17px}
.gs-xp__industries{margin:0;font-size:16px}
.gs-xp__slots{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.gs-xp__slots li{padding:7px 12px;border:1px solid var(--gs-border);border-radius:20px;font-size:15px}
.gs-xp--preview .gs-xp__head{grid-template-columns:auto minmax(0,1fr)}
.gs-xp--preview .gs-xp__price{grid-column:1/-1}
.gs-xp--preview .gs-xp__portrait{width:96px}
.gs-xp--preview .gs-xp__name{font-size:26px}
@media(max-width:860px){.gs-xp__head{grid-template-columns:auto minmax(0,1fr)}.gs-xp__price{grid-column:1/-1}}
@media(max-width:520px){.gs-xp__head{grid-template-columns:minmax(0,1fr)}.gs-xp__portrait{width:140px}}
.gs-result-card .gs-feature-card__proof:before{content:none}
.gs-result-card .gs-feature-card__foot{flex-wrap:wrap;align-items:flex-end}
.gs-result-card .gs-feature-card__foot strong{white-space:normal}
.gs-result-card .gs-feature-card__foot small{display:block;margin-top:3px;font-size:13px}
.gs-result-card .gs-feature-card__foot a{white-space:nowrap;font-size:14px}

/* ---- v0.4.0: approval = live, profile change review, booking ---- */
.gs-callout--pending{border-left:3px solid var(--gs-gold);background:var(--gs-gold-soft)}
.gs-review-hint{margin:12px 0 0}
.gs-xp__book .gs-xp__day{margin:0 0 14px}
.gs-xp__day-label{margin:0 0 8px;font-weight:600;font-size:15px}
.gs-xp__slots li{padding:0;border:0}
.gs-xp__slots a,.gs-xp__slots span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--gs-line);border-radius:22px;background:#fff;color:var(--gs-ink);font-size:15px;text-decoration:none}
.gs-xp__slots a:hover{border-color:var(--gs-gold);box-shadow:inset 0 0 0 1px var(--gs-gold)}
.gs-xp__none{margin:0;padding:14px 16px;border:1px dashed var(--gs-line);border-radius:6px;color:var(--gs-ink-2);font-size:16px}
.gs-xp__cta{margin:14px 0 0}
.gs-xp__cta .gs-button{width:100%;justify-content:center}
.gs-book__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:32px;align-items:start}
.gs-book__main{grid-column:1;grid-row:1;min-width:0}
.gs-book__summary{grid-column:2;grid-row:1;padding:20px;border:1px solid var(--gs-line);border-radius:8px;background:#fff}
.gs-book__expert{display:flex;gap:14px;align-items:center;margin:0 0 16px}
.gs-book__expert img{width:64px;height:76px;object-fit:cover;border-radius:6px;flex:0 0 auto}
.gs-book__name{margin:0;font-family:var(--gs-serif);font-size:20px;font-weight:600}
.gs-book__desc{margin:2px 0 0;color:var(--gs-ink-2);font-size:15px}
.gs-book__payment{margin:18px 0}
.gs-booking .gs-sum{margin:20px 0}
.gs-diff__cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.gs-diff__col{padding:12px 14px;border:1px solid var(--gs-line);border-radius:6px;background:#fff;min-width:0;overflow-wrap:anywhere}
.gs-diff__col--new{border-color:var(--gs-gold);background:var(--gs-gold-soft)}
.gs-diff__head{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gs-ink-2)}
.gs-sessions .gs-tag{margin-left:6px}
@media (max-width: 820px){
	.gs-book__layout{grid-template-columns:minmax(0,1fr);gap:20px}
	.gs-book__summary{grid-column:1;grid-row:1}
	.gs-book__main{grid-column:1;grid-row:2}
	.gs-diff__cols{grid-template-columns:minmax(0,1fr)}
}
.gs-book{padding-bottom:40px}

/* ---- v0.5.0: settings, payouts, sessions, join, staff views ---- */
.gs-settings-block{margin:0 0 40px;padding-top:24px;border-top:1px solid var(--gs-line)}
.gs-payout{margin:16px 0 20px;padding:16px 18px;border:1px solid var(--gs-line);border-radius:8px;background:#fff}
.gs-payout__status{margin:0 0 8px}
.gs-payout__masked{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em}
.gs-payout--verified{border-color:var(--gs-ok)}
.gs-payout--failed{border-color:var(--gs-bad)}
.gs-tag--bad{background:#f6e3df;color:var(--gs-bad)}
.gs-session-group{margin:0 0 28px}
.gs-join{margin:16px 0;padding:14px 16px;border-radius:8px;background:var(--gs-paper-2)}
.gs-join p{margin:0}
.gs-join--open{background:var(--gs-gold-soft)}
.gs-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.gs-table-wrap .gs-table{min-width:640px}
/* v0.25.3: staff Sessions stacks its rows on phones; a fixed minimum width there would clip the call names */
@media (max-width: 640px) { .gs-admin-sessions .gs-table-wrap .gs-table { min-width: 0; } .gs-admin-sessions .gs-table td { overflow-wrap: anywhere; } }
.gs-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 16px;align-items:end;margin:0 0 16px}
.gs-audit code{font-size:13px;white-space:nowrap}
.gs-audit__meta{font-size:14px;color:var(--gs-ink-2);overflow-wrap:anywhere}
.gs-pager{display:flex;gap:16px}
.gs-health{list-style:none;margin:0 0 24px;padding:0}
.gs-health__item{padding:12px 0;border-bottom:1px solid var(--gs-line)}

/* v0.5.0: spacing for the signed-in account links (only rendered when signed in) */
.gs-nav__account .gs-nav__name { margin: 0 14px; }
@media (max-width: 920px) { .gs-nav__account .gs-nav__name { margin: 0 14px 0 0; } }
/* Staff see 11 nav items; tighten the gap on desktop so they stay on one line. */
@media (min-width: 921px) { .gs-nav ul:has(> li:nth-child(11)) { gap: 18px; } }

/* v0.5.2 homepage fixes: sharp logo (SVG), hero badges off the face, bottom search layout */
.gs-brand img{width:auto;height:44px;max-height:none}
.gs-footer__brand img{width:auto;height:34px}
/* Hero badges sit over the wall/plants on the right, clear of her face */
.gs-hero-proof{top:auto;bottom:clamp(96px,14%,150px);left:auto;right:clamp(20px,3.2vw,56px);align-items:flex-end;gap:10px}
.gs-hero-proof__item,.gs-hero-proof__item:nth-child(2),.gs-hero-proof__item:nth-child(3){margin-left:0;transform:none;min-width:206px}
/* Bottom search: full-width field so the prompt is readable, button underneath */
.gs-cta-search{display:grid;grid-template-columns:1fr;gap:6px;max-width:600px;padding:6px}
.gs-cta-search input{min-height:50px;padding:0 14px;font-size:16px}
.gs-cta-search button{min-height:50px;justify-content:center}
.gs-cta-copy>p.gs-suggestions-label{margin:30px 0 12px;color:#efc28c;font-size:12px;font-weight:700;line-height:1.3;letter-spacing:.13em}
.gs-cta-copy>p.gs-cta-search__hint{display:none}
@media(max-width:700px){
 .gs-brand img{height:38px}
 .gs-footer__brand img{height:30px}
 /* On phones the badges sit under the photo instead of on top of her */
 .gs-hero-proof{position:relative;top:auto;right:auto;bottom:auto;left:auto;display:grid;grid-template-columns:1fr;gap:8px;margin:14px 0 26px;align-items:stretch}
 .gs-hero-proof__item{min-width:0}
 /* The full prompt doesn't fit inside a phone-width field, so show it above the field instead */
 .gs-cta-copy>p.gs-cta-search__hint{display:block;margin:0 0 8px;color:#fff;font-size:15px;line-height:1.4}
 .gs-cta-search input::placeholder{color:transparent}
}
/* Tablet: keep the photo to the right of the text so the copy doesn't sit on her face */
@media(min-width:701px) and (max-width:920px){
 .gs-hero-bleed{left:46%}
 .gs-hero-bleed img{object-position:52% center}
 .gs-public-hero__copy{width:56%}
}

/* v0.5.5: payout account check, read-only name, Expert admin actions */
.gs-payout-check { margin: 18px 0 0; padding: 18px 20px; border: 1px solid var(--gs-border, #e3d9cc); border-radius: 6px; background: #fffdf9; }
.gs-payout-check .gs-h3 { margin-top: 0; }
.gs-payout-check__name { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.gs-readonly { display: block; padding: 10px 0 4px; font-weight: 600; }
.gs-expert-admin li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; }
.gs-expert-admin form { margin: 0; }
.gs-inline-action summary { cursor: pointer; color: var(--gs-bad, #a3341f); font-weight: 600; }
.gs-inline-action[open] { flex-basis: 100%; padding: 10px 0; }

/* ---- v0.5.7 Become an Expert (copy rewrite; no pricing section) ---- */
.gs-recruit-copy > p.gs-recruit-copy__close { color: #fff; font-weight: 700; }
.gs-bx .gs-prose > p { max-width: 640px; }
.gs-bx__lead { color: var(--gs-ink); font: 400 clamp(21px, 1.9vw, 24px)/1.4 var(--gs-serif); letter-spacing: -.01em; }
.gs-bx__pull { margin: 1.6em 0 0; padding: 4px 0 4px 20px; border-left: 3px solid var(--gs-burnt); color: var(--gs-ink); font: italic 400 clamp(21px, 2vw, 25px)/1.4 var(--gs-serif); }
.gs-bx__kicker { margin: 1.8em 0 .4em; color: #a9441f; font: 700 12px/1.4 var(--gs-sans); letter-spacing: .16em; text-transform: uppercase; }
.gs-bx__quotes { margin: 0 0 1.6em; padding: 0; list-style: none; border-top: 1px solid var(--gs-line); }
.gs-bx__quotes li { padding: 14px 0; border-bottom: 1px solid var(--gs-line); color: var(--gs-ink); font: 400 clamp(18px, 1.6vw, 21px)/1.45 var(--gs-serif); }
.gs-bx__strong { color: var(--gs-ink); font-weight: 700; }
.gs-bx__steps .gs-steps__n { color: var(--gs-burnt); font-size: 34px; letter-spacing: -.02em; }
.gs-bx__steps p + p { margin-top: .6em; }
.gs-bx__anchor { margin: .2em 0 .9em; color: #a9441f; font: 400 clamp(32px, 3.6vw, 46px)/1.1 var(--gs-serif); letter-spacing: -.02em; }
.gs-bx__criteria { margin-top: 0; }

.gs-bx-final { background: #1c4a3e; color: #e8efe9; }
.gs-bx-final__inner { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 32px clamp(40px, 6vw, 96px); padding-top: clamp(56px, 7vw, 100px); padding-bottom: clamp(56px, 7vw, 100px); }
.gs-bx-final h2 { margin: 0; color: #fffaf4; font: 400 clamp(32px, 3.6vw, 50px)/1.1 var(--gs-serif); letter-spacing: -.025em; text-wrap: balance; }
.gs-bx-final__copy p { margin: 0 0 1em; max-width: 34em; font: 400 17px/1.65 var(--gs-sans); }
.gs-bx-final__asks { margin: 0 0 1.4em; padding: 0; list-style: none; }
.gs-bx-final__asks li { margin: 0 0 10px; padding-left: 18px; border-left: 2px solid #e7c38a; color: #fffaf4; font: 400 clamp(19px, 1.7vw, 22px)/1.4 var(--gs-serif); }
.gs-bx-final__action { margin-top: 30px !important; }
.gs-bx-final__button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 54px; padding: 0 28px; border-radius: 3px; background: #b04a25; color: #fff; font: 700 16px/1.2 var(--gs-sans); text-decoration: none; transition: background .15s; }
.gs-bx-final__button:hover, .gs-bx-final__button:focus-visible { background: #8e3a1b; color: #fff; }
.gs-bx-final__button:focus-visible { outline: 3px solid #fffaf4; outline-offset: 3px; }
.gs-bx-final__copy p.gs-bx-final__note { margin-top: 16px; color: #cfe0d8; font-size: 14px; }
@media (max-width: 900px) {
	.gs-bx-final__inner { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
	.gs-bx-final__button { width: 100%; }
	.gs-bx__pull { padding-left: 16px; }
}
@media (prefers-reduced-motion: reduce) { .gs-bx-final__button { transition: none; } }

/* ---- v0.5.7 application fee confirmation ---- */
.gs-feecheck { width: min(520px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: auto; border: 0; border-radius: 6px; background: #fffdf9; color: var(--gs-ink); box-shadow: 0 24px 60px rgba(32, 29, 25, .28); }
.gs-feecheck::backdrop { background: rgba(32, 29, 25, .55); }
.gs-feecheck__inner { padding: clamp(22px, 5vw, 32px); }
.gs-feecheck h2 { margin: 0 0 14px; font: 400 clamp(26px, 6vw, 30px)/1.15 var(--gs-serif); letter-spacing: -.015em; }
.gs-feecheck p { margin: 0 0 12px; font-size: 16px; line-height: 1.6; }
.gs-feecheck__sum { margin: 18px 0; padding: 4px 16px; border-radius: 4px; background: #f7eee5; }
.gs-feecheck__sum div { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--gs-line); font-size: 15px; }
.gs-feecheck__sum div:last-child { border-bottom: 0; }
.gs-feecheck__sum dt { color: var(--gs-ink-2); }
.gs-feecheck__sum dd { margin: 0; color: var(--gs-ink); font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gs-feecheck__sum .is-total dt, .gs-feecheck__sum .is-total dd { color: var(--gs-ink); font-weight: 700; }
.gs-feecheck__ack { display: flex; gap: 12px; align-items: flex-start; margin: 18px 0 20px; padding: 14px; border: 1px solid var(--gs-line); border-radius: 4px; cursor: pointer; font-weight: 600; }
.gs-feecheck__ack input { flex: 0 0 auto; width: 22px; height: 22px; margin: 1px 0 0; accent-color: #b04a25; }
.gs-feecheck__actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.gs-feecheck__actions .gs-button { min-height: 48px; }
.gs-feecheck__actions .gs-button--primary:disabled { opacity: .45; cursor: not-allowed; }
.gs-feecheck--inline { width: auto; max-height: none; margin: 0 0 28px; border: 1px solid var(--gs-line); box-shadow: none; }
@media (max-width: 480px) {
	.gs-feecheck__actions { flex-direction: column; align-items: stretch; }
	.gs-feecheck__actions .gs-button { width: 100%; }
}

/* ---- v0.6.0: verified reviews on the public profile; no-show; staff moderation ---- */
.gs-xp__rating{margin:0 0 12px;font-size:15px}
.gs-xp__rating a{color:var(--gs-ink-2);text-decoration:none}
.gs-xp__rating a:hover{text-decoration:underline}
.gs-xp__stars{color:#a9441f;font-weight:700}
.gs-xp__reviews-sum{margin:0 0 14px;color:var(--gs-ink-2);font-size:15px}
.gs-xp__reviews-sum strong{color:var(--gs-ink);font:600 20px/1 var(--gs-serif)}
.gs-xp__review-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px}
.gs-xp__review{margin:0;padding:16px 18px;border:1px solid var(--gs-border);border-radius:6px;background:#fffdf9}
.gs-xp__review-rating{margin:0 0 6px;color:#a9441f;font-size:15px;letter-spacing:.12em}
.gs-xp__review-text{margin:0 0 8px;padding:0;border:0;font:400 17px/1.5 var(--gs-serif);color:var(--gs-ink)}
.gs-xp__review-text p{margin:0 0 6px}
.gs-xp__review-meta{margin:0;color:var(--gs-muted);font-size:13px}
.gs-no-show{margin:0 0 18px;padding:12px 16px;border:1px solid var(--gs-line);border-radius:6px;background:#fff}
.gs-no-show summary{cursor:pointer;min-height:32px;font-weight:600}
.gs-no-show--row{box-sizing:border-box;max-width:100%;margin:6px 0 0;padding:6px 10px;font-size:14px}
.gs-mod-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none}
.gs-mod-filter a{display:inline-flex;align-items:center;min-height:40px;padding:6px 14px;border:1px solid var(--gs-line);border-radius:20px;color:var(--gs-ink);text-decoration:none;font-size:14px}
.gs-mod-filter a[aria-current="page"]{border-color:var(--gs-ink);background:var(--gs-ink);color:#fff}
.gs-mod-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.gs-mod{padding:16px 18px;border:1px solid var(--gs-line);border-radius:6px;background:#fff}
.gs-mod--hidden{background:var(--gs-paper-2)}
.gs-mod__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin:0 0 8px}
.gs-mod__who{margin:0;font-weight:600}
.gs-mod__meta{margin:0;color:var(--gs-muted);font-size:14px}
.gs-mod__text{margin:0 0 10px;max-width:70ch;font-size:16px}
.gs-mod__actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.gs-mod form{margin:0}

/* ---- v0.8.0 shareable links (Expert dashboard) ---- */
.gs-share { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; max-width: 720px; }
.gs-share__url { flex: 1 1 280px; min-width: 0; min-height: 48px; padding: 0 14px; border: 1.5px solid #bfb3a0; border-radius: 2px; background: #fff; color: var(--gs-ink); font: 500 16px/1.2 var(--gs-sans); }
.gs-share__url:focus { border-color: var(--gs-ink); outline: 3px solid rgba(31,95,191,.25); outline-offset: 0; }
.gs-share__copy { min-height: 48px; }
.gs-share__open { font-size: 15px; font-weight: 600; }
/* v0.22.0: page address field with its fixed start */
.gs-slug, .gs-field label.gs-slug { display: flex; flex-wrap: wrap; align-items: stretch; max-width: 620px; border: 1.5px solid #bfb3a0; border-radius: 2px; background: #f6f1e7; cursor: text; }
.gs-slug:focus-within { border-color: var(--gs-ink); outline: 3px solid rgba(31,95,191,.25); }
.gs-slug__base, .gs-slug__end { display: flex; align-items: center; padding: 0 2px 0 12px; color: var(--gs-ink-2); font-size: 15px; white-space: nowrap; }
.gs-slug__end { padding: 0 12px 0 2px; }
.gs-slug__edit { display: flex; align-items: center; flex: 1 1 10em; min-width: 8em; margin: 5px 0; background: #fff; border-bottom: 2px dashed var(--gs-accent, #c5532b); }
.gs-slug:hover .gs-slug__edit, .gs-slug:focus-within .gs-slug__edit { border-bottom-style: solid; }
.gs-slug__pen { flex: 0 0 auto; margin: 0 8px 0 4px; color: var(--gs-accent, #c5532b); }
.gs-field .gs-slug input { flex: 1 1 auto; min-width: 0; border: 0 !important; outline: 0 !important; box-shadow: none !important; background: transparent; padding-left: 6px; font-weight: 600; color: var(--gs-ink); }
.gs-slug__guide { display: block; max-width: 620px; margin-top: 8px; padding: 10px 12px; border-left: 3px solid var(--gs-accent, #c5532b); background: #fbf7f0; font-size: 15px; line-height: 1.45; color: var(--gs-ink); }
.gs-slug-field .gs-hint { margin-top: 8px; }
.gs-share__status { flex-basis: 100%; min-height: 1px; color: var(--gs-ok); font-size: 14px; font-weight: 600; }
.gs-share__status:empty { display: none; }
.gs-sharebox { margin: 0 0 28px; padding: clamp(18px, 3vw, 26px); border: 1px solid var(--gs-line); border-left: 4px solid #c4552d; border-radius: 4px; background: #fffdf9; }
.gs-sharebox h2 { margin: 0 0 4px; font: 400 clamp(22px, 2.4vw, 26px)/1.2 var(--gs-serif); }
.gs-sharebox > p { margin: 0 0 14px; color: var(--gs-ink-2); font-size: 16px; }
.gs-sharebox__off { margin: 0 !important; color: var(--gs-bad) !important; font-weight: 600; }

/* ---- v0.9.0 availability periods, Offer booking, mentorships ---- */
.gs-row-4 { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) auto; gap: 0 16px; align-items: end; }
@media (max-width: 640px) { .gs-row-4 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .gs-row-4 .gs-field:first-child, .gs-row-4 .gs-field--action { grid-column: 1 / -1; } }
.gs-days { display: grid; gap: 4px; }
.gs-days .gs-xp__day { padding: 12px 0; border-bottom: 1px solid var(--gs-line); }
.gs-days .gs-xp__slots { gap: 6px; }
.gs-days .gs-xp__slots a { min-height: 44px; padding: 6px 14px; }
.gs-mentor { margin: 0 0 28px; padding: clamp(18px, 3vw, 26px); border: 1px solid var(--gs-line); border-radius: 4px; background: #fffdf9; }
.gs-mentor h2, .gs-mentor h3 { margin: 0 0 6px; }
.gs-mentor__progress { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 8px 0 14px; color: var(--gs-ink-2); font-size: 15.5px; }
.gs-mentor__progress strong { color: var(--gs-ink); }
.gs-mentor__bar { display: flex; gap: 4px; margin: 0 0 14px; }
.gs-mentor__bar span { flex: 1 1 0; height: 8px; border-radius: 2px; background: #eadfce; }
.gs-mentor__bar span.is-done { background: #1c4a3e; }
.gs-mentor__bar span.is-booked { background: #c4552d; }
.gs-mentor__list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--gs-line); }
.gs-mentor__list li { display: flex; flex-wrap: wrap; gap: 4px 14px; align-items: baseline; padding: 12px 0; border-bottom: 1px solid var(--gs-line); }
.gs-mentor__list .gs-mentor__n { min-width: 88px; font-weight: 700; }
.gs-mentor__note { margin: 14px 0 0; padding: 12px 14px; border-left: 3px solid #c4552d; background: #f4e9dc; }
.gs-offer-line { margin: -12px 0 18px; color: var(--gs-ink-2); font-size: 16px; }
.gs-sessions .gs-offer-tag { display: block; color: var(--gs-ink-2); font-size: 14.5px; }
.gs-mentor .gs-sum dd, .gs-book__summary .gs-sum dd { white-space: normal; text-align: right; overflow-wrap: anywhere; }
.gs-days__more summary { min-height: 44px; display: flex; align-items: center; font-weight: 700; cursor: pointer; }

/* ===== v0.11.0 Become an Expert: hero lede, the mechanism, product illustration ===== */
.gs-bx2-hero .gs-recruit-copy > p.gs-bx2-hero__lede { max-width: 500px; color: #fff6ef; font-size: 19px; line-height: 1.55; }
.gs-bx2-hero .gs-recruit-copy > p.gs-bx2-hero__note { margin: 14px 0 0; color: #ffe6d6; font-size: 14px; }
.gs-bx2-how { padding: clamp(48px, 7vw, 96px) 0; background: var(--gs-paper, #fffdf9); border-bottom: 1px solid var(--gs-border, #e8dfd5); }
.gs-bx2-how__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(32px, 6vw, 88px); align-items: start; }
.gs-bx2-eyebrow { margin: 0 0 12px; color: var(--gs-burnt, #c5532b); font: 700 12px/1.3 var(--gs-sans); letter-spacing: .18em; text-transform: uppercase; }
.gs-bx2-title { max-width: 560px; margin: 0 0 28px; color: var(--gs-ink, #25231f); font: 600 clamp(32px, 3.6vw, 46px)/1.08 var(--gs-serif); letter-spacing: -.035em; }
.gs-bx2-steps { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--gs-ink, #25231f); }
.gs-bx2-steps li { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--gs-border, #e8dfd5); }
.gs-bx2-steps__n { color: var(--gs-burnt, #c5532b); font: 400 26px/1.1 var(--gs-serif); }
.gs-bx2-steps h3 { margin: 0 0 4px; color: var(--gs-ink, #25231f); font: 600 21px/1.25 var(--gs-serif); letter-spacing: -.015em; }
.gs-bx2-steps p { margin: 0; max-width: 52ch; color: var(--gs-muted, #615c56); font-size: 16.5px; line-height: 1.55; }
.gs-bx2-steps li:last-child { border-bottom: 0; }
.gs-bx2-steps li:last-child h3 { color: var(--gs-teal, #174d49); }
.gs-bx2-verify { margin: 18px 0 0; padding: 12px 14px; border-left: 3px solid var(--gs-teal, #174d49); background: #eef3ef; color: var(--gs-ink, #25231f); font-size: 15px; line-height: 1.5; }
.gs-bx2-demo { position: sticky; top: 24px; margin: 0; padding: clamp(18px, 3vw, 30px); border-radius: 6px; background: #f4e9dc; }
.gs-bx2-demo__link { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; align-items: center; padding: 16px 18px; border-radius: 4px; background: var(--gs-teal, #174d49); color: #fff; }
.gs-bx2-demo__label { grid-column: 1 / -1; color: #cfe0d6; font: 700 11px/1.2 var(--gs-sans); letter-spacing: .14em; text-transform: uppercase; }
.gs-bx2-demo__url { min-width: 0; overflow-wrap: anywhere; font: 500 16px/1.3 var(--gs-sans); }
.gs-bx2-demo__url b { color: #ffd9b8; }
.gs-bx2-demo__copy { padding: 8px 12px; border-radius: 3px; background: #fffdf9; color: var(--gs-ink, #25231f); font: 700 13px/1 var(--gs-sans); white-space: nowrap; }
.gs-bx2-demo__cards { display: grid; gap: 12px; margin: 14px 0; }
.gs-bx2-demo__card { display: grid; gap: 6px; padding: 18px; border: 1px solid #e3d5c4; border-radius: 4px; background: #fffdf9; }
.gs-bx2-demo__type { color: var(--gs-teal, #174d49); font: 700 11.5px/1.3 var(--gs-sans); letter-spacing: .1em; text-transform: uppercase; }
.gs-bx2-demo__title { color: var(--gs-ink, #25231f); font: 400 22px/1.2 var(--gs-serif); }
.gs-bx2-demo__price { color: var(--gs-muted, #615c56); font: 600 15px/1.2 var(--gs-sans); }
.gs-bx2-demo__where { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.gs-bx2-demo__where span { padding: 6px 11px; border-radius: 99px; background: #fffdf9; color: var(--gs-ink, #25231f); font: 600 13px/1.2 var(--gs-sans); }
.gs-bx2-demo__where span:last-child { background: var(--gs-burnt, #c5532b); color: #fff; }
@media (max-width: 860px) {
	.gs-bx2-how__grid { grid-template-columns: minmax(0, 1fr); }
	.gs-bx2-demo { position: static; }
	.gs-bx2-steps li { grid-template-columns: 40px minmax(0, 1fr); }
	.gs-bx2-steps__n { font-size: 22px; }
}
@media (max-width: 420px) {
	.gs-bx2-demo__link { grid-template-columns: minmax(0, 1fr); }
	.gs-bx2-demo__copy { justify-self: start; }
}
/* v0.15.0 staff marketplace screen */
.gs-mk__item { padding: 16px 0; border-bottom: 1px solid var(--gs-line); }
.gs-mk__line { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: baseline; margin: 0 0 10px; }
.gs-mk__actions { display: flex; flex-wrap: wrap; gap: 8px 24px; align-items: flex-start; }
.gs-mk__actions > form { flex: 1 1 280px; max-width: 420px; }
.gs-mk__actions .gs-inline-action > summary, .gs-expert-admin .gs-inline-action > summary { display: inline-flex; align-items: center; min-height: 44px; cursor: pointer; }

/* v0.16.0 — booking source and earnings on the Expert's session page */
.gs-source { max-width: 420px; margin: 4px 0 24px; }
.gs-source__who { margin: 0 0 4px; font-weight: 700; }
.gs-source .gs-sum { margin: 0; }

/* v0.18.0 — footer legal links (Privacy Policy, Terms of Service) on public pages */
.gs-footer__legal{display:flex;flex-wrap:wrap;gap:8px 20px}.gs-footer__legal a{color:var(--gs-muted);font-size:12px;font-weight:600;text-decoration:none}.gs-footer__legal a:hover{color:var(--gs-burnt);text-decoration:underline}

/* v0.20.0 Staff Settings: Offer formats and session reminders */
.gs-settings__section { margin: 0 0 40px; }
.gs-settings__card { margin: 16px 0; padding: 18px 20px; border: 1px solid var(--gs-line); border-radius: 4px; background: #fff; }
.gs-settings__name { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 4px; font-size: 19px; }
.gs-settings__states { margin: 14px 0 6px; padding: 0; border: 0; }
.gs-settings__state { display: flex; gap: 10px; align-items: flex-start; padding: 10px 0; border-top: 1px solid var(--gs-line); cursor: pointer; }
.gs-settings__state input { flex: none; width: 20px; height: 20px; margin: 2px 0 0; }
.gs-settings__state .gs-hint { display: block; margin-top: 2px; }
.gs-settings__confirm label { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; }
.gs-settings__confirm input { flex: none; width: 20px; height: 20px; margin: 2px 0 0; }
.gs-settings select { min-height: 44px; max-width: 100%; }
/* v0.21.0 — Pricing & Fees (staff only) */
.gs-pct { display: inline-flex; align-items: center; gap: 8px; margin-top: 6px; }
.gs-pct input { width: 7.5em; min-height: 44px; font-variant-numeric: tabular-nums; }
.gs-pricing .gs-field:not(.gs-settings__confirm) > label { font-weight: 700; }
.gs-pricing .gs-field .gs-hint { display: block; margin-top: 2px; }
.gs-pricing__label { margin: 0; font-weight: 700; }
.gs-pricing__value { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin: 4px 0 2px; }
.gs-pricing__value strong { font-size: 22px; font-variant-numeric: tabular-nums; }
.gs-pricing__example { margin: 20px 0; padding: 16px 18px; border: 1px solid var(--gs-line); border-radius: 4px; background: var(--gs-paper); }
.gs-pricing__title { margin: 0 0 8px; color: var(--gs-ink-2); font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.gs-pricing__title--history { margin-top: 28px; }
.gs-pricing__sum { margin: 0 0 12px; }
.gs-pricing__sum > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 16px; padding: 6px 0; border-bottom: 1px solid var(--gs-line); }
.gs-pricing__sum dd { margin: 0; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gs-pricing__listed strong { font-size: 22px; }
.gs-pricing__routes { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px 24px; }
.gs-pricing__routes h4 { margin: 4px 0 4px; font-size: 16px; }
.gs-pricing__routes ul { margin: 0; padding: 0; list-style: none; }
.gs-pricing__routes li { padding: 3px 0; }
.gs-pricing__routes strong { font-variant-numeric: tabular-nums; white-space: nowrap; }
.gs-pricing__flat { margin: 8px 0 0; padding: 0; list-style: none; } /* v0.23.0 */
.gs-pricing__flat li { padding: 3px 0; }
.gs-pricing__flat strong { font-variant-numeric: tabular-nums; white-space: nowrap; }

/* v0.23.0 — pre-payment acknowledgement */
.gs-ack { margin: 20px 0 8px; padding: 16px 18px; border: 1px solid var(--gs-line, rgba(0,0,0,.12)); border-radius: 12px; background: var(--gs-paper, #fffdf8); }
.gs-ack__h { margin: 0 0 6px; font-weight: 700; }
.gs-ack ul { margin: 0 0 8px; padding-left: 20px; }
.gs-ack li { margin: 4px 0; }
.gs-ack .gs-check { margin: 0; }

/* v0.23.0 — session changes and refund requests */
.gs-cs-change, .gs-cs-refund { margin: 28px 0; padding-top: 20px; border-top: 1px solid var(--gs-line); }
.gs-cs-change .gs-hint { margin-top: -4px; }
.gs-cs-cancel-box summary, .gs-cs-refund-box summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; font-weight: 600; }
.gs-cs-cancel-box[open], .gs-cs-refund-box[open] { padding-bottom: 8px; }
.gs-cs-refund fieldset { border: 0; padding: 0; margin: 0 0 12px; }
.gs-cs-refund legend { font-weight: 600; margin-bottom: 4px; }
.gs-cs-case { margin: 0 0 8px; }

/* v0.23.0 — payouts notice and earnings */
.gs-payout-notice { margin: 8px 0 16px; padding: 12px 14px; background: var(--gs-paper-2); border-radius: 10px; }
.gs-earn-sum { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin: 0 0 16px; }
.gs-earn-sum div { padding: 10px 12px; border: 1px solid var(--gs-line); border-radius: 10px; }
.gs-earn-sum dt { font-size: .875rem; }
.gs-earn-sum dd { margin: 2px 0 0; font-weight: 700; font-variant-numeric: tabular-nums; }
.gs-earn-list { list-style: none; margin: 0; padding: 0; }
.gs-earn-list li { display: grid; grid-template-columns: 1fr auto; gap: 2px 12px; padding: 12px 0; border-top: 1px solid var(--gs-line); }
.gs-earn-list__a { font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gs-earn-list__s { grid-column: 1 / -1; font-size: .875rem; }

/* v0.23.0 — staff finance */
.gs-finance section { margin: 28px 0; }
.gs-fin-case { padding: 14px 0; border-top: 1px solid var(--gs-line); }
.gs-fin-row { border-top: 1px solid var(--gs-line); padding: 10px 0; }
.gs-fin-row > summary { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 12px; cursor: pointer; min-height: 44px; align-items: center; }
.gs-fin-actions { display: grid; gap: 8px; margin-top: 8px; }
.gs-fin-actions details > summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; }
.gs-cs-grounds { border: 0; padding: 0; margin: 0 0 12px; }
.gs-cs-grounds legend { font-weight: 600; margin-bottom: 4px; }
/* v0.26.0 — refund-form choices: each a clear option with a visible selected state. */
.gs-cs-grounds .gs-check { margin: 0 0 8px; }
.gs-cs-grounds .gs-check label { padding: 10px 12px; border: 1px solid var(--gs-line); border-radius: 3px; background: var(--gs-paper); }
.gs-cs-grounds .gs-check label:hover { border-color: var(--gs-ink-2); }
.gs-cs-grounds .gs-check label:has(input:checked) { border-color: var(--gs-burnt, var(--gs-gold-ink)); background: var(--gs-gold-soft); box-shadow: inset 3px 0 0 var(--gs-burnt, var(--gs-gold-ink)); }
.gs-cs-grounds .gs-check input { accent-color: var(--gs-burnt, var(--gs-ink)); }
.gs-fin-row .gs-sum div, .gs-fin-row .gs-sum dd, .gs-fin-row .gs-sum dt { min-width: 0; overflow-wrap: anywhere; }
.gs-finance .gs-table-wrap { max-width: 100%; overflow-x: auto; }
.gs-fin-row .gs-sum dd { white-space: normal; }
.gs-fin-row .gs-sum dt { flex-shrink: 0; }

/* v0.24.0 — Before you pay (definition list) and the policy dialog */
.gs-ack__list { margin: 0 0 10px; }
.gs-ack__list div { padding: 6px 0; }
.gs-ack__list dt { font-weight: 700; }
.gs-ack__list dd { margin: 2px 0 0; }
.gs-ack__more { margin: 4px 0 10px; }
.gs-ack__more a { display: inline-flex; align-items: center; min-height: 44px; }
.gs-policy-dialog { width: min(720px, calc(100vw - 24px)); max-height: calc(100vh - 32px); padding: 0; border: 1px solid var(--gs-line); border-radius: 14px; background: var(--gs-paper); color: inherit; }
.gs-policy-dialog::backdrop { background: rgba(20, 20, 20, .45); }
.gs-policy-dialog__head { position: sticky; top: 0; display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 16px; background: var(--gs-paper); border-bottom: 1px solid var(--gs-line); }
.gs-policy-dialog__head h2 { margin: 0; font-size: 1.15rem; }
.gs-policy-dialog__body { padding: 8px 16px 20px; overflow-wrap: anywhere; }
.gs-policy-dialog__body h3 { font-size: 1rem; margin: 18px 0 4px; }
.gs-policy-box { margin: 12px 0 16px; padding: 14px 16px; border: 1px solid var(--gs-line); border-radius: 12px; background: var(--gs-paper-2); }
.gs-policy-box h3 { margin: 0 0 6px; font-size: 1rem; }
.gs-policy-box ul { margin: 0 0 8px; padding-left: 20px; }
.gs-policy-box li { margin: 4px 0; }
.gs-xcancel-choice { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); margin: 10px 0; }

/* v0.24.0 — staff Flutterwave environment indicator */
.gs-env-banner { margin: 0 0 1.25rem; padding: .7rem 1rem; border: 1px solid var(--gs-line, #d9d3c7); border-left-width: 4px; border-radius: 6px; font-size: .95rem; }
.gs-env-banner--sandbox { border-left-color: #b7791f; background: #fdf6e7; }
.gs-env-banner--refused { border-left-color: #b42318; background: #fdecea; }

/* v0.24.4 — Flutterwave Sandbox payout testing (staff Finance only; never rendered outside the Sandbox) */
.gs-sandbox-tools { margin: 0 0 1.25rem; padding: .8rem 1rem; border: 1px dashed #b7791f; border-radius: 8px; background: #fdf6e7; }
.gs-sandbox-tools .gs-h3, .gs-sandbox-tools .gs-h4 { margin-top: 0; }
.gs-sandbox-tools form { margin: 0; }
.gs-sandbox-tag { display: inline-block; padding: 1px 8px; border-radius: 999px; background: #b7791f; color: #fff; font-size: .75rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; vertical-align: middle; }
.gs-fin-row .gs-sum dt { flex: 0 1 45%; }
.gs-fin-row .gs-sum dd { flex: 1 1 55%; text-align: right; overflow-wrap: break-word; }
.gs-state-code { display: inline-block; padding: 0 6px; border: 1px solid var(--gs-line, #d9d3c7); border-radius: 4px; font-size: .72rem; letter-spacing: .04em; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }

/* v0.24.1 — Pay with Bank Transfer */
.gs-transfer { margin: 0; }
.gs-transfer__details { display: grid; gap: .5rem; margin: 1rem 0; padding: 1rem; border: 1px solid var(--gs-line); border-radius: 8px; background: var(--gs-paper); }
.gs-transfer__details div { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.gs-transfer__details dt { color: var(--gs-ink-2); }
.gs-transfer__details dd { margin: 0; font-weight: 600; }
.gs-transfer__acct { font-size: 1.25rem; letter-spacing: .06em; font-variant-numeric: tabular-nums; user-select: all; }

/* v0.24.2 — Sandbox verification result (test data, never shown as real verification) */
.gs-payout-check__sandbox { margin: .75rem 0; padding: .85rem 1rem; border: 1px solid var(--gs-line); border-left: 4px solid #b7791f; border-radius: 6px; background: #fdf6e7; }
.gs-payout-check__sandbox p { margin: .35rem 0; }
.gs-payout-check__label { font-size: .8rem; letter-spacing: .06em; text-transform: uppercase; font-weight: 700; color: #7a4f10; }

/* v0.24.2 — Show/Hide password (space reserved, so nothing moves when the button appears) */
.gs-pw { position: relative; display: block; }
.gs-pw > input, .gs-field .gs-pw > input:not([type=checkbox]):not([type=file]) { width: 100%; padding-right: 52px; box-sizing: border-box; }
.gs-pw__toggle { position: absolute; top: 50%; right: 4px; transform: translateY(-50%); width: 44px; height: 44px; max-height: calc(100% - 4px); display: inline-flex; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 6px; background: transparent; color: var(--gs-ink-2); cursor: pointer; }
.gs-pw__toggle[hidden] { display: none; }
.gs-pw__toggle:hover { color: var(--gs-ink); }
.gs-pw__toggle:focus-visible { outline: 3px solid rgba(31,95,191,.35); outline-offset: 0; }
.gs-pw__toggle .gs-pw__eye-off { display: none; }
.gs-pw__toggle.is-showing .gs-pw__eye { display: none; }
.gs-pw__toggle.is-showing .gs-pw__eye-off { display: block; }

/* v0.24.2 — password screens share the sign-in look (no site header/footer) */
.gs-route-password-forgot .gs-header,.gs-route-password-forgot .gs-footer,.gs-route-password-reset .gs-header,.gs-route-password-reset .gs-footer,.gs-route-signout .gs-header,.gs-route-signout .gs-footer{display:none}
.gs-route-password-forgot .gs-main,.gs-route-password-reset .gs-main,.gs-route-signout .gs-main{padding:0}
.gs-auth-form-wrap .gs-field { margin: 0 0 16px; }
.gs-auth-done { margin: 0 0 18px; }
.gs-auth-intro p{overflow-wrap:anywhere}

/* v0.25.0 — Group Sessions and Cohorts */
.gs-of-sched { display: grid; gap: 14px; margin-top: 18px; }
.gs-of-schedule { margin: 0; padding: 0; border: 0; min-width: 0; }
.gs-of-schedule legend { font-weight: 700; margin-bottom: 4px; padding: 0; }
.gs-of-schedule__row { display: grid; grid-template-columns: 28px minmax(0, 1fr) minmax(0, 1fr) auto; gap: 8px; align-items: center; margin: 0 0 8px; }
.gs-of-schedule__remove { min-height: 44px; padding: 0 4px; }
.gs-of-schedule__remove[hidden], .gs-of-schedule__msg[hidden], .gs-of-schedule__add[hidden] { display: none; }
.gs-of-schedule__msg { grid-column: 2 / -1; margin: -2px 0 4px; color: var(--gs-bad, #9a2f22); font-weight: 600; font-size: .9375rem; }
.gs-of-schedule__row.is-invalid input[aria-invalid="true"] { border-color: var(--gs-bad, #9a2f22); box-shadow: 0 0 0 1px var(--gs-bad, #9a2f22); }
.gs-of-schedule__add { margin: 4px 0 8px; }
.gs-of-schedule__add button { min-height: 44px; font-weight: 600; }
.gs-of-schedule__row[hidden], .gs-of-schedule__more[hidden] { display: none; }
.gs-of-schedule__row label { display: block; margin: 0; min-width: 0; }
.gs-of-schedule__row input { width: 100%; min-width: 0; min-height: 44px; }
.gs-of-schedule__n { color: var(--gs-ink-2); font-variant-numeric: tabular-nums; font-weight: 700; text-align: center; }
.gs-of-schedule__more > summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; font-weight: 600; }
.gs-of-schedule__fixed { margin: 6px 0 8px; padding-left: 22px; }
.gs-of-schedule__fixed li { margin: 4px 0; }
.gs-of-sched__terms p { margin: 0 0 8px; }
.gs-op-dates, .gs-seat-dates__list, .gs-om__sessions { list-style: none; margin: 0 0 12px; padding: 0; border-top: 1px solid var(--gs-line); }
.gs-op-dates li, .gs-seat-dates__list li { display: flex; flex-wrap: wrap; gap: 4px 14px; padding: 10px 0; border-bottom: 1px solid var(--gs-line); overflow-wrap: anywhere; }
.gs-op-dates__n, .gs-seat-dates__n { flex: 0 0 auto; min-width: 84px; color: var(--gs-ink-2); font-weight: 700; }
.gs-seat-dates__list li.is-cancelled { color: var(--gs-ink-2); text-decoration: line-through; }
.gs-seat-dates__list li.is-past { color: var(--gs-ink-2); }
.gs-seat-dates { margin: 0 0 22px; }
.gs-seat__status { font-weight: 700; }
.gs-seat-sum { max-width: 520px; }
.gs-seat-actions { margin: 26px 0; }
.gs-seat-cases { margin: 0 0 18px; padding-left: 20px; }
.gs-seat-report > summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; font-weight: 600; }
.gs-seat-choice { margin: 18px 0 24px; }
.gs-op-buy__seats { font-weight: 700; }
.gs-om__block { margin: 22px 0 28px; }
.gs-om__session { padding: 12px 0; border-bottom: 1px solid var(--gs-line); }
.gs-om__session.is-cancelled .gs-om__when { color: var(--gs-ink-2); text-decoration: line-through; }
.gs-om__when { margin: 0 0 6px; overflow-wrap: anywhere; }
.gs-om__move > summary, .gs-om__danger summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; font-weight: 600; }
.gs-om__people { margin: 0; padding-left: 20px; }
.gs-om__people li { margin: 6px 0; overflow-wrap: anywhere; }
.gs-om .gs-row-2, .gs-admin-group .gs-row-2 { gap: 10px; }
.gs-admin-group { padding: 18px 0 8px; border-top: 1px solid var(--gs-line); }
.gs-admin-group h2 { margin-bottom: 4px; }
@media (max-width: 520px) {
	.gs-of-schedule__row { grid-template-columns: 22px minmax(0, 1fr); row-gap: 6px; }
	.gs-of-schedule__row > label, .gs-of-schedule__row > .gs-of-schedule__time { grid-column: 2; }
	.gs-of-schedule__row .gs-of-schedule__n { grid-row: 1; }
	.gs-of-schedule__remove { grid-column: 2; justify-self: end; min-height: 44px; margin-top: -8px; }
}
.gs-of-err[hidden] { display: none; }
/* v0.25.2 — start-time picker: hour : minutes AM/PM (AM preset on a new time) */
.gs-time { display: flex; align-items: center; gap: 6px; min-width: 0; }
.gs-time label { flex: 1 1 0; min-width: 0; margin: 0; }
.gs-time label:last-child { flex: 0 0 80px; }
.gs-time select { width: 100%; min-width: 0; min-height: 44px; padding: 0 22px 0 8px; font-size: 15px; text-overflow: clip; }
.gs-time__sep { flex: none; font-weight: 700; color: var(--gs-ink-2, #3b3530); }
.gs-of-schedule__time { display: block; min-width: 0; }
.gs-of-schedule__row.is-invalid select[aria-invalid="true"] { border-color: var(--gs-bad, #9a2f22); box-shadow: 0 0 0 1px var(--gs-bad, #9a2f22); }
@media (max-width: 520px) {
	.gs-of-schedule__row .gs-of-schedule__time { grid-column: 2; }
}

/* v0.25.7 — Profile (view first, Edit profile) and the one Expert Settings */
.gs-page-head.gs-profile__head { display: flex; flex-wrap: wrap; align-items: flex-end; }
.gs-profile__head > div { flex: 1 1 320px; min-width: 0; }
.gs-profile__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 10px; margin: 0; align-items: center; max-width: 100%; }
.gs-profile__actions .gs-button { min-height: 44px; display: inline-flex; align-items: center; }
.gs-profile__view { margin-top: 8px; }
.gs-xp--view { padding: clamp(18px, 3vw, 32px); }
.gs-xp--view .gs-xp__portrait { width: clamp(110px, 14vw, 160px); }
.gs-xp--view .gs-xp__name { font-size: clamp(28px, 3.4vw, 40px); }
.gs-profile__private { margin-top: 14px; overflow-wrap: anywhere; }
.gs-profile__edit { max-width: 760px; }
.gs-settings .gs-settings-block { margin-bottom: 32px; }
.gs-settings .gs-sum { max-width: none; }
.gs-settings__facts div { flex-wrap: wrap; }
.gs-settings__facts dd { white-space: normal; overflow-wrap: anywhere; min-width: 0; text-align: right; }
.gs-settings select, .gs-settings .gs-field > input { width: 100%; max-width: 440px; min-height: 48px; box-sizing: border-box; }
.gs-settings .gs-pw { max-width: 440px; }
.gs-settings .gs-button { min-height: 44px; }
.gs-settings__line { margin: 0 0 12px; }
.gs-settings__signout { border-top: 1px solid var(--gs-line); padding-top: 20px; }
@media (max-width: 520px) {
	.gs-page-head.gs-profile__head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.gs-profile__head > div, .gs-profile__actions { min-width: 0; width: 100%; }
	.gs-profile__actions { display: grid; grid-template-columns: minmax(0, 1fr); }
	.gs-profile__actions .gs-button { width: 100%; box-sizing: border-box; justify-content: center; white-space: normal; }
	.gs-settings__facts dd { text-align: left; }
}

/* v0.25.8 — Flutterwave Sandbox only: refund & cancellation testing (staff) and the test-account banner */
.gs-lab-banner { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; margin: 12px 0 0; padding: 10px 14px; border: 1px dashed #b7791f; border-radius: 8px; background: #fdf6e7; font-size: 15px; }
.gs-lab-banner__back { font-weight: 700; min-height: 44px; display: inline-flex; align-items: center; }
.gs-lab-link { margin: 10px 0 0; }
.gs-lab-link a { font-weight: 700; display: inline-flex; gap: 6px; align-items: center; min-height: 44px; }
.gs-lab__actions { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: flex-start; margin: 0 0 16px; }
.gs-lab__actions form { margin: 0; }
.gs-lab__remove summary, .gs-lab__legend summary, .gs-lab__inspect summary, .gs-lab__run > details > summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; font-weight: 600; }
.gs-lab__legend { margin: 0 0 20px; max-width: 72ch; }
.gs-lab__legend ul { margin: 6px 0 0; padding-left: 1.2em; }
.gs-lab__runref { font-family: var(--gs-mono, ui-monospace, SFMono-Regular, Menlo, monospace); font-size: 14px; letter-spacing: 0; overflow-wrap: anywhere; }
.gs-lab__table { width: 100%; border-collapse: collapse; font-size: 14px; }
.gs-lab__table th, .gs-lab__table td { vertical-align: top; text-align: left; padding: 10px 8px; overflow-wrap: anywhere; }
.gs-lab__table thead th { font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--gs-ink-2); border-bottom: 1px solid var(--gs-ink); }
.gs-lab__scenario > tr:first-child > * { border-top: 1px solid var(--gs-line); }
.gs-lab__scenario.is-pdr > tr:first-child > th { box-shadow: inset 3px 0 0 #9a2f22; }
.gs-lab__n { display: inline-block; min-width: 2.2em; font-weight: 700; }
.gs-lab__sim { display: inline-block; padding: 0 6px; border-radius: 4px; background: #efe7d6; color: #5b4a2c; font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.gs-lab__line { display: block; }
.gs-lab__act form { margin: 0 0 6px; }
.gs-lab__act .gs-button { width: 100%; justify-content: center; }
.gs-button--small { min-height: 40px; padding: 6px 12px; font-size: 14px; }
.gs-lab__inspect-row td { padding-top: 0; }
.gs-lab__inspect { padding: 0 0 6px; }
.gs-lab__sale { margin: 8px 0 14px; padding: 10px 12px; border: 1px solid var(--gs-line); border-radius: 8px; background: #fffdf9; }
.gs-lab__money { max-width: 520px; font-size: 14px; }
.gs-lab__money th, .gs-lab__money td { padding: 4px 8px; border-bottom: 1px solid var(--gs-line); }
.gs-lab__money td { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gs-lab__verdict { margin: 4px 0 8px; font-weight: 700; }
.gs-lab__verdict--yes { color: #2f6b3f; }
.gs-lab__verdict--no { color: #9a2f22; }
.gs-lab__verdict--pdr { color: #9a2f22; }
.gs-lab__case, .gs-lab__simrow { margin: 4px 0; font-size: 14px; overflow-wrap: anywhere; }
.gs-lab__simctl { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; margin-top: 6px; }
.gs-lab__simctl form { margin: 0; }
.gs-lab__others form { display: inline; }
.gs-lab__steps { margin: 6px 0 10px; padding-left: 1.3em; max-width: 72ch; }
@media (max-width: 960px) {
	.gs-lab__table thead { display: none; }
	.gs-lab__table, .gs-lab__table tbody, .gs-lab__table tr, .gs-lab__table th, .gs-lab__table td { display: block; width: 100%; box-sizing: border-box; }
	.gs-lab__scenario { display: block; margin: 0 0 14px; border: 1px solid var(--gs-line); border-radius: 8px; padding: 4px 10px; background: #fff; }
	.gs-lab__scenario > tr:first-child > * { border-top: 0; }
	.gs-lab__table td[data-label]::before { content: attr(data-label); display: block; font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--gs-ink-2); margin-bottom: 2px; }
	.gs-lab__table th[data-label] { font-size: 16px; padding-top: 10px; }
	.gs-lab__table td { padding: 6px 0; }
	.gs-lab__money { display: table !important; width: 100% !important; }
	.gs-lab__money thead { display: table-header-group !important; }
	.gs-lab__money tbody { display: table-row-group !important; }
	.gs-lab__money tr { display: table-row !important; }
	.gs-lab__money th, .gs-lab__money td { display: table-cell !important; width: auto !important; }
}
.gs-lab__table tbody th { text-transform: none; letter-spacing: 0; font-size: 15px; font-weight: 600; color: var(--gs-ink); }
.gs-lab__inspect-row td::before { content: none !important; display: none !important; }
.gs-lab__inspect summary::before, .gs-lab__remove summary::before, .gs-lab__legend summary::before { content: '▸'; display: inline-block; width: 1.1em; transition: transform .15s; }
.gs-lab__inspect[open] summary::before, .gs-lab__remove[open] summary::before, .gs-lab__legend[open] summary::before { transform: rotate(90deg); }
.gs-lab__inspect summary, .gs-lab__remove summary, .gs-lab__legend summary { list-style: none; }
.gs-lab__inspect summary::-webkit-details-marker, .gs-lab__remove summary::-webkit-details-marker, .gs-lab__legend summary::-webkit-details-marker { display: none; }
.gs-lab__money th { text-transform: none; letter-spacing: 0; font-size: 14px; font-weight: 500; color: var(--gs-ink); }
.gs-lab__money thead th { font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--gs-ink-2); }
.gs-lab__money td::before { content: none !important; display: none !important; }
.gs-wrap.gs-lab { max-width: 1440px; }
.gs-lab__table th, .gs-lab__table td { overflow-wrap: break-word; word-break: normal; hyphens: auto; }
@media (min-width: 961px) {
	.gs-lab__table { table-layout: fixed; }
	.gs-lab__table thead th:nth-child(1) { width: 17%; }
	.gs-lab__table thead th:nth-child(2) { width: 9%; }
	.gs-lab__table thead th:nth-child(3) { width: 9%; }
	.gs-lab__table thead th:nth-child(4) { width: 11%; }
	.gs-lab__table thead th:nth-child(5) { width: 12%; }
	.gs-lab__table thead th:nth-child(6) { width: 12%; }
	.gs-lab__table thead th:nth-child(7) { width: 17%; }
	.gs-lab__table thead th:nth-child(8) { width: 13%; }
}
.gs-lab__money td { padding: 4px 0 4px 10px !important; }
/* v0.26.0 — refund lab: a recorded step replaces its button */
.gs-lab__done { margin: 0 0 6px; padding: 8px 10px; border-left: 3px solid var(--gs-ok); background: var(--gs-paper-2); font-size: 14px; }
.gs-lab__done small { color: var(--gs-ink-2); }
/* v0.26.0 — staff environment indicator (Live): unmistakable, not alarming */
.gs-env-banner--live { border-left: 4px solid var(--gs-ok); background: #eef4ef; color: var(--gs-ink); }

/* v0.26.1 — Flutterwave Sandbox test money: kept for the record, never mixed with real totals */
.gs-test-money { margin-top: 16px; padding: 12px 16px; border: 1px dashed #b7791f; border-radius: 8px; background: var(--gs-paper-2, #faf7f0); }
.gs-test-money .gs-h4 { margin: 0 0 4px; }
.gs-close-test { margin: 8px 0 12px; padding: 10px 14px; border: 1px solid var(--gs-line, #e5ded0); border-radius: 8px; }
.gs-close-test > summary { cursor: pointer; font-weight: 600; }
.gs-close-plan { margin: 6px 0 12px 1.2em; padding: 0; }
.gs-close-plan li { margin: 2px 0; overflow-wrap: anywhere; }

/* ==========================================================================
   v0.27.0 — action hierarchy in the session, refund and cancellation flows.
   Existing tokens only (ink, burnt accent, gold-soft, the existing danger red,
   focus blue). Disclosure triggers look like controls; secondary stays
   secondary; destructive shows consequence; selected choices are clear.
   ========================================================================== */
.gs-cs-cancel-box > summary,
.gs-cs-refund-box > summary,
.gs-seat-report > summary,
.gs-om__move > summary,
.gs-om__danger > summary,
.gs-no-show:not(.gs-no-show--row) > summary {
	display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 16px;
	border: 1.5px solid var(--gs-ink-2); border-radius: 2px; background: var(--gs-surface, #fffdf9);
	color: var(--gs-ink); font-weight: 600; cursor: pointer; list-style: none;
}
.gs-cs-cancel-box > summary::-webkit-details-marker,
.gs-cs-refund-box > summary::-webkit-details-marker,
.gs-seat-report > summary::-webkit-details-marker,
.gs-om__move > summary::-webkit-details-marker,
.gs-om__danger > summary::-webkit-details-marker,
.gs-no-show:not(.gs-no-show--row) > summary::-webkit-details-marker { display: none; }
.gs-cs-cancel-box > summary::after,
.gs-cs-refund-box > summary::after,
.gs-seat-report > summary::after,
.gs-om__move > summary::after,
.gs-om__danger > summary::after,
.gs-no-show:not(.gs-no-show--row) > summary::after {
	content: ""; flex: none; box-sizing: border-box; width: 8px; height: 8px; margin-top: -4px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
	transform: rotate(45deg); transform-origin: 50% 50%; transition: transform .15s ease;
}
.gs-cs-cancel-box[open] > summary::after,
.gs-cs-refund-box[open] > summary::after,
.gs-seat-report[open] > summary::after,
.gs-om__move[open] > summary::after,
.gs-om__danger[open] > summary::after,
.gs-no-show:not(.gs-no-show--row)[open] > summary::after { transform: rotate(-135deg); margin-top: 4px; }
.gs-cs-refund-box > summary:hover,
.gs-seat-report > summary:hover,
.gs-om__move > summary:hover,
.gs-no-show:not(.gs-no-show--row) > summary:hover { border-color: var(--gs-burnt, var(--gs-gold-ink)); background: var(--gs-gold-soft); color: var(--gs-ink); }
.gs-cs-cancel-box[open] > summary,
.gs-cs-refund-box[open] > summary,
.gs-seat-report[open] > summary,
.gs-om__move[open] > summary,
.gs-om__danger[open] > summary,
.gs-no-show:not(.gs-no-show--row)[open] > summary { margin-bottom: 14px; }
/* destructive: the consequence is visible, not shouted */
.gs-cs-cancel-box > summary,
.gs-om__danger > summary { border-color: var(--gs-bad); color: var(--gs-bad); }
.gs-cs-cancel-box > summary:hover,
.gs-om__danger > summary:hover { background: #f8ebe7; border-color: var(--gs-bad); color: var(--gs-bad); }
/* the opened panel reads as one task */
.gs-cs-cancel-box[open], .gs-cs-refund-box[open] { padding: 14px 16px; border: 1px solid var(--gs-line); border-radius: 3px; background: var(--gs-surface, #fffdf9); }
.gs-cs-cancel-box[open] { border-color: #e7c9c1; }
.gs-no-show:not(.gs-no-show--row) { padding: 12px 16px; }
/* choices: visibly selectable; the selected one carries the accent */
.gs-cs-grounds .gs-check label { border-color: #cdbfae; }
.gs-cs-grounds .gs-check label:hover { border-color: var(--gs-burnt, var(--gs-ink-2)); }
.gs-cs-grounds .gs-check label:has(input:focus-visible) { outline: 3px solid var(--gs-focus, #1f5fbf); outline-offset: 2px; }
.gs-cs-grounds .gs-check label:has(input:checked) { font-weight: 600; }
.gs-cs-grounds .gs-check input { width: 20px; height: 20px; }
/* buttons respond to the hand */
.gs-button:active { transform: translateY(1px); }
.gs-button--primary:hover { box-shadow: inset 0 -3px 0 var(--gs-burnt, var(--gs-gold)); }
.gs-button:disabled, .gs-button[aria-disabled="true"] { opacity: .5; cursor: not-allowed; transform: none; }
/* final program state (v0.27.0) */
.gs-mt-final { margin: 8px 0 18px; padding: 14px 16px; border: 1px solid var(--gs-line); border-left: 4px solid var(--gs-ink-2); border-radius: 3px; background: var(--gs-paper-2); }
.gs-mt-final p { margin: 0 0 6px; }
.gs-tag--final { background: var(--gs-ink); color: var(--gs-paper); border-color: var(--gs-ink); }
/* refund attempt history (staff / lab) */
.gs-refund-attempts { margin: 10px 0; padding: 8px 12px; border: 1px solid var(--gs-line); border-radius: 3px; background: var(--gs-surface, #fffdf9); }
.gs-refund-attempts > summary { cursor: pointer; min-height: 40px; display: flex; align-items: center; font-weight: 600; }
.gs-refund-attempts__list { margin: 6px 0 0; padding-left: 1.2em; }
.gs-refund-attempts__item { margin: 0 0 10px; }
.gs-refund-attempts__item p { margin: 0 0 2px; overflow-wrap: anywhere; }
.gs-refund-attempts__item--failed .gs-refund-attempts__head { color: var(--gs-bad); }
.gs-refund-attempts__item--succeeded .gs-refund-attempts__head { color: var(--gs-ok, #2f6b3b); }

/* v0.28.0: the payout account on Expert Settings (moved from Transactions) */
.gs-payout-account .gs-payout { max-width: 520px; }
.gs-payout-account .gs-payout__dest { overflow-wrap: anywhere; }
.gs-payout-account__change { margin: 0 0 8px; }
.gs-payout-account__change .gs-button { min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 560px) {
	.gs-slug__base { flex: 1 1 100%; padding: 8px 12px 0; font-size: 14px; white-space: normal; overflow-wrap: anywhere; }
	.gs-slug__edit { margin: 4px 10px 8px; }
	.gs-slug__end { display: none; }
}
/* v0.28.1 — the AM/PM picker fits its label on phones (it showed "AN"/"PN") */
.gs-time label:last-child { flex: 0 0 96px; }
/* v0.28.2 — a text-link action that cancels or releases something reads as destructive */
.gs-link-button--danger { color: var(--gs-bad); }
.gs-link-button--danger:hover { color: var(--gs-bad); background: #f8ebe7; }
/* v0.28.3 — a submit button that is sending: visibly busy, same size, can't be pressed again */
.gs-button.is-busy, button.is-busy, input.is-busy { cursor: progress; opacity: .7; pointer-events: none; }
/* v0.28.3 — a confirmation moved next to the section the page landed on */
.gs-notice--here { margin: 0 0 16px; scroll-margin-top: 12px; }
/* v0.28.3 — signed-in way back on the 403/404 page; why the sign-in page appeared */
.gs-error-way { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--gs-line); }
.gs-error-way .gs-button { min-height: 44px; }
.gs-auth-reason { margin: 0 0 18px; }
