/*
Theme Name: Elements of Art & Design v4.15
Theme URI: https://elementsofartanddesign.com/
Author: Brandion LLC
Description: A clean, gallery-like WordPress theme for the Elements of Art & Design educational resource.
Version: 4.15
Text Domain: elements-art-design
*/

:root {
  --ead-ink: #171717;
  --ead-muted: #666666;
  --ead-line: #e8e8e8;
  --ead-paper: #ffffff;
  --ead-soft: #f6f6f4;
  --ead-accent: #5b35d5;
  --ead-content: 720px;
  --ead-wide: 1340px;
  --curriculum-section-start-space: clamp(64px, 8vw, 112px);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--ead-paper);
  color: var(--ead-ink);
  font-family: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

a { color: inherit; text-underline-offset: .18em; }
a:hover { color: var(--ead-accent); }

img { max-width: 100%; height: auto; }

.site-shell {
  width: min(calc(100% - 48px), var(--ead-wide));
  margin-inline: auto;
}

.site-header {
  background: #fff;
  border-bottom: 1px solid var(--ead-line);
  position: relative;
  z-index: 20;
}

.header-inner {
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
}

.site-branding { flex: 0 0 auto; }

.site-title {
  color: var(--ead-ink);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -.035em;
  text-decoration: none;
}

.site-title:hover { color: var(--ead-ink); }

.site-nav ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 28px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-nav a {
  color: var(--ead-ink);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

.site-nav a:hover,
.site-nav .current-menu-item > a,
.site-nav .current_page_item > a { color: var(--ead-accent); }

.menu-toggle {
  display: none;
  border: 0;
  background: transparent;
  color: var(--ead-ink);
  font: inherit;
  font-weight: 700;
  padding: 8px 0;
  cursor: pointer;
}

.site-main { min-height: 65vh; }

.page-hero {
  padding: clamp(70px, 9vw, 132px) 0 clamp(48px, 7vw, 92px);
  border-bottom: 1px solid var(--ead-line);
}

.page-hero h1,
.entry-header h1 {
  max-width: 980px;
  margin: 0;
  font-size: clamp(48px, 7vw, 100px);
  line-height: .98;
  letter-spacing: -.055em;
  font-weight: 700;
}

.page-hero p {
  max-width: 760px;
  margin: 30px 0 0;
  color: var(--ead-muted);
  font-size: clamp(19px, 2vw, 26px);
  line-height: 1.45;
}

.content-wrap {
  width: min(calc(100% - 48px), var(--ead-content));
  margin-inline: auto;
  padding: 72px 0 110px;
}

.content-wrap.wide {
  width: min(calc(100% - 48px), var(--ead-wide));
}

.entry-content > *:first-child { margin-top: 0; }

.entry-content h2,
.entry-content h3,
.entry-content h4 {
  line-height: 1.15;
  letter-spacing: -.035em;
  margin-top: 2.2em;
  margin-bottom: .7em;
}

.entry-content h2 { font-size: clamp(32px, 4vw, 52px); }
.entry-content h3 { font-size: clamp(25px, 3vw, 36px); }

.entry-content p,
.entry-content li { max-width: 72ch; }

.entry-content figure { margin: 48px 0; }

.entry-content figcaption {
  color: var(--ead-muted);
  font-size: 13px;
  line-height: 1.45;
  margin-top: 10px;
}

.wp-block-button__link {
  border-radius: 0;
  background: var(--ead-ink);
  color: #fff;
  font-weight: 700;
  padding: 14px 22px;
}

.wp-block-button__link:hover {
  background: var(--ead-accent);
  color: #fff;
}

.home-intro {
  padding: clamp(80px, 11vw, 160px) 0;
}

.home-kicker {
  margin: 0 0 22px;
  color: var(--ead-accent);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.home-title {
  max-width: 1050px;
  margin: 0;
  font-size: clamp(52px, 8vw, 116px);
  line-height: .93;
  letter-spacing: -.06em;
  font-weight: 700;
}

.home-deck {
  max-width: 760px;
  margin: 38px 0 0;
  color: var(--ead-muted);
  font-size: clamp(20px, 2.2vw, 29px);
  line-height: 1.45;
}

.home-interactive-study {
  --home-context-left: hsl(0 0% 12%);
  --home-context-right: hsl(0 0% 90%);
  --home-context-center: #7559a6;
  border-top: 1px solid var(--ead-line);
}

@media (min-width: 901px) {
  .home-intro {
    padding-top: clamp(92px, 14vh, 160px);
    padding-bottom: clamp(32px, calc(14vh - 60px), 100px);
  }
  .home-title { max-width: 1260px; }
  .home-deck { max-width: 1120px; }
}

.home-context-copy .eyebrow {
  margin: 0;
  color: var(--ead-accent);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
}

.home-context-lab {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
}

.home-context-workspace,
.home-context-copy {
  padding: clamp(36px, 5vw, 76px);
}

.home-context-workspace { border-right: 1px solid var(--ead-line); }

.home-context-comparison {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--ead-line);
}

.home-context-example { min-width: 0; margin: 0; }
.home-context-example:first-child { border-right: 1px solid var(--ead-line); }

.home-context-ground {
  display: grid;
  width: 100%;
  aspect-ratio: 1;
  min-height: 220px;
  place-items: center;
}

.home-context-example-left .home-context-ground { background: var(--home-context-left); }
.home-context-example-right .home-context-ground { background: var(--home-context-right); }

.home-context-center {
  display: block;
  width: 32%;
  aspect-ratio: 1;
  background: var(--home-context-center);
}

.home-context-example figcaption {
  min-height: 48px;
  padding: 15px 16px;
  color: var(--ead-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
}

.home-context-control {
  display: grid;
  margin-top: 34px;
  grid-template-columns: 1fr auto;
  gap: 11px 20px;
  align-items: center;
}

.home-context-control > span {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
}

.home-context-control input {
  grid-column: 1 / -1;
  width: 100%;
  min-height: 28px;
  margin: 0;
  accent-color: var(--ead-accent);
  cursor: ew-resize;
}

.home-context-control input:focus-visible {
  outline: 3px solid var(--ead-accent);
  outline-offset: 3px;
}

.home-context-control output {
  font-size: 13px;
  font-weight: 800;
}

.home-context-measure {
  margin: 24px 0 0;
  color: var(--ead-muted);
  font-size: 11px;
  letter-spacing: .04em;
}

.home-context-measure strong,
.home-context-measure span { color: var(--ead-ink); }

.home-context-copy {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.home-context-intro { margin-bottom: clamp(40px, 4vw, 70px); }

.home-context-copy h2,
.home-context-copy h3 {
  margin: 22px 0 28px;
  font-size: clamp(42px, 4.7vw, 72px);
  line-height: .92;
  letter-spacing: -.06em;
}

.home-context-intro > p:not(.eyebrow),
.home-context-copy > p:not(.eyebrow) {
  max-width: 570px;
  color: var(--ead-muted);
  line-height: 1.65;
}

.home-context-copy .home-context-status {
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid var(--ead-line);
  font-size: 13px;
}

.home-context-status strong { color: var(--ead-ink); }

.home-context-link {
  width: max-content;
  margin-top: 34px;
  color: var(--ead-ink);
  font-weight: 800;
  text-decoration: none;
}

.home-context-link:hover { color: var(--ead-accent); }
.home-context-link:focus-visible { outline: 3px solid var(--ead-accent); outline-offset: 5px; }

.home-grid {
  border-top: 1px solid var(--ead-line);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.home-card {
  min-height: 310px;
  padding: clamp(34px, 5vw, 68px);
  border-bottom: 1px solid var(--ead-line);
  text-decoration: none;
  transition: background .18s ease;
}

.home-card:nth-child(odd) { border-right: 1px solid var(--ead-line); }
.home-card:hover { background: var(--ead-soft); color: var(--ead-ink); }

.home-card small {
  display: block;
  margin-bottom: 65px;
  color: var(--ead-muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.home-card h2 {
  margin: 0;
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1;
  letter-spacing: -.045em;
}

.home-card p {
  max-width: 520px;
  margin: 18px 0 0;
  color: var(--ead-muted);
}

.site-footer {
  border-top: 1px solid var(--ead-line);
  padding: 42px 0 58px;
}

.footer-inner {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  color: var(--ead-muted);
  font-size: 13px;
}

.posts-list article {
  padding: 36px 0;
  border-bottom: 1px solid var(--ead-line);
}

.posts-list h2 {
  margin: 0 0 8px;
  font-size: 30px;
  line-height: 1.15;
  letter-spacing: -.035em;
}

.posts-list h2 a { text-decoration: none; }
.entry-meta { color: var(--ead-muted); font-size: 13px; }

@media (max-width: 900px) {
  .header-inner { min-height: 76px; }
  .menu-toggle { display: block; }
  .site-nav {
    display: none;
    position: absolute;
    left: 0; right: 0; top: 100%;
    padding: 24px;
    background: #fff;
    border-bottom: 1px solid var(--ead-line);
  }
  .site-nav.is-open { display: block; }
  .site-nav ul { display: grid; gap: 0; }
  .site-nav li { border-top: 1px solid var(--ead-line); }
  .site-nav a { display: block; padding: 15px 0; font-size: 17px; }
  .home-grid { grid-template-columns: 1fr; }
  .home-card:nth-child(odd) { border-right: 0; }
  .home-context-lab { grid-template-columns: minmax(0, 1fr); }
  .home-context-workspace { border-right: 0; border-bottom: 1px solid var(--ead-line); }
}

@media (max-width: 600px) {
  .site-shell,
  .content-wrap,
  .content-wrap.wide { width: min(calc(100% - 32px), var(--ead-wide)); }
  .site-title { font-size: 18px; }
  .footer-inner { flex-direction: column; }
  .home-context-copy h2,
  .home-context-copy h3 { font-size: clamp(44px, 14vw, 64px); }
  .home-context-workspace,
  .home-context-copy { padding: 34px 20px; }
  .home-context-ground { min-height: 0; }
  .home-context-example figcaption { min-height: 54px; padding: 13px 10px; font-size: 8px; }
  .home-context-center { width: 36%; }
}

/* Elements landing */
.elements-hero{padding:clamp(76px,10vw,150px) 0 clamp(64px,8vw,112px);border-bottom:1px solid var(--ead-line)}
.elements-hero h1{margin:0;max-width:1100px;font-size:clamp(58px,8.2vw,118px);font-weight:700;line-height:.92;letter-spacing:-.06em}
.elements-intro{display:grid;grid-template-columns:minmax(0,720px) 1fr;gap:clamp(40px,8vw,140px);align-items:end;margin-top:58px}
.elements-intro>p:first-child{margin:0;color:var(--ead-muted);font-size:clamp(19px,2vw,25px);line-height:1.5}
.elements-mantra{margin:0;font-size:clamp(24px,3vw,42px);font-weight:700;line-height:1.05;letter-spacing:-.04em}
.elements-grid{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--ead-line)}
.element-tile{min-height:560px;padding:clamp(28px,3.6vw,54px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line);color:var(--ead-ink);text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:background .18s ease}
.element-tile:nth-child(3n){border-right:0}.element-tile:hover{background:var(--ead-soft);color:var(--ead-ink)}
.element-copy small{display:block;color:var(--ead-muted);font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:13px}
.element-copy h2{margin:0;font-size:clamp(38px,4.2vw,64px);line-height:.98;letter-spacing:-.05em}
.element-copy p{max-width:390px;margin:18px 0 0;color:var(--ead-muted);font-size:15px;line-height:1.55}
.element-demo{height:235px;position:relative;margin-bottom:48px}
.element-demo span,.element-demo i,.element-demo b{position:absolute;display:block;font-style:normal}
.element-point .element-demo span{width:22px;height:22px;border-radius:50%;background:var(--ead-ink);left:50%;top:48%;transform:translate(-50%,-50%)}
.element-point .element-demo i{width:5px;height:5px;border-radius:50%;background:var(--ead-accent);left:28%;top:26%}
.element-point .element-demo b{width:7px;height:7px;border-radius:50%;background:var(--ead-ink);right:24%;bottom:20%}
.element-line .element-demo:before,.element-line .element-demo:after{content:"";position:absolute;left:3%;right:3%;height:2px;background:var(--ead-ink);transform-origin:left center}.element-line .element-demo:before{top:35%;transform:rotate(8deg)}.element-line .element-demo:after{top:66%;height:8px;transform:rotate(-5deg)}
.element-shape .element-demo span{width:120px;height:120px;background:var(--ead-ink);left:8%;top:20%}.element-shape .element-demo i{width:115px;height:115px;border:3px solid var(--ead-accent);border-radius:50%;right:9%;top:31%}.element-shape .element-demo b{width:0;height:0;border-left:55px solid transparent;border-right:55px solid transparent;border-bottom:95px solid var(--ead-ink);left:42%;bottom:4%}
.element-form .element-demo span{width:140px;height:140px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 34% 30%,#fff 0 8%,#d8d8d8 23%,#777 58%,#171717 100%);box-shadow:22px 24px 22px rgba(0,0,0,.14)}
.element-value .element-demo{background:linear-gradient(90deg,#fff 0%,#ddd 20%,#aaa 40%,#777 60%,#444 80%,#111 100%);height:170px;margin-top:32px;border:1px solid var(--ead-line)}
.element-texture .element-demo{background:repeating-radial-gradient(circle at 0 0,#171717 0 1px,transparent 1px 9px);opacity:.78}
.element-color .element-demo{background:conic-gradient(from 20deg,#f33,#ffb000,#e7f000,#31bd68,#1e88e5,#6441d5,#d93fa7,#f33);border-radius:50%;width:210px;height:210px;align-self:center;margin-inline:auto}
.element-space .element-demo:before{content:"";position:absolute;width:150px;height:150px;background:var(--ead-ink);left:12%;top:16%}.element-space .element-demo:after{content:"";position:absolute;width:92px;height:92px;background:#fff;left:29%;top:34%;box-shadow:145px 58px 0 0 var(--ead-accent)}
.element-typography .element-demo:before{content:"Aa";position:absolute;left:3%;top:-24px;font-size:160px;font-weight:800;line-height:1;letter-spacing:-.09em}.element-typography .element-demo:after{content:"TYPE / FORM / SPACE";position:absolute;left:5%;bottom:10px;font-size:13px;font-weight:800;letter-spacing:.16em}
@media(max-width:980px){.elements-grid{grid-template-columns:repeat(2,1fr)}.element-tile:nth-child(3n){border-right:1px solid var(--ead-line)}.element-tile:nth-child(2n){border-right:0}.elements-intro{grid-template-columns:1fr}.element-tile{min-height:500px}}
@media(max-width:640px){.elements-grid{grid-template-columns:1fr}.element-tile,.element-tile:nth-child(3n),.element-tile:nth-child(2n){border-right:0}.element-tile{min-height:470px}.elements-hero h1{font-size:clamp(52px,16vw,76px)}.elements-intro{margin-top:38px}.element-demo{height:200px}}

/* Principles landing */
.principles-hero{padding:clamp(76px,10vw,150px) 0 clamp(64px,8vw,112px);border-bottom:1px solid var(--ead-line)}
.principles-hero h1{margin:0;max-width:1180px;font-size:clamp(58px,8.2vw,118px);font-weight:700;line-height:.92;letter-spacing:-.06em}
.principles-intro{display:grid;grid-template-columns:minmax(0,720px) 1fr;gap:clamp(40px,8vw,140px);align-items:end;margin-top:58px}
.principles-intro>p:first-child{margin:0;color:var(--ead-muted);font-size:clamp(19px,2vw,25px);line-height:1.5}
.principles-mantra{margin:0;font-size:clamp(24px,3vw,42px);font-weight:700;line-height:1.05;letter-spacing:-.04em}
.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--ead-line)}
.principle-tile{min-height:560px;padding:clamp(28px,3.6vw,54px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line);color:var(--ead-ink);text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:background .18s ease}
.principle-tile:nth-child(3n){border-right:0}.principle-tile:hover{background:var(--ead-soft);color:var(--ead-ink)}
.principle-copy small{display:block;color:var(--ead-muted);font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:13px}
.principle-copy h2{margin:0;font-size:clamp(38px,4.2vw,64px);line-height:.98;letter-spacing:-.05em}
.principle-copy p{max-width:410px;margin:18px 0 0;color:var(--ead-muted);font-size:15px;line-height:1.55}
.principle-demo{height:235px;position:relative;margin-bottom:48px}
.principle-demo span,.principle-demo i,.principle-demo b,.principle-demo em{position:absolute;display:block;font-style:normal}
/* Balance: unequal forms held in equilibrium */
.principle-balance .principle-demo:before{content:"";position:absolute;left:8%;right:8%;top:56%;height:3px;background:var(--ead-ink);transform:rotate(-4deg);transform-origin:center}
.principle-balance .principle-demo:after{content:"";position:absolute;left:50%;top:56%;width:0;height:0;border-left:20px solid transparent;border-right:20px solid transparent;border-bottom:52px solid var(--ead-ink);transform:translate(-50%,0)}
.principle-balance .principle-demo span{width:92px;height:92px;background:var(--ead-ink);left:13%;top:15%}.principle-balance .principle-demo i{width:38px;height:38px;border-radius:50%;background:var(--ead-accent);right:17%;top:43%}
/* Contrast: opposing scale, tone and geometry */
.principle-contrast .principle-demo span{width:156px;height:156px;background:var(--ead-ink);left:8%;top:13%}.principle-contrast .principle-demo i{width:46px;height:46px;background:#fff;border:3px solid var(--ead-ink);right:12%;bottom:16%}.principle-contrast .principle-demo b{width:12px;height:12px;background:var(--ead-accent);right:22%;top:18%}
/* Emphasis: one violet event dominates a quiet field */
.principle-emphasis .principle-demo{background:radial-gradient(circle,var(--ead-ink) 0 3px,transparent 4px);background-size:48px 48px;opacity:1}.principle-emphasis .principle-demo span{width:28px;height:28px;border-radius:50%;background:var(--ead-accent);left:51%;top:45%;box-shadow:0 0 0 14px #fff}
/* Movement: a path with directional acceleration */
.principle-movement .principle-demo:before{content:"";position:absolute;left:4%;top:55%;width:86%;height:110px;border-top:3px solid var(--ead-ink);border-radius:50%;transform:rotate(-10deg)}
.principle-movement .principle-demo span{width:14px;height:14px;border-radius:50%;background:var(--ead-ink);left:12%;top:63%}.principle-movement .principle-demo i{width:22px;height:22px;border-radius:50%;background:var(--ead-ink);left:42%;top:42%}.principle-movement .principle-demo b{width:34px;height:34px;border-radius:50%;background:var(--ead-accent);right:12%;top:20%}
/* Pattern: rigorous repetition with one accent */
.principle-pattern .principle-demo{background:repeating-linear-gradient(90deg,var(--ead-ink) 0 2px,transparent 2px 24px)}.principle-pattern .principle-demo span{left:48%;top:0;bottom:0;width:24px;background:var(--ead-accent)}
/* Proportion & Scale: sphere cameo against monumental square */
.principle-proportion .principle-demo span{width:168px;height:168px;background:var(--ead-ink);left:7%;top:9%}.principle-proportion .principle-demo i{width:52px;height:52px;border-radius:50%;right:13%;bottom:18%;background:radial-gradient(circle at 34% 30%,#fff 0 8%,#d8d8d8 23%,#777 58%,#171717 100%);box-shadow:9px 10px 10px rgba(0,0,0,.13)}
/* Rhythm: repeating beats that change scale */
.principle-rhythm .principle-demo span,.principle-rhythm .principle-demo i,.principle-rhythm .principle-demo b,.principle-rhythm .principle-demo em{bottom:18%;background:var(--ead-ink);border-radius:50%}.principle-rhythm .principle-demo span{left:8%;width:30px;height:30px}.principle-rhythm .principle-demo i{left:29%;width:54px;height:54px}.principle-rhythm .principle-demo b{left:55%;width:82px;height:82px}.principle-rhythm .principle-demo em{right:5%;width:112px;height:112px;background:var(--ead-accent)}
/* Unity: separate parts share a common enclosing system */
.principle-unity .principle-demo:before{content:"";position:absolute;inset:12% 8% 10%;border:2px solid var(--ead-ink)}.principle-unity .principle-demo span{width:62px;height:62px;background:var(--ead-ink);left:17%;top:27%}.principle-unity .principle-demo i{width:62px;height:62px;border-radius:50%;background:var(--ead-ink);left:44%;top:46%}.principle-unity .principle-demo b{width:0;height:0;border-left:34px solid transparent;border-right:34px solid transparent;border-bottom:62px solid var(--ead-accent);right:14%;top:24%}
/* Variety: controlled differences held to a shared baseline */
.principle-variety .principle-demo:after{content:"";position:absolute;left:5%;right:5%;bottom:20%;height:2px;background:var(--ead-ink)}.principle-variety .principle-demo span{width:74px;height:74px;background:var(--ead-ink);left:7%;bottom:21%}.principle-variety .principle-demo i{width:72px;height:72px;border:3px solid var(--ead-accent);border-radius:50%;left:39%;bottom:21%}.principle-variety .principle-demo b{width:0;height:0;border-left:45px solid transparent;border-right:45px solid transparent;border-bottom:82px solid var(--ead-ink);right:6%;bottom:21%}
@media(max-width:980px){.principles-grid{grid-template-columns:repeat(2,1fr)}.principle-tile:nth-child(3n){border-right:1px solid var(--ead-line)}.principle-tile:nth-child(2n){border-right:0}.principles-intro{grid-template-columns:1fr}.principle-tile{min-height:500px}}
@media(max-width:640px){.principles-grid{grid-template-columns:1fr}.principle-tile,.principle-tile:nth-child(3n),.principle-tile:nth-child(2n){border-right:0}.principle-tile{min-height:470px}.principles-hero h1{font-size:clamp(52px,16vw,76px)}.principles-intro{margin-top:38px}.principle-demo{height:200px}}

/* v1.3 — keep principle diagrams geometrically stable at browser zoom levels.
   The demo area now scales with its own width instead of mixing a fixed height
   with viewport-responsive tile widths. cqw keeps marks proportional to the diagram. */
.principle-demo{height:auto;aspect-ratio:2.2/1;container-type:inline-size}
.principle-balance .principle-demo:before{left:8%;right:8%;top:56%;height:.55cqw;transform:rotate(-4deg)}
.principle-balance .principle-demo:after{left:50%;top:54.3%;border-left-width:4cqw;border-right-width:4cqw;border-bottom-width:10.4cqw}
.principle-balance .principle-demo span{width:18.4cqw;height:18.4cqw;left:13%;top:15%}
/* Ball is mathematically seated on the tilted beam; its position scales with the beam. */
.principle-balance .principle-demo i{width:7.6cqw;height:7.6cqw;right:17%;top:36.2%}

.principle-contrast .principle-demo span{width:31.2cqw;height:31.2cqw}.principle-contrast .principle-demo i{width:9.2cqw;height:9.2cqw;border-width:.6cqw}.principle-contrast .principle-demo b{width:2.4cqw;height:2.4cqw}
.principle-emphasis .principle-demo{background-size:9.6cqw 9.6cqw}.principle-emphasis .principle-demo span{width:5.6cqw;height:5.6cqw;box-shadow:0 0 0 2.8cqw #fff}
.principle-movement .principle-demo:before{height:22cqw;border-top-width:.6cqw}.principle-movement .principle-demo span{width:2.8cqw;height:2.8cqw}.principle-movement .principle-demo i{width:4.4cqw;height:4.4cqw}.principle-movement .principle-demo b{width:6.8cqw;height:6.8cqw}
.principle-pattern .principle-demo{background:repeating-linear-gradient(90deg,var(--ead-ink) 0 .4cqw,transparent .4cqw 4.8cqw)}.principle-pattern .principle-demo span{width:4.8cqw}
.principle-proportion .principle-demo span{width:33.6cqw;height:33.6cqw}.principle-proportion .principle-demo i{width:10.4cqw;height:10.4cqw;box-shadow:1.8cqw 2cqw 2cqw rgba(0,0,0,.13)}
.principle-rhythm .principle-demo span{width:6cqw;height:6cqw}.principle-rhythm .principle-demo i{width:10.8cqw;height:10.8cqw}.principle-rhythm .principle-demo b{width:16.4cqw;height:16.4cqw}.principle-rhythm .principle-demo em{width:22.4cqw;height:22.4cqw}
.principle-unity .principle-demo:before{border-width:.4cqw}.principle-unity .principle-demo span{width:12.4cqw;height:12.4cqw}.principle-unity .principle-demo i{width:12.4cqw;height:12.4cqw}.principle-unity .principle-demo b{border-left-width:6.8cqw;border-right-width:6.8cqw;border-bottom-width:12.4cqw}
.principle-variety .principle-demo:after{height:.4cqw}.principle-variety .principle-demo span{width:14.8cqw;height:14.8cqw}.principle-variety .principle-demo i{width:14.4cqw;height:14.4cqw;border-width:.6cqw}.principle-variety .principle-demo b{border-left-width:9cqw;border-right-width:9cqw;border-bottom-width:16.4cqw}
@media(max-width:640px){.principle-demo{height:auto;aspect-ratio:2.2/1}}

/* Explore landing */
/* Explore — disciplined editorial grid */
.explore-hero{padding:clamp(56px,6vw,88px) 0 clamp(54px,6vw,84px);border-bottom:1px solid var(--ead-line)}
.explore-hero .content-wrap{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);column-gap:clamp(52px,8vw,132px);row-gap:22px;align-items:end}
.explore-hero .eyebrow{grid-column:1/-1;margin:0}
.explore-hero h1{grid-column:1;margin:0;max-width:920px;font-size:clamp(58px,6.5vw,100px);font-weight:700;line-height:.92;letter-spacing:-.06em}
.explore-intro{display:contents}
.explore-intro>p:first-child{grid-column:1;margin:10px 0 0;max-width:720px;color:var(--ead-muted);font-size:clamp(18px,1.45vw,23px);line-height:1.48}
.explore-mantra{grid-column:2;grid-row:2/4;align-self:end;margin:0 0 4px;font-size:clamp(25px,2.5vw,38px);font-weight:700;line-height:1.02;letter-spacing:-.04em}
.explore-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--ead-line)}
.explore-card,.explore-feature,.explore-tall,.explore-wide{grid-column:auto;min-height:0;padding:clamp(34px,4vw,64px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line);display:grid;grid-template-rows:minmax(280px,34vw) auto;gap:clamp(30px,3vw,48px);overflow:hidden}
.explore-card:nth-child(even){border-right:0}.explore-color-card{background:var(--ead-soft)}
.explore-copy{align-self:end}.explore-copy small{display:block;color:var(--ead-muted);font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:14px}.explore-copy h2{max-width:700px;margin:0;font-size:clamp(38px,3.8vw,62px);line-height:.98;letter-spacing:-.055em}.explore-copy p{max-width:610px;margin:16px 0 0;color:var(--ead-muted);font-size:15px;line-height:1.55}.explore-status{display:inline-block;margin-top:24px;color:var(--ead-accent);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.explore-art{position:relative;min-height:0;margin:0;container-type:inline-size;overflow:hidden}
.explore-art span,.explore-art i,.explore-art b{position:absolute;display:block;font-style:normal}
.explore-art-tension:before{content:"";position:absolute;left:3%;right:4%;top:56%;height:max(3px,.42cqw);background:var(--ead-ink);transform:rotate(7deg);transform-origin:center}.explore-art-tension span{width:22cqw;height:22cqw;background:var(--ead-ink);left:7%;top:10%}.explore-art-tension i{width:7.5cqw;height:7.5cqw;border-radius:50%;background:var(--ead-accent);right:8%;top:53%}.explore-art-tension b{width:0;height:0;border-left:5cqw solid transparent;border-right:5cqw solid transparent;border-bottom:9cqw solid var(--ead-ink);left:54%;top:48%}
.explore-art-figure{display:grid;place-items:center}.explore-art-figure svg{display:block;width:min(78%,440px);height:auto;overflow:visible}.explore-art-figure .fg-field{fill:var(--ead-ink)}.explore-art-figure .fg-vase{fill:#fff}
.explore-art-rhythm{background:repeating-linear-gradient(90deg,var(--ead-ink) 0 max(3px,.34cqw),transparent max(3px,.34cqw) 4.4cqw);background-size:100% 64%;background-repeat:no-repeat;background-position:center}.explore-art-rhythm:after{content:"";position:absolute;left:61%;top:18%;height:64%;width:4.4cqw;background:var(--ead-accent)}
.explore-art-scale span{width:34cqw;height:34cqw;max-width:250px;max-height:250px;background:var(--ead-ink);left:8%;top:7%}.explore-art-scale i{width:7cqw;height:7cqw;min-width:34px;min-height:34px;background:var(--ead-ink);right:12%;bottom:17%}
.explore-art-color span,.explore-art-color i,.explore-art-color b{width:27cqw;height:27cqw;max-width:210px;max-height:210px;border-radius:50%;top:18%;mix-blend-mode:multiply}.explore-art-color span{left:12%;background:#5b38df}.explore-art-color i{left:35%;background:#ffcf22}.explore-art-color b{left:58%;background:#f04455}
.explore-art-space{font-weight:800;letter-spacing:-.06em}.explore-art-space span{left:4%;top:10%;font-size:min(8cqw,72px)}.explore-art-space i{left:31%;top:36%;font-size:min(13cqw,116px)}.explore-art-space b{right:4%;bottom:8%;font-size:min(6cqw,56px);color:var(--ead-accent)}
@media(max-width:900px){.explore-hero .content-wrap{grid-template-columns:1fr}.explore-hero h1,.explore-intro>p:first-child,.explore-mantra{grid-column:1}.explore-mantra{grid-row:auto;margin-top:12px}.explore-card,.explore-feature,.explore-tall,.explore-wide{grid-template-rows:minmax(250px,46vw) auto}}
@media(max-width:700px){.explore-grid{grid-template-columns:1fr}.explore-card,.explore-feature,.explore-tall,.explore-wide{grid-column:1;border-right:0;grid-template-rows:minmax(220px,66vw) auto}.explore-hero{padding:48px 0 52px}.explore-hero h1{font-size:clamp(52px,16vw,76px)}.explore-copy h2{font-size:clamp(38px,12vw,58px)}}
\n\n/* Tools — interactive visual laboratory */
.tools-hero{padding:clamp(62px,7vw,104px) 0 clamp(54px,6vw,86px);border-bottom:1px solid var(--ead-line)}
.tools-hero h1{margin:14px 0 0;max-width:980px;font-size:clamp(62px,7vw,112px);line-height:.91;letter-spacing:-.065em}
.tools-hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);gap:clamp(52px,8vw,132px);align-items:end}
.tools-hero-copy{margin:28px 0 0;max-width:700px;color:var(--ead-muted);font-size:clamp(18px,1.45vw,23px);line-height:1.48}.tools-hero-note{margin:0;font-size:clamp(24px,2.4vw,36px);font-weight:700;line-height:1.03;letter-spacing:-.04em}
.tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--ead-line)}
.tool-card{min-height:720px;padding:clamp(36px,4vw,64px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line);display:flex;flex-direction:column;gap:32px}.tool-card:nth-child(even){border-right:0}.tool-card:nth-child(3){background:var(--ead-soft)}
.tool-head small{display:block;color:var(--ead-muted);font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:12px}.tool-head h2{margin:0;font-size:clamp(40px,4vw,64px);line-height:.96;letter-spacing:-.055em}.tool-head p{max-width:620px;margin:15px 0 0;color:var(--ead-muted);font-size:15px;line-height:1.55}
.tool-stage{position:relative;flex:1;min-height:330px;border:1px solid var(--ead-line);background:#fff;overflow:hidden}.tool-controls{display:grid;gap:14px}.tool-controls label{display:grid;grid-template-columns:150px 1fr 54px;gap:14px;align-items:center;font-size:13px;font-weight:700}.tool-controls output{font-variant-numeric:tabular-nums;text-align:right;color:var(--ead-muted)}.tool-controls input[type=range]{width:100%;accent-color:var(--ead-accent)}
.value-stage{display:grid;grid-template-columns:repeat(9,1fr)}.value-stage span{min-width:0}.value-caption{position:absolute;left:18px;bottom:14px;padding:4px 7px;background:#fff;font-size:11px;font-weight:800;letter-spacing:.08em}
.color-stage{display:grid;place-items:center}.color-swatch{width:54%;aspect-ratio:1;border-radius:50%;background:hsl(260 65% 53%);box-shadow:0 0 0 1px rgba(0,0,0,.06)}.color-readout{position:absolute;left:18px;bottom:14px;font-size:12px;font-weight:800;letter-spacing:.06em}
.composition-stage .comp-square,.composition-stage .comp-circle{position:absolute;display:block}.composition-stage .comp-square{width:23%;aspect-ratio:1;background:var(--ead-ink);left:12%;top:17%}.composition-stage .comp-circle{width:11%;aspect-ratio:1;border-radius:50%;background:var(--ead-accent);left:72%;top:60%}.composition-stage:after{content:"";position:absolute;left:8%;right:8%;top:55%;height:3px;background:var(--ead-ink);transform:rotate(5deg);transform-origin:center}
.type-stage{display:grid;align-content:center;padding:7%;gap:8px}.type-sample{margin:0;font-weight:700;line-height:.9;letter-spacing:-.06em}.type-meta{margin-top:20px;color:var(--ead-muted);font-size:13px}
.tool-reset{justify-self:start;border:1px solid var(--ead-ink);background:#fff;color:var(--ead-ink);padding:9px 14px;font:inherit;font-size:12px;font-weight:800;letter-spacing:.06em;cursor:pointer}.tool-reset:hover{background:var(--ead-ink);color:#fff}
@media(max-width:900px){.tools-hero-grid{grid-template-columns:1fr}.tools-grid{grid-template-columns:1fr}.tool-card{border-right:0;min-height:650px}.tool-controls label{grid-template-columns:120px 1fr 48px}}
@media(max-width:600px){.tool-card{padding:32px 24px;min-height:610px}.tool-controls label{grid-template-columns:1fr 50px}.tool-controls input{grid-column:1/-1;grid-row:2}.tools-hero{padding-top:48px}.tools-hero h1{font-size:clamp(56px,17vw,82px)}}

/* v1.8 — isolate interactive tool geometry so one lab cannot resize another */
.tools-grid{align-items:start}
.tool-card{min-height:0;align-self:start}
.tool-stage{flex:none;height:390px;min-height:0}
.type-stage{height:390px}
@media(max-width:900px){.tool-card{min-height:0}.tool-stage,.type-stage{height:360px}}
@media(max-width:600px){.tool-card{min-height:0}.tool-stage,.type-stage{height:320px}}

/* Resources — visual reference desk */
.resources-hero{padding:clamp(64px,7vw,108px) 0 clamp(58px,6vw,92px);border-bottom:1px solid var(--ead-line)}
.resources-hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.65fr);gap:clamp(52px,8vw,132px);align-items:end}
.resources-hero h1{margin:14px 0 0;max-width:1040px;font-size:clamp(62px,7vw,112px);line-height:.91;letter-spacing:-.065em}
.resources-lede{max-width:730px;margin:28px 0 0;color:var(--ead-muted);font-size:clamp(18px,1.45vw,23px);line-height:1.48}
.resources-mantra{margin:0 0 4px;font-size:clamp(24px,2.4vw,36px);font-weight:700;line-height:1.03;letter-spacing:-.04em}
.resources-index{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--ead-line)}
.resources-index a{min-height:94px;padding:24px 28px;border-right:1px solid var(--ead-line);display:flex;flex-direction:column;justify-content:space-between;color:var(--ead-ink);text-decoration:none;font-size:15px;font-weight:700}.resources-index a:last-child{border-right:0}.resources-index a:hover{background:var(--ead-soft)}.resources-index span{color:var(--ead-muted);font-size:10px;letter-spacing:.1em}
.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--ead-line)}
.resource-card{min-height:700px;padding:clamp(38px,4vw,64px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line);display:flex;flex-direction:column}.resource-card:nth-child(even){border-right:0}.resource-card:nth-child(3),.resource-card:nth-child(6){background:var(--ead-soft)}
.resource-number{color:var(--ead-muted);font-size:12px;font-weight:800;letter-spacing:.1em}.resource-card h2{max-width:700px;margin:14px 0 0;font-size:clamp(40px,4vw,64px);line-height:.96;letter-spacing:-.055em}
.resource-visual{position:relative;height:300px;margin:44px 0 34px;overflow:hidden}.resource-visual i,.resource-visual span,.resource-visual b{position:absolute;display:block;font-style:normal}
.resource-list{margin:auto 0 0}.resource-list>div{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:14px 0;border-top:1px solid var(--ead-line)}.resource-list dt{font-size:13px;font-weight:800}.resource-list dd{margin:0;color:var(--ead-muted);font-size:14px;line-height:1.5}
.resource-note{max-width:620px;margin:auto 0 0;color:var(--ead-muted);font-size:15px;line-height:1.6}
.resource-color{display:flex;align-items:center;justify-content:center;gap:0}.resource-color i{position:relative;width:18%;aspect-ratio:1;border-radius:50%;margin-left:-3%}.resource-color i:first-child{margin-left:0;background:#5b35d5}.resource-color i:nth-child(2){background:#315bd8}.resource-color i:nth-child(3){background:#20a878}.resource-color i:nth-child(4){background:#f2c21a}.resource-color i:nth-child(5){background:#ef7444}.resource-color i:nth-child(6){background:#e83f62}
.resource-value{display:grid;grid-template-columns:repeat(7,1fr);height:260px}.resource-value i{position:relative}.resource-value i:nth-child(1){background:#171717}.resource-value i:nth-child(2){background:#3c3c3c}.resource-value i:nth-child(3){background:#626262}.resource-value i:nth-child(4){background:#888}.resource-value i:nth-child(5){background:#adadad}.resource-value i:nth-child(6){background:#d2d2d2}.resource-value i:nth-child(7){background:#f4f4f4}
.resource-type span{left:5%;top:2%;font-size:min(18vw,210px);font-weight:700;line-height:1;letter-spacing:-.08em}.resource-type:after{content:"";position:absolute;left:3%;right:3%;top:73%;height:2px;background:var(--ead-accent)}.resource-type b{left:61%;top:77%;font-size:11px;letter-spacing:.12em}.resource-type i{left:66%;top:12%;height:61%;width:1px;background:var(--ead-ink)}
.resource-composition span{width:32%;aspect-ratio:1;background:var(--ead-ink);left:7%;top:10%}.resource-composition i{width:9%;aspect-ratio:1;border-radius:50%;background:var(--ead-accent);right:9%;top:23%}.resource-composition b{width:0;height:0;border-left:46px solid transparent;border-right:46px solid transparent;border-bottom:82px solid var(--ead-ink);left:52%;bottom:9%}
.resource-space span{left:4%;top:8%;font-size:clamp(54px,8vw,120px);font-weight:800;letter-spacing:-.07em}.resource-space i{right:3%;bottom:8%;font-size:clamp(54px,8vw,120px);font-weight:800;letter-spacing:-.07em;color:var(--ead-accent)}
.resource-access span{left:5%;top:5%;font-size:clamp(100px,13vw,190px);font-weight:800;letter-spacing:-.08em}.resource-access i{right:27%;top:17%;font-size:28px;font-weight:800}.resource-access b{right:7%;bottom:16%;font-size:62px;font-weight:800;color:var(--ead-accent)}
.resources-closing{padding:clamp(72px,8vw,120px) 0}.resources-closing h2{margin:14px 0 0;font-size:clamp(48px,6vw,88px);line-height:.95;letter-spacing:-.06em}.resources-closing p:last-child{max-width:680px;margin:24px 0 0;color:var(--ead-muted);font-size:18px;line-height:1.55}
@media(max-width:900px){.resources-hero-grid{grid-template-columns:1fr}.resources-mantra{margin-top:16px}.resources-index{grid-template-columns:repeat(3,1fr)}.resources-index a:nth-child(3n){border-right:0}.resource-grid{grid-template-columns:1fr}.resource-card,.resource-card:nth-child(even){border-right:0;min-height:620px}}
@media(max-width:600px){.resources-hero{padding-top:48px}.resources-hero h1{font-size:clamp(54px,16vw,80px)}.resources-index{grid-template-columns:repeat(2,1fr)}.resources-index a:nth-child(3n){border-right:1px solid var(--ead-line)}.resources-index a:nth-child(2n){border-right:0}.resource-card{padding:32px 24px;min-height:560px}.resource-visual{height:230px;margin-top:34px}.resource-list>div{grid-template-columns:110px 1fr}}

/* Resources v2.0 — curated external desk */
.resource-feature-strip{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--ead-line)}
.resource-feature-link,.resource-type-anatomy{min-height:430px;padding:clamp(30px,4vw,58px)}
.resource-feature-link{display:flex;flex-direction:column;text-decoration:none;color:var(--ead-ink);border-right:1px solid var(--ead-line);transition:background .18s ease}
.resource-feature-link:hover{background:var(--ead-soft)}
.resource-feature-link small,.resource-type-anatomy>small{font-size:11px;font-weight:800;letter-spacing:.11em;color:var(--ead-accent)}
.resource-feature-link strong{margin:auto 0 18px;font-size:clamp(40px,5vw,72px);line-height:.96;letter-spacing:-.055em}
.resource-feature-link span{font-size:15px;color:var(--ead-muted)}.resource-feature-link b{color:var(--ead-accent);margin-left:8px}
.resource-type-anatomy{overflow:hidden}
.type-anatomy-word{height:300px;position:relative;margin-top:28px;container-type:inline-size}
.anatomy-word{position:absolute;left:3%;bottom:17%;font-size:15cqw;font-weight:700;line-height:1;letter-spacing:-.07em}
.anatomy-line{position:absolute;left:3%;right:3%;height:1px;background:var(--ead-accent)}
.anatomy-x{bottom:48%}.anatomy-base{bottom:18%}
.anatomy-label{position:absolute;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ead-accent)}
.label-x{right:3%;bottom:50%}.label-base{right:3%;bottom:20%}.label-asc{left:31%;top:12%}.label-desc{left:68%;bottom:2%}
.external-resources{padding:clamp(72px,9vw,130px) 0 0}
.external-heading{padding:0 clamp(28px,5vw,72px) clamp(56px,7vw,90px);display:grid;grid-template-columns:1.1fr .9fr;column-gap:8vw}
.external-heading .eyebrow{grid-column:1/-1}.external-heading h2{margin:12px 0 0;font-size:clamp(48px,6vw,86px);line-height:.95;letter-spacing:-.055em}.external-heading>p:last-child{align-self:end;margin:0;color:var(--ead-muted);font-size:17px;line-height:1.6;max-width:560px}
.external-resource-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}
.external-group{padding:clamp(30px,3.5vw,52px);border-right:1px solid var(--ead-line)}.external-group:last-child{border-right:0}.external-group-number{font-size:11px;font-weight:800;color:var(--ead-accent);letter-spacing:.1em}.external-group h3{margin:10px 0 38px;font-size:clamp(28px,3vw,42px);letter-spacing:-.045em}
.external-group a{position:relative;display:block;padding:24px 34px 24px 0;border-top:1px solid var(--ead-line);text-decoration:none;color:var(--ead-ink)}.external-group a:last-child{border-bottom:1px solid var(--ead-line)}.external-group a strong{display:block;font-size:18px;margin-bottom:7px}.external-group a span{display:block;color:var(--ead-muted);font-size:13px;line-height:1.55}.external-group a b{position:absolute;right:2px;top:24px;color:var(--ead-accent)}.external-group a:hover strong{text-decoration:underline;text-underline-offset:4px}
.resources-v2-closing{margin-top:0}
.tool-card{scroll-margin-top:110px}
@media(max-width:900px){.resource-feature-strip{grid-template-columns:1fr}.resource-feature-link{border-right:0;border-bottom:1px solid var(--ead-line)}.external-heading{grid-template-columns:1fr}.external-heading>p:last-child{margin-top:28px}.external-resource-grid{grid-template-columns:1fr}.external-group{border-right:0;border-bottom:1px solid var(--ead-line)}}
@media(max-width:640px){.resource-feature-link,.resource-type-anatomy{min-height:360px}.type-anatomy-word{height:250px}.external-resources{padding-top:70px}}

/* Resources v2.1: external library only */
.resources-v21 .external-resources{padding-top:clamp(72px,8vw,118px)}
.resources-v21 .external-heading{padding-bottom:clamp(54px,6vw,82px)}
.resources-v21 .external-heading>div h2{margin:12px 0 0;font-size:clamp(48px,6vw,86px);line-height:.95;letter-spacing:-.055em}
.resource-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.resource-library-grid .external-group:nth-child(2n){border-right:0}
.resources-empty{padding:60px 0 90px;color:var(--ead-muted)}
@media(max-width:900px){.resource-library-grid{grid-template-columns:1fr}.resource-library-grid .external-group{border-right:0}}

/* Resources v2.2 — curated editorial shelf */
.curated-resource-grid .external-group-wide{grid-column:1/-1;border-right:0}
.curated-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.curated-link-grid a:nth-child(odd){border-right:1px solid var(--ead-line);padding-right:clamp(34px,4vw,68px)}
.curated-link-grid a:nth-child(even){padding-left:clamp(34px,4vw,68px)}
.curated-link-grid a:nth-last-child(-n+2){border-bottom:1px solid var(--ead-line)}
.network-resource-group{background:var(--ead-soft)}
.network-resource-intro{max-width:720px;margin:-18px 0 30px;color:var(--ead-muted);font-size:15px;line-height:1.6}
@media(max-width:900px){.curated-link-grid{grid-template-columns:1fr}.curated-link-grid a:nth-child(n){padding-left:0;padding-right:34px;border-right:0}.curated-link-grid a:nth-last-child(2){border-bottom:0}.curated-resource-grid .external-group-wide{grid-column:auto}}

/* v2.3 — dedicated Color element page */
.color-hero{padding:clamp(72px,9vw,138px) 0 clamp(64px,8vw,112px);border-bottom:1px solid var(--ead-line)}
.color-hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.5fr);gap:clamp(50px,8vw,130px);align-items:end}
.color-hero h1{margin:12px 0 0;font-size:clamp(86px,12vw,190px);line-height:.82;letter-spacing:-.075em}.color-lede{max-width:790px;margin:38px 0 0;color:var(--ead-muted);font-size:clamp(20px,1.8vw,28px);line-height:1.48}.color-mantra{margin:0;font-size:clamp(28px,3vw,44px);font-weight:700;line-height:1.04;letter-spacing:-.045em}
.color-foundations{display:grid;grid-template-columns:1.35fr .65fr;border-bottom:1px solid var(--ead-line)}.color-foundation-copy,.color-key{padding:clamp(42px,5vw,76px)}.color-foundation-copy{border-right:1px solid var(--ead-line)}.color-foundation-copy h2{margin:12px 0 24px;font-size:clamp(46px,5vw,78px);line-height:.95;letter-spacing:-.06em}.color-foundation-copy>p:last-child{max-width:760px;color:var(--ead-muted);font-size:18px;line-height:1.65}.color-key{display:flex;flex-direction:column;justify-content:center}.color-key div{padding:20px 0;border-top:1px solid var(--ead-line);display:grid;grid-template-columns:120px 1fr;gap:20px}.color-key div:last-child{border-bottom:1px solid var(--ead-line)}.color-key b{font-size:11px;letter-spacing:.1em}.color-key span{color:var(--ead-muted);font-size:14px;line-height:1.5}
.color-wheel-lab{padding:clamp(56px,7vw,100px) clamp(28px,5vw,72px);border-bottom:1px solid var(--ead-line);scroll-margin-top:100px}.color-lab-head{display:grid;grid-template-columns:1.25fr .75fr;gap:7vw;align-items:end;margin-bottom:clamp(48px,6vw,82px)}.color-lab-head h2{margin:12px 0 0;font-size:clamp(52px,6vw,92px);line-height:.92;letter-spacing:-.065em}.color-lab-head>p{max-width:580px;margin:0;color:var(--ead-muted);font-size:17px;line-height:1.6}
.color-wheel-workspace{display:grid;grid-template-columns:minmax(520px,1.15fr) minmax(330px,.85fr);gap:clamp(50px,7vw,110px);align-items:center}.real-wheel-stage{position:relative;width:min(78vw,720px);aspect-ratio:1;margin:auto}.real-color-wheel{position:absolute;inset:11%;border-radius:50%;background:conic-gradient(from -15deg,#e43f36 0deg 30deg,#ed6b32 30deg 60deg,#ee922f 60deg 90deg,#f1c62f 90deg 120deg,#e4d52e 120deg 150deg,#8eaf3f 150deg 180deg,#4c9854 180deg 210deg,#2c8b70 210deg 240deg,#287b9d 240deg 270deg,#4a5baa 270deg 300deg,#7045a2 300deg 330deg,#b13f7c 330deg 360deg);box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}.real-color-wheel:after{content:"";position:absolute;inset:31%;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--ead-line)}.real-wheel-center{position:absolute;z-index:3;inset:35%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.real-wheel-center span{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--ead-muted)}.real-wheel-center strong{margin-top:5px;font-size:clamp(18px,2vw,28px)}
.wheel-hue-labels{position:absolute;inset:0;pointer-events:none}.wheel-hue-labels span{--a:calc(var(--i)*30deg);position:absolute;left:50%;top:50%;font-size:9px;font-weight:800;letter-spacing:.07em;transform:translate(-50%,-50%);white-space:nowrap}.real-wheel-markers{position:absolute;inset:0;z-index:4}.real-wheel-marker{--a:0deg;position:absolute;left:50%;top:50%;width:26px;height:26px;border:5px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #171717;transform:translate(-50%,-50%)}
.real-wheel-controls fieldset{border:0;padding:0;margin:0 0 42px}.real-wheel-controls legend,.real-hue-control>span{display:block;margin-bottom:14px;font-size:11px;font-weight:800;letter-spacing:.12em}.real-wheel-controls button{appearance:none;background:#fff;border:1px solid var(--ead-line);padding:13px 16px;margin:0 8px 8px 0;font:inherit;font-size:14px;cursor:pointer}.real-wheel-controls button:hover,.real-wheel-controls button.is-active{background:var(--ead-ink);border-color:var(--ead-ink);color:#fff}.real-hue-control{display:grid;grid-template-columns:1fr 90px;gap:14px 20px;align-items:center}.real-hue-control>span{grid-column:1/-1;margin:0}.real-hue-control input{width:100%;accent-color:var(--ead-accent)}.real-hue-control output{text-align:right;font-weight:700}.real-wheel-definition{margin-top:46px;padding-top:24px;border-top:1px solid var(--ead-line)}.real-wheel-definition strong{font-size:clamp(28px,3vw,42px);letter-spacing:-.04em}.real-wheel-definition p{max-width:480px;color:var(--ead-muted);line-height:1.6}.real-wheel-palette{display:grid;grid-template-columns:repeat(var(--palette-count,2),1fr);margin-top:clamp(48px,6vw,80px);min-height:150px}.real-wheel-palette div{padding:22px;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;font-size:12px;font-weight:800}.real-wheel-palette div span:last-child{font-weight:500}
.color-picker-lab{display:grid;grid-template-columns:.72fr 1.28fr;border-bottom:1px solid var(--ead-line);scroll-margin-top:100px}.color-picker-copy,.color-picker-ui{padding:clamp(42px,5vw,76px)}.color-picker-copy{border-right:1px solid var(--ead-line)}.color-picker-copy h2{margin:12px 0 24px;font-size:clamp(48px,5vw,78px);line-height:.95;letter-spacing:-.06em}.color-picker-copy>p:last-child{color:var(--ead-muted);font-size:17px;line-height:1.65}.color-picker-ui .tool-stage{height:420px}.element-next{display:flex;justify-content:space-between;padding:30px clamp(28px,5vw,72px);border-bottom:1px solid var(--ead-line)}.element-next a{color:var(--ead-ink);font-weight:700;text-decoration:none}.element-next a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:980px){.color-hero-grid,.color-foundations,.color-lab-head,.color-wheel-workspace,.color-picker-lab{grid-template-columns:1fr}.color-foundation-copy,.color-picker-copy{border-right:0;border-bottom:1px solid var(--ead-line)}.color-wheel-workspace{gap:40px}.real-wheel-stage{width:min(88vw,650px)}.wheel-hue-labels span{display:none}}
@media(max-width:600px){.color-hero h1{font-size:clamp(80px,25vw,120px)}.color-wheel-lab{padding-left:20px;padding-right:20px}.real-wheel-stage{width:94vw}.real-wheel-marker{width:18px;height:18px;border-width:3px}.color-picker-ui{padding:28px 20px}.color-picker-ui .tool-stage{height:320px}.element-next{gap:20px;font-size:14px}}

/* v2.4 color wheel geometry: positions are set in JS as percentages so they remain stable at every viewport/zoom. */
.real-wheel-stage{container-type:normal}
.wheel-hue-labels span{z-index:5;text-align:center;line-height:1.1;color:var(--ead-muted)}
.real-wheel-marker{transition:left .18s ease,top .18s ease;pointer-events:none}
.real-wheel-marker:first-child{box-shadow:0 0 0 2px #171717,0 0 0 7px rgba(255,255,255,.75)}
@media(max-width:980px){.wheel-hue-labels span{display:block;font-size:8px}}
@media(max-width:600px){.wheel-hue-labels span{display:none}}

/* v2.5 Typography deep page */
.type-hero{padding:clamp(86px,10vw,150px) 0 clamp(70px,8vw,110px);border-bottom:1px solid var(--ead-line)}
.type-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end}.type-hero h1{margin:10px 0 12px;font-size:clamp(86px,11vw,170px);line-height:.82;letter-spacing:-.075em}.type-deck{margin:0;font-size:clamp(24px,3vw,44px);font-weight:600;letter-spacing:-.04em}.type-hero-copy{max-width:600px;margin:0;color:var(--ead-muted);font-size:clamp(18px,1.8vw,24px);line-height:1.5}
.type-anatomy,.spacing-section,.type-playground{padding:clamp(64px,8vw,120px) clamp(28px,5vw,72px);border-bottom:1px solid var(--ead-line)}.type-section-head{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end;margin-bottom:clamp(42px,6vw,78px)}.type-section-head h2{margin:10px 0 0;font-size:clamp(48px,5.5vw,84px);line-height:.95;letter-spacing:-.06em}.type-section-head>p{max-width:590px;margin:0;color:var(--ead-muted);font-size:17px;line-height:1.6}
.anatomy-board{border:1px solid var(--ead-line);background:#fff;padding:clamp(12px,2vw,28px);overflow:hidden}.anatomy-board svg{display:block;width:100%;height:auto}.anatomy-letters{font-family:Georgia,'Times New Roman',serif;font-size:360px;fill:var(--ead-ink)}.guide line{stroke:#8e74ef;stroke-width:1.5}.guide-label text,.callout text{font-family:Manrope,sans-serif;font-size:15px;font-weight:800;letter-spacing:.08em;fill:#5d5d5d}.callout line{stroke:#171717;stroke-width:1.5}
.type-basics{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--ead-line)}.type-basics article{min-height:650px;padding:clamp(46px,5vw,78px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.type-basics article:last-child{border-right:0}.type-basics h2{margin:12px 0 40px;font-size:clamp(52px,5vw,82px);line-height:.95;letter-spacing:-.06em}.type-basics article>p:last-child{margin:auto 0 0;max-width:650px;color:var(--ead-muted);font-size:16px;line-height:1.65}.classification-demo{display:flex;align-items:baseline;gap:clamp(35px,6vw,100px);margin:20px 0 70px}.classification-demo span{font-size:clamp(130px,14vw,220px);line-height:.8}.serif-demo{font-family:Georgia,'Times New Roman',serif}.sans-demo{font-family:Manrope,sans-serif;font-weight:700;letter-spacing:-.08em}.font-family-demo{display:flex;flex-direction:column;margin:30px 0 70px}.font-family-demo strong{font-size:clamp(74px,8vw,128px);letter-spacing:-.07em;line-height:.9}.font-family-demo span{margin-top:26px;color:var(--ead-muted);font-size:16px}
.spacing-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ead-line)}.spacing-grid article{min-height:520px;padding:clamp(30px,3vw,48px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.spacing-grid article:last-child{border-right:0}.spacing-demo{height:250px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--ead-line);margin-bottom:32px}.spacing-grid h3{margin:0;font-size:32px;letter-spacing:-.04em}.spacing-grid p{color:var(--ead-muted);line-height:1.6}.leading-demo span{font-size:36px;font-weight:700;line-height:1.05;letter-spacing:-.04em}.tracking-demo span{font-size:27px;font-weight:700;letter-spacing:.22em}.kerning-demo{gap:0}.kerning-demo span{font-family:Georgia,'Times New Roman',serif;font-size:150px;line-height:1}.kerning-demo span+span{margin-left:-18px}
.type-measure{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;padding:clamp(64px,8vw,120px) clamp(28px,5vw,72px);border-bottom:1px solid var(--ead-line)}.type-measure h2{margin:10px 0 0;font-size:clamp(44px,5vw,76px);line-height:.98;letter-spacing:-.055em}.measure-samples{display:grid;gap:50px;align-content:center}.measure-samples p{margin:0;font-size:19px;line-height:1.65}.measure-good{max-width:560px}.measure-wide{max-width:900px;color:var(--ead-muted)}
.type-play-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:5vw;align-items:center}.type-playground .type-stage{height:460px;border:1px solid var(--ead-line);background:#fff}.type-playground .tool-controls{padding:0}.type-playground .tool-controls label{margin-bottom:28px}
@media(max-width:900px){.type-hero-grid,.type-section-head,.type-measure,.type-play-grid{grid-template-columns:1fr}.type-basics{grid-template-columns:1fr}.type-basics article{border-right:0;border-bottom:1px solid var(--ead-line)}.spacing-grid{grid-template-columns:1fr}.spacing-grid article{border-right:0;border-bottom:1px solid var(--ead-line)}.spacing-grid article:last-child{border-bottom:0}.anatomy-board{overflow-x:auto}.anatomy-board svg{min-width:900px}.type-playground .type-stage{height:380px}}

/* v2.6 deep element + principle page system */
.deep-hero{padding:clamp(82px,10vw,150px) 0 clamp(70px,8vw,112px);border-bottom:1px solid var(--ead-line)}
.deep-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:8vw;align-items:end}.deep-hero h1{margin:12px 0 18px;font-size:clamp(82px,11vw,168px);line-height:.82;letter-spacing:-.075em}.deep-deck{margin:0;font-size:clamp(26px,3vw,44px);font-weight:650;letter-spacing:-.045em}.deep-intro{max-width:620px;margin:0;color:var(--ead-muted);font-size:clamp(18px,1.8vw,24px);line-height:1.55}
.deep-concepts{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--ead-line)}.deep-concepts article{min-height:680px;padding:clamp(36px,4vw,64px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.deep-concepts article:last-child{border-right:0}.deep-concepts h2{margin:12px 0 18px;font-size:clamp(38px,4vw,62px);line-height:.98;letter-spacing:-.055em}.deep-concepts article>p:last-child{max-width:520px;color:var(--ead-muted);font-size:16px;line-height:1.65}.concept-demo{height:330px;position:relative;margin-bottom:auto;overflow:hidden}.concept-demo span,.concept-demo i,.concept-demo b{position:absolute;display:block;font-style:normal}.concept-demo span{width:38%;aspect-ratio:1;background:var(--ead-ink);left:8%;top:15%}.concept-demo i{width:13%;aspect-ratio:1;border-radius:50%;background:var(--ead-accent);right:12%;top:44%}.concept-demo b{left:8%;right:8%;height:2px;background:var(--ead-ink);bottom:20%;transform:rotate(-5deg)}
.element-deep .deep-concepts article:nth-child(2) .concept-demo span{background:transparent;border:3px solid var(--ead-ink);border-radius:50%}.element-deep .deep-concepts article:nth-child(3) .concept-demo{background:repeating-linear-gradient(90deg,transparent 0 8%,var(--ead-ink) 8% 8.5%,transparent 8.5% 16%)}
.principle-demo-generic span{width:46%;height:46%;left:8%;top:18%}.principle-demo-generic i{right:14%;top:28%}.principle-demo-generic b{bottom:24%}.deep-note{padding:clamp(70px,9vw,130px) clamp(28px,5vw,72px);border-bottom:1px solid var(--ead-line);display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.deep-note h2{margin:10px 0 0;font-size:clamp(48px,5.5vw,84px);line-height:.95;letter-spacing:-.06em}.deep-note>p:last-child{max-width:700px;margin:36px 0 0;color:var(--ead-muted);font-size:18px;line-height:1.65}
@media(max-width:900px){.deep-hero-grid,.deep-note{grid-template-columns:1fr}.deep-concepts{grid-template-columns:1fr}.deep-concepts article{min-height:560px;border-right:0;border-bottom:1px solid var(--ead-line)}.concept-demo{height:270px}}
.typographia-word{font-size:225px;letter-spacing:-.035em}


/* curriculum + evidence system */
.curriculum-note{padding:22px clamp(28px,5vw,72px);border-bottom:1px solid var(--ead-line);background:var(--ead-soft)}
.curriculum-note p{max-width:1100px;margin:0;color:var(--ead-muted);font-size:14px;line-height:1.6}.curriculum-note strong{color:var(--ead-ink)}
.art-reference{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding:clamp(70px,9vw,130px) clamp(28px,5vw,72px);border-bottom:1px solid var(--ead-line)}
.art-reference>div h2{margin:10px 0 0;font-size:clamp(48px,5.5vw,84px);line-height:.95;letter-spacing:-.06em}.art-reference>div>p:last-child{max-width:560px;color:var(--ead-muted);line-height:1.65}
.art-reference-card{align-self:center;border-top:2px solid var(--ead-ink);padding-top:24px}.art-reference-card h3{margin:8px 0;font-size:clamp(30px,3.4vw,52px);line-height:1;letter-spacing:-.045em}.art-reference-card p{max-width:680px;color:var(--ead-muted);line-height:1.65}.art-reference-card .art-meta{color:var(--ead-ink);font-weight:700}.art-reference-card a{display:inline-block;margin-top:12px;color:var(--ead-accent);font-weight:800;text-decoration:none}.art-reference-card a:hover{text-decoration:underline}
.deep-note>div h2{margin:10px 0 0;font-size:clamp(48px,5.5vw,84px);line-height:.95;letter-spacing:-.06em}.deep-note>p{max-width:700px;margin:36px 0 0;color:var(--ead-muted);font-size:18px;line-height:1.65}
/* make concept illustrations meaningfully different */
.element-shape-deep .deep-concepts article:nth-child(1) .concept-demo span{background:transparent;width:44%;height:44%;border:4px solid var(--ead-ink);border-top-color:transparent;transform:rotate(45deg);border-radius:0}
.element-shape-deep .deep-concepts article:nth-child(2) .concept-demo{background:linear-gradient(90deg,#fff 0 49.5%,#111 49.5% 100%)}.element-shape-deep .deep-concepts article:nth-child(2) .concept-demo span{width:42%;height:68%;left:29%;top:16%;background:#fff;border-radius:50%}.element-shape-deep .deep-concepts article:nth-child(2) .concept-demo i{width:42%;height:68%;left:29%;top:16%;background:#111;border-radius:50%;clip-path:inset(0 50% 0 0)}
.element-form-deep .deep-concepts article:nth-child(2) .concept-demo span{border:0;border-radius:50%;background:radial-gradient(circle at 34% 30%,#fff 0 7%,#ddd 24%,#777 60%,#171717 100%)}
.element-value-deep .deep-concepts article:nth-child(1) .concept-demo{height:220px;margin-top:40px;background:linear-gradient(90deg,#111 0 11%,#333 11% 22%,#555 22% 33%,#777 33% 44%,#999 44% 55%,#aaa 55% 66%,#bbb 66% 77%,#ddd 77% 88%,#f5f5f5 88% 100%)}.element-value-deep .deep-concepts article:nth-child(1) .concept-demo>*{display:none}
.principle-balance-deep .deep-concepts article:nth-child(1) .concept-demo span{width:22%;height:44%;left:14%;top:30%}.principle-balance-deep .deep-concepts article:nth-child(1) .concept-demo i{width:22%;height:44%;right:14%;top:30%;border-radius:0;background:var(--ead-ink)}.principle-balance-deep .deep-concepts article:nth-child(1) .concept-demo b{left:50%;top:8%;bottom:8%;width:1px;height:auto;transform:none;background:var(--ead-line)}
.principle-emphasis-deep .deep-concepts article:nth-child(2) .concept-demo{background:radial-gradient(circle at 20% 30%,#111 0 8px,transparent 9px),radial-gradient(circle at 40% 30%,#111 0 8px,transparent 9px),radial-gradient(circle at 60% 30%,#5b38df 0 16px,transparent 17px),radial-gradient(circle at 80% 30%,#111 0 8px,transparent 9px),radial-gradient(circle at 20% 60%,#111 0 8px,transparent 9px),radial-gradient(circle at 40% 60%,#111 0 8px,transparent 9px),radial-gradient(circle at 60% 60%,#111 0 8px,transparent 9px),radial-gradient(circle at 80% 60%,#111 0 8px,transparent 9px)}.principle-emphasis-deep .deep-concepts article:nth-child(2) .concept-demo>*{display:none}
.typographia-board{background:#f8f7f5}.typographia-board .soft-guide{stroke:#bbb;stroke-dasharray:4 5}.typographia-word{font-size:230px;letter-spacing:-.045em}
@media(max-width:900px){.art-reference{grid-template-columns:1fr}.deep-note>p{margin-top:0}}

/* v2.8 Shape + Rhythm pilot ------------------------------------------------ */
.pilot-page{--pilot-pad:clamp(38px,5vw,74px)}
.pilot-page .eyebrow{margin:0;color:var(--ead-accent);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.pilot-hero{padding:clamp(82px,10vw,150px) 0 clamp(66px,8vw,112px);border-bottom:1px solid var(--ead-line)}
.pilot-hero .content-wrap{padding:0}
.pilot-hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(56px,8vw,124px);align-items:end}
.pilot-hero h1{margin:12px 0 22px;font-size:clamp(86px,12vw,176px);font-weight:700;line-height:.8;letter-spacing:-.078em}
.pilot-deck{max-width:800px;margin:0;font-size:clamp(25px,3vw,43px);font-weight:650;line-height:1.08;letter-spacing:-.046em}
.pilot-orientation{max-width:650px;color:var(--ead-muted);font-size:clamp(17px,1.55vw,22px);line-height:1.58}
.pilot-orientation p{margin:0 0 1.15em}.pilot-orientation p:last-child{margin-bottom:0}.pilot-orientation strong{color:var(--ead-ink)}
.pilot-compare,.shape-relations,.pilot-vocabulary,.rhythm-foundation,.rhythm-types,.three-way{border-bottom:1px solid var(--ead-line)}
.pilot-section-head{display:grid;grid-template-columns:1.18fr .82fr;gap:clamp(52px,8vw,120px);align-items:end;padding:var(--curriculum-section-start-space,clamp(64px,8vw,112px)) var(--pilot-pad) clamp(44px,5vw,70px)}
.pilot-section-head h2,.pilot-copy h2,.artwork-copy h2,.pilot-check h2,.pilot-connect h2{margin:10px 0 0;font-size:clamp(44px,5.2vw,78px);font-weight:700;line-height:.96;letter-spacing:-.06em}
.pilot-section-head>p{max-width:610px;margin:0;color:var(--ead-muted);font-size:17px;line-height:1.65}
.pilot-card-grid{display:grid}.pilot-card-grid-three{grid-template-columns:repeat(3,1fr)}
.pilot-demo-card{min-width:0;padding:0 var(--pilot-pad) clamp(56px,6vw,88px);border-right:1px solid var(--ead-line)}
.pilot-demo-card:last-child{border-right:0}.pilot-diagram{display:block;width:100%;height:auto;margin-bottom:36px;color:var(--ead-ink);border:1px solid var(--ead-line);background:#fff}
.pilot-demo-card h3,.rhythm-type-grid h3,.three-way-grid h3{margin:10px 0 16px;font-size:clamp(28px,2.7vw,42px);line-height:1.02;letter-spacing:-.045em}
.pilot-demo-card>p:last-child,.rhythm-type-grid article>p:last-child,.three-way-grid article>p:last-child{max-width:520px;margin-bottom:0;color:var(--ead-muted);font-size:15px;line-height:1.65}
.pilot-demo-dark .pilot-diagram{border-color:var(--ead-ink)}
.pilot-split,.pilot-lab,.pilot-artwork,.pilot-check,.pilot-connect{display:grid;grid-template-columns:.82fr 1.18fr;border-bottom:1px solid var(--ead-line)}
.pilot-copy{padding:clamp(62px,8vw,118px) var(--pilot-pad);border-right:1px solid var(--ead-line)}
.pilot-copy>p:not(.eyebrow):not(.lab-status){max-width:650px;color:var(--ead-muted);font-size:17px;line-height:1.65}.pilot-copy>p strong{color:var(--ead-ink)}
.shape-threshold-figure{display:flex;flex-direction:column;justify-content:center;margin:0;padding:clamp(52px,7vw,96px) var(--pilot-pad);background:var(--ead-soft)}
.shape-threshold-figure svg{display:block;width:100%;height:auto}.shape-threshold-figure .threshold-labels{font:800 12px Manrope,sans-serif;letter-spacing:.075em}.shape-threshold-figure figcaption{margin-top:16px;color:var(--ead-muted);font-size:12px;line-height:1.5}
.shape-continuum-figure{display:flex;flex-direction:column;justify-content:center;margin:0;padding:clamp(52px,7vw,96px) var(--pilot-pad)}
.shape-continuum-figure svg{display:block;width:100%}.shape-continuum-figure text{font:800 13px Manrope,sans-serif;letter-spacing:.1em;fill:var(--ead-muted)}
.shape-continuum-figure figcaption,.artwork-image figcaption{margin-top:16px;color:var(--ead-muted);font-size:12px;line-height:1.5}
.relation-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ead-line)}
.relation-grid figure{margin:0;padding:clamp(32px,4vw,58px);border-right:1px solid var(--ead-line)}.relation-grid figure:last-child{border-right:0}
.relation-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}.relation-grid figcaption{margin-top:18px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.vocab-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:0;border-top:1px solid var(--ead-line)}
.vocab-grid>div{min-height:220px;padding:clamp(28px,3.5vw,52px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.vocab-grid>div:nth-child(4n){border-right:0}.vocab-grid>div:nth-last-child(-n+4){border-bottom:0}
.vocab-grid dt{font-size:clamp(23px,2.2vw,34px);font-weight:700;line-height:1;letter-spacing:-.04em}.vocab-grid dd{margin:20px 0 0;color:var(--ead-muted);font-size:14px;line-height:1.6}
.pilot-button-group{display:flex;flex-wrap:wrap;gap:10px;margin:34px 0 22px}.pilot-button-group button,.pilot-reset{appearance:none;border:1px solid var(--ead-ink);border-radius:0;background:#fff;color:var(--ead-ink);padding:13px 16px;font:700 13px Manrope,sans-serif;cursor:pointer}
.pilot-button-group button:hover,.pilot-button-group button.is-active,.pilot-reset:hover{background:var(--ead-ink);color:#fff}.pilot-button-group button:focus-visible,.pilot-reset:focus-visible,.rhythm-controls select:focus-visible,.rhythm-controls input:focus-visible,summary:focus-visible,.pilot-source-link:focus-visible,.connect-links a:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}
.lab-status{max-width:660px;margin:18px 0 0;padding-top:20px;border-top:1px solid var(--ead-line);color:var(--ead-muted);font-size:14px;line-height:1.6}.lab-status strong{color:var(--ead-ink)}
.figure-ground-stage{position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(52px,7vw,100px) var(--pilot-pad);background:var(--ead-soft)}
.figure-ground-stage svg{display:block;width:min(100%,680px);margin:auto;border:1px solid var(--ead-line);background:#fff}.fg-side{fill:var(--ead-ink)}.fg-center-outline{fill:none;stroke:var(--ead-accent);stroke-width:9;opacity:1}.figure-ground-stage[data-reading="sides"] .fg-center-outline{opacity:0}.figure-ground-stage[data-reading="sides"] .fg-side{stroke:var(--ead-accent);stroke-width:9;paint-order:stroke fill}
.figure-ground-stage>.fg-reading-caption{width:min(100%,680px);margin:16px auto 0;text-align:center;font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--ead-accent)}
.pilot-artwork{grid-template-columns:1.05fr .95fr}.artwork-image{margin:0;padding:clamp(54px,7vw,100px) var(--pilot-pad);border-right:1px solid var(--ead-line);background:var(--ead-soft)}
.artwork-image img{display:block;width:auto;max-width:100%;max-height:900px;margin:auto;object-fit:contain;box-shadow:0 0 0 1px rgba(0,0,0,.12)}.artwork-image-wide img{width:100%;height:auto;max-height:none}
.artwork-copy{align-self:center;padding:clamp(58px,8vw,116px) var(--pilot-pad)}.artwork-copy h2 cite{font-style:normal}.artwork-meta{margin:26px 0;color:var(--ead-ink);font-size:14px;font-weight:700;line-height:1.7}
.artwork-copy>p:not(.eyebrow):not(.artwork-meta):not(.rights-note),.observe-list{max-width:670px;color:var(--ead-muted);font-size:16px;line-height:1.65}.observe-list{padding-left:1.25em}.observe-list li{margin-bottom:10px}
.rights-note{max-width:670px;margin-top:26px;padding-top:20px;border-top:1px solid var(--ead-line);color:var(--ead-muted);font-size:13px;line-height:1.6}.rights-note strong{color:var(--ead-ink)}
.pilot-source-link{display:inline-block;margin-top:16px;color:var(--ead-accent);font-size:14px;font-weight:800;text-decoration:none}.pilot-source-link:hover{text-decoration:underline}
.pilot-check,.pilot-connect{padding:clamp(68px,8vw,116px) var(--pilot-pad);gap:clamp(52px,8vw,120px)}.pilot-check h2,.pilot-connect h2{font-size:clamp(42px,4.7vw,70px)}
.check-stack details{border-top:1px solid var(--ead-line)}.check-stack details:last-child{border-bottom:1px solid var(--ead-line)}.check-stack summary{padding:22px 42px 22px 0;font-size:17px;font-weight:700;line-height:1.4;cursor:pointer}.check-stack details p{max-width:690px;margin:0;padding:0 30px 24px 0;color:var(--ead-muted);font-size:15px;line-height:1.65}
.connect-links{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ead-line)}.connect-links a{display:flex;min-height:250px;padding:32px;flex-direction:column;text-decoration:none}.connect-links a+a{border-left:1px solid var(--ead-line)}.connect-links a:hover{background:var(--ead-soft);color:var(--ead-ink)}.connect-links span{color:var(--ead-accent);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.connect-links strong{margin-top:auto;font-size:clamp(24px,2.5vw,38px);line-height:1.06;letter-spacing:-.04em}.connect-links small{margin-top:12px;color:var(--ead-muted);font-size:13px;line-height:1.5}

/* Rhythm-specific teaching */
.rhythm-foundation-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ead-line)}.rhythm-foundation-grid figure{margin:0;padding:clamp(36px,4vw,58px);border-right:1px solid var(--ead-line)}.rhythm-foundation-grid figure:last-child{border-right:0}
.rhythm-strip{display:flex;align-items:center;min-height:190px;margin-bottom:28px;border-bottom:1px solid var(--ead-line)}.rhythm-strip i,.rhythm-sequence i{display:block;flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--ead-ink)}.rhythm-strip.single{justify-content:center}.rhythm-strip.recurring,.rhythm-strip.accent{justify-content:space-between}.rhythm-strip.intervals{gap:0}.rhythm-strip.intervals i:nth-child(1){margin-left:0}.rhythm-strip.intervals i:nth-child(2){margin-left:14px}.rhythm-strip.intervals i:nth-child(3){margin-left:34px}.rhythm-strip.intervals i:nth-child(4){margin-left:54px}.rhythm-strip.intervals i:nth-child(5){margin-left:auto}.rhythm-strip .is-accent,.rhythm-sequence .is-accent{width:50px;height:50px;background:var(--ead-accent);border:5px double var(--ead-ink)}
.rhythm-foundation-grid figcaption{display:flex;flex-direction:column}.rhythm-foundation-grid figcaption strong{font-size:24px;line-height:1.1;letter-spacing:-.035em}.rhythm-foundation-grid figcaption span{margin-top:9px;color:var(--ead-muted);font-size:13px}
.rhythm-type-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ead-line)}.rhythm-type-grid article{padding:clamp(40px,5vw,72px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.rhythm-type-grid article:nth-child(2n){border-right:0}.rhythm-type-grid article:nth-child(4){border-bottom:0}.rhythm-type-grid .rhythm-flow-card{grid-column:1/-1;border-right:0;border-bottom:0}
.rhythm-sequence{display:flex;align-items:center;justify-content:space-between;height:230px;margin-bottom:34px;border-bottom:1px solid var(--ead-line)}.rhythm-alternating i:nth-child(odd){transform:translateY(-40px)}.rhythm-alternating i:nth-child(even){transform:translateY(40px)}
.rhythm-progressive i:nth-child(1){width:22px;height:22px}.rhythm-progressive i:nth-child(2){width:29px;height:29px}.rhythm-progressive i:nth-child(3){width:36px;height:36px}.rhythm-progressive i:nth-child(4){width:43px;height:43px}.rhythm-progressive i:nth-child(5){width:50px;height:50px}.rhythm-progressive i:nth-child(6){width:57px;height:57px}.rhythm-syncopated{justify-content:flex-start;gap:8%}.rhythm-syncopated i:nth-child(4){margin-left:5%}
.rhythm-flow{display:block;width:100%;height:auto;margin-bottom:30px;border-bottom:1px solid var(--ead-line)}.rhythm-flow circle{fill:var(--ead-ink)}
.three-way-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.three-way-grid article{padding:clamp(38px,4.5vw,68px);border-right:1px solid var(--ead-line)}.three-way-grid article:last-child{border-right:0}.three-way-grid svg{display:block;width:100%;height:auto;margin-bottom:28px;border:1px solid var(--ead-line)}
.rhythm-controls{margin-top:36px}.rhythm-controls label{display:block;margin:0 0 26px}.rhythm-controls label>span{display:flex;justify-content:space-between;margin-bottom:9px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.rhythm-controls output{color:var(--ead-accent)}.rhythm-controls input,.rhythm-controls select{width:100%;accent-color:var(--ead-accent)}.rhythm-controls select{border:1px solid var(--ead-line);border-radius:0;background:#fff;padding:12px;font:inherit}.pilot-reset{margin-top:6px}
.rhythm-lab-stage{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(54px,7vw,100px) var(--pilot-pad);background:var(--ead-soft)}.rhythm-live-sequence{display:flex;align-items:center;justify-content:safe center;min-height:360px;padding:40px 24px;border:1px solid var(--ead-line);background:#fff;overflow-x:auto;overflow-y:hidden}.rhythm-live-sequence i{display:block;flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--ead-ink)}.rhythm-live-sequence i.is-accent{background:var(--ead-accent);border:5px double var(--ead-ink)}

@media(max-width:1050px){
  .pilot-card-grid-three,.three-way-grid{grid-template-columns:1fr}.pilot-demo-card,.three-way-grid article{border-right:0;border-bottom:1px solid var(--ead-line)}.pilot-demo-card:last-child,.three-way-grid article:last-child{border-bottom:0}.pilot-demo-card{padding-top:40px}.pilot-diagram{max-width:620px}
  .relation-grid,.rhythm-foundation-grid{grid-template-columns:repeat(2,1fr)}.relation-grid figure:nth-child(2),.rhythm-foundation-grid figure:nth-child(2){border-right:0}.relation-grid figure:nth-child(-n+2),.rhythm-foundation-grid figure:nth-child(-n+2){border-bottom:1px solid var(--ead-line)}
  .vocab-grid{grid-template-columns:repeat(2,1fr)}.vocab-grid>div:nth-child(2n){border-right:0}.vocab-grid>div:nth-child(4n){border-right:0}.vocab-grid>div:nth-last-child(-n+4){border-bottom:1px solid var(--ead-line)}.vocab-grid>div:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:820px){
  .pilot-hero-grid,.pilot-section-head,.pilot-split,.pilot-lab,.pilot-artwork,.pilot-check,.pilot-connect{grid-template-columns:1fr}.pilot-hero-grid{gap:44px}.pilot-hero h1{font-size:clamp(78px,23vw,126px)}
  .pilot-section-head{gap:26px}.pilot-copy,.artwork-image{border-right:0;border-bottom:1px solid var(--ead-line)}.pilot-copy,.artwork-copy{padding-top:64px;padding-bottom:64px}.shape-continuum-figure{padding-top:46px;padding-bottom:60px}
  .rhythm-type-grid{grid-template-columns:1fr}.rhythm-type-grid article,.rhythm-type-grid article:nth-child(2n){border-right:0;border-bottom:1px solid var(--ead-line)}.rhythm-type-grid article:nth-child(4){border-bottom:1px solid var(--ead-line)}
  .connect-links{grid-template-columns:1fr}.connect-links a+a{border-left:0;border-top:1px solid var(--ead-line)}.connect-links a{min-height:210px}
}
@media(max-width:560px){
  .pilot-page{--pilot-pad:22px}.pilot-hero{padding-top:68px}.pilot-hero-grid{width:min(calc(100% - 40px),var(--ead-wide))}.pilot-hero h1{font-size:clamp(72px,26vw,108px)}.pilot-deck{font-size:25px}.pilot-orientation{font-size:16px}
  .pilot-section-head h2,.pilot-copy h2,.artwork-copy h2,.pilot-check h2,.pilot-connect h2{font-size:clamp(38px,12vw,54px)}
  .relation-grid,.rhythm-foundation-grid,.vocab-grid{grid-template-columns:1fr}.relation-grid figure,.relation-grid figure:nth-child(2),.rhythm-foundation-grid figure,.rhythm-foundation-grid figure:nth-child(2),.vocab-grid>div,.vocab-grid>div:nth-child(2n){border-right:0;border-bottom:1px solid var(--ead-line)}.relation-grid figure:last-child,.rhythm-foundation-grid figure:last-child,.vocab-grid>div:last-child{border-bottom:0}
  .pilot-button-group{flex-direction:column}.pilot-button-group button{width:100%}.figure-ground-stage{padding-left:18px;padding-right:18px}.figure-ground-stage>.fg-reading-caption{font-size:9px}
  .rhythm-sequence{height:200px}.rhythm-strip i,.rhythm-sequence i{width:26px;height:26px}.rhythm-strip .is-accent,.rhythm-sequence .is-accent{width:42px;height:42px}.rhythm-live-sequence{min-height:280px;padding-left:10px;padding-right:10px}
  .pilot-artwork{grid-template-columns:1fr}.pilot-check,.pilot-connect{padding-top:64px;padding-bottom:64px}.element-next{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pilot-page *{scroll-behavior:auto;transition:none!important;animation:none!important}}

/* v2.9 foundational elements checkpoint */
.point-context,.point-relations,.line-paths,.line-directions,.line-surface,.form-actual,.form-translations,.form-viewpoints,.value-relative,.value-scale-section,.value-key{border-bottom:1px solid var(--ead-line)}
.point-context-grid{display:grid;grid-template-columns:1.45fr 1fr .65fr;gap:0;border-top:1px solid var(--ead-line)}
.point-context-grid figure{display:flex;min-width:0;margin:0;padding:clamp(34px,4vw,62px);flex-direction:column;justify-content:flex-end;border-right:1px solid var(--ead-line)}.point-context-grid figure:last-child{border-right:0}.point-context-grid svg{display:block;width:100%;height:320px}.point-context-grid figcaption,.point-density-figure figcaption,.form-structure-figure figcaption,.value-reduction-figure figcaption{display:flex;margin-top:20px;flex-direction:column}.point-context-grid figcaption strong{font-size:24px;letter-spacing:-.035em}.point-context-grid figcaption span,.point-density-figure figcaption,.form-structure-figure figcaption,.value-reduction-figure figcaption{color:var(--ead-muted);font-size:13px;line-height:1.5}
.point-density-figure,.form-structure-figure,.value-reduction-figure{display:flex;margin:0;padding:clamp(52px,7vw,96px) var(--pilot-pad);flex-direction:column;justify-content:center}.point-density-figure svg,.form-structure-figure svg,.value-reduction-figure svg{display:block;width:100%;height:auto}
.value-reduction-defs{position:absolute;width:0!important;height:0!important;overflow:hidden}.value-reduction-panels{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(18px,2vw,34px)}.value-reduction-panel{display:flex;min-width:0;flex-direction:column;gap:18px}.value-reduction-panel svg{aspect-ratio:13/10;background:#f4f4f4}.value-reduction-panel strong{font-size:13px;letter-spacing:.02em}.value-reduction-arrow{color:var(--ead-purple);font-size:clamp(42px,5vw,72px);font-weight:400;line-height:1}.value-reduction-operation{display:flex;margin-top:52px;flex-direction:column;gap:10px}.value-reduction-operation strong{font-size:clamp(18px,1.5vw,24px);letter-spacing:-.02em}.value-reduction-operation span{font-size:12px;font-weight:800;letter-spacing:.17em}.value-map-key{display:grid;margin-top:32px;grid-template-columns:minmax(260px,1.35fr) auto minmax(220px,1fr);align-items:start;gap:clamp(18px,2vw,34px)}.value-map-source,.value-map-target{min-width:0}.value-map-swatches{display:grid;gap:4px}.value-map-swatches.source{grid-template-columns:repeat(9,minmax(0,1fr))}.value-map-swatches.target{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.value-map-swatches i{display:block;aspect-ratio:1;background:var(--swatch)}.value-map-swatches.source i:first-child,.value-map-swatches.target i:first-child{border:1px solid #d9d9d9}.value-map-swatches.target i{aspect-ratio:2.2/1}.value-map-groups{display:grid;margin-top:10px;grid-template-columns:2fr 3fr 4fr;gap:4px}.value-map-groups span{position:relative;padding-top:9px;border-top:2px solid var(--ead-purple);font-size:9px;font-weight:800;text-align:center;letter-spacing:.04em}.value-map-groups span:before,.value-map-groups span:after{position:absolute;top:-2px;width:2px;height:7px;background:var(--ead-purple);content:""}.value-map-groups span:before{left:0}.value-map-groups span:after{right:0}.value-map-target-labels{display:grid;margin-top:10px;grid-template-columns:repeat(3,1fr);gap:10px}.value-map-target-labels span{font-size:11px;font-weight:800;text-align:center}.value-map-key .key-arrow{align-self:center;font-size:46px}
.concept-controls{margin-top:34px}.concept-controls label{display:block;margin:0 0 25px}.concept-controls label>span{display:flex;justify-content:space-between;margin-bottom:9px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.concept-controls output{color:var(--ead-accent)}.concept-controls input[type="range"],.concept-controls select{width:100%;accent-color:var(--ead-accent)}.concept-controls select{border:1px solid var(--ead-line);border-radius:0;background:#fff;padding:12px;font:inherit}.concept-controls .check-control{display:flex;align-items:center;gap:12px}.concept-controls .check-control input{width:20px;height:20px;accent-color:var(--ead-accent)}.concept-controls .check-control span{display:block;margin:0}.concept-controls input:focus-visible,.concept-controls select:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}
.concept-lab-stage{display:flex;min-width:0;padding:clamp(44px,6vw,90px) var(--pilot-pad);align-items:center;justify-content:center;background:var(--ead-soft)}.concept-lab-stage>svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line);background:#fff}.point-live-field circle{fill:var(--ead-ink)}
.connect-links-three{grid-template-columns:repeat(3,1fr)}

/* Line */
.line-direction-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ead-line)}.line-direction-grid figure{margin:0;padding:clamp(32px,4vw,58px);border-right:1px solid var(--ead-line)}.line-direction-grid figure:last-child{border-right:0}.line-direction-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}.line-direction-grid line,.line-direction-grid path{stroke:var(--ead-ink);stroke-width:7;stroke-linecap:round}.line-direction-grid figcaption,.form-view-grid figcaption{margin-top:18px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.line-live-stage path{fill:none;stroke:var(--ead-ink);stroke-linecap:round}

/* Form */
.form-term-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ead-line)}.form-term-grid article{padding:clamp(34px,4vw,58px);border-right:1px solid var(--ead-line)}.form-term-grid article:last-child{border-right:0}.form-term-grid svg{display:block;width:100%;height:auto}.form-term-grid h3,.form-pair-grid h3{margin:22px 0 10px;font-size:clamp(26px,2.5vw,38px);line-height:1;letter-spacing:-.04em}.form-term-grid p,.form-pair-grid p{margin:0;color:var(--ead-muted);font-size:14px;line-height:1.6}
.form-pair-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.form-pair-grid article{padding:clamp(36px,4vw,62px);border-right:1px solid var(--ead-line)}.form-pair-grid article:last-child{border-right:0}.form-pair-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}
.form-depth-figure,.form-static-light{display:flex;margin:0;padding:clamp(48px,6vw,86px) var(--pilot-pad);flex-direction:column;justify-content:center}.form-depth-figure svg,.form-static-light svg{display:block;width:100%;height:auto}.form-depth-figure figcaption,.form-static-light figcaption{margin-top:20px;color:var(--ead-muted);font-size:13px;line-height:1.55}.form-depth-figure figcaption strong{color:var(--ead-ink)}.form-static-light{overflow:hidden}.form-static-light svg{max-width:820px}.form-labels line{stroke:var(--ead-accent);stroke-width:2}.form-labels text{fill:var(--ead-ink)}

/* Value */
.value-relative-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.value-relative-grid figure{margin:0;padding:clamp(44px,6vw,88px) var(--pilot-pad);border-right:1px solid var(--ead-line)}.value-relative-grid figure:last-child{border-right:0}.value-context{display:grid;min-height:330px;place-items:center}.value-context.dark{background:#222}.value-context.light{background:#e9e9e9}.value-context i{display:block;width:120px;height:120px;background:#777}.value-relative-grid figcaption{margin-top:18px;color:var(--ead-muted);font-size:13px}.value-relative-note{margin:0;padding:24px var(--pilot-pad);border-top:1px solid var(--ead-line);text-align:center;font-size:13px}.value-relative-note span{color:#777}
.value-nine-scale{margin:0;padding:0 var(--pilot-pad) clamp(64px,7vw,100px)}.value-nine-scale>div{display:grid;grid-template-columns:repeat(9,1fr);border:1px solid var(--ead-line)}.value-nine-scale i{display:flex;min-height:180px;padding:14px;align-items:flex-end;background:var(--v);font-style:normal}.value-nine-scale i span{font-size:12px;font-weight:800}.value-nine-scale i:nth-child(-n+4) span{color:#fff}.value-nine-scale figcaption{display:flex;justify-content:space-between;margin-top:14px;font-size:11px;font-weight:800;letter-spacing:.1em}
.value-key-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.value-key-grid figure{margin:0;padding:clamp(36px,4vw,62px);border-right:1px solid var(--ead-line)}.value-key-grid figure:last-child{border-right:0}.value-key-grid figure>div{position:relative;height:280px;border:1px solid var(--ead-line);overflow:hidden}.value-key-grid i{position:absolute;display:block}.value-key-grid i:nth-child(1){left:8%;bottom:0;width:34%;height:66%}.value-key-grid i:nth-child(2){right:5%;top:12%;width:48%;height:33%;border-radius:50%}.value-key-grid i:nth-child(3){left:34%;bottom:12%;width:32%;height:28%;transform:rotate(-18deg)}.value-key-grid i:nth-child(4){left:0;right:0;bottom:0;height:15%}.value-key-grid .high>div{background:#fbfbfb}.value-key-grid .high i:nth-child(1){background:#d6d6d6}.value-key-grid .high i:nth-child(2){background:#ededed}.value-key-grid .high i:nth-child(3){background:#bcbcbc}.value-key-grid .high i:nth-child(4){background:#c9c9c9}.value-key-grid .middle>div{background:#9b9b9b}.value-key-grid .middle i:nth-child(1){background:#666}.value-key-grid .middle i:nth-child(2){background:#b5b5b5}.value-key-grid .middle i:nth-child(3){background:#7d7d7d}.value-key-grid .middle i:nth-child(4){background:#555}.value-key-grid .low>div{background:#2a2a2a}.value-key-grid .low i:nth-child(1){background:#111}.value-key-grid .low i:nth-child(2){background:#555}.value-key-grid .low i:nth-child(3){background:#3d3d3d}.value-key-grid .low i:nth-child(4){background:#181818}.value-key-grid figcaption{display:flex;margin-top:18px;flex-direction:column}.value-key-grid figcaption strong{font-size:24px}.value-key-grid figcaption span{margin-top:7px;color:var(--ead-muted);font-size:13px}
.value-color-figure{display:flex;margin:0;padding:clamp(52px,7vw,96px) var(--pilot-pad);flex-direction:column;justify-content:center}.value-color-swatches,.value-color-gray{display:grid;grid-template-columns:1fr 1fr}.value-color-swatches i,.value-color-gray i{display:flex;min-height:170px;align-items:flex-end;padding:20px;font-style:normal}.value-color-swatches i span{color:#fff;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.value-color-swatches .purple{background:#6a4bc9}.value-color-swatches .green{background:#17745b}.value-color-gray i:first-child{background:#666}.value-color-gray i:last-child{background:#686868}.value-color-gray{margin-top:16px}.value-color-gray i{min-height:50px}.value-color-figure figcaption{margin-top:16px;color:var(--ead-muted);font-size:12px}
.value-live-stage{flex-direction:column}.value-live-scale{display:flex;width:100%;min-height:360px;border:1px solid var(--ead-line);background:#fff}.value-live-scale i{display:flex;min-width:0;flex:1;align-items:flex-end;padding:12px;font-style:normal}.value-live-scale i span{font-size:11px;font-weight:800}.value-local-prompt{max-width:630px;margin:24px 0 0;color:var(--ead-muted);font-size:13px;line-height:1.6;text-align:center}.value-local-prompt strong{color:var(--ead-ink)}

/* Texture */
.texture-actual,.texture-marks,.texture-light{border-bottom:1px solid var(--ead-line)}.texture-actual-grid,.texture-light-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.texture-actual-grid figure,.texture-light-grid figure{margin:0;padding:clamp(36px,4vw,62px);border-right:1px solid var(--ead-line)}.texture-actual-grid figure:last-child,.texture-light-grid figure:last-child{border-right:0}.texture-actual-grid svg,.texture-light-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}.texture-actual-grid figcaption,.texture-light-grid figcaption{display:flex;margin-top:18px;flex-direction:column;gap:6px}.texture-actual-grid figcaption strong,.texture-light-grid figcaption strong{font-size:12px;letter-spacing:.08em}.texture-actual-grid figcaption span,.texture-light-grid figcaption span{color:var(--ead-muted);font-size:13px;line-height:1.5}.texture-mark-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--ead-line)}.texture-mark-grid article{padding:clamp(24px,3vw,42px);border-right:1px solid var(--ead-line)}.texture-mark-grid article:last-child{border-right:0}.texture-mark-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}.texture-mark-grid h3{margin:20px 0 9px;font-size:24px}.texture-mark-grid p{margin:0;color:var(--ead-muted);font-size:13px;line-height:1.55}.texture-scale-figure{display:flex;margin:0;padding:clamp(48px,6vw,86px) var(--pilot-pad);flex-direction:column;justify-content:center}.texture-scale-figure svg{display:block;width:100%;height:auto}.texture-scale-figure figcaption{margin-top:20px;color:var(--ead-muted);font-size:13px;line-height:1.55}

/* Space */
.space-proximity,.space-cues,.space-systems{border-bottom:1px solid var(--ead-line)}.space-field-figure{display:flex;margin:0;padding:clamp(48px,6vw,86px) var(--pilot-pad);flex-direction:column;justify-content:center}.space-field-figure svg{display:block;width:100%;height:auto}.space-field-figure figcaption{margin-top:18px;color:var(--ead-muted);font-size:13px}.space-proximity-grid,.space-systems-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.space-proximity-grid figure,.space-systems-grid figure{margin:0;padding:clamp(36px,4vw,62px);border-right:1px solid var(--ead-line)}.space-proximity-grid figure:last-child,.space-systems-grid figure:last-child{border-right:0}.space-proximity-grid svg,.space-systems-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}.space-proximity-grid figcaption,.space-systems-grid figcaption{display:flex;margin-top:18px;flex-direction:column;gap:7px}.space-proximity-grid figcaption strong,.space-systems-grid figcaption strong{font-size:12px;letter-spacing:.08em}.space-proximity-grid figcaption span,.space-systems-grid figcaption span{color:var(--ead-muted);font-size:13px;line-height:1.5}.space-cue-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ead-line)}.space-cue-grid article{padding:clamp(28px,3vw,46px);border-right:1px solid var(--ead-line)}.space-cue-grid article:last-child{border-right:0}.space-cue-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}.space-cue-grid h3{margin:20px 0 9px;font-size:clamp(23px,2vw,31px)}.space-cue-grid p{margin:0;color:var(--ead-muted);font-size:13px;line-height:1.55}.space-cue-controls{display:grid;margin:30px 0 26px;grid-template-columns:1fr 1fr;gap:12px}.space-cue-controls label{display:flex;padding:14px;border:1px solid var(--ead-line);align-items:center;gap:10px;font-size:13px;font-weight:800}.space-cue-controls input{width:20px;height:20px;accent-color:var(--ead-accent)}.space-depth-stage svg g circle{fill:#171717;stroke:#171717;stroke-width:3}.space-depth-stage svg g path{fill:none;stroke:#fff;stroke-width:4;opacity:1}.artwork-image-wide img{object-fit:contain;background:#eee}

@media(max-width:1050px){
  .point-context-grid{grid-template-columns:1fr}.point-context-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.point-context-grid figure:last-child{border-bottom:0}.point-context-grid svg{height:280px}
  .line-direction-grid,.form-term-grid{grid-template-columns:repeat(2,1fr)}.line-direction-grid figure:nth-child(2),.form-term-grid article:nth-child(2){border-right:0}.line-direction-grid figure:nth-child(-n+2),.form-term-grid article:nth-child(-n+2){border-bottom:1px solid var(--ead-line)}
  .form-pair-grid{grid-template-columns:1fr}.form-pair-grid article{border-right:0;border-bottom:1px solid var(--ead-line)}.form-pair-grid article:last-child{border-bottom:0}.form-pair-grid svg{max-width:680px}
  .texture-mark-grid{grid-template-columns:repeat(2,1fr)}.texture-mark-grid article:nth-child(2n){border-right:0}.texture-mark-grid article{border-bottom:1px solid var(--ead-line)}.texture-mark-grid article:last-child{border-bottom:0}
  .space-cue-grid{grid-template-columns:repeat(2,1fr)}.space-cue-grid article:nth-child(2n){border-right:0}.space-cue-grid article:nth-child(-n+2){border-bottom:1px solid var(--ead-line)}
}
@media(max-width:820px){
  .connect-links-three{grid-template-columns:1fr}.connect-links-three a+a{border-left:0;border-top:1px solid var(--ead-line)}
  .value-key-grid{grid-template-columns:1fr}.value-key-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.value-key-grid figure:last-child{border-bottom:0}
  .value-nine-scale i{min-height:120px;padding:8px}.value-live-scale{min-height:280px}
  .value-reduction-panels,.value-map-key{grid-template-columns:1fr}.value-reduction-arrow{justify-self:center;transform:rotate(90deg)}.value-reduction-panel{gap:12px}.value-reduction-panel strong{font-size:12px}.value-reduction-operation{margin-top:42px}.value-map-key{gap:18px}.value-map-key .key-arrow{margin:2px 0}.value-map-swatches.target i{aspect-ratio:2.7/1}
  .texture-actual-grid,.texture-light-grid{grid-template-columns:1fr}.texture-actual-grid figure,.texture-light-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.texture-actual-grid figure:last-child,.texture-light-grid figure:last-child{border-bottom:0}
  .space-proximity-grid,.space-systems-grid{grid-template-columns:1fr}.space-proximity-grid figure,.space-systems-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.space-proximity-grid figure:last-child,.space-systems-grid figure:last-child{border-bottom:0}
}
@media(max-width:560px){
  .line-direction-grid,.form-term-grid,.value-relative-grid{grid-template-columns:1fr}.line-direction-grid figure,.line-direction-grid figure:nth-child(2),.form-term-grid article,.form-term-grid article:nth-child(2),.value-relative-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.line-direction-grid figure:last-child,.form-term-grid article:last-child,.value-relative-grid figure:last-child{border-bottom:0}
  .point-context-grid svg{height:220px}.point-density-figure,.form-structure-figure,.value-reduction-figure,.value-color-figure{padding-left:14px;padding-right:14px}
  .concept-lab-stage{padding-left:12px;padding-right:12px}.form-labels text{font-size:12px}.value-nine-scale{padding-left:12px;padding-right:12px}.value-nine-scale i{min-height:95px;padding:5px}.value-nine-scale i span{font-size:9px}.value-live-scale{min-height:220px}.value-live-scale i{padding:5px}.value-live-scale i span{font-size:9px}
  .texture-mark-grid{grid-template-columns:1fr}.texture-mark-grid article{border-right:0}.texture-scale-figure{padding-left:14px;padding-right:14px}
  .space-cue-grid,.space-cue-controls{grid-template-columns:1fr}.space-cue-grid article,.space-cue-grid article:nth-child(2n){border-right:0;border-bottom:1px solid var(--ead-line)}.space-cue-grid article:last-child{border-bottom:0}.space-field-figure{padding-left:14px;padding-right:14px}
}

/* v3.3 Balance and Contrast */
.balance-weight,.balance-modes,.balance-unity,.contrast-degree,.contrast-matrix,.contrast-local,.contrast-wcag{border-bottom:1px solid var(--ead-line)}
.balance-weight-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ead-line)}
.balance-weight-grid article{padding:clamp(30px,3.5vw,54px);border-right:1px solid var(--ead-line)}.balance-weight-grid article:last-child{border-right:0}
.balance-weight-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line);background:#f7f7f7}.balance-weight-grid svg>line{stroke:#bdbdbd;stroke-width:2;stroke-dasharray:5 6}
.balance-weight-grid h3,.contrast-matrix-grid h3{margin:22px 0 9px;font-size:clamp(24px,2.2vw,34px);line-height:1;letter-spacing:-.04em}.balance-weight-grid p,.contrast-matrix-grid p{margin:0;color:var(--ead-muted);font-size:13px;line-height:1.55}
.balance-modes-figure{margin:0;padding:clamp(44px,6vw,84px) var(--pilot-pad)}.balance-modes-figure svg{display:block;width:100%;height:auto}.balance-mode-frame{fill:#f7f7f7;stroke:#d6d6d6}.balance-axis{stroke:#bdbdbd;stroke-width:2;stroke-dasharray:5 6}.balance-modes-figure text{font:800 12px Manrope,sans-serif;letter-spacing:.08em}.balance-modes-figure figcaption{margin-top:18px;color:var(--ead-muted);font-size:13px;line-height:1.55}
.balance-unity-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ead-line)}.balance-unity-grid article{padding:clamp(28px,3.5vw,50px);border-right:1px solid var(--ead-line)}.balance-unity-grid article:last-child{border-right:0}.balance-unity-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line);background:#f7f7f7}.balance-unity-grid svg>line{stroke:#c5c5c5;stroke-width:2;stroke-dasharray:5 6}.balance-unity-grid h3{margin:20px 0 9px;font-size:clamp(22px,2vw,30px);line-height:1.05;letter-spacing:-.035em}.balance-unity-grid p{margin:0;color:var(--ead-muted);font-size:13px;line-height:1.55}
.lab-control{display:block;margin:28px 0}.lab-control>span{display:flex;justify-content:space-between;gap:18px;margin-bottom:10px;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.lab-control output{color:var(--ead-accent)}.lab-control input,.lab-control select{width:100%;accent-color:var(--ead-accent)}.lab-control select{border:1px solid var(--ead-line);border-radius:0;background:#fff;padding:12px;font:inherit}.lab-control input:focus-visible,.lab-control select:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}
.balance-stage-axis{stroke:#b8b8b8;stroke-width:2;stroke-dasharray:7 8}.balance-stage text,.contrast-stage text{font:800 11px Manrope,sans-serif;letter-spacing:.09em;fill:#666}
.contrast-degree-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.contrast-degree-grid figure{margin:0;padding:clamp(34px,4vw,60px);border-right:1px solid var(--ead-line)}.contrast-degree-grid figure:last-child{border-right:0}.contrast-degree-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}.contrast-degree-grid figcaption,.contrast-local-grid figcaption{display:flex;margin-top:18px;flex-direction:column;gap:7px}.contrast-degree-grid figcaption strong,.contrast-local-grid figcaption strong{font-size:12px;letter-spacing:.09em}.contrast-degree-grid figcaption span,.contrast-local-grid figcaption span{color:var(--ead-muted);font-size:13px;line-height:1.5}
.contrast-matrix-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--ead-line)}.contrast-matrix-grid article{padding:clamp(24px,3vw,42px);border-right:1px solid var(--ead-line)}.contrast-matrix-grid article:last-child{border-right:0}.contrast-matrix-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line);background:#f7f7f7}.contrast-emphasis-note{padding:30px var(--pilot-pad);border-top:1px solid var(--ead-line);background:var(--ead-soft)}.contrast-emphasis-note p{max-width:880px;margin:0;color:var(--ead-muted);font-size:15px;line-height:1.65}.contrast-emphasis-note strong{color:var(--ead-ink)}
.contrast-local-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.contrast-local-grid figure{margin:0;padding:clamp(36px,4.5vw,70px);border-right:1px solid var(--ead-line)}.contrast-local-grid figure:last-child{border-right:0}.contrast-local-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line)}
.contrast-wcag-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.contrast-wcag-grid article{padding:clamp(38px,4.5vw,68px);border-right:1px solid var(--ead-line)}.contrast-wcag-grid article:last-child{border-right:0}.contrast-wcag-grid h3{margin:16px 0 18px;font-size:clamp(25px,2.5vw,38px);line-height:1.04;letter-spacing:-.04em}.contrast-wcag-grid article>p:not(.eyebrow){color:var(--ead-muted);font-size:14px;line-height:1.65}

@media(max-width:1100px){.balance-weight-grid,.balance-unity-grid{grid-template-columns:repeat(2,1fr)}.balance-weight-grid article:nth-child(2n),.balance-unity-grid article:nth-child(2n){border-right:0}.balance-weight-grid article:nth-child(-n+2),.balance-unity-grid article:nth-child(-n+2){border-bottom:1px solid var(--ead-line)}.contrast-matrix-grid{grid-template-columns:repeat(2,1fr)}.contrast-matrix-grid article{border-bottom:1px solid var(--ead-line)}.contrast-matrix-grid article:nth-child(2n){border-right:0}.contrast-matrix-grid article:last-child{border-bottom:0}}
@media(max-width:820px){.contrast-degree-grid,.contrast-local-grid,.contrast-wcag-grid{grid-template-columns:1fr}.contrast-degree-grid figure,.contrast-local-grid figure,.contrast-wcag-grid article{border-right:0;border-bottom:1px solid var(--ead-line)}.contrast-degree-grid figure:last-child,.contrast-local-grid figure:last-child,.contrast-wcag-grid article:last-child{border-bottom:0}}
@media(max-width:560px){.balance-weight-grid,.balance-unity-grid,.contrast-matrix-grid{grid-template-columns:1fr}.balance-weight-grid article,.balance-weight-grid article:nth-child(2n),.balance-unity-grid article,.balance-unity-grid article:nth-child(2n),.contrast-matrix-grid article,.contrast-matrix-grid article:nth-child(2n){border-right:0;border-bottom:1px solid var(--ead-line)}.balance-weight-grid article:last-child,.balance-unity-grid article:last-child,.contrast-matrix-grid article:last-child{border-bottom:0}.balance-modes-figure{padding-left:14px;padding-right:14px}.lab-control>span{align-items:flex-start;flex-direction:column;gap:4px}}

/* v3.4 Emphasis, Movement, and interaction affordances */
a[href],button,summary,select,input[type="checkbox"],input[type="radio"],label[for]{cursor:pointer}
input[type="range"]{cursor:ew-resize;touch-action:pan-y}
a[href]:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}
button:active,.tool-reset:active,.pilot-reset:active{transform:translateY(1px)}
.site-nav a,.site-nav button,.home-card,.element-tile,.principle-tile,.connect-links a,.pilot-source-link{transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}
.site-nav a:hover,.site-nav a:focus-visible,.site-nav button:hover,.site-nav button:focus-visible{text-decoration-thickness:2px;text-underline-offset:5px}
.home-card:hover,.home-card:focus-visible,.element-tile:hover,.element-tile:focus-visible,.principle-tile:hover,.principle-tile:focus-visible,.connect-links a:hover,.connect-links a:focus-visible{background:var(--ead-soft);box-shadow:inset 0 -4px 0 var(--ead-accent)}
.pilot-source-link:hover,.pilot-source-link:focus-visible{text-decoration-thickness:2px;text-underline-offset:4px}
label:has(input[type="checkbox"]),label:has(input[type="radio"]){cursor:pointer}
.pilot-page figure,.pilot-page figure svg,.pilot-page .concept-lab-stage svg{cursor:default}
.pilot-page button,.pilot-page input,.pilot-page select,.pilot-page summary{cursor:revert}
.pilot-page button,.pilot-page summary,.pilot-page select,.pilot-page input[type="checkbox"],.pilot-page input[type="radio"]{cursor:pointer}
.pilot-page input[type="range"]{cursor:ew-resize}

/* Non-handle position indicators on the color wheel. */
.real-wheel-marker,.real-wheel-marker:first-child{width:15px;height:15px;border:0;border-radius:0;background:var(--ead-ink);box-shadow:0 0 0 2px #fff;transform:translate(-50%,-50%) rotate(45deg);pointer-events:none}
.real-wheel-marker:first-child{background:var(--ead-accent);box-shadow:0 0 0 2px #fff}

/* Homepage graphic marks live inside the linked cards but are not controls. */
.home-card{position:relative;display:flex;min-height:390px;flex-direction:column;overflow:hidden}
.home-card>small,.home-card>h2,.home-card>p{position:relative;z-index:2}
.home-card>h2{margin-top:auto}
.home-card-mark{position:absolute;z-index:1;top:clamp(42px,5vw,76px);right:clamp(28px,4.5vw,74px);display:block;width:clamp(150px,18vw,250px);height:auto;max-height:190px;fill:none;stroke:var(--ead-ink);stroke-width:10;pointer-events:none}
.home-card-mark .mark-fill{fill:var(--ead-ink);stroke:none}.home-card-mark .mark-accent{fill:var(--ead-accent);stroke:var(--ead-accent)}
.home-card:hover .home-card-mark,.home-card:focus-visible .home-card-mark{stroke:var(--ead-accent)}.home-card:hover .home-card-mark .mark-fill,.home-card:focus-visible .home-card-mark .mark-fill{fill:var(--ead-accent)}
.home-mark-principles{width:clamp(140px,17vw,225px)}.home-mark-explore{width:clamp(165px,19vw,265px)}.home-mark-tools{width:clamp(145px,17vw,230px)}

/* Emphasis */
.emphasis-cues,.emphasis-hierarchy,.emphasis-distribution,.emphasis-boundary,.movement-two-kinds,.movement-cues,.movement-sequence,.movement-rhythm{border-bottom:1px solid var(--ead-line)}
.emphasis-cue-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}
.emphasis-cue-grid article{padding:clamp(28px,3.4vw,52px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.emphasis-cue-grid article:nth-child(3n){border-right:0}.emphasis-cue-grid article:nth-last-child(-n+3){border-bottom:0}
.emphasis-cue-grid svg,.emphasis-hierarchy-figure svg,.emphasis-distribution-grid svg,.emphasis-boundary-figure svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line);background:#f7f7f7}
.emphasis-cue-grid h3,.movement-cue-grid h3{margin:20px 0 8px;font-size:clamp(23px,2vw,31px);line-height:1.05;letter-spacing:-.035em}.emphasis-cue-grid p,.movement-cue-grid p{margin:0;color:var(--ead-muted);font-size:13px;line-height:1.55}
.emphasis-hierarchy-figure,.emphasis-boundary-figure{margin:0;padding:clamp(46px,6vw,86px) var(--pilot-pad)}.emphasis-hierarchy-figure figcaption,.emphasis-boundary-figure figcaption{margin-top:18px;color:var(--ead-muted);font-size:13px;line-height:1.55}
.emphasis-distribution-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.emphasis-distribution-grid figure{margin:0;padding:clamp(32px,4vw,58px);border-right:1px solid var(--ead-line)}.emphasis-distribution-grid figure:last-child{border-right:0}.emphasis-distribution-grid figcaption{display:flex;margin-top:17px;flex-direction:column;gap:6px}.emphasis-distribution-grid strong{font-size:12px;letter-spacing:.08em}.emphasis-distribution-grid span{color:var(--ead-muted);font-size:13px;line-height:1.5}
.emphasis-cue-controls{display:grid;margin:28px 0 26px;grid-template-columns:1fr 1fr;gap:10px}.emphasis-cue-controls label,.movement-guide-control{display:flex;min-height:52px;padding:13px;border:1px solid var(--ead-line);align-items:center;gap:10px;font-size:13px;font-weight:800}.emphasis-cue-controls input,.movement-guide-control input{width:20px;height:20px;accent-color:var(--ead-accent)}
.emphasis-labels text{font:800 11px Manrope,sans-serif;letter-spacing:.06em}
.emphasis-lab-stage .emphasis-convergence{opacity:0;stroke:var(--ead-accent);stroke-width:3}.emphasis-lab-stage .emphasis-target{transition:cx .16s ease,cy .16s ease,r .16s ease,fill .16s ease,stroke-width .16s ease}

/* Movement */
.movement-two-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.movement-two-grid figure{margin:0;padding:clamp(38px,5vw,72px);border-right:1px solid var(--ead-line)}.movement-two-grid figure:last-child{border-right:0}.movement-two-grid svg,.movement-cue-grid svg,.movement-sequence-figure svg,.movement-rhythm-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line);background:#f7f7f7}.movement-two-grid figcaption,.movement-rhythm-grid figcaption{display:flex;margin-top:18px;flex-direction:column;gap:7px}.movement-two-grid strong,.movement-rhythm-grid strong{font-size:12px;letter-spacing:.08em}.movement-two-grid span,.movement-rhythm-grid span{color:var(--ead-muted);font-size:13px;line-height:1.5}
.movement-cue-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.movement-cue-grid article{padding:clamp(28px,3.4vw,52px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.movement-cue-grid article:nth-child(3n){border-right:0}.movement-cue-grid article:nth-last-child(-n+3){border-bottom:0}
.movement-sequence-figure{margin:0;padding:clamp(46px,6vw,86px) var(--pilot-pad)}.movement-sequence-figure figcaption{margin-top:18px;color:var(--ead-muted);font-size:13px;line-height:1.55}
.movement-rhythm-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.movement-rhythm-grid figure{margin:0;padding:clamp(34px,4vw,62px);border-right:1px solid var(--ead-line)}.movement-rhythm-grid figure:last-child{border-right:0}
.movement-guide-control{margin:24px 0}.movement-stage{overflow:hidden}.movement-stage [data-movement-guide-line]{stroke:var(--ead-accent);stroke-width:5;stroke-dasharray:12 10}.movement-stage [data-movement-object]{transform-origin:420px 260px}

@media(max-width:1050px){
  .emphasis-cue-grid,.movement-cue-grid{grid-template-columns:repeat(2,1fr)}.emphasis-cue-grid article,.movement-cue-grid article{border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.emphasis-cue-grid article:nth-child(2n),.movement-cue-grid article:nth-child(2n){border-right:0}.emphasis-cue-grid article:nth-last-child(-n+2),.movement-cue-grid article:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:820px){
  .home-card{min-height:340px}.home-card-mark{top:34px;right:28px;width:clamp(130px,34vw,205px)}
  .pilot-lab>.concept-lab-stage,.pilot-lab>.figure-ground-stage,.pilot-lab>.rhythm-lab-stage{order:-1;border-bottom:1px solid var(--ead-line)}.pilot-lab>.pilot-copy{border-bottom:0}
  .emphasis-distribution-grid,.movement-two-grid,.movement-rhythm-grid{grid-template-columns:1fr}.emphasis-distribution-grid figure,.movement-two-grid figure,.movement-rhythm-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.emphasis-distribution-grid figure:last-child,.movement-two-grid figure:last-child,.movement-rhythm-grid figure:last-child{border-bottom:0}
}
@media(max-width:560px){
  .home-card{min-height:310px}.home-card-mark{top:30px;right:20px;width:132px;max-height:130px}.home-card small{margin-bottom:110px}
  .emphasis-cue-grid,.movement-cue-grid,.emphasis-cue-controls{grid-template-columns:1fr}.emphasis-cue-grid article,.emphasis-cue-grid article:nth-child(2n),.movement-cue-grid article,.movement-cue-grid article:nth-child(2n){border-right:0;border-bottom:1px solid var(--ead-line)}.emphasis-cue-grid article:last-child,.movement-cue-grid article:last-child{border-bottom:0}
  .emphasis-hierarchy-figure,.emphasis-boundary-figure,.movement-sequence-figure{padding-left:14px;padding-right:14px}
}
@media(prefers-reduced-motion:reduce){.site-nav a,.site-nav button,.home-card,.element-tile,.principle-tile,.connect-links a,.pilot-source-link,.emphasis-lab-stage .emphasis-target{transition:none!important}}

/* v3.5 interaction proximity architecture */
.proximity-lab{grid-template-columns:.82fr 1.18fr;grid-template-areas:"intro stage" "controls stage";align-items:stretch}
.pilot-lab-intro{grid-area:intro;padding:clamp(48px,6vw,88px) var(--pilot-pad) 28px;border-right:1px solid var(--ead-line)}
.pilot-lab-intro h2{max-width:680px;margin:10px 0 24px;font-size:clamp(42px,5.2vw,78px);line-height:.96;letter-spacing:-.055em}
.pilot-lab-intro>p:last-child{max-width:680px;margin-bottom:0;color:var(--ead-muted);font-size:16px;line-height:1.65}
.proximity-lab>.concept-lab-stage,.proximity-lab>.figure-ground-stage,.proximity-lab>.rhythm-lab-stage{grid-area:stage;order:0!important;border-bottom:0}
.pilot-controls{grid-area:controls;padding:0 var(--pilot-pad) clamp(48px,6vw,88px);border-right:1px solid var(--ead-line)}
.pilot-controls.concept-controls{margin-top:0}
.pilot-controls>.lab-control:first-child,.pilot-controls>.concept-controls:first-child{margin-top:0}
.pilot-controls .lab-status{margin-top:24px}
.pilot-controls .concept-controls{margin-top:0}
.pilot-controls .value-local-prompt{margin:24px 0 0;text-align:left}
.proximity-lab .rhythm-lab-stage{display:flex;padding:clamp(44px,6vw,90px) var(--pilot-pad);align-items:center;justify-content:center;background:var(--ead-soft)}
.proximity-lab .rhythm-live-sequence{width:100%}

/* Pattern */
.pattern-build,.pattern-systems,.pattern-seam,.pattern-rhythm-boundary,.proportion-control,.scale-control,.proportion-matrix,.scale-hierarchy{border-bottom:1px solid var(--ead-line)}
.pattern-build-figure,.proportion-matrix-figure{margin:0;padding:clamp(46px,6vw,88px) var(--pilot-pad)}
.pattern-build-figure svg{display:block;width:100%;height:auto}.pattern-build-figure text,.pattern-builder-stage text{font:800 11px Manrope,sans-serif;letter-spacing:.08em}.pattern-build-figure figcaption,.proportion-matrix-figure figcaption{margin-top:18px;color:var(--ead-muted);font-size:13px;line-height:1.55}
.pattern-system-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}
.pattern-system{padding:clamp(28px,3.5vw,52px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.pattern-system:nth-child(3n){border-right:0}.pattern-system:nth-last-child(-n+3){border-bottom:0}
.pattern-system h3{margin:20px 0 8px;font-size:clamp(22px,2vw,30px);letter-spacing:-.035em}.pattern-system p{margin:0;color:var(--ead-muted);font-size:13px;line-height:1.55}
.pattern-system-visual{display:grid;height:250px;padding:28px;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);align-items:center;justify-items:center;border:1px solid var(--ead-line);overflow:hidden;background:#f7f7f7}
.pattern-system-visual i{display:block;width:32px;height:32px;border-left:11px solid var(--ead-ink);border-bottom:11px solid var(--ead-ink)}
.pattern-system-half i:nth-child(3n+2){transform:translateY(30px)}.pattern-system-brick i:nth-child(n+4):nth-child(-n+6){transform:translateX(30px)}
.pattern-system-rotation i:nth-child(4n+2){transform:rotate(90deg)}.pattern-system-rotation i:nth-child(4n+3){transform:rotate(180deg)}.pattern-system-rotation i:nth-child(4n){transform:rotate(270deg)}
.pattern-system-reflection i:nth-child(even){transform:scaleX(-1)}
.pattern-system-radial .pattern-system-visual{position:relative;display:block}.pattern-system-radial i{position:absolute;left:50%;top:50%;transform-origin:0 0}.pattern-system-radial i:nth-child(1){transform:translate(0,-80px) rotate(0)}.pattern-system-radial i:nth-child(2){transform:translate(56px,-56px) rotate(45deg)}.pattern-system-radial i:nth-child(3){transform:translate(80px,0) rotate(90deg)}.pattern-system-radial i:nth-child(4){transform:translate(56px,56px) rotate(135deg)}.pattern-system-radial i:nth-child(5){transform:translate(0,80px) rotate(180deg)}.pattern-system-radial i:nth-child(6){transform:translate(-56px,56px) rotate(225deg)}.pattern-system-radial i:nth-child(7){transform:translate(-80px,0) rotate(270deg)}.pattern-system-radial i:nth-child(8){transform:translate(-56px,-56px) rotate(315deg)}.pattern-system-radial i:nth-child(9){display:none}
.pattern-seam-grid,.pattern-rhythm-grid,.scale-hierarchy-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.pattern-seam-grid figure,.pattern-rhythm-grid figure,.scale-hierarchy-grid figure{margin:0;padding:clamp(38px,5vw,72px);border-right:1px solid var(--ead-line)}.pattern-seam-grid figure:last-child,.pattern-rhythm-grid figure:last-child,.scale-hierarchy-grid figure:last-child{border-right:0}.pattern-seam-grid svg,.scale-hierarchy-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line);background:#f7f7f7}.pattern-seam-grid figcaption,.pattern-rhythm-grid figcaption,.scale-hierarchy-grid figcaption{display:flex;margin-top:18px;flex-direction:column;gap:7px}.pattern-seam-grid strong,.pattern-rhythm-grid strong,.scale-hierarchy-grid strong{font-size:12px;letter-spacing:.08em}.pattern-seam-grid span,.pattern-rhythm-grid span,.scale-hierarchy-grid span{color:var(--ead-muted);font-size:13px;line-height:1.5}
.pattern-fixed-field{display:grid;height:300px;padding:35px;grid-template-columns:repeat(5,1fr);gap:12px;border:1px solid var(--ead-line);background:#f7f7f7}.pattern-fixed-field i{background:var(--ead-ink)}
.pattern-paced-sequence{display:flex;height:300px;padding:35px;align-items:center;gap:16px;border:1px solid var(--ead-line);background:#f7f7f7}.pattern-paced-sequence i{display:block;width:30px;height:30px;background:var(--ead-ink)}.pattern-paced-sequence i:nth-child(3){margin-right:35px}.pattern-paced-sequence i:nth-child(5){width:52px;height:52px;background:var(--ead-accent)}
.pattern-controls .check-control{display:flex;min-height:52px;margin:10px 0;padding:13px;border:1px solid var(--ead-line);align-items:center;gap:10px;font-size:13px;font-weight:800}.pattern-controls .check-control input{width:20px;height:20px;accent-color:var(--ead-accent)}
.pattern-builder-stage [data-pattern-boundaries] rect{fill:none;stroke:#999;stroke-width:1.5;stroke-dasharray:5 5}

/* Proportion and scale */
.proportion-control-grid,.scale-control-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.proportion-control-grid figure,.scale-control-grid figure{margin:0;padding:clamp(36px,4vw,62px);border-right:1px solid var(--ead-line)}.proportion-control-grid figure:last-child,.scale-control-grid figure:last-child{border-right:0}.proportion-control-grid figcaption,.scale-control-grid figcaption{display:flex;margin-top:18px;flex-direction:column;gap:7px}.proportion-control-grid strong,.scale-control-grid strong{font-size:12px;letter-spacing:.08em}.proportion-control-grid span,.scale-control-grid figcaption span{color:var(--ead-muted);font-size:13px;line-height:1.5}
.ratio-object{display:flex;width:160px;height:320px;margin:auto;flex-direction:column;border:1px solid var(--ead-line)}.ratio-object i,.ratio-object b,.scale-tower i,.scale-tower b,.matrix-object i,.matrix-object b{display:block}.ratio-object i,.scale-tower i,.matrix-object i{background:var(--ead-accent)}.ratio-object b,.scale-tower b,.matrix-object b{background:var(--ead-ink)}.ratio-30 i{height:30%}.ratio-30 b{height:70%}.ratio-50 i,.ratio-50 b{height:50%}.ratio-70 i{height:70%}.ratio-70 b{height:30%}
.scale-scene{position:relative;height:360px;border:1px solid var(--ead-line);background:#f7f7f7;overflow:hidden}.reference-person{position:absolute;right:36px;bottom:28px;width:24px;height:84px;background:#777}.reference-person:before{position:absolute;left:-3px;top:-30px;width:30px;height:30px;border-radius:50%;background:#777;content:""}.scale-tower{position:absolute;left:35%;bottom:28px;display:flex;width:94px;flex-direction:column;transform:translateX(-50%)}.scale-tower i{height:40%}.scale-tower b{height:60%}.scale-small{height:120px}.scale-medium{height:220px}.scale-large{height:330px}
.proportion-matrix-figure{position:relative;display:grid;padding-top:100px;padding-left:100px;grid-template-columns:1fr 1fr;gap:1px;background:var(--ead-line)}.matrix-cell{display:flex;min-height:330px;padding:30px;align-items:center;justify-content:center;flex-direction:column;gap:20px;background:#fff}.matrix-cell span{font-size:11px;font-weight:800;letter-spacing:.08em}.matrix-object{display:flex;flex-direction:column}.matrix-object i{height:35%}.matrix-object b{height:65%}.matrix-object.narrow{width:75px}.matrix-object.wide{width:135px}.matrix-object.small{height:125px}.matrix-object.large{height:225px}.matrix-axis{position:absolute;font-size:11px;font-weight:800;letter-spacing:.1em}.matrix-axis-top{left:100px;right:0;top:35px;text-align:center}.matrix-axis-side{left:35px;top:55%;transform:rotate(-90deg);transform-origin:left top;white-space:nowrap}
.hierarchy-primary{font:800 94px Manrope,sans-serif}.hierarchy-secondary{font:700 46px Manrope,sans-serif}.hierarchy-tertiary{font:500 22px Manrope,sans-serif;fill:#777}

@media(max-width:1050px){.pattern-system-grid{grid-template-columns:repeat(2,1fr)}.pattern-system:nth-child(3n){border-right:1px solid var(--ead-line)}.pattern-system:nth-child(2n){border-right:0}.pattern-system:nth-last-child(-n+3){border-bottom:1px solid var(--ead-line)}.pattern-system:nth-last-child(-n+2){border-bottom:0}}
@media(max-width:820px){
  .proximity-lab{grid-template-columns:1fr;grid-template-areas:"intro" "stage" "controls"}.pilot-lab-intro{border-right:0;border-bottom:1px solid var(--ead-line);padding-bottom:42px}.pilot-controls{border-right:0;padding-top:36px}.proximity-lab>.concept-lab-stage,.proximity-lab>.figure-ground-stage,.proximity-lab>.rhythm-lab-stage{order:0!important;border-bottom:1px solid var(--ead-line)}
  .pattern-seam-grid,.pattern-rhythm-grid,.scale-hierarchy-grid,.proportion-control-grid,.scale-control-grid{grid-template-columns:1fr}.pattern-seam-grid figure,.pattern-rhythm-grid figure,.scale-hierarchy-grid figure,.proportion-control-grid figure,.scale-control-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.pattern-seam-grid figure:last-child,.pattern-rhythm-grid figure:last-child,.scale-hierarchy-grid figure:last-child,.proportion-control-grid figure:last-child,.scale-control-grid figure:last-child{border-bottom:0}
}
@media(max-width:560px){.pilot-lab-intro,.pilot-controls{padding-left:24px;padding-right:24px}.pilot-lab-intro h2{font-size:clamp(40px,12vw,54px)}.pattern-system-grid{grid-template-columns:1fr}.pattern-system,.pattern-system:nth-child(2n),.pattern-system:nth-child(3n){border-right:0;border-bottom:1px solid var(--ead-line)}.pattern-system:last-child{border-bottom:0}.pattern-build-figure,.proportion-matrix-figure{padding-left:14px;padding-right:14px}.proportion-matrix-figure{padding-top:80px;padding-left:64px}.matrix-cell{min-height:230px;padding:14px}.matrix-axis-top{left:64px}.matrix-axis-side{left:22px}.matrix-object.large{height:170px}.matrix-object.wide{width:100px}}

/* v3.6 Unity & Harmony */
.unity-cues,.unity-system,.unity-matrix,.variety-parameters,.variety-range,.variety-contrast{border-bottom:1px solid var(--ead-line)}
.unity-cue-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ead-line)}
.unity-cue-grid figure,.unity-system-grid figure,.variety-range-grid figure,.variety-contrast-grid figure{margin:0;padding:clamp(34px,4.5vw,68px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}
.unity-cue-grid figure:nth-child(2n){border-right:0}.unity-cue-grid figure:nth-last-child(-n+2){border-bottom:0}
.unity-cue-grid svg{display:block;width:100%;height:auto;border:1px solid var(--ead-line);background:#f7f7f7}
.unity-cue-grid figcaption,.unity-system-grid figcaption,.unity-matrix-grid figcaption,.variety-parameter-grid figcaption,.variety-range-grid figcaption,.variety-contrast-grid figcaption{display:flex;margin-top:18px;flex-direction:column;gap:7px}
.unity-cue-grid strong,.unity-system-grid strong,.unity-matrix-grid strong,.variety-parameter-grid strong,.variety-range-grid strong,.variety-contrast-grid strong{font-size:12px;letter-spacing:.08em}
.unity-cue-grid span,.unity-system-grid span,.unity-matrix-grid span,.variety-parameter-grid span,.variety-range-grid span,.variety-contrast-grid span{color:var(--ead-muted);font-size:13px;line-height:1.55}
.unity-system-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.unity-system-grid figure:last-child{border-right:0}.unity-system-grid figure{border-bottom:0}
.unity-sameness,.unity-compatible,.range-sameness,.range-structured,.range-uncontrolled{display:grid;min-height:360px;padding:44px;grid-template-columns:repeat(4,1fr);gap:30px;align-items:center;justify-items:center;border:1px solid var(--ead-line);background:#f7f7f7}
.unity-sameness i,.unity-compatible i,.range-sameness i,.range-structured i,.range-uncontrolled i{display:block;width:48px;height:48px;background:var(--ead-ink)}
.unity-compatible i:nth-child(3n){width:62px;height:62px;border-radius:16px;background:var(--ead-accent);transform:rotate(12deg)}.unity-compatible i:nth-child(4n){width:38px;height:38px;background:#777;transform:rotate(-10deg)}
.unity-matrix-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.unity-matrix-grid figure{margin:0;padding:clamp(32px,4vw,58px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.unity-matrix-grid figure:nth-child(2n){border-right:0}.unity-matrix-grid figure:nth-last-child(-n+2){border-bottom:0}
.unity-matrix-grid figure>div{display:flex;height:260px;padding:30px;align-items:center;justify-content:space-around;border:1px solid var(--ead-line);background:#f7f7f7}.unity-matrix-grid i{display:block;width:42px;height:42px;background:var(--ead-ink)}
.unity-matrix-grid .unbalanced>div{justify-content:flex-start;gap:14px}.unity-matrix-grid .disunified i:nth-child(even){width:24px;height:70px;border-radius:50%;background:var(--ead-accent);transform:rotate(28deg)}.unity-matrix-grid .disunified i:nth-child(3n){background:#aaa;clip-path:polygon(50% 0,100% 100%,0 100%)}
.unity-toggle-grid{display:grid;margin:0 0 24px;grid-template-columns:1fr 1fr;gap:10px}.unity-toggle-grid .check-control,.variety-controls .check-control{display:flex;min-height:52px;padding:13px;border:1px solid var(--ead-line);align-items:center;gap:10px;font-size:13px;font-weight:800}.unity-toggle-grid input,.variety-controls .check-control input{width:20px;height:20px;accent-color:var(--ead-accent)}
.unity-builder-stage [data-unity-guides] line{stroke:#999;stroke-width:2;stroke-dasharray:7 7}.unity-builder-stage [data-unity-region] rect{fill:none;stroke:var(--ead-accent);stroke-width:3}

/* v3.6 Variety */
.variety-parameter-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.variety-parameter-grid figure{margin:0;padding:clamp(28px,3.5vw,52px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.variety-parameter-grid figure:nth-child(3n){border-right:0}.variety-parameter-grid figure:nth-last-child(-n+3){border-bottom:0}
.variety-row{display:flex;height:230px;padding:30px;align-items:center;justify-content:space-between;border:1px solid var(--ead-line);background:#f7f7f7}.variety-row i{display:block;width:38px;height:38px;background:var(--ead-ink)}
.variety-row.size i:nth-child(2){transform:scale(.7)}.variety-row.size i:nth-child(3){transform:scale(1.25)}.variety-row.size i:nth-child(4){transform:scale(.55)}.variety-row.size i:nth-child(5){transform:scale(1.5)}
.variety-row.orientation i:nth-child(2){transform:rotate(12deg)}.variety-row.orientation i:nth-child(3){transform:rotate(25deg)}.variety-row.orientation i:nth-child(4){transform:rotate(38deg)}.variety-row.orientation i:nth-child(5){transform:rotate(50deg)}
.variety-row.value i:nth-child(2){background:#393939}.variety-row.value i:nth-child(3){background:#626262}.variety-row.value i:nth-child(4){background:#898989}.variety-row.value i:nth-child(5){background:#b3b3b3}
.variety-row.edge i:nth-child(2){border-radius:5px}.variety-row.edge i:nth-child(3){border-radius:10px}.variety-row.edge i:nth-child(4){border-radius:16px}.variety-row.edge i:nth-child(5){border-radius:50%}
.variety-row.spacing{justify-content:flex-start;gap:10px}.variety-row.spacing i:nth-child(2){margin-left:4px}.variety-row.spacing i:nth-child(3){margin-left:10px}.variety-row.spacing i:nth-child(4){margin-left:18px}.variety-row.spacing i:nth-child(5){margin-left:28px}
.variety-row.texture i:nth-child(2){background:repeating-linear-gradient(45deg,#171717 0 5px,#fff 5px 8px)}.variety-row.texture i:nth-child(3){background:radial-gradient(#fff 1.5px,#171717 2px);background-size:8px 8px}.variety-row.texture i:nth-child(4){background:repeating-linear-gradient(90deg,#777 0 4px,#171717 4px 8px)}.variety-row.texture i:nth-child(5){background:linear-gradient(135deg,#171717 50%,#aaa 50%)}
.variety-range-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.variety-range-grid figure:last-child{border-right:0}.variety-range-grid figure{border-bottom:0;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}
.range-sameness,.range-structured,.range-uncontrolled{min-height:330px;padding:28px;grid-template-columns:repeat(3,1fr);gap:22px}.range-structured i:nth-child(3n){width:60px;height:60px;border-radius:12px;background:var(--ead-accent);transform:rotate(12deg)}.range-structured i:nth-child(4n){width:35px;height:35px;background:#777}
.range-uncontrolled{display:flex;position:relative;overflow:hidden}.range-uncontrolled i{position:absolute}.range-uncontrolled i:nth-child(1){left:8%;top:12%;width:70px;height:18px;background:#5b35d5}.range-uncontrolled i:nth-child(2){left:55%;top:8%;border-radius:50%;transform:scale(1.5)}.range-uncontrolled i:nth-child(3){left:32%;top:42%;clip-path:polygon(50% 0,100% 100%,0 100%);background:#999}.range-uncontrolled i:nth-child(4){right:5%;top:40%;height:85px;width:20px;transform:rotate(30deg)}.range-uncontrolled i:nth-child(5){left:6%;bottom:10%;border-radius:15px;background:#aaa}.range-uncontrolled i:nth-child(6){right:25%;bottom:8%;width:80px;height:12px}.range-uncontrolled i:nth-child(n+7){display:none}
.variety-contrast-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.variety-contrast-grid figure:last-child{border-right:0}.variety-contrast-grid figure{border-bottom:0}.many-modest,.one-opposition{display:flex;height:320px;padding:36px;align-items:center;justify-content:space-around;border:1px solid var(--ead-line);background:#f7f7f7}.many-modest i{display:block;width:38px;height:38px;background:#444}.many-modest i:nth-child(2n){transform:rotate(15deg) scale(.75);background:#777}.many-modest i:nth-child(3n){transform:rotate(-10deg) scale(1.25);background:var(--ead-accent)}.one-opposition i{display:block}.one-opposition i:first-child{width:120px;height:120px;background:#171717}.one-opposition i:last-child{width:35px;height:35px;border-radius:50%;background:#fff;border:2px solid #171717}
.variety-builder-stage{position:relative}.shared-rule-indicator{position:absolute;left:clamp(18px,3vw,42px);right:clamp(18px,3vw,42px);bottom:22px;display:grid;grid-template-columns:14px auto 1fr;gap:10px;align-items:center;padding:10px 13px;background:rgba(255,255,255,.94);font-size:11px;letter-spacing:.06em}.shared-rule-indicator span{width:12px;height:12px;background:var(--ead-accent)}.shared-rule-indicator small{color:var(--ead-muted);text-align:right}.variety-builder-stage [data-variety-grid] line{stroke:#ccc;stroke-width:1;stroke-dasharray:4 5}.variety-controls .check-control{margin:10px 0 24px}

@media(max-width:1050px){.variety-parameter-grid{grid-template-columns:repeat(2,1fr)}.variety-parameter-grid figure,.variety-parameter-grid figure:nth-child(3n){border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.variety-parameter-grid figure:nth-child(2n){border-right:0}.variety-parameter-grid figure:nth-last-child(-n+2){border-bottom:0}.variety-range-grid{grid-template-columns:1fr}.variety-range-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.variety-range-grid figure:last-child{border-bottom:0}}
@media(max-width:820px){.unity-system-grid,.unity-matrix-grid,.variety-contrast-grid{grid-template-columns:1fr}.unity-system-grid figure,.unity-matrix-grid figure,.variety-contrast-grid figure{border-right:0;border-bottom:1px solid var(--ead-line)}.unity-system-grid figure:last-child,.unity-matrix-grid figure:last-child,.variety-contrast-grid figure:last-child{border-bottom:0}.unity-matrix-grid figure:nth-last-child(2){border-bottom:1px solid var(--ead-line)}}
@media(max-width:600px){.unity-cue-grid,.variety-parameter-grid,.unity-toggle-grid{grid-template-columns:1fr}.unity-cue-grid figure,.unity-cue-grid figure:nth-child(2n),.variety-parameter-grid figure,.variety-parameter-grid figure:nth-child(2n),.variety-parameter-grid figure:nth-child(3n){border-right:0;border-bottom:1px solid var(--ead-line)}.unity-cue-grid figure:last-child,.variety-parameter-grid figure:last-child{border-bottom:0}.unity-sameness,.unity-compatible{min-height:280px;padding:22px;gap:18px}.variety-row{height:200px;padding:20px}.variety-row i{width:28px;height:28px}.shared-rule-indicator{grid-template-columns:12px 1fr}.shared-rule-indicator small{grid-column:1/-1;text-align:left}}

/* v3.7 Typography — locked anatomy and complete curriculum */
@font-face{font-family:"EAD DejaVu Serif";src:url("assets/fonts/dejavu-serif.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
.typography-page .type-hero{padding:0;border-bottom:0}.typography-page .type-hero h1{font-size:clamp(78px,10vw,158px)}
.type-foundation,.type-anatomy,.type-classification,.type-spacing,.type-measure-alignment,.type-voice{border-bottom:1px solid var(--ead-line)}
.type-foundation-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ead-line)}.type-foundation-grid article{min-height:390px;padding:clamp(30px,4vw,60px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.type-foundation-grid article:last-child{border-right:0}.type-foundation-grid h3,.type-class-grid h3,.type-spacing-grid h3,.measure-alignment-grid h3,.alignment-grid h3{margin:auto 0 8px;font-size:clamp(23px,2.2vw,34px);letter-spacing:-.04em}.type-foundation-grid p,.type-class-grid p,.type-spacing-grid p,.measure-alignment-grid article>p,.alignment-grid article>p{margin:0;color:var(--ead-muted);font-size:13px;line-height:1.55}.type-foundation-mark{font-size:clamp(100px,11vw,170px);font-weight:800;line-height:.8}.foundation-serif{font-family:"EAD DejaVu Serif",serif;font-weight:400}.type-foundation-word{font-size:clamp(48px,5vw,78px);font-weight:700;letter-spacing:-.06em}.type-foundation-weights{font-size:clamp(34px,4vw,60px);line-height:1.15;letter-spacing:-.04em}
.anatomy-board{margin:0;padding:0;border:0;overflow:hidden;background:#fff}.anatomy-board svg{display:block;width:100%;height:auto}.locked-specimen,.metric-specimen{font-family:"EAD DejaVu Serif",serif;fill:var(--ead-ink)}.locked-specimen{font-size:160px}.metric-specimen{font-size:150px}.anatomy-kicker,.metric-labels,.anatomy-leaders text,.ascender-bracket text,.metric-note{font-family:Manrope,sans-serif}.anatomy-kicker{font-size:13px;font-weight:800;letter-spacing:.1em;fill:var(--ead-accent)}.anatomy-leaders path,.anatomy-leaders circle,.ascender-bracket path{fill:none;stroke:var(--ead-ink);stroke-width:1.8}.anatomy-leaders circle{fill:var(--ead-accent);stroke:none}.anatomy-leaders text,.metric-labels{font-size:13px;font-weight:800;letter-spacing:.055em;fill:var(--ead-ink)}.anatomy-leaders .bracket{stroke:var(--ead-accent);stroke-width:2.5}.panel-rule{stroke:var(--ead-line)}.metric-guides line{stroke:var(--ead-accent);stroke-width:1.5}.metric-guides line:nth-child(3){stroke:var(--ead-ink)}.ascender-bracket text{font-size:12px;font-weight:800;fill:var(--ead-ink)}.ascender-bracket text:last-child{font-weight:500;fill:var(--ead-muted)}.metric-note{font-size:12px;fill:var(--ead-muted)}.anatomy-board figcaption{margin:16px var(--pilot-pad) 0;color:var(--ead-muted);font-size:13px;line-height:1.55}.anatomy-text-alt{margin:28px var(--pilot-pad) 0;border-top:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.anatomy-text-alt summary{padding:18px 0;cursor:pointer;font-weight:800}.anatomy-text-alt dl{display:grid;margin:0;grid-template-columns:repeat(4,1fr)}.anatomy-text-alt dl div{padding:20px;border-top:1px solid var(--ead-line);border-right:1px solid var(--ead-line)}.anatomy-text-alt dl div:nth-child(4n){border-right:0}.anatomy-text-alt dt{font-weight:800}.anatomy-text-alt dd{margin:8px 0 0;color:var(--ead-muted);font-size:13px;line-height:1.5}
.type-class-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.type-class-grid article{min-height:410px;padding:clamp(28px,3.5vw,54px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line);display:flex;flex-direction:column}.type-class-grid article:nth-child(3n){border-right:0}.type-class-grid article:nth-last-child(-n+3){border-bottom:0}.class-specimen{display:block;margin:auto 0;font-size:clamp(54px,6vw,90px);line-height:.9}.class-serif{font-family:"EAD DejaVu Serif",serif}.class-sans{font-weight:700;letter-spacing:-.06em}.class-slab{font-family:"EAD DejaVu Serif",serif;font-weight:700;letter-spacing:-.04em;text-shadow:1px 0 currentColor}.class-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(42px,4.8vw,72px)}.class-script{font-family:cursive;font-style:italic}.class-display{font-weight:800;letter-spacing:-.09em;transform:scaleY(1.25);transform-origin:left center}
.type-spacing-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.type-spacing-grid article{min-height:520px;padding:clamp(32px,4vw,60px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.type-spacing-grid article:last-child{border-right:0}.spacing-visual{position:relative;height:290px;border:1px solid var(--ead-line);background:#f7f7f7;overflow:hidden}.spacing-visual b{position:absolute;right:16px;bottom:13px;color:var(--ead-accent);font-size:10px;letter-spacing:.1em}.kerning-visual{display:flex;align-items:center;justify-content:center}.kerning-visual span{font-size:150px;font-weight:800;letter-spacing:-.1em}.kerning-visual i{position:absolute;left:50%;top:62px;bottom:54px;border-left:2px solid var(--ead-accent)}.tracking-visual{display:grid;align-content:center;gap:30px;text-align:center}.tracking-visual span{font-size:52px;font-weight:700}.tracking-visual span:last-of-type{color:var(--ead-accent);letter-spacing:.28em}.leading-visual{display:grid;place-items:center}.leading-visual span{font-size:34px;font-weight:700;line-height:1.55}.leading-visual i{position:absolute;left:58px;top:72px;height:53px;border-left:2px solid var(--ead-accent)}.leading-visual i:before,.leading-visual i:after{position:absolute;left:-7px;width:14px;border-top:2px solid var(--ead-accent);content:""}.leading-visual i:before{top:0}.leading-visual i:after{bottom:0}
.measure-alignment-grid,.alignment-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.measure-alignment-grid article,.alignment-grid article{min-height:440px;padding:clamp(30px,4vw,58px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.measure-alignment-grid article:last-child,.alignment-grid article:last-child{border-right:0}.paragraph-demo{min-height:245px;display:flex;align-items:center}.paragraph-demo p{margin:0;font-size:17px;line-height:1.65}.paragraph-demo.narrow p{max-width:220px}.paragraph-demo.moderate p{max-width:390px}.paragraph-demo.wide p{max-width:620px}.alignment-grid{border-top:1px solid var(--ead-line)}.align-sample{display:flex;min-height:240px;align-items:center;font-size:clamp(28px,3vw,44px);font-weight:800;line-height:1.18;letter-spacing:-.04em}.align-sample.centered{justify-content:center;text-align:center}.align-sample.justified{display:block;padding-top:62px;text-align:justify}.align-sample.justified:after{content:"";display:inline-block;width:100%}
.type-hierarchy-stage{padding:clamp(34px,5vw,74px);background:var(--ead-soft)}.hierarchy-sheet{min-height:560px;padding:clamp(34px,5vw,70px);background:#fff;border:1px solid var(--ead-line);display:flex;flex-direction:column}.hierarchy-sheet small{color:var(--ead-accent);font-size:10px;font-weight:800;letter-spacing:.12em}.hierarchy-sheet h3{max-width:650px;margin:52px 0 16px;font-size:92px;font-weight:700;line-height:.86;letter-spacing:-4px}.hierarchy-sheet .hierarchy-deck{max-width:540px;margin:0 0 64px;font-size:22px;line-height:1.35}.hierarchy-sheet h4{margin:0 0 12px;font-size:19px}.hierarchy-sheet>p:not(.hierarchy-deck){max-width:540px;margin:0;color:var(--ead-muted);line-height:1.6}.hierarchy-sheet footer{margin-top:auto;padding-top:42px;color:var(--ead-muted);font-size:11px;letter-spacing:.06em}.type-hierarchy-controls .lab-control{margin-bottom:22px}
.type-voice-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.type-voice-grid article{min-height:430px;padding:clamp(32px,4vw,60px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.type-voice-grid article:last-child{border-right:0}.type-voice-grid span{margin:auto 0;font-size:clamp(52px,5vw,80px);line-height:.9}.type-voice-grid p{margin:0;color:var(--ead-muted);font-size:14px;line-height:1.6}.voice-editorial{font-family:"EAD DejaVu Serif",serif;letter-spacing:.08em}.voice-direct{font-weight:800;letter-spacing:-.08em}.voice-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(38px,4vw,62px)!important}
@media(max-width:1000px){.type-foundation-grid,.type-class-grid{grid-template-columns:repeat(2,1fr)}.type-foundation-grid article:nth-child(2n),.type-class-grid article:nth-child(2n){border-right:0}.type-foundation-grid article:nth-child(n+3){border-top:1px solid var(--ead-line)}.type-class-grid article:nth-child(3n){border-right:1px solid var(--ead-line)}.type-class-grid article:nth-last-child(-n+3){border-bottom:1px solid var(--ead-line)}.type-class-grid article:nth-last-child(-n+2){border-bottom:0}.type-spacing-grid,.measure-alignment-grid,.alignment-grid,.type-voice-grid{grid-template-columns:1fr}.type-spacing-grid article,.measure-alignment-grid article,.alignment-grid article,.type-voice-grid article{border-right:0;border-bottom:1px solid var(--ead-line)}.type-spacing-grid article:last-child,.measure-alignment-grid article:last-child,.alignment-grid article:last-child,.type-voice-grid article:last-child{border-bottom:0}}
@media(max-width:820px){.type-anatomy{overflow:hidden}.anatomy-board{overflow-x:auto}.anatomy-board svg{width:1120px;max-width:none}.anatomy-board figcaption{position:sticky;left:0;width:calc(100vw - 48px)}.anatomy-text-alt dl{grid-template-columns:repeat(2,1fr)}.anatomy-text-alt dl div:nth-child(4n){border-right:1px solid var(--ead-line)}.anatomy-text-alt dl div:nth-child(2n){border-right:0}.hierarchy-sheet{min-height:500px}.hierarchy-sheet h3{font-size:72px}}
@media(max-width:560px){.type-foundation-grid,.type-class-grid{grid-template-columns:1fr}.type-foundation-grid article,.type-foundation-grid article:nth-child(2n),.type-class-grid article,.type-class-grid article:nth-child(2n),.type-class-grid article:nth-child(3n){border-right:0;border-bottom:1px solid var(--ead-line)}.type-foundation-grid article:last-child,.type-class-grid article:last-child{border-bottom:0}.type-foundation-grid article{min-height:330px}.anatomy-text-alt dl{grid-template-columns:1fr}.anatomy-text-alt dl div,.anatomy-text-alt dl div:nth-child(2n),.anatomy-text-alt dl div:nth-child(4n){border-right:0}.type-hierarchy-stage{padding:18px}.hierarchy-sheet{padding:28px;min-height:460px}.hierarchy-sheet h3{font-size:58px;margin-top:38px}.hierarchy-sheet .hierarchy-deck{font-size:18px;margin-bottom:46px}}
@media(prefers-reduced-motion:reduce){.hierarchy-sheet h3{transition:none!important}}

/* v3.8 Typography anatomy clarification — point, highlight, define */
.anatomy-leaders circle{r:3px}.anatomy-highlights text{fill:var(--ead-accent)}
.anatomy-highlights .counter-highlight{fill:var(--ead-accent);fill-opacity:.18;stroke:var(--ead-accent);stroke-width:2}
.anatomy-feature-key{display:grid;grid-template-columns:repeat(4,1fr);margin:34px var(--pilot-pad) 0;border-top:1px solid var(--ead-line);border-left:1px solid var(--ead-line)}
.anatomy-feature-key article{display:grid;grid-template-columns:84px 1fr;gap:18px;align-items:center;min-height:150px;padding:22px;border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}
.anatomy-feature-key article>span{position:relative;display:grid;width:72px;height:92px;place-items:center;overflow:hidden;color:var(--ead-ink);font-family:"EAD DejaVu Serif",serif;font-size:86px;line-height:1}
.anatomy-feature-key article>span:after{position:absolute;inset:0;display:grid;place-items:center;color:var(--ead-accent);content:attr(data-glyph);font:inherit}
.anatomy-feature-key article:nth-child(1)>span:after{clip-path:inset(18% 37% 12% 38%)}
.anatomy-feature-key article:nth-child(2)>span:after{clip-path:inset(74% 45% 4% 3%)}
.anatomy-feature-key article:nth-child(3)>span:after{clip-path:inset(18% 0 8% 35%)}
.anatomy-feature-key article:nth-child(4)>span:after{display:none}.anatomy-feature-key .key-counter:before{position:absolute;z-index:2;width:27px;height:38px;border:2px solid var(--ead-accent);border-radius:50%;background:rgba(91,53,213,.16);content:""}
.anatomy-feature-key article:nth-child(5)>span:after{clip-path:inset(5% 55% 55% 15%)}
.anatomy-feature-key article:nth-child(6)>span:after{clip-path:inset(35% 0 25% 35%)}
.anatomy-feature-key article:nth-child(7)>span:after{clip-path:inset(0 18% 68% 18%)}
.anatomy-feature-key article:nth-child(8)>span:after{clip-path:inset(62% 0 0 0)}
.anatomy-feature-key h3{margin:0 0 6px;font-size:14px;letter-spacing:.02em}.anatomy-feature-key p{margin:0;color:var(--ead-muted);font-size:12px;line-height:1.5}
.metric-definition-key{display:grid;grid-template-columns:repeat(5,1fr);margin:28px var(--pilot-pad) 0;border-top:1px solid var(--ead-line);border-left:1px solid var(--ead-line)}
.metric-definition-key p{margin:0;padding:20px;border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line);color:var(--ead-muted);font-size:12px;line-height:1.55}.metric-definition-key strong{color:var(--ead-ink)}
@media(max-width:1100px){.anatomy-feature-key{grid-template-columns:repeat(2,1fr)}.metric-definition-key{grid-template-columns:repeat(2,1fr)}.metric-definition-key p:last-child{grid-column:1/-1}}
@media(max-width:820px){.anatomy-board svg{width:1120px}.anatomy-feature-key{position:relative;z-index:2;margin-top:24px;background:#fff}.anatomy-feature-key article{min-height:164px}.metric-definition-key{position:relative;z-index:2;background:#fff}}
@media(max-width:560px){.anatomy-feature-key,.metric-definition-key{grid-template-columns:1fr}.anatomy-feature-key article{grid-template-columns:92px 1fr;min-height:148px}.metric-definition-key p:last-child{grid-column:auto}.anatomy-board figcaption{font-size:12px}}

/* v3.9 Color wheel — direct manipulation of the discrete base hue */
.real-wheel-visual{min-width:0;text-align:center}.wheel-drag-instruction{margin:18px auto 0;color:var(--ead-muted);font-size:13px;line-height:1.5}
.real-wheel-marker-base{z-index:2;width:44px;height:44px;padding:0;border:0;background:transparent;box-shadow:none;cursor:grab;pointer-events:auto;touch-action:none}
.real-wheel-marker-base:before{position:absolute;left:50%;top:50%;width:26px;height:26px;border:5px solid #fff;border-radius:50%;background:transparent;box-shadow:0 0 0 2px var(--ead-ink),0 0 0 7px rgba(255,255,255,.75);content:"";transform:translate(-50%,-50%)}
.real-wheel-marker-base:hover:before,.real-wheel-marker-base:focus-visible:before{box-shadow:0 0 0 2px var(--ead-ink),0 0 0 8px var(--ead-accent)}
.real-wheel-marker-base:focus-visible{outline:2px solid var(--ead-accent);outline-offset:5px}.real-wheel-marker-base.is-dragging{cursor:grabbing;transition:none}
.real-wheel-marker-dependent{z-index:1;width:20px;height:20px;border-width:4px;pointer-events:none;opacity:.82}
.real-wheel-definition .real-wheel-hues{max-width:620px;color:var(--ead-ink);font-size:14px;line-height:1.8}.real-wheel-hues b{font-weight:800}
@media(max-width:600px){.real-wheel-marker-base{width:46px;height:46px}.real-wheel-marker-base:before{width:22px;height:22px;border-width:4px}.real-wheel-marker-dependent{width:16px;height:16px;border-width:3px}.wheel-drag-instruction{max-width:300px;margin-top:12px}.real-wheel-definition{margin-top:32px}}

/* v4.0 Color — restored curriculum and isolated direct manipulation */
.color-page-v4{--color-pad:clamp(28px,5vw,82px);background:#fff}.color-v4-hero{padding:clamp(82px,10vw,156px) var(--color-pad);border-bottom:1px solid var(--ead-line)}
.color-v4-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:50px;align-items:end}.color-v4-hero h1{margin:0;font-size:clamp(92px,13vw,196px);line-height:.78;letter-spacing:-.09em}.color-v4-lede{max-width:670px;margin:40px 0 0;color:var(--ead-muted);font-size:clamp(18px,1.8vw,25px);line-height:1.5}.color-v4-mantra{margin:0;font-size:clamp(24px,2.2vw,36px);font-weight:800;line-height:.96;letter-spacing:-.04em}
.color-v4-section{border-bottom:1px solid var(--ead-line)}.color-v4-section-head{display:grid;padding:clamp(58px,8vw,120px) var(--color-pad);grid-template-columns:minmax(280px,.85fr) minmax(360px,1.15fr);column-gap:clamp(50px,9vw,160px)}.color-v4-section-head .eyebrow{grid-column:1}.color-v4-section-head h2{grid-column:1;margin:18px 0 0;font-size:clamp(48px,6.3vw,96px);line-height:.92;letter-spacing:-.065em}.color-v4-section-head>p:last-child{grid-column:2;grid-row:1/3;align-self:end;max-width:700px;margin:0;color:var(--ead-muted);font-size:clamp(17px,1.5vw,22px);line-height:1.62}
.color-v4-foundations{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.color-v4-foundations article{min-height:440px;padding:clamp(32px,4vw,64px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.color-v4-foundations article:last-child{border-right:0}.color-v4-foundations h3,.color-model-grid h3{margin:auto 0 8px;font-size:clamp(34px,3.4vw,56px);letter-spacing:-.05em}.color-v4-foundations p,.color-model-grid article>p:last-child{max-width:430px;margin:0;color:var(--ead-muted);line-height:1.6}.color-v4-foundations article>span{display:block;width:min(220px,70%);aspect-ratio:1}.foundation-hue{border-radius:50%;background:conic-gradient(#ef3b32,#f1d733,#4f9d57,#3569b5,#8844a4,#ef3b32)}.foundation-value{background:linear-gradient(90deg,#111 0 33%,#777 33% 66%,#eee 66%)}.foundation-saturation{background:linear-gradient(90deg,#7a6d7d,#8844a4)}
.color-model-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.color-model-grid article{min-height:620px;padding:clamp(30px,4vw,60px);border-right:1px solid var(--ead-line);display:flex;flex-direction:column}.color-model-grid article:last-child{border-right:0}.model-diagram{position:relative;width:min(360px,90%);aspect-ratio:1;margin:0 auto 60px}.model-diagram i{position:absolute;width:58%;height:58%;border-radius:50%;mix-blend-mode:screen}.rgb-diagram{background:#111}.rgb-diagram i:nth-child(1){left:21%;top:2%;background:#f33}.rgb-diagram i:nth-child(2){left:4%;top:36%;background:#3f3}.rgb-diagram i:nth-child(3){right:4%;top:36%;background:#33f}.cmy-diagram{background:#fff}.cmy-diagram i{mix-blend-mode:multiply}.cmy-diagram i:nth-child(1){left:21%;top:2%;background:#00bcd4}.cmy-diagram i:nth-child(2){left:4%;top:36%;background:#ed3293}.cmy-diagram i:nth-child(3){right:4%;top:36%;background:#ffe12f}.hsl-diagram{border:42px solid transparent;border-radius:50%;background:linear-gradient(#fff,#fff) padding-box,conic-gradient(#ef3b32,#f1d733,#4f9d57,#3569b5,#8844a4,#ef3b32) border-box}.hsl-diagram:before,.hsl-diagram:after{position:absolute;left:18%;right:18%;height:18px;background:linear-gradient(90deg,#aaa,#8844a4);content:""}.hsl-diagram:before{top:35%}.hsl-diagram:after{top:58%;background:linear-gradient(90deg,#111,#fff);border:1px solid #aaa}.hsl-diagram b{position:absolute;left:4%;font-size:12px}.hsl-diagram b:nth-of-type(1){top:34%}.hsl-diagram b:nth-of-type(2){top:57%}
.color-v4-history{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,9vw,160px);padding:clamp(64px,8vw,120px) var(--color-pad);align-items:center}.color-v4-history h2{margin:22px 0 28px;font-size:clamp(48px,6vw,90px);line-height:.92;letter-spacing:-.06em}.color-v4-history p:not(.eyebrow){max-width:760px;color:var(--ead-muted);font-size:clamp(16px,1.4vw,20px);line-height:1.65}.color-history-mark{position:relative;width:min(520px,90%);aspect-ratio:1;border:1px solid var(--ead-line);border-radius:50%;display:grid;place-items:center}.color-history-mark:before{position:absolute;inset:12%;border:1px solid #bbb;border-radius:50%;content:""}.color-history-mark span{font-size:clamp(90px,10vw,170px);font-weight:800;letter-spacing:-.08em}.color-history-mark i{position:absolute;left:50%;top:50%;width:50%;height:2px;background:var(--ead-accent);transform-origin:left}.color-history-mark i:nth-of-type(1){transform:rotate(0deg)}.color-history-mark i:nth-of-type(2){transform:rotate(120deg)}.color-history-mark i:nth-of-type(3){transform:rotate(240deg)}
.color-wheel-v4-lab{display:grid;grid-template-columns:minmax(480px,1.1fr) minmax(390px,.9fr);border-top:1px solid var(--ead-line)}.color-wheel-v4-output,.color-wheel-v4-controls{padding:clamp(44px,6vw,90px)}.color-wheel-v4-output{border-right:1px solid var(--ead-line)}.color-wheel-v4-stage{position:relative;width:min(700px,82%);aspect-ratio:1;margin:20px auto 28px}.real-color-wheel-v4{position:absolute;inset:12%;border-radius:50%;background:conic-gradient(from -15deg,#ef3b32 0 8.333%,#f0642f 8.333% 16.666%,#f49a2c 16.666% 25%,#f6bd2b 25% 33.333%,#f1d733 33.333% 41.666%,#a7bd37 41.666% 50%,#4f9d57 50% 58.333%,#278f88 58.333% 66.666%,#3569b5 66.666% 75%,#5252ae 75% 83.333%,#8844a4 83.333% 91.666%,#b83f7a 91.666% 100%);cursor:crosshair}.real-color-wheel-v4:after{position:absolute;inset:31%;border-radius:50%;background:#fff;content:""}.wheel-v4-center{position:absolute;z-index:2;inset:35%;display:grid;place-content:center;text-align:center;pointer-events:none}.wheel-v4-center span{font-size:10px;font-weight:800;letter-spacing:.12em}.wheel-v4-center strong{margin-top:5px;font-size:clamp(18px,2vw,28px)}.wheel-v4-markers{position:absolute;z-index:3;inset:0}.wheel-v4-labels{position:absolute;inset:0}.wheel-v4-labels span{position:absolute;left:50%;top:50%;font-size:clamp(8px,.72vw,11px);font-weight:800;letter-spacing:.03em;transform:translate(-50%,-50%) rotate(calc(var(--i)*30deg)) translateY(-48cqw) rotate(calc(var(--i)*-30deg))}.wheel-v4-base-handle,.wheel-v4-related-marker{position:absolute;transform:translate(-50%,-50%)}.wheel-v4-base-handle{z-index:5;width:54px;height:54px;padding:0;border:0;border-radius:50%;background:transparent;cursor:grab;touch-action:none}.wheel-v4-base-handle:before{position:absolute;inset:10px;border:4px solid #fff;background:#111;box-shadow:0 0 0 2px #111;content:"";transform:rotate(45deg)}.wheel-v4-base-handle span{position:absolute;left:50%;top:calc(100% + 6px);padding:3px 5px;background:#111;color:#fff;font-size:8px;font-weight:800;letter-spacing:.08em;transform:translateX(-50%);white-space:nowrap}.wheel-v4-base-handle:hover:before,.wheel-v4-base-handle:focus-visible:before{box-shadow:0 0 0 2px #111,0 0 0 7px #fff,0 0 0 10px var(--ead-accent)}.wheel-v4-base-handle:focus-visible{outline:0}.wheel-v4-base-handle.is-dragging{cursor:grabbing}.wheel-v4-related-marker{z-index:4;width:14px;height:14px;border:3px solid #fff;background:#111;pointer-events:none}.wheel-v4-directive{max-width:560px;margin:0 auto;text-align:center;font-size:14px}.wheel-v4-key{display:flex;margin:24px auto 0;justify-content:center;gap:28px;color:var(--ead-muted);font-size:10px;font-weight:800;letter-spacing:.08em}.wheel-v4-key span{display:flex;align-items:center;gap:9px}.wheel-v4-key i{display:block;width:13px;height:13px;background:#111}.wheel-v4-key .key-base{outline:3px solid var(--ead-accent);transform:rotate(45deg)}
.color-wheel-v4-controls{display:flex;flex-direction:column;justify-content:center}.color-wheel-v4-controls fieldset{margin:0 0 54px;padding:0;border:0}.color-wheel-v4-controls legend,.wheel-v4-slider>span{display:block;margin-bottom:15px;font-size:11px;font-weight:800;letter-spacing:.1em}.color-wheel-v4-controls fieldset button{min-height:46px;margin:0 7px 8px 0;padding:11px 15px;border:1px solid var(--ead-line);background:#fff;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.color-wheel-v4-controls fieldset button[aria-pressed="true"]{border-color:#111;background:#111;color:#fff}.color-wheel-v4-controls fieldset button:hover{border-color:var(--ead-accent)}.color-wheel-v4-controls button:focus-visible,.wheel-v4-slider input:focus-visible{outline:3px solid var(--ead-accent);outline-offset:3px}.wheel-v4-slider{display:grid;grid-template-columns:1fr auto;gap:10px}.wheel-v4-slider input{grid-column:1/-1;width:100%;accent-color:var(--ead-accent);cursor:ew-resize}.wheel-v4-slider output{grid-column:2;grid-row:1;font-size:13px;font-weight:800}.wheel-v4-feedback{margin-top:54px;padding-top:30px;border-top:1px solid var(--ead-line)}.wheel-v4-feedback>strong{font-size:clamp(30px,3vw,48px);letter-spacing:-.04em}.wheel-v4-feedback p{max-width:620px;color:var(--ead-muted);line-height:1.65}.wheel-v4-feedback .wheel-v4-hues{color:var(--ead-ink)}.wheel-v4-palette{display:flex;min-height:100px}.wheel-v4-palette span{display:flex;min-width:0;flex:1;padding:18px;flex-direction:column;justify-content:flex-end;color:#111}.wheel-v4-palette b,.wheel-v4-palette small{display:block;background:rgba(255,255,255,.84);width:max-content;max-width:100%;padding:2px 5px}.wheel-v4-palette b{font-size:9px;letter-spacing:.08em}.wheel-v4-palette small{font-size:11px}
.temperature-pair{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}.temperature-pair figure{margin:0;padding:clamp(30px,5vw,78px);border-right:1px solid var(--ead-line)}.temperature-pair figure:last-child{border-right:0}.temperature-pair figure>div{display:grid;min-height:440px;place-items:center}.temperature-warm figure,.temperature-warm>div{background:#e56d2e}.temperature-cool figure,.temperature-cool>div{background:#147f82}.temperature-pair i{display:block;width:34%;aspect-ratio:1;background:#7440a5}.temperature-pair figcaption{display:flex;margin-top:24px;flex-direction:column;gap:7px}.temperature-pair figcaption strong{font-size:11px;letter-spacing:.08em}.temperature-pair figcaption span{color:var(--ead-muted);font-size:13px}.context-pair{display:grid;grid-template-columns:1fr 1fr;min-height:500px}.context-field{display:grid;place-items:center}.context-field-a{background:#d5d04e}.context-field-b{background:#213f73}.context-field i{display:block;width:26%;aspect-ratio:1;background:#7440a5}.context-note{margin:0;padding:22px var(--color-pad);border-top:1px solid var(--ead-line);font-size:11px;font-weight:800;letter-spacing:.09em;text-align:center}
.color-page-v4 .color-picker-lab{display:block}.color-page-v4 .color-picker-ui{display:grid;grid-template-columns:1.15fr .85fr;border-top:1px solid var(--ead-line)}.color-page-v4 .color-picker-ui>*{padding:clamp(34px,5vw,76px)}.color-page-v4 .color-stage{min-height:520px;border-right:1px solid var(--ead-line)}.color-page-v4 .tool-controls{display:flex;flex-direction:column;justify-content:center}.color-page-v4 .tool-controls label{margin:18px 0}.color-page-v4 .tool-controls input{width:100%}
.color-v4-vocabulary dl{display:grid;margin:0;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.color-v4-vocabulary dl div{min-height:190px;padding:clamp(28px,4vw,56px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.color-v4-vocabulary dl div:nth-child(3n){border-right:0}.color-v4-vocabulary dl div:nth-last-child(-n+3){border-bottom:0}.color-v4-vocabulary dt{font-size:clamp(24px,2.4vw,38px);font-weight:800;letter-spacing:-.04em}.color-v4-vocabulary dd{max-width:360px;margin:12px 0 0;color:var(--ead-muted);line-height:1.55}.color-v4-artwork{display:grid;grid-template-columns:1.1fr .9fr}.color-v4-artwork figure{margin:0;padding:clamp(32px,5vw,72px);border-right:1px solid var(--ead-line)}.color-v4-artwork img{display:block;width:100%;height:auto}.color-v4-artwork figcaption{margin-top:18px;color:var(--ead-muted);font-size:12px;line-height:1.55}.color-v4-artwork>div{padding:clamp(48px,7vw,110px)}.color-v4-artwork h2{margin:20px 0 30px;font-size:clamp(48px,6vw,90px);line-height:.92;letter-spacing:-.06em}.color-v4-artwork>div p:not(.eyebrow){color:var(--ead-muted);font-size:17px;line-height:1.65}.color-v4-artwork>div p strong{color:var(--ead-ink)}.color-check-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ead-line)}.color-check-grid article{min-height:270px;padding:clamp(30px,4vw,60px);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}.color-check-grid article:nth-child(2n){border-right:0}.color-check-grid article:nth-last-child(-n+2){border-bottom:0}.color-check-grid span{color:var(--ead-accent);font-size:12px;font-weight:800}.color-check-grid p{max-width:550px;font-size:clamp(20px,2vw,30px);line-height:1.35}.color-check-grid strong{font-size:13px;letter-spacing:.04em}
@media(max-width:1000px){.color-v4-section-head{grid-template-columns:1fr}.color-v4-section-head>p:last-child{grid-column:1;grid-row:auto;margin-top:28px}.color-v4-foundations,.color-model-grid{grid-template-columns:1fr}.color-v4-foundations article,.color-model-grid article{min-height:420px;border-right:0;border-bottom:1px solid var(--ead-line)}.color-v4-foundations article:last-child,.color-model-grid article:last-child{border-bottom:0}.model-diagram{width:min(300px,75%);margin-bottom:35px}.color-v4-history{grid-template-columns:1fr}.color-history-mark{width:min(420px,75%)}.color-wheel-v4-lab{grid-template-columns:1fr}.color-wheel-v4-output{border-right:0;border-bottom:1px solid var(--ead-line)}.color-wheel-v4-stage{width:min(650px,82%)}.color-page-v4 .color-picker-ui,.color-v4-artwork{grid-template-columns:1fr}.color-page-v4 .color-stage,.color-v4-artwork figure{border-right:0;border-bottom:1px solid var(--ead-line)}}
@media(max-width:700px){.color-v4-hero-grid{grid-template-columns:1fr}.color-v4-mantra{display:none}.color-v4-hero h1{font-size:clamp(76px,24vw,118px)}.color-v4-section-head{padding-top:54px;padding-bottom:54px}.color-v4-section-head h2{font-size:clamp(44px,14vw,68px)}.temperature-pair,.context-pair{grid-template-columns:1fr}.temperature-pair figure{border-right:0;border-bottom:1px solid var(--ead-line)}.temperature-pair figure:last-child{border-bottom:0}.temperature-pair figure>div{min-height:320px}.context-pair{min-height:640px}.color-v4-vocabulary dl,.color-check-grid{grid-template-columns:1fr}.color-v4-vocabulary dl div,.color-v4-vocabulary dl div:nth-child(3n),.color-check-grid article,.color-check-grid article:nth-child(2n){border-right:0;border-bottom:1px solid var(--ead-line)}.color-v4-vocabulary dl div:last-child,.color-check-grid article:last-child{border-bottom:0}.color-wheel-v4-output,.color-wheel-v4-controls{padding:36px 22px}.color-wheel-v4-stage{width:min(460px,86vw);margin-top:8px}.wheel-v4-labels span{font-size:8px;transform:translate(-50%,-50%) rotate(calc(var(--i)*30deg)) translateY(-47cqw) rotate(calc(var(--i)*-30deg))}.wheel-v4-base-handle{width:50px;height:50px}.wheel-v4-base-handle:before{inset:11px}.wheel-v4-key{gap:15px;flex-wrap:wrap}.wheel-v4-feedback{margin-top:36px}.wheel-v4-palette{min-height:150px;flex-wrap:wrap}.wheel-v4-palette span{min-width:50%;padding:12px}.color-page-v4 .color-picker-ui>*{padding:32px 22px}.color-page-v4 .color-stage{min-height:390px}.color-v4-artwork>div,.color-v4-artwork figure{padding:36px 22px}}
@media(prefers-reduced-motion:reduce){.wheel-v4-base-handle,.wheel-v4-related-marker{transition:none!important}}

/* v4.1 Color clarification — named hues, wheel categories, temperature placement */
.wheel-v4-hue-key{display:grid;margin:38px auto 0;padding:0;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line);border-left:1px solid var(--ead-line);list-style:none;text-align:left}
.wheel-v4-hue-key li{position:relative;display:grid;min-height:58px;padding:11px 10px 10px 30px;border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line);align-content:center}
.wheel-v4-hue-key li:before{position:absolute;left:11px;top:17px;width:11px;height:24px;background:var(--hue);content:""}
.wheel-v4-hue-key strong{font-size:10px;line-height:1.25}.wheel-v4-hue-key span{margin-top:3px;color:var(--ead-muted);font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.wheel-v4-category-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ead-line)}.wheel-v4-category-grid article{min-height:300px;padding:clamp(30px,4vw,60px);border-right:1px solid var(--ead-line)}.wheel-v4-category-grid article:last-child{border-right:0}.wheel-v4-category-grid h3{margin:20px 0 12px;font-size:clamp(25px,2.7vw,42px);line-height:1.08;letter-spacing:-.04em}.wheel-v4-category-grid article>p:last-child{max-width:460px;margin:0;color:var(--ead-muted);line-height:1.6}
@media(max-width:1000px){.wheel-v4-category-grid{grid-template-columns:1fr}.wheel-v4-category-grid article{min-height:0;border-right:0;border-bottom:1px solid var(--ead-line)}.wheel-v4-category-grid article:last-child{border-bottom:0}}
@media(max-width:700px){.wheel-v4-hue-key{grid-template-columns:repeat(2,1fr);margin-top:30px}.wheel-v4-hue-key li{min-height:56px}.wheel-v4-category-grid article{padding:34px 22px}}

/* v4.2 Publication shell — full-width masthead, accessible menus, colophon footer */
.site-header{z-index:100}.header-inner{width:100%;min-height:92px;margin:0;padding-inline:clamp(24px,3.5vw,64px);gap:clamp(28px,4vw,76px)}
.site-branding{min-width:0}.site-title{display:block;white-space:nowrap}.site-nav{margin-left:auto}.site-nav .primary-menu-list{display:flex;margin:0;padding:0;align-items:stretch;flex-wrap:nowrap;gap:clamp(15px,1.6vw,30px);list-style:none}.site-nav .primary-menu-list>li{position:relative;display:flex;min-height:92px;align-items:center;border:0}.site-nav .primary-menu-list>li>a,.nav-parent-row>a{display:flex;min-height:48px;align-items:center;color:var(--ead-ink);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.site-nav a:hover,.site-nav a:focus-visible{color:var(--ead-accent)}
.nav-parent-row{display:flex;align-items:center}.submenu-toggle{display:grid;width:34px;height:44px;margin-left:2px;padding:0;place-items:center;border:0;background:transparent;color:var(--ead-ink);cursor:pointer}.submenu-toggle i{display:block;width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .16s ease}.submenu-toggle:hover,.submenu-toggle:focus-visible{color:var(--ead-accent)}.submenu-toggle:focus-visible,.menu-toggle:focus-visible{outline:3px solid var(--ead-accent);outline-offset:3px}.nav-has-submenu.is-submenu-open .submenu-toggle i{transform:translateY(2px) rotate(225deg)}
.nav-submenu{position:absolute;z-index:20;left:-18px;top:100%;display:none;width:270px;margin:0;padding:10px 0;border:1px solid var(--ead-line);background:#fff;list-style:none}.primary-menu-list>li:nth-child(3) .nav-submenu{right:-18px;left:auto;width:310px}.nav-submenu li{margin:0;border:0}.nav-submenu a{display:block;padding:10px 18px;color:var(--ead-ink);font-size:13px;font-weight:600;line-height:1.35;text-decoration:none}.nav-submenu a:hover,.nav-submenu a:focus-visible{background:var(--ead-soft);color:var(--ead-accent);outline:0}.nav-has-submenu.is-submenu-open>.nav-submenu{display:block}
@media(min-width:1181px){.nav-has-submenu:hover>.nav-submenu{display:block}.menu-toggle{display:none!important}}

.site-footer{padding:0;border-top:1px solid var(--ead-line);background:#fff}.footer-grid{display:grid;padding:clamp(58px,7vw,108px) clamp(24px,3.5vw,64px);grid-template-columns:minmax(330px,2fr) repeat(3,minmax(150px,1fr));gap:clamp(38px,5vw,90px)}.footer-kicker{margin:0 0 22px;color:var(--ead-accent);font-size:10px;font-weight:800;letter-spacing:.12em}.footer-publication h2{max-width:430px;margin:0;font-size:clamp(38px,4.2vw,68px);line-height:.92;letter-spacing:-.06em}.footer-description-placeholder{max-width:440px;margin:28px 0 0;color:var(--ead-muted);font-size:13px;line-height:1.55}.footer-column h3{margin:0 0 24px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.footer-column ul{margin:0;padding:0;list-style:none}.footer-column li{margin:0 0 13px}.footer-column a,.footer-reserved{font-size:13px;line-height:1.45;text-decoration:none}.footer-column a{display:inline-block;font-weight:700}.footer-column a:hover,.footer-column a:focus-visible{color:var(--ead-accent);text-decoration:underline}.footer-column a:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}.footer-reserved{display:flex;max-width:220px;align-items:baseline;justify-content:space-between;gap:12px;color:var(--ead-muted)}.footer-reserved small{flex:0 0 auto;color:#999;font-size:8px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.footer-colophon{display:flex;min-height:76px;padding:22px clamp(24px,3.5vw,64px);align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--ead-line);color:var(--ead-muted);font-size:11px;letter-spacing:.04em}.footer-colophon p{margin:0}

@media(max-width:1180px){.header-inner{min-height:78px}.menu-toggle{display:flex;min-width:72px;min-height:48px;padding:0;align-items:center;justify-content:flex-end;gap:11px}.menu-toggle i,.menu-toggle i:before,.menu-toggle i:after{display:block;width:18px;border-top:1.5px solid currentColor;content:""}.menu-toggle i{position:relative}.menu-toggle i:before{position:absolute;top:-7px}.menu-toggle i:after{position:absolute;top:4px}.menu-toggle[aria-expanded="true"] i{border-top-color:transparent}.menu-toggle[aria-expanded="true"] i:before{top:-1px;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] i:after{top:-1px;transform:rotate(-45deg)}.site-nav{position:absolute;left:0;right:0;top:100%;display:none;max-height:calc(100vh - 78px);margin:0;padding:0 clamp(24px,3.5vw,64px) 28px;overflow-y:auto;border-bottom:1px solid var(--ead-line);background:#fff}.site-nav.is-open{display:block}.site-nav .primary-menu-list{display:block}.site-nav .primary-menu-list>li{display:block;min-height:0;border-top:1px solid var(--ead-line)}.site-nav .primary-menu-list>li>a,.nav-parent-row>a{min-height:56px;font-size:16px}.nav-parent-row>a{flex:1}.submenu-toggle{width:54px;height:56px;margin:0;border-left:1px solid var(--ead-line)}.nav-submenu,.primary-menu-list>li:nth-child(3) .nav-submenu{position:static;display:none;width:auto;margin:0;padding:0 0 12px 22px;border:0;border-top:1px solid var(--ead-line);background:#fff}.nav-has-submenu.is-submenu-open>.nav-submenu{display:block}.nav-submenu a{min-height:48px;padding:13px 14px;border-bottom:1px solid #f0f0f0;font-size:14px}.nav-submenu li:last-child a{border-bottom:0}.footer-grid{grid-template-columns:1.5fr 1fr}.footer-publication{grid-row:span 2}.footer-column{padding-top:5px}}
@media(max-width:620px){.header-inner{padding-inline:16px}.site-title{max-width:230px;white-space:normal;font-size:17px}.site-nav{padding-inline:16px}.footer-grid{padding:52px 20px;grid-template-columns:1fr;gap:42px}.footer-publication{grid-row:auto;padding-bottom:8px}.footer-publication h2{font-size:45px}.footer-column{padding-top:0}.footer-reserved{max-width:290px}.footer-colophon{padding:20px;align-items:flex-start;flex-direction:column;gap:6px}}
@media(prefers-reduced-motion:reduce){.submenu-toggle i{transition:none}}

/* v4.2.1 structural review corrections */
.footer-publication h2 a,.footer-colophon a{color:inherit;text-decoration:none}.footer-publication h2 a:hover,.footer-publication h2 a:focus-visible,.footer-colophon a:hover,.footer-colophon a:focus-visible{color:var(--ead-accent)}.footer-publication h2 a:focus-visible,.footer-colophon a:focus-visible{outline:3px solid var(--ead-accent);outline-offset:5px}
.elements-hero + .curriculum-note p{max-width:none}

/* v4.2.2: override the prototype's broader .site-nav ul display rule */
.site-nav .nav-submenu{display:none}
.site-nav .nav-has-submenu.is-submenu-open>.nav-submenu{display:block}
@media(min-width:1181px){.site-nav .nav-has-submenu:hover>.nav-submenu{display:block}}

/* v4.2.3 publication pages and accessible location states */
.site-nav a[aria-current="page"]{color:var(--ead-accent);font-weight:800;box-shadow:inset 0 -3px var(--ead-accent)}
.site-nav .nav-has-submenu.is-current-section>.nav-parent-row>a,
.site-nav .primary-menu-list>li.is-current-section>a{color:var(--ead-accent);font-weight:800;box-shadow:inset 0 -1px var(--ead-accent)}
.site-nav .nav-submenu a[aria-current="page"]{background:var(--ead-soft);box-shadow:inset 3px 0 var(--ead-accent)}
.site-nav a[aria-current="page"]:focus-visible,
.site-nav .nav-has-submenu.is-current-section>.nav-parent-row>a:focus-visible,
.site-nav .primary-menu-list>li.is-current-section>a:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}
.footer-column a[aria-current="page"]{color:var(--ead-accent);font-weight:800;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}

.publication-page{--publication-pad:clamp(24px,5.2vw,96px);border-bottom:1px solid var(--ead-line)}
.publication-page h1,.publication-page h2,.publication-page h3{letter-spacing:-.055em}
.publication-page h2{margin:0;font-size:clamp(45px,5.6vw,88px);line-height:.94}
.publication-page .eyebrow{margin:0 0 28px;color:var(--ead-accent);font-size:11px;font-weight:800;letter-spacing:.13em}
.publication-hero{display:grid;min-height:710px;padding:clamp(70px,8vw,130px) var(--publication-pad);grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:clamp(54px,8vw,150px);align-items:center;border-bottom:1px solid var(--ead-line)}
.publication-hero h1{max-width:1000px;margin:0;font-size:clamp(76px,9.4vw,156px);font-weight:700;line-height:.84}
.publication-hero-deck{max-width:540px;margin:0;color:var(--ead-muted);font-size:clamp(19px,1.7vw,27px);line-height:1.5}
.publication-hero-deck strong{color:var(--ead-ink)}
.publication-split{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--ead-line)}
.publication-split>div{min-height:500px;padding:clamp(54px,7vw,120px) var(--publication-pad)}
.publication-split>div+div{border-left:1px solid var(--ead-line)}
.publication-split>div>p:not(.eyebrow){max-width:690px;margin:0 0 22px;color:var(--ead-muted);font-size:17px;line-height:1.7}
.publication-split>div>p:last-child{margin-bottom:0}
.publication-mark{position:relative;overflow:hidden;background:var(--ead-soft)}
.publication-mark i{position:absolute;display:block;background:var(--ead-ink)}
.publication-mark i:nth-child(1){left:16%;top:17%;width:28%;aspect-ratio:1;border-radius:50%}
.publication-mark i:nth-child(2){right:15%;top:21%;width:25%;aspect-ratio:1;background:var(--ead-accent);transform:rotate(18deg)}
.publication-mark i:nth-child(3){left:19%;bottom:19%;width:62%;height:16px;transform:rotate(-23deg)}
.publication-mark i:nth-child(4){right:19%;bottom:16%;width:19%;aspect-ratio:1;border:16px solid var(--ead-ink);background:transparent}
.publication-curriculum,.publication-method,.editorial-standards{border-bottom:1px solid var(--ead-line)}
.publication-curriculum>header,.publication-method>header,.editorial-standards>header{display:grid;padding:clamp(62px,7vw,112px) var(--publication-pad);grid-template-columns:minmax(250px,.7fr) minmax(420px,1.3fr);gap:clamp(42px,7vw,130px);align-items:end}
.publication-curriculum>header .eyebrow,.publication-method>header .eyebrow,.editorial-standards>header .eyebrow{grid-column:1/-1;margin-bottom:0}
.publication-curriculum>header p:last-child,.publication-method>header p:last-child{max-width:620px;margin:0;color:var(--ead-muted);font-size:18px;line-height:1.65}
.publication-curriculum-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ead-line)}
.publication-curriculum-grid article{min-height:390px;padding:clamp(50px,6vw,100px) var(--publication-pad);border-right:1px solid var(--ead-line)}
.publication-curriculum-grid article:last-child{border-right:0}
.publication-curriculum-grid span,.editorial-standards-grid article>span,.publication-method li>span{color:var(--ead-accent);font-size:12px;font-weight:800;letter-spacing:.12em}
.publication-curriculum-grid h3{margin:50px 0 18px;font-size:clamp(48px,5vw,78px);line-height:.9}
.publication-curriculum-grid p{max-width:620px;margin:0;color:var(--ead-muted);font-size:17px;line-height:1.75}
.publication-framework-note{margin:0;padding:30px var(--publication-pad);border-top:1px solid var(--ead-line);color:var(--ead-muted);font-size:14px;line-height:1.65}
.publication-framework-note strong{color:var(--ead-ink)}
.publication-method ol{display:grid;margin:0;padding:0;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--ead-line);list-style:none}
.publication-method li{min-height:330px;padding:clamp(32px,3.8vw,62px);border-right:1px solid var(--ead-line)}
.publication-method li:last-child{border-right:0}
.publication-method li strong{display:block;margin:72px 0 12px;font-size:clamp(26px,2.5vw,40px)}
.publication-method li p{margin:0;color:var(--ead-muted);font-size:14px;line-height:1.6}
.publication-closing{padding:clamp(80px,10vw,170px) var(--publication-pad)}
.publication-closing h2{max-width:1400px}
.publication-closing>p:last-child{max-width:720px;margin:44px 0 0;color:var(--ead-muted);font-size:18px;line-height:1.7}
.editorial-standards>header{grid-template-columns:1fr}
.editorial-standards>header h2{max-width:1050px}
.editorial-standards-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ead-line)}
.editorial-standards-grid article{min-height:430px;padding:clamp(42px,5.2vw,86px) var(--publication-pad);border-right:1px solid var(--ead-line);border-bottom:1px solid var(--ead-line)}
.editorial-standards-grid article:nth-child(2n){border-right:0}.editorial-standards-grid article:nth-last-child(-n+2){border-bottom:0}
.editorial-standards-grid h3{margin:55px 0 20px;font-size:clamp(30px,3vw,48px);line-height:1}
.editorial-standards-grid p{max-width:680px;margin:0 0 18px;color:var(--ead-muted);font-size:16px;line-height:1.7}
.editorial-transparency{display:grid;padding:clamp(72px,9vw,150px) var(--publication-pad);grid-template-columns:minmax(280px,.75fr) minmax(420px,1.25fr);gap:clamp(54px,9vw,180px);border-bottom:1px solid var(--ead-line)}
.editorial-transparency>div:last-child p{max-width:720px;margin:0 0 22px;color:var(--ead-muted);font-size:17px;line-height:1.7}.editorial-transparency>div:last-child strong{color:var(--ead-ink)}

@media(max-width:1080px){
  .site-nav a[aria-current="page"],.site-nav .nav-has-submenu.is-current-section>.nav-parent-row>a,.site-nav .primary-menu-list>li.is-current-section>a{box-shadow:inset 3px 0 var(--ead-accent);padding-left:14px}
  .site-nav .nav-submenu a[aria-current="page"]{box-shadow:inset 3px 0 var(--ead-accent);padding-left:18px}
  .publication-hero{min-height:640px;grid-template-columns:1fr}.publication-hero-deck{max-width:760px}
  .publication-curriculum>header,.publication-method>header{grid-template-columns:1fr}
  .publication-method ol{grid-template-columns:repeat(2,1fr)}.publication-method li{border-bottom:1px solid var(--ead-line)}.publication-method li:nth-child(2n){border-right:0}.publication-method li:last-child{border-bottom:0}
  .editorial-transparency{grid-template-columns:1fr}
}
@media(max-width:760px){
  .publication-page{--publication-pad:22px}.publication-page .eyebrow{margin-bottom:20px}
  .publication-hero{min-height:0;padding-top:72px;padding-bottom:72px;gap:45px}.publication-hero h1{font-size:clamp(62px,19vw,100px)}.publication-hero-deck{font-size:18px}
  .publication-split,.publication-curriculum-grid,.editorial-standards-grid{grid-template-columns:1fr}
  .publication-split>div{min-height:0;padding-top:58px;padding-bottom:58px}.publication-split>div+div{border-top:1px solid var(--ead-line);border-left:0}.publication-mark{min-height:390px!important}
  .publication-curriculum>header,.publication-method>header,.editorial-standards>header{padding-top:62px;padding-bottom:62px;gap:30px}.publication-page h2{font-size:clamp(43px,13vw,66px)}
  .publication-curriculum-grid article{min-height:0;border-right:0;border-bottom:1px solid var(--ead-line)}.publication-curriculum-grid article:last-child{border-bottom:0}.publication-curriculum-grid h3{margin-top:38px}
  .publication-method ol{grid-template-columns:1fr}.publication-method li,.publication-method li:nth-child(2n){min-height:0;border-right:0;border-bottom:1px solid var(--ead-line)}.publication-method li:last-child{border-bottom:0}.publication-method li strong{margin-top:42px}
  .publication-closing{padding-top:78px;padding-bottom:82px}.publication-closing>p:last-child{font-size:16px}
  .editorial-standards-grid article,.editorial-standards-grid article:nth-child(2n){min-height:0;border-right:0;border-bottom:1px solid var(--ead-line)}.editorial-standards-grid article:last-child{border-bottom:0}.editorial-standards-grid h3{margin-top:42px}
  .editorial-transparency{padding-top:70px;padding-bottom:74px;gap:42px}
}

/* v4.2.4 legal publishing infrastructure */
.footer-external span{display:inline-block;margin-left:4px;color:var(--ead-accent);font-size:.9em}.footer-column .footer-external:hover span,.footer-column .footer-external:focus-visible span{transform:translate(1px,-1px)}
.legal-hero{padding:clamp(76px,9vw,150px) var(--publication-pad);border-bottom:1px solid var(--ead-line)}
.legal-hero h1{max-width:1100px;margin:0;font-size:clamp(76px,10vw,158px);font-weight:700;line-height:.84}
.legal-deck{max-width:720px;margin:46px 0 0;color:var(--ead-muted);font-size:clamp(19px,1.8vw,28px);line-height:1.55}
.legal-date{margin:42px 0 0;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.legal-layout{display:grid;grid-template-columns:minmax(340px,.72fr) minmax(560px,1.28fr)}
.legal-summary{position:sticky;top:0;align-self:start;min-height:620px;padding:clamp(54px,6.5vw,112px) var(--publication-pad);border-right:1px solid var(--ead-line)}
.legal-summary h2{max-width:560px;margin:0 0 38px;font-size:clamp(44px,4.8vw,74px);line-height:.95}
.legal-summary>p:not(.eyebrow){max-width:540px;margin:0 0 20px;color:var(--ead-muted);font-size:16px;line-height:1.72}
.legal-copy{min-width:0}
.legal-copy section{display:grid;padding:clamp(52px,6vw,96px) var(--publication-pad);grid-template-columns:54px minmax(0,1fr);column-gap:clamp(24px,3.5vw,58px);border-bottom:1px solid var(--ead-line)}
.legal-number{grid-row:1 / span 8;margin:9px 0 0;color:var(--ead-accent);font-size:11px;font-weight:800;letter-spacing:.12em}
.legal-copy h2{max-width:750px;margin:0 0 28px;font-size:clamp(34px,3.6vw,56px);line-height:1}
.legal-copy section>p:not(.legal-number){grid-column:2;max-width:720px;margin:0 0 20px;color:var(--ead-muted);font-size:16px;line-height:1.75}
.legal-copy section>p:last-child{margin-bottom:0}.legal-copy strong{color:var(--ead-ink)}
.legal-copy .text-link{color:var(--ead-ink);font-weight:800;text-decoration-color:var(--ead-accent);text-decoration-thickness:2px;text-underline-offset:4px}.legal-copy .text-link:hover{color:var(--ead-accent)}.legal-copy .text-link:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}
.legal-review-note{padding:36px var(--publication-pad);background:var(--ead-soft);color:var(--ead-muted);font-size:13px;line-height:1.65}.legal-review-note strong{color:var(--ead-ink)}
@media(max-width:1000px){.legal-layout{grid-template-columns:1fr}.legal-summary{position:static;min-height:0;border-right:0;border-bottom:1px solid var(--ead-line)}}
@media(max-width:620px){.legal-hero{padding-top:70px;padding-bottom:72px}.legal-hero h1{font-size:clamp(64px,21vw,102px)}.legal-deck{margin-top:34px;font-size:18px}.legal-date{margin-top:34px}.legal-summary{padding-top:54px;padding-bottom:58px}.legal-copy section{padding-top:48px;padding-bottom:52px;grid-template-columns:1fr}.legal-number{grid-row:auto;margin:0 0 34px}.legal-copy h2,.legal-copy section>p:not(.legal-number){grid-column:1}.legal-copy h2{font-size:clamp(34px,10.5vw,48px)}.legal-copy section>p:not(.legal-number){font-size:15px}.legal-review-note{padding-top:30px;padding-bottom:32px}}

/* Single-post editorial rail */
.article-byline{display:flex;align-items:center;gap:11px;font-size:clamp(15px,1.2vw,17px)!important;line-height:1.4!important}
.article-byline a{color:var(--ead-ink);font-weight:800;text-decoration-color:var(--ead-accent);text-decoration-thickness:2px;text-underline-offset:4px}
.article-byline a:hover{color:var(--ead-accent)}
.article-byline a:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}
.article-byline span{color:var(--ead-accent);font-weight:800}
.single-post-layout{display:grid;width:min(calc(100% - 48px),1200px);margin-inline:auto;padding:72px 0 110px;grid-template-columns:minmax(0,var(--ead-content)) minmax(250px,310px);gap:clamp(72px,8vw,132px);align-items:start}
.single-post-article{min-width:0}
.editorial-rail{min-width:0;color:var(--ead-ink)}
.rail-module{padding:27px 0 34px;border-top:1px solid var(--ead-line)}
.rail-module:first-child{padding-top:0;border-top:0}
.rail-module h2{margin:0 0 19px;color:var(--ead-accent);font-size:11px;font-weight:800;line-height:1.3;letter-spacing:.12em;text-transform:uppercase}
.rail-module ul,.rail-module ol{margin:0;padding:0;list-style:none}
.rail-module li+li{margin-top:14px}
.rail-module a{font-size:13px;font-weight:700;line-height:1.45;text-decoration:none}
.rail-module a:hover{text-decoration:underline;text-decoration-color:var(--ead-accent);text-decoration-thickness:2px;text-underline-offset:4px}
.rail-module a:focus-visible{outline:3px solid var(--ead-accent);outline-offset:4px}
.rail-search-form>label{display:block;margin-bottom:9px;color:var(--ead-muted);font-size:12px;line-height:1.45}
.rail-search-form>div{display:grid;grid-template-columns:minmax(0,1fr) auto}
.rail-search-form input{min-width:0;height:43px;padding:9px 12px;border:1px solid #bcbcbc;border-right:0;border-radius:0;background:#fff;color:var(--ead-ink);font:inherit;font-size:14px}
.rail-search-form button{height:43px;padding:0 16px;border:1px solid var(--ead-ink);border-radius:0;background:var(--ead-ink);color:#fff;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.rail-search-form button:hover{border-color:var(--ead-accent);background:var(--ead-accent)}
.rail-search-form input:focus-visible,.rail-search-form button:focus-visible{position:relative;z-index:1;outline:3px solid var(--ead-accent);outline-offset:3px}
.rail-toc ol{counter-reset:rail-sections}
.rail-toc li{display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:start;counter-increment:rail-sections}
.rail-toc li:before{content:counter(rail-sections,decimal-leading-zero);padding-top:2px;color:var(--ead-muted);font-size:9px;font-weight:800;letter-spacing:.05em}
.rail-toc li+li{margin-top:12px}
.rail-toc a{font-weight:600}
.entry-content h2[id]{scroll-margin-top:32px}
.rail-related li{padding-bottom:15px;border-bottom:1px solid var(--ead-line)}
.rail-related li+li{margin-top:15px}
.rail-related a{display:block}
.rail-related time{display:block;margin-top:5px;color:var(--ead-muted);font-size:10px;letter-spacing:.04em}
.rail-curriculum li+li{margin-top:10px}
.rail-curriculum a span,.rail-identity>a span{color:var(--ead-accent)}
.rail-identity p{margin:0 0 16px;color:var(--ead-muted);font-size:13px;line-height:1.6}
@media(max-width:1100px){.single-post-layout{width:min(calc(100% - 48px),var(--ead-content));grid-template-columns:1fr;gap:64px}.rail-toc{display:none}.editorial-rail{padding-top:44px;border-top:1px solid var(--ead-line)}.rail-module:first-child{padding-top:0}}
@media(max-width:600px){.single-post-layout{width:min(calc(100% - 40px),var(--ead-content));padding-top:52px;padding-bottom:78px}.article-byline{gap:8px;font-size:14px!important}.editorial-rail{margin-top:4px;padding-top:38px}.rail-module{padding-top:24px;padding-bottom:29px}}

/* v4.3 — mobile responsive stabilization
   These rules correct narrow-screen overflow, vertical rhythm, and the
   action/result sequence without changing the approved desktop layouts. */
@media (max-width: 760px) {
  /* A flex/grid child must be allowed to become narrower than its contents. */
  .site-main > *,
  #main > *,
  .site-main section,
  #main section,
  .site-main header,
  #main header,
  .site-main figure,
  #main figure,
  .site-main article,
  #main article,
  .site-main div,
  #main div,
  .site-main nav,
  #main nav,
  .site-main fieldset,
  #main fieldset,
  .site-main label,
  #main label {
    min-width: 0;
  }

  .site-main img,
  #main img,
  .site-main svg,
  #main svg,
  .site-main video,
  #main video,
  .site-main canvas,
  #main canvas {
    max-width: 100%;
  }

  .site-main h1,
  #main h1,
  .site-main h2,
  #main h2,
  .site-main h3,
  #main h3,
  .site-main p,
  #main p,
  .site-main a,
  #main a,
  .site-main button,
  #main button,
  .site-main dt,
  #main dt,
  .site-main dd,
  #main dd {
    overflow-wrap: break-word;
  }

  input[type="range"],
  select,
  textarea {
    max-width: 100%;
  }

  /* Comparable page types now begin on one mobile rhythm. Nested content
     wrappers no longer add a second, accidental block of hero padding. */
  .page-hero,
  .pilot-hero,
  .elements-hero,
  .principles-hero,
  .explore-hero,
  .tools-hero,
  .resources-hero,
  .color-v4-hero,
  .publication-hero,
  .legal-hero {
    padding-top: 52px;
  }

  .explore-hero .content-wrap,
  .tools-hero .content-wrap,
  .resources-hero .content-wrap,
  .color-v4-hero .content-wrap {
    padding-top: 0;
    padding-bottom: 0;
  }

  /* Display type stays emphatic while long curriculum titles fit at 320px. */
  .pilot-hero h1,
  .typography-page .type-hero h1 {
    max-width: 100%;
    font-size: clamp(56px, 18vw, 78px);
    line-height: .84;
    letter-spacing: -.065em;
  }

  .proportion-page .pilot-hero h1,
  .unity-page .pilot-hero h1,
  .typography-page .type-hero h1 {
    font-size: clamp(48px, 15vw, 68px);
    line-height: .88;
  }

  .resources-hero h1 {
    max-width: 100%;
    font-size: clamp(48px, 14.5vw, 68px);
    line-height: .94;
  }

  .publication-hero h1 {
    font-size: clamp(50px, 15vw, 72px);
    line-height: .9;
  }

  .page-hero h1,
  .entry-header h1,
  .elements-hero h1,
  .principles-hero h1,
  .explore-hero h1,
  .tools-hero h1,
  .legal-hero h1 {
    max-width: 100%;
  }

  /* Fixed demonstration geometry becomes fluid before it can widen the page. */
  .rhythm-live-sequence,
  .pattern-paced-sequence {
    max-width: 100%;
  }

  .value-nine-scale figcaption,
  .element-next {
    flex-wrap: wrap;
  }

  .value-nine-scale figcaption {
    gap: 8px 18px;
  }

  .proportion-matrix-figure,
  .pattern-build-figure,
  .point-density-figure,
  .form-structure-figure,
  .value-reduction-figure,
  .texture-scale-figure,
  .space-field-figure {
    max-width: 100%;
  }

  /* The approved anatomy construction stays intact, but the complete SVG now
     scales as one coherent unit instead of imposing an 1120px scroll surface. */
  .type-anatomy {
    overflow: visible;
  }

  .anatomy-board {
    overflow: visible;
  }

  .anatomy-board svg {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: auto;
  }

  .anatomy-board figcaption {
    position: static;
    width: auto;
  }

  /* On phones the interactive relationship is encountered before the named
     hue reference shelf. DOM semantics and every control remain unchanged. */
  .color-wheel-v4-lab {
    display: flex;
    flex-direction: column;
  }

  .color-wheel-v4-output {
    display: contents;
  }

  .color-wheel-v4-stage { order: 1; }
  .wheel-v4-directive { order: 2; }
  .wheel-v4-key { order: 3; }
  .color-wheel-v4-controls {
    order: 4;
    padding-top: 28px;
    padding-bottom: 30px;
    border-top: 1px solid var(--ead-line);
    border-bottom: 1px solid var(--ead-line);
  }
  .wheel-v4-hue-key {
    order: 5;
    width: calc(100% - 44px);
    margin-top: 30px;
    margin-bottom: 36px;
  }

  .color-wheel-v4-controls fieldset { margin-bottom: 32px; }
  .wheel-v4-feedback { margin-top: 30px; padding-top: 24px; }

  /* Existing labs already use the approved output -> controls -> feedback
     architecture; this trims the accidental mobile separation between them. */
  .proximity-lab .pilot-lab-intro { padding-bottom: 32px; }
  .proximity-lab .pilot-controls { padding-top: 28px; }
  .tool-card { gap: 24px; }
}

@media (max-width: 620px) {
  /* Keep identity and menu within the 320px viewport. */
  .header-inner { gap: 12px; }
  .site-branding { flex: 1 1 auto; min-width: 0; }
  .site-title { max-width: none; font-size: 16px; line-height: 1.15; }
  .menu-toggle { flex: 0 0 auto; min-width: 68px; }

  .content-wrap:not(.wide) { padding-top: 52px; }
  .article-hero + .single-post-layout { padding-top: 52px; }

  .resources-hero,
  .explore-hero,
  .tools-hero,
  .pilot-hero,
  .color-v4-hero,
  .publication-hero,
  .legal-hero {
    padding-bottom: 58px;
  }

  .resources-lede,
  .pilot-orientation,
  .publication-hero-deck,
  .legal-deck {
    font-size: 17px;
  }

  .resources-hero-grid,
  .pilot-hero-grid,
  .color-v4-hero-grid {
    gap: 34px;
  }

  .element-next {
    width: 100%;
    padding-inline: 20px;
  }

  .element-next a {
    max-width: 100%;
  }
}

@media (max-width: 360px) {
  .site-title { font-size: 15px; }
  .menu-toggle { min-width: 62px; gap: 8px; }

  .pilot-page { --pilot-pad: 18px; }
  .pilot-hero-grid { width: min(calc(100% - 32px), var(--ead-wide)); }

.pilot-hero h1 { font-size: 56px; }
  .proportion-page .pilot-hero h1,
  .unity-page .pilot-hero h1,
  .typography-page .type-hero h1 { font-size: 48px; }

  .resources-hero h1 { font-size: 48px; }
  .publication-hero h1 { font-size: 50px; }

  .color-wheel-v4-stage { width: min(440px, 90vw); }
  .color-wheel-v4-controls { padding-inline: 18px; }
  .wheel-v4-hue-key { width: calc(100% - 36px); }

  .proportion-matrix-figure {
    padding-left: 48px;
  }
  .matrix-axis-top { left: 48px; }
  .matrix-axis-side { left: 17px; }
  .matrix-cell { padding: 10px; }
  .matrix-object.wide { width: 82px; }
}

/* v4.5 — direct manipulation for the existing stationary color wheel. */
.real-color-wheel-v4 {
  cursor: grab;
  touch-action: none;
  user-select: none;
  -webkit-user-select: none;
}

.real-color-wheel-v4.is-dragging { cursor: grabbing; }

/* v4.6 — restrained circular selector and wheel-relative hue labels. */
.wheel-v4-base-handle {
  width: 50px;
  height: 50px;
}

.wheel-v4-base-handle::before {
  position: absolute;
  inset: 11px;
  border: 3px solid var(--ead-accent);
  border-radius: 50%;
  background: transparent;
  box-shadow: 0 0 0 2px #fff;
  content: "";
  transform: none;
}

.wheel-v4-base-handle:hover::before,
.wheel-v4-base-handle.is-dragging::before {
  box-shadow: 0 0 0 2px #fff;
  transform: scale(1.06);
}

.wheel-v4-base-handle:focus-visible::before {
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px #111;
}

.wheel-v4-base-handle span { display: none; }

.wheel-v4-key .key-base {
  border: 2px solid var(--ead-accent);
  border-radius: 50%;
  background: transparent;
  outline: 0;
  transform: none;
}

.wheel-v4-labels span {
  white-space: nowrap;
  transform: translate(-50%, -50%);
}

/* v4.7 — precision picker sharing the approved wheel's hue state. */
.color-picker-v47 {
  border-top: 1px solid var(--ead-line);
  background: #fff;
}

.color-picker-v47-head {
  display: grid;
  padding: clamp(54px, 7vw, 100px) var(--color-pad);
  grid-template-columns: minmax(280px, .85fr) minmax(360px, 1.15fr);
  column-gap: clamp(50px, 9vw, 160px);
}

.color-picker-v47-head .eyebrow { grid-column: 1; }
.color-picker-v47-head h3 {
  grid-column: 1;
  margin: 16px 0 0;
  font-size: clamp(46px, 5.6vw, 84px);
  line-height: .92;
  letter-spacing: -.06em;
}

.color-picker-v47-head > p:last-child {
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: end;
  max-width: 680px;
  margin: 0;
  color: var(--ead-muted);
  font-size: clamp(17px, 1.45vw, 21px);
  line-height: 1.62;
}

.color-picker-v47-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  border-top: 1px solid var(--ead-line);
}

.color-picker-v47-field-wrap,
.color-picker-v47-controls { padding: clamp(34px, 5vw, 76px); }
.color-picker-v47-field-wrap { border-right: 1px solid var(--ead-line); }

.color-picker-v47-field {
  position: relative;
  display: block;
  width: 100%;
  max-width: 760px;
  aspect-ratio: 4 / 3;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  border: 1px solid #bdbdbd;
  border-radius: 0;
  background:
    linear-gradient(to bottom, #fff 0%, transparent 50%, #000 100%),
    linear-gradient(to right, hsl(0 0% 50%), var(--picker-field-hue, #ef3b32));
  cursor: crosshair;
  touch-action: none;
}

.color-picker-v47-field:focus-visible {
  outline: 3px solid var(--ead-accent);
  outline-offset: 4px;
}

.color-picker-v47-field.is-dragging { cursor: grabbing; }

.color-picker-v47-field-marker {
  position: absolute;
  left: 86%;
  top: 43%;
  width: 22px;
  height: 22px;
  border: 3px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 2px #111;
  pointer-events: none;
  transform: translate(-50%, -50%);
}

.color-picker-v47-field-wrap > p {
  max-width: 620px;
  margin: 18px auto 0;
  color: var(--ead-muted);
  font-size: 13px;
  line-height: 1.5;
}

.color-picker-v47-controls {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
}

.color-picker-v47-swatch {
  display: flex;
  min-height: 190px;
  margin-bottom: 34px;
  padding: 22px;
  align-items: flex-end;
  border: 1px solid var(--ead-line);
  background: #ef3b32;
}

.color-picker-v47-swatch strong {
  font-size: clamp(22px, 2.3vw, 36px);
  letter-spacing: -.035em;
}

.color-picker-v47-range {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  margin: 0 0 25px;
}

.color-picker-v47-range > span,
.color-picker-v47-hex > span {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
}

.color-picker-v47-range input {
  grid-column: 1 / -1;
  width: 100%;
}

.color-picker-v47-range output {
  grid-column: 2;
  grid-row: 1;
  font-size: 13px;
  font-weight: 800;
}

.color-picker-v47-range [data-picker-hue] {
  height: 10px;
  border: 1px solid #999;
  border-radius: 0;
  background: linear-gradient(90deg, #f00, #ff0, #0f0, #0ff, #00f, #f0f, #f00);
  appearance: none;
  -webkit-appearance: none;
}

.color-picker-v47-range [data-picker-hue]::-webkit-slider-thumb {
  width: 22px;
  height: 22px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #111;
  box-shadow: 0 0 0 1px #111;
  cursor: ew-resize;
  appearance: none;
  -webkit-appearance: none;
}

.color-picker-v47-range [data-picker-hue]::-moz-range-thumb {
  width: 16px;
  height: 16px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #111;
  box-shadow: 0 0 0 1px #111;
  cursor: ew-resize;
}

.color-picker-v47-range input:focus-visible,
.color-picker-v47-hex input:focus-visible {
  outline: 3px solid var(--ead-accent);
  outline-offset: 3px;
}

.color-picker-v47-hex {
  display: grid;
  gap: 10px;
  margin-top: 4px;
}

.color-picker-v47-hex input {
  width: 100%;
  min-height: 48px;
  padding: 10px 12px;
  border: 1px solid #999;
  border-radius: 0;
  background: #fff;
  color: var(--ead-ink);
  font: inherit;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.color-picker-v47-hex input[aria-invalid="true"] { border-color: #b00020; }

.color-picker-v47-values {
  display: grid;
  margin: 30px 0 0;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid var(--ead-line);
  border-left: 1px solid var(--ead-line);
}

.color-picker-v47-values div {
  min-width: 0;
  padding: 16px;
  border-right: 1px solid var(--ead-line);
  border-bottom: 1px solid var(--ead-line);
}

.color-picker-v47-values dt {
  color: var(--ead-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
}

.color-picker-v47-values dd {
  margin: 7px 0 0;
  font-size: 13px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.color-picker-v47 .screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.color-wheel-v47-reference .wheel-v4-hue-key {
  width: min(calc(100% - var(--color-pad) - var(--color-pad)), 760px);
}

@media (max-width: 1000px) {
  .color-picker-v47-head,
  .color-picker-v47-grid { grid-template-columns: minmax(0, 1fr); }
  .color-picker-v47-head > p:last-child {
    grid-column: 1;
    grid-row: auto;
    margin-top: 26px;
  }
  .color-picker-v47-field-wrap {
    border-right: 0;
    border-bottom: 1px solid var(--ead-line);
  }
}

@media (max-width: 700px) {
  .color-picker-v47-head { padding: 48px 22px; }
  .color-picker-v47-head h3 { font-size: clamp(44px, 14vw, 64px); }
  .color-picker-v47-field-wrap,
  .color-picker-v47-controls { padding: 32px 22px; }
  .color-picker-v47-field { aspect-ratio: 1; }
  .color-picker-v47-swatch { min-height: 150px; }
  .color-picker-v47-values { grid-template-columns: 1fr; }
  .color-wheel-v47-reference .wheel-v4-hue-key {
    width: calc(100% - 44px);
  }
}

/* v4.4 — canonical curriculum hero system
   Point, Line, Emphasis, and Movement establish this shared architecture.
   Page-specific curriculum content remains free to determine natural height. */
.pilot-hero {
  padding: clamp(82px, 10vw, 150px) 0 clamp(66px, 8vw, 112px);
  border-bottom: 1px solid var(--ead-line);
}

.pilot-hero .content-wrap.wide {
  width: min(calc(100% - 48px), var(--ead-wide));
  margin-inline: auto;
  padding: 0;
}

.pilot-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr);
  gap: clamp(56px, 8vw, 124px);
  align-items: end;
}

.pilot-hero .eyebrow {
  margin: 0;
  color: var(--ead-accent);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.pilot-hero h1,
.typography-page .type-hero h1 {
  max-width: 100%;
  margin: 12px 0 22px;
  font-size: clamp(86px, 12vw, 176px);
  font-weight: 700;
  line-height: .8;
  letter-spacing: -.078em;
}

.pilot-hero .pilot-deck {
  max-width: 800px;
  margin: 0;
  font-size: clamp(25px, 3vw, 43px);
  font-weight: 650;
  line-height: 1.08;
  letter-spacing: -.046em;
}

.pilot-hero .pilot-orientation {
  max-width: 650px;
  color: var(--ead-muted);
  font-size: clamp(17px, 1.55vw, 22px);
  line-height: 1.58;
}

.pilot-hero .pilot-orientation p { margin: 0 0 1.15em; }
.pilot-hero .pilot-orientation p:last-child { margin-bottom: 0; }
.pilot-hero .pilot-orientation strong { color: var(--ead-ink); }

/* Longer names use the same hierarchy at a size that respects the shared
   first column instead of forcing a different grid. */
.proportion-page .pilot-hero h1,
.unity-page .pilot-hero h1,
.typography-page .type-hero h1 {
  font-size: clamp(72px, 8.7vw, 132px);
  line-height: .84;
}

/* Retire the former Typography hero exception without affecting its anatomy
   or any content below the hero boundary. */
.typography-page .type-hero {
  padding: clamp(82px, 10vw, 150px) 0 clamp(66px, 8vw, 112px);
  border-bottom: 1px solid var(--ead-line);
}

@media (max-width: 820px) {
  .pilot-hero,
  .typography-page .type-hero {
    padding-top: 52px;
    padding-bottom: 58px;
  }

  .pilot-hero .content-wrap.wide {
    width: min(calc(100% - 40px), var(--ead-wide));
  }

  .pilot-hero-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
  }

  .pilot-hero h1,
  .typography-page .type-hero h1 {
    font-size: clamp(56px, 18vw, 78px);
    line-height: .84;
    letter-spacing: -.065em;
  }

  .proportion-page .pilot-hero h1,
  .unity-page .pilot-hero h1,
  .typography-page .type-hero h1 {
    font-size: clamp(48px, 15vw, 68px);
    line-height: .88;
  }

  .pilot-hero .pilot-deck { font-size: clamp(23px, 6.4vw, 29px); }
  .pilot-hero .pilot-orientation { font-size: 17px; }
}

@media (max-width: 360px) {
  .pilot-hero .content-wrap.wide {
    width: min(calc(100% - 32px), var(--ead-wide));
  }

  .pilot-hero h1 { font-size: 56px; }

  .proportion-page .pilot-hero h1,
  .unity-page .pilot-hero h1,
  .typography-page .type-hero h1 { font-size: 48px; }
}

/* v4.8 — first-study pacing
   The relocated Color study had both the legacy lab-wrapper inset and the
   canonical curriculum section inset above its heading. Keep the legacy
   horizontal/bottom framing, but use the shared curriculum start space once. */
.curriculum-first-study { padding-top: 0; }
.curriculum-first-study > .color-v4-section-head {
  padding-top: var(--curriculum-section-start-space);
}

/* v4.14 — Contact page */
.contact-hero {
  padding: clamp(76px, 9vw, 150px) var(--publication-pad) clamp(66px, 7vw, 108px);
  border-bottom: 1px solid var(--ead-line);
}
.contact-hero h1 {
  margin: 0;
  font-size: clamp(76px, 10vw, 158px);
  line-height: .86;
}
.contact-hero > p:not(.eyebrow) {
  max-width: 760px;
  margin: 42px 0 0;
  color: var(--ead-muted);
  font-size: clamp(19px, 1.8vw, 27px);
  line-height: 1.55;
}
.contact-layout {
  display: grid;
  grid-template-columns: minmax(220px, .62fr) minmax(0, 1.38fr);
}
.contact-side {
  padding: clamp(60px, 6vw, 100px) var(--publication-pad);
  border-right: 1px solid var(--ead-line);
  color: var(--ead-accent);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
}
.contact-main {
  width: 100%;
  padding: clamp(60px, 6vw, 100px) var(--publication-pad) clamp(92px, 9vw, 150px);
}
.contact-form, .contact-feedback { max-width: 760px; }
.contact-field { margin-bottom: 34px; }
.contact-field label {
  display: block;
  margin-bottom: 12px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.contact-field input, .contact-field textarea {
  display: block;
  width: 100%;
  padding: 17px 18px;
  border: 1px solid #bdbdbd;
  border-radius: 0;
  background: #fff;
  color: var(--ead-ink);
  font: inherit;
  font-size: 18px;
  line-height: 1.5;
}
.contact-field textarea { min-height: 210px; resize: vertical; }
.contact-field input:focus-visible, .contact-field textarea:focus-visible,
.contact-submit:focus-visible {
  outline: 3px solid var(--ead-accent);
  outline-offset: 3px;
}
.contact-field [aria-invalid="true"] { border-color: #8b2331; }
.contact-field-error { margin: 8px 0 0; color: #8b2331; font-size: 14px; }
.contact-submit {
  display: inline-flex;
  min-height: 58px;
  padding: 16px 22px;
  align-items: center;
  gap: 26px;
  border: 0;
  border-radius: 0;
  background: var(--ead-ink);
  color: #fff;
  font: inherit;
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
}
.contact-submit:hover { background: var(--ead-accent); }
.contact-feedback {
  margin-bottom: 38px;
  padding: 28px 32px;
  border-left: 4px solid var(--ead-accent);
  background: var(--ead-soft);
}
.contact-feedback h2 { margin: 0 0 12px; font-size: clamp(30px, 3vw, 44px); line-height: 1.1; }
.contact-feedback p { margin: 0; color: var(--ead-muted); line-height: 1.65; }
.contact-error { border-left-color: #8b2331; }
.contact-honeypot {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
@media (max-width: 900px) {
  .contact-layout { grid-template-columns: minmax(0, 1fr); }
  .contact-side { padding: 28px var(--publication-pad); border-right: 0; border-bottom: 1px solid var(--ead-line); }
  .contact-main { padding-top: 48px; }
}
@media (max-width: 620px) {
  .contact-hero { padding-bottom: 58px; }
  .contact-hero h1 { font-size: clamp(60px, 15vw, 90px); }
  .contact-hero > p:not(.eyebrow) { margin-top: 32px; font-size: 17px; }
  .contact-main { padding-bottom: 90px; }
  .contact-field input, .contact-field textarea { font-size: 16px; }
}

/* v4.15 — Shared desktop hero start and natural text measure.
   The home hero's lower padding and the article body's reading measure remain intact. */
@media (min-width: 1101px) {
  :root { --ead-desktop-hero-start: clamp(40px, 5.2vw, 78px); }

  .home-intro,
  .page-hero,
  .elements-hero,
  .principles-hero,
  .explore-hero,
  .tools-hero,
  .resources-hero,
  .pilot-hero,
  .typography-page .type-hero,
  .deep-hero,
  .color-v4-hero,
  .publication-hero,
  .legal-hero,
  .contact-hero {
    padding-top: var(--ead-desktop-hero-start);
  }

  /* These heroes already own their outer inset; the content wrapper's
     default top inset was adding a second block of whitespace. */
  .explore-hero .content-wrap,
  .tools-hero .content-wrap,
  .resources-hero .content-wrap,
  .color-v4-hero .content-wrap {
    padding-top: 0;
  }

  /* A fixed minimum height otherwise centers shorter publication titles
     back down after the top inset has been corrected. */
  .publication-hero { min-height: 0; }

  /* Retain the two-column Resources grid and its gap while letting the
     short statement occupy its natural measure. */
  .resources-hero-grid {
    grid-template-columns: minmax(0, 1.55fr) minmax(min(400px, 30vw), .65fr);
  }

  .page-hero h1,
  .entry-header h1,
  .page-hero p:not(.article-byline),
  .elements-hero h1,
  .principles-hero h1,
  .explore-hero h1,
  .explore-intro > p:first-child,
  .tools-hero h1,
  .tools-hero-copy,
  .resources-hero h1,
  .resources-lede,
  .pilot-hero .pilot-deck,
  .pilot-hero .pilot-orientation,
  .deep-intro,
  .color-v4-lede,
  .publication-hero h1,
  .publication-hero-deck,
  .legal-hero h1,
  .legal-deck,
  .contact-hero > p:not(.eyebrow) {
    max-width: none;
  }

  /* The blog index has no hero; its reading column keeps its width. */
  body.blog > .content-wrap,
  body.archive > .content-wrap,
  body.search > .content-wrap {
    padding-top: 36px;
  }
}
