:root{--paper:#fcf1d8;--ink:#351a2a;--line:#351a2a55;--gold:#e4b566}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid #7c4324;outline-offset:5px}header{max-width:1440px;margin:auto;padding:0 clamp(20px,4vw,64px)}header>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0}header a{text-decoration:none}header strong{font-size:clamp(16px,2vw,23px);letter-spacing:-.04em}nav{display:flex;gap:clamp(12px,3vw,36px)}header a:hover{text-decoration:underline}h1{font-size:clamp(42px,7.5vw,100px);line-height:.97;letter-spacing:-.07em;margin:0;font-weight:750}.home{text-align:center;padding:26px 12px 30px}.atlas{width:min(100%,1000px);height:min(65vw,64svh,650px);min-height:320px;position:relative;margin:12px auto 0}.sphere{height:95%;aspect-ratio:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);max-width:94%;height:auto;width:min(58vw,61svh,615px);border-radius:50%;overflow:hidden;background:#e5cf9e;box-shadow:0 0 0 1px #79583070;cursor:grab;touch-action:none}.sphere:active{cursor:grabbing}canvas{width:100%;display:block;aspect-ratio:1}.markers{position:absolute;inset:0;pointer-events:none}.pin{position:absolute;pointer-events:auto;transform:translateX(-50%);background:var(--ink);color:var(--paper);border:2px solid var(--ink);padding:clamp(6px,1vw,12px) clamp(8px,1.45vw,20px);min-height:36px;align-content:center;white-space:nowrap;text-decoration:none;font:normal clamp(12px,1.4vw,18px)/1 Arial,sans-serif;box-shadow:0 4px 10px #351a2a18}.pin::before{content:"";position:absolute;bottom:100%;left:50%;width:7px;height:7px;transform:translate(-50%,-5px);border-radius:50%;background:var(--ink);border:1px solid var(--paper)}.pin:hover,.pin:focus-visible{background:#512a40;z-index:2}.hint{font:italic 17px Georgia,serif;margin:8px 0 15px}.rotate{display:flex;justify-content:center;gap:7px}.rotate button{background:transparent;color:inherit;border:1px solid var(--line);border-radius:50%;width:36px;height:36px;font-size:17px;cursor:pointer}.rotate button:hover{background:#351a2a12}.paper{max-width:920px;margin:0 auto;padding:clamp(35px,7vw,92px) 24px 80px}.intro,.paper p,.paper li{font:clamp(17px,1.5vw,20px)/1.55 Georgia,serif}.intro{max-width:680px;margin:24px 0 45px}.paper section{border-top:1px solid var(--line);padding:24px 0}.paper h2{font-size:clamp(23px,4vw,40px);letter-spacing:-.04em;margin:0 0 8px}.paper p{max-width:690px;margin:0 0 15px}.index a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;padding:17px 0;border-top:1px solid var(--line);font:clamp(22px,4vw,34px) Georgia,serif}.index a:hover{color:#87482e}.timeline section{display:grid;grid-template-columns:90px 1fr;gap:14px}.paper figure{margin:24px 0}.paper img,.paper video{display:block;max-width:100%;height:auto}.paper audio{width:min(100%,450px)}.feature{padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:block;font:26px Georgia,serif}
@media(max-width:650px){.atlas{height:102vw;min-height:0;max-height:490px}.sphere{width:min(87vw,440px)}.home{padding-top:33px}.hint{font-size:15px}.timeline section{grid-template-columns:57px 1fr}.timeline h2{font-size:21px}}

/* Atlas cover */
header .header-brand {position:relative;text-decoration:none;}
header .header-brand:hover,header .header-brand:focus-visible {text-decoration:none;}
.header-emoji {font-size:34px;line-height:1;position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);opacity:0;pointer-events:none;}
.header-brand:hover .header-emoji,.header-brand:focus-visible .header-emoji {opacity:1;}

.home {
  --globe-diameter: min(88vw, 85svh, 920px);
  padding: clamp(18px, 3vw, 38px) 12px 30px;
  isolation: isolate;
}
.atlas {
  width: min(100%, 1200px);
  height: calc(var(--globe-diameter) + 36px);
  min-height: 0;
  max-height: none;
  margin: 0 auto;
}
.sphere {width:var(--globe-diameter);max-width:none;}
.rotate {margin-top:5px;}
/* Shared editorial pages */
.paper {max-width:1200px;padding:clamp(32px,6vw,82px) clamp(20px,5vw,70px) 80px;}
.page-heading {display:block;padding:0 0 clamp(27px,5vw,56px);margin-bottom:clamp(22px,4vw,44px);border-bottom:1px solid var(--ink);}
.page-heading h1 {font-size:clamp(38px,6.8vw,94px);}
.page-heading .intro {margin:20px 0 0;font-size:clamp(17px,1.5vw,20px);line-height:1.4;}
.paper > section {display:grid;grid-template-columns:minmax(140px,.65fr) minmax(0,1fr);column-gap:clamp(20px,6vw,80px);align-items:start;}
.paper > section > :not(h2) {grid-column:2;}
.paper > section:first-of-type {border-top:0;}
.paper > section > ul {margin-top:0;padding-left:22px;}
.paper .button {display:inline-flex;gap:18px;align-items:center;width:fit-content;padding:10px 14px;background:var(--ink);color:var(--paper);font:700 13px/1.25 Arial,sans-serif;text-decoration:none;}
.paper .button:hover {background:#512a40;}
.feature {font-size:clamp(24px,4vw,38px);text-decoration:none;}
.feature:hover {text-decoration:underline;}
.index a {padding:20px 0;}
.index a:first-child {border-top:0;}

.story-bio {display:grid;grid-template-columns:1.25fr .85fr;gap:clamp(24px,6vw,80px);align-items:center;padding:26px 0 44px;}
.story-bio h2 {font:normal clamp(30px,5vw,57px)/1 Georgia,serif;}
.story-bio .portrait-slot {display:grid;place-items:center;aspect-ratio:4/5;max-height:360px;margin:0;background:#e9d6b4;border:1px solid var(--line);outline:1px solid var(--line);outline-offset:-10px;color:var(--ink);font:italic 16px Georgia,serif;}
.story-chapters {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,4vw,44px);margin-bottom:30px;}
.story-chapters h2 {font:normal clamp(25px,3.5vw,36px)/1.08 Georgia,serif;}

.paper > .timeline-section {display:block;border-top:0;padding-top:40px;}
/* Milestones sit around a broad, wandering path rather than a central axis. */
.journey-stage {position:relative;margin-top:64px;height:1460px;}
.journey-line {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;color:var(--ink);}
.journey-track {fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;}
.journey-dot {fill:var(--ink);stroke:var(--ink);stroke-width:.6;stroke-linejoin:round;vector-effect:non-scaling-stroke;}
.journey-mobile {display:none;}
.journey-list {list-style:none;margin:0;padding:0;}
.journey-list li {position:absolute;width:30%;}
.journey-list li:nth-child(1) {left:11%;top:0;}
.journey-list li:nth-child(2) {left:7%;top:500px;}
.journey-list li:nth-child(3) {left:55%;top:65px;width:36%;}
.journey-list li:nth-child(4) {left:71%;top:700px;width:28%;}
.journey-list li:nth-child(5) {left:4%;top:1000px;}
.journey-list li:nth-child(6) {left:61%;top:1190px;width:36%;}
.journey-list h3 {font:normal clamp(36px,4.2vw,52px)/1 Georgia,serif;letter-spacing:-.055em;margin:0 0 18px;}
.paper .journey-list p {font-size:17px;line-height:1.5;margin:0;}
.timeline-section.is-visible .journey-track {animation:journey-draw 1.4s ease both;}
@keyframes journey-draw {from {opacity:0;}to {opacity:1;}}
@media(max-width:760px) {
  .journey-stage {height:auto;margin-top:40px;}
  .journey-desktop {display:none;}
  .journey-mobile {display:block;width:50px;}
  .journey-list li:nth-child(n) {position:relative;left:auto;top:auto;width:100%;min-height:280px;padding:32px 0 40px 64px;}
  .paper .journey-list p {font-size:17px;}
}
@media(prefers-reduced-motion:reduce) {.timeline-section.is-visible .journey-track {animation:none;}}

.project-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,3vw,30px);margin-bottom:36px;}
.project-card {display:flex;flex-direction:column;border:1px solid var(--line);scroll-margin-top:20px;}
.project-mark {display:grid;place-items:center;aspect-ratio:2.25;text-align:center;padding:12px;background:var(--ink);color:var(--paper);font:700 clamp(24px,4.3vw,55px)/.95 Georgia,serif;letter-spacing:-.045em;}
.mark-gmpc {background:#fef8bf;color:#6f3426;}
.mark-hurry-printing {background:#d2bd78;color:var(--ink);font-family:Arial,sans-serif;}
.mark-ai-tool {background:#ded4c6;color:var(--ink);font-family:Arial,sans-serif;}
.project-copy {display:flex;flex:1;flex-direction:column;align-items:start;padding:clamp(14px,2.5vw,27px);}
.project-copy h2 {font-size:clamp(22px,3.4vw,34px);}
.project-copy p {font-size:17px;line-height:1.4;}
.tags {display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0 0 18px;}
.paper .tags li {border:1px solid var(--line);color:var(--ink);padding:4px 7px;font:12px/1.1 Arial,sans-serif;}
.project-copy .button {margin-top:auto;}

@media(max-width:650px) {
  .home {--globe-diameter:min(92vw, 85svh, 920px);}
  .page-heading,.paper > section {display:block;}
  .page-heading .intro {margin-top:15px;}
  .story-bio {gap:16px;}
  .story-bio p {font-size:17px;}
}
@media(max-width:440px) {
  .story-bio,.story-chapters,.project-grid {grid-template-columns:1fr;}
  .story-bio .portrait-slot {width:min(100%,245px);}
}
.project-mark img {width:72%;max-height:80%;object-fit:contain;}
.mark-gmpc img {width:83%;}

/* The Thoughts library */
.paper > .library {display:block;padding:0;}
.library .library-hint {font:italic 16px/1.4 Georgia,serif;margin:0 0 18px;}
.bookshelf {
  --spine-width:clamp(46px,7.5vw,86px);
  --cover-width:clamp(150px,35vw,350px);
  --book-height:clamp(240px,37vw,365px);
  display:flex;
  justify-content:center;
  align-items:end;
  gap:3px;
  min-height:calc(var(--book-height) + 54px);
  padding:26px clamp(8px,3vw,40px) 0;
  border:clamp(5px,1vw,13px) solid #69402d;
  border-bottom-width:clamp(16px,3vw,32px);
  border-bottom-color:#7c4d35;
  background:radial-gradient(ellipse at 50% 90%,#4a2e28,#221617 80%);
  box-shadow:inset 0 9px 24px #0007,0 8px 0 #4b291f;
}
.thought-book,.shelf-filler {
  border-radius:5px 3px 2px 2px;
  background:linear-gradient(90deg,#0004,transparent 15%,#fff1 52%,#0003),var(--binding);
  color:#fae4ae;
  box-shadow:inset 2px 0 #fff2,inset -2px 0 #0004,2px 0 5px #0007;
}
.thought-book {
  display:block;
  text-decoration:none;
  flex:0 0 var(--spine-width);
  min-width:0;
  height:var(--book-height);
  position:relative;
  border:1px solid #d9b56d50;
  padding:0;
  cursor:pointer;
  text-align:left;
  transition:flex-basis .3s ease,transform .3s ease;
}
.volume-1 {--binding:#553044;}
.volume-2 {--binding:#354637;height:calc(var(--book-height) - 14px);}
.volume-3 {--binding:#763c30;height:calc(var(--book-height) - 4px);}
.thought-book:focus-visible,.thought-book.previewed {flex-basis:var(--cover-width);transform:translateY(-6px);}
@media(hover:hover) {.thought-book:hover {flex-basis:var(--cover-width);transform:translateY(-6px);}}
.book-spine {
  position:absolute;
  inset:10px 6px;
  display:grid;
  grid-template-rows:1fr auto;
  justify-items:center;
  align-items:center;
  gap:8px;
  padding:10px 2px;
  border-top:3px double #cba562;
  border-bottom:3px double #cba562;
  transition:opacity .15s ease;
}
.book-spine span {writing-mode:vertical-rl;transform:rotate(180deg);font:normal clamp(12px,1.6vw,17px)/1 Georgia,serif;max-height:100%;text-align:center;}
.book-spine b,.cover-no {font:11px/1 Arial,sans-serif;letter-spacing:.13em;}
.book-cover {
  position:absolute;
  inset:8px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:clamp(9px,1.5vw,19px);
  padding:clamp(9px,2vw,25px);
  border:3px double #cba562;
  opacity:0;
  visibility:hidden;
  transition:opacity .18s ease,visibility .18s;
}
.book-cover strong {font:normal clamp(17px,3.5vw,40px)/1.04 Georgia,serif;}
.cover-excerpt {font:italic clamp(12px,1.55vw,16px)/1.32 Georgia,serif;}
.cover-open {font:bold clamp(10px,1.2vw,13px)/1 Arial,sans-serif;}
.thought-book:is(:focus-visible,.previewed) .book-spine {opacity:0;}
.thought-book:is(:focus-visible,.previewed) .book-cover {opacity:1;visibility:visible;transition-delay:.09s;}
@media(hover:hover) {
  .thought-book:hover .book-spine {opacity:0;}
  .thought-book:hover .book-cover {opacity:1;visibility:visible;transition-delay:.09s;}
  .bookshelf:has(.thought-book:hover) .thought-book:focus-visible:not(:hover):not(.previewed) {flex-basis:var(--spine-width);transform:none;}
  .bookshelf:has(.thought-book:hover) .thought-book:focus-visible:not(:hover):not(.previewed) .book-cover {opacity:0;visibility:hidden;}
  .bookshelf:has(.thought-book:hover) .thought-book:focus-visible:not(:hover):not(.previewed) .book-spine {opacity:1;}
}
.shelf-filler {
  flex:0 1 clamp(34px,6vw,80px);
  height:calc(var(--book-height) - 35px);
  position:relative;
}
.shelf-filler::after {
  content:"";
  position:absolute;
  inset:14px 5px;
  border-top:5px double #cba562aa;
  border-bottom:5px double #cba562aa;
  background:repeating-linear-gradient(0deg,transparent 0 35px,#cba56260 35px 36px,transparent 36px 39px,#cba56260 39px 40px);
}
.filler-one {--binding:#765632;height:calc(var(--book-height) - 55px);}
.filler-two {--binding:#344653;}
.filler-three {--binding:#8a6947;height:calc(var(--book-height) - 27px);}
.filler-four {--binding:#414836;height:calc(var(--book-height) - 59px);}

@media(max-width:650px) {
  .bookshelf {--spine-width:clamp(39px,10vw,58px);--cover-width:clamp(145px,49vw,245px);}
  .filler-one,.filler-four {display:none;}
}
@media(max-width:435px) {.shelf-filler {display:none;}}
@media(prefers-reduced-motion:reduce) {
  .thought-book,.book-cover,.book-spine {transition:none;}
}

.touch-hint {display:none;}
@media(hover:none) {.mouse-hint {display:none;}.touch-hint {display:inline;}}

/* Full-bleed site directory */
.site-footer {background:var(--ink);color:var(--paper);}
.footer-inner {
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);
  gap:clamp(35px,7vw,112px);
  max-width:1440px;
  margin:auto;
  padding:clamp(44px,7vw,106px) clamp(20px,4vw,64px);
}
.footer-name {
  display:block;
  width:fit-content;
  margin:0 0 clamp(32px,6vw,76px);
  font:normal clamp(43px,5.7vw,88px)/.95 Georgia,serif;
  letter-spacing:-.065em;
  text-decoration:none;
}
.footer-aside {display:grid;align-content:start;gap:clamp(30px,5vw,64px);}
.footer-group {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:12px clamp(14px,3vw,40px);
}
.footer-group h2 {margin:0;font:normal 13px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:.09em;}
.footer-group ul {display:grid;justify-items:end;gap:10px;list-style:none;margin:0;padding:0;text-align:right;}
.footer-group li {min-width:0;}
.footer-group a {font-size:15px;line-height:1.35;overflow-wrap:anywhere;}
.footer-explore ul {grid-template-columns:repeat(2,minmax(0,1fr));}
.footer-socials a {display:inline-flex;align-items:center;gap:8px;}
.footer-socials svg {width:15px;height:15px;flex:none;}
.site-footer a:focus-visible {outline-color:var(--paper);}
@media(max-width:760px) {
  .footer-inner {grid-template-columns:1fr;}
  .footer-name {font-size:clamp(39px,10vw,72px);}
  .footer-explore ul {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:440px) {
  .footer-explore ul {grid-template-columns:1fr;}
}

.header-name {
  font:normal clamp(24px,3.3vw,40px)/.95 Georgia,serif;
  letter-spacing:-.065em;
}
.footer-group .footer-socials {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.footer-socials a {
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:1px solid #fcf1d866;
}
.footer-socials a:hover {background:#fcf1d81a;}
.footer-socials svg {width:18px;height:18px;}

.contact-form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  max-width:750px;
}
.contact-form label {display:grid;gap:8px;font-weight:700;}
.contact-wide {grid-column:1/-1;}
.contact-form input,.contact-form textarea {
  width:100%;
  border:1px solid var(--line);
  border-radius:0;
  padding:12px;
  background:#fff7e7;
  color:var(--ink);
  font:16px/1.4 Arial,sans-serif;
}
.contact-form textarea {resize:vertical;}
.contact-form button {border:0;cursor:pointer;}
.contact-email {display:inline-block;margin-top:10px;overflow-wrap:anywhere;}
@media(max-width:520px) {.contact-form {grid-template-columns:1fr;}}

/* The menu reverses the page palette while the directory is open. */
body {transition:background-color .36s ease,color .36s ease;}
body:has(.menu-drawer[open]) {
  background:#351a2a;
  color:#fcf1d8;
  overflow:hidden;
}
body:has(.menu-drawer[open]) > :is(header,main) {
  --paper:#351a2a;
  --ink:#fcf1d8;
  --line:#fcf1d866;
}
body:has(.menu-drawer[open]) :is(.timeline li,.portrait-slot,.contact-form input,.contact-form textarea) {
  background:#512a40;
}
nav.index {display:block;}
.menu-drawer {
  position:fixed;
  inset:0 0 0 auto;
  width:50%;
  height:100%;
  max-width:none;
  max-height:none;
  margin:0;
  padding:clamp(24px,5vw,72px);
  border:0;
  background:var(--paper);
  color:var(--ink);
  box-shadow:-10px 0 50px #19091142;
  overscroll-behavior:contain;
  transform:translateX(100%);
  transition:transform .42s cubic-bezier(.22,.75,.25,1), display .42s allow-discrete, overlay .42s allow-discrete;
}
.menu-drawer[open] {transform:translateX(0);}
@starting-style {.menu-drawer[open] {transform:translateX(100%);}}
.menu-drawer::backdrop {background:transparent;}
.menu-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:clamp(24px,5vw,64px);
}
.menu-heading h2 {margin:0;font:normal clamp(16px,2vw,24px)/1 Georgia,serif;}
.menu-heading form {margin:0;}
.menu-heading button {
  width:44px;
  height:44px;
  border:1px solid var(--line);
  background:transparent;
  color:inherit;
  cursor:pointer;
  font:26px/1 Arial,sans-serif;
}
.menu-links {display:grid;gap:0;}
.menu-links a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid var(--line);
  padding:clamp(14px,2vw,26px) 0;
  text-decoration:none;
  font:normal clamp(25px,4.2vw,60px)/1 Georgia,serif;
  letter-spacing:-.04em;
}
.menu-links a:last-child {border-bottom:1px solid var(--line);}
.menu-links a:hover {color:#87482e;}
@media(max-width:560px) {.menu-drawer {width:82%;}}
.menu-socials ul {display:flex;gap:8px;list-style:none;padding:0;margin:clamp(20px,4vw,38px) 0 0;}
.menu-socials a {--social-cutout:var(--paper);display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);}
.menu-socials a:hover {--social-cutout:var(--ink);background:var(--ink);color:var(--paper);}
.menu-socials svg {width:18px;height:18px;}
.menu-drawer[open] :is(.menu-links,.menu-socials) {animation:menu-reveal .34s ease-out .1s both;}
.menu-drawer[open] .menu-socials {animation-delay:.16s;}
@keyframes menu-reveal {from {opacity:0;transform:translateY(10px);}}
@media(prefers-reduced-motion:reduce) {
  body,.menu-drawer {transition:none;}
  .menu-drawer[open] :is(.menu-links,.menu-socials) {animation:none;}
}

.footer-inner {
  grid-template-columns:minmax(0,1.45fr) minmax(0,1fr) minmax(280px,1.15fr);
  gap:clamp(24px,4vw,60px);
}
.footer-playlist {min-width:0;}
.footer-playlist h2 {
  margin:0;
  font:normal 13px/1.5 Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.footer-playlist iframe {display:block;border:0;border-radius:12px;margin:12px 0 10px;}
@media(max-width:1050px) {
  .footer-inner {grid-template-columns:repeat(2,minmax(0,1fr));}
  .footer-playlist {grid-column:1/-1;max-width:540px;width:100%;}
}
@media(max-width:760px) {
  .footer-inner {grid-template-columns:1fr;}
}

.footer-gallery {
  overflow-x:auto;
  padding:16px clamp(20px,4vw,64px) 23px;
  border-top:1px solid #fcf1d84d;
  scrollbar-color:#b898a9 var(--ink);
}
.footer-gallery ul {
  display:flex;
  justify-content:safe center;
  gap:12px;
  padding:0;
  margin:0;
  list-style:none;
}
.footer-gallery li {flex:0 0 clamp(108px,10vw,154px);}
.footer-gallery img {display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:3px;}
.footer-gallery:focus-visible {outline-offset:-4px;}
.footer-gallery li > a {display:block;}
.footer-gallery .footer-follow {
  flex:0 0 auto;
  align-self:center;
}
.footer-gallery .footer-follow a {
  padding:0;
  color:var(--ink);
  white-space:nowrap;
  text-decoration:none;
}
.footer-follow span {
  display:inline-block;
  padding:5px 9px;
  background:var(--paper);
  font:normal 13px/1.5 Arial,sans-serif;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.footer-gallery .footer-follow a:hover span {background:#eddfc3;}


/* Projects and side quests */
.projects-page > .page-heading {display:block;}
.projects-page > .page-heading .intro {margin-top:20px;max-width:620px;}
.paper > .side-quests {display:block;margin-top:clamp(40px,7vw,88px);padding:0;border-top:0;}

.projects-page .side-quests-heading h2 {font:750 clamp(38px,6.8vw,94px)/.97 Arial,sans-serif;letter-spacing:-.07em;}
.side-quests-heading p {max-width:620px;margin:20px 0 0;font-size:clamp(17px,1.5vw,20px);line-height:1.4;}
.quest-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.quest-art {aspect-ratio:1;overflow:hidden;}
.quest-art img {width:100%;height:100%;object-fit:contain;}
.quest-card .project-copy {padding:20px;}
.quest-card h3 {margin:0 0 12px;font:normal 27px/1.1 Georgia,serif;letter-spacing:-.04em;}
.quest-card p {font-size:17px;line-height:1.45;}
.quest-card .tags {margin-top:4px;}
.quest-preview img {width:100%;max-height:500px;object-fit:contain;}
.quest-preview figcaption,.paper .project-launch-note {font:14px/1.5 Arial,sans-serif;margin-top:12px;}
@media(max-width:760px) {.quest-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:520px) {.quest-grid {grid-template-columns:1fr;}.header-emoji {font-size:30px;}}

.bookshelf {overflow:clip;justify-content:center;min-height:0;padding-top:32px;}
.bookshelf .thought-book {flex-shrink:1;}
.bookshelf[hidden] {display:none;}
.library .shelf-status {font:16px/1.5 Georgia,serif;margin:0 0 18px;}

.mark-gulabi-mango {background:#003d2e;}
.project-card#gulabi-mango {border-color:#003d2e55;}
.project-card#gmpc {border-color:#6f342655;}
/* Gentle navigation and interaction motion */
@view-transition {navigation:auto;}
::view-transition-old(root) {animation:page-fade-out .18s ease both;}
::view-transition-new(root) {animation:page-fade-in .28s ease both;}
@keyframes page-fade-out {to {opacity:0;}}
@keyframes page-fade-in {from {opacity:0;}to {opacity:1;}}
@keyframes page-arrive {from {opacity:0;translate:0 8px;}to {opacity:1;translate:0 0;}}
main {animation:page-arrive .38s cubic-bezier(.2,.65,.3,1) both;}
.paper .button,.rotate button,.menu-socials a {transition:background-color .2s ease,color .2s ease,translate .2s ease;}
@media(hover:hover) {.paper .button:hover {translate:0 -2px;}}
.header-emoji {transition:opacity .18s ease,scale .18s ease;scale:.9;}
.header-brand:hover .header-emoji,.header-brand:focus-visible .header-emoji {scale:1;}
.reveal-waiting {opacity:0;translate:0 10px;transition:opacity .45s ease,translate .45s cubic-bezier(.2,.65,.3,1);}
.reveal-waiting.is-visible,.reveal-waiting:focus-within {opacity:1;translate:0 0;}
@media(prefers-reduced-motion:reduce) {
  main {animation:none;}
  ::view-transition-old(root),::view-transition-new(root) {animation:none;}
  .reveal-waiting {opacity:1;translate:none;transition:none;}
  .paper .button,.rotate button,.menu-socials a,.header-emoji {transition:none;}
  .paper .button:hover {translate:none;}
}

.project-story {max-width:760px;margin-bottom:32px;}
.project-video {position:relative;aspect-ratio:16/9;background:#211820;margin:32px 0;}
.project-video iframe {position:absolute;inset:0;width:100%;height:100%;border:0;}
.project-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.project-gallery figure {margin:0;}
.project-gallery img {width:100%;height:auto;}
.project-actions {display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:28px 0 36px;}
@media(max-width:600px) {.project-gallery {grid-template-columns:1fr;}}

.breadcrumbs {display:block;margin:0 0 26px;}
.breadcrumbs ol {display:flex;flex-wrap:wrap;gap:8px 12px;padding:0;margin:0;list-style:none;}
.paper .breadcrumbs li {display:inline-flex;align-items:baseline;gap:12px;font:13px/1.5 Arial,sans-serif;}
.breadcrumbs li + li::before {content:"/";opacity:.45;}
.breadcrumbs a {text-decoration:none;}
.breadcrumbs a:hover {text-decoration:underline;}
.breadcrumbs [aria-current="page"] {opacity:.7;}

.quest-stars-on-earth .quest-art img {object-fit:cover;}
.project-facts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:32px;}
.project-facts span {font:12px/1.4 Arial,sans-serif;letter-spacing:.06em;}
.paper .project-facts p {font:18px/1.4 Georgia,serif;margin:6px 0 0;}
.paper .stars-hero {margin:0 0 40px;}
.stars-hero img,.stars-wide img {width:100%;height:auto;}
.stars-gallery {margin:28px 0;}
.stars-gallery img {aspect-ratio:4/3;object-fit:cover;}
.stars-signoff {border-top:1px solid var(--line);padding-top:28px;margin-top:40px;}
.stars-signoff img {width:min(100%,260px);height:auto;}
@media(max-width:440px) {.project-facts {grid-template-columns:1fr;gap:14px;}}

.stars-film {margin:32px 0;}
.stars-film video {display:block;width:100%;height:auto;aspect-ratio:16/9;background:#211820;}

body > header {max-width:none;width:100%;border-bottom:1px solid var(--line);}
body > header > div {max-width:1312px;margin:0 auto;}
.paper > .newsletter-signup {display:block;width:100%;max-width:600px;margin-inline:auto;padding:32px 0;border-top:0;}
.newsletter-signup iframe {display:block;width:100%;max-width:600px;height:320px;border:0;margin:0 auto;background:var(--paper);color:var(--ink);color-scheme:light;}
.embed-color-map {position:absolute;pointer-events:none;}
.newsletter-link {font:14px/1.5 Arial,sans-serif;}

/* Fine hand-drawn rules repeat across the shared page structure. */
body > header {position:relative;}
@supports (mask-image:url("hand-drawn-rule.svg")) {
  body > header,.page-heading {border-bottom:0;}
  body > header::after,.page-heading::after {
    content:"";position:absolute;left:0;right:0;bottom:0;height:8px;
    background:var(--ink);opacity:.75;pointer-events:none;
    mask-image:url("hand-drawn-rule.svg");mask-size:100% 100%;mask-repeat:no-repeat;
  }
  body > header::after {opacity:.4;}
  .page-heading {position:relative;}
}

/* A shelf collected over time: related plum bindings, different proportions. */
.volume-1 {--binding:#4e243f;--spine-width:clamp(45px,7.5vw,86px);height:var(--book-height);}
.volume-2 {--binding:#80516d;--spine-width:clamp(34px,5.7vw,65px);height:calc(var(--book-height) - 32px);}
.volume-3 {--binding:#321b2b;--spine-width:clamp(51px,8.4vw,96px);height:calc(var(--book-height) + 22px);}
.volume-4 {--binding:#a06b84;--spine-width:clamp(39px,6.4vw,73px);height:calc(var(--book-height) - 12px);}
.volume-5 {--binding:#66374e;--spine-width:clamp(42px,7vw,80px);height:calc(var(--book-height) - 45px);}

/* Small conversational voice notes, with a single spoken word above the player. */
.paper .voice-note {width:min(100%,430px);margin:32px 0 48px;}
.voice-note figcaption {display:flex;justify-content:space-between;gap:18px;align-items:center;font:14px/1.4 Arial,sans-serif;}
.voice-note figcaption small {font:11px/1.2 Arial,sans-serif;opacity:.65;white-space:nowrap;}
.voice-word {min-height:65px;display:flex;align-items:center;justify-content:center;font:italic 38px/1 Georgia,serif;letter-spacing:-.035em;padding:10px 0;}
.voice-word.word-pop {animation:voice-word-pop .16s ease-out;}
.voice-bubble {position:relative;display:grid;grid-template-columns:44px 1fr;gap:8px 13px;align-items:center;background:var(--ink);color:var(--paper);padding:19px 22px 13px;border-radius:15px 15px 15px 3px;box-shadow:0 6px 16px #351a2a10;}
.voice-bubble::after {content:"";position:absolute;left:0;bottom:-7px;border-style:solid;border-width:8px 11px 0 0;border-color:var(--ink) transparent transparent transparent;}
.voice-toggle {grid-row:1 / 3;align-self:center;background:transparent;color:inherit;border:0;width:44px;height:44px;padding:8px;cursor:pointer;border-radius:50%;}
.voice-toggle:hover {background:#fcf1d81a;}
.voice-toggle:focus-visible {outline-color:var(--paper);}
.voice-toggle svg {width:100%;height:100%;fill:currentColor;}
.voice-pause {display:none;}
.voice-note[data-playing="true"] .voice-play {display:none;}
.voice-note[data-playing="true"] .voice-pause {display:block;}
.voice-wave {position:relative;display:flex;align-items:center;gap:3px;height:44px;min-width:0;}
.voice-wave i {display:block;flex:1 1 0;min-width:1px;max-width:4px;height:var(--bar);background:currentColor;border-radius:2px;opacity:.35;transform-origin:center;}
.voice-wave i.is-spoken {opacity:1;}
.voice-note[data-playing="true"] .voice-wave i {animation:voice-wave .7s ease-in-out infinite alternate;animation-delay:var(--delay);}
.voice-playhead {position:absolute;top:50%;left:var(--progress,0%);width:7px;height:7px;border-radius:50%;background:var(--paper);box-shadow:0 0 0 4px #fcf1d822;transform:translate(-50%,-50%);}
.voice-clock {grid-column:2;display:flex;justify-content:space-between;font:12px/1 Arial,sans-serif;opacity:.75;}
.voice-transcript {margin-top:20px;font:12px/1.4 Arial,sans-serif;}
.voice-transcript summary {width:fit-content;cursor:pointer;text-decoration:underline;text-underline-offset:3px;}
.paper .voice-transcript p {font:16px/1.5 Georgia,serif;margin:12px 0 0;}
.paper .voice-status {font:13px/1.4 Arial,sans-serif;margin:18px 0 0;}
@keyframes voice-wave {to {transform:scaleY(.6);}}
@keyframes voice-word-pop {from {opacity:.5;transform:translateY(3px);}to {opacity:1;transform:translateY(0);}}
@media(prefers-reduced-motion:reduce) {.voice-note[data-playing="true"] .voice-wave i,.voice-word.word-pop {animation:none;}}
@media(max-width:480px) {.voice-bubble {padding:16px 16px 12px;gap:8px;}.voice-wave {gap:2px;}.voice-word {font-size:32px;}}

/* About is a collection of small, explorable chapters. */
.sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;}
.about-intro {padding-top:0;align-items:start;grid-template-columns:1.2fr .8fr;}
.about-intro h2 {margin-bottom:22px;}
.paper .about-intro p {font-size:18px;line-height:1.5;max-width:480px;}
.paper .about-intro .about-one-liner {font-size:clamp(20px,2.5vw,28px);line-height:1.25;margin-bottom:22px;}
.paper .about-intro .voice-note {width:min(100%,360px);margin:12px 0 0;}
.about-intro .voice-word {min-height:55px;font-size:34px;}
.about-intro .portrait-slot {width:100%;max-height:460px;}
.paper > .about-addresses,.paper > .about-off-duty,.paper > .about-stories {display:block;padding:36px 0;}
.paper .about-addresses h2,.paper .about-off-duty h2,.paper .about-stories > h2 {font:normal clamp(26px,3.4vw,39px)/1.12 Georgia,serif;max-width:650px;margin-bottom:28px;}
.city-trail {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none;padding:0;margin:36px 0 28px;}
.paper .city-trail li {position:relative;display:flex;flex-direction:column;gap:25px;padding:0 6px 12px 0;}
.city-trail li::after {content:"";position:absolute;left:0;right:0;top:37px;height:7px;background:var(--ink);mask:url('hand-drawn-rule.svg') center/100% 100% no-repeat;opacity:.7;}
.city-trail li::before {content:"";position:absolute;left:0;top:36px;width:8px;height:9px;z-index:1;background:var(--ink);border-radius:45% 55% 38% 52%;transform:rotate(-12deg);}
.city-trail strong {font:normal clamp(18px,2.3vw,27px)/1 Georgia,serif;letter-spacing:-.04em;}
.city-trail span {font:12px/1.3 Arial,sans-serif;opacity:.75;}
.paper .about-addresses > p {font:italic 17px/1.4 Georgia,serif;}
.off-duty-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,50px);padding:10px 0;}
.off-duty-grid h3 {font:normal clamp(24px,3vw,35px)/1.05 Georgia,serif;letter-spacing:-.035em;margin:0 0 15px;max-width:230px;}
.paper .off-duty-grid p {font:16px/1.5 Georgia,serif;max-width:240px;}
.about-stories details {border-bottom:1px solid var(--line);}
.about-stories summary {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;cursor:pointer;list-style:none;font:normal clamp(21px,2.5vw,29px)/1.2 Georgia,serif;letter-spacing:-.025em;}
.about-stories summary::-webkit-details-marker {display:none;}
.story-expand {position:relative;flex:0 0 22px;width:22px;height:22px;}
.story-expand::before,.story-expand::after {content:"";position:absolute;left:4px;top:10px;width:14px;height:1px;background:currentColor;transition:transform .2s;}
.story-expand::after {transform:rotate(90deg);}
.about-stories details[open] .story-expand::after {transform:rotate(0);}
.about-stories details > div {padding:0 36px 20px 0;max-width:740px;}
.paper .about-stories details p {font-size:18px;line-height:1.5;}
@media(max-width:700px) {
 .about-intro {grid-template-columns:1fr;gap:32px;}
 .about-intro .portrait-slot {width:min(100%,300px);max-height:350px;}
 .city-trail {grid-template-columns:repeat(3,minmax(0,1fr));row-gap:30px;}
 .off-duty-grid {grid-template-columns:1fr;gap:25px;}
 .off-duty-grid > div {display:grid;grid-template-columns:1fr 1fr;gap:20px;}
 .off-duty-grid h3 {font-size:27px;}
 .paper .off-duty-grid p {font-size:16px;}
}
@media(prefers-reduced-motion:reduce) {.story-expand::after {transition:none;}}

/* Color changes separate the personal chapters without adding more boxes. */
.about-page > .about-off-duty {
  background:#351a2a;color:#fcf1d8;
  box-shadow:0 0 0 100vmax #351a2a;clip-path:inset(0 -100vmax);
  padding:54px 0;border:0;margin-top:16px;
}
.about-page > .about-stories {
  background:#efdee1;color:#351a2a;
  box-shadow:0 0 0 100vmax #efdee1;clip-path:inset(0 -100vmax);
  padding:54px 0;border:0;margin-bottom:24px;
}
.about-page .about-stories details {border-color:#351a2a40;}
.about-page .about-stories summary:hover {color:#78445f;}
.about-page .about-stories summary:focus-visible {outline-offset:-2px;}
@media(max-width:700px) {
  .about-page > .about-off-duty,.about-page > .about-stories {padding:38px 0;}
}

/* The portrait keeps its original photo, with a small idea-mode surprise. */
.paper .portrait-easter-egg {position:relative;width:100%;max-width:400px;margin:0;justify-self:end;}
.portrait-play {position:relative;display:block;width:100%;aspect-ratio:4/5;padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer;isolation:isolate;}
.portrait-photo {position:absolute;inset:0;display:block;overflow:hidden;background:#e9d6b4;box-shadow:0 7px 24px #351a2a12;transition:transform .45s ease,box-shadow .45s ease;}
.paper .portrait-photo img {width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 50%;transform:scale(1.015);transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .5s ease;filter:saturate(.9);}
.portrait-play.is-idea .portrait-photo {transform:rotate(-2deg);box-shadow:8px 12px 0 #efdee1;}
.portrait-play.is-idea img {transform:scale(1.065) rotate(1deg);filter:saturate(1.12);}
.portrait-sparks {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;}
.portrait-sparks .spark {fill:#fcf1d8;stroke:#351a2a;stroke-width:1.3;opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.2) rotate(-25deg);transition:transform .45s cubic-bezier(.2,.8,.3,1.3),opacity .25s;}
.portrait-sparks .spark-two {transition-delay:.1s;fill:#e4b566;}
.portrait-sparks .spark-three {transition-delay:.2s;}
.portrait-play.is-idea .spark {opacity:1;transform:scale(1) rotate(0);}
.idea-orbit {stroke:#351a2a;stroke-width:1.2;stroke-linecap:round;fill:none;stroke-dasharray:450;stroke-dashoffset:450;opacity:0;transition:stroke-dashoffset .7s ease,opacity .2s;}
.portrait-play.is-idea .idea-orbit {stroke-dashoffset:0;opacity:.7;}
.portrait-thought {position:absolute;left:-12px;bottom:24px;max-width:calc(100% - 20px);padding:14px 18px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);font:italic clamp(20px,2.6vw,29px)/1.08 Georgia,serif;text-align:left;opacity:0;transform:translateY(12px) rotate(-3deg);transition:opacity .25s,transform .4s cubic-bezier(.2,.7,.2,1);pointer-events:none;}
.portrait-thought::before {content:"";position:absolute;bottom:calc(100% - 5px);left:25px;width:12px;height:12px;background:var(--paper);border-left:1px solid var(--ink);border-top:1px solid var(--ink);transform:rotate(45deg);}
.portrait-play.is-idea .portrait-thought {opacity:1;transform:translateY(0) rotate(-3deg);}
@media(max-width:700px) {.paper .portrait-easter-egg {width:min(100%,310px);justify-self:start;}}
@media(prefers-reduced-motion:reduce) {.portrait-photo,.portrait-photo img,.portrait-sparks .spark,.idea-orbit,.portrait-thought {transition:none;}.portrait-play.is-idea .portrait-photo,.portrait-play.is-idea img {transform:none;}}

.footer-follow span {font-weight:700;}
.speaking-page > .speaking-invitation {display:flex;align-items:center;justify-content:space-between;gap:38px;padding:40px;background:var(--ink);color:var(--paper);border:0;}
.speaking-invitation > div {max-width:620px;}
.paper .speaking-invitation h2 {font:normal clamp(32px,4.5vw,55px)/1.04 Georgia,serif;letter-spacing:-.04em;margin-bottom:22px;}
.paper .speaking-invitation p {font-size:18px;line-height:1.5;margin:0;}
.speaking-invitation .button {flex-shrink:0;background:var(--ink);color:var(--paper);border:1px solid var(--paper);}
.speaking-page > .speaking-topics {display:block;padding:48px 0;border:0;}
.speaking-topic-grid {display:grid;grid-template-columns:1fr 1fr;gap:0 44px;margin-top:28px;}
.speaking-topic-grid article {border-top:1px solid var(--line);padding:27px 0 20px;}
.speaking-topic-grid h3 {font:normal clamp(25px,3vw,35px)/1.1 Georgia,serif;letter-spacing:-.035em;margin:0 0 17px;max-width:350px;}
.paper .speaking-topic-grid p {font-size:17px;line-height:1.5;max-width:390px;}
.speaking-page > .speaking-mentoring {display:grid;grid-template-columns:1.5fr 1fr;gap:40px;padding:40px;background:#efdee1;border:0;align-items:center;}
.paper .speaking-mentoring h2 {font:normal clamp(30px,4vw,46px)/1 Georgia,serif;margin-bottom:24px;}
.paper .speaking-mentoring p {font-size:18px;line-height:1.5;}
.paper .speaking-mentoring .mentoring-place {grid-column:auto;font:normal clamp(65px,10vw,140px)/1 Georgia,serif;text-align:center;letter-spacing:-.06em;}
@media(max-width:760px) {
 .speaking-page > .speaking-invitation {display:block;padding:28px;}
 .speaking-invitation .button {margin-top:25px;}
 .speaking-topic-grid {gap:0 24px;}
 .speaking-page > .speaking-mentoring {padding:28px;gap:24px;grid-template-columns:1fr;}
 .paper .speaking-mentoring .mentoring-place {text-align:left;font-size:70px;}
}
@media(max-width:500px) {.speaking-topic-grid {grid-template-columns:1fr;}}
.speaking-page > .speaking-mentoring > div {grid-column:1;grid-row:1;}
.paper .speaking-mentoring .mentoring-place {grid-column:2;grid-row:1;}
@media(max-width:760px) {.paper .speaking-mentoring .mentoring-place {grid-column:1;grid-row:2;}}
/* Portrait voice note: the photo is the invitation. */
.portrait-photo {box-shadow:7px 9px 0 #351a2a;}
.portrait-easter-egg.voice-open .portrait-photo {box-shadow:11px 13px 0 #351a2a;transform:translate(-2px,-2px);}
.portrait-easter-egg.voice-open img {transform:scale(1.035);}
.portrait-voice {position:absolute;z-index:2;left:16px;right:16px;bottom:20px;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .3s,visibility .25s;}
.voice-open .portrait-voice {opacity:1;visibility:visible;transform:translateY(0);}
.portrait-voice .voice-note {width:100%;margin:0;}
.portrait-voice .voice-word {background:var(--paper);color:var(--ink);width:fit-content;min-width:0;margin:0 auto 10px;padding:4px 10px;min-height:0;font:italic 19px/1.3 Georgia,serif;}
.portrait-voice .voice-word:empty {display:none;}
.portrait-voice .voice-status {background:var(--paper);color:var(--ink);padding:5px 10px;margin:5px 0 0;font:12px Arial,sans-serif;}
.about-page > .about-stories {background:var(--paper);box-shadow:none;clip-path:none;border-top:1px solid var(--line);padding:50px 0;}
.about-page .about-stories details {border:0;margin:14px 0;}
.about-page .about-stories summary {width:fit-content;max-width:100%;padding:16px 23px;border-radius:0;background:var(--ink);color:var(--paper);font:normal 18px/1.3 Arial,sans-serif;letter-spacing:0;gap:25px;}
.about-page .about-stories summary:hover {color:var(--paper);background:#583149;}
.about-stories details > div {padding:20px 23px 8px;}
@media(prefers-reduced-motion:reduce){.portrait-voice,.portrait-photo{transition:none;}}
/* Speaking keeps the ideas brief and lets the clips do the talking. */
.speaking-page > .speaking-invitation {padding:32px 0;background:transparent;color:var(--ink);border-bottom:1px solid var(--line);}
.paper .speaking-invitation h2 {font-size:clamp(29px,4vw,46px);margin:0;max-width:600px;}
.speaking-invitation .button {border-color:var(--ink);}
.speaking-page > .speaking-topics {padding:38px 0 30px;}
.paper .speaking-topics h2,.paper .speaking-clips h2 {font:normal clamp(25px,3vw,34px)/1.2 Georgia,serif;letter-spacing:-.025em;}
.speaking-topic-pills {display:flex;flex-wrap:wrap;gap:10px;padding:0;list-style:none;margin:24px 0 0;}
.paper .speaking-topic-pills li {border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);padding:12px 17px;font:14px/1.2 Arial,sans-serif;}
.speaking-page > .speaking-clips {display:block;border:0;padding:12px 0 50px;}
.clips-heading {display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:24px;}
.carousel-toggle {border:0;border-bottom:1px solid currentColor;background:none;color:var(--ink);padding:4px 0;cursor:pointer;font:13px Arial,sans-serif;}
.talk-carousel {overflow:hidden;width:100%;}
.talk-track {display:flex;gap:18px;width:max-content;will-change:transform;}
.talk-clip {position:relative;flex:none;width:clamp(220px,25vw,290px);aspect-ratio:9/15;border:0;padding:0;overflow:hidden;background:var(--ink);color:var(--paper);cursor:pointer;text-align:left;}
.talk-clip video {display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.talk-clip:hover video {transform:scale(1.025);}
.clip-title {position:absolute;left:0;right:0;bottom:0;padding:55px 18px 20px;background:linear-gradient(transparent,#351a2aeb);font:normal 23px/1.15 Georgia,serif;}
.clip-play {position:absolute;top:16px;right:16px;display:grid;place-items:center;width:38px;height:38px;background:var(--paper);color:var(--ink);border-radius:50%;font-size:14px;padding-left:2px;}
.speaking-page > .speaking-mentoring {background:transparent;padding:40px 0;border-top:1px solid var(--line);grid-template-columns:1.6fr 1fr;}
.paper .speaking-mentoring h2 {font-size:clamp(30px,4vw,42px);margin-bottom:20px;}
.paper .speaking-mentoring p {font-size:17px;max-width:580px;}
.paper .speaking-mentoring .mentoring-place {font:italic clamp(36px,6vw,75px)/1 Georgia,serif;}
.talk-modal {padding:0;border:0;background:transparent;color:var(--paper);max-width:94vw;max-height:94dvh;overflow:visible;}
.talk-modal::backdrop {background:#351a2ad9;backdrop-filter:blur(6px);}
.talk-modal-content {position:relative;}
.talk-modal video {display:block;max-width:90vw;max-height:86dvh;width:auto;height:auto;background:#160b12;box-shadow:0 15px 80px #0005;}
.talk-close {position:absolute;right:10px;top:10px;z-index:1;width:38px;height:38px;border:0;background:var(--paper);color:var(--ink);font:28px/1 Arial;cursor:pointer;border-radius:50%;}
.video-is-open {overflow:hidden;}
@media(max-width:760px){.speaking-page > .speaking-invitation {padding:24px 0;}.speaking-page > .speaking-mentoring {padding:32px 0;grid-template-columns:1fr;}.paper .speaking-mentoring .mentoring-place {display:none;}.clips-heading{align-items:start;}.clips-heading h2{max-width:240px;}.talk-clip {width:235px;}}
@media(prefers-reduced-motion:reduce){.talk-track{transform:none!important;}.talk-carousel{overflow-x:auto;}.talk-clip[data-clone]{display:none;}.talk-clip video{transition:none;}}

/* Mentoring is a highlight; private calls have their own invitation. */
.speaking-page > .yale-highlight {display:grid;grid-template-columns:1fr 2fr;gap:clamp(30px,6vw,80px);align-items:center;padding:45px 38px;margin:0 0 36px;border:1px solid var(--ink);}
.yale-mark {display:flex;align-items:center;justify-content:center;}
.paper .yale-mark img {display:block;width:min(100%,200px);height:auto;object-fit:contain;}
.paper .yale-highlight h2,.paper .speaking-one-to-one h2 {font:normal clamp(28px,3.4vw,40px)/1.12 Georgia,serif;letter-spacing:-.03em;margin:0 0 18px;}
.paper .yale-highlight p,.paper .speaking-one-to-one p {font:17px/1.5 Georgia,serif;max-width:560px;margin:0;}
.speaking-page > .speaking-one-to-one {display:flex;align-items:center;justify-content:space-between;gap:35px;padding:25px 0 30px;border:0;}
.speaking-one-to-one .button {flex-shrink:0;}
@media(max-width:650px){.speaking-page > .yale-highlight {grid-template-columns:1fr;padding:28px;gap:26px;}.yale-mark {justify-content:flex-start;}.paper .yale-mark img {width:130px;}.speaking-page > .speaking-one-to-one {display:block;}.speaking-one-to-one .button {margin-top:24px;}.portrait-voice .voice-word {font-size:17px;}}
.speaking-page > .yale-highlight > .yale-mark {grid-column:1;grid-row:1;}
.speaking-page > .yale-highlight > div:last-child {grid-column:2;grid-row:1;}
@media(max-width:650px){.speaking-page > .yale-highlight > div:last-child {grid-column:1;grid-row:2;}}

/* Speaking: editorial topics, distinct actions, and video-led storytelling. */
.speaking-page .page-heading {margin-bottom:0;}
.speaking-booking {display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 0 36px;}
.paper .speaking-booking p {font:15px/1.5 Arial,sans-serif;margin:0;}
.speaking-booking .button {flex-shrink:0;font-size:14px;padding:13px 20px;}
.speaking-page > .speaking-clips {padding:20px 0 45px;}
.speaking-page > .speaking-agenda {display:block;padding:12px 0 48px;border:0;}
.paper .speaking-agenda > h2 {font:normal clamp(26px,3vw,34px)/1.15 Georgia,serif;letter-spacing:-.025em;margin:0 0 28px;}
.agenda-list {display:grid;grid-template-columns:1fr 1fr;gap:0 55px;list-style:none;padding:0;margin:0;}
.paper .agenda-list li {display:grid;grid-template-columns:25px 1fr;gap:14px;align-items:start;padding:24px 0 28px;border-top:1px solid var(--line);background:transparent;color:var(--ink);cursor:default;}
.agenda-number {font:12px/1.6 Arial,sans-serif;opacity:.65;padding-top:2px;}
.paper .agenda-list h3 {font:normal clamp(23px,2.6vw,30px)/1.12 Georgia,serif;letter-spacing:-.025em;margin:0 0 11px;}
.paper .agenda-list p {font:15px/1.5 Arial,sans-serif;max-width:330px;margin:0;}
.speaking-page > .yale-highlight {border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 0;margin:0 0 34px;}
.speaking-page > .speaking-one-to-one {padding:20px 0 25px;}
.speaking-one-to-one .button {font-size:14px;padding:13px 20px;}
@media(max-width:650px){.speaking-booking {display:block;padding:23px 0 32px;}.speaking-booking .button {margin-top:18px;}.agenda-list {grid-template-columns:1fr;}.paper .agenda-list li {padding:20px 0;}.speaking-page > .yale-highlight {padding:30px 0;}.speaking-page .clips-heading h2 {max-width:230px;}}

/* Cover typography follows the book's dimensions, including shorter volumes. */
.thought-book {container-type:inline-size;}
.book-cover {display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;justify-content:normal;align-content:stretch;gap:10px;padding:clamp(12px,5cqi,20px);overflow:hidden;}
.book-cover strong {display:block;min-width:0;min-height:0;font:normal clamp(17px,8cqi,27px)/1.1 Georgia,serif;overflow-wrap:anywhere;}
.book-cover .cover-no {font:11px/1.2 Arial,sans-serif;}
.book-cover .cover-excerpt {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:2.7em;font:italic clamp(11px,4.3cqi,14px)/1.32 Georgia,serif;}
.book-cover .cover-open {font:bold 12px/1.2 Arial,sans-serif;}
@media(max-width:500px){.book-cover{gap:8px;}.book-cover .cover-open,.book-cover .cover-no{font-size:10px;}}

/* Menu links share the name logo's small hover surprise. */
.menu-links a {justify-content:flex-start;gap:18px;}
.menu-emoji {display:inline-block;flex:none;font:normal clamp(28px,3.3vw,44px)/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;letter-spacing:0;opacity:0;transform:translateY(5px) scale(.85);transition:opacity .18s ease,transform .18s ease;pointer-events:none;}
.menu-links a:is(:hover,:focus-visible),.index a:is(:hover,:focus-visible) {color:var(--ink);text-decoration:none;}
.menu-links a:is(:hover,:focus-visible) .menu-emoji,.index a:is(:hover,:focus-visible) .menu-emoji {opacity:1;transform:translateY(0) scale(1);}
@media(prefers-reduced-motion:reduce){.menu-emoji {transition:none;transform:none;}}

.paper .timeline-section > h2 {font:normal clamp(26px,3.4vw,39px)/1.12 Georgia,serif;max-width:650px;margin-bottom:28px;letter-spacing:normal;}
.journey-list li:nth-child(1) {left:11%;top:174px;width:30%;}
.journey-list li:nth-child(2) {left:30%;top:464px;width:32%;}
.journey-list li:nth-child(3) {left:54%;top:auto;bottom:calc(100% - 276px);width:36%;}
.journey-list li:nth-child(4) {left:71%;top:574px;width:28%;}
.journey-list li:nth-child(5) {left:5%;top:914px;width:32%;text-align:right;}
.journey-list li:nth-child(6) {left:51%;top:1154px;width:36%;text-align:right;}
@media(max-width:760px){
 .journey-list li:nth-child(n) {position:relative;left:auto;top:auto;bottom:auto;width:100%;min-height:280px;padding:32px 0 40px 44px;text-align:left;}
}
.about-intro {grid-template-columns:1.05fr .95fr;gap:clamp(24px,5vw,64px);}
.paper .portrait-easter-egg {max-width:460px;}
@media(max-width:700px){.about-intro {grid-template-columns:1fr;gap:32px;}.paper .portrait-easter-egg {width:min(100%,350px);}}

/* About inherits the shared editorial page width; keep the compact journey spacing. */
.paper.about-page {padding-bottom:32px;}
@media(min-width:761px) {
 .about-page .journey-stage {width:100%;max-width:1000px;height:1040px;margin:20px auto 0;}
 .about-page .timeline-section > h2 {margin-bottom:0;}
 .journey-list li:nth-child(1) {top:74px;}
 .journey-list li:nth-child(2) {left:23%;top:354px;width:30%;}
 .journey-list li:nth-child(3) {bottom:calc(100% - 176px);}
 .journey-list li:nth-child(4) {top:434px;}
 .journey-list li:nth-child(5) {top:624px;}
 .journey-list li:nth-child(6) {top:854px;}
}
@media(max-width:760px) {
 .about-page .journey-stage {margin-top:12px;}
 .about-page .journey-list li:nth-child(n) {min-height:240px;}
 .about-page .journey-list li:last-child {min-height:0;padding-bottom:0;}
}

/* Reveal the player controls after playback starts or needs a tap. */
.portrait-voice .voice-toggle {visibility:hidden;pointer-events:none;}
.portrait-voice .voice-note:is([data-started="true"],[data-blocked="true"]) .voice-toggle {visibility:visible;pointer-events:auto;}

/* Project cursors use the same native emoji font as the name’s hover emoji. */
.project-emoji-cursor {position:fixed;left:0;top:0;z-index:10000;pointer-events:none;display:grid;place-items:center;width:44px;height:44px;font:normal 32px/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;user-select:none;will-change:transform;}
.project-emoji-cursor[hidden] {display:none;}
@media(hover:hover) and (pointer:fine) {html.project-emoji-cursors a[data-project-emoji],html.project-emoji-cursors a[data-project-emoji] * {cursor:none;}}

/* Three clear invitations, followed by the video examples. */
.speaking-page .page-heading {margin-bottom:36px;}
.speaking-offers {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0 0 64px;}
.speaking-offer {display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid var(--ink);padding:26px 0 0;min-width:0;}
.paper .speaking-offer h2 {font:normal clamp(26px,2.6vw,33px)/1.12 Georgia,serif;letter-spacing:-.03em;margin:0 0 20px;max-width:280px;}
.paper .speaking-offer p {font:16px/1.55 Arial,sans-serif;margin:0 0 20px;}
.paper .speaking-offer .offer-detail {font-size:14px;opacity:.8;}
.speaking-offer .button {margin-top:auto;font-size:13px;padding:13px 16px;}
.offer-yale {display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:18px 0 24px;width:100%;}
.offer-yale img {display:block;width:76px;height:auto;flex-shrink:0;}
.paper .offer-yale p {font:13px/1.4 Arial,sans-serif;margin:0;max-width:150px;}
.speaking-page > .speaking-clips {border-top:1px solid var(--line);padding-top:36px;}
.newsletter-signup {border:1px solid var(--ink);background:var(--paper);}
.paper > .newsletter-signup {padding:0;max-width:600px;margin:32px auto 48px;border-top:1px solid var(--ink);}
.newsletter-signup iframe {background:var(--paper);color:var(--ink);}
.spotify-frame {border-radius:0;overflow:hidden;background:#282828;clip-path:inset(0);margin:12px 0 10px;}
.footer-playlist .spotify-frame iframe {border-radius:0;margin:0;}
@media(max-width:760px) {
 .speaking-offers {grid-template-columns:1fr;gap:34px;margin-bottom:44px;}
 .speaking-offer {padding-top:22px;}
 .paper .speaking-offer h2 {max-width:none;}
 .speaking-offer .button {margin-top:4px;}
 .offer-yale {max-width:340px;}
}

.paper > .newsletter-signup {border:0;background:var(--paper);padding:24px 0;}
.substack-form {display:flex;width:100%;border:1px solid var(--ink);background:var(--paper);}
.substack-form input {min-width:0;flex:1;border:0;border-radius:0;background:var(--paper);color:var(--ink);padding:16px 18px;font:16px/1.4 Arial,sans-serif;}
.substack-form input::placeholder {color:var(--ink);opacity:.7;}
.substack-form .button {border:0;border-left:1px solid var(--ink);border-radius:0;padding:16px 24px;font:700 14px/1.4 Arial,sans-serif;cursor:pointer;}
.paper .substack-handoff {text-align:center;font:12px/1.4 Arial,sans-serif;opacity:.75;margin:12px 0 0;}
.spotify-frame {height:352px;}
.footer-playlist .spotify-frame iframe {width:calc(100% + 16px);max-width:none;height:368px;transform:translate(-8px,-8px);}
@media(max-width:400px){.substack-form input{padding:14px 12px;}.substack-form .button{padding:14px 16px;}}

/* Bordered invitations with a separate, clearly labeled experience row. */
.speaking-offers {gap:22px;margin-bottom:38px;}
.speaking-offer {border:1px solid var(--ink);padding:28px 24px;}
.paper .speaking-offer h2 {font-size:clamp(25px,2.5vw,32px);}
.speaking-offer .button {margin-top:auto;}
.speaking-experience {display:flex;justify-content:center;align-items:flex-start;gap:clamp(50px,9vw,120px);padding:0 0 48px;}
.experience-logo {display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:14px;}
.paper .experience-logo p {font:14px/1.3 Arial,sans-serif;margin:0;}
.experience-logo img {display:block;width:auto;max-width:160px;height:50px;object-fit:contain;}
.experience-logo img[src="mcafee-logo.svg"] {width:150px;}
.speaking-page .page-heading .intro {max-width:760px;}
@media(max-width:760px) {
 .speaking-offers {gap:20px;}
 .speaking-offer {padding:26px 24px;}
 .speaking-offer .button {margin-top:8px;}
 .speaking-experience {gap:50px;padding-bottom:36px;}
 .experience-logo img {height:42px;max-width:130px;}
}

/* Off-duty interests read as a single editorial feature, with a quiet left rail. */
.about-page > .about-off-duty {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);gap:clamp(36px,6vw,80px);align-items:start;padding:60px 0;}
.paper .about-off-duty > h2 {grid-column:1;margin:0;max-width:280px;}
.about-off-duty .off-duty-grid {grid-column:2;display:grid;grid-template-columns:1fr;gap:0;padding:0;}
.about-off-duty .off-duty-grid > div {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:28px;align-items:baseline;padding:26px 0;border-top:1px solid #fcf1d84d;}
.about-off-duty .off-duty-grid > div:first-child {padding-top:0;border-top:0;}
.about-off-duty .off-duty-grid > div:last-child {padding-bottom:0;}
.paper .about-off-duty .off-duty-grid h3 {font:normal clamp(24px,2.4vw,30px)/1.15 Georgia,serif;letter-spacing:-.025em;max-width:none;margin:0;}
.paper .about-off-duty .off-duty-grid p {font:16px/1.55 Arial,sans-serif;max-width:320px;margin:0;}
@media(max-width:760px) {
 .about-page > .about-off-duty {grid-template-columns:1fr;gap:30px;padding:40px 0;}
 .paper .about-off-duty > h2 {max-width:none;}
 .about-off-duty .off-duty-grid {grid-column:1;}
 .about-off-duty .off-duty-grid > div {gap:24px;padding:24px 0;}
}
@media(max-width:480px) {
 .about-off-duty .off-duty-grid > div {grid-template-columns:1fr;gap:10px;}
 .paper .about-off-duty .off-duty-grid p {max-width:none;font-size:15px;}
}

/* Plum offer cards retain clear, cream calls to action. */
.speaking-offer {background:var(--ink);color:var(--paper);}
.speaking-offer .button {background:var(--paper);color:var(--ink);border:1px solid var(--paper);}
.speaking-offer .button:hover {background:transparent;color:var(--paper);}
.speaking-offer .button:focus-visible {outline-color:var(--paper);}
.mentoring-experience {width:100%;border-top:1px solid #fcf1d84d;padding:20px 0 24px;margin-top:0;}
.paper .mentoring-experience > p {font:13px/1.4 Arial,sans-serif;margin:0 0 20px;}
.mentoring-logos {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;align-items:center;}
.mentoring-logos img {display:block;width:100%;max-width:112px;height:30px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1);}
.mentoring-logos img[src="yale-logo.png"] {width:82px;height:36px;}
.mentoring-logos img[src="ut-dallas-logo.svg"] {max-width:125px;height:30px;}
@media(max-width:760px){.mentoring-logos{max-width:300px;}}
.mentoring-logos img[src="ut-dallas-logo.svg"] {grid-column:1/-1;width:100%;max-width:240px;height:24px;}

/* Speaking leads, examples follow, and mentoring and 1:1 sit below. */
.speaking-page > .speaking-lead {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(28px,5vw,64px);padding:clamp(28px,4vw,44px);margin:0 0 36px;}
.speaking-lead > div {grid-column:auto;}
.paper .speaking-lead h2 {font:normal clamp(32px,4vw,48px)/1.08 Georgia,serif;max-width:360px;margin:0 0 18px;}
.paper .speaking-lead p {max-width:510px;}
.speaking-lead .button {margin-top:8px;}
.speaking-page > .speaking-clips {border-top:0;padding-top:0;padding-bottom:48px;}
.speaking-secondary {grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0;gap:28px;}
.speaking-secondary .speaking-offer {padding:32px;}
.paper .speaking-secondary h2 {max-width:none;}
.speaking-secondary .mentoring-experience {margin-top:4px;}
.speaking-secondary .mentoring-logos {max-width:360px;}
.speaking-secondary .mentoring-logos img[src="ut-dallas-logo.svg"] {max-width:280px;}
.mentoring-logos img {filter:url(#mentoring-cream);}
.logo-color-map {position:absolute;pointer-events:none;}
@media(max-width:760px) {
 .speaking-page > .speaking-lead {grid-template-columns:1fr;gap:16px;padding:28px;}
 .speaking-secondary {grid-template-columns:1fr;gap:22px;}
 .speaking-secondary .speaking-offer {padding:28px;}
}

/* Three small discoveries, with one stable stage for the revealed story. */
.off-duty-play {grid-column:2;min-width:0;}
.interest-triggers {display:flex;align-items:center;justify-content:space-around;gap:24px;}
.interest-emoji {display:grid;place-items:center;width:110px;height:110px;padding:10px;border:0;border-radius:0;background:transparent;color:var(--paper);cursor:pointer;}
.interest-emoji span {display:block;font:normal clamp(48px,5.5vw,72px)/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;transform:translateY(0) rotate(0);transition:transform .4s cubic-bezier(.22,.75,.25,1);}
.interest-emoji:nth-child(1) {--interest-turn:-9deg;}
.interest-emoji:nth-child(2) {--interest-turn:7deg;}
.interest-emoji:nth-child(3) {--interest-turn:-6deg;}
.interest-emoji[aria-expanded="true"] span {transform:translateY(-8px) rotate(var(--interest-turn)) scale(1.1);}
.interest-emoji:focus-visible {outline:1px solid var(--paper);outline-offset:4px;}
.interest-stories {position:relative;min-height:130px;margin-top:22px;}
.interest-story {position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;text-align:center;opacity:0;visibility:hidden;transform:translateY(9px);transition:opacity .3s ease,transform .4s cubic-bezier(.22,.75,.25,1),visibility .3s;pointer-events:none;}
.interest-story.is-open {opacity:1;visibility:visible;transform:translateY(0);}
.paper .interest-story h3 {font:normal clamp(25px,2.5vw,32px)/1.15 Georgia,serif;letter-spacing:-.025em;margin:0 0 14px;}
.paper .interest-story p {font:16px/1.55 Arial,sans-serif;max-width:410px;margin:0;}
@media(max-width:760px){.off-duty-play{grid-column:1;}.interest-emoji{width:90px;height:90px;}.interest-stories{min-height:130px;}}
@media(max-width:480px){.interest-triggers{gap:12px;}.interest-emoji{width:76px;height:80px;}.interest-stories{min-height:135px;}.paper .interest-story p{font-size:15px;}}
@media(prefers-reduced-motion:reduce){.interest-emoji span,.interest-story{transition:none;transform:none;}.interest-emoji[aria-expanded="true"] span{transform:none;}}

/* Off-duty panels open into the story, bringing the neighboring emojis along. */
.off-duty-play .interest-triggers {display:flex;height:280px;gap:12px;align-items:stretch;justify-content:initial;}
.off-duty-play .interest-emoji {position:relative;display:block;flex:1 1 0;min-width:0;width:auto;height:100%;padding:0;border:1px solid var(--paper);background:var(--paper);color:var(--ink);overflow:hidden;transition:flex .5s cubic-bezier(.22,.75,.25,1);}
.off-duty-play .interest-emoji[aria-expanded="true"] {flex:3 1 0;}
.off-duty-play .interest-symbol {position:absolute;top:50%;left:50%;font:normal clamp(44px,4.5vw,64px)/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;transform:translate(-50%,-50%);transition:top .45s cubic-bezier(.22,.75,.25,1),transform .45s cubic-bezier(.22,.75,.25,1);}
.off-duty-play .interest-emoji[aria-expanded="true"] .interest-symbol {top:28px;transform:translate(-50%,0) rotate(var(--interest-turn));}
.off-duty-play .interest-copy {position:absolute;top:112px;left:20px;right:20px;display:block;font:16px/1.5 Arial,sans-serif;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s ease,transform .35s ease,visibility .2s;pointer-events:none;}
.off-duty-play .interest-copy.is-open {opacity:1;visibility:visible;transform:none;transition-delay:.13s;}
.interest-copy strong {display:block;font:normal 27px/1.1 Georgia,serif;letter-spacing:-.025em;margin-bottom:14px;}
.off-duty-play .interest-copy > span {font:16px/1.5 Arial,sans-serif;display:block;transform:none;}
.off-duty-play .interest-emoji:focus-visible {outline:2px solid var(--paper);outline-offset:5px;}
.illustration-intro {display:flex;gap:36px;align-items:center;justify-content:space-between;margin:0 0 48px;}
.paper .illustration-intro p {font:17px/1.55 Georgia,serif;max-width:600px;margin:0;}
.illustration-intro .button {flex-shrink:0;}
.illustration-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 30px;}
.illustration-entry {min-width:0;}
.illustration-image {display:block;background:var(--ink);overflow:hidden;}
.illustration-image img {display:block;width:100%;height:auto;aspect-ratio:404/316;object-fit:cover;transition:transform .5s ease;}
.illustration-image:hover img {transform:scale(1.035);}
.illustration-caption {padding:22px 0 0;}
.paper .illustration-caption h2 {font:normal clamp(25px,3vw,34px)/1.12 Georgia,serif;margin:0 0 12px;letter-spacing:-.025em;}
.paper .illustration-caption p {font:15px/1.5 Arial,sans-serif;margin:0 0 20px;}
.illustration-endnote {display:flex;align-items:baseline;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:48px;padding-top:28px;}
.paper .illustration-endnote p {font:normal 28px/1.1 Georgia,serif;margin:0;}
@media(max-width:760px){.illustration-intro{display:block;}.illustration-intro .button{margin-top:22px;}.illustration-gallery{gap:30px 20px;}}
@media(max-width:480px){
 .off-duty-play .interest-triggers{height:480px;flex-direction:column;}
 .off-duty-play .interest-emoji{height:auto;min-height:0;}
 .off-duty-play .interest-copy{top:100px;}
 .off-duty-play .interest-symbol{font-size:48px;}
 .illustration-gallery{grid-template-columns:1fr;}
 .illustration-endnote{display:block;}.illustration-endnote a{display:inline-block;margin-top:18px;}
}
@media(prefers-reduced-motion:reduce){.off-duty-play .interest-emoji,.off-duty-play .interest-symbol,.off-duty-play .interest-copy,.illustration-image img{transition:none;}}

/* Off-duty discoveries become small Polaroids, with the story below the photo. */
.about-page > .off-duty-polaroids {grid-template-columns:60px minmax(0,1fr);gap:30px;align-items:center;padding:48px 0;}
.paper .off-duty-polaroids > h2 {writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;max-width:none;font-size:clamp(27px,2.8vw,36px);line-height:1;margin:0;}
.off-duty-polaroids .off-duty-play {grid-column:2;}
.off-duty-polaroids .interest-triggers {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;height:360px;}
.off-duty-polaroids .interest-emoji {display:block;flex:none;width:100%;height:360px;border:0;background:transparent;overflow:visible;isolation:isolate;transition:transform .45s cubic-bezier(.22,.75,.25,1);}
.off-duty-polaroids .interest-emoji:nth-child(4){--interest-turn:4deg;}
.off-duty-polaroids .interest-emoji[aria-expanded="true"] {flex:none;transform:translateY(-5px) rotate(var(--interest-turn));z-index:2;}
.off-duty-polaroids .interest-symbol {top:50%;left:50%;font-size:clamp(42px,4.6vw,64px);transform:translate(-50%,-50%);opacity:1;transition:opacity .22s ease,transform .4s ease;}
.off-duty-polaroids .interest-emoji[aria-expanded="true"] .interest-symbol {top:50%;transform:translate(-50%,-65%) scale(.85);opacity:0;}
.off-duty-polaroids .polaroid-frame {display:grid;grid-template-rows:minmax(0,1fr) auto;gap:14px;position:absolute;inset:0;padding:12px 12px 18px;background:var(--paper);color:var(--ink);box-shadow:0 10px 24px #14081033;opacity:0;visibility:hidden;transform:translateY(10px) scale(.96);transition:opacity .3s ease,transform .45s cubic-bezier(.22,.75,.25,1),visibility .3s;}
.off-duty-polaroids .polaroid-frame.is-open {opacity:1;visibility:visible;transform:none;transition-delay:0s;}
.off-duty-polaroids .interest-photo {position:relative;display:block;min-height:0;width:100%;aspect-ratio:1;background:#351a2a10;overflow:hidden;}
.off-duty-polaroids .interest-photo :is(img,video) {position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;}
.off-duty-polaroids .polaroid-caption {display:block;font:14px/1.4 Arial,sans-serif;}
.off-duty-polaroids .polaroid-caption strong {font:normal 23px/1.1 Georgia,serif;display:block;letter-spacing:-.025em;margin:0 0 10px;}
.off-duty-polaroids .polaroid-caption > span {display:block;font:14px/1.4 Arial,sans-serif;}
/* Keep the selected artworks on this site, with uncropped detail views. */
.quest-illustrations .quest-art img {object-fit:cover;display:block;}
.illustration-collaborators {display:flex;align-items:center;gap:60px;padding:0 0 38px;}
.illustration-collaborators img {display:block;width:180px;height:70px;object-fit:contain;mix-blend-mode:multiply;}
.paper.illustrations-page > .illustration-collection {display:block;border-top:1px solid var(--line);padding:38px 0;margin:0;}
.collection-heading {display:grid;grid-template-columns:1fr 1.3fr;gap:36px;margin-bottom:28px;align-items:start;}
.paper .collection-heading h2 {font:normal clamp(28px,3.4vw,39px)/1.12 Georgia,serif;letter-spacing:-.025em;margin:0;}
.paper .collection-heading p {font:16px/1.55 Arial,sans-serif;margin:0;max-width:550px;}
.illustration-gallery figure,.illustration-feature {margin:0;min-width:0;}
.illustration-gallery figure img {display:block;width:100%;height:auto;}
.illustration-feature {max-width:760px;margin:0 auto;}
.illustration-feature img {display:block;width:100%;height:auto;}
.illustrations-page figcaption {font:13px/1.4 Arial,sans-serif;padding-top:12px;}
.artwork-pending {display:grid;place-items:center;min-height:220px;border:1px solid var(--line);background:#351a2a08;font:italic 18px Georgia,serif;}
@media(max-width:900px){.off-duty-polaroids .interest-triggers{gap:12px;}.off-duty-polaroids .polaroid-caption strong{font-size:21px;}.off-duty-polaroids .polaroid-caption > span{font-size:13px;}}
@media(max-width:650px){
 .about-page > .off-duty-polaroids{grid-template-columns:40px minmax(0,1fr);gap:18px;padding:38px 0;}
 .off-duty-polaroids .interest-triggers{grid-template-columns:repeat(2,minmax(0,1fr));height:auto;gap:16px;}
 .off-duty-polaroids .interest-emoji{height:310px;}
 .off-duty-polaroids .interest-symbol{font-size:52px;}
 .paper .off-duty-polaroids > h2{font-size:27px;}
 .collection-heading{grid-template-columns:1fr;gap:14px;}
 .illustration-collaborators{gap:30px;}.illustration-collaborators img{width:140px;height:60px;}
}
@media(max-width:480px){.off-duty-polaroids .interest-emoji{height:300px;}.off-duty-polaroids .polaroid-frame{padding:8px 8px 14px;gap:10px;}.off-duty-polaroids .polaroid-caption strong{font-size:20px;}}
@media(prefers-reduced-motion:reduce){.off-duty-polaroids .interest-emoji,.off-duty-polaroids .polaroid-frame,.off-duty-polaroids .interest-symbol{transition:none;}.off-duty-polaroids .interest-emoji[aria-expanded="true"]{transform:none;}}

/* A small invitation to start a conversation. */
.contact-studio {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,88px);align-items:start;margin:32px 0 54px;}
.contact-starters {background:var(--ink);color:var(--paper);padding:32px;}
.contact-kicker {font:12px/1.4 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;opacity:.75;}
.paper .contact-starters h2 {font:normal clamp(28px,3vw,39px)/1.1 Georgia,serif;margin:20px 0 16px;}
.paper .contact-starters p {font:15px/1.55 Arial,sans-serif;margin:0 0 24px;}
.contact-topics {display:grid;gap:10px;}
.contact-topics button {display:flex;align-items:center;gap:12px;text-align:left;background:transparent;border:1px solid #fcf1d855;color:var(--paper);padding:14px;font:14px/1.4 Arial,sans-serif;cursor:pointer;transition:background .25s,color .25s,transform .25s;}
.contact-topics button > span {font:24px/1 "Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;}
.contact-topics button:is(:hover,[aria-pressed="true"]) {background:var(--paper);color:var(--ink);transform:translateX(3px);}
.contact-topics button:focus-visible {outline:2px solid var(--paper);outline-offset:3px;}
.paper .contact-starters .contact-prompt {font:13px/1.5 Arial,sans-serif;margin:24px 0 0;min-height:60px;opacity:.8;}
.contact-studio .contact-form {max-width:none;margin:0;}
.off-duty-polaroids .polaroid-frame span {transform:none;}
.off-duty-polaroids .polaroid-caption {text-align:left;}
@media(max-width:760px){.contact-studio{grid-template-columns:1fr;gap:28px;}.contact-starters{padding:24px;}.contact-topics{grid-template-columns:repeat(2,minmax(0,1fr));}.contact-topics button{font-size:13px;padding:12px;}.paper .contact-starters .contact-prompt{min-height:40px;}}
@media(max-width:400px){.contact-topics{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){.contact-topics button{transition:none;}.contact-topics button:is(:hover,[aria-pressed="true"]){transform:none;}}

.contact-starters h2 {margin-top:0;}
@media(hover:hover) and (pointer:fine){html.project-emoji-cursors [data-contact-topic][data-project-emoji],html.project-emoji-cursors [data-contact-topic][data-project-emoji] *{cursor:none;}}
.illustration-collaborators {
  justify-content:flex-start;
  background:var(--ink);
  padding:24px clamp(22px,4vw,44px);
  gap:clamp(24px,5vw,64px);
}
.illustration-collaborators img {width:150px;height:52px;mix-blend-mode:normal;filter:url(#illustration-cream);object-position:left center;}
.artwork-link {display:block;overflow:hidden;}
.artwork-link img {transition:transform .45s ease;}
.artwork-link:hover img {transform:scale(1.025);}
.artwork-link:focus-visible {outline:2px solid var(--ink);outline-offset:5px;}
.illustration-collection .artwork-source {display:block;width:fit-content;margin-top:8px;text-decoration:underline;text-underline-offset:3px;font:12px/1.5 Arial,sans-serif;}
@media(max-width:480px){.illustration-collaborators {padding:22px;gap:24px;}.illustration-collaborators img{width:calc(50% - 12px);height:46px;}}
@media(prefers-reduced-motion:reduce){.artwork-link img{transition:none;}.artwork-link:hover img{transform:none;}}
.illustration-collaborators img[src="unesco-logo-cream.svg"] {filter:none;}
.illustration-collaborators img[src="un-women-logo.jpg"] {height:76px;object-fit:cover;object-position:center;}

/* The footer stays mounted as visitors move between pages. */
.footer-playlist {text-align:center;}
.record-player {
  position:relative;
  width:min(100%, 285px);
  margin:16px auto 0;
  color:var(--paper);
}
.record-disc {
  display:grid;
  position:relative;
  place-items:center;
  isolation:isolate;
  width:100%;
  aspect-ratio:1;
  padding:0;
  border:0;
  border-radius:50%;
  background:#18131a;
  color:var(--ink);
  box-shadow:0 10px 23px #15090f66;
  cursor:pointer;
  container-type:inline-size;
}
.record-grooves {
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:inset 0 0 0 2px #76616d55, inset 0 0 9px #000;
  background:
    conic-gradient(from 26deg,transparent,#d9c6d33d 26deg,transparent 56deg,transparent 176deg,#d9c6d32b 205deg,transparent 237deg),
    repeating-radial-gradient(circle,#171319 0 1px,#2c242d 2px,#18141a 3px 4px);
  animation:stereo-spin 1.8s linear infinite paused;
}
.record-label {
  position:relative;
  display:grid;
  place-items:center;
  width:45%;
  aspect-ratio:1;
  border-radius:50%;
  overflow:hidden;
}
.record-label img {display:block;width:100%;height:100%;object-fit:cover;}
.record-tonearm {
  position:absolute;
  z-index:2;
  top:3%;
  left:89%;
  width:10%;
  height:50%;
  transform-origin:50% 10%;
  transform:rotate(-7deg);
  transition:transform .42s ease;
}
.record-tonearm > span {position:absolute;display:block;}
.tonearm-pivot {
  inset:0 0 auto;
  aspect-ratio:1;
  border-radius:50%;
  border:2px solid #5e454f;
  background:radial-gradient(circle at 36% 28%,#f8e4cd,#b39289 80%);
  box-shadow:0 2px 5px #12081099;
}
.tonearm-shaft {
  top:16%;
  left:44%;
  width:12%;
  height:74%;
  border-radius:6px;
  background:linear-gradient(90deg,#9c7c76,#f8e4cd 45%,#c0a196);
  box-shadow:0 2px 4px #12081099;
}
.tonearm-head {
  bottom:0;
  left:32%;
  width:36%;
  height:16%;
  border-radius:3px;
  background:linear-gradient(90deg,#9d7f76,#e1c9b3 45%,#bc9d90);
  box-shadow:0 2px 4px #12081099;
}
.is-playing .record-tonearm {transform:rotate(53deg);}
.record-disc:focus-visible {outline:2px solid var(--paper);outline-offset:5px;}
.is-playing .record-grooves {animation-play-state:running;}
.record-source {
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip-path:inset(50%);
  pointer-events:none;
}
.record-fallback {margin-top:12px;font:12px/1.4 Arial,sans-serif;}
@keyframes stereo-spin {to{rotate:1turn;}}
@media(prefers-reduced-motion:reduce){.record-grooves{animation:none;}.record-tonearm{transition:none;}}

.mark-hurry-printing {background:#152f48;}
.illustration-collaborators img[src="unesco-logo-reference.png"] {filter:url(#unesco-plum-cream);height:76px;object-position:center;}
.artwork-zoom {display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;}
.artwork-zoom:focus-visible {outline:2px solid var(--ink);outline-offset:4px;}
.illustration-collection figcaption {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.illustration-collection .artwork-read {padding:10px 16px;font-size:13px;}
.artwork-dialog {color:var(--ink);background:var(--paper);border:0;padding:0;max-width:94vw;max-height:94dvh;}
.artwork-dialog::backdrop {background:#21111aeb;}
.artwork-dialog-inner {position:relative;padding:18px 20px 20px;}
.artwork-dialog-inner button {position:absolute;right:12px;top:10px;border:0;background:var(--ink);color:var(--paper);font:24px/1 Arial,sans-serif;width:40px;height:40px;cursor:pointer;}
.artwork-dialog-inner h2 {font:normal 22px/1.2 Georgia,serif;margin:0 50px 14px 0;}
.artwork-dialog-inner img {display:block;max-width:min(1100px,85vw);max-height:77dvh;width:auto;height:auto;margin:auto;}

.about-page > .off-duty-polaroids {display:block;margin-top:clamp(24px,5vw,64px);padding:clamp(38px,6vw,74px) 0;}
.paper .off-duty-heading h2 {writing-mode:horizontal-tb;transform:none;margin:0 0 12px;font-size:clamp(29px,4vw,45px);white-space:normal;}
.paper .off-duty-heading p {font:16px/1.5 Arial,sans-serif;margin:0 0 24px;}
.off-duty-polaroids .interest-triggers {height:auto;gap:clamp(12px,2.4vw,30px);align-items:start;}
.off-duty-polaroids .interest-emoji {height:auto;transform:rotate(var(--tilt));}
.off-duty-polaroids .polaroid-frame {position:relative;inset:auto;grid-template-rows:auto auto;}
.off-duty-polaroids .interest-emoji:nth-child(odd) {--tilt:-5deg;margin-top:24px;}
.off-duty-polaroids .interest-emoji:nth-child(even) {--tilt:4deg;}
.off-duty-polaroids .interest-front {
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:14px;
  border:1px solid #fcf1d866;background:#fcf1d80b;color:var(--paper);
  transform:none;transition:opacity .25s ease;
}
.off-duty-polaroids .interest-front .interest-symbol {position:static;transform:none;opacity:1;}
.off-duty-polaroids .interest-front strong {font:normal clamp(15px,1.8vw,23px)/1.1 Georgia,serif;text-align:center;}
.off-duty-polaroids .interest-emoji[aria-expanded="true"] .interest-front {opacity:0;transform:none;}
@media(max-width:480px){.off-duty-polaroids .interest-symbol{font-size:40px;}}
@media(prefers-reduced-motion:reduce){.off-duty-polaroids .interest-front{transition:none;}}
.artwork-dialog-inner img {width:min(82vw,900px);height:min(74dvh,740px);object-fit:contain;}

.illustrations-page > .page-heading {border-bottom:0;padding-bottom:0;}
.illustrations-page > .page-heading::after {display:none;}

.footer-copyright {
  margin:0;
  padding:16px clamp(20px,4vw,64px) 20px;
  color:var(--paper);
  text-align:center;
  font:12px/1.5 Arial,sans-serif;
}
