/* Revised Goal, presentation stages, and a desktop matchlight. */
.slideshow{display:block;position:relative;min-width:0;background:#252a25;border:1px solid #817759;color:#e8e0ce;box-shadow:0 15px 30px #21180d19;margin:0;overflow:hidden}
.slide-topline{display:flex;justify-content:space-between;gap:15px;padding:20px 25px 12px;color:#c1b28e}.slide-topline .mono{font-size:10px}
.slide-window{display:flex;position:relative;gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-left:24px;padding:12px 24px 20px;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y;scroll-behavior:smooth}
.slide-window::-webkit-scrollbar{display:none}.slide-window:after{content:'';flex:0 0 14%;pointer-events:none}.slide-window.is-dragging{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing}.slide-window.is-dragging *{cursor:grabbing;user-select:none}
.slide{flex:0 0 84%;min-width:0;scroll-snap-align:start;position:relative;opacity:.6;transition:opacity .4s;align-self:start}.slide.is-current,.slide:hover,.slide:focus-within{opacity:1}.slide:first-child{opacity:1}.slideshow-ready .slide:first-child:not(.is-current):not(:hover):not(:focus-within){opacity:.6}
.slide>a{position:relative;display:block;padding:8px;background:#eee7d6;border:1px solid #bbad90;box-shadow:5px 8px 16px #0004;cursor:zoom-in;overflow:hidden}.slide img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#f9f6ef;pointer-events:none}.slide-expand{position:absolute;right:17px;bottom:17px;padding:8px 12px;background:#25241ce8;color:#fff4dc;font:9px var(--mono);letter-spacing:.04em;opacity:0;translate:0 6px;transition:opacity .3s,translate .3s}.slide:hover .slide-expand,.slide:focus-within .slide-expand{opacity:1;translate:0}
.slide figcaption{display:flex;justify-content:space-between;gap:20px;padding:15px 0 0;font-size:10px;color:#c6b996}.slide figcaption>span:first-child{white-space:nowrap}.slide figcaption>span:last-child{text-align:right}
.slide-controls{display:none;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-top:1px solid #a5936138;background:#1e241f}
.slideshow-ready .slide-controls{display:flex}.slide-controls>button{display:flex;align-items:center;gap:12px;min-height:45px;min-width:110px;justify-content:center;border:1px solid #aa966763;background:transparent;color:#f0e5ce;padding:10px 15px;font-family:var(--mono);font-size:20px;transition:background .25s,border .25s}.slide-controls>button span{font-size:10px}.slide-controls>button:hover:not(:disabled){background:#bfa47125;border-color:#d0b777}.slide-controls>button:disabled{opacity:.3}
.slide-position{display:flex;align-items:center;flex-direction:column;gap:10px;min-width:0}.slide-count{font:12px var(--mono);letter-spacing:.12em}.slide-dots{display:flex;gap:5px;flex-wrap:wrap;justify-content:center;max-width:330px}.slide-dots button{border:0;background:transparent;padding:5px 2px;min-width:11px;height:18px;position:relative}.slide-dots button:after{content:'';position:absolute;left:2px;right:2px;top:7px;height:3px;background:#887c5e;transition:background .3s,height .3s}.slide-dots button[aria-current]:after{background:#f0cb80;height:5px;top:6px}.slide-dots button:hover:after{background:#fff0cb}
.summary-gallery{display:block;max-width:none}.summary-gallery .slide{flex-basis:84%}.summary-gallery .slide img{aspect-ratio:4/3}.summary-gallery .slide-window{gap:24px}.xperience-page .chapter:first-of-type{padding-top:45px}.proof-section{margin-top:60px}.proof-reel{background:#ddd1b8;color:var(--ink);border-color:#b2a386;box-shadow:none}.proof-reel .slide-topline{color:#726249}.proof-reel .slide{flex-basis:43%}.proof-reel .slide-window:after{flex-basis:54%}.proof-reel .slide img{aspect-ratio:4/5;max-height:380px;object-fit:contain;background:#eee8da}.proof-reel .slide figcaption{color:#65563b}.proof-reel .slide-controls{background:#d1c2a6;border-color:#b1a07b}.proof-reel .slide-controls>button{color:#3f3629;border-color:#897a5b}.proof-reel .slide-dots button[aria-current]:after{background:#802b22}
.deck-section{padding-top:55px;padding-bottom:65px}.deck-section+.deck-section{border-top:1px solid var(--line)}
/* A personal essay in four distinct chapters, using the supplied words in order. */
.goal-revised .paper{background:var(--paper)}.goal-mast{padding:30px var(--pad) 0}.goal-mast .folio{border-color:var(--ink)}
.goal-prologue{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;min-height:720px;padding:65px var(--pad) 80px;align-items:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 10% 60%,#cfb67738,transparent 55%)}
.goal-title{position:relative;align-self:stretch;display:flex;justify-content:center;flex-direction:column}.goal-title>.mono{color:var(--red);font-size:10px;letter-spacing:.2em}.goal-title h1{font-size:clamp(100px,12vw,170px);line-height:.86;letter-spacing:-.065em;margin:25px 0 0;z-index:1;position:relative}.goal-title h1 em{font-family:var(--serif);color:var(--red);font-size:1.14em}.goal-belief p{font-size:clamp(27px,2.6vw,38px);line-height:1.35;letter-spacing:-.012em;margin:0;max-width:630px}.goal-belief p:first-letter{color:var(--red)}
.goal-orbit{position:relative;width:185px;height:120px;margin:47px 0 0 12px;display:grid;place-items:center;opacity:.7}.goal-orbit i{position:absolute;inset:14px 0;border:1px solid #96734770;border-radius:50%;transform:rotate(-24deg)}.goal-orbit i:nth-child(2){transform:rotate(35deg)}.goal-orbit i:nth-child(3){transform:rotate(90deg)}.goal-orbit span{font-size:35px;color:#907342}.goal-orbit:after{content:'';position:absolute;top:12px;left:75%;width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px #802b2210}
.goal-chapters{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #9e8c66;padding:0 var(--pad);background:#e0d5bd;gap:20px}.goal-chapters a{display:flex;gap:13px;align-items:center;padding:20px 0;color:#6a482c;font:10px var(--mono);transition:color .3s}.goal-chapters a span{color:#332c22}.goal-chapters a:hover{color:var(--red)}
.goal-philosophy{padding:85px var(--pad) 75px;background:var(--paper-light)}.goal-column{max-width:760px;margin:auto;font-size:23px;line-height:1.65}.goal-column>p{margin-bottom:27px}.goal-column>h2{font-size:45px;line-height:1.15;margin-bottom:33px;letter-spacing:-.025em}.goal-column .goal-pivot{font-family:var(--display);font-size:clamp(34px,3.6vw,52px);line-height:1.2;letter-spacing:-.025em;color:var(--red);margin:55px -55px 45px;padding:35px 0;border-block:3px double #a9916c70}.goal-both{font-style:italic;font-size:30px}.goal-choice{font-weight:600;border-left:2px solid var(--red);padding-left:23px;margin-top:42px}
.goal-road{padding:70px var(--pad) 75px;background:#e5dcc9;border-block:1px solid var(--line)}.goal-chapter-head{display:flex;align-items:baseline;gap:25px;margin-bottom:55px}.goal-chapter-head>.mono{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:1px solid currentColor;border-radius:50%;font-size:10px;color:var(--red)}.goal-chapter-head h2{font-size:clamp(42px,5vw,68px);line-height:1.06;letter-spacing:-.04em;margin:0}.goal-routes{display:grid;grid-template-columns:1fr 30px 1fr 30px 1fr;gap:18px;align-items:stretch;margin:45px 0 55px;counter-reset:route}.goal-route{position:relative;padding:55px 25px 28px;font-size:25px;line-height:1.3;background:var(--paper-light);border:1px solid #b8a688;box-shadow:3px 6px 0 #94805a1a;margin:0;counter-increment:route;transform:rotate(-1deg)}.goal-route:nth-of-type(3){transform:rotate(1deg)}.goal-route:before{content:counter(route,upper-roman);position:absolute;top:20px;left:25px;font:12px var(--mono);color:var(--red)}.route-or{align-self:center;font:10px var(--mono);text-transform:uppercase;text-align:center;margin:0;color:#8a7959}.goal-column .goal-bridge{font-family:var(--display);font-size:42px;line-height:1.15;color:var(--red);margin:55px 0 0;max-width:520px}
.goal-problem{background:#20221f;color:#eee7d8}.goal-problem>.goal-chapter-head{padding:65px var(--pad) 0;margin:0}.goal-problem .goal-chapter-head>.mono{color:#c6ad79}.goal-problem .goal-chapter-head h2{font-size:42px;max-width:650px}.goal-revised .goal-opening{padding-top:50px;min-height:0}.goal-revised .goal-opening .goal-vow{font-size:clamp(43px,4.4vw,64px)}.goal-revised .goal-context+.goal-context{margin-top:24px}.goal-revised .goal-timepiece{top:100px;margin-top:90px}.goal-revised .watch-chain{height:180px}
.goal-inspiration{padding:75px var(--pad) 80px;background:var(--paper-light);border-top:5px double #b9a98b}.goal-inspiration .goal-chapter-head h2{max-width:700px}.goal-memory{display:grid;grid-template-columns:1.3fr .7fr;gap:65px;align-items:start}.goal-memory .prose{font-size:23px;line-height:1.65}.goal-memory .grandpa{position:sticky;top:80px;margin:18px 0 0;max-width:100%}.goal-memory .prose>p:first-child:first-letter{float:left;font:75px/.85 var(--display);margin:9px 10px 0 0;color:var(--red)}
.goal-finale{padding:80px var(--pad) 85px;background:#e0d4b9;text-align:center;border-top:1px solid #af9c76;position:relative;overflow:hidden}.goal-finale>p{font-size:clamp(26px,2.8vw,40px);line-height:1.4;max-width:920px;margin:25px auto 0}.finale-star{font-size:32px;color:var(--red)}.goal-finale:before{content:'';position:absolute;inset:14px;border:1px solid #a88c5033;pointer-events:none}.goal-revised.reading-light .goal-problem{background:var(--paper-light);color:var(--ink)}.goal-revised.reading-light .goal-problem .goal-chapter-head>.mono{color:var(--red)}
/* Warm pointer light; entrance and match cursor are in edition.css. */
.match-beam{position:fixed;inset:0;pointer-events:none;z-index:6;opacity:0;transition:opacity .65s;background:radial-gradient(ellipse 270px 300px at var(--light-x,70%) var(--light-y,40%),#f0d39d48,transparent 80%);mix-blend-mode:soft-light}.match-lit .match-beam{opacity:1}.match-lit .masthead:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle 210px at var(--heat-x,0px) var(--heat-y,0px),#b68b4d55,transparent);mix-blend-mode:color}.match-lit .quote-card:hover{box-shadow:4px 12px 30px #92632938,0 0 0 1px #c29650}.match-lit .project-art:after{background:radial-gradient(ellipse at var(--heat-x,30%) var(--heat-y,0%),#fff1bd58,transparent 65%)}.match-lit .about-row:hover{box-shadow:inset 3px 0 #c4a268}.match-lit .ambient{opacity:.26}
@keyframes match-flame{from{transform:rotate(-5deg) scale(.94,1.05)}to{transform:rotate(4deg) scale(1.05,.95)}}@keyframes spark-strike{0%{opacity:1;scale:.4}100%{opacity:0;scale:1.5}}

@media(max-width:1050px){.goal-prologue{gap:40px;min-height:620px}.goal-title h1{font-size:120px}.goal-belief p{font-size:29px}.goal-route{font-size:21px;padding-inline:20px}.goal-routes{gap:10px;grid-template-columns:1fr 20px 1fr 20px 1fr}.goal-memory{gap:40px}.goal-column .goal-pivot{margin-inline:0}.goal-memory .prose{font-size:21px}.goal-chapters{gap:12px}.goal-chapters a{font-size:9px;gap:9px}}
@media(max-width:700px){.slideshow .slide-topline{padding:16px 15px 8px}.slide-topline .mono{font-size:8px}.slide-topline .mono:last-child{font-size:7px}.slide-window{gap:13px;padding:10px 14px 15px;scroll-padding-left:14px}.slide{flex-basis:89%}.slide-window:after{flex-basis:10%}.slide>a{padding:4px}.slide figcaption{font-size:8px;gap:12px;padding-top:10px}.slide-expand{display:none}.slide-controls{padding:14px 13px;gap:12px}.slide-controls>button{min-width:42px;width:42px;padding:8px;min-height:43px}.slide-controls>button span{display:none}.slide-count{font-size:10px}.slide-dots{gap:2px;max-width:195px}.slide-dots button{min-width:9px;padding-inline:1px}.slide-dots button:after{left:1px;right:1px}.summary-gallery .slide{flex-basis:91%}.summary-gallery .slide-window{gap:13px}.summary-gallery .slide-window:after{flex-basis:8%}.proof-reel .slide{flex-basis:72%}.proof-reel .slide-window:after{flex-basis:27%}.proof-reel .slide img{max-height:300px}.proof-section{margin-top:40px}.deck-section{padding-block:35px}.hero-desk{max-width:150px}.goal-mast{padding-top:20px}.goal-prologue{display:block;min-height:0;padding-top:40px;padding-bottom:42px}.goal-title{display:block}.goal-title>.mono{font-size:9px}.goal-title h1{font-size:89px;display:flex;gap:17px;align-items:baseline;margin:24px 0 32px}.goal-title h1 br{display:none}.goal-orbit{display:none}.goal-belief p{font-size:26px;line-height:1.38}.goal-chapters{grid-template-columns:1fr 1fr;gap:0 20px;padding-block:7px}.goal-chapters a{padding-block:13px;font-size:9px}.goal-philosophy{padding-block:42px}.goal-column{font-size:20px;line-height:1.6}.goal-column>h2{font-size:34px;margin-bottom:25px}.goal-column .goal-pivot{font-size:33px;margin-block:35px;padding-block:28px}.goal-both{font-size:26px}.goal-choice{padding-left:17px}.goal-road{padding-block:43px}.goal-chapter-head{gap:16px;margin-bottom:32px;align-items:flex-start}.goal-chapter-head>.mono{width:26px;height:26px;font-size:8px;margin-top:4px}.goal-chapter-head h2{font-size:41px}.goal-routes{grid-template-columns:1fr;gap:15px;max-width:440px;margin:28px auto 35px}.goal-route{font-size:24px;padding:43px 22px 24px}.goal-route:before{top:17px;left:22px}.route-or{font-size:9px}.goal-column .goal-bridge{font-size:35px;margin-top:35px}.goal-problem>.goal-chapter-head{padding-top:42px;gap:15px}.goal-problem .goal-chapter-head h2{font-size:34px}.goal-revised .goal-opening{padding-top:33px;padding-bottom:80px}.goal-revised .goal-opening .goal-vow{font-size:40px;line-height:1.14}.goal-revised .goal-timepiece{margin:24px auto -60px;top:auto;position:relative}.goal-revised .goal-context+.goal-context{margin-top:23px}.goal-inspiration{padding-block:43px 50px}.goal-inspiration .goal-chapter-head h2{font-size:37px}.goal-memory{display:flex;flex-direction:column;gap:28px}.goal-memory .prose{font-size:20px;line-height:1.6}.goal-memory .grandpa{position:relative;top:auto;margin:0 auto;max-width:280px}.goal-finale{padding-block:48px 55px}.goal-finale>p{font-size:26px;line-height:1.42}.finale-star{font-size:25px}}
@media(max-width:370px){.goal-title h1{font-size:76px;gap:12px}.goal-belief p{font-size:24px}.goal-chapter-head h2{font-size:35px}.goal-revised .goal-opening .goal-vow{font-size:35px}.goal-inspiration .goal-chapter-head h2{font-size:33px}.goal-column .goal-pivot{font-size:29px}.slide-topline .mono:last-child{max-width:65px;text-align:right;line-height:1.5}.slide-controls{gap:8px;padding-inline:10px}.slide-dots{max-width:150px}}
@media(prefers-reduced-motion:reduce){html:not(.motion-full) .slide-window{scroll-behavior:auto}html:not(.motion-full) .match-lit .matchstick i,html:not(.motion-full) .just-struck .match-sparks{animation:none}html:not(.motion-full) .match-beam{transition:none}html:not(.motion-full) .goal-route{transform:none}}
@media print{.match-experience,.match-beam,.goal-chapters,.slide-controls,.slide-topline{display:none}.slide-window{display:block;overflow:visible}.slide{opacity:1;break-inside:avoid;margin-bottom:20px}.slideshow{background:white;color:black;box-shadow:none;border:0}.goal-prologue,.goal-memory,.goal-routes{display:block}.goal-title h1{font-size:50pt}.goal-belief p,.goal-column,.goal-memory .prose{font-size:12pt}.goal-problem,.goal-opening{background:white;color:black}.goal-route{transform:none;box-shadow:none}.slide-expand{display:none}}

/* Xperience proof captions — contextual notes, not generic filenames. */
.proof-reel .slide figcaption{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:14px;
  align-items:start;
  margin-top:11px;
  padding:13px 3px 1px;
  border-top:1px solid #aa9877;
  color:#4e4333;
}
.proof-reel .slide figcaption>span:first-child{
  font:9px/1.4 var(--mono);
  letter-spacing:.08em;
  color:var(--red);
  text-align:left;
}
.proof-reel .slide figcaption>span:last-child{
  font-size:13px;
  line-height:1.38;
  text-align:left;
  color:#4e4333;
}
.proof-reel .slide.is-current figcaption>span:last-child{color:#241f18}
@media(max-width:700px){
  .proof-reel .slide figcaption{grid-template-columns:45px 1fr;gap:10px;margin-top:8px;padding-top:10px}
  .proof-reel .slide figcaption>span:first-child{font-size:8px}
  .proof-reel .slide figcaption>span:last-child{font-size:11px;line-height:1.35}
}
