/*
 * MaharatLink 2026 interface layer
 * Shared interface layer for public, account, workspace, finance and admin screens.
 * The dedicated navigation layer is intentionally loaded after this file.
 */
@font-face {
  font-family: "El Messiri";
  src: url("../fonts/IBMPlexSansArabic-Regular.513a340cf2db.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Registration 2026: focused, product-led onboarding rather than a form on a banner. */
body.registration-flow-page .main-header,
body.registration-flow-page .main-footer { display:none; }
body.registration-flow-page .main-content { min-height:100svh; background:#edf2ee; }
body.registration-flow-page .auth-registration-flow {
  display:flex;
  min-height:100svh;
  align-items:center;
  justify-content:center;
  padding:clamp(18px,3.5vw,52px);
  background:
    radial-gradient(circle at 8% 12%,rgba(8,116,72,.09),transparent 24%),
    radial-gradient(circle at 92% 88%,rgba(216,239,103,.16),transparent 25%),
    #edf2ee;
}
.auth-registration-frame {
  width:min(1180px,100%);
  overflow:hidden;
  background:#fff;
  border:1px solid #d9e3dc;
  border-radius:30px;
  box-shadow:0 32px 90px rgba(8,47,32,.13);
}
.auth-registration-brandbar {
  display:flex;
  min-height:78px;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:14px clamp(22px,3vw,38px);
  background:#fff;
  border-bottom:1px solid #e0e8e2;
}
.auth-registration-brand,
.auth-registration-exit { display:inline-flex; align-items:center; text-decoration:none; }
.auth-registration-brand { gap:12px; color:#14271f; }
.auth-registration-brand .brand-symbol { width:44px; height:44px; color:#fff; background:#087448; border-radius:13px; }
.auth-registration-brand > span { display:grid; gap:1px; }
.auth-registration-brand strong { font-size:.82rem; }
.auth-registration-brand small { color:#718078; font:600 .54rem/1.2 system-ui,sans-serif; }
.auth-registration-exit {
  gap:9px;
  min-height:42px;
  padding:8px 13px;
  color:#4d6057;
  border:1px solid #dbe5de;
  border-radius:12px;
  font-size:.66rem;
  font-weight:800;
}
.auth-registration-exit:hover { color:#075d3b; border-color:#8fb4a0; background:#f5f9f6; }
.auth-registration-layout { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr); min-height:650px; }
body.registration-flow-page .auth-flow-shell {
  width:100%;
  align-self:stretch;
  padding:clamp(32px,4vw,54px) clamp(28px,4.6vw,64px);
  background:#fff;
}
.auth-registration-steps {
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin:0 0 42px;
}
.auth-registration-steps::before {
  position:absolute;
  z-index:0;
  top:17px;
  right:12.5%;
  left:12.5%;
  height:1px;
  content:"";
  background:#d9e2dc;
}
.auth-registration-steps > div { position:relative; z-index:1; display:grid; justify-items:center; gap:8px; color:#89958e; }
.auth-registration-steps > div > span {
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  color:#758179;
  background:#fff;
  border:1px solid #ccd8d0;
  border-radius:50%;
  font:800 .66rem/1 system-ui,sans-serif;
}
.auth-registration-steps > div > small { font-size:.58rem; font-weight:800; }
.auth-registration-steps > div.is-current { color:#075f3c; }
.auth-registration-steps > div.is-current > span { color:#fff; background:#087448; border-color:#087448; box-shadow:0 0 0 5px #e9f3ed; }
.auth-registration-steps > div.is-complete { color:#4b6b5b; }
.auth-registration-steps > div.is-complete > span { color:#075f3c; background:#dceee4; border-color:#b9d8c6; }
body.registration-flow-page .auth-flow-card {
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.auth-registration-meta { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:18px; color:#718078; font-size:.61rem; font-weight:800; }
.auth-registration-meta span { color:#087448; }
.auth-registration-meta bdi { padding:5px 9px; background:#f0f5f2; border-radius:999px; font:800 .58rem/1 system-ui,sans-serif; }
body.registration-flow-page .auth-flow-header { margin-bottom:28px; }
body.registration-flow-page .auth-flow-kicker { margin-bottom:12px; color:#087448; font-size:.63rem; letter-spacing:.01em; }
body.registration-flow-page .auth-flow-header h1 { max-width:520px; margin-bottom:10px; font-size:clamp(2rem,3.5vw,2.8rem); line-height:1.16; }
body.registration-flow-page .auth-flow-header p { max-width:52ch; color:#6b7971; font-size:.76rem; line-height:1.85; }
body.registration-flow-page .auth-role-grid { grid-template-columns:1fr 1fr; gap:12px; }
body.registration-flow-page .auth-role-option {
  grid-template-columns:1fr 22px;
  grid-template-rows:58px auto auto;
  min-height:190px;
  align-content:start;
  padding:20px;
  border:1px solid #d5e0d8;
  border-radius:18px;
  background:#fbfdfb;
}
body.registration-flow-page .auth-role-option:hover { transform:translateY(-3px); border-color:#7da58e; box-shadow:0 16px 32px rgba(10,73,47,.08); }
body.registration-flow-page .auth-role-option:has(input:checked) { background:#edf7f1; border-color:#087448; box-shadow:0 0 0 3px rgba(8,116,72,.09); }
body.registration-flow-page .auth-role-icon { grid-column:1; grid-row:1; width:52px; height:52px; border-radius:15px; font-size:1.08rem; }
body.registration-flow-page .auth-role-option strong { grid-column:1/-1; grid-row:2; font-size:.85rem; }
body.registration-flow-page .auth-role-option small { grid-column:1/-1; grid-row:3; font-size:.64rem; line-height:1.75; }
body.registration-flow-page .auth-role-option > i { grid-column:2; grid-row:1; align-self:center; justify-self:end; }
.auth-registration-intent {
  display:grid;
  grid-template-columns:42px 1fr auto;
  gap:12px;
  align-items:center;
  margin:-8px 0 22px;
  padding:12px 13px;
  background:#f1f6f3;
  border:1px solid #dce8e0;
  border-radius:14px;
}
.auth-registration-intent > span { display:grid; width:42px; height:42px; place-items:center; color:#087448; background:#dfeee5; border-radius:11px; }
.auth-registration-intent > div { display:grid; gap:2px; }
.auth-registration-intent small { color:#77847c; font-size:.55rem; font-weight:700; }
.auth-registration-intent strong { color:#21382d; font-size:.69rem; }
.auth-registration-intent form { margin:0; }
.auth-registration-intent button { padding:6px; cursor:pointer; color:#087448; background:transparent; border:0; font:800 .58rem/1 inherit; text-decoration:underline; text-underline-offset:3px; }
body.registration-flow-page .auth-field-label { margin-top:2px; font-size:.69rem; }
body.registration-flow-page .auth-text-field,
body.registration-flow-page .auth-code-field,
body.registration-flow-page .auth-flow-form .input,
body.registration-flow-page .auth-phone-field { min-height:60px; border-color:#b9cbbf; border-radius:14px; background:#fff; }
body.registration-flow-page .auth-phone-field span { min-width:58px; background:#eef5f1; border-color:#d7e3db; }
body.registration-flow-page .auth-phone-field input { font-size:.9rem; }
body.registration-flow-page .auth-field-hint { display:flex; align-items:center; gap:6px; margin-top:-6px; color:#738179; font-size:.58rem; }
body.registration-flow-page .auth-field-hint i { color:#8da095; font-size:.54rem; }
body.registration-flow-page .auth-primary,
body.registration-flow-page .auth-secondary {
  display:flex;
  min-height:58px;
  align-items:center;
  justify-content:space-between;
  margin-top:5px;
  padding-inline:20px;
  border-radius:14px;
  box-shadow:0 10px 22px rgba(8,100,63,.14);
}
body.registration-flow-page .auth-primary:hover { transform:translateY(-2px); box-shadow:0 14px 27px rgba(8,100,63,.2); }
body.registration-flow-page .auth-flow-login { margin-top:30px; padding-top:20px; font-size:.65rem; }
body.registration-flow-page .auth-flow-legal { font-size:.54rem; }
body.registration-flow-page .auth-flow-companion {
  position:relative;
  display:flex;
  min-height:650px;
  flex-direction:column;
  align-content:initial;
  justify-content:center;
  padding:clamp(42px,5vw,68px);
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 14% 12%,rgba(216,239,103,.16),transparent 24%),
    linear-gradient(145deg,#073f2d 0%,#07583a 55%,#087448 100%);
  border:0;
  border-radius:0;
  box-shadow:none;
}
body.registration-flow-page .auth-flow-companion::before {
  inset:0;
  width:auto;
  height:auto;
  opacity:.2;
  background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);
  background-size:44px 44px;
  border:0;
  border-radius:0;
  mask-image:linear-gradient(to bottom,#000,transparent 92%);
}
body.registration-flow-page .auth-flow-companion::after { width:260px; height:260px; right:auto; bottom:-150px; left:-110px; border-color:rgba(216,239,103,.18); }
body.registration-flow-page .auth-flow-companion > * { position:relative; z-index:1; }
body.registration-flow-page .auth-companion-eyebrow { padding:7px 10px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:999px; }
body.registration-flow-page .auth-flow-companion h2 { margin:26px 0 14px; font-size:clamp(2.5rem,4.5vw,4rem); line-height:1.08; letter-spacing:-.025em; }
body.registration-flow-page .auth-flow-companion > p { max-width:42ch; font-size:.78rem; line-height:1.9; }
body.registration-flow-page .auth-companion-benefits { gap:0; margin:36px 0 0; border-top:1px solid rgba(255,255,255,.2); }
body.registration-flow-page .auth-companion-benefits li { padding:15px 0; background:transparent; border:0; border-bottom:1px solid rgba(255,255,255,.14); border-radius:0; }
body.registration-flow-page .auth-companion-benefits li b { color:#d8ef67; background:rgba(216,239,103,.1); border:1px solid rgba(216,239,103,.2); }
body.registration-flow-page .auth-companion-benefits li strong { font-size:.7rem; }
body.registration-flow-page .auth-companion-benefits li small { margin-top:2px; font-size:.57rem; }
.auth-companion-proof { display:flex; align-items:center; gap:12px; margin-top:28px; padding:14px; background:rgba(2,36,24,.35); border:1px solid rgba(255,255,255,.14); border-radius:14px; }
.auth-companion-proof > span { display:grid; width:36px; height:36px; flex:0 0 auto; place-items:center; color:#123c2b; background:#d8ef67; border-radius:10px; }
.auth-companion-proof > div { display:grid; gap:2px; }
.auth-companion-proof small { color:#9fcdb7; font-size:.53rem; }
.auth-companion-proof strong { color:#fff; font-size:.65rem; }

@media (max-width:900px) {
  body.registration-flow-page .auth-registration-flow { align-items:flex-start; padding:18px; }
  .auth-registration-layout { grid-template-columns:1fr; }
  body.registration-flow-page .auth-flow-companion { display:block; min-height:260px; order:-1; padding:34px; }
  body.registration-flow-page .auth-flow-companion h2 { margin:18px 0 10px; font-size:2.35rem; }
  body.registration-flow-page .auth-companion-benefits { display:none; }
  .auth-companion-proof { max-width:360px; margin-top:20px; }
  body.registration-flow-page .auth-flow-shell { padding:34px; }
}
@media (max-width:620px) {
  body.registration-flow-page .auth-registration-flow { padding:0; background:#fff; }
  .auth-registration-frame { border:0; border-radius:0; box-shadow:none; }
  .auth-registration-brandbar { min-height:68px; padding:11px 16px; }
  .auth-registration-brand .brand-symbol { width:39px; height:39px; border-radius:11px; }
  .auth-registration-exit span { display:none; }
  .auth-registration-exit { width:40px; min-height:40px; justify-content:center; padding:0; }
  body.registration-flow-page .auth-flow-companion { min-height:220px; padding:28px 20px; }
  body.registration-flow-page .auth-flow-companion h2 { font-size:2rem; }
  body.registration-flow-page .auth-flow-companion > p { font-size:.68rem; }
  .auth-companion-proof { display:none; }
  body.registration-flow-page .auth-flow-shell { padding:28px 18px 36px; }
  .auth-registration-steps { margin-bottom:32px; }
  .auth-registration-steps > div > small { font-size:.51rem; }
  body.registration-flow-page .auth-flow-header h1 { font-size:1.85rem; }
  body.registration-flow-page .auth-role-grid { grid-template-columns:1fr; }
  body.registration-flow-page .auth-role-option { grid-template-columns:48px 1fr 16px; grid-template-rows:auto auto; min-height:92px; padding:14px; }
  body.registration-flow-page .auth-role-icon { grid-column:1; grid-row:1/3; width:46px; height:46px; }
  body.registration-flow-page .auth-role-option strong { grid-column:2; grid-row:1; }
  body.registration-flow-page .auth-role-option small { grid-column:2; grid-row:2; }
  body.registration-flow-page .auth-role-option > i { grid-column:3; grid-row:1/3; }
}
@media (max-width:360px) {
  body.registration-flow-page .auth-flow-companion { min-height:195px; padding:24px 16px; }
  body.registration-flow-page .auth-flow-companion h2 { font-size:1.7rem; }
  body.registration-flow-page .auth-flow-shell { padding-inline:14px; }
  .auth-registration-steps > div > span { width:31px; height:31px; }
  .auth-registration-steps::before { top:15px; }
  .auth-registration-intent { grid-template-columns:38px 1fr auto; padding:10px; }
  .auth-registration-intent > span { width:38px; height:38px; }
}
@font-face {
  font-family: "El Messiri";
  src: url("../fonts/IBMPlexSansArabic-Regular.513a340cf2db.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "El Messiri";
  src: url("../fonts/IBMPlexSansArabic-SemiBold.81e7f80dcdf6.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "El Messiri";
  src: url("../fonts/IBMPlexSansArabic-SemiBold.81e7f80dcdf6.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --ui-ink: #14211a;
  --ui-ink-soft: #34443b;
  --ui-muted: #68766e;
  --ui-green: #096744;
  --ui-green-dark: #0b3d2b;
  --ui-green-soft: #edf5f0;
  --ui-lime: #d8ef67;
  --ui-brand-start: #0b7652;
  --ui-brand-mid: #07583f;
  --ui-brand-end: #063426;
  --ui-canvas: #f6f7f5;
  --ui-surface: #ffffff;
  --ui-line: #dfe6e1;
  --ui-line-strong: #cbd6cf;
  --ui-radius-sm: 10px;
  --ui-radius: 16px;
  --ui-radius-lg: 22px;
  --ui-shadow: 0 10px 30px rgba(20, 43, 29, .055);
  --ui-shadow-raised: 0 18px 50px rgba(20, 43, 29, .09);
  --ui-control-height: 44px;
  --ui-control-height-compact: 40px;
  --ui-page-width: 1180px;
  --ui-page-gutter: 20px;
  --ui-card-padding: 20px;
}

html { font-size: 16px; scroll-padding-top: 84px; }
body.site-shell,
body.admin-shell {
  font-family: "El Messiri", "Thmanyah Sans", "SF Arabic", "Segoe UI", Tahoma, sans-serif;
  font-weight: 500;
  color: var(--ui-ink);
  background: var(--ui-canvas);
  font-size: 16px;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
body.site-shell .container { width: min(1180px, calc(100% - 40px)); }
body.site-shell .main-content { min-width: 0; }
body.site-shell :where(h1, h2, h3) { color: var(--ui-ink); letter-spacing: -.018em; }
body.site-shell :where(.manifesto-section, .scope-section) :where(h1, h2, h3) { color: #fff; }
body.site-shell :where(button, input, select, textarea) { font-family: inherit; }
body.site-shell :where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid rgba(9, 103, 68, .2);
  outline-offset: 2px;
}

/* Shared popover details; final header geometry lives in mahara-navigation.css. */
body.site-shell .main-header {
  min-height: 68px;
  background: rgba(255, 255, 255, .96);
  border-bottom-color: var(--ui-line);
  backdrop-filter: blur(18px);
}
body.site-shell .header-container {
  min-height: 67px;
  width: min(1680px, calc(100% - 24px));
  max-width: none;
  gap: clamp(12px, 1.35vw, 24px);
}
body.site-shell .brand-symbol { border-radius: 11px; }
body.site-shell .brand-copy strong { font-size: .98rem; }
body.site-shell .brand-en-corner { display: none; }
body.site-shell .nav-menu {
  justify-content: center;
  gap: 1px;
  padding: 3px;
  background: rgba(244, 248, 246, .9);
  border: 1px solid #e7eee9;
  border-radius: 13px;
}
body.site-shell .nav-link,
body .nav-menu a.nav-hiring-link,
body.exchange-home .nav-menu a.nav-hiring-link {
  min-height: 40px;
  padding-inline: 11px;
  border-radius: var(--ui-radius-sm);
  font-size: .81rem;
}
body.site-shell .nav-link:hover,
body.site-shell .nav-link.active,
body .nav-menu a.nav-hiring-link:hover,
body .nav-menu a.nav-hiring-link.active {
  color: var(--ui-green-dark);
  background: #fff;
  border-color: #dfe9e3;
  box-shadow: 0 3px 10px rgba(10, 72, 48, .06);
}
body.site-shell .header-actions { flex: 0 0 auto; gap: 6px; }
body.site-shell .header-cta,
body.site-shell .user-btn,
body.site-shell .header-icon-btn,
body.site-shell .notif-btn { min-height: 42px; border-radius: 11px; }
body.site-shell .header-cta { padding-inline: 13px; white-space: nowrap; }
body.site-shell .header-icon-btn,
body.site-shell .notif-btn {
  color: var(--ui-green-dark);
  background: #fff;
  border-color: #dfe8e2;
}
body.site-shell .header-icon-btn:hover,
body.site-shell .notif-wrapper.active .notif-btn {
  color: #fff;
  background: var(--ui-green-dark);
  border-color: var(--ui-green-dark);
}
body.site-shell .user-btn {
  height: 44px;
  min-width: 176px;
  min-height: 44px;
  max-width: 232px;
  padding: 4px 6px 4px 10px;
  line-height: 1.15;
  background: linear-gradient(135deg, #fff, #f6faf7);
  border-color: #dfe8e2;
  box-shadow: 0 3px 12px rgba(10, 72, 48, .045);
}
body.site-shell .user-btn:hover,
body.site-shell .user-menu-wrapper.active .user-btn {
  background: #fff;
  border-color: #93b6a2;
  box-shadow: 0 5px 16px rgba(10, 72, 48, .08);
}
body.site-shell .user-avatar {
  flex: 0 0 34px;
  background: linear-gradient(145deg, var(--ui-green), var(--ui-green-dark));
  border-radius: 9px;
}
body.site-shell .user-info { width: clamp(96px, 9vw, 146px); min-width: 0; }
body.site-shell .user-name,
body.site-shell .user-role {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.site-shell .user-name { font-size: .77rem; font-weight: 850; }
body.site-shell .user-role { font-size: .61rem; }
body.site-shell .user-chevron { flex: 0 0 auto; margin-inline-start: auto; transition: transform .2s ease; }
body.site-shell .user-menu-wrapper.active .user-chevron { transform: rotate(180deg); }
body.site-shell .surface-popover {
  top: calc(100% + 9px);
  border: 1px solid #dfe8e2;
  border-radius: 16px;
  box-shadow: 0 20px 55px rgba(10, 45, 29, .14), 0 4px 14px rgba(10, 45, 29, .06);
}
body.site-shell .user-dropdown {
  width: min(328px, calc(100vw - 24px));
  max-height: min(76vh, 680px);
  padding: 7px;
}
body.site-shell .user-dropdown-profile {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  margin-bottom: 4px;
  padding: 12px;
  background: linear-gradient(135deg, #edf7f1, #f8fbf9);
  border: 1px solid #e0ece5;
  border-radius: 11px;
}
body.site-shell .user-dropdown-avatar {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(145deg, var(--ui-green), var(--ui-green-dark));
  border-radius: 10px;
  font-size: .85rem;
  font-weight: 850;
}
body.site-shell .user-dropdown-avatar img { width: 100%; height: 100%; object-fit: cover; }
body.site-shell .user-dropdown-identity { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; }
body.site-shell .user-dropdown-identity strong,
body.site-shell .user-dropdown-identity small {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.site-shell .user-dropdown-identity strong { color: var(--ui-ink); font-size: .82rem; }
body.site-shell .user-dropdown-identity small { margin-top: 2px; color: var(--ui-muted); font-size: .62rem; text-align: right; }
body.site-shell .user-dropdown-identity em {
  margin-top: 6px;
  padding: 3px 7px;
  color: var(--ui-green-dark);
  background: #dfeee5;
  border-radius: 999px;
  font-size: .57rem;
  font-style: normal;
  font-weight: 800;
}
body.site-shell .dropdown-kicker { padding: 8px 10px 5px; font-size: .6rem; letter-spacing: .02em; }
body.site-shell .dropdown-item { min-height: 39px; padding: 8px 10px; }
body.site-shell .dropdown-item span { min-width: 0; line-height: 1.45; overflow-wrap: anywhere; }
body.site-shell .dropdown-item i {
  display: grid;
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  place-items: center;
  color: var(--ui-green);
  background: #eff6f2;
  border-radius: 7px;
}
body.site-shell .dropdown-item:hover { color: var(--ui-green-dark); background: #f1f7f3; }
body.site-shell .dropdown-item.danger i { color: #b52f39; background: #fff1f1; }
body.site-shell .notif-dropdown { width: min(424px, calc(100vw - 24px)); background: #f7faf8; }
body.site-shell .notif-header {
  padding: 15px;
  color: #fff;
  background:
    radial-gradient(circle at 12% 0%, rgba(215, 181, 115, .24), transparent 42%),
    linear-gradient(135deg, #063f2e, #0b6949);
  border-bottom: 0;
}
body.site-shell .notif-heading { display: flex; align-items: center; gap: 9px; }
body.site-shell .notif-heading-icon {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  color: #fff;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 11px;
}
body.site-shell .notif-heading > span:last-child { display: flex; flex-direction: column; align-items: flex-start; }
body.site-shell .notif-heading strong { color: #fff; font-size: .83rem; }
body.site-shell .notif-heading small { margin-top: 3px; color: rgba(255, 255, 255, .72); font-size: .61rem; }
body.site-shell .notif-header .link-button {
  padding: 6px 9px;
  color: #f5dfb2;
  border: 1px solid rgba(245, 223, 178, .28);
  border-radius: 999px;
  font-size: .61rem;
}
body.site-shell .notif-header .link-button:hover { color: #fff; background: rgba(255, 255, 255, .1); }
body.site-shell .notif-body { max-height: min(440px, 64vh); padding: 7px; }
body.site-shell .notif-item {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 14px;
  gap: 10px;
  align-items: center;
  margin-bottom: 5px;
  padding: 11px;
  background: #fff;
  border: 1px solid #e5ece7;
  border-radius: 12px;
  box-shadow: 0 3px 11px rgba(9, 60, 40, .035);
}
body.site-shell .notif-item:last-child { margin-bottom: 0; }
body.site-shell .notif-item:hover { background: #fff; border-color: #b9d1c2; transform: translateY(-1px); }
body.site-shell .notif-item.unread {
  background: linear-gradient(135deg, #f5fbf7, #fff);
  border-color: #c9dfd1;
  box-shadow: inset -3px 0 #0b6949, 0 4px 14px rgba(9, 60, 40, .055);
}
html[dir="ltr"] body.site-shell .notif-item.unread { box-shadow: inset 3px 0 #0b6949, 0 4px 14px rgba(9, 60, 40, .055); }
body.site-shell .notif-icon {
  display: grid;
  width: 40px;
  height: 40px;
  margin: 0;
  place-items: center;
  color: #0b6949;
  background: #e7f3eb;
  border-radius: 11px;
  font-size: .82rem;
}
body.site-shell .notif-item.tone-finance .notif-icon { color: #8b5a11; background: #fff2d8; }
body.site-shell .notif-item.tone-agreement .notif-icon { color: #315a8a; background: #e9f1fb; }
body.site-shell .notif-item.tone-delivery .notif-icon { color: #6f4d94; background: #f0eafb; }
body.site-shell .notif-item.tone-dispute .notif-icon { color: #a6333d; background: #fff0f1; }
body.site-shell .notif-item.tone-offer .notif-icon { color: #08705e; background: #e5f5f0; }
body.site-shell .notif-content { min-width: 0; align-items: flex-start; }
body.site-shell .notif-meta { display: flex; align-items: center; gap: 6px; margin-bottom: 3px; }
body.site-shell .notif-meta b { color: #587065; font-size: .56rem; font-weight: 750; }
body.site-shell .notif-meta em { padding: 2px 5px; color: #8a5510; background: #ffedc8; border-radius: 999px; font-size: .52rem; font-style: normal; font-weight: 850; }
body.site-shell .notif-content strong { max-width: 100%; color: #15271f; font-size: .76rem; line-height: 1.45; }
body.site-shell .notif-preview {
  display: -webkit-box;
  margin-top: 3px;
  overflow: hidden;
  color: #617068;
  font-size: .62rem;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
body.site-shell .notif-content small { margin-top: 5px; color: #87928c; font-size: .55rem; }
body.site-shell .notif-arrow { color: #8aa196; font-size: .57rem; }
body.site-shell .notif-footer { padding: 0; background: #fff; border-top: 1px solid #e1e9e4; }
body.site-shell .notif-footer a { display: flex; width: 100%; align-items: center; justify-content: space-between; padding: 12px 15px; color: #075b40; font-size: .69rem; }
body.site-shell .notif-footer a:hover { background: #f5f9f6; }
body.site-shell .popover-empty { min-height: 170px; padding: 24px; }
body.site-shell .popover-empty i { color: #0b6949; }
body.site-shell .popover-empty strong { color: #243a30; font-size: .82rem; }
body.site-shell .popover-empty span { max-width: 260px; font-size: .65rem; line-height: 1.6; }

@media (min-width: 1241px) and (max-width: 1390px) {
  body.site-shell .header-container { gap: 10px; }
  body.site-shell .brand-link { gap: 8px; }
  body.site-shell .brand-copy small { display: none; }
  body.site-shell .nav-link,
  body .nav-menu a.nav-hiring-link,
  body.exchange-home .nav-menu a.nav-hiring-link { padding-inline: 8px; font-size: .76rem; }
  body.site-shell .user-btn { min-width: 160px; max-width: 190px; }
  body.site-shell .header-cta { padding-inline: 10px; font-size: .7rem; }
}

@media (min-width: 1241px) and (max-width: 1279px) {
  body.site-shell .nav-link,
  body .nav-menu a.nav-hiring-link,
  body.exchange-home .nav-menu a.nav-hiring-link { padding-inline: 7px; }
  body.site-shell .user-btn { min-width: 150px; max-width: 172px; }
  body.site-shell .header-cta { width: 42px; padding: 0; }
  body.site-shell .header-cta span { display: none; }
}

/* Buttons and form controls: predictable size, wording remains in templates. */
body.site-shell :where(.btn, .app-button, .market-action, .studio-btn) {
  min-height: 44px;
  border-radius: var(--ui-radius-sm);
  box-shadow: none;
}
body.site-shell input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
body.site-shell select,
body.site-shell textarea {
  border-radius: var(--ui-radius-sm);
}

/* MaharatLink design-system primitives inherited by every screen. */
body.site-shell :where(.card, .app-card, .app-panel, .form-card, .content-card, .details-card, .summary-card, .filter-card, .info-card) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
}
body.site-shell :where(.btn, .app-button, .market-action, .studio-btn, button[type="submit"], input[type="submit"]) {
  min-height: var(--ui-control-height);
  border-radius: var(--ui-radius-sm);
  font-weight: 700;
}
body.site-shell :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select) {
  min-height: var(--ui-control-height);
}
body.site-shell textarea { min-height: 116px; resize: vertical; }
body.site-shell :where(.empty-state, .app-empty, .market-empty) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
}

/* Homepage: four useful sections with compact cards. */
.home-command-shell { gap: clamp(36px, 5vw, 68px); padding-block: 58px; }
.home-command-copy h1 { margin: 30px 0 16px; font-size: clamp(2.45rem, 4.2vw, 3.65rem); }
.home-command-copy > p { max-width: 560px; color: var(--ui-muted); font-size: 1rem; line-height: 1.75; }
.home-command-actions { margin-top: 26px; }
.home-command-actions > a { min-height: 62px; border-radius: 13px; box-shadow: var(--ui-shadow); }
.home-command-actions strong { font-size: .9rem; }
.home-command-hiring { min-height: 52px; border-radius: 12px; }
.home-command-visual { min-height: 440px; border-radius: var(--ui-radius-lg); box-shadow: var(--ui-shadow-raised); }
.home-command-proof { border: 1px solid var(--ui-line); border-radius: var(--ui-radius); overflow: hidden; background: #fff; }
.home-command-proof > div { min-height: 78px; }
.home-command-proof strong { font-size: .79rem; }
.home-command-proof small { font-size: .68rem; }

.ready-catalog-section,
.home-flow,
.specialties-section { padding: 72px 0; }
.home-section-intro { margin-bottom: 34px; }
.home-section-intro h2,
.home-final-cta h2 { font-size: clamp(2rem, 3vw, 2.7rem); }
.home-section-intro > p { font-size: .88rem; }
.home-section-code { border-top-width: 2px; }
.ready-catalog-grid { gap: 14px; border: 0; }
.ready-project-card {
  min-height: 470px;
  padding: 18px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: #fff;
  overflow: hidden;
  box-shadow: var(--ui-shadow);
}
.ready-project-card:last-child { border-left: 1px solid var(--ui-line); }
.ready-card-visual { height: 170px; margin: -18px -18px 16px; border: 0; }
.ready-card-copy { padding-top: 26px; }
body.exchange-home .ready-card-copy h3 { margin-bottom: 8px; font-size: 1.12rem; }
.ready-card-copy p { display: -webkit-box; overflow: hidden; font-size: .76rem; line-height: 1.7; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.ready-card-facts { margin-top: auto; }
.ready-card-actions { min-height: 52px; }

.flow-track { gap: 12px; border: 0; }
.flow-track li {
  min-height: 225px;
  padding: 22px;
  border: 1px solid var(--ui-line) !important;
  border-radius: var(--ui-radius);
  background: #fff;
}
.flow-track h3 { margin: 38px 0 8px; font-size: 1.12rem; }
.flow-track p { font-size: .79rem; line-height: 1.7; }
.specialty-index {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  border: 0;
}
.specialty-index > a {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 18px;
  grid-template-rows: auto 1fr;
  gap: 7px 10px;
  min-height: 124px;
  align-content: center;
  padding: 17px;
  border: 1px solid var(--ui-line);
  border-radius: 14px;
  background: #fff;
}
.specialty-index small { grid-column: 2 / -1; font-size: .68rem; line-height: 1.55; }
.specialty-index i { grid-column: 3; grid-row: 1; }
.specialty-index > a:hover { padding-inline: 17px; }
.featured-tech-strip { margin-top: 34px; }
.mini-tech-grid { gap: 12px; }
.mini-tech-card { min-height: 230px; border-radius: var(--ui-radius); }
.home-final-cta { padding: 64px 0; }
.home-final-actions a { min-height: 62px; }

/* Directory: search first, then concise comparable records. */
body.directory-page .talent-selector-hero { min-height: 320px; padding: 42px 0 48px; background: radial-gradient(circle at 10% 16%,rgba(216,239,103,.13),transparent 22%),linear-gradient(132deg,var(--ui-brand-end),var(--ui-brand-mid) 56%,var(--ui-brand-start)); }
body.directory-page .talent-selector-shell { grid-template-columns:minmax(0,1fr) 330px; gap:clamp(38px,7vw,90px); }
body.directory-page .talent-selector-copy h1 { font-size: clamp(2.15rem, 3.6vw, 3rem); }
.talent-selector-copy > p:not(.talent-selector-kicker) { line-height: 1.75 !important; }
.talent-selector-steps li { min-height: 70px; }
.talent-hero-character { position:relative; min-height:270px; overflow:hidden; background:rgba(255,255,255,.075); border:1px solid rgba(255,255,255,.16); border-radius:20px; }
.talent-hero-character::before { position:absolute; width:210px; height:210px; top:28px; left:50%; content:""; border:1px solid rgba(255,255,255,.11); border-radius:50%; transform:translateX(-50%); }
.talent-hero-character img { position:absolute; z-index:1; width:225px; height:300px; right:50%; bottom:-34px; object-fit:contain; transform:translateX(50%); }
.talent-hero-character>span { position:absolute; z-index:2; right:10px; bottom:10px; left:10px; display:grid; padding:9px 11px; background:rgba(3,35,24,.8); border:1px solid rgba(255,255,255,.12); border-radius:10px; backdrop-filter:blur(8px); }
.talent-hero-character small { color:#9fd4ba; font-size:.54rem; }
.talent-hero-character strong { color:#fff; font-size:.68rem; }
.talent-search-panel { border: 1px solid var(--ui-line-strong); border-radius: var(--ui-radius); overflow: hidden; box-shadow: var(--ui-shadow-raised); }
.talent-search-heading { border-radius: 0 15px 0 0; }
.professional-activity-strip { padding: 30px 0 4px; }
.professional-activity-grid { gap: 8px; border: 0; }
.professional-activity-grid a { min-height: 60px; border: 1px solid var(--ui-line); border-radius: 11px; }
body.directory-page .talent-results-section { padding: 42px 0 72px; }
.talent-results-header { margin-bottom: 20px; padding-bottom: 16px; border-bottom: 1px solid var(--ui-line-strong); }
.talent-profile-card {
  min-height: 450px;
  padding: 18px;
  border: 1px solid var(--ui-line);
  border-top: 3px solid var(--ui-green-dark);
  border-radius: var(--ui-radius);
  box-shadow: var(--ui-shadow);
}
.talent-profile-card:hover { transform: translateY(-2px); box-shadow: var(--ui-shadow-raised); }
.talent-extra-filters { grid-column: 1 / -1; border-top: 1px solid var(--ui-line); }
.talent-extra-filters summary { display: flex; min-height: 42px; align-items: center; justify-content: center; gap: 7px; color: var(--ui-green); background: #f8faf8; cursor: pointer; list-style: none; font-size: .6rem; font-weight: 800; }
.talent-extra-filters summary::-webkit-details-marker { display: none; }
.talent-extra-filters summary b { padding: 3px 5px; color: #fff; background: var(--ui-green); border-radius: 5px; font-size: .5rem; }
.talent-extra-filters > div { display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 1px; background: var(--ui-line); }
.talent-extra-filters label { display: grid; gap: 6px; min-height: 70px; align-content: center; padding: 10px 15px; background: #fff; }
.talent-extra-filters label > span { color: var(--ui-muted); font-size: .56rem; font-weight: 700; }
.talent-extra-filters select { width: 100%; min-height: 31px; padding: 0; color: var(--ui-ink); background: transparent; border: 0; outline: 0; font: inherit; font-size: .7rem; }
.talent-extra-filters .talent-extra-check { display: flex; flex-direction: row; align-items: center; gap: 8px; }
.talent-extra-check input { width: 17px; height: 17px; accent-color: var(--ui-green); }
.talent-extra-check span { color: var(--ui-ink) !important; font-size: .66rem !important; }
.talent-extra-check i { margin-left: 4px; color: var(--ui-green); }
.talent-availability-badge { display: inline-flex; align-items: center; gap: 5px; min-height: 25px; padding: 4px 7px; color: #476057; background: #edf2ef; border-radius: 7px; font-size: .55rem; font-weight: 800; }
.talent-availability-badge i { color: #718078; font-size: .38rem; }
.talent-availability-badge.is-available { color: var(--ui-green); background: var(--ui-green-soft); }
.talent-availability-badge.is-available i { color: #16a268; }
.talent-card-photo { border-radius: 12px; }
.talent-card-person { margin-top: 16px; }
.talent-card-metrics { margin-top: 16px; }
.talent-card-skills { margin-top: 14px; }
body.directory-page .talent-card-actions { gap: 6px; padding-top: 16px; }
body.directory-page .talent-card-actions a { min-height: 42px; border-radius: 9px; }

/* Catalogs: familiar marketplace proportions. */
body.service-market-page .main-content { width: 100%; max-width: none; padding: 0; overflow: visible; }
.service-market,
.digital-shell { max-width: 1180px; padding-top: 34px; }
.service-market { padding-top: 0; }
.market-heading,
.digital-head { padding-bottom: 20px; margin-bottom: 20px; }
.market-heading h1,
.digital-head h1 { font-size: clamp(1.8rem, 3vw, 2.45rem); }
.market-heading p,
.digital-head p { font-size: .86rem; }
.service-market-hero.market-heading { position:relative; display:grid; width:100vw; grid-template-columns:minmax(0,1fr) 300px; min-height:270px; align-items:center; gap:26px; margin-inline:calc(50% - 50vw); margin-bottom:20px; padding:30px max(40px,calc((100vw - 1180px)/2)) 0; overflow:hidden; color:#fff; background:radial-gradient(circle at 11% 20%,rgba(216,239,103,.13),transparent 24%),linear-gradient(132deg,var(--ui-brand-end),var(--ui-brand-mid) 56%,var(--ui-brand-start)); border:0; border-radius:0; }
.service-market-copy { align-self:center; padding-bottom:30px; }
.service-market-hero .market-kicker { color:#bde7d2; font-size:.66rem; }
.service-market-hero.market-heading h1 { margin:7px 0 8px; color:#fff; font-size:clamp(1.9rem,3vw,2.45rem); }
.service-market-hero.market-heading p { color:rgba(255,255,255,.7); font-size:.76rem; }
.service-market-hero .market-action.is-light { min-height:42px; margin-top:19px; color:#0a4b35 !important; background:#fff; border-color:#fff; font-size:.68rem; }
.service-market-character { position:relative; align-self:stretch; }
.service-market-character::before { position:absolute; width:230px; height:230px; top:20px; left:50%; content:""; border:1px solid rgba(255,255,255,.11); border-radius:50%; transform:translateX(-50%); }
.service-market-character img { position:absolute; z-index:1; width:220px; height:285px; right:50%; bottom:-20px; object-fit:contain; transform:translateX(50%); }
.service-market-character>span { position:absolute; z-index:2; right:8px; bottom:8px; left:8px; display:grid; padding:9px 11px; background:rgba(3,35,24,.8); border:1px solid rgba(255,255,255,.12); border-radius:10px; backdrop-filter:blur(8px); }
.service-market-character small { color:#9fd4ba; font-size:.54rem; }
.service-market-character strong { color:#fff; font-size:.67rem; }
.market-filters,
.digital-filter { margin-block: 16px 20px; border-radius: 13px; }
.service-grid,
.digital-grid { gap: 14px; }
.service-card,
.digital-card { border-radius: var(--ui-radius); box-shadow: 0 7px 22px rgba(20, 43, 29, .04); }
.service-card-body,
.digital-card-body { padding: 15px; }
.service-card p,
.digital-card p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }

/* Authenticated work screens: fewer boxes, clearer hierarchy. */
body.app-shell-page { background: var(--ui-canvas); }
.app-shell { width: min(1180px, calc(100% - 40px)); padding: 24px 0 64px; }
.workspace-nav { margin-bottom: 20px; box-shadow: none; }
.app-page-head { margin-bottom: 18px; padding-bottom: 17px; }
.app-page-head h1 { font-size: clamp(1.65rem, 3vw, 2.25rem); }
.app-page-head p { max-width: 620px; font-size: .86rem; }
.app-panel,
.app-card { border-radius: var(--ui-radius); box-shadow: var(--ui-shadow); }
.app-panel-pad { padding: 20px; }
.app-metrics { gap: 10px; border: 0; background: transparent; }
.app-metric { min-height: 92px; border: 1px solid var(--ui-line); border-radius: 13px; }
.app-metric strong { margin-top: 8px; font-size: 1.35rem; }
.app-actions-grid { gap: 9px; }
.app-action-card { min-height: 62px; border-radius: 12px; }
.app-card { min-height: 170px; padding: 18px; }
.app-filter { padding: 14px; }
.app-empty { min-height: 190px; border-radius: var(--ui-radius); }
.app-table-wrap { border-radius: var(--ui-radius); }

/* Request creation: the live summary belongs on desktop only. */
.request-studio { width: min(1080px, calc(100% - 40px)); padding: 34px 0 72px; }
.request-studio__head { grid-template-columns: minmax(0, 1fr) 360px; gap: 36px; }
.request-studio__intro h1 { font-size: clamp(1.9rem, 3vw, 2.65rem); }
.request-studio__intro p { font-size: .9rem; }
.request-mode-switch,
.request-step,
.request-live-card { border-radius: var(--ui-radius); overflow: hidden; }
.request-progress { border-radius: 12px; overflow: hidden; }
.request-step { padding: 24px; }

/* Footer is useful but should never become another page. */
body.site-shell .main-footer { padding-top: 48px; }
body.site-shell .footer-shell { padding-bottom: 34px; }
body.site-shell .footer-lead h2 { max-width: 360px; font-size: clamp(1.45rem, 2.4vw, 2rem); }
body.site-shell .footer-col a { min-height: 30px; }
body.site-shell .footer-bottom { min-height: 58px; }

/* Administration uses the same readable surfaces. */
body.admin-shell .admin-content { width: min(1220px, calc(100% - 40px)); padding: 22px 0 54px; }
body.admin-shell .dashboard-card,
body.admin-shell .card,
body.admin-shell .stats-card,
body.admin-shell .table-card,
body.admin-shell .filter-card { border-radius: var(--ui-radius); box-shadow: var(--ui-shadow); }
body.admin-shell :where(input, select, textarea, button, .btn) { border-radius: var(--ui-radius-sm); }

/* Keep the administration rail completely outside the mobile viewport until requested. */
body.admin-shell .sidebar-backdrop { display: none; }
@media (max-width: 768px) {
  body.admin-shell { overflow-x: hidden; }
  body.admin-shell .sidebar {
    right: 0;
    left: auto;
    width: min(84vw, 290px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate3d(calc(100% + 32px), 0, 0) !important;
    transition: transform .28s ease, opacity .2s ease, visibility 0s linear .28s;
  }
  body.admin-shell .sidebar.open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate3d(0, 0, 0) !important;
    transition-delay: 0s;
  }
  body.admin-shell .sidebar-backdrop {
    position: fixed;
    inset: 0;
    z-index: 90;
    display: block;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    background: rgba(10, 24, 17, .56);
    backdrop-filter: blur(4px);
    transition: opacity .2s ease, visibility 0s linear .2s;
  }
  body.admin-shell .sidebar-backdrop.show {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
  }
}

/* Hiring form: compact without hiding the choices employers need. */
body.hiring-request-page .hiring-intro { padding: 38px 0; background:radial-gradient(circle at 10% 16%,rgba(216,239,103,.13),transparent 23%),linear-gradient(132deg,var(--ui-brand-end),var(--ui-brand-mid) 56%,var(--ui-brand-start)); }
body.hiring-request-page .hiring-intro h1 { font-size: clamp(1.9rem, 3.2vw, 2.65rem); }
body.hiring-request-page .hiring-intro h1 + p { margin-top: 12px; font-size: .82rem; }
body.hiring-request-page .hiring-mode-cards { margin-top: 20px; }
body.hiring-request-page .hiring-form-section { padding: 32px 0 68px; }
body.hiring-request-page .hiring-form-card { overflow: hidden; border-radius: var(--ui-radius); box-shadow: var(--ui-shadow); }
body.hiring-request-page .hiring-form-block { padding: 25px 28px; }
body.hiring-request-page .hiring-intro-note,
body.hiring-request-page .hiring-side-guide { border-radius: 14px; }
body.hiring-request-page .hire-input { border-radius: 9px; }
.hiring-intro-character { position:relative; min-height:285px; overflow:hidden; background:rgba(255,255,255,.075); border:1px solid rgba(255,255,255,.16); border-radius:18px; }
.hiring-intro-character::before { position:absolute; width:215px; height:215px; top:24px; left:50%; content:""; border:1px solid rgba(255,255,255,.11); border-radius:50%; transform:translateX(-50%); }
.hiring-intro-character img { position:absolute; z-index:1; width:220px; height:300px; right:50%; bottom:-34px; object-fit:contain; transform:translateX(50%); }
.hiring-intro-character>span { position:absolute; z-index:2; right:9px; bottom:47px; left:9px; display:grid; padding:8px 10px; background:rgba(3,35,24,.8); border:1px solid rgba(255,255,255,.12); border-radius:9px; backdrop-filter:blur(8px); }
.hiring-intro-character small { color:#9fd4ba; font-size:.52rem; }
.hiring-intro-character strong { color:#fff; font-size:.64rem; }
.hiring-intro-character>a { position:absolute; z-index:3; right:10px; bottom:10px; left:10px; display:flex; align-items:center; justify-content:space-between; color:#0a4b35; background:#fff; border-radius:8px; padding:7px 9px; text-decoration:none; font-size:.57rem; font-weight:700; }

/* 2026 trust-first homepage ------------------------------------------------ */
body.trust-home .main-content { overflow: hidden; }
.trust-hero { 
  position: relative;
  padding: 62px 0 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 9% 13%, rgba(216, 239, 103, .14), transparent 22%),
    radial-gradient(circle at 88% 95%, rgba(50, 189, 125, .18), transparent 27%),
    linear-gradient(130deg, var(--ui-brand-end) 0%, var(--ui-brand-mid) 52%, var(--ui-brand-start) 100%);
  border-bottom: 0;
}
.trust-hero::before {
  position: absolute;
  inset: 0;
  content: "";
  opacity: .22;
  background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 88%);
  pointer-events: none;
}
.trust-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(410px, .82fr); gap: clamp(42px, 7vw, 86px); align-items: center; }
.trust-hero-copy { min-width: 0; }
.trust-kicker { display: inline-flex; align-items: center; gap: 8px; margin: 0; padding: 6px 10px; color: #d9f7e8; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.13); border-radius: 999px; font-size: .66rem; font-weight: 700; }
body.trust-home .trust-hero h1 { margin: 18px 0 12px; color: #fff; font-size: clamp(2.45rem, 4vw, 3.55rem); line-height: 1.12; letter-spacing: -.035em; }
body.trust-home .trust-hero h1 span { color: var(--ui-lime); }
.trust-lead { max-width: 590px; margin: 0; color: rgba(255,255,255,.74); font-size: .95rem; line-height: 1.9; }
.trust-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 28px; }
.trust-actions a { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 12px; padding: 10px 20px; border: 1px solid rgba(255,255,255,.76); border-radius: 11px; text-decoration: none; font-size: .78rem; font-weight: 700; }
.trust-primary { color: #0a4b35; background: #fff; }
.trust-primary:hover { color: #063426; background: #f4fff9; }
.trust-secondary { color: #fff; background: rgba(255,255,255,.07); }
.trust-secondary:hover { color: #fff; background: rgba(255,255,255,.14); border-color: #fff; }
.trust-hiring-link { display: flex; max-width: 485px; min-height: 44px; align-items: center; justify-content: space-between; gap: 14px; margin-top: 11px; padding: 9px 13px; color: rgba(255,255,255,.78); background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.15); border-radius: 10px; text-decoration: none; font-size: .67rem; }
.trust-hiring-link span { display: flex; align-items: center; gap: 7px; }
.trust-hiring-link span > i { color: var(--ui-lime); }
.trust-hiring-link b { color: #fff; }
.trust-hiring-link > i { color: var(--ui-lime); }
.trust-hiring-link:hover { color: #fff; background: rgba(255,255,255,.11); border-color: rgba(255,255,255,.28); }

.home-character-card {
  position: relative;
  min-height: 410px;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 42%, rgba(216,239,103,.18), transparent 34%),
    rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 24px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 28px 70px rgba(1,31,21,.2);
}
.home-character-card::before { position: absolute; width: 290px; height: 290px; top: 44px; left: 50%; content: ""; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; transform: translateX(-50%); }
.home-character-card > img { position: absolute; z-index: 1; width: min(78%, 335px); height: 390px; right: 50%; bottom: 9px; object-fit: contain; transform: translateX(50%); }
.home-character-badge { position: absolute; z-index: 3; top: 18px; right: 18px; display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; color: #17432f; background: var(--ui-lime); border-radius: 999px; font-size: .61rem; font-weight: 700; }
.home-character-caption { position: absolute; z-index: 3; right: 15px; bottom: 14px; left: 15px; display: grid; gap: 2px; padding: 12px 14px; color: #fff; background: rgba(4,36,25,.82); border: 1px solid rgba(255,255,255,.13); border-radius: 12px; backdrop-filter: blur(10px); }
.home-character-caption small { color: #a8d7be; font-size: .57rem; }
.home-character-caption strong { color: #fff; font-size: .77rem; }

.home-signal-card { position: relative; padding: 20px; background: rgba(255,255,255,.97); border: 1px solid rgba(255,255,255,.58); border-radius: 20px; box-shadow: 0 28px 70px rgba(1, 31, 21, .26); }
.home-signal-card::before { position: absolute; z-index: -1; inset: -12px 16px 12px -12px; content: ""; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14); border-radius: 22px; transform: rotate(-1.4deg); }
.home-signal-card > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 14px; border-bottom: 1px solid var(--ui-line); }
.home-signal-card > header span { display: inline-flex; align-items: center; gap: 6px; color: var(--ui-green); font-size: .6rem; font-weight: 800; }
.home-signal-card > header span i { font-size: .4rem; }
.home-signal-card > header small { color: var(--ui-muted); font-size: .55rem; }
.home-signal-icon { display: grid; width: 44px; height: 44px; place-items: center; margin-top: 23px; color: var(--ui-green); background: var(--ui-green-soft); border-radius: 12px; }
.home-signal-card > span { display: block; margin-top: 16px; color: var(--ui-green); font-size: .58rem; font-weight: 800; }
body.trust-home .home-signal-card h2 { max-width: 410px; margin: 5px 0 19px; font-size: 1.25rem; line-height: 1.4; }
.home-signal-card dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; border-block: 1px solid var(--ui-line); }
.home-signal-card dl > div { display: grid; gap: 4px; padding: 13px 9px; border-left: 1px solid var(--ui-line); }
.home-signal-card dl > div:last-child { border-left: 0; }
.home-signal-card dt { color: var(--ui-muted); font-size: .52rem; }
.home-signal-card dd { margin: 0; font-size: .65rem; font-weight: 800; }
.home-signal-card footer { display: flex; align-items: center; justify-content: space-between; gap: 13px; padding-top: 15px; color: #3e5045; font-size: .59rem; }
.home-signal-card footer span { display: inline-flex; align-items: center; gap: 7px; }
.home-signal-card footer i { color: var(--ui-green); }
.trust-mini-flow { position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; gap: 11px; margin-top: 48px; padding: 15px 18px; background: #fff; border: 1px solid rgba(255,255,255,.6); border-radius: 15px 15px 0 0; box-shadow: 0 -12px 35px rgba(1, 31, 21, .08); }
.trust-mini-flow > span { display: inline-flex; align-items: center; gap: 7px; color: #36483e; font-size: .63rem; font-weight: 700; white-space: nowrap; }
.trust-mini-flow > span b { display: grid; width: 24px; height: 24px; place-items: center; color: #fff; background: var(--ui-green); border-radius: 99px; font-size: .56rem; }
.trust-mini-flow > i { color: #9aaba0; font-size: .55rem; }
.trust-mini-flow > em { display: inline-flex; align-items: center; gap: 6px; margin-right: auto; padding-right: 15px; color: var(--ui-green); border-right: 1px solid var(--ui-line); font-size: .56rem; font-style: normal; }

.home-journey { padding: 70px 0; background: #fff; }
.home-journey-head { margin-bottom: 24px; text-align: center; }
.home-journey-head > span { color: var(--ui-green); font-size: .66rem; font-weight: 800; }
body.trust-home .home-journey-head h2 { margin: 5px 0 0; font-size: clamp(1.55rem, 2.5vw, 1.95rem); }
.journey-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; max-width: 850px; margin-inline: auto; padding: 4px; background: #f0f3f1; border: 1px solid var(--ui-line); border-radius: 12px; }
.journey-tabs button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: 7px; color: #65736a; background: transparent; border: 0; border-radius: 9px; font: inherit; font-size: .68rem; font-weight: 800; cursor: pointer; }
.journey-tabs button[aria-selected="true"] { color: #fff; background: var(--ui-green); box-shadow: 0 5px 15px rgba(9,103,68,.16); }
.journey-tabs button i { font-size: .67rem; }
.journey-panels { margin-top: 18px; }
.journey-panels > section { padding: 28px; background: #fbfcfb; border: 1px solid var(--ui-line); border-radius: 16px; }
.journey-panels > section[hidden] { display: none; }
.journey-panels ol { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 0; padding: 0; list-style: none; }
.journey-panels ol::before { position: absolute; z-index: 0; top: 38px; right: 11%; left: 11%; height: 1px; content: ""; background: #b9c9bf; }
.journey-panels ol::after { position: absolute; z-index: 0; top: 37px; right: 11%; left: 11%; height: 3px; content: ""; background: linear-gradient(90deg, var(--ui-green), #1b9b68); border-radius: 99px; opacity: 0; transform: scaleX(0); transform-origin: right center; }
.journey-panels li { position: relative; z-index: 1; display: grid; justify-items: center; min-height: 155px; align-content: start; text-align: center; }
.journey-panels li > i { display: grid; width: 76px; height: 76px; place-items: center; color: #6f8478; background: #fff; border: 1px solid #c6d3cb; border-radius: 22px; box-shadow: 0 6px 18px rgba(20,43,29,.05); font-size: 1.15rem; }
.journey-panels li > b { display: grid; width: 23px; height: 23px; place-items: center; margin: -12px 0 9px; color: #fff; background: var(--ui-green); border: 3px solid #fbfcfb; border-radius: 99px; font-size: .53rem; }
.journey-panels li > strong { font-size: .74rem; }
.journey-panels li > small { max-width: 180px; margin-top: 5px; color: var(--ui-muted); font-size: .59rem; line-height: 1.55; }
.journey-panels > section > a { display: flex; width: fit-content; min-height: 40px; align-items: center; gap: 8px; margin: 15px auto 0; padding: 8px 13px; color: #fff; background: var(--ui-green); border-radius: 8px; text-decoration: none; font-size: .64rem; font-weight: 800; }
.journey-panels > section > p { display: flex; width: fit-content; align-items: center; gap: 7px; margin: 15px auto 0; padding: 9px 12px; color: var(--ui-green); background: var(--ui-green-soft); border-radius: 8px; font-size: .61rem; }
.journey-panels > section.is-journey-running ol::after { animation: journey-track-fill 5.8s cubic-bezier(.45,0,.2,1) infinite; }
.journey-panels > section.is-journey-running li > i { will-change: color, background-color, box-shadow, transform; animation-duration: 5.8s; animation-timing-function: linear; animation-iteration-count: infinite; }
.journey-panels > section.is-journey-running li:nth-child(1) > i { animation-name: journey-step-one; }
.journey-panels > section.is-journey-running li:nth-child(2) > i { animation-name: journey-step-two; }
.journey-panels > section.is-journey-running li:nth-child(3) > i { animation-name: journey-step-three; }
.journey-panels > section.is-journey-running li:nth-child(4) > i { animation-name: journey-step-four; }

@keyframes journey-track-fill {
  0%, 3% { opacity: 0; transform: scaleX(0); }
  7% { opacity: 1; }
  72%, 84% { opacity: 1; transform: scaleX(1); }
  88%, 100% { opacity: 0; transform: scaleX(1); }
}
@keyframes journey-step-one {
  0%, 3%, 88%, 100% { color:#6f8478; background:#fff; box-shadow:0 6px 18px rgba(20,43,29,.05); transform:translateY(0); }
  8%, 84% { color:#fff; background:var(--ui-green); box-shadow:0 9px 24px rgba(9,103,68,.2); transform:translateY(-2px); }
}
@keyframes journey-step-two {
  0%, 20%, 88%, 100% { color:#6f8478; background:#fff; box-shadow:0 6px 18px rgba(20,43,29,.05); transform:translateY(0); }
  25%, 84% { color:#fff; background:var(--ui-green); box-shadow:0 9px 24px rgba(9,103,68,.2); transform:translateY(-2px); }
}
@keyframes journey-step-three {
  0%, 38%, 88%, 100% { color:#6f8478; background:#fff; box-shadow:0 6px 18px rgba(20,43,29,.05); transform:translateY(0); }
  43%, 84% { color:#fff; background:var(--ui-green); box-shadow:0 9px 24px rgba(9,103,68,.2); transform:translateY(-2px); }
}
@keyframes journey-step-four {
  0%, 56%, 88%, 100% { color:#6f8478; background:#fff; box-shadow:0 6px 18px rgba(20,43,29,.05); transform:translateY(0); }
  61%, 84% { color:#fff; background:var(--ui-green); box-shadow:0 9px 24px rgba(9,103,68,.2); transform:translateY(-2px); }
}

.trust-map { position: relative; padding: 20px; color: #fff; background: #0b3225; border: 1px solid rgba(255,255,255,.13); border-radius: 18px; box-shadow: 0 18px 45px rgba(5, 43, 27, .13); }
.trust-map-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-bottom: 17px; border-bottom: 1px solid rgba(255,255,255,.13); }
.trust-map-head > span { color: #bcd2c6; font-size: .68rem; font-weight: 800; }
.trust-map-head b { display: inline-flex; align-items: center; gap: 6px; padding: 6px 9px; color: #1c432e; background: var(--ui-lime); border-radius: 7px; font-size: .6rem; }
.trust-map ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 22px 0 18px; padding: 0; list-style: none; counter-reset: none; }
.trust-map li { position: relative; display: grid; grid-template-columns: 31px minmax(0, 1fr); gap: 9px; align-items: center; min-height: 72px; padding: 10px; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.1); border-radius: 10px; }
.trust-map li > span { display: grid; width: 31px; height: 31px; place-items: center; color: #173c2a; background: var(--ui-lime); border-radius: 9px; font-size: .64rem; font-weight: 900; }
.trust-map li > div { display: grid; gap: 3px; }
.trust-map li strong { color: #fff; font-size: .75rem; }
.trust-map li small { color: #aac2b5; font-size: .6rem; line-height: 1.55; }
.trust-map > p { display: flex; gap: 11px; align-items: center; margin: 0; padding: 14px; color: #c6d8cf; background: rgba(216,239,103,.08); border: 1px solid rgba(216,239,103,.2); border-radius: 11px; font-size: .64rem; line-height: 1.65; }
.trust-map > p > i { display: grid; width: 31px; height: 31px; flex: none; place-items: center; color: var(--ui-lime); border: 1px solid rgba(216,239,103,.25); border-radius: 9px; }
.trust-map > p span { display: grid; gap: 2px; }
.trust-map > p strong { color: #fff; font-size: .68rem; }
.trust-proof { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 0; background: #fff; border: 1px solid var(--ui-line); border-bottom: 0; border-radius: 16px 16px 0 0; }
.trust-proof > div { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; align-items: center; min-height: 82px; padding: 15px 21px; border-left: 1px solid var(--ui-line); }
.trust-proof > div:last-child { border-left: 0; }
.trust-proof i { display: grid; width: 40px; height: 40px; place-items: center; color: var(--ui-green); background: var(--ui-green-soft); border-radius: 10px; }
.trust-proof span { display: grid; gap: 2px; }
.trust-proof strong { font-size: .73rem; }
.trust-proof small { color: var(--ui-muted); font-size: .61rem; line-height: 1.55; }

.home-paths, .home-market-preview, .home-hiring-discovery, .home-community-invite { padding: 76px 0; }
.home-clean-head { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 28px; }
.home-clean-head > div > span, .hiring-discovery-copy > span, .home-community-grid > div:first-child > span { color: var(--ui-green); font-size: .68rem; font-weight: 800; }
body.trust-home .home-clean-head h2, body.trust-home .hiring-discovery-copy h2, body.trust-home .home-community-grid h2 { margin: 6px 0 0; font-size: clamp(1.6rem, 2.5vw, 2.05rem); line-height: 1.3; }
.home-clean-head > p { max-width: 420px; margin: 0; color: var(--ui-muted); font-size: .8rem; }
.home-clean-head > a { display: inline-flex; align-items: center; gap: 8px; color: var(--ui-green); text-decoration: none; font-size: .74rem; font-weight: 800; }

.home-paths { background: #fff; }
.home-path-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 11px; }
.home-path-grid > a { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 13px; min-height: 164px; align-content: start; padding: 20px; color: var(--ui-ink); background: #fff; border: 1px solid var(--ui-line); border-radius: 15px; text-decoration: none; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.home-path-grid > a:hover { color: var(--ui-ink); border-color: #9db9a8; transform: translateY(-2px); box-shadow: var(--ui-shadow); }
.home-path-grid > a > i { display: grid; width: 42px; height: 42px; place-items: center; color: var(--ui-green); background: var(--ui-green-soft); border-radius: 11px; }
.home-path-grid > a > span { display: grid; gap: 5px; }
.home-path-grid strong { font-size: .84rem; }
.home-path-grid small { color: var(--ui-muted); font-size: .66rem; line-height: 1.65; }
.home-path-grid b { grid-column: 1 / -1; align-self: end; margin-top: 20px; padding-top: 12px; color: var(--ui-green); border-top: 1px solid var(--ui-line); font-size: .65rem; }
.home-path-grid > a.is-main { color: #fff; background: var(--ui-green-dark); border-color: var(--ui-green-dark); }
.home-path-grid > a.is-main > i { color: var(--ui-green-dark); background: var(--ui-lime); }
.home-path-grid > a.is-main strong { color: #fff; }
.home-path-grid > a.is-main small { color: #b9cfc3; }
.home-path-grid > a.is-main b { color: var(--ui-lime); border-color: rgba(255,255,255,.13); }

.home-market-preview { background: var(--ui-canvas); border-block: 1px solid var(--ui-line); }
.home-project-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.home-project-list > article { display: grid; grid-template-columns: 1fr auto; gap: 10px 18px; min-height: 225px; padding: 21px; background: #fff; border: 1px solid var(--ui-line); border-radius: 15px; }
.home-project-top { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.home-project-top span { padding: 5px 8px; color: var(--ui-green); background: var(--ui-green-soft); border-radius: 6px; font-size: .6rem; font-weight: 800; }
.home-project-top time { color: var(--ui-muted); font-size: .58rem; }
body.trust-home .home-project-list h3 { grid-column: 1 / -1; margin: 2px 0 0; font-size: 1.05rem; line-height: 1.45; }
.home-project-list h3 a { color: var(--ui-ink); text-decoration: none; }
.home-project-list h3 a:hover { color: var(--ui-green); }
.home-project-list article > p { grid-column: 1 / -1; margin: 0; color: var(--ui-muted); font-size: .72rem; line-height: 1.7; }
.home-project-list dl { display: flex; gap: 24px; margin: 5px 0 0; }
.home-project-list dl div { display: grid; gap: 3px; }
.home-project-list dt { color: var(--ui-muted); font-size: .57rem; }
.home-project-list dd { margin: 0; font-size: .68rem; font-weight: 800; }
.home-project-open { align-self: end; display: inline-flex; align-items: center; gap: 7px; color: var(--ui-green); text-decoration: none; font-size: .68rem; font-weight: 800; }
.home-clean-empty { grid-column: 1 / -1; display: grid; min-height: 220px; place-items: center; align-content: center; gap: 7px; color: var(--ui-muted); background: #fff; border: 1px dashed var(--ui-line-strong); border-radius: 15px; text-align: center; }
.home-clean-empty i { color: var(--ui-green); font-size: 1.4rem; }
.home-clean-empty strong { color: var(--ui-ink); font-size: .86rem; }
.home-clean-empty span { font-size: .7rem; }
.home-clean-empty a { margin-top: 5px; color: var(--ui-green); font-size: .7rem; font-weight: 800; }

.home-hiring-discovery { background: #fff; }
.hiring-discovery-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(350px, .9fr); gap: clamp(50px, 8vw, 110px); align-items: center; }
.hiring-discovery-copy > p { max-width: 620px; margin: 12px 0 22px; color: var(--ui-muted); font-size: .82rem; line-height: 1.8; }
.hiring-discovery-copy form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; max-width: 680px; padding: 7px; background: #fff; border: 1px solid var(--ui-line-strong); border-radius: 13px; box-shadow: var(--ui-shadow); }
.hiring-discovery-copy label { display: grid; gap: 4px; padding-inline: 9px; }
.hiring-discovery-copy label > span { color: var(--ui-muted); font-size: .55rem; font-weight: 700; }
.hiring-discovery-copy label > div { display: flex; align-items: center; gap: 8px; }
.hiring-discovery-copy label i { color: var(--ui-green); font-size: .7rem; }
body.trust-home .hiring-discovery-copy input { width: 100%; min-height: 31px; padding: 0; border: 0; border-radius: 0; outline: 0; font-size: .74rem; }
.hiring-discovery-copy button { min-width: 88px; min-height: 52px; color: #fff; background: var(--ui-green); border: 0; border-radius: 9px; font: inherit; font-size: .72rem; font-weight: 800; cursor: pointer; }
.hiring-discovery-copy nav { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.hiring-discovery-copy nav a { padding: 6px 9px; color: #4c5d53; background: var(--ui-canvas); border: 1px solid var(--ui-line); border-radius: 7px; text-decoration: none; font-size: .6rem; }
.hiring-discovery-steps { display: grid; gap: 8px; padding: 24px; background: #f3f7f4; border: 1px solid var(--ui-line); border-radius: 18px; }
.hiring-discovery-steps > div { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 12px; align-items: center; min-height: 72px; padding: 12px; background: #fff; border: 1px solid var(--ui-line); border-radius: 11px; }
.hiring-discovery-steps b { display: grid; width: 36px; height: 36px; place-items: center; color: #fff; background: var(--ui-green); border-radius: 10px; font-size: .68rem; }
.hiring-discovery-steps span { display: grid; gap: 3px; }
.hiring-discovery-steps strong { font-size: .75rem; }
.hiring-discovery-steps small { color: var(--ui-muted); font-size: .61rem; }
.hiring-discovery-steps > i { justify-self: center; color: #8aa494; font-size: .65rem; }

.home-community-invite { color: #fff; background: var(--ui-green-dark); }
.home-community-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); gap: clamp(45px, 8vw, 110px); align-items: center; }
body.trust-home .home-community-grid h2 { color: #fff; }
.home-community-grid > div:first-child > span { color: #9ad0b3; }
.home-community-grid > div:first-child > p { max-width: 560px; margin: 12px 0 20px; color: #b9cfc4; font-size: .76rem; line-height: 1.85; }
.home-community-grid > div:first-child > a { display: inline-flex; min-height: 44px; align-items: center; gap: 9px; padding: 9px 14px; color: #173f2e; background: var(--ui-lime); border-radius: 9px; text-decoration: none; font-size: .72rem; font-weight: 800; }
.home-topic-list { display: grid; gap: 8px; }
.home-topic-list > a { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 4px 13px; padding: 14px 15px; color: #fff; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.11); border-radius: 11px; text-decoration: none; }
.home-topic-list > a:hover { color: #fff; background: rgba(255,255,255,.09); }
.home-topic-list span { grid-row: 1 / span 2; align-self: center; color: #9fc2b0; font-size: .59rem; }
.home-topic-list strong { font-size: .72rem; line-height: 1.45; }
.home-topic-list small { color: #91aa9e; font-size: .56rem; }
.home-topic-empty { padding: 30px; color: #a9c3b6; border: 1px dashed rgba(255,255,255,.18); border-radius: 11px; text-align: center; font-size: .7rem; }

@media (max-width: 980px) {
  .trust-hero-grid { grid-template-columns: 1fr; gap: 12px; }
  .trust-hero-copy { max-width: 760px; padding-bottom: 18px; }
  .trust-map { width: 100%; max-width: 720px; justify-self: center; border-radius: 18px; }
  .home-path-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hiring-discovery-grid, .home-community-grid { grid-template-columns: 1fr; gap: 34px; }
  .hiring-discovery-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hiring-discovery-steps > i { align-self: center; transform: rotate(90deg); }
  .trust-mini-flow { flex-wrap: wrap; }
  .trust-mini-flow > em { width: 100%; justify-content: center; margin: 0; padding: 9px 0 0; border-top: 1px solid var(--ui-line); border-right: 0; }
}

@media (max-width: 760px) {
  .trust-hero { padding-top: 30px; }
  .trust-hero-grid { gap: 6px; }
  .trust-hero-copy { padding-bottom: 14px; }
  .trust-kicker { font-size: .65rem; }
  body.trust-home .trust-hero h1 { margin: 15px 0 10px; font-size: clamp(2rem, 10vw, 2.55rem); line-height: 1.13; }
  .trust-lead { max-width: 39ch; font-size: .8rem; line-height: 1.75; }
  .trust-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 20px; }
  .trust-actions a { min-height: 47px; padding: 8px; font-size: .68rem; }
  .trust-hiring-link { padding: 9px 10px; font-size: .61rem; }
  .trust-hiring-link span { align-items: flex-start; flex-wrap: wrap; gap: 5px; }
  .home-signal-card { padding: 15px; border-radius: 14px; }
  .home-character-card { min-height: 335px; border-radius: 18px; }
  .home-character-card::before { width: 230px; height: 230px; top: 36px; }
  .home-character-card > img { width: min(80%, 275px); height: 315px; bottom: 7px; }
  .home-character-badge { top: 12px; right: 12px; padding: 6px 8px; font-size: .55rem; }
  .home-character-caption { right: 10px; bottom: 10px; left: 10px; padding: 9px 11px; }
  .home-character-caption strong { font-size: .68rem; }
  .home-signal-icon { width: 37px; height: 37px; margin-top: 16px; border-radius: 10px; }
  body.trust-home .home-signal-card h2 { margin-bottom: 13px; font-size: 1rem; }
  .home-signal-card dl > div { padding: 10px 7px; }
  .home-signal-card footer { font-size: .53rem; }
  .trust-mini-flow { width: calc(100% - 28px) !important; display: grid; grid-template-columns: 1fr 12px 1fr; gap: 8px 4px; margin-top: 14px; padding: 11px; }
  .trust-mini-flow > span { font-size: .54rem; }
  .trust-mini-flow > span b { width: 21px; height: 21px; }
  .trust-mini-flow > span:nth-of-type(3) { grid-row: 2; grid-column: 1; }
  .trust-mini-flow > span:nth-of-type(4) { grid-row: 2; grid-column: 3; }
  .trust-mini-flow > i:nth-of-type(2) { display: none; }
  .trust-mini-flow > i:nth-of-type(3) { grid-row: 2; grid-column: 2; }
  .trust-mini-flow > em { grid-column: 1 / -1; padding-top: 8px; font-size: .5rem; }
  .trust-map { padding: 16px 13px; border-radius: 15px; }
  .trust-map-head { padding-bottom: 12px; }
  .trust-map-head > span { font-size: .58rem; }
  .trust-map-head b { font-size: .53rem; }
  .trust-map ol { gap: 7px; margin: 14px 0 10px; }
  .trust-map li { grid-template-columns: 28px 1fr; gap: 8px; min-height: 70px; padding: 9px; }
  .trust-map li > span { width: 28px; height: 28px; border-radius: 8px; font-size: .6rem; }
  .trust-map li strong { font-size: .63rem; }
  .trust-map li small { font-size: .51rem; }
  .trust-map > p { padding: 10px; font-size: .55rem; }
  .trust-proof { width: calc(100% - 28px) !important; grid-template-columns: 1fr; border-radius: 12px 12px 0 0; }
  .trust-proof > div { grid-template-columns: 34px 1fr; min-height: 61px; padding: 10px 13px; border-bottom: 1px solid var(--ui-line); border-left: 0; }
  .trust-proof > div:last-child { border-bottom: 0; }
  .trust-proof i { width: 34px; height: 34px; }
  .trust-proof strong { font-size: .66rem; }
  .trust-proof small { font-size: .55rem; }

  .home-paths, .home-market-preview, .home-hiring-discovery, .home-community-invite { padding: 46px 0; }
  .home-journey { padding: 46px 0; }
  .home-journey-head { margin-bottom: 17px; }
  body.trust-home .home-journey-head h2 { font-size: 1.45rem; }
  .journey-tabs { grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 112px; justify-content: start; overflow-x: auto; margin-inline: -14px; padding: 4px 14px; background: transparent; border: 0; border-radius: 0; scrollbar-width: none; }
  .journey-tabs::-webkit-scrollbar { display: none; }
  .journey-tabs button { min-height: 41px; background: #f0f3f1; border: 1px solid var(--ui-line); }
  .journey-panels { margin-top: 13px; }
  .journey-panels > section { padding: 18px 9px; }
  .journey-panels ol { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; }
  .journey-panels ol::before { display: block; top: 30px; right: 12.5%; left: 12.5%; }
  .journey-panels ol::after { top: 29px; right: 12.5%; left: 12.5%; }
  .journey-panels li { min-height: 104px; }
  .journey-panels li > i { width: 60px; height: 60px; border-radius: 17px; font-size: .9rem; }
  .journey-panels li > b { margin-top: -10px; }
  .journey-panels li > strong { max-width: 74px; font-size: .58rem; line-height: 1.45; }
  .journey-panels li > small { display: none; }
  .home-clean-head { align-items: start; gap: 13px; margin-bottom: 19px; }
  body.trust-home .home-clean-head h2, body.trust-home .hiring-discovery-copy h2, body.trust-home .home-community-grid h2 { font-size: 1.6rem; }
  .home-clean-head > p { display: none; }
  .home-clean-head > a { padding-top: 5px; font-size: .62rem; white-space: nowrap; }
  .home-path-grid { gap: 8px; }
  .home-path-grid > a { grid-template-columns: 34px 1fr; gap: 9px; min-height: 126px; padding: 13px; }
  .home-path-grid > a > i { width: 34px; height: 34px; border-radius: 9px; font-size: .7rem; }
  .home-path-grid strong { font-size: .7rem; }
  .home-path-grid small { font-size: .56rem; line-height: 1.5; }
  .home-path-grid b { margin-top: 10px; padding-top: 9px; font-size: .56rem; }

  .home-project-list { grid-template-columns: 1fr; gap: 9px; }
  .home-project-list > article { min-height: 198px; padding: 16px; }
  body.trust-home .home-project-list h3 { font-size: .9rem; }
  .home-project-list article > p { display: -webkit-box; overflow: hidden; font-size: .65rem; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .home-project-list dl { gap: 17px; }
  .home-project-list dd, .home-project-open { font-size: .61rem; }

  .hiring-discovery-copy > p { font-size: .7rem; }
  .hiring-discovery-copy form { grid-template-columns: 1fr 68px; padding: 5px; }
  .hiring-discovery-copy label { padding-inline: 6px; }
  .hiring-discovery-copy label > span { display: none; }
  body.trust-home .hiring-discovery-copy input { min-height: 42px; font-size: .66rem; }
  .hiring-discovery-copy button { min-width: 0; min-height: 42px; }
  .hiring-discovery-steps { grid-template-columns: 1fr; gap: 6px; padding: 13px; }
  .hiring-discovery-steps > div { min-height: 59px; padding: 9px; }
  .hiring-discovery-steps > i { transform: none; }
  .home-community-grid { gap: 25px; }
  .home-topic-list > a { grid-template-columns: 75px 1fr; padding: 12px; }
  .home-topic-list span { font-size: .51rem; }
  .home-topic-list strong { font-size: .64rem; }
}

@media (max-width: 980px) {
  .specialty-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ready-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ready-project-card { border: 1px solid var(--ui-line) !important; }
}

@media (max-width: 760px) {
  html { scroll-padding-top: 70px; }
  body.site-shell { font-size: 15px; }
  body.site-shell .container { width: min(100% - 28px, 1180px); }

  body.site-shell .main-header { min-height: 60px; }
  body.site-shell .header-container { width: calc(100% - 24px); min-height: 59px; }
  body.site-shell .brand-copy strong { font-size: .91rem; }
  body.site-shell .brand-symbol { width: 36px; height: 36px; flex-basis: 36px; }
  body.site-shell .header-actions { gap: 5px; }
  body.site-shell .notif-btn,
  body.site-shell .header-icon-btn,
  body.site-shell .user-btn { width: 38px; min-width: 38px; max-width: 38px; height: 38px; min-height: 38px; padding: 3px; }

  body.site-shell .mobile-menu { width: min(92vw, 370px); padding: 14px; }
  body.site-shell .mobile-nav-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    padding: 12px 0;
  }
  body.site-shell .mobile-nav-links a {
    grid-template-columns: 31px minmax(0, 1fr);
    grid-template-rows: 1fr;
    min-height: 52px;
    gap: 8px;
    padding: 8px;
    border: 1px solid var(--ui-line);
    font-size: .76rem;
  }
  body.site-shell .mobile-nav-links a > i { grid-row: 1; width: 30px; height: 30px; }
  body.site-shell .mobile-nav-links a > span { align-self: center; }
  body.site-shell .mobile-nav-links a > b { display: none; }
  body.site-shell .mobile-menu-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
  body.site-shell .mobile-menu-actions .btn { min-width: 0; margin: 0; }

  body.hiring-request-page .hiring-intro { padding: 25px 0; }
  body.hiring-request-page .hiring-intro h1 { font-size: 1.65rem; }
  body.hiring-request-page .hiring-intro h1 + p { font-size: .7rem; line-height: 1.65; }
  body.hiring-request-page .hiring-mode-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 15px; }
  body.hiring-request-page .hiring-mode-cards > span { display: grid; grid-template-columns: 1fr; min-height: 68px; justify-items: center; align-content: center; gap: 3px; padding: 8px 4px; border-bottom: 0; border-left: 1px solid rgba(255,255,255,.12); text-align: center; }
  body.hiring-request-page .hiring-mode-cards > span:last-child { border-left: 0; }
  body.hiring-request-page .hiring-mode-cards i { grid-row: auto; font-size: .68rem; }
  body.hiring-request-page .hiring-mode-cards strong { font-size: .65rem; }
  body.hiring-request-page .hiring-mode-cards small { font-size: .51rem; }
  body.hiring-request-page .hiring-form-section { padding: 16px 0 44px; }
  body.hiring-request-page .hiring-form-block { padding: 20px 14px; }
  .hiring-intro-character { min-height:145px; border-radius:14px; }
  .hiring-intro-character::before { width:140px; height:140px; top:6px; left:22%; }
  .hiring-intro-character img { width:145px; height:188px; right:78%; bottom:-26px; }
  .hiring-intro-character>span { right:auto; top:26px; bottom:auto; left:10px; width:51%; }
  .hiring-intro-character>a { right:auto; bottom:10px; left:10px; width:51%; }

  .home-command-shell { gap: 22px; padding-block: 28px; }
  .home-command-kicker { padding-bottom: 11px; font-size: .69rem; }
  .home-command-copy h1 { margin: 22px 0 12px; font-size: clamp(2rem, 10vw, 2.5rem); line-height: 1.13; }
  .home-command-copy > p { max-width: 34ch; font-size: .88rem; line-height: 1.65; }
  .home-command-actions { grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 20px; }
  .home-command-actions > a { min-height: 54px; padding: 10px 12px; }
  .home-command-actions strong { font-size: .74rem; line-height: 1.35; }
  .home-command-hiring { margin-top: 8px; padding: 9px 11px; }
  .home-command-hiring small { display: none; }
  .home-command-visual { min-height: 200px; border-radius: 15px; }
  .home-command-visual-foot span { padding: 6px 7px; font-size: .55rem; }
  .home-command-proof { width: calc(100% - 28px) !important; margin-bottom: 14px; }
  .home-command-proof > div { min-height: 62px; padding: 9px 5px; }
  .home-command-proof bdi { display: none; }
  .home-command-proof strong { font-size: .67rem; }

  .ready-catalog-section,
  .home-flow,
  .specialties-section { padding: 44px 0; }
  .home-section-intro,
  .specialties-intro { gap: 12px; margin-bottom: 22px; }
  .home-section-intro h2,
  .home-final-cta h2 { font-size: 1.72rem; line-height: 1.22; }
  .home-section-intro > p { font-size: .78rem; }
  .home-section-code { padding-top: 6px; font-size: .64rem; }
  .home-text-link { padding-bottom: 4px; font-size: .73rem; }

  .ready-catalog-grid {
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: min(78vw, 300px);
    gap: 11px;
    margin-inline: -14px;
    padding: 2px 14px 12px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
  }
  .ready-catalog-grid::-webkit-scrollbar { display: none; }
  .ready-project-card { min-height: 360px; padding: 15px; scroll-snap-align: start; }
  .ready-card-visual { height: 145px; margin: -15px -15px 13px; }
  .ready-card-copy { padding-top: 18px; }
  body.exchange-home .ready-card-copy h3 { font-size: 1rem; }
  .ready-card-copy p { font-size: .72rem; }
  .ready-card-facts > div { padding: 11px 0; }
  .ready-card-actions { min-height: 46px; }

  .flow-track { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .flow-track li { min-height: 150px; padding: 14px; }
  .flow-track h3 { margin: 20px 0 6px; font-size: .9rem; }
  .flow-track p { font-size: .7rem; line-height: 1.55; }
  .flow-top span { font-size: .6rem; }

  .specialty-index { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .specialty-index > a { min-height: 82px; padding: 12px; grid-template-columns: 18px 1fr 14px; }
  .specialty-index strong { font-size: .78rem; }
  .specialty-index small { display: none; }
  .specialty-index > a:hover { padding-inline: 12px; }
  .featured-tech-strip { margin-top: 24px; }
  body.exchange-home .featured-tech-strip { display: none; }
  .mini-tech-grid {
    display: grid;
    grid-template-columns: none !important;
    grid-auto-flow: column;
    grid-auto-columns: min(76vw, 285px);
    gap: 10px;
    padding-bottom: 10px;
    overflow-x: auto;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
  }
  .mini-tech-grid::-webkit-scrollbar { display: none; }
  .mini-tech-card { min-height: 205px; scroll-snap-align: start; }
  .home-final-cta { padding: 42px 0; }
  .home-final-grid { gap: 14px; }
  .home-final-cta p { margin-top: 10px !important; font-size: .75rem !important; }
  .home-final-actions a { min-height: 50px; }

  body.directory-page .talent-selector-hero { padding: 26px 0 30px; }
  body.directory-page .talent-selector-shell { grid-template-columns:1fr; gap:16px; }
  body.directory-page .talent-selector-copy h1 { font-size: 1.95rem; }
  body.directory-page .talent-selector-copy > p:not(.talent-selector-kicker) { max-width: 38ch; font-size: .78rem; line-height: 1.65; }
  body.directory-page .talent-selector-actions { grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 18px; }
  body.directory-page .talent-selector-actions a { min-height: 44px; gap: 8px; padding: 0 11px; font-size: .7rem; }
  body.directory-page .talent-selector-steps { display: none; }
  .talent-hero-character { min-height:145px; border-radius:15px; }
  .talent-hero-character::before { width:140px; height:140px; top:8px; left:22%; }
  .talent-hero-character img { width:150px; height:190px; right:77%; bottom:-27px; }
  .talent-hero-character>span { right:auto; width:52%; top:50%; bottom:auto; left:11px; transform:translateY(-50%); }
  .talent-search-section { margin-top: -14px; }
  .talent-search-panel { grid-template-columns: 1fr 1fr; box-shadow: var(--ui-shadow); }
  .talent-search-heading { display: none; }
  .talent-field-query { grid-column: 1 / -1; min-height: 64px; border-top: 0; }
  .talent-field { min-height: 62px; padding: 9px 11px; border-left: 1px solid var(--ui-line); }
  .talent-field > span { font-size: .58rem; }
  .talent-verified-field { grid-column: 1; min-height: 58px; padding: 8px 10px; }
  .talent-verified-field > span { display: none; }
  .talent-verified-field { grid-template-columns: 18px 1fr; }
  .talent-verified-field small { display: none; }
  .talent-search-submit { grid-column: 2; min-height: 58px; }
  .talent-search-submit button { min-height: 58px; }
  .talent-extra-filters { grid-column: 1 / -1; }
  .talent-extra-filters > div { grid-template-columns: 1fr 1fr; }
  .talent-extra-filters .talent-extra-check { grid-column: 1 / -1; min-height: 52px; }

  .professional-activity-strip { padding-top: 22px; }
  .professional-activity-strip header { margin-bottom: 10px; }
  .professional-activity-strip header strong { font-size: .76rem; }
  .professional-activity-grid {
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: 142px;
    gap: 7px;
    overflow-x: auto;
    padding-bottom: 8px;
    scrollbar-width: none;
  }
  .professional-activity-grid::-webkit-scrollbar { display: none; }
  .professional-activity-grid a { min-height: 54px; padding: 8px 10px; }
  body.directory-page .talent-results-section { padding: 28px 0 50px; }
  .talent-results-header { align-items: center; flex-direction: row; margin-bottom: 14px; }
  body.public-directory .talent-results-header h2 { font-size: 1.18rem; }
  .talent-results-help { display: none; }
  .talent-card-grid { gap: 12px; }
  .talent-profile-card { min-height: 350px; padding: 14px; border-top-width: 2px; }
  .talent-card-toolbar { min-height: 25px; }
  .talent-entity-badge { display: none; }
  .talent-compare-control > span,
  .talent-verified-badge { min-height: 25px; font-size: .6rem; }
  .talent-card-person { grid-template-columns: 58px 1fr; gap: 11px; margin-top: 12px; }
  .talent-card-photo { width: 58px; height: 64px; }
  body.public-directory .talent-card-person h3 { font-size: .94rem; }
  body.public-directory .talent-card-person p { font-size: .68rem; }
  .talent-card-meta span:first-child { display: none; }
  .talent-card-metrics { margin-top: 12px; }
  .talent-card-metrics > div { padding: 9px 6px; }
  .talent-card-metrics em { display: none; }
  .talent-card-skills { margin-top: 10px; }
  .talent-card-skills > small { display: none; }
  .talent-card-skills span { padding: 4px 6px; font-size: .58rem; }
  body.directory-page .talent-card-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); padding-top: 12px; }
  body.directory-page .talent-card-actions a,
  body.directory-page .talent-card-actions a:first-child { grid-column: auto; min-height: 40px; justify-content: center; padding: 6px; font-size: .62rem; text-align: center; }
  body.directory-page .talent-card-actions a i { display: none; }

  .service-market,
  .digital-shell { padding: 26px 14px 48px; }
  .service-market { padding-top: 0; }
  .market-heading,
  .digital-head { display: flex; align-items: flex-start; margin-bottom: 14px; padding-bottom: 14px; }
  .market-heading h1,
  .digital-head h1 { margin: 3px 0 4px; font-size: 1.55rem; }
  .market-heading p,
  .digital-head p { max-width: 34ch; font-size: .72rem; line-height: 1.55; }
  .market-heading .market-action,
  .digital-head .studio-btn { width: auto; min-height: 40px; margin: 0; padding: 8px 10px; font-size: .68rem; }
  .service-market-hero.market-heading { display:grid; grid-template-columns:minmax(0,1fr) 110px; min-height:215px; gap:3px; padding:20px 16px 0; border-radius:0; }
  .service-market-copy { padding-bottom:20px; }
  .service-market-hero.market-heading h1 { margin:5px 0 6px; font-size:1.48rem; }
  .service-market-hero.market-heading p { max-width:28ch; font-size:.64rem; line-height:1.6; }
  .service-market-hero .market-action.is-light { min-height:38px; margin-top:13px; padding:7px 9px; font-size:.59rem; }
  .service-market-character::before { width:150px; height:150px; top:35px; }
  .service-market-character img { width:145px; height:205px; bottom:-18px; }
  .service-market-character>span { display:none; }
  .market-filters,
  .digital-filter { grid-template-columns: minmax(0, 1fr) !important; gap: 7px; margin: 12px 0 15px; padding: 8px; }
  .market-filter-row { grid-template-columns: minmax(0, 1fr) 64px; }
  .market-search input,
  .market-select,
  .digital-filter input,
  .digital-filter select { min-height: 40px; font-size: .72rem; }
  .market-filter-row button,
  .digital-filter button { min-height: 40px; }
  .service-grid,
  .digital-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px; margin-top: 12px; }
  .service-card,
  .digital-card { border-radius: 13px; }
  .service-cover,
  .digital-card-media { aspect-ratio: 4 / 3; }
  .service-cover-fallback i,
  .digital-card-media { font-size: 1.45rem; }
  .service-type { top: 7px; right: 7px; padding: 4px 6px; font-size: .55rem; }
  .service-card-body,
  .digital-card-body { padding: 10px; }
  .service-card h2,
  .digital-card h2 { min-height: 2.7em; margin: 4px 0; font-size: .76rem; line-height: 1.4; }
  .service-card p,
  .digital-card p { display: none; }
  .service-provider { gap: 5px; padding-top: 7px; }
  .service-provider .avatar { width: 22px; height: 22px; }
  .service-provider-copy strong { max-width: 13ch; overflow: hidden; font-size: .59rem; text-overflow: ellipsis; white-space: nowrap; }
  .service-provider-copy small { display: none; }
  .service-card-meta { align-items: end; gap: 4px; margin-top: 7px; font-size: .58rem; }
  .service-price { max-width: 10ch; text-align: left; }
  .digital-card-body > span { display: block; overflow: hidden; font-size: .57rem; text-overflow: ellipsis; white-space: nowrap; }
  .digital-card footer { align-items: end; gap: 4px; margin-top: 8px; padding-top: 8px; font-size: .59rem; }
  .digital-card footer span { font-size: .54rem; }

  .app-shell { width: min(100% - 24px, 1180px); padding: 14px 0 46px; }
  .workspace-nav { top: 60px; margin-bottom: 14px; }
  .app-page-head { gap: 10px; margin-bottom: 14px; padding-bottom: 13px; }
  .app-page-head h1 { font-size: 1.5rem; }
  .app-page-head p { display: -webkit-box; overflow: hidden; font-size: .73rem; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .app-kicker { margin-bottom: 4px; font-size: .66rem; }
  .app-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .app-metric { min-height: 80px; padding: 12px; }
  .app-metric strong { font-size: 1.15rem; }
  .app-metric small { display: none; }
  .app-panel-pad { padding: 15px; }
  .app-actions-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .app-action-card { min-height: 58px; gap: 7px; padding: 10px; }
  .app-action-card span { gap: 7px; font-size: .7rem; }
  .app-action-card > i:last-child { display: none; }
  .app-card { min-height: 145px; padding: 15px; }
  .app-card p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .app-filter { padding: 10px; }
  .app-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .app-filter-grid .app-field { grid-column: span 1; }
  .app-filter-grid .app-field.is-wide { grid-column: 1 / -1; }
  .app-field label { margin-bottom: 4px; font-size: .66rem; }
  .app-field input,
  .app-field select { min-height: 42px; padding: 8px 9px; font-size: .73rem; }
  .app-empty { min-height: 160px; padding: 24px 18px; }

  .admin-record-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 9px; }
  .admin-record-actions form { display: contents; }
  .admin-record-actions > * { min-width: 0; width: 100%; }
  .responsive-record-table .record-action .admin-record-actions a,
  .responsive-record-table .record-action .admin-record-actions button {
    min-height: 39px;
    padding: 7px;
    border: 1px solid var(--ui-line-strong);
    color: var(--ui-ink);
    background: #fff;
    font-size: .65rem;
  }
  .responsive-record-table .app-status { max-width: 100%; white-space: normal; line-height: 1.4; }

  body.provider-public-page .provider-hero-grid { gap: 16px; padding: 24px 14px 28px; }
  body.provider-public-page .provider-identity { grid-template-columns: 62px minmax(0, 1fr); gap: 10px; }
  body.provider-public-page .provider-avatar { width: 62px; height: 62px; border-width: 3px; border-radius: 15px; }
  body.provider-public-page .provider-labels { gap: 5px; margin-bottom: 6px; }
  body.provider-public-page .provider-labels span { display: inline-flex; align-items: center; gap: 4px; padding: 5px 7px; font-size: .7rem; }
  body.provider-public-page .provider-labels .provider-role-label { display: inline-flex; }
  body.provider-public-page .provider-identity h1 { font-size: 1.4rem; }
  body.provider-public-page .provider-identity p { margin-top: 5px; font-size: .78rem; }
  body.provider-public-page .provider-specialties { margin-top: 8px; }
  body.provider-public-page .provider-specialties span { padding: 5px 7px; font-size: .69rem; }
  body.provider-public-page .provider-hero-meta { gap: 8px 14px; margin-top: 7px; font-size: .7rem; }
  body.provider-public-page .provider-action-card { padding: 15px; border-radius: 13px; }
  body.provider-public-page .provider-action-card h2 { margin: 4px 0; font-size: 1.05rem; }
  body.provider-public-page .provider-action-card p { margin-bottom: 10px; font-size: .74rem; }
  body.provider-public-page .provider-primary-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  body.provider-public-page .provider-primary-actions a { min-height: 44px; justify-content: center; padding: 9px 8px; font-size: .78rem; line-height: 1.45; text-align: center; }
  body.provider-public-page .provider-primary-actions a i { display: none; }
  body.provider-public-page .provider-secondary-actions,
  body.provider-public-page .provider-action-card small { display: none; }
  body.provider-public-page .provider-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 14px -32px; }
  body.provider-public-page .provider-stats div { min-height: 67px; padding: 9px 11px; border-bottom: 1px solid var(--ui-line); border-left: 1px solid var(--ui-line); }
  body.provider-public-page .provider-stats div:nth-child(even) { border-left: 0; }
  body.provider-public-page .provider-stats div:nth-child(n+3) { border-bottom: 0; }
  body.provider-public-page .provider-stats small { font-size: .68rem; }
  body.provider-public-page .provider-stats strong { margin-top: 3px; font-size: .82rem; }
  body.provider-public-page .provider-content { padding: 56px 14px 52px; }
  body.provider-public-page .provider-public-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; margin-bottom: 14px; padding: 5px; overflow: visible; }
  body.provider-public-page .provider-public-nav a { min-width: 0; padding: 7px 5px; font-size: .7rem; text-align: center; white-space: normal; }
  body.provider-public-page .provider-about-grid { gap: 10px; }
  body.provider-public-page .provider-surface { padding: 16px 14px; border-radius: 13px; }
  body.provider-public-page .provider-surface h2,
  body.provider-public-page .provider-showcase > header h2 { margin: 4px 0 7px; font-size: 1.15rem; }
  body.provider-public-page .provider-about-copy > p { overflow: visible; font-size: .78rem; line-height: 1.85; }
  body.provider-public-page .provider-detail-list div { grid-template-columns: 96px 1fr; padding: 8px 0; }
  body.provider-public-page .provider-skills { gap: 5px; margin-top: 11px; }
  body.provider-public-page .provider-skills span { padding: 6px 8px; font-size: .68rem; }
  body.provider-public-page .provider-showcase { padding-top: 32px; }
  body.provider-public-page .provider-showcase > header { gap: 6px; margin-bottom: 12px; }
  body.provider-public-page .provider-showcase > header p { display: none; }
  body.provider-public-page .provider-card-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-auto-flow: row;
    grid-auto-columns: auto;
    gap: 9px;
    margin-inline: 0;
    padding: 2px 0 10px;
    overflow: visible;
    scroll-snap-type: none;
  }
  body.provider-public-page :where(.profile-service-card, .profile-product-card, .profile-work-card) { min-width: 0; scroll-snap-align: none; }
  body.provider-public-page .profile-card-media { aspect-ratio: 16 / 8; }
  body.provider-public-page .profile-card-copy { padding: 13px; }
  body.provider-public-page .profile-card-copy p { display: -webkit-box; min-height: 38px; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  body.provider-public-page .provider-final { gap: 12px; margin-top: 38px; padding: 19px; border-radius: 14px; }
  body.provider-public-page .provider-final p { display: none; }
  body.provider-public-page .provider-final-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.provider-public-page .provider-final-actions a { min-height: 43px; padding: 8px; }

  body.editorial-page .editorial-hero { padding-block: 32px; }
  body.editorial-page .editorial-hero-grid { gap: 10px; }
  body.editorial-page .editorial-index { font-size: .58rem; }
  body.editorial-page .editorial-overline { margin-bottom: 8px; font-size: .63rem; }
  body.editorial-page .editorial-hero h1,
  body.editorial-page .services-editorial-hero h1 { font-size: 1.8rem; line-height: 1.2; }
  body.editorial-page .editorial-lead { font-size: .74rem; line-height: 1.7; }
  body.editorial-page .editorial-lead p { margin-bottom: 8px; }
  body.editorial-page .editorial-lead small { padding-top: 8px; font-size: .58rem; }
  body.editorial-page .editorial-hero-media { height: 190px; margin-top: 20px; border-bottom-width: 4px; }
  body.editorial-page .editorial-hero-media > span { right: 8px; bottom: 8px; padding: 5px 7px; font-size: .52rem; }
  body.editorial-page .editorial-section { padding-block: 42px; }
  body.editorial-page .editorial-section-head { gap: 6px; margin-bottom: 20px; }
  body.editorial-page .editorial-section-head h2,
  body.editorial-page .scope-grid h2 { font-size: 1.55rem; line-height: 1.22; }
  body.services-ledger .capability-ledger { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; border-top: 0; }
  body.services-ledger .capability-ledger article {
    display: block;
    min-height: 108px;
    padding: 12px;
    border: 1px solid var(--ui-line);
    border-radius: 12px;
  }
  body.services-ledger .capability-code { font-size: .52rem; }
  body.services-ledger .capability-ledger h3 { margin-top: 13px; font-size: .86rem; line-height: 1.4; }
  body.services-ledger .capability-ledger p { display: none; }
  body.services-ledger .scope-section { padding-block: 42px; }
  body.services-ledger .scope-grid { gap: 20px; }
  body.services-ledger .scope-grid ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; border-top: 0; background: rgba(255,255,255,.14); }
  body.services-ledger .scope-grid li { display: block; min-height: 100px; padding: 13px; background: var(--exchange-ink); border: 0; }
  body.services-ledger .scope-grid strong { display: block; margin-top: 14px; font-size: .78rem; }
  body.services-ledger .scope-grid p { margin-top: 4px; font-size: .62rem; line-height: 1.55; }
  body.about-ledger .principle-ledger { gap: 8px; border-top: 0; }
  body.about-ledger .principle-ledger article { min-height: 160px; padding: 15px; border: 1px solid var(--ui-line); border-radius: 12px; }
  body.about-ledger .principle-ledger h3 { margin: 24px 0 8px; font-size: 1.12rem; }
  body.about-ledger .principle-ledger p { display: -webkit-box; overflow: hidden; font-size: .7rem; line-height: 1.65; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  body.about-ledger .manifesto-section { padding-block: 42px; }
  body.about-ledger .manifesto-grid { gap: 10px; }
  body.about-ledger .manifesto-mark { display: none; }
  body.about-ledger .manifesto-grid h2 { margin-top: 7px; font-size: 1.55rem; }
  body.about-ledger .manifesto-copy { padding-top: 16px; }
  body.about-ledger .manifesto-copy p { font-size: .7rem; line-height: 1.7; }
  body.about-ledger .manifesto-copy p:nth-of-type(n+2) { display: none; }
  body.editorial-page .editorial-cta { padding-block: 42px; }
  body.editorial-page .editorial-cta p { margin-bottom: 9px; font-size: .62rem; }
  body.editorial-page .editorial-cta h2 { margin-bottom: 20px; font-size: 1.65rem; }
  body.editorial-page .editorial-cta a { min-width: 0; min-height: 48px; padding: 10px 12px; font-size: .7rem; }

  .request-studio { width: calc(100% - 24px); padding: 22px 0 48px; }
  .request-studio__head { grid-template-columns: 1fr; gap: 15px; margin-bottom: 15px; }
  .request-studio__intro h1 { margin: 5px 0; font-size: 1.65rem; }
  .request-studio__intro p { font-size: .76rem; line-height: 1.55; }
  .request-mode-switch small { display: none; }
  .request-mode-switch a { justify-content: center; padding: 8px; }
  .request-progress { margin: 14px 0 10px; }
  .request-progress button { gap: 5px; min-height: 48px; padding: 7px 4px; font-size: .62rem; }
  .request-progress button b { width: 21px; height: 21px; }
  .request-brief-layout { grid-template-columns: 1fr; }
  .request-live-card { display: none; }
  .request-step { padding: 17px 14px; }
  .request-step__head { margin-bottom: 14px; padding-bottom: 13px; }
  .request-step__head h2 { font-size: 1.2rem; }
  .request-step__head p { font-size: .72rem; }
  .request-type-tools > span small { display: none; }

  body.project-store-page .project-store-hero { padding: 22px 0; }
  body.project-store-page .project-store-copy h1 { margin: 16px 0 9px; font-size: 1.95rem; }
  body.project-store-page .project-store-copy > p { max-width: 36ch; font-size: .74rem; line-height: 1.6; }
  body.project-store-page .project-store-search { margin-top: 14px; }
  body.project-store-page .project-store-assurances { margin-top: 12px; }
  body.project-store-page .project-store-feature { min-height: 190px; border-radius: 14px; }
  body.project-store-page .project-filter-shell { padding: 8px 0; }
  body.project-store-page .project-category-list { flex-wrap: nowrap; overflow-x: auto; padding: 9px; }
  body.project-store-page .project-category-list > span { width: auto; margin: 0 0 0 5px; }
  body.project-store-page .project-products-section,
  body.project-store-page .institution-projects-section { padding: 38px 0 44px; }
  body.project-store-page .project-section-heading,
  body.project-store-page .institution-projects-head { margin-bottom: 18px; }
  body.project-store-page .project-section-heading h2,
  body.project-store-page .institution-projects-head h2 { font-size: 1.55rem; }
  body.project-store-page .project-section-heading > p,
  body.project-store-page .institution-projects-head > p { font-size: .7rem; line-height: 1.55; }
  body.project-store-page .project-product-grid,
  body.project-store-page .institution-projects-grid,
  body.project-store-page .institution-projects-grid.is-pair,
  body.project-store-page .institution-projects-grid.is-single {
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: min(80vw, 310px);
    gap: 10px;
    margin-inline: -14px;
    padding: 2px 14px 12px;
    overflow-x: auto;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
  }
  body.project-store-page .project-product-grid::-webkit-scrollbar,
  body.project-store-page .institution-projects-grid::-webkit-scrollbar { display: none; }
  body.project-store-page .project-product-card { min-height: 405px; scroll-snap-align: start; }
  body.project-store-page .project-product-image { height: 160px; }
  body.project-store-page .project-product-body { padding: 15px; }
  body.project-store-page .project-product-body h3 { margin: 10px 0 6px; font-size: .95rem; }
  body.project-store-page .project-product-body > p { min-height: auto; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  body.project-store-page .project-product-body ul { margin-top: 10px; padding-top: 10px; }
  body.project-store-page .project-product-footer { padding: 11px 14px; }
  body.project-store-page .institution-project-card,
  body.project-store-page .institution-projects-grid.is-single .institution-project-card { display: flex; scroll-snap-align: start; }
  body.project-store-page .institution-project-visual,
  body.project-store-page .institution-projects-grid.is-single .institution-project-visual { height: 155px; }
  body.project-store-page .institution-project-copy,
  body.project-store-page .institution-projects-grid.is-single .institution-project-copy { min-height: 145px; padding: 14px; }
  body.project-store-page .institution-project-copy p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  body.project-store-page .project-buying-guide { padding: 42px 0; }
  body.project-store-page .project-buying-guide-grid { gap: 20px; }
  body.project-store-page .project-buying-guide h2 { font-size: 1.5rem; }
  body.project-store-page .project-buying-guide li { padding: 13px 0; }
  body.project-store-page .project-buying-guide aside { padding: 17px; }
  body.project-store-page .project-buying-guide aside strong { margin: 12px 0 18px; }

  body.site-shell .main-footer { padding: 32px 0 0; }
  body.site-shell .footer-shell { grid-template-columns: 1fr; gap: 20px; padding-bottom: 24px; }
  body.site-shell .footer-lead h2 { max-width: 300px; margin-block: 16px 14px; font-size: 1.35rem; }
  body.site-shell .footer-cta,
  body.site-shell .footer-hire-link { display: inline-flex; width: auto; min-height: 42px; margin: 0 0 7px; padding: 8px 11px; font-size: .7rem; }
  body.site-shell .footer-links-grid { display: none; }
  body.site-shell .footer-bottom { display: flex; min-height: 0; flex-direction: column; align-items: flex-start; gap: 5px; padding-block: 15px calc(15px + env(safe-area-inset-bottom)); font-size: .61rem; }
  body.site-shell .footer-location { display: none; }

  body.admin-shell .admin-content,
  body.admin-shell .topbar > .container { width: calc(100% - 24px); }
  body.admin-shell { overflow-x: hidden; }
  html:has(body.admin-shell) { overflow-x: hidden; }
  body.admin-shell .admin-content { padding-top: 16px; }
  body.admin-shell :where(.dashboard-grid, .stats-grid, .metrics-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  body.admin-shell :where(.dashboard-card, .card, .stats-card, .table-card, .filter-card) { border-radius: 13px; }
  body.admin-shell :where(.table-responsive, .table-wrapper, .overflow-x-auto) { overflow-x: auto; }
}

@media (max-width: 420px) {
  body.site-shell .brand-copy { display: block; }
  body.site-shell .brand-copy strong { font-size: .84rem; }
  .home-command-actions > a { padding-inline: 9px; }
  .home-command-actions > a > i { display: none; }
  .market-heading .market-action,
  .digital-head .studio-btn { font-size: 0; }
  .market-heading .market-action i,
  .digital-head .studio-btn i { font-size: .75rem; }
  .talent-card-actions a { overflow-wrap: anywhere; }
}

/* Account entry follows the parent SamiLink rhythm with MaharatLink green. */
body.auth-flow-page .main-content {
  background: var(--ui-brand-end);
}
body.auth-flow-page .auth-flow {
  grid-template-columns: minmax(410px, 520px) minmax(350px, 480px);
  gap: clamp(18px, 3vw, 38px);
  align-items: stretch;
  justify-content: center;
  padding: clamp(24px, 4vw, 58px) 18px;
  background:
    radial-gradient(circle at 8% 18%, rgba(216,239,103,.14), transparent 24%),
    radial-gradient(circle at 88% 88%, rgba(50,189,125,.18), transparent 28%),
    linear-gradient(132deg, var(--ui-brand-end), var(--ui-brand-mid) 56%, var(--ui-brand-start));
}
body.auth-flow-page .auth-flow-shell,
body.auth-flow-page .auth-flow-shell-login { width: 100%; align-self: center; }
body.auth-flow-page .auth-flow-topline { color: rgba(255,255,255,.65); }
body.auth-flow-page .auth-flow-topline > a { color: #fff; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.18); }
body.auth-flow-page .auth-flow-topline > span { color: #fff; }
body.auth-flow-page .auth-flow-topline bdi { color: rgba(255,255,255,.58); }
body.auth-flow-page .auth-flow-progress { background: rgba(255,255,255,.16); }
body.auth-flow-page .auth-flow-progress i { background: var(--ui-lime); }
body.auth-flow-page .auth-flow-card { border-color: rgba(255,255,255,.52); box-shadow: 0 28px 70px rgba(0,25,17,.24); }
body.auth-flow-page .auth-flow-kicker { color: var(--ui-green); }
body.auth-flow-page .auth-text-field,
body.auth-flow-page .auth-code-field,
body.auth-flow-page .auth-flow-form .input,
body.auth-flow-page .auth-phone-field { min-height: 58px; border-color: #b8cec0; border-radius: 12px; }
body.auth-flow-page .auth-phone-field span { min-width: 52px; color: #0b6a48; }
body.auth-flow-page .auth-phone-field input { letter-spacing: 0; }
body.auth-flow-page .auth-field-hint { display:block; margin-top:-8px; color:#718078; font-size:.62rem; }
body.auth-flow-page .auth-primary,
body.auth-flow-page .auth-secondary { min-height: 56px; border-radius: 11px; font-weight: 700; }
.auth-flow-companion {
  position: relative;
  display: grid;
  align-content: start;
  min-height: 590px;
  padding: clamp(32px, 5vw, 58px);
  overflow: hidden;
  color: #fff;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 24px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}
.auth-flow-companion::before,
.auth-flow-companion::after { position: absolute; content: ""; border: 1px solid rgba(216,239,103,.14); border-radius: 50%; pointer-events: none; }
.auth-flow-companion::before { width: 250px; height: 250px; top: -155px; left: -105px; }
.auth-flow-companion::after { width: 170px; height: 170px; right: -95px; bottom: -95px; }
.auth-flow-companion > span { display: inline-flex; width: fit-content; align-items: center; gap: 8px; color: #d6f4e4; font-size: .68rem; font-weight: 700; }
.auth-flow-companion > span i { color: var(--ui-lime); }
.auth-flow-companion h2 { margin: 18px 0 11px; color: #fff; font-size: clamp(2.15rem, 3.6vw, 3.1rem); line-height: 1.2; }
.auth-flow-companion > p { max-width: 36ch; margin: 0; color: rgba(255,255,255,.7); font-size: .78rem; line-height: 1.9; }
.auth-flow-companion ol { display: grid; gap: 9px; margin: 32px 0 0; padding: 0; list-style: none; }
.auth-flow-companion li { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 11px; align-items: center; padding: 12px; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.1); border-radius: 11px; }
.auth-flow-companion li b { display: grid; width: 34px; height: 34px; place-items: center; color: #16412e; background: var(--ui-lime); border-radius: 9px; font-size: .65rem; }
.auth-flow-companion li span { display: grid; gap: 2px; }
.auth-flow-companion li strong { color: #fff; font-size: .72rem; }
.auth-flow-companion li small { color: rgba(255,255,255,.56); font-size: .59rem; }
.auth-companion-character { position:relative; min-height:270px; margin-top:20px; overflow:hidden; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.11); border-radius:16px; }
.auth-companion-character::before { position:absolute; width:205px; height:205px; top:20px; left:50%; content:""; border:1px solid rgba(255,255,255,.1); border-radius:50%; transform:translateX(-50%); }
.auth-companion-character img { position:absolute; z-index:1; width:205px; height:300px; right:50%; bottom:-40px; object-fit:contain; transform:translateX(50%); }
.auth-companion-character>span { position:absolute; z-index:2; right:9px; bottom:9px; left:9px; display:grid; padding:8px 10px; background:rgba(3,35,24,.82); border:1px solid rgba(255,255,255,.12); border-radius:9px; backdrop-filter:blur(8px); }
.auth-companion-character small { color:#9fd4ba; font-size:.52rem; }
.auth-companion-character strong { color:#fff; font-size:.65rem; }

@media (max-width: 900px) {
  body.auth-flow-page .auth-flow { grid-template-columns: minmax(0, 560px); }
  .auth-flow-companion { display: none; }
}

@media (max-width: 580px) {
  body.auth-flow-page .auth-flow { padding: 15px 10px 30px; }
  body.auth-flow-page .auth-flow-card { padding: 25px 20px; border-radius: 17px; }
  body.auth-flow-page .auth-flow-header h1 { font-size: 1.55rem; }
  body.auth-flow-page .auth-text-field,
  body.auth-flow-page .auth-code-field,
  body.auth-flow-page .auth-flow-form .input,
  body.auth-flow-page .auth-phone-field { min-height: 55px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* One public hero system: same canvas and proportions, page-specific content. */
body.directory-page .main-content,
body.hiring-request-page .main-content,
body.project-opportunity-page .main-content,
body.service-market-page .main-content,
body.community-page .main-content { width:100%; max-width:none; padding:0; overflow:visible; }

.trust-hero,
body.directory-page .talent-selector-hero,
body.hiring-request-page .hiring-intro,
body.project-opportunity-page .opportunity-head,
body.service-market-page .service-market-hero.market-heading,
body.community-page .community-hero {
  position:relative;
  box-sizing:border-box;
  height:575px;
  min-height:575px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 9% 13%,rgba(216,239,103,.14),transparent 22%),
    radial-gradient(circle at 88% 95%,rgba(50,189,125,.18),transparent 27%),
    linear-gradient(130deg,var(--ui-brand-end) 0%,var(--ui-brand-mid) 52%,var(--ui-brand-start) 100%);
  border:0;
  border-radius:0;
}

.trust-hero::before,
body.directory-page .talent-selector-hero::before,
body.hiring-request-page .hiring-intro::before,
body.project-opportunity-page .opportunity-head::before,
body.service-market-page .service-market-hero.market-heading::before,
body.community-page .community-hero::before {
  position:absolute;
  z-index:0;
  inset:0;
  width:auto;
  height:auto;
  content:"";
  opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:48px 48px;
  border:0;
  border-radius:0;
  mask-image:linear-gradient(to bottom,#000,transparent 88%);
  transform:none;
  pointer-events:none;
}
body.directory-page .talent-selector-hero::after { display:none; }

body.directory-page .talent-selector-hero,
body.hiring-request-page .hiring-intro { width:100%; margin-inline:0; padding:62px 0 0; }
body.project-opportunity-page .opportunity-head,
body.service-market-page .service-market-hero.market-heading,
body.community-page .community-hero {
  width:100vw;
  grid-template-columns:minmax(0,1fr) minmax(410px,.82fr);
  gap:clamp(42px,7vw,86px);
  align-items:center;
  margin-inline:calc(50% - 50vw);
  margin-bottom:0;
  padding:62px max(20px,calc((100vw - 1180px)/2)) 0;
}
.trust-hero-grid,
body.directory-page .talent-selector-shell,
body.hiring-request-page .hiring-intro-grid {
  position:relative;
  z-index:1;
  grid-template-columns:minmax(0,1fr) minmax(410px,.82fr);
  gap:clamp(42px,7vw,86px);
  align-items:center;
}
body.directory-page .talent-selector-shell,
body.hiring-request-page .hiring-intro-grid { min-height:410px; }
body.project-opportunity-page .opportunity-head-copy,
body.service-market-page .service-market-copy,
body.community-page .community-hero > div { position:relative; z-index:1; min-width:0; }

body.directory-page .talent-selector-copy h1,
body.hiring-request-page .hiring-intro h1,
body.project-opportunity-page .opportunity-head h1,
body.service-market-page .service-market-hero.market-heading h1,
body.community-page .community-hero h1 {
  max-width:760px;
  margin:18px 0 12px;
  color:#fff;
  font-size:clamp(2.45rem,4vw,3.55rem);
  line-height:1.12;
  letter-spacing:-.035em;
}
body.directory-page .talent-selector-copy > p:not(.talent-selector-kicker),
body.hiring-request-page .hiring-intro h1 + p,
body.project-opportunity-page .opportunity-head p,
body.service-market-page .service-market-hero.market-heading p,
body.community-page .community-hero p { max-width:590px; color:rgba(255,255,255,.74); font-size:.95rem; line-height:1.9; }

.home-character-card,
.talent-hero-character,
.hiring-intro-character,
.opportunity-head-character,
.service-market-character {
  position:relative;
  z-index:1;
  width:100%;
  height:410px;
  min-height:410px;
  align-self:start;
  overflow:hidden;
  background:radial-gradient(circle at 50% 42%,rgba(216,239,103,.18),transparent 34%),rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.18);
  border-radius:24px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 28px 70px rgba(1,31,21,.2);
}
.home-character-card::before,
.talent-hero-character::before,
.hiring-intro-character::before,
.opportunity-head-character::before,
.service-market-character::before {
  position:absolute;
  width:290px;
  height:290px;
  top:44px;
  left:50%;
  content:"";
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  transform:translateX(-50%);
}
.home-character-card > img,
.talent-hero-character > img,
.hiring-intro-character > img,
.opportunity-head-character > img,
.service-market-character > img {
  position:absolute;
  z-index:1;
  width:min(78%,335px);
  height:390px;
  right:50%;
  bottom:9px;
  object-fit:contain;
  transform:translateX(50%);
}
.talent-hero-character > span,
.opportunity-head-character > span,
.service-market-character > span { right:15px; bottom:14px; left:15px; padding:12px 14px; border-radius:12px; }
.hiring-intro-character > span { right:15px; bottom:65px; left:15px; padding:10px 13px; border-radius:11px; }
.hiring-intro-character > a { right:15px; bottom:14px; left:15px; min-height:42px; padding:9px 12px; border-radius:10px; }

body.community-page .community-hero-side { position:relative; z-index:1; display:block; width:100%; height:410px; min-height:410px; align-self:start; }
body.community-page .community-hero-character {
  position:absolute;
  inset:0;
  min-height:410px;
  overflow:hidden;
  background:radial-gradient(circle at 50% 42%,rgba(216,239,103,.18),transparent 34%),rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.18);
  border-radius:24px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 28px 70px rgba(1,31,21,.2);
}
body.community-page .community-hero-character::before { width:290px; height:290px; top:44px; }
body.community-page .community-hero-character img { width:min(94%,390px); height:320px; bottom:44px; }
body.community-page .community-hero-character > span { right:15px; bottom:80px; left:15px; width:auto; padding:10px 13px; border-radius:11px; }
body.community-page .community-hero-side .community-stats {
  position:absolute;
  z-index:4;
  right:15px;
  bottom:14px;
  left:15px;
  grid-template-columns:repeat(3,minmax(0,1fr));
  min-height:54px;
  margin:0;
  overflow:hidden;
  background:rgba(3,35,24,.82);
  border:1px solid rgba(255,255,255,.13);
  border-radius:11px;
  backdrop-filter:blur(10px);
}
body.community-page .community-hero-side .community-stats div { padding:7px 9px; }
body.community-page .community-hero-side .community-stats dt { font-size:.5rem; }
body.community-page .community-hero-side .community-stats dd { margin-top:1px; font-size:.75rem; }

@media (max-width:760px) {
  body.request-detail-page .main-content,
  body.request-detail-page .project-workspace { width:100%; margin-inline:0; }

  .trust-hero,
  body.directory-page .talent-selector-hero,
  body.hiring-request-page .hiring-intro,
  body.project-opportunity-page .opportunity-head,
  body.service-market-page .service-market-hero.market-heading,
  body.community-page .community-hero { height:auto; min-height:0; }

  body.directory-page .talent-selector-hero,
  body.hiring-request-page .hiring-intro { padding:30px 0 24px; }
  body.project-opportunity-page .opportunity-head,
  body.service-market-page .service-market-hero.market-heading,
  body.community-page .community-hero { grid-template-columns:1fr; gap:12px; padding:30px 14px 24px; }
  body.project-opportunity-page .opportunity-head { width:100%; margin-inline:0; }
  .trust-hero-grid,
  body.directory-page .talent-selector-shell,
  body.hiring-request-page .hiring-intro-grid { grid-template-columns:1fr; gap:12px; }
  body.directory-page .talent-selector-shell,
  body.hiring-request-page .hiring-intro-grid { min-height:0; }

  body.directory-page .talent-selector-copy h1,
  body.hiring-request-page .hiring-intro h1,
  body.project-opportunity-page .opportunity-head h1,
  body.service-market-page .service-market-hero.market-heading h1,
  body.community-page .community-hero h1 { margin:15px 0 10px; font-size:clamp(2rem,10vw,2.55rem); line-height:1.13; }
  body.directory-page .talent-selector-copy > p:not(.talent-selector-kicker),
  body.hiring-request-page .hiring-intro h1 + p,
  body.project-opportunity-page .opportunity-head p,
  body.service-market-page .service-market-hero.market-heading p,
  body.community-page .community-hero p { max-width:39ch; font-size:.8rem; line-height:1.75; }

  .home-character-card,
  .talent-hero-character,
  .hiring-intro-character,
  .opportunity-head-character,
  .service-market-character { height:335px; min-height:335px; border-radius:18px; }
  .home-character-card::before,
  .talent-hero-character::before,
  .hiring-intro-character::before,
  .opportunity-head-character::before,
  .service-market-character::before { width:230px; height:230px; top:36px; left:50%; }
  .home-character-card > img,
  .talent-hero-character > img,
  .hiring-intro-character > img,
  .opportunity-head-character > img,
  .service-market-character > img { width:min(80%,275px); height:315px; right:50%; bottom:7px; }
  .talent-hero-character > span,
  .opportunity-head-character > span,
  .service-market-character > span { display:grid; top:auto; right:10px; bottom:10px; left:10px; width:auto; transform:none; }
  .hiring-intro-character > span { top:auto; right:10px; bottom:60px; left:10px; width:auto; }
  .hiring-intro-character > a { right:10px; bottom:10px; left:10px; width:auto; }

  body.community-page .community-hero-side { height:335px; min-height:335px; }
  body.community-page .community-hero-character { min-height:335px; }
  body.community-page .community-hero-character::before { width:230px; height:230px; top:36px; }
  body.community-page .community-hero-character img { width:min(94%,390px); height:265px; bottom:46px; }
  body.community-page .community-hero-character > span { right:10px; bottom:72px; left:10px; width:auto; transform:none; }
  body.community-page .community-hero-side .community-stats { right:10px; bottom:10px; left:10px; min-height:50px; }
  body.community-page .community-hero-side .community-stats div { padding:6px; }
}

/* Comparison uses the same cards, controls and spacing as the public directory. */
.talent-compare-tray {
  right:50%;
  bottom:20px;
  width:min(560px,calc(100vw - 28px));
  padding:10px 12px;
  background:rgba(5,52,36,.96);
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
  box-shadow:0 18px 48px rgba(3,35,24,.24);
  backdrop-filter:blur(12px);
  transform:translateX(50%);
}
.talent-compare-count { width:38px; height:38px; color:#144530; background:var(--ui-lime); border-radius:10px; }
.talent-compare-tray strong { font-size:.72rem; }
.talent-compare-tray small { color:rgba(255,255,255,.62); font-size:.56rem; }
.talent-compare-tray nav { gap:6px; }
.talent-compare-tray button { min-height:40px; padding:7px 12px; border-radius:9px; font-size:.62rem; }
.talent-compare-tray button.is-primary { color:#0a4b35; background:#fff; border-color:#fff; }

.talent-compare-dialog {
  width:min(940px,calc(100vw - 32px));
  max-height:calc(100dvh - 36px);
  padding:0;
  overflow:hidden;
  color:var(--ui-ink);
  background:#f4f7f5;
  border:1px solid rgba(255,255,255,.7);
  border-radius:20px;
  box-shadow:0 30px 100px rgba(2,29,19,.38);
}
.talent-compare-dialog::backdrop { background:rgba(4,22,15,.64); backdrop-filter:blur(5px); }
.talent-compare-dialog-head {
  position:sticky;
  top:0;
  z-index:3;
  padding:18px 20px;
  background:radial-gradient(circle at 8% 18%,rgba(216,239,103,.12),transparent 24%),linear-gradient(132deg,var(--ui-brand-end),var(--ui-brand-mid));
  border-bottom:1px solid rgba(255,255,255,.12);
}
.talent-compare-dialog-head span { color:#a8d8bf; font-size:.61rem; }
body.public-directory .talent-compare-dialog-head h2 { margin:3px 0 0; color:#fff; font-size:1.18rem; }
.talent-compare-dialog-head button { width:40px; height:40px; border-color:rgba(255,255,255,.24); border-radius:10px; }
.talent-compare-dialog-head button:hover { background:rgba(255,255,255,.1); }
.talent-compare-hint { display:flex; align-items:center; gap:8px; margin:0; padding:11px 18px; color:#506158; background:#fff; border-bottom:1px solid var(--ui-line); font-size:.65rem; }
.talent-compare-hint i { color:var(--ui-green); }
.talent-compare-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:12px;
  max-height:calc(100dvh - 160px);
  padding:14px;
  overflow:auto;
  overscroll-behavior:contain;
}
.talent-compare-grid > section {
  display:flex;
  min-width:0;
  flex-direction:column;
  padding:16px;
  background:#fff;
  border:1px solid var(--ui-line);
  border-radius:14px;
  box-shadow:0 8px 24px rgba(20,43,29,.05);
}
.talent-compare-grid > section:last-child { border-left:1px solid var(--ui-line); }
.talent-compare-person { grid-template-columns:58px minmax(0,1fr); min-height:64px; }
.talent-compare-person img,
.talent-compare-avatar { width:58px; height:58px; border:0; border-radius:12px; filter:none; }
.talent-compare-person strong { color:var(--ui-ink); font-size:.82rem; }
.talent-compare-person span { margin-top:3px; color:var(--ui-muted); font-size:.61rem; }
.talent-compare-grid dl { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin:15px 0; padding:1px; background:var(--ui-line); border:0; border-radius:10px; overflow:hidden; }
.talent-compare-grid dl > div { display:grid; min-height:60px; align-content:center; justify-content:stretch; gap:3px; padding:9px 10px; background:#fbfcfb; border:0; }
.talent-compare-grid dt { color:var(--ui-muted); font-size:.55rem; }
.talent-compare-grid dd { color:var(--ui-ink); font-size:.67rem; text-align:right; }
.talent-compare-skills { display:grid; min-height:0; gap:7px; margin:0 0 15px; }
.talent-compare-skills > strong { color:var(--ui-muted); font-size:.57rem; }
.talent-compare-skills > div { display:flex; flex-wrap:wrap; gap:5px; }
.talent-compare-skills span { padding:5px 7px; color:#425148; background:var(--ui-green-soft); border-radius:6px; font-size:.55rem; }
.talent-compare-actions { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:auto; }
.talent-compare-grid .talent-compare-actions > a { display:flex; min-height:42px; align-items:center; justify-content:center; gap:7px; margin:0; padding:7px; color:var(--ui-green); background:#fff; border:1px solid #aac2b4; border-radius:8px; font-size:.6rem; text-decoration:none; }
.talent-compare-grid .talent-compare-actions > a.is-private { color:#fff; background:var(--ui-green); border-color:var(--ui-green); }
.talent-compare-grid .talent-compare-actions > a.is-hiring { grid-column:1/-1; color:#244d38; background:var(--ui-green-soft); border-color:var(--ui-line); }

@media (max-width:700px) {
  .talent-compare-tray { bottom:10px; gap:8px; padding:8px; border-radius:12px; }
  .talent-compare-tray > div { gap:8px; }
  .talent-compare-count { width:34px; height:34px; }
  .talent-compare-tray p { display:none; }
  .talent-compare-tray button { min-height:38px; padding-inline:10px; }
  .talent-compare-dialog { width:calc(100vw - 12px); max-height:calc(100dvh - 12px); border-radius:16px; }
  .talent-compare-dialog-head { padding:13px 14px; }
  body.public-directory .talent-compare-dialog-head h2 { font-size:.95rem; }
  .talent-compare-hint { padding:9px 12px; font-size:.58rem; }
  .talent-compare-grid { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:min(82vw,315px); gap:9px; max-height:calc(100dvh - 135px); padding:10px; scroll-snap-type:x mandatory; }
  .talent-compare-grid > section { scroll-snap-align:center; padding:14px; }
}

/* Homepage payment path: one centered sequence, one clear reassurance. */
.trust-mini-flow {
  display:grid;
  gap:8px;
  padding:10px 18px 9px;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(255,255,255,.72);
  border-radius:16px 16px 0 0;
  box-shadow:0 -12px 35px rgba(1,31,21,.08);
}
.trust-flow-steps { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); max-width:760px; width:100%; margin-inline:auto; }
.trust-flow-steps::before { position:absolute; z-index:0; top:12px; right:12.5%; left:12.5%; height:1px; content:""; background:#c7d5cd; }
.trust-flow-steps > span { position:relative; z-index:1; display:grid; grid-template-columns:24px auto; align-items:center; justify-content:center; gap:7px; color:#33463b; white-space:nowrap; }
.trust-flow-steps b { display:grid; width:26px; height:26px; place-items:center; color:#fff; background:var(--ui-green); border:3px solid #fff; border-radius:50%; font-size:.57rem; }
.trust-flow-steps strong { font-size:.68rem; }
.trust-mini-flow > p { display:flex; align-items:center; justify-content:center; gap:7px; margin:0; padding-top:7px; color:#38624d; border-top:1px solid var(--ui-line); font-size:.59rem; font-weight:700; }
.trust-mini-flow > p i { color:var(--ui-green); }
@media (min-width:761px) {
  .trust-mini-flow { position:absolute; right:50%; bottom:0; width:min(980px,calc(100% - 40px)); margin:0; transform:translateX(50%); }
}
@media (max-width:760px) {
  .trust-mini-flow { position:relative; width:calc(100% - 28px) !important; grid-template-columns:1fr; gap:7px; margin:15px auto 0; padding:10px 8px; transform:none; }
  .trust-flow-steps { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .trust-flow-steps::before { right:11%; left:11%; }
  .trust-flow-steps > span { grid-template-columns:1fr; justify-items:center; gap:3px; text-align:center; white-space:normal; }
  .trust-flow-steps strong { font-size:.49rem; line-height:1.4; }
  .trust-mini-flow > p { padding:7px 6px 0; font-size:.5rem; text-align:center; }
}

/* Directory search: search first, common filters second, details on demand. */
.talent-search-panel { display:block; overflow:hidden; color:var(--ui-ink); background:#fff; border:1px solid var(--ui-line-strong); border-radius:16px; box-shadow:0 22px 60px rgba(15,52,35,.12); }
.talent-search-primary { display:grid; grid-template-columns:190px minmax(0,1fr) 124px; min-height:88px; align-items:stretch; }
.talent-search-heading { grid-column:auto; display:flex; min-height:88px; flex-direction:column; justify-content:center; padding:15px 20px; color:#fff; background:linear-gradient(135deg,var(--ui-green-dark),var(--ui-green)); border-radius:0; }
.talent-search-heading span { margin:0 0 3px; color:#a8d8bf; font-size:.55rem; }
.talent-search-heading strong { font-size:.86rem; }
.talent-search-primary .talent-field-query { grid-column:auto; min-height:88px; padding:14px 20px; border:0; }
.talent-search-primary .talent-field-query > span { color:var(--ui-muted); font-size:.56rem; }
.talent-search-primary .talent-field-query > div { display:flex; align-items:center; gap:10px; min-height:44px; }
.talent-search-primary .talent-field-query i { color:var(--ui-green); }
body.public-directory .talent-search-primary .talent-field-query input { min-height:44px; padding:0; background:transparent; border:0; box-shadow:none; font-size:.78rem; }
.talent-search-primary .talent-search-submit { grid-column:auto; display:grid; grid-template-rows:1fr auto; min-height:88px; border:0; }
.talent-search-primary .talent-search-submit button { display:flex; min-height:100%; align-items:center; justify-content:space-between; gap:12px; padding:12px 17px; color:#fff; background:var(--ui-green); border:0; border-radius:0; font:inherit; font-size:.68rem; font-weight:800; cursor:pointer; }
.talent-search-primary .talent-search-submit a { padding:6px; color:var(--ui-green); background:var(--ui-green-soft); font-size:.52rem; text-align:center; text-decoration:none; }
.talent-core-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); background:var(--ui-line); border-top:1px solid var(--ui-line); gap:1px; }
.talent-core-filters .talent-field { min-height:76px; padding:11px 18px; background:#fff; border:0; }
.talent-core-filters .talent-field > span { color:var(--ui-muted); font-size:.55rem; }
body.public-directory .talent-core-filters select { width:100%; min-height:36px; padding:0; color:var(--ui-ink); background:transparent; border:0; box-shadow:none; font-size:.7rem; }
.talent-extra-filters { border-top:1px solid var(--ui-line); }
.talent-extra-filters summary { min-height:42px; background:#f7faf8; font-size:.58rem; }
.talent-extra-filters > div { grid-template-columns:repeat(4,minmax(0,1fr)) 1.15fr; }
.talent-extra-filters label { min-height:66px; padding:9px 13px; }

@media (max-width:760px) {
  .talent-search-section { margin-top:-14px; }
  .talent-search-panel { display:block; border-radius:14px; }
  .talent-search-primary { grid-template-columns:1fr 82px; min-height:0; }
  .talent-search-heading { grid-column:1/-1; display:flex; min-height:64px; padding:11px 14px; }
  .talent-search-primary .talent-field-query { grid-column:1; min-height:66px; padding:9px 12px; }
  .talent-search-primary .talent-search-submit { grid-column:2; min-height:66px; }
  .talent-search-primary .talent-search-submit button { min-height:66px; padding:8px; justify-content:center; }
  .talent-search-primary .talent-search-submit button i { display:none; }
  .talent-core-filters { grid-template-columns:1fr 1fr; }
  .talent-core-filters .talent-field { min-height:64px; padding:8px 11px; }
  .talent-core-filters .talent-field:last-child { grid-column:1/-1; }
  .talent-extra-filters > div { grid-template-columns:1fr 1fr; }
  .talent-extra-filters .talent-extra-check { grid-column:1/-1; }
}

/* About: a visual story built around the platform's actual role. */
body.about-story-page .main-content { width:100%; max-width:none; padding:0; overflow:hidden; }
.about-story-hero { min-height:575px; padding:62px 0; color:#fff; background:radial-gradient(circle at 9% 13%,rgba(216,239,103,.14),transparent 22%),radial-gradient(circle at 88% 95%,rgba(50,189,125,.18),transparent 27%),linear-gradient(130deg,var(--ui-brand-end),var(--ui-brand-mid) 52%,var(--ui-brand-start)); }
.about-story-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(410px,.82fr); min-height:451px; align-items:center; gap:clamp(42px,7vw,86px); }
.about-story-kicker { display:flex; align-items:center; gap:8px; margin:0; color:#bde7d2; font-size:.68rem; font-weight:800; }
.about-story-kicker span { width:32px; height:1px; background:#9ed1b7; }
body.about-story-page .about-story-copy h1 { margin:17px 0 13px; color:#fff; font-size:clamp(2.55rem,4.2vw,3.8rem); line-height:1.1; }
body.about-story-page .about-story-copy h1 span { color:var(--ui-lime); }
.about-story-copy > p:not(.about-story-kicker) { max-width:620px; margin:0; color:rgba(255,255,255,.74); font-size:.92rem; line-height:1.9; }
.about-story-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.about-story-actions a { display:flex; min-height:49px; align-items:center; justify-content:center; gap:16px; padding:9px 18px; color:#fff; border:1px solid rgba(255,255,255,.56); border-radius:10px; text-decoration:none; font-size:.7rem; font-weight:800; }
.about-story-actions a:first-child { color:var(--ui-green-dark); background:#fff; border-color:#fff; }
.about-story-copy > small { display:flex; max-width:600px; align-items:flex-start; gap:8px; margin-top:14px; color:#c2e0d1; font-size:.59rem; line-height:1.7; }
.about-story-copy > small i { margin-top:4px; color:var(--ui-lime); }
.about-map-card { height:410px; padding:18px; background:rgba(255,255,255,.075); border:1px solid rgba(255,255,255,.18); border-radius:24px; box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 28px 70px rgba(1,31,21,.2); }
.about-map-card > p { display:grid; gap:2px; margin:0; padding-bottom:13px; border-bottom:1px solid rgba(255,255,255,.12); }
.about-map-card > p span { color:#a9d7bf; font-size:.55rem; }
.about-map-card > p strong { color:#fff; font-size:.72rem; }
.about-map-grid { position:relative; display:grid; height:318px; grid-template-columns:1fr 1.2fr 1fr; grid-template-rows:1fr 1.2fr 1fr; grid-template-areas:". project ." "hiring center services" ". community ."; align-items:center; justify-items:center; }
.about-map-grid::before,.about-map-grid::after { position:absolute; z-index:0; content:""; background:rgba(255,255,255,.2); }
.about-map-grid::before { top:50%; right:16%; left:16%; height:1px; }
.about-map-grid::after { top:15%; bottom:15%; left:50%; width:1px; }
.about-map-node,.about-map-center { position:relative; z-index:1; display:grid; place-items:center; text-align:center; }
.about-map-node { min-width:82px; min-height:58px; gap:4px; padding:8px; color:#d7eee2; background:#185d43; border:1px solid rgba(255,255,255,.14); border-radius:10px; }
.about-map-node i { color:#a9d8bf; }
.about-map-node b { font-size:.6rem; }
.about-map-node.is-project { grid-area:project; }.about-map-node.is-hiring { grid-area:hiring; }.about-map-node.is-services { grid-area:services; }.about-map-node.is-community { grid-area:community; }
.about-map-center { grid-area:center; width:126px; height:126px; align-content:center; gap:3px; color:var(--ui-green-dark); background:var(--ui-lime); border:8px solid rgba(255,255,255,.1); border-radius:50%; box-shadow:0 16px 40px rgba(0,0,0,.18); }
.about-map-center i { margin-bottom:3px; font-size:1.2rem; }.about-map-center small { font-size:.48rem; }.about-map-center strong { font-size:.68rem; }
.about-simple-flow { padding:78px 0; background:#fff; }
.about-simple-flow header { display:grid; grid-template-columns:130px 1fr 1fr; gap:28px; align-items:end; margin-bottom:34px; }
.about-simple-flow header span,.about-paths header span { color:var(--ui-green); font-size:.64rem; font-weight:800; }
.about-simple-flow header h2,.about-paths header h2 { margin:0; font-size:clamp(2rem,3vw,2.7rem); }
.about-simple-flow header p { margin:0; color:var(--ui-muted); font-size:.76rem; line-height:1.8; }
.about-simple-flow .container > div { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.about-simple-flow article { min-height:225px; padding:20px; background:#fbfcfb; border:1px solid var(--ui-line); border-radius:15px; }
.about-simple-flow article b { color:var(--ui-green); font-size:.58rem; }.about-simple-flow article i { display:grid; width:44px; height:44px; place-items:center; margin-top:34px; color:var(--ui-green); background:var(--ui-green-soft); border-radius:11px; }
.about-simple-flow article h3 { margin:16px 0 6px; font-size:1rem; }.about-simple-flow article p { margin:0; color:var(--ui-muted); font-size:.68rem; }
.about-guarantee { padding:78px 0; color:#fff; background:#10251c; }
.about-guarantee-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:38px 70px; align-items:start; }
.about-guarantee span { color:#92cfad; font-size:.64rem; font-weight:800; }
body.about-story-page .about-guarantee h2 { margin:12px 0 0; color:#fff; font-size:clamp(2.2rem,3.5vw,3.25rem); line-height:1.13; }
.about-guarantee-copy { padding-top:13px; border-top:1px solid rgba(255,255,255,.2); }
.about-guarantee-copy p { margin:0 0 12px; color:rgba(255,255,255,.7); font-size:.8rem; line-height:1.9; }.about-guarantee-copy p:last-child { display:flex; gap:8px; color:#c9e6d6; }.about-guarantee-copy i { margin-top:7px; color:var(--ui-lime); }
.about-guarantee ol { position:relative; display:grid; grid-column:1/-1; grid-template-columns:repeat(4,1fr); margin:10px 0 0; padding:0; list-style:none; }
.about-guarantee ol::before { position:absolute; top:18px; right:12.5%; left:12.5%; height:1px; content:""; background:rgba(255,255,255,.23); }
.about-guarantee li { position:relative; z-index:1; display:grid; justify-items:center; gap:7px; }.about-guarantee li b { display:grid; width:37px; height:37px; place-items:center; color:#153b29; background:var(--ui-lime); border:5px solid #10251c; border-radius:50%; font-size:.58rem; }.about-guarantee li span { color:#fff; font-size:.65rem; }
.about-paths { padding:78px 0; background:#f6f8f6; }
.about-paths header { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:28px; }
.about-paths .container > div { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.about-paths a { display:grid; grid-template-columns:42px 1fr 20px; min-height:98px; align-items:center; gap:13px; padding:17px; color:var(--ui-ink); background:#fff; border:1px solid var(--ui-line); border-radius:14px; text-decoration:none; }
.about-paths a > i:first-child { display:grid; width:42px; height:42px; place-items:center; color:var(--ui-green); background:var(--ui-green-soft); border-radius:10px; }.about-paths a > i:last-child { color:var(--ui-green); }.about-paths a span { display:grid; gap:4px; }.about-paths a strong { font-size:.82rem; }.about-paths a small { color:var(--ui-muted); font-size:.61rem; }
.about-final-cta { padding:60px 0; color:#fff; background:var(--ui-green); }.about-final-cta > .container { display:flex; align-items:center; justify-content:space-between; gap:30px; }.about-final-cta span { color:#c7e8d5; font-size:.65rem; }.about-final-cta h2 { margin:6px 0 0; color:#fff; font-size:clamp(1.8rem,3vw,2.6rem); }.about-final-cta a { display:flex; min-width:190px; min-height:52px; align-items:center; justify-content:space-between; padding:11px 16px; color:#fff; background:#10251c; border-radius:10px; text-decoration:none; font-size:.7rem; font-weight:800; }
@media (max-width:760px) {
  .about-story-hero { min-height:0; padding:30px 0 24px; }
  .about-story-grid { grid-template-columns:1fr; min-height:0; gap:20px; }
  body.about-story-page .about-story-copy h1 { font-size:2.2rem; }
  .about-story-copy > p:not(.about-story-kicker) { font-size:.76rem; }
  .about-map-card { height:335px; padding:14px; border-radius:18px; }
  .about-map-grid { height:260px; }.about-map-node { min-width:68px; min-height:52px; }.about-map-center { width:105px; height:105px; }
  .about-simple-flow,.about-guarantee,.about-paths { padding:48px 0; }
  .about-simple-flow header { grid-template-columns:1fr; gap:7px; margin-bottom:20px; }.about-simple-flow header p { font-size:.7rem; }
  .about-simple-flow .container > div { grid-template-columns:1fr 1fr; gap:8px; }.about-simple-flow article { min-height:165px; padding:14px; }.about-simple-flow article i { margin-top:18px; }.about-simple-flow article h3 { font-size:.86rem; }.about-simple-flow article p { font-size:.61rem; }
  .about-guarantee-grid { grid-template-columns:1fr; gap:22px; }.about-guarantee ol { gap:1px; }.about-guarantee li span { font-size:.53rem; text-align:center; }
  .about-paths header { align-items:start; flex-direction:column; }.about-paths .container > div { grid-template-columns:1fr; }.about-paths a { min-height:82px; }
  .about-final-cta { padding:42px 0; }.about-final-cta > .container { align-items:stretch; flex-direction:column; }.about-final-cta a { min-width:0; }
}

/* Public project detail: full-bleed project story instead of an isolated panel. */
body.project-detail-public .main-content { width:100%; max-width:none; padding:0; overflow:hidden; }
.project-detail-hero { min-height:575px; padding:62px 0; color:#fff; background:radial-gradient(circle at 9% 13%,rgba(216,239,103,.12),transparent 22%),linear-gradient(130deg,var(--ui-brand-end),var(--ui-brand-mid) 52%,var(--ui-brand-start)); border:0; }
.project-detail-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(480px,1fr); min-height:451px; align-items:center; gap:clamp(42px,7vw,86px); }
.project-detail-copy { min-width:0; }
.project-detail-back { display:inline-flex; align-items:center; gap:7px; color:#b9e2cd; font-size:.63rem; font-weight:800; text-decoration:none; }
.project-detail-kicker { margin:24px 0 8px; color:#a8d8bf; font-size:.65rem; font-weight:800; }
body.project-detail-public .project-detail-copy h1 { max-width:680px; margin:0; color:#fff; font-size:clamp(2.65rem,4.4vw,4rem); line-height:1.07; }
.project-detail-summary { max-width:610px; margin-top:15px; color:rgba(255,255,255,.72); font-size:.84rem; line-height:1.9; }
.project-detail-brief { display:grid; grid-template-columns:1fr 1fr; max-width:510px; margin:24px 0 0; border:1px solid rgba(255,255,255,.18); }
.project-detail-brief > div { display:grid; gap:4px; min-height:72px; align-content:center; padding:12px 15px; border-left:1px solid rgba(255,255,255,.15); }.project-detail-brief > div:last-child { border-left:0; }.project-detail-brief dt { color:#abd5c0; font-size:.54rem; }.project-detail-brief dd { margin:0; color:#fff; font-size:.76rem; font-weight:800; }
.project-detail-action { display:flex; width:fit-content; min-width:210px; min-height:48px; align-items:center; justify-content:space-between; gap:22px; margin-top:12px; padding:9px 15px; color:var(--ui-green-dark); background:#fff; border-radius:10px; font-size:.68rem; font-weight:800; text-decoration:none; }
.project-detail-visual { position:relative; grid-column:auto; grid-row:auto; height:410px; min-height:410px; overflow:hidden; background:rgba(255,255,255,.075); border:1px solid rgba(255,255,255,.18); border-radius:24px; box-shadow:0 28px 70px rgba(1,31,21,.2); }
.project-detail-visual img { width:100%; height:100%; object-fit:cover; }.project-detail-visual > span { position:absolute; right:15px; bottom:14px; padding:8px 11px; color:#fff; background:rgba(3,35,24,.82); border:1px solid rgba(255,255,255,.12); border-radius:9px; font-size:.57rem; }
.project-detail-content { padding:78px 0; background:#fff; }.project-detail-grid { gap:clamp(48px,8vw,110px); }.project-detail-description > span,.project-detail-deliverables > span { color:var(--ui-green); font-size:.62rem; font-weight:800; }.project-detail-description p { color:var(--ui-muted); font-size:.78rem; }.project-detail-deliverables ol { margin-top:24px; border-top-color:var(--ui-ink); }.project-detail-deliverables li { min-height:68px; }
.project-detail-note { padding:28px 0; background:var(--ui-green); }.project-detail-note > .container { grid-template-columns:150px 1fr auto; }
@media (max-width:760px) {
  .project-detail-hero { min-height:0; padding:30px 0 24px; }
  .project-detail-head { width:calc(100% - 28px); grid-template-columns:1fr; min-height:0; gap:20px; }
  .project-detail-kicker { margin-top:18px; }.project-detail-summary { font-size:.74rem; }
  body.project-detail-public .project-detail-copy h1 { font-size:2.3rem; }
  .project-detail-brief { max-width:none; }.project-detail-action { width:100%; }
  .project-detail-visual { height:300px; min-height:300px; border-radius:18px; }
  .project-detail-content { padding:48px 0; }.project-detail-grid { width:calc(100% - 28px); gap:34px; }.project-detail-description h2 { margin-top:14px !important; font-size:1.55rem !important; }
  .project-detail-note > .container { width:calc(100% - 28px); grid-template-columns:1fr; gap:12px; }
}

/* Contact: task-first, compact and consistent with the section hero system. */
body.contact-support-page .main-content { width:100%; max-width:none; padding:0; overflow:hidden; }
.contact-support-hero {
  min-height:575px;
  padding:62px 0;
  color:#fff;
  background:radial-gradient(circle at 9% 13%,rgba(216,239,103,.14),transparent 22%),radial-gradient(circle at 88% 95%,rgba(50,189,125,.18),transparent 27%),linear-gradient(130deg,var(--ui-brand-end),var(--ui-brand-mid) 52%,var(--ui-brand-start));
}
.contact-support-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(410px,.82fr); min-height:451px; align-items:center; gap:clamp(42px,7vw,86px); }
.contact-support-copy { min-width:0; }
.contact-support-copy > p:first-child { display:flex; align-items:center; gap:9px; margin:0; color:#b7e0ca; font-size:.68rem; font-weight:800; }
.contact-support-copy > p:first-child span { width:32px; height:1px; background:#9ed1b7; }
body.contact-support-page .contact-support-copy h1 { max-width:650px; margin:17px 0 13px; color:#fff; font-size:clamp(2.7rem,4.5vw,4rem); line-height:1.07; }
.contact-support-copy > h1 + p { max-width:580px; margin:0; color:rgba(255,255,255,.74); font-size:.86rem; line-height:1.9; }
.contact-support-copy > div { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.contact-support-copy > div a { display:flex; min-height:49px; align-items:center; justify-content:space-between; gap:22px; padding:9px 17px; color:#fff; border:1px solid rgba(255,255,255,.42); border-radius:10px; text-decoration:none; font-size:.68rem; font-weight:800; }
.contact-support-copy > div a:first-child { min-width:180px; color:var(--ui-green-dark); background:#fff; border-color:#fff; }
.contact-support-copy > small { display:flex; align-items:flex-start; gap:8px; margin-top:14px; color:#b9dcc9; font-size:.58rem; line-height:1.7; }
.contact-support-copy > small i { margin-top:4px; color:var(--ui-lime); }
.contact-support-visual { position:relative; height:410px; overflow:hidden; background:rgba(255,255,255,.075); border:1px solid rgba(255,255,255,.18); border-radius:24px; box-shadow:0 28px 70px rgba(1,31,21,.2); }
.contact-support-visual::before { position:absolute; width:285px; height:285px; top:35px; left:50%; content:""; border:1px solid rgba(255,255,255,.13); border-radius:50%; transform:translateX(-50%); }
.contact-support-visual img { position:absolute; z-index:1; top:24px; right:50%; width:94%; height:315px; object-fit:contain; transform:translateX(50%); }
.contact-support-visual > span { position:absolute; z-index:1; right:14px; bottom:14px; left:14px; display:grid; gap:2px; padding:10px 12px; color:#fff; background:rgba(3,35,24,.82); border:1px solid rgba(255,255,255,.12); border-radius:10px; backdrop-filter:blur(8px); }
.contact-support-visual small { color:#9fd4ba; font-size:.53rem; }.contact-support-visual strong { font-size:.66rem; }
.contact-support-section { padding:76px 0; background:#f5f8f6; }
.contact-support-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr); gap:14px; align-items:start; }
.contact-support-form-card,.contact-support-channels { overflow:hidden; background:#fff; border:1px solid var(--ui-line); border-radius:18px; box-shadow:var(--ui-shadow); }
.contact-support-form-card > header { display:flex; min-height:84px; align-items:center; justify-content:space-between; gap:20px; padding:18px 22px; border-bottom:1px solid var(--ui-line); }
.contact-support-form-card > header div { display:grid; gap:3px; }.contact-support-form-card > header span { color:var(--ui-green); font-size:.6rem; font-weight:800; }.contact-support-form-card > header h2 { margin:0; font-size:1.25rem; }.contact-support-form-card > header small { color:var(--ui-muted); font-size:.57rem; }
.contact-support-form-card form { padding:22px; }
.contact-support-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px 14px; }
.contact-support-field { display:grid; min-width:0; gap:6px; }.contact-support-field.is-wide { grid-column:1/-1; }
.contact-support-field label { color:var(--ui-ink); font-size:.67rem; font-weight:800; }
.contact-support-field input,.contact-support-field textarea { width:100%; min-width:0; min-height:48px; padding:10px 12px; color:var(--ui-ink); background:#fff; border:1px solid var(--ui-line-strong); border-radius:10px; outline:0; font:inherit; font-size:.72rem; }
.contact-support-field input:focus,.contact-support-field textarea:focus { border-color:var(--ui-green); box-shadow:0 0 0 3px rgba(8,100,63,.1); }
.contact-support-field textarea { min-height:130px; resize:vertical; line-height:1.8; }
.contact-support-submit { display:flex; width:100%; min-height:50px; align-items:center; justify-content:space-between; margin-top:18px; padding:10px 15px; color:#fff; background:var(--ui-green); border:0; border-radius:10px; font:inherit; font-size:.7rem; font-weight:800; cursor:pointer; }
.contact-support-channels > header { display:flex; min-height:70px; align-items:center; justify-content:space-between; padding:16px 18px; color:#fff; background:#10251c; }
.contact-support-channels > header span { font-size:.69rem; font-weight:800; }.contact-support-channels > header i { color:var(--ui-lime); }
.contact-support-channels > a,.contact-support-channels > div { display:grid; grid-template-columns:36px minmax(0,1fr) 16px; min-height:88px; align-items:center; gap:10px; padding:15px 16px; color:var(--ui-ink); border-bottom:1px solid var(--ui-line); text-decoration:none; }
.contact-support-channels > div { grid-template-columns:36px minmax(0,1fr); }
.contact-support-channels > :is(a,div) > i:first-child { display:grid; width:36px; height:36px; place-items:center; color:var(--ui-green); background:var(--ui-green-soft); border-radius:9px; }
.contact-support-channels > a > i:last-child { color:var(--ui-green); font-size:.65rem; }
.contact-support-channels > :is(a,div) span { display:grid; min-width:0; gap:3px; }.contact-support-channels small { color:var(--ui-muted); font-size:.55rem; }.contact-support-channels strong { overflow-wrap:anywhere; font-size:.66rem; }
.contact-support-channels > p { display:flex; align-items:flex-start; gap:8px; margin:0; padding:16px; color:var(--ui-muted); background:#fbfcfb; font-size:.59rem; line-height:1.8; }.contact-support-channels > p i { margin-top:4px; color:var(--ui-green); }
@media (max-width:900px) {
  .contact-support-hero-grid { grid-template-columns:minmax(0,1fr) minmax(320px,.8fr); gap:30px; }
  .contact-support-grid { grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr); }
}
@media (max-width:760px) {
  .contact-support-hero { min-height:0; padding:30px 0 24px; }
  .contact-support-hero-grid { grid-template-columns:1fr; min-height:0; gap:20px; }
  body.contact-support-page .contact-support-copy h1 { margin-top:13px; font-size:2.25rem; }
  .contact-support-copy > h1 + p { font-size:.74rem; }
  .contact-support-copy > div { margin-top:18px; }
  .contact-support-copy > div a { flex:1 1 145px; min-width:0; min-height:44px; padding:8px 11px; font-size:.62rem; }
  .contact-support-copy > div a:first-child { min-width:0; }
  .contact-support-visual { height:250px; border-radius:18px; }
  .contact-support-visual::before { width:190px; height:190px; top:24px; }
  .contact-support-visual img { top:12px; width:92%; height:185px; }
  .contact-support-section { padding:38px 0 48px; }
  .contact-support-grid { grid-template-columns:1fr; gap:10px; }
  .contact-support-form-card { order:1; border-radius:14px; }.contact-support-channels { order:2; border-radius:14px; }
  .contact-support-form-card > header { min-height:70px; padding:14px; }.contact-support-form-card > header h2 { font-size:1.08rem; }
  .contact-support-form-card form { padding:14px; }
  .contact-support-form-grid { grid-template-columns:1fr; gap:13px; }.contact-support-field.is-wide { grid-column:auto; }
  .contact-support-field input,.contact-support-field textarea { min-height:44px; padding:9px 10px; font-size:.68rem; }.contact-support-field textarea { min-height:112px; }
  .contact-support-submit { min-height:46px; margin-top:14px; }
  .contact-support-channels > a,.contact-support-channels > div { min-height:72px; padding:12px 13px; }
}
@media (max-width:360px) {
  body.contact-support-page .container { width:calc(100% - 20px); }
  body.contact-support-page .contact-support-copy h1 { font-size:2rem; }
  .contact-support-copy > div { display:grid; grid-template-columns:1fr; }
  .contact-support-visual { height:215px; }
  .contact-support-form-card > header { align-items:flex-start; flex-direction:column; gap:4px; }
  .contact-support-form-card form { padding:12px; }
}

/* Account entry stays inside the public site: one focused card in a quiet banner. */
body.auth-flow-page .main-header,
body.auth-flow-page .main-footer { display:block; }
body.auth-flow-page .main-content { width:100%; max-width:none; min-height:0; padding:0; background:#f5f8f6; }
body.auth-flow-page .auth-flow {
  grid-template-columns:minmax(0,600px);
  min-height:680px;
  align-items:start;
  justify-content:center;
  padding:52px 14px 60px;
  background:radial-gradient(circle at 9% 13%,rgba(216,239,103,.12),transparent 22%),linear-gradient(132deg,var(--ui-brand-end),var(--ui-brand-mid) 56%,var(--ui-brand-start));
}
body.auth-flow-page .auth-flow-shell,
body.auth-flow-page .auth-flow-shell-login { width:min(100%,600px); align-self:start; }
body.auth-flow-page .auth-flow-companion { display:none; }
body.auth-flow-page .auth-flow-topline { grid-template-columns:1fr auto; margin-bottom:11px; }
body.auth-flow-page .auth-flow-topline > a { display:none; }
body.auth-flow-page .auth-flow-progress { margin-bottom:10px; }
body.auth-flow-page .auth-flow-card { padding:30px 32px; border:1px solid rgba(255,255,255,.58); border-radius:18px; box-shadow:0 24px 60px rgba(0,28,19,.18); }
body.auth-flow-page .auth-flow-header { margin-bottom:21px; }
body.auth-flow-page .auth-flow-header h1 { font-size:1.9rem; }
body.auth-flow-page .auth-role-grid { gap:8px; }
body.auth-flow-page .auth-role-option { min-height:82px; padding:13px 14px; border-radius:12px; }
body.auth-flow-page .auth-text-field,
body.auth-flow-page .auth-code-field,
body.auth-flow-page .auth-flow-form .input,
body.auth-flow-page .auth-phone-field { min-height:50px; border-radius:10px; }
body.auth-flow-page .auth-primary,
body.auth-flow-page .auth-secondary { min-height:50px; border-radius:10px; }
body.auth-flow-page .auth-flow-login { margin-top:20px; padding-top:15px; }
body.auth-flow-page .auth-flow-legal { margin-top:9px; }
@media (max-width:580px) {
  body.auth-flow-page .auth-flow { min-height:0; padding:26px 10px 38px; }
  body.auth-flow-page .auth-flow-card { padding:20px 16px; border-radius:15px; }
  body.auth-flow-page .auth-flow-header { margin-bottom:17px; }
  body.auth-flow-page .auth-flow-header h1 { font-size:1.48rem; }
  body.auth-flow-page .auth-flow-header p { font-size:.69rem; }
  body.auth-flow-page .auth-role-option { grid-template-columns:40px minmax(0,1fr) 12px; min-height:76px; gap:2px 9px; padding:11px 10px; }
  body.auth-flow-page .auth-role-icon { width:40px; height:40px; border-radius:10px; }
  body.auth-flow-page .auth-role-option strong { font-size:.72rem; }
  body.auth-flow-page .auth-role-option small { font-size:.57rem; }
  body.auth-flow-page .auth-text-field,
  body.auth-flow-page .auth-code-field,
  body.auth-flow-page .auth-flow-form .input,
  body.auth-flow-page .auth-phone-field,
  body.auth-flow-page .auth-primary,
  body.auth-flow-page .auth-secondary { min-height:46px; }
}
@media (max-width:340px) {
  body.auth-flow-page .auth-flow { padding-inline:8px; }
  body.auth-flow-page .auth-flow-card { padding:17px 12px; }
  body.auth-flow-page .auth-flow-topline { font-size:.63rem; }
  body.auth-flow-page .auth-flow-header h1 { font-size:1.36rem; }
  body.auth-flow-page .auth-role-option { grid-template-columns:36px minmax(0,1fr); }
  body.auth-flow-page .auth-role-icon { width:36px; height:36px; }
  body.auth-flow-page .auth-role-option > i { display:none; }
}

/* Mobile and compact-tablet forms must never hide fields behind action bars. */
@media (max-width:800px) {
  body.profile-edit-page .profile-edit-actions {
    position:static;
    z-index:auto;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin:18px 0 0;
    padding:14px 0 0;
    background:transparent;
    box-shadow:none;
  }
  body.profile-edit-page .profile-edit-actions .app-button { width:100%; min-width:0; min-height:44px; justify-content:center; }

  /* Comfortable touch targets without making mobile cards bulky. */
  body.site-shell .app-button.is-small,
  body.admin-shell .app-button.is-small,
  body.site-shell :where(.editor-step-toggle,.product-step-toggle) { min-height:40px; }
  body.site-shell details > summary { min-height:40px; align-items:center; }
  body.site-shell .auth-legacy-login summary { display:flex; min-height:40px; align-items:center; justify-content:center; }
  body.admin-shell .topbar-search-form { min-height:40px; }
  body.admin-shell .topbar-search-form button { width:40px; min-width:40px; min-height:40px; }
  body.admin-shell .msg-actions-hover { opacity:1; }
  body.admin-shell .btn-icon,
  body.admin-shell .btn-close { width:38px; min-width:38px; height:38px; min-height:38px; }
  body.admin-shell .msg-search button { width:40px; min-width:40px; height:40px; min-height:40px; }
  body.admin-shell .sidebar-toggle { min-height:40px; padding-block:8px; }
}

/* Support information is admin-owned; the footer stays inside the green identity. */
body.site-shell .main-footer {
  background:
    radial-gradient(circle at 8% 8%,rgba(216,239,103,.09),transparent 24%),
    linear-gradient(135deg,#052f23 0%,#064b35 54%,#08734d 100%);
}
body.site-shell .footer-orbit { border-color:rgba(255,255,255,.1); box-shadow:0 0 0 70px rgba(255,255,255,.018),0 0 0 140px rgba(255,255,255,.012); }
body.site-shell .footer-brand .brand-symbol { color:var(--ui-green-dark); background:#fff; }
body.site-shell .footer-cta { color:var(--ui-green-dark); background:#fff; }
/* Search controls have one boundary only, even when an older page stylesheet loads first. */
body.site-shell :is(
  .opportunity-search > div,
  .community-hero-search,
  .project-store-search > div,
  .legal-search
) input[type="search"] {
  min-height:40px !important;
  padding-block:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
body.site-shell :is(
  .opportunity-search > div,
  .community-hero-search,
  .project-store-search > div,
  .legal-search
):focus-within {
  border-color:var(--ui-green) !important;
  box-shadow:0 0 0 3px rgba(8,100,63,.09) !important;
}
body.trust-home .hiring-discovery-copy input[type="search"] { min-height:40px; }
body.request-brief-page .request-native-control select {
  position:absolute !important;
  width:1px !important;
  min-width:1px !important;
  height:1px !important;
  min-height:1px !important;
  padding:0 !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Every owned professional/entity profile has an explicit customer-view action. */
.provider-manage-actions { display:grid; grid-template-columns:1fr auto; gap:8px; }
.provider-manage-actions .provider-profile-preview { grid-column:1/-1; display:flex; justify-content:center; color:#fff; background:var(--ui-green); border-color:var(--ui-green); }
.provider-owner-preview {
  display:flex;
  width:min(1180px,calc(100% - 40px));
  min-height:68px;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:18px auto 0;
  padding:12px 15px;
  color:var(--ui-ink);
  background:#fff;
  border:1px solid var(--ui-line);
  border-radius:14px;
  box-shadow:var(--ui-shadow);
}
.provider-owner-preview > div { display:flex; min-width:0; align-items:center; gap:10px; }
.provider-owner-preview > div > i { display:grid; width:38px; height:38px; flex:0 0 38px; place-items:center; color:var(--ui-green); background:var(--ui-green-soft); border-radius:10px; }
.provider-owner-preview > div span { display:grid; gap:2px; }
.provider-owner-preview strong { font-size:.72rem; }
.provider-owner-preview small { color:var(--ui-muted); font-size:.58rem; }
.provider-owner-preview nav { display:flex; flex-wrap:wrap; gap:7px; }
.provider-owner-preview nav a { display:flex; min-height:40px; align-items:center; justify-content:center; padding:8px 12px; color:#fff; background:var(--ui-green); border:1px solid var(--ui-green); border-radius:9px; text-decoration:none; font-size:.62rem; font-weight:800; }
.provider-owner-preview nav a:last-child { color:var(--ui-green); background:#fff; }
body.provider-public-page .provider-final h2 { color:#fff; }
body.provider-public-page .provider-final p { color:rgba(255,255,255,.72); }

@media (max-width:760px) {
  /* Four paths remain in one contained row; there is no sideways page or clipped fifth edge. */
  .journey-tabs {
    display:grid;
    width:100%;
    grid-auto-flow:row;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:4px;
    justify-content:stretch;
    overflow:visible;
    margin-inline:0;
    padding:4px;
    background:#f0f3f1;
    border:1px solid var(--ui-line);
    border-radius:11px;
  }
  .journey-tabs button { min-width:0; min-height:39px; gap:4px; padding:5px 2px; font-size:.53rem; line-height:1.25; white-space:nowrap; }
  .journey-tabs button i { font-size:.54rem; }
  .provider-manage-actions { grid-template-columns:1fr; }
  .provider-manage-actions .provider-profile-preview { grid-column:auto; }
  .provider-owner-preview { width:calc(100% - 20px); align-items:stretch; flex-direction:column; gap:10px; margin-top:10px; padding:11px; }
  .provider-owner-preview nav { display:grid; grid-template-columns:1fr 1fr; }
  .provider-owner-preview nav a { min-width:0; padding-inline:7px; font-size:.57rem; }
}

@media (max-width:350px) {
  .journey-tabs { gap:3px; padding:3px; }
  .journey-tabs button { min-height:37px; gap:2px; padding-inline:1px; font-size:.48rem; }
  .journey-tabs button i { display:none; }
}

/* Dark-surface contrast contract ------------------------------------------
 * `data-ui-tone="dark"` belongs on the dark content surface, while a nested
 * white/lime control is explicitly marked `data-ui-tone="light"`.  Keeping
 * the exception in the markup prevents a broad descendant rule from turning
 * text white inside a light card that happens to live in a dark hero.
 */
:root {
  --ui-on-dark: #ffffff;
  --ui-on-dark-soft: #e4f1ea;
}

body.site-shell [data-ui-tone="dark"] {
  color: #e4f1ea !important;
}
body.site-shell [data-ui-tone="dark"]
  :where(h1,h2,h3,h4,h5,h6,strong,b,label,legend,dt,dd,a,button,summary):not([data-ui-tone="light"]):not([data-ui-tone="light"] *) {
  color: #fff !important;
}
body.site-shell [data-ui-tone="dark"]
  :where(p,small,time,figcaption,span,em,li):not([data-ui-tone="light"]):not([data-ui-tone="light"] *) {
  color: #e4f1ea !important;
}

/* Font Awesome renders through ::before; inline SVGs use currentColor. */
body.site-shell [data-ui-tone="dark"]
  :where(i,.fa,.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands):not([data-ui-tone="light"]):not([data-ui-tone="light"] *),
body.site-shell [data-ui-tone="dark"]
  :where(i,.fa,.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands):not([data-ui-tone="light"]):not([data-ui-tone="light"] *)::before {
  color: #fff !important;
}
body.site-shell [data-ui-tone="dark"] svg:not([data-preserve-color]):not([data-ui-tone="light"]):not([data-ui-tone="light"] *) {
  color: #fff !important;
  fill: currentColor !important;
}
body.site-shell [data-ui-tone="dark"] svg:not([data-preserve-color]):not([data-ui-tone="light"]):not([data-ui-tone="light"] *) [fill]:not([fill="none"]) {
  fill: currentColor !important;
}
body.site-shell [data-ui-tone="dark"] svg:not([data-preserve-color]):not([data-ui-tone="light"]):not([data-ui-tone="light"] *) [stroke]:not([stroke="none"]) {
  stroke: currentColor !important;
}
body.site-shell .provider-progress-card > .app-button[data-ui-tone="light"] {
  color: #075536 !important;
  background: #fff;
  border-color: #fff;
}

/* Stateful dark controls cannot fall back to the global ink colour. */
body.site-shell :is(
  .wz-btn:not(.wz-btn--ghost):not(.wz-btn--quiet):not(.wz-btn--preview):not(.wz-btn--danger),
  .wz-quicknav a.is-active,
  .wz-step-link.is-current,
  .wz-manager-menu__summary,
  .wz-segment label:has(input:checked),
  .studio-btn:not(.is-ghost),
  .studio-switcher a.is-active,
  .studio-submit button,
  .provider-primary-actions a:not(:last-child),
  .digital-filter button,
  .digital-buybox > a,
  .digital-buybox > button,
  .product-step-next,
  .workspace-nav a.is-active,
  .app-button:not(.is-secondary):not(.is-quiet):not(.is-danger),
  .journey-tabs button[aria-selected="true"],
  .contact-support-submit,
  .talent-search-submit button,
  .market-action:not(.is-light),
  .provider-manage-actions .provider-profile-preview,
  .provider-owner-preview nav a:not(:last-child)
) {
  color: #fff !important;
}
body.site-shell :is(
  .wz-btn:not(.wz-btn--ghost):not(.wz-btn--quiet):not(.wz-btn--preview):not(.wz-btn--danger),
  .wz-quicknav a.is-active,
  .wz-step-link.is-current,
  .wz-manager-menu__summary,
  .wz-segment label:has(input:checked),
  .studio-btn:not(.is-ghost),
  .studio-switcher a.is-active,
  .studio-submit button,
  .provider-primary-actions a:not(:last-child),
  .digital-filter button,
  .digital-buybox > a,
  .digital-buybox > button,
  .product-step-next,
  .workspace-nav a.is-active,
  .app-button:not(.is-secondary):not(.is-quiet):not(.is-danger),
  .journey-tabs button[aria-selected="true"],
  .contact-support-submit,
  .talent-search-submit button,
  .market-action:not(.is-light),
  .provider-manage-actions .provider-profile-preview,
  .provider-owner-preview nav a:not(:last-child)
) :where(i,.fa,.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands),
body.site-shell :is(
  .wz-btn:not(.wz-btn--ghost):not(.wz-btn--quiet):not(.wz-btn--preview):not(.wz-btn--danger),
  .wz-quicknav a.is-active,
  .wz-step-link.is-current,
  .wz-manager-menu__summary,
  .wz-segment label:has(input:checked),
  .studio-btn:not(.is-ghost),
  .studio-switcher a.is-active,
  .studio-submit button,
  .provider-primary-actions a:not(:last-child),
  .digital-filter button,
  .digital-buybox > a,
  .digital-buybox > button,
  .product-step-next,
  .workspace-nav a.is-active,
  .app-button:not(.is-secondary):not(.is-quiet):not(.is-danger),
  .journey-tabs button[aria-selected="true"],
  .contact-support-submit,
  .talent-search-submit button,
  .market-action:not(.is-light),
  .provider-manage-actions .provider-profile-preview,
  .provider-owner-preview nav a:not(:last-child)
) :where(i,.fa,.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands)::before {
  color: #fff !important;
}

/* Dark backgrounds with no semantic marker yet (global shell/legacy states). */
body.site-shell :is(
  .main-footer,
  .hiring-side-guide,
  .hiring-dashboard-head,
  .talent-compare-tray,
  .talent-compare-dialog-head,
  .tech-direct-request,
  .tech-profile-final-cta,
  .portfolio-case-cta,
  .portfolio-publish-bar,
  .product-editor-actions
) :where(i,.fa,.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands):not([data-ui-tone="light"] *),
body.site-shell :is(
  .main-footer,
  .hiring-side-guide,
  .hiring-dashboard-head,
  .talent-compare-tray,
  .talent-compare-dialog-head,
  .tech-direct-request,
  .tech-profile-final-cta,
  .portfolio-case-cta,
  .portfolio-publish-bar,
  .product-editor-actions
) :where(i,.fa,.fas,.far,.fab,.fa-solid,.fa-regular,.fa-brands):not([data-ui-tone="light"] *)::before {
  color: #fff !important;
}

/* These badges/buttons are deliberately light surfaces inside dark sections. */
body.provider-public-page .provider-labels :is(.availability-available,.availability-limited),
body.provider-public-page .provider-labels :is(.availability-available,.availability-limited) i,
body.provider-public-page .provider-labels :is(.availability-available,.availability-limited) i::before {
  color: #163d2c !important;
}

/* Keep the registration layout above the older shared auth overrides. */
body.auth-flow-page.registration-flow-page .main-header,
body.auth-flow-page.registration-flow-page .main-footer { display:none; }
body.auth-flow-page.registration-flow-page .main-content { min-height:100svh; background:#edf2ee; }
body.auth-flow-page.registration-flow-page .auth-flow.auth-registration-flow {
  display:flex;
  min-height:100svh;
  align-items:center;
  justify-content:center;
  padding:clamp(18px,3.5vw,52px);
  background:radial-gradient(circle at 8% 12%,rgba(8,116,72,.09),transparent 24%),radial-gradient(circle at 92% 88%,rgba(216,239,103,.16),transparent 25%),#edf2ee;
}
body.auth-flow-page.registration-flow-page .auth-flow-shell { width:100%; align-self:stretch; padding:clamp(32px,4vw,54px) clamp(28px,4.6vw,64px); }
body.auth-flow-page.registration-flow-page .auth-flow-companion { display:flex; min-height:650px; border:0; border-radius:0; box-shadow:none; }
body.auth-flow-page.registration-flow-page .auth-flow-card { padding:0; background:transparent; border:0; border-radius:0; box-shadow:none; }
body.auth-flow-page.registration-flow-page .auth-flow-header { margin-bottom:28px; }
body.auth-flow-page.registration-flow-page .auth-flow-header h1 { font-size:clamp(2rem,3.5vw,2.8rem); }
body.auth-flow-page.registration-flow-page .auth-role-grid { grid-template-columns:1fr 1fr; gap:12px; }
body.auth-flow-page.registration-flow-page .auth-role-option { min-height:190px; padding:20px; border-radius:18px; }
body.auth-flow-page.registration-flow-page .auth-text-field,
body.auth-flow-page.registration-flow-page .auth-code-field,
body.auth-flow-page.registration-flow-page .auth-flow-form .input,
body.auth-flow-page.registration-flow-page .auth-phone-field { min-height:60px; border-radius:14px; }
body.auth-flow-page.registration-flow-page .auth-primary,
body.auth-flow-page.registration-flow-page .auth-secondary { min-height:58px; border-radius:14px; }
body.auth-flow-page.registration-flow-page .auth-flow-login { margin-top:30px; padding-top:20px; }
body.auth-flow-page.registration-flow-page .auth-flow-legal { margin-top:13px; }

@media (max-width:900px) {
  body.auth-flow-page.registration-flow-page .auth-flow.auth-registration-flow { align-items:flex-start; padding:18px; }
  body.auth-flow-page.registration-flow-page .auth-flow-companion { display:block; min-height:260px; padding:34px; }
  body.auth-flow-page.registration-flow-page .auth-flow-shell { padding:34px; }
}
@media (max-width:620px) {
  body.auth-flow-page.registration-flow-page .auth-flow.auth-registration-flow { min-height:100svh; padding:0; background:#fff; }
  body.auth-flow-page.registration-flow-page .auth-flow-companion { min-height:220px; padding:28px 20px; }
  body.auth-flow-page.registration-flow-page .auth-flow-shell { padding:28px 18px 36px; }
  body.auth-flow-page.registration-flow-page .auth-flow-header { margin-bottom:24px; }
  body.auth-flow-page.registration-flow-page .auth-flow-header h1 { font-size:1.85rem; }
  body.auth-flow-page.registration-flow-page .auth-role-grid { grid-template-columns:1fr; }
  body.auth-flow-page.registration-flow-page .auth-role-option { min-height:92px; padding:14px; }
}

body.auth-flow-page.registration-flow-page .auth-phone-field-simple { grid-template-columns:122px minmax(0,1fr); overflow:visible; }
body.auth-flow-page.registration-flow-page .auth-phone-country-static {
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 12px;
  color:#15382a;
  background:#eef5f1;
  border-inline-end:1px solid #d3e0d8;
  border-radius:13px 0 0 13px;
  font:800 .72rem/1 system-ui,sans-serif;
}
body.auth-flow-page.registration-flow-page .auth-phone-field-simple input { padding-inline:17px; font-size:1rem; letter-spacing:.02em; }
body.auth-flow-page .auth-phone-field-global { display:grid; grid-template-columns:minmax(168px,.9fr) minmax(0,1.25fr); overflow:hidden; }
body.auth-flow-page .auth-phone-field-global select {
  min-width:0;
  width:100%;
  border:0;
  border-inline-end:1px solid #d7e3db;
  background:#eef5f1;
  color:#174b39;
  padding:0 13px;
  font:700 .82rem/1.3 "Tajawal",sans-serif;
  cursor:pointer;
  outline:0;
}
body.auth-flow-page .auth-phone-field-global select:focus { box-shadow:inset 0 0 0 2px #0b6a48; }
body.auth-flow-page .auth-phone-field-global input { padding-inline:17px; font-size:1rem; letter-spacing:.02em; }
@media (max-width:420px) {
  body.auth-flow-page.registration-flow-page .auth-phone-field-simple { grid-template-columns:108px minmax(0,1fr); }
  body.auth-flow-page.registration-flow-page .auth-phone-country-static { padding-inline:9px; font-size:.66rem; }
  body.auth-flow-page.registration-flow-page .auth-phone-field-simple input { padding-inline:12px; font-size:.86rem; }
  body.auth-flow-page .auth-phone-field-global { grid-template-columns:138px minmax(0,1fr); }
  body.auth-flow-page .auth-phone-field-global select { padding-inline:8px; font-size:.72rem; }
  body.auth-flow-page .auth-phone-field-global input { padding-inline:10px; font-size:.86rem; }
}

/* Premium clarity layer: calmer surfaces, obvious actions, and readable compact layouts. */
:root {
  --ui-surface-soft: #f1f5f2;
  --ui-shadow-card: 0 12px 32px rgba(10, 48, 32, .075);
  --ui-shadow-float: 0 22px 56px rgba(7, 45, 29, .13);
  --ui-ease: cubic-bezier(.2, .75, .25, 1);
}

body.site-shell {
  background:
    radial-gradient(circle at 5% 8%, rgba(9, 103, 68, .045), transparent 24rem),
    radial-gradient(circle at 96% 30%, rgba(216, 239, 103, .08), transparent 27rem),
    var(--ui-canvas);
}

body.site-shell :where(a, button, input, select, textarea):focus-visible {
  outline: 3px solid rgba(9, 103, 68, .22);
  outline-offset: 3px;
}

body.home-page .home-paths {
  position: relative;
  padding-block: clamp(54px, 6vw, 82px);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(246, 249, 247, .98)),
    var(--ui-surface);
  border-bottom: 1px solid rgba(203, 214, 207, .72);
}

body.home-page .home-paths::before {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: .34;
  background-image: radial-gradient(rgba(9, 103, 68, .22) .65px, transparent .65px);
  background-size: 20px 20px;
  mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
}

body.home-page .home-paths .container { position: relative; }
body.home-page .home-paths .home-clean-head { margin-bottom: clamp(22px, 3vw, 34px); }
body.home-page .home-paths .home-clean-head p {
  max-width: 610px;
  margin: 8px 0 0;
  color: var(--ui-muted);
  font-size: .82rem;
  line-height: 1.7;
}

body.home-page .home-path-grid { gap: 14px; }
body.home-page .home-path-grid > a {
  position: relative;
  min-height: 190px;
  padding: 23px;
  overflow: hidden;
  border-color: rgba(190, 207, 197, .82);
  border-radius: var(--ui-radius);
  box-shadow: 0 7px 20px rgba(10, 48, 32, .035);
  transition: transform .22s var(--ui-ease), border-color .22s ease, box-shadow .22s ease;
}

body.home-page .home-path-grid > a::after {
  position: absolute;
  inset-inline-end: -38px;
  bottom: -52px;
  width: 130px;
  height: 130px;
  content: "";
  border: 1px solid rgba(9, 103, 68, .09);
  border-radius: 50%;
}

body.home-page .home-path-grid > a:hover {
  transform: translateY(-5px);
  border-color: rgba(9, 103, 68, .38);
  box-shadow: var(--ui-shadow-float);
}

body.home-page .home-path-grid > a > i {
  width: 46px;
  height: 46px;
  border-radius: 13px;
  font-size: 1rem;
  box-shadow: inset 0 0 0 1px rgba(9, 103, 68, .05);
}

body.home-page .home-path-grid strong { font-size: .96rem; line-height: 1.45; }
body.home-page .home-path-grid small { font-size: .74rem; line-height: 1.7; }
body.home-page .home-path-grid b {
  display: flex;
  min-height: 35px;
  align-items: center;
  justify-content: space-between;
  margin-top: 24px;
  padding-top: 13px;
  font-size: .72rem;
}
body.home-page .home-path-grid b i { transition: transform .2s var(--ui-ease); }
body.home-page .home-path-grid > a:hover b i { transform: translateX(-4px); }
html[dir="ltr"] body.home-page .home-path-grid > a:hover b i { transform: translateX(4px); }
body.home-page .home-path-grid > a.is-main {
  background:
    radial-gradient(circle at 88% 12%, rgba(216, 239, 103, .14), transparent 40%),
    linear-gradient(145deg, #0b422e, #062d20);
  box-shadow: 0 18px 44px rgba(7, 55, 36, .17);
}
body.home-page .home-path-grid > a.is-main::after { border-color: rgba(216, 239, 103, .18); }

body.service-market-page .service-market {
  --market-green: var(--ui-green);
  --market-deep: var(--ui-green-dark);
  --market-line: var(--ui-line);
}

body.service-market-page .market-filters {
  padding: 13px;
  margin-bottom: 14px;
  background: rgba(255, 255, 255, .92);
  border: 1px solid var(--market-line);
  border-radius: var(--ui-radius);
  box-shadow: var(--ui-shadow-card);
}

body.service-market-page .market-search input,
body.service-market-page .market-select { min-height: 48px; border-radius: 12px; }
body.service-market-page .market-filter-row button {
  min-height: 48px;
  border-radius: 12px;
  padding-inline: 22px;
  cursor: pointer;
}

body.service-market-page .service-results-head {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0 2px 18px;
  color: var(--market-muted);
  font-size: .78rem;
}
body.service-market-page .service-results-head p { display: flex; align-items: center; gap: 8px; margin: 0; }
body.service-market-page .service-results-head strong {
  display: grid;
  min-width: 32px;
  height: 32px;
  place-items: center;
  color: var(--market-deep);
  background: var(--ui-green-soft);
  border-radius: 9px;
  font-size: .82rem;
}
body.service-market-page .service-results-head > a {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 8px;
  padding: 7px 11px;
  color: var(--market-deep);
  background: #fff;
  border: 1px solid var(--market-line);
  border-radius: 10px;
  font-weight: 800;
  text-decoration: none;
}

body.service-market-page .service-grid { gap: 18px; }
body.service-market-page .service-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  border-radius: 18px;
  box-shadow: 0 8px 25px rgba(10, 48, 32, .045);
  transition: transform .22s var(--ui-ease), box-shadow .22s ease, border-color .22s ease;
}
body.service-market-page .service-card:hover {
  border-color: rgba(9, 103, 68, .34);
  box-shadow: var(--ui-shadow-float);
}
body.service-market-page .service-card-body { display: flex; flex: 1; flex-direction: column; padding: 18px; }
body.service-market-page .service-card h2 { font-size: 1.08rem; }
body.service-market-page .service-card p { font-size: .84rem; }
body.service-market-page .service-provider-copy strong { font-size: .78rem; }
body.service-market-page .service-provider-copy small { font-size: .68rem; }
body.service-market-page .service-card-meta {
  align-items: center;
  margin-top: auto;
  padding-top: 14px;
  font-size: .78rem;
}
body.service-market-page .service-card-open {
  display: flex;
  min-height: 43px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 13px;
  padding: 9px 12px;
  color: var(--market-deep);
  background: var(--ui-surface-soft);
  border: 1px solid transparent;
  border-radius: 11px;
  font-size: .78rem;
  font-weight: 850;
  text-decoration: none;
  transition: color .18s ease, background .18s ease, border-color .18s ease;
}
body.service-market-page .service-card-open:hover {
  color: #fff;
  background: var(--market-deep);
  border-color: var(--market-deep);
}

@media (max-width: 620px) {
  body.home-page .home-path-grid > a { min-height: 160px; padding: 18px; }
  body.home-page .home-path-grid strong { font-size: .86rem; }
  body.home-page .home-path-grid small { font-size: .7rem; }
  body.home-page .home-path-grid b { font-size: .68rem; }
  body.service-market-page .market-filters { padding: 10px; }
  body.service-market-page .market-filter-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  body.service-market-page .market-filter-row button { grid-column: 1 / -1; }
  body.service-market-page .service-results-head { align-items: flex-start; }
}

@media (max-width: 420px) {
  body.home-page .home-path-grid { grid-template-columns: 1fr; }
  body.home-page .home-path-grid > a { min-height: 150px; }
  body.service-market-page .service-results-head { display: grid; gap: 8px; }
  body.service-market-page .service-results-head > a { justify-self: start; }
}

@media (prefers-reduced-motion: reduce) {
  body.home-page .home-path-grid > a,
  body.home-page .home-path-grid b i,
  body.service-market-page .service-card { transition: none; }
  body.home-page .home-path-grid > a:hover,
  body.service-market-page .service-card:hover { transform: none; }
}
