@font-face{font-family:Outfit;src:url('/paper/assets/outfit-variable-latin.woff2');font-weight:300 800;font-display:swap}@font-face{font-family:DM Sans;src:url('/paper/assets/dm-sans-variable-latin.woff2');font-weight:300 800;font-display:swap}@font-face{font-family:Caveat;src:url('/paper/assets/fonts/caveat-latin.woff2');font-weight:400 700;font-display:swap}
.paper-page{--ink:#182a42;--muted:#536472;--paper:#fffdf8;--mint:#e7f5ee;--accent:#3157d5;--line:#d8e3df;--coral:#d75d4d;--display:Outfit,sans-serif;--body:'DM Sans',sans-serif}
.paper-page *{box-sizing:border-box}html:has(.paper-page){scroll-behavior:smooth;scroll-padding-top:28px}.paper-page{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--body)}.paper-page button,.paper-page a,.paper-page input{-webkit-tap-highlight-color:transparent}.paper-page button,.paper-page input{font:inherit}.paper-page button,.paper-page a{touch-action:manipulation}.paper-page button{cursor:pointer;color:inherit}.paper-page a{color:inherit}.paper-page button:focus-visible,.paper-page a:focus-visible,.paper-page input:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.paper-page button{min-width:44px;min-height:44px;border:1px solid var(--line);background:var(--paper);border-radius:50px;padding:10px 18px}.paper-page button:disabled{opacity:.5;cursor:default}.paper-page img,.paper-page video{display:block;max-width:100%}.paper-page svg{display:block}.paper-page h1,.paper-page h2,.paper-page h3,.paper-page p{margin:0}.paper-page h1,.paper-page h2,.paper-page h3{font-family:var(--display);line-height:1.07;letter-spacing:-.045em}.paper-page h1{font-size:clamp(44px,4.8vw,72px);max-width:9em}.paper-page h2{font-size:clamp(30px,3.4vw,48px)}.paper-page h3{font-size:21px;letter-spacing:-.02em}.paper-page p{line-height:1.55}.paper-page a{text-underline-offset:4px}.paper-page [hidden]{display:none!important}.paper-page .primary{background:var(--accent);border-color:var(--accent);color:#fff;min-height:52px;padding:13px 25px;font-weight:650;text-decoration:none}.paper-page .secondary{display:inline-flex;align-items:center;min-height:48px;font-weight:550;text-decoration:none}.paper-page .eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:650;margin-bottom:18px}.paper-page .lead{font-size:20px;color:var(--muted);max-width:30em;margin-top:25px}.paper-page .hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:30px}.paper-page .brand img{width:194px}.paper-page .brand{flex-shrink:0}.paper-page .hero{display:grid;grid-template-columns:43% 57%;max-width:1380px;margin:auto;padding:24px 48px 48px;align-items:center;min-height:660px;position:relative;isolation:isolate}.paper-page .chapter{padding:85px max(48px,calc((100% - 1284px)/2));scroll-margin-top:25px}.paper-page .chapter-heading{display:flex;gap:20px;margin-bottom:32px;align-items:flex-start}.paper-page .chapter-number{font-size:12px;line-height:36px;color:var(--muted);border-top:1px solid var(--line);min-width:38px}.paper-page .chapter-heading .eyebrow{margin-bottom:12px}.paper-page .section-lead{color:var(--muted);margin-top:15px;max-width:48em}.paper-page .music-section{background:#edf2fc}.paper-page .song-player{background:#fff;color:#182a42;border:1px solid #dce3ec;border-radius:24px;padding:26px 30px;min-width:0}@keyframes song-wave{to{transform:scaleY(.45)}}.paper-page .impact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.paper-page .cause-card{border-top:1px solid var(--line);padding-top:22px}.paper-page .cause-card img{width:100%;height:155px;object-fit:contain;margin-bottom:20px}.paper-page .cause-card h3{font-size:22px;margin-bottom:12px}.paper-page .cause-card p{font-size:14px;color:var(--muted);max-width:23em}.paper-page .impact-footnote{font-size:12px;color:var(--muted);margin-top:30px;max-width:70em}@keyframes story-drift{from{transform:translateX(-80px)}to{transform:translateX(0)}}.paper-page .media-status{font-size:12px;text-align:center;color:var(--muted);margin-top:12px;min-height:18px}.paper-page .skip-link{position:fixed;left:16px;top:-100px;z-index:100;padding:15px;background:white;color:#182a42}.paper-page .skip-link:focus{top:16px}
@media(max-width:1100px){.paper-page .site-header{padding:24px 30px}.paper-page .hero{padding:24px 30px 40px;grid-template-columns:40% 60%}.paper-page .hero-copy{padding-right:18px}.paper-page h1{font-size:52px}.paper-page .gift-orbit{height:470px}.paper-page .hero-film{width:230px;left:calc(50% - 120px);top:20px}.paper-page .annotation{padding:8px;gap:5px}.paper-page .note-text strong{font-size:12px}.paper-page .note-text small{font-size:10px}.paper-page .note-icon{font-size:16px}.paper-page .chapter{padding:65px 32px}.paper-page .song-layout{gap:20px}.paper-page .site-nav{gap:18px}}
@media(max-width:900px){.paper-page .site-nav>a{display:none}.paper-page .hero{grid-template-columns:1fr;gap:35px;padding:30px 32px 45px}.paper-page .hero-copy{padding:0;max-width:650px}.paper-page .hero-copy h1{max-width:11em}.paper-page .hero-stage{max-width:670px;width:100%;justify-self:center}.paper-page .hero{min-height:0}.paper-page .gift-orbit{height:475px}.paper-page .hero-film{width:245px;left:calc(50% - 122px);top:8px}.paper-page .note-photo{left:2%;top:180px}.paper-page .note-song{right:0;top:55px}.paper-page .note-impact{right:0;bottom:70px}.paper-page .note-text strong{font-size:14px}.paper-page .note-text small{font-size:11px}.paper-page .motion-gallery{gap:15px}.paper-page .impact-grid{grid-template-columns:repeat(2,1fr)}.paper-page .song-layout{grid-template-columns:1fr}.paper-page .song-context{grid-column:1;grid-row:auto}.paper-page .song-list{grid-column:1}.paper-page .song-context>p{max-width:50em}.paper-page .memory-chips{margin-bottom:10px}.paper-page .chapter{padding:55px 32px}.paper-page .chapter-heading{gap:14px}.paper-page .song-player{padding:24px}.paper-page .site-footer{padding:25px 32px}}
@media(max-width:600px){.paper-page .site-header{padding:20px}.paper-page .brand img{width:158px}.paper-page .site-nav .primary{padding:8px 13px;font-size:12px}.paper-page .hero{padding:25px 20px 40px;gap:28px}.paper-page .hero-copy h1{font-size:44px;max-width:10em}.paper-page .eyebrow{font-size:10px;margin-bottom:14px}.paper-page .lead{font-size:17px;margin-top:18px}.paper-page .hero-actions{gap:16px;margin-top:23px}.paper-page .price{font-size:11px}.paper-page .primary{font-size:14px;padding:12px 22px}.paper-page .secondary{font-size:13px}.paper-page .gift-orbit{height:auto;display:flex;flex-direction:column;align-items:center;gap:20px}.paper-page .hero-film{position:relative;top:auto;left:auto;width:208px;border-radius:18px}.paper-page .annotations{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.paper-page .annotation{position:relative;inset:auto;min-height:94px;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;border-radius:13px;padding:10px 8px}.paper-page .note-text strong{font-size:12px;line-height:1.25}.paper-page .note-text small{font-size:10px;margin-top:4px}.paper-page .note-icon{font-size:19px}.paper-page .note-arrow{width:24px;height:20px;position:static;transform:none!important;display:none}.paper-page .annotation::after{content:'↓';position:absolute;right:8px;top:8px;font-size:16px;color:var(--coral)}.paper-page .hero-controls{margin-top:19px;gap:7px}.paper-page .hero-controls button{padding:8px 11px}.paper-page .person-name{min-width:90px}.paper-page .sample-caption{font-size:9px}.paper-page .chapter{padding:45px 20px}.paper-page .chapter-heading{gap:12px;margin-bottom:24px}.paper-page .chapter-number{min-width:24px;font-size:10px}.paper-page .chapter h2{font-size:31px}.paper-page .section-lead{font-size:15px;margin-top:12px}.paper-page .motion-tabs{gap:7px}.paper-page .motion-tabs button{font-size:13px;padding:9px 16px}.paper-page .motion-gallery{grid-template-columns:1fr;gap:25px}.paper-page .motion-display{aspect-ratio:4/3;border-radius:16px}.paper-page .motion-caption{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.paper-page .motion-caption h3{font-size:17px}.paper-page .motion-caption p{font-size:11px;max-width:55%;text-align:right}.paper-page .song-player{padding:20px;border-radius:18px}.paper-page .track-meta img{width:55px;height:55px}.paper-page .track-name{font-size:16px}.paper-page .song-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.paper-page .song-choice{min-width:0;padding:9px}.paper-page .song-choice img{width:31px;height:38px}.paper-page .song-choice strong{font-size:11px}.paper-page .audio-controls{gap:8px}.paper-page .audio-controls button{padding:8px 12px}.paper-page .audio-controls [data-song-play]{min-width:95px}.paper-page .impact-grid{gap:25px 16px}.paper-page .cause-card{padding-top:13px}.paper-page .cause-card img{height:100px;margin-bottom:14px}.paper-page .cause-card h3{font-size:20px;margin-bottom:8px}.paper-page .cause-card p{font-size:12px}.paper-page .impact-footnote{font-size:11px}.paper-page .story-card{width:260px;padding:22px}.paper-page .story-card blockquote{font-size:23px}.paper-page .site-footer{padding:20px;gap:18px;flex-wrap:wrap;font-size:11px}.paper-page .closing{padding:50px 20px}.paper-page .closing h2{font-size:32px}}@keyframes story-drift{from{transform:translateX(var(--story-shift,-50%))}to{transform:translateX(0)}}
@media(min-width:601px){.paper-page .annotation .note-arrow{display:none!important}}
@media(max-width:600px){.paper-page .ribbon-map{display:none}}
@media(prefers-reduced-motion:reduce){html:has(.paper-page){scroll-behavior:auto}.paper-page *,.paper-page *::before,.paper-page *::after{animation:none!important;transition:none!important}}

/* Paper Celebration / designer identity: Good Fold Studio */
@font-face{font-family:Outfit;src:url('/paper/assets/fonts/outfit-variable-latin.woff2') format('woff2');font-display:swap}
@font-face{font-family:Caveat;src:url('/paper/assets/fonts/caveat-latin.woff2') format('woff2');font-display:swap}
.paper-page{--ink:#293342;--muted:#676b70;--paper:#f7f3e9;--mint:#e6eed4;--accent:#285ed3;--line:#dcd7c9;--coral:#d85644;--display:Outfit,Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}
.paper-page{background:var(--paper);color:var(--ink)}.paper-page .brand img{width:196px;height:auto}.paper-page .primary{background:#285ed3;color:#fff;border:1px solid #285ed3;border-radius:5px;min-height:48px;font-weight:600;box-shadow:3px 3px 0 #233e7c}
.paper-page .hero{max-width:1320px;display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;align-items:center;padding:40px 35px 54px;min-height:708px;position:relative;overflow:visible}.paper-page .eyebrow{font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.16em;color:#9d4d41}.paper-page .hero .eyebrow{display:inline-block;background:#f0deae;padding:8px 11px;transform:rotate(-1deg);font-size:10px;letter-spacing:.12em;margin-bottom:25px}
.paper-page h1{font-family:var(--display);font-weight:580;font-size:clamp(61px,5.05vw,77px);line-height:1.04;letter-spacing:-.057em;white-space:pre-line;margin:0 0 22px}.paper-page .lead{font-size:18px;line-height:1.65;max-width:375px;color:#606574}.paper-page .hero-actions{display:flex;gap:23px;align-items:center;flex-wrap:wrap;margin-top:29px}.paper-page .hero-actions .primary{padding:14px 25px}.paper-page .secondary{background:none;border:0;border-bottom:1px solid #9da4ab;border-radius:0;color:#414b5c;font-size:14px;padding:12px 0}
.paper-page .chapter{max-width:1320px;margin:auto;padding:68px 35px;border-top:1px solid var(--line)}.paper-page .chapter-heading{display:grid;grid-template-columns:54px 1fr;gap:17px;align-items:start;margin-bottom:30px}.paper-page .chapter-number{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:#f0dfad;color:#6b5138;font-size:12px;font-weight:700;transform:rotate(-8deg);margin-top:0}.paper-page .chapter-heading .eyebrow{margin:0 0 10px}.paper-page h2{font-family:Outfit,Arial,sans-serif;font-size:clamp(35px,3.2vw,47px);font-weight:520;line-height:1.12;letter-spacing:-.047em;margin:0 0 12px}.paper-page .section-lead{font-size:16px;line-height:1.6;color:#6d7075;max-width:680px}
.paper-page .music-section{max-width:none;background:#e8edf5;border-color:#dce1e8;padding-left:max(calc((100vw - 1250px)/2),35px);padding-right:max(calc((100vw - 1250px)/2),35px);position:relative}.paper-page .music-section .chapter-number{background:#cdd9ee;color:#2f4e7d}.paper-page .music-section .eyebrow{color:#3b5583}
.paper-page .song-player{padding:25px 27px;background:#fffdf8;border:1px solid #cbd3e1;border-radius:9px;box-shadow:5px 6px 0 #d2dcea}
.paper-page .impact-section .chapter-number{background:#dbe6c5;color:#3d4a2d}.paper-page .impact-section .eyebrow{color:#4a5b38}.paper-page .impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.paper-page .cause-card{padding:12px 12px 20px;background:#f1eddf;border:1px solid #e3decb;border-radius:2px;box-shadow:0 4px 0 #e7e0ce}.paper-page .cause-card:nth-child(2){background:#e7edef;border-color:#d6e2e6;box-shadow:0 4px 0 #d8e2e2}.paper-page .cause-card:nth-child(3){background:#ecebdc}.paper-page .cause-card:nth-child(4){background:#f1e5dc;box-shadow:0 4px 0 #e6d9cd}.paper-page .cause-card>img{width:100%;height:140px;object-fit:cover;border-radius:1px}.paper-page .cause-card h3{font-family:Outfit,sans-serif;font-size:23px;font-weight:550;line-height:1.15;letter-spacing:-.03em;margin:17px 4px 10px}.paper-page .cause-card p{font-size:12px;line-height:1.65;color:#6d7269;margin:0 4px}.paper-page .impact-footnote{font-size:12px;color:#74796a;line-height:1.7;margin-top:26px;max-width:850px}.paper-page .impact-footnote a{color:inherit;text-underline-offset:3px}.paper-page .primary:hover{background:#1f52bb}
@media(max-width:1100px){.paper-page .hero{padding-left:28px;padding-right:28px;gap:12px}.paper-page h1{font-size:61px}.paper-page .hero-film{width:235px;top:30px;left:43%}.paper-page .gift-orbit:before{width:235px;height:350px;left:42%;top:82px}.paper-page .gift-orbit:after{top:15px}.paper-page .annotation{width:126px;padding:11px}.paper-page .note-icon{display:none}.paper-page .note-text strong{font-size:24px}.paper-page .note-photo{left:-5px;top:350px;width:130px}.paper-page .note-song{right:-5px;top:32px}.paper-page .note-impact{right:-5px;top:354px}.paper-page .gift-orbit{height:532px}.paper-page .song-context{padding-left:25px}.paper-page .song-layout{gap:23px}.paper-page .song-choice{gap:7px;padding:9px}.paper-page .cause-card>img{height:115px}.paper-page .closing{margin-left:35px;margin-right:35px}}
@media(max-width:900px){.paper-page .site-header{padding:20px 25px}.paper-page .site-nav>a{display:none}.paper-page .hero{grid-template-columns:1fr;padding:42px 25px 40px;gap:24px}.paper-page .hero-copy{max-width:670px;text-align:center;margin:auto}.paper-page .hero h1{font-size:64px;white-space:normal}.paper-page .lead{margin-left:auto;margin-right:auto;max-width:420px}.paper-page .hero-actions{justify-content:center}.paper-page .hero-stage{max-width:625px;margin:auto}.paper-page .gift-orbit{height:557px}.paper-page .hero-film{width:265px;left:44%;top:22px}.paper-page .gift-orbit:before{width:274px;height:385px;left:43%;top:85px}.paper-page .gift-orbit:after{left:calc(43% - 25px);top:4px}.paper-page .annotation{width:154px}.paper-page .note-photo{left:0;top:352px}.paper-page .note-song{right:0;top:64px}.paper-page .note-impact{right:0;top:381px}.paper-page .chapter{padding:59px 25px}.paper-page .motion-gallery{gap:18px}.paper-page .motion-display{aspect-ratio:.85}.paper-page .motion-card{padding:8px}.paper-page .motion-caption h3{font-size:25px}.paper-page .song-context{grid-row:auto;grid-column:1/-1;display:flex;align-items:center;gap:35px;padding-left:0}.paper-page .song-context>p{max-width:340px}.paper-page .memory-chips{min-width:210px}.paper-page .song-layout{grid-template-columns:1fr}.paper-page .impact-grid{grid-template-columns:repeat(2,1fr);gap:20px}.paper-page .cause-card>img{height:167px}.paper-page .cause-card h3{font-size:26px}.paper-page .closing{margin-left:25px;margin-right:25px}.paper-page .closing h2{font-size:39px}}
@media(max-width:600px){.paper-page .site-header{padding:16px;min-height:77px;gap:12px}.paper-page .brand img{width:149px}.paper-page .site-header .primary{padding:10px 12px;font-size:12px}.paper-page .hero{padding:30px 18px 36px;gap:20px}.paper-page .hero .eyebrow{font-size:9px;padding:7px 8px;margin-bottom:21px}.paper-page .hero h1{font-size:49px;white-space:pre-line;line-height:1.03;max-width:350px;letter-spacing:-.05em}.paper-page .lead{font-size:15px;line-height:1.6;max-width:310px}.paper-page .hero-actions{margin-top:23px;gap:19px}.paper-page .hero-actions .primary{padding:13px 16px;font-size:14px}.paper-page .secondary{font-size:12px}.paper-page .price{font-size:10px;margin-top:15px}.paper-page .gift-orbit{height:505px;max-width:365px}.paper-page .hero-film{width:210px;left:39%;top:38px;border-width:5px}.paper-page .gift-orbit:before{width:211px;height:318px;left:37%;top:93px;transform:translateX(-50%) rotate(-6deg)}.paper-page .gift-orbit:after{width:64px;height:20px;left:calc(38% - 20px);top:27px}.paper-page .annotation{width:108px;padding:10px 8px}.paper-page .note-text strong{font-size:22px}.paper-page .note-text small{font-size:9px;line-height:1.35}.paper-page .note-photo{left:7px;top:427px;width:157px;padding:9px 11px}.paper-page .note-photo .note-text strong{font-size:22px}.paper-page .note-photo small{margin-top:3px}.paper-page .note-song{right:-2px;top:8px;width:109px}.paper-page .note-impact{right:-2px;top:329px;width:111px}.paper-page .note-arrow{width:50px;height:62px}.paper-page .note-photo .note-arrow{left:87px;top:-61px}.paper-page .note-song .note-arrow{left:-19px;top:80px;transform:rotate(145deg)}.paper-page .note-impact .note-arrow{left:-21px;top:56px;transform:rotate(174deg)}.paper-page .impact-seal{width:60px;height:60px;right:7px;bottom:11px}.paper-page .impact-seal img{width:29px;height:29px}.paper-page .impact-seal b{font-size:8px}.paper-page .hero-controls{margin:15px auto 0;gap:6px}.paper-page .person-name{min-width:78px;font-size:12px}.paper-page .sample-caption{font-size:9px}.paper-page .chapter{padding:44px 18px}.paper-page .chapter-heading{grid-template-columns:31px 1fr;gap:11px;margin-bottom:24px}.paper-page .chapter-number{width:29px;height:29px;font-size:10px}.paper-page .chapter-heading .eyebrow{font-size:9px;letter-spacing:.13em}.paper-page h2{font-size:33px;line-height:1.1}.paper-page .section-lead{font-size:14px;line-height:1.6}.paper-page .motion-tabs{margin:0 0 20px;gap:6px;flex-wrap:wrap}.paper-page .motion-tabs button{font-size:10px;padding:9px 11px}.paper-page .motion-gallery{grid-template-columns:1fr;gap:24px;padding:7px 4px 15px}.paper-page .motion-gallery .motion-card{margin:0;padding:10px}.paper-page .motion-card:nth-child(1){transform:rotate(-1deg)}.paper-page .motion-card:nth-child(2){transform:rotate(1deg)}.paper-page .motion-display{aspect-ratio:1.3}.paper-page .motion-caption{padding:14px 5px 8px}.paper-page .motion-caption h3{font-size:29px}.paper-page .motion-caption p{font-size:12px}.paper-page .motion-status{margin:11px 0 0;font-size:11px}.paper-page .song-context{display:block}.paper-page .memory-chips{flex-direction:row;flex-wrap:wrap;gap:9px}.paper-page .memory-chips>*{font-size:11px;padding:10px 12px}.paper-page .memory-chips>:nth-child(2){margin-left:0}.paper-page .song-context>p{font-size:27px;max-width:285px}.paper-page .song-player{padding:21px 17px}.paper-page .track-name{font-size:23px}.paper-page .song-list{gap:7px}.paper-page .song-choice{padding:9px 8px;flex-direction:column;align-items:flex-start}.paper-page .song-choice strong{font-size:11px}.paper-page .song-choice small{font-size:9px}.paper-page .song-choice img{width:34px;height:38px}.paper-page .impact-grid{gap:16px 11px}.paper-page .cause-card{padding:8px 8px 17px}.paper-page .cause-card>img{height:91px}.paper-page .cause-card h3{font-size:22px;margin:13px 2px 8px}.paper-page .cause-card p{font-size:11px;line-height:1.6;margin:0 2px}.paper-page .impact-footnote{font-size:11px;margin-top:22px}.paper-page .draft-label{margin:0 0 20px;font-size:9px;letter-spacing:.035em;line-height:1.6}.paper-page .story-card{flex-basis:281px;padding:22px}.paper-page .story-card blockquote{font-size:29px}.paper-page .closing{margin:0 19px 32px;padding:38px 21px;box-shadow:4px 4px 0 #e9e1cb}.paper-page .closing h2{font-size:34px;line-height:1.1}.paper-page .site-footer{padding:24px 20px;line-height:1.7}}
@media(prefers-reduced-motion:reduce){.paper-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:600px){.paper-page .hero-film{width:190px;left:33.5%;border-radius:1px}.paper-page .gift-orbit:before{width:190px;left:32%;height:290px;top:87px}.paper-page .gift-orbit:after{left:calc(32% - 20px)}.paper-page .annotations{display:contents}.paper-page .annotation{min-height:44px;flex-direction:row;justify-content:flex-start}.paper-page .annotation:after{content:'';top:0;right:0;font-size:0}.paper-page .note-arrow{display:block;position:absolute}.paper-page .note-photo .note-arrow{transform:rotate(-28deg)!important}.paper-page .note-song .note-arrow{transform:rotate(145deg)!important;left:-26px;top:81px}.paper-page .note-impact .note-arrow{transform:rotate(174deg)!important;left:-28px;top:40px}.paper-page .motion-caption{display:block}.paper-page .motion-caption p{max-width:none;text-align:left}.paper-page .song-list{grid-template-columns:repeat(3,minmax(0,1fr))}.paper-page .song-context{grid-column:1}.paper-page .song-player{grid-column:1}.paper-page .media-status{font-size:10px}}.paper-page .cause-card>img{object-fit:contain}
@media(max-width:600px){.paper-page .audio-controls{gap:7px}.paper-page .audio-controls button{white-space:nowrap;padding:8px 10px;flex-shrink:0}.paper-page .audio-controls [data-song-play]{min-width:80px}}
@media(prefers-reduced-motion:reduce){.paper-page .r11-connectors *{animation:none!important;transition:none!important}}
@media(max-width:600px){
 .paper-page[data-paper-review] .gift-orbit.r11-orbit{display:block;height:660px;width:100%;max-width:430px;isolation:isolate}
 .paper-page[data-paper-review] .r11-orbit .hero-film{position:absolute;left:50%;top:150px;width:min(200px,62%);height:auto;aspect-ratio:9/16;transform:translateX(-50%);margin:0;border-width:6px;border-bottom-width:8px}
 .paper-page[data-paper-review] .r11-orbit:before{width:60%;height:320px;left:50%;top:176px;transform:translateX(-50%) rotate(-5deg)}
 .paper-page[data-paper-review] .r11-orbit:after{top:140px;left:calc(50% - 32px);width:64px;height:20px;transform:rotate(-3deg)}
 .paper-page[data-paper-review] .r11-orbit .annotations{display:contents}
 .paper-page[data-paper-review] .r11-orbit .annotation{position:absolute;inset:auto;width:44%;max-width:174px;min-height:72px;padding:11px 10px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:6px;transform:none}
 .paper-page[data-paper-review] .r11-orbit .note-photo{left:1%;top:10px}
 .paper-page[data-paper-review] .r11-orbit .note-song{right:1%;top:10px}
 .paper-page[data-paper-review] .r11-orbit .note-impact{left:50%;bottom:12px;width:174px;transform:translateX(-50%)}
 .paper-page[data-paper-review] .r11-orbit .note-text strong{font-size:23px;line-height:1.05}
 .paper-page[data-paper-review] .r11-orbit .note-text small{font-size:11px;line-height:1.35;margin-top:5px}
 .paper-page[data-paper-review] .r11-orbit .note-icon{display:none}
 .paper-page[data-paper-review] .r11-connectors{color:#b4523e;z-index:4}
 .paper-page[data-paper-review] .r11-connectors .connector-line{stroke-width:2.2}
 .paper-page[data-paper-review] .r11-connectors .connector-under,.paper-page[data-paper-review] .r11-connectors .connector-echo{display:none}
}/* R9 · the song, as one dark listening object.
   The stage is the person's own frame under a navy tint and a gradient scrim —
   the Night Room look the cut itself uses — so the section that talks about the
   song is visibly the same world as the videos above it. The waveform is CSS:
   fixed bar heights, fixed per-bar delays, no analyser, so it renders the same
   on every machine and simply stops under prefers-reduced-motion. */
.paper-page .r9-music {
  --r9-field: #0f1b2e;
  --r9-field-deep: #0b1524;
  --r9-ink: #eef4f6;
  --r9-dim: #a9bccb;
  --r9-accent: #5fd0bb;
  --r9-rest: #3d5978;
  --r9-chip-ink: #24384c;
  --r9-chip-muted: #64798a;
  background: #e9eff5;
  display: grid;
  grid-template-columns: minmax(250px, .8fr) minmax(0, 1.4fr);
  column-gap: clamp(30px, 5vw, 72px);
  row-gap: 14px;
  align-items: start;
}
.paper-page .r9-music .chapter-heading { grid-column: 1; grid-row: 1 / span 3; margin: 6px 0 0; }
.paper-page .r9-music .chapter-heading h2 { max-width: 11em; }
.paper-page .r9-music .section-lead { max-width: 31em; font-size: 15px; line-height: 1.55; }
.paper-page .r9-music .r9-player,
.paper-page .r9-music .r9-status { grid-column: 2; min-width: 0; }

.paper-page .r9-music .song-player.r9-player {
  position: relative; display: grid; grid-template-rows: 1fr auto;
  margin: 0; overflow: hidden; border-radius: 20px;
  background: var(--r9-field); color: var(--r9-ink);
  box-shadow: 0 14px 34px #12263c1f;
}
.paper-page .r9-music .r9-stage { position: relative; display: flex; align-items: flex-end; min-height: 236px; padding: 26px 26px 22px; }
.paper-page .r9-music .r9-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 26%; }
.paper-page .r9-music .r9-tint {
  position: absolute; inset: 0;
  background:
    linear-gradient(180deg, #0f1b2e2b 0%, #0f1b2e59 42%, #0b1524e6 76%, #0b1524fa 100%),
    linear-gradient(0deg, #17356a52, #17356a52);
}
.paper-page .r9-music .is-playing .r9-tint { animation: r9-breathe 6.5s ease-in-out infinite alternate; }
@keyframes r9-breathe { from { opacity: 1 } to { opacity: .88 } }
.paper-page .r9-music .r9-stage-text { position: relative; min-width: 0; width: 100%; }
.paper-page .r9-music .r9-meta { display: flex; gap: 6px 10px; align-items: baseline; flex-wrap: wrap; margin-bottom: 10px; }
.paper-page .r9-music .r9-recipient { font: 650 12px/1.3 var(--body); letter-spacing: .06em; text-transform: uppercase; color: var(--r9-accent); }
.paper-page .r9-music .r9-style { font-size: 11px; line-height: 1.4; color: var(--r9-dim); }
.paper-page .r9-music .r9-lyrics { min-width: 0; }
.paper-page .r9-music .r9-current { font-family: var(--display); font-size: clamp(21px, 2.3vw, 31px); font-weight: 600; line-height: 1.16; letter-spacing: -.03em; min-height: 1.16em; text-wrap: balance; }
.paper-page .r9-music .r9-upcoming { font-size: 13px; line-height: 1.45; color: var(--r9-dim); margin-top: 9px; min-height: 1.45em; }

.paper-page .r9-music .r9-main { background: var(--r9-field-deep); padding: 14px 20px 16px; }
.paper-page .r9-music .r9-transport { display: flex; gap: 14px; align-items: center; min-width: 0; }
.paper-page .r9-music .r9-play,
.paper-page .r9-music .r9-next {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  min-width: 44px; min-height: 44px; padding: 0 16px;
  border: 1px solid #ffffff1f; border-radius: 40px; background: #ffffff0f; color: var(--r9-ink);
}
.paper-page .r9-music .r9-play { background: var(--r9-accent); border-color: var(--r9-accent); color: #0b2b26; padding: 0 20px; }
.paper-page .r9-music .r9-play:hover { filter: brightness(1.07); }
.paper-page .r9-music .r9-next { width: 44px; padding: 0; }
.paper-page .r9-music .r9-next:hover { background: #ffffff1f; }
.paper-page .r9-music .r9-play svg, .paper-page .r9-music .r9-next svg { width: 17px; height: 17px; fill: currentColor; }
.paper-page .r9-music .r9-play-icon { display: block }
.paper-page .r9-music .r9-pause-icon { display: none }
.paper-page .r9-music .is-playing .r9-play-icon { display: none }
.paper-page .r9-music .is-playing .r9-pause-icon { display: block }
.paper-page .r9-music .r9-play-label { font: 600 13px/1 var(--body) }
.paper-page .r9-music .r9-clock { flex-shrink: 0; font-size: 11px; line-height: 1; font-variant-numeric: tabular-nums; color: var(--r9-dim); white-space: nowrap }
.paper-page .r9-music .r9-count { flex-shrink: 0; font-size: 11px; line-height: 1; font-variant-numeric: tabular-nums; color: var(--r9-dim); white-space: nowrap }

.paper-page .r9-music .r9-track { position: relative; flex: 1; min-width: 0; height: 44px; display: flex; align-items: center }
.paper-page .r9-music .r9-seek { position: absolute; inset: 0; width: 100%; height: 44px; margin: 0; padding: 0; appearance: none; -webkit-appearance: none; background: none; border: 0; opacity: 0; cursor: pointer }
.paper-page .r9-music .is-loading .r9-play { opacity: .7 }
.paper-page .r9-music .r9-status { min-height: 1.5em; margin: 6px 0 0; font-size: 12px; line-height: 1.5; color: #566a7c }
.paper-page .r9-music button:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px }

@media (max-width: 1099px) {
  .paper-page .r9-music { grid-template-columns: minmax(0, 1fr); gap: 14px }
  .paper-page .r9-music .chapter-heading { grid-column: 1; grid-row: auto; margin: 0 0 12px }
  .paper-page .r9-music .chapter-heading h2 { max-width: none }
  .paper-page .r9-music .r9-player,
  .paper-page .r9-music .r9-status { grid-column: 1; width: min(100%, 720px); justify-self: center }
}
@media (max-width: 600px) {
  .paper-page .r9-music .section-lead { font-size: 14px }
  .paper-page .r9-music .song-player.r9-player { border-radius: 14px }
  .paper-page .r9-music .r9-stage { min-height: 250px; padding: 18px 16px 14px }
  .paper-page .r9-music .r9-current { font-size: 19px }
  .paper-page .r9-music .r9-upcoming { font-size: 12px; margin-top: 7px }
  .paper-page .r9-music .r9-main { padding: 12px 14px 14px }
  /* Below 600px the progress line cannot share a row with the transport, so
     the track takes its own line. */
  .paper-page .r9-music .r9-transport { gap: 10px; flex-wrap: wrap }
  .paper-page .r9-music .r9-track { order: 3; flex: 1 0 100%; height: 34px; margin-top: 4px }
  .paper-page .r9-music .r9-clock { margin-left: auto }
  .paper-page .r9-music .r9-play { padding: 0 15px }
  .paper-page .r9-music .r9-play-label { font-size: 12px }
  .paper-page .r9-music .r9-clock { font-size: 10px }
}
@media (max-width: 380px) {
  .paper-page .r9-music .r9-play-label { display: none }
  .paper-page .r9-music .r9-play { width: 44px; padding: 0 }
}
/* The stage crops one frame of a 9:16 film. Much past 580px that crop is a
   letterbox slice of a face, so the object keeps a portrait-friendly shape
   rather than stretching to fill the column. */
@media (min-width: 1100px) {
  .paper-page .r9-music .r9-player,
  .paper-page .r9-music .r9-status { max-width: 560px }
  .paper-page .r9-music .r9-stage { min-height: 370px }
}

@media (prefers-reduced-motion: reduce) {
  .paper-page .r9-music *, .paper-page .r9-music *::before, .paper-page .r9-music *::after { animation: none !important; transition: none !important }
}


/* Production BirthdayClip deck geometry, scoped for the integration previews. */
.paper-page .r11-carousel { width:100%; max-width:540px; min-width:0; margin:0 auto; color:#182a42; font-family:var(--font-body,"DM Sans",sans-serif); }
@media (max-width:600px) {
  .paper-page .r11-carousel { max-width:360px; }
  .paper-page .r11-carousel-stage { height:295px; }
  .paper-page .r11-carousel-front { width:149px; height:265px; top:10px; border-radius:12px; border-width:5px; }
  .paper-page .r11-carousel-peer { width:90px; height:158px; border-width:4px; }
  .paper-page .r11-carousel-peer-1 { left:5%; top:15px; }
  .paper-page .r11-carousel-peer-2 { right:5%; top:20px; }
  .paper-page .r11-carousel-peer-3 { left:7%; top:115px; }
  .paper-page .r11-carousel-peer-4 { right:7%; top:118px; }
  .paper-page .r11-carousel-caption { font-size:13px; }
  .paper-page .r11-carousel-controls { gap:4px; margin:2px 0; }
  .paper-page .r11-carousel-sound { left:5px; bottom:8px; padding:0 8px; gap:4px; font-size:11px!important; }
  .paper-page .r11-carousel-disclosure { font-size:12px; }
}
@media(prefers-reduced-motion:reduce){.paper-page .r11-carousel *{animation:none!important;transition:none!important}.paper-page .r11-carousel-auto{display:none}}

/* 28/29 integration only. Existing design studies remain frozen. */
.paper-page{--site-ink:#182c45;--site-blue:#3155dc;--site-mint:#ddf8f5}html:has(.paper-page){scroll-padding-top:100px}.paper-page{overflow-x:clip}.paper-page .integration-header{position:sticky;top:0;z-index:50;background:#fffffff5;backdrop-filter:blur(14px);border-bottom:1px solid #dce4ee;color:var(--site-ink)}.paper-page .integration-nav{max-width:1320px;margin:auto;min-height:90px;padding:18px 36px;display:flex;align-items:center;justify-content:space-between;gap:28px}.paper-page .integration-header .brand img{width:212px;height:auto}.paper-page .integration-header nav{display:flex;align-items:center;gap:27px}.paper-page .integration-header a{text-decoration:none}.paper-page .integration-header nav>a{font-size:14px;color:#62738c;white-space:nowrap}.paper-page .integration-account{display:flex;gap:20px;align-items:center;font-size:14px;white-space:nowrap}.paper-page .integration-account .signin{color:var(--site-ink);font-weight:600}.paper-page .integration-header .primary, .paper-page .integration-hero .primary, .paper-page .integration-create .primary, .paper-page .integration-close .primary{background:var(--site-blue);color:white;border:0;border-radius:100px;box-shadow:0 7px 15px #3155dc26;font:600 15px/1.3 var(--body);padding:15px 22px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none}.paper-page .language-menu{position:relative}.paper-page .language-menu summary{cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center}.paper-page .language-menu[open]{background:white}.paper-page .language-menu>a{display:block;position:absolute;top:46px;right:0;padding:12px 18px;background:white;color:var(--site-ink);border:1px solid #e0e6ef;min-width:120px}.paper-page .language-menu>a+a{top:92px}.paper-page .mobile-menu{display:none}.paper-page .integration-header #mobile-links[hidden]{display:none}
.paper-page .integration-hero{position:relative;background:var(--site-mint);color:var(--site-ink);overflow:hidden}.paper-page .integration-hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:40px;align-items:center;max-width:1320px;padding:56px 40px 48px;margin:auto;position:relative;z-index:1}.paper-page .integration-hero-copy{padding-bottom:34px;min-width:0}.paper-page .integration-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(58px,5.45vw,78px);font-weight:500;line-height:1.02;letter-spacing:-.055em;white-space:normal;color:#183e35;margin:0 0 28px}.paper-page .integration-hero .eyebrow{font:650 11px/1.5 var(--body);letter-spacing:.14em;color:#355f59;background:none;padding:0;margin:0 0 23px}.paper-page .integration-hero .lead{font-size:19px;line-height:1.65;max-width:440px;color:#516876;margin:0}.paper-page .integration-hero .hero-actions{gap:21px;margin-top:30px}.paper-page .integration-hero .secondary{font:550 13px/1.4 var(--body);color:#304d61;border:0;text-decoration:none;padding:12px 0}.paper-page .integration-promise{font-size:12px;color:#61767d;margin-top:23px}.paper-page .integration-confetti{position:absolute;inset:0;pointer-events:none}.paper-page .integration-confetti i{position:absolute;width:9px;height:23px;background:#ff5d47;border-radius:8px;left:calc(7% + var(--i)*12%);top:calc(8% + mod(var(--i)*37%,78%));transform:rotate(calc(25deg + var(--i)*18deg));opacity:.8}.paper-page .integration-confetti i:nth-child(2n){background:#ffd743;top:78%}.paper-page .integration-confetti i:nth-child(3n){background:#53cfc1;top:23%}.paper-page .integration-confetti i:nth-child(4n){background:#3155dc;top:88%}.paper-page .chapter{max-width:1260px}.paper-page .chapter h2{font-size:clamp(30px,3.1vw,43px)}.paper-page .upload-panel{padding:26px;background:#ffffffe6;border:1px solid #cce3e1;border-radius:24px;min-width:0;box-shadow:0 14px 35px #1e5a5510}.paper-page .upload-label{display:flex;flex-direction:column;align-items:center;cursor:pointer;padding:12px 10px 19px;min-height:100px;text-align:center}.paper-page .upload-label>span{font-size:25px;color:var(--site-blue);line-height:1.1}.paper-page .upload-label strong{font-size:18px;margin:8px 0}.paper-page .upload-label small{font-size:11px;color:#647887}.paper-page .upload-panel input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.paper-page .upload-panel:has(input:focus-visible) .upload-label{outline:3px solid var(--site-blue);outline-offset:3px;border-radius:12px}.paper-page .upload-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.paper-page .upload-slot{aspect-ratio:.88;border:1px dashed #a9c7c7;border-radius:10px;position:relative;background:#f0f8f7;overflow:hidden}.paper-page .upload-slot.empty{display:grid;place-items:center;color:#769795;font-size:18px}.paper-page .upload-slot img{width:100%;height:100%;object-fit:cover}.paper-page .upload-slot button{position:absolute;right:0;top:0;border:0;background:#fffffff0;color:#213849;min-width:44px;min-height:44px;padding:2px;border-radius:0 0 0 12px;font-size:20px}.paper-page .upload-status{font-size:12px;color:#536b78;margin:14px 0}.paper-page .upload-panel .primary{width:100%;cursor:pointer}.paper-page .upload-panel .primary:disabled{opacity:.55;background:#dfe3f5;color:#3a4668;box-shadow:none;cursor:default}.paper-page .local-upload-note{font-size:10px;line-height:1.5;color:#6d7f8a;text-align:center;margin:13px 0 0}.paper-page .integration-faq{max-width:1260px;padding:80px 35px;margin:auto;display:grid;grid-template-columns:1fr 1.25fr;gap:60px;color:var(--site-ink)}.paper-page .integration-faq h2{}.paper-page .integration-faq details{border-bottom:1px solid #d9e2ed}.paper-page .integration-faq summary{display:flex;justify-content:space-between;gap:16px;align-items:center;list-style:none;padding:22px 0;min-height:65px;font-size:17px;font-weight:600;cursor:pointer}.paper-page .integration-faq summary::-webkit-details-marker{display:none}.paper-page .integration-faq details[open] summary span{transform:rotate(45deg)}.paper-page .integration-faq details p{padding:0 22px 22px 0;font-size:14px;line-height:1.7;color:#5e7185}.paper-page .integration-faq .secondary{display:inline-block;margin-top:22px;color:var(--site-blue);border:0}.paper-page .integration-footer{padding:40px max(35px,calc((100vw - 1190px)/2));background:white;color:#63738a;display:flex;align-items:center;flex-wrap:wrap;gap:24px;justify-content:space-between}.paper-page .integration-footer .brand img{width:185px}.paper-page .integration-footer>div{display:flex;gap:24px;font-size:12px;align-items:center;flex-wrap:wrap}.paper-page .integration-footer a{color:inherit;text-decoration:none}.paper-page .integration-header a:focus-visible,.paper-page .integration-header summary:focus-visible{outline:3px solid #3155dc;outline-offset:4px}
@media(max-width:1100px){.paper-page .integration-nav{padding:16px 25px;gap:20px}.paper-page .integration-header nav{gap:18px}.paper-page .integration-header .brand img{width:175px}.paper-page .integration-account{gap:13px}.paper-page .integration-header .primary{font-size:12px;padding:13px 17px}.paper-page .integration-header nav>a{font-size:12px}.paper-page .integration-hero-grid{gap:28px;padding:45px 30px}.paper-page .integration-hero h1{font-size:62px}.paper-page .integration-hero .lead{font-size:17px}.paper-page .integration-create{gap:35px}.paper-page .integration-explainer.hero{gap:20px;padding:55px 28px}.paper-page .gift-moment-grid{gap:35px}}
@media(max-width:900px){.paper-page .integration-header .integration-nav>nav{display:none}.paper-page .integration-header .mobile-menu{display:block;min-width:44px;min-height:44px;border:1px solid #d9e2ed;border-radius:50%;padding:8px;background:white;color:var(--site-ink)}.paper-page .integration-header #mobile-links{display:flex;flex-wrap:wrap;padding:8px 25px 18px;gap:6px 20px}.paper-page .integration-header #mobile-links a{min-height:44px;display:flex;align-items:center}.paper-page .integration-hero-grid{grid-template-columns:1fr;max-width:750px;gap:20px}.paper-page .integration-hero-copy{text-align:center;padding-bottom:8px}.paper-page .integration-hero h1{font-size:68px}.paper-page .integration-hero .lead{margin:auto}.paper-page .integration-hero .hero-actions{justify-content:center}.paper-page .integration-hero #bd-examples{width:100%;max-width:570px;margin:auto}.paper-page .integration-explainer.hero{grid-template-columns:1fr;gap:20px;max-width:700px}.paper-page .integration-explainer .hero-copy{max-width:570px;text-align:center;margin:auto}.paper-page .integration-explainer .lead{margin:15px auto;max-width:460px}.paper-page .explore-hint{margin:10px 0}.paper-page .integration-explainer .hero-stage{max-width:620px}.paper-page .integration-create{padding:55px 28px;grid-template-columns:1fr 1fr;gap:28px}.paper-page .integration-create h2{font-size:34px}.paper-page .gift-moment-copy h3{font-size:32px}.paper-page .integration-faq{gap:30px;padding:55px 28px}.paper-page .integration-faq h2{font-size:31px}.paper-page .integration-account .signin{display:none}}
@media(max-width:600px){html:has(.paper-page){scroll-padding-top:78px}.paper-page .integration-nav{padding:12px 16px;min-height:74px;gap:12px}.paper-page .integration-header .brand img{width:150px}.paper-page .integration-account{gap:9px}.paper-page .integration-account>.primary,.paper-page .integration-account .language-menu{display:none}.paper-page .integration-header #mobile-links{padding:0 16px 12px}.paper-page .integration-hero-grid{padding:33px 18px 30px;gap:23px}.paper-page .integration-hero .eyebrow{font-size:9px;margin-bottom:20px}.paper-page .integration-hero h1{font-size:51px;line-height:1.04;margin-bottom:20px}.paper-page .integration-hero .lead{font-size:16px;line-height:1.55}.paper-page .integration-hero .hero-actions{gap:8px;flex-direction:column;margin-top:22px}.paper-page .integration-hero .primary{padding:14px 23px;font-size:14px}.paper-page .integration-promise{font-size:11px;margin-top:12px}.paper-page .integration-hero-copy{padding:0}.paper-page .integration-explainer.hero{padding:43px 18px 36px;gap:22px}.paper-page .integration-explainer h2{font-size:38px}.paper-page .integration-explainer .lead{font-size:16px}.paper-page .integration-explainer .eyebrow{margin-bottom:15px;font-size:10px}.paper-page .integration-explainer .hero-stage{width:100%}.paper-page .integration-explainer .hero-copy{padding:0}.paper-page .gift-moment-grid{grid-template-columns:1fr;gap:26px}.paper-page .gift-moment-grid img{border-radius:14px}.paper-page .gift-moment-copy h3{font-size:35px;margin-bottom:17px}.paper-page .gift-moment-copy p{font-size:16px}.paper-page .integration-stories{padding-bottom:44px}.paper-page .integration-create{grid-template-columns:1fr;padding:44px 20px;gap:30px}.paper-page .integration-create h2{font-size:36px}.paper-page .create-copy>p:not(.eyebrow){font-size:16px}.paper-page .upload-panel{padding:20px;border-radius:19px}.paper-page .integration-faq{grid-template-columns:1fr;padding:46px 20px;gap:15px}.paper-page .integration-faq h2{font-size:33px}.paper-page .integration-faq summary{font-size:15px;padding:20px 0}.paper-page .integration-close{padding:42px 20px}.paper-page .integration-close h2{font-size:33px}.paper-page .integration-footer{padding:28px 20px;gap:24px}.paper-page .integration-footer>div{gap:20px;font-size:11px}.paper-page .integration-footer>div span{flex-basis:100%}.paper-page .integration-footer .brand img{width:160px}.paper-page[data-integration="29"] .integration-explainer{margin:25px 12px 0;padding:35px 12px;max-width:calc(100% - 24px);border-radius:25px}.paper-page[data-integration="29"] .gift-orbit{max-width:100%}.paper-page .chapter h2{font-size:31px}.paper-page .integration-confetti i{opacity:.55;width:6px;height:16px}}
/* Full-bleed music owns viewport gutters; do not combine them with a capped section. */
.paper-page .chapter.r9-music{max-width:none;width:100%;padding-left:max(35px,calc((100% - 1190px)/2));padding-right:max(35px,calc((100% - 1190px)/2))}
@media(max-width:900px){.paper-page .chapter.r9-music{padding-left:28px;padding-right:28px}}
@media(max-width:600px){.paper-page .chapter.r9-music{padding-left:18px;padding-right:18px}}
.paper-page .chapter.r9-music{margin-left:0;margin-right:0}

/* Selected Paper28: content and final action refinements for30/31 only. */
.paper-page[data-paper-review]{--paper:#f7f3e9}.paper-page .integration-hero .lead{max-width:465px;font-size:18px;line-height:1.65}.paper-page .integration-hero .integration-promise{font-size:13px;margin-top:20px;color:#48636e}.paper-page .media-status:empty{display:none}.paper-page .impact-footnote{font-size:12px}.paper-page .integration-faq{padding-top:58px;padding-bottom:58px}.paper-page .integration-faq h2{max-width:9em}.paper-page .integration-footer{padding-top:30px;padding-bottom:25px}.paper-page .integration-header .brand img{width:205px}
.paper-page .paper-finish{position:relative;margin:0 auto;padding:65px 35px;max-width:1260px;border-top:1px solid #dcd7c9}.paper-page .paper-finish-panel{display:grid;grid-template-columns:.92fr 1fr;gap:62px;align-items:center;padding:42px;background:#eee9dc;border:1px solid #e0d8c5;border-radius:16px}.paper-page .paper-start{min-width:0}.paper-page .paper-start .eyebrow{font-size:10px;margin-bottom:13px;color:#9d4d41}.paper-page .paper-start h2{font-weight:550;line-height:1.08;letter-spacing:-.045em;margin-bottom:20px}.paper-page .paper-offer{display:flex;gap:13px;align-items:center;margin:0 0 22px;color:#4b5c67;flex-wrap:wrap}.paper-page .paper-offer strong{font:550 27px/1 var(--display);letter-spacing:-.04em;color:var(--ink)}.paper-page .paper-offer span{font-size:11px;line-height:1.5}.paper-page .paper-finish .upload-panel{padding:0;background:none;border:0;border-radius:0;box-shadow:none}.paper-page .paper-finish .upload-label{border:1px dashed #b8b5a9;border-radius:10px;background:#fffdf680;padding:12px 14px;min-height:74px;margin-bottom:13px;gap:5px}.paper-page .paper-finish .upload-label strong{font:600 14px/1.3 var(--body);margin:0;color:#3d5064}.paper-page .paper-finish .upload-label strong>span{font-size:20px;margin-right:3px;vertical-align:-1px;font-weight:400;color:#3155dc}.paper-page .paper-finish .upload-label small{font-size:10px}.paper-page .paper-finish .upload-slots{gap:9px}.paper-page .paper-finish .upload-slot{aspect-ratio:1.3;border:1px solid #ddd8c9;background:#faf7ef;border-radius:8px}.paper-page .paper-finish .upload-slot.empty{font-size:13px;color:#9b9b8d}.paper-page .paper-upload-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.paper-page .paper-upload-bottom .upload-status{font-size:11px;line-height:1.45;margin:0;max-width:43%}.paper-page .paper-finish .upload-panel .primary{min-height:46px;width:auto;min-width:172px;padding:12px 17px;background:#3155dc;border:0;border-radius:7px;color:white;font-size:12px;font-weight:600;box-shadow:2px 3px 0 #233e7c}.paper-page .paper-finish .local-upload-note{font-size:9px;margin-top:13px;text-align:left;color:#6a746f}.paper-page .paper-finish .primary:disabled{opacity:.4;box-shadow:none}
.paper-page[data-paper-review="31"] .integration-hero h1{font-size:clamp(54px,5.15vw,73px);max-width:7.5em}
@media(max-width:1100px){.paper-page .paper-finish-panel{padding:32px;gap:35px}.paper-page .paper-start h2{}.paper-page .paper-finish-band .paper-finish-panel{grid-template-columns:190px 1fr;padding:28px;gap:28px}.paper-page .paper-finish-band .paper-start{grid-template-columns:.85fr 1.15fr;gap:22px}.paper-page .paper-finish-band .paper-start h2{font-size:30px}.paper-page .paper-finish-band .paper-gift-visual>img{aspect-ratio:.73}.paper-page .paper-upload-bottom{flex-wrap:wrap}.paper-page .paper-upload-bottom .upload-status{max-width:none}}
@media(max-width:900px){.paper-page .paper-finish{padding:45px 25px}.paper-page .paper-finish-panel{grid-template-columns:.85fr 1fr;gap:30px;padding:26px}.paper-page .paper-start h2{font-size:34px}.paper-page .paper-gift-visual>img{aspect-ratio:.84}.paper-page .paper-offer{gap:8px}.paper-page .paper-offer span{font-size:10px}.paper-page .paper-finish .upload-panel .primary{width:100%;min-width:0}.paper-page .paper-upload-bottom .upload-status{max-width:none}.paper-page .paper-upload-bottom{display:block}.paper-page .paper-upload-bottom .primary{margin-top:10px}.paper-page .paper-finish-band .paper-finish-panel{grid-template-columns:150px 1fr}.paper-page .paper-finish-band .paper-start{display:block}.paper-page .paper-finish-band .paper-start h2{font-size:34px}.paper-page .paper-finish-band .paper-offer{display:flex;margin-bottom:17px}.paper-page .paper-finish-band .paper-offer span{margin:0;max-width:none}.paper-page .paper-finish-band .paper-gift-visual>img{aspect-ratio:.72}.paper-page .paper-finish-band .paper-gift-visual{align-self:start;margin-top:30px}.paper-page .paper-finish-band .upload-slot{aspect-ratio:1.6}.paper-page .integration-header .brand img{width:185px}}
@media(max-width:600px){.paper-page .integration-header .brand img{width:150px}.paper-page .integration-hero .lead{font-size:16px}.paper-page .integration-hero .integration-promise{font-size:12px;margin-top:9px}.paper-page .integration-explainer.hero{padding-top:35px}.paper-page .integration-explainer .hero-copy{max-width:100%;text-align:center}.paper-page .integration-explainer .hero-copy h2{font-size:37px;max-width:none;margin-bottom:5px}.paper-page .integration-explainer .hero-copy h2 br{display:none}.paper-page .integration-explainer .hero-copy h2{max-width:9em;margin-left:auto;margin-right:auto}.paper-page .photo-section .chapter-heading{margin-bottom:22px}.paper-page .paper-finish{padding:35px 17px}.paper-page .paper-finish-panel{display:flex;flex-direction:column;padding:25px 20px;gap:24px;border-radius:13px}.paper-page .paper-gift-visual{width:100%;max-width:280px;padding:7px 7px 22px;transform:rotate(-1.5deg);margin-top:1px}.paper-page .paper-gift-visual>img{aspect-ratio:1.85;object-position:50% 47%}.paper-page .paper-gift-visual figcaption{font-size:8px;bottom:5px;left:9px}.paper-page .paper-gift-visual:before{height:20px;width:58px;left:calc(50% - 29px);top:-10px}.paper-page .paper-start{width:100%}.paper-page .paper-start .eyebrow{font-size:9px;margin-bottom:9px}.paper-page .paper-start h2{font-size:33px;line-height:1.07;margin-bottom:15px}.paper-page .paper-offer{gap:12px;margin-bottom:19px}.paper-page .paper-offer strong{font-size:26px}.paper-page .paper-offer span{font-size:10px;max-width:165px}.paper-page .paper-finish .upload-label{padding:11px 9px;min-height:69px}.paper-page .paper-finish .upload-label strong{font-size:13px}.paper-page .paper-finish .upload-label small{font-size:9px}.paper-page .paper-finish .upload-slots{gap:7px}.paper-page .paper-finish .upload-slot{aspect-ratio:1.25}.paper-page .paper-finish .upload-panel .primary{min-height:46px;font-size:12px;margin-top:9px}.paper-page .paper-upload-bottom{margin-top:11px}.paper-page .paper-upload-bottom .upload-status{font-size:10px}.paper-page .paper-finish .local-upload-note{font-size:9px;line-height:1.5}.paper-page .integration-faq{padding:36px 20px 42px}.paper-page .integration-faq h2{font-size:32px}.paper-page .integration-faq summary{font-size:14px}.paper-page .integration-faq details p{font-size:13px}.paper-page .paper-finish-band .paper-finish-panel{display:grid;grid-template-columns:1fr;padding:24px 18px;gap:23px}.paper-page .paper-finish-band .paper-gift-visual{margin:0;max-width:none;align-self:auto;transform:none;padding:6px 6px 21px}.paper-page .paper-finish-band .paper-gift-visual>img{aspect-ratio:2.7;object-position:center 46%}.paper-page .paper-finish-band .paper-start{display:block}.paper-page .paper-finish-band .paper-start h2{font-size:33px}.paper-page .paper-finish-band .paper-offer{display:flex;gap:12px}.paper-page .paper-finish-band .paper-offer span{max-width:150px}.paper-page .paper-finish-band .upload-slot{aspect-ratio:1.8}.paper-page[data-paper-review="31"] .integration-hero h1{font-size:47px;max-width:8em}.paper-page .paper-auto{font-size:10px;margin-top:3px}.paper-page .sample-caption{font-size:10px}.paper-page .hero-controls .person-name{font-size:11px}.paper-page .preview-dialog{padding:24px}.paper-page .preview-dialog h2{font-size:27px}}
.paper-page .paper-offer span{font-size:13px}.paper-page .paper-finish .upload-label small{font-size:11px}.paper-page .paper-upload-bottom .upload-status{font-size:12px}.paper-page .paper-finish .local-upload-note{font-size:11px}
@media(max-width:600px){.paper-page .paper-offer span{font-size:12px;max-width:180px}.paper-page .paper-finish-band .paper-offer span{max-width:180px}.paper-page .paper-finish .upload-label small{font-size:10px}.paper-page .paper-upload-bottom .upload-status{font-size:11px}.paper-page .paper-finish .local-upload-note{font-size:10px}.paper-page .paper-gift-visual figcaption{font-size:9px}}
.paper-page .paper-finish .local-upload-note{font-size:11px}
@media(max-width:600px){.paper-page .paper-finish-band .paper-gift-visual>img{object-position:center 12%}}


.paper-page{width:100%;overflow-x:clip}.paper-page .impact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.paper-page .paper-company{font-size:11px;padding:0 28px 20px;color:var(--muted)}@media(max-width:600px){.paper-page .impact-grid{grid-template-columns:1fr}.paper-page .cause-card{display:grid;grid-template-columns:86px 1fr;column-gap:16px}.paper-page .cause-card img{grid-row:span 2;height:85px;margin:0}}
.paper-page .paper-languages{position:absolute;top:100%;right:0;min-width:180px;max-height:65vh;overflow-y:auto;display:grid;padding:8px;background:#fff;border:1px solid #dce4ee;border-radius:12px;box-shadow:0 12px 30px #182c451c}.paper-page .paper-languages>a{padding:10px 14px;color:var(--site-ink);font-size:14px;min-height:44px}.paper-page .paper-languages>a:hover{background:#f1f6f5;border-radius:6px}@media(max-width:600px){.paper-page .integration-account .language-menu{display:block}.paper-page .language-menu summary{font-size:12px}}
/* ── Four-cuts landing (2026-09-15) ──────────────────────────────────────────
   The hero now carries its own proof: one silent loop of a real cut beside the
   promise and the price. Below it, the four looks are named once and shown
   once, by four different people. Nothing on this page is framed like a card
   any more — the films are the objects. */

/* One display face. Georgia was declared here, not fallen back to, but it is
   the only serif on the page and it degrades to Times on Windows and Android,
   so the loudest element in the brand was the least stable. Outfit is the face
   every other heading already uses and is already loaded. */
@media (min-width: 901px) { .paper-page .integration-hero h1 { font-size: clamp(50px, 4.9vw, 68px) } }
.paper-page .integration-hero h1 { font-family: var(--display); font-weight: 560; letter-spacing: -.045em; line-height: 1.05 }
/* Body copy on cream: every one of these was between 3.99:1 and 4.49:1. */
.paper-page { --muted: #5b6068 }
.paper-page .section-lead, .paper-page .example-note, .paper-page .impact-footnote,
.paper-page .cause-card p, .paper-page .integration-hero .hero-note,
.paper-page .paper-finish .local-upload-note, .paper-page .example-who span,
.paper-page .look-list p, .paper-page .cut-facts li { color: var(--muted) }
.paper-page .paper-finish .local-upload-note, .paper-page .cause-card p,
.paper-page .impact-footnote, .paper-page .example-note, .paper-page .example-who span,
.paper-page .integration-hero .hero-note { font-size: 14px; line-height: 1.55 }
.paper-page .paper-upload-bottom .upload-status { font-size: 14px; max-width: none }
.paper-page .hero-example figcaption, .paper-page .hero-ai { font-size: 14px }
.paper-page .integration-hero .hero-note { font-size: 14px; line-height: 1.5; color: var(--muted); margin: 6px 0 0 }
.paper-page .integration-hero h1 { text-wrap: pretty }
.paper-page .integration-hero .hero-actions { display: flex; align-items: center; flex-wrap: wrap }

.paper-page .hero-example { margin: 0; display: grid; gap: 12px; justify-items: center }
.paper-page .hero-shot {
  position: relative; width: min(352px, 100%); aspect-ratio: 9 / 16;
  border-radius: 22px; overflow: hidden; background: #0f1b2e;
  box-shadow: 0 20px 44px #16303e29;
}
.paper-page .hero-shot video { width: 100%; height: 100%; object-fit: cover }
/* The clip burns its lyric into bright frames. The scrim is the page's job,
   not the engine's, because only the page knows what sits on top of it. */
.paper-page .hero-scrim { position: absolute; inset: auto 0 0 0; height: 46%; pointer-events: none; background: linear-gradient(to top, #0b1524cc, #0b152400) }
.paper-page .hero-play {
  position: absolute; left: 50%; bottom: 16px; transform: translateX(-50%);
  display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px;
  border: 0; border-radius: 40px; background: #fffdf8f2; color: var(--ink);
  font: 600 14px/1 var(--body); box-shadow: 0 6px 18px #0f1b2e40;
  transition: background 150ms cubic-bezier(.32,.72,0,1), transform 150ms cubic-bezier(.32,.72,0,1);
}
.paper-page .hero-play:hover { background: #fff; transform: translateX(-50%) scale(1.03) }
.paper-page .hero-play:active { transform: translateX(-50%) scale(.98) }
.paper-page .hero-play svg { width: 15px; height: 15px; fill: currentColor }
.paper-page .hero-play svg + svg { display: none }
.paper-page .hero-shot.is-playing .hero-play svg:first-of-type { display: none }
.paper-page .hero-shot.is-playing .hero-play svg + svg { display: block }
/* Before hydration these spans have no text; a filled capsule around nothing
   reads as a broken control. */
.paper-page .hero-example figcaption span:empty { display: none }
.paper-page .hero-example figcaption { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; justify-content: center; font-size: 12px; color: #43606b }
.paper-page .hero-ai { font-size: 13px; color: var(--muted) }
/* Small labels are not body copy, but they still have to be readable: these
   three were the last pairings under 4.5:1 on their own grounds. */
.paper-page .eyebrow { color: #4f5a4f }
.paper-page .integration-hero .eyebrow { color: #2c4f49 }
.paper-page .chapter-number { color: #3f4a52 }
.paper-page .cuts-section .chapter-number { color: #7d3a29 }
.paper-page .music-section .chapter-number { color: #2f4e7d }
.paper-page .impact-section .chapter-number { color: #3d4a2d }
.paper-page .integration-hero .integration-promise { font-size: 15px; color: #33474f }
.paper-page .integration-hero .secondary { font-size: 14px }
.paper-page .hero-example figcaption, .paper-page .hero-who, .paper-page .hero-look { font-size: 13px }
.paper-page .paper-finish .upload-label small { font-size: 13px }
.paper-page .paper-company, .paper-page .integration-footer a, .paper-page .integration-footer span { font-size: 13px }
/* The headline is two sentences on two lines; it may never break a third time. */
@media (min-width: 901px) {
  .paper-page .integration-hero-grid { grid-template-columns: 1.08fr .92fr }
  .paper-page .integration-hero h1 { font-size: clamp(46px, 4.4vw, 62px); max-width: none }
}
.paper-page .hero-look { padding: 4px 11px; border-radius: 40px; background: #ffffffb3; border: 1px solid #b9ded8; font-weight: 650 }

.paper-page .cuts-section .chapter-number { background: #f4d7cd; color: #6f3527 }
.paper-page .look-list { list-style: none; margin: 0 0 30px; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 26px }
.paper-page .look-list li { padding-top: 14px; border-top: 2px solid var(--ink); min-width: 0 }
.paper-page .look-list h3 { font-size: 19px; margin-bottom: 7px }
.paper-page .look-list p { font-size: 14px; line-height: 1.55; color: var(--muted) }

.paper-page .example-rail-frame { position: relative }
.paper-page .example-rail {
  list-style: none; margin: 0; padding: 0 0 6px; display: flex; gap: 18px;
  overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; overscroll-behavior-x: contain;
}
.paper-page .example { flex: 0 0 clamp(188px, 23vw, 244px); scroll-snap-align: start; min-width: 0 }
.paper-page .example-film {
  position: relative; aspect-ratio: 9 / 16; border-radius: 16px; overflow: hidden;
  background: #0f1b2e; box-shadow: 0 10px 26px #1b3a4a1f;
}
.paper-page .example-film video { width: 100%; height: 100%; object-fit: cover }
.paper-page .example-play {
  position: absolute; left: 50%; top: 42%; transform: translate(-50%, -50%);
  display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px;
  border: 0; border-radius: 40px; background: #fffdf8f2; color: var(--ink);
  font: 600 13px/1 var(--body); box-shadow: 0 6px 18px #0f1b2e33;
  transition: transform 180ms cubic-bezier(.32,.72,0,1), background 180ms ease;
}
.paper-page .example-play:hover { background: #fff; transform: translate(-50%, -50%) scale(1.03) }
.paper-page .example-play:active { transform: translate(-50%, -50%) scale(.98) }
.paper-page .example-play svg { width: 15px; height: 15px; fill: currentColor }
.paper-page .example-play span { white-space: nowrap }
.paper-page .example-play svg + svg { display: none }
.paper-page .example.is-playing .example-play {
  left: 12px; top: auto; bottom: 12px; transform: none; min-width: 44px; width: 44px; padding: 0;
  justify-content: center; background: #0f1b2ecc; color: #fff;
}
.paper-page .example.is-playing .example-play:hover, .paper-page .example.is-playing .example-play:active { transform: none; background: #0f1b2e }
.paper-page .example.is-playing .example-play span { display: none }
.paper-page .example.is-playing .example-play svg:first-of-type { display: none }
.paper-page .example.is-playing .example-play svg + svg { display: block }
.paper-page .example-sound {
  position: absolute; right: 12px; bottom: 12px; display: none;
  width: 44px; min-width: 44px; height: 44px; padding: 0; align-items: center; justify-content: center;
  border: 0; border-radius: 50%; background: #0f1b2ecc; color: #fff;
}
.paper-page .example.is-playing .example-sound { display: flex }
.paper-page .example-sound svg { width: 17px; height: 17px }
.paper-page .example-sound svg + svg { display: none }
.paper-page .example-sound[aria-pressed="true"] svg:first-of-type { display: none }
.paper-page .example-sound[aria-pressed="true"] svg + svg { display: block }
.paper-page .cut-name {
  position: absolute; left: 10px; top: 10px;
  padding: 6px 12px; border-radius: 40px; background: #182a42d9; color: #fff;
  font: 650 11px/1 var(--body); letter-spacing: .07em; text-transform: uppercase;
}
.paper-page .example-who { margin-top: 12px; display: grid; gap: 2px; font-size: 14px; line-height: 1.4 }
.paper-page .example-who strong { font-weight: 650 }
.paper-page .example-who span { font-size: 14px; color: var(--muted) }
.paper-page .rail-arrow {
  position: absolute; top: 46%; transform: translateY(-50%); z-index: 2;
  width: 44px; min-width: 44px; height: 44px; padding: 0; display: grid; place-items: center;
  border: 1px solid #dbd6c8; border-radius: 50%; background: #fffdf8; color: var(--ink);
  box-shadow: 0 4px 14px #1b3a4a1a;
}
.paper-page .rail-arrow[data-rail="-1"] { left: -22px }
.paper-page .rail-arrow[data-rail="1"] { right: -22px }
.paper-page .rail-arrow:disabled { opacity: 0; pointer-events: none }
/* The two facts a buyer cannot infer from the films: how every cut ends, and
   what file they end up with. They sit between the looks and the examples,
   where "what you get" is still the question being answered. */
.paper-page .cut-facts { list-style: none; margin: 0 0 26px; padding: 0; display: grid; gap: 8px; max-width: 680px }
.paper-page .cut-facts li { position: relative; padding-left: 20px; font-size: 14px; line-height: 1.55; color: #4c5a63 }
.paper-page .cut-facts li::before { content: ''; position: absolute; left: 2px; top: .62em; width: 7px; height: 7px; border-radius: 50%; background: #c8b28a }
.paper-page .language-label { font-size: 12px; color: #61767d; white-space: nowrap }
.paper-page .primary { transition: background 150ms cubic-bezier(.32,.72,0,1) }
.paper-page .integration-footer a, .paper-page .impact-footnote a { display: inline-flex; align-items: center; min-height: 44px }
.paper-page .example-note { margin: 0 0 18px; line-height: 1.5 }
@media (min-width: 901px) { .paper-page .integration-header nav > a, .paper-page .integration-header .signin { display: inline-flex; align-items: center; min-height: 28px } }
.paper-page .paper-finish .upload-slot.empty { color: #6f7063 }
.paper-page .cuts-section .media-status { margin-top: 6px; min-height: 1.4em; font-size: 12px; color: #97503f }

/* The close: no illustration, one panel, one action. */
.paper-page .paper-finish-panel { grid-template-columns: minmax(0, 1fr); gap: 26px; max-width: 640px; margin: 0 auto; padding: 36px 34px }
.paper-page .paper-start h2 { margin-bottom: 16px }
.paper-page .paper-offer { margin-bottom: 24px }

@media (max-width: 1100px) {
  .paper-page .look-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 26px }
  .paper-page .rail-arrow[data-rail="-1"] { left: -8px }
  .paper-page .rail-arrow[data-rail="1"] { right: -8px }
}
@media (max-width: 900px) {
  .paper-page .hero-shot { width: min(268px, 66vw) }
  .paper-page .integration-hero .hero-note { text-align: center }
}
@media (max-width: 600px) {
  .paper-page .integration-hero h1 { font-size: 44px; margin-bottom: 16px }
  .paper-page .integration-hero .lead { font-size: 15px }
  .paper-page .integration-hero .integration-promise { margin-top: 14px }
  .paper-page .integration-hero .hero-actions { flex-direction: row; justify-content: center; gap: 14px; margin-top: 16px }
  .paper-page .integration-hero .primary { padding: 13px 18px; font-size: 13px }
  .paper-page .integration-hero-grid { gap: 18px; padding: 26px 18px 30px }
  .paper-page .hero-shot { width: min(232px, 62vw); border-radius: 16px }
  .paper-page .look-list { grid-template-columns: minmax(0, 1fr); gap: 18px; margin-bottom: 22px }
  .paper-page .cut-facts { margin-bottom: 22px; gap: 7px }
  .paper-page .cut-facts li { font-size: 13px; padding-left: 18px }
  .paper-page .look-list li { padding-top: 11px }
  .paper-page .look-list h3 { font-size: 17px }
  .paper-page .look-list p { font-size: 14px }
  .paper-page .example { flex-basis: 63vw }
  .paper-page .rail-arrow { display: none }
  .paper-page .paper-finish-panel { padding: 24px 20px }
}
@media (prefers-reduced-motion: reduce) {
  .paper-page .example-play, .paper-page .example-sound { transition: none }
}

/* A phone keeps one visible way to buy in the header. It only fits if the
   things the menu already carries stop competing for the same row. */
@media (max-width: 600px) {
  .paper-page .integration-account { gap: 8px }
  .paper-page .integration-account > .primary { display: inline-flex; min-height: 44px; padding: 9px 12px; font-size: 13px; white-space: nowrap }
  .paper-page .integration-account > .primary span { display: none }
  .paper-page .integration-header .signin, .paper-page .language-label { display: none }
  .paper-page .integration-header .brand img { width: 118px }
  .paper-page .integration-nav { gap: 8px; padding: 10px 14px; min-height: 66px }
  /* Outfit sets wider than the serif it replaced; balance keeps the second
     sentence on two even lines instead of orphaning its last word. */
  .paper-page .integration-hero h1 { font-size: 40px; text-wrap: balance }
}

/* ── Round 2 · 2026-09-16 ──────────────────────────────────────────────
   Three revisions, one art direction. The hero now shows the trade it asks
   for — four photographs in, a video, a song and one good thing out. "What
   you get" names the five looks and stops explaining the file format. And
   the song section is one wide, short listening object whose lyric lights a
   word at a time, because the claim it is making is that somebody wrote
   these words for this person. */

/* ---------- the hero's trade: four photos in, a birthday gift out ------ */

.paper-page .gift-equation {
  max-width: 1320px; margin: auto; padding: 26px 40px 46px;
  display: grid; grid-template-columns: auto 34px minmax(0, 1fr); gap: 30px;
  align-items: center; position: relative; z-index: 1;
}
.paper-page .gift-equation::before {
  content: ''; position: absolute; left: 40px; right: 40px; top: 0;
  border-top: 1px solid #bce0dc;
}
.paper-page .gift-label {
  font: 650 11px/1.5 var(--body); letter-spacing: .14em; text-transform: uppercase;
  color: #355f59; margin: 0 0 13px;
}
.paper-page .gift-photos { list-style: none; margin: 0; padding: 0; display: flex; gap: 9px }
/* Paper, not polaroid pastiche: a white margin, a small radius and the same
   soft shadow the hero film casts, so the photographs read as objects the
   visitor could have put on the table themselves. */
.paper-page .gift-photos li {
  background: #fff; padding: 5px; border-radius: 4px; box-shadow: 0 6px 16px #16303e1f;
}
.paper-page .gift-photos li:nth-child(1) { transform: rotate(-3deg) }
.paper-page .gift-photos li:nth-child(2) { transform: rotate(2.2deg) }
.paper-page .gift-photos li:nth-child(3) { transform: rotate(-1.4deg) }
.paper-page .gift-photos li:nth-child(4) { transform: rotate(2.8deg) }
.paper-page .gift-photos img {
  width: 78px; height: 97px; object-fit: cover; border-radius: 2px; display: block;
}
/* The one handwritten line on the page, in the face the finished video signs
   its ending with. */
.paper-page .gift-caption {
  font: 400 19px/1.2 Caveat, var(--body); color: #2f5a52; margin: 13px 0 0; transform: rotate(-1deg);
}
.paper-page .gift-arrow { display: grid; place-items: center; color: #6ba49c }
.paper-page .gift-arrow svg { width: 30px; height: 30px }
/* At desktop the band has two halves or it has none: 78px contact sheets in a
   379px column facing a 767px sentence made the photographs — the half the
   visitor is being asked for — the smallest thing in the equation. */
@media (min-width: 1100px) {
  /* Two equal halves, and 4 × (124 + 10) + 3 × 9 = 563px of photographs fits
     inside one of them from 1340px up; below that they shrink together rather
     than falling back to a contact sheet. */
  .paper-page .gift-equation { grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr) }
  .paper-page .gift-photos img { width: 124px; height: 155px }
  .paper-page .gift-arrow svg { width: 40px; height: 40px }
}
.paper-page .gift-gets { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px }
.paper-page .gift-gets li {
  display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 12px; align-items: start;
  font-size: 16px; line-height: 1.5; color: var(--site-ink);
}
.paper-page .gift-gets svg { width: 21px; height: 21px; color: #2f6b62; margin-top: 1px }
.paper-page .gift-sum {
  font-family: var(--display); font-size: 22px; font-weight: 560; letter-spacing: -.025em;
  color: #183e35; margin: 17px 0 0;
}

@media (max-width: 1100px) {
  .paper-page .gift-equation { padding-left: 28px; padding-right: 28px; gap: 22px }
  .paper-page .gift-equation::before { left: 28px; right: 28px }
}
/* Below the hero's own breakpoint the trade turns vertical: photographs,
   then the arrow pointing down at what they become. */
@media (max-width: 900px) {
  .paper-page .gift-equation {
    grid-template-columns: minmax(0, 1fr); justify-items: center; text-align: center;
    gap: 16px; padding: 24px 25px 38px;
  }
  .paper-page .gift-equation::before { left: 25px; right: 25px }
  .paper-page .gift-arrow { transform: rotate(90deg) }
  .paper-page .gift-gets li { text-align: left }
  .paper-page .gift-gets { max-width: 420px }
}
@media (max-width: 600px) {
  .paper-page .gift-equation { padding: 22px 18px 32px; gap: 14px }
  .paper-page .gift-equation::before { left: 18px; right: 18px }
  .paper-page .gift-photos { gap: 7px }
  .paper-page .gift-photos img { width: min(18vw, 72px); height: min(22.5vw, 90px) }
  .paper-page .gift-gets li { font-size: 14px }
  .paper-page .gift-sum { font-size: 18px }
  .paper-page .gift-caption { font-size: 18px }
}
@media (prefers-reduced-motion: reduce) {
  .paper-page .gift-photos li, .paper-page .gift-caption { transform: none }
}

/* ---------- what you get: five looks, named once ---------------------- */

.paper-page .look-list { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 22px }
@media (max-width: 1100px) {
  .paper-page .look-list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 26px }
}
@media (max-width: 600px) {
  .paper-page .look-list { grid-template-columns: minmax(0, 1fr); gap: 18px; margin-bottom: 22px }
  /* 28px under the last look reads as a sixth one. It is a caption for the
     rail below it, so it sits with the rail. */
  .paper-page .example-note { margin: 30px 0 14px }
}

/* ---------- the song, as one wide listening object -------------------- */

/* It was a two-column grid with a list of eight faces down the left. The list
   was a second navigation for a section with one thing to say, so the heading
   now sits above a player that uses the whole page. */
.paper-page .chapter.r9-music { display: block }
.paper-page .r9-music .chapter-heading { grid-column: auto; grid-row: auto; margin: 0 0 24px }
/* The owner asked for the player beside the heading. The player is better full
   width, so what moves up beside the h2 is the section's own one-line
   description — the row carries two objects instead of 500px of empty paper. */
.paper-page .r9-music .chapter-heading > div {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px);
  column-gap: 48px; align-items: end;
}
.paper-page .r9-music .chapter-heading .eyebrow { grid-column: 1 / -1 }
.paper-page .r9-music .chapter-heading h2 { max-width: 12em }
.paper-page .r9-music .section-lead { max-width: 40em; padding-bottom: 5px }
@media (max-width: 900px) {
  .paper-page .r9-music .chapter-heading > div { grid-template-columns: minmax(0, 1fr); column-gap: 0; row-gap: 12px }
  .paper-page .r9-music .chapter-heading h2 { max-width: none }
  .paper-page .r9-music .section-lead { padding-bottom: 0 }
}
.paper-page .r9-music .song-player.r9-player,
.paper-page .r9-music .r9-status { grid-column: auto; max-width: none; width: 100% }
/* The card had a 27px margin around a photograph. A band has none: the picture
   runs to the rounded edge and the section is that much shorter for it. */
.paper-page .r9-music .song-player.r9-player { padding: 0; border-radius: 20px; box-shadow: 0 18px 44px #16303e24 }

/* The stage is a band now, not a portrait crop, so the person arrives in two
   layers: their own frame blurred back into a field, and the picture itself
   fading in from the right — recessed, but still recognisably somebody. The
   lyric is the only thing in focus. */
.paper-page .r9-music .r9-stage {
  min-height: clamp(176px, 16vw, 206px); height: auto;
  padding: clamp(20px, 2.4vw, 34px); align-items: flex-end;
}
.paper-page .r9-music .r9-photo {
  object-position: 50% 24%; filter: brightness(.4) saturate(.8) blur(9px); transform: scale(1.12);
}
.paper-page .r9-music .r9-face {
  position: absolute; inset: 0 0 0 auto; width: min(46%, 520px); height: 100%;
  object-fit: cover; object-position: 50% 22%; opacity: .6;
  -webkit-mask-image: linear-gradient(90deg, #0000, #000 40%);
  mask-image: linear-gradient(90deg, #0000, #000 40%);
}
/* Two scrims, one job: the words sit on the darkest part of the field, and the
   bottom edge stays dark enough that the transport below it looks like the same
   object rather than a bar stuck onto a photograph. */
.paper-page .r9-music .r9-tint {
  position: absolute; inset: 0;
  background:
    linear-gradient(100deg, #0b1524f5 0%, #0b1524d1 44%, #0b152480 100%),
    linear-gradient(180deg, #0b152400 38%, #0b1524 100%);
}
/* …and the transport starts on the value the tint ends on, so the band and the
   controls are one object rather than a bar stuck under a photograph.

   `position` is the other half of that seam, and the reason it was brown: the
   blurred field is `transform: scale(1.12)`, so it overhangs the stage by 12px,
   and a STATIC transport paints its background under every positioned layer in
   the card. The photograph was leaking over the top of the controls. */
.paper-page .r9-music .r9-main { position: relative; background: var(--r9-field-deep) }
.paper-page .r9-music .r9-stage-text { max-width: min(790px, 74%) }
.paper-page .r9-music .r9-meta { margin-bottom: 12px }

.paper-page .r9-music .r9-current {
  font-size: clamp(23px, 2.7vw, 38px); min-height: 1.14em; line-height: 1.14; margin: 0;
}
/* Spotify's one useful idea: the word being sung is the brightest thing on the
   screen, and the rest of the line is still legible behind it. The timings are
   the provider's own, carried through the manifest. */
.paper-page .r9-music .r9-word {
  opacity: .52; color: var(--r9-ink);
  transition: opacity 240ms cubic-bezier(.32,.72,0,1), color 240ms cubic-bezier(.32,.72,0,1);
}
/* Nothing is lit before the first press, so there is nothing for a dim word to
   contrast with: a visitor who never plays the song should still be able to
   read the line somebody wrote. The sung/unsung delta during playback is the
   one that matters, and it stays 1 against .52. */
.paper-page .r9-music .r9-player:not(.is-playing) .r9-word { opacity: .78 }
.paper-page .r9-music .r9-player .r9-word.is-sung { opacity: 1 }
.paper-page .r9-music .r9-player .r9-word.is-now { opacity: 1; color: var(--r9-accent) }
.paper-page .r9-music .r9-upcoming { font-size: 14px; margin-top: 11px; min-height: 1.45em }

.paper-page .r9-music .r9-main { padding: 11px 18px 13px }
.paper-page .r9-music .r9-transport { gap: 12px }
.paper-page .r9-music .r9-mute {
  display: grid; place-items: center; width: 44px; min-width: 44px; height: 44px; padding: 0;
  border: 1px solid #ffffff1f; border-radius: 40px; background: #ffffff0f; color: var(--r9-ink);
}
.paper-page .r9-music .r9-mute:hover { background: #ffffff1f }
.paper-page .r9-music .r9-mute svg { width: 18px; height: 18px }
.paper-page .r9-music .r9-mute .r9-muted-icon { display: none }
.paper-page .r9-music .r9-mute[aria-pressed="true"] .r9-sound-icon { display: none }
.paper-page .r9-music .r9-mute[aria-pressed="true"] .r9-muted-icon { display: block }
.paper-page .r9-music .r9-mute[aria-pressed="true"] { color: var(--r9-dim) }

/* The 48-bar waveform was the tallest thing in a section asked to be shorter,
   and it measured nothing — it was fixed CSS. One line, one fill, same clock. */
.paper-page .r9-music .r9-track { height: 34px }
.paper-page .r9-music .r9-rail {
  position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%);
  height: 4px; border-radius: 4px; background: #ffffff24; overflow: hidden;
}
.paper-page .r9-music .r9-fill {
  display: block; height: 100%; border-radius: 4px; background: var(--r9-accent);
  width: var(--r9-progress, 0%);
}
.paper-page .r9-music .r9-seek { height: 34px }
.paper-page .r9-music .r9-track:focus-within .r9-rail { outline: 3px solid var(--r9-accent); outline-offset: 6px }

@media (max-width: 900px) {
  .paper-page .r9-music .r9-stage-text { max-width: 78% }
  .paper-page .r9-music .r9-face { width: min(46%, 300px) }
}
@media (max-width: 600px) {
  .paper-page .r9-music .r9-stage { min-height: 212px; padding: 16px }
  /* A 390px band cannot hold a picture and a sentence side by side, so the
     portrait stops being half a picture and becomes the whole field, low
     enough that the words never cross a chin. */
  .paper-page .r9-music .r9-stage-text { max-width: 100% }
  .paper-page .r9-music .r9-face {
    width: 100%; opacity: .26;
    -webkit-mask-image: linear-gradient(90deg, #0000, #000 30%);
    mask-image: linear-gradient(90deg, #0000, #000 30%);
  }
  .paper-page .r9-music .r9-current { font-size: 21px }
  .paper-page .r9-music .r9-upcoming { font-size: 12px; margin-top: 8px }
  .paper-page .r9-music .r9-main { padding: 10px 12px 12px }
  .paper-page .r9-music .r9-transport { gap: 9px; flex-wrap: wrap }
  .paper-page .r9-music .r9-track { order: 3; flex: 1 0 100%; height: 26px; margin-top: 0 }
  .paper-page .r9-music .r9-seek { height: 26px }
  .paper-page .r9-music .r9-clock { margin-left: auto }
}
@media (prefers-reduced-motion: reduce) {
  .paper-page .r9-music .r9-word { transition: none }
}

/* Smallest supported phone: keep the menu inside the viewport. */
@media (max-width: 359px) {
  .paper-page .integration-header .brand img { width: 100px }
}
.paper-page .integration-header .brand { display: inline-flex; align-items: center; min-height: 44px }
