:root{--lavender:#8f79c6;--lavender-deep:#5b4b86;--pink:#ef9eb3;--peach:#f5b995;--blue:#98cce2;--cream:#fffaf1;--gold:#e9b95f;--ink:#3f3851;--muted:#6f6879;--white:#fff;--space:clamp(4.5rem,9vw,8rem);--radius:28px;--radius-sm:18px;--shadow:0 18px 50px rgba(83,67,116,.13);--display:"Fredoka","Trebuchet MS",sans-serif;--body:"DM Sans",system-ui,sans-serif;--ease:.45s cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);line-height:1.65;overflow-x:hidden}button,a{font:inherit}button{color:inherit}img{max-width:100%}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;z-index:9999;top:8px;left:8px;padding:12px 18px;background:#fff;transform:translateY(-150%);border-radius:12px;color:var(--ink)}.skip-link:focus{transform:none}*:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.intro{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:linear-gradient(160deg,#738bc0,#b39bd3 48%,#f7c4b1);transition:opacity .8s,visibility .8s}.intro.hidden{opacity:0;visibility:hidden}.intro-sky{position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.25),transparent 35%)}.intro-copy{position:relative;text-align:center;color:white;padding:2rem;max-width:800px;animation:introRise 1s .25s both}.intro h1{font:600 clamp(2.6rem,7vw,5.8rem)/.95 var(--display);letter-spacing:-.04em;margin:.4em 0 .3em;text-shadow:0 4px 30px rgba(65,51,100,.2)}.intro h1 em{font-style:normal;color:#fff6d8}.intro-copy>p:not(.eyebrow){font-size:clamp(1.05rem,2vw,1.4rem)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:700;font-size:.76rem;color:var(--lavender-deep);margin:0 0 1rem}.intro .eyebrow{color:#fff6dc}.button{border:0;border-radius:999px;padding:.9rem 1.4rem;min-height:50px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;transition:transform .25s,box-shadow .25s,background .25s}.button:hover{transform:translateY(-3px)}.primary{background:var(--lavender-deep);color:#fff;box-shadow:0 10px 25px rgba(74,58,117,.25)}.intro .primary{background:white;color:var(--lavender-deep)}.soft{background:rgba(255,255,255,.72);color:var(--lavender-deep);box-shadow:0 7px 22px rgba(70,54,100,.1)}.text-button{display:block;margin:1rem auto;border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer;min-height:44px}.intro-star{position:absolute;color:#ffe5a0;font-size:3rem;top:20%;animation:starTravel 3s ease-in-out infinite}.spark{position:absolute;color:#fff5c9;font-size:2rem;animation:twinkle 2s infinite}.s1{left:17%;top:24%}.s2{right:19%;top:30%;animation-delay:.6s}.s3{left:30%;bottom:20%;animation-delay:1.1s}.cloud{position:absolute;width:260px;height:75px;border-radius:100px;background:rgba(255,255,255,.22);filter:blur(1px)}.cloud:before,.cloud:after{content:"";position:absolute;background:inherit;border-radius:50%}.cloud:before{width:100px;height:100px;left:45px;bottom:0}.cloud:after{width:130px;height:130px;right:35px;bottom:0}.c1{top:13%;left:-100px;animation:drift 22s linear infinite}.c2{bottom:18%;right:-100px;animation:driftBack 28s linear infinite}
.site-header{position:fixed;z-index:100;top:16px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 32px));height:68px;padding:8px 10px 8px 22px;border:1px solid rgba(255,255,255,.55);border-radius:22px;background:rgba(255,250,245,.82);backdrop-filter:blur(16px);box-shadow:0 10px 35px rgba(70,55,100,.1);display:flex;align-items:center;gap:1rem}.brand{display:flex;align-items:center;text-decoration:none;font:600 1rem/1 var(--display);color:var(--ink);white-space:nowrap}.brand small{display:block;color:var(--muted);font:500 .65rem var(--body);letter-spacing:.06em;margin-top:.22rem}.site-header nav{margin-left:auto;display:flex;align-items:center;gap:.1rem}.site-header nav a{text-decoration:none;color:var(--muted);font-size:.82rem;font-weight:700;padding:.7rem .66rem;border-radius:99px;transition:.2s}.site-header nav a:hover,.site-header nav a.active{background:#eee7fa;color:var(--lavender-deep)}.theme-toggle{width:48px;height:48px;border:0;border-radius:16px;background:var(--ink);color:white;cursor:pointer;display:grid;place-items:center}.theme-toggle span{grid-area:1/1}.theme-toggle .moon{display:none}.menu-toggle{display:none}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;background:url("assets/images/ayzal-universe-hero.png") center/cover no-repeat;isolation:isolate;overflow:hidden}.hero-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,250,241,.88) 0%,rgba(255,250,241,.63) 36%,transparent 67%),linear-gradient(0deg,rgba(255,250,241,.25),transparent)}.hero-content{width:min(1180px,calc(100% - 40px));margin:auto;padding-top:5rem}.hero-content>*{max-width:570px}.hero h1,.section-heading h2{font:600 clamp(3.5rem,7.2vw,6.8rem)/.9 var(--display);letter-spacing:-.055em;margin:.15em 0 .25em}.hero h1 em,.section-heading h2 em{font-style:normal;color:var(--lavender)}.hero-lede{font-size:clamp(1.08rem,2vw,1.35rem);max-width:500px!important}.hero-actions{display:flex;gap:.8rem;margin-top:2rem}.moon-face{position:absolute;right:8%;top:14%;border:0;background:none;cursor:pointer;color:#ffe59a}.moon-face span{font-size:5rem;filter:drop-shadow(0 0 16px rgba(255,225,138,.7))}.moon-face i{display:none;position:absolute;inset:32px 13px auto auto;color:#7c6794;font-style:normal;font-weight:bold}.moon-face.smiling i{display:block}.scroll-cue{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;text-align:center}.scroll-cue span{display:block;width:1px;height:35px;background:var(--lavender);margin:0 auto .5rem;animation:scrollLine 1.8s infinite}
.section{padding:var(--space) max(24px,calc((100% - 1180px)/2));position:relative}.section-heading{text-align:center;max-width:790px;margin:0 auto 3.5rem}.section-heading h2{font-size:clamp(2.7rem,5.2vw,5rem)}.section-heading>p:last-child{color:var(--muted);font-size:1.05rem}.about{background:#fffaf4}.trait-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.trait-card{position:relative;border:1px solid rgba(119,95,159,.12);min-height:220px;padding:1.5rem;background:white;border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;text-align:left;overflow:hidden;transition:var(--ease)}.trait-card:nth-child(even){transform:translateY(22px)}.trait-card:hover{transform:translateY(-5px) rotate(-1deg)}.trait-card:nth-child(even):hover{transform:translateY(15px) rotate(1deg)}.trait-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:19px;background:#eee8fa;color:var(--lavender-deep);font:600 1.35rem var(--display);margin-bottom:2.2rem}.trait-icon.pink{background:#ffe5eb;color:#c65e7a}.trait-card small{display:block;color:var(--muted)}.trait-card strong{font:600 1.15rem var(--display)}.trait-back{position:absolute;inset:0;padding:1.5rem;display:grid;place-items:center;text-align:center;background:var(--lavender-deep);color:white;font:500 1.1rem var(--display);transform:translateY(102%);transition:var(--ease)}.trait-card.open .trait-back{transform:none}.trait-card.wide{grid-column:span 2}
.adventures{background:#f2edf9;overflow:hidden}.memory-track{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.memory-card{position:relative;background:#fff;padding:.8rem .8rem 1.4rem;border-radius:10px 10px 24px 10px;box-shadow:var(--shadow);cursor:pointer;transition:var(--ease);transform:rotate(-1deg)}.memory-card:nth-child(even){transform:rotate(1.5deg) translateY(18px)}.memory-card:hover{transform:rotate(0) translateY(-6px)}.photo{height:230px;border-radius:6px 6px 16px 6px;display:grid;place-items:center;background:linear-gradient(135deg,#f7c6bc,#b9dbea);overflow:hidden}.photo span{padding:.55rem .85rem;border-radius:99px;background:rgba(255,255,255,.7);font-size:.75rem;text-transform:uppercase;letter-spacing:.15em}.ph-2,.ph-6{background:linear-gradient(135deg,#c8dcae,#f7d7aa)}.ph-3{background:linear-gradient(135deg,#d5c4eb,#f4b9c9)}.ph-4{background:linear-gradient(135deg,#b9dfe2,#eee2b2)}.ph-5{background:linear-gradient(135deg,#f1c4dc,#c9c3eb)}.memory-card time{font-size:.72rem;color:var(--lavender);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.memory-card h3{font:600 1.35rem var(--display);margin:.3rem 0}.memory-card p{color:var(--muted);font-size:.88rem;margin:0}.sticker{position:absolute;right:-10px;top:-14px;width:48px;height:48px;border-radius:50%;background:#fff3c9;display:grid;place-items:center;box-shadow:0 5px 15px rgba(79,61,100,.12);transform:rotate(8deg)}
.favourites{background:#fffaf1}.shelf{background:#c99c7b;border-radius:42px 42px 22px 22px;padding:2.5rem 2rem 1rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;box-shadow:inset 0 -12px 0 #aa795e,var(--shadow);position:relative}.shelf:after{content:"";position:absolute;left:2%;right:2%;height:18px;top:51%;background:#a87559;border-radius:8px;box-shadow:0 7px 8px rgba(74,44,36,.16)}.shelf button{z-index:1;min-height:155px;border:0;border-radius:24px;background:#fff9ed;cursor:pointer;box-shadow:0 8px 16px rgba(71,43,35,.12);transition:var(--ease)}.shelf button:hover,.shelf button.chosen{transform:translateY(-9px) rotate(2deg);background:#fff}.shelf button span{display:block;font-size:3.2rem;line-height:1.2}.shelf button b{font:600 .9rem var(--display)}.love-message{grid-column:1/-1;z-index:1;background:#694f78;color:#fff;border-radius:18px;padding:1rem;text-align:center;font-weight:600;min-height:58px}
.gallery-section{background:linear-gradient(#dff0ec,#f6ead8);overflow:hidden}.photo-garden{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem 1.4rem}.garden-photo{border:0;background:white;padding:.8rem .8rem 1.1rem;box-shadow:var(--shadow);cursor:pointer;transition:var(--ease);border-radius:18px}.garden-photo:hover{transform:translateY(-8px) rotate(-1deg)}.placeholder{display:grid;place-items:center;aspect-ratio:4/3;border-radius:12px;background:linear-gradient(135deg,#c6dfea,#edd3df);color:rgba(255,255,255,.8);font:600 3rem var(--display)}.garden-photo:nth-child(3n) .placeholder{background:linear-gradient(135deg,#dfd0ec,#f1d3a9)}.garden-photo:nth-child(4n) .placeholder{background:linear-gradient(135deg,#b9d9c2,#f0c4c9)}.garden-photo b{display:block;font:500 .9rem var(--display);margin-top:.8rem}.flower-frame{border-radius:40% 40% 20px 20px}.hanging{transform:rotate(1.5deg)}.cloud-frame{border-radius:55px 55px 22px 22px}.scrapbook{transform:rotate(-2deg)}.leaf-frame{border-radius:45% 18px 45% 18px}.grow-flower{display:flex;align-items:center;gap:.5rem;margin:2.5rem auto 0;border:0;background:white;border-radius:99px;padding:.7rem 1.2rem;box-shadow:var(--shadow);cursor:pointer}.extra-flowers{text-align:center;font-size:2.5rem;min-height:60px}
.notes{background:#eee8f6}.notes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;align-items:start}.note{margin:0;min-height:260px;padding:2rem 1.5rem;border-radius:4px 4px 28px 4px;background:#fffdf6;box-shadow:var(--shadow);transform:rotate(-1.5deg);position:relative}.note:nth-child(even){transform:rotate(1.5deg) translateY(18px);background:#fff4f5}.note span{font-size:1.5rem;color:var(--gold)}.note p{font:500 1.15rem/1.55 var(--display)}.note cite{font-style:normal;font-size:.78rem;color:var(--muted)}.note.future{grid-column:1/-1;min-height:auto;display:grid;grid-template-columns:auto 1fr;column-gap:1rem;align-items:center;border:2px dashed #b8a7ce;background:transparent;transform:none}.note.future span{grid-row:1/3;width:55px;height:55px;border-radius:50%;background:white;display:grid;place-items:center}.note.future h3,.note.future p{margin:.1rem 0}
.play{background:#5f5687;color:#fff}.play .eyebrow,.play .section-heading>p:last-child{color:#e9dcff}.play .section-heading h2 em{color:#ffd48c}.game-shell{max-width:980px;margin:auto;padding:1rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:34px;box-shadow:0 25px 65px rgba(36,27,67,.3)}.game-topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.5rem 1rem 1rem;text-align:center}.game-topbar>div:first-child{text-align:left}.game-topbar>div:last-child{text-align:right}.game-topbar small{display:block;color:#ded5f0;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.game-topbar strong{font:600 2rem var(--display)}.game-title{font:600 1rem var(--display)}.game-area{height:min(56vh,480px);min-height:360px;position:relative;overflow:hidden;border-radius:24px;background:linear-gradient(#312b57,#74669d);box-shadow:inset 0 0 45px rgba(20,15,53,.3);touch-action:manipulation}.game-area:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,#fff 1px,transparent 1.5px);background-size:71px 67px;opacity:.45}.game-welcome{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:2rem;z-index:3;background:rgba(49,43,87,.3);backdrop-filter:blur(3px)}.game-welcome.hidden{display:none}.game-welcome span{font-size:5rem;color:#ffd36e}.game-welcome h3{font:600 1.7rem var(--display);margin:0}.game-welcome p{max-width:480px;color:#e4def1}.falling{position:absolute;z-index:2;border:0;background:none;color:#fff1a7;font-size:2.2rem;cursor:pointer;filter:drop-shadow(0 0 8px currentColor);padding:8px;line-height:1;user-select:none}.falling.golden{color:#ffc44f;font-size:2.8rem}.falling.heart{color:#ff91ae}.falling.slow-cloud{filter:none;font-size:2.8rem}.game-controls{display:flex;gap:.6rem;align-items:center;justify-content:center;flex-wrap:wrap;padding:1rem 0 .3rem}.game-controls .button{min-height:44px;padding:.65rem 1rem}.game-controls .primary{background:#ffd078;color:#4b3e70}.game-controls .soft{background:rgba(255,255,255,.13);color:white}.game-controls button:disabled{opacity:.45;cursor:not-allowed}.easy-toggle{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;cursor:pointer}.easy-toggle input{width:20px;height:20px;accent-color:#ffd078}.best-score{text-align:center;margin:.4rem 0;color:#e9e1f7;font-size:.85rem}
footer{text-align:center;padding:4rem 1.5rem;background:#403957;color:#e9e2f1}footer p{font:500 1rem var(--display);margin:.7rem 0 .2rem}footer small{color:#bdb5c9}.footer-star{font-size:2rem;color:#ffd078}.back-top{position:fixed;z-index:90;right:20px;bottom:20px;width:48px;height:48px;border:0;border-radius:17px;background:var(--lavender-deep);color:#ffd67e;box-shadow:var(--shadow);cursor:pointer;opacity:0;transform:translateY(20px);transition:.3s}.back-top.visible{opacity:1;transform:none}
.modal,.lightbox{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;transition:.3s}.modal.open,.lightbox.open{opacity:1;visibility:visible}.modal-backdrop{position:absolute;inset:0;background:rgba(42,34,65,.7);backdrop-filter:blur(7px)}.modal-card{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;background:var(--cream);border-radius:30px;padding:1rem 1rem 2rem;box-shadow:0 30px 90px rgba(22,16,40,.4)}.modal-close{position:absolute;right:12px;top:12px;z-index:4;width:44px;height:44px;border:0;border-radius:50%;background:white;font-size:1.7rem;cursor:pointer;box-shadow:0 5px 20px rgba(0,0,0,.12)}.modal-photo{height:300px;border-radius:22px;background:linear-gradient(135deg,#efd1da,#c6dced);display:grid;place-items:center;margin-bottom:1.5rem}.modal-card time,.modal-card h2,.modal-card p{display:block;margin-left:1rem;margin-right:1rem}.modal-card h2{font:600 2rem var(--display);margin-top:.3rem;margin-bottom:.3rem}.modal-card time{color:var(--lavender);font-weight:700}.lightbox-card{position:relative;width:min(900px,100%);background:#302a45;border-radius:28px;padding:1rem;color:white;text-align:center}.lightbox-image{height:min(68vh,600px);border-radius:18px;background:linear-gradient(135deg,#c8dfea,#eccedb);display:grid;place-items:center}.lightbox-image span{font:600 6rem var(--display);color:rgba(255,255,255,.65)}.lightbox-nav{position:absolute;z-index:3;top:50%;transform:translateY(-50%);border:0;border-radius:50%;width:48px;height:48px;background:white;font-size:2rem;cursor:pointer}.lightbox-nav.prev{left:-24px}.lightbox-nav.next{right:-24px}.secret-message{position:fixed;z-index:700;left:50%;bottom:30px;transform:translate(-50%,130px);width:min(560px,calc(100% - 32px));padding:1rem 1.5rem;text-align:center;border-radius:18px;background:#4f426e;color:white;box-shadow:var(--shadow);transition:.5s}.secret-message.show{transform:translate(-50%,0)}.sparkle-dot,.tap-star,.bubble{position:fixed;z-index:800;pointer-events:none;animation:sparkOut .8s forwards;color:var(--gold)}.bubble{width:20px;height:20px;border:2px solid rgba(255,255,255,.8);border-radius:50%;animation:bubbleUp 2.5s forwards}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s var(--delay,0s),transform .8s var(--delay,0s)}.reveal.visible{opacity:1;transform:none}
body.night{--cream:#171a38;--ink:#f2ecff;--muted:#cfc7dc;background:#171a38}.night .site-header{background:rgba(27,28,59,.86);border-color:rgba(255,255,255,.1)}.night .theme-toggle{background:#f6d787;color:#3c3559}.night .theme-toggle .sun{display:none}.night .theme-toggle .moon{display:block}.night .hero{background-image:linear-gradient(rgba(31,32,79,.52),rgba(31,32,79,.6)),url("assets/images/ayzal-universe-hero.png");background-blend-mode:multiply}.night .hero-overlay{background:linear-gradient(90deg,rgba(24,25,58,.88),rgba(24,25,58,.3),transparent)}.night .about,.night .favourites{background:#1d2044}.night .adventures,.night .notes{background:#26264d}.night .trait-card,.night .memory-card,.night .shelf button{background:#303158;color:#f7f0ff}.night .memory-card p{color:#ddd5e8}.night .memory-card time{color:#d9b9ff}.night .photo span{background:rgba(255,255,255,.84);color:#53466d}.night .sticker{background:#fff0bd;color:#57456d}.night .section-heading h2 em,.night .hero h1 em{color:#e5add1}.night .eyebrow{color:#cdbde8}.night .gallery-section{background:linear-gradient(#222e4a,#323053)}.night .garden-photo{background:#39375c}.night .soft{background:rgba(255,255,255,.12);color:white}.night .hero-lede{color:#f4effb}.night .brand{color:white}.night .site-header nav a{color:#d7cfe2}.night .site-header nav a.active{background:#4b456f;color:white}.night .note:not(.future){color:#443a55}.night .note:not(.future) p{color:#443a55}.night .note:not(.future) cite{color:#6d6378}.night .note.future{color:#f2ecff;border-color:#bba8d6}.night .note.future p{color:#d8d0e3}.night .modal-card{color:#f2ecff}
@keyframes introRise{from{opacity:0;transform:translateY(25px)}}@keyframes starTravel{0%{left:4%;transform:translateY(0) rotate(0)}50%{left:80%;transform:translateY(110px) rotate(180deg)}100%{left:4%;transform:translateY(0) rotate(360deg)}}@keyframes twinkle{50%{opacity:.25;transform:scale(.65)}}@keyframes drift{to{transform:translateX(calc(100vw + 400px))}}@keyframes driftBack{to{transform:translateX(calc(-100vw - 400px))}}@keyframes float{50%{transform:translateY(-12px) rotate(5deg)}}@keyframes wave{25%{transform:rotate(-18deg) scale(1.1)}75%{transform:rotate(18deg) scale(1.1)}}@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}@keyframes sparkOut{to{opacity:0;transform:translateY(-20px) scale(0)}}@keyframes bubbleUp{to{opacity:0;transform:translateY(-100vh) scale(1.8)}}
@media(max-width:960px){.site-header nav{position:absolute;top:78px;left:0;right:0;background:var(--cream);border-radius:22px;padding:.7rem;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(2,1fr);opacity:0;visibility:hidden;transform:translateY(-10px);transition:.3s}.site-header nav.open{opacity:1;visibility:visible;transform:none}.site-header nav a{text-align:center}.menu-toggle{margin-left:auto;width:46px;height:46px;border:0;border-radius:14px;background:#eee7fa;display:grid;place-content:center;gap:4px}.menu-toggle span{display:block;width:20px;height:2px;background:var(--lavender-deep)}.trait-grid{grid-template-columns:repeat(3,1fr)}.memory-track{grid-template-columns:repeat(2,1fr)}.photo-garden{grid-template-columns:repeat(3,1fr)}.notes-grid{grid-template-columns:repeat(2,1fr)}.shelf{grid-template-columns:repeat(4,1fr)}}
@media(max-width:650px){.site-header{top:8px;width:calc(100% - 16px);height:62px}.theme-toggle{width:42px;height:42px}.hero{min-height:760px;background-position:64% center;align-items:flex-start}.hero-overlay{background:linear-gradient(180deg,rgba(255,250,241,.94) 0%,rgba(255,250,241,.74) 50%,transparent 80%)}.hero-content{padding-top:9rem}.hero h1{font-size:clamp(3.2rem,16vw,5rem)}.hero-actions{flex-direction:column;align-items:flex-start}.moon-face{top:14%;right:4%}.scroll-cue{display:none}.trait-grid{grid-template-columns:repeat(2,1fr)}.trait-card{min-height:190px;padding:1.2rem}.trait-card:nth-child(even){transform:none}.trait-card.wide{grid-column:1/-1}.memory-track{display:flex;overflow-x:auto;padding:.5rem 1rem 2rem;margin:0 -24px;scroll-snap-type:x mandatory}.memory-card{min-width:80vw;scroll-snap-align:center}.photo-garden{grid-template-columns:repeat(2,1fr);gap:1rem}.garden-photo{padding:.55rem}.notes-grid{grid-template-columns:1fr}.note:nth-child(even){transform:rotate(1deg)}.shelf{grid-template-columns:repeat(2,1fr);padding:1.2rem}.shelf:after{display:none}.shelf button{min-height:125px}.game-shell{padding:.6rem}.game-area{min-height:390px}.game-title{display:none}.game-topbar{grid-template-columns:1fr 1fr}.game-controls{gap:.4rem}.lightbox-nav.prev{left:8px}.lightbox-nav.next{right:8px}.section{padding-left:24px;padding-right:24px}.section-heading{margin-bottom:2.5rem}.intro h1{font-size:2.8rem}}
@media(pointer:fine){body{cursor:default}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}

/* Real adventure photographs retain a light wash of the original pastel palette. */
.photo{position:relative}
.photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(239,139,156,.30),rgba(105,186,222,.30))}
.photo.ph-2:after,.photo.ph-6:after{background:linear-gradient(135deg,rgba(148,190,105,.30),rgba(241,179,93,.30))}
.photo.ph-3:after{background:linear-gradient(135deg,rgba(163,125,211,.30),rgba(235,126,160,.30))}
.photo.ph-4:after{background:linear-gradient(135deg,rgba(93,183,193,.30),rgba(225,198,95,.30))}
.photo.ph-5:after{background:linear-gradient(135deg,rgba(225,123,178,.30),rgba(142,126,205,.30))}
.modal-photo{position:relative;overflow:hidden}
.modal-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.modal-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(227,137,170,.22),rgba(116,183,216,.22))}
