:root {
  --background: 260 15.8% 7.5%;
  --foreground: 282.9 16% 87%;
  --muted: 266.3 23.5% 13.3%;
  --muted-foreground: 274.7 8.8% 57.5%;
  --primary: 43.5 84.2% 65.3%;
  --primary-hover: 43.5 84.2% 70%;
  --primary-foreground: 38 45% 9%;
  --surface: 264 20% 9.8%;
  --surface-raised: 270 20% 15.7%;
  --surface-hover: 270 20.8% 18.8%;
  --surface-soft: 266.3 23.5% 13.3%;
  --border: 271.6 15.7% 23.7%;
  --border-soft: 270 16.7% 18.8%;
  --text-secondary: 280 13.3% 77.8%;
  --brand: 270 33.6% 58%;
  --brand-soft: 266.9 25.2% 22.5%;
  --attention: 10.8 80% 68.6%;
  --attention-ink: 10.8 80% 68.6%;
  --attention-soft: 351.4 22.1% 18.6%;
  --positive: 158 41.4% 62.5%;
  --positive-soft: 158.2 25% 17.3%;
  --danger: 1.7 77.8% 73.5%;
  --danger-soft: 1 35% 18%;
  --warm: 38.7 32.6% 18.6%;
  --font-display: "Source Serif 4", Georgia, serif;
  --control-min-size: 2.75rem;
  --radius-xs: 0.125rem;
  --radius-sm: 0.5625rem;
  --radius: 0.875rem;
  --radius-lg: 1.25rem;
  --radius-pill: 999px;
  --radius-round: 50%;
  --radius-tile: 30%;
  --radius-control: 0.625rem;
  --radius-message: 1.0625rem 1.0625rem 0.3125rem 1.0625rem;
  --shadow-color: 0 0% 0%;
  --brand-shadow: drop-shadow(0 6px 8px hsl(var(--shadow-color) / 35%));
  --motion-duration-fast: 140ms;
  --motion-duration-label-change: 160ms;
  --motion-duration-row-entry: 180ms;
  --motion-duration-disclosure: 200ms;
  --motion-duration-standard: 220ms;
  --motion-duration-context-dial: 240ms;
  --motion-duration-spinner-loop: 800ms;
  --motion-duration-shimmer-loop: 1400ms;
  --motion-ease-emphasized-out: cubic-bezier(0.23, 1, 0.32, 1);
  --motion-ease-linear: linear;
  --motion-ease-out: cubic-bezier(0.22, 0.8, 0.2, 1);
  --motion-ease-state: ease;
  --motion-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
}

:root[data-theme="light"] {
  --background: 40 100% 98.8%;
  --foreground: 267.7 14.9% 17.1%;
  --muted: 36.9 35.1% 92.7%;
  --muted-foreground: 270 6.1% 41%;
  --primary: 263 48% 21%;
  --primary-hover: 263 45% 30%;
  --primary-foreground: 0 0% 100%;
  --surface: 37.5 44.4% 96.5%;
  --surface-raised: 265.7 43.8% 93.7%;
  --surface-hover: 267 33% 90%;
  --surface-soft: 36.9 35.1% 92.7%;
  --border: 33.7 19.5% 83.9%;
  --border-soft: 33.7 25.8% 87.8%;
  --text-secondary: 278.2 6.6% 32.7%;
  --brand: 274.3 26.2% 42%;
  --brand-soft: 265.7 43.8% 93.7%;
  --attention: 7.9 61.6% 61.2%;
  --attention-ink: 7.9 61.6% 40%;
  --attention-soft: 17.1 100% 95.9%;
  --positive: 164.5 38.8% 33.3%;
  --positive-soft: 155 35.3% 93.3%;
  --danger: 1.2 39.3% 47.8%;
  --danger-soft: 0 62% 95%;
  --warm: 45 75.9% 88.6%;
  --shadow-color: 267 49% 21%;
}

@font-face {
  font-family: Inter;
  src: url("/site/assets/inter.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Source Serif 4";
  src: url("/site/assets/source-serif.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

:root {
  --font-sans: Inter,system-ui,sans-serif;
  --font-display: "Source Serif 4",Georgia,serif;
  color-scheme: dark;
  font-synthesis: none;
}

:root[data-theme="light"] {
  color-scheme: light;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  scroll-padding-top: 95px;
}

body {
  background: hsl(var(--background));
  color: hsl(var(--foreground));
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
}

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

button, input, textarea {
  font: inherit;
}

button, a, summary {
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

button {
  color: inherit;
  cursor: pointer;
  user-select: none;
}

button:disabled {
  cursor: default;
}

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

button svg, a svg {
  flex: none;
}

h1, h2, h3, p {
  margin: 0;
}

h1, h2 {
  letter-spacing: -.055em;
  font-weight: 600;
  line-height: 1.1;
}

h1 {
  font-size: clamp(48px, 5.6vw, 78px);
}

h2 {
  font-size: clamp(32px, 3.5vw, 47px);
}

h1 > span, h2 > span {
  color: hsl(var(--brand));
}

h3 {
  letter-spacing: -.025em;
  font-weight: 550;
}

p {
  line-height: 1.75;
}

button, a, input, textarea {
  outline-offset: 4px;
}

button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 3px solid hsl(var(--primary));
}

::selection {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}

[hidden] {
  display: none !important;
}

.shell {
  width: min(1240px, 100% - 96px);
  margin-inline: auto;
}

.eyebrow, .kicker {
  letter-spacing: .1em;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.6;
  display: block;
}

.eyebrow {
  color: hsl(var(--muted-foreground));
}

.kicker {
  text-transform: uppercase;
  color: hsl(var(--brand));
  font-size: 9px;
}

.button {
  border: 1px solid hsl(var(--primary));
  border-radius: var(--radius-control);
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  white-space: nowrap;
  min-height: 50px;
  transition: background .14s ease,transform .14s var(--motion-ease-emphasized-out);
  justify-content: center;
  align-items: center;
  gap: 25px;
  padding: 14px 20px;
  font-size: 13px;
  font-weight: 600;
  display: inline-flex;
}

.button.small {
  gap: 18px;
  min-height: 42px;
  padding: 10px 14px;
  font-size: 11px;
}

.button.secondary {
  border-color: hsl(var(--border));
  color: hsl(var(--foreground));
  background: none;
  gap: 14px;
}

.button:active, .icon-button:active {
  transform: scale(.97);
}

.text-link {
  align-items: center;
  gap: 15px;
  min-height: 44px;
  padding-block: 12px;
  font-size: 12px;
  font-weight: 550;
  display: inline-flex;
}

.text-link svg {
  width: 17px;
  height: 17px;
}

.icon-button {
  border-radius: var(--radius-control);
  width: 44px;
  height: 44px;
  transition: background .14s ease,transform .14s var(--motion-ease-emphasized-out);
  background: none;
  border: 1px solid #0000;
  flex: none;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.sr-only {
  clip-path: inset(50%);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}

.skip-link {
  z-index: 500;
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  padding: 12px 20px;
  position: fixed;
  top: 12px;
  left: 12px;
  transform: translateY(-160%);
}

.skip-link:focus {
  transform: none;
}

.status-dot {
  background: hsl(var(--positive));
  vertical-align: middle;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  margin-right: 8px;
  display: inline-block;
}

.site-header {
  border-bottom: 1px solid hsl(var(--border-soft));
  padding-top: env(safe-area-inset-top, 0px);
  background: hsl(var(--background));
  z-index: 10;
  position: relative;
}

.nav-inner {
  align-items: center;
  gap: 30px;
  height: 82px;
  display: flex;
}

.brand {
  letter-spacing: -1.3px;
  white-space: nowrap;
  align-items: center;
  gap: 7px;
  font-size: 25px;
  font-weight: 650;
  display: inline-flex;
}

.brand img {
  width: 34px;
  height: 38px;
}

.nav-links {
  gap: 27px;
  margin-left: auto;
  display: flex;
}

.nav-links a, .signin {
  color: hsl(var(--text-secondary));
  padding-block: 12px;
  font-size: 11px;
}

.nav-actions {
  align-items: center;
  gap: 16px;
  margin-left: auto;
  display: flex;
}

.theme-button {
  color: hsl(var(--muted-foreground));
  width: 39px;
  height: 44px;
}

.theme-button svg {
  width: 17px;
  height: 17px;
}

.menu-button {
  display: none;
}

.mobile-menu {
  border-top: 1px solid hsl(var(--border));
  padding: 10px 24px 18px;
}

.mobile-menu a {
  padding: 12px 0;
  font-size: 14px;
  display: block;
}

.header-reassurance {
  color: hsl(var(--muted-foreground));
  margin-left: 20px;
  font-size: 11px;
}

.hero-actions {
  justify-content: center;
  align-items: center;
  gap: 25px;
  margin-top: 26px;
  display: flex;
}

.hero-reassurance {
  color: hsl(var(--muted-foreground));
  justify-content: center;
  align-items: center;
  gap: 7px;
  margin-top: 17px;
  font-size: 10px;
  display: flex;
}

.hero-reassurance svg {
  width: 15px;
  height: 15px;
}

.gallery-hero {
  text-align: center;
  padding-top: 34px;
  padding-bottom: 30px;
}

.gallery-hero .eyebrow {
  margin-bottom: 14px;
}

.gallery-hero h1 {
  font-size: clamp(48px, 5.1vw, 70px);
  line-height: 1.05;
}

.gallery-hero > p {
  color: hsl(var(--text-secondary));
  max-width: 580px;
  margin: 17px auto 0;
  font-size: 15px;
  line-height: 1.8;
}

.showcase-label {
  letter-spacing: .1em;
  color: hsl(var(--muted-foreground));
  justify-content: space-between;
  gap: 20px;
  padding: 0 0 15px;
  font-size: 8px;
  font-weight: 550;
  display: flex;
}

.showcase-label > span:last-child {
  letter-spacing: 0;
  text-transform: none;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  display: flex;
}

.showcase-label svg {
  width: 14px;
  height: 14px;
}

.featured-grid {
  grid-template-columns: 1.22fr 1fr;
  gap: 22px;
  display: grid;
}

.featured-main {
  grid-row: span 2;
}

.result-card {
  min-width: 0;
}

.result-visual {
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  background: hsl(var(--surface));
  text-align: left;
  width: 100%;
  color: inherit;
  padding: 0;
  display: block;
  position: relative;
  overflow: hidden;
}

.result-visual > img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.result-visual .expand-button {
  color: #352443;
  opacity: 0;
  background: #fffdf4;
  border: 1px solid #35244320;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 35px;
  height: 35px;
  transition: opacity .14s;
  display: flex;
  position: absolute;
  top: 15px;
  right: 15px;
}

.result-visual .expand-button svg {
  width: 17px;
  height: 17px;
}

.result-visual:focus-visible .expand-button {
  opacity: 1;
}

.sample-tag {
  color: #e9e3ee;
  letter-spacing: .025em;
  background: #21182be6;
  border: 1px solid #ffffff38;
  border-radius: 5px;
  padding: 4px 7px;
  font-size: 8px;
  font-weight: 450;
  line-height: 1.4;
  display: inline-block;
}

.result-visual > .sample-tag {
  position: absolute;
  bottom: 10px;
  left: 11px;
}

.featured-main .result-visual {
  height: calc(100% - 78px);
  min-height: 460px;
}

.featured-main .result-visual > img {
  object-fit: contain;
  background: #fffdf6;
}

.featured-side .result-visual {
  height: 211px;
}

.featured-side .visual-slides > img {
  object-fit: cover;
  object-position: 50% 35%;
}

.featured-side .interactive-art {
  padding: 18px 25px 13px;
}

.featured-side .interactive-art svg {
  height: 125px;
}

.featured-side .art-kicker {
  font-size: 7px;
}

.featured-side .fake-slider {
  margin-top: -2px;
}

.result-caption {
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
  padding: 14px 1px 2px;
  display: flex;
}

.result-caption h3 {
  margin-top: 3px;
  font-size: 15px;
  line-height: 1.45;
}

.result-caption p {
  color: hsl(var(--muted-foreground));
  margin-top: 5px;
  font-size: 11px;
  line-height: 1.65;
}

.featured-side .result-caption p {
  display: none;
}

.result-arrow {
  width: 34px;
  height: 38px;
  color: hsl(var(--muted-foreground));
  margin-top: 9px;
}

.result-arrow svg {
  width: 18px;
  height: 18px;
}

.gallery-more {
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  margin-bottom: 30px;
  padding-top: 90px;
  display: flex;
}

.gallery-more .eyebrow {
  margin-bottom: 17px;
}

.gallery-more h2 {
  font-size: 36px;
}

.filter-list {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 3px;
  max-width: 520px;
  display: flex;
}

.filter-list button {
  border-radius: var(--radius-pill);
  background: none;
  border: 1px solid #0000;
  min-height: 40px;
  padding: 10px 12px;
  font-size: 10px;
}

.filter-list button[aria-pressed="true"] {
  border-color: hsl(var(--border));
  background: hsl(var(--surface-raised));
  color: hsl(var(--foreground));
}

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

.results-grid .result-visual {
  height: 235px;
}

.results-grid .result-caption h3 {
  max-width: 260px;
  font-size: 14px;
}

.results-grid .result-caption p {
  max-width: 270px;
}

.gallery-caption {
  color: hsl(var(--muted-foreground));
  text-align: center;
  margin-top: 33px;
  font-size: 11px;
}

.interactive-art {
  color: #f7efff;
  background: #261d39;
  height: 100%;
  padding: 24px;
  overflow: hidden;
}

.art-kicker {
  letter-spacing: .13em;
  font-size: 8px;
  font-weight: 550;
  display: block;
}

.interactive-art .art-kicker {
  color: #c7b7dd;
}

.interactive-art svg {
  width: 100%;
  height: 145px;
  margin-top: 5px;
  display: block;
}

.fake-slider {
  color: #cfbfdf;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin-top: 11px;
  font-size: 9px;
  display: flex;
}

.fake-slider i {
  background: #6d5689;
  border-radius: 4px;
  width: 50%;
  height: 3px;
  position: relative;
}

.fake-slider i:after {
  content: "";
  background: #eccc7e;
  border-radius: 50%;
  width: 11px;
  height: 11px;
  position: absolute;
  top: -4px;
  left: 65%;
}

.plan-art {
  color: #284b40;
  background: #dfede5;
  height: 100%;
  padding: 24px;
}

.plan-art .art-kicker {
  color: #486d5d;
  font-size: 7px;
}

.plan-art h3 {
  font-family: var(--font-display);
  letter-spacing: -.04em;
  margin-top: 12px;
  font-size: 28px;
  line-height: 1.06;
}

.plan-route {
  gap: 10px;
  margin-top: 20px;
  display: flex;
}

.plan-route > span {
  color: #456553;
  border-top: 1px solid #92af9f;
  flex: 1;
  align-items: flex-start;
  gap: 6px;
  padding-top: 8px;
  font-size: 8px;
  display: flex;
}

.plan-route b {
  color: #315949;
  font-size: 8px;
  font-weight: 500;
  line-height: 1.5;
}

.plan-tag {
  color: #486d5d;
  margin-top: 15px;
  font-size: 8px;
  display: block;
}

.brief-art {
  color: #554328;
  background: #f3e4c1;
  height: 100%;
  padding: 22px;
}

.brief-top {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.brief-top .art-kicker {
  font-size: 7px;
}

.mini-avatars {
  padding-left: 5px;
  display: flex;
}

.mini-avatars i {
  color: #352841;
  background: #bda5cf;
  border: 2px solid #f3e4c1;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 23px;
  height: 23px;
  margin-left: -5px;
  font-size: 7px;
  font-style: normal;
  display: flex;
}

.mini-avatars i:nth-child(2) {
  background: #acc7b5;
}

.mini-avatars i:nth-child(3) {
  background: #e2ad8f;
}

.brief-art h3 {
  letter-spacing: -.05em;
  margin: 9px 0 13px;
  font-size: 24px;
  line-height: 1.1;
}

.brief-row {
  border-top: 1px solid #c6b58980;
  align-items: center;
  gap: 8px;
  padding: 7px 0;
  font-size: 9px;
  display: flex;
}

.brief-row svg {
  width: 12px;
  height: 12px;
}

.brief-row > span {
  color: #6c5b37;
  margin-left: auto;
  font-size: 8px;
}

.continuity {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 95px;
  padding-block: 102px;
  display: grid;
}

.section-copy .eyebrow {
  margin-bottom: 22px;
}

.section-copy > p {
  color: hsl(var(--text-secondary));
  max-width: 390px;
  margin-top: 24px;
  font-size: 14px;
  line-height: 1.9;
}

.section-copy .text-link {
  margin-top: 18px;
}

.workspace-story {
  background: hsl(var(--surface));
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  box-shadow: 0 14px 40px -23px hsl(var(--shadow-color)/.3);
  padding: 24px 25px;
}

.workspace-title {
  align-items: center;
  gap: 10px;
  font-size: 12px;
  display: flex;
}

.workspace-title > svg {
  width: 22px;
  height: 22px;
  color: hsl(var(--brand));
}

.workspace-title > div {
  flex-direction: column;
  gap: 3px;
  display: flex;
}

.workspace-title b {
  font-weight: 550;
}

.workspace-title > div > span {
  color: hsl(var(--muted-foreground));
  font-size: 9px;
}

.workspace-status {
  color: hsl(var(--positive));
  border: 1px solid hsl(var(--positive)/.3);
  border-radius: var(--radius-pill);
  margin-left: auto;
  padding: 4px 7px;
  font-size: 8px;
}

.source-stack {
  border-bottom: 1px solid hsl(var(--border-soft));
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 22px;
  padding-bottom: 20px;
  display: flex;
}

.source-stack > span {
  border: 1px solid hsl(var(--border));
  background: hsl(var(--background));
  color: hsl(var(--text-secondary));
  border-radius: 5px;
  align-items: center;
  gap: 5px;
  padding: 6px 8px;
  font-size: 8px;
  display: flex;
}

.source-stack svg {
  width: 11px;
  height: 11px;
}

.story-steps {
  border-left: 1px solid hsl(var(--border));
  margin: 23px 0 0 4px;
  padding: 0 0 0 23px;
  list-style: none;
}

.story-steps li {
  padding-bottom: 25px;
  position: relative;
}

.story-steps li:last-child {
  padding-bottom: 0;
}

.story-dot {
  background: hsl(var(--brand));
  border: 2px solid hsl(var(--surface));
  width: 9px;
  height: 9px;
  box-shadow: 0 0 0 1px hsl(var(--brand)/.4);
  border-radius: 50%;
  position: absolute;
  top: 5px;
  left: -28px;
}

.story-steps small {
  letter-spacing: .06em;
  color: hsl(var(--muted-foreground));
  font-size: 8px;
}

.story-steps p {
  margin-top: 5px;
  font-size: 12px;
  font-weight: 550;
}

.story-steps li > span:last-child {
  color: hsl(var(--muted-foreground));
  font-size: 10px;
}

.together {
  background: hsl(var(--surface));
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius-lg);
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 75px;
  padding: 59px;
  display: grid;
}

.together h2 {
  margin-top: 19px;
  font-size: 38px;
}

.together > div > p {
  color: hsl(var(--text-secondary));
  max-width: 370px;
  margin-top: 21px;
  font-size: 13px;
  line-height: 1.9;
}

.together .text-link {
  width: fit-content;
  margin-top: 13px;
  display: flex;
}

.free-pill {
  color: hsl(var(--positive));
  align-items: center;
  gap: 7px;
  margin-top: 18px;
  font-size: 10px;
  font-weight: 550;
  display: inline-flex;
}

.free-pill svg {
  width: 15px;
  height: 15px;
}

.shared-window {
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  background: hsl(var(--background));
  box-shadow: 0 20px 50px -28px hsl(var(--shadow-color)/.3);
  padding: 25px;
}

.shared-window .workspace-title {
  border-bottom: 1px solid hsl(var(--border-soft));
  gap: 8px;
  padding-bottom: 18px;
  font-size: 10px;
}

.shared-window .workspace-title svg {
  width: 18px;
  height: 18px;
}

.shared-badge {
  color: hsl(var(--foreground));
  background: hsl(var(--brand-soft));
  border-radius: 4px;
  margin-left: auto;
  padding: 4px 7px;
  font-size: 8px;
}

.shared-people {
  gap: 8px;
  padding-block: 23px;
  display: flex;
}

.avatar {
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 35px;
  height: 35px;
  font-size: 10px;
  font-weight: 550;
  display: flex;
}

.avatar.violet {
  color: #58366d;
  background: #d6c1e5;
}

.avatar.green {
  color: #355b44;
  background: #c1dbcd;
}

.avatar.peach {
  color: #80503e;
  background: #eac5b2;
}

.avatar.add {
  border: 1px dashed hsl(var(--border));
  color: hsl(var(--muted-foreground));
  font-size: 16px;
}

.shared-line {
  color: hsl(var(--text-secondary));
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  font-size: 10px;
  display: flex;
}

.shared-line svg {
  width: 15px;
  height: 15px;
  color: hsl(var(--brand));
}

.shared-bottom {
  color: hsl(var(--muted-foreground));
  border-top: 1px solid hsl(var(--border-soft));
  align-items: center;
  gap: 8px;
  margin-top: 20px;
  padding-top: 15px;
  font-size: 8px;
  display: flex;
}

.shared-bottom svg {
  width: 13px;
  height: 13px;
}

.closing {
  justify-content: space-between;
  align-items: center;
  gap: 35px;
  padding-block: 95px;
  display: flex;
}

.closing .eyebrow {
  margin-bottom: 17px;
}

.closing h2 {
  font-size: 49px;
}

.closing > div:nth-child(2) > p {
  color: hsl(var(--muted-foreground));
  max-width: 255px;
  margin-top: 12px;
  font-size: 10px;
}

.closing > img {
  width: 108px;
  height: 108px;
  margin-right: 30px;
  transform: rotate(7deg);
}

.footer {
  border-top: 1px solid hsl(var(--border));
  align-items: center;
  gap: 28px;
  padding: 31px 0 100px;
  display: flex;
}

.footer .brand {
  font-size: 23px;
}

.footer > p {
  color: hsl(var(--muted-foreground));
  margin-left: 5px;
  font-size: 10px;
}

.footer nav {
  gap: 24px;
  margin-left: auto;
  font-size: 10px;
  display: flex;
}

.footer > span {
  color: hsl(var(--muted-foreground));
  font-size: 8px;
}

.studio-hero {
  padding-top: 63px;
  padding-bottom: 61px;
}

.studio-hero-copy {
  grid-template-columns: 1.2fr .8fr;
  column-gap: 90px;
  display: grid;
}

.studio-hero-copy > .eyebrow {
  grid-column: 1 / -1;
  margin-bottom: 21px;
}

.studio-hero-copy h1 {
  font-size: clamp(45px, 4.6vw, 66px);
}

.studio-hero-copy > p {
  color: hsl(var(--text-secondary));
  align-self: center;
  max-width: 390px;
  padding-top: 12px;
  font-size: 15px;
  line-height: 1.85;
}

.studio-hero-copy .hero-actions {
  grid-column: 1 / -1;
  justify-content: flex-start;
  gap: 21px;
  margin-top: 27px;
}

.studio-free {
  color: hsl(var(--muted-foreground));
  align-items: center;
  gap: 8px;
  font-size: 10px;
  display: flex;
}

.studio-free svg {
  width: 15px;
  height: 15px;
}

.studio-main {
  margin-top: 43px;
}

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

.stage-heading > span {
  letter-spacing: .09em;
  color: hsl(var(--muted-foreground));
  font-size: 8px;
}

.stage-tabs {
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius-pill);
  background: hsl(var(--surface));
  gap: 5px;
  padding: 4px;
  display: flex;
}

.stage-tabs button {
  border-radius: var(--radius-pill);
  background: none;
  border: 0;
  min-height: 32px;
  padding: 8px 13px;
  font-size: 9px;
}

.stage-tabs button[aria-pressed="true"] {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}

.studio-window {
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  background: hsl(var(--surface));
  box-shadow: 0 25px 75px -40px hsl(var(--shadow-color)/.5);
  overflow: hidden;
}

.studio-window-header {
  border-bottom: 1px solid hsl(var(--border));
  align-items: center;
  gap: 5px;
  height: 42px;
  padding: 0 16px;
  display: flex;
}

.window-dot {
  background: hsl(var(--border));
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.studio-window-header > span:nth-child(4) {
  align-items: center;
  gap: 7px;
  margin-left: 19px;
  font-size: 10px;
  display: flex;
}

.studio-window-header svg {
  width: 14px;
  height: 14px;
  color: hsl(var(--brand));
}

.studio-window-header .mini-avatars {
  margin-left: auto;
}

.studio-window-header .mini-avatars i {
  border-color: hsl(var(--surface));
  width: 22px;
  height: 22px;
}

.studio-window-body {
  grid-template-columns: 210px 1fr;
  min-height: 450px;
  display: grid;
}

.studio-rail {
  border-right: 1px solid hsl(var(--border));
  flex-direction: column;
  gap: 6px;
  padding: 21px 14px;
  display: flex;
}

.rail-label {
  letter-spacing: .09em;
  color: hsl(var(--muted-foreground));
  margin: 0 8px 9px;
  font-size: 7px;
}

.rail-label:not(:first-child) {
  margin-top: 23px;
}

.studio-rail > div:not(.rail-saved) {
  color: hsl(var(--text-secondary));
  align-items: center;
  gap: 8px;
  padding: 5px 8px;
  font-size: 9px;
  display: flex;
}

.studio-rail svg {
  flex: none;
  width: 13px;
  height: 13px;
}

.studio-rail > button {
  text-align: left;
  background: none;
  border: 1px solid #0000;
  border-radius: 7px;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 10px;
  font-size: 9px;
  display: flex;
}

.studio-rail > button[aria-pressed="true"] {
  color: hsl(var(--foreground));
  background: hsl(var(--brand-soft));
  border-color: hsl(var(--brand)/.3);
}

.rail-saved {
  color: hsl(var(--positive));
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding: 25px 6px 4px;
  font-size: 8px;
  display: flex;
}

.studio-output {
  background: hsl(var(--background));
  min-width: 0;
  padding: 17px 24px 0;
}

.output-title {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 13px;
  font-size: 10px;
  display: flex;
}

.output-title .sample-tag {
  background: hsl(var(--surface));
  color: hsl(var(--muted-foreground));
  border-color: hsl(var(--border));
  font-size: 7px;
}

.stage-image {
  background: #fffdf6;
  border: 0;
  border-radius: 7px;
  width: 100%;
  height: 349px;
  padding: 0;
  display: block;
  overflow: hidden;
}

.stage-image > img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.stage-prompt {
  color: hsl(var(--text-secondary));
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 15px 0;
  font-size: 10px;
  display: flex;
}

.studio-window-footer {
  border-top: 1px solid hsl(var(--border));
  color: hsl(var(--muted-foreground));
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 8px 20px;
  font-size: 9px;
  display: flex;
}

.studio-window-footer .text-link {
  color: hsl(var(--primary));
  background: none;
  border: 0;
  min-height: 34px;
  padding: 7px 0;
  font-size: 10px;
}

.studio-intro {
  text-align: center;
  border-bottom: 1px solid hsl(var(--border));
  padding: 59px 0 88px;
}

.studio-intro > p {
  font-family: var(--font-display);
  color: hsl(var(--muted-foreground));
  margin-bottom: 17px;
  font-size: 22px;
}

.studio-intro h2 {
  font-size: 47px;
}

.benefit-row {
  text-align: left;
  grid-template-columns: repeat(3, 1fr);
  gap: 55px;
  max-width: 980px;
  margin: 48px auto 0;
  display: grid;
}

.benefit-row > div {
  padding-left: 31px;
  position: relative;
}

.benefit-row > div > span {
  color: hsl(var(--brand));
  font-size: 10px;
  position: absolute;
  top: 3px;
  left: 0;
}

.benefit-row h3 {
  font-size: 16px;
}

.benefit-row p {
  color: hsl(var(--muted-foreground));
  margin-top: 9px;
  font-size: 12px;
  line-height: 1.8;
}

.studio-ideas {
  padding-top: 80px;
}

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

.section-header .eyebrow {
  margin-bottom: 18px;
}

.section-header h2 {
  font-size: 42px;
}

.welcome {
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 110px;
  max-width: 1100px;
  padding-block: 61px 115px;
  display: grid;
}

.welcome-story {
  padding-top: 7px;
}

.welcome-story .eyebrow {
  margin-bottom: 22px;
  font-size: 9px;
}

.welcome-story h1 {
  font-size: 56px;
  line-height: 1.07;
}

.welcome-story > p {
  color: hsl(var(--text-secondary));
  margin-top: 22px;
  font-size: 13px;
  line-height: 1.85;
}

.welcome-art {
  width: calc(100% - 30px);
  margin-top: 33px;
  position: relative;
}

.welcome-art > img {
  height: auto;
  aspect-ratio: 1.55;
  object-fit: cover;
  object-position: 50% 36%;
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  width: 100%;
  box-shadow: 0 20px 40px -28px hsl(var(--shadow-color)/.4);
  transform: rotate(-3deg);
}

.welcome-art > .interactive-art, .welcome-art > .plan-art, .welcome-art > .brief-art {
  border-radius: var(--radius);
  height: 245px;
  transform: rotate(-3deg);
}

.welcome-buck {
  position: absolute;
  bottom: -30px;
  right: -30px;
  transform: rotate(9deg);
}

.welcome-buck img {
  filter: drop-shadow(0 10px 7px #0002);
  width: 110px;
  height: 110px;
}

.welcome-art-caption {
  color: hsl(var(--muted-foreground));
  margin-top: 26px;
  font-size: 9px;
  display: block;
}

.welcome-form-wrap {
  padding-top: 5px;
}

.step-label {
  color: hsl(var(--muted-foreground));
  align-items: center;
  gap: 7px;
  margin-bottom: 29px;
  font-size: 9px;
  display: flex;
}

.step-label > span {
  background: hsl(var(--border));
  border-radius: 2px;
  width: 22px;
  height: 3px;
  display: block;
}

.step-label > span.step-active {
  background: hsl(var(--primary));
}

.step-label > span:last-of-type {
  margin-right: 5px;
}

.welcome-form-wrap h2 {
  font-size: 35px;
}

.welcome-form-wrap > p {
  color: hsl(var(--muted-foreground));
  margin-top: 10px;
  font-size: 13px;
}

#welcome-form {
  margin-top: 31px;
}

#welcome-form > label, legend {
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  width: 100%;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 550;
  display: flex;
}

#welcome-form label > span:not(.interest-choice > span), legend > span {
  color: hsl(var(--muted-foreground));
  font-size: 9px;
  font-weight: 400;
}

#welcome-form > input {
  border: 1px solid hsl(var(--border));
  background: hsl(var(--surface));
  width: 100%;
  color: hsl(var(--foreground));
  border-radius: var(--radius-control);
  outline-offset: 3px;
  min-height: 49px;
  padding: 13px 14px;
  font-size: 13px;
}

input::placeholder {
  color: hsl(var(--muted-foreground));
  opacity: 1;
}

fieldset {
  border: 0;
  min-width: 0;
  margin: 26px 0;
  padding: 0;
}

.interest-grid {
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  display: grid;
}

.interest-choice {
  cursor: pointer;
  display: block;
  position: relative;
}

.interest-choice > input {
  opacity: 0;
  cursor: pointer;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.interest-choice > span {
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius-control);
  background: hsl(var(--background));
  pointer-events: none;
  align-items: center;
  gap: 8px;
  min-height: 51px;
  padding: 12px;
  font-size: 11px;
  font-weight: 500;
  display: flex;
}

.interest-choice svg {
  width: 17px;
  height: 17px;
  color: hsl(var(--brand));
}

.interest-choice:has(input:checked) > span {
  border-color: hsl(var(--brand));
  background: hsl(var(--brand-soft));
  color: hsl(var(--foreground));
}

.interest-choice:has(input:focus-visible) > span {
  outline: 3px solid hsl(var(--primary));
  outline-offset: 3px;
}

.form-actions {
  align-items: center;
  gap: 22px;
  margin-top: 27px;
  display: flex;
}

.form-actions .button {
  gap: 20px;
  font-size: 12px;
}

.skip-setup {
  text-underline-offset: 3px;
  align-items: center;
  min-height: 44px;
  font-size: 11px;
  text-decoration: underline;
  display: flex;
}

.form-reassurance {
  color: hsl(var(--muted-foreground));
  align-items: center;
  gap: 7px;
  margin-top: 18px;
  font-size: 9px;
  display: flex;
}

.form-reassurance svg {
  flex: none;
  width: 12px;
  height: 12px;
}

.ideas-page {
  padding-top: 58px;
  padding-bottom: 55px;
}

.ideas-welcome {
  justify-content: space-between;
  align-items: center;
  gap: 50px;
  max-width: 900px;
  display: flex;
}

.ideas-welcome .eyebrow {
  margin-bottom: 22px;
}

.ideas-welcome h1 {
  font-size: 60px;
}

.ideas-welcome p {
  color: hsl(var(--text-secondary));
  max-width: 600px;
  margin-top: 22px;
  font-size: 14px;
}

.ideas-welcome > img {
  width: 127px;
  height: 127px;
  margin-right: 10px;
  transform: rotate(7deg);
}

.project-ribbon {
  border: 1px solid hsl(var(--border));
  background: hsl(var(--surface));
  border-radius: var(--radius-control);
  align-items: center;
  gap: 12px;
  min-width: 0;
  margin-top: 29px;
  padding: 10px 17px;
  font-size: 11px;
  display: flex;
}

.project-ribbon > svg {
  color: hsl(var(--brand));
  flex: none;
  width: 18px;
  height: 18px;
}

.project-ribbon > span {
  color: hsl(var(--muted-foreground));
  white-space: nowrap;
  font-size: 10px;
}

.project-ribbon > strong {
  overflow-wrap: anywhere;
  min-width: 0;
  font-weight: 550;
}

.project-ribbon .text-link {
  white-space: nowrap;
  flex: none;
  gap: 8px;
  margin-left: auto;
  font-size: 10px;
}

.ideas-topline {
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 45px 0 22px;
  display: flex;
}

.ideas-topline h2 {
  letter-spacing: -.035em;
  font-size: 20px;
}

.ideas-topline > span {
  color: hsl(var(--muted-foreground));
  font-size: 10px;
}

.suggested-card .result-visual {
  border-color: hsl(var(--brand));
  box-shadow: 0 0 0 2px hsl(var(--brand)/.16);
}

.bring-your-own {
  border-top: 1px solid hsl(var(--border));
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 40px;
  margin-top: 50px;
  padding: 35px 0 14px;
  display: grid;
}

.bring-your-own h2 {
  letter-spacing: -.04em;
  font-size: 25px;
}

.bring-your-own p {
  color: hsl(var(--muted-foreground));
  margin-top: 8px;
  font-size: 12px;
}

.bring-your-own form {
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  background: hsl(var(--surface));
  align-items: center;
  gap: 10px;
  padding: 7px;
  display: flex;
}

.bring-your-own input {
  width: 100%;
  min-width: 0;
  color: hsl(var(--foreground));
  background: none;
  border: 0;
  padding: 9px;
  font-size: 13px;
}

.bring-your-own button {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  border-radius: var(--radius-control);
  width: 38px;
  height: 38px;
}

.design-dock {
  z-index: 40;
  background: hsl(var(--background)/.96);
  border: 1px solid hsl(var(--border));
  max-width: calc(100% - 24px);
  box-shadow: 0 5px 30px hsl(var(--shadow-color)/.16);
  border-radius: var(--radius-control);
  backdrop-filter: blur(12px);
  align-items: center;
  gap: 5px;
  padding: 5px;
  display: flex;
  position: fixed;
  bottom: 17px;
  left: 50%;
  transform: translateX(-50%);
}

.design-dock > a, .design-dock > button {
  white-space: nowrap;
  min-height: 33px;
  color: hsl(var(--text-secondary));
  background: none;
  border: 0;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  padding: 9px 12px;
  font-size: 9px;
  display: flex;
}

.design-dock > a[aria-current="page"] {
  background: hsl(var(--brand-soft));
  color: hsl(var(--foreground));
  font-weight: 600;
}

.design-dock .dock-home {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: hsl(var(--muted-foreground));
  font-size: 8px;
}

.dock-divider {
  background: hsl(var(--border));
  flex: none;
  width: 1px;
  height: 16px;
}

.design-dock .sample-note {
  color: hsl(var(--muted-foreground));
  border-left: 1px solid hsl(var(--border));
  border-radius: 0;
  margin-left: 4px;
  font-size: 8px;
}

.dialog-open {
  overflow: hidden;
}

.example-dialog {
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius-lg);
  width: 1040px;
  max-width: calc(100% - 36px);
  max-height: calc(100dvh - 40px);
  color: hsl(var(--foreground));
  background: hsl(var(--surface-raised));
  overscroll-behavior: contain;
  padding: 0;
  overflow: auto;
  box-shadow: 0 40px 80px -20px #0009;
}

.example-dialog[open] {
  grid-template-columns: 1.1fr 1fr;
  display: grid;
}

.example-dialog::backdrop {
  backdrop-filter: blur(3px);
  background: #08050c99;
}

.dialog-close {
  z-index: 5;
  background: hsl(var(--surface-raised));
  border: 1px solid hsl(var(--border));
  border-radius: 50%;
  width: 34px;
  height: 34px;
  position: absolute;
  top: 10px;
  right: 10px;
  box-shadow: 0 2px 6px #0001;
}

.dialog-close svg {
  width: 16px;
  height: 16px;
}

.dialog-visual {
  background: hsl(var(--surface));
  border-right: 1px solid hsl(var(--border));
  justify-content: center;
  align-items: center;
  min-width: 0;
  padding: 26px;
  display: flex;
}

.dialog-visual > img {
  border-radius: 7px;
  width: 100%;
  max-height: 600px;
}

.dialog-visual > .interactive-art, .dialog-visual > .plan-art, .dialog-visual > .brief-art {
  border-radius: var(--radius-control);
  width: 100%;
  height: 350px;
}

.dialog-visual .interactive-art svg {
  height: 230px;
}

.dialog-visual .fake-slider {
  font-size: 12px;
}

.dialog-visual .plan-art h3 {
  margin-top: 20px;
  font-size: 49px;
}

.dialog-visual .plan-route {
  gap: 19px;
  margin-top: 25px;
}

.dialog-visual .plan-route b, .dialog-visual .plan-route span {
  font-size: 11px;
}

.dialog-visual .plan-tag {
  margin-top: 30px;
  font-size: 11px;
}

.dialog-visual .brief-art {
  padding: 35px;
}

.dialog-visual .brief-art h3 {
  margin: 26px 0;
  font-size: 38px;
}

.dialog-visual .brief-row {
  padding-block: 11px;
  font-size: 12px;
}

.dialog-content {
  padding: 49px 32px 32px;
}

.dialog-content > .kicker {
  font-size: 8px;
}

.dialog-content h2 {
  letter-spacing: -.045em;
  margin-top: 16px;
  font-size: 32px;
}

.dialog-content > p {
  color: hsl(var(--text-secondary));
  margin-top: 16px;
  font-size: 12px;
  line-height: 1.9;
}

.prompt-label {
  letter-spacing: .09em;
  color: hsl(var(--muted-foreground));
  margin-top: 25px;
  font-size: 8px;
}

blockquote {
  border-left: 2px solid hsl(var(--brand));
  background: hsl(var(--surface));
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  border-radius: 0 7px 7px 0;
  margin: 10px 0 0;
  padding: 12px 15px;
  font-size: 12px;
  line-height: 1.9;
}

.dialog-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin-top: 23px;
  display: flex;
}

.dialog-actions .button {
  gap: 15px;
  min-height: 44px;
  padding: 11px 14px;
  font-size: 11px;
}

.dialog-content p.handoff-note {
  margin-top: 10px;
  font-size: 10px;
}

.copy-status {
  min-height: 0;
  font-size: 11px;
  color: hsl(var(--positive)) !important;
}

.copy-status:empty {
  display: none;
}

.interactive-control {
  margin-top: 19px;
  font-size: 11px;
  line-height: 1.7;
  display: block;
}

.interactive-control output {
  float: right;
  color: hsl(var(--brand));
}

.interactive-control input {
  width: 100%;
  accent-color: hsl(var(--primary));
  min-height: 30px;
  margin: 8px 0;
  display: block;
}

.notes-content {
  grid-column: 1 / -1;
  max-width: 800px;
  padding: 45px;
}

.notes-content h2 {
  margin: 17px 0;
  font-size: 33px;
}

.notes-content p {
  color: hsl(var(--text-secondary));
  margin-top: 18px;
  font-size: 14px;
  line-height: 1.85;
}

.notes-content strong {
  color: hsl(var(--foreground));
  font-weight: 600;
}

.notes-content .text-link {
  margin-top: 15px;
}

@media (hover: hover) and (pointer: fine) {
  .button:hover {
    background: hsl(var(--primary-hover));
  }

  .button.secondary:hover {
    background: hsl(var(--surface-hover));
  }

  .text-link:hover {
    text-underline-offset: 4px;
    text-decoration: underline;
  }

  .icon-button:hover {
    background: hsl(var(--surface-raised));
  }

  .nav-links a:hover, .signin:hover, .footer a:hover {
    color: hsl(var(--brand));
  }

  .result-visual:hover .expand-button {
    opacity: 1;
  }

  .result-visual:hover {
    border-color: hsl(var(--brand));
  }

  .filter-list button:hover {
    background: hsl(var(--surface));
  }

  .interest-choice:hover > span {
    border-color: hsl(var(--brand));
  }

  .design-dock > a:hover, .design-dock > button:hover {
    background: hsl(var(--surface));
  }

  .stage-tabs button:not([aria-pressed="true"]):hover, .studio-rail > button:not([aria-pressed="true"]):hover {
    background: hsl(var(--surface-hover));
  }
}

@media (width <= 1100px) {
  .shell {
    width: calc(100% - 64px);
  }

  .nav-inner {
    gap: 20px;
  }

  .nav-links {
    gap: 18px;
  }

  .nav-links a, .signin {
    font-size: 10px;
  }

  .nav-actions {
    gap: 11px;
  }

  .gallery-hero {
    padding-top: 47px;
  }

  .gallery-hero h1 {
    font-size: 67px;
  }

  .featured-side .result-visual {
    height: 190px;
  }

  .featured-main .result-visual {
    min-height: 418px;
  }

  .gallery-more {
    gap: 25px;
  }

  .gallery-more h2 {
    font-size: 31px;
  }

  .filter-list {
    max-width: 400px;
  }

  .filter-list button {
    padding-inline: 10px;
    font-size: 9px;
  }

  .results-grid {
    gap: 30px 18px;
  }

  .results-grid .result-visual {
    height: 205px;
  }

  .result-caption h3 {
    font-size: 14px;
  }

  .results-grid .result-caption h3 {
    font-size: 13px;
  }

  .interactive-art {
    padding: 19px;
  }

  .interactive-art svg {
    height: 128px;
  }

  .fake-slider {
    margin-top: 7px;
    font-size: 8px;
  }

  .plan-art {
    padding: 20px;
  }

  .plan-art h3 {
    font-size: 26px;
  }

  .plan-route {
    gap: 8px;
    margin-top: 15px;
  }

  .plan-tag {
    margin-top: 10px;
  }

  .brief-art {
    padding: 19px;
  }

  .brief-art h3 {
    font-size: 23px;
  }

  .brief-row {
    padding-block: 6px;
    font-size: 8px;
  }

  .continuity {
    gap: 65px;
    padding-block: 80px;
  }

  .section-copy h2 {
    font-size: 41px;
  }

  .together {
    gap: 45px;
    padding: 40px;
  }

  .together h2 {
    font-size: 34px;
  }

  .shared-window {
    padding: 20px;
  }

  .shared-window .workspace-title {
    font-size: 9px;
  }

  .shared-badge {
    font-size: 7px;
  }

  .shared-line {
    font-size: 9px;
  }

  .closing {
    padding-block: 76px;
  }

  .closing > img {
    width: 90px;
    height: 90px;
    margin-right: 10px;
  }

  .closing h2 {
    font-size: 44px;
  }

  .footer {
    gap: 19px;
  }

  .footer nav {
    gap: 18px;
  }

  .footer > p {
    font-size: 9px;
  }

  .studio-hero-copy {
    column-gap: 60px;
  }

  .studio-hero-copy h1 {
    font-size: 57px;
  }

  .studio-hero-copy > p {
    font-size: 13px;
  }

  .studio-window-body {
    grid-template-columns: 185px 1fr;
    min-height: 405px;
  }

  .studio-rail {
    padding: 21px 10px;
  }

  .studio-output {
    padding-inline: 20px;
  }

  .stage-image {
    height: 304px;
  }

  .studio-rail > div:not(.rail-saved) {
    font-size: 8px;
  }

  .studio-intro h2 {
    font-size: 43px;
  }

  .benefit-row {
    gap: 35px;
  }

  .studio-ideas {
    padding-top: 65px;
  }

  .welcome {
    gap: 65px;
    padding-top: 50px;
  }

  .welcome-story h1 {
    font-size: 49px;
  }

  .welcome-form-wrap h2 {
    font-size: 31px;
  }

  .welcome-art {
    width: calc(100% - 25px);
  }

  .form-actions {
    gap: 15px;
  }

  .form-actions .button {
    gap: 14px;
    font-size: 11px;
  }

  .interest-choice > span {
    gap: 6px;
    padding: 11px;
    font-size: 10px;
  }

  .ideas-welcome h1 {
    font-size: 54px;
  }

  .dialog-content {
    padding: 45px 26px 26px;
  }

  .dialog-visual {
    padding: 20px;
  }

  .dialog-content h2 {
    font-size: 28px;
  }

  .dialog-content > p, .dialog-content blockquote {
    font-size: 11px;
  }

  .dialog-visual .plan-art h3 {
    font-size: 42px;
  }
}

@media (width <= 850px) {
  .shell {
    width: calc(100% - 48px);
  }

  .nav-links {
    display: none;
  }

  .nav-inner {
    height: 74px;
  }

  .nav-actions {
    gap: 14px;
  }

  .gallery-hero {
    padding-top: 44px;
    padding-bottom: 33px;
  }

  .gallery-hero h1 {
    font-size: 62px;
  }

  .gallery-hero > p {
    font-size: 14px;
  }

  .gallery-hero .eyebrow {
    font-size: 9px;
  }

  .hero-actions {
    gap: 22px;
  }

  .showcase-label {
    gap: 15px;
    font-size: 7px;
  }

  .showcase-label > span:last-child {
    font-size: 8px;
  }

  .featured-grid {
    grid-template-columns: 1.1fr 1fr;
    gap: 18px;
  }

  .featured-side .result-visual {
    height: 156px;
  }

  .featured-main .result-visual {
    min-height: 362px;
  }

  .featured-side .interactive-art {
    padding: 14px 18px;
  }

  .featured-side .interactive-art svg {
    height: 87px;
  }

  .featured-side .fake-slider {
    margin-top: 2px;
    font-size: 7px;
  }

  .featured-side .result-caption {
    gap: 4px;
    padding-top: 11px;
  }

  .featured-side .result-caption h3 {
    font-size: 12px;
  }

  .featured-side .kicker {
    font-size: 8px;
  }

  .result-arrow {
    width: 29px;
    height: 34px;
  }

  .featured-main .result-caption h3 {
    font-size: 13px;
  }

  .featured-main .result-caption p {
    font-size: 10px;
  }

  .gallery-more {
    padding-top: 65px;
    display: block;
  }

  .gallery-more h2 {
    font-size: 35px;
  }

  .filter-list {
    justify-content: flex-start;
    gap: 5px;
    max-width: none;
    margin-top: 24px;
  }

  .filter-list button {
    padding: 9px 13px;
    font-size: 10px;
  }

  .results-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 29px 20px;
  }

  .results-grid .result-visual {
    height: 223px;
  }

  .interactive-art {
    padding: 21px;
  }

  .interactive-art svg {
    height: 137px;
  }

  .brief-art {
    padding: 22px;
  }

  .brief-art h3 {
    font-size: 25px;
  }

  .brief-row {
    padding-block: 7px;
    font-size: 9px;
  }

  .plan-art {
    padding: 23px;
  }

  .plan-art h3 {
    font-size: 29px;
  }

  .plan-route {
    margin-top: 18px;
  }

  .continuity {
    gap: 35px;
    padding-block: 70px;
  }

  .section-copy h2 {
    font-size: 35px;
  }

  .section-copy > p {
    margin-top: 20px;
    font-size: 12px;
  }

  .section-copy .eyebrow {
    margin-bottom: 18px;
    font-size: 8px;
  }

  .workspace-story {
    padding: 20px 18px;
  }

  .workspace-title {
    gap: 8px;
    font-size: 10px;
  }

  .workspace-title > svg {
    width: 18px;
  }

  .workspace-title > div > span {
    font-size: 8px;
  }

  .workspace-status {
    font-size: 7px;
  }

  .source-stack {
    gap: 4px;
    margin-top: 17px;
    padding-bottom: 16px;
  }

  .source-stack > span {
    padding: 5px 6px;
    font-size: 7px;
  }

  .story-steps p {
    font-size: 10px;
  }

  .story-steps li > span:last-child {
    font-size: 9px;
  }

  .together {
    gap: 30px;
    padding: 30px;
  }

  .together .eyebrow {
    font-size: 8px;
  }

  .together h2 {
    margin-top: 17px;
    font-size: 31px;
  }

  .together > div > p {
    margin-top: 17px;
    font-size: 12px;
    line-height: 1.8;
  }

  .free-pill {
    align-items: flex-start;
    font-size: 9px;
  }

  .free-pill svg {
    flex: none;
  }

  .together .text-link {
    font-size: 10px;
  }

  .shared-window {
    padding: 18px;
  }

  .shared-window .workspace-title {
    flex-wrap: wrap;
    gap: 6px;
    font-size: 9px;
  }

  .shared-badge {
    margin-left: 24px;
  }

  .shared-line {
    gap: 6px;
    font-size: 8px;
    line-height: 1.7;
  }

  .shared-line svg {
    flex: none;
  }

  .shared-bottom {
    align-items: flex-start;
    font-size: 7px;
  }

  .shared-bottom svg {
    flex: none;
  }

  .shared-people {
    gap: 7px;
    padding-block: 18px;
  }

  .avatar {
    width: 30px;
    height: 30px;
    font-size: 9px;
  }

  .closing {
    gap: 25px;
  }

  .closing h2 {
    font-size: 39px;
  }

  .closing > img {
    display: none;
  }

  .closing > div:nth-child(2) > p {
    max-width: 230px;
    font-size: 9px;
  }

  .footer {
    flex-wrap: wrap;
    gap: 20px;
    padding-bottom: 95px;
  }

  .footer > p {
    display: none;
  }

  .footer > span {
    font-size: 8px;
  }

  .studio-hero {
    padding-top: 44px;
    padding-bottom: 45px;
  }

  .studio-hero-copy {
    grid-template-columns: 1.1fr .9fr;
    column-gap: 40px;
  }

  .studio-hero-copy h1 {
    font-size: 46px;
  }

  .studio-hero-copy > p {
    font-size: 12px;
    line-height: 1.8;
  }

  .studio-hero-copy > .eyebrow {
    font-size: 9px;
  }

  .studio-main {
    margin-top: 35px;
  }

  .stage-heading > span {
    max-width: 220px;
    font-size: 7px;
  }

  .stage-tabs button {
    padding: 8px 10px;
    font-size: 8px;
  }

  .studio-window-body {
    grid-template-columns: 155px 1fr;
    min-height: 370px;
  }

  .studio-rail {
    padding: 17px 8px;
  }

  .studio-rail > div:not(.rail-saved) {
    gap: 6px;
    padding-inline: 5px;
    font-size: 7px;
  }

  .studio-rail > button {
    gap: 6px;
    padding: 8px;
    font-size: 8px;
  }

  .studio-rail svg {
    width: 11px;
    height: 11px;
  }

  .rail-label {
    margin-left: 5px;
    font-size: 6px;
  }

  .rail-saved {
    gap: 5px;
    font-size: 7px;
  }

  .studio-output {
    padding: 14px 15px 0;
  }

  .stage-image {
    height: 272px;
  }

  .stage-prompt {
    padding: 13px 0;
    font-size: 8px;
  }

  .studio-window-footer {
    gap: 15px;
    padding: 7px 15px;
    font-size: 8px;
  }

  .studio-window-footer .text-link {
    white-space: nowrap;
    gap: 8px;
    font-size: 9px;
  }

  .studio-intro {
    padding: 37px 0 60px;
  }

  .studio-intro > p {
    font-size: 20px;
  }

  .studio-intro h2 {
    font-size: 37px;
  }

  .benefit-row {
    gap: 25px;
    margin-top: 35px;
  }

  .benefit-row > div {
    padding-left: 24px;
  }

  .benefit-row h3 {
    font-size: 14px;
  }

  .benefit-row p {
    font-size: 11px;
  }

  .studio-ideas {
    padding-top: 60px;
  }

  .section-header h2 {
    font-size: 36px;
  }

  .section-header .text-link {
    gap: 8px;
    font-size: 10px;
  }

  .studio-ideas .results-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
  }

  .studio-ideas .result-visual {
    height: 165px;
  }

  .studio-ideas .result-caption {
    gap: 5px;
  }

  .studio-ideas .result-caption h3 {
    font-size: 12px;
  }

  .studio-ideas .result-caption p {
    font-size: 10px;
  }

  .studio-ideas .interactive-art {
    padding: 15px;
  }

  .studio-ideas .interactive-art svg {
    height: 91px;
  }

  .studio-ideas .interactive-art .art-kicker {
    font-size: 6px;
  }

  .studio-ideas .brief-art {
    padding: 15px;
  }

  .studio-ideas .brief-art h3 {
    margin-block: 9px;
    font-size: 20px;
  }

  .studio-ideas .brief-row {
    padding-block: 4px;
    font-size: 7px;
  }

  .studio-ideas .brief-top .art-kicker {
    font-size: 6px;
  }

  .studio-ideas .mini-avatars i {
    width: 17px;
    height: 17px;
    font-size: 6px;
  }

  .welcome {
    gap: 35px;
    padding-top: 40px;
  }

  .welcome-story h1 {
    font-size: 42px;
  }

  .welcome-story .eyebrow {
    font-size: 7px;
  }

  .welcome-story > p {
    font-size: 12px;
  }

  .welcome-form-wrap h2 {
    font-size: 29px;
  }

  .welcome-form-wrap > p {
    font-size: 12px;
  }

  .interest-grid {
    gap: 8px;
  }

  .interest-choice > span {
    gap: 6px;
    padding: 10px 8px;
    font-size: 9px;
  }

  .interest-choice svg {
    width: 14px;
    height: 14px;
  }

  .form-actions {
    flex-wrap: wrap;
    gap: 7px 20px;
  }

  .form-actions .button {
    width: 100%;
  }

  .skip-setup {
    margin: auto;
    font-size: 10px;
  }

  .form-reassurance {
    align-items: flex-start;
    font-size: 8px;
  }

  .welcome-buck img {
    width: 90px;
    height: 90px;
  }

  .welcome-art-caption {
    max-width: 240px;
    font-size: 8px;
  }

  .ideas-welcome h1 {
    font-size: 48px;
  }

  .ideas-welcome p {
    font-size: 13px;
  }

  .ideas-welcome > img {
    width: 110px;
    height: 110px;
  }

  .ideas-topline > span {
    font-size: 9px;
  }

  .bring-your-own {
    gap: 25px;
  }

  .bring-your-own h2 {
    font-size: 22px;
  }

  .bring-your-own p {
    font-size: 11px;
  }

  .example-dialog {
    width: 740px;
  }

  .dialog-visual {
    padding: 18px;
  }

  .dialog-content {
    padding: 45px 22px 24px;
  }

  .dialog-content h2 {
    font-size: 26px;
  }

  .dialog-visual > .interactive-art, .dialog-visual > .plan-art, .dialog-visual > .brief-art {
    height: 300px;
  }

  .dialog-visual .interactive-art svg {
    height: 180px;
  }

  .dialog-visual .fake-slider {
    font-size: 9px;
  }

  .dialog-visual .plan-art h3 {
    font-size: 36px;
  }

  .dialog-visual .plan-route {
    gap: 10px;
  }

  .dialog-visual .plan-route span, .dialog-visual .plan-route b {
    font-size: 9px;
  }

  .dialog-visual .brief-art {
    padding: 23px;
  }

  .dialog-visual .brief-art h3 {
    font-size: 29px;
  }

  .dialog-visual .brief-row {
    font-size: 10px;
  }

  .header-reassurance {
    margin-left: 10px;
    font-size: 10px;
  }
}

@media (width <= 600px) {
  html {
    scroll-padding-top: 24px;
  }

  .shell {
    width: calc(100% - 40px);
  }

  .nav-inner {
    gap: 12px;
    height: 69px;
  }

  .brand {
    gap: 5px;
    font-size: 23px;
  }

  .brand img {
    width: 31px;
    height: 35px;
  }

  .nav-actions {
    gap: 4px;
  }

  .nav-actions > .button, .signin {
    display: none;
  }

  .theme-button {
    width: 40px;
  }

  .menu-button {
    width: 40px;
    display: inline-flex;
  }

  .header-reassurance {
    display: none;
  }

  .gallery-hero {
    padding-top: 30px;
    padding-bottom: 27px;
  }

  .gallery-hero .eyebrow {
    margin-bottom: 18px;
    font-size: 8px;
  }

  .gallery-hero h1 {
    letter-spacing: -.055em;
    font-size: clamp(40px, 10.9vw, 58px);
    line-height: 1.08;
  }

  .gallery-hero > p {
    max-width: 355px;
    margin-top: 21px;
    font-size: 13px;
    line-height: 1.85;
  }

  .gallery-hero > p br {
    display: none;
  }

  .hero-actions {
    flex-direction: column;
    gap: 2px;
    margin-top: 23px;
  }

  .hero-actions .button {
    gap: 26px;
    width: fit-content;
    min-height: 50px;
    padding-inline: 20px;
    font-size: 12px;
  }

  .hero-actions .text-link {
    padding-block: 11px;
    font-size: 11px;
  }

  .hero-reassurance {
    margin-top: 6px;
    font-size: 9px;
  }

  .showcase-label {
    padding-bottom: 12px;
    font-size: 7px;
    line-height: 1.8;
  }

  .showcase-label > span:last-child {
    display: none;
  }

  .featured-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .featured-main {
    grid-row: auto;
  }

  .featured-main .result-visual {
    aspect-ratio: 1.23;
    height: auto;
    min-height: 0;
  }

  .featured-side .result-visual {
    height: 210px;
  }

  .featured-side .visual-slides > img {
    object-position: 50% 35%;
  }

  .featured-side .interactive-art {
    padding: 24px;
  }

  .featured-side .interactive-art svg {
    height: 125px;
  }

  .featured-side .fake-slider {
    margin-top: 4px;
    font-size: 9px;
  }

  .featured-side .art-kicker {
    font-size: 8px;
  }

  .featured-main .result-caption h3, .featured-side .result-caption h3 {
    font-size: 15px;
  }

  .featured-main .result-caption p {
    font-size: 11px;
  }

  .result-caption {
    gap: 12px;
    padding-top: 13px;
  }

  .featured-side .result-caption p {
    font-size: 11px;
    display: block;
  }

  .result-arrow {
    width: 38px;
    height: 44px;
  }

  .gallery-more {
    margin-bottom: 23px;
    padding-top: 58px;
  }

  .gallery-more h2 {
    font-size: 31px;
    line-height: 1.15;
  }

  .gallery-more .eyebrow {
    margin-bottom: 16px;
    font-size: 8px;
  }

  .filter-list {
    gap: 3px;
    margin-top: 21px;
  }

  .filter-list button {
    min-height: 40px;
    padding: 9px 11px;
    font-size: 9px;
  }

  .results-grid {
    grid-template-columns: 1fr;
    gap: 29px;
  }

  .results-grid .result-visual {
    height: 245px;
  }

  .results-grid .result-caption h3 {
    max-width: 290px;
    font-size: 15px;
  }

  .results-grid .result-caption p {
    max-width: 300px;
    font-size: 12px;
  }

  .result-caption .kicker {
    font-size: 8px;
  }

  .interactive-art {
    padding: 24px;
  }

  .interactive-art svg {
    height: 155px;
  }

  .fake-slider {
    font-size: 9px;
  }

  .plan-art {
    padding: 25px;
  }

  .plan-art h3 {
    font-size: 35px;
  }

  .plan-route {
    gap: 13px;
    margin-top: 18px;
  }

  .plan-route > span, .plan-route b {
    font-size: 9px;
  }

  .plan-tag {
    margin-top: 16px;
    font-size: 9px;
  }

  .brief-art {
    padding: 25px;
  }

  .brief-art h3 {
    margin: 10px 0 15px;
    font-size: 30px;
  }

  .brief-top .art-kicker {
    font-size: 8px;
  }

  .brief-row {
    padding-block: 8px;
    font-size: 10px;
  }

  .gallery-caption {
    max-width: 290px;
    margin: 29px auto 0;
    font-size: 10px;
    line-height: 1.9;
  }

  .continuity {
    grid-template-columns: 1fr;
    gap: 31px;
    padding-block: 62px;
  }

  .section-copy h2 {
    font-size: 38px;
  }

  .section-copy > p {
    max-width: 365px;
    font-size: 13px;
    line-height: 1.85;
  }

  .section-copy .text-link {
    margin-top: 12px;
    font-size: 12px;
  }

  .section-copy .eyebrow {
    font-size: 8px;
  }

  .workspace-story {
    padding: 23px;
  }

  .workspace-title {
    font-size: 11px;
  }

  .workspace-title > div > span {
    font-size: 9px;
  }

  .workspace-status {
    font-size: 8px;
  }

  .source-stack {
    gap: 6px;
    margin-top: 20px;
    padding-bottom: 18px;
  }

  .source-stack > span {
    padding: 6px 7px;
    font-size: 8px;
  }

  .story-steps {
    margin-top: 21px;
  }

  .story-steps p {
    font-size: 11px;
  }

  .story-steps li > span:last-child {
    font-size: 10px;
  }

  .story-steps small {
    font-size: 8px;
  }

  .together {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 27px 23px;
  }

  .together > div:last-child {
    grid-row: 1;
  }

  .together .eyebrow {
    font-size: 7px;
  }

  .together h2 {
    margin-top: 17px;
    font-size: 33px;
    line-height: 1.15;
  }

  .together > div > p {
    font-size: 12px;
    line-height: 1.9;
  }

  .free-pill {
    align-items: center;
    margin-top: 19px;
    font-size: 10px;
  }

  .together .text-link {
    margin-top: 8px;
    font-size: 11px;
  }

  .shared-window {
    padding: 22px;
  }

  .shared-window .workspace-title {
    flex-wrap: nowrap;
    gap: 7px;
    font-size: 10px;
  }

  .shared-badge {
    margin-left: auto;
    font-size: 7px;
  }

  .shared-people {
    gap: 9px;
    padding-block: 19px;
  }

  .avatar {
    width: 33px;
    height: 33px;
    font-size: 9px;
  }

  .shared-line {
    gap: 8px;
    font-size: 9px;
  }

  .shared-bottom {
    gap: 7px;
    font-size: 8px;
  }

  .closing {
    padding-block: 62px;
    display: block;
    position: relative;
  }

  .closing .eyebrow {
    margin-bottom: 19px;
    font-size: 8px;
  }

  .closing h2 {
    font-size: 40px;
  }

  .closing > div:nth-child(2) {
    margin-top: 25px;
  }

  .closing > div:nth-child(2) > p {
    max-width: 245px;
    font-size: 10px;
  }

  .closing .button {
    font-size: 12px;
  }

  .footer {
    gap: 23px;
    padding: 26px 0 105px;
  }

  .footer > .brand {
    width: 100%;
    font-size: 24px;
  }

  .footer nav {
    gap: 23px;
    margin: 0;
    font-size: 10px;
  }

  .footer > span {
    margin-left: auto;
    font-size: 8px;
  }

  .studio-hero {
    padding-top: 37px;
    padding-bottom: 35px;
  }

  .studio-hero-copy {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .studio-hero-copy > .eyebrow {
    margin-bottom: 20px;
    font-size: 8px;
    line-height: 1.8;
  }

  .studio-hero-copy h1 {
    font-size: clamp(38px, 10.4vw, 56px);
    line-height: 1.08;
  }

  .studio-hero-copy > p {
    max-width: 360px;
    margin-top: 22px;
    padding-top: 0;
    font-size: 13px;
    line-height: 1.85;
  }

  .studio-hero-copy .hero-actions {
    align-items: flex-start;
    gap: 15px;
    margin-top: 25px;
  }

  .studio-free {
    font-size: 9px;
  }

  .studio-main {
    margin-top: 32px;
  }

  .stage-heading {
    margin-bottom: 12px;
    display: block;
  }

  .stage-heading > span {
    max-width: none;
    margin-bottom: 12px;
    font-size: 7px;
    display: block;
  }

  .stage-tabs {
    gap: 3px;
    width: fit-content;
    padding: 4px;
  }

  .stage-tabs button {
    min-height: 35px;
    padding: 7px 12px;
    font-size: 9px;
  }

  .studio-window-header {
    height: 39px;
    padding-inline: 12px;
  }

  .studio-window-header > span:nth-child(4) {
    gap: 6px;
    margin-left: 10px;
    font-size: 9px;
  }

  .studio-window-header svg {
    width: 12px;
    height: 12px;
  }

  .studio-window-header .mini-avatars i {
    width: 19px;
    height: 19px;
    font-size: 6px;
  }

  .studio-window-body {
    min-height: 0;
    display: block;
  }

  .studio-rail {
    display: none;
  }

  .studio-output {
    padding: 12px 12px 0;
  }

  .output-title {
    margin-bottom: 10px;
    font-size: 9px;
  }

  .output-title .sample-tag {
    padding: 3px 6px;
    font-size: 6px;
  }

  .stage-image {
    aspect-ratio: 1.35;
    border-radius: 5px;
    height: auto;
  }

  .stage-image > img {
    object-fit: contain;
    height: 100%;
  }

  .stage-prompt {
    text-align: center;
    gap: 6px;
    padding: 12px 5px;
    font-size: 8px;
    line-height: 1.7;
  }

  .stage-prompt > img {
    flex: none;
    width: 21px;
    height: 21px;
  }

  .studio-window-footer {
    flex-wrap: wrap;
    gap: 7px;
    padding: 10px 12px;
    font-size: 8px;
    line-height: 1.7;
  }

  .studio-window-footer .text-link {
    min-height: 32px;
    margin-left: auto;
    font-size: 9px;
  }

  .studio-intro {
    padding: 25px 0 48px;
  }

  .studio-intro > p {
    max-width: 290px;
    margin: 0 auto 17px;
    font-size: 20px;
  }

  .studio-intro h2 {
    font-size: 32px;
    line-height: 1.15;
  }

  .benefit-row {
    text-align: left;
    grid-template-columns: 1fr;
    gap: 24px;
    margin: 32px 12px 0;
  }

  .benefit-row > div {
    padding-left: 29px;
  }

  .benefit-row > div > span {
    font-size: 10px;
  }

  .benefit-row h3 {
    font-size: 16px;
  }

  .benefit-row p {
    max-width: 280px;
    margin-top: 7px;
    font-size: 12px;
  }

  .studio-ideas {
    padding-top: 51px;
  }

  .section-header {
    margin-bottom: 23px;
    display: block;
  }

  .section-header h2 {
    font-size: 34px;
  }

  .section-header .eyebrow {
    margin-bottom: 17px;
    font-size: 8px;
  }

  .section-header .text-link {
    margin-top: 12px;
    font-size: 11px;
  }

  .studio-ideas .results-grid {
    grid-template-columns: 1fr;
    gap: 27px;
  }

  .studio-ideas .result-visual {
    height: 235px;
  }

  .studio-ideas .result-caption h3 {
    font-size: 15px;
  }

  .studio-ideas .result-caption p {
    font-size: 12px;
  }

  .studio-ideas .interactive-art {
    padding: 24px;
  }

  .studio-ideas .interactive-art svg {
    height: 145px;
  }

  .studio-ideas .interactive-art .art-kicker {
    font-size: 8px;
  }

  .studio-ideas .brief-art {
    padding: 25px;
  }

  .studio-ideas .brief-art h3 {
    margin-block: 12px;
    font-size: 29px;
  }

  .studio-ideas .brief-row {
    padding-block: 7px;
    font-size: 10px;
  }

  .studio-ideas .brief-top .art-kicker {
    font-size: 8px;
  }

  .studio-ideas .mini-avatars i {
    width: 23px;
    height: 23px;
    font-size: 7px;
  }

  .welcome {
    grid-template-columns: 1fr;
    gap: 30px;
    padding-top: 31px;
    padding-bottom: 115px;
  }

  .welcome-story {
    padding-top: 0;
  }

  .welcome-story h1 {
    font-size: 36px;
    line-height: 1.1;
  }

  .welcome-story h1 > br, .welcome-story h1 > span > br {
    display: none;
  }

  .welcome-story .eyebrow {
    margin-bottom: 16px;
    font-size: 7px;
  }

  .welcome-story > p {
    margin-top: 17px;
    font-size: 12px;
  }

  .welcome-story > p br, .welcome-art {
    display: none;
  }

  .welcome-art-caption {
    background: hsl(var(--surface));
    border: 1px solid hsl(var(--border));
    border-radius: 8px;
    max-width: none;
    margin-top: 15px;
    padding: 11px 12px;
    font-size: 10px;
  }

  .welcome-form-wrap {
    padding-top: 0;
  }

  .step-label {
    margin-bottom: 21px;
    font-size: 9px;
  }

  .welcome-form-wrap h2 {
    font-size: 29px;
  }

  .welcome-form-wrap > p {
    margin-top: 9px;
    font-size: 12px;
  }

  #welcome-form {
    margin-top: 24px;
  }

  #welcome-form > label, legend {
    margin-bottom: 10px;
    font-size: 12px;
  }

  #welcome-form > input {
    min-height: 50px;
    padding: 12px;
    font-size: 16px;
  }

  .interest-grid {
    gap: 9px;
  }

  .interest-choice > span {
    gap: 8px;
    min-height: 51px;
    padding: 12px;
    font-size: 11px;
  }

  .interest-choice svg {
    width: 17px;
    height: 17px;
  }

  fieldset {
    margin-block: 25px;
  }

  .form-actions {
    gap: 7px;
    margin-top: 25px;
  }

  .form-actions .button {
    gap: 25px;
    min-height: 50px;
    font-size: 12px;
  }

  .skip-setup {
    font-size: 11px;
  }

  .form-reassurance {
    justify-content: center;
    margin-top: 10px;
    font-size: 9px;
  }

  .form-reassurance svg {
    width: 13px;
    height: 13px;
  }

  .ideas-page {
    padding-top: 34px;
    padding-bottom: 40px;
  }

  .ideas-welcome {
    gap: 10px;
    position: relative;
  }

  .ideas-welcome .eyebrow {
    margin-bottom: 18px;
    font-size: 8px;
  }

  .ideas-welcome h1 {
    font-size: 43px;
  }

  .ideas-welcome p {
    max-width: 320px;
    margin-top: 19px;
    font-size: 12px;
    line-height: 1.9;
  }

  .ideas-welcome > img {
    width: 62px;
    height: 62px;
    margin: 0;
    position: absolute;
    top: -6px;
    right: 0;
    transform: rotate(8deg);
  }

  .ideas-welcome > div {
    min-width: 0;
    padding-top: 0;
  }

  .ideas-welcome .eyebrow {
    max-width: 240px;
  }

  .project-ribbon {
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 24px;
    padding: 11px 12px;
    font-size: 10px;
  }

  .project-ribbon > span {
    font-size: 9px;
  }

  .project-ribbon > strong {
    max-width: 100%;
  }

  .project-ribbon .text-link {
    min-height: 30px;
    padding-block: 3px;
    font-size: 9px;
  }

  .ideas-topline {
    margin: 30px 0 19px;
    display: block;
  }

  .ideas-topline h2 {
    font-size: 19px;
  }

  .ideas-topline > span {
    margin-top: 7px;
    font-size: 10px;
    display: block;
  }

  .bring-your-own {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 35px;
    padding-top: 26px;
  }

  .bring-your-own h2 {
    font-size: 24px;
  }

  .bring-your-own p {
    font-size: 12px;
  }

  .bring-your-own input {
    font-size: 16px;
  }

  .bring-your-own button {
    width: 44px;
    height: 44px;
  }

  .design-dock {
    bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    border-radius: 9px;
    gap: 1px;
    max-width: calc(100% - 20px);
    padding: 4px;
  }

  .design-dock > a, .design-dock > button {
    min-height: 36px;
    padding: 7px 9px;
    font-size: 8px;
  }

  .design-dock .dock-home {
    padding-inline: 10px;
    font-size: 0;
  }

  .design-dock .dock-home:before {
    content: "Review";
    letter-spacing: 0;
    text-transform: none;
    font-size: 8px;
  }

  .design-dock .sample-note {
    margin-left: 1px;
    padding-inline: 11px;
    font-size: 0;
  }

  .design-dock .sample-note:before {
    content: "ⓘ";
    font-size: 16px;
  }

  .example-dialog {
    border-radius: var(--radius-lg);
    max-width: calc(100% - 24px);
    max-height: calc(100dvh - 24px);
  }

  .example-dialog[open] {
    display: block;
  }

  .dialog-visual {
    border-right: 0;
    border-bottom: 1px solid hsl(var(--border));
    padding: 18px;
  }

  .dialog-visual > img {
    width: 100%;
    max-height: 285px;
  }

  .dialog-content {
    padding: 25px 23px;
  }

  .dialog-content h2 {
    margin-top: 13px;
    font-size: 29px;
  }

  .dialog-content > p {
    margin-top: 13px;
    font-size: 12px;
    line-height: 1.85;
  }

  .dialog-content blockquote {
    padding: 13px 15px;
    font-size: 12px;
    line-height: 1.85;
  }

  .prompt-label {
    margin-top: 21px;
  }

  .dialog-actions {
    gap: 9px;
    margin-top: 21px;
  }

  .dialog-actions .button {
    min-height: 46px;
    padding: 12px 14px;
    font-size: 11px;
  }

  .dialog-close {
    width: 38px;
    height: 38px;
    top: 9px;
    right: 9px;
  }

  .dialog-visual > .interactive-art, .dialog-visual > .plan-art, .dialog-visual > .brief-art {
    height: 260px;
  }

  .dialog-visual .interactive-art svg {
    height: 160px;
  }

  .dialog-visual .plan-art h3 {
    margin-top: 17px;
    font-size: 37px;
  }

  .dialog-visual .plan-route {
    margin-top: 22px;
  }

  .dialog-visual .plan-tag {
    margin-top: 18px;
  }

  .dialog-visual .brief-art h3 {
    margin: 16px 0;
    font-size: 29px;
  }

  .dialog-visual .brief-row {
    padding-block: 7px;
    font-size: 10px;
  }

  .notes-content {
    padding: 42px 24px 26px;
  }

  .notes-content h2 {
    font-size: 29px;
  }

  .notes-content p {
    font-size: 13px;
  }

  .interactive-control input {
    min-height: 44px;
  }

  .interactive-control {
    font-size: 11px;
  }
}

@media (width <= 370px) {
  .shell {
    width: calc(100% - 32px);
  }

  .gallery-hero h1 {
    font-size: 40px;
  }

  .gallery-hero > .eyebrow {
    font-size: 7px;
  }

  .gallery-hero > p {
    font-size: 12px;
  }

  .gallery-more h2 {
    font-size: 29px;
  }

  .filter-list button {
    padding-inline: 10px;
    font-size: 8px;
  }

  .together {
    padding: 24px 19px;
  }

  .together h2 {
    font-size: 30px;
  }

  .together .eyebrow {
    font-size: 6px;
  }

  .shared-window {
    padding: 17px;
  }

  .shared-window .workspace-title {
    gap: 6px;
    font-size: 9px;
  }

  .shared-badge {
    font-size: 6px;
  }

  .free-pill {
    font-size: 9px;
  }

  .section-copy h2 {
    font-size: 34px;
  }

  .studio-hero-copy h1 {
    font-size: 38px;
  }

  .studio-hero-copy > .eyebrow {
    font-size: 7px;
  }

  .studio-window-header > span:nth-child(4) {
    font-size: 8px;
  }

  .studio-intro h2 {
    font-size: 30px;
  }

  .welcome-story h1 {
    font-size: 33px;
  }

  .interest-choice > span {
    gap: 6px;
    padding: 11px;
    font-size: 10px;
  }

  .ideas-welcome h1 {
    font-size: 38px;
  }

  .ideas-welcome > img {
    width: 52px;
    height: 52px;
  }

  .ideas-welcome .eyebrow {
    max-width: 215px;
    font-size: 7px;
  }

  .project-ribbon > strong {
    font-size: 10px;
  }

  .dialog-content {
    padding-inline: 20px;
  }

  .dialog-content h2 {
    font-size: 27px;
  }

  .dialog-actions .button {
    gap: 9px;
    padding-inline: 11px;
    font-size: 10px;
  }

  .design-dock > a, .design-dock > button {
    padding-inline: 8px;
  }

  .workspace-story {
    padding: 20px;
  }

  .workspace-title {
    font-size: 10px;
  }
}

@media (pointer: coarse) {
  .icon-button, .result-arrow, .menu-button {
    min-width: 44px;
    min-height: 44px;
  }

  .filter-list button, .stage-tabs button, .design-dock > a, .design-dock > button {
    min-height: 44px;
  }

  .dialog-close {
    width: 44px;
    height: 44px;
  }

  .interest-choice > span {
    min-height: 52px;
  }

  input, textarea {
    font-size: 16px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *, :before, :after {
    transition: none !important;
    animation: none !important;
  }
}

.gallery-hero > p {
  max-width: 700px;
}

.proof-strip {
  color: hsl(var(--text-secondary));
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 25px;
  margin-top: 24px;
  font-size: 11px;
  display: flex;
}

.proof-strip > span {
  align-items: center;
  gap: 7px;
  display: inline-flex;
}

.proof-strip svg {
  width: 15px;
  height: 15px;
  color: hsl(var(--positive));
}

.studio-hero > .proof-strip {
  margin-top: 28px;
}

.audience-section {
  padding-block: 95px 55px;
}

.audience-heading {
  justify-content: space-between;
  align-items: flex-end;
  gap: 35px;
  display: flex;
}

.audience-heading h2 {
  margin-top: 16px;
}

.audience-heading > p {
  max-width: 340px;
  color: hsl(var(--text-secondary));
  font-size: 14px;
  line-height: 1.8;
}

.audience-section .filter-list {
  justify-content: flex-start;
  max-width: none;
  margin-top: 32px;
}

.audience-section .filter-list button {
  min-height: 42px;
  padding-inline: 17px;
  font-size: 12px;
}

.audience-description {
  max-width: 760px;
  min-height: 44px;
  color: hsl(var(--muted-foreground));
  margin: 20px 0 18px;
  font-size: 13px;
  line-height: 1.7;
}

.research-art, .lesson-art, .analysis-art, .family-art, .talk-art {
  text-align: left;
  width: 100%;
  height: 100%;
  padding: 26px;
  position: relative;
  overflow: hidden;
}

.research-art {
  color: #3e2e52;
  background: #e7e0f0;
}

.research-art h3, .family-art h3, .analysis-art h3, .lesson-art h3 {
  letter-spacing: -.04em;
  margin-top: 14px;
  font-size: 27px;
  line-height: 1.08;
}

.research-art .art-kicker, .family-art .art-kicker, .lesson-art .art-kicker, .analysis-art .art-kicker {
  font-size: 8px;
}

.research-matrix {
  grid-template-columns: 1.7fr repeat(3, 1fr);
  align-items: center;
  margin-top: 19px;
  font-size: 8px;
  line-height: 1.5;
  display: grid;
}

.research-matrix > * {
  text-align: center;
  border-bottom: 1px solid #76658944;
  padding: 6px 0;
  font-style: normal;
}

.research-matrix > b {
  text-align: left;
  font-weight: 500;
}

.research-matrix > span {
  font-size: 7px;
}

.research-foot, .chart-foot {
  margin-top: 12px;
  font-size: 8px;
  line-height: 1.5;
  display: block;
}

.family-art {
  color: #295347;
  background: #dfede5;
}

.family-art h3 {
  font-family: var(--font-serif);
  letter-spacing: -.03em;
  font-size: 32px;
  font-weight: 500;
}

.family-days {
  gap: 9px;
  margin-top: 22px;
  display: flex;
}

.family-days > span {
  border-top: 1px solid #86aa97;
  flex: 1;
  padding-top: 8px;
}

.family-days b {
  letter-spacing: .08em;
  font-size: 8px;
  font-weight: 500;
  display: block;
}

.family-days i {
  margin-top: 6px;
  font-size: 9px;
  font-style: normal;
  display: block;
}

.family-note {
  margin-top: 18px;
  font-size: 9px;
  display: block;
}

.lesson-art {
  color: #584627;
  background: #f3e4c1;
}

.lesson-art h3 {
  max-width: 220px;
}

.lesson-subject {
  letter-spacing: .07em;
  margin-top: 11px;
  font-size: 7px;
  display: block;
}

.lesson-steps {
  z-index: 1;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 20px;
  display: grid;
  position: relative;
}

.lesson-steps > span {
  align-items: center;
  gap: 7px;
  font-size: 8px;
  line-height: 1.5;
  display: flex;
}

.lesson-steps b {
  font-family: var(--font-serif);
  font-size: 20px;
  font-weight: 500;
}

.lesson-sticker {
  color: #482b69;
  width: 54px;
  height: 54px;
  font-size: 17px;
  font-family: var(--font-serif);
  background: #d6c7e9;
  border-radius: 50%;
  place-items: center;
  display: grid;
  position: absolute;
  top: 30px;
  right: 20px;
  transform: rotate(12deg);
}

.analysis-art {
  color: #f6efdf;
  background: #292039;
}

.analysis-art h3 {
  font-size: 26px;
}

.chart-art {
  align-items: flex-end;
  gap: 14px;
  height: 83px;
  display: flex;
  position: absolute;
  bottom: 38px;
  left: 45%;
  right: 25px;
}

.chart-art > div {
  flex-direction: column;
  flex: 1;
  justify-content: flex-end;
  gap: 5px;
  height: 100%;
  display: flex;
}

.chart-art i {
  background: #d1b3e5;
  border-radius: 3px 3px 0 0;
  min-height: 10px;
  display: block;
}

.chart-art > div:last-child i {
  background: #efca65;
}

.chart-art span {
  text-align: center;
  color: #e0d2eb;
  font-size: 7px;
}

.chart-foot {
  color: #e0d2eb;
  font-size: 7px;
  position: absolute;
  bottom: 12px;
  left: 26px;
  right: 15px;
}

.talk-art {
  text-align: center;
  background: hsl(var(--surface-raised));
  align-content: center;
  justify-items: center;
  display: grid;
}

.talk-art img {
  object-fit: contain;
  width: 150px;
  height: 150px;
}

.talk-art h3 {
  margin-top: 20px;
  font-size: 26px;
}

.talk-art p {
  color: hsl(var(--text-secondary));
  margin-top: 10px;
  font-size: 14px;
}

.featured-side .research-art {
  padding: 21px 30px;
}

.featured-side .research-art h3 {
  width: 50%;
  margin-top: 18px;
  font-size: 32px;
}

.featured-side .research-matrix {
  width: 42%;
  font-size: 8px;
  position: absolute;
  top: 38px;
  right: 27px;
}

.featured-side .research-foot {
  margin-top: 21px;
}

.featured-side .family-art {
  padding: 23px 30px;
}

.featured-side .family-art h3 {
  font-size: 32px;
}

.featured-side .family-days {
  flex-direction: column;
  gap: 7px;
  width: 43%;
  margin: 0;
  position: absolute;
  top: 55px;
  right: 25px;
}

.featured-side .family-days > span {
  justify-content: space-between;
  gap: 7px;
  padding-top: 6px;
  display: flex;
}

.featured-side .family-days i {
  margin-top: 0;
}

.featured-side .family-note {
  max-width: 47%;
  margin-top: 19px;
  font-size: 8px;
}

.meet-buck {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 85px;
  padding-block: 72px 90px;
  display: grid;
}

.buck-scene {
  background: hsl(var(--surface-raised));
  border: 1px solid hsl(var(--border-soft));
  border-radius: 20px;
  min-height: 400px;
  padding: 20px 37px 28px;
}

.buck-intro {
  justify-content: center;
  align-items: center;
  gap: 22px;
  display: flex;
}

.buck-intro img {
  object-fit: contain;
  width: 155px;
  height: 175px;
}

.buck-intro > span {
  letter-spacing: .12em;
  max-width: 110px;
  color: hsl(var(--muted-foreground));
  font-size: 10px;
  line-height: 1.7;
}

.buck-bubble {
  border: 1px solid hsl(var(--border));
  border-radius: 14px;
  padding: 15px 20px;
  font-size: 14px;
  line-height: 1.8;
}

.human-bubble {
  background: hsl(var(--background));
  border-bottom-right-radius: 3px;
  margin: 8px 0 15px 50px;
}

.buck-answer {
  background: hsl(var(--surface));
  border-bottom-left-radius: 3px;
  margin-right: 25px;
}

.buck-answer > span {
  color: hsl(var(--text-secondary));
  align-items: center;
  gap: 7px;
  margin-bottom: 5px;
  font-size: 12px;
  display: flex;
}

.buck-answer svg {
  width: 16px;
  height: 16px;
  color: hsl(var(--brand));
}

.conversation-label {
  text-align: right;
  color: hsl(var(--muted-foreground));
  margin-top: 15px;
  font-size: 10px;
  display: block;
}

.buck-copy h2 {
  margin-top: 20px;
  font-size: 43px;
  line-height: 1.13;
}

.buck-copy > p {
  color: hsl(var(--text-secondary));
  margin-top: 22px;
  font-size: 14px;
  line-height: 1.9;
}

.buck-copy > p + p {
  color: hsl(var(--foreground));
  margin-top: 12px;
}

.buck-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  margin-top: 26px;
  display: flex;
}

.buck-actions > span {
  color: hsl(var(--muted-foreground));
  font-size: 10px;
}

.bridge-section {
  border-top: 1px solid hsl(var(--border-soft));
  border-bottom: 1px solid hsl(var(--border-soft));
  padding-block: 55px;
}

.bridge-section > div:first-child {
  justify-content: space-between;
  align-items: flex-start;
  gap: 35px;
  display: flex;
}

.bridge-section > div:first-child .eyebrow {
  padding-top: 9px;
}

.bridge-section h2 {
  font-size: 38px;
}

.bridge-benefits {
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  margin-top: 45px;
  display: grid;
}

.bridge-benefits > div {
  border-top: 1px solid hsl(var(--border));
  padding-top: 18px;
}

.bridge-benefits > div > span {
  color: hsl(var(--muted-foreground));
  font-size: 11px;
}

.bridge-benefits h3 {
  margin-top: 15px;
  font-size: 18px;
}

.bridge-benefits p {
  color: hsl(var(--text-secondary));
  margin-top: 13px;
  font-size: 13px;
  line-height: 1.85;
}

.choice-section {
  border: 1px solid hsl(var(--border));
  border-radius: 20px;
  grid-template-columns: 1.12fr 1fr;
  margin-bottom: 90px;
  display: grid;
  overflow: hidden;
}

.model-choice, .privacy-choice {
  background: hsl(var(--surface));
  padding: 46px;
}

.privacy-choice {
  background: hsl(var(--surface-raised));
  border-left: 1px solid hsl(var(--border));
}

.model-choice .eyebrow, .privacy-choice .eyebrow {
  font-size: 9px;
  line-height: 1.7;
}

.model-number {
  letter-spacing: -.07em;
  color: hsl(var(--brand));
  margin-top: 27px;
  font-size: 94px;
  font-weight: 600;
  line-height: 1;
}

.model-number > span {
  color: hsl(var(--foreground));
  font-size: 66px;
}

.choice-section h2 {
  margin-top: 14px;
  font-size: 37px;
  line-height: 1.15;
}

.choice-section p {
  color: hsl(var(--text-secondary));
  margin-top: 23px;
  font-size: 14px;
  line-height: 1.85;
}

.model-names {
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 25px;
  display: flex;
}

.model-names span {
  border: 1px solid hsl(var(--border));
  background: hsl(var(--background));
  border-radius: 8px;
  padding: 7px 12px;
  font-size: 11px;
}

.choice-note {
  color: hsl(var(--muted-foreground));
  margin-top: 21px;
  font-size: 11px;
  display: block;
}

.privacy-symbol {
  border: 1px solid hsl(var(--border));
  background: hsl(var(--surface));
  border-radius: 14px;
  place-items: center;
  width: 58px;
  height: 58px;
  margin-bottom: 48px;
  display: grid;
}

.privacy-symbol svg {
  width: 27px;
  height: 27px;
  color: hsl(var(--brand));
}

.privacy-choice .text-link {
  margin-top: 25px;
  font-size: 13px;
}

.free-section {
  grid-template-columns: 1fr 260px;
  align-items: center;
  gap: 60px;
  padding-block: 85px 95px;
  display: grid;
}

.free-section h2 {
  margin-top: 19px;
  font-size: 49px;
}

.free-section p {
  max-width: 600px;
  color: hsl(var(--text-secondary));
  margin-top: 24px;
  font-size: 15px;
  line-height: 1.85;
}

.free-inclusions {
  flex-wrap: wrap;
  gap: 25px;
  margin-top: 25px;
  font-size: 12px;
  display: flex;
}

.free-inclusions span {
  align-items: center;
  gap: 8px;
  display: flex;
}

.free-inclusions svg {
  color: hsl(var(--positive));
  width: 16px;
  height: 16px;
}

.free-section .button {
  margin-top: 30px;
}

.free-capacity {
  color: hsl(var(--muted-foreground));
  margin-top: 15px;
  font-size: 11px;
  line-height: 1.7;
  display: block;
}

.free-price {
  text-align: center;
  border-left: 1px solid hsl(var(--border));
  flex-direction: column;
  align-items: center;
  display: flex;
}

.free-price > span:first-child {
  letter-spacing: .1em;
  color: hsl(var(--muted-foreground));
  font-size: 10px;
}

.free-price strong {
  letter-spacing: -.075em;
  font-size: 112px;
  font-weight: 550;
  line-height: 1.25;
}

.free-price > span {
  font-size: 13px;
}

.free-price img {
  object-fit: contain;
  width: 115px;
  height: 115px;
  margin-top: 26px;
}

.dialog-visual > .research-art, .dialog-visual > .lesson-art, .dialog-visual > .family-art, .dialog-visual > .analysis-art, .dialog-visual > .talk-art {
  border-radius: 12px;
  height: 360px;
  padding: 30px;
}

.dialog-visual .research-art h3, .dialog-visual .lesson-art h3, .dialog-visual .family-art h3, .dialog-visual .analysis-art h3 {
  font-size: 37px;
}

.dialog-visual .research-matrix {
  margin-top: 28px;
  font-size: 11px;
}

.dialog-visual .research-matrix > span {
  font-size: 9px;
}

.dialog-visual .research-matrix > * {
  padding-block: 8px;
}

.dialog-visual .research-foot, .dialog-visual .family-note {
  font-size: 11px;
}

.dialog-visual .family-days {
  margin-top: 32px;
}

.dialog-visual .family-days i {
  font-size: 11px;
}

.dialog-visual .family-note {
  margin-top: 25px;
}

.dialog-visual .lesson-sticker {
  width: 70px;
  height: 70px;
  font-size: 22px;
  right: 26px;
}

.dialog-visual .lesson-steps {
  gap: 20px;
  margin-top: 35px;
}

.dialog-visual .lesson-steps > span {
  font-size: 11px;
}

.dialog-visual .lesson-subject {
  font-size: 10px;
}

.dialog-visual .chart-art {
  height: 145px;
}

.dialog-visual .chart-foot, .dialog-visual .chart-art span {
  font-size: 9px;
}

.dialog-visual .fake-slider {
  display: none;
}

.welcome-art > .research-art, .welcome-art > .lesson-art, .welcome-art > .analysis-art, .welcome-art > .family-art, .welcome-art > .talk-art {
  border-radius: 14px;
  height: 270px;
  transform: rotate(-3deg);
}

.welcome-art > .talk-art {
  height: 320px;
}

.welcome-story h1 {
  font-size: 53px;
}

.form-reassurance {
  line-height: 1.7;
}

.policy-page {
  max-width: 850px;
  padding-block: 45px 90px;
}

.policy-page .policy-label {
  color: hsl(var(--muted-foreground));
  margin-bottom: 24px;
  font-size: 11px;
}

.policy-page h1 {
  margin-block: 25px 15px;
  font-size: clamp(38px, 6vw, 56px);
}

.policy-page .policy-date {
  color: hsl(var(--muted-foreground));
  margin-bottom: 38px;
  font-size: 13px;
}

.policy-page .prose-policy {
  color: hsl(var(--text-secondary));
  font-size: 15px;
  line-height: 1.85;
}

.policy-page .prose-policy section {
  margin-top: 36px;
}

.policy-page .prose-policy h2 {
  color: hsl(var(--foreground));
  letter-spacing: -.03em;
  margin-bottom: 18px;
  font-size: 26px;
}

.policy-page .prose-policy h3 {
  color: hsl(var(--foreground));
  margin: 24px 0 10px;
  font-size: 18px;
}

.policy-page .prose-policy p {
  margin-block: 12px;
}

.policy-page ul {
  padding-left: 24px;
}

.policy-page li {
  margin-block: 8px;
}

.policy-page a {
  text-underline-offset: 3px;
  text-decoration: underline;
}

.policy-page table {
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}

.policy-page td, .policy-page th {
  text-align: left;
  border-bottom: 1px solid hsl(var(--border));
  vertical-align: top;
  min-width: 120px;
  padding: 12px;
}

.policy-page th {
  background: hsl(var(--surface-raised));
}

.policy-page .overflow-x-auto {
  overflow-x: auto;
}

@media (width <= 1100px) {
  .meet-buck {
    gap: 40px;
  }

  .buck-copy h2 {
    font-size: 36px;
  }

  .buck-scene {
    padding: 22px;
  }

  .buck-intro img {
    width: 130px;
    height: 150px;
  }

  .buck-bubble {
    font-size: 13px;
  }

  .model-choice, .privacy-choice {
    padding: 32px;
  }

  .choice-section h2 {
    font-size: 32px;
  }

  .featured-side .research-art, .featured-side .family-art {
    padding: 18px;
  }

  .featured-side .research-art h3, .featured-side .family-art h3 {
    font-size: 26px;
  }

  .featured-side .research-matrix {
    font-size: 7px;
    top: 28px;
    right: 16px;
  }

  .featured-side .family-days {
    top: 35px;
    right: 15px;
  }

  .featured-side .family-days i {
    font-size: 8px;
  }

  .research-art, .family-art, .lesson-art, .analysis-art {
    padding: 20px;
  }

  .research-art h3, .family-art h3, .lesson-art h3, .analysis-art h3 {
    font-size: 24px;
  }

  .research-matrix {
    margin-top: 12px;
  }

  .research-matrix > * {
    padding-block: 4px;
  }

  .lesson-sticker {
    width: 40px;
    height: 40px;
    font-size: 14px;
    top: 20px;
    right: 14px;
  }

  .lesson-steps {
    gap: 6px;
  }

  .chart-art {
    gap: 9px;
    right: 18px;
  }

  .welcome-story h1 {
    font-size: 46px;
  }
}

@media (width <= 850px) {
  .audience-section {
    padding-top: 65px;
  }

  .audience-heading {
    display: block;
  }

  .audience-heading > p {
    max-width: 550px;
    margin-top: 20px;
    font-size: 13px;
  }

  .audience-section .filter-list {
    gap: 5px;
  }

  .audience-section .filter-list button {
    padding-inline: 12px;
    font-size: 11px;
  }

  .featured-side .research-art h3, .featured-side .family-art h3 {
    font-size: 23px;
  }

  .featured-side .research-matrix {
    font-size: 6px;
    top: 35px;
  }

  .featured-side .research-matrix > span {
    font-size: 6px;
  }

  .featured-side .research-foot {
    margin-top: 14px;
    font-size: 6px;
  }

  .featured-side .family-days {
    top: 30px;
  }

  .featured-side .family-days i, .featured-side .family-days b {
    font-size: 6px;
  }

  .featured-side .family-note {
    margin-top: 15px;
    font-size: 6px;
  }

  .meet-buck {
    gap: 30px;
    padding-block: 45px 65px;
  }

  .buck-copy h2 {
    font-size: 31px;
  }

  .buck-copy > p {
    font-size: 13px;
  }

  .buck-intro {
    gap: 8px;
  }

  .buck-intro > span {
    font-size: 8px;
  }

  .buck-intro img {
    width: 105px;
    height: 130px;
  }

  .human-bubble {
    margin-left: 20px;
  }

  .buck-answer {
    margin-right: 8px;
  }

  .buck-bubble {
    padding: 13px;
    font-size: 12px;
  }

  .buck-scene {
    min-height: 360px;
    padding: 18px;
  }

  .bridge-section > div:first-child {
    display: block;
  }

  .bridge-section h2 {
    margin-top: 18px;
    font-size: 36px;
  }

  .bridge-benefits {
    gap: 22px;
  }

  .bridge-benefits h3 {
    font-size: 16px;
  }

  .bridge-benefits p {
    font-size: 12px;
  }

  .model-choice, .privacy-choice {
    padding: 25px;
  }

  .choice-section h2 {
    font-size: 28px;
  }

  .choice-section p {
    font-size: 13px;
  }

  .model-number {
    font-size: 80px;
  }

  .choice-section {
    margin-bottom: 65px;
  }

  .privacy-symbol {
    margin-bottom: 37px;
  }

  .free-section {
    grid-template-columns: 1fr 180px;
    gap: 35px;
  }

  .free-section h2 {
    font-size: 39px;
  }

  .free-section p {
    font-size: 13px;
  }

  .free-inclusions {
    gap: 12px 20px;
    font-size: 11px;
  }

  .free-price strong {
    font-size: 90px;
  }

  .welcome-story h1 {
    font-size: 40px;
  }
}

@media (width <= 600px) {

  .gallery-hero > p {
    max-width: 360px;
    font-size: 13px;
  }

  .proof-strip {
    gap: 9px 14px;
    max-width: 320px;
    margin: 18px auto 0;
    font-size: 10px;
  }

  .proof-strip svg {
    width: 14px;
    height: 14px;
  }

  .audience-section {
    padding-block: 55px 35px;
  }

  .audience-heading h2 {
    font-size: 35px;
  }

  .audience-heading > p {
    font-size: 13px;
  }

  .audience-section .filter-list {
    gap: 6px;
    margin-top: 22px;
  }

  .audience-section .filter-list button {
    min-height: 44px;
    padding-inline: 13px;
  }

  .audience-description {
    min-height: 65px;
    margin-top: 17px;
    font-size: 12px;
  }

  .research-art, .family-art, .lesson-art, .analysis-art {
    padding: 25px;
  }

  .research-art h3, .family-art h3, .lesson-art h3, .analysis-art h3 {
    font-size: 29px;
  }

  .research-matrix {
    margin-top: 14px;
    font-size: 9px;
  }

  .research-matrix > span {
    font-size: 8px;
  }

  .research-matrix > * {
    padding-block: 5px;
  }

  .research-foot {
    font-size: 9px;
  }

  .family-days i {
    font-size: 10px;
  }

  .family-note {
    font-size: 9px;
  }

  .lesson-steps {
    gap: 10px;
    margin-top: 24px;
  }

  .lesson-steps > span {
    font-size: 9px;
  }

  .lesson-sticker {
    width: 53px;
    height: 53px;
    font-size: 17px;
    top: 25px;
    right: 22px;
  }

  .chart-art {
    height: 110px;
    right: 25px;
  }

  .chart-art span, .chart-foot {
    font-size: 8px;
  }

  .featured-side .research-art, .featured-side .family-art {
    padding: 24px;
  }

  .featured-side .research-art h3, .featured-side .family-art h3 {
    font-size: 27px;
  }

  .featured-side .research-matrix {
    font-size: 7px;
    top: 42px;
    right: 16px;
  }

  .featured-side .research-matrix > span {
    font-size: 7px;
  }

  .featured-side .research-foot {
    margin-top: 23px;
    font-size: 8px;
  }

  .featured-side .family-days {
    top: 42px;
    right: 18px;
  }

  .featured-side .family-days i, .featured-side .family-days b {
    font-size: 7px;
  }

  .featured-side .family-note {
    margin-top: 18px;
    font-size: 8px;
  }

  .meet-buck {
    grid-template-columns: 1fr;
    gap: 28px;
    padding-block: 35px 55px;
  }

  .buck-scene {
    order: 2;
    min-height: 375px;
    padding: 23px;
  }

  .buck-intro img {
    width: 135px;
    height: 155px;
  }

  .buck-intro > span {
    font-size: 9px;
  }

  .buck-copy h2 {
    font-size: 35px;
  }

  .buck-copy > p {
    font-size: 14px;
  }

  .buck-bubble {
    padding: 14px;
    font-size: 13px;
  }

  .buck-actions {
    gap: 13px;
  }

  .bridge-section {
    padding-block: 37px;
  }

  .bridge-section h2 {
    font-size: 34px;
  }

  .bridge-benefits {
    grid-template-columns: 1fr;
    gap: 25px;
    margin-top: 28px;
  }

  .bridge-benefits h3 {
    margin-top: 10px;
    font-size: 18px;
  }

  .bridge-benefits p {
    margin-top: 10px;
    font-size: 13px;
  }

  .choice-section {
    border-radius: 16px;
    grid-template-columns: 1fr;
    margin-bottom: 50px;
  }

  .model-choice, .privacy-choice {
    padding: 29px;
  }

  .privacy-choice {
    border-left: 0;
    border-top: 1px solid hsl(var(--border));
  }

  .choice-section h2 {
    font-size: 33px;
  }

  .choice-section p {
    font-size: 14px;
  }

  .privacy-symbol {
    margin-bottom: 29px;
  }

  .model-names span {
    place-items: center;
    min-height: 34px;
    display: grid;
  }

  .free-section {
    grid-template-columns: 1fr;
    gap: 38px;
    padding-block: 55px 65px;
  }

  .free-section h2 {
    font-size: 39px;
  }

  .free-section p {
    font-size: 14px;
  }

  .free-price {
    display: none;
  }

  .free-capacity {
    font-size: 10px;
  }

  .free-inclusions {
    gap: 13px 18px;
  }

  .welcome-story h1 {
    font-size: 36px;
  }

  .welcome-story > p {
    font-size: 13px;
  }

  .dialog-visual > .research-art, .dialog-visual > .lesson-art, .dialog-visual > .family-art, .dialog-visual > .analysis-art, .dialog-visual > .talk-art {
    height: 290px;
    padding: 24px;
  }

  .dialog-visual .research-art h3, .dialog-visual .lesson-art h3, .dialog-visual .family-art h3, .dialog-visual .analysis-art h3 {
    font-size: 30px;
  }

  .dialog-visual .research-matrix {
    margin-top: 15px;
    font-size: 9px;
  }

  .dialog-visual .research-matrix > * {
    padding-block: 6px;
  }

  .dialog-visual .research-foot {
    font-size: 9px;
  }

  .dialog-visual .lesson-steps {
    gap: 10px;
    margin-top: 20px;
  }

  .dialog-visual .lesson-steps > span {
    font-size: 9px;
  }

  .dialog-visual .lesson-sticker {
    width: 50px;
    height: 50px;
    font-size: 17px;
  }

  .dialog-visual .family-days i {
    font-size: 9px;
  }

  .dialog-visual .family-note {
    font-size: 10px;
  }

  .dialog-visual .chart-art {
    height: 120px;
  }

  .talk-art img {
    width: 120px;
    height: 120px;
  }

  .talk-art h3 {
    font-size: 24px;
  }

  .policy-page {
    padding-top: 25px;
  }

  .policy-page .prose-policy {
    font-size: 14px;
  }

  .policy-page .prose-policy h2 {
    font-size: 23px;
  }
}

@media (width <= 370px) {

  .proof-strip {
    gap: 8px 10px;
    font-size: 9px;
  }

  .audience-heading h2, .buck-copy h2 {
    font-size: 31px;
  }

  .featured-side .research-art h3, .featured-side .family-art h3 {
    font-size: 23px;
  }

  .featured-side .research-art, .featured-side .family-art {
    padding: 18px;
  }

  .featured-side .research-foot {
    font-size: 7px;
  }

  .lesson-art h3 {
    font-size: 25px;
  }

  .lesson-sticker {
    width: 42px;
    height: 42px;
    right: 18px;
  }

  .free-section h2 {
    font-size: 34px;
  }

  .choice-section h2 {
    font-size: 29px;
  }

  .welcome-story h1 {
    font-size: 32px;
  }
}

.family-together .together-art {
  padding: 24px;
}

.family-workspace {
  width: 100%;
  max-width: 520px;
  margin-inline: auto;
  padding: 24px;
  transform: none;
}

.family-workspace .workspace-title {
  gap: 9px;
  font-size: 13px;
}

.family-members {
  display: flex;
  gap: 5px;
  align-items: center;
  margin-block: 19px 15px;
}

.family-members .avatar {
  width: 28px;
  height: 28px;
  font-size: 10px;
}

.family-members > span:last-of-type {
  font-size: 11px;
  color: hsl(var(--text-secondary));
  margin-left: 6px;
}

.family-members small {
  margin-left: auto;
  font-size: 9px;
  color: hsl(var(--muted-foreground));
}

.family-sources {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.family-sources > span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 8px;
  border: 1px solid hsl(var(--border));
  border-radius: 5px;
  color: hsl(var(--text-secondary));
  font-size: 9px;
}

.family-sources svg {
  width: 12px;
  height: 12px;
}

.family-day-title {
  margin-block: 25px 12px;
}

.family-day-title h3 {
  font-size: 22px;
}

.family-day-title > span {
  display: block;
  margin-top: 6px;
  font-size: 10px;
  color: hsl(var(--muted-foreground));
}

.family-schedule > div {
  display: grid;
  grid-template-columns: 43px 1fr 50px;
  align-items: center;
  gap: 8px;
  padding: 13px 9px;
  border-bottom: 1px solid hsl(var(--border-soft));
  font-size: 12px;
}

.family-schedule time,
.family-schedule b {
  font-size: 10px;
  color: hsl(var(--text-secondary));
  font-weight: 500;
}

.family-schedule b {
  text-align: right;
}

.family-schedule .family-handoff {
  background: hsl(var(--brand) / .07);
  border-radius: 6px;
}

.family-handoff small {
  display: block;
  margin-top: 4px;
  font-size: 9px;
  color: hsl(var(--text-secondary));
}

.family-buck-note {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 15px;
  margin-top: 17px;
  border: 1px solid hsl(var(--border));
  border-radius: 9px;
}

.family-buck-note > svg {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  color: hsl(var(--brand));
}

.family-workspace .family-buck-note p {
  font-size: 11px;
  line-height: 1.7;
  margin: 0;
  color: hsl(var(--text-secondary));
}

.family-buck-note strong {
  color: hsl(var(--foreground));
}

.family-workspace-foot {
  font-size: 9px;
  line-height: 1.7;
  color: hsl(var(--muted-foreground));
  margin-top: 15px;
}

.family-together-copy > p + p {
  margin-top: 15px;
}

.family-other-uses {
  display: block;
  font-size: 11px;
  line-height: 1.8;
  color: hsl(var(--muted-foreground));
  margin-top: 20px;
  max-width: 390px;
}

@media (max-width: 1100px) {
  .family-together .together-art {
    padding: 12px;
  }
  .family-workspace {
    padding: 18px;
  }
}

@media (max-width: 600px) {
  .family-together .together-art {
    padding: 0;
  }
  .family-workspace {
    padding: 17px;
  }
  .family-workspace .workspace-title {
    font-size: 12px;
  }
  .family-day-title h3 {
    font-size: 21px;
  }
  .family-sources {
    gap: 5px;
  }
  .family-sources > span {
    font-size: 8px;
    padding: 5px 6px;
  }
  .family-buck-note {
    padding: 12px;
  }
  .family-members small {
    font-size: 8px;
  }
}

.family-schedule span > small {
  display: block;
  margin-top: 4px;
  font-size: 9px;
  color: hsl(var(--text-secondary));
}


.gallery-hero {
  padding-block: 43px 36px;
}

.gallery-hero h1 {
  font-size: clamp(48px, 5.2vw, 72px);
  line-height: 1.04;
}

.gallery-hero > p {
  max-width: 685px;
  margin-top: 23px;
  font-size: 16px;
  line-height: 1.75;
  text-wrap: pretty;
}

.studio-hero-copy {
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
  gap: 0 54px;
}

.studio-hero-copy h1 {
  font-size: clamp(38px, 4.4vw, 62px);
  line-height: 1.08;
}

.audience-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) 120px minmax(0, .85fr);
  align-items: center;
  gap: 30px;
}

.audience-buck {
  width: 120px;
  height: 120px;
  object-fit: contain;
}

.audience-heading > p {
  margin: 0;
}

.stage-prompt > svg {
  flex: 0 0 auto;
  width: 19px;
  height: 19px;
  color: hsl(var(--brand));
}

@media (max-width: 1000px) {
  .audience-heading {
    grid-template-columns: minmax(0, 1fr) 112px;
    gap: 18px 24px;
  }
  .audience-heading > p {
    grid-column: 1 / -1;
    max-width: 570px;
  }
  .audience-buck {
    width: 112px;
    height: 112px;
  }
  .studio-hero-copy {
    column-gap: 30px;
  }
  .studio-hero-copy h1 {
    font-size: clamp(35px, 4.25vw, 44px);
  }
}

@media (max-width: 600px) {
  .gallery-hero {
    padding-block: 34px 31px;
  }
  .gallery-hero h1 {
    font-size: clamp(32px, 9.4vw, 48px);
    line-height: 1.08;
  }
  .gallery-hero > p {
    font-size: 14px;
    line-height: 1.75;
    margin-top: 21px;
  }
  .studio-hero-copy {
    display: block;
  }
  .studio-hero-copy h1 {
    font-size: clamp(31px, 8.3vw, 42px);
  }
  .studio-hero-copy > p {
    font-size: 14px;
    line-height: 1.75;
  }
  .audience-heading {
    grid-template-columns: minmax(0, 1fr) 90px;
    gap: 18px;
  }
  .audience-title {
    grid-column: 1 / -1;
  }
  .audience-buck {
    grid-column: 2;
    grid-row: 2;
    width: 90px;
    height: 90px;
  }
  .audience-heading > p {
    grid-column: 1;
    grid-row: 2;
    align-self: center;
    font-size: 13px;
  }
}

.work-hero{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);align-items:center;gap:64px;padding-block:60px 76px}
.work-hero-copy h1{font-size:clamp(54px,5.8vw,84px);line-height:1.04;letter-spacing:-.055em;margin:24px 0}
.work-hero-copy h1 span,.carry-heading h2 span,.mess-section h2 span,.hello-intro h1 span{color:hsl(var(--brand))}
.work-hero-copy>p{font-size:17px;line-height:1.8;max-width:450px;color:hsl(var(--text-secondary))}
.work-hero .hero-actions{justify-content:flex-start;margin-top:30px;gap:24px}
.work-hero .proof-strip{justify-content:flex-start;flex-wrap:wrap;gap:12px 20px;margin-top:25px;padding:0;line-height:1.6}
.work-hero .proof-strip span{font-size:11px}
.work-showcase{min-width:0;border:1px solid hsl(var(--border));border-radius:20px;background:hsl(var(--surface));box-shadow:0 18px 45px -30px hsl(var(--shadow-color)/.4);overflow:hidden}
.work-tabs{display:flex;gap:5px;padding:10px;border-bottom:1px solid hsl(var(--border));overflow:auto;scrollbar-width:thin}
.work-tabs button{min-height:44px;padding:9px 12px;white-space:nowrap;border:0;background:transparent;color:hsl(var(--text-secondary));border-radius:9px;font:500 12px/1.3 Inter,system-ui,sans-serif;cursor:pointer;flex:1}
.work-tabs button[aria-pressed=true]{background:hsl(var(--brand)/.12);color:hsl(var(--foreground))}
.showcase-heading{padding:19px 22px 15px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.showcase-heading .eyebrow{font-size:9px}.showcase-heading h2{font-size:18px;font-weight:550;letter-spacing:-.02em;margin-top:7px}
.saved-label{display:flex;align-items:center;gap:6px;font-size:10px;color:hsl(var(--text-secondary))}.saved-label svg{width:14px}
.showcase-output{position:relative;display:block;overflow:hidden;width:calc(100% - 32px);margin:0 16px;padding:0;border:1px solid hsl(var(--border));border-radius:10px;background:#fffdf9;text-align:left;cursor:pointer;font:inherit}
.showcase-output>img{display:block;object-fit:contain;object-position:center;width:100%;height:350px}
.showcase-output>.research-art,.showcase-output>.family-art,.showcase-output>.interactive-art,.showcase-output>.lesson-art{height:350px;width:100%;min-height:0;border-radius:0}
.look-closer{position:absolute;bottom:12px;right:12px;display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:30px;background:#fffdf9;color:#301c4f;border:1px solid #d7c9e1;font-size:11px;box-shadow:0 2px 8px #301c4f12}.look-closer svg{width:14px;height:14px}
.showcase-request{padding:19px 22px 22px}.showcase-request>span{font-size:9px;letter-spacing:.1em;color:hsl(var(--text-secondary));font-weight:600}.showcase-request>p{font-size:13px;line-height:1.7;margin:9px 0 16px;color:hsl(var(--text-secondary))}.showcase-request .button{font-size:12px;min-height:44px}
.carry-section{padding-block:76px;border-top:1px solid hsl(var(--border))}.carry-heading{max-width:670px;margin-bottom:36px}.carry-heading h2,.mess-section h2{font-size:clamp(34px,3.4vw,48px);letter-spacing:-.04em;line-height:1.14;margin-top:18px}.carry-heading>p{font-size:15px;line-height:1.85;margin-top:20px;max-width:580px;color:hsl(var(--text-secondary))}
.carry-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid hsl(var(--border));border-radius:18px;overflow:hidden;background:hsl(var(--surface))}.carry-day{padding:30px;min-width:0}.carry-next{border-left:1px solid hsl(var(--border));background:hsl(var(--brand)/.045)}.day-label{font-size:10px;letter-spacing:.1em;font-weight:600;color:hsl(var(--text-secondary))}.carry-day h3{font-size:22px;margin-top:13px;letter-spacing:-.025em}.carry-message{background:hsl(var(--brand)/.09);border-radius:12px;padding:18px 20px;font-size:15px;line-height:1.7;margin:24px 0;color:hsl(var(--foreground))}.carry-saved{display:flex;align-items:center;gap:20px;margin-top:26px}.carry-saved img{object-fit:cover;border:1px solid hsl(var(--border));border-radius:5px;max-height:130px;width:90px}.carry-saved div{display:grid;gap:9px}.carry-saved b{font-size:15px;font-weight:550}.carry-saved span{font-size:12px;color:hsl(var(--text-secondary))}.carry-saved small{font-size:10px;color:hsl(var(--text-secondary));line-height:1.5}.carry-context{display:flex;flex-wrap:wrap;gap:7px}.carry-context span{display:flex;align-items:center;gap:5px;border:1px solid hsl(var(--border));border-radius:30px;padding:6px 10px;font-size:11px;color:hsl(var(--text-secondary))}.carry-context svg{width:12px;height:12px}
.quiz-sample{padding:20px 0 0}.quiz-sample .eyebrow{font-size:9px}.quiz-sample>p{font-size:15px;margin:12px 0;line-height:1.6}.quiz-sample>div{display:flex;gap:8px;flex-wrap:wrap}.quiz-sample>div>*{font-size:11px;padding:7px 10px;border:1px solid hsl(var(--border));border-radius:6px;font-weight:400}.quiz-sample>div>b{border-color:hsl(var(--brand));background:hsl(var(--brand)/.08)}.quiz-sample>small{display:block;color:hsl(var(--text-secondary));font-size:10px;margin-top:12px}
.carry-later{display:flex;align-items:center;gap:22px;margin-top:20px;padding:18px 0}.carry-later>span{font-size:10px;letter-spacing:.06em;font-weight:600;color:hsl(var(--text-secondary))}.carry-later>p{font-size:14px;color:hsl(var(--text-secondary));flex:1}.carry-later .text-link{font-size:12px}
.mess-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding-block:68px;border-block:1px solid hsl(var(--border))}.mess-section h2{font-size:40px}.mess-section>div>p{font-size:14px;color:hsl(var(--text-secondary));line-height:1.8;margin-top:18px;max-width:420px}.mess-section label{display:block;font-size:14px;font-weight:550;margin-bottom:14px}.request-entry{display:flex;align-items:center;gap:8px;border:1px solid hsl(var(--border));padding:7px;border-radius:12px;background:hsl(var(--surface))}.request-entry input{flex:1;min-width:0;padding:12px;border:0;background:transparent;color:hsl(var(--foreground));font:400 16px/1.5 Inter,system-ui,sans-serif}.request-entry .button{font-size:12px;white-space:nowrap;min-height:44px;padding:12px 15px;gap:10px}.request-suggestions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.request-suggestions button{background:transparent;color:hsl(var(--text-secondary));border:1px solid hsl(var(--border));border-radius:25px;padding:9px 12px;min-height:44px;font:400 11px/1.4 Inter,system-ui,sans-serif;cursor:pointer}
.family-contributions{padding:0 24px 17px;display:grid;gap:11px}.family-contributions>div{display:flex;align-items:center;gap:10px}.family-contributions p{font-size:12px;color:hsl(var(--text-secondary));line-height:1.6}.family-contributions b{display:block;font-weight:550;color:hsl(var(--foreground))}.family-evolution{display:flex;gap:5px;padding:8px 15px;border-block:1px solid hsl(var(--border));overflow:auto}.family-evolution button{flex:1;background:transparent;color:hsl(var(--text-secondary));border:0;border-radius:7px;min-height:44px;padding:8px;font:500 10px/1.5 Inter,system-ui,sans-serif;white-space:nowrap;cursor:pointer}.family-evolution button[aria-pressed=true]{background:hsl(var(--brand)/.1);color:hsl(var(--foreground))}
.hello-page{display:grid;grid-template-columns:1fr 1fr;gap:100px;max-width:1100px;padding-block:64px 110px;align-items:start}.hello-intro{padding-top:20px}.hello-intro h1{font-size:clamp(44px,4.6vw,64px);line-height:1.08;letter-spacing:-.05em;margin:24px 0}.hello-intro>p{max-width:390px;color:hsl(var(--text-secondary));font-size:16px;line-height:1.85}.hello-character{display:flex;position:relative;align-items:flex-end;gap:8px;margin-top:25px;max-width:410px}.hello-character::before{content:"";position:absolute;background:radial-gradient(ellipse,hsl(var(--brand)/.1),transparent 70%);width:300px;height:240px;bottom:0;left:-35px;z-index:-1}.hello-character>img{width:210px;height:235px;object-fit:contain}.hello-bubble{font-size:19px;line-height:1.5;border:1px solid hsl(var(--border));border-radius:16px 16px 16px 3px;padding:16px 22px;background:hsl(var(--surface));margin-bottom:38px;white-space:nowrap}.hello-bubble em{color:hsl(var(--brand));font-family:"Source Serif",Georgia,serif}.hello-intro .carried-hint{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.5;margin-top:18px}.carried-hint svg{width:16px;height:16px;flex-shrink:0}
.hello-panel{border:1px solid hsl(var(--border));border-radius:18px;padding:30px;background:hsl(var(--surface));box-shadow:0 18px 40px -35px hsl(var(--shadow-color)/.4)}.hello-step{display:flex;gap:6px;align-items:center;font-size:11px;color:hsl(var(--text-secondary));margin-bottom:23px}.hello-step>span{width:22px;height:3px;background:hsl(var(--border));border-radius:2px}.hello-step>.step-active{background:hsl(var(--brand))}.hello-step>span:last-of-type{margin-right:8px}.hello-panel h2{font-size:26px;letter-spacing:-.035em;line-height:1.2}.hello-panel>p{color:hsl(var(--text-secondary));font-size:12px;line-height:1.7;margin-top:11px}.hello-panel #welcome-form{margin-top:26px}.hello-panel #welcome-form>label,.hello-panel legend{font-size:13px;font-weight:550;margin-bottom:10px}.hello-panel #welcome-form>input{font-size:16px;min-height:48px}.hello-panel .persona-fieldset{margin:25px 0}.persona-options{display:flex;flex-wrap:wrap;gap:6px}.persona-options label{position:relative;display:block;cursor:pointer}.persona-options input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.persona-options label>span{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid hsl(var(--border));border-radius:8px;padding:9px 12px;font-size:12px;color:hsl(var(--text-secondary));background:hsl(var(--background));pointer-events:none}.persona-options input:checked+span{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.persona-options input:focus-visible+span{outline:2px solid hsl(var(--brand));outline-offset:3px}.persona-preview{background:hsl(var(--brand)/.06);border-radius:9px;margin-top:12px;padding:13px 15px;min-height:84px}.persona-preview>span{display:flex;align-items:center;gap:6px;font-size:10px;color:hsl(var(--text-secondary));font-weight:550}.persona-preview svg{width:14px;height:14px}.persona-preview p{font-size:13px;line-height:1.6;margin-top:7px;color:hsl(var(--foreground))}
.import-entry{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border:1px solid hsl(var(--border));border-radius:10px;background:hsl(var(--background));color:hsl(var(--foreground));padding:16px;cursor:pointer}.import-entry>.import-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:hsl(var(--brand)/.1);flex-shrink:0}.import-entry>span:nth-child(2){flex:1}.import-entry strong{display:block;font:550 13px/1.5 Inter,system-ui,sans-serif}.import-entry small{display:block;font:400 11px/1.6 Inter,system-ui,sans-serif;color:hsl(var(--text-secondary));margin-top:4px}.import-entry>svg{width:16px;height:16px;flex-shrink:0}.import-selection{font-size:11px;line-height:1.6;margin-top:10px;color:hsl(var(--text-secondary))}.hello-actions{display:flex;align-items:center;gap:22px;margin-top:25px}.hello-actions .button{flex:1;justify-content:center}.hello-actions .skip-setup{border:0;background:transparent;color:hsl(var(--text-secondary));font:400 12px/1.5 Inter,system-ui,sans-serif;min-height:44px;cursor:pointer;padding:8px}.hello-next{font-size:11px;color:hsl(var(--text-secondary));text-align:center;line-height:1.5;margin-top:15px}
.import-dialog[open]{display:block;width:min(650px,calc(100% - 24px));max-height:90svh;padding:0;border-radius:18px}.import-dialog-content{padding:40px}.import-dialog-content h2{font-size:38px;line-height:1.15;letter-spacing:-.04em;margin-top:20px}.import-dialog-content h2 span{color:hsl(var(--brand))}.import-dialog-content>p{font-size:14px;color:hsl(var(--text-secondary));line-height:1.8;margin-top:18px}.import-providers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.import-providers button{display:flex;align-items:center;gap:10px;padding:15px 12px;background:hsl(var(--surface));border:1px solid hsl(var(--border));border-radius:10px;color:hsl(var(--foreground));font:550 13px/1.5 Inter,system-ui,sans-serif;cursor:pointer;min-height:60px}.import-providers button>span{display:grid;place-items:center;width:28px;height:28px;background:hsl(var(--brand)/.1);border-radius:7px;color:hsl(var(--foreground));flex-shrink:0}.import-providers button[aria-pressed=true]{border-color:hsl(var(--brand));background:hsl(var(--brand)/.07)}.import-detail{border-top:1px solid hsl(var(--border));padding-top:22px}.import-detail h3{font-size:19px}.import-detail ol{padding-left:20px;margin-block:15px;font-size:13px;line-height:1.8;color:hsl(var(--text-secondary))}.import-detail li+li{margin-top:10px}.import-detail>p{font-size:12px;line-height:1.7;color:hsl(var(--text-secondary));margin-bottom:20px}.import-detail>small{display:block;font-size:11px;line-height:1.6;color:hsl(var(--text-secondary));margin-top:12px}.import-footnote{font-size:12px!important}
.task-filters{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.task-filters button{min-height:44px;padding:9px 15px;border-radius:28px;border:1px solid hsl(var(--border));color:hsl(var(--text-secondary));background:transparent;font:500 12px/1.5 Inter,system-ui,sans-serif;cursor:pointer}.task-filters button[aria-pressed=true]{color:hsl(var(--primary-foreground));background:hsl(var(--primary));border-color:hsl(var(--primary))}.carried-request{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 25px;border:1px solid hsl(var(--border));border-radius:12px;background:hsl(var(--surface));margin:30px 0}.carried-request p{font-size:15px;line-height:1.7;margin-top:8px;overflow-wrap:anywhere}.carried-request .button{flex-shrink:0}.carried-request .eyebrow{font-size:9px}.sample-history{display:flex;align-items:center;gap:8px;font-size:12px;color:hsl(var(--text-secondary));margin-block:20px}.sample-history svg{width:16px;flex-shrink:0}.edit-preferences{font-size:12px;margin-block:25px}
.first-task{padding-block:38px 110px}.first-task>.text-link{font-size:12px}.task-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:36px 0 30px}.task-heading h1{font-size:clamp(30px,3.5vw,45px);line-height:1.15;letter-spacing:-.04em;margin:15px 0}.task-heading p{font-size:14px;color:hsl(var(--text-secondary));line-height:1.8}.task-persona{font-size:12px;border:1px solid hsl(var(--border));border-radius:30px;padding:10px 15px;white-space:nowrap}.first-task-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:start}.task-compose,.task-result{border:1px solid hsl(var(--border));border-radius:14px;background:hsl(var(--surface));padding:24px}.task-compose>.workspace-title{padding:0 0 20px;margin-bottom:22px;border-bottom:1px solid hsl(var(--border));font-size:13px}.task-compose label{display:block;font-size:13px;margin-bottom:10px}.task-compose textarea{display:block;resize:vertical;width:100%;font:400 16px/1.7 Inter,system-ui,sans-serif;padding:15px;border:1px solid hsl(var(--border));border-radius:10px;background:hsl(var(--background));color:hsl(var(--foreground));min-height:170px}.task-compose .button{margin-top:18px;font-size:12px}.task-boundary{font-size:11px;line-height:1.7;color:hsl(var(--text-secondary));margin-top:16px}.task-context{border-top:1px solid hsl(var(--border));margin-top:24px;padding-top:22px}.task-context .eyebrow{font-size:9px}.task-context p{display:flex;align-items:center;gap:9px;margin-top:13px;font-size:12px;line-height:1.7;color:hsl(var(--text-secondary))}.task-context svg{width:15px;flex-shrink:0}.task-empty{display:flex;min-height:460px;align-items:center;justify-content:center;text-align:center;flex-direction:column;padding:32px;gap:18px}.task-empty>svg{width:38px;height:38px;color:hsl(var(--brand))}.task-empty h2{font-size:29px;line-height:1.2;letter-spacing:-.03em}.task-empty p{font-size:13px;line-height:1.7;color:hsl(var(--text-secondary))}.task-result-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.task-result-heading>span{font-size:10px;color:hsl(var(--text-secondary));line-height:1.5}.task-result-visual{border:1px solid hsl(var(--border));border-radius:10px;overflow:hidden}.task-result-visual>img{display:block;width:100%;max-height:580px;object-fit:contain;background:#fffdf9}.task-result-note{font-size:11px;line-height:1.7;color:hsl(var(--text-secondary));margin-top:13px}.task-next{margin-top:22px}.task-next h3{font-size:16px;margin-bottom:12px}.task-next button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 14px;margin-top:7px;border:1px solid hsl(var(--border));border-radius:8px;background:hsl(var(--background));color:hsl(var(--foreground));font:400 12px/1.6 Inter,system-ui,sans-serif;cursor:pointer;min-height:44px;text-align:left}.task-next button svg{width:16px;flex-shrink:0}.task-handoff{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:25px;padding-top:22px;border-top:1px solid hsl(var(--border))}.task-handoff .button{font-size:12px}.task-handoff small,.task-handoff .copy-status{flex-basis:100%;font-size:11px;line-height:1.7;color:hsl(var(--text-secondary))}.custom-ready h2{font-size:27px;margin-bottom:20px}.custom-ready p{font-size:15px;line-height:1.8;overflow-wrap:anywhere}.custom-ready p+p{font-size:13px;color:hsl(var(--text-secondary));margin-top:20px}
.work-tabs button,.family-evolution button,.request-suggestions button,.import-entry,.import-providers button,.task-filters button,.task-next button{transition:background-color 160ms ease-out,transform 160ms ease-out}.work-tabs button:active,.family-evolution button:active,.request-suggestions button:active,.import-entry:active,.import-providers button:active,.task-filters button:active,.task-next button:active{transform:scale(.98)}
@media(hover:hover) and (pointer:fine){.work-tabs button:hover,.family-evolution button:hover,.request-suggestions button:hover,.import-entry:hover,.task-filters button:hover,.task-next button:hover{background-color:hsl(var(--brand)/.09)}.task-filters button[aria-pressed=true]:hover{background:hsl(var(--primary))}}
@media(max-width:1100px){.work-hero{gap:32px}.hello-page{gap:45px}.hello-panel{padding:26px}.hello-character>img{width:180px}.hello-bubble{font-size:17px;padding:13px 16px}.work-tabs button{padding:9px;font-size:11px}.mess-section{gap:30px}.request-entry{flex-wrap:wrap}.request-entry input{flex-basis:100%}.request-entry .button{width:100%;justify-content:center}}
@media(max-width:800px){.work-hero{grid-template-columns:1fr;padding-block:38px 52px;gap:34px}.work-hero-copy{max-width:570px}.work-hero-copy h1{font-size:64px}.work-hero-copy>p{max-width:540px}.work-showcase{max-width:620px;width:100%}.carry-section{padding-block:52px}.carry-grid{grid-template-columns:1fr}.carry-next{border-left:0;border-top:1px solid hsl(var(--border))}.carry-later{flex-wrap:wrap;gap:12px}.carry-later>p{flex-basis:75%}.mess-section{grid-template-columns:1fr;gap:30px;padding-block:50px}.mess-section h2{font-size:36px}.request-entry{flex-wrap:nowrap}.request-entry input{flex-basis:auto}.request-entry .button{width:auto}.hello-page{grid-template-columns:1fr;gap:30px;padding-top:30px;max-width:650px}.hello-intro{position:relative;padding-top:0;padding-right:125px}.hello-intro h1{font-size:43px;line-height:1.1;margin:17px 0}.hello-intro h1>span>br{display:none}.hello-intro>p{font-size:14px;line-height:1.8;max-width:440px}.hello-character{position:absolute;right:-8px;top:34px;margin:0;max-width:135px}.hello-character>img{width:135px;height:160px}.hello-character::before{width:150px;left:0;height:170px}.hello-bubble{display:none}.hello-panel{max-width:600px;width:100%;padding:26px}.first-task-grid{grid-template-columns:1fr}.task-heading{align-items:flex-start;flex-direction:column;gap:10px}.task-empty{min-height:260px}.task-result{scroll-margin-top:24px}.carried-request{align-items:flex-start;flex-direction:column;gap:18px}}
@media(max-width:480px){.work-hero-copy h1{font-size:54px;margin:20px 0}.work-hero-copy>p{font-size:15px;line-height:1.8}.work-hero .hero-actions{gap:17px;flex-wrap:wrap}.work-hero .proof-strip{gap:8px 16px}.work-hero .proof-strip span{font-size:10px}.work-tabs{padding:7px}.work-tabs button{flex:none;font-size:12px;padding:10px 12px}.showcase-heading{padding:16px}.saved-label{display:none}.showcase-output{width:calc(100% - 20px);margin-inline:10px}.showcase-output>img{height:330px}.showcase-output>.research-art,.showcase-output>.family-art,.showcase-output>.interactive-art,.showcase-output>.lesson-art{height:300px}.showcase-request{padding:16px}.showcase-request .button{width:100%;justify-content:center}.showcase-request>p{font-size:12px}.carry-heading h2{font-size:34px}.carry-heading>.eyebrow{font-size:9px;line-height:1.8;display:block}.carry-day{padding:22px}.carry-day h3{font-size:20px}.carry-message{font-size:14px;padding:15px}.carry-later>p{flex-basis:100%;font-size:13px}.carry-saved{gap:14px}.carry-saved b{font-size:14px}.carry-saved span{font-size:12px;line-height:1.6}.request-entry{flex-wrap:wrap}.request-entry input{flex-basis:100%}.request-entry .button{width:100%;justify-content:center}.family-contributions{padding:0 17px 17px}.family-evolution{padding-inline:9px}.family-evolution button{font-size:10px}.hello-intro{padding-right:85px}.hello-intro>.eyebrow{font-size:8px;line-height:1.8;display:block}.hello-intro h1{font-size:35px}.hello-intro>p{font-size:13px;line-height:1.8}.hello-character{right:-14px;top:55px;width:100px}.hello-character>img{width:100px;height:120px}.hello-intro .carried-hint{font-size:11px;align-items:flex-start}.hello-panel{padding:22px 18px}.hello-panel h2{font-size:25px}.hello-actions{gap:18px}.hello-actions .button{min-height:48px}.import-entry{padding:14px 12px;gap:9px}.import-entry>.import-icon{display:none}.import-entry strong{font-size:12px}.import-dialog-content{padding:32px 23px}.import-dialog-content h2{font-size:32px}.import-providers{gap:7px}.import-providers button{flex-direction:column;font-size:12px;padding:13px 5px}.import-detail .button{width:100%;justify-content:center;font-size:12px}.task-heading h1{font-size:30px}.task-compose,.task-result{padding:18px}.first-task .task-compose .button{width:100%;justify-content:center}.task-persona{font-size:11px}.task-handoff .button{flex:1;justify-content:center;padding-inline:12px}.task-result-heading{flex-wrap:wrap}.sample-history{align-items:flex-start;font-size:11px}.task-filters{gap:6px}.task-filters button{font-size:11px;padding:9px 12px}.carried-request{padding:19px}.carried-request p{font-size:14px}.design-dock{max-width:calc(100% - 20px);overflow:auto;white-space:nowrap}.design-dock a,.design-dock button{min-height:44px;font-size:9px!important}}
@media(prefers-reduced-motion:reduce){.work-tabs button,.family-evolution button,.request-suggestions button,.import-entry,.import-providers button,.task-filters button,.task-next button{transition:none;transform:none!important}}
.hello-panel #welcome-form .persona-options label>span{font-size:12px;font-weight:500;color:hsl(var(--text-secondary))}
.hello-panel #welcome-form .persona-options input:checked+span{color:hsl(var(--primary-foreground))}
.family-together>div,.hello-page>section{min-width:0}
.hello-character::before{max-width:100%}
@media(max-width:480px){.design-dock .dock-home::before,.design-dock .sample-note::before{content:none}}
@media(max-width:800px){.work-hero .hero-actions{flex-direction:row;align-items:center}}

.work-hero{display:block;padding-block:34px 44px}
.work-hero-copy{max-width:900px;margin:0 auto 30px;text-align:center}
.work-hero-copy h1{font-size:clamp(50px,5.5vw,78px);line-height:1.06;letter-spacing:-.055em;margin:16px 0 18px}
.work-hero-copy h1>span{display:inline-block;margin-inline-start:.1em}
.work-hero-copy>p{max-width:740px;margin-inline:auto;font-size:16px;line-height:1.75}
.work-hero .hero-actions{justify-content:center;flex-direction:row;margin-top:23px;gap:26px}
.work-hero .proof-strip{display:flex;justify-content:center;margin-top:20px;gap:12px 22px}
.work-showcase{width:100%;max-width:none;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.work-tabs{width:fit-content;max-width:100%;margin:0 auto 20px;padding:5px;gap:4px;border:1px solid hsl(var(--border));border-radius:30px;background:hsl(var(--surface-raised));overflow-x:auto}
.work-tabs button{min-height:44px;flex:none;padding:10px 18px;border-radius:24px;font-size:12px;color:hsl(var(--text-secondary))}
.work-tabs button[aria-pressed=true]{background:hsl(var(--primary));color:hsl(var(--primary-foreground));box-shadow:0 2px 5px hsl(var(--shadow-color)/.1)}
.showcase-composition{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:22px;align-items:stretch}
.showcase-main{min-width:0;border:1px solid hsl(var(--border));border-radius:16px;overflow:hidden;background:hsl(var(--surface));box-shadow:0 12px 30px -24px hsl(var(--shadow-color)/.3)}
.showcase-heading{padding:12px 18px;border-bottom:1px solid hsl(var(--border));min-height:58px}
.showcase-heading>div{display:flex;align-items:center;gap:12px;flex-direction:row-reverse}
.showcase-heading .eyebrow{font-size:8px;letter-spacing:.07em}
.showcase-heading h2{font-size:15px;margin:0}
.showcase-output{width:100%;aspect-ratio:1200/850;margin:0;border:0;border-radius:0;background:#fffdf6}
.showcase-output>img{display:block;width:100%;height:100%;aspect-ratio:1200/850;object-fit:contain}
.showcase-output>.research-art,.showcase-output>.family-art,.showcase-output>.interactive-art,.showcase-output>.lesson-art{width:100%;height:100%;min-height:0}
.showcase-output .research-art,.showcase-output .family-art,.showcase-output .lesson-art{padding:34px;display:flex;flex-direction:column;justify-content:center}
.showcase-output .research-art h3,.showcase-output .family-art h3,.showcase-output .lesson-art h3{font-size:clamp(27px,3.1vw,44px);margin-top:18px}
.showcase-output .research-matrix{font-size:12px;margin-top:26px}.showcase-output .research-matrix>span{font-size:10px}.showcase-output .research-matrix>*{padding:10px 0}
.showcase-output .research-foot,.showcase-output .family-note{font-size:11px;margin-top:20px}
.showcase-output .family-days{margin-top:28px}.showcase-output .family-days b{font-size:10px}.showcase-output .family-days i{font-size:12px}
.showcase-output .lesson-steps{margin-top:20px}.showcase-output .lesson-steps span{font-size:13px}
.showcase-request{display:flex;align-items:center;gap:18px;padding:17px 18px;border-top:1px solid hsl(var(--border));background:hsl(var(--brand-soft)/.35)}
.showcase-request>div{flex:1;min-width:0}.showcase-request>div>span{font-size:9px;letter-spacing:.08em;font-weight:600;color:hsl(var(--text-secondary))}.showcase-request p{font-size:12px;line-height:1.65;margin-top:5px;color:hsl(var(--text-secondary))}
.showcase-request .button{flex-shrink:0;font-size:11px;min-height:44px;padding:12px 15px;gap:12px}
.showcase-companions{display:grid;grid-template-rows:1fr 1fr;gap:22px;min-width:0}
.showcase-companions .result-card{display:flex;flex-direction:column;min-width:0;min-height:0}
.showcase-companions .result-visual{height:auto;flex:1;min-height:180px;border-radius:15px}
.showcase-companions .result-visual>img{height:100%;width:100%;object-fit:cover}
.showcase-companions .result-caption{padding-top:12px;gap:12px}.showcase-companions .result-caption h3{font-size:15px;line-height:1.45}.showcase-companions .result-caption p{display:none}.showcase-companions .result-caption .kicker{font-size:8px;margin-bottom:4px}
.showcase-companions .research-art,.showcase-companions .family-art{padding:25px}
.showcase-companions .research-art h3,.showcase-companions .family-art h3{font-size:30px;line-height:1.1;margin-top:20px}
.showcase-companions .family-days{top:66px;right:20px;width:44%}.showcase-companions .research-matrix{top:50px;right:20px;width:43%}
.carry-section{padding-block:42px 36px;border:0}.carry-heading{margin-bottom:26px;max-width:760px}.carry-heading>p{max-width:650px;font-size:14px;line-height:1.8;margin-top:15px}.carry-heading h2{font-size:40px}
.carry-grid{border-color:hsl(var(--brand)/.2);gap:0}.carry-day{background:hsl(var(--brand-soft)/.65);padding:28px}.carry-next{background:hsl(var(--positive-soft));border-left-color:hsl(var(--border))}.carry-message{background:hsl(var(--background)/.85);border:1px solid hsl(var(--border)/.7);font-size:14px;margin:20px 0}.carry-context span{background:hsl(var(--background)/.65)}
.carry-later{margin-top:10px;padding:13px 0}.carry-saved img{object-fit:contain}
.carry-next .eyebrow,.mess-section .eyebrow,.family-together .eyebrow,.family-other-uses,.privacy-choice .eyebrow{color:hsl(var(--text-secondary))}
.mess-section{padding:34px 38px;border:1px solid hsl(var(--border));border-radius:18px;background:hsl(var(--warm));margin-block:18px 24px;gap:40px}.mess-section h2{font-size:36px}.mess-section>div>p{margin-top:14px}.request-entry{background:hsl(var(--background));border-color:hsl(var(--border))}.request-suggestions button{background:hsl(var(--background)/.65)}
.audience-section{padding-block:44px 42px}.meet-buck{padding-block:44px 48px}
.family-together{background:hsl(var(--positive-soft));padding:38px;gap:38px}.family-together .together-art{padding:0}.family-workspace{background:hsl(var(--background))}.family-evolution{background:hsl(var(--positive-soft)/.6)}
.choice-section{padding-block:44px}.model-choice,.privacy-choice{border:1px solid hsl(var(--border));border-radius:18px;padding:34px!important}.model-choice{background:hsl(var(--brand-soft)/.65)}.privacy-choice{background:hsl(var(--positive-soft))}
.free-section{background:hsl(var(--brand-soft)/.6);border:1px solid hsl(var(--border));border-radius:20px;padding:38px;margin-block:12px 44px}.free-section h2{font-size:40px}
.hello-page{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:68px;padding-top:42px;max-width:1100px}
.hello-intro{padding-top:32px}.hello-panel{border:0;box-shadow:none;background:transparent;padding:0}.hello-step{margin-bottom:18px}.hello-panel h2{font-size:28px}.hello-panel>p{font-size:13px}
.hello-panel #welcome-form{display:grid;gap:15px;margin-top:22px}
.welcome-block{padding:20px;border:1px solid hsl(var(--border));border-radius:13px;min-width:0;background:hsl(var(--surface))}
.name-block{background:hsl(var(--brand-soft)/.55);border-color:hsl(var(--brand)/.24)}
.history-block{background:hsl(var(--warm));border-color:hsl(var(--border))}
.welcome-block-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;font-size:9px;line-height:1.6;color:hsl(var(--text-secondary))}.welcome-block-heading>span:first-child{font-weight:650;letter-spacing:.08em}.welcome-block-heading>span:last-child{font-size:10px}
.name-block>label{display:block;font-size:14px;font-weight:550;line-height:1.6;margin-bottom:10px}
.name-block>input{width:100%;min-height:48px;padding:12px 14px;border:1px solid hsl(var(--border));border-radius:9px;background:hsl(var(--background));color:hsl(var(--foreground));font:400 16px/1.5 Inter,system-ui,sans-serif}
.name-block>p{font-size:11px;color:hsl(var(--text-secondary));margin-top:9px;line-height:1.6}
.hello-panel .persona-fieldset{margin:0}.hello-panel .persona-fieldset legend{font-size:14px;line-height:1.6;margin-bottom:12px}
.hello-panel .persona-options{gap:7px}.hello-panel #welcome-form .persona-options label>span{padding:8px 11px;font-size:12px}
.persona-preview{min-height:0;background:transparent;padding:12px 0 0;margin-top:12px;border-top:1px solid hsl(var(--border));border-radius:0}.persona-preview p{font-size:12px;margin-top:5px;line-height:1.6}
.history-block .import-entry{border:0;background:transparent;border-radius:6px;padding:0;gap:12px}.history-block .import-entry strong{font-size:14px;line-height:1.55}.history-block .import-entry small{font-size:12px}.history-block .import-icon{background:hsl(var(--background)/.75);width:38px;height:38px}
.hello-actions{margin:3px 0 0}.hello-actions .button{min-height:50px;width:100%;justify-content:center}.hello-next{margin-top:-7px}
.hello-actions .button:disabled,.hello-actions .button:disabled:hover,.hello-actions .button:disabled:active{background:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border));box-shadow:none;transform:none;cursor:not-allowed;opacity:1}
@media(hover:hover) and (pointer:fine){.work-tabs button[aria-pressed=true]:hover{background:hsl(var(--primary-hover))}.history-block .import-entry:hover{background:transparent}.showcase-output:hover .look-closer{background:#eee5f7}}
@media(max-width:1100px){.work-hero-copy{margin-bottom:26px}.showcase-composition{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px}.showcase-companions{gap:18px}.showcase-request{align-items:flex-start;flex-direction:column;gap:13px}.showcase-companions .research-art,.showcase-companions .family-art{padding:20px}.showcase-companions .research-art h3,.showcase-companions .family-art h3{font-size:26px}.showcase-companions .research-matrix,.showcase-companions .family-days{position:static;width:100%;margin-top:17px}.showcase-companions .research-art h3{width:100%}.showcase-companions .research-art h3 br,.showcase-companions .family-art h3 br{display:none}.showcase-companions .research-foot,.showcase-companions .family-note{display:none}.showcase-companions .result-visual{min-height:205px}.hello-page{gap:40px}.welcome-block{padding:18px}}
@media(max-width:800px){.work-hero{padding-block:28px 30px}.work-hero-copy{max-width:650px}.work-hero-copy h1{font-size:60px}.work-hero-copy>p{max-width:570px}.showcase-composition{grid-template-columns:1fr}.showcase-main{max-width:none}.showcase-request{align-items:center;flex-direction:row}.showcase-companions{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:16px}.showcase-companions .result-visual{min-height:220px}.work-tabs{margin-bottom:16px}.work-tabs button{padding-inline:14px}.carry-section{padding-block:32px}.carry-heading h2{font-size:35px}.carry-day{padding:25px}.carry-next{border-left:0}.mess-section{padding:28px;gap:24px}.family-together{padding:28px;gap:28px}.choice-section{padding-block:32px}.free-section{padding:28px}.hello-page{grid-template-columns:1fr;max-width:650px;gap:28px;padding-top:28px}.hello-intro{padding-top:0}.hello-panel{padding:0}.hello-intro h1{font-size:43px}.hello-panel h2{font-size:26px}}
@media(max-width:480px){.work-hero{padding-top:24px}.work-hero-copy{margin-bottom:24px}.work-hero-copy h1{font-size:49px;max-width:350px;margin:16px auto}.work-hero-copy>p{font-size:14px;line-height:1.8}.work-hero .hero-actions{gap:20px;margin-top:20px;flex-wrap:wrap}.work-hero .proof-strip{font-size:10px;gap:9px 15px;margin-top:18px}.work-tabs{justify-content:flex-start;margin-inline:0;max-width:100%;border-radius:13px}.work-tabs button{font-size:11px;padding:10px 12px;border-radius:9px}.showcase-heading{padding:11px 13px;min-height:48px}.showcase-heading h2{font-size:13px}.showcase-heading .eyebrow{font-size:7px}.showcase-heading>div{gap:10px}.showcase-output .look-closer{font-size:10px;padding:7px 10px;bottom:9px;right:9px}.showcase-request{align-items:stretch;flex-direction:column;padding:14px;gap:12px}.showcase-request .button{width:100%;justify-content:center}.showcase-request p{font-size:11px}.showcase-output .research-art,.showcase-output .family-art,.showcase-output .lesson-art{padding:20px}.showcase-output .research-art h3,.showcase-output .family-art h3,.showcase-output .lesson-art h3{font-size:26px;margin-top:10px}.showcase-output .research-matrix{font-size:9px;margin-top:13px}.showcase-output .research-matrix>span{font-size:8px}.showcase-output .research-matrix>*{padding:5px 0}.showcase-output .research-foot,.showcase-output .family-note{font-size:9px;margin-top:12px}.showcase-output .family-days{margin-top:15px}.showcase-output .family-days b{font-size:8px}.showcase-output .family-days i{font-size:9px}.showcase-output .lesson-steps{margin-top:12px;gap:7px}.showcase-output .lesson-steps span{font-size:10px}.showcase-output .lesson-subject{font-size:9px}.showcase-output .lesson-sticker{display:none}.showcase-companions{grid-template-columns:1fr;gap:18px}.showcase-companions .result-visual{height:190px;min-height:190px;flex:auto}.showcase-companions .research-art,.showcase-companions .family-art{padding:22px}.showcase-companions .result-caption h3{font-size:15px}.showcase-companions .research-art h3,.showcase-companions .family-art h3{font-size:25px;margin-top:12px}.showcase-companions .research-matrix{margin-top:12px}.showcase-companions .family-days{flex-direction:row;margin-top:18px}.showcase-companions .family-days>span{display:block}.showcase-companions .family-days i{margin-top:6px}.carry-heading h2{font-size:31px}.carry-heading>p{font-size:13px}.carry-day{padding:20px}.carry-day h3{font-size:19px}.carry-message{font-size:13px;padding:14px}.mess-section{padding:24px 20px;border-radius:15px}.mess-section h2{font-size:30px}.audience-section{padding-block:32px}.family-together{padding:20px}.family-workspace{padding:15px}.family-contributions{padding:0 0 15px}.family-evolution{padding:7px 0}.family-evolution button{white-space:normal;font-size:10px;min-width:0}.choice-section{gap:18px}.model-choice,.privacy-choice{padding:25px 22px!important}.free-section{padding:25px 22px;margin-bottom:25px}.free-section h2{font-size:31px}.hello-intro h1{font-size:35px}.hello-panel h2{font-size:25px}.welcome-block{padding:17px}.welcome-block-heading{margin-bottom:12px}.hello-panel .persona-options{gap:6px}.history-block .import-icon{display:none}.history-block .import-entry strong{font-size:13px}.history-block .import-entry small{font-size:11px}.design-dock{position:static;transform:none;max-width:calc(100% - 24px);width:fit-content;margin:10px auto 18px}.hello-page{padding-bottom:28px}}
@media(prefers-reduced-motion:reduce){.work-tabs button{transition:none}.showcase-output .look-closer{transition:none}}
.reader-art{width:100%;height:100%;padding:25px;background:#f4e7ce;color:#59442b;overflow:hidden;text-align:left}.reader-art h3{font-size:30px;line-height:1.12;letter-spacing:-.04em;margin-top:16px}.reader-art .art-kicker{font-size:8px}.reader-art-tags{display:flex;gap:6px;margin-top:18px}.reader-art-tags span{font-size:9px;border:1px solid #c5ad83;border-radius:20px;padding:4px 8px}.reader-art-lines{display:grid;gap:8px;margin-top:20px}.reader-art-lines>span{display:flex;align-items:center;gap:9px;font-size:11px}.reader-art-lines svg{width:14px;height:14px}
.result-visual .reader-art{padding:20px 22px}.result-visual .reader-art h3{font-size:24px;margin-top:10px}.result-visual .reader-art-tags{margin-top:10px}.result-visual .reader-art-tags span{font-size:8px;padding:3px 7px}.result-visual .reader-art-lines{gap:5px;margin-top:10px}.result-visual .reader-art-lines>span{font-size:10px}
.showcase-output>.reader-art{height:100%;padding:34px;display:flex;flex-direction:column;justify-content:center}.showcase-output .reader-art h3{font-size:42px}.showcase-output .reader-art-lines{gap:12px}.showcase-output .reader-art-lines>span{font-size:14px}.showcase-output .reader-art-tags span{font-size:11px}
.dialog-visual>.reader-art{min-height:460px;display:flex;flex-direction:column;justify-content:center;padding:35px}.dialog-visual .reader-art h3{font-size:43px}.dialog-visual .reader-art-lines>span{font-size:14px}.task-result-visual>.reader-art{min-height:350px}
.reader-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:55px;padding-block:30px 55px}.reader-copy h2{font-size:40px;margin-top:18px;line-height:1.15}.reader-copy>p{font-size:14px;color:hsl(var(--text-secondary));line-height:1.85;margin-top:18px;max-width:430px}.reader-benefits{padding:0;margin:24px 0;list-style:none;display:grid;gap:18px}.reader-benefits li{display:flex;gap:12px;align-items:flex-start;font-size:12px;color:hsl(var(--text-secondary));line-height:1.75}.reader-benefits li>svg{flex-shrink:0;width:17px;height:17px;margin-top:2px;color:hsl(var(--brand))}.reader-benefits b{display:block;font-size:13px;font-weight:550;color:hsl(var(--foreground));margin-bottom:3px}.reader-copy>.button{font-size:12px}
.reader-demo{border:1px solid hsl(var(--border));border-radius:17px;overflow:hidden;background:hsl(var(--surface));box-shadow:0 15px 35px -28px hsl(var(--shadow-color)/.4);min-width:0}.reader-demo-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 22px;background:hsl(var(--warm));border-bottom:1px solid hsl(var(--border))}.reader-demo-top>span:first-child{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:550}.reader-demo-top>span:last-child{font-size:9px;color:hsl(var(--text-secondary))}.reader-materials{display:flex;flex-wrap:wrap;gap:7px;padding:20px 22px 16px}.reader-materials span{font-size:10px;padding:5px 9px;border-radius:20px;border:1px solid hsl(var(--border));color:hsl(var(--text-secondary))}.reader-materials span:last-child{background:hsl(var(--brand-soft)/.6)}
.reader-tabs{display:flex;gap:5px;padding:0 22px 16px;border-bottom:1px solid hsl(var(--border))}.reader-tabs button{flex:1;padding:10px 9px;min-height:44px;font:500 11px/1.4 Inter,system-ui,sans-serif;border:1px solid hsl(var(--border));border-radius:8px;background:transparent;color:hsl(var(--text-secondary))}.reader-tabs button[aria-pressed=true]{color:hsl(var(--primary-foreground));background:hsl(var(--primary));border-color:hsl(var(--primary))}.reader-tabs button:active{transform:scale(.98)}
#reader-detail{padding:24px;min-height:332px}.reader-detail-heading{display:grid;gap:10px;margin-bottom:20px}.reader-detail-heading>span{font-size:9px;letter-spacing:.08em;color:hsl(var(--text-secondary))}.reader-detail-heading>b{font-size:25px;font-weight:550;line-height:1.2;letter-spacing:-.03em}.reader-perspectives{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reader-perspectives>div{padding:15px;border:1px solid hsl(var(--border));border-radius:10px;background:hsl(var(--positive-soft))}.reader-perspectives>div+div{background:hsl(var(--brand-soft)/.65)}.reader-perspectives span{font-size:9px;font-weight:600;letter-spacing:.05em}.reader-perspectives p{font-size:12px;line-height:1.7;margin-top:7px;color:hsl(var(--text-secondary))}.reader-finding{margin-top:18px}.reader-finding>span{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:550}.reader-finding svg{width:15px;height:15px;color:hsl(var(--brand))}.reader-finding>p{font-size:12px;line-height:1.8;color:hsl(var(--text-secondary));margin-top:7px}.reader-sample-note{font-size:10px;color:hsl(var(--text-secondary));line-height:1.7;margin-top:19px}#reader-detail blockquote{font-size:17px;line-height:1.7;margin:0;padding:15px;border-radius:8px;background:hsl(var(--warm))}.reader-evidence{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px}.reader-evidence span{font-size:10px;color:hsl(var(--text-secondary));padding:5px 8px;border:1px solid hsl(var(--border));border-radius:5px}.reader-source-row{display:grid;grid-template-columns:95px 1fr;gap:15px;border-top:1px solid hsl(var(--border));padding:12px 0}.reader-source-row>span{font-size:12px;font-weight:550}.reader-source-row p{font-size:12px;line-height:1.7;color:hsl(var(--text-secondary))}.reader-ask{padding:16px 22px;border-top:1px solid hsl(var(--border));font-size:11px;background:hsl(var(--brand-soft)/.35);color:hsl(var(--text-secondary))}.reader-ask span{font-size:12px;color:hsl(var(--foreground));margin-left:5px}
@media(max-width:800px){.reader-section{grid-template-columns:1fr;gap:28px;padding-block:25px 40px}.reader-copy>p{max-width:560px}.reader-benefits{max-width:560px}}
@media(max-width:480px){.reader-copy h2{font-size:32px}.reader-copy>p{font-size:13px}.reader-demo-top{padding:17px}.reader-materials{padding:16px}.reader-tabs{padding:0 16px 14px;gap:5px}.reader-tabs button{font-size:10px;padding:9px 6px}#reader-detail{padding:19px;min-height:380px}.reader-detail-heading>b{font-size:23px}.reader-perspectives{gap:9px}.reader-perspectives>div{padding:12px}.reader-perspectives p{font-size:11px}.reader-source-row{grid-template-columns:77px 1fr;gap:10px}.reader-ask{padding:16px;font-size:10px}.reader-ask span{font-size:11px}.showcase-output>.reader-art{padding:20px}.showcase-output .reader-art h3{font-size:26px;margin-top:10px}.showcase-output .reader-art-tags{margin-top:12px}.showcase-output .reader-art-tags span{font-size:9px}.showcase-output .reader-art-lines{gap:6px;margin-top:12px}.showcase-output .reader-art-lines>span{font-size:10px}.reader-art h3{font-size:28px}.dialog-visual>.reader-art{min-height:310px;padding:25px}.dialog-visual .reader-art h3{font-size:34px}}
@media(hover:hover) and (pointer:fine){.reader-tabs button:hover{border-color:hsl(var(--brand))}}
@media(prefers-reduced-motion:reduce){.reader-tabs button:active{transform:none}}
@media(max-width:480px){.work-hero-copy h1>span{margin-inline-start:0}}
@media(max-width:480px){.showcase-output:not(.visual-sketch){min-height:280px}}

.work-hero-copy { margin-bottom: 22px; }
.work-hero .proof-strip { align-items: center; gap: 8px 16px; margin-top: 14px; }
.hero-privacy-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 32px;
  padding: 5px 10px;
  border: 1px solid #cdb6dd;
  border-radius: 7px;
  background: #e8dcf0;
  color: #43245a;
  font-size: 11px;
  font-weight: 550;
  line-height: 1.45;
}
.hero-privacy-link svg { width: 13px; height: 13px; flex-shrink: 0; }
.hero-privacy-link:focus-visible { outline-offset: 3px; }
[data-theme=dark] .hero-privacy-link { background: #3b3020; border-color: #80673a; color: #f6d77c; }
@media (max-width: 1100px) {
  .work-hero-copy { margin-bottom: 18px; }
}
@media (max-width: 800px) {
  .work-hero .proof-strip { gap: 8px 12px; }
}
@media (max-width: 600px) {
  .work-hero-copy { margin-bottom: 12px; }
  .work-hero .proof-strip { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 4px 10px; max-width: 350px; margin-top: 10px; }
  .work-hero .proof-strip > span { justify-content: center; gap: 6px; }
  .work-hero .proof-strip > span svg { width: 13px; height: 13px; flex-shrink: 0; }
  .hero-privacy-link { min-height: 44px; padding: 5px 7px; }
  .work-hero .proof-strip .hero-privacy-link span { font-size: 10px; line-height: 1.5; }
}
.privacy-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px 65px;
  padding: 48px;
  margin-block: 12px 64px;
  border: 1px solid #624a7a;
  border-radius: 24px;
  color: #fff9ee;
  background: #301c4f;
  scroll-margin-top: 24px;
}
.privacy-lead > .eyebrow { display: flex; align-items: center; gap: 10px; color: #dfcaef; }
.privacy-lead > .eyebrow svg { width: 16px; height: 16px; }
.privacy-lead h2 { font-size: clamp(42px, 4.2vw, 62px); line-height: 1.08; letter-spacing: -.05em; margin-top: 25px; color: #fff9ee; }
.privacy-lead h2 span { color: #f1c85c; }
.privacy-promise { font-size: 21px; line-height: 1.5; margin-top: 24px; font-weight: 500; color: #fff9ee; }
.privacy-intro { font-size: 14px; line-height: 1.85; max-width: 350px; margin-top: 15px; color: #dfd4e8; }
.privacy-commitments { display: grid; align-content: center; gap: 13px; }
.privacy-commitments article { display: flex; align-items: flex-start; gap: 16px; padding: 21px; background: #3d285b; border: 1px solid #644d7e; border-radius: 13px; }
.privacy-card-icon { color: #f1c85c; margin-top: 1px; flex-shrink: 0; }
.privacy-card-icon svg { width: 19px; height: 19px; }
.privacy-commitments h3 { font-size: 15px; font-weight: 550; letter-spacing: -.015em; color: #fff9ee; }
.privacy-commitments p { font-size: 13px; line-height: 1.75; margin-top: 7px; color: #e2d8eb; }
.privacy-provider-note { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 30px; border-top: 1px solid #624a7a; padding-top: 24px; }
.privacy-provider-note p { max-width: 650px; color: #dfd4e8; font-size: 12px; line-height: 1.8; text-wrap: balance; }
.privacy-provider-note a { flex-shrink: 0; color: #f1c85c; font-size: 12px; min-height: 44px; }
.privacy-provider-note a:focus-visible { outline-color: #f1c85c; outline-offset: 5px; }
.comparison-section { padding-block: 8px 55px; scroll-margin-top: 30px; }
.comparison-heading { display: grid; grid-template-columns: 1fr .8fr; align-items: center; gap: 60px; margin-bottom: 32px; }
.comparison-heading h2 { font-size: 45px; line-height: 1.15; letter-spacing: -.045em; margin-top: 16px; }
.comparison-heading > div > p { font-size: 14px; line-height: 1.8; color: hsl(var(--text-secondary)); max-width: 460px; margin-top: 16px; }
.comparison-models { display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 18px; padding: 25px 30px; background: hsl(var(--brand-soft) / .65); border: 1px solid hsl(var(--brand) / .2); border-radius: 16px; }
.comparison-models > span { font-size: 64px; line-height: 1; color: hsl(var(--brand)); letter-spacing: -.07em; font-weight: 550; }
.comparison-models > span > span { font-size: 35px; vertical-align: top; position: relative; top: 5px; }
.comparison-heading .comparison-models > p { font-size: 16px; margin: 0; line-height: 1.5; color: hsl(var(--foreground)); }
.comparison-models b { font-weight: 500; }
.comparison-models .model-names { grid-column: 1 / -1; margin-top: 20px; gap: 7px; }
.comparison-models .model-names span { flex: 1 0 auto; font-size: 10px; text-align: center; }
.comparison-controls { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.comparison-controls > span { font-size: 14px; font-weight: 550; }
.comparison-controls > div { display: flex; padding: 4px; border: 1px solid hsl(var(--border)); border-radius: 10px; background: hsl(var(--surface)); }
.comparison-controls button { border: 0; border-radius: 7px; padding: 10px 18px; min-height: 44px; font: 500 12px/1.4 Inter, system-ui, sans-serif; color: hsl(var(--text-secondary)); background: transparent; }
.comparison-controls button[aria-pressed=true] { background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); }
.comparison-controls button:active { transform: scale(.98); }
.comparison-table { width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 0; border: 1px solid hsl(var(--border)); border-radius: 15px; overflow: hidden; background: hsl(var(--surface)); }
.comparison-table th, .comparison-table td { text-align: left; vertical-align: top; padding: 23px 26px; }
.comparison-table thead th { width: 26%; font-size: 16px; font-weight: 550; vertical-align: middle; background: hsl(var(--warm)); border-bottom: 1px solid hsl(var(--border)); }
.comparison-table thead th:first-child { font-size: 12px; color: hsl(var(--text-secondary)); }
.comparison-table thead th:not(:first-child) { width: 37%; }
.comparison-table thead .bw-column > span { font-size: 23px; letter-spacing: -.06em; }
.comparison-table thead small { display: block; font-size: 11px; font-weight: 400; color: hsl(var(--text-secondary)); line-height: 1.6; margin-top: 5px; }
.comparison-table tbody th { font-size: 14px; line-height: 1.6; font-weight: 500; letter-spacing: -.01em; }
.comparison-table td { font-size: 13px; line-height: 1.8; color: hsl(var(--text-secondary)); }
.comparison-table td strong { display: block; font-size: 13px; font-weight: 550; color: hsl(var(--foreground)); margin-bottom: 3px; }
.comparison-table .bw-column { background: #f0e8f6; border-inline: 1px solid #d9c9e5; }
.comparison-table tbody tr:not(:last-child) > * { border-bottom: 1px solid hsl(var(--border)); }
.comparison-table td a { text-decoration: underline; text-underline-offset: 3px; }
.comparison-foot > p { font-size: 11px; line-height: 1.8; color: hsl(var(--text-secondary)); margin-top: 17px; }
.comparison-sources { border-bottom: 1px solid hsl(var(--border)); padding-bottom: 12px; margin-top: 8px; }
.comparison-sources summary { cursor: pointer; width: fit-content; min-height: 44px; padding-block: 12px; color: hsl(var(--foreground)); font-size: 12px; }
.comparison-sources summary:focus-visible { outline: 3px solid hsl(var(--primary)); outline-offset: 3px; border-radius: 4px; }
.comparison-sources > div { padding: 15px 22px 20px; background: hsl(var(--warm)); border-radius: 10px; }
.comparison-sources p { font-size: 12px; line-height: 1.9; color: hsl(var(--text-secondary)); max-width: 900px; }
.comparison-sources p + p { margin-top: 13px; }
.comparison-sources a { text-decoration: underline; text-underline-offset: 3px; }
[data-theme=dark] .privacy-section { background: #261b34; border-color: #604577; }
[data-theme=dark] .privacy-commitments article { background: #352644; border-color: #604577; }
[data-theme=dark] .comparison-models { background: #291e34; }
[data-theme=dark] .comparison-models > span { color: #c4a5e2; }
[data-theme=dark] .comparison-models .model-names span { color: #dfd1eb; border-color: #5c466d; }
[data-theme=dark] .comparison-table .bw-column { background: #2d2039; border-inline-color: #5c466d; }
@media (max-width: 1280px) {
  .comparison-models .model-names span { flex-basis: calc(25% - 7px); }
}
@media (max-width: 1000px) {
  .privacy-section { gap: 28px; padding: 35px; }
  .privacy-provider-note { align-items: flex-start; gap: 20px; }
  .privacy-provider-note p { max-width: 540px; }
  .comparison-heading { gap: 30px; }
  .comparison-heading h2 { font-size: 40px; }
  .comparison-models { padding: 23px; }
  .comparison-table th, .comparison-table td { padding: 20px; }
}
@media (max-width: 760px) {
  .privacy-section { grid-template-columns: 1fr; gap: 27px; padding: 30px; margin-block: 8px 42px; }
  .privacy-lead h2 { font-size: 48px; }
  .privacy-intro { max-width: 470px; }
  .privacy-provider-note { flex-direction: column; gap: 12px; }
  .privacy-provider-note a { min-height: 44px; }
  .comparison-heading { grid-template-columns: 1fr; gap: 24px; }
  .comparison-models { max-width: 460px; }
  .comparison-table, .comparison-table thead, .comparison-table tbody { display: block; }
  .comparison-table tr { display: grid; grid-template-columns: 1fr 1fr; }
  .comparison-table thead th:first-child { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); padding: 0; white-space: nowrap; }
  .comparison-table thead th:not(:first-child) { width: auto; }
  .comparison-table tbody th { grid-column: 1 / -1; padding: 15px 18px 12px; background: hsl(var(--warm)); font-size: 13px; }
  .comparison-table th, .comparison-table td { padding: 18px; }
  .comparison-table .bw-column { border-left: 0; }
  .comparison-table tbody tr:not(:last-child) { border-bottom: 1px solid hsl(var(--border)); }
  .comparison-table tbody tr:not(:last-child) > * { border-bottom: 0; }
}
@media (max-width: 480px) {
  .privacy-section { padding: 25px 22px; border-radius: 17px; }
  .privacy-lead h2 { font-size: 43px; margin-top: 20px; }
  .privacy-lead .eyebrow { font-size: 9px; letter-spacing: .09em; }
  .privacy-promise { font-size: 19px; margin-top: 20px; }
  .privacy-intro { font-size: 13px; }
  .privacy-commitments article { padding: 17px; gap: 12px; }
  .privacy-commitments h3 { font-size: 14px; }
  .privacy-commitments p { font-size: 12px; }
  .privacy-provider-note { padding-top: 20px; }
  .privacy-provider-note p { font-size: 11px; }
  .comparison-section { padding-bottom: 35px; }
  .comparison-heading h2 { font-size: 35px; }
  .comparison-heading > div > p { font-size: 13px; }
  .comparison-models { padding: 20px; column-gap: 15px; }
  .comparison-models > span { font-size: 59px; }
  .comparison-heading .comparison-models > p { font-size: 14px; }
  .comparison-models .model-names { gap: 5px; }
  .comparison-models .model-names span { font-size: 9px; padding: 5px 7px; }
  .comparison-controls { align-items: flex-start; flex-direction: column; gap: 12px; }
  .comparison-controls > div { width: 100%; }
  .comparison-controls button { flex: 1; }
  .comparison-table th, .comparison-table td { padding: 16px 13px; }
  .comparison-table thead .bw-column > span { font-size: 22px; }
  .comparison-table thead small { font-size: 10px; }
  .comparison-table tbody th { font-size: 12px; padding-inline: 13px; }
  .comparison-table td, .comparison-table td strong { font-size: 11px; line-height: 1.8; }
  .comparison-sources > div { padding: 15px; }
  .comparison-sources p { font-size: 11px; }
}
@media (hover: hover) and (pointer: fine) {
  .hero-privacy-link:hover { background: #dcc9e8; border-color: #ab87c3; color: #321b44; }
  [data-theme=dark] .hero-privacy-link:hover { background: #504026; border-color: #a08245; color: #ffe6a0; }
  .privacy-provider-note a:hover { color: #ffe49d; }
  .comparison-controls button:not([aria-pressed=true]):hover { color: hsl(var(--foreground)); background: hsl(var(--brand-soft) / .6); }
}
@media (prefers-reduced-motion: reduce) {
  .comparison-controls button:active { transform: none; }
}
.welcome-style { display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid hsl(var(--brand) / .18); margin-top: 18px; padding-top: 16px; }
.welcome-style > label { font-size: 12px; font-weight: 500; color: hsl(var(--text-secondary)); }
.style-select { position: relative; width: 200px; max-width: 65%; min-width: 0; }
.style-select-trigger { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid hsl(var(--border)); border-radius: 8px; background: hsl(var(--background)); color: hsl(var(--foreground)); font: 400 16px/1.5 Inter, system-ui, sans-serif; cursor: pointer; text-align: left; }
.style-select-trigger > svg { width: 14px; height: 14px; flex-shrink: 0; transform: rotate(90deg); }
.style-select-trigger[aria-expanded=true] > svg { transform: rotate(-90deg); }
.style-select-trigger:focus-visible { outline: 3px solid hsl(var(--primary)); outline-offset: 3px; }
.style-options { position: absolute; right: 0; top: calc(100% + 6px); width: min(360px, calc(100vw - 80px)); max-height: 380px; overflow-y: auto; overscroll-behavior: contain; padding: 5px; border: 1px solid hsl(var(--border)); border-radius: 11px; background: hsl(var(--surface)); box-shadow: 0 12px 32px hsl(var(--shadow-color) / .2); z-index: 30; }
.style-options[data-side=above] { top: auto; bottom: calc(100% + 6px); }
.style-option { display: flex; align-items: flex-start; gap: 12px; padding: 11px 12px; border-radius: 7px; cursor: pointer; text-align: left; color: hsl(var(--foreground)); }
.style-option > span { flex: 1; min-width: 0; }
.style-option strong { display: block; font-size: 13px; font-weight: 550; line-height: 1.5; }
.style-option small { display: block; margin-top: 3px; font-size: 12px; line-height: 1.6; color: hsl(var(--text-secondary)); }
.style-option > svg { width: 16px; height: 16px; margin-top: 2px; color: hsl(var(--foreground)); visibility: hidden; flex-shrink: 0; }
.style-option[data-current=true] > svg { visibility: visible; }
.style-option[aria-selected=true] { background: hsl(var(--brand-soft)); outline: 1px solid hsl(var(--brand) / .25); outline-offset: -1px; }
.hello-panel .history-block { background: hsl(var(--surface)); }

.artifact-preview{display:flex;width:100%;height:100%;align-items:center;justify-content:center;overflow:hidden;background:#f6eedc;padding:16px}
.artifact-preview>img{display:block;max-width:100%;width:100%;max-height:100%;height:100%;object-fit:contain;border-radius:6px}
.artifact-room{padding:0;background:#7d4e32}.artifact-room>img{object-fit:cover;border-radius:0}
.artifact-lesson{background:#d7c6e9;padding:20px}.artifact-analysis{background:#c9e3da;padding:24px}
.artifact-lesson>img,.artifact-analysis>img{height:auto;box-shadow:0 8px 22px -15px #24123766}
.document-spread{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;height:100%;padding:18px 22px;background:#e8d7bc;overflow:hidden;align-items:center}
.document-spread>img{display:block;width:100%;height:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 7px 7px #483b4822)}
.showcase-output.visual-sketch{aspect-ratio:16/10}
.showcase-output .artifact-preview{padding:18px}.showcase-output .artifact-room{padding:0}
.showcase-companions .result-visual{min-height:180px}
.showcase-companions .document-spread{padding:14px 28px;gap:12px}
.dialog-visual:has(.artifact-preview),.dialog-visual:has(.document-spread){padding:0;display:flex;align-items:stretch;overflow:hidden}
.dialog-visual .artifact-preview{min-height:420px;height:auto;padding:24px;align-items:center}
.dialog-visual .artifact-preview>img{height:auto;max-height:none}
.dialog-visual .artifact-room{padding:0}.dialog-visual .artifact-room>img{height:100%;object-fit:contain}
.dialog-visual .document-spread{min-height:420px;height:auto;padding:24px 18px}
.original-note{font-size:11px!important;line-height:1.65!important;margin:18px 0 6px!important;color:hsl(var(--text-secondary))}
.original-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:13px;font-weight:550;color:hsl(var(--brand));text-underline-offset:4px}
.extra-output{margin:22px 0 0}.extra-output img{display:block;width:100%;border-radius:10px}.extra-output figcaption{font-size:11px;color:hsl(var(--text-secondary));margin-top:8px;line-height:1.6}
.task-result-visual .artifact-preview,.task-result-visual .document-spread{min-height:300px;max-height:440px}
@media(max-width:800px){.dialog-visual .artifact-preview,.dialog-visual .document-spread{min-height:0}.dialog-visual .artifact-preview>img{max-height:400px;object-fit:contain}.showcase-companions .document-spread{max-height:280px}}
@media(max-width:480px){.document-spread{padding:14px 20px;gap:10px}.artifact-lesson{padding:15px}.artifact-analysis{padding:18px}.showcase-output.visual-sketch{aspect-ratio:16/10}.showcase-output .artifact-preview{padding:10px}.showcase-output .artifact-room{padding:0}.showcase-companions .document-spread{padding:12px 35px}.dialog-visual .artifact-preview{padding:16px}.dialog-visual .artifact-room{padding:0}.dialog-visual .document-spread{padding:20px;max-height:330px}.task-result-visual .artifact-preview,.task-result-visual .document-spread{min-height:220px}}
@media(min-width:801px){.showcase-companions{grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.showcase-companions .result-visual{flex:1 1 0;min-height:0;height:clamp(170px,16vw,230px)}.showcase-companions .artifact-preview,.showcase-companions .document-spread{position:absolute;inset:0;min-height:0}.showcase-companions .document-spread>img{min-height:0}}
.result-visual .document-spread{align-items:start;padding:18px;gap:12px}.result-visual .document-spread>img{height:auto;max-height:none}
.artifact-interactive,.artifact-slides{background:#060a18;padding:0}.artifact-interactive>img,.artifact-slides>img{border-radius:0}
.showcase-output .artifact-interactive,.showcase-output .artifact-slides{padding:0}
.artifact-sketch{padding:0;background:#f5f0e5}.artifact-sketch>img{border-radius:0}
.showcase-output.visual-sketch{aspect-ratio:1376/768}.showcase-output .artifact-sketch{padding:0}
.artifact-research{background:#d7e6da;padding:18px}.artifact-research>img{height:auto;box-shadow:0 8px 20px -15px #243a2766}
.capture-dark{display:none!important}[data-theme=dark] .capture-dark{display:block!important}[data-theme=dark] .capture-light{display:none!important}
.artifact-plan{padding:0;background:#fffcf7}.artifact-plan>img{border-radius:0;object-fit:cover;object-position:center 42%}
[data-theme=dark] .artifact-plan{background:#17141e}
.dialog-visual .artifact-plan{padding:0}.dialog-visual .artifact-plan>img{height:auto;object-fit:contain}
.real-family{min-width:0;border:1px solid hsl(var(--border));border-radius:14px;background:hsl(var(--background));overflow:hidden}
.real-workspace-label{padding:16px 18px;display:grid;gap:5px;border-bottom:1px solid hsl(var(--border))}.real-workspace-label span{font-size:8px;letter-spacing:.09em;color:hsl(var(--text-secondary))}.real-workspace-label b{font-size:13px;font-weight:550}
.family-capture{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer}.family-capture .artifact-preview{height:auto;display:block}.family-capture .artifact-preview>img{height:auto;max-height:none}
.family-capture .look-closer{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:20px;background:hsl(var(--surface));border:1px solid hsl(var(--border));color:hsl(var(--foreground));font-size:10px;box-shadow:0 3px 9px #0001}
.capture-caption{margin:0;padding:12px 18px;border-top:1px solid hsl(var(--border));font-size:10px;color:hsl(var(--text-secondary));line-height:1.6}
.carry-output{width:100%;border:0;padding:0;color:inherit;text-align:left;font:inherit;cursor:pointer;background:transparent;gap:20px}.carry-output>img{width:105px;height:149px;border-radius:4px;box-shadow:0 4px 12px #291a3d1a}.carry-output>span{display:grid;gap:10px}.carry-output b{font-size:14px}.carry-output span>span{font-size:12px;line-height:1.65;color:hsl(var(--text-secondary))}.carry-output small{display:flex;align-items:center;gap:7px;font-size:10px;color:hsl(var(--brand))}.carry-output small svg{width:13px;height:13px}
.carry-lesson{position:relative;display:block;overflow:hidden;width:100%;height:220px;padding:0;border:1px solid hsl(var(--border));border-radius:8px;background:#fbf8f1;cursor:pointer}.carry-lesson>img{display:block;width:100%;height:auto}.carry-lesson>span{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:8px;background:hsl(var(--surface));color:hsl(var(--foreground));font-size:10px;padding:7px 11px;border:1px solid hsl(var(--border));border-radius:20px}.carry-lesson svg{width:14px;height:14px}
@media(max-width:480px){.showcase-output.visual-sketch{aspect-ratio:1376/768}.family-together{padding:18px}.carry-output>img{width:85px;height:120px}.carry-output{gap:14px}.carry-output b{font-size:13px}.carry-lesson{height:180px}}
[data-theme=dark] .carry-output small{color:hsl(var(--text-secondary))}
.hero-privacy-link>span{text-wrap:balance}

.education-hero{padding-top:22px;padding-bottom:24px}.education-hero .work-hero-copy{max-width:820px;margin-inline:auto}.education-hero .work-hero-copy h1{font-size:clamp(44px,5vw,68px);line-height:1.04;letter-spacing:-.055em;margin:14px 0 16px;text-wrap:balance}.education-hero .work-hero-copy h1>span{display:inline;margin:0}.education-hero .work-hero-copy>p{max-width:610px;margin-inline:auto;font-size:17px;line-height:1.65;text-wrap:pretty}.education-hero .hero-actions{margin-top:18px}.education-hero .proof-strip{margin-top:16px;gap:22px;justify-content:center}.education-hero .hero-privacy-link{padding:8px 12px}.class-demo{margin-top:24px;border:1px solid hsl(var(--border));border-radius:20px;overflow:hidden;background:hsl(var(--surface));box-shadow:0 20px 60px -42px #39254b66}.class-demo-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 23px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--brand-soft)/.45);font-size:13px;font-weight:550}.class-demo-bar>span:first-child{display:flex;align-items:center;gap:10px}.class-demo-bar svg{color:hsl(var(--brand));width:18px}.demo-subtitle{color:hsl(var(--text-secondary));font-weight:400}.demo-label{font-size:10px;font-weight:400;color:hsl(var(--text-secondary))}.study-tabs{display:flex;justify-content:center;gap:6px;padding:9px 20px;background:hsl(var(--surface));border-bottom:1px solid hsl(var(--border))}.study-tabs button{border:0;background:transparent;color:hsl(var(--text-secondary));padding:12px 22px;min-height:44px;border-radius:24px;font:500 13px/1.3 Inter,system-ui,sans-serif;cursor:pointer;transition:background-color 160ms ease,color 160ms ease,transform 160ms ease-out}.study-tabs button[aria-pressed=true]{background:hsl(var(--primary));color:hsl(var(--primary-foreground));box-shadow:0 3px 7px #35144a17}.study-tabs button:active{transform:scale(.97)}.class-layout{display:grid;grid-template-columns:215px minmax(0,1fr)}.class-inputs{padding:29px 21px;background:hsl(var(--positive-soft)/.55);border-right:1px solid hsl(var(--border));text-align:left}.class-inputs>.eyebrow{font-size:8px}.class-folder{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:2px 9px;margin:26px 0 20px}.class-folder svg{grid-row:span 2;width:33px;height:33px;color:#ae7b26;fill:#e6c47c33}.class-folder b{font-weight:600;font-size:15px}.class-folder>span{font-size:10px;color:hsl(var(--text-secondary))}.class-inputs ul{list-style:none;margin:0;padding:0;display:grid;gap:13px}.class-inputs li{display:flex;align-items:center;gap:8px;font-size:11px;line-height:1.5}.class-inputs li svg{width:15px;height:15px;color:hsl(var(--text-secondary));flex-shrink:0}.class-goal{padding:19px 0;margin-top:24px;border-top:1px solid hsl(var(--border))}.class-goal>span{font-size:8px;letter-spacing:.1em;font-weight:550;color:hsl(var(--text-secondary))}.class-goal p{font-size:14px;line-height:1.6;margin-top:10px;text-wrap:pretty}.source-download{display:flex;align-items:center;gap:6px;min-height:44px;font-size:10px;color:hsl(var(--text-secondary));text-decoration:none}.source-download svg{width:12px;height:12px}.class-result{min-width:0;padding:22px;text-align:left}.class-result-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.class-result-heading h2{font-size:22px;line-height:1.25;letter-spacing:-.035em;margin-top:6px;text-wrap:balance}.class-result-heading .eyebrow{font-size:8px}.class-result-heading>.text-link{font-size:11px;white-space:nowrap}.class-result-heading .text-link svg{width:14px;height:14px}.class-output{position:relative;display:block;width:100%;padding:0;aspect-ratio:16/9;border:1px solid hsl(var(--border));border-radius:11px;overflow:hidden;background:#ddede3;cursor:pointer;text-align:left}.class-output .artifact-preview{padding:0;background:#ddede3}.class-output .artifact-preview>img{border-radius:0;object-fit:contain}.class-output.visual-lesson .artifact-preview,.class-output.visual-practice .artifact-preview{background:#f9f7f0}.class-request{display:flex;align-items:baseline;gap:16px;padding:16px 0 0}.class-request>span{font-size:8px;color:hsl(var(--text-secondary));font-weight:600;letter-spacing:.09em;white-space:nowrap}.class-request p{font-size:13px;line-height:1.6;text-wrap:pretty}.class-description{font-size:11px;line-height:1.7;color:hsl(var(--text-secondary));margin-top:7px;margin-left:69px;text-wrap:pretty}.class-caption{display:flex;align-items:center;justify-content:center;gap:12px;margin:15px 0 0;color:hsl(var(--text-secondary));font-size:10px;line-height:1.7}.class-caption a{display:inline-flex;align-items:center;gap:5px;color:inherit;min-height:32px;text-underline-offset:3px}.class-caption svg{width:11px;height:11px}
.education-steps{padding-block:42px 54px}.section-intro{max-width:670px}.section-intro h2,.study-together h2,.campus-heading h2{font-size:clamp(31px,3.5vw,46px);line-height:1.16;letter-spacing:-.04em;margin:16px 0}.section-intro>p{font-size:15px;line-height:1.8;color:hsl(var(--text-secondary));text-wrap:pretty}.three-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:30px}.three-steps article{padding:23px 24px;border:1px solid hsl(var(--border));border-radius:14px;background:hsl(var(--brand-soft)/.4)}.three-steps article:nth-child(2){background:hsl(var(--positive-soft)/.65)}.three-steps article:nth-child(3){background:hsl(var(--warm))}.step-number{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;font-size:12px;font-weight:600;color:hsl(var(--foreground));border:1px solid hsl(var(--foreground)/.25);margin-bottom:25px}.three-steps h3{font-size:19px;line-height:1.35;letter-spacing:-.025em;text-wrap:balance}.three-steps p{font-size:13px;line-height:1.8;color:hsl(var(--text-secondary));margin-top:11px;text-wrap:pretty}.step-detail{display:block;font-size:10px;color:hsl(var(--text-secondary));margin-top:20px;line-height:1.7}.steps-actions{display:flex;align-items:center;gap:25px;margin-top:25px}.steps-actions>.text-link{font-size:12px}.study-together{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:45px;align-items:center;padding:38px;background:hsl(var(--positive-soft)/.7);border:1px solid hsl(var(--border));border-radius:19px;margin-block:10px 55px}.study-together-copy>p{font-size:14px;line-height:1.85;color:hsl(var(--text-secondary));max-width:430px;margin-top:15px;text-wrap:pretty}.study-together-copy .free-pill{margin:22px 0 13px;font-size:10px}.study-together-copy>.text-link{font-size:12px}.study-workspace{padding:0;position:relative;border:1px solid hsl(var(--border));border-radius:12px;overflow:hidden;background:hsl(var(--surface));cursor:pointer;width:100%;text-align:left;color:inherit}.study-workspace>img{display:block;width:100%;height:auto}.study-workspace>span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;font-size:11px}.study-workspace svg{width:14px;height:14px}.campus-section{padding-block:15px 54px}.campus-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.campus-heading img{object-fit:contain;width:100px;height:108px}.campus-section .result-visual{height:250px}.campus-section .artifact-preview{padding:0}.campus-section .artifact-preview>img{object-fit:contain;border-radius:0}.artifact-planner,.artifact-today{background:#f5edd9}.artifact-dorm{background:#e5ded2}.campus-section .result-caption h3{font-size:18px}.campus-section .result-caption p{font-size:11px}.comparison-expand{border:1px solid hsl(var(--border));border-radius:13px;overflow:hidden;background:hsl(var(--surface))}.comparison-expand>summary{cursor:pointer;min-height:60px;padding:20px 24px;list-style:revert;font-size:15px;font-weight:550}.comparison-expand>summary>span{font-size:11px;font-weight:400;color:hsl(var(--text-secondary));float:right;margin:4px 0 0 12px}.comparison-expand .comparison-controls{padding:16px 24px;margin:0;border-top:1px solid hsl(var(--border))}.comparison-section .comparison-heading{margin-bottom:22px}.comparison-section .comparison-heading h2{font-size:38px}.comparison-section{padding-block:36px 45px}.comparison-foot{padding-top:15px}.free-section .free-capacity{display:block;margin-top:18px}.free-section>div>p{margin-bottom:25px}.asset-library{padding-block:40px 60px}.asset-library .section-intro{margin:35px 0}.asset-library h1{font-size:clamp(40px,5vw,64px);line-height:1.1;letter-spacing:-.04em;margin-block:17px}.asset-library .section-intro .text-link{margin-top:20px;font-size:12px}.asset-library .artifact-preview{padding:0}.asset-library .artifact-preview>img{border-radius:0}.asset-library .result-visual{height:270px}.asset-library .results-grid{row-gap:34px}.dialog-visual .artifact-lesson,.dialog-visual .artifact-practice,.dialog-visual .artifact-notes,.dialog-visual .artifact-planner,.dialog-visual .artifact-today,.dialog-visual .artifact-dorm,.dialog-visual .artifact-shared{padding:0;min-height:0}.dialog-visual .artifact-preview>img{object-fit:contain;border-radius:0}.dialog-visual{background:#f8f6ee}.design-dock a{white-space:nowrap}
@media(hover:hover) and (pointer:fine){.study-tabs button:not([aria-pressed=true]):hover{background:hsl(var(--brand-soft)/.7);color:hsl(var(--foreground))}.study-workspace:hover{border-color:hsl(var(--brand))}}
@media(max-width:1000px){.class-layout{grid-template-columns:180px minmax(0,1fr)}.class-inputs{padding:25px 16px}.class-result{padding:18px}.class-result-heading{align-items:flex-start}.class-result-heading h2{font-size:20px}.class-result-heading>.text-link{font-size:10px}.three-steps{gap:15px}.three-steps article{padding:22px 18px}.study-together{padding:28px;gap:28px}.campus-section .result-visual{height:205px}}
@media(max-width:800px){.education-hero{padding-top:27px}.education-hero .work-hero-copy>p{font-size:16px;max-width:570px}.class-demo{margin-top:25px}.class-layout{display:block}.class-inputs{display:flex;align-items:center;gap:14px;padding:15px 20px;border-right:0;border-bottom:1px solid hsl(var(--border))}.class-inputs>.eyebrow,.class-goal,.source-download,.class-folder{display:none}.class-inputs ul{display:flex;flex-wrap:wrap;gap:12px 20px}.class-inputs li{font-size:10px}.class-result-heading{align-items:center}.class-result-heading h2{font-size:23px}.class-output{aspect-ratio:16/10}.class-caption{flex-wrap:wrap;gap:0 10px}.education-steps{padding-block:31px 40px}.three-steps{grid-template-columns:1fr;gap:12px;margin-top:23px}.three-steps article{display:grid;grid-template-columns:30px 1fr;gap:0 16px;padding:21px}.step-number{margin:0;grid-row:span 3}.three-steps h3{font-size:19px}.three-steps p{margin-top:7px;font-size:13px}.step-detail{grid-column:2;margin-top:10px}.study-together{grid-template-columns:1fr;gap:24px;margin-bottom:36px}.study-together-copy>p{max-width:100%}.study-together h2{font-size:37px}.study-workspace{max-width:620px}.campus-section{padding-bottom:32px}.campus-section .result-visual{height:255px}.campus-section .results-grid{grid-template-columns:1fr}.campus-section .result-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:18px;align-items:center}.campus-section .result-caption{padding:0;gap:10px}.campus-section .result-caption h3{font-size:20px}.campus-section .result-caption .result-arrow{display:none}.campus-heading h2{font-size:35px}.comparison-expand>summary>span{float:none;display:block;margin:7px 0 0}.steps-actions{flex-wrap:wrap;gap:10px 24px}.asset-library .results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.education-hero .work-hero-copy h1{font-size:43px;letter-spacing:-.055em;margin:17px 0}.education-hero .work-hero-copy>p{font-size:14px;line-height:1.75}.education-hero .hero-actions{gap:20px;margin-top:20px}.education-hero .hero-actions>.text-link{font-size:11px}.education-hero .proof-strip{display:flex;flex-wrap:wrap;gap:4px 15px;margin-top:14px}.education-hero .hero-privacy-link{font-size:9px;max-width:none;min-width:0;padding:7px 10px}.education-hero .hero-privacy-link span{white-space:nowrap}.education-hero .proof-strip>span{font-size:9px;min-height:30px}.class-demo{margin-top:20px;border-radius:14px}.class-demo-bar{padding:13px 15px;font-size:11px;gap:10px}.demo-subtitle{font-size:10px}.demo-label{font-size:8px;max-width:85px;line-height:1.5;text-align:right}.class-demo-bar>span:first-child{gap:6px;flex-wrap:wrap}.class-demo-bar svg{width:15px}.study-tabs{padding:10px 8px;gap:3px}.study-tabs button{padding:11px 12px;font-size:11px;white-space:nowrap;min-width:0}.class-inputs{padding:11px 14px}.class-inputs ul{gap:7px 12px}.class-inputs li{font-size:8px;gap:5px}.class-inputs li svg{width:12px;height:12px}.class-result{padding:16px 12px 13px}.class-result-heading{gap:12px;margin-bottom:13px;align-items:start}.class-result-heading h2{font-size:19px;max-width:220px;line-height:1.25}.class-result-heading>.text-link{font-size:9px;min-width:53px;white-space:normal;line-height:1.5;margin-top:14px;gap:3px}.class-result-heading>.text-link svg{flex-shrink:0;width:12px}.class-output{aspect-ratio:16/10;border-radius:8px}.class-request{display:block;padding-top:12px}.class-request>span{font-size:7px}.class-request p{font-size:11px;margin-top:5px}.class-description{margin:6px 0 0;font-size:10px;line-height:1.65}.class-caption{font-size:9px;margin-top:9px;line-height:1.6}.class-caption a{min-height:32px}.education-steps{padding-top:26px}.section-intro h2{font-size:31px}.section-intro>p{font-size:13px}.three-steps article{padding:18px;gap:0 13px}.three-steps h3{font-size:17px}.three-steps p{font-size:12px}.step-detail{font-size:9px}.steps-actions>.text-link{font-size:11px}.study-together{padding:21px;border-radius:15px}.study-together h2{font-size:32px}.study-together-copy>p{font-size:13px}.study-together-copy .free-pill{font-size:9px;line-height:1.6}.study-together-copy>.text-link{font-size:11px}.study-workspace>span{font-size:10px;padding:12px}.campus-heading h2{font-size:30px}.campus-heading img{width:66px;height:75px}.campus-heading .eyebrow{font-size:8px}.campus-section .result-card{display:block}.campus-section .result-visual{height:auto;aspect-ratio:4/3}.campus-section .result-caption{padding:15px 0 0}.campus-section .result-caption h3{font-size:19px}.campus-section .results-grid{gap:26px}.comparison-section .comparison-heading h2{font-size:32px}.comparison-expand>summary{font-size:13px;padding:17px}.comparison-expand>summary>span{font-size:10px}.comparison-expand .comparison-controls{padding:15px}.asset-library .results-grid{grid-template-columns:1fr}.asset-library .result-visual{height:auto;aspect-ratio:4/3}.asset-library .section-intro>p{font-size:13px}.design-dock{flex-wrap:wrap;justify-content:center;gap:3px 7px}}
@media(prefers-reduced-motion:reduce){.study-tabs button{transition:none}.study-tabs button:active{transform:none}}
@media(min-width:1100px){.education-hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.5fr);gap:14px 42px;align-items:center;padding-block:35px 30px}.education-hero .work-hero-copy{margin:0;max-width:none;text-align:left}.education-hero .work-hero-copy h1{font-size:clamp(44px,3.7vw,55px);line-height:1.08;letter-spacing:-.05em;margin:18px 0 22px;text-wrap:pretty}.education-hero .work-hero-copy>p{font-size:16px;line-height:1.8;margin:0;max-width:415px;text-wrap:pretty}.education-hero .hero-actions{justify-content:flex-start;gap:22px;margin-top:26px}.education-hero .hero-actions>.text-link{font-size:12px}.education-hero .proof-strip{justify-content:flex-start;flex-wrap:wrap;gap:8px 17px;margin-top:20px}.education-hero .proof-strip>span{font-size:10px}.education-hero .class-demo{margin:0;grid-column:2;grid-row:1}.education-hero .class-layout{display:block}.education-hero .class-inputs{display:flex;align-items:center;gap:14px;padding:13px 20px;border-right:0;border-bottom:1px solid hsl(var(--border))}.education-hero .class-inputs>.eyebrow,.education-hero .class-folder,.education-hero .class-goal,.education-hero .source-download{display:none}.education-hero .class-inputs ul{display:flex;flex-wrap:wrap;gap:10px 22px}.education-hero .class-inputs li{font-size:10px}.education-hero .class-result{padding:18px}.education-hero .class-result-heading h2{font-size:21px}.education-hero .class-result-heading{margin-bottom:15px}.education-hero .class-request{gap:10px;padding-top:12px}.education-hero .class-request p{font-size:12px}.education-hero .class-description{font-size:10px;margin-left:63px}.education-hero .class-caption{grid-column:2;margin:0;font-size:9px}.education-hero .class-demo-bar{font-size:12px;padding:12px 18px}.education-hero .study-tabs{padding:10px 16px}.education-hero .study-tabs button{font-size:12px;padding:11px 20px}}
[data-theme=dark] .study-together-copy>.eyebrow{color:#bfb0ca}
@media(max-width:480px){.hello-intro h1>span{display:block;text-wrap:balance}.asset-library h1{text-wrap:balance}}

.class-demo{background:#fff;border-color:#ded8e4;box-shadow:0 18px 48px -32px #39254b40}
.class-demo-bar{background:#f4eff8;border-color:#e8e1ed}
.study-tabs{background:#fff;border-color:#ece8ef}
.class-inputs{background:#faf9fc;border-color:#ece8ef}
.class-result{padding:0!important;background:#fff}
.class-result-heading{padding:18px 22px 15px;margin:0!important}
.class-result-heading>.text-link{color:#70518b}
.class-result-heading .eyebrow{color:#6e6376}
.class-result-heading h2{color:#2c2533}
.class-output{display:block;aspect-ratio:auto!important;width:100%;border:0;border-radius:0!important;background:transparent;overflow:hidden}
.class-output .artifact-preview{display:block;position:static;width:100%;height:auto;min-height:0;padding:0;background:transparent!important;aspect-ratio:auto}
.class-output .artifact-preview>img{display:block;width:100%;height:auto;min-height:0;max-width:none;max-height:none;object-fit:initial;border-radius:0;box-shadow:none}
.class-request{padding:15px 22px 5px!important;margin:0;background:#fff}
.class-request>span{color:#6e6376}
.class-request p{color:#2c2533}
.class-description{color:#655b6d;margin:0!important;padding:0 22px 17px 85px;text-wrap:pretty}
.class-caption{color:hsl(var(--text-secondary))}
.class-result-heading .text-link svg{flex-shrink:0}
.class-output:focus-visible{outline:3px solid #936eae;outline-offset:-4px}
.campus-section .result-visual,.asset-library .result-visual{height:auto!important;aspect-ratio:auto!important;border-radius:12px;overflow:hidden;background:transparent}
.campus-section .artifact-preview,.asset-library .artifact-preview{display:block;height:auto;min-height:0;background:transparent;padding:0}
.campus-section .artifact-preview>img,.asset-library .artifact-preview>img{display:block;width:100%;height:auto;max-height:none;object-fit:initial;box-shadow:none}
.campus-section .results-grid{align-items:start}
.dialog-visual:has(.artifact-preview){background:transparent;align-items:flex-start}
.dialog-visual .artifact-preview{display:block;padding:0;min-height:0;height:auto;background:transparent}
.dialog-visual .artifact-preview>img{display:block;width:100%;height:auto;max-height:none;object-fit:initial;box-shadow:none}
.asset-library .document-spread{height:auto;aspect-ratio:auto;padding:13px;background:#f3edf7;align-items:start}
.asset-library .document-spread>img{height:auto}
[data-theme=dark] .class-demo{border-color:#51415e;box-shadow:0 18px 48px -32px #0008}
[data-theme=dark] .class-demo-bar{background:#2b2137;color:#e9e1f0;border-color:#493b55}
[data-theme=dark] .class-demo-bar svg{color:#ba9dd4}
[data-theme=dark] .class-demo-bar .demo-label,[data-theme=dark] .class-demo-bar .demo-subtitle{color:#cec0d9}
[data-theme=dark] .study-tabs{background:#211a2a;border-color:#493b55}
[data-theme=dark] .class-inputs{background:#f5f3f7;color:#4d4358;border-color:#e6dfec}
[data-theme=dark] .class-inputs li svg{color:#766582}
[data-theme=dark] .class-result-heading>.text-link{color:#70518b}
@media(min-width:1100px){.education-hero{gap:14px 42px}.education-hero .class-demo{align-self:center}.education-hero .class-inputs{padding:11px 22px}.education-hero .class-result-heading{padding:17px 22px 14px}.education-hero .class-description{font-size:10px}.education-hero .class-request{gap:10px}}
@media(max-width:800px){.class-result-heading{padding:17px 18px 14px}.class-request{padding:14px 18px 5px!important}.class-description{padding:0 18px 17px 79px}.campus-section .result-card{align-items:start}}
@media(max-width:480px){.class-result-heading{padding:15px 14px 12px}.class-result-heading h2{font-size:18px;max-width:210px}.class-request{padding:12px 14px 4px!important}.class-description{padding:0 14px 14px}.education-hero .class-demo-bar{padding:12px 14px}.class-inputs{padding:10px 14px}.campus-section .result-visual{border-radius:10px}}
@media(hover:hover) and (pointer:fine){.class-output:hover{filter:brightness(1.015)}[data-theme=dark] .study-tabs button:not([aria-pressed=true]):hover{background:#35253e;color:#efe5f6}}

.study-hero { padding-top: 26px; padding-bottom: 18px; }
.study-hero-copy { text-align: center; max-width: 860px; margin-inline: auto; }
.study-hero-copy > .eyebrow { justify-content: center; }
.hero-title { display: flex; align-items: center; justify-content: center; gap: 14px; }
.hero-buck { width: 108px; height: 116px; flex-shrink: 0; object-fit: contain; }
.brand .brand-buck { display: block; width: 42px; height: 48px; object-fit: contain; }
.campus-heading .buck-planner { width: 120px; height: 132px; transform: scaleX(-1); }
.study-hero-copy h1 { font-size: clamp(48px, 5vw, 68px); line-height: 1.02; letter-spacing: -.055em; margin: 16px 0 17px; text-wrap: balance; }
.study-hero-copy h1 > span { display: block; }
.study-hero-copy > p { font-size: 16px; line-height: 1.7; color: hsl(var(--text-secondary)); text-wrap: pretty; }
.study-hero-copy .hero-actions { display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 26px; margin-top: 20px; }
.study-hero-copy .hero-actions > .text-link { font-size: 12px; }
.study-hero-copy .proof-strip { justify-content: center; gap: 20px; margin-top: 12px; }
.study-hero-copy .hero-privacy-link { padding: 7px 12px; }
.study-hero-copy .proof-strip > span { font-size: 10px; }
.study-evidence { display: grid; grid-template-columns: minmax(0, 1.47fr) minmax(0, 1fr); gap: 22px; margin-top: 27px; align-items: stretch; }
.lesson-showcase { min-width: 0; display: flex; flex-direction: column; }
.hero-study-tabs { display: flex; gap: 5px; padding: 0 0 11px 2px; }
.hero-study-tabs button { background: transparent; border: 1px solid transparent; border-radius: 24px; min-height: 36px; padding: 8px 16px; font-size: 11px; font-weight: 550; color: hsl(var(--text-secondary)); transition: background-color 160ms ease, color 160ms ease; }
.hero-study-tabs button[aria-pressed=true] { background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); }
.hero-study-tabs button:focus-visible, .hero-paper:focus-visible { outline: 3px solid hsl(var(--brand)); outline-offset: 4px; }
#work-showcase-content { flex: 1; }
.hero-result { border-radius: 17px; overflow: hidden; background: hsl(var(--positive-soft)); height: 100%; display: flex; flex-direction: column; border: 1px solid hsl(var(--border-soft)); }
.hero-artwork { display: block; border: 0; padding: 0; position: relative; width: 100%; background: #fff; }
.hero-artwork .artifact-preview { display: block; padding: 0; height: auto; min-height: 0; background: #fff; }
.hero-artwork .artifact-preview > img { display: block; width: 100%; height: auto; max-height: none; border: 0; border-radius: 0; box-shadow: none; object-fit: initial; }
.hero-art-expand { position: absolute; right: 12px; bottom: 12px; display: flex; align-items: center; gap: 6px; padding: 7px 10px; border-radius: 20px; background: #fffef5f5; color: #362646; font-size: 9px; box-shadow: 0 2px 12px #271a3214; }
.hero-art-expand svg { width: 12px; height: 12px; }
.hero-artwork:focus-visible { outline: 3px solid hsl(var(--brand)); outline-offset: -4px; }
.hero-practice-artwork { padding: clamp(14px, 1.8vw, 26px); background: #fffff8; }
.hero-practice-artwork .artifact-preview { background: #fffff8; }
.hero-practice-artwork .hero-art-expand { right: 10px; bottom: 8px; }
.hero-result-caption { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 19px 22px; flex: 1; }
.hero-result-caption h2 { font-size: 22px; letter-spacing: -.035em; line-height: 1.2; text-wrap: balance; }
.hero-result-caption p { margin-top: 6px; font-size: 11px; color: hsl(var(--text-secondary)); text-wrap: pretty; }
.hero-result-link { display: inline-flex; gap: 8px; align-items: center; white-space: nowrap; font-size: 11px; font-weight: 550; min-height: 44px; }
.hero-result-link svg { width: 17px; height: 17px; }
.math-showcase { border-radius: 18px; background: hsl(var(--brand-soft)); padding: 23px 24px 15px; display: flex; flex-direction: column; align-self: stretch; }
.math-showcase-heading > .eyebrow { font-size: 8px; letter-spacing: .12em; }
.math-showcase h2 { font-size: 29px; line-height: 1.07; margin-top: 9px; letter-spacing: -.045em; }
.hero-papers { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 15px; margin-top: 19px; }
.hero-paper { border: 0; padding: 0; background: transparent; text-align: left; min-width: 0; border-radius: 3px; }
.hero-paper img { width: 100%; height: auto; box-shadow: 0 7px 18px -9px #26163555; border-radius: 3px; }
.hero-paper > span { display: flex; align-items: center; justify-content: space-between; gap: 4px; margin-top: 9px; font-size: 9px; line-height: 1.4; }
.hero-paper > span svg { height: 12px; width: 12px; }
.math-case-link { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: auto; padding-top: 17px; font-size: 11px; font-weight: 550; min-height: 44px; }
.math-case-link svg { width: 17px; height: 17px; }
.hero-art-caption { display: flex; justify-content: center; align-items: center; gap: 13px; font-size: 10px; color: hsl(var(--text-secondary)); margin-top: 12px; min-height: 32px; }
.hero-art-caption a { display: inline-flex; gap: 5px; align-items: center; text-decoration: underline; text-underline-offset: 3px; min-height: 32px; }
.hero-art-caption svg { width: 12px; height: 12px; }
.math-case { padding-top: 35px; padding-bottom: 60px; }
.math-case-intro { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 60px; margin-bottom: 28px; }
.math-case h2 { font-size: clamp(32px, 3.4vw, 46px); line-height: 1.12; letter-spacing: -.045em; margin-top: 14px; }
.math-case-intro p { color: hsl(var(--text-secondary)); font-size: 14px; line-height: 1.8; text-wrap: pretty; }
.math-case-intro p + p { margin-top: 10px; }
.math-case-intro .text-link { font-size: 12px; margin-top: 14px; }
.math-case-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; }
.math-case-grid .result-visual { display: block; width: 100%; height: auto; aspect-ratio: auto; overflow: visible; background: transparent; border: 0; padding: 0; border-radius: 7px; }
.math-case-grid .artifact-preview { display: block; padding: 0; min-height: 0; height: auto; aspect-ratio: 3 / 4; background: transparent; }
.math-case-grid .artifact-preview > img { width: auto; height: 100%; max-height: none; margin-inline: auto; object-fit: initial; border-radius: 5px; border: 1px solid hsl(var(--border-soft)); box-shadow: 0 8px 30px -22px #30194255; }
.math-case-grid .result-caption { padding-top: 18px; }
.math-case-grid .result-caption .kicker { font-size: 9px; }
.math-case-grid .result-caption h3 { font-size: 21px; max-width: 310px; line-height: 1.3; text-wrap: balance; }
.math-case-grid .result-caption p { font-size: 11px; text-wrap: pretty; }
.math-originals { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 25px; margin-top: 26px; padding-top: 15px; border-top: 1px solid hsl(var(--border-soft)); }
.math-originals > span { font-size: 9px; letter-spacing: .1em; color: hsl(var(--text-secondary)); }
.math-originals > a { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; font-size: 12px; text-decoration: underline; text-underline-offset: 4px; }
.math-originals svg { width: 14px; height: 14px; }
.dialog-visual:has(.artifact-math-notes), .dialog-visual:has(.artifact-math-formulas), .dialog-visual:has(.artifact-math-practice) { background: hsl(var(--brand-soft)); padding: 20px; }
.dialog-visual [class*=artifact-math] > img { width: 100%; height: auto; box-shadow: 0 8px 30px -18px #21132950; }
.dialog-visual:has(.artifact-planner), .dialog-visual:has(.artifact-today) { align-items: center; padding: 0; background: #f8f1de; }
.dialog-visual .artifact-planner, .dialog-visual .artifact-today { width: 100%; }
.study-together-copy .free-pill { display: flex; align-items: flex-start; gap: 9px; margin: 24px 0 0; font-size: 15px; line-height: 1.5; font-weight: 550; text-wrap: pretty; }
.study-together-copy .free-pill svg { flex-shrink: 0; width: 18px; height: 18px; margin-top: 2px; }
.study-together-copy > .text-link { display: flex; width: fit-content; margin-top: 16px; font-size: 13px; min-height: 44px; }
.workspace-dialog { width: min(1100px, calc((100dvh - 210px) * 1.44)); }
.workspace-dialog[open] { display: block; }
.workspace-dialog-heading { padding: 18px 64px 18px 24px; }
.workspace-dialog-heading .kicker { font-size: 9px; }
.workspace-dialog-heading h2 { font-size: 24px; line-height: 1.2; letter-spacing: -.035em; margin-top: 8px; text-wrap: balance; }
.workspace-dialog .dialog-visual { display: block; padding: 0; border: 0; border-block: 1px solid hsl(var(--border)); }
.workspace-dialog .dialog-visual > img { display: block; width: 100%; height: auto; max-height: none; border-radius: 0; }
.workspace-dialog-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 24px; }
.workspace-dialog-footer .original-link { margin: 0; font-size: 12px; min-height: 44px; }
.workspace-dialog-footer .dialog-actions { margin: 0; }
[data-theme=dark] .workspace-dialog-heading .kicker, [data-theme=dark] .workspace-dialog-footer .original-link { color: hsl(var(--text-secondary)); }
.asset-library .result-card:has([class*=artifact-math]) .result-visual { max-width: 100%; }
[data-theme=dark] .math-showcase-heading > .eyebrow { color: hsl(var(--text-secondary)); }
@media (min-width: 1101px) {
  .study-hero-copy { max-width: none; }
  .study-hero-copy h1 { font-size: clamp(44px,4.2vw,62px); }
}
@media (hover:hover) and (pointer:fine) {
  .hero-study-tabs button:not([aria-pressed=true]):hover { background: hsl(var(--brand-soft)); color: hsl(var(--foreground)); }
  .hero-paper:hover > span, .math-case-link:hover, .hero-result-link:hover { text-decoration: underline; text-underline-offset: 3px; }
}
@media (max-width: 1100px) {
  .study-evidence { gap: 17px; grid-template-columns: minmax(0,1.35fr) minmax(0,1fr); }
  .math-showcase { padding: 20px 18px 14px; }
  .math-showcase h2 { font-size: 26px; }
  .hero-papers { gap: 11px; }
  .hero-result-caption { padding: 17px 18px; gap: 14px; }
  .hero-result-caption h2 { font-size: 20px; }
  .hero-result-link { font-size: 10px; }
}
@media (max-width: 800px) {
  .dialog-visual:has(.artifact-planner), .dialog-visual:has(.artifact-today) { aspect-ratio: 1; }
  .workspace-dialog { width: 1100px; }
  .study-hero { padding-top: 24px; }
  .study-hero-copy h1 { font-size: clamp(42px,7vw,58px); }
  .study-evidence { grid-template-columns: 1fr; gap: 17px; margin-top: 25px; }
  .hero-study-tabs { justify-content: center; }
  .math-showcase { display: grid; grid-template-columns: 1fr 1.3fr; column-gap: 25px; padding: 23px; }
  .hero-papers { grid-column: 2; grid-row: 1 / span 2; margin: 0; align-items: end; }
  .math-showcase-heading { align-self: center; }
  .math-case-link { align-self: end; margin-top: 15px; }
  .hero-paper > span { font-size: 8px; }
  .math-case-intro { gap: 30px; }
  .math-case-grid { gap: 17px; }
  .math-case-grid .result-caption h3 { font-size: 17px; }
  .math-case-grid .result-arrow { display: none; }
  .math-case { padding-bottom: 42px; }
}
@media (max-width: 520px) {
  .workspace-dialog-heading { padding: 20px 52px 18px 18px; }
  .workspace-dialog-heading h2 { font-size: 22px; }
  .workspace-dialog-heading .kicker { font-size: 8px; line-height: 1.5; }
  .workspace-dialog-footer { flex-direction: column; align-items: stretch; gap: 8px; padding: 12px 18px 18px; }
  .workspace-dialog-footer .original-link { justify-content: center; }
  .workspace-dialog-footer .dialog-actions .button { width: 100%; }
  .study-hero { padding-top: 23px; }
  .study-hero-copy > .eyebrow { font-size: 9px; letter-spacing: .12em; }
  .study-hero-copy h1 { font-size: clamp(32px,10.1vw,48px); line-height: 1.08; margin: 16px 0 14px; }
  .study-hero-copy > p { font-size: 14px; line-height: 1.75; max-width: 350px; margin-inline: auto; text-wrap: balance; }
  .desktop-break { display: none; }
  .study-hero-copy .hero-actions { gap: 22px; margin-top: 20px; }
  .study-hero-copy .hero-actions > .text-link { font-size: 10px; }
  .study-hero-copy .proof-strip { display: flex; flex-wrap: wrap; gap: 5px 12px; margin-top: 12px; }
  .study-hero-copy .hero-privacy-link { padding: 7px 10px; font-size: 9px; }
  .study-hero-copy .proof-strip > span { font-size: 9px; }
  .study-evidence { margin-top: 18px; }
  .hero-study-tabs { gap: 5px; padding-bottom: 10px; }
  .hero-study-tabs button { min-height: 44px; padding: 8px 14px; font-size: 11px; }
  .hero-result { border-radius: 13px; }
  .hero-result-caption { padding: 17px 16px; display: block; }
  .hero-result-caption h2 { font-size: 21px; text-wrap: pretty; }
  .hero-result-caption p { font-size: 11px; margin-top: 5px; }
  .hero-result-link { min-height: 34px; margin-top: 7px; font-size: 11px; }
  .hero-art-expand { right: 8px; bottom: 8px; font-size: 8px; padding: 5px 8px; }
  .math-showcase { display: block; border-radius: 14px; padding: 21px 20px 14px; }
  .math-showcase h2 { font-size: 27px; }
  .math-showcase h2 br { display: none; }
  .hero-papers { margin-top: 19px; gap: 14px; }
  .hero-paper > span { font-size: 9px; }
  .math-case-link { margin-top: 0; padding-top: 16px; }
  .hero-art-caption { flex-wrap: wrap; gap: 0 10px; margin-top: 12px; font-size: 9px; text-align: center; }
  .math-case { padding-top: 22px; }
  .math-case-intro { grid-template-columns: 1fr; gap: 20px; }
  .math-case h2 { margin-top: 13px; font-size: 33px; }
  .math-case-intro p { font-size: 13px; }
  .math-case-grid { grid-template-columns: 1fr; gap: 28px; }
  .math-case-grid .result-caption h3 { font-size: 21px; }
  .math-case-grid .result-caption { padding-top: 14px; }
  .dialog-visual:has([class*=artifact-math]) { padding: 15px; }
  .campus-heading .buck-planner { width: 82px; height: 94px; }
}
@media (max-width: 600px) {
  .hero-title { display: block; }
  .hero-buck { display: none; }
}
@media (prefers-reduced-motion:reduce) {
  .hero-study-tabs button { transition: none; }
}

.exam-study-hero { padding-block: 42px; }
.exam-hero-layout { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: 64px; min-height: 752px; }
.exam-study-hero .study-hero-copy { text-align: left; max-width: none; margin: 0; }
.exam-study-hero .eyebrow { display: block; font-size: 10px; line-height: 1.5; font-weight: 600; letter-spacing: .13em; color: hsl(var(--text-secondary)); }
.exam-study-hero h1 { font-size: clamp(40px,4vw,58px); line-height: 1.04; font-weight: 650; letter-spacing: -.055em; margin: 18px 0 0; text-wrap: initial; }
.exam-study-hero h1 > span { display: block; margin-top: 5px; }
.exam-study-hero .study-hero-copy > p { font-size: 16px; line-height: 1.75; max-width: 440px; margin: 24px 0; text-wrap: pretty; }
.exam-study-hero .hero-actions { justify-content: flex-start; flex-wrap: wrap; gap: 22px; margin: 0; }
.exam-study-hero .hero-actions .button { min-height: 48px; padding: 14px 21px; border-radius: 10px; font-size: 13px; font-weight: 550; gap: 25px; }
.exam-study-hero .hero-actions .text-link { font-size: 12px; gap: 10px; }
.exam-study-hero .proof-strip { justify-content: flex-start; gap: 9px 16px; margin-top: 14px; }
.exam-study-hero .hero-privacy-link { min-height: 32px; padding: 6px 8px; font-size: 9px; }
.exam-study-hero .proof-strip > span { font-size: 9px; }
.exam-desk { position: relative; padding: 0 0 80px 50px; }
.exam-desk .math-showcase { display: block; padding: 28px 28px 110px; border-radius: 18px; }
.exam-desk .hero-papers { gap: 22px; margin-top: 18px; }
.exam-desk .hero-paper > span { gap: 7px; margin-top: 10px; font-size: 10px; }
.exam-desk .hero-paper img { border-radius: 4px; box-shadow: 0 9px 24px -12px #23143c4d; }
.exam-notes { transform: rotate(-4deg) translateY(12px); }
.exam-formulas { transform: rotate(4deg); }
.exam-desk .math-case-link { display: inline-flex; justify-content: flex-start; gap: 12px; font-size: 12px; font-weight: 500; min-height: 44px; margin-top: 28px; padding: 0; }
.exam-desk > .hero-buck { display: block; position: absolute; width: 280px; height: 280px; left: -153px; bottom: -10px; object-fit: contain; pointer-events: none; }
.exam-lesson { display: block; position: absolute; right: 5px; bottom: 0; width: 245px; background: hsl(var(--positive-soft)); border: 1px solid hsl(var(--border)); border-radius: 13px; overflow: hidden; box-shadow: 0 10px 30px #2c1b3c0d; }
.exam-lesson > img { display: block; width: 100%; height: auto; }
.exam-lesson > span { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 12px 14px; font-size: 11px; }
.exam-lesson svg { width: 19px; height: 19px; }
.exam-lesson:focus-visible { outline: 3px solid hsl(var(--brand)); outline-offset: 4px; }
[data-theme=dark] .exam-study-hero h1 > span { color: #c4a3dd; }
@media (max-width: 1100px) {
  .exam-hero-layout { gap: 32px; }
  .exam-study-hero h1 { font-size: 44px; }
}
@media (max-width: 800px) {
  .exam-study-hero { padding-block: 32px; }
  .exam-hero-layout { grid-template-columns: 1fr; gap: 30px; min-height: 0; }
  .exam-study-hero h1 { font-size: 52px; }
  .exam-study-hero .study-hero-copy > p { max-width: 550px; }
  .exam-desk { max-width: 600px; margin: 15px auto 0; }
  .exam-desk > .hero-buck { width: 245px; height: 245px; left: -10px; }
  .exam-desk .hero-papers { grid-column: auto; grid-row: auto; }
}
@media (max-width: 520px) {
  .exam-study-hero h1 { font-size: clamp(31px,9.1vw,45px); }
  .exam-study-hero .study-hero-copy > p { font-size: 14px; line-height: 1.75; margin: 20px 0; text-wrap: pretty; }
  .exam-study-hero .hero-actions { gap: 17px; }
  .exam-study-hero .hero-actions .button { font-size: 12px; gap: 18px; padding: 13px 17px; }
  .exam-study-hero .hero-actions .text-link { font-size: 11px; gap: 5px; }
  .exam-study-hero .proof-strip { gap: 8px 10px; }
  .exam-study-hero .hero-privacy-link, .exam-study-hero .proof-strip > span { font-size: 8px; }
  .exam-desk { padding: 0 0 160px 15px; }
  .exam-desk .math-showcase { padding: 18px 18px 38px; }
  .exam-desk .hero-papers { gap: 14px; }
  .exam-desk > .hero-buck { width: 175px; height: 190px; left: -15px; bottom: -5px; }
  .exam-lesson { width: 175px; right: -2px; bottom: 8px; }
  .exam-lesson > span { font-size: 9px; padding: 10px; }
}

@media (min-width: 801px) and (max-height: 900px) {
  .exam-study-hero { padding-block: 32px 24px; }
  .exam-hero-layout { align-items: start; min-height: 0; }
  .exam-study-hero .study-hero-copy { position: relative; }
  .exam-study-hero .study-hero-copy > .eyebrow { position: absolute; top: -25px; }
  .exam-study-hero h1 { margin-top: 0; }
  .exam-desk { --desk-height: clamp(400px, calc(100svh - 235px), 665px); height: var(--desk-height); padding-bottom: 0; }
  .exam-desk .math-showcase { height: calc(var(--desk-height) - 30px); padding: 24px 24px 72px; }
  .exam-desk .hero-papers { height: calc(var(--desk-height) - 215px); grid-template-rows: minmax(0, 1fr); margin-top: 12px; align-items: end; }
  .exam-desk .hero-paper { min-height: 0; height: 100%; width: fit-content; max-width: 100%; justify-self: center; }
  .exam-desk .hero-paper img { height: calc(100% - 24px); width: auto; max-width: 100%; object-fit: contain; }
  .exam-notes { transform: rotate(-3deg); }
  .exam-formulas { transform: rotate(3deg) translateY(-12px); }
  .exam-desk .math-case-link { margin-top: 28px; }
  .exam-desk > .hero-buck { width: clamp(220px, 36svh, 280px); height: clamp(220px, 36svh, 280px); left: calc(30px - clamp(220px, 36svh, 280px)); bottom: 0; }
  .exam-lesson { width: clamp(180px, 26svh, 220px); bottom: 0; }
}
@media (min-width: 801px) and (max-width: 1100px) and (max-height: 900px) {
  .exam-desk > .hero-buck { width: 200px; height: 200px; left: -128px; }
}

.example-dialog { position: fixed; inset: 0; margin: auto; }
.dialog-visual:has(.artifact-preview), .dialog-visual:has(.document-spread) { align-items: center; }
.dialog-visual:has(.artifact-lesson), .dialog-visual:has(.artifact-calendar) { background: #fff; }
.dialog-visual:has(.artifact-notes) { background: #fbfbf2; }
.dialog-visual:has(.artifact-practice) { background: #fffff8; }
.dialog-visual:has(.artifact-dorm) { background: #f1ece2; }
.dialog-visual:has(.document-spread), .dialog-visual .document-spread { background: #f3edf7; }
.dialog-visual .document-spread { width: 100%; height: auto; }
.dialog-visual .document-spread > img { height: auto; }
.dialog-visual .artifact-preview > img { width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 90px); margin-inline: auto; object-fit: contain; }

.calendar-feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); align-items: center; gap: clamp(24px, 4vw, 52px); padding: clamp(22px, 3vw, 38px); margin-bottom: 36px; border: 1px solid hsl(var(--border)); border-radius: 20px; background: hsl(var(--positive-soft)); }
.calendar-copy .eyebrow { font-size: 10px; letter-spacing: .1em; }
.calendar-copy h3 { margin-top: 18px; font-size: clamp(27px, 2.6vw, 36px); line-height: 1.15; letter-spacing: -.04em; text-wrap: balance; }
.calendar-copy h3 span { color: hsl(var(--brand)); }
.calendar-copy p { margin-top: 20px; color: hsl(var(--text-secondary)); font-size: 14px; line-height: 1.8; text-wrap: pretty; }
.calendar-copy blockquote { margin-top: 22px; padding-left: 16px; border-left: 2px solid hsl(var(--brand)); font-size: 14px; line-height: 1.7; text-wrap: pretty; }
.calendar-copy .text-link { margin-top: 20px; font-size: 13px; min-height: 44px; text-align: left; }
.calendar-capture { display: block; width: 100%; min-width: 0; overflow: hidden; border: 1px solid hsl(var(--border)); border-radius: 12px; background: hsl(var(--background)); text-align: left; }
.calendar-capture > img { display: block; width: 100%; height: auto; }
.calendar-capture > span { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 18px; font-size: 12px; }
.calendar-capture svg { flex-shrink: 0; }
.calendar-capture:focus-visible { outline: 3px solid hsl(var(--brand)); outline-offset: 4px; }
@media (max-width: 800px) {
  .calendar-feature { grid-template-columns: 1fr; }
  .calendar-copy h3 { text-wrap: initial; }
  .calendar-capture > span { font-size: 11px; padding: 12px; }
}
@media (max-width: 520px) {
  .exam-desk { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: center; gap: 22px 10px; padding: 0; }
  .exam-desk .math-showcase { grid-column: 1 / -1; grid-row: 2; }
  .exam-desk > .hero-buck { grid-column: 1; grid-row: 1; position: static; width: 100%; height: auto; align-self: start; transform: scaleX(-1); }
  .exam-lesson { grid-column: 2; grid-row: 1; position: static; width: 100%; }
}
