      .experience .case-link {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: space-between;
        gap: 30px;
        min-height: 48px;
        padding: 12px 16px;
        border: 1px solid #111;
        overflow: hidden;
        color: #111;
        font-family: "Courier New", Courier, monospace;
        font-size: 12px;
        letter-spacing: 0.04em;
        text-decoration: none;
        transition: color 180ms ease 60ms;
      }
      .experience .case-link::before {
        content: "";
        position: absolute;
        inset: 0;
        background: #111;
        transform: scaleX(0);
        transform-origin: left center;
        transition: transform 320ms cubic-bezier(.22, 1, .36, 1);
      }
      .experience .case-link:hover,
      .experience .case-link:focus-visible { color: #f6f1e8; }
      .experience .case-link:focus-visible { outline-color: #111; }
      .experience .case-link:hover::before,
      .experience .case-link:focus-visible::before { transform: scaleX(1); }
      .experience .case-link > span,
      .experience .case-link svg { position: relative; z-index: 1; }
      .experience .case-link svg { flex: none; width: 17px; height: 17px; transition: transform 320ms ease; }
      .experience .case-link:hover svg,
      .experience .case-link:focus-visible svg { transform: translate(2px, -2px); }

      .experience {
        position: relative;
        padding: clamp(88px, 10vw, 144px) calc(6% + 48px);
        border-top: 1px solid #c9c6c0;
        text-align: center;
      }
      .experience::before,
      .experience::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        width: 1px;
        background: #c9c6c0;
        pointer-events: none;
      }
      .experience::before { left: 6%; }
      .experience::after { right: 6%; }
      .experience-inner { max-width: 720px; margin: 0 auto; }
      .experience-type-frame { position: relative; display: inline-block; white-space: pre; }
      .experience-type-measure { visibility: hidden; }
      .experience-type-ink { position: absolute; inset: 0 auto auto 0; white-space: pre; }
      .experience-type-ink.is-typing::after { content: ""; display: inline-block; width: 1px; height: .68em; margin-left: 3px; background: currentColor; animation: caret-blink .7s steps(1) infinite; }
      .experience h2 {
        margin: 0 0 clamp(56px, 7vw, 88px);
        font-family: "Cormorant Garamond", Baskerville, Georgia, serif;
        font-size: clamp(3.2rem, 6vw, 4.6rem);
        font-weight: 500;
        letter-spacing: -.035em;
        line-height: 1;
      }
      .experience-list { display: grid; gap: 38px; margin: 0; padding: 0; list-style: none; }
      .experience-company {
        margin: 0 0 12px;
        min-height: 1em;
        font-family: "Cormorant Garamond", Baskerville, Georgia, serif;
        font-size: clamp(1.8rem, 2.5vw, 2.25rem);
        font-weight: 500;
        line-height: 1;
      }
      .experience-role {
        margin: 0;
        color: #3f3b37;
        font-family: "Gill Sans Light", "Gill Sans", "Gill Sans MT", "Trebuchet MS", sans-serif;
        font-size: clamp(1rem, 1.4vw, 1.2rem);
        font-weight: 300;
        line-height: 1.4;
      }
      .experience-role + .experience-role { margin-top: 6px; }
      .experience .case-link {
        width: min(100%, 300px);
        min-height: 64px;
        margin-top: 60px;
        padding: 18px 24px;
        font-size: 13px;
        transition: opacity .6s ease, color 180ms ease 60ms;
      }
      .experience-text-pending .case-link { opacity: 0; visibility: hidden; }


.experience{z-index:1;background:#f6f1e8}
.experience .case-link{text-decoration:none}
@keyframes caret-blink{50%{opacity:0}}
@media(max-width:600px){.experience{padding:80px calc(6% + 26px)}.experience h2{font-size:clamp(3rem,12vw,3.8rem)}.experience-list{gap:32px}.experience .case-link{margin-top:52px}}
@media(prefers-reduced-motion:reduce){.experience .case-link,.experience .case-link::before,.experience .case-link svg{transition:none}}

/* About's text résumé follows the linked PDF using the portfolio's type. */
.resume-text{text-align:left}
.resume-text .experience-inner{max-width:1080px}
.resume-text h2{margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid #c9c6c0;font-size:clamp(2rem,3.5vw,3rem)}
.resume-text .case-link{display:flex;margin-inline:auto}
.resume-layout{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(220px,1fr);gap:clamp(48px,6vw,88px);align-items:start}
.resume-job+.resume-job{margin-top:48px}
.resume-job-header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.resume-job h3{margin:0;font:500 clamp(1.8rem,2.5vw,2.25rem)/1.1 "Cormorant Garamond",Baskerville,Georgia,serif;letter-spacing:-.025em}
.resume-date{margin:0;color:#736d65;font:12px/1.6 "Courier New",Courier,monospace;letter-spacing:.02em}
.resume-position+.resume-position{margin-top:32px}
.resume-position h4{margin:0 0 14px;font:500 18px/1.4 "Gill Sans","Gill Sans MT","Trebuchet MS",sans-serif}
.resume-position ul{max-width:69ch;margin:0;padding-left:20px;color:#3f3b37;font:300 18px/1.6 "Gill Sans Light","Gill Sans","Gill Sans MT","Trebuchet MS",sans-serif}
.resume-position li+li{margin-top:12px}
.resume-sidebar section+section{margin-top:40px}
.resume-sidebar h3{margin:0 0 16px;font:500 1.7rem/1.1 "Cormorant Garamond",Baskerville,Georgia,serif;letter-spacing:-.025em}
.resume-sidebar p,.resume-meta-list{color:#3f3b37;font:300 17px/1.6 "Gill Sans Light","Gill Sans","Gill Sans MT","Trebuchet MS",sans-serif}
.resume-sidebar .resume-date{margin-bottom:12px;font:12px/1.6 "Courier New",Courier,monospace;color:#736d65}
.resume-meta-list{list-style:none;margin:0;padding:0}
.resume-meta-list li+li{margin-top:6px}
.resume-meta-list span{display:block}
#resume-education+.resume-meta-list li+li{margin-top:22px}
@media(max-width:760px){.resume-layout{grid-template-columns:1fr;gap:56px}.resume-text h2{margin-bottom:24px}.resume-job-header{gap:8px}.resume-job-header .resume-date{width:100%}}

/* Quarter-circle marks sit inside Home Experience’s rail corners. */
.experience-corner{position:absolute;width:clamp(96px,14vw,192px);height:clamp(96px,14vw,192px);overflow:visible;pointer-events:none;color:#c9c6c0}
.experience-corner path{stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}
.experience-corner--top-right{top:-.5px;right:calc(6% + .5px)}
.experience-corner--bottom-left{bottom:-.5px;left:calc(6% + .5px);transform:rotate(180deg)}
