
@font-face{font-family:Caslon;src:url('../assets/fonts/libre-caslon-display.woff2')}@font-face{font-family:Manrope;src:url('../assets/fonts/manrope-variable.woff2');font-weight:200 800}
*{box-sizing:border-box}body{margin:0;background:#faf8f1;color:#1a1510;font-family:Manrope,sans-serif}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}.wrap{width:1280px;margin:auto}.header{height:160px;display:flex;justify-content:space-between;align-items:center}.logo{width:266px}.nav{display:flex;align-items:center;gap:25px;font-family:Caslon,serif;font-size:21px}.active{text-decoration:underline;text-decoration-color:#d8c089;text-underline-offset:8px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:55px;padding:10px 25px;font-family:Caslon,serif;font-size:24px;line-height:1.1;border:1px solid #1a1510;background:#d8c089}.nav .button{font-size:20px;min-height:49px;padding:10px 21px}h1,h2,h3{font-family:Caslon,serif;font-weight:400}p{font-size:18px;line-height:1.7;color:#4c4740}.footer{height:175px;display:flex;align-items:center;justify-content:space-between}.footer .logo{width:220px}.footer-links{display:flex;gap:32px;align-items:center;font-family:Caslon,serif;font-size:20px}.footer-links svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5}

@font-face{font-family:Caveat;src:url('../assets/fonts/caveat.woff2')}
button{font:inherit;cursor:pointer}.notes-hero{display:grid;grid-template-columns:470px 1fr;gap:145px;align-items:end;padding:55px 0 65px}.notes-hero h1{font-size:144px;line-height:.86;letter-spacing:-.035em}.notes-hero h1 span{display:block}.notes-hero h1 span+span{margin-left:110px;margin-top:12px}.notes-hero .intro{max-width:49ch;margin-bottom:8px}.notes-hero .intro h2{font-size:43px;line-height:1.1;letter-spacing:-.015em;margin-bottom:22px}.notes-hero .intro p{font-size:18px;line-height:1.7}.topic-bar{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:5px 0 55px}.topic-bar h2{font-size:31px;line-height:1.2}.topics{display:flex;gap:35px}.topics button{background:none;border:0;padding:12px 0;color:#655e54;font-size:16px;line-height:1.4}.topics button.active-topic{color:#1a1510;text-decoration:underline;text-decoration-color:#d8c089;text-underline-offset:10px;text-decoration-thickness:2px}.reader{display:grid;grid-template-columns:300px 1fr;gap:105px;align-items:start;padding-bottom:125px}.senders{padding-top:20px}.senders h3{font:400 14px/1.5 Manrope,sans-serif;color:#655e54;margin-bottom:26px}.sender{display:block;text-align:left;width:100%;padding:18px 0;background:none;border:0;color:#1a1510;position:relative}.sender__name{display:block;font-family:Caslon,serif;font-size:29px;line-height:1.15}.sender__theme{display:block;font-size:13px;line-height:1.5;color:#655e54;margin-top:7px}.sender.selected{padding-left:22px}.sender.selected:before{content:"";position:absolute;left:0;top:28px;width:7px;height:7px;border-radius:50%;background:#d8c089}.sender.selected .sender__name{font-size:32px}.all-notes{display:inline-block;font-family:Caslon,serif;font-size:23px;background:none;border:0;border-bottom:1px solid #d8c089;padding:8px 0;margin-top:35px;color:#1a1510}.letter-stack{position:relative;isolation:isolate;margin-right:16px}.letter-stack:before,.letter-stack:after{content:"";position:absolute;inset:10px -12px -9px 12px;background:#f0ebdf;transform:rotate(1.3deg);z-index:-1;box-shadow:0 12px 30px #1a15100c}.letter-stack:after{inset:5px -6px -5px 6px;transform:rotate(-.7deg);background:#f5f0e6}.letter{position:relative;padding:48px 58px 40px;background:#fffdf5;box-shadow:0 18px 40px #1a151014}.letter:before{content:"";position:absolute;right:0;top:0;border-style:solid;border-width:0 0 30px 30px;border-color:transparent transparent #eae4d7 transparent}.letter .greeting{font-family:Caslon,serif;font-size:35px;line-height:1.2;margin-bottom:26px}.letter .message p{font-family:Caslon,serif;font-size:27px;line-height:1.45;color:#1a1510;margin-bottom:24px}.letter .message p:last-child{margin-bottom:0}.letter .signature{font-family:Caveat,cursive;font-size:38px;line-height:1.2;margin:35px 0 10px}.letter .origin{font:400 13px/1.5 Manrope,sans-serif;color:#655e54}.reader-controls{display:flex;justify-content:space-between;align-items:center;margin-top:36px;gap:30px}.reader-controls button{display:flex;align-items:center;gap:14px;font-family:Caslon,serif;font-size:22px;background:none;border:0;padding:12px 0;color:#1a1510}.reader-controls svg{width:34px;height:20px;fill:none;stroke:currentColor;stroke-width:1.25}.reader-controls .position{font-size:13px;color:#655e54}.featured-voice{background:#1a1510;color:#faf8f1;padding:100px 0 105px}.featured-voice blockquote{font-family:Caslon,serif;font-size:65px;line-height:1.12;letter-spacing:-.025em;max-width:1100px;margin:0}.featured-voice figcaption{font-size:14px;line-height:1.6;color:#d8c089;margin-top:38px}.closing{padding:95px 0 105px}.closing-inner{display:grid;grid-template-columns:1fr 355px;gap:120px;align-items:end}.closing h2{font-size:91px;line-height:1.01;letter-spacing:-.025em;max-width:17ch}.closing p{font-size:18px;line-height:1.6;margin-bottom:27px}.footer{border-top:1px solid #e6dfd2}
.notes-photo{margin-bottom:100px}.notes-photo img{aspect-ratio:1400/935;object-fit:contain}

/* The approved desktop composition, with the selected photograph inset to the right. */
html{scroll-behavior:smooth;scroll-padding-top:24px}.wrap{width:calc(100% - 160px);max-width:1280px}.brand{display:block;width:266px;flex-shrink:0}.brand .logo{width:100%}.footer .brand{width:220px}.header{position:relative}.menu-toggle{display:none}.notes-photo img{width:83%;margin-left:auto;aspect-ratio:1125/751;height:auto;object-fit:contain}.notes-hero{grid-template-columns:36.71875% minmax(0,1fr);gap:11.328125%}.reader{grid-template-columns:23.4375% minmax(0,1fr);gap:8.203125%}.reader>*{min-width:0}.notes-hero h1{font-size:clamp(100px,10vw,144px)}.notes-hero h1 span+span{margin-left:23.4%}.closing-inner{grid-template-columns:minmax(0,1fr) 355px}.notes-photo{margin-top:0}.letter-stack .letter+.letter{margin-top:40px}.notes-enhanced .letter-stack .letter{margin-top:0}.letter:focus{outline:none}.letter[hidden],.sender[hidden],[hidden]{display:none!important}.mobile-picker,.reader-controls,.all-notes,.topic-bar{display:none}.notes-enhanced .reader-controls,.notes-enhanced .topic-bar{display:flex}.notes-enhanced .all-notes{display:inline-block}.notes-enhanced .sender-list{display:block}html:not(.notes-enhanced) .senders{display:none}html:not(.notes-enhanced) .reader{display:block}html:not(.notes-enhanced) .letter-stack{max-width:875px;margin:auto}.letter-stack{touch-action:pan-y pinch-zoom}.sender__name,.signature{overflow-wrap:anywhere}.sender__theme{max-width:28ch}.position{white-space:nowrap;font-variant-numeric:tabular-nums}.sender:hover .sender__name{text-decoration:underline;text-decoration-color:#d8c089;text-underline-offset:6px}.all-notes:hover{text-decoration:underline;text-underline-offset:6px}.topics button:hover{color:#1a1510}.reader-controls button:hover{color:#655e54}.reader-controls button:disabled{opacity:.45;cursor:default}.letter .signature{color:#1a1510}.notes-enhanced .sender-list{margin-top:0}::selection{background:#d8c089;color:#1a1510}a:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid #1a1510;outline-offset:5px}.featured-voice a:focus-visible{outline-color:#d8c089}.nav a:hover,.footer a:hover{text-decoration:underline;text-decoration-color:#d8c089;text-underline-offset:6px}.button:hover{background:#1a1510;color:#faf8f1}.button{transition:background .2s,color .2s}.skip-link:not(:focus),.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:12px;left:12px;padding:12px;background:#faf8f1;z-index:50}
@media(min-width:1101px) and (max-width:1300px){.header .brand{width:230px}.nav{font-size:18px;gap:18px}.nav .button{font-size:18px;padding-inline:17px}.topics{gap:22px}.notes-hero .intro h2{font-size:38px}}
@media(max-width:1100px){.wrap{width:88%}.header{height:110px;gap:20px}.header .brand{width:210px;max-width:calc(100% - 95px)}.notes-enhanced .menu-toggle{display:flex;gap:10px;align-items:center;flex-shrink:0;font:15px Manrope,sans-serif;color:#1a1510;background:none;border:0;padding:12px 0}.menu-lines{display:block;width:20px;height:13px;border-block:1px solid currentColor;position:relative}.menu-lines:after{content:"";position:absolute;left:0;top:5px;width:100%;height:1px;background:currentColor}.nav{flex-wrap:wrap}.notes-enhanced .nav{display:none;position:absolute;top:100%;left:-6vw;right:-6vw;background:#faf8f1;z-index:30;flex-direction:column;align-items:flex-start;gap:22px;padding:28px 6vw 35px;font-size:25px;border-bottom:1px solid #d8c089;max-height:calc(100dvh - 110px);overflow:auto}.notes-enhanced .nav.is-open{display:flex}.nav .button{font-size:22px}.notes-hero{gap:8%;grid-template-columns:42% minmax(0,1fr);padding-top:40px}.notes-hero h1{font-size:112px}.notes-hero .intro h2{font-size:36px}.notes-hero .intro p{font-size:16px}.topic-bar{align-items:flex-start;gap:25px}.topic-bar h2{font-size:29px}.topics{gap:18px;flex-wrap:wrap;justify-content:flex-end}.topics button{font-size:14px}.reader{grid-template-columns:26% minmax(0,1fr);gap:7%}.sender__name{font-size:25px}.sender.selected .sender__name{font-size:27px}.letter{padding:35px 32px}.letter .message p{font-size:25px}.letter .signature{font-size:34px}.all-notes{font-size:21px}.reader-controls{gap:16px}.reader-controls button{font-size:19px;gap:9px}.reader-controls svg{width:26px}.featured-voice blockquote{font-size:52px}.featured-voice{padding:80px 0}.closing-inner{grid-template-columns:minmax(0,1fr) 34%;gap:65px}.closing h2{font-size:75px}.closing p{font-size:16px}.closing .button{font-size:22px}.footer .brand{width:190px}.footer-links{gap:24px;font-size:18px}}
@media(max-width:760px){html{scroll-padding-top:16px}.notes-hero{display:block;padding:30px 0 40px}.notes-hero h1{font-size:clamp(85px,23vw,130px);max-width:340px}.notes-hero h1 span+span{margin-left:24%;margin-top:8px}.notes-hero .intro{margin-top:35px;max-width:43ch}.notes-hero .intro h2{font-size:33px;margin-bottom:16px}.notes-hero .intro p{font-size:16px;line-height:1.65}.topic-bar{flex-direction:column;gap:12px;padding:0 0 24px}.topic-bar h2{font-size:27px}.topics{gap:4px 20px;justify-content:flex-start}.topics button{min-height:44px;font-size:14px}.reader{display:block;padding-bottom:65px}.senders{padding-top:0;margin-bottom:25px}.senders h3,.notes-enhanced .sender-list,.notes-enhanced .all-notes{display:none}.notes-enhanced .mobile-picker{display:block;font-size:13px;color:#655e54}.mobile-picker select{display:block;width:100%;margin-top:8px;padding:12px 35px 12px 12px;font:400 20px/1.4 Caslon,serif;color:#1a1510;background:#fffdf5;border:1px solid #d8c089;border-radius:0;min-height:48px}.letter-stack{margin-right:7px}.letter{padding:29px 24px 28px}.letter:before{border-width:0 0 24px 24px}.letter .greeting{font-size:30px;margin-bottom:20px}.letter .message p{font-size:23px;line-height:1.4;margin-bottom:20px;overflow-wrap:break-word}.letter .signature{font-size:33px;margin-top:26px}.letter .origin{font-size:12px}.reader-controls{flex-wrap:wrap;gap:6px;margin-top:24px}.reader-controls button{font-size:19px;min-height:44px;gap:7px}.reader-controls svg{width:22px}.reader-controls .position{order:3;width:100%;text-align:center;font-size:12px;margin-top:2px}.notes-photo{margin-bottom:60px}.notes-photo img{width:94%}.featured-voice{padding:55px 0 60px}.featured-voice blockquote{font-size:clamp(33px,8.4vw,48px);line-height:1.14;letter-spacing:-.02em}.featured-voice figcaption{font-size:12px;margin-top:25px}.closing{padding:55px 0 65px}.closing-inner{display:block}.closing h2{font-size:clamp(48px,14vw,67px);margin-bottom:28px}.closing p{font-size:16px;max-width:38ch}.closing .button{font-size:21px;min-height:49px}.footer{height:auto;min-height:180px;padding-block:40px;flex-direction:column;align-items:flex-start;gap:30px}.footer-links{flex-wrap:wrap;gap:22px;font-size:18px}.footer .brand{width:200px}html:not(.notes-enhanced) .header{height:auto;padding-block:20px;flex-wrap:wrap}html:not(.notes-enhanced) .nav{font-size:18px;gap:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Long mobile letters keep their paper edges within the viewport. */
@media(max-width:760px){.letter-stack:before,.letter-stack:after{transform:none}}
@media(min-width:761px) and (max-width:1100px){.notes-hero h1{font-size:clamp(84px,10vw,112px)}}

/* A topic describes the main emphasis, rather than every passing mention. */
.topic-count{font-size:12px;font-variant-numeric:tabular-nums;margin-left:4px;color:#655e54}.letter .message+.origin{margin-top:35px}
/* Keep the open letter beside the full sender index. Overflow is only inside
   the reader when a letter is taller than the available desktop viewport. */
@media(min-width:761px){.notes-enhanced .reading-column{position:sticky;top:24px;align-self:start;max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#d8c089 #faf8f1;padding:24px;margin:-24px}.reading-column:focus-visible{outline:2px solid #d8c089;outline-offset:5px}}
@media(max-width:760px){.reading-column{position:static;max-height:none;overflow:visible}.topic-count{margin-left:2px}}

/* The quotation and its couple portrait form one complete composition. */
.featured-voice{padding:100px 0}.featured-voice>figure{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);column-gap:96px;row-gap:0;align-items:center}.featured-voice blockquote{grid-column:1;grid-row:1;font-size:60px;line-height:1.12;align-self:end}.featured-voice figcaption{grid-column:1;grid-row:2;align-self:start;margin-top:32px}.featured-portrait{grid-column:2;grid-row:1 / 3;position:relative;width:100%;aspect-ratio:4/5;overflow:hidden}.featured-portrait img{width:100%;height:100%;object-fit:cover;object-position:88% 50%}.closing{padding-top:110px}
@media(min-width:761px) and (max-width:1100px){.featured-voice{padding:75px 0}.featured-voice>figure{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:50px}.featured-voice blockquote{font-size:clamp(37px,4.6vw,50px)}.featured-voice figcaption{margin-top:26px;font-size:13px}.closing{padding-top:85px}}
@media(max-width:760px){.featured-voice{padding:55px 0 60px}.featured-voice>figure{display:block}.featured-voice blockquote{font-size:clamp(33px,8.4vw,48px);line-height:1.14}.featured-voice figcaption{margin-top:25px}.featured-portrait{margin-top:30px;width:100%;aspect-ratio:4/5}.closing{padding-top:60px}}

/* The large photo belongs to a real voice: Anna & Ben's thanks from their Aiola reportage. */
.notes-photo figcaption{width:83%;margin:24px 0 0 auto;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 22px}
.notes-photo blockquote{flex-basis:100%;margin:0;padding:0;border:0;quotes:none;background:none}
.notes-photo blockquote::before,.notes-photo blockquote::after{content:none}
.notes-photo blockquote p{margin:0;font-family:Caslon,serif;font-size:clamp(24px,2.2vw,32px);line-height:1.25;letter-spacing:-.01em;color:#1a1510}
.notes-photo__names{font-family:Caveat,cursive;font-size:32px;line-height:1.1;color:#1a1510}
.notes-photo__place{font:400 13px/1.5 Manrope,sans-serif;color:#655e54}
.notes-photo .notes-photo__link,.notes-photo .notes-photo__link:visited{margin-left:auto;font-family:Caslon,serif;font-size:19px;color:#1a1510;text-decoration:none;border-bottom:1px solid #d8c089;padding-bottom:2px}
.notes-photo .notes-photo__link:hover,.notes-photo .notes-photo__link:focus-visible{border-bottom-color:#1a1510;color:#1a1510}
.notes-photo__link:focus-visible{outline:2px solid #1a1510;outline-offset:6px}
@media(max-width:760px){
  .notes-photo figcaption{width:94%;margin-top:18px;gap:4px 16px}
  .notes-photo blockquote p{font-size:22px}
  .notes-photo__names{font-size:28px}
  .notes-photo__link{margin-left:0;flex-basis:100%;width:max-content;margin-top:6px}
  /* Topics stay on one swipeable line; the right edge fades to hint at more. */
  .topics{align-self:stretch;min-width:0;max-width:100%;flex-wrap:nowrap;justify-content:flex-start;gap:0 18px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:0 32px 12px 0;-webkit-mask-image:linear-gradient(to right,#000 82%,transparent);mask-image:linear-gradient(to right,#000 82%,transparent)}
  .topics::-webkit-scrollbar{display:none}
  .topics button{flex:0 0 auto;white-space:nowrap}
  /* Long letters read comfortably on a phone without endless scrolling. */
  .letter .greeting{font-size:26px;margin-bottom:16px}
  .letter .message p{font-size:19px;line-height:1.5;margin-bottom:16px}
  .letter .signature{font-size:30px;margin-top:22px}
}

/* Nina's words lead on to the reportage of her own wedding. */
.featured-voice .featured-voice__link,.featured-voice .featured-voice__link:visited{display:table;margin-top:14px;font-family:Caslon,serif;font-size:19px;color:#faf8f1;text-decoration:none;border-bottom:1px solid #d8c089;padding-bottom:2px}
.featured-voice .featured-voice__link:hover,.featured-voice .featured-voice__link:focus-visible{color:#faf8f1;border-bottom-color:#faf8f1}
@media(max-width:760px){.featured-voice .featured-voice__link{font-size:17px}}

/* Quote wall: every voice opens with one short verbatim line, set large like the homepage. */
.wall{padding:10px 0 110px}
.wall__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;align-items:start}
/* Grid keeps each note in one cell, without multi-column fragmentation in Safari. */
.note-card{min-width:0;position:relative;margin:0;padding:36px 36px 30px;background:#fffdf5;box-shadow:0 14px 34px #1a151012;transform:rotate(-.5deg)}
.note-card:nth-child(3n+2){transform:rotate(.6deg)}
.note-card:nth-child(3n){transform:rotate(-.2deg)}
.note-card::before{content:"";position:absolute;right:0;top:0;border-style:solid;border-width:0 0 24px 24px;border-color:transparent transparent #eae4d7 transparent}
.note-card__quote{margin:0;padding:0;border:0;quotes:none;background:none}
.note-card__quote::before,.note-card__quote::after{content:none}
.note-card__quote p{margin:0;font-family:Caslon,serif;font-size:27px;line-height:1.24;letter-spacing:-.012em;color:#1a1510}
.note-card__name{margin:20px 0 0;font-family:Caveat,cursive;font-size:32px;line-height:1.1;color:#1a1510}
.note-card__title{margin:20px 0 0;font-family:Caslon,serif;font-style:italic;font-size:19px;line-height:1.3;color:#1a1510}
.note-card__origin{margin:4px 0 0;font:400 12px/1.5 Manrope,sans-serif;color:#655e54}
.note-card__letter{margin-top:18px}
.note-card__letter summary{display:inline-flex;align-items:baseline;gap:10px;list-style:none;cursor:pointer;font-family:Caslon,serif;font-size:18px;color:#1a1510;border-bottom:1px solid #d8c089;padding-bottom:2px}
.note-card__letter summary::-webkit-details-marker{display:none}
.note-card__letter summary::after{content:"→";font-family:Manrope,sans-serif;font-size:15px}
.note-card__letter summary:hover,.note-card__letter summary:focus-visible{border-bottom-color:#1a1510}
.note-card__letter summary:focus-visible{outline:2px solid #1a1510;outline-offset:6px}
/* Without JavaScript the full letter simply unfolds inside its card. */
.note-card__letter[open] .letter{margin-top:22px;padding:0;background:none;box-shadow:none}
.note-card__letter[open] .letter::before{content:none}
.note-card__letter[open] .letter .message p{font-size:19px}
/* Three playful voices carry the edge: espresso cards with paper type. */
.note-card--accent{background:#30251f;box-shadow:0 18px 40px #1a151030}
.note-card--accent::before{border-color:transparent transparent #4a3c33 transparent}
.note-card--accent .note-card__quote p{font-size:33px;line-height:1.18;color:#faf8f1}
.note-card--accent .note-card__name,.note-card--accent .note-card__title{color:#faf8f1}
.note-card--accent .note-card__origin{color:#d8c089}
.note-card--accent .note-card__letter summary{color:#faf8f1}
.note-card--accent .note-card__letter summary:hover,.note-card--accent .note-card__letter summary:focus-visible{border-bottom-color:#faf8f1}
.note-card--accent .note-card__letter summary:focus-visible{outline-color:#faf8f1}
.note-card--accent .note-card__letter[open] .letter .message p,.note-card--accent .note-card__letter[open] .letter .origin{color:#faf8f1}

/* The full letter opens as a paper sheet over the wall. */
html.has-letter-dialog{overflow:hidden}
.letter-dialog{width:min(780px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:0;border:0;background:transparent;color:#faf8f1;overflow:visible}
.letter-dialog[open]{display:flex;flex-direction:column}
.letter-dialog::backdrop{background:rgb(26 21 16 / .92)}
.letter-dialog__bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 12px}
.letter-dialog__position{margin:0;font:400 13px/1.5 Manrope,sans-serif;color:#faf8f1}
.letter-dialog__close{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #faf8f180;border-radius:50%;background:none;color:#faf8f1;cursor:pointer}
.letter-dialog__close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6}
.letter-dialog__body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.letter-dialog__body:focus{outline:none}
.letter-dialog__body .letter{margin:0}
.letter-dialog__nav{display:flex;justify-content:space-between;gap:20px;padding-top:12px}
.letter-dialog__nav button{display:flex;align-items:center;gap:12px;min-height:44px;padding:0;border:0;background:none;color:#faf8f1;font-family:Caslon,serif;font-size:19px;cursor:pointer}
.letter-dialog__nav svg{width:30px;height:20px;fill:none;stroke:currentColor;stroke-width:1.25}
.letter-dialog__nav button:disabled{opacity:.35;cursor:default}
.letter-dialog button:hover:not(:disabled){color:#d8c089;border-color:#d8c089}
.letter-dialog button:focus-visible{outline:2px solid #faf8f1;outline-offset:4px}

@media(max-width:1100px){
  .wall__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 32px}
  .note-card{padding:30px 28px 26px}
  .note-card__quote p{font-size:24px}
  .note-card--accent .note-card__quote p{font-size:28px}
}
@media(max-width:760px){
  .wall{padding-bottom:70px}
  .wall__list{grid-template-columns:minmax(0,1fr);gap:26px}
  .note-card,.note-card:nth-child(3n+2),.note-card:nth-child(3n){padding:26px 24px 22px;transform:rotate(-.3deg)}
  .note-card:nth-child(even){transform:rotate(.3deg)}
  .note-card__quote p{font-size:23px}
  .note-card--accent .note-card__quote p{font-size:26px}
  .note-card__name{font-size:29px;margin-top:16px}
  .letter-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}
  .letter-dialog__nav button{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.note-card,.note-card:nth-child(n){transition:none}}

/* Nina & Dominik sign like Anna & Ben: handwritten names, place, then the reportage. */
.featured-voice .featured-voice__names{display:block;font-family:Caveat,cursive;font-size:36px;line-height:1.1;color:#faf8f1}
.featured-voice .featured-voice__place{display:block;margin-top:4px;font:400 13px/1.5 Manrope,sans-serif;color:#d8c089}
@media(max-width:760px){.featured-voice .featured-voice__names{font-size:30px}}

/* Phones: first eight voices, then an explicit invitation for the rest. Desktop always shows all. */
.wall__more{display:none}
@media(max-width:760px){
  .notes-enhanced .wall.is-collapsed .note-card.is-beyond{display:none}
  .notes-enhanced .wall__more:not([hidden]){display:inline-flex;align-items:baseline;gap:10px;margin:6px 0 0;padding:0 0 3px;border:0;border-bottom:1px solid #d8c089;background:none;color:#1a1510;font-family:Caslon,serif;font-size:22px;cursor:pointer}
  .notes-enhanced .wall__more:hover,.notes-enhanced .wall__more:focus-visible{border-bottom-color:#1a1510}
  .notes-enhanced .wall__more:focus-visible{outline:2px solid #1a1510;outline-offset:6px}
  .wall__more-count{font:400 13px/1 Manrope,sans-serif;color:#655e54}
}
