:root{--bg:#f2f4f7;--ink:#15171c;--body:#3a3f49;--soft:#646976;--pen:#2348d6;--red:#e0442f;--sun:#ffc93d;--board:#fff;--blue:#dce4ff;--pink:#ffe3de;--yellow:#fff1c7;--green:#ddf3e9;--sans:"Gabarito","Avenir Next",system-ui,sans-serif;--hand:"Caveat","Bradley Hand","Segoe Print",cursive;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}a{color:var(--pen)}a:hover{color:var(--ink)}:focus-visible{outline:3px dashed var(--pen);outline-offset:4px}.shell{width:min(1120px,100%);margin:auto;padding:16px 16px 56px}.site-head,.portrait-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.site-head a,.portrait-head a{color:var(--ink);font-weight:800;text-decoration:none}.kicker,.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}.hand{display:inline-block;color:var(--pen);font:700 1.35rem/1.1 var(--hand);transform:rotate(-2deg)}.red{color:var(--red)}.hero{display:grid;gap:14px;margin:28px 0 0}.hero h1{max-width:11ch;margin:0;font-size:clamp(2.85rem,11vw,5.25rem);line-height:.96;letter-spacing:-.045em}.marker{background:linear-gradient(transparent 62%,color-mix(in srgb,var(--sun) 85%,transparent) 0)}.intro{max-width:52ch;margin:0;color:var(--body);font-size:1.06rem}.section{margin-top:44px}.section-title{margin:0 0 14px;font-size:clamp(1.75rem,6vw,2.4rem);line-height:1;letter-spacing:-.035em}.journey-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}.journey{display:flex;gap:10px;overflow:auto;margin:0 -16px;padding:0 16px 8px;list-style:none;scroll-snap-type:x proximity;scroll-padding-inline:16px}.journey li{flex:0 0 142px;display:grid;gap:3px;min-height:116px;padding:13px;border:2px solid var(--ink);border-radius:14px;background:var(--board);scroll-snap-align:start}.journey b{font-size:1rem}.journey small{color:var(--soft)}.journey .step{font:700 1.35rem/1 var(--hand);color:var(--pen)}.journey .impact{background:var(--ink);color:var(--bg)}.journey .impact .step{color:var(--sun)}.journey .impact small{color:color-mix(in srgb,var(--bg) 75%,transparent)}.journey .sources{border-style:dashed}.cards{display:grid;gap:16px}.card{overflow:hidden;border:2px solid var(--ink);border-radius:17px;background:var(--board);color:var(--ink);text-decoration:none}.card:hover{transform:translateY(-2px)}.portrait-art{position:relative;display:grid;place-items:center;height:230px;padding:14px 14px 0;grid-template-rows:minmax(0,1fr);background:var(--art,var(--blue));overflow:hidden}.portrait-art img{width:100%;height:100%;border:2px solid var(--ink);border-bottom:0;border-radius:10px 10px 0 0;object-fit:cover;object-position:50% 12%;filter:grayscale(1) contrast(1.08)}.portrait-art .missing{display:grid;place-items:center;width:100%;height:100%;border:2px dashed var(--pen);border-bottom:0;border-radius:10px 10px 0 0}.portrait-art svg,.portrait-cover .missing svg{width:118px;height:118px;fill:none;stroke:var(--pen);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.missing-note{position:absolute;bottom:12px;left:16px;padding:3px 8px;background:var(--board);color:var(--pen);font:700 1.15rem/1 var(--hand);transform:rotate(-2deg)}.badge{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:54px;height:54px;border:2px solid var(--ink);border-radius:50%;background:#fff}.badge svg{fill:none;stroke-linecap:round;stroke-linejoin:round;width:31px;height:31px;stroke:var(--badge,var(--red));stroke-width:8}.card-copy{display:grid;gap:6px;padding:16px;border-top:2px solid var(--ink)}.card-copy b{font-size:1.5rem;line-height:1.1;letter-spacing:-.025em}.card-copy p{margin:0;color:var(--body);line-height:1.43}.read{margin-top:4px;color:var(--pen);font-weight:800;font-size:.9rem}.coming{list-style:none;margin:0;padding:0;display:grid;gap:12px}.coming li{display:flex;align-items:baseline;gap:8px}.coming i{flex:1;min-width:12px;border-bottom:2px dotted color-mix(in srgb,var(--soft) 65%,transparent)}.coming small{color:var(--soft)}.how{margin-top:52px;padding-top:20px;border-top:2px solid var(--ink);display:grid;gap:14px}.how p{max-width:55ch;margin:0;color:var(--body)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:2px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--bg);font-weight:800;text-decoration:none}.button:hover{background:var(--pen);color:var(--board)}.portrait-head{position:sticky;top:0;z-index:2;margin:0 -16px;padding:0 16px;border-bottom:2px solid var(--ink);background:var(--bg)}.portrait-head small{color:var(--soft)}.portrait{display:grid;gap:40px;padding-top:20px}.portrait-cover{position:relative;display:grid;grid-template-rows:minmax(0,1fr);min-height:420px;border:2px solid var(--ink);border-radius:18px;background:var(--art,var(--blue));overflow:hidden;padding:14px 14px 0}.portrait-cover img{width:100%;height:100%;border:2px solid var(--ink);border-bottom:0;border-radius:10px 10px 0 0;object-fit:cover;object-position:50% 10%;filter:grayscale(1) contrast(1.08)}.portrait-cover .missing{display:grid;place-items:center;min-height:404px;border:2px dashed var(--pen);border-bottom:0;border-radius:10px 10px 0 0}.portrait-cover .missing svg{width:180px;height:180px}.portrait-cover .badge{width:62px;height:62px;right:12px;bottom:12px}.portrait-cover .badge svg{width:35px;height:35px}.portrait-title{display:grid;gap:14px}.portrait-title h1{margin:0;font-size:clamp(2.8rem,12vw,5.25rem);line-height:.96;letter-spacing:-.05em}.portrait-title p{max-width:43ch;margin:0;color:var(--body);font-size:1.1rem}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{padding:5px 11px;border:1.5px solid var(--ink);border-radius:99px;font-size:.85rem}.question{display:grid;gap:8px;max-width:860px}.question h2{margin:0;font-size:clamp(1.75rem,7vw,3rem);line-height:1.12;letter-spacing:-.035em}.era{max-width:860px;padding:18px;border:2px dashed color-mix(in srgb,var(--soft) 60%,transparent);border-radius:14px;background:var(--board)}.era p{margin:8px 0 0;color:var(--body)}.moments{max-width:860px}.moments h2{margin:0 0 20px}.moments ol{display:grid;gap:28px;margin:0 0 0 16px;padding:0 0 0 25px;border-left:3px dotted var(--ink);list-style:none}.moments li{position:relative;display:grid;gap:7px}.number{position:absolute;top:0;left:-43px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--ink);color:var(--bg);font-weight:800}.moments li:last-child .number{border:2px solid var(--ink);background:var(--sun);color:var(--ink)}.moments h3{margin:0;font-size:clamp(1.35rem,5vw,1.75rem);line-height:1.15;letter-spacing:-.025em}.moments p{max-width:65ch;margin:0;color:var(--body)}.impact-panel{display:grid;gap:12px;padding:24px;border-radius:18px;background:var(--ink);color:var(--bg)}.impact-panel h2{margin:0;color:var(--sun);font:700 1.75rem/1 var(--hand)}.impact-panel strong{max-width:28ch;font-size:clamp(1.7rem,7vw,2.75rem);line-height:1.13;letter-spacing:-.035em}.impact-panel p{max-width:63ch;margin:0;color:color-mix(in srgb,var(--bg) 77%,transparent)}details{max-width:860px;padding-top:12px;border-top:2px solid var(--ink)}summary{min-height:44px;cursor:pointer;font-size:1.15rem;font-weight:800}details ol{display:grid;gap:10px;margin:10px 0 0;padding-left:20px;color:var(--body)}.next{display:grid;gap:14px;padding:18px;border:2px solid var(--ink);border-radius:16px;background:var(--next,var(--yellow))}.next b{font-size:1.35rem}.next .eyebrow{color:var(--next-ink,#6b4600)}.footnote{margin:0;color:var(--soft);font-size:.86rem}@media(min-width:768px){.shell{padding:24px 20px 80px}.site-head{margin-bottom:20px}.hero{margin:48px 0 0}.cards{grid-template-columns:repeat(3,1fr)}.journey{display:grid;grid-template-columns:repeat(5,1fr);margin:0;padding:0;overflow:visible}.journey li{min-width:0}.portrait-head{position:static;margin:0;padding:0;border:0;background:transparent}.portrait{padding-top:0}.portrait-hero{display:grid;grid-template-columns:minmax(390px,1fr) minmax(340px,1fr);align-items:stretch;gap:32px}.portrait-cover{min-height:460px}.portrait-title{align-self:end}.portrait .impact-panel{padding:clamp(28px,5vw,54px)}.next{grid-template-columns:1fr auto;align-items:center}.next .button{min-width:210px}} 
@media(min-width:768px){.journey-heading .hand{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card:hover{transform:none}}
.journey::after{content:"";flex:0 0 6px}
@media(max-width:767px){.portrait-hero{display:grid;gap:20px}}.next>div{display:grid;gap:4px}
h1,h2,h3{overflow-wrap:break-word}@media(min-width:768px){.portrait-head{margin-bottom:24px}}
