/* Homepage: a file drawer. Intro sheet, then the open files as manila folders, then how a file works. */
.home{gap:34px}
.topnav{display:flex;gap:4px}
.topnav a{font-family:var(--type);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#E9E4D6;text-decoration:none;padding:8px 12px;background:#141412;position:relative}
.topnav a:hover{background:#2C2D28}

.intro{background:var(--paper);padding:30px 20px 34px;display:flex;flex-direction:column;gap:18px;box-shadow:0 18px 40px rgba(0,0,0,.45)}
@media (min-width:640px){.intro{padding:46px 52px 50px}}
.kicker{font-family:var(--type);font-weight:700;font-size:14px;letter-spacing:.1em;color:var(--stamp);margin:0}
.intro h1{font-size:clamp(50px,11.5vw,104px);line-height:.92;margin:0}
.intro h1 span{color:#FD5711}
.intro .lede{max-width:36em}
.cta{align-self:flex-start;font-family:var(--type);font-weight:700;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:12px 40px 12px 22px;text-decoration:none}
.cta:hover{background:#000}

.files h2,.how h2{color:var(--paper-2);margin:0}
.files{display:flex;flex-direction:column;gap:22px}
.drawer{display:grid;grid-template-columns:1fr;gap:34px 22px}
@media (min-width:700px){.drawer{grid-template-columns:repeat(3,minmax(0,1fr))}}
.file-card{position:relative;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--folder);border-radius:0 8px 8px 8px;box-shadow:0 10px 24px rgba(0,0,0,.4),inset 0 0 0 1px var(--folder-edge);padding:12px 12px 16px;margin-top:26px;transition:transform .15s ease}
.file-card:hover{transform:translateY(-3px)}
.file-card:focus-visible{outline:3px solid #FD5711;outline-offset:4px}
.file-card .tab{position:absolute;left:0;top:-26px;max-width:92%;background:var(--folder);border-radius:8px 8px 0 0;padding:6px 12px 4px;font-family:var(--type);font-weight:700;font-size:11.5px;letter-spacing:.05em;color:var(--folder-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:inset 1px 1px 0 var(--folder-edge),inset -1px 0 0 var(--folder-edge)}
.file-card .photo{display:block;aspect-ratio:4/3;max-width:100%;overflow:hidden;background:#fff;padding:6px;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.file-card .photo img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(.15)}
.file-card .photo.doc{background:var(--paper);display:flex;flex-direction:column;justify-content:center;gap:12px;padding:18px}
.file-card .photo.doc span{display:block;height:6px;background:#D2CCBC;width:88%}
.file-card .photo.doc span:nth-child(3){width:70%}
.file-card .photo.doc span:nth-child(4){width:80%}
.file-card .photo.doc .bar{height:16px;background:var(--ink);width:56%}
.file-card .photo.doc .bar.short{width:38%}
.file-card .body{display:flex;flex-direction:column;gap:8px;padding:14px 4px 0;flex:1}
.file-card strong{font-family:var(--display);font-weight:400;font-size:32px;line-height:1;text-transform:uppercase}
.file-card .teaser{font-family:var(--story);font-size:16.5px;line-height:1.5;color:#2B2112;flex:1}
.file-card .open{align-self:flex-start;position:relative;font-family:var(--type);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:8px 26px 8px 16px;margin-top:4px}
.file-card .open::after{content:"";position:absolute;top:0;right:0;width:12px;height:12px;background:#FD5711;clip-path:polygon(0 0,100% 0,100% 100%)}
.more{font-family:var(--type);font-size:14px;color:#A9A493;margin:0}

.how{display:flex;flex-direction:column;gap:18px}
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:12px;max-width:none;counter-reset:step}
@media (min-width:700px){.steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.steps li{background:var(--paper-2);border-top:6px solid var(--folder-edge);padding:14px 16px;display:flex;flex-direction:column;gap:6px;counter-increment:step}
.steps li b{font-family:var(--display);font-weight:400;font-size:24px;text-transform:uppercase;line-height:1}
.steps li b::before{content:counter(step) ". ";color:var(--stamp)}
.steps li span{font-size:15.5px;line-height:1.5}
.hosts{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#C9C4B3;font-family:var(--type);font-size:14px;line-height:1.5}
.hosts img{width:64px;height:64px;object-fit:cover;background:#fff;padding:3px}
.hosts p{flex:1;min-width:16em;max-width:none}
.hosts a{color:#E9E4D6}
@media (prefers-reduced-motion:reduce){.file-card{transition:none}.file-card:hover{transform:none}}
