/* One site, two levels of expression. */
.simple-copy { display:none; }
.header { gap:28px; }
.header nav { margin-left:auto; gap:28px; }
.mode-switch { display:flex;align-items:center;gap:12px;background:#151515;color:#fff;border:1px solid #151515;padding:14px 18px;min-height:46px;white-space:nowrap;font-size:12px;box-shadow:4px 4px 0 var(--yellow);transition:background .2s,color .2s; }
.mode-switch:hover { background:var(--yellow);color:#111; }
.mode-icon { display:flex;gap:2px;width:18px;height:17px;align-items:center; }
.mode-icon i { width:4px;height:15px;background:currentColor;transform:translateY(-3px); }
.mode-icon i:nth-child(2) { transform:translateY(3px);height:10px; }
.mode-icon i:nth-child(3) { height:6px; }
.mode-arrow { font-size:18px; }
.project-proof { font-size:25px;letter-spacing:-.04em;margin-bottom:20px; }
.project-proof span { display:block;font-size:10px;letter-spacing:0;color:#666;margin-top:4px; }
.project-info h3 { font-weight:600; }
.project-info .text-link { color:#111;border-color:#111;font-weight:600; }
.extra-ornaments { position:absolute;inset:0;pointer-events:none;z-index:7; }
.orbit-square { position:absolute;top:5%;right:7%;width:105px;height:105px;transform:translate(var(--pointer-x,0px),var(--pointer-y,0px)); }
.orbit-square i { position:absolute;inset:0;border:1px solid #111;animation:orbit 22s linear infinite; }
.orbit-square i:nth-child(2) { inset:17px;background:#fff20088;animation-direction:reverse;animation-duration:15s; }
.orbit-square i:nth-child(3) { inset:36px;background:#111;animation-duration:10s; }
.ruler-strip { position:absolute;left:-9%;bottom:17%;height:22px;width:109%;background:repeating-linear-gradient(90deg,#111 0 1px,transparent 1px 12px);border-block:1px solid #111;opacity:.45; }
.print-stamp { position:absolute;right:11%;bottom:28%;padding:18px;border:2px solid #111;outline:1px solid #111;outline-offset:4px;background:var(--yellow);font-size:11px;line-height:1.7;transform:rotate(-8deg);animation:stamp-float 6s ease-in-out infinite; }
.ink-swatch { position:absolute;bottom:3%;left:-10%;display:flex;gap:5px; }
.ink-swatch i { width:30px;height:35px;background:#111;animation:swatch 5s ease-in-out infinite alternate; }
.ink-swatch i:nth-child(2) { background:#888;animation-delay:-1s; }
.ink-swatch i:nth-child(3) { background:var(--yellow);animation-delay:-2s; }
.ink-swatch i:nth-child(4) { background:transparent;border:1px solid #111;animation-delay:-3s; }
.crosshair { position:absolute;font-family:monospace;font-size:62px;font-weight:400;line-height:1;animation:orbit 18s linear infinite; }
.crosshair-a { top:37%;left:9%; }
.crosshair-b { bottom:5%;right:7%;font-size:38px;animation-direction:reverse; }
.micro-note { position:absolute;left:28%;bottom:4%;font-size:8px; }
[data-mode=expressive] .art-grid { background-size:12.5% 12.5%;animation:grid-drift 14s linear infinite; }
[data-mode=expressive] .hero:after { content:'';position:absolute;bottom:0;left:0;right:0;height:9px;background:repeating-linear-gradient(90deg,#111 0 25px,var(--yellow) 25px 50px,transparent 50px 75px); }
[data-mode=expressive] .project-art:after { content:'+';position:absolute;right:15px;top:12px;font-family:monospace;font-size:34px;line-height:1;animation:orbit 20s linear infinite; }
[data-mode=expressive] .project-index { background:var(--yellow);padding:5px 8px;left:16px;top:15px;border:1px solid #111; }
[data-mode=expressive] .project-art .art-outline { box-shadow:14px 14px 0 -1px #eee,14px 14px 0 #111; }
[data-mode=expressive] .work-section { background-image:radial-gradient(#1112 .6px,transparent .6px);background-size:9px 9px; }
[data-mode=expressive] .section-heading,[data-mode=expressive] .project-info,[data-mode=expressive] .work-toolbar { background:#fff; }
.work-callout { margin-top:40px;border-block:1px solid #111;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 15px;background:var(--yellow); }
.work-callout .mono { font-size:9px; }
.work-callout + .work-toolbar { margin-top:15px; }
.signal-bars { display:flex;height:20px;align-items:center;gap:4px; }
.signal-bars i { width:4px;height:100%;background:#111;animation:signal 1.8s ease-in-out infinite alternate; }
.signal-bars i:nth-child(2) { animation-delay:-.3s; }.signal-bars i:nth-child(3) { animation-delay:-.7s; }.signal-bars i:nth-child(4) { animation-delay:-1.1s; }.signal-bars i:nth-child(5) { animation-delay:-1.5s; }
.interlude { position:relative;display:flex;justify-content:space-between;align-items:center;background:var(--yellow);padding:26px 7%;overflow:hidden;border-bottom:1px solid #111;gap:30px; }
.interlude>span { position:relative;z-index:2;font-size:clamp(25px,4.2vw,64px);font-weight:600;letter-spacing:-.06em;white-space:nowrap; }
.interlude-grid { position:absolute;inset:-100px 30%;border:1px solid #111;background:repeating-linear-gradient(90deg,transparent 0 24px,#111 24px 25px);transform:rotate(35deg);animation:interlude-sway 12s ease-in-out infinite alternate;opacity:.3; }
@keyframes orbit { to { rotate:360deg; } }
@keyframes stamp-float { 50% { transform:translateY(-14px) rotate(-3deg); } }
@keyframes swatch { to { transform:translateY(-16px); } }
@keyframes signal { to { transform:scaleY(.2); } }
@keyframes grid-drift { to { background-position:120px 80px; } }
@keyframes interlude-sway { to { transform:translateX(70px) rotate(55deg); } }
::view-transition-old(root) { animation:layout-out .22s ease both; }
::view-transition-new(root) { animation:layout-in .35s ease both; }
@keyframes layout-out { to { opacity:0;filter:blur(3px); } }
@keyframes layout-in { from { opacity:0;transform:translateY(10px); } }

/* The simple layout is intentionally rebuilt around the projects. */
[data-mode=simple] { scroll-behavior:auto; }
/* Ambient animation stops; deliberate state transitions live in simple.css. */
[data-mode=simple] *,[data-mode=simple] *:before,[data-mode=simple] *:after { animation:none!important; }
[data-mode=simple] .expressive-copy,[data-mode=simple] .hero-rail,[data-mode=simple] .hero-art,[data-mode=simple] .hero-top,[data-mode=simple] .hero-caption,[data-mode=simple] .ticker,[data-mode=simple] .extra-ornaments,[data-mode=simple] .work-callout,[data-mode=simple] .interlude,[data-mode=simple] .art-outline,[data-mode=simple] .project-index,[data-mode=simple] .project-open,[data-mode=simple] .about-geometry,[data-mode=simple] .journal-mark,[data-mode=simple] .reading-progress,[data-mode=simple] .identity-dot { display:none; }
[data-mode=simple] .simple-copy { display:inline; }
[data-mode=simple] .header { height:82px;background:white;backdrop-filter:none;padding-inline:6%; }
[data-mode=simple] .mode-switch { background:white;color:#111;box-shadow:none;font-size:11px;padding:11px 14px; }
[data-mode=simple] .mode-switch:hover { background:#f3f3f3; }
[data-mode=simple] .mode-icon i { height:3px;transform:none; }
[data-mode=simple] .mode-arrow { display:none; }
[data-mode=simple] .hero { display:block;height:auto;min-height:0;max-height:none;border-bottom:1px solid #e6e6e6; }
[data-mode=simple] .hero-content { padding:42px 6% 36px;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center; }
[data-mode=simple] .hero h1 { font-size:clamp(32px,3.6vw,52px);line-height:1.08;letter-spacing:-.055em;margin:0;max-width:520px; }
[data-mode=simple] .hero h1>span { display:inline; }
[data-mode=simple] .hero h1>span:not(:last-child):after { content:' '; }
[data-mode=simple] .hero h1 .highlight { white-space:normal; }
[data-mode=simple] .hero h1 .highlight:before { display:none; }
[data-mode=simple] .hero-intro p { font-size:15px;max-width:440px;color:#555; }
[data-mode=simple] .hero-intro .button { display:none; }
[data-mode=simple] .section-pad { padding:48px 6%; }
[data-mode=simple] .section-heading { display:flex;justify-content:space-between;align-items:center;gap:20px; }
[data-mode=simple] .section-heading .eyebrow,[data-mode=simple] .section-heading>p,[data-mode=simple] .work-toolbar>.mono { display:none; }
[data-mode=simple] .section-heading h2 { font-size:32px;margin:0;line-height:1.2; }
[data-mode=simple] .work-toolbar { padding:0;margin-top:20px;border:0; }
[data-mode=simple] .filters { gap:8px; }
[data-mode=simple] .filters button { border:1px solid #ddd;padding:8px 13px; }
[data-mode=simple] .filters button.active { background:#111;color:#fff;border-color:#111; }
[data-mode=simple] .project-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:25px; }
[data-mode=simple] .project-card { grid-column:auto;min-width:0;margin:0; }
[data-mode=simple] .project-link,[data-mode=simple] .featured .project-link { display:flex;flex-direction:column;height:100%;border:1px solid #ddd;background:white; }
[data-mode=simple] .project-link:hover { border-color:#111;outline:1px solid #111;outline-offset:-1px; }
[data-mode=simple] .project-art,[data-mode=simple] .featured .project-art { height:220px;min-height:0;padding:18px;background:#f3f4f4;border-bottom:1px solid #e5e5e5; }
[data-mode=simple] .project-art:before,[data-mode=simple] .project-art:after { display:none; }
[data-mode=simple] .image-window { box-shadow:none;transform:none;clip-path:none!important;background:transparent; }
[data-mode=simple] .project-info,[data-mode=simple] .featured .project-info { padding:24px;display:flex;flex-direction:column;flex:1;justify-content:flex-start; }
[data-mode=simple] .project-proof { order:3;margin:20px 0 0;padding-top:18px;border-top:1px solid #eee;font-size:24px; }
[data-mode=simple] .project-proof span { display:inline;margin-left:5px;font-size:11px; }
[data-mode=simple] .project-info>.mono { order:0;font-size:9px; }
[data-mode=simple] .project-info>.mono>span { display:block; }
[data-mode=simple] .project-info h3,[data-mode=simple] .featured .project-info h3 { order:1;font-size:25px;font-weight:600;max-width:none;margin:14px 0;letter-spacing:-.035em; }
[data-mode=simple] .project-info h3>span { display:none; }
[data-mode=simple] .project-info p { order:2;font-size:13px;color:#555; }
[data-mode=simple] .project-info .text-link { order:4;display:flex;width:100%;margin-top:auto;padding:24px 0 0;border:0;font-size:13px; }
[data-mode=simple] .project-info .text-link span { transform:none; }
[data-mode=simple] .reveal { opacity:1;transform:none; }
[data-mode=simple] .about-section { background:#f6f6f5;color:#111;padding:40px 6%;border-top:1px solid #ddd; }
[data-mode=simple] .about-top { border:0;padding:0;color:#666; }
[data-mode=simple] .about-top>span:last-child { display:none; }
[data-mode=simple] .about-main { padding:25px 0 0;grid-template-columns:1fr 1.3fr;gap:60px; }
[data-mode=simple] .about-title h2 { font-size:36px; }
[data-mode=simple] .about-title h2 em { color:#111; }
[data-mode=simple] .about-copy p { color:#555;font-size:14px; }
[data-mode=simple] .about-copy .large-copy { color:#111;font-size:19px; }
[data-mode=simple] .light-link { color:#111; }
[data-mode=simple] .capabilities { border-color:#ddd;margin-top:30px; }
[data-mode=simple] .capabilities>div { padding-block:20px 0;border-color:#ddd; }
[data-mode=simple] .capabilities .mono,[data-mode=simple] .capabilities p { display:none; }
[data-mode=simple] .capabilities h3 { margin:0;font-size:14px; }
[data-mode=simple] .journal-section { gap:60px; }
[data-mode=simple] .journal-heading h2 { font-size:32px;margin-block:18px; }
[data-mode=simple] .note-row { padding:22px 0; }
[data-mode=simple] .note-row h3 { font-size:23px; }
[data-mode=simple] .contact-section { background:white;gap:60px; }
[data-mode=simple] .contact-intro h2 { font-size:42px; }
[data-mode=simple] .contact-intro h2>span { background:none;padding:0; }
[data-mode=simple] .eyebrow i { display:none; }
[data-mode=simple] .button-dark:hover { background:#333;color:white;transform:none; }
[data-mode=simple] .case-hero .eyebrow { margin-top:35px; }
[data-mode=simple] .case-hero h1 { font-size:clamp(40px,5vw,68px); }
[data-mode=simple] .case-deck { font-size:18px; }
[data-mode=simple] .case-cover { background:#f3f3f3;padding:35px 10%; }
[data-mode=simple] .case-cover img { box-shadow:none; }
[data-mode=simple] .case-section { padding:50px 6%; }
[data-mode=simple] .case-section h2 { font-size:34px; }
[data-mode=simple] .next-project { background:#f3f3f3;color:#111; }
[data-mode=simple] .next-project h2 { font-size:38px; }
[data-mode=simple] .next-project:hover h2 { color:#555; }
[data-mode=simple] .note-main h1 { font-size:clamp(40px,5vw,65px); }
@media(max-width:1100px) {
  .header { gap:20px; }.header nav { gap:20px; }.nav-contact { border:0;padding-left:0;gap:15px; }
  .mode-switch { padding:12px;gap:8px; }
  [data-mode=simple] .project-grid { gap:16px; }
  [data-mode=simple] .project-info,[data-mode=simple] .featured .project-info { padding:18px; }
  [data-mode=simple] .project-art,[data-mode=simple] .featured .project-art { height:185px;padding:12px; }
}
@media(max-width:760px) {
  .header,[data-mode=simple] .header { height:112px;flex-wrap:wrap;padding:14px 6% 10px;gap:10px;align-content:center; }
  .header .identity { flex:1; }.header nav { order:3;flex-basis:100%;justify-content:flex-start;margin:0;gap:24px; }
  .header nav a:nth-child(2) { display:inline; }.header .nav-contact { margin-left:auto; }
  .mode-switch { min-height:34px;padding:8px 11px;font-size:11px;box-shadow:3px 3px 0 var(--yellow); }
  [data-mode=simple] .mode-switch { font-size:10px;padding:8px;gap:7px; }
  [data-mode=simple] .mode-icon { display:none; }
  .mode-icon { width:14px;height:13px; }.mode-icon i { width:3px; }
  .mode-arrow { display:none; }
  html { scroll-padding-top:130px; }
  .orbit-square { width:75px;height:75px;top:12%;right:7%; }.orbit-square i:nth-child(3) { inset:28px; }
  .print-stamp { font-size:9px;padding:12px;right:12%;bottom:25%; }
  .ink-swatch { left:7%; }.ink-swatch i { width:20px;height:24px; }
  .micro-note { left:46%;bottom:4%; }.crosshair-a { font-size:45px; }
  .work-callout { margin-top:25px;padding:12px 10px; }.work-callout .mono { font-size:8px; }.work-callout>span:last-child { display:none; }
  .interlude { padding:25px 6%;gap:15px; }.interlude>span { font-size:26px; }
  [data-mode=simple] .hero-content { display:block;padding:28px 6%; }
  [data-mode=simple] .hero h1 { font-size:32px;max-width:350px; }
  [data-mode=simple] .hero-intro { max-width:none;margin-top:15px; }
  [data-mode=simple] .hero-intro p { font-size:13px; }
  [data-mode=simple] .desktop-break { display:none; }
  [data-mode=simple] .section-pad { padding:30px 6%; }
  [data-mode=simple] .section-heading h2 { font-size:28px; }
  [data-mode=simple] .filters { gap:5px; }.filters button { padding:7px; }
  [data-mode=simple] .filters button { padding:7px 8px;font-size:9px; }
  [data-mode=simple] .project-grid { grid-template-columns:1fr;gap:20px;margin-top:20px; }
  [data-mode=simple] .project-art,[data-mode=simple] .featured .project-art { height:215px;padding:16px; }
  [data-mode=simple] .project-info,[data-mode=simple] .featured .project-info { padding:20px; }
  [data-mode=simple] .about-section { padding:30px 6%; }
  [data-mode=simple] .about-main { display:block; }.about-title { margin-bottom:25px; }
  [data-mode=simple] .about-title h2 { font-size:30px; }
  [data-mode=simple] .capabilities>div { padding:16px 8px!important; }
  [data-mode=simple] .contact-intro h2 { font-size:38px; }
  [data-mode=simple] .case-hero h1 { font-size:40px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after { animation:none!important;transition:none!important; }
  .orbit-square { transform:none; }
  ::view-transition-old(root),::view-transition-new(root) { animation:none!important; }
}
