:root{color:#111;background:#fff;font-family:Arial,Helvetica,sans-serif;font-synthesis:none;line-height:1.5}*{box-sizing:border-box}html{min-width:320px}body{min-height:100vh;margin:0;display:flex;flex-direction:column}a{color:inherit;text-underline-offset:.2em}.site-header,.site-footer,main{width:min(100% - 2rem,80rem);margin-inline:auto}.site-header{min-height:4.5rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:.75rem;border-bottom:1px solid #dedede}.site-header__actions{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center;justify-content:flex-end}.wordmark{max-width:12rem;font-size:.9rem;font-weight:700;line-height:1.1;text-decoration:none;text-transform:uppercase;letter-spacing:-.02em}nav a{font-size:.9rem}nav{display:flex;gap:1rem}.site-language>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.site-language select{width:auto;max-width:9rem;padding:.45rem 1.75rem .45rem .55rem;font-size:.8rem}main{flex:1}.hero,.page,.trace-intro{padding-block:clamp(3rem,8vw,6.5rem)}.hero{min-height:min(42rem,calc(100vh - 4.5rem));display:grid;gap:clamp(2rem,5vw,4.5rem);align-items:center}.hero h1{max-width:10ch;font-size:clamp(2.9rem,6vw,5.1rem)}.eyebrow{margin:0 0 1.5rem;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{max-width:12ch;margin-bottom:2rem;font-size:clamp(2.9rem,8vw,6rem);font-weight:600;line-height:.9;letter-spacing:-.075em}.intro{max-width:38rem;margin-bottom:2rem;font-size:clamp(1.1rem,2.5vw,1.5rem);line-height:1.35}.text-link{font-weight:700}.home-illustration{width:min(100%,32rem);margin:0;justify-self:center}.home-illustration img{width:100%;height:auto;display:block}.language-gate{position:fixed;z-index:100;inset:0;overflow-y:auto;color:#111;background:#fff}.language-gate__inner{width:min(100% - 2rem,70rem);min-height:100%;display:flex;flex-direction:column;justify-content:center;margin-inline:auto;padding-block:2rem}.language-gate h1{max-width:none;margin:clamp(2rem,6vh,4rem) 0 1rem;font-size:clamp(3.5rem,13vw,8rem);line-height:.85;letter-spacing:-.065em}.language-gate__inner>p:not(.eyebrow){margin-bottom:clamp(2rem,6vh,4rem);font-size:clamp(1.25rem,4vw,2rem)}.language-gate__options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:1px;background:#111}.language-gate__options button{min-height:4rem;display:flex;gap:.75rem;align-items:center;padding:1rem;border:0;color:#111;background:#fff;text-align:start}.language-gate__options button span{flex:0 0 auto;font-size:1.5rem;line-height:1}.language-gate__options button:hover,.language-gate__options button:focus-visible{color:#fff;background:#111}.language-gate-open{overflow:hidden}.trace-intro{min-height:min(42rem,calc(100vh - 4.5rem));display:grid;gap:clamp(2rem,5vw,4.5rem);align-items:center}.trace-illustration{width:min(100%,30rem);margin:0;justify-self:center}.trace-illustration img{width:100%;height:auto;display:block}.trace-number{margin-bottom:2rem;padding:.45rem .65rem;border:1px solid #111;font-size:.75rem;font-weight:700;letter-spacing:.1em}.feedback{display:grid;gap:clamp(2.5rem,6vw,5rem);padding-block:clamp(3rem,8vw,6rem);border-top:1px solid #dedede}.feedback-heading h2{margin-bottom:1rem;font-size:clamp(2.4rem,6vw,4.5rem);line-height:.95;letter-spacing:-.055em}.feedback-heading p{max-width:28rem;font-size:1.1rem}form{max-width:46rem}.field{margin-bottom:2.25rem}.field label{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.6rem;font-weight:700}small{color:#5d5d5d;font-size:.75rem;font-weight:400}.field>small{display:block;margin-top:.6rem}input,textarea,select,button{border:1px solid #111;border-radius:0;color:#111;background:#fff;font:inherit}input[type=text],input[type=number],input[type=url],textarea,select{width:100%;padding:.85rem}textarea{resize:vertical}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid #111;outline-offset:3px}input[type=file]{width:100%;padding:.55rem}input[type=file]::file-selector-button{margin-right:.75rem;padding:.55rem .7rem;border:0;background:#eee;font:inherit}.privacy-notice{margin-block:3rem 2rem;padding:1.25rem;background:#f3f3f3}.privacy-notice h3{margin:0 0 .75rem;font-size:1rem}.privacy-notice p{margin-bottom:0}.consent{display:grid;grid-template-columns:1.25rem 1fr;gap:.75rem;align-items:start;margin-bottom:2rem}.consent input{width:1.25rem;height:1.25rem;margin:.15rem 0 0}button{position:relative;padding:.9rem 1.3rem;color:#fff;background:#111;font-weight:700}button:disabled{cursor:not-allowed;color:#666;border-color:#ccc;background:#eee}.form--sending button:disabled{padding-right:3.25rem;color:#fff;border-color:#111;background:#111}.form--sending button:after{content:"";position:absolute;top:50%;right:1.25rem;width:1rem;height:1rem;margin-top:-.5rem;border:2px solid rgb(255 255 255 / 35%);border-top-color:#fff;border-radius:50%;animation:form-spinner .7s linear infinite}.form-status{margin:.75rem 0 0;color:#5d5d5d;font-size:.8rem}.form--sending .form-status{color:#111;font-size:1rem;font-weight:700;animation:form-pulse 1.2s ease-in-out infinite}.form-status--success,.form-status--error{margin-top:1.5rem;padding:clamp(1.25rem,5vw,2rem);border:2px solid #111;color:#111;font-size:clamp(1.25rem,5vw,2rem);font-weight:700;line-height:1.15}.form-status--success:before{content:"✓";display:block;margin-bottom:.75rem;font-size:2rem}.form-status--error{border-style:dashed}.form-success-illustration{width:min(100%,18rem);margin:1.5rem auto 0}.form-success-illustration img{width:100%;height:auto;display:block}.form--success>:not(.form-status,.form-success-illustration,.form-success-link){display:none}.form-success-link{display:grid;gap:.75rem;margin:1.5rem 0 0;padding-top:1.5rem;border-top:1px solid #111;font-size:1.1rem}.form-success-link[hidden]{display:none}.form-success-link .text-link{justify-self:start}@keyframes form-spinner{to{transform:rotate(360deg)}}@keyframes form-pulse{50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.form--sending button:after,.form--sending .form-status{animation:none}}.statement{display:grid;gap:2rem;padding-block:clamp(3rem,8vw,6rem);border-top:1px solid #dedede}.statement h2{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.statement p{max-width:25ch;margin-bottom:0;font-size:clamp(1.8rem,5vw,3.5rem);line-height:1.05;letter-spacing:-.045em}.page h1{max-width:11ch;font-size:clamp(2.9rem,7vw,5.5rem)}.about-hero{display:grid;gap:clamp(2rem,5vw,4.5rem);align-items:center}.about-illustration{width:min(100%,28rem);margin:0;justify-self:center}.about-illustration img{width:100%;height:auto;display:block}.not-found{min-height:min(38rem,calc(100vh - 9rem));display:grid;gap:clamp(2rem,5vw,4.5rem);align-items:center}.not-found__illustration{width:min(100%,30rem);margin:0;justify-self:center}.not-found__illustration img{width:100%;height:auto;display:block}.prose{max-width:44rem;margin:clamp(3rem,6vw,5rem) 0;font-size:clamp(1.05rem,2vw,1.3rem)}.prose p{margin-bottom:1.5em}.collection-header{display:grid;gap:clamp(2rem,5vw,4.5rem);align-items:center;padding-block:clamp(3rem,8vw,6rem)}.collection-header__illustration{width:min(100%,32rem);margin:0;justify-self:center}.collection-header__illustration img{width:100%;height:auto;display:block}.collection-header h1{max-width:10ch;margin-bottom:0;font-size:clamp(2.8rem,7vw,5.25rem)}.people-grid{display:grid;gap:1px;margin:0 0 clamp(3rem,8vw,6rem);padding:1px;background:#dedede;list-style:none}.person-card{min-height:24rem;display:flex;flex-direction:column;color:#111;background:#fff;text-decoration:none}.person-card img{width:100%;height:clamp(17rem,45vw,22rem);display:block;object-fit:cover}.person-card__body{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:clamp(1.25rem,4vw,2rem)}.person-card__message{margin-bottom:0;font-size:clamp(1.65rem,4vw,2.75rem);line-height:1.05;letter-spacing:-.04em}.person-card__meta,.person__meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.07em}.person-card__meta time{color:#5d5d5d}.empty-state{margin-bottom:6rem;padding-block:2.5rem;border-top:1px solid #dedede}.person{padding-block:clamp(2rem,5vw,4rem) clamp(4rem,9vw,7rem)}.person__back{display:inline-block;margin-bottom:clamp(2.5rem,6vw,5rem)}.person__photo{width:min(100%,48rem);max-height:36rem;display:block;margin-bottom:clamp(2.5rem,6vw,5rem);margin-inline:auto;object-fit:contain;object-position:left center}.person__story{max-width:70rem}.person__message{margin-bottom:clamp(2.5rem,6vw,4.5rem);font-size:clamp(2.25rem,6vw,5.5rem);line-height:.98;letter-spacing:-.055em}.person__meta strong{font-weight:700}.admin-header{padding-block:clamp(4rem,10vw,8rem)}.admin-header h1{margin-bottom:2rem;font-size:clamp(3.25rem,10vw,8rem)}.admin-status{margin-bottom:0}.admin-nav{margin-bottom:2rem}.moderation-list{border-top:1px solid #dedede}.admin-section{margin-bottom:clamp(4rem,10vw,8rem)}.admin-section>h2{margin-bottom:1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}.moderation-card{display:grid;gap:2rem;padding-block:2rem;border-bottom:1px solid #dedede}.moderation-card__photo{width:100%;max-height:34rem;display:block;object-fit:contain;object-position:left top}.moderation-card__gift,.moderation-card__date{color:#5d5d5d;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.moderation-card__name{margin:0 0 .25rem;font-size:clamp(2rem,5vw,3.5rem);line-height:1;letter-spacing:-.04em}.moderation-card__location{color:#5d5d5d}.moderation-card__message{margin:2rem 0;font-size:clamp(1.25rem,3vw,2rem);line-height:1.3}.moderation-card__date{display:block}.moderation-card__actions{display:flex;gap:.75rem;margin-top:2rem}.button-secondary{color:#111;background:#fff}.button-danger{color:#fff;border-color:#b00020;background:#b00020}.gift-generator{padding-block:clamp(3rem,8vw,6rem);border-top:1px solid #dedede}.gift-results{display:grid;gap:1px;margin-bottom:clamp(4rem,10vw,8rem);background:#dedede}.gift-card{display:grid;gap:2rem;padding:clamp(1.25rem,4vw,2rem);background:#fff}.gift-card canvas{width:min(100%,16rem);height:auto}.gift-card__number{margin-bottom:.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1;letter-spacing:-.04em}.gift-card__code{margin-bottom:1rem;font-size:1.25rem;letter-spacing:.12em}.gift-card__url{overflow-wrap:anywhere;color:#5d5d5d;font-size:.8rem}.site-footer{padding-block:2rem;border-top:1px solid #dedede;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.site-footer p{margin:0}@media(min-width:48rem){.site-header,.site-footer,main{width:min(100% - 5rem,80rem)}.statement{grid-template-columns:1fr 3fr}.hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.trace-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.about-hero{grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr)}.not-found{grid-template-columns:minmax(0,1fr) minmax(18rem,.9fr)}.feedback{grid-template-columns:1fr 2fr}.people-grid{grid-template-columns:repeat(2,1fr)}.collection-header{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.moderation-card{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:4rem}.gift-results{grid-template-columns:repeat(2,1fr)}.gift-card{grid-template-columns:16rem minmax(0,1fr);align-items:center}}@media(min-width:75rem){.people-grid{grid-template-columns:repeat(3,1fr)}}
