:root {
  --ink: #15213a;
  --ink-soft: #34425d;
  --muted: #69758b;
  --line: #d9dee8;
  --line-strong: #c5ccda;
  --paper: #ffffff;
  --paper-2: #f7f8fb;
  --white: #ffffff;
  --navy: #15213a;
  --navy-deep: #0e1729;
  --brand: #3157d5;
  --brand-deep: #2444b8;
  --brand-soft: #e8edff;
  --gold: #b99555;
  --gold-deep: #745423;
  --gold-soft: #f4ead8;
  --danger: #c84c4c;
  --radius-sm: 12px;
  --radius: 20px;
  --radius-lg: 30px;
  --shadow: 0 18px 54px rgba(21, 33, 58, 0.10);
  --max: 1240px;
}

/* Local beauty supply directory */
.supplier-directory-page { min-height: 100vh; background: var(--home-bg); color: var(--home-ink); }
.supplier-directory-page :is(h1, h2, p, a, button, label, strong, small) { word-break: keep-all; overflow-wrap: normal; }
.supplier-hero { padding-top: 96px; padding-bottom: 74px; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(360px, .82fr); gap: 78px; align-items: end; }
.supplier-hero-copy h1 { max-width: 910px; margin: 0; color: var(--home-ink); font-size: clamp(58px, 7.2vw, 106px); line-height: .91; letter-spacing: -.078em; }
.supplier-hero-copy h1 span { color: var(--home-signal); font-family: Georgia, "Times New Roman", serif; font-size: .76em; font-style: italic; font-weight: 400; letter-spacing: -.065em; }
.supplier-hero-copy > p:last-child { max-width: 780px; margin: 30px 0 0; color: var(--home-muted); font-size: 15px; line-height: 1.76; }
.supplier-hero-stats { display: grid; border-top: 1px solid var(--home-signal); border-left: 1px solid var(--home-line); }
.supplier-hero-stats > div { min-height: 114px; padding: 20px 22px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: end; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: rgba(255,255,255,.025); }
.supplier-hero-stats strong { color: var(--home-signal); font-size: 30px; line-height: 1; letter-spacing: -.05em; }
.supplier-hero-stats span { max-width: 140px; color: var(--home-muted); font-size: 10px; line-height: 1.45; text-align: right; }

.supplier-directory { padding-bottom: 122px; }
.supplier-boundary { margin-bottom: 18px; padding: 18px 22px; display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 28px; border: 1px solid rgba(209,229,154,.52); background: rgba(209,229,154,.065); }
.supplier-boundary span { padding-top: 3px; color: var(--home-signal); font: 900 10px/1.2 Arial, sans-serif; letter-spacing: .12em; }
.supplier-boundary p { max-width: 900px; margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.7; }

.supplier-toolbar { position: relative; z-index: 2; padding: 13px; display: grid; grid-template-columns: minmax(240px, 1.55fr) repeat(5, minmax(112px, .7fr)); gap: 8px; border: 1px solid var(--home-line); background: rgba(11,12,11,.94); backdrop-filter: blur(18px); }
.supplier-toolbar label { min-width: 0; display: grid; gap: 7px; }
.supplier-toolbar label > span { color: var(--home-muted); font-size: 9px; font-weight: 850; letter-spacing: .07em; }
.supplier-toolbar select,
.supplier-search { min-width: 0; min-height: 52px; border: 1px solid var(--home-line); background: var(--home-surface); color: var(--home-ink); }
.supplier-toolbar select { width: 100%; padding: 0 12px; font: inherit; font-size: 11px; font-weight: 750; appearance: auto; }
.supplier-toolbar select:disabled { color: #64675f; cursor: not-allowed; }
.supplier-search { align-self: end; padding: 0 15px; display: flex !important; grid-template-columns: none !important; flex-direction: row; align-items: center; gap: 10px !important; }
.supplier-search svg { flex: 0 0 auto; color: var(--home-signal); }
.supplier-search input { min-width: 0; width: 100%; border: 0; outline: 0; background: transparent; color: var(--home-ink); font: inherit; font-size: 13px; }
.supplier-search input::placeholder { color: #777b72; }
.supplier-toolbar select:focus,
.supplier-search:focus-within { border-color: var(--home-signal); outline: 1px solid var(--home-signal); outline-offset: -1px; }
.supplier-filter-toggle { display: none; }

.supplier-results-head { padding: 54px 0 24px; display: flex; align-items: end; justify-content: space-between; gap: 28px; }
.supplier-results-head .eyebrow { margin-bottom: 10px; color: #77dcf0; }
.supplier-results-head h2 { margin: 0; color: var(--home-ink); font-size: clamp(31px, 3.4vw, 48px); line-height: 1; letter-spacing: -.055em; }
.supplier-results-head h2 strong { color: var(--home-signal); font-weight: 800; }
.supplier-results-breakdown { margin: 12px 0 0; color: #767a72; font-size: 10px; line-height: 1.55; }
.supplier-results-head > button { padding: 0 0 7px; border: 0; border-bottom: 1px solid var(--home-line); background: transparent; color: var(--home-muted); font-size: 11px; font-weight: 800; cursor: pointer; }
.supplier-results-head > button:hover { border-color: var(--home-signal); color: var(--home-signal); }

.supplier-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.supplier-card { min-width: 0; min-height: 548px; padding: 29px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: #0d0f0d; transition: background .2s ease, transform .2s ease; }
.supplier-card:nth-child(6n + 2),
.supplier-card:nth-child(6n + 4),
.supplier-card:nth-child(6n + 6) { background: #111410; }
.supplier-card:hover { position: relative; z-index: 1; background: #171a15; box-shadow: inset 0 0 0 1px rgba(209,229,154,.45); }
.supplier-card-index { min-height: 32px; display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; color: var(--home-muted); font-size: 11px; font-weight: 800; letter-spacing: .035em; }
.supplier-card-index > span { color: #77dcf0; }
.supplier-card-index b { color: var(--home-signal); font-weight: 850; text-align: right; }
.supplier-card-title { min-height: 122px; padding: 29px 0 24px; display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--home-line); }
.supplier-card-title h2 { margin: 0; color: var(--home-ink); font-size: clamp(28px, 2.45vw, 38px); line-height: 1.06; letter-spacing: -.052em; }
.supplier-card-title > span { flex: 0 0 auto; padding: 9px 10px; border: 1px solid rgba(173,136,255,.5); color: #cdb8ff; font-size: 11px; font-weight: 850; }
.supplier-facts { margin: 0; padding: 21px 0 3px; display: grid; gap: 12px; }
.supplier-facts > div { display: grid; grid-template-columns: 50px minmax(0, 1fr); gap: 15px; }
.supplier-facts dt { color: #6e7269; font-size: 11px; font-weight: 850; }
.supplier-facts dd { min-width: 0; margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.55; word-break: keep-all; }
.supplier-brands { margin: 16px 0 0; display: -webkit-box; overflow: hidden; color: #74786f; font-size: 11px; line-height: 1.6; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.supplier-card-status { margin-top: auto; padding: 23px 0 16px; display: flex; align-items: end; justify-content: space-between; gap: 12px; border-top: 1px solid var(--home-line); }
.supplier-card-status span { color: #74786f; font-size: 10px; font-weight: 800; letter-spacing: .04em; }
.supplier-card-status strong { color: var(--home-ink); font-size: 12px; }
.supplier-card[data-verification-tier="complete"] .supplier-card-status strong { color: var(--home-signal); }
.supplier-card[data-verification-tier="phone"] .supplier-card-status strong { color: #77dcf0; }
.supplier-card[data-verification-tier="blog"] .supplier-card-status strong { color: #cdb8ff; }
.supplier-card[data-verification-tier="source"] .supplier-card-status strong { color: #a8aaa4; }
.supplier-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.supplier-action { min-height: 44px; padding: 0 13px; display: inline-flex; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid var(--home-line); color: var(--home-muted); font-size: 11px; font-weight: 850; transition: border-color .18s ease, background .18s ease, color .18s ease; }
.supplier-action:hover { border-color: var(--home-ink); color: var(--home-ink); }
.supplier-action-primary { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.supplier-action-primary:hover { background: #e3f8aa; color: var(--home-bg); }
.supplier-action-phone.is-available { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.supplier-action-phone.is-available:hover { background: #e3f8aa; color: var(--home-bg); }
.supplier-action-blog.is-available { border-color: #ad88ff; background: rgba(173,136,255,.13); color: #d7c8ff; }
.supplier-action-blog.is-available:hover { background: #ad88ff; color: var(--home-bg); }
.supplier-action-source.is-available { border-color: #77dcf0; background: rgba(119,220,240,.1); color: #8ee5f5; }
.supplier-action-source.is-available:hover { background: #77dcf0; color: var(--home-bg); }
.supplier-action-map.is-available { border-color: #777b72; color: var(--home-ink); }
.supplier-action-map.is-available:hover { border-color: var(--home-ink); background: rgba(255,255,255,.06); }
.supplier-action-instagram.is-available { border-color: #e981bd; background: rgba(233,129,189,.11); color: #f3acd4; }
.supplier-action-instagram.is-available:hover { background: #e981bd; color: var(--home-bg); }
.supplier-action.is-unavailable { border-style: dashed; border-color: #363a34; color: #666a62; opacity: .58; cursor: default; }

.supplier-empty { grid-column: 1 / -1; min-height: 330px; padding: 40px; display: grid; place-content: center; justify-items: center; text-align: center; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.supplier-empty strong { color: var(--home-ink); font-size: 25px; }
.supplier-empty p { margin: 10px 0 22px; color: var(--home-muted); font-size: 12px; }
.supplier-empty button { padding: 11px 16px; border: 1px solid var(--home-signal); background: transparent; color: var(--home-signal); font-weight: 800; cursor: pointer; }
.supplier-more { padding-top: 18px; }
.supplier-more button { width: 100%; min-height: 68px; padding: 0 22px; display: flex; align-items: center; justify-content: center; gap: 13px; border: 1px solid var(--home-signal); background: rgba(209,229,154,.06); color: var(--home-signal); font-size: 13px; font-weight: 850; cursor: pointer; }
.supplier-more button:hover { background: var(--home-signal); color: var(--home-bg); }
.supplier-more span { color: inherit; font-size: 9px; opacity: .68; }
.supplier-check-note { margin-top: 54px; padding-top: 30px; display: grid; grid-template-columns: minmax(180px, .5fr) minmax(0, 1.5fr); gap: 50px; border-top: 1px solid #ff67a3; }
.supplier-check-note > span { color: #ff8bb8; font: 900 10px/1 Arial, sans-serif; letter-spacing: .12em; }
.supplier-check-note strong { display: block; color: var(--home-ink); font-size: clamp(24px, 2.6vw, 38px); line-height: 1.12; letter-spacing: -.045em; }
.supplier-check-note p { max-width: 800px; margin: 15px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.7; }
.supplier-listing-contact { margin-top: 72px; padding: 32px; display: grid; grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr); gap: 44px; border: 1px solid rgba(209,229,154,.62); background: linear-gradient(135deg, rgba(209,229,154,.09), rgba(119,220,240,.025)); }
.supplier-listing-contact .eyebrow { margin: 0 0 18px; color: var(--home-signal); }
.supplier-listing-contact h2 { max-width: 430px; margin: 0; color: var(--home-ink); font-size: clamp(34px, 4vw, 58px); line-height: .98; letter-spacing: -.06em; }
.supplier-listing-contact-copy > p:last-child { max-width: 520px; margin: 24px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.75; }
.supplier-listing-report { padding-left: 38px; display: flex; flex-direction: column; justify-content: center; border-left: 1px solid var(--home-line); }
.supplier-listing-report > span { color: #77dcf0; font-size: 9px; font-weight: 850; letter-spacing: .1em; }
.supplier-listing-report > strong { margin-top: 13px; color: var(--home-ink); font-size: clamp(22px, 2.3vw, 32px); line-height: 1.16; letter-spacing: -.045em; }
.supplier-listing-report > p { max-width: 650px; margin: 14px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.72; }
.supplier-listing-actions { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 8px; }
.supplier-listing-actions a { min-height: 46px; padding: 0 16px; display: inline-flex; align-items: center; gap: 14px; border: 1px solid var(--home-line); color: var(--home-ink); font-size: 10px; font-weight: 850; }
.supplier-listing-actions a:first-child { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.supplier-listing-actions a:hover { border-color: #77dcf0; color: #77dcf0; }
.supplier-listing-actions a:first-child:hover { background: #e3f8aa; color: var(--home-bg); }
.supplier-listing-actions svg { width: 14px; height: 14px; }

.directory-data-loading { min-height: 62vh; padding-top: 120px; padding-bottom: 120px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; color: var(--home-ink); }
.directory-data-loading > span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; letter-spacing: .12em; }
.directory-data-loading > strong { max-width: 760px; margin-top: 22px; font-size: clamp(34px, 5vw, 68px); line-height: 1.02; letter-spacing: -.055em; }
.directory-data-loading > p { max-width: 620px; margin: 22px 0 0; color: var(--home-muted); font-size: 13px; line-height: 1.75; }
.directory-data-loading > button { min-height: 48px; margin-top: 28px; padding: 0 18px; border: 1px solid var(--home-signal); background: var(--home-signal); color: var(--home-bg); font-weight: 850; cursor: pointer; }
.directory-data-loading.is-error > span { color: #ff8bb8; }
.directory-access-gate > .membership-gate-status { margin-top: 34px; color: var(--home-signal); font-size: 11px; font-weight: 900; }
.directory-access-gate > a.button { margin-top: 18px; }

.spaces-directory-switch { padding-top: 38px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.spaces-directory-switch button { min-height: 92px; padding: 18px 22px; display: grid; grid-template-columns: 34px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 14px; align-items: center; border: 1px solid var(--home-line); background: rgba(255,255,255,.018); color: var(--home-muted); text-align: left; cursor: pointer; }
.spaces-directory-switch button + button { border-left: 0; }
.spaces-directory-switch button > span { grid-row: 1 / 3; color: #6d7169; font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.spaces-directory-switch button strong { color: inherit; font-size: 18px; line-height: 1.1; letter-spacing: -.025em; }
.spaces-directory-switch button small { margin-top: 5px; color: #767a72; font-size: 10px; }
.spaces-directory-switch button:hover { border-color: #777b72; color: var(--home-ink); }
.spaces-directory-switch button.is-active { position: relative; z-index: 1; border-color: var(--home-signal); background: rgba(209,229,154,.09); color: var(--home-signal); }
.spaces-directory-switch button.is-active > span,
.spaces-directory-switch button.is-active small { color: var(--home-signal); }
.academy-directory-page > .supplier-hero,
.rental-directory-page > .supplier-hero { padding-top: 54px; }

.academy-directory-page .supplier-card-index > span { color: #cdb8ff; }
.academy-card { min-height: 620px; }
.academy-card-flags { margin-top: 15px; display: flex; flex-wrap: wrap; gap: 6px; }
.academy-card-flags span,
.academy-card-flags strong { min-height: 30px; padding: 0 9px; display: inline-flex; align-items: center; border: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; font-weight: 850; }
.academy-card-flags .is-confirmed { border-color: rgba(119,220,240,.62); color: #8ee5f5; }
.academy-card-flags .is-recheck { border-color: #494d46; color: #999d94; }
.academy-card-flags .is-confirmed,
.academy-card-flags .is-stale { background: rgba(119,220,240,.06); }
.academy-card-flags strong.is-confirmed { border-color: var(--home-signal); color: var(--home-signal); }
.academy-card-flags strong.is-stale { border-color: #ff8bb8; color: #ff9fc3; }
.academy-action-rental.is-confirmed { border-color: var(--home-signal); background: rgba(209,229,154,.08); color: var(--home-signal); }
.academy-action-rental.is-stale { border-color: #ff67a3; background: rgba(255,103,163,.08); color: #ff9fc3; }
.academy-service-boundary { margin-top: 72px; padding: 30px 0 0; display: grid; grid-template-columns: minmax(180px, .45fr) minmax(0, 1.55fr); gap: 44px; border-top: 1px solid #ff67a3; }
.academy-service-boundary > span { color: #ff8bb8; font: 900 10px/1 Arial, sans-serif; letter-spacing: .12em; }
.academy-service-boundary > div { display: grid; gap: 13px; }
.academy-service-boundary strong { color: var(--home-ink); font-size: clamp(23px, 2.5vw, 36px); line-height: 1.15; letter-spacing: -.045em; }
.academy-service-boundary p { max-width: 830px; margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.75; }

.rental-directory-page .supplier-card-index > span { color: #77dcf0; }
.rental-directory-page .supplier-card-title > span { border-color: rgba(209,229,154,.6); color: var(--home-signal); }
.rental-card[data-rental-kind="shared"] .supplier-card-title > span { border-color: rgba(255,139,184,.66); color: #ff9fc3; }
.rental-card[data-rental-kind="shared"] .rental-card-flags strong { border-color: rgba(255,139,184,.66); background: rgba(255,103,163,.06); color: #ff9fc3; }
.rental-card-note { margin: 14px 0 18px; color: #888c83; font-size: 10px; line-height: 1.65; }
.rental-action-booking.is-available { border-color: var(--home-signal); background: rgba(209,229,154,.08); color: var(--home-signal); }
.rental-action-booking.is-available:hover { background: var(--home-signal); color: var(--home-bg); }
.rental-service-boundary { border-top-color: #77dcf0; }
.rental-service-boundary > span { color: #8ee5f5; }

.salon-service-group-links {
  margin: 0 0 18px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--home-line);
  border-left: 1px solid var(--home-line);
}
.salon-service-group-links button {
  min-height: 112px;
  padding: 18px 20px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: 11px;
  align-content: center;
  border: 0;
  border-right: 1px solid var(--home-line);
  border-bottom: 1px solid var(--home-line);
  background: rgba(255,255,255,.018);
  color: var(--home-ink);
  text-align: left;
  cursor: pointer;
}
.salon-service-group-links button:hover,
.salon-service-group-links button:focus-visible { background: rgba(209,229,154,.09); outline: 1px solid var(--home-signal); outline-offset: -1px; }
.salon-service-group-links span { grid-row: 1 / 3; padding-top: 4px; color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.salon-service-group-links strong { font-size: 16px; line-height: 1.18; letter-spacing: -.025em; }
.salon-service-group-links small { margin-top: 8px; color: var(--home-muted); font-size: 9px; font-weight: 750; }
.salon-service-card { min-height: 590px; }
.salon-service-card .supplier-card-index b { max-width: 58%; font-size: 10px; line-height: 1.4; }
.salon-service-card .supplier-card-title > span { max-width: 48%; color: #8ee5f5; border-color: rgba(119,220,240,.55); line-height: 1.35; text-align: center; }
.salon-service-facts > div { grid-template-columns: 64px minmax(0, 1fr); }
.salon-service-evidence strong { margin-right: 7px; color: var(--home-signal); }
.salon-service-card[data-verification-tier="confirmed"] .supplier-card-status strong { color: var(--home-signal); }
.salon-service-card[data-verification-tier="source"] .supplier-card-status strong { color: #8ee5f5; }
.salon-service-card[data-verification-tier="review"] .supplier-card-status strong { color: #ff9fc3; }

@media (max-width: 1200px) {
  .home-dark .desktop-nav { gap: 15px; }
  .desktop-nav a { font-size: 12px; white-space: nowrap; }
  .supplier-hero { grid-template-columns: 1fr; gap: 42px; }
  .supplier-hero-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .supplier-hero-stats > div { min-height: 102px; grid-template-columns: 1fr; gap: 12px; }
  .supplier-hero-stats span { max-width: none; text-align: left; }
  .supplier-toolbar { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
  .supplier-search { grid-row: auto; grid-column: 1 / -1; }
  .supplier-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .spaces-directory-switch { padding-top: 24px; }
  .supplier-hero { padding-top: 64px; padding-bottom: 54px; }
  .supplier-hero-copy h1 { font-size: clamp(47px, 10.8vw, 78px); }
  .supplier-toolbar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .supplier-search { grid-row: auto; grid-column: 1 / -1; }
  .supplier-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .supplier-check-note { grid-template-columns: 1fr; gap: 15px; }
  .supplier-listing-contact { grid-template-columns: 1fr; gap: 30px; }
  .supplier-listing-report { padding: 30px 0 0; border-top: 1px solid var(--home-line); border-left: 0; }
  .salon-service-group-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 580px) {
  .spaces-directory-switch { padding-top: 12px; gap: 7px; }
  .spaces-directory-switch button { min-height: 72px; padding: 11px 12px; grid-template-columns: 20px minmax(0, 1fr); column-gap: 8px; }
  .spaces-directory-switch button + button { border-left: 1px solid var(--home-line); }
  .spaces-directory-switch button strong { font-size: 13px; }
  .spaces-directory-switch button small { font-size: 8px; line-height: 1.35; }
  .academy-directory-page > .supplier-hero,
  .rental-directory-page > .supplier-hero { padding-top: 28px; }
  .supplier-hero { padding-top: 30px; padding-bottom: 24px; gap: 22px; }
  .supplier-hero-copy .eyebrow { margin-bottom: 22px; font-size: 9px; }
  .supplier-hero-copy h1 { font-size: clamp(36px, 10.9vw, 47px); line-height: .96; }
  .supplier-hero-copy h1 span { font-size: .79em; }
  .supplier-hero-copy > p:last-child { margin-top: 18px; font-size: 11px; line-height: 1.65; }
  .supplier-hero-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .supplier-hero-stats > div { min-height: 70px; padding: 12px 10px; grid-template-columns: 1fr; gap: 7px; align-items: start; }
  .supplier-hero-stats strong { font-size: 20px; }
  .supplier-hero-stats span { max-width: none; font-size: 8px; text-align: left; }
  .supplier-directory { display: flex; flex-direction: column; }
  .supplier-toolbar { order: 1; padding: 9px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .supplier-search { min-height: 56px; grid-column: 1 / -1; }
  .supplier-toolbar select { min-height: 48px; padding-inline: 8px; font-size: 10px; }
  .supplier-filter-toggle { min-height: 46px; padding: 0 13px; grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid rgba(209,229,154,.52); background: rgba(209,229,154,.06); color: var(--home-ink); font: inherit; font-size: 10px; font-weight: 850; cursor: pointer; }
  .supplier-filter-toggle strong { color: var(--home-signal); font-size: 9px; }
  .supplier-toolbar .supplier-filter-secondary { display: none; }
  .supplier-toolbar[data-filters-expanded="true"] .supplier-filter-secondary { display: grid; }
  .supplier-toolbar[data-filters-expanded="true"] .supplier-filter-wide { grid-column: 1 / -1; }
  .supplier-results-head { order: 2; padding: 28px 0 18px; align-items: flex-end; flex-direction: row; gap: 12px; }
  .supplier-results-head h2 { font-size: 27px; }
  .supplier-results-breakdown { display: none; }
  .supplier-results-head > button { flex: 0 0 auto; font-size: 9px; }
  .supplier-grid { order: 3; }
  .supplier-more { order: 4; }
  .supplier-boundary { order: 5; margin: 36px 0 0; grid-template-columns: 1fr; gap: 10px; padding: 16px; }
  .supplier-check-note { order: 6; }
  .supplier-listing-contact { order: 7; }
  .academy-service-boundary { order: 8; margin-top: 46px; grid-template-columns: 1fr; gap: 15px; }
  .supplier-grid { grid-template-columns: 1fr; }
  .supplier-card { min-height: 0; padding: 24px; }
  .supplier-card-title { min-height: 108px; padding-block: 26px 22px; }
  .supplier-card-title h2 { font-size: 32px; }
  .academy-card .supplier-card-title { flex-direction: column; gap: 12px; }
  .academy-card .supplier-card-title > span { align-self: flex-start; }
  .supplier-action { min-height: 44px; padding-inline: 13px; }
  .supplier-check-note { margin-top: 42px; }
  .supplier-listing-contact { margin-top: 52px; padding: 22px; }
  .supplier-listing-contact h2 { font-size: 36px; }
  .supplier-listing-actions { display: grid; grid-template-columns: 1fr; }
  .supplier-listing-actions a { justify-content: space-between; }
  .salon-service-group-links { order: 0; margin-bottom: 10px; }
  .salon-service-group-links button { min-height: 82px; padding: 12px; grid-template-columns: 20px minmax(0, 1fr); column-gap: 7px; }
  .salon-service-group-links strong { font-size: 12px; }
  .salon-service-group-links small { margin-top: 5px; font-size: 8px; }
  .salon-service-card { min-height: 0; }
  .salon-service-card .supplier-card-title { min-height: 0; flex-direction: column; gap: 12px; }
  .salon-service-card .supplier-card-title > span { max-width: none; align-self: flex-start; }
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  background: var(--paper);
}

body {
  margin: 0;
  min-width: 320px;
  color: var(--ink);
  background: var(--paper);
  font-family: "Pretendard Variable", Pretendard, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

body.dialog-open { overflow: hidden; }
.keep-together { white-space: nowrap; }

button,
input,
select,
textarea { font: inherit; }

button,
a { -webkit-tap-highlight-color: transparent; }

a { color: inherit; text-decoration: none; }

button { color: inherit; }

img { display: block; max-width: 100%; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.noise {
  position: fixed;
  inset: 0;
  z-index: 1000;
  pointer-events: none;
  opacity: 0.022;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
}

.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 2000;
  transform: translateY(-160%);
  padding: 10px 14px;
  border-radius: 9px;
  background: var(--ink);
  color: white;
}

.skip-link:focus { transform: translateY(0); }

:focus-visible {
  outline: 3px solid rgba(49, 87, 213, 0.30);
  outline-offset: 3px;
}

.beta-announcement {
  min-height: 36px;
  display: grid;
  place-items: center;
  background: var(--navy-deep);
  color: white;
}

.beta-announcement-inner {
  width: min(var(--max), calc(100vw - 44px));
  min-height: 36px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-size: 11px;
}

.beta-announcement strong { color: #aebeff; font-size: 10px; letter-spacing: .05em; }
.beta-announcement a { font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  border-bottom: 1px solid rgba(210, 216, 228, .9);
  background: rgba(255, 255, 255, .94);
  backdrop-filter: blur(16px);
}

.nav-shell {
  width: min(1500px, calc(100vw - 44px));
  min-height: 72px;
  margin: 0 auto;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 800;
  letter-spacing: -0.04em;
  font-size: 19px;
  white-space: nowrap;
}

.brand-mark {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: var(--brand);
  color: white;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
}

.desktop-nav {
  display: flex;
  gap: 28px;
  margin-left: auto;
}

.desktop-nav a {
  color: var(--ink-soft);
  font-size: 14px;
  font-weight: 650;
}

.desktop-nav a:hover { color: var(--ink); }

.nav-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.nav-account-link { padding: 10px 8px; color: var(--ink-soft); font-size: 13px; font-weight: 800; }
.nav-account-link:hover { color: var(--ink); }

.button {
  min-height: 44px;
  padding: 0 17px;
  border: 1px solid transparent;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: transparent;
  font-size: 14px;
  font-weight: 750;
  cursor: pointer;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.button:hover { transform: translateY(-1px); }
.button:active { transform: translateY(0); }
.button-dark { background: var(--navy); color: white; }
.button-dark:hover { background: var(--navy-deep); }
.button-primary { background: var(--brand); color: white; border-color: var(--brand); }
.button-primary:hover { background: var(--brand-deep); border-color: var(--brand-deep); box-shadow: 0 8px 24px rgba(49, 87, 213, .24); }
.button-ghost { background: transparent; }
.button-ghost:hover { background: var(--paper-2); }
.button-light { background: white; border-color: var(--line); }
.button-light:hover { border-color: var(--line-strong); box-shadow: 0 6px 18px rgba(21, 33, 58, .08); }
.button-wide { width: 100%; }
.button-lg { min-height: 54px; padding: 0 22px; border-radius: 15px; font-size: 15px; }

.mobile-menu-button,
.mobile-nav { display: none; }

main { min-height: 70vh; }

.page-shell {
  width: min(var(--max), calc(100vw - 44px));
  margin: 0 auto;
}

.hero {
  position: relative;
  padding: 48px 0 34px;
}

.hero::before { display: none; }

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr);
  gap: 36px;
  align-items: center;
}

.hero-grid > *,
.hero-copy { min-width: 0; }

.hero-copy {
  padding: 26px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.eyebrow {
  margin: 0 0 16px;
  color: var(--brand-deep);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
  letter-spacing: .13em;
}

.eyebrow-dot::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-right: 9px;
  display: inline-block;
  border-radius: 999px;
  background: var(--brand);
  box-shadow: 0 0 0 5px rgba(49, 87, 213, .13);
}

.hero h1 {
  max-width: 700px;
  margin: 0;
  font-size: clamp(46px, 5.2vw, 70px);
  line-height: 1.04;
  letter-spacing: -.068em;
  font-weight: 780;
  text-wrap: balance;
}

.hero h1 .highlight {
  position: relative;
  display: inline-block;
  z-index: 0;
  color: var(--brand);
}

.hero h1 .highlight::after {
  display: none;
}

.hero-subtitle {
  max-width: 560px;
  margin: 22px 0 26px;
  color: var(--muted);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.65;
  letter-spacing: -.018em;
}

.hero-search {
  width: 100%;
  max-width: 740px;
  padding: 7px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(174px, .46fr) auto;
  align-items: center;
  border: 1px solid #cbd3e1;
  border-radius: 22px;
  background: white;
  box-shadow: 0 14px 38px rgba(21, 33, 58, .10);
}

.hero-search-field {
  min-width: 0;
  min-height: 62px;
  padding: 8px 16px;
  display: flex;
  align-items: center;
  gap: 13px;
  border-radius: 15px;
  transition: background-color .16s ease, box-shadow .16s ease;
}

.hero-search-field:focus-within { background: #f7f9ff; box-shadow: inset 0 0 0 1px #dce4ff; }
.hero-search-icon {
  width: 38px;
  height: 38px;
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 12px;
  background: var(--brand-soft);
  color: var(--brand-deep);
}
.hero-search-icon svg { width: 19px; height: 19px; }
.hero-search-field label { min-width: 0; flex: 1; }
.hero-search-field label > span { display: block; margin-bottom: 2px; color: var(--ink-soft); font-size: 10px; font-weight: 850; letter-spacing: -.01em; white-space: nowrap; word-break: keep-all; overflow-wrap: normal; }
.hero-search-region { border-left: 1px solid var(--line); }

.hero-search input {
  width: 100%;
  min-width: 0;
  height: 28px;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--ink);
  font-size: 15px;
  font-weight: 720;
  letter-spacing: -.02em;
}

.hero-search input::placeholder { color: #8993a5; font-weight: 600; }
.hero-search .button { min-height: 62px; padding-inline: 21px; border-radius: 16px; white-space: nowrap; font-weight: 850; }
.hero-search-submit svg { width: 18px; height: 18px; }

.hero-region-control { min-width: 0; flex: 1; }
.hero-search-label { display: block; margin-bottom: 2px; color: var(--ink-soft); font-size: 10px; font-weight: 850; letter-spacing: -.01em; white-space: nowrap; word-break: keep-all; overflow-wrap: normal; }
.region-picker { position: relative; }
.region-picker summary {
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  outline: 0;
  color: var(--ink);
  font-size: 15px;
  font-weight: 750;
  cursor: pointer;
  list-style: none;
}
.region-picker summary::-webkit-details-marker { display: none; }
.region-picker summary i {
  width: 8px;
  height: 8px;
  margin: 0 3px 4px 0;
  flex: 0 0 auto;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  transition: transform .18s ease, margin .18s ease;
}
.region-picker[open] summary i { margin: 4px 3px 0 0; transform: rotate(225deg); }
.region-picker summary:focus-visible { border-radius: 5px; box-shadow: 0 0 0 3px rgba(49, 87, 213, .2); }
.region-options {
  position: absolute;
  z-index: 40;
  top: calc(100% + 12px);
  left: -49px;
  width: min(356px, calc(100vw - 44px));
  padding: 10px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
  border: 1px solid var(--line-strong);
  border-radius: 14px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 18px 45px rgba(21, 33, 58, .18);
  backdrop-filter: blur(14px);
}
.region-option {
  min-height: 38px;
  padding: 7px 8px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--ink-soft);
  font-size: 12px;
  font-weight: 650;
  cursor: pointer;
}
.region-option:first-child { grid-column: 1 / -1; border: 1px solid var(--line); background: var(--paper-2); }
.region-option:hover, .region-option:focus-visible { outline: 0; background: var(--brand-soft); color: var(--brand-deep); }
.region-option.selected { background: var(--navy-deep); color: white; }

.hero-quick-links {
  margin-top: 16px;
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
  color: var(--ink-soft);
  font-size: 12px;
}
.hero-quick-links > span { margin-right: 3px; font-weight: 800; }

.hero-quick-links button {
  min-height: 32px;
  padding: 5px 11px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: white;
  color: var(--ink-soft);
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}

.hero-quick-links button:hover,
.hero-quick-links button:focus-visible { border-color: #b9c7f4; background: var(--brand-soft); color: var(--brand-deep); }

.hero-visual {
  position: relative;
  min-height: 520px;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: #dce2ed;
  box-shadow: var(--shadow);
}

.hero-visual > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 52% center;
}

.hero-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 52%, rgba(9, 17, 33, .78));
  pointer-events: none;
}

.visual-badge {
  position: absolute;
  top: 22px;
  right: 22px;
  z-index: 2;
  padding: 9px 13px;
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  font-size: 12px;
  font-weight: 750;
  backdrop-filter: blur(10px);
}

.visual-card {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 24px;
  z-index: 2;
  padding: 0;
  display: flex;
  gap: 16px;
  align-items: end;
  justify-content: space-between;
  color: white;
}

.visual-card p { margin: 0 0 6px; color: rgba(255,255,255,.72); font-size: 12px; font-weight: 700; }
.visual-card h2 { margin: 0; max-width: 380px; font-size: 22px; line-height: 1.25; letter-spacing: -.03em; }
.visual-card > strong { flex: 0 0 auto; padding: 8px 11px; border: 1px solid rgba(255,255,255,.34); border-radius: 999px; font-size: 11px; }

.trust-row {
  margin-top: 28px;
  display: flex;
  gap: 24px;
  align-items: center;
  flex-wrap: wrap;
}

.trust-item {
  display: flex;
  gap: 9px;
  align-items: center;
  font-size: 13px;
  color: var(--ink-soft);
  font-weight: 780;
}

.trust-check {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--brand-soft);
  color: var(--brand-deep);
  font-size: 12px;
  font-weight: 900;
}

.educator-rail {
  margin: 32px 0 0;
  padding: 20px 0 15px;
  border-block: 1px solid var(--line);
}

.educator-rail-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 14px;
}

.educator-rail-heading > div:first-child > span { display: block; margin-bottom: 3px; color: var(--brand-deep); font-size: 9px; font-weight: 850; letter-spacing: .08em; }
.educator-rail-heading h2 { margin: 0; font-size: 18px; letter-spacing: -.035em; }
.educator-rail-heading a { margin-left: 5px; font-size: 11px; font-weight: 750; }
.educator-rail-heading a:hover { text-decoration: underline; text-underline-offset: 4px; }

.educator-rail-actions { display: flex; align-items: center; gap: 5px; }
.educator-rail-actions > span { min-width: 34px; color: var(--muted); font-size: 9px; font-variant-numeric: tabular-nums; text-align: center; }
.educator-rail-actions button {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line-strong);
  border-radius: 50%;
  background: white;
  color: var(--ink);
  font-size: 14px;
  cursor: pointer;
}
.educator-rail-actions button:hover { border-color: var(--brand); color: var(--brand-deep); }
.educator-rail-window { position: relative; overflow: hidden; }
.educator-rail-window::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  bottom: 8px;
  width: 42px;
  background: linear-gradient(90deg, transparent, var(--paper));
  pointer-events: none;
}

.educator-rail-track {
  padding: 0 0 8px;
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scroll-snap-type: x proximity;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: var(--line-strong) transparent;
}

.educator-rail-track:focus-visible { outline: 2px solid var(--brand); outline-offset: 3px; }

.educator-rail-card {
  min-width: 216px;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: rgba(255,255,255,.72);
  scroll-snap-align: start;
  transition: border-color .18s ease, background-color .18s ease;
}

.educator-rail-card:hover { border-color: #aeb9d1; background: white; }
.educator-rail-card img { width: 46px; height: 46px; border-radius: 10px; object-fit: cover; }
.educator-rail-card span { min-width: 0; display: grid; gap: 2px; }
.educator-rail-card strong { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.educator-rail-card small { overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.educator-rail-card em { padding: 3px 5px; border-radius: 999px; background: var(--paper-2); color: var(--muted); font-size: 8px; font-style: normal; }
.educator-rail > p { margin: 2px 0 0; color: var(--muted); font-size: 9px; }

.section { padding: 104px 0; }
.section-tight { padding: 72px 0; }

.section-heading {
  margin-bottom: 32px;
  display: flex;
  justify-content: space-between;
  gap: 30px;
  align-items: end;
}

.section-heading h2 {
  max-width: 680px;
  margin: 0;
  font-size: clamp(34px, 4.4vw, 58px);
  line-height: 1.07;
  letter-spacing: -.058em;
  text-wrap: balance;
}

.section-heading p:not(.eyebrow) {
  max-width: 430px;
  margin: 0 0 5px;
  color: var(--muted);
}

.text-link {
  padding-bottom: 2px;
  border-bottom: 1px solid currentColor;
  font-size: 14px;
  font-weight: 750;
}

.category-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
}

.category-card {
  min-height: 145px;
  padding: 18px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.72);
  cursor: pointer;
  transition: background .2s ease, transform .2s ease, border-color .2s ease;
}

.category-card:hover { transform: translateY(-4px); border-color: #aeb9d4; background: white; box-shadow: 0 12px 28px rgba(21,33,58,.08); }
.category-icon { font-size: 22px; color: var(--brand); }
.category-card strong { display: block; margin-top: 20px; font-size: 15px; }
.category-card span:last-child { color: var(--muted); font-size: 12px; }

.class-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.class-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: white;
  cursor: pointer;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.class-card:hover {
  transform: translateY(-6px);
  border-color: #b8c2d8;
  box-shadow: 0 18px 42px rgba(21, 33, 58, .12);
}

.class-card:focus-visible { outline-offset: 4px; }

.card-image {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #e5e9f0;
}

.card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.2,.8,.2,1); }
.class-card:hover .card-image img { transform: scale(1.035); }
.card-image-tall img { object-position: center 40%; }

.card-badges {
  position: absolute;
  top: 14px;
  left: 14px;
  right: 14px;
  display: flex;
  gap: 6px;
  align-items: center;
}

.badge {
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.93);
  color: var(--ink);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .02em;
  backdrop-filter: blur(8px);
}

.badge { background: var(--gold-soft); color: var(--gold-deep); }
.badge-live { background: var(--brand-soft); color: var(--brand-deep); }
.badge-ad { margin-left: auto; background: rgba(14,23,41,.86); color: white; }

.favorite-button {
  position: absolute;
  right: 14px;
  bottom: 14px;
  width: 38px;
  height: 38px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.9);
  cursor: pointer;
  backdrop-filter: blur(8px);
}

.favorite-button[aria-pressed="true"] { background: var(--brand); color: white; }

.card-content { padding: 18px 18px 20px; }
.card-kicker { display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 11px; font-weight: 650; }
.card-title { margin: 10px 0 16px; min-height: 52px; font-size: 19px; line-height: 1.35; letter-spacing: -.03em; }
.card-educator { padding-top: 14px; display: flex; align-items: center; gap: 10px; border-top: 1px solid #e9edf3; }
.avatar {
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--paper-2);
  color: var(--ink-soft);
  font-size: 11px;
  font-weight: 850;
}
.educator-meta { min-width: 0; }
.educator-meta strong { display: flex; align-items: center; gap: 4px; font-size: 12px; }
.verified { color: var(--gold); font-size: 13px; }
.educator-meta span { display: block; overflow: hidden; color: var(--muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.card-price { margin-left: auto; text-align: right; }
.card-price strong { display: block; font-size: 17px; letter-spacing: -.025em; }
.card-price span { color: var(--muted); font-size: 10px; }
.class-card .card-price { flex: 0 0 auto; min-width: max-content; }
.class-card .card-price strong { white-space: nowrap; }

.soft-section {
  padding: 104px 0;
  background: #ffffff;
}

.feature-layout {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 70px;
  align-items: center;
}

.feature-visual {
  position: relative;
  min-height: 610px;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: #dce2ec;
}

.feature-visual img { width: 100%; height: 100%; position: absolute; object-fit: cover; object-position: center 25%; }

.profile-float {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 22px;
  padding: 18px;
  display: flex;
  gap: 13px;
  align-items: center;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 19px;
  background: rgba(255,255,255,.84);
  backdrop-filter: blur(16px);
}
.profile-avatar { width: 45px; height: 45px; border-radius: 14px; display: grid; place-items: center; background: var(--navy); color: white; font-weight: 850; }
.profile-float p { margin: 0; font-size: 12px; color: var(--muted); }
.profile-float strong { display: block; font-size: 14px; }
.profile-score { margin-left: auto; text-align: right; }
.profile-score strong { font-size: 17px; }

.feature-copy h2 { margin: 0 0 20px; font-size: clamp(38px, 4.6vw, 62px); line-height: 1.05; letter-spacing: -.065em; }
.feature-copy > p:not(.eyebrow) { max-width: 560px; margin: 0 0 30px; color: var(--muted); font-size: 17px; }

.trust-list { display: grid; gap: 10px; }
.trust-list-item {
  padding: 17px 18px;
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 13px;
  border: 1px solid #d2d9e5;
  border-radius: 15px;
  background: rgba(255,255,255,.45);
}
.trust-list-item .num { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 11px; background: white; font-size: 11px; font-weight: 850; }
.trust-list-item strong { font-size: 14px; }
.trust-list-item p { margin: 2px 0 0; color: var(--muted); font-size: 13px; }

.steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; counter-reset: step; }
.step-card { min-height: 310px; padding: 24px; border: 1px solid var(--line); border-radius: 24px; background: white; counter-increment: step; }
.step-card::before { content: "0" counter(step); display: block; margin-bottom: 90px; color: #7b879b; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.step-card:nth-child(2) { background: var(--navy); color: white; }
.step-card:nth-child(2)::before { color: rgba(255,255,255,.5); }
.step-card:nth-child(3) { background: var(--brand); color: white; }
.step-card:nth-child(3)::before { color: rgba(255,255,255,.58); }
.step-card h3 { margin: 0 0 9px; font-size: 24px; letter-spacing: -.045em; }
.step-card p { margin: 0; color: var(--muted); font-size: 14px; }
.step-card:nth-child(2) p { color: rgba(255,255,255,.63); }
.step-card:nth-child(3) p { color: rgba(255,255,255,.72); }

.cta-panel {
  padding: 70px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 30px;
  align-items: center;
  border-radius: var(--radius-lg);
  background: var(--navy);
  color: white;
  overflow: hidden;
  position: relative;
}
.cta-panel::after { content: "h"; position: absolute; right: 220px; top: -105px; color: rgba(120,148,255,.13); font-size: 330px; font-weight: 900; line-height: 1; transform: rotate(9deg); }
.cta-panel > * { position: relative; z-index: 1; }
.cta-panel h2 { max-width: 700px; margin: 0; font-size: clamp(38px, 5vw, 64px); line-height: 1.06; letter-spacing: -.06em; }
.cta-panel p { margin: 14px 0 0; color: rgba(255,255,255,.65); }
.cta-panel .button-primary { background: white; border-color: white; color: var(--navy); }
.cta-panel .button-primary:hover { background: var(--brand-soft); border-color: var(--brand-soft); box-shadow: 0 8px 24px rgba(0,0,0,.16); }

.page-hero { padding: 84px 0 36px; }
.page-hero h1 { max-width: 780px; margin: 0; font-size: clamp(46px, 6vw, 76px); line-height: 1.02; letter-spacing: -.07em; }
.page-hero p:not(.eyebrow) { max-width: 640px; margin: 20px 0 0; color: var(--muted); font-size: 18px; }

.search-toolbar {
  position: sticky;
  top: 91px;
  z-index: 50;
  padding: 12px;
  margin-bottom: 24px;
  display: grid;
  grid-template-columns: minmax(250px, 1fr) auto;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 19px;
  background: rgba(247,245,242,.94);
  backdrop-filter: blur(18px);
}
.search-input-wrap { height: 50px; padding: 0 15px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 13px; background: white; }
.search-input-wrap input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; }
.filter-actions { display: flex; gap: 8px; }
.select-control { height: 50px; padding: 0 35px 0 14px; border: 1px solid var(--line); border-radius: 13px; background: white; color: var(--ink); font-weight: 650; font-size: 13px; cursor: pointer; }

.filters-row { margin: 0 0 32px; display: flex; gap: 8px; align-items: center; overflow-x: auto; scrollbar-width: none; }
.filters-row::-webkit-scrollbar { display: none; }
.filter-chip { flex: 0 0 auto; min-height: 38px; padding: 0 14px; border: 1px solid var(--line); border-radius: 999px; background: transparent; color: var(--ink-soft); font-size: 13px; font-weight: 650; cursor: pointer; }
.filter-chip:hover { background: white; }
.filter-chip.active { border-color: var(--brand); background: var(--brand); color: white; }

.results-head { margin: 0 0 20px; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.results-head h2 { margin: 0; font-size: 20px; letter-spacing: -.03em; }
.results-head p { margin: 0; color: var(--muted); font-size: 13px; }
.empty-state { grid-column: 1 / -1; padding: 80px 20px; text-align: center; border: 1px dashed var(--line-strong); border-radius: 24px; background: rgba(255,255,255,.35); }
.empty-state .empty-icon { width: 54px; height: 54px; margin: 0 auto 16px; display: grid; place-items: center; border-radius: 17px; background: white; font-size: 20px; }
.empty-state h3 { margin: 0 0 8px; font-size: 22px; }
.empty-state p { margin: 0 auto 20px; max-width: 400px; color: var(--muted); }

.detail-page { padding: 70px 0 110px; }
.back-link { margin-bottom: 24px; padding: 0; display: inline-flex; gap: 8px; align-items: center; border: 0; background: transparent; color: var(--muted); font-weight: 700; cursor: pointer; }
.detail-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr); gap: 28px; align-items: start; }
.detail-main { min-width: 0; }
.detail-cover { position: relative; aspect-ratio: 16/9; overflow: hidden; border-radius: var(--radius-lg); background: #dfe4ec; }
.detail-cover img { width: 100%; height: 100%; object-fit: cover; }
.detail-cover .card-badges { top: 20px; left: 20px; }
.detail-title-block { padding: 32px 0; border-bottom: 1px solid var(--line); }
.detail-title-block h1 { margin: 10px 0 18px; max-width: 850px; font-size: clamp(36px, 5vw, 62px); line-height: 1.06; letter-spacing: -.063em; }
.detail-meta { display: flex; flex-wrap: wrap; gap: 9px; }
.meta-pill { padding: 8px 12px; border-radius: 999px; background: var(--paper-2); color: var(--ink-soft); font-size: 12px; font-weight: 650; }
.detail-section { padding: 36px 0; border-bottom: 1px solid var(--line); }
.detail-section h2 { margin: 0 0 16px; font-size: 25px; letter-spacing: -.04em; }
.detail-section > p { margin: 0; max-width: 780px; color: var(--ink-soft); line-height: 1.85; }
.learning-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.learning-item { padding: 15px; display: flex; gap: 10px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.48); font-size: 14px; }
.learning-item::before { content: "✓"; flex: 0 0 auto; width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; background: var(--brand-soft); color: var(--brand-deep); font-size: 11px; font-weight: 900; }
.curriculum { display: grid; gap: 0; border-top: 1px solid var(--line); }
.curriculum-item { padding: 17px 0; display: grid; grid-template-columns: 78px 1fr; gap: 16px; border-bottom: 1px solid var(--line); }
.curriculum-item span { color: var(--muted); font-size: 12px; font-weight: 800; }
.curriculum-item strong { font-size: 14px; }
.curriculum-item p { margin: 3px 0 0; color: var(--muted); font-size: 13px; }
.educator-box { padding: 20px; display: flex; gap: 16px; align-items: center; border-radius: 18px; background: var(--paper-2); }
.educator-box .avatar { width: 54px; height: 54px; background: var(--navy); color: white; }
.educator-box h3 { margin: 0 0 2px; font-size: 17px; }
.educator-box p { margin: 0; color: var(--muted); font-size: 13px; }
.educator-box .button { margin-left: auto; }

.booking-card { position: sticky; top: 104px; padding: 24px; border: 1px solid var(--line); border-radius: 24px; background: white; box-shadow: var(--shadow); }
.booking-card .mini-label { color: var(--muted); font-size: 12px; font-weight: 700; }
.booking-price { margin: 4px 0 20px; display: flex; align-items: end; gap: 5px; }
.booking-price strong { font-size: 34px; letter-spacing: -.05em; }
.booking-price span { padding-bottom: 6px; color: var(--muted); font-size: 12px; }
.booking-list { margin: 0 0 20px; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.booking-list li { padding: 13px 0; display: flex; justify-content: space-between; gap: 16px; border-bottom: 1px solid var(--line); font-size: 13px; }
.booking-list li span { color: var(--muted); }
.booking-list li strong { text-align: right; }
.safety-note { margin-top: 14px; padding: 13px; display: flex; gap: 9px; border-radius: 12px; background: var(--brand-soft); color: var(--ink-soft); font-size: 11px; }

.register-page { padding: 78px 0 110px; }
.register-shell { display: grid; grid-template-columns: 310px minmax(0, 1fr); gap: 60px; align-items: start; }
.register-intro { position: sticky; top: 110px; }
.register-intro h1 { margin: 0 0 16px; font-size: 48px; line-height: 1.04; letter-spacing: -.06em; }
.register-intro > p:not(.eyebrow) { margin: 0 0 30px; color: var(--muted); }
.step-nav { display: grid; gap: 7px; }
.step-nav-item { padding: 12px; display: flex; align-items: center; gap: 10px; border-radius: 12px; color: #7b879b; font-size: 13px; font-weight: 700; }
.step-nav-item .step-num { width: 27px; height: 27px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 8px; background: white; font-size: 10px; }
.step-nav-item.active { background: var(--navy); color: white; }
.step-nav-item.active .step-num { border-color: rgba(255,255,255,.15); background: var(--brand); color: white; }
.step-nav-item.done { color: var(--ink-soft); }
.step-nav-item.done .step-num { background: var(--brand-soft); color: var(--brand-deep); }

.form-card { min-height: 620px; padding: 40px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: white; box-shadow: 0 18px 60px rgba(21,33,58,.07); }
.form-progress { height: 4px; margin: -15px 0 34px; overflow: hidden; border-radius: 999px; background: var(--paper-2); }
.form-progress span { display: block; height: 100%; border-radius: inherit; background: var(--brand); transition: width .3s ease; }
.form-step-header { margin-bottom: 30px; }
.form-step-header span { color: var(--muted); font-size: 12px; font-weight: 800; letter-spacing: .05em; }
.form-step-header h2 { margin: 7px 0; font-size: 31px; line-height: 1.2; letter-spacing: -.045em; }
.form-step-header p { margin: 0; color: var(--muted); font-size: 14px; }
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.field { min-width: 0; display: grid; gap: 7px; }
.field-full { grid-column: 1 / -1; }
.field > span { font-size: 12px; font-weight: 750; }
.required::after { content: " *"; color: var(--danger); }
.field input,
.field select,
.field textarea { width: 100%; border: 1px solid var(--line); border-radius: 12px; background: #fbfcfe; outline: 0; color: var(--ink); transition: border-color .15s ease, box-shadow .15s ease; }
.field input,
.field select { height: 50px; padding: 0 14px; }
.field textarea { min-height: 132px; padding: 13px 14px; resize: vertical; }
.field input:focus,
.field select:focus,
.field textarea:focus { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(49,87,213,.15); }
.field small { color: var(--muted); font-size: 11px; }
.field .error { color: var(--danger); }
.choice-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.choice-grid-four { grid-template-columns: repeat(4, 1fr); }
.choice-card { position: relative; }
.choice-card input { position: absolute; opacity: 0; pointer-events: none; }
.choice-card label { min-height: 90px; padding: 13px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid var(--line); border-radius: 13px; background: #fbfcfe; cursor: pointer; }
.choice-card label strong { font-size: 13px; }
.choice-card label span { color: var(--muted); font-size: 11px; }
.choice-card input:checked + label { border-color: var(--brand); background: var(--brand); color: white; }
.choice-card input:checked + label span { color: rgba(255,255,255,.58); }
.choice-card input:focus-visible + label { outline: 3px solid rgba(49,87,213,.30); outline-offset: 3px; }
.schedule-mode-note,
.duration-readout { padding: 20px; border: 1px solid var(--line); background: var(--paper-2); }
.schedule-mode-note { min-height: 176px; display: grid; align-content: center; gap: 7px; }
.schedule-mode-note > span,
.duration-readout > span { color: var(--brand); font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.schedule-mode-note strong { font-size: 24px; letter-spacing: -.04em; }
.schedule-mode-note p { max-width: 620px; margin: 0; color: var(--ink-soft); font-size: 13px; }
.schedule-mode-note small { color: var(--muted); font-size: 10px; }
.duration-readout { display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; }
.duration-readout strong { font-size: 20px; }
.duration-readout small { color: var(--muted); font-size: 12px; font-weight: 750; }
.form-actions { margin-top: 38px; padding-top: 22px; display: flex; justify-content: space-between; gap: 10px; border-top: 1px solid var(--line); }
.preview-panel { overflow: hidden; border: 1px solid var(--line); border-radius: 20px; }
.preview-image { aspect-ratio: 16/7; overflow: hidden; background: var(--paper-2); }
.preview-image img { width: 100%; height: 100%; object-fit: cover; }
.preview-body { padding: 22px; }
.preview-body h3 { margin: 9px 0; font-size: 27px; line-height: 1.2; letter-spacing: -.04em; }
.preview-body p { margin: 0; color: var(--muted); }
.preview-summary { margin-top: 20px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.preview-summary div { padding: 12px; border-radius: 11px; background: var(--paper-2); }
.preview-summary .preview-summary-wide { grid-column: span 2; }
.preview-summary span { display: block; color: var(--muted); font-size: 10px; }
.preview-summary strong { font-size: 13px; }

.site-footer { margin-top: 60px; padding: 70px max(22px, calc((100vw - var(--max)) / 2)); background: var(--navy-deep); color: white; }
.footer-top { padding-bottom: 60px; display: grid; grid-template-columns: 1fr 1.5fr auto; gap: 40px; align-items: center; border-bottom: 1px solid rgba(255,255,255,.12); }
.brand-footer .brand-mark { background: var(--brand); color: white; }
.footer-top p { margin: 0; color: rgba(255,255,255,.52); }
.footer-cta { color: #aebfff; font-weight: 750; }
.footer-social-row { padding: 24px 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 26px; align-items: center; border-bottom: 1px solid rgba(255,255,255,.12); }
.footer-social-row > span { color: #d1e59a; font: 900 9px/1 Arial, sans-serif; letter-spacing: .12em; }
.footer-social-row > div { display: flex; flex-wrap: wrap; gap: 10px; }
.footer-social-row a { padding: 11px 14px; border: 1px solid rgba(255,255,255,.16); color: rgba(255,255,255,.82); font-size: 11px; }
.footer-social-row a:hover { border-color: #d1e59a; color: #d1e59a; }
.footer-social-row a b { color: #fff; }
.footer-social-row p { margin: 0; color: rgba(255,255,255,.45); font-size: 10px; line-height: 1.5; text-align: right; word-break: keep-all; }
.footer-business { color: rgba(255,255,255,.42); font-size: 11px; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.footer-business > strong { color: inherit; font-size: inherit; font-weight: 400; }
.footer-business dl { display: flex; flex-wrap: wrap; gap: 10px 28px; margin: 12px 0 0; font-size: inherit; line-height: 1.7; }
.footer-business dl > div { display: flex; flex-wrap: wrap; gap: 0 10px; }
.footer-business dt { color: inherit; }
.footer-business dd { margin: 0; color: inherit; }
.footer-business a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.footer-business a:hover { color: inherit; }
.footer-business .footer-business-address { flex-basis: 100%; }
.footer-business-address dd { flex: 1 1 240px; min-width: 0; word-break: keep-all; overflow-wrap: anywhere; }
.footer-bottom { padding-top: 24px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; color: rgba(255,255,255,.42); font-size: 11px; }
.footer-bottom p { min-width: 0; margin: 0; line-height: 1.7; overflow-wrap: anywhere; text-align: left; }
.footer-links { min-width: 0; display: flex; gap: 12px 24px; flex-wrap: wrap; align-items: baseline; }
.footer-links a, .footer-links button { max-width: 100%; line-height: 1.7; overflow-wrap: anywhere; }
.footer-links button { padding: 0; border: 0; background: transparent; color: inherit; cursor: pointer; }
.photo-credit a { text-decoration: underline; }
.footer-notice { margin-top: 24px; padding: 18px 20px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; background: rgba(255,255,255,.04); }
.footer-notice strong { display: block; margin-bottom: 4px; font-size: 13px; }
.footer-notice p { margin: 0; color: rgba(255,255,255,.55); font-size: 12px; }
.footer-notice a { flex: 0 0 auto; color: #c8d1ff; font-size: 12px; font-weight: 750; }

.dialog { width: min(480px, calc(100vw - 30px)); padding: 0; border: 0; border-radius: 24px; background: white; box-shadow: 0 30px 100px rgba(0,0,0,.25); }
.dialog::backdrop { background: rgba(9,16,31,.66); backdrop-filter: blur(4px); }
.dialog-card { position: relative; padding: 34px; }
.dialog-icon { width: 48px; height: 48px; margin-bottom: 24px; display: grid; place-items: center; border-radius: 15px; background: var(--brand); color: white; font-weight: 900; }
.dialog-close { position: absolute; top: 17px; right: 17px; width: 38px; height: 38px; border: 0; border-radius: 50%; background: var(--paper-2); cursor: pointer; font-size: 23px; }
.dialog h2 { margin: 0 0 9px; font-size: 29px; letter-spacing: -.045em; }
.dialog > form > p:not(.eyebrow) { margin: 0 0 20px; color: var(--muted); }
.dialog-note { margin-bottom: 20px; padding: 13px; border-radius: 12px; background: var(--brand-soft); font-size: 12px; }
.dialog-note strong, .dialog-note span { display: block; }
.dialog-note span { color: var(--muted); }
.dialog label { display: grid; gap: 7px; margin-bottom: 18px; }
.dialog label > span { font-size: 12px; font-weight: 750; }
.dialog textarea { width: 100%; padding: 12px; border: 1px solid var(--line); border-radius: 12px; resize: vertical; }
.external-contact-card { margin-bottom: 14px; padding: 17px; display: grid; gap: 3px; border: 1px solid var(--line); border-radius: 15px; background: #fbfcfe; }
.external-contact-card span { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .04em; }
.external-contact-card strong { color: var(--brand-deep); font-size: 18px; letter-spacing: -.02em; }
.external-contact-card small { color: var(--muted); font-size: 10px; }
.inquiry-channel-actions { display: grid; gap: 8px; }
.dialog-legal { margin: 14px 0 0 !important; color: var(--muted); font-size: 10px; line-height: 1.65; }
.dialog-cancel { margin-top: 7px; }

.toast { position: fixed; z-index: 300; left: 50%; bottom: 28px; transform: translateX(-50%); max-width: calc(100vw - 30px); padding: 13px 18px; border-radius: 12px; background: var(--navy); color: white; box-shadow: 0 12px 40px rgba(0,0,0,.2); font-size: 13px; font-weight: 650; text-align: center; }
.toast.show { animation: toastIn .25s ease both; }
@keyframes toastIn { from { opacity: 0; transform: translate(-50%, 12px); } }

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

@media (max-width: 1050px) {
  .hero-grid { grid-template-columns: minmax(0, 1fr) 410px; gap: 28px; }
  .hero h1 { font-size: clamp(45px, 5.8vw, 60px); }
  .hero-search { grid-template-columns: minmax(0, 1fr) 165px auto; }
  .hero-search-field { padding-inline: 10px; }
  .category-grid { grid-template-columns: repeat(3, 1fr); }
  .feature-layout { gap: 40px; }
  .detail-layout { grid-template-columns: minmax(0, 1fr) 330px; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .footer-cta { grid-column: 1 / -1; }
}

@media (max-width: 940px) {
  .hero-grid { grid-template-columns: 1fr; }
  .hero-search { max-width: none; }
  .hero-visual { min-height: 480px; }
}

@media (max-width: 820px) {
  .beta-announcement-inner, .nav-shell, .page-shell { width: min(100% - 28px, var(--max)); }
  .desktop-nav, .desktop-only { display: none; }
  .nav-account-link { display: none; }
  .mobile-menu-button { width: 42px; height: 42px; padding: 0; display: grid; place-content: center; gap: 5px; border: 0; border-radius: 11px; background: var(--paper-2); cursor: pointer; }
  .mobile-menu-button span { width: 18px; height: 2px; display: block; background: var(--ink); transition: transform .2s ease; }
  .mobile-menu-button[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .mobile-menu-button[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .mobile-nav { width: min(100% - 28px, var(--max)); margin: 0 auto 10px; padding: 10px; border: 1px solid var(--line); border-radius: 17px; background: rgba(251,251,250,.98); box-shadow: var(--shadow); }
  .mobile-nav:not([hidden]) { display: grid; }
  .mobile-nav a, .mobile-nav button { padding: 12px; border: 0; border-radius: 10px; background: transparent; text-align: left; font-weight: 700; }
  .mobile-nav a:hover, .mobile-nav button:hover { background: var(--paper-2); }
  .hero { padding-top: 42px; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { padding: 10px 0 8px; }
  .hero-search { max-width: none; }
  .hero-visual { min-height: 480px; }
  .class-grid { grid-template-columns: repeat(2, 1fr); }
  .proof-grid { grid-template-columns: 1fr; }
  .proof-callout { align-items: flex-start; flex-direction: column; }
  .feature-layout { grid-template-columns: 1fr; }
  .feature-visual { min-height: 540px; }
  .steps-grid { grid-template-columns: 1fr; }
  .step-card { min-height: auto; }
  .step-card::before { margin-bottom: 60px; }
  .cta-panel { padding: 48px 36px; grid-template-columns: 1fr; }
  .detail-layout { grid-template-columns: 1fr; }
  .booking-card { position: static; }
  .register-shell { grid-template-columns: 1fr; gap: 30px; }
  .register-intro { position: static; }
  .step-nav { grid-template-columns: repeat(4, 1fr); }
  .step-nav-item { padding: 8px; justify-content: center; }
  .step-nav-item > span:last-child { display: none; }
  .footer-bottom { grid-template-columns: 1fr; }
  .footer-social-row { grid-template-columns: 1fr; gap: 14px; }
  .footer-social-row p { text-align: left; }
  .footer-notice { align-items: flex-start; flex-direction: column; gap: 12px; }
}

@media (max-width: 580px) {
  .beta-announcement-inner { justify-content: space-between; gap: 8px; }
  .beta-announcement-inner > span { display: none; }
  .beta-announcement-inner strong, .beta-announcement-inner a { font-size: 9px; }
  .nav-shell { min-height: 62px; padding: 0; }
  .brand { font-size: 17px; }
  .brand-mark { width: 31px; height: 31px; border-radius: 9px; }
  .nav-actions .button-dark { min-height: 42px; padding: 0 12px; }
  .page-shell { width: calc(100% - 28px); }
  .hero { padding: 34px 0 25px; }
  .hero h1 { font-size: clamp(42px, 12.5vw, 54px); }
  .hero-subtitle { font-size: 16px; }
  .hero-search { padding: 5px; grid-template-columns: minmax(0, 1fr) auto; border-radius: 20px; }
  .hero-search-keyword { grid-column: 1 / -1; border-bottom: 1px solid var(--line); }
  .hero-search-region { border-left: 0; }
  .hero-search-field { min-height: 60px; padding: 7px 11px; gap: 10px; }
  .hero-search-icon { width: 34px; height: 34px; border-radius: 10px; }
  .hero-search-icon svg { width: 17px; height: 17px; }
  .hero-search-field label > span, .hero-search-label { font-size: 9px; }
  .hero-search input, .region-picker summary { font-size: 14px; }
  .hero-search .button { min-height: 54px; padding-inline: 15px; border-radius: 15px; }
  .hero-search-submit span { display: none; }
  .region-options { left: -49px; width: min(356px, calc(100vw - 28px)); }
  .hero-quick-links { width: 100%; max-width: 100%; margin-right: 0; padding-right: 0; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .hero-quick-links::-webkit-scrollbar { display: none; }
  .hero-quick-links > span, .hero-quick-links button { flex: 0 0 auto; }
  .hero-visual { min-height: 410px; border-radius: 24px; }
  .visual-card { grid-template-columns: 1fr; }
  .visual-card h2 { max-width: 245px; font-size: 19px; }
  .visual-card > strong { display: none; }
  .trust-row { gap: 14px; }
  .educator-rail { margin-top: 26px; }
  .educator-rail-heading { align-items: center; gap: 10px; }
  .educator-rail-heading h2 { font-size: 16px; }
  .educator-rail-actions > span { display: none; }
  .educator-rail-heading a { margin-left: 2px; }
  .educator-rail-card { min-width: 205px; }
  .section { padding: 74px 0; }
  .soft-section { padding: 74px 0; }
  .section-heading { display: block; }
  .section-heading p:not(.eyebrow), .section-heading .text-link { display: block; margin-top: 14px; }
  .category-grid { grid-template-columns: repeat(2, 1fr); }
  .category-card { min-height: 130px; }
  .class-grid { grid-template-columns: 1fr; }
  .proof-section { margin-top: 74px; padding: 78px 0; }
  .proof-card > div { min-height: 0; }
  .proof-callout { padding: 22px 20px; }
  .proof-callout .button { width: 100%; }
  .feature-visual { min-height: 500px; }
  .cta-panel { padding: 40px 24px; }
  .page-hero { padding: 62px 0 26px; }
  .page-hero h1 { font-size: 47px; }
  .search-toolbar { top: 80px; grid-template-columns: 1fr; }
  .filter-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .select-control { min-width: 0; width: 100%; }
  .learning-list { grid-template-columns: 1fr; }
  .educator-box { align-items: flex-start; flex-wrap: wrap; }
  .educator-box .button { width: 100%; margin-left: 0; }
  .register-page { padding-top: 60px; }
  .register-intro h1 { font-size: 42px; }
  .form-card { min-height: 0; padding: 26px 18px; border-radius: 22px; }
  .form-grid { grid-template-columns: 1fr; }
  .field-full { grid-column: auto; }
  .choice-grid { grid-template-columns: 1fr; }
  .choice-card label { min-height: 72px; }
  .preview-summary { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr; }
  .site-footer { padding-block: 55px; }
  .dialog-card { padding: 28px 21px; }
}

/* Hair field marketplace */
.desktop-nav { gap: 16px; }
.badge-neutral { background: rgba(255,255,255,.92); color: var(--ink-soft); }
.badge-sponsored { margin-left: auto; background: rgba(14,23,41,.9); color: white; box-shadow: inset 0 0 0 1px rgba(255,255,255,.22); }
.category-grid-wide { grid-template-columns: repeat(3, 1fr); }
.category-grid-wide .category-card { min-height: 158px; grid-column: auto; }
.pro-feature-section { padding-top: 42px; }
.pro-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.pro-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 24px; background: white; cursor: pointer; transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.pro-card:hover { transform: translateY(-6px); border-color: #b8c2d8; box-shadow: 0 18px 42px rgba(21,33,58,.12); }
.pro-card-image { position: relative; aspect-ratio: 4 / 3.35; overflow: hidden; background: #e3e7ee; }
.pro-card-image::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(14,23,41,.32)); pointer-events: none; }
.pro-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.2,.8,.2,1); }
.pro-card:hover .pro-card-image img { transform: scale(1.035); }
.pro-vertical { display: inline-flex; align-items: center; min-height: 31px; padding: 0 11px; border-radius: 999px; background: var(--brand-soft); color: var(--brand-deep); font-size: 11px; font-weight: 800; }
.pro-card-image > .pro-vertical { position: absolute; z-index: 2; top: 14px; left: 14px; background: rgba(255,255,255,.9); color: var(--ink); backdrop-filter: blur(8px); }
.pro-share-mini { position: absolute; z-index: 2; right: 14px; bottom: 14px; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.92); color: var(--ink); font-size: 18px; cursor: pointer; backdrop-filter: blur(8px); }
.pro-card-body { padding: 19px; }
.pro-name-line { display: flex; gap: 10px; align-items: flex-start; flex-wrap: wrap; row-gap: 8px; }
.pro-name-line h3 { margin: 0; font-size: 22px; line-height: 1.12; letter-spacing: -.04em; }
.verified-badge, .pending-badge { display: inline-flex; width: fit-content; align-items: center; min-height: 28px; padding: 0 9px; border-radius: 999px; font-size: 10px; font-weight: 850; white-space: nowrap; }
.verified-badge { background: var(--gold-soft); color: var(--gold-deep); }
.pending-badge { background: var(--paper-2); color: var(--ink-soft); }
.verified-badge-compact { min-height: 24px; padding-inline: 8px; }
.pro-role { margin: 10px 0 0; color: var(--ink); font-size: 14px; font-weight: 750; line-height: 1.45; }
.pro-salon { margin: 3px 0 15px; color: var(--muted); font-size: 12px; }
.skill-tags { display: flex; gap: 6px; flex-wrap: wrap; }
.skill-tags span { padding: 5px 8px; border-radius: 999px; background: var(--paper-2); color: var(--ink-soft); font-size: 10px; font-weight: 700; }
.pro-card-stats { margin-top: 17px; padding-top: 14px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; border-top: 1px solid var(--line); color: var(--muted); font-size: 10px; }
.pro-card-stats span { display: grid; gap: 1px; }
.pro-card-stats strong { color: var(--ink); font-size: 13px; }

.proof-section { margin-top: 104px; padding: 110px 0; overflow: hidden; background: var(--navy-deep); color: white; }
.proof-heading { align-items: end; }
.proof-heading h2 { color: white; }
.proof-heading > p { max-width: 600px; color: rgba(255,255,255,.62); }
.proof-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.proof-card { min-width: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 25px; background: #121f38; box-shadow: 0 24px 70px rgba(0,0,0,.2); }
.proof-card img { width: 100%; height: auto; aspect-ratio: 16 / 9; display: block; object-fit: cover; }
.proof-card > div { min-height: 150px; padding: 23px 24px 25px; position: relative; }
.proof-card span { color: #9cb1ff; font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.proof-card h3 { margin: 10px 0 6px; color: white; font-size: 24px; letter-spacing: -.04em; }
.proof-card p { margin: 0; color: rgba(255,255,255,.58); font-size: 13px; line-height: 1.65; }
.proof-callout { margin-top: 18px; padding: 25px 26px; display: flex; justify-content: space-between; gap: 24px; align-items: center; border-radius: 22px; background: white; color: var(--ink); }
.proof-callout strong { display: block; font-size: 19px; letter-spacing: -.025em; }
.proof-callout p { max-width: 720px; margin: 5px 0 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.generated-image-note { margin: 12px 2px 0; color: rgba(255,255,255,.38); font-size: 9px; }

.identity-section { margin-top: 104px; padding: 110px 0; overflow: hidden; background: var(--navy-deep); color: white; }
.identity-layout { display: grid; grid-template-columns: minmax(0, .95fr) minmax(430px, .75fr); gap: 80px; align-items: center; }
.eyebrow-light { color: #9cb1ff; }
.identity-copy h2 { max-width: 700px; margin: 0; font-size: clamp(45px, 5.6vw, 74px); line-height: 1.02; letter-spacing: -.07em; }
.identity-copy > p:not(.eyebrow):not(.prototype-note) { max-width: 610px; margin: 24px 0 28px; color: rgba(255,255,255,.68); font-size: 17px; line-height: 1.72; }
.identity-points { display: grid; gap: 0; max-width: 620px; border-block: 1px solid rgba(255,255,255,.13); }
.identity-points span { padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.8); font-size: 13px; font-weight: 700; }
.identity-points span:last-child { border-bottom: 0; }
.identity-actions { margin-top: 28px; display: flex; gap: 10px; flex-wrap: wrap; }
.button-on-dark { border-color: rgba(255,255,255,.25); color: white; }
.button-on-dark:hover { background: rgba(255,255,255,.08); }
.prototype-note { margin: 14px 0 0; color: rgba(255,255,255,.4); font-size: 11px; }
.identity-card-wrap { perspective: 1200px; }
.identity-card { width: min(100%, 480px); margin: 0 auto; padding: 22px; border: 1px solid rgba(255,255,255,.17); border-radius: 32px; background: linear-gradient(155deg, #1f315d 0%, #101a2e 47%, #0b1220 100%); box-shadow: 0 34px 90px rgba(0,0,0,.38); transform: rotate(3deg); }
.identity-card-top { margin-bottom: 17px; display: flex; justify-content: space-between; color: rgba(255,255,255,.55); font-size: 9px; font-weight: 800; letter-spacing: .11em; }
.identity-portrait { width: 100%; aspect-ratio: 1 / .82; object-fit: cover; object-position: center 48%; border-radius: 22px; }
.identity-card-bottom { padding: 24px 5px 5px; }
.sample-label { display: inline-flex; width: fit-content; padding: 6px 9px; border-radius: 999px; background: var(--gold-soft); color: var(--gold-deep); font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.identity-card-bottom h3 { margin: 12px 0 0; font-size: 45px; line-height: 1; letter-spacing: -.06em; }
.identity-card-bottom > p { margin: 6px 0 16px; color: #9cb1ff; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.identity-card-bottom > div { display: flex; gap: 7px; flex-wrap: wrap; }
.identity-card-bottom > div span { padding: 6px 9px; border-radius: 999px; background: rgba(255,255,255,.09); font-size: 10px; }
.identity-card-bottom > strong { display: block; margin-top: 22px; color: rgba(255,255,255,.72); font-size: 11px; }

.page-hero-compact { padding-bottom: 26px; }
.page-hero-compact h1 { max-width: 900px; }
.search-results-section { padding-bottom: 110px; }
.market-tabs { margin: 0 0 22px; display: flex; gap: 6px; }
.market-tabs a { min-width: 112px; min-height: 46px; padding: 0 18px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.55); color: var(--muted); font-size: 14px; font-weight: 800; }
.market-tabs a.active { border-color: var(--navy); background: var(--navy); color: white; }
.discovery-search { grid-template-columns: minmax(280px, 1fr) 150px 150px; }
.filters-scroll { margin-bottom: 16px; }
.refine-row { margin-bottom: 32px; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.refine-row > div { display: flex; gap: 8px; }
.class-facts { margin: -8px 0 14px; display: flex; gap: 6px; flex-wrap: wrap; }
.pro-card-facts { margin: 14px 0 18px; min-height: 30px; align-content: flex-start; }
.class-facts span { padding: 4px 7px; border-radius: 7px; background: var(--paper-2); color: var(--muted); font-size: 10px; }
.class-opening { margin: -3px 0 16px; padding-top: 11px; display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid var(--line); font-size: 10px; }
.class-opening strong { color: var(--ink); }
.class-opening span { color: var(--muted); text-align: right; }
.pro-search-bar { position: sticky; top: 91px; z-index: 50; margin-bottom: 18px; padding: 12px; display: grid; grid-template-columns: minmax(280px, 1fr) 150px auto; gap: 10px; border: 1px solid var(--line); border-radius: 19px; background: rgba(247,245,242,.94); backdrop-filter: blur(18px); }
.verified-toggle { min-height: 50px; padding: 0 15px; display: flex; gap: 9px; align-items: center; border: 1px solid var(--line); border-radius: 13px; background: white; color: var(--ink-soft); font-size: 12px; font-weight: 700; cursor: pointer; white-space: nowrap; }
.verified-toggle input { width: 17px; height: 17px; accent-color: var(--brand); }
.pro-grid-results { margin-bottom: 30px; }
.pro-grid-home-registered { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.class-grid-home-registered { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pro-grid-registered .pro-card-image { aspect-ratio: 4 / 3.08; }
.pro-grid-registered .pro-card-body { padding: 16px 16px 0; }
.pro-grid-registered .pro-card-body > .card-kicker { min-height: 26px; margin-bottom: 12px; }
.pro-grid-registered .pro-card-body > .pro-role { min-height: 22px; margin-top: 9px; }
.pro-grid-registered .pro-card-facts { margin: 11px 0 14px; }
.pro-grid-registered .pro-card-stats { margin-inline: -16px; padding-inline: 16px; }
.pro-grid-registered .pro-card-stats span { padding-block: 11px 13px; }
.pro-grid-registered .pro-card-footer { margin-inline: -16px; padding: 13px 16px 15px; }
.class-grid-home-registered .card-educator { display: grid; grid-template-columns: auto minmax(0, 1fr) max-content; }
.class-grid-home-registered .card-price { margin-left: 0; }

.creator-recruitment { margin: 68px 0 30px; padding-top: 44px; border-top: 1px solid var(--home-line); }
.creator-recruitment-head { margin-bottom: 24px; display: grid; grid-template-columns: minmax(260px, .78fr) minmax(0, 1.22fr); gap: 42px; align-items: end; }
.creator-recruitment-head span { color: var(--home-signal); font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.creator-recruitment-head h2 { margin: 10px 0 0; color: var(--home-ink); font-size: clamp(32px, 4vw, 54px); line-height: 1.02; letter-spacing: -.055em; }
.creator-recruitment-head p { max-width: 560px; margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.72; }
.creator-recruit-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.creator-recruit-card { position: relative; min-width: 0; min-height: 238px; overflow: hidden; border: 1px solid var(--home-line); border-bottom: 4px solid var(--skill-accent); background: var(--home-surface); color: var(--home-ink); }
.creator-recruit-card::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(155deg, color-mix(in srgb, var(--skill-accent) 26%, transparent), rgba(11,12,11,.42) 38%, rgba(11,12,11,.96) 100%); }
.creator-recruit-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .68; transform: scale(1.025); transition: opacity .2s ease, transform .35s ease; }
.creator-recruit-index { position: absolute; z-index: 2; top: 15px; left: 16px; color: var(--skill-accent); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.creator-recruit-copy { position: absolute; z-index: 2; inset: auto 16px 16px; display: grid; gap: 8px; }
.creator-recruit-copy small { display: flex; align-items: center; gap: 6px; color: var(--skill-accent); font-size: 10px; font-weight: 850; }
.creator-recruit-copy strong { max-width: 220px; color: var(--home-ink); font-size: 21px; line-height: 1.16; letter-spacing: -.045em; word-break: keep-all; }
.creator-recruit-copy em { color: rgba(241,240,233,.68); font-size: 10px; font-style: normal; font-weight: 700; }
.creator-recruit-copy b { margin-top: 3px; display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--home-ink); font-size: 10px; font-weight: 850; }
.creator-recruit-copy b svg { width: 15px; height: 15px; }
.creator-recruit-card:hover,
.creator-recruit-card:focus-visible { border-color: var(--skill-accent); outline: 0; }
.creator-recruit-card:hover > img,
.creator-recruit-card:focus-visible > img { opacity: .82; transform: scale(1.055); }

@media (max-width: 820px) {
  .creator-recruitment-head { grid-template-columns: 1fr; gap: 14px; }
  .creator-recruit-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1100px) {
  .pro-grid-home-registered,
  .class-grid-home-registered { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 580px) {
  .pro-grid-home-registered,
  .class-grid-home-registered { grid-template-columns: 1fr; }
  .class-grid-home-registered .card-title { min-height: 0; font-size: 18px; line-height: 1.32; }
  .class-grid-home-registered .card-kicker { font-size: 10px; }
  .class-grid-home-registered .card-price strong { font-size: 15px; }
  .class-grid-home-registered .card-price span { font-size: 9px; }
  .creator-recruitment { margin-top: 42px; padding-top: 26px; }
  .creator-recruitment-head { margin-bottom: 15px; gap: 9px; }
  .creator-recruitment-head h2 { margin-top: 7px; font-size: 28px; line-height: 1.05; }
  .creator-recruitment-head p { font-size: 11px; line-height: 1.55; }
  .creator-recruit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .creator-recruit-card { min-height: 176px; }
  .creator-recruit-index { top: 10px; left: 11px; font-size: 8px; }
  .creator-recruit-copy { inset: auto 11px 11px; gap: 5px; }
  .creator-recruit-copy small { gap: 4px; font-size: 8px; }
  .creator-recruit-copy strong { font-size: 16px; line-height: 1.2; }
  .creator-recruit-copy em { font-size: 8px; }
  .creator-recruit-copy b { margin-top: 2px; font-size: 8px; }
  .creator-recruit-copy b svg { width: 12px; height: 12px; }
}

.educator-box-rich > img { width: 70px; height: 70px; flex: 0 0 auto; object-fit: cover; border-radius: 18px; }
.educator-box-rich .skill-tags { margin-top: 8px; }
.booking-share { margin-top: 8px; }

.pro-profile-page { padding: 70px 0 110px; }
.profile-hero { padding: 28px; display: grid; grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr); gap: 54px; align-items: center; border: 1px solid var(--line); border-radius: 32px; background: white; box-shadow: 0 18px 60px rgba(21,33,58,.07); }
.profile-portrait { position: relative; min-height: 540px; overflow: hidden; border-radius: 24px; background: var(--paper-2); }
.profile-portrait::after { content: ""; position: absolute; inset: 55% 0 0; background: linear-gradient(transparent, rgba(14,23,41,.32)); }
.profile-portrait img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.profile-portrait .sample-label { position: absolute; z-index: 2; left: 18px; bottom: 18px; }
.profile-summary { padding-right: 30px; }
.profile-status-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.profile-field-professional { min-height: 28px; padding: 0 10px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid color-mix(in srgb, var(--skill-accent) 68%, transparent); color: var(--skill-accent); font-size: 9px; font-weight: 900; letter-spacing: .04em; white-space: nowrap; }
.profile-field-professional i { width: 7px; height: 7px; display: inline-block; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px color-mix(in srgb, var(--skill-accent) 12%, transparent); }
.badge-field-professional { border-color: color-mix(in srgb, var(--skill-accent) 75%, transparent) !important; background: color-mix(in srgb, var(--skill-accent) 12%, rgba(5,7,5,.88)) !important; color: var(--skill-accent) !important; }
.profile-handle { margin: 18px 0 1px; color: var(--brand-deep); font-size: 13px; font-weight: 750; }
.profile-summary h1 { margin: 0; font-size: clamp(54px, 7vw, 88px); line-height: .98; letter-spacing: -.075em; }
.profile-title { margin: 13px 0 0; font-size: 22px; font-weight: 750; letter-spacing: -.03em; }
.profile-affiliation { margin: 3px 0 0; color: var(--muted); font-size: 14px; }
.profile-affiliation span { color: var(--skill-accent, var(--brand)); font-weight: 850; }
.profile-bio { max-width: 670px; margin: 24px 0 18px; color: var(--ink-soft); font-size: 16px; line-height: 1.75; }
.skill-tags-lg span { padding: 7px 11px; font-size: 11px; }
.profile-actions { margin-top: 30px; display: flex; gap: 9px; flex-wrap: wrap; }
.profile-response { margin-top: 15px; display: block; color: var(--muted); font-size: 11px; }
.profile-stats-bar { margin: 18px 0 70px; padding: 24px 28px; display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--line); border-radius: 22px; background: var(--navy); color: white; }
.profile-stats-bar div { padding: 2px 20px; border-right: 1px solid rgba(255,255,255,.15); }
.profile-stats-bar div:first-child { padding-left: 0; }
.profile-stats-bar div:last-child { padding-right: 0; border-right: 0; }
.profile-stats-bar span { display: block; color: rgba(255,255,255,.5); font-size: 10px; font-weight: 700; }
.profile-stats-bar strong { display: block; margin-top: 3px; font-size: 21px; }
.profile-content-grid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 42px; align-items: start; }
.profile-section { margin-bottom: 70px; }
.profile-section-head { margin-bottom: 22px; display: flex; justify-content: space-between; align-items: end; gap: 18px; }
.profile-section-head h2 { margin: 0; font-size: 36px; letter-spacing: -.05em; }
.profile-section-head > span { color: var(--muted); font-size: 11px; }
.portfolio-grid { display: grid; grid-template-columns: 1.3fr .85fr; grid-template-rows: repeat(2, 225px); gap: 10px; }
.portfolio-grid img { width: 100%; height: 100%; object-fit: cover; border-radius: 18px; }
.portfolio-grid img:first-child { grid-row: 1 / 3; }
.profile-class-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.profile-class-grid .card-content { padding: 15px; }
.profile-class-grid .card-title { font-size: 16px; }
.profile-related-posts { padding-top: 52px; border-top: 1px solid var(--line); }
.profile-related-post-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.profile-related-post-grid a { min-height: 270px; padding: 26px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: inherit; background: var(--home-surface, var(--paper-2)); transition: border-color .2s ease, background .2s ease, color .2s ease; }
.profile-related-post-grid a:hover { border-color: var(--skill-accent, var(--brand)); background: var(--skill-accent, var(--brand)); color: #0b0c0b; }
.profile-related-post-grid span { color: var(--skill-accent, var(--brand)); font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.profile-related-post-grid a:hover span { color: inherit; }
.profile-related-post-grid strong { max-width: 460px; margin-top: 46px; font-size: 26px; line-height: 1.2; letter-spacing: -.045em; word-break: keep-all; }
.profile-related-post-grid p { margin: 13px 0 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.profile-related-post-grid a:hover p { color: rgba(11,12,11,.72); }
.profile-related-post-grid b { margin-top: auto; padding-top: 28px; display: flex; justify-content: space-between; font-size: 11px; }
.profile-side { position: sticky; top: 105px; display: grid; gap: 14px; }
.credential-card { padding: 25px; overflow: hidden; border-radius: 24px; background: linear-gradient(150deg, #1d3263, #0e1729 65%); color: white; box-shadow: var(--shadow); }
.credential-emblem { width: 47px; height: 47px; display: grid; place-items: center; border-radius: 14px; background: var(--brand); font-size: 27px; font-weight: 900; }
.credential-card p { margin: 36px 0 7px; color: rgba(255,255,255,.48); font-size: 9px; font-weight: 850; letter-spacing: .12em; }
.credential-card h3 { margin: 0; font-size: 33px; letter-spacing: -.05em; }
.credential-card > strong { display: block; color: rgba(255,255,255,.72); font-size: 13px; }
.credential-card > span:not(.credential-emblem) { margin-top: 24px; display: block; color: #d8b676; font-size: 10px; font-weight: 850; }
.credential-card small { margin-top: 12px; display: block; color: rgba(255,255,255,.35); font-size: 9px; }
.badge-wallet { padding: 22px; display: grid; gap: 8px; border: 1px solid var(--line); border-radius: 21px; background: white; }
.badge-wallet h3 { margin: 0 0 7px; font-size: 17px; }
.badge-wallet > span { padding: 11px; border-radius: 11px; background: var(--gold-soft); color: var(--gold-deep); font-size: 11px; font-weight: 750; }
.badge-wallet small { margin-top: 6px; color: var(--muted); font-size: 10px; }
.empty-inline { padding: 40px 20px; grid-column: 1 / -1; border: 1px dashed var(--line); border-radius: 18px; color: var(--muted); text-align: center; }

.educator-onboarding { padding: 82px 0 120px; }
.educator-onboarding-head { max-width: 850px; }
.educator-onboarding-head h1 { margin: 0; font-size: clamp(50px, 7vw, 84px); line-height: 1.01; letter-spacing: -.075em; }
.educator-onboarding-head > p:not(.eyebrow) { max-width: 690px; margin: 22px 0 0; color: var(--muted); font-size: 18px; }
.onboarding-steps { margin: 46px 0 26px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.onboarding-steps > div { min-height: 120px; padding: 16px; border: 1px solid var(--line); border-radius: 17px; background: rgba(255,255,255,.6); }
.onboarding-steps span { color: var(--brand); font-size: 10px; font-weight: 900; }
.onboarding-steps strong { margin-top: 24px; display: block; font-size: 14px; }
.onboarding-steps p { margin: 2px 0 0; color: var(--muted); font-size: 11px; }
.educator-builder { max-width: 980px; margin-inline: auto; }
.educator-form { padding: 36px; border: 1px solid var(--line); border-radius: 28px; background: white; box-shadow: 0 18px 60px rgba(21,33,58,.06); }
.application-photo-guide { margin-top: 24px; padding: 20px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; border: 1px solid #cfd8ef; border-radius: 18px; background: #f3f6fc; }
.application-photo-guide strong, .application-photo-guide small { grid-column: 1 / -1; }
.application-photo-guide strong { margin-bottom: 3px; font-size: 14px; letter-spacing: -.02em; }
.application-photo-guide span { padding: 11px 12px; border-radius: 11px; background: white; color: var(--ink-soft); font-size: 11px; font-weight: 750; }
.application-photo-guide small { margin-top: 4px; color: var(--muted); font-size: 10px; line-height: 1.65; }
.educator-form-actions { margin-top: 25px; padding-top: 22px; display: flex; gap: 10px; border-top: 1px solid var(--line); }
.application-consent { margin-top: 22px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: #f8f9fb; }
.honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; }
.application-success { min-height: 650px; max-width: 850px; margin: 0 auto; display: grid; place-content: center; justify-items: center; text-align: center; }
.application-success > span { width: 64px; height: 64px; margin-bottom: 22px; display: grid; place-items: center; border-radius: 20px; background: var(--brand-soft); color: var(--brand); font-size: 28px; font-weight: 900; }
.application-success .eyebrow { margin-bottom: 12px; }
.application-success h1 { margin: 0; font-size: clamp(48px, 7vw, 82px); line-height: 1; letter-spacing: -.07em; }
.application-success > p:not(.eyebrow) { max-width: 640px; margin: 24px auto; color: var(--muted); font-size: 16px; }
.application-success > div { display: flex; gap: 9px; }
.application-success > small { margin-top: 18px; color: var(--muted); }
.field-help { margin: -2px 0 2px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.verification-levels { margin-top: 24px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.verification-levels > div { padding: 14px; border-radius: 13px; background: var(--paper-2); }
.verification-levels span, .verification-levels small { display: block; color: var(--muted); font-size: 9px; }
.verification-levels strong { display: block; margin: 3px 0; font-size: 13px; }
.educator-preview { position: sticky; top: 105px; padding: 24px; border-radius: 28px; background: var(--navy-deep); color: white; }
.educator-preview .eyebrow { color: #9cb1ff; }
.educator-live-card { overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 22px; background: white; color: var(--ink); }
.educator-live-cover { position: relative; height: 280px; overflow: hidden; }
.educator-live-cover img { width: 100%; height: 100%; object-fit: cover; }
.educator-live-cover span { position: absolute; left: 13px; bottom: 13px; padding: 6px 9px; border-radius: 999px; background: rgba(255,255,255,.9); font-size: 10px; font-weight: 800; }
.educator-live-body { padding: 18px; }
.educator-live-handle { margin: 14px 0 0 !important; color: var(--brand-deep) !important; font-size: 11px !important; font-weight: 750; }
.educator-live-body h3 { margin: 1px 0; font-size: 27px; letter-spacing: -.05em; }
.educator-live-body > strong { font-size: 12px; }
.educator-live-body > p:not(.educator-live-handle) { min-height: 60px; margin: 12px 0; color: var(--muted); font-size: 12px; }
.educator-preview-note { margin: 15px 0 0; color: rgba(255,255,255,.46); font-size: 10px; line-height: 1.6; }
.register-profile-link { margin: -14px 0 22px; display: inline-block; color: var(--brand-deep); font-size: 12px; font-weight: 750; }

.share-dialog { width: min(650px, calc(100vw - 30px)); }
.share-dialog-card { max-height: min(900px, calc(100vh - 24px)); overflow-y: auto; }
.share-format-switch { margin: 18px 0 12px; padding: 4px; display: grid; grid-template-columns: 1fr 1fr; border-radius: 12px; background: var(--paper-2); }
.share-format-switch button { min-height: 39px; border: 0; border-radius: 9px; background: transparent; color: var(--muted); font-size: 12px; font-weight: 750; cursor: pointer; }
.share-format-switch button.active { background: white; color: var(--ink); box-shadow: 0 4px 13px rgba(21,33,58,.09); }
.share-preview { min-height: 360px; padding: 14px; display: grid; place-items: center; overflow: hidden; border-radius: 17px; background: #e8ebf1; }
.share-preview img { max-height: 520px; width: auto; border-radius: 9px; box-shadow: 0 14px 34px rgba(14,23,41,.2); }
.share-loading { color: var(--muted); font-size: 13px; }
.share-actions { margin-top: 14px; display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 7px; }
.share-footnote { margin: 12px 0 0 !important; color: var(--muted); font-size: 10px; line-height: 1.5; }

@media (max-width: 1050px) {
  .category-grid-wide { grid-template-columns: repeat(3, 1fr); }
  .category-grid-wide .category-card { grid-column: auto; }
  .identity-layout { grid-template-columns: minmax(0, 1fr) 410px; gap: 46px; }
  .profile-hero { grid-template-columns: 330px 1fr; gap: 35px; }
  .profile-summary { padding-right: 0; }
  .profile-content-grid { grid-template-columns: minmax(0, 1fr) 270px; gap: 25px; }
}

@media (max-width: 820px) {
  .category-grid-wide { grid-template-columns: repeat(2, 1fr); }
  .category-grid-wide .category-card:last-child { grid-column: auto; }
  .pro-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .identity-layout { grid-template-columns: 1fr; }
  .identity-card { max-width: 480px; transform: rotate(1deg); }
  .discovery-search, .pro-search-bar { position: static; grid-template-columns: minmax(0, 1fr) 145px; }
  .discovery-keyword, .pro-search-bar .search-input-wrap { grid-column: 1 / -1; }
  .verified-toggle { justify-content: center; }
  .profile-hero { grid-template-columns: 1fr; }
  .profile-portrait { min-height: 600px; }
  .profile-content-grid { grid-template-columns: 1fr; }
  .profile-side { position: static; grid-template-columns: 1fr 1fr; }
  .educator-builder { grid-template-columns: 1fr; }
  .educator-preview { position: static; }
}

@media (max-width: 580px) {
  .desktop-nav { gap: 14px; }
  .category-grid-wide { grid-template-columns: repeat(2, 1fr); }
  .category-grid-wide .category-card { min-height: 135px; }
  .pro-grid { grid-template-columns: 1fr; }
  .identity-section { margin-top: 74px; padding: 78px 0; }
  .identity-copy h2 { font-size: 47px; }
  .identity-actions { display: grid; }
  .identity-card { padding: 16px; border-radius: 24px; }
  .identity-card-bottom h3 { font-size: 36px; }
  .search-results-section { padding-bottom: 78px; }
  .market-tabs a { width: 50%; min-width: 0; }
  .discovery-search, .pro-search-bar { grid-template-columns: 1fr; top: auto; }
  .discovery-keyword, .pro-search-bar .search-input-wrap { grid-column: auto; }
  .refine-row { display: grid; }
  .refine-row > div { display: grid; grid-template-columns: 1fr 1fr; }
  .refine-row > div .select-control:last-child { grid-column: 1 / -1; }
  .profile-hero { padding: 15px; border-radius: 24px; }
  .profile-portrait { min-height: 430px; }
  .profile-summary { padding: 12px 7px 18px; }
  .profile-summary h1 { font-size: 58px; }
  .profile-actions { display: grid; }
  .profile-stats-bar { grid-template-columns: repeat(2, 1fr); gap: 18px 0; }
  .profile-stats-bar div:nth-child(2) { border-right: 0; }
  .profile-stats-bar div:nth-child(3) { padding-left: 0; }
  .profile-class-grid { grid-template-columns: 1fr; }
  .profile-related-post-grid { grid-template-columns: 1fr; }
  .profile-related-post-grid a { min-height: 238px; padding: 22px; }
  .profile-related-post-grid strong { margin-top: 34px; font-size: 23px; }
  .portfolio-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 300px 170px; }
  .portfolio-grid img:first-child { grid-column: 1 / -1; grid-row: auto; }
  .profile-side { grid-template-columns: 1fr; }
  .onboarding-steps { grid-template-columns: repeat(2, 1fr); }
  .educator-form { padding: 25px 18px; border-radius: 22px; }
  .application-photo-guide { grid-template-columns: 1fr; }
  .application-photo-guide strong, .application-photo-guide small { grid-column: auto; }
  .verification-levels { grid-template-columns: 1fr; }
  .educator-form-actions { display: grid; }
  .application-success { min-height: 560px; }
  .application-success h1 { font-size: 48px; }
  .application-success > div { width: 100%; display: grid; }
  .educator-live-cover { height: 330px; }
  .share-actions { grid-template-columns: 1fr; }
  .share-preview { min-height: 300px; }
}

/* Instructor access, verification, and policy surfaces */
.button:disabled,
button:disabled { cursor: not-allowed; opacity: .48; box-shadow: none; transform: none; }

.verification-boundary {
  margin: 22px 0 30px;
  padding: 18px;
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1.15fr;
  gap: 12px;
  align-items: center;
  border: 1px solid #cfd7e7;
  border-radius: 22px;
  background: #eef2f8;
}
.verification-boundary > div { min-height: 104px; padding: 15px; border-radius: 15px; background: white; }
.verification-boundary > i { color: #8a96aa; font-style: normal; font-size: 20px; font-weight: 500; }
.verification-boundary span { display: block; color: var(--brand-deep); font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.verification-boundary strong { display: block; margin-top: 17px; font-size: 14px; }
.verification-boundary p { margin: 2px 0 0; color: var(--muted); font-size: 11px; }
.verification-boundary .verification-boundary-result { background: var(--navy); color: white; }
.verification-boundary-result span { color: #aebfff; }
.verification-boundary-result p { color: rgba(255,255,255,.55); }
.verification-boundary > small { grid-column: 1 / -1; color: var(--muted); font-size: 10px; }
.register-gate { margin: 0 0 24px; padding: 13px; border: 1px solid #cfd7e7; border-radius: 13px; background: #eef2f8; }
.register-gate strong, .register-gate span { display: block; }
.register-gate strong { font-size: 12px; }
.register-gate span { margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.55; }

.auth-page { padding: 78px 0 120px; }
.auth-layout { min-height: 720px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(390px, .72fr); overflow: hidden; border: 1px solid var(--line); border-radius: 34px; background: white; box-shadow: 0 22px 70px rgba(21,33,58,.08); }
.auth-context { padding: 70px; background: radial-gradient(circle at 90% 10%, rgba(49,87,213,.48), transparent 37%), var(--navy-deep); color: white; }
.auth-context .eyebrow { color: #aebfff; }
.auth-context h1 { max-width: 720px; margin: 8px 0 22px; font-size: clamp(48px, 6vw, 78px); line-height: 1.02; letter-spacing: -.07em; }
.auth-context > p:not(.eyebrow) { max-width: 610px; margin: 0; color: rgba(255,255,255,.64); font-size: 17px; }
.auth-principles { margin-top: 54px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.auth-principles > div { min-height: 165px; padding: 18px; border: 1px solid rgba(255,255,255,.12); border-radius: 17px; background: rgba(255,255,255,.045); }
.auth-principles span { color: #9cb1ff; font-size: 10px; font-weight: 850; }
.auth-principles strong { display: block; margin-top: 44px; font-size: 14px; }
.auth-principles p { margin: 4px 0 0; color: rgba(255,255,255,.5); font-size: 11px; }
.auth-card { padding: 64px 50px; display: flex; flex-direction: column; justify-content: center; }
.auth-card-head { margin-bottom: 28px; }
.auth-availability { width: fit-content; padding: 6px 9px; display: inline-flex; border-radius: 999px; background: var(--paper-2); color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .04em; }
.auth-availability.ready { background: #e8f4eb; color: #28673b; }
.auth-card-head > p { margin: 28px 0 5px; color: var(--brand-deep); font-size: 10px; font-weight: 900; letter-spacing: .11em; }
.auth-card-head h2 { margin: 0 0 8px; font-size: 34px; line-height: 1.15; letter-spacing: -.05em; }
.auth-card-head > span:not(.auth-availability) { color: var(--muted); font-size: 13px; }
.auth-form { display: grid; gap: 15px; }
.auth-form .field { gap: 8px; }
.auth-password-field { position: relative; min-width: 0; }
.auth-form .auth-password-field input { width: 100%; padding-right: 56px; }
.auth-password-toggle { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; display: grid; place-items: center; padding: 10px; color: inherit; background: transparent; border: 0; border-radius: 0; cursor: pointer; }
.auth-password-toggle svg { width: 22px; height: 22px; }
.auth-password-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: -3px; }
.auth-eye-open { display: none; }
.auth-password-toggle[aria-pressed="true"] .auth-eye-closed { display: none; }
.auth-password-toggle[aria-pressed="true"] .auth-eye-open { display: block; }
.auth-password-toggle:hover,
.auth-password-toggle[aria-pressed="true"] { color: var(--home-signal, currentColor); }
.auth-mode-switch { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); background: var(--paper-2); }
.auth-mode-switch button { min-height: 44px; border: 0; border-right: 1px solid var(--line); background: transparent; color: var(--muted); font-size: 11px; font-weight: 850; cursor: pointer; }
.auth-mode-switch button:last-child { border-right: 0; }
.auth-mode-switch button.is-active { background: var(--brand); color: #11150c; }
.auth-beta-notice { padding: 16px 17px; display: grid; gap: 5px; border: 1px solid var(--brand); border-left-width: 5px; background: var(--brand-soft); }
.auth-beta-notice span { color: var(--brand-deep); font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.auth-beta-notice strong { font-size: 13px; line-height: 1.4; }
.auth-beta-notice p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.6; }
.auth-role-options { margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; border: 0; }
.auth-role-options legend { margin-bottom: 8px; color: var(--ink-soft); font-size: 11px; font-weight: 800; }
.auth-role-options label { min-width: 0; cursor: pointer; }
.auth-role-options input { position: absolute; opacity: 0; pointer-events: none; }
.auth-role-options label > span { min-height: 76px; padding: 14px; display: grid; align-content: center; gap: 3px; border: 1px solid var(--line); border-radius: 13px; background: var(--paper-2); }
.auth-role-options strong, .auth-role-options small { display: block; }
.auth-role-options strong { font-size: 12px; }
.auth-role-options small { color: var(--muted); font-size: 9px; line-height: 1.4; }
.auth-role-options input:checked + span { border-color: var(--brand); background: var(--brand-soft); box-shadow: inset 0 0 0 1px var(--brand); }
.auth-role-options input:focus-visible + span { outline: 2px solid var(--brand); outline-offset: 2px; }
.auth-account-types { margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; border: 0; }
.auth-account-types legend { grid-column: 1 / -1; margin-bottom: 2px; color: var(--ink-soft); font-size: 11px; font-weight: 800; }
.auth-account-types label { min-width: 0; cursor: pointer; }
.auth-account-types input { position: absolute; opacity: 0; pointer-events: none; }
.auth-account-types label > span { min-height: 84px; padding: 14px; display: grid; align-content: center; gap: 4px; border: 1px solid var(--line); background: var(--paper-2); }
.auth-account-types strong, .auth-account-types small { display: block; }
.auth-account-types strong { font-size: 13px; }
.auth-account-types small { color: var(--muted); font-size: 9px; line-height: 1.5; }
.auth-account-types input:checked + span { border-color: var(--brand); background: var(--brand-soft); box-shadow: inset 0 0 0 1px var(--brand); }
.auth-account-types input:focus-visible + span { outline: 2px solid var(--brand); outline-offset: 2px; }
.auth-business-field[hidden] { display: none !important; }
.auth-confirmation-note { min-height: 330px; padding: 26px; display: flex; flex-direction: column; justify-content: center; border: 1px solid var(--brand); background: var(--brand-soft); }
.auth-confirmation-note > span { color: var(--brand-deep); font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.auth-confirmation-note > strong { margin-top: 18px; font-size: 27px; letter-spacing: -.04em; }
.auth-confirmation-note > p { margin: 10px 0 26px; color: var(--muted); font-size: 12px; line-height: 1.7; }
.consent-check { display: flex; gap: 10px; align-items: flex-start; color: var(--muted); font-size: 11px; line-height: 1.55; }
.consent-check input { width: 17px; height: 17px; flex: 0 0 auto; margin-top: 1px; accent-color: var(--brand); }
.consent-check a { color: var(--brand-deep); text-decoration: underline; text-underline-offset: 2px; }
.auth-setup-note { padding: 13px; border-radius: 13px; background: var(--brand-soft); }
.auth-setup-note strong, .auth-setup-note span { display: block; }
.auth-setup-note strong { color: var(--brand-deep); font-size: 11px; }
.auth-setup-note span { margin-top: 3px; color: var(--muted); font-size: 10px; }
.auth-fineprint { margin: 0; color: var(--muted); font-size: 10px; text-align: center; }
.auth-turnstile-wrap { min-width: 0; display: grid; gap: 7px; }
.auth-turnstile-wrap > span { color: var(--muted); font-size: 10px; font-weight: 750; }
.auth-turnstile { width: 100%; min-height: 65px; overflow: hidden; }
.auth-turnstile[data-turnstile-state="error"] { min-height: 0; padding: 11px 12px; border: 1px solid #d9a4a4; color: #8b3030; font-size: 10px; line-height: 1.5; }
.auth-text-button:disabled { cursor: wait; opacity: .55; }
.auth-data-min { margin-top: 28px; padding-top: 20px; display: grid; gap: 3px; border-top: 1px solid var(--line); }
.auth-data-min strong { margin-bottom: 3px; font-size: 11px; }
.auth-data-min span { color: var(--muted); font-size: 10px; }
.auth-code-head { padding: 14px; display: flex; justify-content: space-between; align-items: center; border-radius: 13px; background: var(--paper-2); }
.auth-code-head span, .auth-code-head strong { display: block; }
.auth-code-head span { color: var(--muted); font-size: 9px; }
.auth-code-head strong { font-size: 13px; }
.auth-code-head button, .auth-text-button { padding: 0; border: 0; background: transparent; color: var(--brand-deep); font-size: 11px; font-weight: 750; cursor: pointer; }

.dashboard-page { padding: 80px 0 120px; }
.dashboard-head { margin-bottom: 34px; display: flex; justify-content: space-between; align-items: end; gap: 20px; }
.dashboard-head h1 { margin: 3px 0 5px; font-size: clamp(48px, 6vw, 74px); line-height: 1; letter-spacing: -.07em; }
.dashboard-head p:not(.eyebrow) { margin: 0; color: var(--muted); }
.dashboard-loading, .auth-required-card { min-height: 500px; padding: 50px; display: grid; place-content: center; justify-items: center; border: 1px solid var(--line); border-radius: 30px; background: white; text-align: center; }
.dashboard-loading > span { width: 38px; height: 38px; border: 3px solid var(--line); border-top-color: var(--brand); border-radius: 50%; animation: dashboardSpin .8s linear infinite; }
.dashboard-loading h1, .auth-required-card h1 { margin: 20px 0 5px; font-size: 32px; letter-spacing: -.04em; }
.dashboard-loading p, .auth-required-card p { margin: 0 0 24px; color: var(--muted); }
@keyframes dashboardSpin { to { transform: rotate(360deg); } }
.device-sessions-card { margin-top: 22px; }
.device-session-list { display: grid; border-top: 1px solid var(--line); }
.device-session-item {
  min-width: 0;
  padding: 16px 0;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  border-bottom: 1px solid var(--line);
}
.device-session-item.current { border-bottom-color: #b8cc75; }
.device-session-kind { color: var(--brand-deep); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.device-session-item > div { min-width: 0; display: grid; gap: 5px; }
.device-session-item strong { min-width: 0; display: flex; gap: 9px; align-items: center; font-size: 14px; }
.device-session-item strong em { padding: 4px 7px; border-radius: 999px; background: var(--brand-soft); color: var(--brand-deep); font-size: 8px; font-style: normal; letter-spacing: .04em; white-space: nowrap; }
.device-session-item small { color: var(--muted); font-size: 10px; }
.device-session-item .button { min-width: 94px; padding: 10px 13px; font-size: 10px; }
.device-session-actions { margin-top: 18px; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.device-session-danger { padding: 10px 3px; border: 0; background: transparent; color: #a24a4a; font-size: 10px; font-weight: 750; cursor: pointer; }
.device-session-danger:hover, .device-session-danger:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
.device-session-privacy { margin-top: 15px; display: block; color: var(--muted); font-size: 9px; line-height: 1.6; }
.device-session-empty { padding: 22px 0; display: grid; gap: 5px; }
.device-session-empty strong { font-size: 13px; }
.device-session-empty span { color: var(--muted); font-size: 10px; }
@media (max-width: 580px) {
  .device-session-item { grid-template-columns: minmax(0, 1fr) auto; gap: 9px 12px; }
  .device-session-kind { grid-column: 1 / -1; }
  .device-session-item strong { align-items: flex-start; flex-direction: column; gap: 5px; }
  .device-session-item .button { min-width: 0; }
  .device-session-actions { align-items: stretch; flex-direction: column; }
  .device-session-actions .button, .device-session-danger { width: 100%; }
}
.verification-progress { margin-bottom: 22px; display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; }
.verification-progress > div { min-height: 120px; padding: 17px; border: 1px solid var(--line); border-radius: 17px; background: rgba(255,255,255,.55); }
.verification-progress > div.complete { border-color: #bdcfbf; background: #f0f6f1; }
.verification-progress > div.active { border-color: #aab9e8; background: var(--brand-soft); }
.verification-progress span { color: var(--muted); font-size: 9px; font-weight: 900; }
.verification-progress strong { display: block; margin-top: 28px; font-size: 13px; }
.verification-progress p { margin: 2px 0 0; color: var(--muted); font-size: 10px; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(330px, .65fr); gap: 20px; align-items: start; }
.member-dashboard-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.member-dashboard-card { min-height: 310px; padding: 28px; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 25px; background: white; }
.member-dashboard-card > span { color: var(--brand-deep); font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.member-dashboard-card > strong { max-width: 520px; margin-top: auto; font-size: 30px; line-height: 1.12; letter-spacing: -.045em; }
.member-dashboard-card > p { max-width: 500px; margin: 12px 0 22px; color: var(--muted); font-size: 13px; line-height: 1.65; }
.member-dashboard-card > b { font-size: 12px; }
.member-dashboard-primary { background: var(--brand); color: white; }
.member-dashboard-primary > span, .member-dashboard-primary > p { color: rgba(255,255,255,.7); }
.member-dashboard-note { grid-column: 1 / -1; padding: 20px 24px; display: grid; grid-template-columns: 210px 1fr; gap: 24px; border: 1px solid var(--line); border-radius: 18px; }
.member-dashboard-note p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.dashboard-stack { display: grid; gap: 15px; }
.dashboard-card { padding: 30px; border: 1px solid var(--line); border-radius: 25px; background: white; box-shadow: 0 16px 44px rgba(21,33,58,.05); }
.dashboard-card-head { display: flex; justify-content: space-between; gap: 16px; align-items: start; }
.dashboard-card-head span { color: var(--brand-deep); font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.dashboard-card-head h2 { margin: 4px 0 0; font-size: 27px; letter-spacing: -.04em; }
.dashboard-card-head .visibility-tag, .dashboard-card-head .privacy-lock { padding: 6px 9px; border-radius: 999px; background: var(--brand-soft); font-size: 9px; letter-spacing: 0; }
.dashboard-card-head .privacy-lock { background: var(--gold-soft); color: var(--gold-deep); }
.dashboard-card-copy { margin: 12px 0 24px; color: var(--muted); font-size: 12px; }
.recent-inquiries-card, .account-deletion-card { margin-top: 22px; }
.recent-inquiry-list { display: grid; border-top: 1px solid var(--line); }
.recent-inquiry-list > a { min-height: 72px; padding: 14px 0; display: flex; justify-content: space-between; gap: 18px; align-items: center; border-bottom: 1px solid var(--line); }
.recent-inquiry-list > a > span { min-width: 0; display: grid; gap: 5px; }
.recent-inquiry-list strong { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.recent-inquiry-list small { color: var(--muted); font-size: 10px; line-height: 1.5; }
.recent-inquiry-list b { color: var(--brand-deep); font-size: 17px; }
.account-deletion-card { border-color: color-mix(in srgb, #a24a4a 24%, var(--line)); }
.account-deletion-card .device-session-danger { padding: 11px 0; }
.account-deletion-status { padding: 17px; display: grid; gap: 6px; border-left: 3px solid var(--brand); background: var(--paper-2); }
.account-deletion-status strong { font-size: 12px; }
.account-deletion-status span { color: var(--muted); font-size: 10px; line-height: 1.6; }
.profile-editor > .button { margin-top: 24px; }
.profile-management-contact { min-height: 100%; }
.profile-management-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.profile-management-summary > div { min-height: 92px; padding: 16px; display: flex; flex-direction: column; justify-content: space-between; gap: 12px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.profile-management-summary span { color: var(--muted); font-size: 9px; font-weight: 800; }
.profile-management-summary strong { font-size: 14px; line-height: 1.45; word-break: keep-all; }
.profile-management-guide { margin-top: 20px; padding: 18px; display: grid; gap: 6px; border-left: 3px solid var(--brand); background: var(--paper-2); }
.profile-management-guide strong { font-size: 12px; }
.profile-management-guide span { font-size: 11px; line-height: 1.65; }
.profile-management-guide small { color: var(--muted); font-size: 9px; line-height: 1.6; }
.profile-management-actions { margin-top: 20px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.profile-management-actions .button { width: 100%; justify-content: space-between; }
.profile-management-safety { margin-top: 15px; display: block; color: var(--muted); font-size: 9px; line-height: 1.65; }
.home-dark .profile-management-summary { border-color: var(--home-line); }
.home-dark .profile-management-summary > div { border-color: var(--home-line); background: #0a0b0a; }
.home-dark .profile-management-summary span,
.home-dark .profile-management-guide small,
.home-dark .profile-management-safety { color: var(--home-muted); }
.home-dark .profile-management-guide { border-left-color: var(--home-signal); background: rgba(209,229,154,.06); }
.verification-result { margin-bottom: 20px; padding: 15px; border-radius: 14px; background: #f0f6f1; }
.verification-result span, .verification-result strong, .verification-result p { display: block; }
.verification-result span { color: var(--muted); font-size: 9px; }
.verification-result strong { margin-top: 3px; font-size: 14px; }
.verification-result p { margin: 2px 0 0; color: var(--muted); font-size: 10px; }
.verification-form { display: grid; gap: 13px; }
.file-field { min-height: 118px; padding: 18px; display: grid; place-content: center; gap: 8px; border: 1px dashed var(--line-strong); border-radius: 15px; background: #fafbfd; text-align: center; }
.file-field span { color: var(--muted); font-size: 10px; }
.file-field input { max-width: 100%; font-size: 11px; }
.redaction-note { padding: 13px; border-radius: 12px; background: #fff5e9; }
.redaction-note strong, .redaction-note span { display: block; }
.redaction-note strong { color: #8a5a1d; font-size: 11px; }
.redaction-note span { margin-top: 3px; color: #806b51; font-size: 10px; }
.boundary-card { background: var(--navy); color: white; }
.boundary-card > span { color: #aebfff; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.boundary-card h3 { margin: 24px 0 9px; font-size: 23px; line-height: 1.2; letter-spacing: -.035em; }
.boundary-card p { margin: 0; color: rgba(255,255,255,.58); font-size: 11px; }

.policy-page { padding: 84px 0 120px; }
.policy-hero { max-width: 940px; }
.policy-draft { margin: 16px 0; width: fit-content; padding: 7px 10px; display: block; border-radius: 999px; background: var(--gold-soft); color: var(--gold-deep); font-size: 10px; font-weight: 800; }
.policy-hero h1 { margin: 0; font-size: clamp(50px, 7vw, 88px); line-height: .99; letter-spacing: -.075em; }
.policy-hero > p:not(.eyebrow) { max-width: 720px; margin: 22px 0 0; color: var(--muted); font-size: 17px; }
.policy-alert { margin: 44px 0; padding: 24px; border: 1px solid #decba8; border-radius: 20px; background: #fbf3e7; }
.policy-alert strong { font-size: 14px; }
.policy-alert p { margin: 4px 0 0; color: #786952; font-size: 12px; }
.policy-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 54px; align-items: start; }
.policy-nav { position: sticky; top: 110px; display: grid; border-top: 1px solid var(--line); }
.policy-nav a { padding: 12px 0; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 11px; font-weight: 700; }
.policy-nav a:hover { color: var(--brand-deep); }
.policy-content { min-width: 0; }
.policy-content > section { padding: 0 0 54px; margin-bottom: 54px; border-bottom: 1px solid var(--line); scroll-margin-top: 120px; }
.policy-content > section > span, .simple-policy-grid section > span { color: var(--brand); font-size: 10px; font-weight: 900; }
.policy-content h2, .simple-policy-grid h2 { margin: 8px 0 18px; font-size: 32px; letter-spacing: -.045em; }
.policy-content p, .policy-content li, .simple-policy-grid p { color: var(--ink-soft); font-size: 14px; line-height: 1.8; }
.policy-summary-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.policy-summary-grid > div { padding: 18px; border-radius: 15px; background: var(--paper-2); }
.policy-summary-grid strong { font-size: 13px; }
.policy-summary-grid p { margin: 4px 0 0; color: var(--muted); font-size: 11px; }
.policy-table { overflow: hidden; border: 1px solid var(--line); border-radius: 17px; }
.policy-row { padding: 14px 16px; display: grid; grid-template-columns: 120px 1.2fr 1fr; gap: 16px; border-bottom: 1px solid var(--line); font-size: 12px; }
.policy-row:last-child { border-bottom: 0; }
.policy-row span { color: var(--ink-soft); }
.policy-row-head { background: var(--navy); color: white; font-size: 10px; font-weight: 800; }
.policy-row-head span { color: rgba(255,255,255,.72); }
.policy-note { padding: 13px 15px; border-radius: 12px; background: var(--brand-soft); font-size: 11px !important; }
.policy-callout { margin-top: 22px; padding: 20px; border-radius: 16px; background: var(--navy); color: white; }
.policy-callout p { margin: 4px 0 0; color: rgba(255,255,255,.6); font-size: 12px; }
.launch-checklist { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.launch-checklist span { padding: 14px; border-radius: 13px; background: var(--paper-2); color: var(--ink-soft); font-size: 11px; }
.launch-checklist span::before { content: "○"; margin-right: 7px; color: var(--brand); }
.simple-policy-grid { margin-top: 54px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.simple-policy-grid section { min-height: 260px; padding: 25px; border: 1px solid var(--line); border-radius: 21px; background: white; }

/* Service introduction */
.about-page { overflow: hidden; background: white; }
.about-hero {
  padding-top: clamp(76px, 9vw, 126px);
  padding-bottom: clamp(72px, 8vw, 112px);
  border-bottom: 1px solid var(--line);
}
.about-hero h1 {
  max-width: 1080px;
  margin: 0;
  font-size: clamp(54px, 7.4vw, 98px);
  line-height: .98;
  letter-spacing: -.078em;
  text-wrap: balance;
}
.about-hero h1 span { color: var(--brand); }
.about-hero-copy {
  max-width: 1050px;
  margin-top: 42px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  align-items: start;
}
.about-hero-copy p,
.about-hero-copy strong { margin: 0; font-size: clamp(17px, 1.7vw, 22px); line-height: 1.65; letter-spacing: -.025em; }
.about-hero-copy p { color: var(--muted); }
.about-hero-copy strong { color: var(--ink); font-weight: 720; }
.about-actions { margin-top: 36px; display: flex; gap: 10px; flex-wrap: wrap; }

.about-problem { padding-top: 100px; padding-bottom: 110px; }
.about-section-heading {
  display: grid;
  grid-template-columns: minmax(180px, .45fr) minmax(0, 1.3fr);
  gap: 60px;
  align-items: start;
}
.about-section-heading > span { padding-top: 8px; color: var(--brand-deep); font-size: 11px; font-weight: 850; letter-spacing: .08em; }
.about-section-heading h2 { max-width: 760px; margin: 0; font-size: clamp(40px, 5vw, 66px); line-height: 1.05; letter-spacing: -.064em; }
.about-problem-grid { margin-top: 68px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line-strong); }
.about-problem-grid article { min-height: 260px; padding: 26px 28px 30px 0; border-bottom: 1px solid var(--line); }
.about-problem-grid article + article { padding-left: 28px; border-left: 1px solid var(--line); }
.about-problem-grid span { color: var(--brand); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.about-problem-grid h3 { margin: 82px 0 10px; font-size: 26px; line-height: 1.2; letter-spacing: -.04em; }
.about-problem-grid p { max-width: 320px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }

.about-solution { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: white; }
.about-solution-layout { padding-top: 100px; padding-bottom: 100px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(480px, 1.1fr); gap: 86px; align-items: start; }
.about-solution h2 { margin: 0; font-size: clamp(40px, 4.8vw, 64px); line-height: 1.04; letter-spacing: -.064em; }
.about-solution ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line-strong); }
.about-solution li { padding: 24px 0; display: grid; grid-template-columns: 50px 1fr; gap: 10px; border-bottom: 1px solid var(--line); }
.about-solution li > span { color: var(--brand); font-size: 11px; font-weight: 900; }
.about-solution li strong { display: block; font-size: 18px; letter-spacing: -.025em; }
.about-solution li p { margin: 5px 0 0; color: var(--muted); font-size: 13px; line-height: 1.65; }

.about-boundary { padding-top: 104px; padding-bottom: 112px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(420px, 1fr); gap: 90px; align-items: start; }
.about-boundary > div:first-child > span { color: var(--brand); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.about-boundary h2 { margin: 18px 0 0; font-size: clamp(38px, 4.8vw, 62px); line-height: 1.04; letter-spacing: -.06em; }
.about-boundary > div:last-child { padding-top: 28px; border-top: 1px solid var(--line-strong); }
.about-boundary p { margin: 0 0 22px; color: var(--muted); font-size: 15px; line-height: 1.75; }
.about-boundary strong { display: block; margin-bottom: 28px; font-size: 14px; line-height: 1.7; }
.about-trademark { margin-top: 34px; padding-top: 18px; display: flex; align-items: baseline; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line); }
.about-trademark span { color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .06em; }
.about-trademark b { color: var(--ink); font-size: 13px; letter-spacing: .04em; }

@media (max-width: 900px) {
  .about-hero-copy, .about-section-heading, .about-solution-layout, .about-boundary { grid-template-columns: 1fr; gap: 34px; }
  .about-problem-grid { grid-template-columns: 1fr; }
  .about-problem-grid article { min-height: auto; padding: 26px 0; }
  .about-problem-grid article + article { padding-left: 0; border-left: 0; }
  .about-problem-grid h3 { margin-top: 40px; }
  .about-boundary > div:last-child { padding-top: 24px; }
  .about-trademark { margin-top: 28px; }
}

@media (max-width: 580px) {
  .about-hero { padding-top: 58px; padding-bottom: 68px; }
  .about-hero h1 { font-size: 49px; }
  .about-hero-copy { margin-top: 32px; gap: 20px; }
  .about-hero-copy p, .about-hero-copy strong { font-size: 16px; }
  .about-actions { display: grid; }
  .about-actions .button { width: 100%; }
  .about-problem { padding-top: 70px; padding-bottom: 76px; }
  .about-problem-grid { margin-top: 45px; }
  .about-solution-layout, .about-boundary { padding-top: 72px; padding-bottom: 76px; }
  .about-solution li { grid-template-columns: 38px 1fr; }
}

/* Journal and first service story */
.blog-index,
.blog-post { padding-top: clamp(72px, 9vw, 122px); padding-bottom: clamp(96px, 11vw, 150px); }
.blog-index-hero {
  padding-bottom: 52px;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, .7fr);
  gap: 84px;
  align-items: end;
  border-bottom: 1px solid var(--line-strong);
}
.blog-index-hero h1 { max-width: 820px; margin: 0; font-size: clamp(54px, 7vw, 94px); line-height: .96; letter-spacing: -.075em; }
.blog-index-hero h1 span { color: var(--home-signal, var(--brand)); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.blog-index-hero > p { margin: 0 0 6px; color: var(--muted); font-size: 17px; font-weight: 600; line-height: 1.72; }
.blog-feature {
  margin-top: 54px;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(380px, .88fr);
  overflow: hidden;
  border: 1px solid var(--line-strong);
  background: var(--home-surface, var(--paper-2));
  color: inherit;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.blog-feature:hover { transform: translateY(-5px); border-color: var(--home-signal, var(--brand)); box-shadow: 12px 12px 0 rgba(209,229,154,.12); }
.blog-feature-visual { position: relative; min-height: 570px; overflow: hidden; border-right: 1px solid var(--line); }
.blog-feature-visual img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.92) contrast(1.05); transition: transform .5s ease; }
.blog-feature:hover .blog-feature-visual img { transform: scale(1.025); }
.blog-feature-visual > span { position: absolute; top: 20px; left: 20px; padding: 9px 11px; background: var(--home-signal, var(--brand)); color: var(--home-bg, white); font-size: 10px; font-weight: 900; letter-spacing: .06em; }
.blog-feature-copy { padding: clamp(34px, 4vw, 58px); display: flex; flex-direction: column; justify-content: center; }
.blog-meta { display: flex; flex-wrap: wrap; gap: 9px 16px; color: var(--home-signal, var(--brand)); font-size: 10px; font-weight: 850; letter-spacing: .07em; }
.blog-meta span + span { color: var(--muted); }
.blog-feature-copy h2 { margin: 52px 0 12px; font-size: clamp(39px, 4.1vw, 58px); line-height: 1.02; letter-spacing: -.06em; word-break: keep-all; }
.blog-feature-line { display: block; }
.blog-feature-copy > strong { color: var(--home-signal, var(--brand)); font-size: 18px; line-height: 1.5; word-break: keep-all; }
.blog-feature-copy > p { margin: 28px 0 0; color: var(--muted); font-size: 15px; line-height: 1.78; }
.blog-read-link { margin-top: 52px; padding-top: 18px; display: flex; justify-content: space-between; border-top: 1px solid var(--line); color: var(--ink); font-size: 14px; font-weight: 850; }
.blog-index-note { margin-top: 18px; padding: 22px 0; display: grid; grid-template-columns: 220px 1fr; gap: 24px; border-bottom: 1px solid var(--line); }
.blog-index-note span { color: var(--home-signal, var(--brand)); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.blog-index-note p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }

.blog-back { display: inline-flex; margin-bottom: 46px; color: var(--muted); font-size: 12px; font-weight: 800; }
.blog-back:hover { color: var(--home-signal, var(--brand)); }
.blog-post-header { max-width: 1030px; }
.blog-post-header h1 { max-width: 960px; margin: 26px 0 16px; font-size: clamp(56px, 7.4vw, 98px); line-height: .95; letter-spacing: -.078em; word-break: keep-all; }
.blog-post-subtitle { margin: 0; color: var(--home-signal, var(--brand)); font-size: clamp(21px, 2.4vw, 32px); font-weight: 780; line-height: 1.38; letter-spacing: -.035em; word-break: keep-all; }
.blog-post-deck { max-width: 820px; margin: 42px 0 0; color: var(--muted); font-size: 18px; font-weight: 600; line-height: 1.8; }
.blog-creator-connection { max-width: 1030px; margin: 34px 0 0; padding: 18px 20px; display: grid; grid-template-columns: 210px minmax(0, 1fr) auto; gap: 22px; align-items: center; border: 1px solid var(--line-strong); color: inherit; background: rgba(209,229,154,.06); }
.blog-creator-connection > span { color: var(--home-signal, var(--brand)); font-size: 9px; font-weight: 900; letter-spacing: .09em; }
.blog-creator-connection strong { display: block; font-size: 15px; }
.blog-creator-connection p { margin: 4px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.blog-creator-connection > b { color: var(--home-signal, var(--brand)); font-size: 11px; white-space: nowrap; }
.blog-creator-connection:hover { border-color: var(--home-signal, var(--brand)); }
.blog-creator-connection + .blog-post-cover { margin-top: 34px; }
.blog-ai-hero-caption + .blog-creator-connection { max-width: none; margin: 20px 0 68px; }
.blog-post-cover { margin: 64px 0 82px; }
.blog-post-cover img { width: 100%; height: min(620px, 57vw); object-fit: cover; border: 1px solid var(--line-strong); filter: saturate(.94) contrast(1.04); }
.blog-post-cover figcaption { margin-top: 10px; color: var(--muted); font-size: 10px; text-align: right; }
.blog-post-layout { display: grid; grid-template-columns: 210px minmax(0, 760px); gap: clamp(54px, 8vw, 112px); justify-content: center; align-items: start; }
.blog-toc { position: sticky; top: 112px; display: grid; border-top: 1px solid var(--line-strong); }
.blog-toc > span { padding: 17px 0; color: var(--home-signal, var(--brand)); font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.blog-toc button { padding: 12px 0; border: 0; border-top: 1px solid var(--line); background: transparent; color: var(--muted); font: inherit; font-size: 11px; font-weight: 700; line-height: 1.45; text-align: left; cursor: pointer; }
.blog-toc button:hover { color: var(--home-signal, var(--brand)); }
.blog-prose { min-width: 0; }
.blog-lead { margin: 0 0 70px; color: var(--ink); font-size: 23px; font-weight: 720; line-height: 1.72; letter-spacing: -.025em; }
.blog-prose section { padding: 68px 0; border-top: 1px solid var(--line-strong); scroll-margin-top: 110px; }
.blog-section-no { display: block; margin-bottom: 22px; color: var(--home-signal, var(--brand)); font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.blog-prose h2 { margin: 0 0 30px; font-size: clamp(34px, 4vw, 51px); line-height: 1.08; letter-spacing: -.058em; word-break: keep-all; }
.blog-prose section > p { margin: 0 0 22px; color: var(--muted); font-size: 17px; line-height: 1.9; }
.blog-prose section > p:last-child { margin-bottom: 0; }
.blog-prose section > p strong { color: var(--ink); }
.blog-prose blockquote { margin: 0 0 68px; padding: 34px; border-left: 5px solid var(--home-signal, var(--brand)); background: rgba(209,229,154,.08); }
.blog-prose blockquote span { color: var(--home-signal, var(--brand)); font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.blog-prose blockquote p { margin: 20px 0 0; color: var(--ink); font-size: 24px; font-weight: 750; line-height: 1.55; letter-spacing: -.03em; }
.blog-fact-grid { margin: 36px 0; display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.blog-fact-grid > div { min-height: 190px; padding: 22px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--home-surface, var(--paper-2)); }
.blog-fact-grid span { color: var(--home-signal, var(--brand)); font-size: 10px; font-weight: 900; }
.blog-fact-grid strong { display: block; margin-top: 50px; font-size: 19px; }
.blog-fact-grid p { margin: 7px 0 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.blog-checklist { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.blog-checklist li { padding: 24px 0; display: grid; grid-template-columns: 86px 1fr; gap: 20px; border-bottom: 1px solid var(--line); }
.blog-checklist li > span { color: var(--home-signal, var(--brand)); font-size: 10px; font-weight: 900; letter-spacing: .09em; }
.blog-checklist strong { display: block; font-size: 18px; }
.blog-checklist p { margin: 5px 0 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.blog-flow { margin: 34px 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.blog-flow > div { min-height: 240px; padding: 20px; border: 1px solid var(--line); background: var(--home-surface, var(--paper-2)); }
.blog-flow b { width: 30px; height: 30px; display: grid; place-items: center; background: var(--home-signal, var(--brand)); color: var(--home-bg, white); font-size: 11px; }
.blog-flow strong { display: block; margin-top: 66px; font-size: 16px; line-height: 1.35; }
.blog-flow p { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.blog-prose .blog-beta-note { margin-top: 14px; padding: 42px; border: 1px solid var(--home-signal, var(--brand)); background: rgba(209,229,154,.08); }
.blog-beta-note strong { display: block; margin-top: 22px; color: var(--ink); font-size: 14px; line-height: 1.75; }
.blog-post-cta { margin-top: 70px; padding: 38px; display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: end; background: var(--home-signal, var(--brand)); color: var(--home-bg, #0b0c0b); }
.blog-post-cta span { font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.blog-post-cta h2 { margin: 18px 0 0; color: inherit; font-size: 32px; line-height: 1.08; }
.blog-post-cta > div:last-child { display: grid; gap: 8px; }
.blog-post-cta .button-light,
.home-dark .blog-post-cta .button-light { border-color: rgba(11,12,11,.3); background: transparent; color: var(--home-bg, #0b0c0b); }
.home-dark .blog-post-cta .button-light:hover { border-color: var(--home-bg, #0b0c0b); background: rgba(11,12,11,.08); color: var(--home-bg, #0b0c0b); }

/* Lee Yujin career and ABC classic editorial */
.blog-post-abc { --blog-abc-accent: #e1bd69; --blog-abc-ink: #f4f1e8; }
.blog-post-abc .blog-meta,
.blog-post-abc .blog-section-no,
.blog-post-abc .blog-toc > span { color: var(--blog-abc-accent); }
.blog-abc-hero {
  min-height: 760px;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(430px, 1.08fr);
  overflow: hidden;
  border: 1px solid rgba(225,189,105,.34);
  background: #080907;
}
.blog-abc-hero-copy {
  min-width: 0;
  padding: clamp(38px, 5vw, 72px);
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background:
    linear-gradient(rgba(225,189,105,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(225,189,105,.05) 1px, transparent 1px),
    radial-gradient(circle at 12% 20%, rgba(225,189,105,.16), transparent 35%),
    #080907;
  background-size: 52px 52px, 52px 52px, auto, auto;
}
.blog-abc-kicker { margin: clamp(52px, 7vw, 92px) 0 18px; display: flex; align-items: center; gap: 9px; color: var(--blog-abc-ink); font: 900 9px/1 Arial, sans-serif; letter-spacing: .14em; }
.blog-abc-kicker i { width: 9px; height: 9px; border-radius: 50%; background: var(--blog-abc-accent); box-shadow: 0 0 0 6px rgba(225,189,105,.08); }
.blog-abc-hero h1 { margin: 0; font-size: clamp(43px, 4vw, 60px); line-height: .94; letter-spacing: -.075em; word-break: keep-all; }
.blog-abc-hero h1 span,
.blog-abc-hero h1 em { display: block; }
.blog-abc-hero h1 .blog-abc-brand-line { font-size: .8em; letter-spacing: -.06em; }
.blog-abc-hero h1 em { margin-top: 14px; color: var(--blog-abc-accent); font-family: Georgia, "Times New Roman", serif; font-size: .56em; letter-spacing: -.045em; }
.blog-abc-hero-statement { max-width: 590px; margin: 24px 0 0; color: var(--blog-abc-accent); font-size: clamp(17px, 1.45vw, 21px); font-weight: 800; line-height: 1.5; letter-spacing: -.035em; }
.blog-abc-hero .blog-post-subtitle { max-width: 680px; margin-top: 30px; color: rgba(244,241,232,.7); font-size: clamp(16px, 1.55vw, 22px); line-height: 1.55; }
.blog-abc-career-numbers { margin-top: auto; padding-top: 44px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid rgba(225,189,105,.25); }
.blog-abc-career-numbers > div { min-width: 0; display: flex; align-items: end; gap: 10px; }
.blog-abc-career-numbers strong { color: var(--blog-abc-accent); font: 800 clamp(34px, 3.6vw, 52px)/.82 Arial, sans-serif; letter-spacing: -.07em; }
.blog-abc-career-numbers span { color: rgba(244,241,232,.55); font: 800 7px/1.3 Arial, sans-serif; letter-spacing: .08em; }
.blog-abc-hero-portrait { min-width: 0; margin: 0; position: relative; isolation: isolate; overflow: hidden; background: #ede9e6; }
.blog-abc-hero-portrait::after { content: ""; position: absolute; z-index: 1; inset: 0; border: 28px solid rgba(225,189,105,.2); pointer-events: none; }
.blog-abc-hero-portrait img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: center 18%; filter: saturate(.84) contrast(1.02); }
.blog-abc-portrait-type { position: absolute; z-index: 2; top: 36px; right: 38px; left: 38px; display: grid; color: #17130b; pointer-events: none; }
.blog-abc-portrait-type > span { font: 900 9px/1 Arial, sans-serif; letter-spacing: .16em; }
.blog-abc-portrait-type > strong { margin-top: 10px; font: 900 clamp(78px, 10vw, 148px)/.77 Arial, sans-serif; letter-spacing: -.1em; opacity: .82; }
.blog-abc-portrait-type > em { color: #92701f; font-family: Georgia, "Times New Roman", serif; font-size: clamp(39px, 5vw, 70px); font-weight: 700; line-height: .9; letter-spacing: -.065em; }
.blog-abc-portrait-type > small { margin-top: 18px; font: 900 8px/1 Arial, sans-serif; letter-spacing: .14em; }
.blog-abc-hero-portrait figcaption { position: absolute; z-index: 2; right: 38px; bottom: 36px; left: 38px; padding-top: 13px; display: flex; justify-content: space-between; gap: 18px; border-top: 1px solid rgba(23,19,11,.35); color: #17130b; font: 800 8px/1.3 Arial, sans-serif; letter-spacing: .09em; }
.blog-abc-verification { margin: 14px 0 0; padding: 28px 30px; display: grid; grid-template-columns: 240px 1fr; gap: 34px; border: 1px solid rgba(225,189,105,.45); background: linear-gradient(120deg, rgba(225,189,105,.12), rgba(225,189,105,.025)); }
.blog-abc-verification > div { display: grid; align-content: start; gap: 8px; }
.blog-abc-verification span { color: var(--blog-abc-accent); font: 900 9px/1.4 Arial, sans-serif; letter-spacing: .12em; }
.blog-abc-verification strong { color: var(--blog-abc-ink); font-size: 24px; line-height: 1.25; letter-spacing: -.04em; }
.blog-abc-verification p { margin: 0; color: var(--blog-abc-ink); font-size: 14px; line-height: 1.72; }
.blog-abc-verification small { color: var(--muted); font-size: 11px; line-height: 1.65; }
.blog-abc-source-note { margin: 10px 0 82px; padding: 19px 22px; display: grid; grid-template-columns: 200px 1fr; gap: 28px; border: 1px solid rgba(225,189,105,.22); border-left: 4px solid var(--blog-abc-accent); background: rgba(225,189,105,.045); }
.blog-abc-source-note span { color: var(--blog-abc-accent); font: 900 9px/1.4 Arial, sans-serif; letter-spacing: .12em; }
.blog-abc-source-note p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.72; }
.blog-abc-source-note .blog-abc-byline { margin-top: 10px; color: rgba(244,241,232,.72); font-weight: 750; }
.blog-abc-byline b { margin: 0 5px; color: var(--blog-abc-accent); }
.blog-post-abc .blog-lead strong { color: var(--blog-abc-accent); }
.blog-abc-career-ledger { margin: 38px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.blog-abc-career-ledger li { min-height: 126px; padding: 23px 0; display: grid; grid-template-columns: 54px 1fr; gap: 18px; border-bottom: 1px solid var(--line); }
.blog-abc-career-ledger li > span { color: var(--blog-abc-accent); font: 900 10px/1 Arial, sans-serif; }
.blog-abc-career-ledger strong { display: block; font-size: 20px; }
.blog-abc-career-ledger p { margin: 8px 0 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.blog-abc-principle-grid { margin-top: 40px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid rgba(225,189,105,.35); border-left: 1px solid var(--line); }
.blog-abc-principle-grid article { min-height: 245px; padding: 22px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.blog-abc-principle-grid span { color: var(--blog-abc-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.blog-abc-principle-grid strong { margin-top: auto; font-size: 19px; }
.blog-abc-principle-grid p { margin: 9px 0 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.blog-abc-philosophy-grid { margin: 38px 0 26px; display: grid; gap: 9px; }
.blog-abc-philosophy-grid article { min-height: 238px; padding: 26px; border: 1px solid var(--line); background: rgba(255,255,255,.018); }
.blog-abc-philosophy-grid header { display: flex; justify-content: space-between; color: var(--blog-abc-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .11em; }
.blog-abc-philosophy-grid h3 { margin: 64px 0 10px; font-size: 25px; line-height: 1.15; letter-spacing: -.045em; }
.blog-abc-philosophy-grid p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.blog-prose .blog-abc-interpretation { margin-top: 26px; padding: 21px 22px; border-left: 3px solid var(--blog-abc-accent); background: rgba(225,189,105,.06); font-size: 12px; line-height: 1.78; }
.blog-abc-interpretation strong { margin-right: 10px; color: var(--blog-abc-accent); }
.blog-abc-brand-ribbon { margin-top: 38px; display: flex; flex-wrap: wrap; border-top: 1px solid rgba(225,189,105,.32); border-left: 1px solid var(--line); }
.blog-abc-brand-ribbon span { min-height: 64px; padding: 0 18px; display: grid; place-items: center; flex: 1 1 150px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--blog-abc-accent); font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; text-align: center; }
.blog-abc-work-grid { margin: 40px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid rgba(225,189,105,.32); }
.blog-abc-work-grid article { min-height: 365px; padding: 23px; display: flex; flex-direction: column; background: linear-gradient(160deg, rgba(225,189,105,.08), transparent 60%); }
.blog-abc-work-grid article + article { border-left: 1px solid var(--line); }
.blog-abc-work-grid span { color: var(--blog-abc-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.blog-abc-work-grid h3 { margin: 64px 0 10px; font-size: 27px; line-height: 1.04; letter-spacing: -.055em; }
.blog-abc-work-grid strong { color: var(--blog-abc-accent); font-size: 13px; }
.blog-abc-work-grid p { margin: auto 0 0; padding-top: 34px; color: var(--muted); font-size: 12px; line-height: 1.68; }
.blog-abc-course-link { margin-top: 10px; padding: 25px; display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center; border: 1px solid var(--line); }
.blog-abc-course-link > span { color: var(--blog-abc-accent); font: 900 9px/1.45 Arial, sans-serif; letter-spacing: .1em; }
.blog-abc-course-link > div { display: flex; gap: 8px; }
.blog-prose .blog-abc-boundary { margin-top: 26px; padding: 50px 42px; border: 1px solid rgba(225,189,105,.38); background: rgba(225,189,105,.035); }
.blog-prose .blog-abc-philosophy-lead { max-width: 690px; margin-bottom: 34px; color: var(--blog-abc-ink); font-size: 18px; font-weight: 650; line-height: 1.85; }
.blog-abc-career-archive { border-top: 1px solid rgba(225,189,105,.42); }
.blog-abc-career-archive article { min-height: 88px; padding: 18px 0; display: grid; grid-template-columns: 145px minmax(190px, .85fr) minmax(0, 1.15fr); gap: 20px; align-items: center; border-bottom: 1px solid var(--line); }
.blog-abc-career-archive span { color: var(--blog-abc-accent); font: 900 8px/1.35 Arial, sans-serif; letter-spacing: .1em; }
.blog-abc-career-archive strong { font-size: 15px; line-height: 1.45; }
.blog-abc-career-archive p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.blog-prose .blog-abc-career-closing { margin: 30px 0 0; padding-left: 20px; border-left: 3px solid var(--blog-abc-accent); color: rgba(244,241,232,.78); font-size: 14px; line-height: 1.8; }
.blog-abc-cta { background: var(--blog-abc-accent); }

.blog-post-ai { --blog-ai-accent: #d2ff55; }
.blog-post-ai .blog-meta,
.blog-post-ai .blog-post-subtitle,
.blog-post-ai .blog-section-no,
.blog-post-ai .blog-toc > span { color: var(--blog-ai-accent); }
.blog-ai-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
  overflow: hidden;
  border: 1px solid var(--line-strong);
  background: #0b0e0c;
}
.blog-ai-hero-copy { min-width: 0; padding: clamp(38px, 5vw, 72px); display: flex; flex-direction: column; justify-content: center; }
.blog-ai-main-title {
  max-width: 900px;
  margin: clamp(52px, 7vw, 92px) 0 22px;
  font-size: clamp(54px, 5.4vw, 78px);
  line-height: .92;
  letter-spacing: -.078em;
  word-break: keep-all;
  overflow-wrap: normal;
  text-wrap: initial;
}
.blog-ai-main-title .ai-mobile-line,
.blog-ai-hero-copy .blog-post-subtitle .ai-mobile-line { display: block; white-space: nowrap; }
.blog-ai-hero-copy .blog-post-subtitle { max-width: 820px; text-wrap: initial; }
.blog-ai-hero-copy .blog-post-deck { max-width: 760px; margin-top: 34px; font-size: 16px; }
.blog-ai-hero-poster { position: relative; min-width: 0; aspect-ratio: 1; overflow: hidden; border-left: 1px solid var(--line-strong); background: #0b0d0c; color: var(--ink); }
.blog-ai-hero-poster::after { content: ""; position: absolute; inset: 56% 0 0; background: linear-gradient(transparent, rgba(7,9,8,.92)); pointer-events: none; }
.blog-ai-hero-poster img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease, filter .45s ease; }
.blog-ai-hero-poster:hover img { transform: scale(1.018); filter: brightness(1.06); }
.blog-ai-hero-poster > span { position: absolute; z-index: 1; right: 22px; bottom: 20px; left: 22px; padding-top: 14px; display: flex; justify-content: space-between; gap: 18px; border-top: 1px solid rgba(255,255,255,.34); color: var(--blog-ai-accent); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.blog-ai-hero-caption { margin: 12px 0 74px; color: var(--muted); font-size: 10px; line-height: 1.6; text-align: right; }
.blog-ai-guide-grid { margin: 38px 0 26px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.beauty-ai-guide-card { min-width: 0; min-height: 252px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.018); color: inherit; transition: background .2s ease, color .2s ease; }
.blog-ai-guide-grid .beauty-ai-guide-card:last-child { grid-column: 1 / -1; min-height: 210px; }
.beauty-ai-guide-card:hover,
.beauty-ai-guide-card.is-active { background: var(--blog-ai-accent, #d2ff55); color: #0a0d0b; }
.beauty-ai-guide-card > span { color: var(--blog-ai-accent, #d2ff55); font: 900 10px/1.2 Arial, sans-serif; letter-spacing: .09em; }
.beauty-ai-guide-card:hover > span,
.beauty-ai-guide-card.is-active > span { color: #29310f; }
.beauty-ai-guide-card strong { max-width: 230px; margin-top: 48px; font-size: 24px; line-height: 1.13; letter-spacing: -.045em; word-break: keep-all; }
.beauty-ai-guide-card p { margin: 12px 0 0 !important; color: var(--muted) !important; font-size: 12px !important; line-height: 1.65 !important; word-break: keep-all; }
.beauty-ai-guide-card:hover p,
.beauty-ai-guide-card.is-active p { color: #29310f !important; }
.beauty-ai-guide-card b { margin-top: auto; padding-top: 24px; display: flex; justify-content: space-between; gap: 15px; color: inherit; font-size: 11px; }
.blog-prose .blog-ai-disclosure { margin: 0; padding: 18px 20px; border-left: 3px solid var(--blog-ai-accent); background: rgba(210,255,85,.07); color: var(--muted); font-size: 11px; line-height: 1.7; }

/* Beauty AI field guides */
.beauty-ai-guide-page { --blog-ai-accent: #d2ff55; overflow: hidden; }
.beauty-ai-guide-hero { padding-top: clamp(68px, 9vw, 126px); padding-bottom: clamp(74px, 9vw, 126px); }
.beauty-ai-guide-breadcrumb { padding-bottom: 22px; display: flex; flex-wrap: wrap; gap: 9px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 10px; font-weight: 850; letter-spacing: .06em; }
.beauty-ai-guide-breadcrumb a { color: var(--blog-ai-accent); }
.beauty-ai-guide-hero-grid { margin-top: clamp(48px, 7vw, 94px); display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr); gap: clamp(52px, 8vw, 120px); align-items: end; }
.beauty-ai-guide-hero-grid h1 { max-width: 940px; margin: 24px 0 30px; font-size: clamp(58px, 8vw, 112px); line-height: .93; letter-spacing: -.078em; word-break: keep-all; text-wrap: balance; }
.beauty-ai-guide-hero-grid > div > p:last-child { max-width: 780px; margin: 0; color: var(--muted); font-size: clamp(17px, 1.6vw, 22px); font-weight: 620; line-height: 1.72; word-break: keep-all; }
.beauty-ai-guide-hero-grid aside { padding-top: 18px; border-top: 2px solid var(--blog-ai-accent); }
.beauty-ai-guide-hero-grid aside span { color: var(--blog-ai-accent); font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.beauty-ai-guide-hero-grid aside strong { display: block; margin-top: 54px; font-size: 23px; line-height: 1.25; letter-spacing: -.04em; word-break: keep-all; }
.beauty-ai-guide-hero-grid aside p { margin: 16px 0 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.beauty-ai-guide-steps,
.beauty-ai-guide-field,
.beauty-ai-guide-series { padding-top: clamp(78px, 9vw, 124px); padding-bottom: clamp(82px, 9vw, 128px); border-top: 1px solid var(--line-strong); }
.beauty-ai-guide-field { background: rgba(255,255,255,.012); }
.beauty-ai-guide-section-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .55fr); gap: clamp(48px, 8vw, 120px); align-items: end; }
.beauty-ai-guide-section-head h2 { margin: 18px 0 0; font-size: clamp(43px, 5vw, 70px); line-height: 1.01; letter-spacing: -.065em; word-break: keep-all; }
.beauty-ai-guide-section-head h2 em { color: var(--blog-ai-accent); font-style: normal; }
.beauty-ai-guide-section-head > p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.75; }
.beauty-ai-guide-steps ol { margin: 62px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); list-style: none; }
.beauty-ai-guide-steps li { min-height: 360px; padding: 25px 24px 28px; display: flex; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.beauty-ai-guide-steps li > span { color: var(--blog-ai-accent); font: 900 10px/1 Arial, sans-serif; }
.beauty-ai-guide-steps li small { margin-top: 70px; color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .07em; }
.beauty-ai-guide-steps li strong { margin-top: 12px; font-size: 23px; line-height: 1.18; letter-spacing: -.045em; word-break: keep-all; }
.beauty-ai-guide-steps li p { margin: auto 0 0; padding-top: 30px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.beauty-ai-guide-field-grid { margin-top: 62px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--line-strong); }
.beauty-ai-guide-field-grid > div { padding: clamp(28px, 4vw, 48px); }
.beauty-ai-guide-field-grid > div + div { border-left: 1px solid var(--line); }
.beauty-ai-guide-field-grid > div > span { color: var(--blog-ai-accent); font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.beauty-ai-guide-checks ul { margin: 28px 0 0; padding: 0; list-style: none; }
.beauty-ai-guide-checks li { padding: 20px 0; display: grid; grid-template-columns: 34px 1fr; gap: 16px; border-top: 1px solid var(--line); }
.beauty-ai-guide-checks li b { color: var(--blog-ai-accent); font-size: 10px; }
.beauty-ai-guide-checks li p { margin: 0; font-size: 15px; line-height: 1.65; word-break: keep-all; }
.beauty-ai-guide-worksheet > div { margin-top: 28px; }
.beauty-ai-guide-worksheet p { margin: 0; min-height: 58px; display: grid; grid-template-columns: 34px auto 1fr; gap: 12px; align-items: center; border-top: 1px solid var(--line); }
.beauty-ai-guide-worksheet small { color: var(--blog-ai-accent); font-size: 9px; font-weight: 900; }
.beauty-ai-guide-worksheet strong { font-size: 13px; white-space: nowrap; }
.beauty-ai-guide-worksheet i { height: 1px; background: var(--line); }
.beauty-ai-guide-disclosure { margin: 18px 0 0; padding: 20px 24px; border-left: 3px solid var(--blog-ai-accent); background: rgba(210,255,85,.06); color: var(--muted); font-size: 12px; line-height: 1.7; }
.beauty-ai-guide-disclosure strong { margin-right: 12px; color: var(--blog-ai-accent); }
.beauty-ai-guide-series nav { margin-top: 62px; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }
.beauty-ai-guide-series .beauty-ai-guide-card { min-height: 310px; padding: 20px; }
.beauty-ai-guide-series .beauty-ai-guide-card strong { margin-top: 42px; font-size: 20px; }
.beauty-ai-guide-series .beauty-ai-guide-card p { font-size: 11px !important; }
.beauty-ai-guide-cta { padding-top: clamp(66px, 8vw, 108px); padding-bottom: clamp(66px, 8vw, 108px); display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 52px; align-items: end; background: var(--blog-ai-accent); color: #0a0d0b; }
.beauty-ai-guide-cta span { font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.beauty-ai-guide-cta h2 { margin: 18px 0 0; font-size: clamp(32px, 4vw, 56px); line-height: 1.05; letter-spacing: -.055em; }
.beauty-ai-guide-cta > div:last-child { display: grid; gap: 8px; min-width: 250px; }
.beauty-ai-guide-cta .button { justify-content: center; }

@media (max-width: 900px) {
  .blog-index-hero, .blog-feature { grid-template-columns: 1fr; }
  .blog-index-hero { gap: 26px; }
  .blog-feature-visual { min-height: 480px; border-right: 0; border-bottom: 1px solid var(--line); }
  .blog-post-layout { grid-template-columns: 1fr; gap: 52px; }
  .blog-toc { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .blog-toc > span { grid-column: 1 / -1; }
  .blog-toc button { padding-right: 12px; }
  .blog-ai-hero { grid-template-columns: 1fr; }
  .blog-abc-hero { min-height: 0; grid-template-columns: 1fr; }
  .blog-abc-hero-copy { min-height: 680px; }
  .blog-abc-hero-portrait { min-height: 720px; border-top: 1px solid rgba(225,189,105,.34); }
  .blog-abc-course-link { grid-template-columns: 1fr; }
  .blog-abc-course-link > div { flex-wrap: wrap; }
  .blog-ai-hero-poster { max-width: 680px; border-top: 1px solid var(--line-strong); border-left: 0; }
  .beauty-ai-guide-hero-grid,
  .beauty-ai-guide-section-head { grid-template-columns: 1fr; gap: 38px; }
  .beauty-ai-guide-steps ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .beauty-ai-guide-series nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .beauty-ai-guide-series .beauty-ai-guide-card:last-child { grid-column: 1 / -1; }
  .beauty-ai-guide-cta { grid-template-columns: 1fr; align-items: start; }
}

@media (max-width: 580px) {
  .blog-index, .blog-post { padding-top: 58px; padding-bottom: 88px; }
  .blog-index-hero { padding-bottom: 34px; }
  .blog-index-hero h1 { font-size: 49px; }
  .blog-index-hero > p { font-size: 15px; }
  .blog-feature { margin-top: 34px; }
  .blog-feature-visual { min-height: 310px; }
  .blog-feature-copy { padding: 26px 21px; }
  .blog-feature-copy h2 { margin-top: 36px; font-size: 37px; }
  .blog-feature-copy > strong { font-size: 16px; }
  .blog-feature-line { display: block; }
  .blog-feature-ai-title .ai-mobile-line,
  .blog-feature-ai-subtitle .ai-mobile-line { display: block; white-space: nowrap; }
  .blog-feature-ai-title,
  .blog-feature-ai-subtitle { text-wrap: initial; }
  .blog-feature-copy > p { margin-top: 20px; font-size: 14px; }
  .blog-read-link { margin-top: 36px; }
  .blog-index-note { grid-template-columns: 1fr; gap: 8px; }
  .blog-back { margin-bottom: 34px; }
  .blog-post-header h1 { font-size: 49px; }
  .blog-post-subtitle { font-size: 22px; }
  .blog-post-deck { margin-top: 30px; font-size: 16px; }
  .blog-creator-connection { margin-top: 26px; padding: 18px; grid-template-columns: 1fr; gap: 9px; }
  .blog-creator-connection > b { margin-top: 8px; white-space: normal; }
  .blog-ai-hero-caption + .blog-creator-connection { margin: 18px 0 48px; }
  .blog-post-cover { margin: 44px -14px 58px; }
  .blog-post-cover img { height: 330px; border-inline: 0; }
  .blog-post-cover figcaption { padding-inline: 14px; }
  .blog-toc { grid-template-columns: 1fr; }
  .blog-toc > span { grid-column: auto; }
  .blog-lead { margin-bottom: 54px; font-size: 19px; }
  .blog-prose section { padding: 52px 0; }
  .blog-prose h2 { font-size: 36px; }
  .blog-prose section > p { font-size: 15px; line-height: 1.85; }
  .blog-prose blockquote { margin-bottom: 52px; padding: 26px 22px; }
  .blog-prose blockquote p { font-size: 20px; }
  .blog-fact-grid { grid-template-columns: 1fr; }
  .blog-fact-grid > div { min-height: 154px; }
  .blog-fact-grid strong { margin-top: 31px; }
  .blog-checklist li { grid-template-columns: 62px 1fr; gap: 12px; }
  .blog-flow { grid-template-columns: 1fr; }
  .blog-flow > div { min-height: 185px; }
  .blog-flow strong { margin-top: 38px; }
  .blog-prose .blog-beta-note { padding: 28px 22px; }
  .blog-post-cta { padding: 28px 22px; grid-template-columns: 1fr; align-items: start; }
  .blog-post-cta h2 { font-size: 29px; }
  .blog-abc-hero { margin-inline: -14px; border-inline: 0; }
  .blog-abc-hero-copy { min-height: 620px; padding: 32px 19px 28px; }
  .blog-abc-kicker { margin-top: 43px; font-size: 7px; }
  .blog-abc-hero h1 { font-size: clamp(36px, 10.5vw, 45px); line-height: .96; }
  .blog-abc-hero h1 .blog-abc-brand-line { font-size: .76em; }
  .blog-abc-hero h1 em { margin-top: 12px; font-size: .52em; }
  .blog-abc-hero-statement { margin-top: 20px; font-size: 16px; }
  .blog-abc-hero .blog-post-subtitle { margin-top: 18px; font-size: 15px; }
  .blog-abc-career-numbers { padding-top: 30px; gap: 9px; }
  .blog-abc-career-numbers > div { display: grid; gap: 7px; }
  .blog-abc-career-numbers strong { font-size: 34px; }
  .blog-abc-hero-portrait { min-height: 520px; }
  .blog-abc-hero-portrait::after { border-width: 14px; }
  .blog-abc-portrait-type { top: 23px; right: 22px; left: 22px; }
  .blog-abc-portrait-type > strong { font-size: 74px; }
  .blog-abc-portrait-type > em { font-size: 38px; }
  .blog-abc-hero-portrait figcaption { right: 22px; bottom: 21px; left: 22px; display: grid; }
  .blog-abc-verification { padding: 21px 19px; grid-template-columns: 1fr; gap: 18px; }
  .blog-abc-verification strong { font-size: 21px; }
  .blog-abc-source-note { margin-bottom: 54px; padding: 18px; grid-template-columns: 1fr; gap: 8px; }
  .blog-abc-principle-grid,
  .blog-abc-work-grid { grid-template-columns: 1fr; }
  .blog-abc-principle-grid article { min-height: 190px; }
  .blog-abc-philosophy-grid article { min-height: 215px; padding: 22px; }
  .blog-abc-philosophy-grid h3 { margin-top: 48px; }
  .blog-abc-work-grid article { min-height: 280px; }
  .blog-abc-work-grid article + article { border-top: 1px solid var(--line); border-left: 0; }
  .blog-abc-course-link { padding: 20px; }
  .blog-abc-course-link > div { display: grid; }
  .blog-prose .blog-abc-boundary { padding: 32px 21px; }
  .blog-prose .blog-abc-philosophy-lead { font-size: 16px; }
  .blog-abc-career-archive article { grid-template-columns: 1fr; gap: 7px; align-items: start; }
  .blog-abc-career-archive strong { font-size: 16px; }
  .blog-ai-hero { margin-inline: -14px; border-inline: 0; }
  .blog-ai-hero-copy { padding: 34px 18px 40px; }
  .blog-ai-main-title { margin-top: 48px; font-size: clamp(43px, 13vw, 54px); line-height: .94; letter-spacing: -.073em; }
  .blog-ai-hero-copy .blog-post-subtitle { font-size: clamp(19px, 6vw, 23px); line-height: 1.42; }
  .blog-ai-hero-copy .blog-post-deck { margin-top: 26px; font-size: 15px; }
  .blog-ai-hero-poster { width: 100%; max-width: none; }
  .blog-ai-hero-poster > span { right: 16px; bottom: 15px; left: 16px; font-size: 9px; }
  .blog-ai-hero-caption { margin: 10px 0 50px; padding-inline: 2px; text-align: left; }
  .blog-ai-guide-grid { grid-template-columns: 1fr; }
  .blog-ai-guide-grid .beauty-ai-guide-card:last-child { grid-column: auto; min-height: 222px; }
  .beauty-ai-guide-card { min-height: 222px; padding: 21px; }
  .beauty-ai-guide-card strong { margin-top: 38px; font-size: 23px; }
  .beauty-ai-guide-hero { padding-top: 54px; padding-bottom: 68px; }
  .beauty-ai-guide-breadcrumb { padding-bottom: 17px; }
  .beauty-ai-guide-hero-grid { margin-top: 46px; gap: 42px; }
  .beauty-ai-guide-hero-grid h1 { margin: 18px 0 24px; font-size: 51px; line-height: .96; }
  .beauty-ai-guide-hero-grid > div > p:last-child { font-size: 16px; }
  .beauty-ai-guide-hero-grid aside strong { margin-top: 32px; font-size: 21px; }
  .beauty-ai-guide-steps,
  .beauty-ai-guide-field,
  .beauty-ai-guide-series { padding-top: 68px; padding-bottom: 72px; }
  .beauty-ai-guide-section-head h2 { font-size: 39px; }
  .beauty-ai-guide-steps ol { margin-top: 44px; grid-template-columns: 1fr; }
  .beauty-ai-guide-steps li { min-height: 248px; padding: 22px; }
  .beauty-ai-guide-steps li small { margin-top: 40px; }
  .beauty-ai-guide-field-grid { margin-top: 44px; grid-template-columns: 1fr; }
  .beauty-ai-guide-field-grid > div { padding: 25px 21px; }
  .beauty-ai-guide-field-grid > div + div { border-top: 1px solid var(--line); border-left: 0; }
  .beauty-ai-guide-worksheet p { grid-template-columns: 28px auto 1fr; }
  .beauty-ai-guide-series nav { margin-top: 44px; grid-template-columns: 1fr; }
  .beauty-ai-guide-series .beauty-ai-guide-card,
  .beauty-ai-guide-series .beauty-ai-guide-card:last-child { grid-column: auto; min-height: 220px; }
  .beauty-ai-guide-cta { padding-inline: 22px; gap: 38px; }
  .beauty-ai-guide-cta > div:last-child { min-width: 0; }
}

@media (max-width: 1050px) {
  .auth-layout { grid-template-columns: 1fr 410px; }
  .auth-context { padding: 50px 42px; }
  .auth-principles { grid-template-columns: 1fr; }
  .auth-principles > div { min-height: 105px; }
  .auth-principles strong { margin-top: 20px; }
  .dashboard-grid { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  .verification-boundary { grid-template-columns: 1fr; }
  .verification-boundary > i { display: none; }
  .auth-layout { grid-template-columns: 1fr; }
  .auth-context { padding: 54px 34px; }
  .auth-context h1 { font-size: 58px; }
  .auth-card { padding: 48px 34px; }
  .verification-progress { grid-template-columns: repeat(2, 1fr); }
  .policy-layout { grid-template-columns: 1fr; gap: 30px; }
  .policy-nav { position: static; grid-template-columns: repeat(3, 1fr); gap: 6px; border-top: 0; }
  .policy-nav a { padding: 10px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 10px; background: white; text-align: center; }
  .simple-policy-grid { grid-template-columns: 1fr; }
}

@media (max-width: 580px) {
  .auth-page, .dashboard-page, .policy-page { padding-top: 54px; }
  .auth-layout { border-radius: 25px; }
  .auth-context { padding: 42px 21px; }
  .auth-context h1 { font-size: 43px; }
  .auth-principles { margin-top: 34px; }
  .auth-card { padding: 38px 20px; }
  .auth-card-head h2 { font-size: 29px; }
  .auth-role-options { grid-template-columns: 1fr; }
  .dashboard-head { align-items: start; }
  .dashboard-head h1 { font-size: 48px; }
  .verification-progress { grid-template-columns: 1fr 1fr; }
  .dashboard-card { padding: 23px 18px; }
  .member-dashboard-grid { grid-template-columns: 1fr; }
  .member-dashboard-note { grid-column: auto; grid-template-columns: 1fr; gap: 7px; }
  .policy-hero h1 { font-size: 48px; }
  .policy-nav { grid-template-columns: repeat(2, 1fr); }
  .policy-summary-grid, .launch-checklist { grid-template-columns: 1fr; }
  .policy-row { grid-template-columns: 1fr; gap: 3px; }
  .policy-row-head { display: none; }
}

.advertise-page { overflow: hidden; }
.advertise-hero {
  padding: 92px 0 78px;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .55fr);
  gap: 72px;
  align-items: center;
}
.advertise-hero-copy h1 { max-width: 830px; margin: 0; font-size: clamp(54px, 7.4vw, 94px); line-height: .98; letter-spacing: -.078em; }
.advertise-hero-copy > p:not(.eyebrow) { max-width: 680px; margin: 25px 0 0; color: var(--muted); font-size: 17px; line-height: 1.75; }
.advertise-actions { margin-top: 30px; display: flex; gap: 15px; align-items: center; flex-wrap: wrap; }
.advertise-hero-channels { display: flex; gap: 10px; flex-wrap: wrap; }
.advertise-hero-channels .button { min-width: 220px; }
.advertise-actions > span { max-width: 260px; color: var(--muted); font-size: 10px; line-height: 1.55; }
.advertise-inline-email { color: var(--home-signal); font-weight: 850; text-decoration: underline; text-underline-offset: 3px; }
.advertise-promise { padding: 26px; border-radius: 27px; background: var(--navy-deep); color: white; box-shadow: var(--shadow); }
.advertise-promise > span { color: #9cb1ff; font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.advertise-promise > div { padding: 19px 0; display: grid; grid-template-columns: 32px 1fr; gap: 2px 9px; border-bottom: 1px solid rgba(255,255,255,.12); }
.advertise-promise > div:last-child { padding-bottom: 0; border-bottom: 0; }
.advertise-promise b { grid-row: 1 / 3; color: #9cb1ff; font-size: 10px; }
.advertise-promise strong { font-size: 14px; }
.advertise-promise p { margin: 3px 0 0; color: rgba(255,255,255,.52); font-size: 11px; }
.ad-placement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ad-placement-card { min-height: 320px; padding: 28px; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 24px; background: white; }
.ad-placement-card-wide { grid-column: 1 / -1; min-height: 340px; }
.ad-placement-card > span, .ad-measure-grid > div > span { color: var(--brand-deep); font-size: 10px; font-weight: 900; letter-spacing: .09em; }
.ad-placement-card h3 { max-width: 560px; margin: auto 0 8px; font-size: 31px; line-height: 1.13; letter-spacing: -.045em; }
.ad-placement-card p { max-width: 670px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.ad-placement-demo { margin-top: 28px; padding: 18px; display: flex; gap: 14px; align-items: center; border: 1px solid #cbd4e7; border-radius: 16px; background: #f3f6fc; }
.ad-placement-demo i { padding: 6px 9px; border-radius: 999px; background: var(--navy); color: white; font-size: 9px; font-style: normal; font-weight: 850; }
.ad-placement-demo small, .ad-placement-demo strong, .ad-placement-demo span { display: block; }
.ad-placement-demo small { color: var(--brand-deep); font-size: 9px; font-weight: 800; }
.ad-placement-demo strong { margin-top: 3px; font-size: 16px; }
.ad-placement-demo span { color: var(--muted); font-size: 10px; }
.ad-location-chip { width: fit-content; margin-top: 24px; padding: 8px 11px; border-radius: 999px; background: var(--brand-soft); color: var(--brand-deep); font-size: 10px; font-weight: 800; }
.advertise-model-section { padding: 100px 0; background: var(--navy-deep); color: white; }
.advertise-model-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(460px, 1.1fr); gap: 80px; align-items: start; }
.advertise-model-layout h2 { margin: 0; font-size: clamp(43px, 5.2vw, 70px); line-height: 1.03; letter-spacing: -.065em; }
.advertise-model-layout > div:first-child > p:not(.eyebrow) { max-width: 560px; margin: 22px 0 0; color: rgba(255,255,255,.6); line-height: 1.75; }
.ad-product-list { display: grid; border-top: 1px solid rgba(255,255,255,.15); }
.ad-product-list > div { padding: 21px 0; display: grid; grid-template-columns: 90px 1fr; gap: 5px 15px; border-bottom: 1px solid rgba(255,255,255,.15); }
.ad-product-list span { grid-row: 1 / 3; color: #9cb1ff; font-size: 10px; font-weight: 900; }
.ad-product-list strong { font-size: 16px; }
.ad-product-list p { margin: 0; color: rgba(255,255,255,.5); font-size: 11px; line-height: 1.6; }
.ad-measure-grid { margin-bottom: 26px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.ad-measure-grid > div { min-height: 260px; padding: 24px; border: 1px solid var(--line); border-radius: 21px; background: rgba(255,255,255,.62); }
.ad-measure-grid h3 { margin: 65px 0 8px; font-size: 21px; line-height: 1.2; letter-spacing: -.035em; }
.ad-measure-grid p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.7; }
.advertise-location-heading h2 { max-width: 900px; font-size: clamp(52px, 6.8vw, 92px); line-height: .98; letter-spacing: -.072em; }
.advertise-cta { margin-top: 26px; }
.advertise-contact-actions { min-width: min(100%, 370px); display: grid; gap: 10px; }
.advertise-contact-actions .button { width: 100%; }
.advertise-email-link { padding: 8px 2px 0; color: rgba(11,12,11,.68); font-size: 12px; font-weight: 800; text-align: center; text-decoration: underline; text-underline-offset: 4px; }
.advertise-email-link:hover { color: var(--home-bg); }

@media (max-width: 1050px) {
  .advertise-hero { grid-template-columns: 1fr 360px; gap: 36px; }
  .advertise-model-layout { grid-template-columns: 1fr 1fr; gap: 42px; }
}

@media (max-width: 820px) {
  .advertise-hero, .advertise-model-layout { grid-template-columns: 1fr; }
  .advertise-hero { padding-top: 65px; }
  .advertise-promise { max-width: 560px; }
  .ad-measure-grid { grid-template-columns: 1fr; }
  .ad-measure-grid > div { min-height: 220px; }
  .ad-measure-grid h3 { margin-top: 52px; }
}

@media (max-width: 580px) {
  .advertise-hero { padding: 54px 0 58px; }
  .advertise-hero-copy h1 { font-size: 51px; }
  .advertise-actions { display: grid; }
  .advertise-actions .button { width: 100%; }
  .advertise-hero-channels { display: grid; grid-template-columns: 1fr; }
  .advertise-hero-channels .button { min-width: 0; }
  .ad-placement-grid { grid-template-columns: 1fr; }
  .ad-placement-card-wide { grid-column: auto; }
  .ad-placement-card { min-height: 285px; padding: 22px; }
  .ad-placement-card h3 { font-size: 26px; }
  .ad-placement-demo { align-items: flex-start; }
  .advertise-model-section { padding: 72px 0; }
  .advertise-model-layout { gap: 38px; }
  .ad-product-list > div { grid-template-columns: 70px 1fr; }
  .advertise-cta { padding-inline: 22px; }
  .advertise-location-heading h2 { font-size: 49px; }
  .advertise-contact-actions { min-width: 0; width: 100%; }
}

/* Profile-package course detail sample */
.ad-placement-link { color: inherit; cursor: pointer; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.ad-placement-link:hover { transform: translateY(-5px); border-color: #aebbe0; box-shadow: 0 18px 44px rgba(21,33,58,.1); }
.ad-card-arrow { margin-top: 18px; display: inline-flex; gap: 8px; align-items: center; color: var(--brand-deep); font-size: 12px; }
.package-sample-page { overflow: hidden; }
.sample-detail-hero { padding: 60px 0 86px; }
.sample-back-link { width: fit-content; margin-bottom: 28px; display: block; }
.sample-detail-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(430px, .82fr); gap: 58px; align-items: center; }
.sample-detail-copy { min-width: 0; }
.sample-label-row { margin-bottom: 25px; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.sample-label-row > span:last-child { color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .1em; }
.sample-page-label { width: fit-content; padding: 7px 10px; display: inline-flex; border-radius: 999px; background: var(--gold-soft); color: var(--gold-deep); font-size: 9px; font-weight: 900; letter-spacing: .04em; }
.sample-detail-copy h1 { max-width: 780px; margin: 0; font-size: clamp(54px, 6.8vw, 88px); line-height: .99; letter-spacing: -.075em; }
.sample-detail-copy > p:not(.eyebrow) { max-width: 690px; margin: 24px 0 0; color: var(--muted); font-size: 16px; line-height: 1.78; }
.sample-hero-meta { margin-top: 25px; display: flex; gap: 7px; flex-wrap: wrap; }
.sample-hero-meta span { padding: 7px 10px; border: 1px solid var(--line); border-radius: 999px; background: rgba(255,255,255,.7); color: var(--ink-soft); font-size: 10px; font-weight: 750; }
.sample-hero-actions { margin-top: 30px; display: flex; gap: 9px; flex-wrap: wrap; }
.sample-detail-copy > small { max-width: 650px; margin-top: 17px; display: block; color: var(--muted); font-size: 10px; line-height: 1.6; }
.sample-detail-visual { position: relative; min-height: 670px; overflow: hidden; border-radius: 30px; background: #dce2ed; box-shadow: var(--shadow); }
.sample-detail-visual > img { position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: center 48%; }
.sample-detail-visual::after { content: ""; position: absolute; inset: 48% 0 0; background: linear-gradient(transparent, rgba(9,17,33,.86)); }
.sample-visual-caption { position: absolute; z-index: 2; left: 25px; right: 25px; bottom: 24px; color: white; }
.sample-visual-caption span { color: #b9c8ff; font-size: 9px; font-weight: 900; letter-spacing: .11em; }
.sample-visual-caption strong { margin-top: 9px; display: block; font-size: 36px; line-height: 1; letter-spacing: -.055em; }
.sample-visual-caption p { margin: 7px 0 0; color: rgba(255,255,255,.67); font-size: 12px; }
.sample-summary-strip { padding: 25px 0; background: var(--brand); color: white; }
.sample-summary-strip .page-shell { display: grid; grid-template-columns: repeat(6, 1fr); }
.sample-summary-strip .page-shell > div { padding: 3px 26px; border-right: 1px solid rgba(255,255,255,.22); }
.sample-summary-strip .page-shell > div:first-child { padding-left: 0; }
.sample-summary-strip .page-shell > div:last-child { border-right: 0; }
.sample-summary-strip span, .sample-summary-strip strong { display: block; }
.sample-summary-strip span { color: rgba(255,255,255,.6); font-size: 9px; font-weight: 750; }
.sample-summary-strip strong { margin-top: 3px; font-size: 17px; }
.sample-purpose-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.sample-purpose-grid article { min-height: 330px; padding: 25px; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 23px; background: white; }
.sample-purpose-grid article:nth-child(2) { background: var(--brand-soft); }
.sample-purpose-grid span { color: var(--brand); font-size: 10px; font-weight: 900; }
.sample-purpose-grid h3 { margin: auto 0 10px; font-size: 25px; line-height: 1.2; letter-spacing: -.045em; }
.sample-purpose-grid p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.sample-learning-section { padding: 105px 0; background: var(--navy-deep); color: white; }
.sample-learning-layout { display: grid; grid-template-columns: minmax(0, .88fr) minmax(440px, 1.12fr); gap: 85px; align-items: start; }
.sample-learning-layout h2 { margin: 0; font-size: clamp(44px, 5.2vw, 70px); line-height: 1.03; letter-spacing: -.065em; }
.sample-learning-layout > div:first-child > p:not(.eyebrow) { max-width: 540px; margin: 22px 0 0; color: rgba(255,255,255,.58); line-height: 1.75; }
.sample-learning-list { display: grid; border-top: 1px solid rgba(255,255,255,.16); }
.sample-learning-list > div { min-height: 90px; padding: 18px 0; display: grid; grid-template-columns: 54px 1fr; align-items: center; border-bottom: 1px solid rgba(255,255,255,.16); }
.sample-learning-list span { color: #9cb1ff; font-size: 10px; font-weight: 900; }
.sample-learning-list strong { font-size: 18px; }
.sample-curriculum { display: grid; border-top: 1px solid var(--line-strong); }
.sample-curriculum article { padding: 25px 0; display: grid; grid-template-columns: 150px 1fr; gap: 25px; border-bottom: 1px solid var(--line-strong); }
.sample-curriculum article > span { color: var(--brand-deep); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.sample-curriculum h3 { margin: 0 0 7px; font-size: 26px; letter-spacing: -.04em; }
.sample-curriculum p { max-width: 730px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.sample-work-section { padding: 105px 0; background: #e9edf3; }
.sample-work-heading h2 { color: var(--ink); }
.sample-work-heading > p { color: var(--muted); }
.sample-gallery { display: grid; grid-template-columns: 1.35fr .8fr; grid-template-rows: repeat(3, 240px); gap: 12px; }
.sample-gallery-item { position: relative; margin: 0; overflow: hidden; border-radius: 24px; background: #dce2ed; }
.sample-gallery-item-1 { grid-row: 1 / 4; }
.sample-gallery-item img { width: 100%; height: 100%; object-fit: cover; }
.sample-gallery-item::after { content: ""; position: absolute; inset: 55% 0 0; background: linear-gradient(transparent, rgba(8,15,29,.75)); }
.sample-gallery-item figcaption { position: absolute; z-index: 2; left: 20px; right: 20px; bottom: 18px; display: flex; gap: 9px; color: white; font-size: 13px; font-weight: 750; }
.sample-gallery-item figcaption span { color: #b9c8ff; font-size: 10px; }
.sample-work-section .generated-image-note { color: #7a8598; }
.sample-profile-section { padding-bottom: 38px; }
.sample-profile-card { padding: 30px; display: grid; grid-template-columns: 360px 1fr; gap: 48px; align-items: center; border: 1px solid var(--line); border-radius: 30px; background: white; box-shadow: 0 18px 60px rgba(21,33,58,.06); }
.sample-profile-image { height: 430px; overflow: hidden; border-radius: 23px; }
.sample-profile-image img { width: 100%; height: 100%; object-fit: cover; object-position: center 48%; }
.sample-profile-handle { margin: 22px 0 0 !important; color: var(--brand-deep) !important; font-size: 12px !important; font-weight: 800; }
.sample-profile-card h2 { margin: 0; font-size: clamp(50px, 6vw, 76px); line-height: 1; letter-spacing: -.07em; }
.sample-profile-card > div:last-child > strong { font-size: 17px; }
.sample-profile-card > div:last-child > p:not(.sample-profile-handle) { max-width: 620px; margin: 22px 0; color: var(--muted); line-height: 1.75; }
.sample-production-note { padding: 60px; display: grid; grid-template-columns: 1fr 360px; gap: 50px; align-items: center; border-radius: 30px; background: var(--navy); color: white; }
.sample-production-note > div:first-child > span { color: #9cb1ff; font-size: 9px; font-weight: 900; letter-spacing: .11em; }
.sample-production-note h2 { max-width: 770px; margin: 16px 0 0; font-size: clamp(38px, 4.7vw, 62px); line-height: 1.05; letter-spacing: -.06em; }
.sample-production-note p { max-width: 760px; margin: 17px 0 0; color: rgba(255,255,255,.6); font-size: 13px; line-height: 1.75; }
.sample-production-actions { display: grid; gap: 9px; }
.sample-production-actions .button[aria-disabled="true"] { opacity: .62; cursor: default; pointer-events: none; }
.sample-production-actions small { margin-top: 5px; color: rgba(255,255,255,.42); font-size: 9px; line-height: 1.6; }
.sample-boundary { margin-bottom: 100px; padding: 21px 24px; display: flex; justify-content: space-between; gap: 30px; border: 1px solid #decba8; border-radius: 18px; background: #fbf3e7; }
.sample-boundary strong { flex: 0 0 auto; font-size: 13px; }
.sample-boundary p { max-width: 760px; margin: 0; color: #786952; font-size: 11px; }

@media (max-width: 1050px) {
  .sample-detail-hero-grid { grid-template-columns: 1fr 390px; gap: 35px; }
  .sample-detail-visual { min-height: 610px; }
  .sample-learning-layout { grid-template-columns: 1fr 1fr; gap: 45px; }
  .sample-profile-card { grid-template-columns: 310px 1fr; gap: 36px; }
  .sample-production-note { grid-template-columns: 1fr 310px; padding: 45px; }
}

@media (max-width: 820px) {
  .sample-detail-hero-grid, .sample-learning-layout, .sample-production-note { grid-template-columns: 1fr; }
  .sample-detail-visual { min-height: 650px; }
  .sample-summary-strip .page-shell { grid-template-columns: repeat(2, 1fr); gap: 20px 0; }
  .sample-summary-strip .page-shell > div:nth-child(2n) { border-right: 0; }
  .sample-summary-strip .page-shell > div:nth-child(2n + 1) { padding-left: 0; }
  .sample-purpose-grid { grid-template-columns: 1fr; }
  .sample-purpose-grid article { min-height: 250px; }
  .sample-profile-card { grid-template-columns: 280px 1fr; gap: 30px; }
  .sample-production-actions { max-width: 420px; }
}

@media (max-width: 580px) {
  .sample-detail-hero { padding: 42px 0 60px; }
  .sample-detail-copy h1 { font-size: 49px; }
  .sample-hero-actions { display: grid; }
  .sample-detail-visual { min-height: 500px; border-radius: 24px; }
  .sample-summary-strip .page-shell > div { padding-inline: 16px; }
  .sample-summary-strip strong { font-size: 14px; }
  .sample-purpose-grid article { min-height: 230px; }
  .sample-learning-section, .sample-work-section { padding: 75px 0; }
  .sample-learning-layout { gap: 40px; }
  .sample-curriculum article { grid-template-columns: 1fr; gap: 8px; }
  .sample-gallery { grid-template-columns: 1fr; grid-template-rows: 420px repeat(3, 240px); }
  .sample-gallery-item-1 { grid-row: auto; }
  .sample-profile-card { padding: 18px; grid-template-columns: 1fr; gap: 25px; border-radius: 24px; }
  .sample-profile-image { height: 390px; }
  .sample-production-note { padding: 34px 22px; border-radius: 24px; }
  .sample-production-actions .button { width: 100%; }
  .sample-boundary { margin-bottom: 70px; flex-direction: column; gap: 7px; }
}

/* Commercial discovery system: category tones, status markers, and card anatomy */
:root {
  --status-verified-bg: #e9efff;
  --status-verified-ink: #2444b8;
  --status-sample-bg: #f2efff;
  --status-sample-ink: #6644ae;
  --status-registered-bg: #e3f8f8;
  --status-registered-ink: #14736f;
  --status-ad-bg: #fff1d6;
  --status-ad-ink: #865f18;
  --status-pending-bg: #fff0e5;
  --status-pending-ink: #944819;
  --status-region-bg: #edf4fa;
  --status-region-ink: #365f84;
  --status-format-bg: #f1edfb;
  --status-format-ink: #6449a0;
  --status-time-bg: #f8f0e4;
  --status-time-ink: #7a5b2d;
}

.skill-tone {
  --skill-accent: #3157d5;
  --skill-soft: #eef2ff;
  --skill-border: #cbd6ff;
}
.skill-tone[data-skill-tone="cut"] { --skill-accent: #3157d5; --skill-soft: #eef2ff; --skill-border: #cbd6ff; }
.skill-tone[data-skill-tone="color"] { --skill-accent: #a94069; --skill-soft: #fbeff3; --skill-border: #efc8d6; }
.skill-tone[data-skill-tone="perm"] { --skill-accent: #6d50c1; --skill-soft: #f2efff; --skill-border: #d9d0f5; }
.skill-tone[data-skill-tone="styling"] { --skill-accent: #9a6517; --skill-soft: #fff5e3; --skill-border: #ecd5a8; }
.skill-tone[data-skill-tone="scalp"] { --skill-accent: #3f6e98; --skill-soft: #edf5fa; --skill-border: #c6dce9; }
.skill-tone[data-skill-tone="consulting"] { --skill-accent: #263650; --skill-soft: #eef1f5; --skill-border: #cdd5df; }

.skill-icon {
  width: 20px;
  height: 20px;
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  color: inherit;
  line-height: 0;
}
.skill-icon svg {
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.skill-icon-xxs { width: 13px; height: 13px; }
.skill-icon-xs { width: 15px; height: 15px; }
.skill-icon-lg { width: 30px; height: 30px; }

.hero-visual > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.educator-rail-window { isolation: isolate; }
.educator-rail-card {
  min-width: 264px;
  flex: 0 0 264px;
  border-color: var(--skill-border);
}
.educator-rail-card:hover { border-color: var(--skill-accent); }
.educator-rail-card small { display: flex; align-items: center; gap: 4px; }
.educator-rail-card small .skill-icon { color: var(--skill-accent); }
.educator-rail-card em { background: var(--status-sample-bg); color: var(--status-sample-ink); font-weight: 800; }
.educator-rail-card-registered { border-left: 3px solid var(--status-registered-ink); }
.educator-rail-card .educator-status-registered {
  min-height: 30px;
  padding: 6px 9px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 0;
  background: var(--status-registered-bg);
  color: var(--status-registered-ink);
  font-size: 9px;
  font-weight: 900;
}
.educator-status-registered::before { content: ""; width: 6px; height: 6px; background: currentColor; }

.catalog-section { border-top: 1px solid var(--line); }
.category-card {
  position: relative;
  min-height: 168px;
  overflow: hidden;
  align-items: flex-start;
  border-color: var(--skill-border);
  background: rgba(255,255,255,.86);
}
.category-card::after {
  content: "";
  position: absolute;
  right: 18px;
  bottom: 0;
  left: 18px;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: var(--skill-accent);
  opacity: .72;
}
.category-card:hover { border-color: var(--skill-accent); background: var(--skill-soft); }
.category-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border: 1px solid var(--skill-border);
  border-radius: 18px;
  background: linear-gradient(145deg, white, var(--skill-soft));
  color: var(--skill-accent);
  box-shadow: 0 9px 24px rgba(21,33,58,.08), inset 0 1px 0 rgba(255,255,255,.8);
}
.category-card .skill-icon { color: var(--skill-accent); font-size: inherit; }
.category-card > span:last-child { display: block; }
.category-card > span:last-child > strong { margin-top: 22px; color: var(--ink); font-size: 17px; }
.category-card > span:last-child > span { color: var(--muted); font-size: 12px; }

.filter-chip { display: inline-flex; align-items: center; gap: 6px; }
.filter-chip.skill-tone { border-color: var(--skill-border); background: rgba(255,255,255,.58); }
.filter-chip.skill-tone .skill-icon { color: var(--skill-accent); }
.filter-chip.skill-tone:hover { border-color: var(--skill-accent); background: var(--skill-soft); color: var(--skill-accent); }
.filter-chip.skill-tone.active { border-color: var(--skill-accent); background: var(--skill-accent); color: white; }
.filter-chip.skill-tone.active .skill-icon { color: white; }

.class-card, .pro-card { border-radius: 20px; }
.card-content { padding: 20px 20px 0; }
.badge { display: inline-flex; align-items: center; justify-content: center; gap: 6px; line-height: 1; box-shadow: inset 0 0 0 1px rgba(255,255,255,.55); }
.badge-skill { min-height: 34px; border: 1px solid var(--skill-border); background: rgba(255,255,255,.94); color: var(--skill-accent); }
.badge-skill .skill-icon { width: 18px; height: 18px; }
.badge-label { display: block; line-height: 1; white-space: nowrap; }
.badge-live, .sample-label, .sample-page-label { background: var(--status-sample-bg); color: var(--status-sample-ink); }
.badge-small-group {
  min-height: 34px;
  margin-left: auto;
  padding-inline: 11px;
  border: 1px solid #8fa83f;
  background: #dff3a5;
  color: #26320d;
  font-size: 10px;
  font-weight: 900;
  white-space: nowrap;
}
.profile-kind-marker {
  min-height: 30px;
  padding-inline: 10px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid var(--status-registered-ink);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: -.01em;
  white-space: nowrap;
}
.profile-kind-marker::before { content: ""; width: 6px; height: 6px; background: currentColor; }
.profile-kind-registered { background: var(--status-registered-bg); color: var(--status-registered-ink); }
.profile-kind-sample { border-color: var(--status-sample-ink); background: var(--status-sample-bg); color: var(--status-sample-ink); }
.badge-ad { margin-left: auto; background: var(--status-format-bg); color: var(--status-format-ink); }
.badge-sponsored { margin-left: auto; background: var(--status-ad-bg); color: var(--status-ad-ink); box-shadow: inset 0 0 0 1px rgba(134,95,24,.13); }
.verified-badge { background: var(--status-verified-bg); color: var(--status-verified-ink); }
.pending-badge { background: var(--status-pending-bg); color: var(--status-pending-ink); }
.verified-dot {
  width: 16px;
  height: 16px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: var(--status-verified-bg);
  color: var(--status-verified-ink);
  font-size: 9px;
  font-style: normal;
}
.card-kicker > span:first-child { display: inline-flex; align-items: center; gap: 6px; color: var(--skill-accent); line-height: 1.2; }
.class-facts span { border: 1px solid transparent; font-weight: 700; }
.class-facts .fact-format { border-color: #ddd3f3; background: var(--status-format-bg); color: var(--status-format-ink); }
.class-facts .fact-duration { border-color: #dbe6bd; background: #f2f7e5; color: #526522; }
.class-facts .fact-capacity { border-color: #ddd3f3; background: var(--status-format-bg); color: var(--status-format-ink); }
.class-facts .fact-region { border-color: #ccdfed; background: var(--status-region-bg); color: var(--status-region-ink); }
.class-facts .fact-schedule { border-color: #e9d8bc; background: var(--status-time-bg); color: var(--status-time-ink); }
.card-educator {
  margin: 0 -20px;
  padding: 15px 20px 18px;
  background: #f8f9fb;
  border-top-color: var(--line);
}

.pro-card { display: flex; flex-direction: column; }
.pro-card-body { min-height: 0; padding: 20px 20px 0; display: flex; flex: 1; flex-direction: column; }
.pro-card-body > .card-kicker {
  min-height: 30px;
  margin-bottom: 14px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}
.pro-card-body > .card-kicker > span:first-child { white-space: nowrap; }
.pro-card-body > .pro-name-line { min-height: 34px; align-items: center; }
.pro-card-body > .pro-role { min-height: 24px; margin-top: 12px; }
.pro-card-footer {
  margin: auto -20px 0;
  padding: 15px 20px 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-top: 1px solid var(--line);
  background: white;
}
.pro-card-footer .card-price { flex: 0 0 auto; }
.pro-card-footer .card-price strong { white-space: nowrap; }
.pro-card-image > .pro-vertical,
.profile-status-row .pro-vertical,
.educator-live-cover span {
  gap: 6px;
  border: 1px solid var(--skill-border);
  background: rgba(255,255,255,.94);
  color: var(--skill-accent);
}
.pro-role { color: var(--skill-accent); }
.pro-skill-panel {
  margin-top: 15px;
  padding: 12px;
  border: 1px solid var(--skill-border);
  border-radius: 13px;
  background: var(--skill-soft);
}
.skill-tags-tone span { border: 1px solid var(--skill-border); background: rgba(255,255,255,.72); color: var(--skill-accent); }
.pro-card-stats {
  margin: 0 -20px;
  padding: 0 20px;
  gap: 0;
  background: #f6f8fb;
  border-top: 1px solid var(--line);
}
.pro-card-stats span { position: relative; min-width: 0; padding: 14px 10px 16px; }
.pro-card-stats span:first-child { padding-left: 0; }
.pro-card-stats span:last-child { padding-right: 0; }
.pro-card-stats span:not(:last-child) { border-right: 1px solid var(--line); }
.pro-card-stats span:not(:first-child) { padding-left: 13px; }
.pro-card-stats strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pro-card-stats small { color: var(--muted); font-size: 9px; }
.pro-card-stats .stat-career strong { color: #7a5b2d; }
.pro-card-stats .stat-format strong { color: var(--status-format-ink); }
.pro-card-stats .stat-region strong { color: var(--status-region-ink); }

.detail-title-block .eyebrow { display: flex; align-items: center; gap: 7px; color: var(--skill-accent); }
.detail-verification { margin-top: 12px; display: flex; gap: 9px; align-items: center; flex-wrap: wrap; }
.detail-verification > span:last-child { color: var(--muted); font-size: 10px; }
.meta-pill { border: 1px solid transparent; }
.meta-schedule, .meta-duration { border-color: #e9d8bc; background: var(--status-time-bg); color: var(--status-time-ink); }
.meta-region { border-color: #ccdfed; background: var(--status-region-bg); color: var(--status-region-ink); }
.meta-target { border-color: var(--skill-border); background: var(--skill-soft); color: var(--skill-accent); }
.meta-format { border-color: #ddd3f3; background: var(--status-format-bg); color: var(--status-format-ink); }
.educator-box-rich { border: 1px solid var(--skill-border); background: linear-gradient(115deg, var(--skill-soft), #f7f8fb 70%); }
.learning-item::before { background: var(--skill-soft); color: var(--skill-accent); }
.profile-handle { color: var(--skill-accent); }
.profile-response { color: var(--status-sample-ink); }
.badge-wallet > span { background: var(--status-verified-bg); color: var(--status-verified-ink); }

@media (max-width: 580px) {
  .hero-visual > img { object-position: 52% center; }
  .educator-rail-card { min-width: 238px; flex-basis: 238px; }
  .category-grid-wide .category-card { min-height: 150px; padding: 14px; }
  .category-icon { width: 50px; height: 50px; border-radius: 15px; }
  .skill-icon-lg { width: 26px; height: 26px; }
  .category-card > span:last-child > strong { margin-top: 16px; font-size: 15px; }
  .category-card > span:last-child > span { font-size: 10px; }
  .card-content, .pro-card-body { padding-inline: 18px; }
  .card-educator { margin-inline: -18px; padding-inline: 18px; }
  .pro-card-stats { margin-inline: -18px; padding-inline: 18px; }
  .card-badges { right: 10px; left: 10px; gap: 4px; }
  .badge { padding: 5px 7px; font-size: 9px; }
  .detail-verification { align-items: flex-start; flex-direction: column; }
}

/* Skill directory: a fast text index instead of a grid of feature cards */
.skill-directory-section { padding-top: 110px; padding-bottom: 110px; }

.skill-directory-heading {
  margin-bottom: 48px;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .72fr);
  gap: 80px;
  align-items: end;
}

.skill-directory-heading h2 {
  max-width: 680px;
  margin: 0;
  font-size: clamp(40px, 5vw, 64px);
  line-height: 1.02;
  letter-spacing: -.064em;
  text-wrap: balance;
}

.skill-directory-heading > p {
  max-width: 500px;
  margin: 0 0 7px;
  color: var(--ink-soft);
  font-size: 17px;
  font-weight: 620;
  line-height: 1.72;
  word-break: keep-all;
}

.skill-directory {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 64px;
  border-top: 1px solid var(--line-strong);
}

.skill-directory-link {
  position: relative;
  width: 100%;
  min-height: 118px;
  padding: 25px 2px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 32px;
  gap: 15px;
  align-items: center;
  overflow: hidden;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  text-align: left;
  cursor: pointer;
}

.skill-directory-link::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 2px;
  background: var(--skill-accent);
  transform: scaleX(.08);
  transform-origin: left center;
  transition: transform .28s cubic-bezier(.2,.75,.25,1);
}

.skill-directory-index {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--skill-accent);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .05em;
}

.skill-directory-index::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--skill-accent);
}

.skill-directory-copy { min-width: 0; display: grid; gap: 5px; }
.skill-directory-copy strong {
  color: var(--ink);
  font-size: 24px;
  font-weight: 820;
  letter-spacing: -.042em;
  line-height: 1.2;
  transition: color .2s ease;
}
.skill-directory-copy small { color: var(--muted); font-size: 13px; font-weight: 560; }
.skill-directory-arrow {
  justify-self: end;
  color: var(--skill-accent);
  font-size: 23px;
  line-height: 1;
  transition: transform .22s ease;
}

.skill-directory-link:hover::after,
.skill-directory-link:focus-visible::after { transform: scaleX(1); }
.skill-directory-link:hover .skill-directory-copy strong { color: var(--skill-accent); }
.skill-directory-link:hover .skill-directory-arrow,
.skill-directory-link:focus-visible .skill-directory-arrow { transform: translateX(6px); }
.skill-directory-link:focus-visible { z-index: 1; outline-offset: 5px; }

@media (max-width: 820px) {
  .skill-directory-heading { grid-template-columns: 1fr; gap: 22px; }
  .skill-directory-heading > p { max-width: 620px; }
  .skill-directory { column-gap: 32px; }
}

@media (max-width: 580px) {
  .skill-directory-section { padding-top: 78px; padding-bottom: 78px; }
  .skill-directory-heading { margin-bottom: 34px; }
  .skill-directory-heading h2 { font-size: clamp(39px, 12vw, 50px); }
  .skill-directory-heading > p { font-size: 15px; line-height: 1.66; }
  .skill-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 8px; }
  .skill-directory-link {
    min-width: 0;
    min-height: 148px;
    padding: 15px 14px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-rows: auto 1fr;
    gap: 12px 7px;
    align-items: start;
  }
  .skill-directory-index { grid-column: 1 / 3; font-size: 10px; }
  .skill-directory-index::before { width: 7px; height: 7px; }
  .skill-directory-copy { grid-column: 1 / -1; grid-row: 2; align-self: end; gap: 7px; }
  .skill-directory-copy strong { font-size: 18px; line-height: 1.08; word-break: keep-all; }
  .skill-directory-copy small { font-size: 10px; line-height: 1.4; white-space: normal; word-break: keep-all; }
  .skill-directory-arrow { grid-column: 3; grid-row: 1; font-size: 18px; }
}

/* Gout de Salon-inspired home: black editorial archive for a young skill market */
.home-dark {
  --home-bg: #0b0c0b;
  --home-surface: #121411;
  --home-surface-2: #181b17;
  --home-ink: #f1f0e9;
  --home-muted: #a4a59d;
  --home-line: rgba(255,255,255,.14);
  --home-signal: #d1e59a;
  background: var(--home-bg);
  color: var(--home-ink);
  word-break: keep-all;
  overflow-wrap: break-word;
}

.home-dark h1,
.home-dark h2,
.home-dark h3 {
  word-break: keep-all;
  overflow-wrap: normal;
  hyphens: none;
  text-wrap: balance;
}

.home-dark .noise { opacity: .055; mix-blend-mode: screen; }
.home-dark main {
  color: var(--home-ink);
  background-color: var(--home-bg);
  background-image:
    linear-gradient(rgba(255,255,255,.027) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.027) 1px, transparent 1px);
  background-size: 82px 82px;
}

.home-dark .beta-announcement {
  border-bottom: 1px solid rgba(11,12,11,.28);
  background: var(--home-signal);
  color: var(--home-bg);
}
.home-dark .beta-announcement strong { color: var(--home-bg); }
.home-dark .beta-announcement a { color: var(--home-bg); }

.home-dark .site-header {
  border-bottom-color: var(--home-line);
  background: rgba(9,11,10,.94);
  color: var(--home-ink);
}
.home-dark .brand { color: var(--home-ink); }
.home-dark .brand-mark {
  border-radius: 0;
  background: var(--home-signal);
  color: var(--home-bg);
  box-shadow: 5px 5px 0 rgba(255,255,255,.13);
}
.home-dark .desktop-nav a { color: rgba(241,240,233,.68); font-weight: 700; letter-spacing: .01em; }
.home-dark .desktop-nav a:hover { color: var(--home-signal); }
.home-dark .nav-account-link { color: var(--home-ink); }
.home-dark .nav-account-link:hover { color: var(--home-signal); }
.home-dark .nav-actions .button-dark {
  border: 1px solid var(--home-signal);
  border-radius: 0;
  background: var(--home-signal);
  color: var(--home-bg);
}
.home-dark .mobile-menu-button { border-radius: 0; background: var(--home-surface-2); }
.home-dark .mobile-menu-button span { background: var(--home-ink); }
.home-dark .mobile-nav { border-color: var(--home-line); border-radius: 0; background: rgba(11,12,11,.98); color: var(--home-ink); }
.home-dark .mobile-nav a:hover { background: var(--home-surface-2); color: var(--home-signal); }

.home-dark .hero {
  padding-top: 70px;
  padding-bottom: 44px;
  isolation: isolate;
}
.home-dark .hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 calc((100vw - 100%) / -2);
  display: block;
  background:
    radial-gradient(circle at 17% 8%, rgba(209,229,154,.16), transparent 29%),
    radial-gradient(circle at 86% 38%, rgba(111,91,255,.18), transparent 31%),
    linear-gradient(180deg, rgba(255,255,255,.018), transparent 80%);
}
.home-dark .eyebrow { color: var(--home-signal); font-family: Arial, "Apple SD Gothic Neo", sans-serif; }
.home-dark .eyebrow-dot::before { background: var(--home-signal); box-shadow: 0 0 0 5px rgba(209,229,154,.12); }
.home-dark .hero-market-title {
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  color: var(--home-signal);
  font-size: clamp(15px, 1.35vw, 20px);
  line-height: 1;
  letter-spacing: .14em;
}
.home-dark .hero-market-title::before { flex: 0 0 auto; }
.home-dark .hero-market-title span { font-weight: 900; }
.home-dark .hero-market-title small {
  margin-left: 8px;
  color: rgba(209,229,154,.66);
  font-size: .68em;
  font-weight: 800;
  letter-spacing: .12em;
}
.home-dark .hero-display {
  margin: 0 0 16px;
  color: var(--home-ink);
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", "Arial Black", sans-serif;
  font-size: clamp(54px, 5.8vw, 86px);
  font-weight: 400;
  line-height: .84;
  letter-spacing: -.045em;
  text-transform: uppercase;
  white-space: nowrap;
}
.home-dark .hero h1 {
  color: var(--home-ink);
  font-size: clamp(38px, 4.2vw, 58px);
  font-weight: 850;
  line-height: 1.08;
  letter-spacing: -.062em;
}
.home-dark .hero h1 .highlight { color: var(--home-signal); }
.home-dark .hero-subtitle { color: rgba(241,240,233,.69); }

.home-dark .hero-search {
  max-width: 780px;
  border: 1px solid var(--home-ink);
  border-radius: 0;
  background: var(--home-ink);
  box-shadow: 10px 10px 0 var(--home-signal);
}
.home-dark .hero-search-field { border-radius: 0; }
.home-dark .hero-search-field:focus-within { background: rgba(209,229,154,.24); box-shadow: inset 0 0 0 1px rgba(11,12,11,.24); }
.home-dark .hero-search-icon { border-radius: 0; background: var(--home-bg); color: var(--home-signal); }
.home-dark .hero-search-field label > span,
.home-dark .hero-search-label { color: #454942; }
.home-dark .hero-search input,
.home-dark .region-picker summary { color: var(--home-bg); }
.home-dark .hero-search input::placeholder { color: #747970; }
.home-dark .hero-search-region { border-left-color: rgba(11,12,11,.18); }
.home-dark .hero-search .button-primary { border-color: var(--home-bg); border-radius: 0; background: var(--home-bg); color: var(--home-signal); }
.home-dark .region-options { border-color: var(--home-line); border-radius: 0; background: #f1f0e9; color: #0b0c0b; }
.home-dark .region-option:first-child { background: #e2e2da; }
.home-dark .region-option.selected { background: var(--home-bg); color: var(--home-signal); }
.home-dark .hero-quick-links { color: var(--home-muted); }
.home-dark .hero-quick-links button {
  border-color: rgba(255,255,255,.2);
  border-radius: 0;
  background: rgba(255,255,255,.035);
  color: var(--home-ink);
}
.home-dark .hero-quick-links button:hover,
.home-dark .hero-quick-links button:focus-visible { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.home-dark .trust-item { color: rgba(241,240,233,.72); }
.home-dark .trust-check { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }

.home-dark .hero-visual {
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 0;
  background: var(--home-surface);
  box-shadow: 16px 16px 0 rgba(209,229,154,.88);
}
.home-dark .hero-visual > img { inset: -1px; width: calc(100% + 2px); max-width: none; height: calc(100% + 2px); filter: saturate(1.12) contrast(1.06); }
.home-dark .hero-visual::after { background: linear-gradient(180deg, rgba(11,12,11,.02) 38%, rgba(11,12,11,.91)); }
.home-dark .visual-badge { border: 1px solid rgba(255,255,255,.25); border-radius: 0; background: rgba(11,12,11,.88); color: var(--home-signal); letter-spacing: .06em; }
.home-dark .visual-card p { color: var(--home-signal); letter-spacing: .03em; }
.home-dark .visual-card > strong { border-radius: 0; }

.home-dark .educator-rail { border-block-color: var(--home-line); }
.home-dark .educator-rail-heading > div:first-child > span { color: var(--home-signal); }
.home-dark .educator-rail-heading h2,
.home-dark .educator-rail-heading a { color: var(--home-ink); }
.home-dark .educator-rail-actions > span,
.home-dark .educator-rail > p { color: var(--home-muted); }
.home-dark .educator-rail-actions button { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-ink); }
.home-dark .educator-rail-actions button:hover { border-color: var(--home-signal); color: var(--home-signal); }
.home-dark .educator-rail-window::after { background: linear-gradient(90deg, transparent, var(--home-bg)); }
.home-dark .educator-rail-track { scrollbar-color: var(--home-signal) transparent; }
.home-dark .educator-rail-card {
  min-width: 330px;
  min-height: 104px;
  padding: 12px;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  gap: 14px;
  flex-basis: 330px;
  border-color: rgba(255,255,255,.15);
  border-radius: 0;
  background: var(--home-surface);
  color: var(--home-ink);
}
.home-dark .educator-rail-card:hover { border-color: var(--skill-accent); background: var(--home-surface-2); }
.home-dark .educator-rail-card-registered { border-left-color: var(--status-registered-ink); }
.home-dark .educator-rail-card img { width: 76px; height: 76px; border-radius: 0; object-position: center top; }
.home-dark .educator-rail-card strong { font-size: 16px; }
.home-dark .educator-rail-card small { font-size: 11px; }
.home-dark .educator-rail-card small { color: var(--home-muted); }
.home-dark .educator-rail-card-recruit { position: relative; overflow: hidden; border-left: 3px solid var(--skill-accent); background: var(--home-surface); }
.home-dark .educator-rail-card-recruit::before { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, color-mix(in srgb, var(--skill-accent) 20%, rgba(11,12,11,.28)), rgba(11,12,11,.92)); pointer-events: none; }
.home-dark .educator-rail-card-recruit img { opacity: .7; }
.home-dark .educator-rail-card-recruit > span,
.home-dark .educator-rail-card-recruit > em { position: relative; z-index: 2; }
.home-dark .educator-rail-card-recruit .educator-status-recruit { min-height: 30px; padding: 6px 9px; display: inline-flex; align-items: center; justify-content: center; border-radius: 0; background: var(--skill-accent); color: var(--skill-ink); font-size: 9px; font-weight: 900; }

.home-dark .catalog-section { border-top-color: var(--home-line); }
.home-dark .skill-directory-section { padding-top: 48px; padding-bottom: 32px; }
.home-dark .skill-directory-heading {
  margin-bottom: 18px;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
  gap: 48px;
  align-items: center;
}
.home-dark .skill-directory-heading h2 {
  max-width: none;
  color: var(--home-ink);
  font-size: clamp(34px, 3.5vw, 48px);
  line-height: 1;
}
.home-dark .skill-directory-heading h2 span {
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", "Arial Black", sans-serif;
  font-size: 1.28em;
  font-weight: 400;
  letter-spacing: -.045em;
}
.home-dark .skill-directory-heading h2 em {
  color: var(--home-signal);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  letter-spacing: -.055em;
}
.home-dark .skill-directory-heading > p {
  max-width: 420px;
  color: var(--home-muted);
  font-size: 14px;
  line-height: 1.55;
}
.home-dark .skill-directory {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid var(--home-line);
  border-left: 1px solid var(--home-line);
}
.home-dark .skill-tone[data-skill-tone="cut"] { --skill-accent: #5d78ff; --skill-ink: #f7f6ef; --skill-soft: #1a2453; --skill-border: #5d78ff; }
.home-dark .skill-tone[data-skill-tone="color"] { --skill-accent: #ff67a3; --skill-ink: #19070f; --skill-soft: #4e1730; --skill-border: #ff67a3; }
.home-dark .skill-tone[data-skill-tone="perm"] { --skill-accent: #ad88ff; --skill-ink: #150c20; --skill-soft: #342357; --skill-border: #ad88ff; }
.home-dark .skill-tone[data-skill-tone="styling"] { --skill-accent: #e4fb52; --skill-ink: #111407; --skill-soft: #394015; --skill-border: #e4fb52; }
.home-dark .skill-tone[data-skill-tone="scalp"] { --skill-accent: #58dcf4; --skill-ink: #071518; --skill-soft: #123c44; --skill-border: #58dcf4; }
.home-dark .skill-tone[data-skill-tone="consulting"] { --skill-accent: #ff885d; --skill-ink: #190b06; --skill-soft: #4e2618; --skill-border: #ff885d; }
.home-dark .skill-directory-link {
  min-height: 70px;
  padding: 11px 14px 11px 17px;
  overflow: hidden;
  border: 0;
  border-right: 1px solid var(--home-line);
  border-bottom: 1px solid var(--home-line);
  background: transparent;
  color: var(--home-ink);
  isolation: isolate;
  grid-template-columns: 30px minmax(0, 1fr) 18px;
  gap: 9px;
}
.home-dark .skill-directory-link::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 13px;
  bottom: 13px;
  left: 0;
  width: 3px;
  background: var(--home-signal);
  clip-path: none;
  transform: none;
  transition: width .2s ease, opacity .2s ease;
}
.home-dark .skill-directory-link:nth-child(even)::before { clip-path: none; transform: none; }
.home-dark .skill-directory-link::after { display: none; }
.home-dark .skill-directory-link > * { position: relative; z-index: 1; }
.home-dark .skill-directory-index { color: var(--home-signal); }
.home-dark .skill-directory-index::before { width: 5px; height: 5px; background: var(--home-signal); }
.home-dark .skill-directory-copy strong { color: var(--home-ink); font-size: 18px; }
.home-dark .skill-directory-copy small { color: var(--home-muted); font-size: 10px; opacity: 1; font-weight: 650; }
.home-dark .skill-directory-arrow { color: var(--home-signal); font-size: 17px; }
.home-dark .skill-directory-link:hover::before,
.home-dark .skill-directory-link:focus-visible::before { width: 6px; filter: none; transform: none; box-shadow: none; }
.home-dark .skill-directory-link:hover,
.home-dark .skill-directory-link:focus-visible { background: rgba(255,255,255,.035); }
.home-dark .skill-directory-link:hover .skill-directory-copy strong { color: var(--home-ink); }

.home-dark .section-heading h2,
.home-dark .feature-copy h2,
.home-dark .cta-panel h2 { color: var(--home-ink); }
.home-dark .section-heading h2 em {
  color: var(--home-signal);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
}
.home-dark .section-heading p:not(.eyebrow),
.home-dark .text-link { color: var(--home-muted); }
.home-dark .text-link:hover { color: var(--home-signal); }

.home-dark .class-card,
.home-dark .pro-card {
  border: 1px solid rgba(255,255,255,.16);
  border-bottom: 4px solid var(--skill-accent);
  border-radius: 0;
  background: var(--home-surface);
  color: var(--home-ink);
  box-shadow: none;
}
.home-dark .class-card:hover,
.home-dark .pro-card:hover { border-color: var(--skill-accent); box-shadow: 12px 12px 0 rgba(255,255,255,.07); }
.home-dark .card-image,
.home-dark .pro-card-image { background: #20221f; }
.home-dark .badge { border-radius: 0; box-shadow: none; }
.home-dark .badge-skill { border: 0; background: var(--skill-accent); color: var(--skill-ink); }
.home-dark .badge-live { background: var(--home-ink); color: var(--home-bg); }
.home-dark .badge-small-group { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.home-dark .profile-kind-marker { background: transparent; }
.home-dark .badge-ad,
.home-dark .badge-sponsored { background: var(--home-signal); color: var(--home-bg); }
.home-dark .favorite-button,
.home-dark .pro-share-mini { border: 1px solid rgba(255,255,255,.2); border-radius: 0; background: rgba(11,12,11,.88); color: var(--home-ink); }
.home-dark .card-kicker { color: var(--home-muted); }
.home-dark .card-title,
.home-dark .pro-name-line h3 { color: var(--home-ink); }
.home-dark .card-educator,
.home-dark .pro-card-footer,
.home-dark .pro-card-stats { border-color: var(--home-line); background: var(--home-surface-2); }
.home-dark .avatar { border-radius: 0; background: var(--home-ink); color: var(--home-bg); }
.home-dark .avatar.avatar-salon {
  width: 58px;
  padding: 0 7px;
  font-size: 9px;
  letter-spacing: .035em;
}
.home-dark .educator-meta span,
.home-dark .card-price span,
.home-dark .pro-card-stats small { color: var(--home-muted); }
.home-dark .card-price strong,
.home-dark .educator-meta strong { color: var(--home-ink); }
.home-dark .pro-card-stats span:not(:last-child) { border-right-color: var(--home-line); }
.home-dark .pro-card-stats .stat-career strong,
.home-dark .pro-card-stats .stat-format strong,
.home-dark .pro-card-stats .stat-region strong { color: var(--home-ink); }

.home-dark .proof-section {
  margin-top: 118px;
  border-block: 1px solid var(--home-line);
  background-color: #080908;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 72px 72px;
}
.home-dark .proof-card { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); box-shadow: none; }
.home-dark .proof-card img { filter: saturate(.9) contrast(1.08); }
.home-dark .proof-card span { color: var(--home-signal); }
.home-dark .proof-callout { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .proof-callout p { color: rgba(11,12,11,.68); }
.home-dark .proof-callout .button-primary { border-color: var(--home-bg); border-radius: 0; background: var(--home-bg); color: var(--home-signal); }

.home-dark .soft-section { border-block: 1px solid var(--home-line); background: linear-gradient(135deg, #10120f, #17131f 58%, #0b0c0b); }
.home-dark .feature-visual { border: 1px solid var(--home-line); border-radius: 0; box-shadow: 16px 16px 0 rgba(173,136,255,.38); }
.home-dark .profile-float { border-color: var(--home-line); border-radius: 0; background: rgba(11,12,11,.88); color: var(--home-ink); }
.home-dark .profile-float p,
.home-dark .feature-copy > p:not(.eyebrow),
.home-dark .trust-list-item p { color: var(--home-muted); }
.home-dark .profile-avatar { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .trust-list-item { border-color: var(--home-line); border-radius: 0; background: rgba(255,255,255,.035); }
.home-dark .trust-list-item .num { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }

.home-dark .step-card { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-ink); }
.home-dark .step-card::before { color: var(--home-signal); }
.home-dark .step-card p { color: var(--home-muted); }
.home-dark .step-card:nth-child(2) { background: var(--home-signal); color: var(--home-bg); }
.home-dark .step-card:nth-child(2)::before,
.home-dark .step-card:nth-child(2) p { color: rgba(11,12,11,.65); }
.home-dark .step-card:nth-child(3) { background: #ff67a3; color: #19070f; }
.home-dark .step-card:nth-child(3)::before,
.home-dark .step-card:nth-child(3) p { color: rgba(25,7,15,.65); }

.home-dark .cta-panel { border: 1px solid var(--home-signal); border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .cta-panel .eyebrow,
.home-dark .cta-panel h2 { color: var(--home-bg); }
.home-dark .cta-panel p { color: rgba(11,12,11,.66); }
.home-dark .cta-panel::after { color: rgba(11,12,11,.09); }
.home-dark .cta-panel .button-primary { border-color: var(--home-bg); border-radius: 0; background: var(--home-bg); color: var(--home-signal); }

.home-dark .site-footer { margin-top: 0; border-top: 1px solid var(--home-line); background: #070807; }
.home-dark .footer-cta { color: var(--home-signal); }
.home-dark .footer-notice { border-color: var(--home-line); border-radius: 0; }

@media (max-width: 1050px) {
  .home-dark .hero-display { font-size: clamp(50px, 6.5vw, 68px); }
}

@media (max-width: 820px) {
  .home-dark .hero { padding-top: 50px; }
  .home-dark .hero-market-title { font-size: clamp(15px, 2.5vw, 18px); }
  .home-dark .hero-display { font-size: clamp(54px, 11.5vw, 74px); }
  .home-dark .hero-visual { box-shadow: 10px 10px 0 rgba(209,229,154,.88); }
  .home-dark .skill-directory-section { padding-top: 48px; padding-bottom: 48px; }
  .home-dark .skill-directory-heading { grid-template-columns: minmax(0, 1fr); gap: 14px; }
}

@media (max-width: 580px) {
  .home-dark main { background-size: 48px 48px; }
  .home-dark .nav-actions .button-dark span:first-child { font-size: 0; }
  .home-dark .nav-actions .button-dark span:first-child::after { content: "내 클래스"; font-size: 11px; }
  .home-dark .hero { padding-top: 42px; }
  .home-dark .hero-market-title { margin-bottom: 20px; font-size: 15px; letter-spacing: .1em; }
  .home-dark .hero-display { margin-bottom: 18px; font-size: clamp(46px, 14vw, 64px); white-space: normal; }
  .home-dark .hero h1 { font-size: clamp(37px, 10.8vw, 48px); }
  .home-dark .hero-search { box-shadow: 7px 7px 0 var(--home-signal); }
  .home-dark .hero-search-keyword { border-bottom-color: rgba(11,12,11,.17); }
  .home-dark .region-option {
    min-height: 36px;
    color: #41453e;
    font-size: 12px;
    font-weight: 760;
  }
  .home-dark .region-option:first-child {
    border-color: #cfd2c8;
    background: #e7e9e1;
    color: #555a51;
  }
  .home-dark .region-option:hover,
  .home-dark .region-option:focus-visible { background: #dfe8c5; color: #171a13; }
  .home-dark .region-option.selected { background: var(--home-bg); color: var(--home-signal); font-weight: 900; }
  .home-dark .hero-visual { min-height: 430px; }
  .home-dark .skill-directory-section { padding-top: 28px; padding-bottom: 28px; }
  .home-dark .skill-directory-heading { margin-bottom: 14px; gap: 8px; }
  .home-dark .skill-directory-heading h2 { font-size: 29px; line-height: 1.08; }
  .home-dark .skill-directory-heading > p { font-size: 11px; line-height: 1.5; }
  .home-dark .skill-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
  .home-dark .skill-directory-link {
    min-height: 66px;
    padding: 9px 9px 9px 12px;
    grid-template-columns: 21px minmax(0, 1fr) 13px;
    grid-template-rows: auto auto;
    align-content: center;
    gap: 2px 5px;
  }
  .home-dark .skill-directory-link::before { top: 10px; bottom: 10px; }
  .home-dark .skill-directory-index { grid-column: 1; grid-row: 1 / span 2; align-self: center; font-size: 8px; gap: 3px; }
  .home-dark .skill-directory-index::before { display: none; }
  .home-dark .skill-directory-copy { grid-column: 2; grid-row: 1 / span 2; align-self: center; gap: 3px; }
  .home-dark .skill-directory-copy strong { font-size: clamp(13px, 3.8vw, 15px); line-height: 1.12; }
  .home-dark .skill-directory-copy small { font-size: 8px; line-height: 1.25; }
  .home-dark .skill-directory-arrow { grid-column: 3; grid-row: 1 / span 2; align-self: center; font-size: 13px; }
  .home-dark .class-card:hover,
  .home-dark .pro-card:hover { box-shadow: 7px 7px 0 rgba(255,255,255,.07); }
  .home-dark .proof-section { background-size: 48px 48px; }
  .home-dark .feature-visual { box-shadow: 9px 9px 0 rgba(173,136,255,.38); }
}

/* Site-wide editorial system: extend the Gout-inspired home language to every public route */
.home-dark {
  --ink: #f3f2eb;
  --ink-soft: #c4c6bd;
  --muted: #95988f;
  --line: rgba(255,255,255,.15);
  --line-strong: rgba(255,255,255,.25);
  --paper: #0b0c0b;
  --paper-2: #151714;
  --white: #f3f2eb;
  --navy: #181b17;
  --navy-deep: #070807;
  --brand: #d1e59a;
  --brand-deep: #e1f5a7;
  --brand-soft: #28321b;
  --gold: #ffc36a;
  --gold-deep: #ffd99d;
  --gold-soft: #392b17;
  --danger: #ff7380;
  --status-verified-bg: rgba(209,229,154,.13);
  --status-verified-ink: #dff3a5;
  --status-sample-bg: rgba(173,136,255,.16);
  --status-sample-ink: #cdb8ff;
  --status-registered-bg: rgba(88,220,244,.15);
  --status-registered-ink: #82e9fb;
  --status-ad-bg: rgba(255,195,106,.16);
  --status-ad-ink: #ffd99d;
  --status-pending-bg: rgba(255,136,93,.14);
  --status-pending-ink: #ffa281;
  --status-region-bg: rgba(88,220,244,.13);
  --status-region-ink: #82e9fb;
  --status-format-bg: rgba(173,136,255,.14);
  --status-format-ink: #cbb4ff;
  --status-time-bg: rgba(255,195,106,.14);
  --status-time-ink: #ffd28d;
  --shadow: 0 26px 72px rgba(0,0,0,.36);
  color-scheme: dark;
}

.home-dark :focus-visible { outline-color: rgba(209,229,154,.72); }
.home-dark .button { border-radius: 0; }
.home-dark .button-primary { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.home-dark .button-primary:hover { border-color: #e3f5ae; background: #e3f5ae; color: var(--home-bg); box-shadow: 7px 7px 0 rgba(255,255,255,.09); }
.home-dark .button-dark { border-color: var(--home-line); background: var(--home-surface-2); color: var(--home-ink); }
.home-dark .button-dark:hover { border-color: var(--home-signal); background: var(--home-surface); color: var(--home-signal); }
.home-dark .button-light,
.home-dark .button-ghost { border-color: var(--home-line); background: transparent; color: var(--home-ink); }
.home-dark .button-light:hover,
.home-dark .button-ghost:hover { border-color: var(--home-signal); background: rgba(209,229,154,.08); color: var(--home-signal); box-shadow: none; }

.home-dark .page-hero {
  position: relative;
  padding-top: 92px;
  padding-bottom: 58px;
  border-bottom: 1px solid var(--home-line);
}
.home-dark .page-hero::after {
  position: absolute;
  right: 0;
  bottom: 25px;
  color: rgba(241,240,233,.26);
  font-family: Arial, "Apple SD Gothic Neo", sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
}
.home-dark[data-route="search"] .page-hero::after { content: "CLASS INDEX / 01"; }
.home-dark[data-route="pros"] .page-hero::after { content: "CREATOR INDEX / 02"; }
.home-dark .page-hero h1,
.home-dark .detail-title-block h1,
.home-dark .profile-summary h1,
.home-dark .educator-onboarding-head h1,
.home-dark .policy-hero h1,
.home-dark .about-hero h1,
.home-dark .advertise-hero-copy h1,
.home-dark .sample-detail-copy h1 { color: var(--home-ink); }
.home-dark .page-hero p:not(.eyebrow),
.home-dark .detail-section > p,
.home-dark .profile-bio,
.home-dark .educator-onboarding-head > p:not(.eyebrow),
.home-dark .policy-hero > p:not(.eyebrow),
.home-dark .advertise-hero-copy > p:not(.eyebrow),
.home-dark .sample-detail-copy > p:not(.eyebrow) { color: var(--home-muted); }

.home-dark .search-results-section { padding-top: 34px; }
.home-dark .market-tabs {
  --market-tab-line: rgba(255,255,255,.28);
  gap: 0;
  border-top: 1px solid var(--market-tab-line);
  border-bottom: 1px solid var(--market-tab-line);
}
.home-dark .market-tabs a {
  min-width: 138px;
  border: 0;
  border-right: 1px solid var(--market-tab-line);
  border-radius: 0;
  background: transparent;
  color: var(--home-muted);
}
.home-dark .market-tabs a:first-child { border-left: 1px solid var(--market-tab-line); }
.home-dark .market-tabs a.active {
  background: var(--home-signal);
  color: var(--home-bg);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22);
}
.home-dark .search-toolbar,
.home-dark .pro-search-bar {
  top: 86px;
  border-color: var(--home-line);
  border-radius: 0;
  background: rgba(11,12,11,.92);
  box-shadow: 0 13px 35px rgba(0,0,0,.24);
}
.home-dark .search-input-wrap,
.home-dark .select-control,
.home-dark .verified-toggle {
  border-color: var(--home-line);
  border-radius: 0;
  background: var(--home-surface);
  color: var(--home-ink);
}
.home-dark .search-input-wrap:focus-within,
.home-dark .select-control:focus,
.home-dark .verified-toggle:focus-within { border-color: var(--home-signal); }
.home-dark .search-input-wrap input { color: var(--home-ink); }
.home-dark .search-input-wrap input::placeholder { color: #74786f; }
.home-dark .select-control option { background: var(--home-surface); color: var(--home-ink); }
.home-dark .filter-chip {
  min-height: 40px;
  border-color: var(--home-line);
  border-radius: 0;
  background: transparent;
  color: var(--home-muted);
}
.home-dark .filter-chip:hover { border-color: var(--home-ink); background: rgba(255,255,255,.05); color: var(--home-ink); }
.home-dark .filter-chip.skill-tone { border-color: var(--home-line); background: transparent; }
.home-dark .filter-chip.skill-tone:hover { border-color: var(--skill-accent); background: var(--skill-soft); color: var(--skill-accent); }
.home-dark .filter-chip.active,
.home-dark .filter-chip.skill-tone.active { border-color: var(--skill-accent, var(--home-signal)); background: var(--skill-accent, var(--home-signal)); color: var(--skill-ink, var(--home-bg)); }
.home-dark .filter-chip.skill-tone.active .skill-icon { color: var(--skill-ink); }
.home-dark .refine-row { padding-bottom: 30px; border-bottom: 1px solid var(--home-line); }
.home-dark .results-head { margin-top: 30px; padding-bottom: 16px; border-bottom: 1px solid var(--home-line); }
.home-dark .results-head p { color: var(--home-muted); }
.home-dark .empty-state { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); }
.home-dark .empty-state .empty-icon { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }

.home-dark .card-kicker > span:first-child { display: inline-flex; align-items: center; gap: 6px; color: var(--skill-accent); }
.home-dark .verified-badge,
.home-dark .pending-badge {
  min-height: 30px;
  gap: 6px;
  padding: 4px 9px 4px 5px;
  border: 1px solid currentColor;
  border-radius: 0;
  background: transparent;
  line-height: 1;
}
.home-dark .verified-badge { color: var(--status-verified-ink); }
.home-dark .pending-badge { color: var(--status-pending-ink); }
.home-dark .verified-badge-compact { min-height: 27px; padding: 3px 8px 3px 4px; }
.home-dark .status-symbol {
  width: 19px;
  height: 19px;
  display: inline-grid;
  place-items: center;
  color: var(--home-bg);
  font-style: normal;
}
.home-dark .verified-badge .status-symbol { background: var(--status-verified-ink); }
.home-dark .pending-badge .status-symbol { background: var(--status-pending-ink); }
.home-dark .status-symbol svg { width: 14px; height: 14px; }
.home-dark .verified-dot {
  width: 18px;
  height: 18px;
  border-radius: 0;
  background: var(--home-signal);
  color: var(--home-bg);
}
.home-dark .verified-dot svg { width: 13px; height: 13px; }
.home-dark .skill-icon svg { stroke-width: 1.8; }
.home-dark .class-facts span,
.home-dark .skill-tags span { border: 1px solid var(--home-line); border-radius: 0; background: rgba(255,255,255,.035); color: var(--home-muted); }
.home-dark .class-facts .fact-format { border-color: rgba(173,136,255,.38); background: rgba(173,136,255,.12); color: #cbb4ff; }
.home-dark .class-facts .fact-duration { border-color: rgba(209,229,154,.42); background: rgba(209,229,154,.1); color: var(--home-signal); }
.home-dark .class-facts .fact-capacity { border-color: rgba(173,136,255,.38); background: rgba(173,136,255,.12); color: #cbb4ff; }
.home-dark .class-facts .fact-region { border-color: rgba(88,220,244,.35); background: rgba(88,220,244,.1); color: #82e9fb; }
.home-dark .class-facts .fact-schedule { border-color: rgba(255,195,106,.34); background: rgba(255,195,106,.1); color: #ffd28d; }
.home-dark .class-opening { border-color: var(--home-line); }
.home-dark .class-opening strong { color: var(--home-signal); }
.home-dark .class-opening span { color: var(--home-muted); }
.home-dark .pro-role { color: var(--skill-accent); }

.home-dark .detail-page,
.home-dark .pro-profile-page,
.home-dark .educator-onboarding,
.home-dark .policy-page { color: var(--home-ink); }
.home-dark .back-link { color: var(--home-muted); }
.home-dark .back-link:hover { color: var(--home-signal); }
.home-dark .detail-cover,
.home-dark .profile-portrait,
.home-dark .portfolio-grid img { border-radius: 0; }
.home-dark .detail-cover { border: 1px solid var(--home-line); }
.home-dark .detail-title-block,
.home-dark .detail-section { border-color: var(--home-line); }
.home-dark .meta-pill { border: 1px solid var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-muted); }
.detail-opening { margin-top: 16px; padding: 13px 15px; display: flex; justify-content: space-between; gap: 16px; border-left: 4px solid var(--brand); background: var(--brand-soft); font-size: 12px; }
.detail-opening strong { color: var(--ink); }
.detail-opening span { color: var(--muted); text-align: right; }
.home-dark .detail-opening { border-left-color: var(--home-signal); background: rgba(209,229,154,.08); }
.home-dark .detail-opening strong { color: var(--home-signal); }
.home-dark .detail-opening span { color: var(--home-muted); }
.home-dark .learning-item { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); }
.home-dark .learning-item::before { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .curriculum,
.home-dark .curriculum-item { border-color: var(--home-line); }
.home-dark .curriculum-item span,
.home-dark .curriculum-item p { color: var(--home-muted); }
.home-dark .educator-box {
  border: 1px solid var(--home-line);
  border-radius: 0;
  background: var(--home-surface);
}
.home-dark .educator-box-rich > img { border-radius: 0; }
.home-dark .booking-card {
  border: 1px solid var(--home-line);
  border-top: 4px solid var(--skill-accent);
  border-radius: 0;
  background: rgba(18,20,17,.96);
  box-shadow: 12px 12px 0 rgba(255,255,255,.055);
}
.home-dark .booking-list,
.home-dark .booking-list li { border-color: var(--home-line); }
.home-dark .safety-note { border: 1px solid rgba(209,229,154,.26); border-radius: 0; background: rgba(209,229,154,.08); color: var(--home-muted); }

.home-dark .profile-hero {
  border-color: var(--home-line);
  border-radius: 0;
  background: var(--home-surface);
  box-shadow: 14px 14px 0 rgba(255,255,255,.055);
}
.home-dark .profile-handle { color: var(--skill-accent); }
.home-dark .profile-title { color: var(--skill-accent); }
.home-dark .profile-affiliation,
.home-dark .profile-response,
.home-dark .profile-section-head > span { color: var(--home-muted); }
.home-dark .profile-stats-bar {
  border: 0;
  border-radius: 0;
  background: var(--skill-accent);
  color: var(--skill-ink);
}
.home-dark .profile-stats-bar div { border-right-color: color-mix(in srgb, var(--skill-ink) 24%, transparent); }
.home-dark .profile-stats-bar span { color: color-mix(in srgb, var(--skill-ink) 65%, transparent); }
.home-dark .credential-card {
  border: 1px solid var(--home-line);
  border-top: 4px solid var(--skill-accent);
  border-radius: 0;
  background: var(--home-surface);
  box-shadow: none;
}
.home-dark .credential-emblem { border-radius: 0; background: var(--skill-accent); color: var(--skill-ink); }
.home-dark .credential-card > span:not(.credential-emblem) { color: var(--skill-accent); }
.home-dark .badge-wallet { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); }
.home-dark .badge-wallet > span { border: 1px solid rgba(209,229,154,.24); border-radius: 0; background: rgba(209,229,154,.08); color: var(--home-signal); }
.home-dark .empty-inline { border-color: var(--home-line); border-radius: 0; }

.home-dark .application-stage-note {
  margin: 38px 0 14px;
  display: grid;
  grid-template-columns: 210px minmax(0, 1fr);
  border: 1px solid var(--home-signal);
  background: rgba(209,229,154,.08);
}
.home-dark .application-stage-note > span {
  padding: 22px;
  display: flex;
  align-items: center;
  border-right: 1px solid var(--home-signal);
  color: var(--home-signal);
  font-family: Arial, "Apple SD Gothic Neo", sans-serif;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
}
.home-dark .application-stage-note > div { padding: 19px 22px; }
.home-dark .application-stage-note strong { display: block; color: var(--home-ink); font-size: 15px; }
.home-dark .application-stage-note p { margin: 4px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.65; }
.home-dark .onboarding-steps { gap: 0; }
.home-dark .onboarding-steps > div {
  border-color: var(--home-line);
  border-right: 0;
  border-radius: 0;
  background: var(--home-surface);
}
.home-dark .onboarding-steps > div:last-child { border-right: 1px solid var(--home-line); }
.home-dark .onboarding-steps > div:nth-child(2) { background: rgba(93,120,255,.13); }
.home-dark .onboarding-steps > div:nth-child(3) { background: rgba(255,103,163,.12); }
.home-dark .onboarding-steps > div:nth-child(4) { background: rgba(209,229,154,.1); }
.home-dark .onboarding-steps span { color: var(--home-signal); }
.home-dark .onboarding-steps p { color: var(--home-muted); }
.home-dark .verification-boundary {
  border-color: var(--home-line);
  border-radius: 0;
  background: #0f110e;
}
.home-dark .verification-boundary > div { border: 1px solid var(--home-line); border-radius: 0; background: var(--home-surface); }
.home-dark .verification-boundary .verification-boundary-result { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.home-dark .verification-boundary small { color: var(--home-muted); }
.home-dark .educator-form,
.home-dark .form-card {
  border-color: var(--home-line);
  border-radius: 0;
  background: var(--home-surface);
  box-shadow: 12px 12px 0 rgba(255,255,255,.05);
}
.home-dark .field input,
.home-dark .field select,
.home-dark .field textarea,
.home-dark .choice-card label {
  border-color: var(--home-line);
  border-radius: 0;
  background: #0d0f0c;
  color: var(--home-ink);
}
.home-dark .field input:disabled { color: var(--home-muted); opacity: .74; }
.home-dark .field input::placeholder,
.home-dark .field textarea::placeholder { color: #6f736a; }
.home-dark .field input:focus,
.home-dark .field select:focus,
.home-dark .field textarea:focus { border-color: var(--home-signal); box-shadow: 0 0 0 3px rgba(209,229,154,.1); }
.home-dark .choice-card input:checked + label { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.home-dark .choice-card input:checked + label span { color: rgba(11,12,11,.62); }
.home-dark .schedule-mode-note,
.home-dark .duration-readout { border-color: var(--home-line); background: #090a09; }
.home-dark .schedule-mode-note > span,
.home-dark .duration-readout > span { color: var(--home-signal); }
.home-dark .schedule-mode-note strong,
.home-dark .duration-readout strong { color: var(--home-ink); }
.home-dark .schedule-mode-note p,
.home-dark .schedule-mode-note small,
.home-dark .duration-readout small { color: var(--home-muted); }
.home-dark .step-nav-item .step-num { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); }
.home-dark .step-nav-item.active { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .step-nav-item.active .step-num { border-color: rgba(11,12,11,.2); border-radius: 0; background: var(--home-bg); color: var(--home-signal); }
.home-dark .application-photo-guide {
  border-color: var(--home-line);
  border-radius: 0;
  background: #0d0f0c;
}
.home-dark .application-photo-guide span { border: 1px solid var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-ink); }
.home-dark .application-consent { border-color: var(--home-line); border-radius: 0; background: rgba(255,255,255,.025); }
.home-dark .consent-check input { accent-color: var(--home-signal); }
.home-dark .verification-levels > div { border: 1px solid var(--home-line); border-radius: 0; background: rgba(255,255,255,.025); }
.home-dark .educator-preview { border: 1px solid var(--home-line); border-radius: 0; background: #080908; }
.home-dark .educator-preview .eyebrow { color: var(--home-signal); }
.home-dark .educator-live-card { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-ink); }
.home-dark .educator-live-cover span { border: 0; border-radius: 0; background: var(--skill-accent); color: var(--skill-ink); }
.home-dark .educator-live-handle { color: var(--skill-accent) !important; }
.home-dark .application-success > span { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }

.home-dark .policy-draft { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .policy-alert,
.home-dark .sample-boundary {
  border-color: rgba(255,195,106,.42);
  border-radius: 0;
  background: rgba(255,195,106,.08);
}
.home-dark .policy-alert p,
.home-dark .sample-boundary p { color: #cdb991; }
.home-dark .policy-nav,
.home-dark .policy-nav a,
.home-dark .policy-content > section { border-color: var(--home-line); }
.home-dark .policy-nav a:hover { color: var(--home-signal); }
.home-dark .policy-summary-grid > div,
.home-dark .launch-checklist span,
.home-dark .simple-policy-grid section {
  border: 1px solid var(--home-line);
  border-radius: 0;
  background: var(--home-surface);
}
.home-dark .policy-content p,
.home-dark .policy-content li,
.home-dark .simple-policy-grid p,
.home-dark .policy-row span { color: var(--home-muted); }
.home-dark .policy-table { border-color: var(--home-line); border-radius: 0; }
.home-dark .policy-row { border-color: var(--home-line); }
.home-dark .policy-row-head { background: var(--home-signal); color: var(--home-bg); }
.home-dark .policy-row-head span { color: rgba(11,12,11,.66); }
.home-dark .policy-note { border: 1px solid rgba(209,229,154,.24); border-radius: 0; background: rgba(209,229,154,.08); }
.home-dark .policy-callout { border: 1px solid var(--home-line); border-radius: 0; background: var(--home-surface-2); }

.home-dark .about-page { background: transparent; }
.home-dark .about-hero,
.home-dark .about-solution,
.home-dark .about-problem-grid,
.home-dark .about-problem-grid article,
.home-dark .about-boundary > div:last-child { border-color: var(--home-line); }
.home-dark .about-hero h1 span { color: var(--home-signal); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.home-dark .about-hero-copy p,
.home-dark .about-problem-grid p,
.home-dark .about-solution li p,
.home-dark .about-boundary p { color: var(--home-muted); }
.home-dark .about-hero-copy strong { color: var(--home-ink); }
.home-dark .about-section-heading > span,
.home-dark .about-problem-grid span,
.home-dark .about-solution li > span,
.home-dark .about-boundary > div:first-child > span { color: var(--home-signal); }
.home-dark .about-problem-grid article:nth-child(2) { background: rgba(173,136,255,.09); }
.home-dark .about-problem-grid article:nth-child(3) { background: rgba(255,103,163,.08); }
.home-dark .about-solution { background: #080908; }
.home-dark .about-solution ol,
.home-dark .about-solution li { border-color: var(--home-line); }

.home-dark .advertise-promise { border: 1px solid var(--home-line); border-radius: 0; background: var(--home-surface); box-shadow: 12px 12px 0 rgba(209,229,154,.11); }
.home-dark .advertise-promise > span,
.home-dark .advertise-promise b,
.home-dark .ad-product-list span { color: var(--home-signal); }
.home-dark .ad-placement-card,
.home-dark .ad-measure-grid > div {
  border-color: var(--home-line);
  border-radius: 0;
  background: var(--home-surface);
}
.home-dark .ad-placement-card:nth-child(2) { border-top: 4px solid #ff67a3; }
.home-dark .ad-placement-card:nth-child(3) { border-top: 4px solid #ad88ff; }
.home-dark .ad-placement-card-wide { border-top: 4px solid var(--home-signal); }
.home-dark .ad-placement-card > span,
.home-dark .ad-measure-grid > div > span,
.home-dark .ad-card-arrow { color: var(--home-signal); }
.home-dark .ad-placement-card p,
.home-dark .ad-measure-grid p { color: var(--home-muted); }
.home-dark .ad-placement-demo { border-color: var(--home-line); border-radius: 0; background: #0c0e0b; }
.home-dark .ad-placement-demo i { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .ad-location-chip { border: 1px solid var(--home-line); border-radius: 0; background: transparent; color: var(--home-signal); }
.home-dark .advertise-model-section { border-block: 1px solid var(--home-line); background: #070807; }
.home-dark .ad-placement-link:hover { border-color: var(--home-signal); box-shadow: 10px 10px 0 rgba(255,255,255,.06); }

.home-dark .sample-page-label { border-radius: 0; }
.home-dark .sample-hero-meta span { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-muted); }
.home-dark .sample-detail-visual { border: 1px solid var(--home-line); border-radius: 0; box-shadow: 14px 14px 0 rgba(209,229,154,.12); }
.home-dark .sample-summary-strip { background: var(--home-signal); color: var(--home-bg); }
.home-dark .sample-summary-strip .page-shell > div { border-right-color: rgba(11,12,11,.22); }
.home-dark .sample-summary-strip span { color: rgba(11,12,11,.6); }
.home-dark .sample-purpose-grid article { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); }
.home-dark .sample-purpose-grid article:nth-child(2) { background: rgba(173,136,255,.13); }
.home-dark .sample-learning-section { border-block: 1px solid var(--home-line); background: #070807; }
.home-dark .sample-work-section { border-block: 1px solid var(--home-line); background: #10120f; }
.home-dark .sample-work-heading h2 { color: var(--home-ink); }
.home-dark .sample-work-heading > p,
.home-dark .sample-work-section .generated-image-note { color: var(--home-muted); }
.home-dark .sample-gallery-item,
.home-dark .sample-profile-image { border-radius: 0; }
.home-dark .sample-profile-card { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); box-shadow: none; }
.home-dark .sample-profile-handle { color: var(--home-signal) !important; }
.home-dark .sample-production-note { border: 1px solid var(--home-signal); border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .sample-production-note > div:first-child > span,
.home-dark .sample-production-note h2 { color: var(--home-bg); }
.home-dark .sample-production-note p,
.home-dark .sample-production-actions small { color: rgba(11,12,11,.62); }
.home-dark .sample-production-note .button-primary { border-color: var(--home-bg); background: var(--home-bg); color: var(--home-signal); }
.home-dark .sample-production-note .button-light { border-color: rgba(11,12,11,.3); color: var(--home-bg); }

.home-dark .dialog { border: 1px solid var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-ink); }
.home-dark .dialog::backdrop { background: rgba(0,0,0,.82); }
.home-dark .dialog-icon { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .dialog-close { border-radius: 0; background: var(--home-surface-2); color: var(--home-ink); }
.home-dark .dialog-note,
.home-dark .external-contact-card { border: 1px solid var(--home-line); border-radius: 0; background: #0d0f0c; }
.home-dark .external-contact-card strong { color: var(--home-signal); }
.home-dark .share-format-switch { border-radius: 0; background: #0d0f0c; }
.home-dark .share-format-switch button { border-radius: 0; }
.home-dark .share-format-switch button.active { background: var(--home-signal); color: var(--home-bg); box-shadow: none; }
.home-dark .share-preview { border: 1px solid var(--home-line); border-radius: 0; background: #080908; }
.home-dark .toast { border: 1px solid var(--home-signal); border-radius: 0; background: var(--home-surface); color: var(--home-ink); }

.home-dark .auth-layout,
.home-dark .dashboard-loading,
.home-dark .auth-required-card,
.home-dark .dashboard-card {
  border-color: var(--home-line);
  border-radius: 0;
  background: var(--home-surface);
  color: var(--home-ink);
  box-shadow: none;
}
.home-dark .auth-context { background: radial-gradient(circle at 90% 10%, rgba(209,229,154,.16), transparent 37%), #070807; }
.home-dark .auth-role-options legend { color: var(--home-muted); }
.home-dark .auth-beta-notice { border-color: var(--home-signal); background: rgba(209,229,154,.08); }
.home-dark .auth-beta-notice span { color: var(--home-signal); }
.home-dark .auth-beta-notice p { color: var(--home-muted); }
.home-dark .auth-role-options label > span { border-color: var(--home-line); border-radius: 0; background: #0a0b0a; }
.home-dark .auth-role-options small { color: var(--home-muted); }
.home-dark .auth-role-options input:checked + span { border-color: var(--home-signal); background: rgba(209,229,154,.09); box-shadow: inset 0 -3px 0 var(--home-signal); }
.home-dark .device-session-list,
.home-dark .device-session-item { border-color: var(--home-line); }
.home-dark .device-session-item.current { border-color: var(--home-signal); }
.home-dark .device-session-kind { color: var(--home-signal); }
.home-dark .device-session-item strong em { border-radius: 0; background: var(--home-signal); color: var(--home-bg); }
.home-dark .device-session-item small,
.home-dark .device-session-privacy,
.home-dark .device-session-empty span { color: var(--home-muted); }
.home-dark .member-dashboard-card,
.home-dark .member-dashboard-note { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-ink); }
.home-dark .member-dashboard-card > span { color: var(--home-signal); }
.home-dark .member-dashboard-card > p,
.home-dark .member-dashboard-note p { color: var(--home-muted); }
.home-dark .member-dashboard-primary { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.home-dark .member-dashboard-primary > span,
.home-dark .member-dashboard-primary > p { color: rgba(11,12,11,.62); }
.home-dark .recent-inquiry-list { border-color: var(--home-line); }
.home-dark .recent-inquiry-list > a { border-color: var(--home-line); color: var(--home-ink); }
.home-dark .recent-inquiry-list small,
.home-dark .account-deletion-status span { color: var(--home-muted); }
.home-dark .recent-inquiry-list b { color: var(--home-signal); }
.home-dark .account-deletion-card { border-color: rgba(255,116,116,.34); }
.home-dark .account-deletion-status { border-left-color: var(--home-signal); background: rgba(209,229,154,.06); }

/* Creator application support and class-writing guide */
.creator-support { margin-top: 118px; padding-top: 54px; border-top: 1px solid var(--home-line); }
.creator-support-heading { margin-bottom: 34px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .65fr); gap: 70px; align-items: end; }
.creator-support-heading h2 { margin: 0; color: var(--home-ink); font-size: clamp(46px, 6.2vw, 78px); line-height: 1.01; letter-spacing: -.07em; }
.creator-support-heading > div:last-child { display: grid; justify-items: start; gap: 22px; }
.creator-support-heading > div:last-child p { margin: 0; color: var(--home-muted); font-size: 15px; line-height: 1.75; }
.home-dark .register-page { padding-top: 82px; color: var(--home-ink); }
.home-dark .register-intro h1 { color: var(--home-ink); }
.home-dark .register-intro > p:not(.eyebrow) { color: var(--home-muted); line-height: 1.7; }
.home-dark .register-gate { border-color: var(--home-line); border-radius: 0; background: rgba(209,229,154,.08); }
.home-dark .register-gate strong { color: var(--home-signal); }
.home-dark .register-profile-link { color: var(--home-signal); }
.home-dark .form-progress { border-radius: 0; background: #080908; }
.home-dark .form-progress span { border-radius: 0; background: var(--home-signal); }
.home-dark .step-nav-item { border: 1px solid transparent; border-radius: 0; }
.home-dark .step-nav-item.done { color: var(--home-ink); }
.home-dark .step-nav-item.done .step-num { background: #ad88ff; color: var(--home-bg); }
.home-dark .step-nav-item.done .step-num svg { width: 14px; height: 14px; }
.home-dark .form-step-header p,
.home-dark .field small { color: var(--home-muted); }

.register-calendar { overflow: hidden; border: 1px solid var(--home-line); background: #090a09; }
.calendar-head { min-height: 82px; padding: 18px 20px; display: flex; justify-content: space-between; align-items: center; gap: 18px; border-bottom: 1px solid var(--home-line); }
.calendar-head > div:first-child { display: grid; gap: 5px; }
.calendar-head > div:first-child span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.calendar-head strong { color: var(--home-ink); font-size: 21px; }
.calendar-head > div:last-child { display: flex; }
.calendar-head button { width: 44px; height: 44px; border: 1px solid var(--home-line); background: transparent; color: var(--home-ink); cursor: pointer; }
.calendar-head button + button { border-left: 0; }
.calendar-head button:hover:not(:disabled) { background: var(--home-signal); color: var(--home-bg); }
.calendar-head button:disabled { color: #555950; }
.calendar-week,
.calendar-grid { display: grid; grid-template-columns: repeat(7, 1fr); }
.calendar-week { border-bottom: 1px solid var(--home-line); background: rgba(255,255,255,.025); }
.calendar-week span { padding: 10px 4px; color: var(--home-muted); font-size: 9px; font-weight: 800; text-align: center; }
.calendar-grid { padding: 10px; gap: 5px; }
.calendar-day,
.calendar-blank { min-height: 58px; }
.calendar-day { position: relative; padding: 8px; display: grid; align-content: space-between; justify-items: start; border: 1px solid transparent; background: rgba(255,255,255,.025); color: var(--home-ink); cursor: pointer; }
.calendar-day:hover:not(:disabled) { border-color: var(--home-signal); }
.calendar-day.today { border-color: rgba(173,136,255,.72); }
.calendar-day.selected { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.calendar-day:disabled { background: transparent; color: #484b45; }
.calendar-day > span { font-size: 12px; font-weight: 800; }
.calendar-day > i { font-style: normal; font-size: 8px; font-weight: 900; }
.calendar-selection { padding: 15px 20px 18px; display: grid; gap: 10px; border-top: 1px solid var(--home-line); }
.calendar-selection > span { color: var(--home-muted); font-size: 10px; font-weight: 800; }
.calendar-selection > div { display: flex; flex-wrap: wrap; gap: 6px; }
.calendar-selection button { padding: 8px 10px; border: 1px solid var(--home-signal); background: rgba(209,229,154,.08); color: var(--home-signal); font-size: 10px; cursor: pointer; }
.calendar-selection small { color: var(--home-muted); font-size: 11px; }

.curriculum-editor { padding: 20px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; border: 1px solid var(--home-line); background: #090a09; }
.curriculum-editor-head { grid-column: 1 / -1; margin-bottom: 5px; display: flex; justify-content: space-between; gap: 18px; }
.curriculum-editor-head span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.curriculum-editor-head strong { color: var(--home-ink); font-size: 13px; }
.curriculum-editor .field textarea { min-height: 150px; }
.guide-preview { border-radius: 0; background: #090a09; }
.guide-preview .preview-image { aspect-ratio: 16/9; }
.guide-preview .preview-image img { object-position: center 38%; }
.guide-preview-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.guide-preview-tags span { padding: 7px 9px; border: 1px solid var(--home-line); color: var(--home-signal); font-size: 10px; font-weight: 800; }
.guide-preview-tagline { margin: 22px 0 0 !important; color: var(--home-muted) !important; font-size: 14px; }
.guide-preview-curriculum { margin: 26px 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.guide-preview-curriculum > div { min-height: 122px; padding: 15px; border-right: 1px solid var(--home-line); }
.guide-preview-curriculum > div:last-child { border-right: 0; }
.guide-preview-curriculum span { display: block; margin-bottom: 23px; color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; }
.guide-preview-curriculum strong { color: var(--home-ink); font-size: 12px; line-height: 1.55; }
.guide-preview .preview-summary { grid-template-columns: repeat(3, 1fr); }
.guide-preview .preview-summary div { border: 1px solid var(--home-line); border-radius: 0; background: rgba(255,255,255,.025); }
.guide-preview .preview-summary span { color: var(--home-muted); }
.guide-preview .preview-summary strong { display: block; margin-top: 5px; color: var(--home-ink); line-height: 1.45; }
.guide-support-note { margin-top: 22px; padding: 17px; display: grid; grid-template-columns: auto 1fr; gap: 18px; border: 1px solid var(--home-signal); background: rgba(209,229,154,.08); }
.guide-support-note strong { color: var(--home-signal); font-size: 12px; }
.guide-support-note span { color: var(--home-muted); font-size: 11px; line-height: 1.55; }

@media (max-width: 820px) {
  .home-dark .page-hero { padding-top: 68px; }
  .home-dark .page-hero::after { display: none; }
  .home-dark .search-toolbar,
  .home-dark .pro-search-bar { box-shadow: none; }
  .home-dark .policy-nav a { border-color: var(--home-line); border-radius: 0; background: var(--home-surface); }
  .home-dark .application-stage-note { grid-template-columns: 1fr; }
  .home-dark .application-stage-note > span { border-right: 0; border-bottom: 1px solid var(--home-signal); }
  .home-dark .onboarding-steps > div { border-right: 1px solid var(--home-line); border-bottom: 0; }
  .home-dark .onboarding-steps > div:last-child { border-bottom: 1px solid var(--home-line); }
  .creator-support-heading { grid-template-columns: 1fr; gap: 26px; }
  .curriculum-editor { grid-template-columns: 1fr; }
  .curriculum-editor-head { grid-column: auto; }
}

@media (max-width: 580px) {
  .home-dark .page-hero { padding-top: 52px; padding-bottom: 42px; }
  .home-dark .page-hero h1 { font-size: 46px; }
  .home-dark .market-tabs a { min-width: 0; flex: 1; }
  .home-dark .results-head { align-items: flex-start; }
  .home-dark .results-head p { max-width: 54%; text-align: right; }
  .home-dark .profile-hero,
  .home-dark .educator-form,
  .home-dark .form-card { box-shadow: 7px 7px 0 rgba(255,255,255,.05); }
  .home-dark .profile-stats-bar { gap: 0; }
  .home-dark .application-stage-note > span,
  .home-dark .application-stage-note > div { padding: 16px; }
  .home-dark .verified-badge,
  .home-dark .pending-badge { font-size: 9px; }
  .creator-support { margin-top: 82px; }
  .creator-support-heading h2 { font-size: 46px; }
  .calendar-grid { padding: 6px; gap: 3px; }
  .calendar-day,
  .calendar-blank { min-height: 47px; }
  .calendar-day { padding: 6px; }
  .duration-readout { grid-template-columns: 1fr; gap: 5px; }
  .detail-opening { flex-direction: column; gap: 4px; }
  .detail-opening span { text-align: left; }
  .guide-preview-curriculum { grid-template-columns: 1fr; }
  .guide-preview-curriculum > div { min-height: 0; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .guide-preview-curriculum > div:last-child { border-bottom: 0; }
  .guide-preview-curriculum span { margin-bottom: 10px; }
  .guide-preview .preview-summary { grid-template-columns: 1fr 1fr; }
  .guide-support-note { grid-template-columns: 1fr; gap: 6px; }
}

/* Four-page class template and authoring manual */
.home-dark .class-facts .fact-time { border-color: rgba(255,103,163,.38); background: rgba(255,103,163,.1); color: #ff9fc3; }

/* Instructor pricing guide */
.pricing-guide-page { padding-bottom: 120px; }
.pricing-hero { padding-top: 82px; padding-bottom: 88px; }
.pricing-hero-grid { margin-top: 28px; display: grid; grid-template-columns: minmax(0, 1.16fr) minmax(360px, .84fr); gap: 76px; align-items: end; }
.pricing-hero h1 { max-width: 900px; margin: 0; color: var(--home-ink); font-size: clamp(58px, 7vw, 98px); line-height: .94; letter-spacing: -.078em; word-break: keep-all; }
.pricing-hero h1 em { display: inline-block; color: var(--home-signal); font-family: Georgia, "Times New Roman", serif; font-size: .84em; font-weight: 400; letter-spacing: -.09em; white-space: normal; }
.pricing-hero-copy > p { margin: 0; color: var(--home-ink); font-size: 17px; line-height: 1.76; word-break: keep-all; }
.pricing-version { margin-top: 28px; padding-top: 18px; display: grid; gap: 7px; border-top: 1px solid var(--home-line); }
.pricing-version span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.pricing-version strong { color: var(--home-ink); font-size: 14px; }
.pricing-version small { color: var(--home-muted); font-size: 10px; line-height: 1.6; word-break: keep-all; }
.pricing-boundary { margin-top: 54px; padding: 26px 28px; display: grid; grid-template-columns: minmax(210px, .45fr) minmax(0, 1.55fr); gap: 34px; border: 1px solid var(--home-signal); background: rgba(209,229,154,.07); }
.pricing-boundary strong { color: var(--home-signal); font-size: 17px; line-height: 1.45; word-break: keep-all; }
.pricing-boundary p { margin: 0; color: var(--home-ink); font-size: 12px; line-height: 1.75; word-break: keep-all; }

.pricing-index { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.pricing-index a { min-height: 112px; padding: 18px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--home-line); background: #090a09; color: var(--home-ink); transition: background .2s ease, color .2s ease; }
.pricing-index a:last-child { border-right: 0; }
.pricing-index span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.pricing-index strong { font-size: 14px; }
.pricing-index a:hover { background: var(--home-signal); color: #080908; }
.pricing-index a:hover span { color: #080908; }

.pricing-section { padding-top: 110px; padding-bottom: 110px; border-top: 1px solid var(--home-line); scroll-margin-top: 88px; }
.pricing-section:first-of-type { margin-top: 80px; }
.pricing-section-head { margin-bottom: 38px; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr); gap: 70px; align-items: end; }
.pricing-section-head h2 { max-width: 760px; margin: 13px 0 0; color: var(--home-ink); font-size: clamp(42px, 5vw, 70px); line-height: 1.02; letter-spacing: -.065em; word-break: keep-all; }
.pricing-section-head > p { margin: 0; color: var(--home-muted); font-size: 14px; line-height: 1.78; word-break: keep-all; }

.pricing-type-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.pricing-type-grid article { min-height: 310px; padding: 25px; display: flex; flex-direction: column; grid-column: span 2; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.pricing-type-grid article:nth-child(3) { border-right: 0; }
.pricing-type-grid article:nth-child(n+4) { grid-column: span 3; border-top: 1px solid var(--home-line); }
.pricing-type-grid article:last-child { border-right: 0; }
.pricing-type-grid span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.pricing-type-grid h3 { margin: auto 0 13px; color: var(--home-ink); font-size: 25px; letter-spacing: -.045em; word-break: keep-all; }
.pricing-type-grid p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.72; word-break: keep-all; }
.pricing-type-grid p strong { margin-bottom: 8px; display: block; color: var(--home-ink); font-size: 15px; }
.pricing-type-grid small { margin-top: 22px; padding-top: 14px; border-top: 1px solid var(--home-line); color: #9fe8f1; font-size: 10px; line-height: 1.55; }

.pricing-formula { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1.05fr); align-items: stretch; border: 1px solid var(--home-line); background: #090a09; }
.pricing-formula > div { min-height: 270px; padding: 24px; display: flex; flex-direction: column; }
.pricing-formula > b { width: 42px; display: grid; place-items: center; border-right: 1px solid var(--home-line); border-left: 1px solid var(--home-line); color: var(--home-signal); font: 400 25px/1 Georgia, serif; }
.pricing-formula span { color: #8ce9f2; font: 900 10px/1 Arial, sans-serif; }
.pricing-formula strong { margin-top: auto; color: var(--home-ink); font-size: 20px; line-height: 1.35; word-break: keep-all; }
.pricing-formula p { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }
.pricing-formula .pricing-formula-result { background: rgba(209,229,154,.1); }
.pricing-formula .pricing-formula-result span,
.pricing-formula .pricing-formula-result strong { color: var(--home-signal); }
.pricing-basis-grid { margin-top: 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.pricing-basis-grid article { min-height: 220px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.pricing-basis-grid article:last-child { border-right: 0; }
.pricing-basis-grid span { color: #8ce9f2; font: 900 10px/1 Arial, sans-serif; }
.pricing-basis-grid strong { margin-top: auto; color: var(--home-ink); font-size: 17px; line-height: 1.45; word-break: keep-all; }
.pricing-basis-grid p { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.62; word-break: keep-all; }
.pricing-example { margin-top: 18px; padding: 24px 26px; display: grid; grid-template-columns: minmax(140px, .35fr) minmax(0, 1.65fr); gap: 30px; border: 1px solid rgba(79,217,232,.45); background: rgba(79,217,232,.055); }
.pricing-example > span { color: #8ce9f2; font: 900 10px/1.4 Arial, sans-serif; letter-spacing: .08em; }
.pricing-example strong { color: var(--home-ink); font-size: 16px; }
.pricing-example p { margin: 8px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.7; word-break: keep-all; }

.pricing-launch-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.pricing-launch-grid article { min-height: 300px; padding: 28px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.pricing-launch-grid article:last-child { border-right: 0; }
.pricing-launch-grid span { color: #8ce9f2; font: 900 10px/1 Arial, sans-serif; letter-spacing: .09em; }
.pricing-launch-grid strong { margin-top: 52px; color: var(--home-signal); font-size: clamp(38px, 4vw, 58px); letter-spacing: -.06em; }
.pricing-launch-grid h3 { margin: auto 0 12px; color: var(--home-ink); font-size: 20px; line-height: 1.35; word-break: keep-all; }
.pricing-launch-grid p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.7; word-break: keep-all; }

.pricing-evidence-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.pricing-evidence-summary > div { min-height: 230px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.pricing-evidence-summary > div:last-child { border-right: 0; }
.pricing-evidence-summary span { color: var(--home-signal); font-size: clamp(28px, 3vw, 42px); font-weight: 900; letter-spacing: -.055em; white-space: nowrap; }
.pricing-evidence-summary strong { margin-top: auto; color: var(--home-ink); font-size: 15px; line-height: 1.45; }
.pricing-evidence-summary small { margin-top: 8px; color: var(--home-muted); font-size: 10px; line-height: 1.55; }
.pricing-evidence-summary.pricing-evidence-compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pricing-table-wrap { margin-top: 18px; overflow-x: auto; border: 1px solid var(--home-line); }
.pricing-data-table { width: 100%; min-width: 820px; border-collapse: collapse; color: var(--home-ink); background: #090a09; }
.pricing-data-table caption { padding: 18px 20px; border-bottom: 1px solid var(--home-line); color: var(--home-signal); font-size: 11px; font-weight: 900; text-align: left; }
.pricing-data-table th,
.pricing-data-table td { padding: 19px 20px; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); font-size: 11px; line-height: 1.62; text-align: left; vertical-align: top; }
.pricing-data-table tr:last-child > * { border-bottom: 0; }
.pricing-data-table tr > *:last-child { border-right: 0; }
.pricing-data-table thead th { color: #8ce9f2; font-size: 9px; letter-spacing: .07em; }
.pricing-data-table tbody th { width: 19%; color: var(--home-ink); font-size: 12px; }
.pricing-data-table td { color: var(--home-muted); }
.pricing-data-warning { margin-top: 18px; padding: 26px 28px; display: grid; grid-template-columns: minmax(240px, .5fr) minmax(0, 1.5fr); gap: 34px; border: 1px solid #ff9850; background: rgba(255,152,80,.065); }
.pricing-data-warning strong { color: #ffc49b; font-size: 17px; line-height: 1.45; }
.pricing-data-warning p { margin: 0; color: var(--home-ink); font-size: 12px; line-height: 1.75; word-break: keep-all; }

.pricing-checklist { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); list-style: none; }
.pricing-checklist li { min-height: 190px; padding: 22px; display: grid; grid-template-columns: 38px 1fr; gap: 14px; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); }
.pricing-checklist li:nth-child(3n) { border-right: 0; }
.pricing-checklist li:nth-last-child(-n+3) { border-bottom: 0; }
.pricing-checklist li > span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; }
.pricing-checklist strong { color: var(--home-ink); font-size: 17px; }
.pricing-checklist p { margin: 12px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }
.pricing-actions { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 10px; }

.pricing-method-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.pricing-method-grid article { min-height: 235px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.pricing-method-grid article:last-child { border-right: 0; }
.pricing-method-grid span { color: var(--home-signal); font: 900 13px/1 Arial, sans-serif; }
.pricing-method-grid strong { margin-top: auto; color: var(--home-ink); font-size: 20px; }
.pricing-method-grid p { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }
.pricing-source-list { margin-top: 36px; border-top: 1px solid var(--home-line); }
.pricing-source-list a { min-height: 90px; padding: 20px 0; display: grid; grid-template-columns: minmax(180px, .55fr) minmax(260px, 1.25fr) auto; gap: 24px; align-items: center; border-bottom: 1px solid var(--home-line); }
.pricing-source-list span { color: var(--home-signal); font-size: 10px; font-weight: 900; }
.pricing-source-list strong { color: var(--home-ink); font-size: 14px; line-height: 1.5; word-break: keep-all; }
.pricing-source-list em { color: var(--home-muted); font-size: 10px; font-style: normal; font-weight: 800; }
.pricing-source-list a:hover strong,
.pricing-source-list a:hover em { color: var(--home-signal); }
.pricing-report-note { margin-top: 36px; padding: 26px 28px; display: grid; grid-template-columns: minmax(150px, .35fr) minmax(0, 1.65fr); gap: 30px; border: 1px solid var(--home-signal); background: rgba(209,229,154,.06); }
.pricing-report-note > span { color: var(--home-signal); font: 900 10px/1.4 Arial, sans-serif; letter-spacing: .09em; }
.pricing-report-note strong { color: var(--home-ink); font-size: 17px; }
.pricing-report-note p { margin: 9px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.7; word-break: keep-all; }

@media (max-width: 1050px) {
  .pricing-hero-grid,
  .pricing-section-head { grid-template-columns: 1fr; gap: 35px; }
  .pricing-formula { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pricing-formula > b { display: none; }
  .pricing-formula > div { border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
  .pricing-formula > div:nth-of-type(2n) { border-right: 0; }
  .pricing-formula > div:nth-last-of-type(-n+2) { border-bottom: 0; }
  .pricing-evidence-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pricing-evidence-summary > div:nth-child(2) { border-right: 0; }
  .pricing-evidence-summary > div:nth-child(-n+2) { border-bottom: 1px solid var(--home-line); }
  .pricing-evidence-summary.pricing-evidence-compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pricing-evidence-summary.pricing-evidence-compact > div,
  .pricing-evidence-summary.pricing-evidence-compact > div:nth-child(-n+2) { border-bottom: 0; }
  .pricing-evidence-summary.pricing-evidence-compact > div:nth-child(2) { border-right: 1px solid var(--home-line); }
}

@media (max-width: 820px) {
  .pricing-hero { padding-top: 58px; padding-bottom: 66px; }
  .pricing-hero h1 { font-size: 54px; }
  .pricing-boundary,
  .pricing-data-warning { grid-template-columns: 1fr; gap: 12px; }
  .pricing-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pricing-index a { min-height: 96px; border-bottom: 1px solid var(--home-line); }
  .pricing-index a:nth-child(2n) { border-right: 0; }
  .pricing-index a:last-child { grid-column: 1 / -1; border-bottom: 0; }
  .pricing-section { padding-top: 82px; padding-bottom: 82px; }
  .pricing-section:first-of-type { margin-top: 62px; }
  .pricing-type-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pricing-type-grid article,
  .pricing-type-grid article:nth-child(n+4) { min-height: 275px; grid-column: span 1; border-top: 0; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
  .pricing-type-grid article:nth-child(2n) { border-right: 0; }
  .pricing-type-grid article:last-child { grid-column: 1 / -1; border-right: 0; border-bottom: 0; }
  .pricing-basis-grid,
  .pricing-method-grid,
  .pricing-launch-grid,
  .pricing-evidence-summary.pricing-evidence-compact { grid-template-columns: 1fr; }
  .pricing-basis-grid article,
  .pricing-method-grid article { min-height: 185px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .pricing-basis-grid article:last-child,
  .pricing-method-grid article:last-child { border-bottom: 0; }
  .pricing-launch-grid article { min-height: 245px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .pricing-launch-grid article:last-child { border-bottom: 0; }
  .pricing-evidence-summary.pricing-evidence-compact > div { border-right: 0; border-bottom: 1px solid var(--home-line); }
  .pricing-evidence-summary.pricing-evidence-compact > div:last-child { border-bottom: 0; }
  .pricing-example,
  .pricing-report-note { grid-template-columns: 1fr; gap: 10px; }
  .pricing-checklist { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pricing-checklist li,
  .pricing-checklist li:nth-child(3n) { border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
  .pricing-checklist li:nth-child(2n) { border-right: 0; }
  .pricing-checklist li:nth-last-child(-n+2) { border-bottom: 0; }
  .pricing-source-list a { grid-template-columns: 1fr auto; gap: 8px 18px; }
  .pricing-source-list strong { grid-column: 1 / -1; grid-row: 2; }
}

@media (max-width: 580px) {
  .pricing-hero h1 { font-size: 45px; }
  .pricing-hero-copy > p { font-size: 15px; }
  .pricing-boundary { margin-top: 38px; padding: 20px; }
  .pricing-section-head h2 { font-size: 39px; }
  .pricing-type-grid,
  .pricing-formula,
  .pricing-evidence-summary,
  .pricing-checklist { grid-template-columns: 1fr; }
  .pricing-type-grid article,
  .pricing-type-grid article:nth-child(n+4),
  .pricing-type-grid article:last-child,
  .pricing-formula > div,
  .pricing-formula > div:nth-of-type(2n),
  .pricing-evidence-summary > div,
  .pricing-evidence-summary > div:nth-child(2),
  .pricing-checklist li,
  .pricing-checklist li:nth-child(2n),
  .pricing-checklist li:nth-child(3n),
  .pricing-checklist li:nth-last-child(-n+2) { min-height: 0; grid-column: auto; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .pricing-type-grid article:last-child,
  .pricing-formula > div:last-child,
  .pricing-evidence-summary > div:last-child,
  .pricing-checklist li:last-child { border-bottom: 0; }
  .pricing-type-grid h3,
  .pricing-formula strong,
  .pricing-evidence-summary strong,
  .pricing-method-grid strong { margin-top: 48px; }
  .pricing-evidence-summary span { white-space: normal; }
  .pricing-actions .button { width: 100%; }
  .pricing-source-list a { min-height: 110px; }
}

/* Site guide hub and general-member guide */
.site-guide-page,
.member-start-guide { padding-bottom: 120px; }

.site-guide-hero { padding-top: 82px; padding-bottom: 100px; }
.site-guide-hero-grid { margin-top: 28px; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(340px, .8fr); gap: 76px; align-items: end; }
.site-guide-hero h1 { max-width: 880px; margin: 0; color: var(--home-ink); font-size: clamp(56px, 7.2vw, 100px); line-height: .94; letter-spacing: -.078em; }
.site-guide-hero h1 em { display: inline-block; color: #ff67a3; font-family: Georgia, "Times New Roman", serif; font-size: .82em; font-weight: 400; letter-spacing: -.095em; white-space: nowrap; }
.site-guide-hero-grid > div:last-child > p { margin: 0; color: var(--home-ink); font-size: 17px; line-height: 1.72; word-break: keep-all; }
.site-guide-hero-grid > div:last-child > span { margin-top: 24px; padding-top: 17px; display: block; border-top: 1px solid var(--home-line); color: var(--home-signal); font-size: 12px; font-weight: 800; }

.guide-audience { padding-top: 110px; padding-bottom: 110px; border-top: 1px solid var(--home-line); }
.guide-audience-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.guide-audience-card { min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--home-line); background: #090a09; }
.guide-audience-card-head { min-height: 264px; padding: 30px; display: flex; flex-direction: column; border-bottom: 1px solid var(--home-line); }
.guide-audience-card-head > span { font: 900 10px/1 Arial, sans-serif; letter-spacing: .1em; }
.guide-audience-member .guide-audience-card-head > span { color: #8ca0ff; }
.guide-audience-creator .guide-audience-card-head > span { color: var(--home-signal); }
.guide-audience-card-head > strong { margin-top: auto; color: var(--home-ink); font-size: clamp(32px, 3.3vw, 50px); line-height: 1.03; letter-spacing: -.055em; }
.guide-audience-card-head > p { max-width: 530px; margin: 14px 0 0; color: var(--home-muted); font-size: 13px; line-height: 1.67; word-break: keep-all; }
.guide-audience-card ol { margin: 0; padding: 0 30px; list-style: none; }
.guide-audience-card li { min-height: 112px; padding: 22px 0; display: grid; grid-template-columns: 42px 1fr; gap: 18px; border-bottom: 1px solid var(--home-line); }
.guide-audience-card li > span { padding-top: 4px; font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.guide-audience-member li > span { color: #8ca0ff; }
.guide-audience-creator li > span { color: var(--home-signal); }
.guide-audience-card li strong { color: var(--home-ink); font-size: 16px; }
.guide-audience-card li p { margin: 7px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.55; }
.guide-audience-cta { min-height: 80px; margin-top: auto; padding: 0 30px; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: #0b0c0b; font-size: 16px; font-weight: 900; transition: filter .2s ease; }
.guide-audience-cta:hover { filter: brightness(1.1); }
.guide-audience-member .guide-audience-cta { background: #5d78ff; color: #fff; }
.guide-audience-creator .guide-audience-cta { background: var(--home-signal); }
.guide-audience-cta svg { width: 22px; }

.guide-standards-intro {
  padding-top: 100px;
  padding-bottom: 100px;
  display: grid;
  grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr);
  gap: 34px 65px;
  border-top: 1px solid var(--home-line);
}
.guide-standards-intro h2 { max-width: 520px; margin: 12px 0 18px; color: var(--home-ink); font-size: clamp(38px, 4.2vw, 64px); line-height: 1.02; letter-spacing: -.06em; word-break: keep-all; }
.guide-standards-intro > div:first-child > p:last-child { max-width: 520px; margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.72; word-break: keep-all; }
.guide-standards-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.guide-standards-points article { min-height: 250px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.guide-standards-points article:last-child { border-right: 0; }
.guide-standards-points span { color: #ff67a3; font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.guide-standards-points strong { margin-top: auto; color: var(--home-ink); font-size: 18px; line-height: 1.35; word-break: keep-all; }
.guide-standards-points p { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.62; word-break: keep-all; }
.guide-standards-cta { grid-column: 2; min-height: 76px; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #ff67a3; background: rgba(255,103,163,.08); color: #ff9fc3; font-size: 15px; font-weight: 900; transition: background .2s ease, color .2s ease; }
.guide-standards-cta:hover { background: #ff67a3; color: #080908; }
.guide-standards-cta svg { width: 22px; }

.guide-field-rules {
  padding-top: 100px;
  padding-bottom: 100px;
  display: grid;
  grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr);
  gap: 34px 65px;
  border-top: 1px solid var(--home-line);
}
.guide-field-rules h2 { max-width: 520px; margin: 12px 0 18px; color: var(--home-ink); font-size: clamp(38px, 4.2vw, 64px); line-height: 1.02; letter-spacing: -.06em; word-break: keep-all; }
.guide-field-rules > div:first-child > p:last-child { max-width: 520px; margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.72; word-break: keep-all; }
.guide-field-rules-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.guide-field-rules-points article { min-height: 250px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.guide-field-rules-points article:last-child { border-right: 0; }
.guide-field-rules-points span { color: #4fd9e8; font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.guide-field-rules-points strong { margin-top: auto; color: var(--home-ink); font-size: 18px; line-height: 1.35; word-break: keep-all; }
.guide-field-rules-points p { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.62; word-break: keep-all; }
.guide-field-rules-cta { grid-column: 2; min-height: 76px; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #4fd9e8; background: rgba(79,217,232,.07); color: #8ce9f2; font-size: 15px; font-weight: 900; transition: background .2s ease, color .2s ease; }
.guide-field-rules-cta:hover { background: #4fd9e8; color: #080908; }
.guide-field-rules-cta svg { width: 22px; }
.guide-tax-intro .eyebrow,
.guide-tax-intro .guide-field-rules-points span { color: #ffac70; }
.guide-tax-intro .guide-field-rules-cta { border-color: #ff9850; background: rgba(255,152,80,.07); color: #ffc49b; }
.guide-tax-intro .guide-field-rules-cta:hover { background: #ff9850; color: #080908; }

.guide-common { padding-top: 100px; padding-bottom: 80px; display: grid; grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr); gap: 65px; border-top: 1px solid var(--home-line); }
.guide-common h2 { margin: 12px 0 0; color: var(--home-ink); font-size: clamp(38px, 4.2vw, 64px); line-height: 1.02; letter-spacing: -.06em; }
.guide-common-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.guide-common-grid article { min-height: 225px; padding: 22px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.guide-common-grid article:last-child { border-right: 0; }
.guide-common-grid span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.guide-common-grid strong { margin-top: auto; color: var(--home-ink); font-size: 17px; }
.guide-common-grid p { margin: 9px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.58; }
.guide-policy-links { grid-column: 2; display: flex; flex-wrap: wrap; gap: 10px 24px; }
.guide-policy-links a { color: var(--home-muted); font-size: 11px; font-weight: 800; text-decoration: underline; text-underline-offset: 5px; }
.guide-policy-links a:hover { color: var(--home-signal); }

/* Verification, certification and operating standards */
.operating-standards-page { padding-bottom: 120px; }
.standards-hero { padding-top: 72px; padding-bottom: 96px; }
.standards-hero-grid { margin-top: 28px; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr); gap: 76px; align-items: end; }
.standards-hero h1 { max-width: 940px; margin: 0; color: var(--home-ink); font-size: clamp(54px, 6.8vw, 94px); line-height: .95; letter-spacing: -.075em; word-break: keep-all; }
.standards-hero h1 em { display: inline-block; color: #ff67a3; font-family: Georgia, "Times New Roman", serif; font-size: .82em; font-weight: 400; letter-spacing: -.09em; white-space: nowrap; }
.standards-hero-grid > div:last-child > p { margin: 0; color: var(--home-ink); font-size: 16px; line-height: 1.78; word-break: keep-all; }
.standards-version { margin-top: 28px; padding-top: 18px; display: grid; gap: 7px; border-top: 1px solid var(--home-line); }
.standards-version span { color: #ff9fc3; font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.standards-version strong { color: var(--home-ink); font-size: 14px; }
.standards-version small { color: var(--home-muted); font-size: 10px; line-height: 1.6; word-break: keep-all; }

.standards-index { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.standards-index a { min-height: 112px; padding: 18px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--home-line); background: #090a09; color: var(--home-ink); transition: background .2s ease, color .2s ease; }
.standards-index a:last-child { border-right: 0; }
.standards-index span { color: #ff67a3; font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.standards-index strong { font-size: 14px; }
.standards-index a:hover { background: #ff67a3; color: #080908; }
.standards-index a:hover span { color: #080908; }

.standards-section { padding-top: 110px; padding-bottom: 110px; border-top: 1px solid var(--home-line); scroll-margin-top: 88px; }
.standards-section:first-of-type { margin-top: 80px; }
.standards-section-head { margin-bottom: 38px; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr); gap: 70px; align-items: end; }
.standards-section-head h2 { max-width: 740px; margin: 13px 0 0; color: var(--home-ink); font-size: clamp(42px, 5vw, 70px); line-height: 1.02; letter-spacing: -.065em; word-break: keep-all; }
.standards-section-head > p { margin: 0; color: var(--home-muted); font-size: 14px; line-height: 1.75; word-break: keep-all; }

.standards-status-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.standards-status-grid article { min-height: 410px; padding: 26px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.standards-status-grid article:last-child { border-right: 0; }
.standards-status-grid article > span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.standards-status-mark { width: 54px; height: 54px; margin-top: 42px; display: grid; place-items: center; border: 1px solid var(--home-signal); color: var(--home-signal); font: 900 12px/1 Arial, sans-serif; }
.standards-status-grid h3 { margin: auto 0 12px; color: var(--home-ink); font-size: 25px; letter-spacing: -.04em; word-break: keep-all; }
.standards-status-grid p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.7; word-break: keep-all; }
.standards-status-grid small { margin-top: 20px; padding-top: 15px; border-top: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; line-height: 1.55; word-break: keep-all; }
.standards-status-grid .standards-status-future { background: rgba(255,103,163,.055); }
.standards-status-grid .standards-status-future > span { color: #ff9fc3; }
.standards-status-future .standards-status-mark { border-color: #ff67a3; color: #ff9fc3; }

.standards-scope-list { border-top: 1px solid var(--home-line); }
.standards-scope-list article { min-height: 118px; padding: 24px 0; display: grid; grid-template-columns: minmax(150px, .55fr) minmax(280px, 1.25fr) minmax(260px, 1.2fr); gap: 28px; align-items: center; border-bottom: 1px solid var(--home-line); }
.standards-scope-list span { color: #ff9fc3; font: 900 10px/1.4 Arial, sans-serif; letter-spacing: .04em; }
.standards-scope-list strong { color: var(--home-ink); font-size: 15px; line-height: 1.55; word-break: keep-all; }
.standards-scope-list p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }
.standards-non-guarantee { margin-top: 34px; padding: 28px; display: grid; grid-template-columns: minmax(180px, .45fr) minmax(0, 1.55fr); gap: 34px; border: 1px solid #ff67a3; background: rgba(255,103,163,.07); }
.standards-non-guarantee strong { color: #ff9fc3; font-size: 18px; line-height: 1.45; word-break: keep-all; }
.standards-non-guarantee p { margin: 0; color: var(--home-ink); font-size: 12px; line-height: 1.78; word-break: keep-all; }

.standards-class-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.standards-class-grid article { min-height: 260px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.standards-class-grid article:last-child { border-right: 0; }
.standards-class-grid span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; }
.standards-class-grid h3 { margin: auto 0 10px; color: var(--home-ink); font-size: 21px; letter-spacing: -.04em; word-break: keep-all; }
.standards-class-grid p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }
.standards-photo-rule { margin-top: 22px; padding: 24px; display: grid; grid-template-columns: 180px 1fr; gap: 28px; border: 1px solid rgba(209,229,154,.45); background: rgba(209,229,154,.055); }
.standards-photo-rule strong { color: var(--home-signal); font-size: 16px; }
.standards-photo-rule p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.72; word-break: keep-all; }

.standards-commercial-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.standards-commercial-grid article { min-height: 300px; padding: 26px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.standards-commercial-grid article:last-child { border-right: 0; }
.standards-commercial-grid span { color: #ff9fc3; font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.standards-commercial-grid h3 { margin: auto 0 11px; color: var(--home-ink); font-size: 22px; line-height: 1.35; letter-spacing: -.04em; word-break: keep-all; }
.standards-commercial-grid p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.68; word-break: keep-all; }
.standards-commercial-note { padding: 22px 26px; display: grid; grid-template-columns: minmax(220px, .55fr) minmax(0, 1.45fr); gap: 30px; border: 1px solid var(--home-line); border-top: 0; }
.standards-commercial-note strong { color: var(--home-ink); font-size: 14px; line-height: 1.5; word-break: keep-all; }
.standards-commercial-note p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }

.standards-contact { padding-top: 92px; padding-bottom: 92px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); gap: 70px; align-items: end; border: 1px solid var(--home-line); border-right: 0; border-left: 0; scroll-margin-top: 88px; }
.standards-contact h2 { margin: 13px 0 19px; color: var(--home-ink); font-size: clamp(42px, 5vw, 68px); line-height: 1.02; letter-spacing: -.065em; word-break: keep-all; }
.standards-contact > div:first-child > p:last-child { max-width: 720px; margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.75; word-break: keep-all; }
.standards-contact-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.standards-contact-actions .button { min-width: 0; justify-content: space-between; }
.standards-text-link { min-height: 46px; padding: 0 3px; display: flex; align-items: center; border-bottom: 1px solid var(--home-line); color: var(--home-muted); font-size: 11px; font-weight: 800; }
.standards-text-link:hover { color: var(--home-signal); }
.standards-contact-actions small { grid-column: 1 / -1; margin-top: 8px; color: var(--home-muted); font-size: 9px; line-height: 1.55; word-break: keep-all; }

/* Instructor class-fee and tax guide */
.tax-guide-page .standards-hero h1 em { color: #ff9850; }
.tax-guide-page .standards-version span,
.tax-guide-page .standards-index span,
.tax-guide-page .standards-status-grid article > span,
.tax-guide-page .standards-class-grid span,
.tax-guide-page .standards-scope-list span { color: #ffac70; }
.tax-guide-page .standards-status-mark { border-color: #ff9850; color: #ffac70; }
.tax-guide-index { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.tax-guide-index a:hover { background: #ff9850; }
.tax-guide-index a:hover span { color: #080908; }
.tax-caution { border-color: #ff9850; background: rgba(255,152,80,.065); }
.tax-caution strong { color: #ffc49b; }
.tax-references { align-items: start; }
.tax-reference-list { border-top: 1px solid var(--home-line); }
.tax-reference-list a { min-height: 90px; padding: 20px 0; display: grid; grid-template-columns: minmax(90px, .35fr) minmax(240px, 1.25fr) auto; gap: 24px; align-items: center; border-bottom: 1px solid var(--home-line); }
.tax-reference-list span { color: #ffac70; font-size: 10px; font-weight: 900; }
.tax-reference-list strong { color: var(--home-ink); font-size: 14px; line-height: 1.5; word-break: keep-all; }
.tax-reference-list em { color: var(--home-muted); font-size: 10px; font-style: normal; font-weight: 800; }
.tax-reference-list a:hover strong,
.tax-reference-list a:hover em { color: #ffc49b; }

/* On-site class operating and safety rules */
.class-rules-page { padding-bottom: 120px; }
.class-rules-hero { padding-top: 72px; padding-bottom: 96px; }
.class-rules-hero-grid { margin-top: 28px; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr); gap: 76px; align-items: end; }
.class-rules-hero h1 { max-width: 980px; margin: 0; color: var(--home-ink); font-size: clamp(54px, 6.5vw, 92px); line-height: .96; letter-spacing: -.075em; word-break: keep-all; }
.class-rules-hero h1 em { display: inline-block; color: #4fd9e8; font-family: Georgia, "Times New Roman", serif; font-size: .82em; font-weight: 400; letter-spacing: -.09em; white-space: nowrap; }
.class-rules-hero-grid > div:last-child > p { margin: 0; color: var(--home-ink); font-size: 16px; line-height: 1.78; word-break: keep-all; }
.class-rules-scope { margin-top: 28px; padding-top: 18px; display: grid; gap: 7px; border-top: 1px solid var(--home-line); }
.class-rules-scope strong { color: #8ce9f2; font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.class-rules-scope span { color: var(--home-ink); font-size: 14px; font-weight: 850; line-height: 1.5; word-break: keep-all; }
.class-rules-scope small { color: var(--home-muted); font-size: 10px; line-height: 1.6; word-break: keep-all; }

.class-rules-index { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.class-rules-index a { min-height: 112px; padding: 18px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--home-line); background: #090a09; color: var(--home-ink); transition: background .2s ease, color .2s ease; }
.class-rules-index a:last-child { border-right: 0; }
.class-rules-index span { color: #4fd9e8; font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.class-rules-index strong { font-size: 13px; word-break: keep-all; }
.class-rules-index a:hover { background: #4fd9e8; color: #080908; }
.class-rules-index a:hover span { color: #080908; }

.class-rules-section { padding-top: 110px; padding-bottom: 110px; border-top: 1px solid var(--home-line); scroll-margin-top: 88px; }
.class-rules-section:first-of-type { margin-top: 80px; }
.class-rules-section-head { margin-bottom: 38px; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr); gap: 70px; align-items: end; }
.class-rules-section-head h2 { max-width: 760px; margin: 13px 0 0; color: var(--home-ink); font-size: clamp(42px, 5vw, 70px); line-height: 1.02; letter-spacing: -.065em; word-break: keep-all; }
.class-rules-section-head > p { margin: 0; color: var(--home-muted); font-size: 14px; line-height: 1.75; word-break: keep-all; }

.class-rules-check-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.class-rules-check-grid article { min-height: 310px; padding: 26px; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.class-rules-check-grid article:last-child { border-right: 0; }
.class-rules-check-grid span { color: #4fd9e8; font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.class-rules-check-grid h3 { margin: 74px 0 18px; color: var(--home-ink); font-size: 24px; letter-spacing: -.04em; word-break: keep-all; }
.class-rules-check-grid ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 9px; }
.class-rules-check-grid li { position: relative; padding-left: 14px; color: var(--home-muted); font-size: 11px; line-height: 1.6; word-break: keep-all; }
.class-rules-check-grid li::before { content: ""; position: absolute; top: .7em; left: 0; width: 5px; height: 5px; background: #4fd9e8; border-radius: 50%; }
.class-rules-record-note,
.class-rules-liability-note,
.class-rules-emergency-note { margin-top: 24px; padding: 26px; display: grid; grid-template-columns: minmax(220px, .55fr) minmax(0, 1.45fr); gap: 34px; border: 1px solid rgba(79,217,232,.55); background: rgba(79,217,232,.055); }
.class-rules-record-note strong,
.class-rules-liability-note strong,
.class-rules-emergency-note strong { color: #8ce9f2; font-size: 16px; line-height: 1.5; word-break: keep-all; }
.class-rules-record-note p,
.class-rules-liability-note p,
.class-rules-emergency-note p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.75; word-break: keep-all; }
.class-rules-liability-note { border-color: #ff67a3; background: rgba(255,103,163,.06); }
.class-rules-liability-note strong { color: #ff9fc3; }

.class-rules-role-grid { border-top: 1px solid var(--home-line); }
.class-rules-role-grid article { min-height: 126px; padding: 25px 0; display: grid; grid-template-columns: minmax(150px, .4fr) minmax(310px, 1.15fr) minmax(260px, 1.05fr); gap: 30px; align-items: center; border-bottom: 1px solid var(--home-line); }
.class-rules-role-grid span { color: #4fd9e8; font-size: 11px; font-weight: 900; }
.class-rules-role-grid strong { color: var(--home-ink); font-size: 15px; line-height: 1.55; word-break: keep-all; }
.class-rules-role-grid p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }

.class-rules-number-list { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.class-rules-number-list li { min-height: 285px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.class-rules-number-list li:last-child { border-right: 0; }
.class-rules-number-list > li > span { color: #4fd9e8; font: 900 10px/1 Arial, sans-serif; }
.class-rules-number-list > li > div { margin-top: auto; }
.class-rules-number-list strong { color: var(--home-ink); font-size: 17px; line-height: 1.4; word-break: keep-all; }
.class-rules-number-list p { margin: 10px 0 0; color: var(--home-muted); font-size: 10px; line-height: 1.65; word-break: keep-all; }

.class-rules-property-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.class-rules-property-grid article { min-height: 245px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.class-rules-property-grid article:last-child { border-right: 0; }
.class-rules-property-grid span { color: #4fd9e8; font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.class-rules-property-grid strong { margin-top: auto; color: var(--home-ink); font-size: 18px; word-break: keep-all; }
.class-rules-property-grid p { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.64; word-break: keep-all; }
.class-rules-incident-grid { margin-top: 22px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.class-rules-incident-grid article { padding: 28px; border-right: 1px solid var(--home-line); }
.class-rules-incident-grid article:last-child { border-right: 0; }
.class-rules-incident-grid span { color: var(--home-ink); font-size: 18px; font-weight: 900; }
.class-rules-incident-grid ol { margin: 24px 0 0; padding-left: 21px; display: grid; gap: 11px; }
.class-rules-incident-grid li { padding-left: 5px; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }
.class-rules-incident-grid li::marker { color: #4fd9e8; font-weight: 900; }

.class-rules-safety-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.class-rules-safety-grid article { min-height: 280px; padding: 25px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); }
.class-rules-safety-grid article:nth-child(3n) { border-right: 0; }
.class-rules-safety-grid article:nth-child(n+4) { border-bottom: 0; }
.class-rules-safety-grid span { color: #4fd9e8; font: 900 9px/1 Arial, sans-serif; letter-spacing: .05em; }
.class-rules-safety-grid h3 { margin: auto 0 11px; color: var(--home-ink); font-size: 21px; letter-spacing: -.04em; word-break: keep-all; }
.class-rules-safety-grid p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.67; word-break: keep-all; }

.class-rules-response-flow { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.class-rules-response-flow li { min-height: 250px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: #090a09; }
.class-rules-response-flow li:nth-child(3n) { border-right: 0; }
.class-rules-response-flow li:nth-child(n+4) { border-bottom: 0; }
.class-rules-response-flow > li > span { color: #ff67a3; font: 900 10px/1 Arial, sans-serif; }
.class-rules-response-flow > li > div { margin-top: auto; }
.class-rules-response-flow strong { color: var(--home-ink); font-size: 19px; }
.class-rules-response-flow p { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; word-break: keep-all; }
.class-rules-emergency-note { border-color: #ff67a3; background: rgba(255,103,163,.06); }
.class-rules-emergency-note strong { color: #ff9fc3; }

.class-rules-checklists { padding-top: 100px; padding-bottom: 100px; display: grid; grid-template-columns: minmax(240px, .55fr) repeat(2, minmax(0, .725fr)); gap: 20px; border-top: 1px solid var(--home-line); }
.class-rules-checklists h2 { margin: 13px 0 0; color: var(--home-ink); font-size: clamp(40px, 4.7vw, 66px); line-height: 1.02; letter-spacing: -.065em; word-break: keep-all; }
.class-rules-checklist-card { padding: 26px; display: grid; gap: 0; border: 1px solid var(--home-line); background: var(--home-surface); }
.class-rules-checklist-card > span { margin-bottom: 22px; color: #4fd9e8; font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.class-rules-checklist-card label { padding: 12px 0; border-bottom: 1px solid var(--home-line); color: var(--home-ink); font-size: 11px; line-height: 1.5; word-break: keep-all; }
.class-rules-checklist-card label:last-child { border-bottom: 0; }

.class-rules-boundary { padding-top: 100px; padding-bottom: 100px; display: grid; grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr); gap: 36px 65px; border-top: 1px solid var(--home-line); }
.class-rules-boundary h2 { margin: 13px 0 0; color: var(--home-ink); font-size: clamp(40px, 4.8vw, 68px); line-height: 1.02; letter-spacing: -.065em; word-break: keep-all; }
.class-rules-boundary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.class-rules-boundary-grid article { min-height: 250px; padding: 24px; display: flex; flex-direction: column; justify-content: flex-end; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.class-rules-boundary-grid article:last-child { border-right: 0; }
.class-rules-boundary-grid span { color: #4fd9e8; font-size: 15px; font-weight: 900; word-break: keep-all; }
.class-rules-boundary-grid p { margin: 11px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.67; word-break: keep-all; }
.class-rules-boundary-note { grid-column: 2; margin: 0; padding: 20px 24px; border: 1px solid #ff67a3; color: #ffb2cf; font-size: 12px; font-weight: 800; line-height: 1.7; word-break: keep-all; }

.class-rules-references { padding-top: 72px; padding-bottom: 72px; display: grid; grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr); gap: 65px; align-items: end; border-top: 1px solid var(--home-line); }
.class-rules-references h2 { margin: 13px 0 0; color: var(--home-ink); font-size: clamp(34px, 3.6vw, 52px); line-height: 1.03; letter-spacing: -.06em; word-break: keep-all; }
.class-rules-references > p { margin: 0; max-width: 760px; padding-top: 22px; border-top: 1px solid var(--home-line); color: var(--home-muted); font-size: 12px; line-height: 1.78; word-break: keep-all; }

.profile-verification-link,
.detail-verification > a { color: var(--home-signal); font-size: 10px; font-weight: 850; text-decoration: underline; text-underline-offset: 4px; }
.badge-wallet > a { margin-top: 5px; color: var(--home-signal); font-size: 10px; font-weight: 850; text-decoration: underline; text-underline-offset: 4px; }
.class-operation-boundary,
.profile-operating-boundary { margin-top: 76px; padding: 42px 0; display: grid; grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr); gap: 56px; border-top: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.class-operation-boundary h2,
.profile-operating-boundary h2 { margin: 11px 0 0; color: var(--home-ink); font-size: clamp(36px, 4.2vw, 58px); line-height: 1.02; letter-spacing: -.06em; word-break: keep-all; }
.class-operation-boundary h2 { max-width: 620px; font-size: clamp(30px, 3.25vw, 46px); line-height: 1.08; }
.class-operation-boundary > div:last-child > p { margin: 0 0 20px; color: var(--home-muted); font-size: 13px; line-height: 1.75; word-break: keep-all; }
.class-operation-links { display: flex; flex-wrap: wrap; gap: 14px 24px; }
.class-operation-links a { display: inline-flex; align-items: center; gap: 18px; color: var(--home-muted); font-size: 12px; font-weight: 900; border-bottom: 1px solid currentColor; }
.class-operation-links a:first-child { color: var(--home-signal); }
.class-operation-boundary svg,
.profile-operating-actions svg { width: 19px; }
.profile-operating-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.profile-operating-points article { min-height: 205px; padding: 20px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: var(--home-surface); }
.profile-operating-points article:last-child { border-right: 0; }
.profile-operating-points span { color: var(--skill-accent, var(--home-signal)); font: 900 9px/1 Arial, sans-serif; }
.profile-operating-points strong { margin-top: auto; color: var(--home-ink); font-size: 15px; word-break: keep-all; }
.profile-operating-points p { margin: 8px 0 0; color: var(--home-muted); font-size: 10px; line-height: 1.62; word-break: keep-all; }
.profile-operating-actions { grid-column: 2; display: flex; flex-wrap: wrap; gap: 12px 24px; }
.profile-operating-actions a { color: var(--home-muted); font-size: 11px; font-weight: 850; text-decoration: underline; text-underline-offset: 5px; }
.profile-operating-actions a:first-child { color: var(--home-signal); }
.profile-update-request { margin-top: 34px; padding: 40px; display: grid; grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr); gap: 56px; border: 1px solid var(--home-signal); background: linear-gradient(125deg, rgba(209,229,154,.1), transparent 58%), var(--home-surface); }
.profile-update-request h2 { margin: 11px 0 0; color: var(--home-ink); font-size: clamp(34px, 3.8vw, 54px); line-height: 1.03; letter-spacing: -.06em; word-break: keep-all; }
.profile-update-request-body > p { max-width: 760px; margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.78; word-break: keep-all; }
.profile-update-request-body > small { margin-top: 15px; display: block; color: var(--home-muted); font-size: 9px; line-height: 1.7; word-break: keep-all; }
.profile-update-request .profile-management-actions { max-width: 650px; }

.member-guide-hero { padding-top: 72px; padding-bottom: 88px; }
.member-guide-hero-grid { margin-top: 28px; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr); gap: 70px; align-items: end; }
.member-guide-hero h1 { margin: 0; color: var(--home-ink); font-size: clamp(54px, 6.6vw, 92px); line-height: .95; letter-spacing: -.075em; }
.member-guide-hero h1 em { display: inline-block; color: #8ca0ff; font-family: Georgia, "Times New Roman", serif; font-size: .84em; font-weight: 400; letter-spacing: -.095em; white-space: nowrap; }
.member-guide-hero-grid > div:last-child > p { margin: 0; color: var(--home-muted); font-size: 16px; line-height: 1.76; word-break: keep-all; }
.member-guide-actions { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 9px; }
.member-guide-boundary { margin-top: 54px; display: grid; grid-template-columns: 118px 1fr 118px 1fr; border: 1px solid var(--home-line); background: #090a09; }
.member-guide-boundary > * { min-height: 78px; padding: 16px; display: flex; align-items: center; border-right: 1px solid var(--home-line); }
.member-guide-boundary > *:last-child { border-right: 0; }
.member-guide-boundary span { color: #8ca0ff; font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.member-guide-boundary strong { color: var(--home-ink); font-size: 11px; line-height: 1.55; }

.member-guide-index { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.member-guide-index a { min-height: 104px; padding: 17px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--home-line); background: #090a09; color: var(--home-ink); font-size: 13px; font-weight: 800; transition: background .2s ease, color .2s ease; }
.member-guide-index a:last-child { border-right: 0; }
.member-guide-index a:hover { background: #5d78ff; color: #fff; }
.member-guide-index span { color: #8ca0ff; font: 900 9px/1 Arial, sans-serif; }
.member-guide-index a:hover span { color: #fff; }

.member-guide-step { padding-top: 110px; padding-bottom: 110px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); gap: 78px; align-items: center; border-top: 1px solid var(--home-line); scroll-margin-top: 88px; }
.member-guide-step-copy > span { color: #8ca0ff; font: 900 10px/1 Arial, sans-serif; letter-spacing: .1em; }
.member-guide-step-copy h2 { max-width: 620px; margin: 17px 0 22px; color: var(--home-ink); font-size: clamp(42px, 4.8vw, 68px); line-height: 1.01; letter-spacing: -.063em; }
.member-guide-step-copy > p { max-width: 610px; margin: 0; color: var(--home-muted); font-size: 14px; line-height: 1.78; word-break: keep-all; }
.member-guide-step-copy ul { margin: 24px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--home-line); }
.member-guide-step-copy li { padding: 12px 0 12px 18px; position: relative; border-bottom: 1px solid var(--home-line); color: var(--home-ink); font-size: 11px; line-height: 1.5; }
.member-guide-step-copy li::before { content: ""; position: absolute; top: 18px; left: 1px; width: 6px; height: 6px; background: #5d78ff; }
.member-guide-step-copy > a { margin-top: 24px; display: inline-flex; align-items: center; gap: 14px; color: var(--home-ink); font-size: 13px; font-weight: 900; border-bottom: 1px solid currentColor; }

.member-guide-demo { min-width: 0; min-height: 440px; padding: 34px; border: 1px solid var(--home-line); background: var(--home-surface); box-shadow: 12px 12px 0 rgba(93,120,255,.1); color: var(--home-ink); }
.member-guide-demo > span { color: #8ca0ff; font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.member-search-demo { display: flex; flex-direction: column; justify-content: center; }
.member-search-demo > strong { margin-top: 12px; padding: 25px 0; border-bottom: 1px solid var(--home-line); color: var(--home-ink); font-size: clamp(24px, 3vw, 38px); letter-spacing: -.045em; }
.member-search-demo > div { margin-top: 22px; display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center; }
.member-search-demo b { color: var(--home-muted); font-size: 11px; }
.member-search-demo em { font-size: 15px; font-style: normal; font-weight: 800; }
.member-search-demo i { padding: 17px 20px; background: #5d78ff; color: #fff; font-size: 12px; font-style: normal; font-weight: 900; }
.member-search-demo small { margin-top: 30px; color: var(--home-muted); font-size: 10px; }

.member-facts-demo { display: grid; grid-template-columns: repeat(2, 1fr); padding: 0; }
.member-facts-demo > div { min-height: 146px; padding: 22px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.member-facts-demo > div:nth-child(even) { border-right: 0; }
.member-facts-demo > div:nth-last-child(-n+2) { border-bottom: 0; }
.member-facts-demo span { color: var(--home-muted); font-size: 9px; font-weight: 800; }
.member-facts-demo strong { margin-top: auto; color: var(--home-ink); font-size: 17px; line-height: 1.35; }

.member-login-demo { display: flex; flex-direction: column; justify-content: center; }
.member-login-demo h3 { margin: 14px 0 32px; font-size: clamp(30px, 3vw, 42px); letter-spacing: -.05em; }
.member-login-demo label { display: grid; gap: 8px; color: var(--home-muted); font-size: 10px; }
.member-login-demo label strong { padding: 16px; border: 1px solid var(--home-line); color: var(--home-ink); font-size: 15px; }
.member-login-demo p { color: var(--home-muted); font-size: 10px; }
.member-login-demo button { min-height: 54px; border: 0; background: #5d78ff; color: #fff; font-size: 13px; font-weight: 900; pointer-events: none; }
.member-login-demo small { margin-top: 14px; color: var(--home-muted); font-size: 9px; line-height: 1.5; }

.member-cart-demo { position: relative; display: grid; align-content: center; }
.member-cart-demo > div { margin-top: 20px; padding: 26px 0; border-top: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.member-cart-demo b { color: #8ca0ff; font-size: 11px; }
.member-cart-demo div > strong { margin-top: 14px; display: block; color: var(--home-ink); font-size: clamp(24px, 2.8vw, 36px); line-height: 1.16; letter-spacing: -.045em; }
.member-cart-demo small { margin-top: 18px; display: block; color: var(--home-muted); }
.member-cart-demo > p { display: flex; align-items: flex-end; justify-content: space-between; }
.member-cart-demo > p strong { font-size: 25px; }
.member-cart-demo > p span { color: var(--home-muted); font-size: 10px; }
.member-cart-demo > em { position: absolute; top: 28px; right: 28px; padding: 8px 10px; background: var(--home-signal); color: #0b0c0b; font-size: 9px; font-style: normal; font-weight: 900; }

.member-contact-demo { display: flex; flex-direction: column; justify-content: center; }
.member-contact-demo ol { margin: 22px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--home-line); }
.member-contact-demo li { min-height: 92px; display: grid; grid-template-columns: 40px 1fr auto; gap: 15px; align-items: center; border-bottom: 1px solid var(--home-line); }
.member-contact-demo li b { color: #8ca0ff; font-size: 10px; }
.member-contact-demo li strong { font-size: 16px; }
.member-contact-demo li em { color: var(--home-muted); font-size: 10px; font-style: normal; }
.member-contact-demo small { margin-top: 20px; color: var(--home-muted); font-size: 9px; line-height: 1.55; }

.member-safe-demo { display: flex; flex-direction: column; justify-content: center; border-color: rgba(255,159,133,.52); box-shadow: 12px 12px 0 rgba(255,159,133,.08); }
.member-safe-demo > span { color: #ff9f85; }
.member-safe-demo h3 { margin: 18px 0; font-size: clamp(34px, 4vw, 54px); line-height: 1; letter-spacing: -.06em; }
.member-safe-demo > p { max-width: 490px; color: var(--home-muted); font-size: 14px; line-height: 1.7; }
.member-safe-demo > div { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 8px; }
.member-safe-demo a { padding: 10px 12px; border: 1px solid var(--home-line); font-size: 10px; font-weight: 800; }

.member-guide-finish { padding-top: 100px; padding-bottom: 60px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr); gap: 70px; align-items: end; border-top: 1px solid var(--home-line); }
.member-guide-finish h2 { margin: 13px 0 0; color: var(--home-ink); font-size: clamp(42px, 5vw, 72px); line-height: .99; letter-spacing: -.065em; }
.member-guide-finish > div:last-child { display: flex; flex-wrap: wrap; gap: 10px; }
.member-guide-finish > div:last-child > p { width: 100%; margin: 0 0 14px; color: var(--home-muted); font-size: 13px; }

/* Tested creator onboarding and class-registration guide */
.creator-start-guide { padding-bottom: 120px; }
.creator-guide-hero { padding-top: 72px; padding-bottom: 72px; }
.creator-guide-hero-grid { margin-top: 28px; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr); gap: 70px; align-items: end; }
.creator-guide-hero h1 { max-width: 880px; margin: 0; color: var(--home-ink); font-size: clamp(52px, 6.6vw, 90px); line-height: .97; letter-spacing: -.072em; }
.creator-guide-hero h1 em { color: var(--home-signal); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.creator-guide-hero-grid > div:last-child > p { margin: 0; color: var(--home-muted); font-size: 16px; line-height: 1.75; }
.creator-guide-actions { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 9px; }
.creator-guide-sample-note { margin-top: 54px; padding: 20px 22px; display: grid; grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr); gap: 18px; border: 1px solid rgba(209,229,154,.48); background: rgba(209,229,154,.06); }
.creator-guide-sample-note strong { color: var(--home-signal); font-size: 13px; }
.creator-guide-sample-note span { color: var(--home-muted); font-size: 12px; line-height: 1.55; }

.creator-guide-index { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.creator-guide-index a { min-height: 132px; padding: 20px; display: grid; grid-template-columns: auto 1fr; grid-template-rows: 1fr auto; gap: 7px 15px; border-right: 1px solid var(--home-line); background: #090a09; color: var(--home-ink); transition: background .2s ease, color .2s ease; }
.creator-guide-index a:last-child { border-right: 0; }
.creator-guide-index a:hover { background: var(--home-signal); color: #0b0c0b; }
.creator-guide-index span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.creator-guide-index a:hover span { color: #0b0c0b; }
.creator-guide-index strong { align-self: end; font-size: 17px; }
.creator-guide-index small { grid-column: 2; color: var(--home-muted); font-size: 10px; }
.creator-guide-index a:hover small { color: rgba(11,12,11,.68); }

.creator-guide-phase { padding-top: 110px; padding-bottom: 110px; border-top: 1px solid var(--home-line); scroll-margin-top: 88px; }
.creator-guide-phase:first-of-type { margin-top: 80px; }
.creator-guide-phase-head { margin-bottom: 38px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr); gap: 70px; align-items: end; }
.creator-guide-phase-head span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; letter-spacing: .1em; }
.creator-guide-phase-head h2 { max-width: 720px; margin: 13px 0 0; color: var(--home-ink); font-size: clamp(42px, 5vw, 70px); line-height: 1.02; letter-spacing: -.058em; }
.creator-guide-phase-head > p { margin: 0; color: var(--home-muted); font-size: 14px; line-height: 1.75; }
.creator-guide-grid { display: grid; gap: 14px; }
.creator-guide-grid-two,
.creator-guide-grid-class { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.creator-guide-grid-check { grid-template-columns: 1fr; }
.creator-guide-step { min-width: 0; padding: 22px; display: flex; flex-direction: column; border: 1px solid var(--home-line); background: #090a09; }
.creator-guide-step-copy { min-height: 130px; padding-bottom: 20px; display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 16px; }
.creator-guide-step-copy > span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--home-signal); color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; }
.creator-guide-step-copy h3 { margin: 0; color: var(--home-ink); font-size: 22px; line-height: 1.3; letter-spacing: -.03em; }
.creator-guide-step-copy p { margin: 10px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.7; }
.creator-guide-step-copy ul { margin: 15px 0 0; padding: 0; display: grid; gap: 6px; color: var(--home-muted); font-size: 11px; line-height: 1.55; list-style: none; }
.creator-guide-step-copy li::before { content: "✓"; margin-right: 8px; color: var(--home-signal); font-weight: 900; }
.creator-guide-shot { min-width: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.18); background: #101210; }
.creator-guide-shot img { width: 100%; height: auto; }
.creator-guide-step-phone .creator-guide-shot { width: min(100%, 496px); margin-inline: auto; }
.creator-guide-shot-medium { width: min(100%, 792px); margin-inline: auto; }
.creator-guide-step > a { width: max-content; margin-top: 16px; color: var(--home-signal); font-size: 10px; font-weight: 900; text-decoration: underline; text-underline-offset: 5px; }
.creator-guide-step-status .creator-guide-step-copy { min-height: 110px; }
.creator-guide-step-status .creator-guide-shot { margin-top: auto; }

.creator-guide-current { padding-top: 92px; border-top: 1px solid var(--home-line); }
.creator-guide-current > div:first-child { display: flex; align-items: end; justify-content: space-between; gap: 28px; }
.creator-guide-current h2 { margin: 12px 0 0; color: var(--home-ink); font-size: clamp(42px, 5vw, 68px); letter-spacing: -.06em; }
.creator-guide-current-grid { margin-top: 36px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.creator-guide-current-grid article { min-height: 230px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: #090a09; }
.creator-guide-current-grid article:last-child { border-right: 0; }
.creator-guide-current-grid span { width: max-content; padding: 7px 9px; border: 1px solid rgba(209,229,154,.48); color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; }
.creator-guide-current-grid strong { margin-top: auto; color: var(--home-ink); font-size: 18px; line-height: 1.35; }
.creator-guide-current-grid p { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.62; }
.creator-guide-current-grid .creator-guide-current-pending span { border-color: rgba(255,159,133,.5); color: #ff9f85; }
.creator-guide-current-footnote { max-width: 900px; margin: 24px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; }
.creator-guide-bottom-actions { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 9px; }

.creator-support-actions { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 8px; }
.creator-template-overview { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.creator-template-overview > div { min-height: 220px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: #090a09; }
.creator-template-overview > div:last-child { border-right: 0; }
.creator-template-overview span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; letter-spacing: .09em; }
.creator-template-overview strong { margin-top: auto; color: var(--home-ink); font-size: 18px; line-height: 1.35; }
.creator-template-overview p { margin: 9px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.65; }
.creator-build-list { margin-top: 0; display: grid; grid-template-columns: 1.1fr repeat(6, 1fr); border: 1px solid var(--home-line); border-top: 0; }
.creator-build-list > * { min-height: 72px; padding: 14px; display: grid; place-items: center start; border-right: 1px solid var(--home-line); }
.creator-build-list > *:last-child { border-right: 0; }
.creator-build-list span { color: var(--home-muted); font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.creator-build-list strong { color: var(--home-ink); font-size: 11px; }

.class-template-guide-page { padding-bottom: 110px; }
.template-guide-hero { padding-top: 72px; padding-bottom: 90px; }
.template-guide-hero h1 { max-width: 1000px; margin: 18px 0 22px; color: var(--home-ink); font-size: clamp(52px, 7vw, 96px); line-height: .96; letter-spacing: -.075em; }
.template-guide-hero > p:not(.eyebrow) { max-width: 760px; margin: 0; color: var(--home-muted); font-size: 17px; line-height: 1.8; }
.template-guide-actions { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 10px; }
.template-guide-preview { padding-top: 90px; padding-bottom: 110px; border-top: 1px solid var(--home-line); }
.template-guide-preview .section-heading h2 em,
.template-manual .section-heading h2 em { color: var(--home-signal); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }

.class-template-deck { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.class-template-slide { position: relative; min-width: 0; aspect-ratio: 4 / 5; overflow: hidden; border: 1px solid rgba(255,255,255,.26); background: #050605; color: #f5f3eb; box-shadow: 11px 11px 0 rgba(255,255,255,.055); }
.template-slide-top { position: relative; z-index: 4; min-height: 74px; padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.5); }
.template-slide-top strong { font: 800 clamp(22px, 2.4vw, 34px)/1 Arial, sans-serif; letter-spacing: -.04em; }
.template-slide-top span { padding: 8px 10px; border-radius: 999px; background: rgba(255,255,255,.14); font: 800 10px/1 Arial, sans-serif; }

.template-cover-slide { display: grid; grid-template-rows: auto 1fr auto; }
.template-cover-slide::after { content: ""; position: absolute; inset: 34% 0 0; z-index: 1; background: linear-gradient(180deg, transparent 30%, rgba(5,6,5,.93) 83%); pointer-events: none; }
.template-cover-slide > img { position: absolute; inset: 31% 0 0; width: 100%; height: 69%; object-fit: cover; filter: saturate(.88) contrast(1.08); }
.template-cover-copy { position: relative; z-index: 3; padding: 26px 24px 15px; }
.template-cover-copy p { margin: 0 0 8px; color: rgba(245,243,235,.72); font-size: 13px; line-height: 1.5; }
.template-cover-copy h3 { max-width: 560px; margin: 0; font-size: clamp(30px, 3.5vw, 55px); line-height: 1.05; letter-spacing: -.06em; }
.template-cover-copy > div { margin-top: 17px; display: flex; flex-wrap: wrap; gap: 6px; }
.template-cover-copy > div span { padding: 7px 9px; border: 1px solid #5d78ff; color: #8ca0ff; font-size: 10px; font-weight: 800; }
.template-cover-bottom { position: relative; z-index: 3; padding: 18px 24px 22px; display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: 18px; align-items: end; }
.template-cover-bottom > span { font-size: 13px; font-weight: 800; }
.template-cover-bottom ul,
.template-info-block ul { margin: 0; padding: 0; display: grid; gap: 7px; list-style: none; }
.template-cover-bottom li,
.template-info-block li { display: grid; grid-template-columns: 52px 1fr; gap: 2px 8px; font-size: 10px; }
.template-cover-bottom li strong,
.template-info-block li strong { color: #8ca0ff; }
.template-cover-bottom li small,
.template-info-block li small { grid-column: 2; color: rgba(245,243,235,.55); font-size: 9px; }

.template-slide-intro { padding: 22px 24px 16px; }
.template-slide-intro span { color: #5d78ff; font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.template-slide-intro p { margin: 10px 0 0; color: rgba(245,243,235,.75); font-size: 12px; line-height: 1.58; }
.template-curriculum-list { padding: 0 24px 24px; display: grid; gap: 10px; }
.template-curriculum-list > div { min-height: 132px; display: grid; grid-template-columns: 35% 64px 1fr; gap: 13px; align-items: center; border-top: 1px solid rgba(255,255,255,.18); }
.template-curriculum-list img { width: 100%; height: 108px; object-fit: cover; filter: saturate(.82) contrast(1.08); }
.template-curriculum-list span { padding: 7px; border-radius: 999px; background: #3157d5; text-align: center; font: 800 9px/1 Arial, sans-serif; }
.template-curriculum-list strong { font-size: 13px; line-height: 1.48; }

.template-point-lead { margin: 20px 24px; color: rgba(245,243,235,.75); font-size: 13px; }
.template-point-list { padding: 0 24px 24px; display: grid; gap: 10px; }
.template-point-list > div { position: relative; min-height: 150px; overflow: hidden; border-top: 1px solid rgba(255,255,255,.2); background: #111310; }
.template-point-list img { position: absolute; inset: 0 auto 0 0; width: 46%; height: 100%; object-fit: cover; filter: saturate(.75) contrast(1.12); }
.template-point-list span,
.template-point-list strong { position: relative; z-index: 2; margin-left: 49%; display: block; }
.template-point-list span { padding-top: 26px; color: #5d78ff; font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.template-point-list strong { padding: 12px 17px 20px 0; font-size: 14px; line-height: 1.45; }

.template-info-slide { padding-bottom: 18px; }
.template-info-block { margin: 0 24px; padding: 20px 0; display: grid; grid-template-columns: 76px 1fr; gap: 9px 16px; border-bottom: 1px solid rgba(255,255,255,.22); }
.template-info-block > span { padding: 8px; align-self: start; background: #262926; color: #d9dad3; text-align: center; font-size: 10px; }
.template-info-block > strong { font-size: 14px; align-self: center; }
.template-info-block > p { grid-column: 2; margin: 0; color: rgba(245,243,235,.65); font-size: 10px; line-height: 1.58; }
.template-info-block ul { grid-column: 2; }
.template-info-grid { margin: 0 24px; display: grid; grid-template-columns: repeat(2, 1fr); }
.template-info-grid > div { min-height: 92px; padding: 16px 13px; border-right: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
.template-info-grid > div:nth-child(even) { border-right: 0; }
.template-info-grid span { display: block; color: rgba(245,243,235,.55); font-size: 9px; }
.template-info-grid strong { margin-top: 8px; display: block; font-size: 12px; line-height: 1.4; }
.template-info-grid small { color: #d1e59a; font-size: 9px; }
.template-info-footnote { margin: 16px 24px 0; color: rgba(245,243,235,.55); font-size: 9px; line-height: 1.5; }

.template-manual { padding: 110px 0; border-top: 1px solid var(--home-line); }
.template-manual-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.template-manual-grid article { min-height: 260px; padding: 28px; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); }
.template-manual-grid article:nth-child(3n) { border-right: 0; }
.template-manual-grid article:nth-child(n+4) { border-bottom: 0; }
.template-manual-grid span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.template-manual-grid h3 { margin: 105px 0 9px; color: var(--home-ink); font-size: 22px; }
.template-manual-grid p { margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.68; }
.template-field-map { padding: 72px 0; display: grid; grid-template-columns: .55fr 1.45fr; gap: 45px; border-top: 1px solid var(--home-line); }
.template-field-map h2 { margin: 10px 0 0; font-size: 52px; }
.template-field-map ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--home-line); }
.template-field-map li { min-height: 70px; padding: 14px 0; display: grid; grid-template-columns: 180px 1fr; align-items: center; border-bottom: 1px solid var(--home-line); }
.template-field-map li span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; letter-spacing: .07em; }
.template-field-map li strong { font-size: 14px; }

.register-intro-links { margin: 0 0 22px; display: flex; justify-content: space-between; gap: 12px; }
.session-editor-empty { padding: 24px; display: grid; gap: 6px; border: 1px dashed rgba(209,229,154,.5); background: rgba(209,229,154,.05); }
.session-editor-empty strong { color: var(--home-signal); font-size: 13px; }
.session-editor-empty span { color: var(--home-muted); font-size: 11px; }
.session-editor { border: 1px solid var(--home-line); background: #090a09; }
.session-editor-head { padding: 20px; display: grid; grid-template-columns: auto 1fr; gap: 7px 18px; border-bottom: 1px solid var(--home-line); }
.session-editor-head span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.session-editor-head strong { color: var(--home-ink); font-size: 14px; }
.session-editor-head p { grid-column: 2; margin: 0; color: var(--home-muted); font-size: 10px; }
.session-editor-row { padding: 16px; display: grid; grid-template-columns: 150px 110px 110px 110px minmax(180px, 1fr); gap: 10px; align-items: end; border-bottom: 1px solid var(--home-line); }
.session-editor-row:last-child { border-bottom: 0; }
.session-editor-date { align-self: stretch; display: grid; align-content: center; gap: 5px; }
.session-editor-date span { color: var(--home-signal); font: 900 8px/1 Arial, sans-serif; }
.session-editor-date strong { color: var(--home-ink); font-size: 11px; }
.session-editor-date button { width: max-content; padding: 0; border: 0; background: transparent; color: #ff9f85; font-size: 9px; cursor: pointer; }
.session-editor-row label,
.session-end-time { min-width: 0; display: grid; gap: 6px; }
.session-editor-row label > span,
.session-end-time span { color: var(--home-muted); font-size: 9px; font-weight: 800; }
.session-editor-row input,
.session-editor-row select { width: 100%; height: 42px; padding: 0 10px; border: 1px solid var(--home-line); border-radius: 0; background: var(--home-surface); color: var(--home-ink); }
.session-end-time strong { min-height: 42px; padding: 0 10px; display: flex; align-items: center; border: 1px solid rgba(209,229,154,.28); color: var(--home-signal); font-size: 11px; }

.template-photo-field { padding: 20px; border: 1px solid var(--home-line); background: #090a09; }
.template-photo-head { margin-bottom: 18px; display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; }
.template-photo-head span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.template-photo-head strong { color: var(--home-ink); font-size: 14px; }
.template-photo-head p { grid-column: 2; margin: 0; color: var(--home-muted); font-size: 10px; line-height: 1.55; }
.photo-quota-summary { margin-bottom: 14px; display: grid; grid-template-columns: 1fr auto; gap: 7px 18px; color: var(--home-muted); font-size: 9px; font-weight: 800; }
.photo-quota-summary > strong { grid-column: 1 / -1; height: 5px; display: block; overflow: hidden; background: var(--home-line); }
.photo-quota-summary i { width: var(--quota); height: 100%; display: block; background: var(--home-signal); transition: width .25s ease; }
.template-photo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.template-photo-card { min-width: 0; padding: 8px; display: grid; grid-template-rows: 130px auto auto auto; gap: 7px; border: 1px solid var(--home-line); cursor: pointer; }
.template-photo-card:hover { border-color: var(--home-signal); }
.template-photo-card img { width: 100%; height: 130px; object-fit: cover; }
.template-photo-card > span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; }
.template-photo-card > strong { color: var(--home-ink); font-size: 10px; line-height: 1.4; }
.template-photo-card input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.template-photo-card em { width: max-content; padding: 6px 8px; background: var(--home-ink); color: var(--home-bg); font-size: 9px; font-style: normal; font-weight: 900; }
.template-photo-card > small { overflow: hidden; color: var(--home-muted); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.template-photo-field > small { margin-top: 12px; display: block; color: var(--home-muted); font-size: 9px; line-height: 1.55; }
.guide-deck-wrap { margin-inline: -8px; }
.class-template-deck-form { gap: 10px; }
.class-template-deck-form .class-template-slide { box-shadow: 6px 6px 0 rgba(255,255,255,.045); }
.guide-support-note a { color: var(--home-signal); font-size: 11px; font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }

@media (max-width: 1120px) {
  .creator-guide-hero-grid,
  .creator-guide-phase-head { gap: 38px; }
  .creator-guide-current-grid { grid-template-columns: repeat(2, 1fr); }
  .creator-guide-current-grid article:nth-child(2) { border-right: 0; }
  .creator-guide-current-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--home-line); }
  .creator-template-overview { grid-template-columns: repeat(2, 1fr); }
  .creator-template-overview > div:nth-child(2) { border-right: 0; }
  .creator-template-overview > div:nth-child(-n+2) { border-bottom: 1px solid var(--home-line); }
  .creator-build-list { grid-template-columns: repeat(4, 1fr); }
  .creator-build-list > * { border-bottom: 1px solid var(--home-line); }
  .creator-build-list > *:nth-child(4n) { border-right: 0; }
  .session-editor-row { grid-template-columns: 150px repeat(3, 1fr); }
  .session-location { grid-column: 2 / -1; }
}

@media (max-width: 820px) {
  .creator-guide-hero-grid,
  .creator-guide-phase-head { grid-template-columns: 1fr; }
  .creator-guide-index { grid-template-columns: repeat(2, 1fr); }
  .creator-guide-index a:nth-child(2) { border-right: 0; }
  .creator-guide-index a:nth-child(-n+2) { border-bottom: 1px solid var(--home-line); }
  .creator-guide-grid-two,
  .creator-guide-grid-class { grid-template-columns: 1fr; }
  .creator-guide-sample-note { grid-template-columns: 1fr; }
  .class-template-deck { grid-template-columns: 1fr; }
  .template-manual-grid { grid-template-columns: 1fr 1fr; }
  .template-manual-grid article:nth-child(3n) { border-right: 1px solid var(--home-line); }
  .template-manual-grid article:nth-child(even) { border-right: 0; }
  .template-manual-grid article:nth-child(n+4) { border-bottom: 1px solid var(--home-line); }
  .template-manual-grid article:nth-last-child(-n+2) { border-bottom: 0; }
  .template-field-map { grid-template-columns: 1fr; }
  .template-photo-grid { grid-template-columns: repeat(3, 1fr); }
  .session-editor-row { grid-template-columns: 1fr 1fr; }
  .session-editor-date { grid-column: 1 / -1; }
  .session-location { grid-column: 1 / -1; }
}

@media (max-width: 580px) {
  .creator-guide-hero { padding-top: 48px; padding-bottom: 56px; }
  .creator-guide-hero h1 { font-size: 40px; }
  .creator-guide-actions .button,
  .creator-guide-bottom-actions .button { width: 100%; }
  .creator-guide-sample-note { margin-top: 36px; padding: 16px; }
  .creator-guide-index { grid-template-columns: 1fr 1fr; }
  .creator-guide-index a { min-height: 110px; padding: 15px; }
  .creator-guide-index strong { font-size: 14px; }
  .creator-guide-phase { padding-top: 78px; padding-bottom: 78px; }
  .creator-guide-phase:first-of-type { margin-top: 58px; }
  .creator-guide-phase-head { margin-bottom: 26px; }
  .creator-guide-phase-head h2 { font-size: 40px; }
  .creator-guide-step { padding: 14px; }
  .creator-guide-step-copy { min-height: 0; grid-template-columns: 34px 1fr; gap: 11px; }
  .creator-guide-step-copy > span { width: 30px; height: 30px; }
  .creator-guide-step-copy h3 { font-size: 18px; }
  .creator-guide-current { padding-top: 72px; }
  .creator-guide-current h2 { font-size: 36px; line-height: 1.05; }
  .creator-guide-current-grid { grid-template-columns: 1fr; }
  .creator-guide-current-grid article { min-height: 185px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .creator-guide-current-grid article:nth-child(2) { border-right: 0; }
  .creator-guide-current-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--home-line); }
  .creator-guide-current-grid article:last-child { border-bottom: 0; }
  .creator-support-actions .button { width: 100%; }
  .creator-template-overview { grid-template-columns: 1fr 1fr; }
  .creator-template-overview > div { min-height: 190px; padding: 16px; }
  .creator-template-overview strong { font-size: 15px; }
  .creator-build-list { grid-template-columns: 1fr 1fr; }
  .creator-build-list > * { min-height: 58px; padding: 10px; }
  .creator-build-list > *:nth-child(2n) { border-right: 0; }
  .template-guide-hero { padding-top: 48px; padding-bottom: 64px; }
  .template-guide-hero h1 { font-size: 47px; }
  .template-guide-actions .button { width: 100%; }
  .template-guide-preview { padding-top: 65px; padding-bottom: 78px; }
  .class-template-deck { margin-inline: -14px; display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .class-template-deck::-webkit-scrollbar { display: none; }
  .class-template-slide { width: calc(100vw - 42px); flex: 0 0 calc(100vw - 42px); scroll-snap-align: center; box-shadow: none; }
  .template-slide-top { min-height: 60px; padding: 15px 17px; }
  .template-cover-copy { padding: 20px 17px 12px; }
  .template-cover-copy h3 { font-size: 31px; }
  .template-cover-bottom { padding: 14px 17px 18px; grid-template-columns: 1fr; gap: 10px; }
  .template-curriculum-list { padding-inline: 17px; }
  .template-curriculum-list > div { min-height: 115px; grid-template-columns: 34% 56px 1fr; gap: 8px; }
  .template-curriculum-list img { height: 92px; }
  .template-point-list,
  .template-slide-intro { padding-inline: 17px; }
  .template-point-list > div { min-height: 128px; }
  .template-info-block,
  .template-info-grid,
  .template-info-footnote { margin-inline: 17px; }
  .template-manual { padding: 78px 0; }
  .template-manual-grid { grid-template-columns: 1fr; }
  .template-manual-grid article,
  .template-manual-grid article:nth-child(3n),
  .template-manual-grid article:nth-child(even),
  .template-manual-grid article:nth-child(n+4) { min-height: 220px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .template-manual-grid article:last-child { border-bottom: 0; }
  .template-manual-grid h3 { margin-top: 75px; }
  .template-field-map li { grid-template-columns: 1fr; gap: 7px; }
  .template-photo-grid { grid-template-columns: 1fr; }
  .template-photo-card { grid-template-rows: 105px auto auto auto; }
  .template-photo-card img { height: 105px; }
  .session-editor-head { grid-template-columns: 1fr; }
  .session-editor-head p { grid-column: auto; }
  .session-editor-row { grid-template-columns: 1fr 1fr; }
  .register-intro-links { flex-direction: column; }
  .guide-deck-wrap { margin-inline: 0; }
  .class-template-deck-form { margin-inline: -40px; }
}

/* Member access, cart and creator-gate additions */
.nav-cart-link { padding: 10px 8px; color: var(--home-muted); font-size: 13px; font-weight: 800; white-space: nowrap; }
.nav-cart-link span { min-width: 18px; height: 18px; margin-left: 3px; padding: 0 5px; display: inline-grid; place-items: center; border: 1px solid var(--home-line); color: var(--home-signal); font-size: 9px; }
.nav-cart-link:hover { color: var(--home-ink); }
.auth-dialog { width: min(880px, calc(100vw - 32px)); max-height: min(760px, calc(100vh - 32px)); padding: 0; border: 1px solid var(--home-line); background: var(--home-surface); color: var(--home-ink); box-shadow: 16px 16px 0 rgba(209,229,154,.12); }
.auth-dialog::backdrop { background: rgba(0,0,0,.86); backdrop-filter: blur(5px); }
.auth-dialog-shell { min-height: 560px; display: grid; grid-template-columns: .88fr 1.12fr; position: relative; }
.auth-dialog-close { width: 46px; height: 46px; position: absolute; z-index: 2; top: 14px; right: 14px; border: 1px solid var(--home-line); background: var(--home-surface-2); color: var(--home-ink); font-size: 27px; cursor: pointer; }
.auth-dialog-copy { padding: 54px 38px; border-right: 1px solid var(--home-line); background: linear-gradient(155deg, rgba(209,229,154,.13), transparent 58%); }
.auth-dialog-copy h2 { margin: 72px 0 18px; font-size: clamp(32px, 4vw, 51px); line-height: 1.02; letter-spacing: -.055em; }
.auth-dialog-copy > p:not(.eyebrow) { color: var(--home-muted); font-size: 13px; line-height: 1.75; }
.auth-dialog-form { padding: 64px 46px 40px; align-self: center; }
.auth-dialog-form .auth-card-head { margin-bottom: 22px; }
.auth-dialog-form .auth-card-head > p { margin-top: 22px; }
.auth-dialog-form .auth-card-head h3 { margin: 0; color: var(--home-ink); font-size: 31px; letter-spacing: -.045em; }
.auth-dialog .field input,
.auth-dialog .auth-role-options label,
.auth-dialog .auth-account-types label > span { border-color: var(--home-line); background: var(--home-surface-2); color: var(--home-ink); }
.auth-dialog .auth-role-options legend,
.auth-dialog .auth-account-types legend,
.auth-dialog .consent-check,
.auth-dialog .auth-fineprint { color: var(--home-muted); }
.auth-dialog .auth-turnstile-wrap > span { color: var(--home-muted); }
.creator-login-gate { margin: 32px 0 18px; padding: 22px 24px; display: flex; justify-content: space-between; align-items: center; gap: 24px; border: 1px solid var(--home-signal); background: rgba(209,229,154,.09); }
.creator-login-gate div { display: grid; gap: 5px; }
.creator-login-gate span { color: var(--home-signal); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.creator-login-gate strong { font-size: 18px; }
.creator-login-gate p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.6; }
.educator-builder-locked .educator-form { opacity: .38; pointer-events: none; filter: grayscale(.35); }
.cart-page { padding: 82px 0 120px; }
.cart-head { margin-bottom: 42px; display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; }
.cart-head h1 { margin: 12px 0; color: var(--home-ink); font-size: clamp(46px, 6vw, 82px); line-height: .98; letter-spacing: -.06em; }
.cart-head p { max-width: 620px; margin: 0; color: var(--home-muted); line-height: 1.7; }
.cart-list { border-top: 1px solid var(--home-line); }
.cart-item { min-height: 210px; padding: 18px 0; display: grid; grid-template-columns: 210px 1fr auto; gap: 26px; align-items: center; border-bottom: 1px solid var(--home-line); }
.cart-item img { width: 100%; height: 174px; object-fit: cover; }
.cart-item > div:nth-child(2) > span { color: var(--home-signal); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.cart-item h2 { margin: 9px 0; font-size: 24px; line-height: 1.2; }
.cart-item h2 a { color: var(--home-ink); }
.cart-item p { margin: 0 0 16px; color: var(--home-muted); font-size: 12px; }
.cart-item > div:nth-child(2) > strong { font-size: 20px; }
.cart-item strong small { color: var(--home-muted); font-size: 9px; font-weight: 600; }
.cart-item-actions { min-width: 132px; display: grid; gap: 8px; }
.cart-empty { min-height: 430px; display: grid; place-items: center; align-content: center; text-align: center; border: 1px solid var(--home-line); }
.cart-empty > span { color: var(--home-signal); font-size: 70px; font-weight: 900; }
.cart-empty h2 { margin: 8px 0; font-size: 30px; }
.cart-empty p { margin: 0 0 24px; color: var(--home-muted); }
.cart-boundary { margin-top: 22px; padding: 18px 20px; display: flex; gap: 28px; border: 1px solid var(--home-line); }
.cart-boundary p { margin: 0; color: var(--home-muted); font-size: 11px; }
.booking-cart { margin-top: 8px; }
.verification-summary-list { display: grid; gap: 1px; border: 1px solid var(--home-line); background: var(--home-line); }
.verification-summary-list > div { padding: 13px 14px; display: flex; justify-content: space-between; gap: 15px; background: var(--home-surface-2); }
.verification-summary-list span { color: var(--home-muted); font-size: 10px; }
.verification-summary-list strong { font-size: 10px; text-align: right; }
.educator-verification-editor { margin-top: 20px; }
.verification-form-sections { display: grid; gap: 14px; }
.verification-form-sections fieldset { margin: 0; padding: 22px; border: 1px solid var(--home-line); }
.verification-form-sections legend { padding: 0 10px; color: var(--home-ink); font-size: 15px; font-weight: 850; }
.verification-form-sections legend span { margin-right: 6px; color: var(--home-signal); font-size: 10px; }
.verification-form-sections .form-grid { margin-top: 12px; }
.verification-form-sections [hidden] { display: none !important; }
.permission-owner-note { margin-top: 14px; padding: 15px; display: grid; gap: 4px; border: 1px solid rgba(209,229,154,.35); background: rgba(209,229,154,.07); }
.permission-owner-note strong { color: var(--home-signal); font-size: 12px; }
.permission-owner-note span { color: var(--home-muted); font-size: 10px; }
.verification-final-consent { margin: 18px 0; }
.verification-submit-row { padding-top: 18px; display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid var(--home-line); }
.verification-submit-row > div { display: grid; gap: 4px; }
.verification-submit-row strong { font-size: 12px; }
.verification-submit-row span { color: var(--home-muted); font-size: 10px; }

@media (max-width: 820px) {
  .proof-grid { grid-template-columns: 1fr; }
  .nav-cart-link { display: none; }
  .auth-dialog-shell { grid-template-columns: 1fr; }
  .auth-dialog-copy { padding: 35px 28px 24px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .auth-dialog-copy h2 { margin: 28px 0 12px; font-size: 35px; }
  .auth-dialog-form { padding: 34px 28px 40px; }
  .cart-item { grid-template-columns: 150px 1fr; }
  .cart-item-actions { grid-column: 2; display: flex; }
  .verification-progress { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 580px) {
  .auth-dialog { width: 100vw; max-width: none; height: 100dvh; max-height: none; margin: 0; border: 0; }
  .auth-dialog-shell { min-height: 100%; align-content: start; overflow-y: auto; }
  .auth-dialog-close { position: fixed; }
  .auth-dialog-copy { padding: 44px 22px 20px; }
  .auth-dialog-copy h2 { margin-top: 30px; font-size: 31px; }
  .auth-dialog-form { padding: 28px 22px 38px; }
  .auth-dialog-form .auth-card-head h3 { font-size: 26px; }
  .auth-account-types { grid-template-columns: 1fr; }
  .auth-account-types label > span { min-height: 68px; }
  .creator-login-gate { align-items: stretch; flex-direction: column; }
  .cart-page { padding-top: 52px; }
  .cart-head { align-items: stretch; flex-direction: column; }
  .cart-head h1 { font-size: 47px; }
  .cart-item { grid-template-columns: 96px 1fr; gap: 14px; align-items: start; }
  .cart-item img { height: 112px; }
  .cart-item h2 { font-size: 18px; }
  .cart-item p { font-size: 10px; line-height: 1.5; }
  .cart-item-actions { grid-column: 1 / -1; }
  .cart-item-actions .button { flex: 1; }
  .cart-boundary { flex-direction: column; gap: 7px; }
  .verification-progress { grid-template-columns: 1fr 1fr; }
  .verification-form-sections fieldset { padding: 17px; }
  .verification-submit-row { align-items: stretch; flex-direction: column; }
  .verification-submit-row .button { width: 100%; }
}

@media (max-width: 1120px) {
  .site-guide-hero-grid,
  .member-guide-hero-grid,
  .member-guide-finish { gap: 42px; }
  .guide-standards-intro,
  .guide-field-rules,
  .guide-common { grid-template-columns: 1fr; gap: 34px; }
  .guide-standards-cta,
  .guide-field-rules-cta,
  .guide-policy-links { grid-column: 1; }
  .standards-hero-grid { gap: 42px; }
  .standards-section-head { gap: 42px; }
  .standards-contact { gap: 42px; }
  .standards-scope-list article { grid-template-columns: minmax(150px, .45fr) minmax(0, 1.55fr); }
  .standards-scope-list p { grid-column: 2; }
  .member-guide-boundary { grid-template-columns: 100px 1fr; }
  .member-guide-boundary > *:nth-child(2) { border-right: 0; }
  .member-guide-boundary > *:nth-child(-n+2) { border-bottom: 1px solid var(--home-line); }
  .member-guide-step { grid-template-columns: minmax(0, .85fr) minmax(380px, 1.15fr); gap: 44px; }
  .class-rules-hero-grid,
  .class-rules-section-head { gap: 42px; }
  .class-rules-role-grid article { grid-template-columns: minmax(130px, .4fr) minmax(0, 1.6fr); }
  .class-rules-role-grid p { grid-column: 2; }
  .class-rules-number-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .class-rules-number-list li { border-bottom: 1px solid var(--home-line); }
  .class-rules-number-list li:nth-child(3n) { border-right: 0; }
  .class-rules-number-list li:nth-child(n+4) { border-bottom: 0; }
  .class-rules-number-list li:last-child { border-right: 1px solid var(--home-line); }
  .class-rules-checklists { grid-template-columns: 1fr 1fr; }
  .class-rules-checklists > div:first-child { grid-column: 1 / -1; }
  .class-rules-boundary,
  .class-rules-references { grid-template-columns: 1fr; gap: 34px; }
  .class-rules-boundary-note { grid-column: 1; }
}

@media (max-width: 820px) {
  .site-guide-hero-grid,
  .standards-hero-grid,
  .standards-section-head,
  .standards-contact,
  .class-rules-hero-grid,
  .class-rules-section-head,
  .member-guide-hero-grid,
  .member-guide-step,
  .member-guide-finish { grid-template-columns: 1fr; }
  .guide-audience-grid { grid-template-columns: 1fr; }
  .guide-standards-points { grid-template-columns: 1fr; }
  .guide-standards-points article { min-height: 170px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .guide-standards-points article:last-child { border-bottom: 0; }
  .guide-field-rules-points { grid-template-columns: 1fr; }
  .guide-field-rules-points article { min-height: 170px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .guide-field-rules-points article:last-child { border-bottom: 0; }
  .guide-common-grid { grid-template-columns: 1fr; }
  .guide-common-grid article { min-height: 170px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .guide-common-grid article:last-child { border-bottom: 0; }
  .standards-status-grid,
  .standards-commercial-grid { grid-template-columns: 1fr; }
  .standards-status-grid article,
  .standards-commercial-grid article { min-height: 270px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .standards-status-grid article:last-child,
  .standards-commercial-grid article:last-child { border-bottom: 0; }
  .standards-status-mark { margin-top: 28px; }
  .standards-class-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .standards-class-grid article { border-bottom: 1px solid var(--home-line); }
  .standards-class-grid article:nth-child(2n) { border-right: 0; }
  .standards-class-grid article:nth-child(n+3) { border-bottom: 0; }
  .standards-commercial-note { grid-template-columns: 1fr; gap: 9px; }
  .class-operation-boundary,
  .profile-operating-boundary { grid-template-columns: 1fr; gap: 32px; }
  .profile-operating-actions { grid-column: 1; }
  .class-rules-index { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .class-rules-index a { border-bottom: 1px solid var(--home-line); }
  .class-rules-index a:nth-child(3n) { border-right: 0; }
  .class-rules-index a:nth-child(n+4) { border-bottom: 0; }
  .class-rules-check-grid,
  .class-rules-safety-grid,
  .class-rules-response-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .class-rules-check-grid article { border-bottom: 1px solid var(--home-line); }
  .class-rules-check-grid article:nth-child(2n) { border-right: 0; }
  .class-rules-check-grid article:last-child { grid-column: 1 / -1; border-right: 0; border-bottom: 0; }
  .class-rules-property-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .class-rules-property-grid article { border-bottom: 1px solid var(--home-line); }
  .class-rules-property-grid article:nth-child(2n) { border-right: 0; }
  .class-rules-property-grid article:nth-child(n+3) { border-bottom: 0; }
  .class-rules-safety-grid article:nth-child(3n),
  .class-rules-response-flow li:nth-child(3n) { border-right: 1px solid var(--home-line); }
  .class-rules-safety-grid article:nth-child(2n),
  .class-rules-response-flow li:nth-child(2n) { border-right: 0; }
  .class-rules-safety-grid article:nth-child(n+4),
  .class-rules-response-flow li:nth-child(n+4) { border-bottom: 1px solid var(--home-line); }
  .class-rules-safety-grid article:nth-child(n+5),
  .class-rules-response-flow li:nth-child(n+5) { border-bottom: 0; }
  .class-rules-boundary-grid { grid-template-columns: 1fr; }
  .class-rules-boundary-grid article { min-height: 170px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .class-rules-boundary-grid article:last-child { border-bottom: 0; }
  .tax-reference-list a { grid-template-columns: 90px minmax(0, 1fr); gap: 12px 22px; }
  .tax-reference-list em { grid-column: 2; }
  .member-guide-index { grid-template-columns: repeat(3, 1fr); }
  .member-guide-index a:nth-child(3n) { border-right: 0; }
  .member-guide-index a:nth-child(-n+3) { border-bottom: 1px solid var(--home-line); }
  .member-guide-step { align-items: stretch; }
  .member-guide-demo { min-height: 390px; }
}

@media (max-width: 580px) {
  .site-guide-page,
  .operating-standards-page,
  .class-rules-page,
  .member-start-guide { padding-bottom: 72px; }
  .site-guide-hero { padding-top: 48px; padding-bottom: 66px; }
  .site-guide-hero h1 { font-size: 47px; }
  .site-guide-hero h1 em { white-space: normal; }
  .site-guide-hero-grid { gap: 34px; }
  .site-guide-hero-grid > div:last-child > p { font-size: 14px; }
  .guide-audience { padding-top: 72px; padding-bottom: 72px; }
  .guide-audience-card-head { min-height: 220px; padding: 22px; }
  .guide-audience-card-head > strong { font-size: 33px; }
  .guide-audience-card ol { padding: 0 22px; }
  .guide-audience-card li { min-height: 102px; grid-template-columns: 32px 1fr; gap: 12px; }
  .guide-audience-cta { min-height: 70px; padding: 0 22px; font-size: 14px; }
  .guide-standards-intro { padding-top: 72px; padding-bottom: 72px; }
  .guide-standards-intro h2 { font-size: 42px; }
  .guide-standards-points article { min-height: 152px; padding: 20px; }
  .guide-standards-cta { min-height: 70px; padding: 0 20px; font-size: 13px; }
  .guide-field-rules { padding-top: 72px; padding-bottom: 72px; }
  .guide-field-rules h2 { font-size: 42px; }
  .guide-field-rules-points article { min-height: 152px; padding: 20px; }
  .guide-field-rules-cta { min-height: 70px; padding: 0 20px; font-size: 13px; }
  .guide-common { padding-top: 72px; padding-bottom: 50px; }
  .guide-common h2 { font-size: 42px; }
  .guide-common-grid article { min-height: 150px; }

  .standards-hero { padding-top: 48px; padding-bottom: 66px; }
  .standards-hero h1 { font-size: 45px; }
  .standards-hero h1 em { white-space: normal; }
  .standards-hero-grid { gap: 34px; }
  .standards-hero-grid > div:last-child > p { font-size: 14px; }
  .standards-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .standards-index a { min-height: 92px; padding: 14px; border-bottom: 1px solid var(--home-line); }
  .standards-index a:nth-child(2n) { border-right: 0; }
  .standards-index a:last-child { grid-column: 1 / -1; min-height: 76px; border-bottom: 0; }
  .tax-guide-index a:last-child { grid-column: auto; min-height: 92px; }
  .standards-section { padding-top: 76px; padding-bottom: 76px; }
  .standards-section:first-of-type { margin-top: 58px; }
  .standards-section-head { margin-bottom: 28px; gap: 22px; }
  .standards-section-head h2 { font-size: 42px; }
  .standards-section-head > p { font-size: 12px; }
  .standards-status-grid article,
  .standards-commercial-grid article { min-height: 245px; padding: 22px; }
  .standards-scope-list article { padding: 22px 0; grid-template-columns: 1fr; gap: 10px; }
  .standards-scope-list p { grid-column: 1; }
  .standards-non-guarantee,
  .standards-photo-rule,
  .standards-commercial-note { padding: 20px; grid-template-columns: 1fr; gap: 10px; }
  .standards-class-grid { grid-template-columns: 1fr; }
  .standards-class-grid article { min-height: 205px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .standards-class-grid article:nth-child(n+3) { border-bottom: 1px solid var(--home-line); }
  .standards-class-grid article:last-child { border-bottom: 0; }
  .standards-contact { padding-top: 70px; padding-bottom: 70px; gap: 30px; }
  .standards-contact h2 { font-size: 42px; }
  .standards-contact-actions { grid-template-columns: 1fr; }
  .standards-contact-actions .button { width: 100%; }
  .standards-text-link { min-height: 42px; }
  .tax-reference-list a { grid-template-columns: 1fr; gap: 7px; }
  .tax-reference-list em { grid-column: 1; }
  .class-operation-boundary,
  .profile-operating-boundary { margin-top: 56px; padding: 36px 0; gap: 26px; }
  .class-operation-boundary h2,
  .profile-operating-boundary h2 { font-size: 39px; }
  .class-operation-boundary h2 { font-size: 32px; line-height: 1.1; }
  .profile-operating-points { grid-template-columns: 1fr; }
  .profile-operating-points article { min-height: 148px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .profile-operating-points article:last-child { border-bottom: 0; }
  .profile-operating-actions { display: grid; gap: 14px; }
  .class-operation-links { display: grid; gap: 14px; }

  .class-rules-hero { padding-top: 48px; padding-bottom: 66px; }
  .class-rules-hero h1 { font-size: 43px; }
  .class-rules-hero h1 em { white-space: normal; }
  .class-rules-hero-grid { gap: 34px; }
  .class-rules-hero-grid > div:last-child > p { font-size: 14px; }
  .class-rules-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .class-rules-index a { min-height: 92px; padding: 14px; }
  .class-rules-index a:nth-child(3n) { border-right: 1px solid var(--home-line); }
  .class-rules-index a:nth-child(2n) { border-right: 0; }
  .class-rules-index a:nth-child(n+4) { border-bottom: 1px solid var(--home-line); }
  .class-rules-index a:nth-child(n+5) { border-bottom: 0; }
  .class-rules-section { padding-top: 76px; padding-bottom: 76px; }
  .class-rules-section:first-of-type { margin-top: 58px; }
  .class-rules-section-head { margin-bottom: 28px; gap: 22px; }
  .class-rules-section-head h2 { font-size: 40px; }
  .class-rules-section-head > p { font-size: 12px; }
  .class-rules-check-grid,
  .class-rules-property-grid,
  .class-rules-safety-grid,
  .class-rules-response-flow { grid-template-columns: 1fr; }
  .class-rules-check-grid article,
  .class-rules-property-grid article,
  .class-rules-safety-grid article,
  .class-rules-response-flow li { min-height: 220px; padding: 21px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .class-rules-check-grid article:last-child,
  .class-rules-property-grid article:last-child,
  .class-rules-safety-grid article:last-child,
  .class-rules-response-flow li:last-child { grid-column: auto; border-bottom: 0; }
  .class-rules-check-grid h3 { margin-top: 58px; }
  .class-rules-record-note,
  .class-rules-liability-note,
  .class-rules-emergency-note { padding: 20px; grid-template-columns: 1fr; gap: 10px; }
  .class-rules-role-grid article { padding: 22px 0; grid-template-columns: 1fr; gap: 10px; }
  .class-rules-role-grid p { grid-column: 1; }
  .class-rules-number-list { grid-template-columns: 1fr; }
  .class-rules-number-list li { min-height: 205px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .class-rules-number-list li:nth-child(n+4) { border-bottom: 1px solid var(--home-line); }
  .class-rules-number-list li:last-child { border-right: 0; border-bottom: 0; }
  .class-rules-incident-grid { grid-template-columns: 1fr; }
  .class-rules-incident-grid article { padding: 22px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .class-rules-incident-grid article:last-child { border-bottom: 0; }
  .class-rules-safety-grid article:nth-child(3n),
  .class-rules-response-flow li:nth-child(3n) { border-right: 0; }
  .class-rules-safety-grid article:nth-child(n+5),
  .class-rules-response-flow li:nth-child(n+5) { border-bottom: 1px solid var(--home-line); }
  .class-rules-safety-grid article:last-child,
  .class-rules-response-flow li:last-child { border-bottom: 0; }
  .class-rules-checklists { padding-top: 76px; padding-bottom: 76px; grid-template-columns: 1fr; }
  .class-rules-checklists > div:first-child { grid-column: 1; }
  .class-rules-checklists h2 { margin-bottom: 8px; font-size: 40px; }
  .class-rules-checklist-card { padding: 21px; }
  .class-rules-boundary,
  .class-rules-references { padding-top: 76px; padding-bottom: 76px; }
  .class-rules-boundary h2,
  .class-rules-references h2 { font-size: 40px; }
  .class-rules-boundary-grid article { min-height: 150px; padding: 21px; }
  .class-rules-boundary-note { padding: 18px 20px; }

  .member-guide-hero { padding-top: 48px; padding-bottom: 58px; }
  .member-guide-hero h1 { font-size: 45px; }
  .member-guide-hero-grid { gap: 34px; }
  .member-guide-hero-grid > div:last-child > p { font-size: 14px; }
  .member-guide-actions .button { width: 100%; }
  .member-guide-boundary { margin-top: 38px; grid-template-columns: 86px 1fr; }
  .member-guide-boundary > * { min-height: 72px; padding: 12px; }
  .member-guide-index { grid-template-columns: repeat(2, 1fr); }
  .member-guide-index a { min-height: 92px; padding: 14px; }
  .member-guide-index a:nth-child(3n) { border-right: 1px solid var(--home-line); }
  .member-guide-index a:nth-child(2n) { border-right: 0; }
  .member-guide-index a:nth-child(-n+4) { border-bottom: 1px solid var(--home-line); }
  .member-guide-step { padding-top: 76px; padding-bottom: 76px; gap: 32px; }
  .member-guide-step-copy h2 { font-size: 40px; }
  .member-guide-demo { min-height: 360px; padding: 22px; box-shadow: 7px 7px 0 rgba(93,120,255,.1); }
  .member-search-demo > div { grid-template-columns: 1fr; gap: 8px; }
  .member-search-demo i { text-align: center; }
  .member-facts-demo { padding: 0; }
  .member-facts-demo > div { min-height: 125px; padding: 15px; }
  .member-facts-demo strong { font-size: 14px; }
  .member-cart-demo div > strong { font-size: 25px; }
  .member-contact-demo li { grid-template-columns: 32px 1fr; }
  .member-contact-demo li em { grid-column: 2; }
  .member-guide-finish { padding-top: 72px; gap: 32px; }
  .member-guide-finish h2 { font-size: 42px; }
  .member-guide-finish .button { width: 100%; }
}

/* Editorial creator profile and three-person portrait reference */
.home-dark .profile-poster {
  min-height: 690px;
  padding: 0;
  grid-template-columns: minmax(0, .9fr) minmax(390px, 1.1fr);
  gap: 0;
  align-items: stretch;
  overflow: hidden;
  background: #090a09;
  box-shadow: 16px 16px 0 color-mix(in srgb, var(--skill-accent) 12%, transparent);
}
.profile-poster-copy {
  min-width: 0;
  padding: 34px 40px 32px;
  display: flex;
  flex-direction: column;
  position: relative;
  isolation: isolate;
  background:
    radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--skill-accent) 34%, transparent), transparent 36%),
    linear-gradient(145deg, color-mix(in srgb, var(--skill-accent) 17%, #090a09), #090a09 60%);
}
.profile-poster-copy::after {
  content: "";
  width: 210px;
  height: 210px;
  position: absolute;
  right: -85px;
  bottom: 60px;
  z-index: -1;
  border-radius: 50%;
  background: var(--skill-accent);
  filter: blur(75px);
  opacity: .2;
}
.profile-poster-brand,
.profile-poster-foot {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
  font: 800 10px/1 Arial, sans-serif;
  letter-spacing: .12em;
}
.profile-poster-brand { color: var(--home-ink); }
.profile-poster-brand strong { font-size: 17px; letter-spacing: -.04em; }
.profile-poster-brand span { color: var(--skill-accent); }
.profile-poster .profile-summary {
  margin-top: auto;
  padding: 70px 0 42px;
}
.profile-poster .profile-status-row { margin-bottom: 20px; }
.profile-poster .profile-handle { margin: 0 0 10px; }
.profile-handle-pending { color: var(--home-muted); text-decoration: none; cursor: default; }
.home-dark .profile-poster .profile-summary h1 {
  max-width: 100%;
  color: var(--home-ink);
  font-size: clamp(62px, 7vw, 104px);
  line-height: .9;
  letter-spacing: -.085em;
}
.profile-poster .profile-title { margin-top: 18px; font-size: clamp(19px, 2vw, 27px); }
.profile-poster .profile-affiliation { margin-top: 7px; }
.profile-statement {
  max-width: 630px;
  margin: 34px 0 25px;
  color: var(--home-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(20px, 2.15vw, 31px);
  font-weight: 400;
  line-height: 1.32;
  letter-spacing: -.045em;
  word-break: keep-all;
}
.profile-poster-foot {
  padding-top: 21px;
  border-top: 1px solid color-mix(in srgb, var(--skill-accent) 45%, transparent);
  color: var(--home-muted);
}
.profile-poster-foot strong { color: var(--home-ink); }
.home-dark .profile-poster .profile-portrait {
  min-height: 690px;
  margin: 0;
  border-left: 1px solid var(--home-line);
  background: #111;
}
.profile-poster .profile-portrait::after {
  inset: 42% 0 0;
  background: linear-gradient(transparent, rgba(0,0,0,.64));
}
.profile-poster .profile-portrait img { object-fit: cover; }
.profile-poster .profile-portrait figcaption {
  position: absolute;
  right: 18px;
  bottom: 20px;
  z-index: 2;
  color: rgba(255,255,255,.62);
  font-size: 9px;
}
.profile-poster .profile-portrait .sample-label { left: 18px; bottom: 18px; }
.home-dark .profile-poster .profile-portrait.profile-portrait-baked {
  min-height: 0;
  aspect-ratio: 4 / 5;
  align-self: start;
  background: #090b0a;
}
.profile-poster .profile-portrait.profile-portrait-baked::after { display: none; }
.profile-poster .profile-portrait.profile-portrait-baked img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center !important; }

.profile-class-story { margin: 0 0 94px; }
.profile-class-story-head { padding-top: 8px; }
.profile-class-story-head h2 { font-size: clamp(44px, 5vw, 70px); line-height: .96; }
.profile-story-mobile-line { display: inline; }
.profile-class-story-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(340px, .65fr);
  border: 1px solid var(--home-line);
  background: #090a09;
}
.profile-class-story-media {
  min-width: 0;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--home-line);
}
.profile-class-story-visual {
  min-width: 0;
  min-height: 610px;
  margin: 0;
  position: relative;
  overflow: hidden;
}
.profile-class-story-visual::after {
  content: "";
  position: absolute;
  inset: 48% 0 0;
  background: linear-gradient(transparent, rgba(0,0,0,.78));
}
.profile-class-story-visual img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.profile-class-story-visual.profile-class-story-visual-baked {
  width: 100%;
  min-height: 0;
  aspect-ratio: 7 / 5;
  align-self: start;
  background: #090b0a;
}
.profile-class-story-visual.profile-class-story-visual-baked::after { display: none; }
.profile-class-story-visual.profile-class-story-visual-baked img { object-fit: contain; object-position: center !important; }
.profile-class-story-visual figcaption {
  max-width: calc(100% - 56px);
  position: absolute;
  left: 28px;
  bottom: 27px;
  z-index: 2;
  display: grid;
  gap: 7px;
}
.profile-class-story-visual figcaption span { color: var(--skill-accent); font: 900 10px/1 Arial, sans-serif; letter-spacing: .12em; }
.profile-class-story-visual figcaption strong { color: white; font-size: clamp(20px, 2.2vw, 32px); line-height: 1.12; }
.profile-venue-proof {
  min-height: 176px;
  margin-top: auto;
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-top: 1px solid var(--home-line);
  background: #0c0e0c;
}
.profile-venue-proof-head {
  margin-bottom: 12px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  font-family: Arial, sans-serif;
}
.profile-venue-proof-head span { color: var(--skill-accent); font-size: 8px; font-weight: 900; letter-spacing: .14em; }
.profile-venue-proof-head strong { color: var(--home-ink); font-size: 11px; }
.profile-venue-proof-head em { color: var(--home-muted); font-size: 8px; font-style: normal; }
.profile-venue-proof-images { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.profile-venue-proof-images figure { min-width: 0; margin: 0; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid var(--home-line); background: #151815; }
.profile-venue-proof-images img { width: 100%; height: 100%; display: block; object-fit: cover; filter: saturate(.72) contrast(1.04); }
.profile-class-story-steps { min-width: 0; display: flex; flex-direction: column; }
.profile-class-story-steps article {
  min-height: 170px;
  padding: 27px 28px;
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 16px;
  border-bottom: 1px solid var(--home-line);
}
.profile-class-story-steps article > span { color: var(--skill-accent); font: 900 12px/1 Arial, sans-serif; }
.profile-class-story-steps small { color: var(--home-muted); font: 800 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.profile-class-story-steps h3 { margin: 15px 0 8px; color: var(--home-ink); font-size: 21px; line-height: 1.17; }
.profile-class-story-steps p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.65; }
.profile-generated-note { margin-top: auto !important; padding: 20px 28px; color: var(--home-muted) !important; font-size: 9px !important; line-height: 1.6 !important; }
.profile-course-map {
  min-height: 610px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    radial-gradient(circle at 78% 18%, color-mix(in srgb, var(--skill-accent) 16%, transparent), transparent 34%),
    #090b0a;
  background-size: 58px 58px, 58px 58px, auto, auto;
}
.profile-course-map-head { display: grid; gap: 9px; padding-bottom: 24px; border-bottom: 1px solid var(--home-line); }
.profile-course-map-head span { color: var(--skill-accent); font: 900 10px/1 Arial, sans-serif; letter-spacing: .15em; }
.profile-course-map-head strong { color: var(--home-ink); font-size: clamp(23px, 2.4vw, 34px); letter-spacing: -.045em; }
.profile-course-map-head small { color: var(--home-muted); font-size: 9px; line-height: 1.6; }
.profile-course-map-list { margin-top: auto; border-top: 1px solid var(--home-line); }
.profile-course-map-list article { min-height: 140px; padding: 20px 0; display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 18px; border-bottom: 1px solid var(--home-line); }
.profile-course-map-list article > span { color: color-mix(in srgb, var(--skill-accent) 76%, white); font: 900 31px/.9 Arial, sans-serif; letter-spacing: -.08em; }
.profile-course-map-list article > div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px 16px; align-content: start; }
.profile-course-map-list small { color: var(--skill-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .16em; }
.profile-course-map-list h3 { margin: 0; color: var(--home-ink); font-size: 20px; line-height: 1.14; }
.profile-course-map-list strong { grid-column: 1 / -1; color: color-mix(in srgb, var(--skill-accent) 72%, white); font-size: 12px; }
.profile-course-map-list ul { grid-column: 1 / -1; margin: 3px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; list-style: none; }
.profile-course-map-list li { padding: 5px 8px; border: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; }
.profile-course-schedule,
.profile-training { margin: 0 0 94px; padding: 64px 0; border-top: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.profile-course-schedule .profile-section-head h2,
.profile-training .profile-section-head h2 { font-size: clamp(44px, 5vw, 70px); line-height: .96; }
.profile-course-schedule-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border: 1px solid var(--home-line); }
.profile-course-schedule-grid article { min-width: 0; min-height: 164px; padding: 20px 16px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background: #090a09; }
.profile-course-schedule-grid article:last-child { border-right: 0; }
.profile-course-schedule-grid span { color: var(--skill-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .12em; }
.profile-course-schedule-grid strong { margin-top: auto; color: var(--home-muted); font-size: 11px; }
.profile-course-schedule-grid p { margin: 8px 0 0; color: var(--home-ink); font: 900 19px/1.1 Arial, sans-serif; white-space: nowrap; }
.profile-course-schedule-note,
.profile-training-note { margin: 15px 0 0; color: var(--home-muted); font-size: 9px; line-height: 1.6; text-align: right; }
.profile-training-list { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--home-line); list-style: none; }
.profile-training-list li { min-height: 82px; padding: 18px 20px; display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 12px; align-items: center; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.profile-training-list li:nth-child(2n) { border-right: 0; }
.profile-training-list span { color: var(--skill-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .12em; }
.profile-training-list p { margin: 0; color: var(--home-ink); font-size: 13px; line-height: 1.45; word-break: keep-all; }
.profile-page-abc-classic .profile-poster-copy { background: radial-gradient(circle at 18% 22%, color-mix(in srgb, var(--skill-accent) 25%, transparent), transparent 34%), linear-gradient(145deg, #11140e, #090a09 66%); }
.profile-real-facts {
  margin: 0 0 94px;
  padding: 64px 0;
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
  gap: clamp(48px, 8vw, 120px);
  border-top: 1px solid var(--home-line);
  border-bottom: 1px solid var(--home-line);
}
.profile-real-facts h2 { margin: 20px 0 24px; color: var(--home-ink); font-size: clamp(44px, 5vw, 70px); line-height: .96; }
.profile-real-facts > div:first-child > p:last-child { max-width: 360px; margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.75; }
.profile-career-list { border-top: 1px solid var(--home-line); }
.profile-career-list article { min-height: 112px; padding: 26px 4px; display: grid; grid-template-columns: 68px 1fr; gap: 20px; align-items: center; border-bottom: 1px solid var(--home-line); }
.profile-career-list article span { color: var(--skill-accent); font: 900 12px/1 Arial, sans-serif; letter-spacing: .14em; }
.profile-career-list article p { margin: 0; color: var(--home-ink); font-size: 19px; line-height: 1.45; }
.profile-photo-archive { margin: 0 0 94px; }
.profile-photo-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.profile-photo-grid figure { min-width: 0; min-height: 0; margin: 0; position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: #111411; border: 1px solid var(--home-line); }
.profile-photo-grid img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .45s cubic-bezier(.2,.8,.2,1); }
.profile-photo-grid figure:nth-child(1) img { object-position: center 54%; }
.profile-photo-grid figure:nth-child(2) img { object-position: center 50%; }
.profile-photo-grid figure:nth-child(3) img { object-position: center 48%; }
.profile-photo-grid figure:nth-child(4) img { object-position: center; }
.profile-photo-grid figure:hover img { transform: scale(1.025); }
.profile-photo-grid figure::after { content: ""; position: absolute; inset: 38% 0 0; background: linear-gradient(transparent, rgba(5,7,6,.94)); pointer-events: none; }
.profile-photo-grid figcaption {
  position: absolute;
  z-index: 2;
  inset: auto 0 0;
  padding: 54px 15px 15px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 3px 8px;
  color: white;
  font-family: Arial, sans-serif;
}
.profile-photo-grid figcaption span { grid-row: 1 / 3; color: var(--skill-accent); font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.profile-photo-grid figcaption strong { overflow: hidden; font-size: 13px; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.profile-photo-grid figcaption em { color: rgba(255,255,255,.55); font-size: 8px; font-style: normal; font-weight: 800; letter-spacing: .1em; }
.creator-portrait-reference {
  margin: 78px 0 54px;
  padding: 78px 0 54px;
  border-top: 1px solid var(--home-line);
  border-bottom: 1px solid var(--home-line);
}
.creator-portrait-reference-head {
  margin-bottom: 34px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .6fr);
  gap: 70px;
  align-items: end;
}
.creator-portrait-reference-head h2 {
  margin: 0;
  color: var(--home-ink);
  font-size: clamp(46px, 5.2vw, 72px);
  line-height: .96;
  letter-spacing: -.068em;
}
.creator-portrait-reference-head > p {
  margin: 0;
  color: var(--home-muted);
  font-size: 13px;
  line-height: 1.75;
  word-break: keep-all;
}
.creator-portrait-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.creator-portrait-grid figure { min-width: 0; margin: 0; border: 1px solid var(--home-line); background: #090a09; }
.creator-portrait-grid figure:nth-child(1) { --portrait-accent: #d5f66e; }
.creator-portrait-grid figure:nth-child(2) { --portrait-accent: #ddbd75; }
.creator-portrait-grid figure:nth-child(3) { --portrait-accent: #d5f66e; }
.creator-portrait-link { display: block; height: 100%; color: inherit; text-decoration: none; }
.creator-portrait-link:focus-visible { outline: 2px solid var(--portrait-accent); outline-offset: 4px; }
.creator-portrait-grid img { width: 100%; height: auto; aspect-ratio: 4 / 5; display: block; object-fit: cover; object-position: center top; }
.creator-portrait-grid figcaption { min-height: 188px; padding: 20px; border-top: 5px solid var(--portrait-accent); display: flex; flex-direction: column; align-items: flex-start; }
.creator-portrait-grid figcaption span { color: var(--portrait-accent); font: 900 10px/1 Arial, sans-serif; letter-spacing: .1em; }
.creator-portrait-grid figcaption small { margin-top: 18px; color: var(--home-muted); font-size: 11px; }
.creator-portrait-grid figcaption strong { margin-top: 6px; display: block; color: var(--home-ink); font-size: 21px; }
.creator-portrait-grid figcaption p { margin: 7px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.55; }
.creator-portrait-grid figcaption em { margin-top: auto; padding-top: 18px; color: var(--portrait-accent); font-size: 12px; font-style: normal; font-weight: 800; }
.creator-portrait-link:hover figcaption em { text-decoration: underline; text-underline-offset: 4px; }
.home-dark .educator-live-cover img { object-position: center top; }

@media (max-width: 1050px) {
  .home-dark .profile-poster { grid-template-columns: minmax(0, .92fr) minmax(340px, 1.08fr); }
  .profile-poster-copy { padding: 30px; }
  .profile-class-story-grid { grid-template-columns: minmax(0, 1fr) 330px; }
  .creator-portrait-reference-head { gap: 38px; }
}

@media (max-width: 820px) {
  .home-dark .profile-poster { grid-template-columns: 1fr; }
  .profile-poster-copy { min-height: 650px; order: 2; }
  .home-dark .profile-poster .profile-portrait { min-height: 720px; order: 1; border-left: 0; border-bottom: 1px solid var(--home-line); }
  .profile-class-story-grid { grid-template-columns: 1fr; }
  .profile-class-story-media { min-height: 0; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .profile-class-story-visual { min-height: 540px; }
  .profile-real-facts { grid-template-columns: 1fr; gap: 34px; }
  .profile-course-schedule-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .profile-course-schedule-grid article:nth-child(3) { border-right: 0; }
  .profile-course-schedule-grid article:nth-child(-n+3) { border-bottom: 1px solid var(--home-line); }
  .profile-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .creator-portrait-reference-head { grid-template-columns: 1fr; gap: 26px; }
  .creator-portrait-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .creator-portrait-grid figcaption { min-height: 208px; padding: 15px; }
  .creator-portrait-grid figcaption strong { font-size: 16px; }
}

@media (max-width: 580px) {
  .home-dark .profile-poster { box-shadow: 7px 7px 0 color-mix(in srgb, var(--skill-accent) 12%, transparent); }
  .home-dark .profile-poster .profile-portrait { min-height: 500px; }
  .profile-poster-copy { min-height: 610px; padding: 24px 20px 20px; }
  .profile-poster-brand { align-items: flex-start; flex-direction: column; gap: 8px; }
  .profile-poster .profile-summary { padding: 52px 0 36px; }
  .home-dark .profile-poster .profile-summary h1 { font-size: 61px; }
  .profile-statement { font-size: 21px; }
  .profile-poster-foot { align-items: flex-start; flex-direction: column; gap: 7px; }
  .profile-poster .profile-portrait figcaption { display: none; }
  .profile-class-story { margin-bottom: 72px; }
  .profile-class-story-head { align-items: flex-start; flex-direction: column; }
  .profile-class-story-head h2 { font-size: 43px; }
  .profile-story-mobile-line { display: block; }
  .profile-class-story-visual { min-height: 330px; }
  .profile-course-map { min-height: 0; padding: 21px 18px; }
  .profile-course-map-list { margin-top: 42px; }
  .profile-course-map-list article { grid-template-columns: 42px minmax(0, 1fr); gap: 12px; }
  .profile-course-map-list article > span { font-size: 25px; }
  .profile-course-map-list article > div { grid-template-columns: 1fr; gap: 7px; }
  .profile-course-map-list strong,
  .profile-course-map-list ul { grid-column: 1; }
  .profile-venue-proof { min-height: 132px; padding: 14px 12px 13px; }
  .profile-venue-proof-head { margin-bottom: 9px; grid-template-columns: 1fr auto; gap: 5px 8px; }
  .profile-venue-proof-head span { grid-column: 1 / -1; }
  .profile-venue-proof-images { gap: 4px; }
  .profile-venue-proof-images figure { aspect-ratio: 1 / 1; }
  .profile-class-story-visual figcaption { max-width: calc(100% - 36px); left: 18px; bottom: 18px; }
  .profile-class-story-steps article { min-height: 0; padding: 22px 19px; grid-template-columns: 34px 1fr; gap: 10px; }
  .profile-generated-note { padding: 17px 19px; }
  .profile-real-facts { margin-bottom: 72px; padding: 48px 0; }
  .profile-real-facts h2 { font-size: 43px; }
  .profile-career-list article { min-height: 0; padding: 22px 0; grid-template-columns: 44px 1fr; gap: 10px; }
  .profile-career-list article p { font-size: 16px; }
  .profile-photo-archive { margin-bottom: 72px; }
  .profile-course-schedule,
  .profile-training { margin-bottom: 72px; padding: 48px 0; }
  .profile-course-schedule .profile-section-head,
  .profile-training .profile-section-head { align-items: flex-start; flex-direction: column; }
  .profile-course-schedule .profile-section-head h2,
  .profile-training .profile-section-head h2 { font-size: 43px; }
  .profile-course-schedule-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile-course-schedule-grid article { min-height: 135px; }
  .profile-course-schedule-grid article:nth-child(3) { border-right: 1px solid var(--home-line); }
  .profile-course-schedule-grid article:nth-child(2n) { border-right: 0; }
  .profile-course-schedule-grid article:nth-child(-n+4) { border-bottom: 1px solid var(--home-line); }
  .profile-course-schedule-grid p { font-size: 16px; }
  .profile-training-list { grid-template-columns: 1fr; }
  .profile-training-list li { min-height: 72px; padding: 16px 10px; border-right: 0; }
  .profile-photo-archive .profile-section-head { align-items: flex-start; flex-direction: column; }
  .profile-photo-archive .profile-section-head h2 { font-size: 43px; }
  .profile-photo-grid { gap: 7px; }
  .profile-photo-grid figcaption { padding: 45px 11px 11px; grid-template-columns: 23px minmax(0, 1fr); gap: 2px 6px; }
  .profile-photo-grid figcaption strong { font-size: 11px; }
  .creator-portrait-reference { margin-top: 58px; padding-top: 58px; }
  .creator-portrait-reference-head h2 { font-size: 43px; }
  .creator-portrait-grid { grid-template-columns: 1fr; gap: 14px; }
  .creator-portrait-grid figcaption { min-height: 0; padding: 22px 18px 24px; }
  .creator-portrait-grid figcaption strong { font-size: 21px; }
}

/* Academy rental and beauty-education space partners */
.space-market-page {
  padding-bottom: 118px;
  color: var(--home-ink);
}
.space-market-page h1,
.space-market-page h2,
.space-market-page h3,
.space-market-page p,
.space-market-page strong,
.space-market-page li { word-break: keep-all; overflow-wrap: break-word; }
.space-market-page h1,
.space-market-page h2,
.space-market-page h3 { overflow-wrap: normal; }
.space-market-hero {
  min-height: 710px;
  padding-top: 66px;
  padding-bottom: 92px;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(430px, 1.08fr);
  gap: 58px;
  align-items: stretch;
}
.space-market-copy { padding: 18px 0 0; display: flex; flex-direction: column; align-items: flex-start; }
.space-market-copy h1 {
  max-width: 780px;
  margin: 34px 0 25px;
  color: var(--home-ink);
  font-size: clamp(54px, 6vw, 88px);
  line-height: .94;
  letter-spacing: -.078em;
}
.space-market-copy h1 span { color: var(--home-signal); }
.space-market-copy > p:not(.eyebrow) { max-width: 620px; margin: 0; color: var(--home-muted); font-size: 15px; line-height: 1.78; }
.space-market-actions { margin-top: 36px; display: flex; align-items: center; flex-wrap: wrap; gap: 14px 22px; }
.space-market-text-link { color: var(--home-ink); font-size: 12px; font-weight: 850; text-decoration: underline; text-underline-offset: 6px; }
.space-market-text-link span { color: var(--home-signal); }
.space-market-status {
  width: 100%;
  max-width: 620px;
  margin-top: auto;
  padding-top: 22px;
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 5px 18px;
  border-top: 1px solid var(--home-line);
}
.space-market-status span { grid-row: span 2; color: var(--home-signal); font: 900 9px/1.35 Arial, sans-serif; letter-spacing: .1em; }
.space-market-status strong { color: var(--home-ink); font-size: 13px; }
.space-market-status small { color: var(--home-muted); font-size: 10px; line-height: 1.55; }
.space-market-visual {
  min-width: 0;
  min-height: 610px;
  margin: 0;
  position: relative;
  overflow: hidden;
  border: 1px solid var(--home-line);
  background: #111;
  box-shadow: 12px 12px 0 rgba(209,229,154,.12);
}
.space-market-visual::after { content: ""; position: absolute; inset: 40% 0 0; background: linear-gradient(transparent, rgba(0,0,0,.83)); }
.space-market-visual img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.space-market-visual > span { position: absolute; z-index: 2; top: 18px; left: 18px; padding: 9px 11px; background: var(--home-signal); color: var(--home-bg); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.space-market-visual figcaption { max-width: calc(100% - 48px); position: absolute; z-index: 2; left: 24px; bottom: 24px; display: grid; gap: 6px; }
.space-market-visual figcaption strong { color: #fff; font-size: clamp(20px, 2.4vw, 31px); }
.space-market-visual figcaption small { color: rgba(255,255,255,.62); font-size: 9px; }

.space-section-heading > .eyebrow,
.space-section-heading > div > .eyebrow { margin-bottom: 17px; }
.space-section-heading h2 { margin: 0; color: var(--home-ink); font-size: clamp(43px, 5vw, 70px); line-height: .98; letter-spacing: -.065em; }
.space-audience-section { padding-top: 106px; padding-bottom: 112px; border-top: 1px solid var(--home-line); }
.space-audience-section > .space-section-heading { max-width: 850px; }
.space-audience-grid { margin-top: 48px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--home-line); background: var(--home-line); gap: 1px; }
.space-audience-grid article { min-height: 390px; padding: 34px; display: flex; flex-direction: column; background: #090a09; }
.space-audience-grid article:first-child { border-top: 6px solid #5d78ff; }
.space-audience-grid article:last-child { border-top: 6px solid var(--home-signal); }
.space-audience-grid article > span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; letter-spacing: .12em; }
.space-audience-grid article:first-child > span { color: #8ca0ff; }
.space-audience-grid article > strong { max-width: 480px; margin-top: 72px; color: var(--home-ink); font-size: clamp(26px, 2.8vw, 38px); line-height: 1.08; letter-spacing: -.045em; }
.space-audience-grid article > p { max-width: 560px; margin: 15px 0 28px; color: var(--home-muted); font-size: 13px; line-height: 1.7; }
.space-audience-grid ul { margin: auto 0 0; padding: 19px 0 0; display: grid; gap: 9px; border-top: 1px solid var(--home-line); list-style: none; }
.space-audience-grid li { padding-left: 16px; position: relative; color: var(--home-ink); font-size: 11px; }
.space-audience-grid li::before { content: ""; width: 5px; height: 5px; position: absolute; top: .6em; left: 0; background: var(--home-signal); }

.space-listing-sample { padding-top: 112px; padding-bottom: 118px; border-top: 1px solid var(--home-line); }
.space-listing-sample-head { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(300px, .62fr); gap: 70px; align-items: end; }
.space-listing-sample-head h2 { margin: 17px 0 0; color: var(--home-ink); font-size: clamp(43px, 5vw, 70px); line-height: .98; letter-spacing: -.065em; }
.space-listing-sample-head > p { margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.75; }
.space-listing-sample-head > p strong { margin-bottom: 9px; display: block; color: #ff8dbc; font-size: 10px; letter-spacing: .08em; }
.space-listing-sample-card { margin-top: 52px; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(410px, .88fr); border: 1px solid var(--home-line); background: #090a09; box-shadow: 12px 12px 0 rgba(93,120,255,.12); }
.space-listing-sample-card figure { min-width: 0; min-height: 600px; margin: 0; position: relative; overflow: hidden; border-right: 1px solid var(--home-line); }
.space-listing-sample-card figure::after { content: ""; position: absolute; inset: 52% 0 0; background: linear-gradient(transparent, rgba(0,0,0,.86)); }
.space-listing-sample-card img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.space-listing-sample-card figure > span { position: absolute; z-index: 2; top: 22px; left: 22px; padding: 10px 12px; border: 1px solid #ff67a3; background: rgba(11,12,11,.9); color: #ff8dbc; font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.space-listing-sample-card figcaption { max-width: calc(100% - 48px); position: absolute; z-index: 2; left: 24px; bottom: 24px; display: grid; gap: 7px; }
.space-listing-sample-card figcaption strong { color: #fff; font-size: 27px; }
.space-listing-sample-card figcaption small { color: rgba(255,255,255,.68); font-size: 10px; line-height: 1.55; }
.space-listing-sample-info { min-width: 0; padding: 38px; display: flex; flex-direction: column; }
.space-listing-sample-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.space-listing-sample-meta span,
.space-listing-sample-meta em { padding: 7px 9px; border: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; font-style: normal; font-weight: 850; }
.space-listing-sample-meta em { margin-left: auto; border-color: #ff67a3; color: #ff8dbc; }
.space-listing-sample-info h3 { margin: 34px 0 15px; color: var(--home-ink); font-size: clamp(30px, 3.2vw, 47px); line-height: 1.05; letter-spacing: -.05em; }
.space-listing-sample-info h3 small { margin-top: 10px; display: block; color: var(--home-muted); font-size: 10px; letter-spacing: .02em; }
.space-listing-sample-info > p { margin: 0 0 31px; color: var(--home-muted); font-size: 12px; line-height: 1.72; }
.space-listing-sample-facts { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.space-listing-sample-facts div { min-height: 120px; padding: 17px; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.space-listing-sample-facts dt { color: var(--home-signal); font-size: 9px; font-weight: 900; }
.space-listing-sample-facts dd { margin: 25px 0 0; color: var(--home-ink); font-size: 12px; line-height: 1.55; }
.space-listing-sample-contact { margin-top: auto; padding-top: 25px; display: flex; align-items: flex-end; justify-content: space-between; gap: 22px; }
.space-listing-sample-contact > div { display: grid; gap: 7px; }
.space-listing-sample-contact > div span { color: var(--home-signal); font-size: 9px; font-weight: 900; }
.space-listing-sample-contact > div strong { max-width: 330px; color: var(--home-ink); font-size: 12px; line-height: 1.55; }
.space-listing-sample-contact > span { padding: 12px 14px; border: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; font-weight: 850; text-align: center; }
.space-listing-sample-note { margin: 18px 0 0; color: var(--home-muted); font-size: 9px; line-height: 1.6; }

.space-fields-section { padding: 106px 0 112px; background: var(--home-signal); color: var(--home-bg); }
.space-section-heading-split { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(290px, .55fr); gap: 60px; align-items: end; }
.space-fields-section .space-section-heading h2,
.space-onboarding-section .space-section-heading h2 { color: inherit; }
.space-section-heading-split > p { margin: 0; font-size: 13px; line-height: 1.75; }
.space-fields-section .space-section-heading-split > p { color: rgba(11,12,11,.66); }
.space-field-grid { margin-top: 56px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid rgba(11,12,11,.26); border-left: 1px solid rgba(11,12,11,.26); }
.space-field-grid article { min-height: 246px; padding: 27px; display: flex; flex-direction: column; border-right: 1px solid rgba(11,12,11,.26); border-bottom: 1px solid rgba(11,12,11,.26); }
.space-field-grid article > span { color: rgba(11,12,11,.55); font: 900 10px/1 Arial, sans-serif; }
.space-field-grid article > strong { margin-top: auto; color: var(--home-bg); font-size: 21px; letter-spacing: -.035em; }
.space-field-grid article > p { margin: 9px 0 0; color: rgba(11,12,11,.66); font-size: 11px; line-height: 1.6; }

.space-production-section { padding-top: 112px; padding-bottom: 118px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(520px, 1.2fr); gap: 76px; align-items: center; }
.space-production-copy h2 { margin: 18px 0 24px; color: var(--home-ink); font-size: clamp(42px, 4.8vw, 67px); line-height: .98; letter-spacing: -.065em; }
.space-production-copy > p:not(.eyebrow) { margin: 0 0 30px; color: var(--home-muted); font-size: 13px; line-height: 1.75; }
.space-production-rule { padding: 15px 0; display: grid; grid-template-columns: 88px 1fr; gap: 17px; border-top: 1px solid var(--home-line); }
.space-production-rule strong { color: var(--home-signal); font-size: 10px; }
.space-production-rule span { color: var(--home-ink); font-size: 11px; }
.space-photo-package { min-width: 0; border: 1px solid var(--home-line); background: #090a09; box-shadow: 12px 12px 0 rgba(93,120,255,.12); }
.space-photo-package-head { min-height: 92px; padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--home-line); }
.space-photo-package-head > div { display: grid; gap: 4px; }
.space-photo-package-head span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.space-photo-package-head strong { color: var(--home-ink); font-size: 19px; }
.space-photo-package-head em { padding: 8px 10px; border: 1px solid #ff67a3; color: #ff8dbc; font-size: 9px; font-style: normal; font-weight: 900; }
.space-photo-package-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.space-photo-package-grid article { min-height: 255px; padding: 20px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); }
.space-photo-package-grid article:last-child { border-right: 0; }
.space-photo-package-grid article:nth-child(1) { background: linear-gradient(165deg, rgba(93,120,255,.2), transparent 62%); }
.space-photo-package-grid article:nth-child(2) { background: linear-gradient(165deg, rgba(209,229,154,.15), transparent 62%); }
.space-photo-package-grid article:nth-child(3) { background: linear-gradient(165deg, rgba(255,103,163,.16), transparent 62%); }
.space-photo-package-grid article > span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; }
.space-photo-package-grid article > strong { margin-top: auto; color: var(--home-ink); font-size: 17px; }
.space-photo-package-grid article > p { margin: 8px 0 0; color: var(--home-muted); font-size: 10px; line-height: 1.6; }
.space-photo-package > p { margin: 0; padding: 14px 18px; color: var(--home-muted); font-size: 9px; line-height: 1.55; border-top: 1px solid var(--home-line); }

.space-onboarding-section { padding: 108px 0 114px; border-top: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: #090a09; }
.space-onboarding-section .space-section-heading-split > p { color: var(--home-muted); }
.space-onboarding-steps { margin: 54px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); list-style: none; }
.space-onboarding-steps li { min-height: 250px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.space-onboarding-steps li > span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; }
.space-onboarding-steps li > div { margin-top: auto; }
.space-onboarding-steps strong { color: var(--home-ink); font-size: 18px; }
.space-onboarding-steps p { margin: 8px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.62; }
.space-partner-cta { margin-top: 18px; padding: 38px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 45px; align-items: end; background: #5d78ff; color: #fff; }
.space-partner-cta span { font: 900 9px/1 Arial, sans-serif; letter-spacing: .11em; }
.space-partner-cta h2 { margin: 16px 0 11px; font-size: clamp(34px, 4vw, 58px); line-height: .98; letter-spacing: -.06em; }
.space-partner-cta p { max-width: 670px; margin: 0; color: rgba(255,255,255,.72); font-size: 12px; }
.space-partner-cta > div:last-child { min-width: 265px; display: grid; gap: 11px; }
.space-partner-cta .button-primary { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.space-partner-cta small { color: rgba(255,255,255,.62); font-size: 9px; line-height: 1.5; }

.space-boundary { padding-top: 104px; display: grid; grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr); gap: 70px; }
.space-boundary > div:first-child > span { color: #ff67a3; font: 900 10px/1 Arial, sans-serif; letter-spacing: .1em; }
.space-boundary h2 { margin: 22px 0 0; color: var(--home-ink); font-size: clamp(38px, 4.2vw, 59px); line-height: 1; letter-spacing: -.058em; }
.space-boundary > div:last-child { padding-top: 30px; border-top: 1px solid #ff67a3; }
.space-boundary p { margin: 0 0 20px; color: var(--home-muted); font-size: 13px; line-height: 1.75; }
.space-boundary strong { display: block; color: var(--home-ink); font-size: 13px; line-height: 1.75; }
.space-boundary a { margin-top: 28px; display: inline-block; color: var(--home-signal); font-size: 12px; font-weight: 850; text-decoration: underline; text-underline-offset: 5px; }

@media (max-width: 1320px) and (min-width: 821px) {
  .desktop-nav,
  .nav-account-link,
  .nav-cart-link { display: none; }
  .mobile-menu-button { width: 42px; height: 42px; padding: 0; display: grid; place-content: center; gap: 5px; border: 0; border-radius: 0; background: var(--home-surface-2); cursor: pointer; }
  .mobile-menu-button span { width: 18px; height: 2px; display: block; background: var(--home-ink); transition: transform .2s ease; }
  .mobile-menu-button[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .mobile-menu-button[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .mobile-nav { width: min(100% - 44px, var(--max)); margin: 0 auto 10px; padding: 10px; border: 1px solid var(--home-line); border-radius: 0; background: rgba(11,12,11,.98); color: var(--home-ink); box-shadow: var(--shadow); }
  .mobile-nav:not([hidden]) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mobile-nav a { padding: 12px; border: 0; background: transparent; font-weight: 700; }
  .mobile-nav a:hover { background: var(--home-surface-2); color: var(--home-signal); }
}

@media (max-width: 1050px) {
  .space-market-hero { min-height: 0; grid-template-columns: 1fr; gap: 42px; }
  .space-market-copy { min-height: 560px; }
  .space-market-visual { min-height: 570px; }
  .space-section-heading-split,
  .space-listing-sample-head,
  .space-listing-sample-card,
  .space-production-section,
  .space-boundary { grid-template-columns: 1fr; }
  .space-listing-sample-card figure { min-height: 540px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .space-production-section { gap: 46px; }
  .space-onboarding-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .space-market-hero { min-height: 0; grid-template-columns: 1fr; gap: 42px; }
  .space-market-copy { min-height: 560px; }
  .space-market-visual { min-height: 570px; }
  .space-section-heading-split,
  .space-listing-sample-head,
  .space-listing-sample-card,
  .space-production-section,
  .space-boundary { grid-template-columns: 1fr; }
  .space-listing-sample-card figure { min-height: 500px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .space-field-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .space-production-section { gap: 46px; }
  .space-partner-cta { grid-template-columns: 1fr; align-items: start; }
  .space-partner-cta > div:last-child { min-width: 0; }
}

@media (max-width: 580px) {
  .space-market-page { padding-bottom: 76px; }
  .space-market-hero { padding-top: 48px; padding-bottom: 72px; }
  .space-market-copy { min-height: 0; }
  .space-market-copy h1 { margin-top: 26px; font-size: 45px; }
  .space-market-copy > p:not(.eyebrow) { font-size: 13px; }
  .space-market-actions { width: 100%; display: grid; }
  .space-market-actions .button { width: 100%; }
  .space-market-text-link { min-height: 44px; display: flex; align-items: center; justify-content: space-between; }
  .space-market-status { margin-top: 46px; grid-template-columns: 1fr; }
  .space-market-status span { grid-row: auto; }
  .space-market-visual { min-height: 390px; box-shadow: 7px 7px 0 rgba(209,229,154,.12); }
  .space-market-visual figcaption { max-width: calc(100% - 36px); left: 18px; bottom: 18px; }
  .space-market-visual figcaption strong { font-size: 20px; }
  .space-audience-section { padding-top: 72px; padding-bottom: 72px; }
  .space-section-heading h2 { font-size: 42px; }
  .space-audience-grid { margin-top: 34px; grid-template-columns: 1fr; }
  .space-audience-grid article { min-height: 335px; padding: 22px; }
  .space-audience-grid article > strong { margin-top: 52px; font-size: 28px; }
  .space-listing-sample { padding-top: 76px; padding-bottom: 80px; }
  .space-listing-sample-head { gap: 26px; }
  .space-listing-sample-head h2 { font-size: 42px; }
  .space-listing-sample-card { margin-top: 36px; box-shadow: 7px 7px 0 rgba(93,120,255,.12); }
  .space-listing-sample-card figure { min-height: 360px; }
  .space-listing-sample-card figure > span { top: 16px; left: 16px; }
  .space-listing-sample-card figcaption { max-width: calc(100% - 32px); left: 16px; bottom: 16px; }
  .space-listing-sample-card figcaption strong { font-size: 22px; }
  .space-listing-sample-info { padding: 22px 18px; }
  .space-listing-sample-meta em { margin-left: 0; }
  .space-listing-sample-info h3 { margin-top: 28px; font-size: 32px; }
  .space-listing-sample-facts { grid-template-columns: 1fr; }
  .space-listing-sample-facts div { min-height: 104px; }
  .space-listing-sample-contact { margin-top: 28px; align-items: stretch; flex-direction: column; }
  .space-fields-section { padding: 72px 0 76px; }
  .space-section-heading-split { gap: 26px; }
  .space-field-grid { margin-top: 36px; grid-template-columns: 1fr; }
  .space-field-grid article { min-height: 180px; padding: 22px; }
  .space-production-section { padding-top: 76px; padding-bottom: 80px; }
  .space-production-copy h2 { font-size: 42px; }
  .space-production-rule { grid-template-columns: 72px 1fr; }
  .space-photo-package { box-shadow: 7px 7px 0 rgba(93,120,255,.12); }
  .space-photo-package-head { padding: 17px; }
  .space-photo-package-grid { grid-template-columns: 1fr; }
  .space-photo-package-grid article { min-height: 180px; padding: 18px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .space-photo-package-grid article:last-child { border-bottom: 0; }
  .space-onboarding-section { padding: 72px 0 76px; }
  .space-onboarding-steps { margin-top: 36px; grid-template-columns: 1fr; }
  .space-onboarding-steps li { min-height: 190px; padding: 22px; }
  .space-partner-cta { padding: 24px 20px; gap: 30px; }
  .space-partner-cta h2 { font-size: 38px; }
  .space-partner-cta .button { width: 100%; }
  .space-boundary { padding-top: 72px; gap: 32px; }
  .space-boundary h2 { font-size: 41px; }
}

/* Search-intent cluster and connected editorial content */
.search-topic-hub { padding-top: clamp(84px, 10vw, 144px); padding-bottom: clamp(84px, 10vw, 144px); }
.search-topic-hub > header { padding-bottom: 44px; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: clamp(40px, 7vw, 96px); align-items: end; border-bottom: 1px solid var(--home-line); }
.search-topic-hub h2 { margin: 18px 0 0; color: var(--home-ink); font-size: clamp(46px, 5.7vw, 78px); line-height: .98; letter-spacing: -.068em; word-break: keep-all; overflow-wrap: normal; }
.search-topic-hub h2 em { color: var(--home-signal); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.search-topic-hub > header > p { margin: 0 0 4px; color: var(--home-muted); font-size: 14px; font-weight: 620; line-height: 1.75; }
.search-topic-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-left: 1px solid var(--home-line); }
.search-topic-card { min-height: 312px; padding: 25px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); color: var(--home-ink); transition: background .2s ease, color .2s ease; }
.search-topic-card:hover { background: var(--home-signal); color: var(--home-bg); }
.search-topic-card > span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.search-topic-card:hover > span { color: inherit; }
.search-topic-card > strong { max-width: 310px; margin-top: 72px; font-size: 26px; line-height: 1.12; letter-spacing: -.045em; }
.search-topic-card > p { margin: 12px 0 0; color: var(--home-muted); font-size: 11px; }
.search-topic-card:hover > p { color: rgba(11,12,11,.68); }
.search-topic-card > b { margin-top: auto; padding-top: 24px; display: flex; justify-content: space-between; border-top: 1px solid currentColor; font-size: 11px; }
.search-topic-card svg { width: 16px; }
.search-topic-hub-foot { padding: 22px 0; display: grid; grid-template-columns: 180px 1fr auto; gap: 28px; align-items: start; border-bottom: 1px solid var(--home-line); }
.search-topic-hub-foot > span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.search-topic-hub-foot > p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; }
.search-topic-hub-foot > a { color: var(--home-ink); font-size: 11px; font-weight: 850; }

.search-topic-page { padding-bottom: clamp(90px, 11vw, 160px); }
.search-topic-hero { padding-top: clamp(74px, 9vw, 126px); padding-bottom: clamp(72px, 8vw, 116px); }
.search-topic-breadcrumb { margin-bottom: 54px; display: flex; flex-wrap: wrap; gap: 9px; color: var(--home-muted); font-size: 10px; font-weight: 780; }
.search-topic-breadcrumb a:hover { color: var(--home-signal); }
.search-topic-hero h1 { max-width: 1040px; margin: 25px 0 30px; color: var(--home-ink); font-size: clamp(54px, 7.3vw, 100px); line-height: .94; letter-spacing: -.077em; word-break: keep-all; overflow-wrap: normal; }
.search-topic-hero > p:not(.eyebrow) { max-width: 780px; margin: 0; color: var(--home-muted); font-size: 17px; font-weight: 620; line-height: 1.8; }
.search-topic-facets { margin-top: 64px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.search-topic-facets > span { min-height: 132px; padding: 22px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.search-topic-facets small { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.search-topic-facets strong { color: var(--home-ink); font-size: 20px; }
.search-topic-check { padding-top: 94px; padding-bottom: 104px; display: grid; grid-template-columns: minmax(280px, .7fr) minmax(0, 1.3fr); gap: clamp(54px, 8vw, 116px); border-top: 1px solid var(--home-line); }
.search-topic-check h2,
.search-topic-path h2 { margin: 21px 0 0; color: var(--home-ink); font-size: clamp(42px, 5vw, 70px); line-height: .98; letter-spacing: -.066em; word-break: keep-all; overflow-wrap: normal; }
.search-topic-check > div > p:not(.eyebrow) { max-width: 410px; margin: 28px 0 0; color: var(--home-muted); font-size: 13px; line-height: 1.72; }
.search-topic-check ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--home-line); }
.search-topic-check li { padding: 25px 0; display: grid; grid-template-columns: 54px 1fr; gap: 18px; border-bottom: 1px solid var(--home-line); }
.search-topic-check li > span { color: var(--home-signal); font: 900 10px/1 Arial, sans-serif; }
.search-topic-check li strong { color: var(--home-ink); font-size: 18px; }
.search-topic-check li p { margin: 7px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.65; }
.search-topic-results { padding-top: 96px; padding-bottom: 110px; border-top: 1px solid var(--home-line); }
.search-topic-result-grid { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr); gap: 18px; }
.search-topic-result-grid > .class-grid,
.search-topic-result-grid > .pro-grid { grid-template-columns: 1fr; }
.search-topic-result-grid .class-card,
.search-topic-result-grid .pro-card { height: 100%; }
.search-topic-path { padding-top: 98px; display: grid; grid-template-columns: minmax(270px, .64fr) minmax(0, 1.36fr); gap: clamp(54px, 8vw, 112px); border-top: 1px solid var(--home-line); }
.search-topic-path-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.search-topic-path-links > a { min-height: 255px; padding: 22px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); color: var(--home-ink); transition: background .2s ease; }
.search-topic-path-links > a:hover { background: var(--home-surface-2); }
.search-topic-path-links span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.search-topic-path-links strong { margin-top: 48px; font-size: 21px; line-height: 1.15; }
.search-topic-path-links p { margin: 11px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.6; }
.search-topic-path-links b { margin-top: auto; padding-top: 18px; color: var(--home-signal); font-size: 10px; }
.search-topic-path-links .search-topic-article-link { grid-column: 1 / -1; min-height: 220px; background: rgba(93,120,255,.08); }
.search-topic-boundary { margin-top: 96px; padding-top: 26px; display: grid; grid-template-columns: 240px 1fr auto; gap: 34px; align-items: start; border-top: 1px solid var(--home-signal); }
.search-topic-boundary strong { color: var(--home-ink); font-size: 14px; }
.search-topic-boundary p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.72; }
.search-topic-boundary a { color: var(--home-signal); font-size: 10px; font-weight: 850; }

.detail-search-cluster { margin: 88px 0; padding: 40px; display: grid; grid-template-columns: minmax(250px, .62fr) minmax(0, 1.38fr); gap: 48px; border: 1px solid var(--home-line); background: var(--home-surface); }
.detail-search-cluster h2 { margin: 18px 0 19px; color: var(--home-ink); font-size: clamp(34px, 4vw, 53px); line-height: 1; letter-spacing: -.058em; word-break: keep-all; overflow-wrap: normal; }
.detail-search-cluster > div:first-child > p:not(.eyebrow) { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.68; }
.detail-search-cluster-links { display: grid; border-top: 1px solid var(--home-line); }
.detail-search-cluster-links > a { padding: 19px 0; display: grid; grid-template-columns: 142px minmax(170px, .8fr) 1fr auto; gap: 18px; align-items: center; border-bottom: 1px solid var(--home-line); color: var(--home-ink); }
.detail-search-cluster-links > a:hover strong,
.detail-search-cluster-links > a:hover b { color: var(--home-signal); }
.detail-search-cluster-links span { color: var(--home-muted); font: 900 8px/1 Arial, sans-serif; letter-spacing: .07em; }
.detail-search-cluster-links strong { font-size: 14px; }
.detail-search-cluster-links p { margin: 0; color: var(--home-muted); font-size: 10px; }
.detail-search-cluster-links b { color: var(--home-ink); font-size: 9px; }

.blog-archive-grid { margin-top: 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-left: 1px solid var(--home-line); }
.blog-archive-grid > a { min-height: 245px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); color: var(--home-ink); }
.blog-archive-grid > a:hover { background: var(--home-surface-2); }
.blog-archive-grid span { color: var(--home-signal); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.blog-archive-grid strong { margin-top: 46px; font-size: 23px; line-height: 1.15; }
.blog-archive-grid p { margin: 12px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.65; }
.blog-archive-grid b { margin-top: auto; padding-top: 18px; color: var(--home-muted); font-size: 10px; }

/* Technique note directory */
.tech-note-index { --tech-accent: #c8ff2f; padding-top: clamp(62px, 8vw, 112px); padding-bottom: clamp(94px, 11vw, 156px); }
.tech-note-index-hero { padding-bottom: clamp(62px, 8vw, 108px); display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr); gap: clamp(56px, 8vw, 118px); align-items: end; border-bottom: 1px solid var(--home-line); }
.tech-note-index-hero h1 { max-width: 860px; margin: 28px 0 0; color: var(--home-ink); font-size: clamp(60px, 7.3vw, 104px); line-height: .91; letter-spacing: -.078em; word-break: keep-all; }
.tech-note-index-hero h1 em { color: var(--tech-accent); font-family: Georgia, "Times New Roman", serif; font-size: .8em; font-style: italic; font-weight: 400; letter-spacing: -.055em; }
.tech-note-index-intro { padding-top: 28px; border-top: 1px solid var(--tech-accent); }
.tech-note-index-intro > p { max-width: 610px; margin: 0; color: var(--home-muted); font-size: 14px; line-height: 1.8; word-break: keep-all; }
.tech-note-index-intro dl { margin: 42px 0 0; border-top: 1px solid var(--home-line); }
.tech-note-index-intro dl > div { min-height: 61px; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 22px; align-items: center; border-bottom: 1px solid var(--home-line); }
.tech-note-index-intro dt { color: var(--home-muted); font-size: 10px; font-weight: 780; }
.tech-note-index-intro dd { margin: 0; color: var(--home-ink); font-size: 12px; font-weight: 850; text-align: right; }
.tech-note-index-body { padding-top: clamp(64px, 8vw, 108px); display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .55fr); gap: 20px; align-items: start; }
.tech-note-index-list { min-width: 0; display: grid; gap: 18px; }
.tech-note-index-card { min-width: 0; display: grid; grid-template-columns: minmax(260px, .78fr) minmax(0, 1.22fr); border: 1px solid var(--home-line); background: var(--home-surface); transition: border-color .2s ease, transform .2s ease; }
.tech-note-index-card:hover { border-color: var(--tech-accent); transform: translateY(-3px); }
.tech-note-index-visual { min-height: 610px; padding: 22px; position: relative; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px), radial-gradient(circle at 66% 29%, rgba(200,255,47,.09), transparent 34%); background-size: 52px 52px, 52px 52px, auto; overflow: hidden; }
.tech-note-index-visual > span { position: relative; z-index: 2; color: var(--tech-accent); font: 900 9px/1.25 Arial, sans-serif; letter-spacing: .09em; }
.tech-note-index-visual svg { width: 112%; max-width: 500px; height: auto; margin: -8px -20px -50px auto; display: block; color: #efefe8; opacity: .72; transform: translateX(5%); }
.tech-note-index-visual > strong { margin-top: auto; position: relative; z-index: 2; color: var(--home-ink); font-size: clamp(42px, 4.8vw, 68px); line-height: .82; letter-spacing: -.085em; }
.tech-note-index-copy { min-width: 0; padding: clamp(27px, 4vw, 52px); display: flex; flex-direction: column; }
.tech-note-index-meta { min-height: 34px; display: grid; grid-template-columns: 1fr auto; gap: 9px 16px; align-items: start; }
.tech-note-index-meta span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.tech-note-index-meta em { padding: 7px 9px; grid-column: 2; grid-row: 1 / 3; border: 1px solid rgba(200,255,47,.45); color: var(--tech-accent); font-size: 9px; font-style: normal; font-weight: 820; white-space: nowrap; }
.tech-note-index-meta time { color: var(--home-muted); font: 800 9px/1 Arial, sans-serif; letter-spacing: .06em; }
.tech-note-index-copy h2 { margin: clamp(70px, 8vw, 108px) 0 22px; color: var(--home-ink); font-size: clamp(35px, 4vw, 58px); line-height: 1; letter-spacing: -.062em; word-break: keep-all; }
.tech-note-index-copy > p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.78; word-break: keep-all; }
.tech-note-index-tags { margin-top: 35px; display: flex; flex-wrap: wrap; gap: 8px; }
.tech-note-index-tags span { padding: 9px 11px; border: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; font-weight: 800; }
.tech-note-index-button { width: fit-content; min-height: 48px; margin-top: auto; padding: 0 17px; display: inline-flex; align-items: center; gap: 10px; border: 1px solid var(--tech-accent); background: var(--tech-accent); color: #0b0c0b; font-size: 11px; font-weight: 900; }
.tech-note-index-button:hover { background: #d6ff60; }
.tech-note-index-button:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.tech-note-index-button span { font-size: 16px; line-height: 1; }
.tech-note-index-principles { min-height: 610px; padding: 29px; border: 1px solid var(--home-line); border-top: 4px solid var(--tech-accent); background: #0d0f0d; }
.tech-note-index-principles > span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.tech-note-index-principles h2 { margin: 54px 0 48px; color: var(--home-ink); font-size: clamp(31px, 3vw, 43px); line-height: 1.04; letter-spacing: -.055em; }
.tech-note-index-principles ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--home-line); }
.tech-note-index-principles li { min-height: 120px; padding: 19px 0; display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 13px; border-bottom: 1px solid var(--home-line); }
.tech-note-index-principles li > b { padding-top: 3px; color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; }
.tech-note-index-principles strong { color: var(--home-ink); font-size: 13px; }
.tech-note-index-principles p { margin: 9px 0 0; color: var(--home-muted); font-size: 10px; line-height: 1.6; word-break: keep-all; }
.tech-note-index-boundary { margin-top: 20px; padding: 23px 25px; display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 28px; border: 1px solid rgba(200,255,47,.48); background: rgba(200,255,47,.045); }
.tech-note-index-boundary span { color: var(--tech-accent); font: 900 9px/1.4 Arial, sans-serif; letter-spacing: .09em; }
.tech-note-index-boundary p { max-width: 850px; margin: 0; color: var(--home-muted); font-size: 10px; line-height: 1.68; }

@media (max-width: 950px) {
  .tech-note-index-hero,
  .tech-note-index-body { grid-template-columns: 1fr; }
  .tech-note-index-principles { min-height: 0; }
}

@media (max-width: 620px) {
  .tech-note-index { padding-top: 30px; padding-bottom: 46px; }
  .tech-note-index-hero { padding-bottom: 24px; gap: 20px; }
  .tech-note-index-hero h1 { margin-top: 18px; font-size: 43px; line-height: .94; }
  .tech-note-index-intro { padding-top: 18px; }
  .tech-note-index-intro > p { font-size: 11px; line-height: 1.65; }
  .tech-note-index-intro dl { margin-top: 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-left: 1px solid var(--home-line); }
  .tech-note-index-intro dl > div { min-height: 70px; padding: 10px; display: flex; flex-direction: column; justify-content: space-between; gap: 8px; border-right: 1px solid var(--home-line); }
  .tech-note-index-intro dt { font-size: 8px; }
  .tech-note-index-intro dd { font-size: 9px; line-height: 1.35; text-align: left; }
  .tech-note-index-body { padding-top: 22px; gap: 12px; }
  .tech-note-index-card { grid-template-columns: 1fr; }
  .tech-note-index-visual { min-height: 285px; padding: 17px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .tech-note-index-visual svg { width: 93%; max-width: 330px; margin: -66px -18px -120px auto; transform: translateX(8%); }
  .tech-note-index-visual > strong { font-size: 36px; line-height: .84; }
  .tech-note-index-copy { min-height: 0; padding: 19px 17px 17px; }
  .tech-note-index-copy h2 { margin: 31px 0 15px; font-size: 34px; }
  .tech-note-index-copy > p { font-size: 10px; line-height: 1.65; }
  .tech-note-index-meta { min-height: 0; display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; }
  .tech-note-index-meta em { width: fit-content; padding: 6px 8px; grid-column: auto; grid-row: auto; }
  .tech-note-index-tags { margin-top: 20px; }
  .tech-note-index-tags span { padding: 7px 9px; }
  .tech-note-index-button { width: 100%; min-height: 44px; margin-top: 22px; justify-content: space-between; }
  .tech-note-index-principles { padding: 20px 17px; }
  .tech-note-index-principles h2 { margin: 32px 0 24px; font-size: 32px; }
  .tech-note-index-principles li { min-height: 88px; padding: 14px 0; }
  .tech-note-index-boundary { margin-top: 12px; padding: 17px; grid-template-columns: 1fr; gap: 8px; }
}

/* Hair technique information prototype */
.tech-note-page { --tech-accent: #c8ff2f; --tech-alert: #ff6c72; padding-bottom: clamp(88px, 11vw, 154px); background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px); background-size: 96px 96px; }
.tech-note-hero { padding-top: clamp(52px, 7vw, 92px); padding-bottom: clamp(86px, 10vw, 142px); }
.tech-note-breadcrumb { display: flex; flex-wrap: wrap; gap: 9px; color: var(--home-muted); font-size: 10px; font-weight: 780; }
.tech-note-breadcrumb a:hover { color: var(--tech-accent); }
.tech-note-status { margin-top: 42px; min-height: 48px; padding: 12px 16px; display: grid; grid-template-columns: 1fr auto auto; gap: 18px; align-items: center; border-block: 1px solid var(--home-line); }
.tech-note-status span { color: var(--tech-accent); font: 900 10px/1 Arial, sans-serif; letter-spacing: .1em; }
.tech-note-status strong { color: var(--home-ink); font-size: 11px; }
.tech-note-status small { color: var(--home-muted); font-size: 10px; }
.tech-note-hero-grid { margin-top: clamp(52px, 7vw, 94px); display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr); gap: clamp(54px, 8vw, 116px); align-items: center; }
.tech-note-hero-copy h1 { max-width: 910px; margin: 28px 0 35px; color: var(--home-ink); font-size: clamp(58px, 7.1vw, 98px); line-height: .94; letter-spacing: -.078em; word-break: keep-all; }
.tech-note-hero-copy h1 em { color: var(--tech-accent); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.tech-note-hero-copy > p:not(.eyebrow) { max-width: 760px; margin: 0; color: var(--home-muted); font-size: 16px; font-weight: 600; line-height: 1.82; word-break: keep-all; }
.tech-note-facts { margin-top: 54px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.tech-note-facts span { min-height: 112px; padding: 18px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.tech-note-facts small { color: var(--tech-accent); font: 900 8px/1 Arial, sans-serif; letter-spacing: .08em; }
.tech-note-facts strong { color: var(--home-ink); font-size: 12px; line-height: 1.42; }
.tech-note-sheet { margin: 0; padding: 16px; border: 1px solid var(--home-line); border-left: 4px solid var(--tech-accent); background: linear-gradient(145deg, rgba(200,255,47,.055), transparent 58%), var(--home-surface); }
.tech-note-sheet img { width: 100%; height: auto; display: block; background: #fff; }
.tech-note-sheet figcaption { padding: 19px 13px 7px; display: grid; grid-template-columns: 155px 1fr; gap: 22px; border-top: 1px solid var(--home-line); }
.tech-note-sheet figcaption span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.tech-note-sheet figcaption p { margin: 0; color: var(--home-muted); font-size: 10px; line-height: 1.62; }
.short-volume-blueprint { --blueprint-lime: #c8ff2f; --blueprint-blue: #5da9ff; margin: 0; border: 1px solid var(--home-line); border-left: 3px solid var(--blueprint-lime); background: #090c0a; color: var(--home-ink); overflow: hidden; }
.short-volume-blueprint-head { min-height: 68px; padding: 14px 18px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; align-items: center; border-bottom: 1px solid var(--home-line); }
.short-volume-blueprint-head span { color: var(--blueprint-lime); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.short-volume-blueprint-head strong { color: var(--home-ink); font-size: 15px; letter-spacing: -.025em; }
.short-volume-blueprint-head em { color: var(--home-muted); font-size: 9px; font-style: normal; font-weight: 780; white-space: nowrap; }
.short-volume-blueprint-body { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(220px, .88fr); }
.short-volume-blueprint-visual { min-height: 500px; padding: 20px 10px; display: grid; place-items: center; border-right: 1px solid var(--home-line); background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px), radial-gradient(circle at 68% 28%, rgba(200,255,47,.08), transparent 34%); background-size: 52px 52px, 52px 52px, auto; }
.short-volume-blueprint-visual svg { width: 100%; max-width: 580px; height: auto; display: block; color: #efefe8; }
.short-volume-head-lines { fill: none; stroke: currentColor; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; opacity: .92; }
.short-volume-occipital-line { fill: none; stroke: var(--blueprint-lime); stroke-width: 11; stroke-linecap: round; }
.short-volume-ear-space { fill: rgba(200,255,47,.12); stroke: var(--blueprint-lime); stroke-width: 4; stroke-dasharray: 12 8; stroke-linejoin: round; }
.short-volume-nape-line { fill: none; stroke: var(--blueprint-blue); stroke-width: 10; stroke-linecap: round; }
.short-volume-marker circle { fill: #090c0a; stroke-width: 3; }
.short-volume-marker text { font: 900 15px/1 Arial, sans-serif; text-anchor: middle; }
.short-volume-marker-01 circle, .short-volume-marker-02 circle { stroke: var(--blueprint-lime); }
.short-volume-marker-01 text, .short-volume-marker-02 text { fill: var(--blueprint-lime); }
.short-volume-marker-03 circle { stroke: var(--blueprint-blue); }
.short-volume-marker-03 text { fill: var(--blueprint-blue); }
.short-volume-guide-line { fill: none; stroke: rgba(239,239,232,.25); stroke-width: 2; stroke-dasharray: 7 7; }
.short-volume-side-labels { fill: var(--home-muted); font-family: Arial, sans-serif; font-size: 16px; font-weight: 800; letter-spacing: .025em; }
.short-volume-blueprint-legend { margin: 0; padding: 0 20px; list-style: none; }
.short-volume-blueprint-legend li { min-height: 166px; padding: 24px 0; display: grid; grid-template-columns: 38px 1fr; gap: 14px; align-items: start; border-bottom: 1px solid var(--home-line); }
.short-volume-blueprint-legend li:last-child { border-bottom: 0; }
.short-volume-blueprint-legend li > span { padding-top: 4px; color: var(--blueprint-lime); font: 900 10px/1 Arial, sans-serif; }
.short-volume-blueprint-legend li:last-child > span { color: var(--blueprint-blue); }
.short-volume-blueprint-legend strong { color: var(--home-ink); font-size: 14px; line-height: 1.42; }
.short-volume-blueprint-legend p { margin: 11px 0 0; color: var(--home-muted); font-size: 10px; line-height: 1.66; word-break: keep-all; }
.short-volume-blueprint figcaption { min-height: 70px; padding: 16px 18px; display: grid; grid-template-columns: 122px minmax(0, 1fr); gap: 20px; align-items: center; border-top: 1px solid var(--home-line); background: rgba(200,255,47,.045); }
.short-volume-blueprint figcaption span { color: var(--blueprint-lime); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.short-volume-blueprint figcaption strong { color: var(--home-ink); font-size: 12px; line-height: 1.5; }
.tech-note-map { min-height: 620px; padding: 32px; position: relative; border: 1px solid var(--home-line); border-left: 4px solid var(--tech-accent); background: linear-gradient(145deg, rgba(200,255,47,.055), transparent 58%), var(--home-surface); overflow: hidden; }
.tech-note-map::before { content: "BONE / WEIGHT / SPACE"; position: absolute; top: 28px; left: 30px; color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .11em; }
.tech-note-map::after { content: ""; width: 390px; height: 390px; position: absolute; top: 98px; left: 50%; border: 1px dashed rgba(255,255,255,.12); border-radius: 50%; transform: translateX(-50%); }
.tech-head-shape { width: 220px; height: 330px; position: absolute; top: 125px; left: 50%; z-index: 1; border: 3px solid #9299a7; border-right-color: transparent; border-radius: 52% 44% 37% 48% / 38% 36% 54% 52%; transform: translateX(-50%) rotate(2deg); }
.tech-head-shape::before { content: ""; width: 65px; height: 104px; position: absolute; right: -5px; top: 122px; border: 3px solid #9299a7; border-left: 0; border-radius: 0 65% 65% 0; transform: rotate(-3deg); }
.tech-head-shape::after { content: ""; width: 75px; height: 115px; position: absolute; right: -27px; bottom: -61px; border-left: 3px solid #9299a7; border-bottom: 3px solid #9299a7; transform: skewY(18deg); }
.tech-head-shape i { width: 18px; height: 18px; position: absolute; z-index: 2; border-radius: 50%; background: var(--tech-accent); box-shadow: 0 0 0 9px rgba(200,255,47,.13); }
.tech-head-occipital { right: 12px; top: 70px; }
.tech-head-ear { right: 4px; top: 176px; background: var(--tech-alert) !important; box-shadow: 0 0 0 9px rgba(255,108,114,.13) !important; }
.tech-head-nape { right: 29px; bottom: 17px; background: #6eb9ff !important; box-shadow: 0 0 0 9px rgba(110,185,255,.13) !important; }
.tech-map-label { position: absolute; z-index: 3; display: grid; grid-template-columns: 28px auto; gap: 3px 10px; align-items: center; }
.tech-map-label span { grid-row: 1 / 3; width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid currentColor; border-radius: 50%; font: 900 9px/1 Arial, sans-serif; }
.tech-map-label strong { color: var(--home-ink); font-size: 12px; }
.tech-map-label small { color: var(--home-muted); font-size: 9px; }
.tech-map-occipital { top: 153px; right: 24px; color: var(--tech-accent); }
.tech-map-ear { top: 292px; left: 24px; color: var(--tech-alert); }
.tech-map-nape { top: 406px; right: 24px; color: #6eb9ff; }
.tech-note-map > p { margin: 0; padding-top: 18px; position: absolute; right: 30px; bottom: 27px; left: 30px; border-top: 1px solid var(--home-line); color: var(--home-muted); font-size: 10px; line-height: 1.65; }
.tech-note-section { padding-top: clamp(78px, 9vw, 126px); padding-bottom: clamp(78px, 9vw, 126px); border-top: 1px solid var(--home-line); }
.tech-note-section-head { display: grid; grid-template-columns: minmax(300px, .84fr) minmax(0, 1.16fr); gap: clamp(52px, 8vw, 110px); align-items: end; }
.tech-note-section-head h2 { margin: 24px 0 0; color: var(--home-ink); font-size: clamp(45px, 5.6vw, 76px); line-height: .97; letter-spacing: -.067em; word-break: keep-all; }
.tech-note-section-head h2 em { color: var(--tech-accent); font-family: Georgia, "Times New Roman", serif; font-style: normal; font-weight: 400; }
.tech-note-section-head > p { max-width: 670px; margin: 0 0 4px; color: var(--home-muted); font-size: 14px; line-height: 1.78; word-break: keep-all; }
.tech-note-diagnostic-grid { margin-top: 64px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 18px; }
.tech-note-line-panel { margin: 0; min-width: 0; border: 1px solid var(--home-line); background: linear-gradient(145deg, rgba(200,255,47,.055), transparent 56%), var(--home-surface); overflow: hidden; }
.tech-note-line-panel > header, .tech-note-diagram-card > header, .tech-note-earback-diagrams article > header { min-height: 58px; padding: 16px 18px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; border-bottom: 1px solid var(--home-line); }
.tech-note-line-panel header span, .tech-note-diagram-card header span, .tech-note-earback-diagrams header span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.tech-note-line-panel header strong, .tech-note-diagram-card header strong, .tech-note-earback-diagrams header strong { color: var(--home-ink); font-size: 13px; }
.tech-note-diagram-card header small { color: var(--home-muted); font: 800 8px/1 Arial, sans-serif; }
.tech-note-line-panel > svg { width: 100%; max-height: 560px; display: block; color: #ecece6; background-image: linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px); background-size: 52px 52px; }
.tech-note-skull-guide { fill: none; stroke: rgba(255,255,255,.12); stroke-width: 2; stroke-dasharray: 8 10; }
.tech-note-ideal-volume { fill: none; stroke: var(--tech-accent); stroke-width: 7; stroke-linecap: round; }
.tech-note-error-angle { fill: none; stroke: var(--tech-alert); stroke-width: 5; stroke-linecap: round; stroke-dasharray: 10 8; }
.tech-note-error-angle-small { stroke-width: 4; stroke-dasharray: 0; }
.tech-note-point circle { fill: #0c0e0d; stroke-width: 3; }
.tech-note-point text, .tech-note-step-badge text { font: 900 13px/1 Arial, sans-serif; text-anchor: middle; }
.tech-note-point-occipital circle { stroke: var(--tech-accent); }
.tech-note-point-occipital text { fill: var(--tech-accent); }
.tech-note-point-ear circle { stroke: var(--tech-alert); }
.tech-note-point-ear text { fill: var(--tech-alert); }
.tech-note-point-nape circle { stroke: #5da9ff; }
.tech-note-point-nape text { fill: #5da9ff; }
.tech-note-map-key { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); list-style: none; border-top: 1px solid var(--home-line); }
.tech-note-map-key li { min-height: 74px; padding: 14px; display: grid; gap: 8px; border-right: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; font-weight: 760; }
.tech-note-map-key li:last-child { border-right: 0; }
.tech-note-map-key span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; }
.tech-note-line-panel > figcaption { padding: 17px 18px; border-top: 1px solid var(--home-line); color: var(--home-muted); font-size: 10px; line-height: 1.62; }
.tech-note-failure-cards { display: grid; grid-template-rows: repeat(2, minmax(0, 1fr)) auto; gap: 18px; }
.tech-note-failure-cards article { min-height: 250px; padding: 27px; border: 1px solid rgba(255,108,114,.52); background: linear-gradient(145deg, rgba(255,108,114,.085), transparent 70%), var(--home-surface); }
.tech-note-failure-cards article > span { color: var(--tech-alert); font: 900 9px/1 Arial, sans-serif; letter-spacing: .07em; }
.tech-note-failure-cards h3 { margin: 40px 0 17px; color: var(--home-ink); font-size: 25px; line-height: 1.26; letter-spacing: -.042em; }
.tech-note-failure-cards p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.75; }
.tech-note-failure-cards aside { padding: 19px 21px; display: grid; grid-template-columns: 155px 1fr; gap: 18px; align-items: center; border: 1px solid rgba(200,255,47,.54); background: rgba(200,255,47,.055); }
.tech-note-failure-cards aside strong { color: var(--tech-accent); font-size: 12px; }
.tech-note-failure-cards aside p { font-size: 10px; }
.tech-note-volume-diagrams { margin-top: 64px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.tech-note-diagram-card { min-width: 0; border: 1px solid var(--home-line); background: var(--home-surface); overflow: hidden; }
.tech-note-diagram-card > svg { width: 100%; max-height: 560px; display: block; color: #ecece6; background-image: radial-gradient(circle at 62% 30%, rgba(200,255,47,.07), transparent 35%); }
.tech-note-disconnection { fill: none; stroke: rgba(239,239,232,.7); stroke-width: 3; stroke-dasharray: 11 9; }
.tech-note-nape-zone { fill: rgba(93,169,255,.13); stroke: #5da9ff; stroke-width: 5; }
.tech-note-weight-zone { fill: rgba(200,255,47,.12); stroke: var(--tech-accent); stroke-width: 5; }
.tech-note-weight-flow { fill: none; stroke: var(--tech-accent); stroke-width: 3; stroke-dasharray: 7 7; }
.tech-note-step-badge circle { fill: #0c0e0d; stroke-width: 4; }
.tech-note-step-one circle { stroke: #5da9ff; }
.tech-note-step-one text { fill: #5da9ff; }
.tech-note-step-two circle, .tech-note-step-three circle { stroke: var(--tech-accent); }
.tech-note-step-two text, .tech-note-step-three text { fill: var(--tech-accent); }
.tech-note-diagram-card > ol { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; border-top: 1px solid var(--home-line); }
.tech-note-diagram-card > ol li { min-height: 118px; padding: 18px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); }
.tech-note-diagram-card > ol li:last-child { border-right: 0; }
.tech-note-diagram-card > ol span { color: var(--tech-accent); font: 900 8px/1 Arial, sans-serif; }
.tech-note-diagram-card > ol strong { margin-top: auto; color: var(--home-ink); font-size: 15px; }
.tech-note-diagram-card > ol p, .tech-note-center-copy p { margin: 7px 0 0; color: var(--home-muted); font-size: 9px; line-height: 1.55; }
.tech-note-top-head, .tech-note-top-face, .tech-note-rear-head, .tech-note-rear-part { fill: none; stroke: #ecece6; stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; }
.tech-note-center-axis { fill: none; stroke: var(--tech-accent); stroke-width: 3; stroke-dasharray: 9 8; }
.tech-note-center-arrow { fill: none; stroke: var(--tech-accent); stroke-width: 7; stroke-linecap: round; }
.tech-note-corner-zone { fill: rgba(255,108,114,.16); stroke: var(--tech-alert); stroke-width: 4; stroke-dasharray: 8 7; }
.tech-note-center-copy { min-height: 118px; padding: 19px; display: flex; flex-direction: column; justify-content: center; border-top: 1px solid var(--home-line); }
.tech-note-center-copy strong { color: var(--tech-accent); font-size: 16px; }
.tech-note-earback-diagrams { margin-top: 64px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.tech-note-earback-diagrams article { min-width: 0; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); }
.tech-note-earback-diagrams article > header { grid-template-columns: auto 1fr; }
.tech-note-earback-diagrams article > svg { width: 100%; height: auto; display: block; color: #ecece6; }
.tech-note-earback-diagrams article > p { min-height: 92px; margin: 0; padding: 18px; border-top: 1px solid var(--home-line); color: var(--home-muted); font-size: 10px; line-height: 1.65; }
.tech-note-space-arrow { fill: none; stroke: var(--tech-accent); stroke-width: 5; stroke-linecap: round; }
.tech-note-back-diagonal { fill: none; stroke: var(--tech-accent); stroke-width: 5; }
.tech-note-front-fringe { fill: none; stroke: #5da9ff; stroke-width: 6; stroke-linecap: round; }
.tech-note-fringe-point { fill: #0c0e0d; stroke: #5da9ff; stroke-width: 4; }
.tech-note-top-surface { fill: none; stroke: var(--tech-accent); stroke-width: 7; stroke-linecap: round; }
.tech-note-under-zone { fill: rgba(200,255,47,.13); stroke: var(--tech-accent); stroke-width: 4; stroke-dasharray: 9 7; }
.tech-note-dry-cut { fill: none; stroke: var(--tech-alert); stroke-width: 5; stroke-linecap: round; }
.tech-note-prescription-grid { margin-top: 64px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.tech-note-prescription-grid article { min-height: 280px; padding: 25px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); }
.tech-note-prescription-grid article > span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; }
.tech-note-prescription-grid h3 { margin: 48px 0 12px; color: var(--home-ink); font-size: 24px; line-height: 1.2; letter-spacing: -.04em; }
.tech-note-prescription-grid strong { color: var(--tech-accent); font-size: 14px; }
.tech-note-prescription-grid p { margin: auto 0 0; padding-top: 22px; color: var(--home-muted); font-size: 11px; line-height: 1.68; }
.tech-note-three-grid { margin-top: 64px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.tech-note-three-grid article { min-height: 290px; padding: 25px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); }
.tech-note-three-grid span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.tech-note-three-grid h3 { margin: auto 0 18px; color: var(--home-ink); font-size: 27px; letter-spacing: -.045em; }
.tech-note-three-grid p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.72; }
.tech-note-steps { margin: 64px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--home-line); }
.tech-note-steps li { min-height: 154px; padding: 26px 0; display: grid; grid-template-columns: 110px 1fr 120px; gap: 28px; align-items: center; border-bottom: 1px solid var(--home-line); }
.tech-note-steps li > span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.tech-note-steps h3 { margin: 0; color: var(--home-ink); font-size: 23px; letter-spacing: -.038em; }
.tech-note-steps p { max-width: 710px; margin: 10px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.7; }
.tech-note-steps li > strong { color: rgba(255,255,255,.17); font: 900 14px/1 Arial, sans-serif; letter-spacing: .08em; text-align: right; }
.tech-note-formula { margin-top: 26px; padding: 25px; display: grid; grid-template-columns: 170px 1fr; gap: 28px; align-items: center; border: 1px solid rgba(200,255,47,.62); background: rgba(200,255,47,.065); }
.tech-note-formula span { color: var(--tech-accent); font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.tech-note-formula strong { color: var(--home-ink); font-size: 17px; line-height: 1.55; }
.tech-note-check-grid { margin-top: 64px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.tech-note-check-grid article { min-height: 250px; padding: 24px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.tech-note-check-grid span { color: var(--tech-accent); font: 900 10px/1 Arial, sans-serif; }
.tech-note-check-grid h3 { margin: auto 0 14px; color: var(--home-ink); font-size: 26px; }
.tech-note-check-grid p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.68; }
.tech-note-related-grid { margin-top: 64px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.tech-note-related-grid > section { min-width: 0; }
.tech-note-related-label { margin-bottom: 15px; padding-bottom: 13px; display: block; border-bottom: 1px solid var(--home-line); color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .09em; }
.tech-note-related-card { grid-template-columns: minmax(0, 1fr); }
.tech-note-editorial { padding-top: 32px; display: grid; grid-template-columns: 190px 1fr auto; gap: 32px; align-items: start; border-top: 1px solid var(--tech-accent); }
.tech-note-editorial > span { color: var(--tech-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; }
.tech-note-editorial p { margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.72; }
.tech-note-editorial p strong { color: var(--home-ink); }
.tech-note-editorial a { color: var(--tech-accent); font-size: 10px; font-weight: 850; }

@media (max-width: 900px) {
  .profile-update-request { grid-template-columns: 1fr; gap: 30px; }
  .search-topic-hub > header,
  .search-topic-check,
  .search-topic-path,
  .detail-search-cluster { grid-template-columns: 1fr; }
  .search-topic-grid { grid-template-columns: 1fr; }
  .search-topic-card { min-height: 230px; }
  .search-topic-card > strong { margin-top: 48px; }
  .search-topic-hub-foot { grid-template-columns: 150px 1fr; }
  .search-topic-hub-foot > a { grid-column: 2; }
  .search-topic-result-grid { grid-template-columns: 1fr; }
  .search-topic-boundary { grid-template-columns: 180px 1fr; }
  .search-topic-boundary a { grid-column: 2; }
  .detail-search-cluster-links > a { grid-template-columns: 122px 1fr auto; }
  .detail-search-cluster-links p { display: none; }
  .tech-note-hero-grid,
  .tech-note-section-head { grid-template-columns: 1fr; }
  .tech-note-map { min-height: 580px; }
  .tech-note-diagnostic-grid,
  .tech-note-volume-diagrams,
  .tech-note-related-grid { grid-template-columns: 1fr; }
  .tech-note-earback-diagrams { grid-template-columns: 1fr; }
  .tech-note-prescription-grid { grid-template-columns: 1fr; }
  .tech-note-editorial { grid-template-columns: 160px 1fr; }
  .tech-note-editorial a { grid-column: 2; }
}

@media (max-width: 580px) {
  .profile-management-summary,
  .profile-management-actions { grid-template-columns: 1fr; }
  .profile-update-request { margin-top: 26px; padding: 26px 20px; gap: 24px; }
  .profile-update-request h2 { font-size: 38px; }
  .profile-update-request .profile-management-actions { margin-top: 18px; }
  .search-topic-hub { padding-top: 72px; padding-bottom: 82px; }
  .search-topic-hub > header { padding-bottom: 32px; gap: 24px; }
  .search-topic-hub h2 { font-size: 43px; }
  .search-topic-hub > header > p { font-size: 12px; }
  .search-topic-card { min-height: 210px; padding: 20px; }
  .search-topic-card > strong { margin-top: 38px; font-size: 24px; }
  .search-topic-hub-foot { grid-template-columns: 1fr; gap: 10px; }
  .search-topic-hub-foot > a { grid-column: auto; }
  .search-topic-hero { padding-top: 54px; padding-bottom: 72px; }
  .search-topic-breadcrumb { margin-bottom: 39px; }
  .search-topic-hero h1 { font-size: 48px; }
  .search-topic-hero > p:not(.eyebrow) { font-size: 14px; }
  .search-topic-facets { margin-top: 44px; grid-template-columns: 1fr; }
  .search-topic-facets > span { min-height: 96px; }
  .search-topic-check,
  .search-topic-results,
  .search-topic-path { padding-top: 68px; padding-bottom: 72px; gap: 38px; }
  .search-topic-check h2,
  .search-topic-path h2 { font-size: 42px; }
  .search-topic-check li { grid-template-columns: 42px 1fr; }
  .search-topic-path-links { grid-template-columns: 1fr; }
  .search-topic-path-links .search-topic-article-link { grid-column: auto; }
  .search-topic-path-links > a { min-height: 220px; }
  .search-topic-boundary { margin-top: 68px; grid-template-columns: 1fr; gap: 16px; }
  .search-topic-boundary a { grid-column: auto; }
  .detail-search-cluster { margin: 64px 0; padding: 26px 20px; gap: 30px; }
  .detail-search-cluster h2 { font-size: 38px; }
  .detail-search-cluster-links > a { grid-template-columns: 1fr auto; gap: 8px 12px; }
  .detail-search-cluster-links span { grid-column: 1 / -1; }
  .detail-search-cluster-links strong { font-size: 13px; }
  .blog-archive-grid { grid-template-columns: 1fr; }
  .blog-archive-grid > a { min-height: 215px; padding: 20px; }
  .tech-note-hero { padding-top: 42px; padding-bottom: 78px; }
  .tech-note-status { margin-top: 30px; grid-template-columns: 1fr auto; }
  .tech-note-status small { grid-column: 1 / -1; }
  .tech-note-hero-grid { margin-top: 46px; gap: 42px; }
  .tech-note-hero-copy h1 { font-size: 49px; }
  .tech-note-hero-copy > p:not(.eyebrow) { font-size: 14px; }
  .tech-note-facts { grid-template-columns: 1fr; }
  .tech-note-facts span { min-height: 88px; }
  .tech-note-sheet { margin-inline: -14px; padding: 10px; border-inline: 0; }
  .tech-note-sheet figcaption { padding: 16px 4px 5px; grid-template-columns: 1fr; gap: 9px; }
  .short-volume-blueprint { margin-inline: -14px; border-inline: 0; }
  .short-volume-blueprint-head { min-height: 0; padding: 16px 14px; grid-template-columns: 1fr auto; gap: 8px 14px; }
  .short-volume-blueprint-head strong { grid-column: 1 / -1; grid-row: 2; font-size: 17px; }
  .short-volume-blueprint-head em { grid-column: 2; grid-row: 1; }
  .short-volume-blueprint-body { grid-template-columns: 1fr; }
  .short-volume-blueprint-visual { min-height: 0; padding: 8px 0 0; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .short-volume-blueprint-visual svg { width: min(100%, 520px); }
  .short-volume-blueprint-legend { padding-inline: 16px; }
  .short-volume-blueprint-legend li { min-height: 0; padding: 20px 0; }
  .short-volume-blueprint figcaption { min-height: 0; padding: 17px 14px; grid-template-columns: 1fr; gap: 8px; }
  .tech-note-map { min-height: 540px; margin-inline: -14px; padding-inline: 20px; border-inline: 0; }
  .tech-note-map::after { width: 310px; height: 310px; top: 108px; }
  .tech-head-shape { width: 180px; height: 285px; top: 132px; }
  .tech-map-occipital { top: 160px; right: 18px; }
  .tech-map-ear { top: 290px; left: 18px; }
  .tech-map-nape { top: 392px; right: 18px; }
  .tech-note-section { padding-top: 70px; padding-bottom: 76px; }
  .tech-note-section-head { gap: 28px; }
  .tech-note-section-head h2 { font-size: 43px; }
  .tech-note-section-head > p { font-size: 12px; }
  .tech-note-diagnostic-grid,
  .tech-note-volume-diagrams,
  .tech-note-earback-diagrams,
  .tech-note-prescription-grid,
  .tech-note-related-grid { margin-top: 40px; }
  .tech-note-line-panel,
  .tech-note-diagram-card { margin-inline: -14px; border-inline: 0; }
  .tech-note-line-panel > header,
  .tech-note-diagram-card > header,
  .tech-note-earback-diagrams article > header { grid-template-columns: 1fr auto; }
  .tech-note-line-panel header strong,
  .tech-note-diagram-card header strong,
  .tech-note-earback-diagrams header strong { grid-column: 1 / -1; grid-row: 2; font-size: 15px; }
  .tech-note-failure-cards article { min-height: 230px; padding: 22px 20px; }
  .tech-note-failure-cards h3 { margin-top: 32px; font-size: 22px; }
  .tech-note-failure-cards aside { grid-template-columns: 1fr; gap: 7px; }
  .tech-note-diagram-card > ol { grid-template-columns: 1fr; }
  .tech-note-diagram-card > ol li { min-height: 106px; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .tech-note-diagram-card > ol li:last-child { border-bottom: 0; }
  .tech-note-earback-diagrams { margin-inline: -14px; border-left: 0; }
  .tech-note-earback-diagrams article { border-right: 0; }
  .tech-note-earback-diagrams article > p { min-height: 0; }
  .tech-note-prescription-grid { border-left: 0; }
  .tech-note-prescription-grid article { min-height: 230px; border-right: 0; }
  .tech-note-prescription-grid h3 { margin-top: 38px; }
  .tech-note-formula { grid-template-columns: 1fr; gap: 14px; }
  .tech-note-editorial { grid-template-columns: 1fr; gap: 14px; }
  .tech-note-editorial a { grid-column: auto; }
}

/* Home entry: make the first screen a clear route into learning, teaching, and salon operations. */
.home-dark .home-entry {
  padding-top: 58px;
  padding-bottom: 28px;
}

.home-dark .home-entry-grid { grid-template-columns: minmax(0, 1fr); }
.home-dark .home-entry .hero-copy { padding: 0; }

.home-entry-intro {
  padding-bottom: 36px;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr);
  gap: clamp(34px, 5vw, 74px);
  align-items: end;
  border-bottom: 1px solid var(--home-line);
}

.home-entry-kicker {
  margin: 0 0 20px;
  color: var(--home-signal);
  font-size: 13px;
  font-weight: 850;
  letter-spacing: .08em;
}

.home-dark .home-entry-heading h1 {
  max-width: 760px;
  font-size: clamp(42px, 5.2vw, 70px);
  line-height: 1.08;
}

.home-entry-summary { padding-bottom: 4px; }
.home-dark .home-entry-summary .hero-subtitle {
  max-width: 490px;
  margin: 0 0 24px;
  color: rgba(241,240,233,.76);
  font-size: clamp(16px, 1.45vw, 19px);
  line-height: 1.72;
}

.home-entry-guide {
  max-width: 470px;
  margin: 0;
  padding-top: 15px;
  border-top: 1px solid var(--home-line);
  color: var(--home-muted);
  font-size: 11px;
  line-height: 1.7;
}

.home-entry-contributor {
  width: fit-content;
  margin-top: 16px;
  display: inline-flex;
  color: rgba(241,240,233,.72);
  font-size: 12px;
  font-weight: 760;
  text-decoration: underline;
  text-decoration-color: rgba(209,229,154,.38);
  text-underline-offset: 5px;
}
.home-entry-contributor:hover { color: var(--home-signal); }

.home-route-switcher {
  margin-top: 24px;
  scroll-margin-top: 110px;
}

.home-route-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.home-route-tab {
  min-width: 0;
  min-height: 70px;
  padding: 14px 16px;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  column-gap: 10px;
  row-gap: 0;
  align-content: center;
  border: 1px solid var(--home-line);
  background: rgba(255,255,255,.025);
  color: rgba(241,240,233,.78);
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease;
}
.home-route-tab span { align-self: center; color: var(--home-signal); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.home-route-tab strong { align-self: center; font-size: 17px; line-height: 1.15; letter-spacing: -.025em; }
.home-route-tab small { color: var(--home-muted); font-size: 11px; font-weight: 760; letter-spacing: .02em; }
.home-route-tab:hover,
.home-route-tab:focus-visible { border-color: var(--home-signal); color: var(--home-signal); transform: translateY(-2px); }
.home-route-tab:focus-visible { outline: 2px solid var(--home-signal); outline-offset: -3px; }
.home-route-tab.is-active { background: var(--home-signal); color: var(--home-bg); }
.home-route-tab.is-active span,
.home-route-tab.is-active small { color: rgba(11,12,11,.6); }

.home-route-panel {
  min-height: 208px;
  margin-top: 9px;
  padding: 18px;
  display: grid;
  grid-template-columns: minmax(220px, .55fr) minmax(0, 1.45fr);
  gap: clamp(18px, 3vw, 36px);
  align-items: stretch;
  border: 1px solid var(--home-line);
  background: rgba(255,255,255,.025);
}
.home-route-panel[hidden] { display: none; }
.home-route-panel-head {
  padding: 7px 0 7px 3px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.home-route-panel-head > span {
  margin-bottom: 9px;
  color: var(--home-signal);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .1em;
}
.home-route-panel-head > strong {
  color: var(--home-ink);
  font-size: clamp(19px, 2vw, 26px);
  line-height: 1.18;
  letter-spacing: -.04em;
}
.home-route-panel-head > p {
  margin: 0;
  padding-top: 12px;
  color: var(--home-muted);
  font-size: 13px;
  line-height: 1.65;
}
.home-route-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.home-route-action-grid a {
  min-height: 136px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  border: 1px solid var(--home-line);
  background: var(--home-surface);
  color: var(--home-ink);
}
.home-route-action-grid a span { color: var(--home-signal); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.home-route-action-grid a strong { margin-top: 13px; font-size: 14px; line-height: 1.45; letter-spacing: -.02em; }
.home-route-action-grid a b { margin-top: auto; align-self: flex-end; color: var(--home-signal); font-size: 16px; }
.home-route-action-grid a:hover,
.home-route-action-grid a:focus-visible { border-color: var(--home-signal); color: var(--home-signal); }

.home-vertical-preview {
  margin-top: 18px;
  margin-bottom: 34px;
  padding: 18px 22px;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr);
  gap: 28px;
  align-items: center;
  border: 1px solid rgba(209,229,154,.42);
  background: linear-gradient(90deg, rgba(209,229,154,.11), rgba(209,229,154,.025));
}
.home-vertical-preview div { display: grid; gap: 5px; }
.home-vertical-preview span { color: var(--home-signal); font-size: 10px; font-weight: 850; letter-spacing: .08em; }
.home-vertical-preview strong { color: var(--home-ink); font-size: 18px; letter-spacing: -.025em; }
.home-vertical-preview p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.65; }
.home-vertical-preview > a {
  min-height: 46px;
  padding: 0 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid rgba(209,229,154,.62);
  color: var(--home-ink);
  font-size: 11px;
  font-weight: 820;
}
.home-vertical-preview > a b { color: var(--home-signal); font-size: 15px; }
.home-vertical-preview > a:hover,
.home-vertical-preview > a:focus-visible { border-color: var(--home-signal); color: var(--home-signal); }

.home-class-finder {
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--home-ink);
}
.home-dark .home-class-finder .hero-search { max-width: none; margin: 0; padding: 0; border-color: var(--home-line); background: var(--home-surface); box-shadow: none; }
.home-dark .home-class-finder .hero-search-field:focus-within { background: rgba(209,229,154,.08); box-shadow: inset 0 0 0 1px rgba(209,229,154,.42); }
.home-dark .home-class-finder .hero-search-icon { border: 1px solid var(--home-line); background: transparent; color: var(--home-signal); }
.home-dark .home-class-finder .hero-search-field label > span,
.home-dark .home-class-finder .hero-search-label { color: var(--home-muted); }
.home-dark .home-class-finder .hero-search input,
.home-dark .home-class-finder .region-picker summary { color: var(--home-ink); }
.home-dark .home-class-finder .hero-search input::placeholder { color: rgba(241,240,233,.5); }
.home-dark .home-class-finder .hero-search-region { border-left-color: var(--home-line); }
.home-dark .home-class-finder .hero-search .button-primary { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.home-dark .home-class-finder .region-options { border-color: var(--home-line); background: var(--home-surface); color: var(--home-ink); }
.home-dark .home-class-finder .region-option:first-child { background: var(--home-surface-2); }
.home-dark .home-class-finder .region-option.selected { background: var(--home-signal); color: var(--home-bg); }
.home-dark .home-class-finder .hero-quick-links { color: var(--home-muted); }
.home-dark .home-class-finder .hero-quick-links button { border-color: var(--home-line); background: rgba(255,255,255,.025); color: var(--home-ink); }
.home-dark .home-class-finder .hero-quick-links button:hover,
.home-dark .home-class-finder .hero-quick-links button:focus-visible { border-color: var(--home-signal); background: rgba(209,229,154,.1); color: var(--home-signal); }
.home-panel-links { margin-top: 8px; display: flex; justify-content: flex-end; gap: 14px; }
.home-panel-links a { display: inline-flex; align-items: center; gap: 7px; color: var(--home-muted); font-size: 12px; font-weight: 820; }
.home-panel-links-single { justify-content: flex-end; }
.home-panel-links a:hover,
.home-panel-links a:focus-visible { color: var(--home-signal); text-decoration: underline; text-underline-offset: 4px; }

.home-operation-finder {
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--home-ink);
}
.home-operation-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(155px, .38fr) auto;
  border: 1px solid var(--home-line);
  background: var(--home-surface);
}
.home-operation-search label,
.home-operation-region { min-width: 0; min-height: 62px; padding: 9px 13px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid var(--home-line); }
.home-operation-search label:focus-within,
.home-operation-region:focus-within { background: rgba(209,229,154,.08); box-shadow: inset 0 0 0 1px rgba(209,229,154,.42); }
.home-operation-search label > span,
.home-operation-region > span { color: var(--home-muted); font-size: 12px; font-weight: 850; }
.home-operation-search input,
.home-operation-search select { width: 100%; margin-top: 4px; padding: 0; border: 0; outline: 0; background: transparent; color: var(--home-ink); font: inherit; font-size: 13px; font-weight: 760; }
.home-operation-search input::placeholder { color: rgba(241,240,233,.5); }
.home-operation-region .region-picker { margin-top: 4px; }
.home-operation-region .region-picker summary { color: var(--home-ink); font-size: 13px; font-weight: 760; }
.home-dark .home-operation-finder .region-options { border-color: var(--home-line); background: var(--home-surface); color: var(--home-ink); }
.home-dark .home-operation-finder .region-option { color: var(--home-ink); }
.home-dark .home-operation-finder .region-option:first-child { border-color: var(--home-line); background: var(--home-surface-2); }
.home-dark .home-operation-finder .region-option:hover,
.home-dark .home-operation-finder .region-option:focus-visible { background: rgba(209,229,154,.12); color: var(--home-signal); }
.home-dark .home-operation-finder .region-option.selected { background: var(--home-signal); color: var(--home-bg); }
.home-operation-search button { min-width: 142px; padding: 0 15px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 0; background: var(--home-signal); color: var(--home-bg); font: inherit; font-size: 13px; font-weight: 850; cursor: pointer; }
.home-operation-search button svg { width: 17px; height: 17px; }
.home-operation-links { margin-top: 9px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.home-operation-links button,
.home-operation-links a { min-width: 0; min-height: 36px; padding: 0 9px; display: flex; align-items: center; justify-content: space-between; gap: 6px; border: 1px solid var(--home-line); background: rgba(255,255,255,.025); color: var(--home-ink); font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; }
.home-operation-links button:hover,
.home-operation-links button:focus-visible,
.home-operation-links a:hover,
.home-operation-links a:focus-visible { border-color: var(--home-signal); background: rgba(209,229,154,.1); color: var(--home-signal); }
.home-entry-trust { margin-top: 14px; gap: 20px; }

.home-data-scope {
  margin-top: 14px;
  display: grid;
  grid-template-columns: minmax(235px, 1.3fr) repeat(4, minmax(0, 1fr));
  border: 1px solid var(--home-line);
  background: rgba(255,255,255,.018);
}
.home-data-scope > header,
.home-data-scope > a,
.home-data-scope > div {
  min-width: 0;
  min-height: 92px;
  padding: 13px 15px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid var(--home-line);
}
.home-data-scope > :last-child { border-right: 0; }
.home-data-scope > header > span {
  color: var(--home-signal);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
}
.home-data-scope > header > strong {
  margin-top: 7px;
  color: var(--home-ink);
  font-size: 13px;
  line-height: 1.35;
  letter-spacing: -.02em;
}
.home-data-scope-notes { margin-top: 6px; color: var(--home-muted); font-size: 11px; line-height: 1.45; }
.home-data-scope-notes summary { width: max-content; color: var(--home-muted); font-weight: 760; cursor: pointer; text-decoration: underline; text-decoration-color: rgba(209,229,154,.45); text-underline-offset: 4px; }
.home-data-scope-notes p { width: 100%; margin: 9px 0 0; color: var(--home-ink); font-size: 12px; line-height: 1.6; }
.home-data-scope > a,
.home-data-scope > div { color: var(--home-ink); }
.home-data-scope > a > strong,
.home-data-scope > div > strong {
  color: var(--home-signal);
  font-size: 20px;
  line-height: 1;
  letter-spacing: -.04em;
}
.home-data-scope > a > span,
.home-data-scope > div > span {
  margin-top: 7px;
  font-size: 12px;
  font-weight: 820;
  line-height: 1.25;
}
.home-data-scope > a:hover,
.home-data-scope > a:focus-visible { background: rgba(209,229,154,.08); }
.home-data-scope-public { background: rgba(209,229,154,.045); }

.home-dark .home-entry + .skill-directory-section { padding-top: 52px; }
.home-dark .skill-directory-section + .section-tight { padding-top: 42px; }

@media (max-width: 940px) {
  .home-entry-intro { grid-template-columns: 1fr; gap: 24px; align-items: start; }
  .home-entry-summary { max-width: 620px; }
  .home-route-panel { grid-template-columns: 1fr; gap: 14px; }
  .home-route-panel-head { padding: 0 2px; }
  .home-vertical-preview { grid-template-columns: 1fr; gap: 8px; }
  .home-data-scope { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .home-data-scope > header { grid-column: 1 / -1; min-height: 64px; border-right: 0; border-bottom: 1px solid var(--home-line); }
}

@media (max-width: 820px) {
  .home-dark .skill-directory-section { padding-top: 34px; padding-bottom: 22px; }
  .home-dark .skill-directory-section + .section-tight { padding-top: 32px; }
}

@media (max-width: 580px) {
  .home-dark .home-entry { padding-top: 28px; padding-bottom: 14px; }
  .home-entry-intro { padding-bottom: 20px; gap: 14px; }
  .home-entry-kicker { margin-bottom: 10px; font-size: 10px; letter-spacing: .05em; }
  .home-dark .home-entry-heading h1 { font-size: clamp(32px, 8.7vw, 36px); line-height: 1.14; letter-spacing: -.052em; }
  .home-dark .home-entry-summary .hero-subtitle { margin-bottom: 10px; font-size: 14px; line-height: 1.55; }
  .home-entry-guide { padding-top: 10px; font-size: 9px; line-height: 1.5; }
  .home-route-switcher { margin-top: 12px; }
  .home-route-tabs { gap: 5px; }
  .home-route-tab { min-height: 62px; padding: 10px 12px; grid-template-columns: 22px minmax(0, 1fr); column-gap: 7px; row-gap: 0; }
  .home-route-tab span { padding-top: 0; font-size: 10px; }
  .home-route-tab strong { font-size: 14px; line-height: 1.2; word-break: keep-all; }
  .home-route-tab small { font-size: 11px; line-height: 1.25; word-break: keep-all; }
  .home-route-panel { min-height: 0; margin-top: 5px; padding: 10px; gap: 9px; }
  .home-route-panel-head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 3px; }
  .home-route-panel-head > span { display: none; }
  .home-route-panel-head > strong { font-size: 18px; }
  .home-route-panel-head > p { padding-top: 0; font-size: 12px; line-height: 1.5; }
  .home-route-action-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
  .home-route-action-grid a { min-height: 82px; padding: 8px; }
  .home-route-action-grid a span { font-size: 10px; }
  .home-route-action-grid a strong { margin-top: 7px; font-size: 12px; line-height: 1.35; word-break: keep-all; }
  .home-route-action-grid a b { font-size: 12px; }
  .home-vertical-preview { margin-top: 8px; margin-bottom: 26px; padding: 15px 14px; }
  .home-vertical-preview strong { font-size: 15px; line-height: 1.45; }
  .home-vertical-preview p { font-size: 10px; }
  .home-vertical-preview > a { min-height: 42px; font-size: 10px; }
  .home-class-finder { padding: 0; }
  .home-class-finder .hero-search { padding: 0; }
  .home-dark .home-class-finder .hero-search-keyword { border-bottom-color: var(--home-line); }
  .home-class-finder .hero-search-field { min-height: 49px; padding: 5px 8px; gap: 7px; }
  .home-class-finder .hero-search-icon { width: 30px; height: 30px; }
  .home-class-finder .hero-search .button { min-height: 45px; padding-inline: 13px; }
  .home-class-finder .hero-quick-links { display: none; }
  .home-panel-links { margin-top: 6px; justify-content: space-between; gap: 7px; }
  .home-panel-links a { font-size: 12px; }
  .home-panel-links-single { justify-content: flex-end; }
  .home-operation-finder { padding: 0; }
  .home-operation-search { grid-template-columns: minmax(0, 1fr) 48px; }
  .home-operation-search label,
  .home-operation-region { min-height: 48px; padding: 6px 8px; }
  .home-operation-search label:first-child { grid-column: 1 / -1; border-right: 0; border-bottom: 1px solid var(--home-line); }
  .home-operation-search label > span,
  .home-operation-region > span { font-size: 12px; }
  .home-operation-search input,
  .home-operation-search select { font-size: 16px; }
  .home-operation-search button { min-width: 48px; padding: 0; justify-content: center; }
  .home-operation-search button span { display: none; }
  .home-operation-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; }
  .home-operation-links button,
  .home-operation-links a { min-height: 38px; padding: 0 9px; font-size: 12px; }
  .home-entry-trust { margin-top: 9px; justify-content: space-between; gap: 5px; flex-wrap: nowrap; }
  .home-entry-trust .trust-item { gap: 4px; font-size: 11px; white-space: nowrap; }
  .home-entry-trust .trust-check { width: 14px; height: 14px; font-size: 8px; }
  .home-data-scope {
    margin-top: 10px;
    padding-bottom: 2px;
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(150px, 62vw);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }
  .home-data-scope > header { grid-column: auto; min-height: 78px; border-right: 1px solid var(--home-line); border-bottom: 0; }
  .home-data-scope > header,
  .home-data-scope > a,
  .home-data-scope > div { min-height: 78px; padding: 10px 11px; }
  .home-data-scope > header > span { font-size: 11px; }
  .home-data-scope > header > strong { margin-top: 5px; font-size: 16px; }
  .home-data-scope-notes { font-size: 12px; }
  .home-data-scope-notes p { font-size: 12px; }
  .home-data-scope > a > strong,
  .home-data-scope > div > strong { font-size: 22px; }
  .home-data-scope > a > span,
  .home-data-scope > div > span { margin-top: 6px; font-size: 12px; }
  .home-entry .educator-rail { margin-top: 20px; }
  .home-dark .home-entry + .skill-directory-section { padding-top: 30px; }
  .home-dark .skill-directory-section { padding-top: 20px; padding-bottom: 12px; }
  .home-dark .skill-directory-heading { margin-bottom: 10px; gap: 5px; }
  .home-dark .skill-directory-link { min-height: 58px; padding: 7px 8px 7px 10px; }
  .home-dark .skill-directory-link::before { top: 8px; bottom: 8px; }
  .home-dark .skill-directory-section + .section-tight { padding-top: 22px; }
  .home-dark .home-class-finder .region-options,
  .home-dark .home-operation-finder .region-options {
    position: fixed;
    z-index: 140;
    top: auto;
    right: 14px;
    bottom: 12px;
    left: 14px;
    width: auto;
    max-height: min(52dvh, 330px);
    padding: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid rgba(209,229,154,.72);
    background: #0e100e;
    box-shadow: 0 20px 55px rgba(0,0,0,.62);
  }
  .home-dark .home-operation-finder .region-options {
    left: 14px;
    width: auto;
  }
  .home-dark .home-class-finder .region-option,
  .home-dark .home-operation-finder .region-option {
    min-height: 42px;
    padding: 6px 3px;
    border: 1px solid rgba(255,255,255,.19);
    border-radius: 0;
    background: #171a16;
    color: var(--home-ink);
    font-size: 12px;
    font-weight: 820;
    line-height: 1.15;
  }
  .home-dark .home-class-finder .region-option:first-child,
  .home-dark .home-operation-finder .region-option:first-child {
    min-height: 44px;
    border-color: var(--home-signal);
    background: rgba(209,229,154,.12);
    color: var(--home-signal);
  }
  .home-dark .home-class-finder .region-option:hover,
  .home-dark .home-class-finder .region-option:focus-visible,
  .home-dark .home-operation-finder .region-option:hover,
  .home-dark .home-operation-finder .region-option:focus-visible {
    border-color: var(--home-signal);
    background: rgba(209,229,154,.18);
    color: var(--home-signal);
  }
  .home-dark .home-class-finder .region-option.selected,
  .home-dark .home-operation-finder .region-option.selected {
    border-color: var(--home-signal);
    background: var(--home-signal);
    color: var(--home-bg);
  }
}

@media (max-width: 360px) {
  .home-dark .home-class-finder .region-options,
  .home-dark .home-operation-finder .region-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Kim Rayeon · Beauty × AI editorial profile and class */
.home-dark .detail-page.detail-page-ai-creative,
.home-dark .pro-profile-page.profile-page-ai-creative,
.home-dark .class-card.class-card-ai-creative,
.home-dark .pro-card.pro-card-ai-creative,
.home-dark .educator-rail-card.educator-rail-card-ai-creative {
  --skill-accent: #d1e59a;
  --skill-ink: #0a1007;
  --skill-soft: #26321e;
  --skill-border: #d1e59a;
}

.ai-detail-cover {
  min-height: 560px;
  isolation: isolate;
  border-radius: 0;
  background: #090a09;
}
.detail-layout-editorial {
  grid-template-columns: minmax(0, 1fr) minmax(330px, .42fr);
}
.detail-layout-editorial > .ai-detail-cover,
.detail-layout-editorial > .abc-detail-cover {
  width: 100%;
  min-width: 0;
  grid-column: 1 / -1;
  grid-row: 1;
}
.detail-layout-editorial > .detail-title-block {
  min-width: 0;
  grid-column: 1;
  grid-row: 2;
}
.detail-layout-editorial > .booking-card {
  grid-column: 2;
  grid-row: 2 / span 2;
  align-self: start;
}
.detail-layout-editorial > .detail-main-editorial {
  min-width: 0;
  grid-column: 1;
  grid-row: 3;
}
.ai-detail-cover::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5,7,5,.92) 0%, rgba(5,7,5,.58) 41%, rgba(5,7,5,.12) 70%),
    linear-gradient(0deg, rgba(5,7,5,.78), transparent 42%);
  pointer-events: none;
}
.ai-detail-cover-grid {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.ai-detail-cover-grid img {
  width: 100%;
  height: 100%;
  min-width: 0;
  object-fit: cover;
  filter: saturate(.72) contrast(1.06) brightness(.76);
}
.ai-detail-cover-grid img + img { border-left: 1px solid rgba(255,255,255,.16); }
.ai-detail-cover-type {
  position: absolute;
  z-index: 2;
  left: clamp(24px, 5vw, 62px);
  bottom: clamp(92px, 12vw, 132px);
  display: grid;
  gap: 10px;
  color: #f2f0e9;
  font-family: Arial, sans-serif;
  pointer-events: none;
}
.ai-detail-cover-type span,
.ai-detail-cover-type small {
  color: var(--skill-accent);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .15em;
}
.ai-detail-cover-type strong {
  font-size: clamp(48px, 7.8vw, 92px);
  line-height: .78;
  letter-spacing: -.085em;
}
.ai-detail-cover > .card-badges,
.ai-detail-cover > .cover-place { z-index: 3; }

.ai-card-cover {
  isolation: isolate;
  background: #090a09;
}
.ai-card-cover::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5,7,5,.9) 0%, rgba(5,7,5,.52) 43%, rgba(5,7,5,.12) 74%),
    linear-gradient(0deg, rgba(5,7,5,.62), transparent 54%);
  pointer-events: none;
}
.ai-card-cover-grid {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.ai-card-cover-grid img {
  width: 100%;
  height: 100%;
  min-width: 0;
  object-fit: cover;
  filter: saturate(.72) contrast(1.06) brightness(.74);
}
.ai-card-cover-grid img + img { border-left: 1px solid rgba(255,255,255,.14); }
.ai-card-cover-type {
  position: absolute;
  z-index: 2;
  left: 18px;
  bottom: 24px;
  display: grid;
  gap: 5px;
  color: #f2f0e9;
  font-family: Arial, sans-serif;
  pointer-events: none;
}
.ai-card-cover-type span,
.ai-card-cover-type small {
  color: var(--skill-accent);
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .13em;
}
.ai-card-cover-type strong {
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: .8;
  letter-spacing: -.08em;
}
.ai-card-cover > .card-badges,
.ai-card-cover > .favorite-button,
.ai-card-cover > .cover-place { z-index: 3; }

.ai-class-flow { padding-top: 72px; }
.ai-class-flow > header {
  margin-bottom: 28px;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, .62fr);
  gap: clamp(32px, 7vw, 88px);
  align-items: end;
}
.ai-class-flow > header h2 {
  margin: 12px 0 0;
  color: var(--home-ink);
  font-size: clamp(38px, 5.3vw, 64px);
  line-height: .98;
  letter-spacing: -.065em;
}
.ai-class-flow > header > p {
  margin: 0;
  color: var(--home-muted);
  font-size: 13px;
  line-height: 1.72;
  word-break: keep-all;
}
.ai-class-flow-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.ai-class-flow-strip figure {
  min-width: 0;
  margin: 0;
  border: 1px solid var(--home-line);
  background: #0a0c0a;
}
.ai-class-flow-strip figure > div {
  height: clamp(240px, 31vw, 390px);
  position: relative;
  overflow: hidden;
  background: #121512;
}
.ai-class-flow-strip img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  filter: saturate(.83) contrast(1.04);
  transition: transform .45s cubic-bezier(.2,.8,.2,1);
}
.ai-class-flow-strip figure:hover img { transform: scale(1.025); }
.ai-class-flow-strip figure > div > span {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 7px 9px;
  border: 1px solid color-mix(in srgb, var(--skill-accent) 55%, transparent);
  background: rgba(5,7,5,.82);
  color: var(--skill-accent);
  font: 900 9px/1 Arial, sans-serif;
  letter-spacing: .12em;
}
.ai-class-flow-strip figcaption {
  min-height: 96px;
  padding: 16px;
  display: grid;
  align-content: start;
  gap: 6px;
  border-top: 1px solid var(--home-line);
}
.ai-class-flow-strip figcaption strong { color: var(--home-ink); font-size: 16px; }
.ai-class-flow-strip figcaption small { color: var(--home-muted); font-size: 11px; line-height: 1.45; }
.ai-content-disclosure,
.profile-photo-disclosure {
  margin: 13px 0 0;
  color: var(--home-muted);
  font-size: 10px;
  line-height: 1.6;
}

.curriculum-timeline { position: relative; }
.curriculum-time-item {
  min-height: 108px;
  grid-template-columns: minmax(116px, .28fr) minmax(0, 1fr);
  align-items: center;
}
.curriculum-time-item::before {
  content: attr(data-step);
  width: 28px;
  height: 28px;
  margin-right: 2px;
  grid-column: 1;
  grid-row: 1;
  justify-self: end;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--skill-accent) 56%, transparent);
  color: var(--skill-accent);
  font: 900 9px/1 Arial, sans-serif;
}
.curriculum-time-item > span {
  grid-column: 1;
  grid-row: 1;
  justify-self: start;
  color: var(--skill-accent) !important;
  font: 900 11px/1 Arial, sans-serif;
  letter-spacing: .02em;
}
.curriculum-time-item strong { color: var(--home-ink); font-size: 18px; }
.curriculum-time-item p { margin-top: 7px; line-height: 1.55; }
.curriculum-timeline-note { margin: 15px 0 0; color: var(--home-muted); font-size: 10px; line-height: 1.6; }

.profile-poster-ai-creative .profile-poster-copy {
  overflow: hidden;
  background:
    linear-gradient(rgba(209,229,154,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(209,229,154,.045) 1px, transparent 1px),
    radial-gradient(circle at 18% 23%, rgba(209,229,154,.18), transparent 39%),
    #090a09;
  background-size: 52px 52px, 52px 52px, auto, auto;
}
.profile-poster-ai-creative .profile-poster-copy::before {
  content: "IMAGE / MOTION / WORDS";
  position: absolute;
  z-index: -1;
  right: -54px;
  top: 46%;
  max-width: 520px;
  color: rgba(209,229,154,.06);
  font: 900 clamp(64px, 8vw, 112px)/.78 Arial, sans-serif;
  letter-spacing: -.08em;
  text-align: right;
}
.profile-poster-ai-creative .profile-poster-copy::after { background: #d1e59a; opacity: .13; }
.profile-poster-ai-creative .profile-title { color: var(--skill-accent); }
.profile-page-ai-creative .profile-class-story-visual::after { background: linear-gradient(transparent 34%, rgba(0,0,0,.88)); }
.profile-page-ai-creative .profile-class-story-visual img { filter: saturate(.83) contrast(1.04); }
.profile-page-ai-creative .profile-photo-grid figure { border-color: rgba(209,229,154,.25); }
.profile-page-ai-creative .profile-photo-grid figure:nth-child(4) img { object-position: center 35%; }
.profile-page-ai-creative .profile-photo-disclosure {
  padding-left: 14px;
  border-left: 2px solid var(--skill-accent);
}
.class-card-ai-creative,
.pro-card-ai-creative,
.educator-rail-card-ai-creative { border-color: rgba(209,229,154,.4) !important; }
.class-card-ai-creative .card-image::after,
.pro-card-ai-creative .pro-card-image::after { background: linear-gradient(transparent 35%, rgba(6,9,5,.73)); }

/* Lee Yujin · Sassoon cut basic / ABC classic editorial profile and class */
.home-dark .detail-page.detail-page-abc-classic,
.home-dark .pro-profile-page.profile-page-abc-classic,
.home-dark .class-card.class-card-abc-classic,
.home-dark .pro-card.pro-card-abc-classic,
.home-dark .educator-rail-card.educator-rail-card-abc-classic {
  --skill-accent: #e1bd69;
  --skill-ink: #121008;
  --skill-soft: #302717;
  --skill-border: #e1bd69;
}

.profile-poster-abc-classic .profile-poster-copy {
  overflow: hidden;
  background:
    linear-gradient(rgba(225,189,105,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(225,189,105,.05) 1px, transparent 1px),
    radial-gradient(circle at 18% 22%, rgba(225,189,105,.18), transparent 38%),
    #090a09;
  background-size: 54px 54px, 54px 54px, auto, auto;
}
.profile-poster-abc-classic .profile-poster-brand,
.profile-poster-abc-classic .profile-summary,
.profile-poster-abc-classic .profile-poster-foot { position: relative; z-index: 2; }
.profile-poster-abc-classic .profile-title { color: var(--skill-accent); }
.profile-abc-type {
  position: absolute;
  z-index: 1;
  top: 86px;
  right: 28px;
  display: grid;
  justify-items: end;
  color: rgba(225,189,105,.09);
  font-family: Arial, sans-serif;
  line-height: 1;
  pointer-events: none;
}
.profile-abc-type span,
.profile-abc-type small { color: rgba(225,189,105,.42); font-size: 8px; font-weight: 900; letter-spacing: .18em; }
.profile-abc-type strong { margin: 6px 0; font-size: clamp(90px, 11vw, 154px); line-height: .62; letter-spacing: -.13em; text-align: right; }
.profile-poster-abc-classic .profile-portrait {
  isolation: isolate;
  background: #080907;
}
.profile-poster-abc-classic .profile-portrait > img {
  width: 64%;
  left: 36%;
  z-index: 0;
  object-position: center 16% !important;
  filter: saturate(.82) contrast(1.03);
}
.profile-poster-abc-classic .profile-portrait::after {
  z-index: 1;
  inset: 0 0 0 36%;
  background: linear-gradient(0deg, rgba(7,8,7,.45), transparent 42%), linear-gradient(90deg, rgba(7,8,7,.23), transparent 24%);
}
.profile-abc-identity {
  width: 38%;
  padding: 48px 30px 34px;
  position: absolute;
  z-index: 3;
  inset: 0 auto 0 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-right: 1px solid rgba(225,189,105,.26);
  color: #f4f1e8;
  background:
    linear-gradient(rgba(225,189,105,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(225,189,105,.05) 1px, transparent 1px),
    radial-gradient(circle at 22% 16%, rgba(225,189,105,.15), transparent 34%),
    #080907;
  background-size: 44px 44px, 44px 44px, auto, auto;
  font-family: Arial, sans-serif;
}
.profile-abc-identity-kicker { display: flex; align-items: center; gap: 8px; font-size: 8px; font-weight: 900; letter-spacing: .14em; white-space: nowrap; }
.profile-abc-identity-kicker i { width: 8px; height: 8px; display: inline-block; border-radius: 50%; background: var(--skill-accent); box-shadow: 0 0 0 5px rgba(225,189,105,.08); }
.profile-abc-identity > strong { margin-top: 18px; font-size: clamp(72px, 6.2vw, 112px); line-height: .82; letter-spacing: -.105em; }
.profile-abc-identity > em { color: var(--skill-accent); font-family: Georgia, "Times New Roman", serif; font-size: clamp(35px, 3.2vw, 54px); font-weight: 700; line-height: .9; letter-spacing: -.06em; }
.profile-abc-identity-facts { margin-top: 48px; padding-top: 22px; border-top: 1px solid rgba(244,241,232,.42); display: grid; gap: 10px; }
.profile-abc-identity-facts span { color: rgba(244,241,232,.48); font-size: 6px; font-weight: 900; letter-spacing: .14em; }
.profile-abc-identity-facts b { font-size: 14px; line-height: 1.25; }
.profile-abc-identity-facts p { margin: 0; color: rgba(244,241,232,.82); font-size: 11px; font-weight: 700; line-height: 1.48; word-break: keep-all; }
.profile-abc-identity footer { margin-top: auto; display: grid; gap: 4px; }
.profile-abc-identity footer b { font-size: 25px; line-height: 1; letter-spacing: -.06em; }
.profile-abc-identity footer small { color: var(--skill-accent); font-size: 6px; font-weight: 900; letter-spacing: .13em; }
.profile-abc-photo-frame { position: absolute; z-index: 2; inset: 11% 7% 17% 43%; border: 1px solid rgba(225,189,105,.28); pointer-events: none; }
.profile-abc-photo-word { position: absolute; z-index: 2; left: 48%; bottom: 25%; color: rgba(225,189,105,.12); font: 900 clamp(58px, 7.4vw, 116px)/.8 Arial, sans-serif; letter-spacing: -.1em; pointer-events: none; }
.profile-abc-photo-rail {
  width: 50px;
  height: 42%;
  position: absolute;
  z-index: 4;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #16140d;
  background: var(--skill-accent);
  font: 900 9px/1 Arial, sans-serif;
  letter-spacing: .14em;
  writing-mode: vertical-rl;
}
.profile-abc-photo-caption { position: absolute; z-index: 4; right: 24px; bottom: 22px; display: grid; justify-items: end; gap: 5px; color: #f4f1e8; font-family: Arial, sans-serif; text-align: right; pointer-events: none; }
.profile-abc-photo-caption strong { font-size: 13px; letter-spacing: -.02em; }
.profile-abc-photo-caption span { color: var(--skill-accent); font-size: 7px; font-weight: 900; letter-spacing: .13em; }
.profile-abc-portrait-type {
  position: absolute;
  z-index: 4;
  top: 24px;
  right: 24px;
  left: 43%;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  color: rgba(19,17,11,.8);
  font: 900 9px/1 Arial, sans-serif;
  letter-spacing: .15em;
  pointer-events: none;
}
.profile-abc-portrait-type strong { color: rgba(19,17,11,.48); font-size: 8px; }
.profile-poster-abc-classic .profile-portrait > .sample-label,
.profile-poster-abc-classic .profile-portrait > figcaption { display: none; }
.profile-page-abc-classic .profile-course-map,
.profile-page-abc-classic .profile-course-schedule-grid,
.profile-page-abc-classic .profile-training-list { border-color: rgba(225,189,105,.28); }

.abc-detail-cover {
  min-height: 560px;
  isolation: isolate;
  overflow: hidden;
  border-radius: 0;
  background:
    linear-gradient(rgba(225,189,105,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(225,189,105,.045) 1px, transparent 1px),
    #080908;
  background-size: 58px 58px;
}
.abc-detail-cover::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(6,7,6,.98) 0%, rgba(6,7,6,.89) 37%, rgba(6,7,6,.18) 67%, rgba(6,7,6,.05) 100%),
    linear-gradient(0deg, rgba(6,7,6,.78), transparent 43%);
  pointer-events: none;
}
.abc-detail-cover-portrait {
  width: 62% !important;
  height: 100% !important;
  position: absolute;
  inset: 0 0 0 auto;
  object-fit: cover;
  filter: saturate(.62) contrast(1.06) brightness(.88);
}
.abc-detail-cover-type {
  max-width: 560px;
  position: absolute;
  z-index: 2;
  left: clamp(24px, 5vw, 64px);
  bottom: clamp(98px, 12vw, 138px);
  display: grid;
  gap: 10px;
  color: #f2f0e9;
  font-family: Arial, sans-serif;
  pointer-events: none;
}
.abc-detail-cover-type span,
.abc-detail-cover-type small { color: var(--skill-accent); font-size: 10px; font-weight: 900; letter-spacing: .16em; }
.abc-detail-cover-type strong { font-size: clamp(54px, 8vw, 96px); line-height: .76; letter-spacing: -.09em; }
.abc-detail-cover-type em { color: var(--skill-accent); font-size: .48em; font-style: normal; letter-spacing: -.045em; }
.abc-detail-cover-axis {
  position: absolute;
  z-index: 2;
  top: 28px;
  right: 30px;
  display: grid;
  grid-template-columns: repeat(3, 34px);
  border: 1px solid rgba(225,189,105,.52);
  color: var(--skill-accent);
  font: 900 10px/32px Arial, sans-serif;
  text-align: center;
}
.abc-detail-cover-axis span + span { border-left: 1px solid rgba(225,189,105,.52); }
.abc-detail-cover > .card-badges,
.abc-detail-cover > .cover-place { z-index: 3; }

.abc-card-cover {
  isolation: isolate;
  background:
    linear-gradient(rgba(225,189,105,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(225,189,105,.04) 1px, transparent 1px),
    #080908;
  background-size: 38px 38px;
}
.abc-card-cover::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(90deg, rgba(6,7,6,.96), rgba(6,7,6,.68) 48%, rgba(6,7,6,.05) 79%), linear-gradient(0deg, rgba(6,7,6,.72), transparent 56%);
  pointer-events: none;
}
.abc-card-cover-portrait { width: 68% !important; position: absolute; inset: 0 0 0 auto; filter: saturate(.68) contrast(1.05) brightness(.88); }
.abc-card-cover-type {
  position: absolute;
  z-index: 2;
  left: 17px;
  bottom: 22px;
  display: grid;
  gap: 5px;
  color: #f2f0e9;
  font-family: Arial, sans-serif;
  pointer-events: none;
}
.abc-card-cover-type span,
.abc-card-cover-type small { color: var(--skill-accent); font-size: 7px; font-weight: 900; letter-spacing: .13em; }
.abc-card-cover-type strong { font-size: clamp(30px, 3.2vw, 45px); line-height: .78; letter-spacing: -.08em; }
.abc-card-cover-type em { color: var(--skill-accent); font-size: .5em; font-style: normal; letter-spacing: -.03em; }
.abc-card-cover > .card-badges,
.abc-card-cover > .favorite-button,
.abc-card-cover > .cover-place { z-index: 3; }

.abc-class-blueprint { padding-top: 72px; }
.abc-class-blueprint > header {
  margin-bottom: 28px;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, .62fr);
  gap: clamp(32px, 7vw, 88px);
  align-items: end;
}
.abc-class-blueprint > header h2 { margin: 12px 0 0; color: var(--home-ink); font-size: clamp(38px, 5.3vw, 64px); line-height: .98; letter-spacing: -.065em; }
.abc-class-blueprint > header > p { margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.72; word-break: keep-all; }
.abc-class-blueprint-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid rgba(225,189,105,.3); }
.abc-class-blueprint-grid article {
  min-width: 0;
  min-height: 320px;
  padding: 24px 20px;
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background:
    linear-gradient(rgba(225,189,105,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(225,189,105,.035) 1px, transparent 1px),
    #090a09;
  background-size: 42px 42px;
}
.abc-class-blueprint-grid article + article { border-left: 1px solid rgba(225,189,105,.3); }
.abc-class-blueprint-grid article > span { position: absolute; right: 12px; bottom: -22px; color: rgba(225,189,105,.055); font: 900 148px/.8 Arial, sans-serif; letter-spacing: -.12em; }
.abc-class-blueprint-grid small { color: var(--skill-accent); font: 900 9px/1 Arial, sans-serif; letter-spacing: .16em; }
.abc-class-blueprint-grid h3 { max-width: 240px; margin: 24px 0 9px; color: var(--home-ink); font-size: 24px; line-height: 1.05; letter-spacing: -.05em; }
.abc-class-blueprint-grid strong { color: var(--skill-accent); font-size: 12px; }
.abc-class-blueprint-grid ul { margin: auto 0 0; padding: 0; position: relative; z-index: 1; display: grid; gap: 8px; list-style: none; }
.abc-class-blueprint-grid li { padding-top: 8px; border-top: 1px solid var(--home-line); color: var(--home-muted); font-size: 10px; }
.curriculum-abc { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid rgba(225,189,105,.3); border-left: 1px solid rgba(225,189,105,.3); }
.curriculum-abc-item { min-height: 150px; padding: 22px; grid-template-columns: 54px minmax(0, 1fr); border-right: 1px solid rgba(225,189,105,.3); border-bottom: 1px solid rgba(225,189,105,.3); }
.curriculum-abc-item > span { color: var(--skill-accent) !important; font: 900 11px/1 Arial, sans-serif; letter-spacing: .08em; }
.curriculum-abc-item strong { color: var(--home-ink); font-size: 20px; }
.curriculum-abc-item p { margin-top: 8px; line-height: 1.6; }
.class-card-abc-classic,
.pro-card-abc-classic,
.educator-rail-card-abc-classic { border-color: rgba(225,189,105,.46) !important; }
.class-card-abc-classic .card-image::after,
.pro-card-abc-classic .pro-card-image::after { background: linear-gradient(transparent 35%, rgba(6,7,6,.76)); }

@media (max-width: 840px) {
  .detail-layout-editorial { grid-template-columns: 1fr; }
  .detail-layout-editorial > .ai-detail-cover,
  .detail-layout-editorial > .abc-detail-cover,
  .detail-layout-editorial > .detail-title-block,
  .detail-layout-editorial > .booking-card,
  .detail-layout-editorial > .detail-main-editorial {
    grid-column: 1;
    grid-row: auto;
  }
  .ai-detail-cover { min-height: 500px; aspect-ratio: 4 / 3; }
  .abc-detail-cover { min-height: 500px; aspect-ratio: 4 / 3; }
  .ai-class-flow > header { grid-template-columns: 1fr; gap: 16px; }
  .abc-class-blueprint > header { grid-template-columns: 1fr; gap: 16px; }
  .abc-class-blueprint-grid { grid-template-columns: 1fr; }
  .abc-class-blueprint-grid article { min-height: 240px; }
  .abc-class-blueprint-grid article + article { border-left: 0; border-top: 1px solid rgba(225,189,105,.3); }
  .ai-class-flow-strip {
    padding-bottom: 8px;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(250px, 62vw);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }
  .ai-class-flow-strip figure > div { height: 330px; }
}

@media (max-width: 580px) {
  .ai-detail-cover { min-height: 430px; aspect-ratio: 1 / 1.08; }
  .abc-detail-cover { min-height: 430px; aspect-ratio: 1 / 1.08; }
  .abc-detail-cover::after { background: linear-gradient(0deg, rgba(6,7,6,.94) 0%, rgba(6,7,6,.54) 58%, rgba(6,7,6,.1) 100%); }
  .abc-detail-cover-portrait { width: 100% !important; opacity: .84; }
  .abc-detail-cover-axis { top: 16px; right: 16px; grid-template-columns: repeat(3, 28px); font-size: 8px; line-height: 26px; }
  .abc-detail-cover-type { left: 17px; bottom: 102px; gap: 7px; }
  .abc-detail-cover-type strong { font-size: clamp(44px, 14vw, 60px); }
  .abc-detail-cover-type span,
  .abc-detail-cover-type small { font-size: 8px; }
  .ai-detail-cover::after { background: linear-gradient(0deg, rgba(5,7,5,.92) 0%, rgba(5,7,5,.3) 70%); }
  .ai-detail-cover-grid { grid-template-columns: 1fr 1fr 1fr; }
  .ai-detail-cover-type { left: 17px; bottom: 102px; gap: 8px; }
  .ai-detail-cover-type strong { font-size: clamp(42px, 14vw, 58px); }
  .ai-detail-cover-type span,
  .ai-detail-cover-type small { font-size: 8px; }
  .ai-card-cover-type { left: 14px; bottom: 18px; }
  .ai-card-cover-type strong { font-size: clamp(32px, 10vw, 46px); }
  .abc-card-cover-type { left: 14px; bottom: 18px; }
  .abc-card-cover-type strong { font-size: clamp(34px, 10vw, 47px); }
  .ai-class-flow { padding-top: 50px; }
  .abc-class-blueprint { padding-top: 50px; }
  .abc-class-blueprint > header h2 { font-size: 39px; }
  .abc-class-blueprint-grid h3 { font-size: 22px; }
  .curriculum-abc { grid-template-columns: 1fr; }
  .curriculum-abc-item { min-height: 0; padding: 20px 14px; grid-template-columns: 45px minmax(0, 1fr); }
  .curriculum-abc-item strong { font-size: 17px; }
  .ai-class-flow > header h2 { font-size: 39px; }
  .ai-class-flow-strip { grid-auto-columns: minmax(230px, 78vw); }
  .ai-class-flow-strip figure > div { height: 306px; }
  .curriculum-time-item {
    min-height: 0;
    padding: 20px 0;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 11px;
  }
  .curriculum-time-item::before { display: none; }
  .curriculum-time-item > span { font-size: 9px; white-space: nowrap; }
  .curriculum-time-item strong { font-size: 15px; }
  .profile-poster-ai-creative .profile-poster-copy::before { top: 48%; right: -28px; font-size: 64px; }
  .profile-abc-type { display: none; }
  .profile-poster-abc-classic .profile-portrait > img { width: 60%; left: 40%; }
  .profile-poster-abc-classic .profile-portrait::after { inset: 0 0 0 40%; }
  .profile-abc-identity { width: 42%; padding: 25px 13px 18px; background-size: 28px 28px, 28px 28px, auto, auto; }
  .profile-abc-identity-kicker { gap: 5px; font-size: 5px; letter-spacing: .1em; }
  .profile-abc-identity-kicker i { width: 6px; height: 6px; box-shadow: 0 0 0 3px rgba(225,189,105,.08); }
  .profile-abc-identity > strong { margin-top: 16px; font-size: 52px; }
  .profile-abc-identity > em { font-size: 29px; }
  .profile-abc-identity-facts { margin-top: 34px; padding-top: 14px; gap: 7px; }
  .profile-abc-identity-facts span { font-size: 4px; }
  .profile-abc-identity-facts b { font-size: 10px; }
  .profile-abc-identity-facts p { font-size: 8px; }
  .profile-abc-identity footer b { font-size: 19px; }
  .profile-abc-identity footer small { font-size: 4px; }
  .profile-abc-photo-frame { inset: 12% 8% 20% 45%; }
  .profile-abc-photo-word { left: 46%; bottom: 27%; font-size: 58px; }
  .profile-abc-photo-rail { width: 31px; height: 40%; font-size: 6px; }
  .profile-abc-photo-caption { right: 12px; bottom: 14px; gap: 3px; }
  .profile-abc-photo-caption strong { font-size: 8px; }
  .profile-abc-photo-caption span { font-size: 4px; }
  .profile-abc-portrait-type { top: 15px; right: 38px; left: 45%; font-size: 6px; }
  .profile-abc-portrait-type strong { font-size: 5px; }
  .profile-page-ai-creative .profile-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-dark .educator-rail-card {
    min-width: 286px;
    min-height: 92px;
    padding: 10px;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    gap: 11px;
    flex-basis: 286px;
  }
  .home-dark .educator-rail-card img { width: 64px; height: 64px; }
  .home-dark .educator-rail-card strong { font-size: 15px; }
}

/* Professional membership, protected previews and separated service examples */
.auth-value-summary {
  padding: 14px 16px;
  display: grid;
  gap: 4px;
  border: 1px solid var(--brand);
  background: var(--brand-soft);
}
.auth-value-summary span,
.auth-value-summary strong,
.auth-value-summary small { display: block; }
.auth-value-summary span { color: var(--brand-deep); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.auth-value-summary strong { font-size: 13px; line-height: 1.4; }
.auth-value-summary small { color: var(--muted); font-size: 10px; line-height: 1.5; }
.auth-member-type select {
  width: 100%;
  min-height: 48px;
  padding: 0 13px;
  border: 1px solid var(--line);
  background: var(--paper);
  color: var(--ink);
  font: inherit;
  font-size: 12px;
}
.auth-intent-options {
  min-width: 0;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  border: 0;
}
.auth-intent-options legend {
  width: 100%;
  margin-bottom: 2px;
  color: var(--ink-soft);
  font-size: 11px;
  font-weight: 800;
}
.auth-intent-options legend small { color: var(--muted); font-size: 9px; font-weight: 600; }
.auth-intent-options label { min-width: 0; cursor: pointer; }
.auth-intent-options input { position: absolute; opacity: 0; pointer-events: none; }
.auth-intent-options label > span {
  min-height: 61px;
  padding: 10px 11px;
  display: grid;
  align-content: center;
  gap: 2px;
  border: 1px solid var(--line);
  background: var(--paper-2);
}
.auth-intent-options strong,
.auth-intent-options small { display: block; }
.auth-intent-options strong { font-size: 11px; line-height: 1.3; }
.auth-intent-options small { color: var(--muted); font-size: 9px; line-height: 1.35; }
.auth-intent-options input:checked + span { border-color: var(--brand); background: var(--brand-soft); box-shadow: inset 0 -3px 0 var(--brand); }
.auth-intent-options input:focus-visible + span { outline: 2px solid var(--brand); outline-offset: 2px; }

.membership-directory-preview {
  width: min(960px, 100%);
  margin: 8px auto 2px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--home-line);
  border-left: 1px solid var(--home-line);
  text-align: left;
}
.membership-directory-preview > div {
  min-width: 0;
  min-height: 154px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--home-line);
  border-bottom: 1px solid var(--home-line);
  background: rgba(255,255,255,.025);
}
.membership-directory-preview span { color: var(--home-signal); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.membership-preview-summary span { font-size: 30px; letter-spacing: -.04em; }
.membership-directory-preview strong { margin-top: auto; color: var(--home-ink); font-size: 14px; line-height: 1.4; }
.membership-directory-preview small { margin-top: 6px; color: var(--home-muted); font-size: 10px; line-height: 1.55; }
.membership-gate-benefits { margin-top: 2px; display: flex; justify-content: center; gap: 9px; color: var(--home-muted); font-size: 11px; }
.membership-gate-benefits span { color: var(--home-signal); font-weight: 900; }
.directory-access-gate > .membership-gate-status { margin-top: 34px; }
.directory-access-gate > a.button { margin-top: 18px; }
.directory-gate-home { margin-top: 16px; display: inline-block; color: var(--home-muted); font-size: 11px; font-weight: 800; text-decoration: underline; text-underline-offset: 5px; }

.sample-class-library { padding-top: 72px; padding-bottom: 92px; }
.sample-class-library > header { margin-bottom: 26px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(280px, .55fr); gap: 50px; align-items: end; }
.sample-class-library h2 { margin: 8px 0 0; color: var(--home-ink); font-size: clamp(35px, 4vw, 56px); line-height: 1; letter-spacing: -.055em; }
.sample-class-library > header > p { margin: 0; color: var(--home-muted); font-size: 12px; line-height: 1.75; }
.sample-class-preview-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.sample-class-preview { min-width: 0; min-height: 190px; padding: 22px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: rgba(255,255,255,.018); }
.sample-class-preview > span { color: var(--home-signal); font-size: 9px; font-weight: 900; letter-spacing: .06em; }
.sample-class-preview h3 { margin: 25px 0 8px; color: var(--home-ink); font-size: 19px; line-height: 1.25; letter-spacing: -.03em; }
.sample-class-preview p { margin: 0; color: var(--home-muted); font-size: 10px; }
.sample-class-preview > div { margin-top: auto; padding-top: 20px; display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid var(--home-line); }
.sample-class-preview > div strong { color: #ff8787; font-size: 9px; }
.sample-class-preview > div a { color: var(--home-ink); font-size: 10px; font-weight: 800; }

.supplier-results-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; }
.supplier-results-actions button { padding: 0 0 7px; border: 0; border-bottom: 1px solid var(--home-line); background: transparent; color: var(--home-muted); font-size: 11px; font-weight: 800; cursor: pointer; }
.supplier-results-actions button:first-child { border-color: var(--home-signal); color: var(--home-signal); }
.supplier-results-actions button:disabled { cursor: wait; opacity: .65; }
.membership-summary-card,
.saved-searches-card { margin-top: 18px; }
.membership-summary-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.membership-summary-grid > div { min-width: 0; padding: 17px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.membership-summary-grid span,
.membership-summary-grid strong { display: block; }
.membership-summary-grid span { color: var(--muted); font-size: 9px; font-weight: 850; }
.membership-summary-grid strong { margin-top: 8px; font-size: 13px; line-height: 1.5; }
.saved-search-list { display: grid; border-top: 1px solid var(--line); }
.saved-search-list > div:not(.device-session-empty) { padding: 15px 0; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 15px; border-bottom: 1px solid var(--line); }
.saved-search-list span { color: var(--brand-deep); font-size: 9px; font-weight: 900; }
.saved-search-list strong { font-size: 12px; overflow-wrap: anywhere; }

.home-dark .auth-value-summary { border-color: var(--home-signal); background: rgba(209,229,154,.08); }
.home-dark .auth-value-summary span { color: var(--home-signal); }
.home-dark .auth-value-summary small,
.home-dark .auth-intent-options legend,
.home-dark .auth-intent-options legend small,
.home-dark .auth-intent-options small { color: var(--home-muted); }
.home-dark .auth-member-type select,
.auth-dialog .auth-member-type select,
.home-dark .auth-intent-options label > span,
.auth-dialog .auth-intent-options label > span { border-color: var(--home-line); background: var(--home-surface-2); color: var(--home-ink); }
.home-dark .auth-intent-options input:checked + span,
.auth-dialog .auth-intent-options input:checked + span { border-color: var(--home-signal); background: rgba(209,229,154,.09); box-shadow: inset 0 -3px 0 var(--home-signal); }
.home-dark .membership-summary-grid,
.home-dark .membership-summary-grid > div,
.home-dark .saved-search-list,
.home-dark .saved-search-list > div:not(.device-session-empty) { border-color: var(--home-line); }
.home-dark .membership-summary-grid span,
.home-dark .saved-search-list span { color: var(--home-signal); }
.auth-dialog-form { max-height: calc(100dvh - 48px); overflow-y: auto; }

@media (max-width: 820px) {
  .membership-directory-preview,
  .sample-class-preview-grid { grid-template-columns: 1fr 1fr; }
  .sample-class-library > header { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 580px) {
  .auth-context h1 { font-size: clamp(35px, 10.8vw, 43px); overflow-wrap: normal; word-break: keep-all; }
  .auth-context > p:not(.eyebrow) { font-size: 13px; line-height: 1.65; }
  .auth-intent-options { grid-template-columns: 1fr; }
  .auth-intent-options label > span { min-height: 54px; }
  .auth-value-summary { padding: 12px 13px; }
  .membership-directory-preview,
  .sample-class-preview-grid { grid-template-columns: 1fr; }
  .membership-directory-preview > div { min-height: 118px; padding: 17px; }
  .membership-gate-benefits { align-items: flex-start; flex-direction: column; }
  .sample-class-library { padding-top: 50px; padding-bottom: 62px; }
  .sample-class-preview { min-height: 164px; padding: 18px; }
  .supplier-results-actions { max-width: 132px; gap: 7px; }
  .supplier-results-actions button { font-size: 9px; }
  .membership-summary-grid { grid-template-columns: 1fr; }
  .saved-search-list > div:not(.device-session-empty) { grid-template-columns: 88px minmax(0, 1fr); }
  .auth-dialog-form { max-height: none; overflow: visible; }
}

/* Business-only wholesale price and promotion comparison */
.wholesale-entry-card { margin: 0 0 18px; min-height: 104px; padding: 20px 22px; display: grid; grid-template-columns: 160px minmax(0, 1fr) auto; gap: 24px; align-items: center; border: 1px solid rgba(209,229,154,.72); background: linear-gradient(110deg, rgba(209,229,154,.12), rgba(119,220,240,.035)); color: var(--home-ink); }
.wholesale-entry-card > span { color: var(--home-signal); font: 900 10px/1.3 Arial, sans-serif; letter-spacing: .1em; }
.wholesale-entry-card > div { min-width: 0; }
.wholesale-entry-card strong { display: block; font-size: 20px; letter-spacing: -.035em; }
.wholesale-entry-card p { margin: 8px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.55; }
.wholesale-entry-card > b { color: var(--home-signal); font-size: 12px; white-space: nowrap; }
.wholesale-entry-card:hover { background: var(--home-signal); color: var(--home-bg); }
.wholesale-entry-card:hover :is(span, p, b) { color: var(--home-bg); }

.wholesale-preview-metrics { width: min(680px, 100%); margin-top: 34px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.wholesale-preview-metrics > div { min-height: 86px; padding: 16px; display: flex; flex-direction: column; justify-content: flex-end; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.wholesale-preview-metrics b { color: var(--home-signal); font-size: 26px; line-height: 1; }
.wholesale-preview-metrics span { margin-top: 9px; color: var(--home-muted); font-size: 9px; font-weight: 850; }
.wholesale-gate-disabled { min-height: 48px; margin-top: 28px; padding: 0 18px; display: inline-flex; align-items: center; border: 1px dashed #59604f; color: var(--home-muted); font-size: 11px; font-weight: 850; }

.wholesale-page { min-height: 100vh; background: var(--home-bg); color: var(--home-ink); }
.wholesale-page :is(h1, h2, p, a, button, label, strong, small) { word-break: keep-all; }
.wholesale-hero { padding-top: 82px; padding-bottom: 54px; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(420px, .75fr); gap: 64px; align-items: end; }
.wholesale-business-badge { margin: 24px 0 20px; width: fit-content; min-height: 34px; padding: 0 12px; display: inline-flex; align-items: center; border: 1px solid var(--home-signal); color: var(--home-signal); font-size: 10px; font-weight: 900; letter-spacing: .04em; }
.wholesale-hero h1 { max-width: 900px; margin: 0; font-size: clamp(54px, 6.7vw, 96px); line-height: .92; letter-spacing: -.075em; }
.wholesale-hero h1 span { color: var(--home-signal); font-family: Georgia, "Times New Roman", serif; font-size: .77em; font-style: italic; font-weight: 400; }
.wholesale-hero-copy > p:last-child { max-width: 780px; margin: 28px 0 0; color: var(--home-muted); font-size: 14px; line-height: 1.75; }
.wholesale-hero-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--home-signal); border-left: 1px solid var(--home-line); }
.wholesale-hero-metrics > div { min-height: 112px; padding: 19px; display: flex; flex-direction: column; justify-content: flex-end; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: rgba(255,255,255,.02); }
.wholesale-hero-metrics b { color: var(--home-signal); font-size: 30px; line-height: 1; letter-spacing: -.04em; }
.wholesale-hero-metrics span { margin-top: 10px; color: var(--home-muted); font-size: 9px; font-weight: 850; }
.wholesale-workspace { padding-bottom: 120px; }
.wholesale-scope-note { margin-bottom: 18px; padding: 18px 22px; display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 28px; border: 1px solid rgba(209,229,154,.52); background: rgba(209,229,154,.055); }
.wholesale-scope-note span { color: var(--home-signal); font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.wholesale-scope-note p { max-width: 980px; margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.7; }
.wholesale-featured-malls { margin: 24px 0 18px; border: 1px solid rgba(209,229,154,.46); background: linear-gradient(125deg, rgba(209,229,154,.055), rgba(119,220,240,.018)); }
.wholesale-featured-head { padding: 24px; display: grid; grid-template-columns: minmax(300px, .75fr) minmax(0, 1.25fr); gap: 36px; align-items: end; }
.wholesale-featured-head .eyebrow { margin: 0 0 10px; color: #8ee5f5; }
.wholesale-featured-head h2 { margin: 0; font-size: clamp(28px, 3vw, 42px); line-height: 1; letter-spacing: -.05em; }
.wholesale-featured-head > p { max-width: 720px; margin: 0; color: var(--home-muted); font-size: 11px; line-height: 1.7; }
.wholesale-featured-carousel { position: relative; }
.wholesale-featured-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.wholesale-featured-arrow,
.wholesale-featured-progress { display: none; }
.wholesale-featured-item { min-width: 0; min-height: 178px; padding: 17px; display: flex; flex-direction: column; align-items: stretch; border: 0; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: rgba(11,12,11,.78); color: var(--home-ink); font: inherit; text-align: left; cursor: pointer; transition: background-color .18s ease, box-shadow .18s ease; }
.wholesale-featured-item > span { color: #8ee5f5; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.wholesale-featured-item > strong { margin-top: 13px; font-size: 18px; line-height: 1.1; letter-spacing: -.035em; }
.wholesale-featured-item > small { min-height: 25px; margin-top: 7px; color: var(--home-muted); font-size: 8px; line-height: 1.45; }
.wholesale-featured-item > em { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 5px; font-style: normal; }
.wholesale-featured-item > em b { min-height: 24px; padding: 0 7px; display: inline-flex; align-items: center; border: 1px solid rgba(209,229,154,.28); color: #b8c39f; font-size: 8px; font-weight: 800; }
.wholesale-featured-item > i { margin-top: auto; padding-top: 13px; color: var(--home-signal); font-size: 9px; font-style: normal; font-weight: 900; }
.wholesale-featured-item:hover,
.wholesale-featured-item:focus-visible,
.wholesale-featured-item.is-active { background: #171b14; box-shadow: inset 0 0 0 1px rgba(209,229,154,.72); outline: 0; }
.wholesale-featured-item.is-active > span,
.wholesale-featured-item.is-active > i { color: #8ee5f5; }
.wholesale-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.wholesale-tabs button { min-height: 92px; padding: 18px 20px; display: grid; grid-template-columns: 36px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 13px; align-content: center; border: 0; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: rgba(255,255,255,.018); color: var(--home-muted); text-align: left; cursor: pointer; }
.wholesale-tabs button > span { grid-row: 1 / 3; padding-top: 4px; color: #6e7369; font-size: 10px; font-weight: 900; }
.wholesale-tabs button strong { font-size: 17px; }
.wholesale-tabs button small { margin-top: 6px; color: #73776f; font-size: 9px; }
.wholesale-tabs button.is-active { box-shadow: inset 0 -3px 0 var(--home-signal); background: rgba(209,229,154,.09); color: var(--home-signal); }
.wholesale-tabs button.is-active :is(span, small) { color: var(--home-signal); }
.wholesale-toolbar { margin-top: 18px; padding: 12px; display: grid; grid-template-columns: minmax(260px, 1.4fr) minmax(150px, .65fr) minmax(150px, .65fr) auto; gap: 8px; border: 1px solid var(--home-line); background: rgba(11,12,11,.94); }
.wholesale-toolbar label { min-width: 0; display: grid; gap: 7px; }
.wholesale-toolbar label > span { color: var(--home-muted); font-size: 9px; font-weight: 850; letter-spacing: .05em; }
.wholesale-toolbar select,
.wholesale-search { min-width: 0; min-height: 52px; border: 1px solid var(--home-line); background: var(--home-surface); color: var(--home-ink); }
.wholesale-toolbar select { width: 100%; padding: 0 12px; font: inherit; font-size: 11px; font-weight: 750; }
.wholesale-search { align-self: end; padding: 0 14px; display: flex !important; align-items: center; gap: 10px !important; }
.wholesale-search svg { color: var(--home-signal); }
.wholesale-search input { min-width: 0; width: 100%; border: 0; outline: 0; background: transparent; color: var(--home-ink); font: inherit; font-size: 12px; }
.wholesale-filter-toggle { min-width: 130px; min-height: 52px; align-self: end; padding: 0 13px; display: flex; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid rgba(209,229,154,.45); background: rgba(209,229,154,.05); color: var(--home-ink); font: inherit; font-size: 10px; font-weight: 850; cursor: pointer; }
.wholesale-filter-toggle strong { color: var(--home-signal); font-size: 9px; }
.wholesale-filter-secondary { grid-column: 1 / -1; display: none; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding-top: 4px; }
.wholesale-toolbar[data-filters-expanded="true"] .wholesale-filter-secondary { display: grid; }
.wholesale-mall-toolbar { grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr); align-items: stretch; }
.wholesale-mall-toolbar .wholesale-search { grid-column: auto; }
.wholesale-product-toolbar { grid-template-columns: minmax(260px, 1.4fr) minmax(170px, .7fr) auto; }
.wholesale-mall-guide { min-width: 0; padding: 0 18px; display: flex; flex-direction: column; justify-content: center; gap: 7px; border: 1px solid var(--home-line); background: rgba(209,229,154,.035); }
.wholesale-mall-guide span { color: var(--home-signal); font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.wholesale-mall-guide strong { color: var(--home-muted); font-size: 11px; line-height: 1.55; }
.wholesale-mall-context { margin: 18px 0 0; border: 1px solid rgba(209,229,154,.58); background: linear-gradient(120deg, rgba(209,229,154,.09), rgba(119,220,240,.025)); }
.wholesale-mall-back { min-height: 46px; padding: 0 18px; border: 0; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: #0d0f0d; color: #8ee5f5; font: inherit; font-size: 10px; font-weight: 900; cursor: pointer; }
.wholesale-mall-back:hover,
.wholesale-mall-back:focus-visible { background: #8ee5f5; color: var(--home-bg); outline: 0; }
.wholesale-mall-context-head { padding: 30px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .7fr); gap: 40px; align-items: end; }
.wholesale-mall-context-head .eyebrow { margin: 0 0 11px; color: #8ee5f5; }
.wholesale-mall-context-head h2 { margin: 0; font-size: clamp(38px, 5.3vw, 72px); line-height: .92; letter-spacing: -.065em; }
.wholesale-mall-context-head p:last-child { margin: 16px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.65; }
.wholesale-mall-context-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.wholesale-mall-context-metrics span { min-height: 82px; padding: 14px; display: flex; flex-direction: column; justify-content: flex-end; gap: 8px; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; font-weight: 850; }
.wholesale-mall-context-metrics b { color: var(--home-signal); font-size: 22px; line-height: 1; }
.wholesale-category-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--home-line); }
.wholesale-category-nav button { min-height: 62px; padding: 12px 14px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 0; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: rgba(11,12,11,.58); color: var(--home-muted); font: inherit; font-size: 10px; font-weight: 850; text-align: left; cursor: pointer; }
.wholesale-category-nav button:nth-child(4n) { border-right: 0; }
.wholesale-category-nav button b { color: #8ee5f5; font-size: 11px; }
.wholesale-category-nav button:hover,
.wholesale-category-nav button:focus-visible,
.wholesale-category-nav button.is-active { background: var(--home-signal); color: var(--home-bg); outline: 0; }
.wholesale-category-nav button:is(:hover, :focus-visible, .is-active) b { color: var(--home-bg); }
.wholesale-results-head { padding: 48px 0 22px; display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.wholesale-results-head .eyebrow { margin-bottom: 10px; color: #77dcf0; }
.wholesale-results-head h2 { margin: 0; font-size: clamp(30px, 3.2vw, 46px); line-height: 1; letter-spacing: -.052em; }
.wholesale-results-head h2 strong { color: var(--home-signal); }
.wholesale-results-head > button { padding: 0 0 7px; border: 0; border-bottom: 1px solid var(--home-line); background: transparent; color: var(--home-muted); font-size: 10px; font-weight: 850; cursor: pointer; }
.wholesale-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.wholesale-card { min-width: 0; min-height: 390px; padding: 20px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: #0d0f0d; }
.wholesale-card:nth-child(even) { background: #111410; }
.wholesale-mall-card { position: relative; min-height: 350px; border-top: 0; border-left: 0; border-radius: 0; color: var(--home-ink); font: inherit; text-align: left; cursor: pointer; transition: background-color .18s ease, box-shadow .18s ease; }
.wholesale-mall-card:hover,
.wholesale-mall-card:focus-visible { background: #171b14; box-shadow: inset 0 0 0 1px rgba(209,229,154,.72); outline: 0; }
.wholesale-mall-index { position: absolute; top: 20px; right: 20px; color: #59604f; font-size: 11px; font-weight: 900; }
.wholesale-mall-label { color: #8ee5f5; font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.wholesale-mall-name { max-width: calc(100% - 34px); margin-top: 24px; display: block; font-size: clamp(27px, 2.3vw, 38px); line-height: .98; letter-spacing: -.055em; }
.wholesale-mall-reviewed { margin-top: 12px; color: var(--home-muted); font-size: 9px; }
.wholesale-mall-count,
.wholesale-mall-category-count { margin-top: 24px; display: inline-flex; align-items: baseline; gap: 7px; color: var(--home-muted); font-size: 10px; font-weight: 850; }
.wholesale-mall-category-count { margin-top: 7px; }
.wholesale-mall-count b,
.wholesale-mall-category-count b { color: var(--home-signal); font-size: 23px; }
.wholesale-mall-categories { margin-top: 19px; display: flex; flex-wrap: wrap; gap: 6px; }
.wholesale-mall-categories > span { min-height: 27px; padding: 0 8px; display: inline-flex; align-items: center; gap: 5px; border: 1px solid var(--home-line); color: var(--home-muted); font-size: 8px; font-weight: 800; }
.wholesale-mall-categories > span b { color: #8ee5f5; }
.wholesale-mall-open { min-height: 44px; margin-top: auto; padding: 0 12px; display: flex; align-items: center; justify-content: space-between; border: 1px solid rgba(119,220,240,.68); color: #8ee5f5; font-size: 10px; font-weight: 900; }
.wholesale-mall-open-compact { display: none; }
.wholesale-mall-card:hover .wholesale-mall-open,
.wholesale-mall-card:focus-visible .wholesale-mall-open { background: #8ee5f5; color: var(--home-bg); }
.wholesale-price-card { cursor: pointer; transition: background-color .18s ease, box-shadow .18s ease; }
.wholesale-price-card:hover { background: #171b14; box-shadow: inset 0 0 0 1px rgba(209,229,154,.58); }
.wholesale-price-card:focus-visible { outline: 2px solid var(--home-signal); outline-offset: -3px; }
.wholesale-card > header { min-height: 70px; display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.wholesale-card > header > div { display: flex; flex-wrap: wrap; gap: 8px; }
.wholesale-card > header span,
.wholesale-card > header b,
.wholesale-card > header em { min-height: 28px; padding: 0 9px; display: inline-flex; align-items: center; border: 1px solid var(--home-line); font-size: 9px; font-style: normal; font-weight: 850; }
.wholesale-card > header span { border-color: rgba(119,220,240,.55); color: #8ee5f5; }
.wholesale-card > header b { color: var(--home-ink); }
.wholesale-card > header em { border-color: rgba(209,229,154,.48); color: var(--home-signal); text-align: left; }
.wholesale-card h2 { margin: 19px 0 0; font-size: clamp(20px, 1.55vw, 25px); line-height: 1.15; letter-spacing: -.042em; }
.wholesale-spec,
.wholesale-brand { margin: 10px 0 0; color: var(--home-muted); font-size: 11px; }
.wholesale-price-summary { margin-top: 21px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.wholesale-price-summary > div { min-height: 104px; padding: 12px; display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.wholesale-price-summary span,
.wholesale-promotion-condition span,
.wholesale-promotion-price span { color: var(--home-muted); font-size: 9px; font-weight: 850; }
.wholesale-price-summary strong { margin-top: auto; color: var(--home-signal); font-size: 17px; }
.wholesale-price-summary small { margin-top: 7px; color: #858980; font-size: 9px; line-height: 1.4; }
.wholesale-card-comparison { margin-top: auto; padding-top: 20px; display: flex; flex-direction: column; gap: 8px; }
.wholesale-card-comparison > span { color: #8ee5f5; font-size: 9px; font-weight: 850; letter-spacing: .04em; }
.wholesale-card-comparison button { min-height: 46px; padding: 0 13px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid rgba(209,229,154,.58); background: rgba(209,229,154,.045); color: var(--home-ink); font: inherit; font-size: 10px; font-weight: 900; cursor: pointer; }
.wholesale-card-comparison button:hover,
.wholesale-card-comparison button:focus-visible { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); outline: none; }
.wholesale-card-comparison button b { font-size: 15px; }
.wholesale-offers { margin-top: auto; padding-top: 20px; }
.wholesale-offers summary { min-height: 45px; padding: 0 13px; display: flex; align-items: center; justify-content: space-between; border: 1px solid var(--home-line); color: var(--home-ink); font-size: 10px; font-weight: 850; cursor: pointer; list-style: none; }
.wholesale-offers summary::-webkit-details-marker { display: none; }
.wholesale-offers summary span { color: var(--home-signal); }
.wholesale-offers > div { max-height: 270px; overflow-y: auto; border-left: 1px solid var(--home-line); border-right: 1px solid var(--home-line); }
.wholesale-offers p { min-height: 39px; margin: 0; padding: 0 12px; display: flex; align-items: center; justify-content: space-between; gap: 15px; border-bottom: 1px solid var(--home-line); color: var(--home-muted); font-size: 10px; }
.wholesale-offers p strong { color: var(--home-ink); }
.wholesale-offers p.is-lowest { background: rgba(209,229,154,.08); color: var(--home-signal); }
.wholesale-offers p.is-lowest strong { color: var(--home-signal); }
.wholesale-range-note { margin: auto 0 0; padding-top: 22px; color: var(--home-muted); font-size: 10px; line-height: 1.6; }
.wholesale-detail-dialog { width: min(1120px, calc(100vw - 40px)); max-width: none; max-height: calc(100dvh - 40px); padding: 0; overflow: hidden; border: 1px solid rgba(209,229,154,.72); background: #0a0c0a; color: var(--home-ink); box-shadow: 0 28px 90px rgba(0,0,0,.72); }
.wholesale-detail-dialog::backdrop { background: rgba(3,4,3,.84); backdrop-filter: blur(5px); }
.wholesale-detail-dialog > [data-wholesale-detail-content] { max-height: calc(100dvh - 42px); overflow-y: auto; overscroll-behavior: contain; }
.wholesale-detail-shell { padding: 30px; background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px), radial-gradient(circle at 74% 4%, rgba(209,229,154,.09), transparent 30%); background-size: 64px 64px, 64px 64px, auto; }
.wholesale-detail-header { padding-bottom: 26px; border-bottom: 1px solid var(--home-line); }
.wholesale-detail-kicker { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.wholesale-detail-kicker > span { color: var(--home-signal); font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.wholesale-detail-kicker button { min-width: 86px; min-height: 40px; padding: 0 12px; display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid var(--home-line); background: rgba(11,12,11,.8); color: var(--home-ink); font: inherit; font-size: 10px; font-weight: 850; cursor: pointer; }
.wholesale-detail-kicker button:hover,
.wholesale-detail-kicker button:focus-visible { border-color: var(--home-signal); color: var(--home-signal); outline: none; }
.wholesale-detail-kicker button b { font-size: 18px; font-weight: 500; }
.wholesale-detail-title { margin-top: 28px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 30px; align-items: end; }
.wholesale-detail-title p { margin: 0 0 10px; color: #8ee5f5; font-size: 10px; font-weight: 850; }
.wholesale-detail-title h2 { max-width: 800px; margin: 0; font-size: clamp(32px, 4vw, 58px); line-height: .98; letter-spacing: -.055em; }
.wholesale-detail-title span { display: block; margin-top: 12px; color: var(--home-muted); font-size: 11px; }
.wholesale-detail-title em { min-height: 40px; padding: 0 13px; display: inline-flex; align-items: center; border: 1px solid var(--home-signal); color: var(--home-signal); font-size: 10px; font-style: normal; font-weight: 900; white-space: nowrap; }
.wholesale-detail-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-left: 1px solid var(--home-line); }
.wholesale-detail-summary > div { min-height: 112px; padding: 18px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.wholesale-detail-summary span { color: var(--home-muted); font-size: 9px; font-weight: 850; }
.wholesale-detail-summary strong { color: var(--home-signal); font-size: clamp(20px, 2.4vw, 30px); }
.wholesale-price-plot,
.wholesale-detail-table-section { padding: 34px 0; border-bottom: 1px solid var(--home-line); }
.wholesale-detail-section-head { display: grid; grid-template-columns: minmax(250px, .65fr) minmax(0, 1fr); gap: 40px; align-items: end; }
.wholesale-detail-section-head span { color: #8ee5f5; font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.wholesale-detail-section-head h3 { margin: 7px 0 0; font-size: clamp(23px, 2.8vw, 35px); line-height: 1; letter-spacing: -.045em; }
.wholesale-detail-section-head p { max-width: 630px; margin: 0; color: var(--home-muted); font-size: 10px; line-height: 1.7; }
.wholesale-price-plot-list { margin-top: 28px; border-top: 1px solid var(--home-line); }
.wholesale-price-plot-row { min-height: 54px; display: grid; grid-template-columns: minmax(130px, .38fr) minmax(220px, 1fr) minmax(100px, auto); gap: 22px; align-items: center; border-bottom: 1px solid var(--home-line); }
.wholesale-price-plot-row > span { color: var(--home-muted); font-size: 10px; font-weight: 750; }
.wholesale-price-plot-row > strong { font-size: 11px; text-align: right; }
.wholesale-price-plot-row.is-lowest > span,
.wholesale-price-plot-row.is-lowest > strong { color: var(--home-signal); }
.wholesale-price-track { position: relative; height: 14px; }
.wholesale-price-track::before { content: ""; position: absolute; top: 50%; left: 0; right: 0; border-top: 1px solid rgba(255,255,255,.18); }
.wholesale-price-track i { position: absolute; top: 50%; left: var(--price-position); width: 10px; height: 10px; border: 2px solid #0a0c0a; border-radius: 50%; background: #8ee5f5; box-shadow: 0 0 0 1px #8ee5f5; transform: translate(-50%, -50%); }
.wholesale-price-plot-row.is-lowest .wholesale-price-track i { width: 13px; height: 13px; background: var(--home-signal); box-shadow: 0 0 0 1px var(--home-signal), 0 0 20px rgba(209,229,154,.32); }
.wholesale-price-axis { margin: 10px 122px 0 calc(38% + 10px); display: flex; align-items: center; justify-content: space-between; color: #74786f; font-size: 8px; }
.wholesale-price-axis b { font-weight: 750; letter-spacing: .06em; }
.wholesale-detail-empty { margin: 24px 0 0; padding: 24px; border: 1px solid var(--home-line); color: var(--home-muted); }
.wholesale-detail-table-wrap { margin-top: 24px; border: 1px solid var(--home-line); }
.wholesale-detail-table-wrap table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.wholesale-detail-table-wrap th,
.wholesale-detail-table-wrap td { height: 52px; padding: 10px 14px; border-bottom: 1px solid var(--home-line); text-align: left; }
.wholesale-detail-table-wrap thead th { color: var(--home-muted); font-size: 9px; font-weight: 850; }
.wholesale-detail-table-wrap tbody th,
.wholesale-detail-table-wrap tbody td { color: var(--home-ink); font-size: 10px; }
.wholesale-detail-table-wrap tbody th { font-weight: 850; }
.wholesale-detail-table-wrap tbody tr:last-child > * { border-bottom: 0; }
.wholesale-detail-table-wrap tbody tr.is-lowest { background: rgba(209,229,154,.08); }
.wholesale-detail-table-wrap tbody tr.is-lowest > * { color: var(--home-signal); }
.wholesale-detail-notices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.wholesale-detail-notices aside { min-height: 176px; padding: 24px; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.wholesale-detail-notices aside:last-child { border-right: 0; }
.wholesale-detail-notices span { color: #ff9fc3; font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.wholesale-detail-notices strong { display: block; margin-top: 12px; font-size: 17px; }
.wholesale-detail-notices p { margin: 12px 0 0; color: var(--home-muted); font-size: 10px; line-height: 1.7; }
.wholesale-detail-caveat span { color: #8ee5f5; }
.wholesale-promotion-card { min-height: 430px; }
.wholesale-promotion-card .wholesale-brand { margin-top: 19px; color: #8ee5f5; font-size: 10px; font-weight: 850; }
.wholesale-promotion-card h2 { margin-top: 10px; }
.wholesale-promotion-condition { margin-top: 20px; padding: 13px 0; display: grid; grid-template-columns: 68px minmax(0, 1fr); gap: 10px; border-top: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); }
.wholesale-promotion-condition strong { color: var(--home-muted); font-size: 11px; line-height: 1.55; }
.wholesale-promotion-price { margin-top: auto; padding-top: 20px; display: flex; flex-direction: column; align-items: stretch; gap: 14px; }
.wholesale-promotion-price > div { display: flex; flex-direction: column; }
.wholesale-promotion-price strong { margin-top: 8px; color: var(--home-signal); font-size: 23px; }
.wholesale-promotion-price small { margin-top: 5px; color: #74786f; font-size: 9px; text-decoration: line-through; }
.wholesale-promotion-price a { min-height: 42px; padding: 0 13px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #77dcf0; color: #8ee5f5; font-size: 10px; font-weight: 850; }
.wholesale-results-footer { margin-top: 18px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(520px, .95fr); gap: 14px; align-items: stretch; }
.wholesale-bottom-search { min-width: 0; padding: 16px; display: grid; grid-template-columns: minmax(160px, .55fr) minmax(0, 1fr); gap: 18px; align-items: center; border: 1px solid var(--home-line); background: #0d0f0d; }
.wholesale-bottom-search label { display: flex; flex-direction: column; gap: 6px; }
.wholesale-bottom-search label span { color: #8ee5f5; font-size: 9px; font-weight: 900; letter-spacing: .06em; }
.wholesale-bottom-search label strong { font-size: 13px; }
.wholesale-bottom-search > div { min-width: 0; min-height: 52px; display: grid; grid-template-columns: minmax(0, 1fr) auto; border: 1px solid rgba(209,229,154,.52); }
.wholesale-bottom-search input { min-width: 0; padding: 0 14px; border: 0; outline: 0; background: transparent; color: var(--home-ink); font: inherit; font-size: 11px; }
.wholesale-bottom-search input:focus { box-shadow: inset 0 0 0 1px var(--home-signal); }
.wholesale-bottom-search button { min-width: 90px; padding: 0 14px; border: 0; border-left: 1px solid rgba(209,229,154,.52); background: var(--home-signal); color: var(--home-bg); font: inherit; font-size: 10px; font-weight: 900; cursor: pointer; }
.wholesale-bottom-search button svg { width: 13px; }
.wholesale-pagination { min-width: 0; padding: 16px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-rows: 1fr auto; gap: 9px 10px; align-items: center; border: 1px solid var(--home-line); background: #0d0f0d; }
.wholesale-pagination > button,
.wholesale-pagination-pages button { min-width: 42px; min-height: 42px; padding: 0 10px; border: 1px solid var(--home-line); background: transparent; color: var(--home-ink); font: inherit; font-size: 10px; font-weight: 850; cursor: pointer; }
.wholesale-pagination > button:hover:not(:disabled),
.wholesale-pagination-pages button:hover,
.wholesale-pagination-pages button.is-active { border-color: var(--home-signal); background: var(--home-signal); color: var(--home-bg); }
.wholesale-pagination > button:disabled { opacity: .32; cursor: default; }
.wholesale-pagination-pages { min-width: 0; display: flex; align-items: center; justify-content: center; gap: 5px; }
.wholesale-pagination-pages span { color: var(--home-muted); font-size: 11px; }
.wholesale-pagination > small { grid-column: 1 / -1; color: var(--home-muted); font-size: 9px; text-align: center; }
.wholesale-pagination-compact { display: none; color: var(--home-signal); font-size: 11px; font-weight: 900; text-align: center; }
.wholesale-disclosure-summary { display: none; }
.wholesale-boundary { margin-top: 58px; }
.wholesale-boundary-content { padding-top: 30px; display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 48px; border-top: 1px solid #ff8bb8; }
.wholesale-boundary-content > span { color: #ff9fc3; font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.wholesale-boundary-content strong { display: block; font-size: clamp(23px, 2.4vw, 35px); line-height: 1.15; }
.wholesale-boundary-content p { max-width: 880px; margin: 14px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.75; }
.wholesale-correction { margin-top: 44px; border: 1px solid rgba(209,229,154,.7); background: linear-gradient(120deg, rgba(209,229,154,.12), rgba(119,220,240,.035)); }
.wholesale-correction-content { padding: 34px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(310px, .55fr); gap: 48px; align-items: end; }
.wholesale-correction .eyebrow { margin: 0 0 16px; color: var(--home-signal); }
.wholesale-correction h2 { margin: 0; font-size: clamp(28px, 3.2vw, 46px); line-height: 1; letter-spacing: -.052em; }
.wholesale-correction-content > div > p:last-child { max-width: 690px; margin: 16px 0 0; color: var(--home-muted); font-size: 11px; line-height: 1.7; }
.wholesale-correction-action > span { display: block; margin-bottom: 9px; color: var(--home-muted); font-size: 9px; font-weight: 850; letter-spacing: .08em; }
.wholesale-correction-action a { min-height: 86px; padding: 17px 19px; display: flex; flex-direction: column; justify-content: center; border: 1px solid var(--home-signal); background: rgba(11,12,11,.62); color: var(--home-ink); }
.wholesale-correction-action a:hover { background: var(--home-signal); color: var(--home-bg); }
.wholesale-correction-action strong { overflow-wrap: anywhere; font-size: 15px; }
.wholesale-correction-action b { margin-top: 9px; color: var(--home-signal); font-size: 10px; }
.wholesale-correction-action a:hover b { color: var(--home-bg); }

@media (max-width: 1180px) {
  .wholesale-featured-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .wholesale-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .wholesale-results-footer { grid-template-columns: 1fr; }
}

@media (max-width: 1000px) {
  .wholesale-hero { grid-template-columns: 1fr; gap: 38px; }
  .wholesale-hero-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .wholesale-hero-metrics > div { min-height: 92px; }
  .wholesale-toolbar { grid-template-columns: minmax(0, 1fr) repeat(2, minmax(130px, .55fr)); }
  .wholesale-search { grid-column: 1 / -1; }
  .wholesale-mall-toolbar { grid-template-columns: 1fr; }
  .wholesale-mall-toolbar .wholesale-search { grid-column: auto; }
  .wholesale-mall-guide { min-height: 70px; }
  .wholesale-mall-context-head { grid-template-columns: 1fr; gap: 24px; }
  .wholesale-filter-toggle { grid-column: 1 / -1; }
  .wholesale-correction-content { grid-template-columns: 1fr; gap: 24px; }
}

@media (max-width: 820px) {
  .wholesale-featured-head { grid-template-columns: 1fr; gap: 14px; }
  .wholesale-featured-carousel { --wholesale-featured-card: min(76vw, 520px); }
  .wholesale-featured-grid { padding: 0 calc((100% - var(--wholesale-featured-card)) / 2) 8px; display: flex; gap: 10px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scroll-padding-inline: 50%; border-left: 0; scrollbar-width: none; }
  .wholesale-featured-grid::-webkit-scrollbar { display: none; }
  .wholesale-featured-item { flex: 0 0 var(--wholesale-featured-card); min-height: 170px; border-left: 1px solid var(--home-line); scroll-snap-align: center; scroll-snap-stop: always; }
  .wholesale-featured-arrow { position: absolute; top: 50%; z-index: 3; width: 42px; height: 54px; padding: 0; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(209,229,154,.74); background: rgba(11,12,11,.94); color: var(--home-signal); font: inherit; font-size: 18px; cursor: pointer; transform: translateY(-50%); transition: opacity .18s ease, background-color .18s ease, color .18s ease; }
  .wholesale-featured-arrow.is-prev { left: 6px; }
  .wholesale-featured-arrow.is-next { right: 6px; }
  .wholesale-featured-arrow:hover,
  .wholesale-featured-arrow:focus-visible { background: var(--home-signal); color: var(--home-bg); outline: 0; }
  .wholesale-featured-arrow:disabled { visibility: hidden; opacity: 0; cursor: default; pointer-events: none; }
  .wholesale-featured-progress { min-height: 35px; margin: 0; display: flex; align-items: center; justify-content: center; gap: 6px; border-top: 1px solid var(--home-line); color: var(--home-muted); font-size: 9px; font-weight: 850; letter-spacing: .08em; }
  .wholesale-featured-progress strong { color: #8ee5f5; font-size: 11px; }
  .wholesale-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wholesale-category-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wholesale-category-nav button:nth-child(4n) { border-right: 1px solid var(--home-line); }
  .wholesale-category-nav button:nth-child(2n) { border-right: 0; }
  .wholesale-bottom-search { grid-template-columns: 1fr; gap: 12px; }
}

@media (max-width: 720px) {
  .wholesale-entry-card { grid-template-columns: 1fr auto; gap: 10px 14px; padding: 17px; }
  .wholesale-entry-card > span { grid-column: 1 / -1; }
  .wholesale-entry-card p { display: none; }
  .wholesale-entry-card strong { font-size: 16px; }
  .wholesale-entry-card > b { font-size: 9px; }
  .wholesale-hero { padding-top: 34px; padding-bottom: 28px; gap: 24px; }
  .wholesale-business-badge { margin: 18px 0 15px; }
  .wholesale-hero h1 { font-size: clamp(39px, 11.5vw, 55px); line-height: .95; }
  .wholesale-hero-copy > p:last-child { margin-top: 18px; font-size: 11px; line-height: 1.65; }
  .wholesale-hero-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wholesale-hero-metrics > div { min-height: 72px; padding: 12px; }
  .wholesale-hero-metrics b { font-size: 21px; }
  .wholesale-scope-note { padding: 14px; grid-template-columns: 1fr; gap: 8px; }
  .wholesale-featured-malls { margin-top: 16px; }
  .wholesale-featured-head { padding: 18px; }
  .wholesale-featured-head h2 { font-size: 27px; }
  .wholesale-featured-carousel { --wholesale-featured-card: min(76vw, 290px); }
  .wholesale-featured-item { min-height: 166px; }
  .wholesale-tabs button { min-height: 76px; padding: 13px; grid-template-columns: 25px minmax(0, 1fr); column-gap: 8px; }
  .wholesale-tabs button strong { font-size: 13px; }
  .wholesale-tabs button small { font-size: 8px; }
  .wholesale-toolbar { padding: 9px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wholesale-search { grid-column: 1 / -1; min-height: 54px; }
  .wholesale-mall-toolbar { grid-template-columns: 1fr; }
  .wholesale-mall-toolbar .wholesale-search,
  .wholesale-mall-guide { grid-column: 1 / -1; }
  .wholesale-mall-context-head { padding: 22px; }
  .wholesale-mall-context-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .wholesale-mall-context-metrics span { min-height: 72px; padding: 10px; }
  .wholesale-mall-context-metrics b { font-size: 18px; }
  .wholesale-category-nav button { min-height: 58px; padding: 10px; }
  .wholesale-filter-toggle { grid-column: 1 / -1; }
  .wholesale-filter-secondary { grid-template-columns: 1fr; }
  .wholesale-results-head { padding-top: 32px; align-items: flex-end; }
  .wholesale-results-head h2 { font-size: 27px; }
  .wholesale-results-head > button { max-width: 80px; font-size: 9px; }
  .wholesale-card { min-height: 0; padding: 22px; }
  .wholesale-card h2 { font-size: 26px; }
  .wholesale-mall-card { min-height: 330px; }
  .wholesale-mall-name { font-size: 31px; }
  .wholesale-detail-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); }
  .wholesale-detail-dialog > [data-wholesale-detail-content] { max-height: calc(100dvh - 22px); }
  .wholesale-detail-shell { padding: 20px; background-size: 48px 48px, 48px 48px, auto; }
  .wholesale-detail-title { grid-template-columns: 1fr; gap: 18px; align-items: start; }
  .wholesale-detail-title h2 { font-size: clamp(31px, 9vw, 44px); }
  .wholesale-detail-title em { justify-self: start; }
  .wholesale-detail-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wholesale-detail-summary > div { min-height: 92px; padding: 14px; }
  .wholesale-detail-section-head { grid-template-columns: 1fr; gap: 13px; }
  .wholesale-price-plot-row { grid-template-columns: minmax(100px, .55fr) minmax(110px, 1fr) auto; gap: 12px; }
  .wholesale-price-axis { margin-right: 0; margin-left: calc(35% + 12px); }
  .wholesale-detail-notices { grid-template-columns: 1fr; }
  .wholesale-detail-notices aside { min-height: 0; border-right: 0; }
  .wholesale-promotion-card { min-height: 390px; }
  .wholesale-results-footer { margin-top: 12px; }
  .wholesale-pagination { padding: 12px; }
  .wholesale-boundary { margin-top: 42px; }
  .wholesale-boundary-content { grid-template-columns: 1fr; gap: 13px; }
  .wholesale-correction { margin-top: 34px; }
  .wholesale-correction-content { padding: 22px; }
  .wholesale-correction-action a { min-height: 76px; }
  .wholesale-preview-metrics > div { min-height: 70px; padding: 12px; }
  .wholesale-preview-metrics b { font-size: 21px; }
}

@media (max-width: 560px) {
  .wholesale-product-grid { grid-template-columns: 1fr; }
  .wholesale-mall-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wholesale-mall-grid .wholesale-mall-card { min-height: 166px; padding: 14px; }
  .wholesale-mall-grid .wholesale-mall-index { top: 12px; right: 12px; font-size: 9px; }
  .wholesale-mall-grid :is(.wholesale-mall-label, .wholesale-mall-reviewed, .wholesale-mall-category-count, .wholesale-mall-categories) { display: none; }
  .wholesale-mall-grid .wholesale-mall-name { max-width: calc(100% - 23px); margin-top: 16px; font-size: clamp(17px, 5.6vw, 22px); line-height: 1.04; overflow-wrap: anywhere; }
  .wholesale-mall-grid .wholesale-mall-count { margin-top: auto; gap: 5px; font-size: 8px; }
  .wholesale-mall-grid .wholesale-mall-count b { font-size: 18px; }
  .wholesale-mall-grid .wholesale-mall-open { min-height: 28px; margin-top: 11px; padding: 0; border: 0; font-size: 8px; }
  .wholesale-mall-open-wide { display: none; }
  .wholesale-mall-open-compact { display: inline; }
  .wholesale-bottom-search { padding: 14px; }
  .wholesale-bottom-search > div { min-height: 50px; }
  .wholesale-bottom-search button { min-width: 76px; }
  .wholesale-pagination { grid-template-columns: 1fr auto 1fr; }
  .wholesale-pagination > button:first-child { justify-self: stretch; }
  .wholesale-pagination > button:nth-last-of-type(1) { justify-self: stretch; }
  .wholesale-pagination-pages { display: none; }
  .wholesale-pagination-compact { display: block; }
  .wholesale-boundary,
  .wholesale-correction { margin-top: 18px; border: 1px solid var(--home-line); background: rgba(11,12,11,.72); }
  .wholesale-disclosure-summary { min-height: 66px; padding: 13px 14px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 5px 14px; align-items: center; list-style: none; cursor: pointer; }
  .wholesale-disclosure-summary::-webkit-details-marker { display: none; }
  .wholesale-disclosure-summary > span { color: #8ee5f5; font-size: 8px; font-weight: 900; letter-spacing: .09em; }
  .wholesale-boundary .wholesale-disclosure-summary > span { color: #ff9fc3; }
  .wholesale-disclosure-summary > strong { font-size: 14px; line-height: 1.25; }
  .wholesale-disclosure-summary > b { grid-column: 2; grid-row: 1 / 3; color: var(--home-signal); font-size: 20px; transition: transform .18s ease; }
  details[open] > .wholesale-disclosure-summary > b { transform: rotate(45deg); }
  .wholesale-boundary-content { padding: 17px 14px; display: block; border-top: 1px solid var(--home-line); }
  .wholesale-boundary-content > span { display: none; }
  .wholesale-boundary-content strong { font-size: 19px; }
  .wholesale-correction-content { padding: 17px 14px; display: block; border-top: 1px solid var(--home-line); }
  .wholesale-correction-action { margin-top: 18px; }
}

@media (max-width: 390px) {
  .wholesale-page .page-shell { width: min(100% - 24px, var(--max)); }
  .wholesale-hero h1 { font-size: clamp(35px, 10.8vw, 43px); }
  .wholesale-featured-arrow { width: 38px; height: 50px; }
  .wholesale-price-summary { grid-template-columns: 1fr; }
  .wholesale-price-summary > div { min-height: 92px; }
  .wholesale-card > header { flex-direction: column; }
  .wholesale-detail-shell { padding: 16px; }
  .wholesale-detail-kicker > span { max-width: 190px; line-height: 1.45; }
  .wholesale-detail-kicker button { min-width: 72px; }
  .wholesale-detail-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wholesale-price-plot-row { padding: 11px 0; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "mall price" "track track"; gap: 9px 12px; }
  .wholesale-price-plot-row > span { grid-area: mall; }
  .wholesale-price-plot-row > strong { grid-area: price; }
  .wholesale-price-track { grid-area: track; }
  .wholesale-price-axis { margin: 9px 0 0; }
  .wholesale-detail-table-wrap { border: 0; }
  .wholesale-detail-table-wrap table,
  .wholesale-detail-table-wrap tbody { display: block; }
  .wholesale-detail-table-wrap thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .wholesale-detail-table-wrap tbody tr { margin-bottom: 8px; padding: 13px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 14px; border: 1px solid var(--home-line); }
  .wholesale-detail-table-wrap tbody th,
  .wholesale-detail-table-wrap tbody td { height: auto; padding: 0; border: 0; }
  .wholesale-detail-table-wrap tbody th { grid-column: 1 / -1; padding-bottom: 5px; border-bottom: 1px solid var(--home-line); }
  .wholesale-detail-table-wrap tbody td::before { content: attr(data-label); display: block; margin-bottom: 3px; color: var(--home-muted); font-size: 8px; }
  .wholesale-promotion-price { align-items: stretch; flex-direction: column; }
  .wholesale-promotion-price a { justify-content: center; }
  .wholesale-access-gate > strong { font-size: clamp(32px, 10vw, 42px); }
  .wholesale-preview-metrics { grid-template-columns: 1fr; }
}

/* Keep sign-in feedback next to the credential field, including autofill. */
.auth-form .auth-field-error { margin: 10px 0 0; color: #ff9b9b; font-size: 14px; line-height: 1.65; font-weight: 500; }
.auth-form .auth-field-error[hidden] { display: none; }
.auth-form .auth-password-field input[aria-invalid="true"] { border-color: #ff8585; outline: 1px solid #ff8585; outline-offset: -1px; }

/* Shared help for sign-in, signup and email recovery. */
.auth-support { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--line); display: grid; gap: 10px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.auth-support strong { color: inherit; font-size: 14px; }
.auth-support p { margin: 0; }
.auth-support-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.auth-support-actions a, .auth-support-actions button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 9px 14px; border: 1px solid currentColor; background: transparent; color: inherit; font: inherit; cursor: pointer; text-decoration: none; }
.auth-support a:focus-visible, .auth-support button:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.auth-support-address { overflow-wrap: anywhere; user-select: text; }
.auth-support p a { color: inherit; text-underline-offset: 4px; }
.auth-support small { font-size: 12px; line-height: 1.7; }
.auth-support [data-support-feedback]:empty { display: none; }

.auth-support-actions .auth-support-mail { background: #d6e6a2; border-color: #d6e6a2; color: #15190e; font-weight: 700; }
.auth-support-actions button { border-color: #d6e6a2; color: #d6e6a2; font-weight: 600; }
.auth-support-actions .auth-support-mail:hover { background: #e4efc0; border-color: #e4efc0; }
.auth-support-actions button:hover { background: rgba(214, 230, 162, .12); }
.auth-support [data-support-feedback] { color: #d6e6a2; }

.auth-marketing { margin: 12px 0; padding: 18px; border: 1px solid var(--line); display: grid; gap: 14px; }
.auth-marketing legend { font-size: 14px; font-weight: 700; }
.auth-marketing p { margin: 0; font-size: 12px; line-height: 1.7; color: var(--muted); }

.auth-consent-group { margin-top: 12px; padding: 18px; border: 1px solid var(--line); }
.auth-consent-all { color: #d6e6a2; font-weight: 700; }
.auth-consent-all small { display: block; font-size: 12px; font-weight: 400; margin-top: 4px; }
.auth-consent-summary { color: var(--muted); font-size: 12px; line-height: 1.7; margin: 12px 0; }
.auth-consent-group summary { display: flex; justify-content: space-between; align-items: center; min-height: 44px; cursor: pointer; color: #d6e6a2; font-size: 13px; }
.auth-consent-group summary:focus-visible { outline: 2px solid #d6e6a2; outline-offset: 3px; }
.auth-consent-items { display: grid; gap: 18px; padding-top: 16px; }
.auth-consent-items .auth-marketing { padding: 12px; margin: 0; }
.auth-consent-group [data-consent-selection] { margin: 10px 0 0; color: var(--muted); font-size: 12px; }
.auth-consent-group details[open] summary span { transform: rotate(45deg); }

.mobile-nav > [data-account-link] { grid-column: 1 / -1; border-bottom: 1px solid var(--line); padding-bottom: 16px; margin-bottom: 4px; }

.business-verification-card { margin-top:24px; }
.business-verification-card p { line-height:1.7; color:var(--text-muted, #aaa); overflow-wrap:anywhere; }
.business-verification-card .form-grid { margin:24px 0; }
.business-verification-card input[type=file] { max-width:100%; font-size:14px; }
.business-verification-card [data-business-submit-message] { color:#d6eb9e; }
.business-verification-card [type=submit] { margin-top:20px; }
.auth-business-number[hidden] { display:none; }
.business-email-guide { margin:24px 0; padding:24px 0; border-block:1px solid #ffffff22; }
.business-email-guide .button { margin:8px 8px 0 0; }
.business-email-guide [data-business-copy-feedback] { color:#d6eb9e; }
.member-withdrawal-guide { margin-top:48px; padding-block:32px; border-top:1px solid #ffffff22; color:#aaa; }
.member-withdrawal-guide h2 { font-size:11px; font-weight:600; color:rgba(255,255,255,.42); }
.member-withdrawal-guide p { font-size:11px; line-height:1.55; margin:8px 0; color:rgba(255,255,255,.42); }
.member-withdrawal-guide a { font-size:11px; line-height:1.55; color:rgba(255,255,255,.42); text-decoration:underline; text-underline-offset:3px; display:inline-block; padding-block:6px; }
.business-save-button { min-height:40px; margin-top:14px; padding:8px 14px; background:transparent; border:1px solid #d6eb9e88; color:#d6eb9e; cursor:pointer; }
.business-save-button[aria-pressed=true] { background:#d6eb9e; color:#111; }
.business-saved-row { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0; border-bottom:1px solid #ffffff22; }
.business-saved-row a { min-width:0; overflow-wrap:anywhere; }
.business-saved-row strong,.business-saved-row small { display:block; }
.business-saved-row .business-save-button { flex-shrink:0; }
.auth-business-address[hidden] { display:none; }
.business-address-group { min-width:0; padding:0; margin:8px 0 20px; border:0; }
.business-address-group legend { margin-bottom:12px; font-size:14px; font-weight:600; }
.business-address-group legend span { color:#ef8e8e; }
.business-address-group > .field { display:grid; margin-top:14px; }
.business-postal-field { max-width:200px; }
.business-region-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:14px; }
.business-region-row .field { min-width:0; }
.business-region-row select { width:100%; min-height:48px; padding:12px; color:inherit; background:#151713; border:1px solid var(--line); font:inherit; }
.business-region-row input:disabled { opacity:.6; }
.business-address-preview { margin:16px 0 0; padding:12px 14px; border-left:2px solid #d6e6a2; color:#d6e6a2; font-size:13px; line-height:1.7; overflow-wrap:anywhere; }
@media(max-width:480px) { .business-region-row { grid-template-columns:1fr; } }

/* Center the complete member flow rather than reserving an empty promotional column. */
.auth-page.page-shell { width:calc(100% - 48px); max-width:760px; margin-inline:auto; padding:48px 0 80px; }
.auth-page .auth-layout { display:block; min-height:0; overflow:visible; }
.auth-page .auth-context { padding:32px 40px 28px; background:transparent; border-bottom:1px solid var(--line); }
.auth-page .auth-context h1 { margin:12px 0; max-width:none; font-size:36px; line-height:1.25; letter-spacing:-.04em; }
.auth-page .auth-context > p:not(.eyebrow) { max-width:none; font-size:14px; line-height:1.7; }
.auth-page .auth-card { padding:32px 40px 40px; justify-content:flex-start; min-width:0; }
.auth-page .auth-card-head h2 { font-size:28px; line-height:1.35; }
.auth-page .auth-card-head > p { margin-top:18px; }
.auth-page .auth-form { min-width:0; }
.auth-page .field input,.auth-page .field select { min-width:0; max-width:100%; }
@media(max-width:600px) {
  .auth-page.page-shell { width:calc(100% - 24px); padding:24px 0 48px; }
  .auth-page .auth-context { padding:24px 20px; }
  .auth-page .auth-context h1 { font-size:28px; }
  .auth-page .auth-card { padding:24px 20px; }
  .auth-page .auth-card-head h2 { font-size:24px; }
}

.business-address-search { display:flex; align-items:end; gap:12px; }
.business-address-search .field { flex:1; min-width:0; }
.business-address-search .button { min-height:48px; flex-shrink:0; }
.address-search-help,[data-address-status] { font-size:13px; line-height:1.7; color:var(--muted); }
[data-address-status] { color:#d6e6a2; }
[data-address-results] { max-height:280px; overflow-y:auto; }
.address-result { display:block; text-align:left; width:100%; padding:14px; border:1px solid var(--line); background:transparent; color:inherit; cursor:pointer; }
.address-result strong,.address-result small { display:block; line-height:1.6; }
.address-result small { color:var(--muted); }
.address-result:hover,.address-result:focus-visible { border-color:#d6e6a2; background:#d6e6a210; }
@media(max-width:480px){.business-address-search{flex-wrap:wrap}.business-address-search .field{flex-basis:100%}.business-address-search .button{width:100%}}

/* Business verification: saved details first, editing only on request. */
.business-info-summary { display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--home-line);margin:28px 0; }
.business-info-summary>div {padding:20px;min-width:0;border-bottom:1px solid var(--home-line);}
.business-info-summary dt {font-size:13px;color:var(--home-muted);margin-bottom:9px;}
.business-info-summary dd {margin:0;overflow-wrap:anywhere;font-size:16px;color:var(--home-ink);}
.business-details-editor {border:0;padding:0;margin:20px 0;min-width:0;}
.business-details-editor[hidden],.business-mail-fallback[hidden] {display:none;}
.business-mail-actions {display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.business-mail-fallback {width:100%;min-height:180px;}
[data-business-copy-feedback] {color:var(--home-signal);}
.business-review-status {padding:24px;border:1px solid var(--home-line);}
@media(max-width:600px){.business-info-summary{grid-template-columns:1fr;}.business-mail-actions>.button{width:100%;}.business-info-summary>div{padding:16px;}}

/* Region-first business-member real-estate directory. */
.estate-page { padding-block: 64px 80px; color: var(--home-ink, #eeeee8); }
.estate-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 40px; padding-bottom: 40px; }
.estate-back { display: inline-block; margin-bottom: 32px; color: #b5b8aa; font-size: 13px; }
.estate-page h1 { font-size: clamp(30px, 4vw, 62px); line-height: 1.2; letter-spacing: -.05em; margin: 14px 0 24px; }
.estate-page h1 em { color: #d6e79f; font-style: normal; }
.estate-lead { color: #afb1a8; line-height: 1.8; font-size: 16px; }
.estate-hero-stats { border-left: 1px solid #44483b; padding: 12px 0 12px 32px; }
.estate-hero-stats > span { color: #cbdc96; font-size: 13px; }
.estate-hero-stats > strong { display: block; font-size: 64px; letter-spacing: -.06em; line-height: 1.3; }
.estate-hero-stats small { font-size: 18px; margin-left: 8px; }
.estate-hero-stats p { color: #9a9c93; font-size: 12px; }
.estate-provinces { display: flex; flex-wrap: wrap; gap: 8px; padding-block: 24px; border-block: 1px solid #34372f; }
.estate-provinces button { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border: 1px solid #34372f; background: transparent; color: #c5c7bd; cursor: pointer; font: inherit; }
.estate-provinces button[aria-pressed=true] { background: #d6e79f; color: #11150b; border-color: #d6e79f; }
.estate-provinces small { font-size: 11px; opacity: .7; }
.estate-filters { display: grid; grid-template-columns: 1fr 1fr 2fr auto; gap: 16px; align-items: end; margin: 28px 0 48px; }
.estate-filters label { min-width: 0; display: grid; gap: 10px; font-size: 13px; }
.estate-filters input,.estate-filters select { width: 100%; min-width: 0; height: 52px; border: 1px solid #42463b; background: #10130f; color: #eeeee8; padding: 12px; border-radius: 0; font: inherit; }
.estate-filters select:disabled { opacity: .5; }
.estate-filters .button { min-height: 52px; }
.estate-results-head { display: flex; justify-content: space-between; align-items: end; gap: 16px; margin-bottom: 22px; }
.estate-results-head h2 { font-size: 25px; margin: 6px 0 0; }
.estate-results-head h2 span { color: #d6e79f; margin-left: 12px; }
.estate-reset { background: transparent; color: #b2b5a9; border: 0; cursor: pointer; white-space: nowrap; }
.estate-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.estate-card { display: flex; flex-direction: column; min-width: 0; padding: 24px; border: 1px solid #393d32; background: rgba(255,255,255,.025); }
.estate-card-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.estate-card-top > span { color: #c1cd9f; font-size: 12px; }
.estate-card .business-save-button { flex-shrink: 0; font-size: 11px; padding: 7px; margin: 0; }
.estate-card h3 { font-size: 22px; line-height: 1.45; word-break: keep-all; overflow-wrap: anywhere; margin: 22px 0 16px; }
.estate-address { display: flex; align-items: start; gap: 8px; color: #b8baae; font-size: 13px; line-height: 1.7; margin: 0 0 20px; }
.estate-address svg { flex-shrink: 0; margin-top: 3px; }
.estate-location-note { color: #c6b58b; font-size: 11px; line-height: 1.6; margin: 0 0 16px; }
.estate-card-actions { margin-top: auto; padding-top: 18px; border-top: 1px solid #393d32; display: grid; gap: 16px; }
.estate-card-actions a:first-child { display: grid; gap: 6px; }
.estate-card-actions span,.estate-no-phone small { color: #a5a89b; font-size: 12px; }
.estate-card-actions strong { font-size: 18px; color: #e1eac8; }
.estate-card-actions a:last-child { font-size: 12px; color: #c6d89b; }
.estate-no-phone { display: grid; gap: 8px; }
.estate-pagination { display: flex; justify-content: center; align-items: center; gap: 24px; padding: 32px 0; }
.estate-pagination button { padding: 12px 20px; background: transparent; border: 1px solid #42463b; color: inherit; cursor: pointer; }
.estate-pagination button:disabled { opacity: .35; cursor: default; }
.estate-empty { grid-column: 1/-1; padding: 50px 24px; border: 1px solid #42463b; text-align: center; }
.estate-empty p { color: #b6b9ab; }
.estate-contact-guide { display: grid; grid-template-columns: 1fr 2fr; gap: 32px; padding: 36px; margin-top: 32px; background: #cddd9c; color: #17200f; }
.estate-contact-guide .eyebrow { color: #354327; }
.estate-contact-guide h2 { font-size: 28px; line-height: 1.35; }
.estate-contact-guide ol { display: grid; gap: 20px; margin: 0; padding-left: 22px; }
.estate-contact-guide li b,.estate-contact-guide li span { display: block; line-height: 1.8; }
.estate-contact-guide li span { font-size: 13px; color: #3c4930; }
.estate-source-note { color: #9b9f91; font-size: 12px; line-height: 1.8; margin: 24px 0 14px; }
.estate-correction { font-size: 12px; color: #c4d797; }
.estate-gate { padding: 32px; border: 1px solid #67734a; margin-top: 36px; }
.estate-gate > span { color: #d6e79f; }
.estate-gate p { color: #b4b9a8; line-height: 1.8; }
.estate-gate .button { margin: 12px 12px 0 0; }
.estate-entry-card { display: flex; align-items: center; gap: 24px; padding: 24px; margin: 24px 0; border: 1px solid #788750; background: rgba(214,231,159,.08); }
.estate-entry-card > span { font-size: 11px; color: #c4d797; }
.estate-entry-card strong { font-size: 22px; }
.estate-entry-card p { color: #a9af9a; margin: 8px 0 0; }
.estate-entry-card > b { margin-left: auto; color: #d6e79f; white-space: nowrap; }
@media(max-width:1050px){.estate-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.estate-filters { grid-template-columns: 1fr 1fr; }.estate-hero { grid-template-columns: 1fr; }.estate-hero-stats { display: none; }}
@media(max-width:600px){.estate-page { padding-block: 32px 48px; }.estate-grid { grid-template-columns: minmax(0,1fr); }.estate-provinces { gap: 6px; }.estate-provinces button { padding: 10px; font-size: 12px; gap: 6px; }.estate-filters { gap: 12px; margin-bottom: 32px; }.estate-query { grid-column: 1/-1; }.estate-filters > button { grid-column: 1/-1; }.estate-results-head h2 { font-size: 19px; }.estate-card { padding: 22px; }.estate-contact-guide { grid-template-columns: 1fr; padding: 24px; }.estate-entry-card { align-items: start; flex-direction: column; gap: 14px; }.estate-entry-card > b { margin-left: 0; }.estate-lead { font-size: 14px; }.estate-gate { padding: 24px; }}

/* Approved business member entry */
.business-approved { margin-bottom:32px; }
.business-approved h2 { font-size:clamp(26px,3.2vw,44px); line-height:1.3; margin:24px 0 14px; overflow-wrap:anywhere; }
.business-approved > p { color:var(--muted,#a4a79c); }
.business-shortcuts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:28px 0; }
.business-shortcut { display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:24px 18px; min-width:0; border:1px solid #42483a; text-decoration:none; }
.business-shortcut svg { width:32px; height:32px; color:#d6e79f; flex:none; }
.business-shortcut strong { font-size:19px; color:#f3f4ec; }
.business-shortcut small { color:#a4a79c; line-height:1.5; }
.business-shortcut:hover { border-color:#d6e79f; background:#d6e79f0c; }
.business-shortcut:focus-visible { outline:2px solid #d6e79f; outline-offset:4px; }
.business-approved-details summary { cursor:pointer; color:#a4a79c; padding:12px 0; }
#business-saved { scroll-margin-top:110px; }
@media(max-width:640px) {
 .business-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .business-shortcut { align-items:center; text-align:center; padding:20px 8px; gap:10px; }
 .business-shortcut strong { font-size:16px; }
 .business-shortcut small { display:none; }
 .business-approved .dashboard-card-head { flex-wrap:wrap; gap:12px; }
}

.business-coming-label{display:inline-block;color:#d6e79f;background:#d6e79114;border:1px solid #697548;padding:4px 9px;font-size:13px;line-height:1.4;border-radius:4px}.business-shortcut.is-coming-soon{cursor:default}.business-shortcut.is-coming-soon:hover{border-color:#42483a;background:transparent}

/* Member navigation: server-backed name and membership status. */
[data-account-link] { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 0; }
.account-nav-name { overflow-wrap: anywhere; }
.account-nav-badge { display: inline-block; padding: 4px 8px; border: 1px solid var(--line, #353831); border-radius: 4px; color: #b5b8ae; font-size: 11px; font-weight: 500; line-height: 1.5; white-space: normal; }
.account-nav-badge.is-verified { color: #d6e79f; border-color: #65733e; background: #d6e79f12; }
.mobile-nav [data-account-link] { align-content: center; }
@media (max-width: 480px) { .mobile-nav [data-account-link] { flex-direction: column; align-items: flex-start; gap: 5px; } }
@media (max-width: 1320px) { .nav-account-link[data-account-link] { display: none; } }

/* Public resource notes: article cards and a fully fictional salon market example. */
.resources-index, .resource-article { padding-top: clamp(58px, 7vw, 104px); padding-bottom: clamp(86px, 10vw, 144px); color: var(--home-ink); }
.resources-hero { max-width: 1000px; padding-bottom: 48px; border-bottom: 1px solid var(--home-line); }
.resources-hero .eyebrow, .resource-article-header .eyebrow { color: var(--home-signal); letter-spacing: .14em; }
.resources-hero h1 { margin: 24px 0 25px; font-size: clamp(49px, 6.7vw, 86px); line-height: 1.05; letter-spacing: -.067em; }
.resources-hero h1 span { color: var(--home-signal); }
.resources-hero > p:last-child { max-width: 720px; margin: 0; color: var(--home-muted); font-size: clamp(15px, 1.5vw, 18px); line-height: 1.75; }
.resources-series { margin-top: clamp(54px, 7vw, 92px); }
.resources-series-header { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 410px); gap: 8px 40px; align-items: end; }
.resources-series-header > span { grid-column: 1 / -1; color: var(--home-signal); font-size: 11px; font-weight: 850; letter-spacing: .12em; }
.resources-series-header h2 { margin: 12px 0 0; font-size: clamp(30px, 3.4vw, 48px); line-height: 1.16; letter-spacing: -.05em; }
.resources-series-header p { margin: 0; color: var(--home-muted); font-size: 14px; line-height: 1.75; }
.resources-list { margin-top: 38px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.resources-list-card { min-width: 0; min-height: 335px; padding: clamp(23px, 3.2vw, 40px); display: flex; flex-direction: column; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); color: var(--home-ink); transition: background .2s ease, box-shadow .2s ease; }
.resources-list-card:hover, .resources-list-card:focus-visible { background: var(--home-surface-2); box-shadow: inset 0 0 0 1px var(--home-signal); outline: none; }
.resources-list-number { color: var(--home-signal); font-size: 11px; font-weight: 850; letter-spacing: .09em; }
.resources-list-card > strong { max-width: 520px; margin-top: 58px; font-size: clamp(27px, 2.6vw, 38px); line-height: 1.16; letter-spacing: -.045em; }
.resources-list-card > p { max-width: 510px; margin: 16px 0 30px; color: var(--home-muted); font-size: 14px; line-height: 1.72; }
.resources-list-link { margin-top: auto; padding-top: 16px; display: flex; justify-content: space-between; gap: 16px; border-top: 1px solid var(--home-line); font-size: 13px; font-weight: 800; }
.resources-list-link span { color: var(--home-signal); font-size: 20px; line-height: .8; }
.resources-index-note { max-width: 760px; margin: 25px 0 0; color: var(--home-muted); font-size: 12px; line-height: 1.75; }
.resource-back { display: inline-block; margin-bottom: 36px; color: var(--home-muted); font-size: 13px; font-weight: 750; }
.resource-back:hover, .resource-back:focus-visible { color: var(--home-signal); }
.resource-article-header { max-width: 1000px; padding-bottom: 42px; border-bottom: 1px solid var(--home-line); }
.resource-article-header h1 { max-width: 970px; margin: 22px 0; font-size: clamp(46px, 6vw, 76px); line-height: 1.08; letter-spacing: -.065em; }
.resource-subtitle { max-width: 850px; margin: 0; color: var(--home-muted); font-size: clamp(17px, 2vw, 24px); line-height: 1.58; }
.resource-meta { margin-top: 35px; display: flex; flex-wrap: wrap; gap: 8px 22px; color: var(--home-muted); font-size: 11px; font-weight: 750; }
.resource-intro, .resource-fiction-note { max-width: 1000px; margin: 34px 0 58px; padding: 25px 30px; border: 1px solid var(--home-line); background: var(--home-surface); }
.resource-intro strong, .resource-fiction-note strong { color: var(--home-ink); font-size: 21px; line-height: 1.38; }
.resource-intro p, .resource-fiction-note p { max-width: 800px; margin: 10px 0 0; color: var(--home-muted); font-size: 14px; line-height: 1.75; }
.resource-fiction-note { border-color: rgba(209,229,154,.5); background: rgba(209,229,154,.055); }
.resource-fiction-note strong { color: var(--home-signal); }
.resource-reading-layout { display: grid; grid-template-columns: 190px minmax(0, 800px); gap: clamp(40px, 7vw, 100px); align-items: start; }
.resource-contents { position: sticky; top: 108px; display: grid; border-top: 1px solid var(--home-line); }
.resource-contents span { padding: 18px 0; color: var(--home-signal); font-size: 10px; font-weight: 850; letter-spacing: .12em; }
.resource-contents a { padding: 13px 0; border-top: 1px solid var(--home-line); color: var(--home-muted); font-size: 12px; line-height: 1.4; }
.resource-contents a:hover, .resource-contents a:focus-visible { color: var(--home-signal); }
.resource-prose { min-width: 0; }
.resource-prose > section { padding: 0 0 68px; margin: 0 0 68px; border-bottom: 1px solid var(--home-line); scroll-margin-top: 112px; }
.resource-prose > section:last-child { margin-bottom: 0; border-bottom: 0; }
.resource-section-no { color: var(--home-signal); font-size: 11px; font-weight: 850; letter-spacing: .12em; }
.resource-prose h2 { margin: 17px 0 24px; font-size: clamp(32px, 4vw, 50px); line-height: 1.15; letter-spacing: -.05em; }
.resource-prose p { margin: 0 0 19px; color: var(--home-muted); font-size: 16px; line-height: 1.85; }
.resource-prose p strong { color: var(--home-ink); }
.resource-prose p a { color: var(--home-signal); text-decoration: underline; text-underline-offset: 4px; }
.resource-key-grid { margin-top: 30px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.resource-key-grid > div { min-height: 190px; padding: 22px; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); }
.resource-key-grid span { color: var(--home-signal); font-size: 11px; font-weight: 850; }
.resource-key-grid strong { display: block; margin: 36px 0 10px; font-size: 18px; line-height: 1.35; }
.resource-key-grid p { margin: 0; font-size: 12px; line-height: 1.65; }
.resource-inline-link { min-height: 68px; margin-top: 24px; padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; gap: 15px; border: 1px solid var(--home-signal); color: var(--home-signal); font-size: 15px; font-weight: 800; }
.resource-inline-link:hover, .resource-inline-link:focus-visible { background: rgba(209,229,154,.1); }
.resource-facts { margin: 25px 0 17px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--home-line); border-left: 1px solid var(--home-line); }
.resource-facts > div { min-height: 112px; padding: 17px; border-right: 1px solid var(--home-line); border-bottom: 1px solid var(--home-line); background: var(--home-surface); }
.resource-facts dt { color: var(--home-muted); font-size: 11px; }
.resource-facts dd { margin: 22px 0 0; color: var(--home-ink); font-size: 19px; font-weight: 800; }
.resource-prose .resource-caption { font-size: 12px; }
.resource-table-wrap { max-width: 100%; margin: 28px 0 17px; overflow-x: auto; border: 1px solid var(--home-line); }
.resource-table { width: 100%; border-collapse: collapse; background: var(--home-surface); font-size: 14px; font-variant-numeric: tabular-nums; }
.resource-table caption { padding: 13px 16px; border-bottom: 1px solid var(--home-line); color: var(--home-muted); font-size: 11px; text-align: left; caption-side: top; }
.resource-table th, .resource-table td { padding: 15px 17px; border-bottom: 1px solid var(--home-line); text-align: left; vertical-align: top; }
.resource-table tr:last-child > * { border-bottom: 0; }
.resource-table th { color: var(--home-muted); font-weight: 650; }
.resource-table td { color: var(--home-ink); font-weight: 780; }
.resource-table-highlight > * { color: var(--home-signal) !important; background: rgba(209,229,154,.07); }
.resource-prose .resource-formula { margin: 18px 0 25px; padding: 17px 19px; border-left: 3px solid var(--home-signal); background: rgba(209,229,154,.06); color: var(--home-ink); font-size: 13px; font-weight: 750; line-height: 1.7; }
.resource-cost-note { margin: 24px 0; padding: 21px 23px; border: 1px solid var(--home-line); background: var(--home-surface); }
.resource-cost-note strong { color: var(--home-signal); font-size: 16px; }
.resource-cost-note p { margin: 9px 0 0; font-size: 13px; }
.resource-scenario-table { min-width: 530px; font-size: 12px; }
.resource-scenario-table thead th { background: var(--home-surface-2); color: var(--home-ink); }
.resource-scenario-table th { width: 40%; }
.resource-scenario-table td { width: 20%; }
.resource-scenario-table tbody tr:nth-last-child(-n + 2) { background: rgba(209,229,154,.045); }
.resource-scenario-table tbody tr:nth-last-child(-n + 2) td { color: var(--home-signal); }
.resource-scenario-cards { display: none; }

@media (max-width: 780px) {
  .resources-series-header { grid-template-columns: 1fr; }
  .resources-series-header > span { grid-column: 1; }
  .resources-series-header p { margin-top: 8px; }
  .resources-list { grid-template-columns: 1fr; }
  .resources-list-card { min-height: 270px; }
  .resources-list-card > strong { margin-top: 42px; }
  .resource-reading-layout { grid-template-columns: 1fr; gap: 48px; }
  .resource-contents { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .resource-contents span { grid-column: 1 / -1; }
  .resource-contents a { padding-right: 10px; }
}
@media (max-width: 520px) {
  .resources-index, .resource-article { padding-top: 49px; }
  .resources-hero h1 { font-size: clamp(40px, 11vw, 52px); }
  .resources-list-card { min-height: 248px; padding: 22px 20px; }
  .resources-list-card > strong { font-size: 27px; }
  .resource-article-header h1 { font-size: clamp(39px, 10vw, 49px); }
  .resource-intro, .resource-fiction-note { margin-bottom: 44px; padding: 21px; }
  .resource-contents { grid-template-columns: 1fr; }
  .resource-prose > section { margin-bottom: 50px; padding-bottom: 50px; }
  .resource-prose h2 { font-size: 33px; }
  .resource-prose p { font-size: 14px; }
  .resource-key-grid { grid-template-columns: 1fr; }
  .resource-key-grid > div { min-height: 150px; }
  .resource-key-grid strong { margin-top: 28px; }
  .resource-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .resource-facts > div { min-height: 105px; padding: 15px; }
  .resource-facts dd { font-size: 16px; }
  .resource-table { font-size: 12px; }
  .resource-table th, .resource-table td { padding: 12px 10px; }
  .resource-scenario-table { min-width: 470px; }
  .resource-scenario-table-wrap { display: none; }
  .resource-scenario-cards { margin: 28px 0 17px; display: grid; gap: 14px; }
  .resource-scenario-card { padding: 20px; border: 1px solid var(--home-line); background: var(--home-surface); }
  .resource-scenario-card h3 { margin: 0 0 17px; color: var(--home-signal); font-size: 20px; }
  .resource-scenario-card dl { margin: 0; }
  .resource-scenario-card dl > div { padding: 10px 0; display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid var(--home-line); }
  .resource-scenario-card dt { color: var(--home-muted); font-size: 12px; }
  .resource-scenario-card dd { margin: 0; color: var(--home-ink); font-size: 12px; font-weight: 800; text-align: right; white-space: nowrap; }
  .resource-scenario-card .resource-scenario-result dd { color: var(--home-signal); }
}
