@font-face{font-family:"DM Serif Display";src:url("/assets/fontes/DM-Serif-Display-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DM Serif Display";src:url("/assets/fontes/DM-Serif-Display-Italic.ttf") format("truetype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Red Hat Display";src:url("/assets/fontes/red-hat-display-400-latin.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Red Hat Display";src:url("/assets/fontes/red-hat-display-600-latin.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Courier Prime";src:url("/assets/fontes/Courier-Prime-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
:root{--ink:#2f2e2e;--red:#bb4a38;--yellow:#f1bc17;--cream:#faf5ee;--night:#110d0a;--paper:#f1e9dc;--muted:#a8987f;--line:#e4dcd0;--serif:"DM Serif Display",serif;--sans:"Red Hat Display",sans-serif;--mono:"Courier Prime",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--night);color:var(--paper);font:18px/1.65 var(--sans);overflow-x:clip}button,select,a{-webkit-tap-highlight-color:transparent}button,select{font:inherit;color:inherit}button,a{touch-action:manipulation}button{border:0;cursor:pointer;background:none;padding:0}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;flex:none}h1,h2,h3{font:400 clamp(3rem,5.9vw,6.6rem)/1.04 var(--serif);letter-spacing:-.01em;margin:0}h2 em{color:var(--red)}em{font-weight:400}p{margin:0 0 1.2em}button:focus-visible,a:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--yellow);outline-offset:6px}.section-light :focus-visible{outline-color:var(--red)}.eyebrow{font:400 .875rem/1.5 var(--mono);letter-spacing:.14em;text-transform:uppercase}.section-light{background:var(--cream);color:var(--ink)}.section-light .eyebrow{color:var(--red)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--cream);color:var(--ink);padding:15px 20px}.skip-link:focus{top:10px}.site-header{position:absolute;top:0;left:0;right:0;z-index:30;height:104px;padding:20px 5.5vw;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--paper);border-bottom:1px solid #f1e9dc24}.brand{display:block;flex:none;width:88px}.brand img{width:88px;height:auto}.site-header nav{display:flex;gap:36px;margin-left:auto;margin-right:30px;font-size:.875rem}.site-header nav a{position:relative;padding:12px 0;opacity:.8;transition:opacity .25s}.site-header nav a:hover{opacity:1}.site-header nav a::after{content:"";position:absolute;bottom:6px;left:0;width:0;height:1px;background:var(--red);transition:width .25s}.site-header nav a:hover::after{width:100%}.language-wrap{display:flex;align-items:center;gap:8px;padding:0 10px 0 15px;border:1px solid #faf5ee52;border-radius:24px;min-height:44px}.language-wrap svg{width:17px;height:17px}.language-wrap select{font:14px var(--mono);border:0;background:transparent;padding:11px 5px;cursor:pointer;color:var(--paper)}select option{color:var(--ink);background:var(--cream)}
.hero{min-height:880px;height:110svh;max-height:1400px;position:relative;isolation:isolate;overflow:hidden;background:var(--night)}.hero-photo{position:absolute;right:0;top:0;width:58%;height:100%;overflow:hidden;z-index:-3}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%;will-change:transform}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#110d0a 0%,#110d0af5 24%,#110d0a7a 51%,#110d0a00 75%),linear-gradient(0deg,#110d0afa 0%,#110d0a00 33%,#110d0a36 100%)}.hero-copy{padding:clamp(190px,22svh,280px) 0 140px 7vw;width:74%}.hero-kicker{font-size:12px;letter-spacing:.19em;color:#cfc3b0;margin-bottom:42px}.hero h1{font-size:clamp(5rem,8.2vw,10rem);line-height:1.01}.hero h1 em{color:var(--red)}.hero-sub{margin-top:34px;font-size:clamp(18px,1.5vw,24px);color:#cfc3b0;line-height:1.5}.hero-bottom{position:absolute;bottom:52px;left:7vw;right:5.5vw;display:flex;align-items:center;justify-content:space-between;gap:30px}.scroll-invitation{display:flex;align-items:center;gap:18px;font-size:14px}.down-circle,.round-button{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border:1px solid #f1e9dc55;border-radius:50%;flex:none;transition:background .25s,color .25s,transform .25s}.scroll-invitation:hover .down-circle{background:var(--paper);color:var(--night);transform:translateY(4px)}.hero-caption{font:12px/1.6 var(--mono);text-align:right;letter-spacing:.025em;max-width:220px}.hero-number{font:160px/.8 var(--serif);position:absolute;bottom:122px;right:5.5vw;opacity:.2;pointer-events:none}
.origin{padding:86px 7vw 80px;position:relative}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:32px;border-bottom:1px solid var(--line)}.section-heading p{margin:0}.small-index{font:12px var(--mono);color:#7a7268}.origin-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:9vw;align-items:center;margin-top:100px;margin-bottom:100px}.family-composition{position:relative;min-height:600px;padding-right:70px;padding-bottom:90px}.photo-frame{background:var(--paper);padding:12px 12px 0;box-shadow:0 14px 34px #2f2e2e21;text-align:left;transition:transform .45s}.photo-frame img{width:100%;height:auto}.family-main{width:89%;transform:rotate(-4deg)}.family-main:hover{transform:rotate(-1deg) translateY(-6px)}.family-small{position:absolute;right:-8px;bottom:20px;width:51%;transform:rotate(6deg)}.family-small:hover{transform:rotate(2deg) translateY(-6px)}.photo-note{display:block;color:#2f2e2e;font:12px/1.4 var(--mono);padding:18px 4px 22px;letter-spacing:.015em}.origin-copy h2{margin-bottom:34px}.origin-copy>p{max-width:430px;color:#625c55;line-height:1.65}.origin-copy blockquote{margin:35px 0 0;border-top:1px solid var(--line);padding-top:26px}.origin-copy blockquote p{font:italic 23px/1.4 var(--serif);color:var(--ink);max-width:370px;margin-bottom:16px}.origin-copy cite{font:12px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:#7a7268}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:14px;border-bottom:1px solid currentColor;padding:8px 0;text-align:left}.text-link svg{width:19px;height:19px}.origin-next{display:flex;width:max-content;margin:auto}
.trace-section{height:345svh;position:relative}.trace-pin{position:sticky;top:0;height:100svh;min-height:720px;display:grid;grid-template-columns:40% 60%;align-items:center;padding:65px 4vw 135px 7vw;overflow:hidden;background:var(--night);isolation:isolate}.trace-copy{padding-right:28px;position:relative;z-index:2}.trace-copy>.eyebrow{color:var(--muted);max-width:330px}.trace-stage-number{display:block;font:32px var(--serif);color:var(--red);margin:28px 0 20px}.trace-copy h2{font-size:clamp(42px,4.6vw,78px);min-height:2.15em;margin-bottom:24px}.trace-copy h2 em{color:var(--paper)}.trace-copy>p:not(.eyebrow){color:#cfc3b0;max-width:360px;min-height:5em;font-size:17px;line-height:1.65}.trace-count{display:flex;align-items:baseline;gap:12px;font:13px var(--mono);color:var(--muted);margin-top:35px}.trace-count>span:first-child{font:36px var(--serif);font-variant-numeric:tabular-nums;color:var(--paper)}.trace-visual{position:relative;width:100%;height:100%;max-height:780px;min-height:0}.trace-visual canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .35s}.trace-ready canvas{opacity:1}.trace-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.trace-ready .trace-fallback{visibility:hidden}.trace-navigation{position:absolute;left:7vw;right:7vw;bottom:36px;display:grid;grid-template-columns:40% 60%;align-items:end;gap:0}.trace-hint{font:12px/1.6 var(--mono);color:var(--muted);max-width:250px;margin:0 0 10px}.trace-tabs{display:flex;justify-content:space-between;gap:8px}.trace-tabs button{display:flex;gap:8px;align-items:center;min-height:44px;padding:8px;font-size:14px;color:var(--muted);transition:color .2s}.trace-tabs button>span:first-child{font:12px var(--mono);opacity:.7}.trace-tabs button[aria-pressed=true]{color:var(--paper)}.trace-progress{height:2px;grid-column:2;margin-top:12px;background:#f1e9dc24}.trace-progress span{display:block;width:100%;height:100%;background:var(--red);transform:scaleX(0);transform-origin:left}
.mark-section{padding:110px 7vw 120px}.mark-top{max-width:1000px;margin:auto;text-align:center}.mark-top>.eyebrow{margin-bottom:32px}.mark-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:8vw;margin-top:90px;align-items:center}.sketch-photo{margin:0;transform:rotate(-2deg)}.sketch-photo img{width:100%;height:auto}.sketch-photo figcaption{font:12px/1.5 var(--mono);color:#7a7268;margin-top:20px}.mark-explanation{padding:10px 0}.large-wordmark{width:240px;height:auto;margin-bottom:42px}.mark-lead{font:32px/1.15 var(--serif);margin-bottom:25px}.mark-explanation>p:last-of-type{max-width:395px;color:#625c55}.brand-palette{display:flex;gap:9px;margin-top:35px}.brand-palette i{height:5px;display:block;width:90px;background:var(--red)}.brand-palette i:nth-child(2){width:21px;background:var(--yellow)}.brand-palette i:nth-child(3){width:11px;background:var(--ink)}
.memories-section{background:var(--paper);color:var(--ink);padding:100px 0 85px;overflow:hidden}.memories-heading{margin:0 7vw;display:grid;grid-template-columns:1.4fr 1fr;gap:10vw;align-items:end}.memories-heading .eyebrow{color:var(--red);margin-bottom:28px}.memories-heading>p{color:#625c55;max-width:360px;margin:0 0 6px}.memory-rail{margin-top:30px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x proximity;cursor:grab;touch-action:pan-x pan-y;overscroll-behavior-x:contain}.memory-rail::-webkit-scrollbar{display:none}.memory-rail.dragging{cursor:grabbing;scroll-snap-type:none}.memory-track{display:flex;align-items:center;gap:34px;padding:65px 7vw 70px;min-width:max-content;min-height:640px}.memory-photo{position:relative;flex:none;width:260px;background:var(--cream);padding:11px 11px 0;box-shadow:0 12px 22px #2f2e2e19;scroll-snap-align:center;transform:rotate(-4deg);transition:transform .35s;user-select:none}.memory-photo img{width:100%;height:345px;object-fit:cover;pointer-events:none}.memory-photo.wide{width:348px;transform:rotate(3deg) translateY(35px)}.memory-photo.wide img{height:258px;object-fit:cover}.memory-photo.square{width:310px;transform:rotate(2deg) translateY(-25px)}.memory-photo.square img{height:278px}.memory-photo:nth-child(3n){transform:rotate(-2deg) translateY(-15px)}.memory-photo:nth-child(4n){transform:rotate(5deg) translateY(20px)}.memory-photo:hover{transform:rotate(0) translateY(-8px)}.memory-photo .photo-note{padding:22px 4px 24px;text-align:left}.photo-open{position:absolute;right:22px;bottom:12px;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;font:24px var(--sans);background:var(--cream);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s}.memory-photo:hover .photo-open,.memory-photo:focus-visible .photo-open{opacity:1}.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:0 7vw;padding-bottom:40px;border-bottom:1px solid #2f2e2e25;color:#625c55;font-size:14px}.gallery-controls{display:flex;gap:10px}.gallery-controls button{border-color:#2f2e2e44}.gallery-controls button:hover{background:var(--ink);color:var(--cream)}.gallery-controls button:disabled{opacity:.25;cursor:default}.memory-bridge{text-align:center;font:400 clamp(28px,3.8vw,56px)/1.2 var(--serif);margin:70px 6vw 0}.memory-bridge em{color:var(--red)}
.name-section{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:100px 7vw 160px;isolation:isolate;overflow:hidden}.amalia-photo{position:relative;align-self:start;overflow:hidden}.amalia-photo>img{width:100%;height:720px;object-fit:cover;object-position:50% 38%;opacity:.84}.amalia-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,var(--night),transparent 36%)}.amalia-label{position:absolute;left:5px;bottom:32px;font:12px var(--mono);letter-spacing:.05em;z-index:2;color:var(--muted)}.name-copy{padding-top:70px;position:relative;z-index:2}.name-copy .eyebrow{color:var(--muted);margin-bottom:30px}.name-copy h2{font-size:clamp(48px,5vw,84px)}.name-copy h2 em{color:var(--paper)}.name-response{font:italic 36px/1.2 var(--serif);color:var(--red);margin-top:22px}.name-copy>p:not(.eyebrow):not(.name-response){color:#cfc3b0;max-width:420px;font-size:17px}.portugal-photo{margin:35px 0 0;display:flex;align-items:center;gap:22px;max-width:460px}.portugal-photo button{width:155px;flex:none;transform:rotate(-4deg);border:7px solid var(--paper);box-shadow:0 10px 25px #0004}.portugal-photo img{width:100%;height:auto}.portugal-photo figcaption{font:12px/1.6 var(--mono);color:var(--muted);max-width:165px}.saudade-word{font:400 clamp(120px,21vw,350px)/.95 var(--serif);letter-spacing:-.01em;color:#f1e9dc0b;position:absolute;bottom:-35px;left:12vw;z-index:-1;pointer-events:none}
.game-section{padding:110px 7vw;display:grid;grid-template-columns:1fr 1.15fr;gap:7vw;align-items:center}.game-copy h2{margin:25px 0 30px}.game-copy>p:not(.eyebrow){max-width:400px;color:#625c55}.game-copy .game-gentle{font:italic 21px/1.5 var(--serif);color:var(--red)!important;margin-top:15px}.game-stats{display:flex;gap:40px;margin:32px 0 15px}.game-stats>span{display:flex;align-items:baseline;gap:8px;font:12px var(--mono);color:#7a7268}.game-stats b{font:32px var(--serif);color:var(--ink)}.game-copy .text-link{color:var(--ink)}.game-live{font:italic 21px/1.4 var(--serif);color:var(--red)!important;margin:25px 0 0;min-height:2.8em}.game-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.memory-tile{position:relative;aspect-ratio:141/145;min-width:0;perspective:650px;border-radius:3px}.tile-turn{position:absolute;inset:0 0 13px;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.8,.2,1)}.tile-front,.tile-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}.tile-front img{width:100%;height:100%;object-fit:contain}.tile-front .tile-number{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:16px var(--mono);color:var(--paper);padding-top:5px}.tile-back{transform:rotateY(180deg);clip-path:polygon(36.302% 3.788%,3.688% 58.119%,59.219% 96.154%,81.051% 74.910%,96.262% 23.903%);background:var(--paper)}.tile-back img{width:100%;height:100%;object-fit:cover}.memory-tile.flipped .tile-turn,.memory-tile.matched .tile-turn{transform:rotateY(180deg)}.memory-tile:not(.flipped):not(.matched):hover .tile-turn{transform:translateY(-5px)}.tile-match{position:absolute;bottom:-5px;left:0;right:0;color:var(--red);font:12px var(--mono);opacity:0;transition:opacity .3s}.matched .tile-match{opacity:1}.game-board.completed .tile-turn{transition:transform .6s}.game-board.completed .memory-tile:nth-child(even){animation:recognize .6s ease both}.game-board.completed .memory-tile:nth-child(odd){animation:recognize .6s .12s ease both}@keyframes recognize{50%{transform:translateY(-7px)}}
.closing{position:relative;padding:110px 7vw 35px;overflow:hidden;isolation:isolate;min-height:820px}.closing-mosaic{position:absolute;right:-7%;bottom:120px;width:76%;height:auto;opacity:.28;z-index:-2;pointer-events:none}.closing::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--night) 5%,#110d0aeb 28%,#110d0a66 78%,transparent)}.closing-copy{max-width:740px}.closing .eyebrow{color:var(--muted);margin-bottom:30px}.closing h2{font-size:clamp(56px,7vw,112px)}.closing h2 em{color:var(--paper)}.closing-copy>p:not(.eyebrow){max-width:490px;color:#cfc3b0;margin-top:32px}.store-link{display:inline-flex;align-items:center;gap:25px;min-height:54px;background:var(--paper);color:var(--night);border-radius:28px;font-size:16px;padding:13px 24px;margin-top:12px;transition:background .25s,transform .25s}.store-link:hover{background:var(--cream);transform:translateY(-3px)}footer{border-top:1px solid #f1e9dc26;padding:36px 0 0;display:flex;align-items:center;gap:35px;margin-top:120px}.footer-brand{width:100px;flex:none}footer>p{font:italic 20px var(--serif);margin:0;color:#cfc3b0}.footer-links{margin-left:auto;display:flex;gap:25px;align-items:center;font:12px var(--mono)}.footer-links a,.footer-links button{min-height:44px;display:flex;align-items:center}.footer-links a:hover,.footer-links button:hover{color:var(--muted)}
dialog{color:var(--paper);background:var(--night);border:1px solid #f1e9dc2b;max-height:90svh;padding:0}dialog::backdrop{background:#110d0aeb;backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:15px;top:15px;z-index:5;background:var(--night)}.round-button:hover{background:var(--paper);color:var(--night)}.lightbox{max-width:1200px;width:calc(100vw - 60px);overflow:hidden}.lightbox-content{padding:25px 70px 20px}.lightbox-content>img{max-height:70svh;width:auto;max-width:100%;margin:auto;object-fit:contain}.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.lightbox-bottom p{font:14px/1.5 var(--mono);margin:0;text-align:center;color:#cfc3b0}.credits-dialog{width:min(650px,calc(100vw - 32px));padding:65px 40px 40px}.credits-dialog h2{font-size:40px;margin:22px 0 30px}.credits-dialog>p:not(.eyebrow){font-size:16px;color:#cfc3b0}.credits-dialog .eyebrow{color:var(--red)}.credit-links{display:flex;flex-wrap:wrap;gap:24px;font-size:14px;text-decoration:underline;text-underline-offset:5px}
[data-motion=on] .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.6,.2,1)}[data-motion=on] .reveal.visible{opacity:1;transform:translateY(0)}[data-motion=on] .sketch-photo.visible{transform:rotate(-2deg)}body.dialog-open{overflow:hidden}
@media(min-width:1800px){.origin,.mark-section,.memories-heading,.name-section,.game-section,.closing{padding-left:max(7vw,calc((100vw - 1600px)/2));padding-right:max(7vw,calc((100vw - 1600px)/2))}.origin-grid{gap:140px}.family-composition{max-width:700px}.trace-copy{max-width:600px}}
@media(max-width:1100px){.hero h1{font-size:8.8vw}.hero{min-height:800px}.hero-copy{padding-top:220px}.origin-grid{gap:6vw;margin:80px 0}.family-composition{min-height:510px;padding-right:25px}.family-main{width:92%}.family-small{right:-12px;bottom:45px}.origin-copy h2{font-size:6.5vw}.trace-pin{padding-left:5vw;padding-right:3vw;grid-template-columns:40% 60%}.trace-copy h2{font-size:5.2vw}.trace-copy>p:not(.eyebrow){font-size:16px}.trace-tabs button{font-size:12px;gap:4px;padding:6px}.trace-tabs button>span:first-child{display:none}.mark-grid{gap:6vw}.name-section{gap:6vw}.name-copy{padding-top:25px}.amalia-photo>img{height:650px}.name-copy h2{font-size:5.7vw}.name-response{font-size:30px}.game-section{gap:4vw}.game-board{gap:8px}footer{gap:25px}.footer-links{gap:16px}}
@media(max-width:760px){body{font-size:16px;line-height:1.65}html{scroll-padding-top:24px}.site-header{height:88px;padding:17px 6vw;gap:12px}.brand,.brand img{width:75px}.site-header nav{display:none}.language-wrap{margin-left:auto}.hero{height:100svh;min-height:780px;max-height:1100px}.hero-photo{width:100%;height:100%;right:0;opacity:.85}.hero-photo img{object-position:65% 12%}.hero-shade{background:linear-gradient(90deg,#110d0af5 0%,#110d0a9e 45%,#110d0a29 100%),linear-gradient(0deg,#110d0a 0%,#110d0a00 48%,#110d0a1a 90%)}.hero-copy{padding:180px 6vw 120px;width:100%}.hero-kicker{font-size:12px;letter-spacing:.1em;max-width:250px;line-height:1.8;margin-bottom:35px}.hero h1{font-size:clamp(56px,13vw,90px);line-height:1.05}.hero-sub{font-size:18px;margin-top:27px}.hero-bottom{bottom:34px;left:6vw;right:6vw;gap:15px}.scroll-invitation{gap:12px;font-size:12px;max-width:210px}.down-circle{width:42px;height:42px}.hero-caption{font-size:12px;max-width:125px;line-height:1.5}.hero-number{display:none}.origin{padding:50px 6vw 65px}.section-heading{padding-bottom:20px}.section-heading .eyebrow{font-size:12px;max-width:200px;margin:0}.small-index{display:none}.origin-grid{grid-template-columns:1fr;gap:35px;margin:65px 0 35px}.family-composition{padding-right:40px;min-height:0;padding-bottom:90px;max-width:520px;margin:auto;width:100%}.family-main{width:80%}.family-small{right:0;bottom:20px;width:46%}.photo-frame{padding:8px 8px 0}.photo-note{font-size:12px;padding:13px 0 16px}.origin-copy h2{font-size:clamp(44px,10.5vw,70px);margin-bottom:27px}.origin-copy>p{max-width:100%}.origin-copy blockquote{margin-top:26px;padding-top:24px}.origin-copy blockquote p{font-size:22px}.origin-next{margin-top:32px}.trace-section{height:335svh}.trace-pin{display:flex;flex-direction:column;align-items:stretch;padding:35px 6vw 125px;height:100svh;min-height:640px}.trace-copy{padding-right:0;flex:none}.trace-copy>.eyebrow{font-size:12px;max-width:100%;margin-bottom:20px}.trace-stage-number{float:right;font-size:28px;margin:0 0 0 12px}.trace-copy h2{font-size:clamp(30px,8.3vw,44px);min-height:2.2em;margin-bottom:15px;max-width:90%}.trace-copy>p:not(.eyebrow){max-width:100%;font-size:14px;min-height:3.3em;margin-bottom:12px;line-height:1.55}.trace-count{position:absolute;right:0;bottom:-28px;margin:0;gap:6px;font-size:12px;z-index:3}.trace-count>span:first-child{font-size:20px}.trace-visual{flex:1;min-height:220px;height:auto;margin-top:30px}.trace-navigation{display:flex;flex-direction:column;left:6vw;right:6vw;bottom:26px;align-items:stretch}.trace-hint{font-size:12px;max-width:none;text-align:center;margin-bottom:9px}.trace-tabs{gap:4px}.trace-tabs button{font-size:12px;flex:1;justify-content:center;padding:8px 2px}.trace-progress{margin-top:3px}.mark-section{padding:65px 6vw 75px}.mark-top{text-align:left}.mark-top>.eyebrow{font-size:12px;max-width:290px;margin-bottom:25px}.mark-top h2{font-size:clamp(40px,9.2vw,66px)}.mark-grid{grid-template-columns:1fr;gap:35px;margin-top:45px}.sketch-photo{margin:0 3px}.mark-explanation{padding-top:20px}.large-wordmark{width:195px;margin-bottom:28px}.mark-lead{font-size:28px}.mark-explanation>p:last-of-type{max-width:100%}.brand-palette{margin-top:28px}.memories-section{padding:65px 0 55px}.memories-heading{margin:0 6vw;grid-template-columns:1fr;gap:25px}.memories-heading h2{font-size:clamp(44px,10.2vw,70px)}.memories-heading .eyebrow{font-size:12px;margin-bottom:24px}.memories-heading>p{max-width:100%}.memory-rail{margin-top:0}.memory-track{gap:20px;padding:45px 8vw 45px;min-height:460px}.memory-photo{width:200px;padding:8px 8px 0}.memory-photo img{height:275px}.memory-photo.wide{width:265px}.memory-photo.wide img{height:210px}.memory-photo.square{width:245px}.memory-photo.square img{height:230px}.memory-photo .photo-note{font-size:12px;padding:16px 2px 20px;min-height:54px}.photo-open{opacity:1;right:12px;bottom:12px;width:27px;height:27px;font-size:20px}.memory-photo .photo-note{padding-right:30px}.gallery-footer{margin:0 6vw;align-items:center;font-size:12px;gap:15px;padding-bottom:28px}.gallery-footer>span{max-width:200px}.gallery-controls{gap:8px}.gallery-controls button{width:42px;height:42px}.memory-bridge{font-size:28px;margin-top:45px}.name-section{grid-template-columns:1fr;padding:65px 6vw 90px;gap:15px}.amalia-photo{max-width:420px;width:100%;margin:auto}.amalia-photo>img{height:470px;object-position:center 34%}.amalia-label{bottom:20px}.name-copy{padding-top:5px}.name-copy .eyebrow{font-size:12px;margin-bottom:24px}.name-copy h2{font-size:clamp(44px,10.5vw,70px)}.name-response{font-size:28px;margin-top:20px}.name-copy>p:not(.eyebrow):not(.name-response){font-size:16px}.portugal-photo{margin-top:30px}.portugal-photo button{width:145px}.saudade-word{font-size:26vw;bottom:-10px;left:6vw;opacity:.8}.game-section{padding:65px 6vw;grid-template-columns:1fr;gap:25px}.game-copy h2{font-size:clamp(44px,11vw,70px);margin-top:25px}.game-stats{margin-top:24px;margin-bottom:12px}.game-copy .game-live{margin-top:20px;min-height:1.5em}.game-board-wrap{max-width:520px;width:100%;margin:auto}.game-board{gap:12px 6px}.tile-front .tile-number{font-size:14px}.tile-match{font-size:12px;bottom:-6px}.closing{padding:65px 6vw 25px;min-height:auto}.closing h2{font-size:clamp(48px,12vw,78px)}.closing .eyebrow{font-size:12px;max-width:250px}.closing-copy>p:not(.eyebrow){font-size:16px;max-width:100%;margin-top:28px}.closing-mosaic{width:140%;max-width:none;right:-43%;bottom:90px;opacity:.3}.closing::after{background:linear-gradient(90deg,#110d0af5 0%,#110d0ae0 30%,#110d0a36)}footer{flex-wrap:wrap;gap:18px;margin-top:90px;padding-top:28px}.footer-brand{width:84px}footer>p{font-size:18px;max-width:190px}.footer-links{width:100%;margin-left:0;gap:20px;flex-wrap:wrap}.lightbox{width:calc(100vw - 20px)}.lightbox-content{padding:70px 14px 15px}.lightbox-content>img{max-height:64svh}.lightbox-bottom{gap:12px}.lightbox-bottom p{font-size:12px}.lightbox-bottom button{width:40px;height:40px}.credits-dialog{padding:65px 25px 30px}.credits-dialog h2{font-size:34px}}
@media(max-width:370px){.hero-copy{padding-top:170px}.hero h1{font-size:54px}.hero{min-height:750px}.hero-caption{display:none}.trace-tabs button{font-size:12px}.game-board{gap:12px 3px}.memory-tile{aspect-ratio:141/153}.footer-links{gap:14px}}

.game-reward{margin:22px 0 0;padding:25px 0 0;border-top:1px solid var(--red);max-width:440px}.game-reward[hidden]{display:none}.game-reward .eyebrow{font-size:12px;margin-bottom:18px}.game-reward h3{font-size:32px;line-height:1.15;margin-bottom:18px;color:var(--red)}.game-reward>p:not(.eyebrow){font-size:16px;color:#625c55}.coupon-row{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px dashed #bb4a3880;background:#f1e9dc77;padding:14px 18px;margin:20px 0 16px}.coupon-row code{font:24px var(--mono);letter-spacing:.12em;user-select:all;color:var(--ink)}.coupon-row button{min-height:44px;padding:8px 12px;background:var(--ink);border-radius:3px;color:var(--cream);font-size:14px}.game-reward .text-link{font-size:14px;max-width:100%;gap:12px}.reward-enter{animation:reward-in .65s ease both}@keyframes reward-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.game-reward h3{font-size:28px}.coupon-row{padding:10px 12px;gap:10px}.coupon-row code{font-size:22px}.coupon-row button{font-size:12px}}

body[data-trace-mode="manual"] .trace-section{height:auto}body[data-trace-mode="manual"] .trace-pin{position:relative;height:auto;min-height:720px}body[data-trace-mode="manual"] .trace-visual{height:500px}@media(max-width:760px){body[data-trace-mode="manual"] .trace-pin{min-height:640px}body[data-trace-mode="manual"] .trace-visual{height:300px;flex:none}}

/* Story revision: large photographic fragments and the original moving patterns. */
:root{--amber:#c8933f;--shard:polygon(36.302% 3.788%,3.688% 58.119%,59.219% 96.154%,81.051% 74.910%,96.262% 23.903%)}
.hero h1 em,.name-copy h2 em,.closing h2 em{color:var(--paper)}.hero-number,.trace-stage-number{color:var(--amber)}
.origin{isolation:isolate;overflow:hidden}.origin .section-heading,.origin-grid,.origin-next{position:relative;z-index:1}.origin-grid{grid-template-columns:1.25fr 1fr;gap:6vw;margin:80px 0}.origin-copy{padding:25px 0;background:transparent}.family-portrait{width:100%;margin:0;max-width:740px;align-self:center}.family-shard{display:block;width:100%;aspect-ratio:141/132;clip-path:var(--shard);background:var(--paper);transition:transform .65s cubic-bezier(.2,.7,.2,1)}.family-shard img{width:100%;height:100%;object-fit:cover;object-position:10% 50%;transition:transform .9s ease}.family-shard:hover img{transform:scale(1.025)}.family-portrait figcaption{font:14px/1.5 var(--mono);color:#7a7268;text-align:center;margin-top:12px}.family-shard:focus-visible{outline:0;filter:brightness(.85)}
.caquinho-rain{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;--wind:0px;transform:translateX(var(--wind));transition:transform 1.4s ease}.rain-particle{position:absolute;top:-90px;left:var(--x);width:var(--size);aspect-ratio:1;opacity:.52;animation:shard-rain var(--duration) linear var(--delay) infinite;animation-play-state:paused;will-change:transform}.rain-particle svg{width:100%;height:100%;stroke:none}.caquinho-rain.is-active .rain-particle{animation-play-state:running}@keyframes shard-rain{from{transform:translate3d(0,0,0) rotate(var(--turn))}to{transform:translate3d(var(--drift),var(--fall-distance,1200px),0) rotate(calc(var(--turn) + 120deg))}}
.mark-section{position:relative;isolation:isolate;overflow:hidden}.mark-top,.mark-grid{position:relative;z-index:1}.mark-explanation p{position:relative}.mark-explanation>p:last-of-type{font-size:17px;color:#625c55}.mark-roots{margin-top:18px}.mark-grid{margin-top:65px}.floating-art{will-change:transform}
.process-section{position:relative;isolation:isolate;overflow:hidden;padding:90px 7vw 100px;border-top:1px solid var(--line)}.process-heading{max-width:950px;position:relative;z-index:1}.process-heading .eyebrow{margin-bottom:30px}.process-heading>p:last-child{max-width:500px;color:#625c55;margin-top:32px}.process-fragments{position:absolute;right:-10%;top:2%;width:55%;opacity:.28;z-index:-1;pointer-events:none}.process-photos{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:3.5vw;margin-top:65px;align-items:start}.process-photo{margin:0;min-width:0}.process-photo button{display:block;width:100%;overflow:hidden}.process-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.process-photo button:hover img{transform:scale(1.035)}.process-photo figcaption{display:flex;gap:14px;font:14px/1.5 var(--mono);color:#7a7268;padding-top:18px}.process-photo figcaption>span:first-child{color:var(--red);flex:none}.process-rosemary{padding-top:110px}.process-window{padding-top:40px}.process-after{display:grid;grid-template-columns:1fr 1.65fr;gap:8vw;border-top:1px solid var(--line);padding-top:35px;margin-top:85px;align-items:start}.process-after>p{font:400 30px/1.45 var(--serif);letter-spacing:-.005em;max-width:700px;margin:0}.process-after .eyebrow{font-size:14px;max-width:250px}
.name-section{padding-top:130px;padding-bottom:135px}.name-copy{position:relative;z-index:1}.name-copy>p.name-promise{font:italic 30px/1.35 var(--serif);color:var(--paper);border-top:1px solid #f1e9dc33;padding-top:27px;margin-top:30px;max-width:480px}.name-response{display:none}.name-copy h2{margin-bottom:35px}.name-copy>p:not(.eyebrow):not(.name-promise){font-size:18px;line-height:1.7}
.game-section{display:block;position:relative;padding:100px 7vw 95px}.game-copy{max-width:1040px;margin:0 auto 20px;display:grid;grid-template-columns:1.2fr 1fr;column-gap:7vw;align-items:start}.game-copy>.eyebrow{grid-column:1/-1}.game-copy h2{grid-column:1;grid-row:2/5;margin:20px 0 25px;font-size:clamp(50px,6vw,78px)}.game-copy>p:not(.eyebrow){grid-column:2;max-width:450px}.game-copy>p[data-i18n=gameBody]{margin:28px 0 12px}.game-copy .game-gentle{font:16px/1.65 var(--sans);color:#625c55!important;margin:0}.game-stats{grid-column:2;gap:32px;margin:22px 0 4px}.game-copy .text-link{grid-column:2;width:max-content;justify-self:start}.game-copy .game-live{grid-column:1/-1;min-height:1.5em;text-align:center;font-size:20px;margin:25px 0 0}.game-board-wrap{max-width:940px;margin:auto;width:100%}.game-board{grid-template-columns:repeat(6,minmax(0,1fr));gap:22px 18px}.memory-tile{grid-column:span 2;aspect-ratio:141/142;min-width:0;border-radius:0}.tile-turn{inset:0 0 10px}.tile-front .tile-number{font-size:22px}.tile-back{clip-path:var(--shard);background:var(--paper)}.tile-back .game-photo{display:block;position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:none;overflow:hidden}.tile-match{bottom:-4px;font-size:16px}.game-photo-hint{font:14px/1.6 var(--mono);text-align:center;color:#7a7268;margin:35px 0 0}.game-reward{max-width:680px;margin:50px auto 0;text-align:center;padding-top:40px}.game-reward h3{font-size:44px}.game-reward .coupon-row{max-width:370px;margin:25px auto}.game-reward .text-link{margin:auto}.reward-wrap:has([hidden]){display:none}.memory-tile.matched:hover .tile-turn{transform:rotateY(180deg) scale(1.025)}
.motion-control{display:grid;place-items:center;min-width:44px;height:44px;border:1px solid #faf5ee52;border-radius:50%}.motion-control svg{width:17px;height:17px}.motion-control[aria-pressed=true]{background:var(--paper);color:var(--night)}body[data-motion=off] .rain-particle{animation-play-state:paused!important}body[data-motion=off] .floating-art{transform:none!important}body[data-motion=off] *,body[data-motion=off] *::before,body[data-motion=off] *::after{animation:none!important;transition:none!important}body[data-motion=off] .reveal{opacity:1;transform:none}body[data-motion=off] .caquinho-rain{transform:none}
@media(min-width:1800px){.process-section{padding-left:max(7vw,calc((100vw - 1600px)/2));padding-right:max(7vw,calc((100vw - 1600px)/2))}}
@media(max-width:1100px){.origin-grid{gap:4vw}.process-photos{gap:25px}.process-rosemary{padding-top:80px}.process-after>p{font-size:26px}.game-copy{column-gap:5vw}.game-board-wrap{max-width:830px}.game-board{gap:18px 10px}.name-copy>p.name-promise{font-size:27px}.name-copy>p:not(.eyebrow):not(.name-promise){font-size:16px}}
@media(max-width:760px){.site-header{gap:10px}.language-wrap{padding-left:12px}.origin{padding-top:50px}.origin-grid{grid-template-columns:1fr;gap:28px;margin:45px 0 30px}.family-portrait{max-width:520px}.family-portrait figcaption{font-size:12px;margin-top:6px}.origin-copy{padding:0;background:transparent}.rain-particle{opacity:.35;width:calc(var(--size)*.65)}.trace-copy h2{font-size:clamp(29px,7.3vw,42px);max-width:94%;min-height:2.25em;margin-bottom:12px}.trace-copy>.eyebrow{margin-bottom:12px}.trace-copy>p:not(.eyebrow){min-height:4.5em;font-size:14px}.trace-tabs button{font-size:12px;padding:8px 0}.trace-copy{padding-bottom:0}.mark-explanation>p:last-of-type{font-size:16px}.process-section{padding:60px 6vw 65px}.process-heading .eyebrow{font-size:12px;margin-bottom:25px}.process-heading h2{font-size:clamp(39px,9.8vw,65px)}.process-heading>p:last-child{margin-top:26px}.process-fragments{width:100%;right:-40%;top:14%;opacity:.15}.process-photos{grid-template-columns:1fr 1fr;gap:35px 18px;margin-top:35px}.process-garden{grid-column:1/-1;width:90%;max-width:440px}.process-rosemary{padding-top:0}.process-window{padding-top:50px}.process-photo figcaption{font-size:12px;line-height:1.55;gap:8px;padding-top:12px}.process-photo img{aspect-ratio:4/5}.process-after{grid-template-columns:1fr;gap:20px;margin-top:50px;padding-top:26px}.process-after .eyebrow{font-size:12px;max-width:100%}.process-after>p{font-size:24px;line-height:1.5}.name-section{padding:90px 6vw 85px;gap:28px}.name-copy h2{margin-bottom:27px}.name-copy>p.name-promise{font-size:27px}.game-section{padding:65px 5vw}.game-copy{display:block;margin:0 1vw 28px}.game-copy h2{font-size:clamp(44px,11vw,70px);margin:24px 0}.game-copy>p[data-i18n=gameBody]{margin-top:0}.game-copy .game-gentle{font-size:15px}.game-stats{margin:22px 0 12px;gap:32px}.game-copy .game-live{text-align:left;font-size:18px;margin:20px 0 0}.game-board-wrap{max-width:520px}.game-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 8px}.tile-front .tile-number{font-size:18px}.tile-match{font-size:14px;bottom:-4px}.game-photo-hint{font-size:12px;max-width:300px;margin:30px auto 0}.game-reward{margin-top:35px;padding-top:30px}.game-reward h3{font-size:32px}.game-reward .eyebrow{font-size:12px}.game-reward .coupon-row{max-width:320px}.motion-control{min-width:42px;height:42px}}

.trace-section{height:400svh}.trace-count>span:first-child{color:var(--amber)}@media(max-width:760px){.trace-section{height:375svh}}
.production-section{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;padding:95px 9vw 100px;align-items:center;background:var(--night);border-bottom:1px solid #f1e9dc20;overflow:hidden}.production-copy .eyebrow{color:var(--muted);margin-bottom:30px}.production-copy h2{font-size:clamp(48px,6.3vw,86px);margin-bottom:35px}.production-copy h2 em{color:var(--paper)}.production-copy>p:not(.eyebrow){color:#cfc3b0;max-width:420px;font-size:18px;line-height:1.7}.production-beats{display:grid;gap:18px;margin-top:45px}.production-beats>span{display:flex;align-items:baseline;gap:18px;max-width:380px;font:14px/1.5 var(--mono);color:var(--muted);opacity:.5;transition:opacity .45s,color .45s}.production-beats>span.active{opacity:1;color:var(--paper)}.production-beats i{font-style:normal;color:var(--amber)}.production-film{width:100%;max-width:464px;margin:0 auto;position:relative}.production-film video{display:block;width:100%;height:auto;aspect-ratio:464/832;object-fit:contain;background:var(--night)}.production-film figcaption{font:13px/1.5 var(--mono);color:var(--muted);margin-top:18px;text-align:center}.production-progress{height:2px;background:#f1e9dc20;margin-top:12px;overflow:hidden}.production-progress span{height:100%;width:100%;display:block;background:var(--amber);transform-origin:left;transform:scaleX(0);transition:transform .25s linear}body[data-motion=off] .production-beats>span{opacity:1}body[data-motion=off] .production-progress{visibility:hidden}
@media(min-width:1800px){.production-section{padding-left:max(9vw,calc((100vw - 1500px)/2));padding-right:max(9vw,calc((100vw - 1500px)/2))}}
@media(max-width:760px){.production-section{grid-template-columns:1fr;padding:65px 6vw 75px;gap:35px}.production-copy .eyebrow{font-size:12px;margin-bottom:24px}.production-copy h2{font-size:clamp(44px,11vw,70px);margin-bottom:27px}.production-copy>p:not(.eyebrow){font-size:16px;max-width:100%}.production-beats{margin-top:28px;gap:12px}.production-beats>span{font-size:12px;max-width:100%;gap:12px}.production-film{max-width:400px;width:90%}.production-film figcaption{font-size:12px}.production-film video{max-height:78svh}}

body[data-motion=off] .rain-particle{top:calc(var(--x)*.8)}body[data-motion=off] .family-shard img,body[data-motion=off] .process-photo img{transform:none!important}@media(prefers-reduced-motion:reduce){body:not([data-motion]) .reveal{opacity:1!important;transform:none!important}}

/* A matched memory slowly reveals the floor, then returns to its people. */
.game-photo image{transform-origin:0 0;transform-box:fill-box}.memory-tile.matched .game-photo image{animation:memory-floor 16s ease-in-out infinite}@keyframes memory-floor{0%,22%,92%,100%{transform:matrix(1,0,0,1,0,0)}48%,66%{transform:var(--floor-transform)}}
/* A sketch becomes a signature; its final point becomes the page's edge. */
.mark-section{padding-bottom:0;overflow:clip}.mark-flow{position:relative;margin:55px -7vw 0}.mark-flow-pin{position:relative;min-height:760px;height:100svh;overflow:hidden;isolation:isolate}.mark-flow.is-ready{height:255svh}.mark-flow.is-ready .mark-flow-pin{position:sticky;top:0}.mark-flow canvas{position:absolute;inset:0;width:100%;height:100%;stroke:none;opacity:0}.mark-flow.is-ready canvas{opacity:1}.mark-flow-fallback{position:absolute;right:4vw;top:16%;width:48%;height:64%;object-fit:contain}.mark-flow.is-ready .mark-flow-fallback{visibility:hidden}.mark-flow-copy{position:relative;z-index:2;width:44%;padding-left:7vw;top:50%;transform:translateY(-50%)}.mark-flow-copy>.eyebrow{margin-bottom:30px}.mark-flow-panels{min-height:325px}.mark-flow-panels h3{font-size:clamp(39px,4.2vw,68px);margin-bottom:27px}.mark-flow-panels h3 em{color:var(--red)}.mark-flow-panels p{font-size:17px;line-height:1.7;max-width:415px;color:#625c55}.mark-flow-steps{display:none;gap:22px;margin-top:26px;font:13px/1.4 var(--mono)}.is-ready .mark-flow-steps{display:flex}.mark-flow-steps button{display:grid;gap:8px;min-height:48px;padding:10px 0;text-align:left;color:#7a7268;border-top:1px solid #2f2e2e30}.mark-flow-steps button span:first-child{font-size:11px}.mark-flow-steps button[aria-pressed=true]{color:var(--red);border-color:var(--red)}body[data-mark-mode=manual] .mark-flow{height:auto}body[data-mark-mode=manual] .mark-flow-pin{position:relative}

.game-section{isolation:isolate}
.ambient-shards{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}.ambient-fragment{position:absolute;left:var(--left);top:var(--top);width:var(--size);opacity:.18;aspect-ratio:1;animation:ambient-drift var(--duration) ease-in-out var(--delay) infinite alternate;animation-play-state:paused}.ambient-shards.is-active .ambient-fragment{animation-play-state:running}.ambient-fragment svg{width:100%;height:100%;stroke:none}.ambient-fragment:nth-child(even){opacity:.1}@keyframes ambient-drift{from{transform:translate3d(0,35px,0) rotate(-9deg)}to{transform:translate3d(18px,-45px,0) rotate(12deg)}}.amalia-photo>img{transform-origin:50% 35%;will-change:transform}
.back-to-store{position:fixed;z-index:40;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;min-height:48px;padding:12px 19px;background:var(--cream);color:var(--ink);border:1px solid #2f2e2e26;border-radius:28px;box-shadow:0 5px 24px #110d0a24;font:14px/1.4 var(--sans);transition:transform .2s,background .2s}.back-to-store svg{width:18px;height:18px}.back-to-store:hover{background:#fff;transform:translateY(-3px)}.dialog-open .back-to-store{visibility:hidden}footer{padding-bottom:70px}
@media(max-width:760px){.mark-flow{margin:30px -6vw 0}.mark-flow-pin{min-height:740px;height:100svh}.mark-flow.is-ready{height:245svh}.mark-flow-copy{top:30px;transform:none;width:100%;padding:0 7vw}.mark-flow-copy>.eyebrow{margin-bottom:20px;font-size:12px}.mark-flow-panels{min-height:255px}.mark-flow-panels h3{font-size:clamp(32px,8.5vw,44px);margin-bottom:17px;max-width:96%}.mark-flow-panels p{font-size:15px;line-height:1.6;max-width:95%}.mark-flow-steps{gap:26px;margin-top:5px;font-size:12px}.mark-flow-fallback{top:48%;right:7%;width:86%;height:44%}.ambient-fragment{width:calc(var(--size)*.6);opacity:.12}.back-to-store{right:14px;bottom:max(14px,env(safe-area-inset-bottom));font-size:12px;padding:10px 15px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.memory-tile.matched .game-photo image{animation:none}.ambient-fragment{animation:none}.amalia-photo>img{transform:none!important}}
/* Quiet compositions: small edge fragments, clear reading fields. */
.mark-whispers,.name-whispers{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.quiet-fragment{position:absolute;width:var(--quiet-size);aspect-ratio:1;opacity:.11;animation:quiet-drift 22s ease-in-out var(--quiet-delay) infinite alternate}.quiet-fragment svg{width:100%;height:100%;stroke:none}.name-whispers .quiet-fragment{width:calc(var(--quiet-size)*1.8);opacity:.48}@keyframes quiet-drift{to{transform:translateY(-18px) rotate(6deg)}}
.name-section{background:#171717;padding-bottom:240px;gap:7vw}.amalia-photo{z-index:1;background:#171717}.amalia-photo>img{opacity:1;transform-origin:50% 32%}.amalia-photo::after{background:linear-gradient(0deg,#171717,transparent 30%)}.name-copy{z-index:2}.name-copy>p.name-promise{font:italic 26px/1.45 var(--serif);color:#e3d9cb}.saudade-word{z-index:0;bottom:-18px;left:50%;margin-left:-43vw;font-size:22vw;line-height:1;color:#f1e9dc20;white-space:nowrap;letter-spacing:-.025em;pointer-events:none}
.game-section{padding-top:120px;padding-bottom:120px;background:var(--cream)}.game-board{gap:34px 22px}.memory-tile{aspect-ratio:141/146}.tile-turn{inset:0 0 auto;aspect-ratio:141/132}.tile-front .tile-symbol{width:100%;height:100%;stroke:none;display:block}.tile-back{clip-path:var(--memory-shape);background:transparent}.tile-match{bottom:0}.game-reward{border-top:1px solid var(--line);padding-top:48px}.game-copy .game-live{font-size:18px;color:#625c55!important}.game-photo-hint{max-width:560px;margin:36px auto 0}
.closing{min-height:860px;padding-top:135px;background:var(--night)}.closing::after{display:none}.closing-copy{max-width:850px;margin:auto;text-align:center}.closing-copy>p:not(.eyebrow){margin:35px auto 0;max-width:580px;font-size:18px}.closing .store-link{margin-top:38px}.closing h2{font-size:clamp(60px,7.4vw,112px)}
.back-to-store{right:22px;bottom:max(18px,env(safe-area-inset-bottom));min-height:44px;padding:10px 14px;gap:9px;border:1px solid #2f2e2e20;border-radius:2px;background:#faf5eef2;box-shadow:none;font:12px/1.4 var(--mono);letter-spacing:.015em;backdrop-filter:blur(10px)}.back-to-store img{width:18px;height:17px;flex:none}.back-to-store:hover{transform:translateY(-2px);background:var(--cream)}
@media(max-width:760px){.quiet-fragment{width:calc(var(--quiet-size)*.65);opacity:.09}.name-whispers .quiet-fragment{width:var(--quiet-size);opacity:.35}.name-section{padding-bottom:150px}.name-copy>p.name-promise{font-size:23px}.saudade-word{font-size:24vw;margin-left:-47vw;bottom:15px;color:#f1e9dc24}.game-section{padding:75px 6vw 85px}.game-board{gap:25px 12px}.game-copy .game-live{font-size:16px}.tile-match{font-size:13px}.game-photo-hint{font-size:12px;max-width:280px}.closing{min-height:760px;padding-top:90px}.closing-copy>p:not(.eyebrow){font-size:16px}.back-to-store{right:12px;bottom:max(12px,env(safe-area-inset-bottom));font-size:11px;padding:9px 11px;gap:7px}.back-to-store img{width:16px;height:15px}}

/* A recognizable CTA; only the canonical shard changes colour. */
.closing .store-link{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:62px;padding:16px 25px;background:var(--cream);color:var(--ink);border:1px solid var(--cream);border-radius:4px;transition:transform .25s,box-shadow .25s}
.closing .store-link>span:first-child{font:600 16px/1.4 var(--sans)}
.store-shard{display:block;width:28px;height:27px;background:var(--red);mask:url('/assets/caquinho/caquinho-unico.svg') center/contain no-repeat;animation:store-colours 9s ease-in-out infinite}
@keyframes store-colours{0%,100%{background:#bb4a38}33%{background:#2f2e2e}66%{background:#f1bc17}}
.closing .store-link:hover{background:var(--cream);transform:translateY(-3px);box-shadow:0 8px 24px #0003}
.closing .store-link:focus-visible{outline:2px solid var(--yellow);outline-offset:6px}
.name-whispers .mourning-fragment{top:-100px!important;opacity:.6;width:calc(var(--quiet-size)*.8);animation:mourning-rain var(--rain-duration) linear var(--quiet-delay) infinite;animation-play-state:paused}
.name-whispers.is-active .mourning-fragment{animation-play-state:running}
@keyframes mourning-rain{0%{transform:translate3d(0,0,0) rotate(-8deg);opacity:0}10%,85%{opacity:.6}100%{transform:translate3d(24px,1700px,0) rotate(25deg);opacity:0}}
@media(max-width:760px){.name-whispers .mourning-fragment{width:calc(var(--quiet-size)*.55)}@keyframes mourning-rain{0%{transform:translate3d(0,0,0);opacity:0}10%,85%{opacity:.55}100%{transform:translate3d(12px,2100px,0) rotate(18deg);opacity:0}}}
@media(prefers-reduced-motion:reduce){.store-shard,.name-whispers .mourning-fragment{animation:none}}
