/* Pure Lattice — a sunny game shelf. Tokens own color/spacing; components own
   layout. Player sizing is isolated so embedded games do not affect the grid. */
:root{--paper:#fff6f9;--ink:#592b39;--muted:#94475f;--green:#a84866;--mint:#fde8ef;--yellow:#f9c2d4;--peach:#fde4eb;--line:#f6e3e8;--radius:20px;--header:82px;--wrap:1280px;font-family:"Trebuchet MS",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-padding-top:calc(var(--header) + 20px)}
*{box-sizing:border-box}body{margin:0;line-height:1.6}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.5}img{display:block;max-width:100%;height:auto}button,select,input,textarea{-webkit-tap-highlight-color:transparent}button{border:0}button,a,input,select,textarea{touch-action:manipulation}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15}h1,h2{font-weight:700;letter-spacing:-.04em}h1{font-size:clamp(2.6rem,5vw,4.5rem)}h2{font-size:clamp(1.65rem,2.5vw,2.2rem)}h3{font-size:1.13rem;letter-spacing:-.02em}p{color:var(--muted)}[hidden]{display:none!important}:focus-visible{outline:3px solid #a34260;outline-offset:5px}.wrap{width:min(var(--wrap),calc(100% - 96px));margin-inline:auto}.icon{width:20px;height:20px;flex:none;vertical-align:middle}.eyebrow{display:block;font-size:.66rem;letter-spacing:.16em;font-weight:700;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;z-index:200;top:6px;left:8px;transform:translateY(-150%);padding:12px 20px;background:var(--green);color:white;border-radius:8px}.skip-link:focus{transform:none}.green-dot{width:7px;height:7px;display:inline-block;margin-right:7px;background:#c96d8a;border-radius:50%}.text-link{display:inline-flex;gap:12px;align-items:center;font-size:.88rem;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:4px}.text-link .icon{width:18px}.text-link:hover .icon{transform:translateX(3px)}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 22px;border-radius:11px;font-size:.86rem;font-weight:700;line-height:1.4;transition:transform .18s,background .18s}.button:active{transform:scale(.97)}.button-green{background:var(--green);color:#fff}.button-green:hover{background:#943c57}.button-yellow{background:var(--yellow);color:#592b39}.button-yellow:hover{background:#facddb}.text-button{min-height:44px;background:none;text-decoration:underline;text-underline-offset:4px;font-size:.82rem}.mint{background:#fde6ed}.peach{background:#fde7ee}.yellow{background:#fbdae4}.lavender{background:#fbe3eb}.blue{background:#fce9ef}.pink{background:#fae4eb}
/* Pinned shared header. Transparent decoration never carries essential text. */
.site-header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{width:min(var(--wrap),calc(100% - 96px));margin:auto;min-height:var(--header);display:flex;align-items:center;gap:48px}.brand{display:inline-flex;align-items:center;gap:10px;flex:none;font-size:1.5rem;font-weight:700;letter-spacing:-.07em;line-height:1;white-space:nowrap}.brand-dot{color:#d77c98}.brand img{flex:none}#primary-nav{display:flex;align-items:center;gap:30px;font-size:.82rem;font-weight:700;margin-left:38px}#primary-nav>a{min-height:44px;display:flex;align-items:center;gap:6px;position:relative}#primary-nav>a:after{content:"";position:absolute;height:2px;bottom:3px;background:var(--green);width:0;transition:width .2s}#primary-nav>a:hover:after,#primary-nav>a[aria-current]:after{width:20px}.nav-count{font-size:.6rem;background:#fce7ee;border-radius:5px;padding:1px 5px}.header-actions{margin-left:auto;display:flex;align-items:center;gap:20px}.header-search{width:44px;height:44px;display:grid;place-items:center}.saved-link{border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px;font-size:.79rem;font-weight:700;min-height:44px}.saved-link:hover{background:var(--mint)}.saved-link .icon{width:17px}.menu-toggle{display:none;width:44px;height:44px;background:var(--mint);border-radius:10px}
/* Home opens with actual game imagery rather than a full-screen masthead. */
.home-intro{display:flex;justify-content:space-between;align-items:flex-end;padding-top:45px;padding-bottom:28px}.home-intro .eyebrow{margin-bottom:14px}.home-intro h1{font-size:clamp(2.8rem,4.6vw,4.2rem);position:relative;line-height:1.05;letter-spacing:-.065em}.home-intro h1>span:not(.headline-spark){color:#c96b88}.home-intro p{font-size:.92rem;line-height:1.6;margin-top:16px}.headline-spark{position:absolute;font-size:3.7rem;font-weight:400;right:-105px;top:25px;color:#f0b9ca;transform:rotate(12deg)}.intro-link{display:flex;align-items:center;gap:14px;font-weight:700;font-size:.83rem;margin-bottom:5px}.intro-link .icon{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;padding:6px}.featured-row{display:grid;grid-template-columns:1.7fr 1fr;gap:20px}.feature-main{position:relative;min-height:400px;border-radius:var(--radius);overflow:hidden;background:#ba6f86;isolation:isolate;color:#fff}.feature-main>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s}.feature-main:hover>img{transform:scale(1.025)}.feature-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(70,35,27,.18),rgba(70,35,27,.02) 27%,rgba(61,29,24,.85))}.feature-kicker{position:relative;display:flex;justify-content:space-between;padding:23px 25px;font-size:.6rem;letter-spacing:.13em;font-weight:bold}.feature-kicker>span{background:#fef5f8;color:var(--ink);border-radius:20px;padding:5px 10px;margin-top:-5px;letter-spacing:.05em}.feature-copy{position:absolute;bottom:27px;left:28px;right:28px}.feature-sticker{font-size:.65rem;font-weight:bold;letter-spacing:.04em}.feature-copy h2{font-size:2.6rem;margin-top:5px;letter-spacing:-.05em}.feature-copy p{color:#fef2f6;font-size:.85rem;margin-top:7px}.feature-copy .button{margin-top:20px;font-size:.78rem;padding:11px 18px}.feature-side{display:grid;grid-template-rows:1fr 1fr;gap:20px}.mini-feature{position:relative;border-radius:var(--radius);overflow:hidden;min-height:190px;display:flex;align-items:center;padding:25px}.mini-feature>div{position:relative;z-index:2}.mini-feature .eyebrow{font-size:.56rem;margin-bottom:8px}.mini-feature h2{font-size:1.65rem;line-height:1.06}.mini-link{display:inline-flex;align-items:center;gap:10px;font-size:.69rem;font-weight:700;margin-top:17px}.mini-link .icon{width:16px}.mini-feature>img{position:absolute;right:-24px;top:26px;width:47%;height:160px;object-fit:cover;border-radius:14px;transform:rotate(9deg);box-shadow:0 5px 12px #a8486620}.mini-feature.peach>img{transform:rotate(-9deg);right:-14px;top:15px;height:170px;width:44%}.mini-flower{position:absolute;color:#d37995;font-size:3rem;right:40%;top:10px;line-height:1}.mood-section{display:flex;gap:40px;align-items:center;padding-top:35px;padding-bottom:34px;border-bottom:1px solid var(--line)}.mood-label{flex:none}.mood-label h2{font-size:1.1rem;margin-top:5px;letter-spacing:-.03em}.mood-label .eyebrow{font-size:.58rem;color:var(--muted)}.mood-links{display:flex;flex-wrap:wrap;gap:9px;flex:1}.mood-chip{display:flex;gap:10px;align-items:center;padding:9px 15px;border-radius:30px;font-size:.77rem;font-weight:bold;min-height:44px}.mood-chip>span{font-size:1.2rem}.mood-chip .icon{width:14px;height:14px;opacity:.65}.mood-chip:hover{box-shadow:inset 0 0 0 1px #b9627d60}.section-space{padding-top:48px;padding-bottom:12px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;gap:20px}.section-heading .eyebrow{color:var(--muted);font-size:.59rem;margin-bottom:8px}.section-heading h2{font-size:2rem;letter-spacing:-.05em}.section-heading .text-link{font-size:.75rem;white-space:nowrap}.game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.game-card{position:relative;min-width:0;background:#fff8fa;border:1px solid var(--line);border-radius:var(--radius);transition:transform .25s,box-shadow .25s}.game-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #b9627d0b}.card-link{display:block;height:100%;border-radius:var(--radius)}.card-image{position:relative;overflow:hidden;border-radius:19px 19px 0 0;background:#fce8ee;aspect-ratio:1.6}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.game-card:hover .card-image img{transform:scale(1.035)}.play-corner{position:absolute;bottom:12px;right:12px;width:29px;height:29px;background:#fef7faeb;border-radius:50%;display:grid;place-items:center}.play-corner .icon{width:14px;height:14px;margin-left:2px}.card-copy{padding:16px 17px 13px}.category-label{display:inline-block;font-size:.58rem;font-weight:700;line-height:1.5;padding:3px 9px;border-radius:5px;letter-spacing:.035em}.card-copy h3{margin-top:10px;font-size:1.08rem}.card-copy p{font-size:.76rem;line-height:1.55;margin-top:7px;min-height:37px}.card-bottom{margin-top:16px;padding-top:11px;border-top:1px solid #f9eaee;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.6rem;color:var(--muted)}.card-bottom>span:last-child{color:var(--green);font-weight:700;display:inline-flex;align-items:center;gap:6px}.card-bottom .icon{width:13px;height:13px}.save-button{position:absolute;right:10px;top:10px;width:36px;height:36px;border-radius:50%;background:#fef4f7f2;display:grid;place-items:center;border:1px solid #fff8}.save-button .icon{width:17px;height:17px}.save-button[aria-pressed=true]{background:var(--green);color:white}.save-button[aria-pressed=true] .icon{fill:currentColor}.play-note{margin-top:50px;background:#fde8ee;border-radius:var(--radius);display:grid;grid-template-columns:190px 1fr 200px;align-items:center;gap:34px;padding:35px 35px 35px 20px}.play-note h2{font-size:1.9rem;margin-top:8px}.play-note p{max-width:560px;font-size:.84rem;margin:13px 0}.play-note .text-link{font-size:.75rem}.note-facts{display:grid;gap:16px;border-left:1px solid #f3d5df;padding-left:26px;font-size:.74rem;font-weight:700}.note-facts>span{display:flex;align-items:center;gap:11px}.note-facts .icon{width:18px}.note-illustration{position:relative;height:170px}.tile{position:absolute;width:67px;height:74px;display:grid;place-items:center;border-radius:15px;border:1px solid #bb7289;font-size:2.1rem;box-shadow:3px 4px 0 #f5d4de}.t1{left:30px;top:6px;background:#f9d1dd;transform:rotate(-16deg)}.t2{left:94px;top:42px;background:#f9bed1;transform:rotate(14deg);font-size:1.6rem}.t3{left:26px;top:92px;background:#fae0e8;transform:rotate(-5deg)}.orbit{position:absolute;width:9px;height:9px;background:#d47a96;border-radius:50%}.o1{top:13px;right:16px}.o2{bottom:12px;right:20px;width:5px;height:5px}.language-note{margin-top:45px;margin-bottom:55px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:22px;align-items:center;padding:26px 0}.note-symbol{font-size:1.5rem;letter-spacing:-.08em;background:#fce8ee;width:50px;height:50px;border-radius:13px;flex:none;display:grid;place-items:center}.language-note h2{font-size:1rem;letter-spacing:-.02em}.language-note p{font-size:.78rem;max-width:770px;margin-top:5px}.language-note>a{white-space:nowrap;font-size:.75rem;font-weight:700;margin-left:auto}.language-note .icon{width:15px}
/* Lists and controls retain complete HTML when JavaScript is unavailable. */
.page-top{padding-top:32px;padding-bottom:34px}.breadcrumb{display:flex;align-items:center;gap:10px;font-size:.72rem;color:var(--muted);margin-bottom:30px;flex-wrap:wrap}.breadcrumb .icon{width:14px}.breadcrumb a:hover{text-decoration:underline}.page-top>.eyebrow{margin-bottom:12px}.page-top h1{font-size:3.7rem;letter-spacing:-.055em}.title-dot{font-size:2.2rem;margin-left:17px;color:#e9b4c4;vertical-align:middle}.page-top>p{max-width:660px;margin-top:17px;font-size:.97rem}.catalog-section{padding-bottom:60px}.filter-bar{display:flex;gap:15px;align-items:flex-end;border-top:1px solid var(--line);padding-top:24px}.search-field{flex:1;display:flex;align-items:center;background:white;border:1px solid #eecbd6;border-radius:10px;padding:0 14px;gap:10px;min-height:49px}.search-field input{border:0;background:transparent;min-width:0;width:100%;padding:12px 0;font-size:.87rem;color:var(--ink)}.search-field:focus-within{outline:2px solid var(--green);outline-offset:2px}.search-field input:focus{outline:none}.input-filter{font-size:.65rem;display:grid;gap:4px;color:var(--muted)}select{background:#fff8fa;border:1px solid #eecbd6;border-radius:9px;color:var(--ink);min-height:49px;padding:9px 32px 9px 13px;font-size:.8rem;max-width:100%}.category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.category-tabs a{font-size:.78rem;min-height:40px;padding:8px 15px;border:1px solid transparent;border-radius:30px}.category-tabs a:hover{background:var(--mint)}.category-tabs a[aria-current]{background:var(--green);color:#fff}.category-tabs span{font-size:.65rem;opacity:.8;margin-left:3px}.results-line{display:flex;justify-content:space-between;align-items:center;margin:15px 0}.results-line p{font-size:.75rem}.results-line .text-button{font-size:.72rem}.empty-state{text-align:center;border:1px dashed #e6bdca;border-radius:var(--radius);padding:55px 20px}.empty-state>span{color:#d07591;font-size:3.6rem}.empty-state h2{font-size:1.9rem;margin-bottom:15px}.empty-state .button{margin-top:24px}.library-tabs{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.library-tabs>button:not(.text-button){min-height:46px;padding:10px 20px;border-radius:9px;background:#fce7ee;font-size:.83rem;display:flex;align-items:center;gap:10px}.library-tabs>button[aria-pressed=true]{background:var(--green);color:white}.library-tabs .text-button{margin-left:auto}.storage-note{font-size:.78rem;margin-bottom:26px}
/* Game page: external iframe is created only after the player's click. */
.game-page{padding-top:26px;padding-bottom:50px}.game-page>.breadcrumb{margin-bottom:26px}.game-title-row{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:28px}.game-title-row h1{font-size:2.8rem;margin-top:12px}.game-title-row p{margin-top:10px;font-size:.93rem}.save-detail{border:1px solid var(--line);background:#fef4f7;white-space:nowrap}.save-detail[aria-pressed=true]{background:var(--green);color:white}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:28px;align-items:start}.game-layout>div{min-width:0}.player{background:#512734;color:#fef5f8;border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;isolation:isolate}.player-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 15px;min-height:56px}.player-top>span{font-size:.56rem;letter-spacing:.12em;color:#fbe6ec}.player-top .green-dot{background:#f7c6d5}.player-top>div,.player-bottom>div{display:flex;gap:6px;flex:none}.player button:not(.button){display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#ffffff12;color:#fef5f8;border:1px solid #ffffff20;border-radius:7px;font-size:.67rem;min-height:36px;padding:6px 10px}.player .icon{width:15px;height:15px}.player-stage{position:relative;aspect-ratio:16/10;background:#391c25;min-height:340px;flex:1}.player-prompt{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden}.player-prompt>img{position:absolute;width:100%;height:100%;object-fit:cover;filter:brightness(.55)}.prompt-shade{position:absolute;inset:0;background:#51273466}.prompt-copy{position:relative;text-align:center;padding:25px;max-width:100%}.prompt-tag{font-size:.6rem;letter-spacing:.15em}.prompt-copy h2{font-size:2.6rem;margin:10px 0 22px}.prompt-copy .button{max-width:100%;font-size:.83rem}.prompt-copy p{font-size:.67rem;color:#feeff4;margin-top:15px}.player-stage>iframe{display:block;position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}.player-bottom{padding:11px 14px;display:flex;gap:10px;align-items:center;justify-content:space-between;min-height:60px}.player-bottom p{font-size:.63rem;color:#f9e0e8;line-height:1.45}.player-caveat{font-size:.72rem;line-height:1.7;margin-top:14px}.player.is-expanded,.player:fullscreen{position:fixed;inset:0;width:100%;height:100dvh;z-index:100;border-radius:0}.player.is-expanded .player-stage,.player:fullscreen .player-stage{aspect-ratio:auto;min-height:0}.player.is-expanded .player-top,.player:fullscreen .player-top{min-height:54px}.player.is-expanded .player-bottom,.player:fullscreen .player-bottom{min-height:54px}.player.is-expanded .player-prompt>img,.player:fullscreen .player-prompt>img{object-fit:contain}.game-sidebar{display:grid;gap:20px}.control-card{border:1px solid var(--line);border-radius:var(--radius);padding:25px 22px;background:#fdedf2}.control-card h2{font-size:1.45rem;margin-top:10px}.control-card ul{padding:0;list-style:none;margin:20px 0}.control-card li{font-size:.78rem;line-height:1.65;padding:11px 0;border-bottom:1px solid #f6dae3}.game-spec{margin-top:22px;display:grid;gap:10px}.game-spec>span{display:flex;justify-content:space-between;gap:12px;font-size:.69rem;color:var(--muted)}.game-spec strong{color:var(--ink)}.control-card>p{font-size:.69rem;margin-top:20px}.host-card{padding:22px;border:1px solid var(--line);border-radius:var(--radius)}.host-card h2{font-size:1.13rem;letter-spacing:-.025em}.host-card p{font-size:.76rem;margin:12px 0}.host-card a{font-size:.74rem;display:flex;align-items:center;gap:6px;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line)}.host-card .icon{width:14px}.game-guide{padding-top:38px;max-width:740px}.game-guide>.eyebrow{margin-bottom:12px;color:var(--muted)}.game-guide h2{font-size:1.7rem;margin-top:32px;margin-bottom:15px}.game-guide>.eyebrow+h2{margin-top:0}.game-guide>p{font-size:.94rem;line-height:1.9}.tip-box{display:flex;gap:20px;border-radius:15px;background:#fde6ed;padding:23px;margin-top:28px}.tip-box>span{font-size:2rem;line-height:1;color:#ba5e7b}.tip-box h3{font-size:.9rem;margin-bottom:8px}.tip-box p{font-size:.83rem;line-height:1.8}
/* Foundation content is kept narrow, with explicit plain-text contact details. */
.info-page{padding-top:32px;padding-bottom:70px;max-width:1050px}.info-page>.eyebrow{margin-bottom:17px}.info-page h1{font-size:3.8rem}.info-intro{font-size:1.05rem;line-height:1.8;max-width:740px;margin-top:24px}.prose{margin-top:40px;max-width:780px}.prose section{margin-bottom:33px}.prose h2{font-size:1.5rem;margin-bottom:13px;letter-spacing:-.025em}.prose p,.prose li{font-size:.94rem;line-height:1.9}.prose p+p{margin-top:14px}.prose a:not(.button){text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.prose a .icon{width:14px}.prose ol{padding-left:22px}.prose code{font-size:.8rem;overflow-wrap:anywhere;background:#fce8ee;padding:2px 4px;border-radius:4px}.contact-email{font-weight:700;color:var(--green);user-select:text;overflow-wrap:anywhere}.info-page:has(.contact-grid){max-width:1160px}.prose:has(.contact-grid){max-width:none}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-form{align-self:start;border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:#fff8fa}.contact-form h2{font-size:1.35rem}.contact-form>p{font-size:.79rem;line-height:1.75}.contact-form label{display:block;font-size:.78rem;font-weight:700;margin:19px 0 6px}.contact-form label span{font-weight:400;color:var(--muted)}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;border:1px solid #e9c0cd;border-radius:8px;background:#fff8fa;padding:11px;color:var(--ink);min-width:0}.contact-form textarea{resize:vertical}.contact-form [aria-invalid=true]{border:2px solid #a52c52}.contact-form .button{margin-top:20px}.contact-form [role=status]{margin-top:16px;font-size:.76rem}.credits-list{margin-top:34px}.credits-list section{border-top:1px solid var(--line);padding-top:25px;scroll-margin-top:105px}.credits-list h2{margin-top:10px}.credits-list a{font-size:.85rem}
.site-footer{border-top:1px solid var(--line);background:#fdedf2}.footer-top{display:grid;grid-template-columns:1.2fr 1.5fr .8fr;gap:45px;padding-block:38px}.footer-top .brand{font-size:1.45rem}.footer-top p{font-size:.75rem;line-height:1.8;margin-top:15px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px;align-content:center;font-size:.75rem}.footer-links a:hover{text-decoration:underline;text-underline-offset:4px}.footer-note{display:flex;gap:16px;align-items:center}.footer-note p{font-size:.73rem;margin:0}.small-flower{font-size:3rem;color:#ebb4c6;line-height:1}.footer-bottom{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-block:20px;font-size:.65rem;color:var(--muted)}.footer-bottom a{display:flex;align-items:center;gap:8px}.footer-bottom .icon{width:14px;height:14px}
@media(min-width:1500px){.home-intro{padding-top:50px}.feature-main{min-height:430px}}
@media(max-width:1150px){.wrap,.header-inner{width:calc(100% - 64px)}.header-inner{gap:25px}#primary-nav{margin-left:10px;gap:24px}.featured-row{grid-template-columns:1.5fr 1fr}.mini-feature{padding:22px}.mini-feature h2{font-size:1.5rem}.mini-feature>img{width:43%;right:-25px}.game-grid{gap:16px}.card-copy{padding:14px 13px}.card-copy h3{font-size:1rem}.card-bottom{font-size:.55rem}.mood-section{gap:25px;align-items:flex-start}.mood-links{gap:8px}.mood-chip{padding:8px 12px}.play-note{grid-template-columns:140px 1fr;gap:27px}.note-facts{grid-column:2;display:flex;gap:24px;border:0;padding:0}.note-illustration{grid-row:span 2}.t2{left:65px}.t1,.t3{left:10px}.game-layout{grid-template-columns:minmax(0,1fr) 245px;gap:22px}.control-card{padding:22px 18px}.player-stage{min-height:320px}.footer-top{gap:30px}.footer-note{gap:10px}.feature-copy h2{font-size:2.2rem}}
@media(max-width:950px){.brand{font-size:1.35rem}.brand img{width:33px;height:33px}.header-inner{gap:15px}#primary-nav{gap:18px;margin-left:0;font-size:.76rem}.header-actions{gap:7px}.saved-link{padding:10px}.home-intro h1{font-size:3.4rem}.headline-spark{font-size:2.6rem;right:-65px;top:30px}.featured-row{gap:16px}.feature-side{gap:16px}.feature-main{min-height:370px}.mini-feature{min-height:177px;padding:20px}.mini-feature h2{font-size:1.35rem}.mini-feature .eyebrow{font-size:.49rem}.mini-link{font-size:.59rem;gap:5px}.mini-flower{right:32%;font-size:2.3rem}.mini-feature>img{width:40%;top:38px;height:140px;right:-20px}.mini-feature.peach>img{right:-22px;width:41%;height:145px}.feature-copy{left:22px;bottom:22px}.feature-copy h2{font-size:1.9rem}.feature-copy p{font-size:.76rem}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-intro .intro-link{font-size:.73rem}.game-layout{grid-template-columns:minmax(0,1fr)}.game-sidebar{grid-template-columns:1.4fr 1fr;gap:22px}.game-guide{max-width:none}.game-sidebar{grid-row:2}.control-card ul{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.game-spec{grid-template-columns:1fr;max-width:350px}.player-stage{aspect-ratio:16/10;min-height:340px}.footer-top{grid-template-columns:1fr 1fr}.footer-note{display:none}.contact-grid{gap:30px}.page-top h1{font-size:3.1rem}}
@media(max-width:760px){:root{--header:72px}.wrap,.header-inner{width:calc(100% - 40px)}.header-inner{gap:15px}.header-actions{gap:5px}.saved-link{border:0;padding:9px}.saved-link>span{display:none}.saved-link .icon{width:20px}.header-search{width:35px}.menu-toggle{display:grid;place-items:center;width:40px;height:40px}.brand{font-size:1.4rem}#primary-nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:0 25px;display:flex;flex-direction:column;align-items:stretch;gap:0;max-height:0;overflow:hidden;visibility:hidden;transition:max-height .24s ease,padding .24s ease,visibility .24s}#primary-nav.is-open{max-height:240px;padding:12px 25px 20px;visibility:visible}#primary-nav>a{font-size:.9rem;min-height:49px}#primary-nav>a:after{display:none}.home-intro{padding-top:28px;padding-bottom:24px}.home-intro h1{font-size:3.2rem}.home-intro p{font-size:.85rem}.home-intro .intro-link{display:none}.home-intro .eyebrow{font-size:.58rem}.headline-spark{right:-85px;top:35px;font-size:3rem}.featured-row{grid-template-columns:1fr}.feature-main{min-height:370px}.feature-side{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:14px}.mini-feature{min-height:185px;padding:19px 16px}.mini-feature h2{font-size:1.3rem}.mini-feature>img{width:45%;right:-25px;top:65px;height:135px;opacity:.9}.mini-feature.peach>img{width:40%;right:-20px;top:45px}.mini-feature .mini-link{font-size:.6rem;display:block;max-width:120px;line-height:1.4}.mini-flower{font-size:1.7rem;top:16px;right:14px}.mood-section{display:block;padding-block:25px}.mood-links{margin-top:15px;gap:9px}.mood-chip{padding:7px 14px;font-size:.74rem}.mood-label h2{font-size:1.2rem}.mood-chip .icon{display:none}.mood-chip>span{font-size:1rem}.section-space{padding-top:34px}.section-heading{gap:15px;align-items:center;margin-bottom:19px}.section-heading h2{font-size:1.6rem}.section-heading .eyebrow{font-size:.52rem}.section-heading .text-link{font-size:.65rem;gap:5px}.section-heading .text-link .icon{width:14px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}.card-copy h3{font-size:1rem}.card-copy p{font-size:.72rem;min-height:44px}.card-bottom{font-size:.52rem;gap:5px}.card-bottom>span:last-child{gap:2px}.card-bottom .icon{width:11px}.save-button{width:32px;height:32px;right:8px;top:8px}.category-label{font-size:.53rem}.play-note{margin-top:35px;grid-template-columns:85px 1fr;gap:15px;padding:25px 20px}.play-note h2{font-size:1.5rem}.play-note p{font-size:.78rem}.play-note .eyebrow{font-size:.49rem}.note-illustration{height:150px}.tile{width:46px;height:54px;font-size:1.6rem;border-radius:11px}.t1{left:0;top:8px}.t2{left:35px;top:48px;font-size:1rem}.t3{left:0;top:95px}.note-facts{display:none}.orbit{display:none}.language-note{margin-top:28px;margin-bottom:36px;gap:14px;align-items:flex-start;flex-wrap:wrap}.language-note>div{flex:1;min-width:200px}.language-note>a{margin-left:64px}.language-note p{font-size:.73rem}.page-top{padding-top:25px;padding-bottom:28px}.page-top h1{font-size:2.7rem}.page-top>p{font-size:.88rem}.breadcrumb{margin-bottom:24px;font-size:.65rem}.filter-bar{flex-wrap:wrap;gap:12px;padding-top:18px}.search-field{flex-basis:100%}.input-filter{flex:1;min-width:0}.input-filter select{width:100%}.category-tabs{gap:5px}.category-tabs a{font-size:.72rem;padding:8px 12px}.title-dot{font-size:1.5rem;margin-left:8px}.library-tabs{gap:8px}.library-tabs>button:not(.text-button){padding:10px 12px;font-size:.74rem}.library-tabs .text-button{margin-left:0;font-size:.75rem}.game-title-row{align-items:flex-start;gap:12px}.game-title-row h1{font-size:2rem}.game-title-row p{font-size:.83rem}.save-detail{padding:10px;min-height:42px;font-size:.72rem;gap:5px;margin-top:30px}.save-detail .icon{width:16px}.player-top{padding:10px;gap:8px}.player-top>span{font-size:.46rem;letter-spacing:.05em}.player-top .green-dot{margin-right:3px;width:5px;height:5px}.player button:not(.button){font-size:.58rem;padding:6px;gap:4px}.player-top .icon{width:13px;height:13px}.player-stage{min-height:330px;aspect-ratio:auto}.prompt-copy{padding:18px}.prompt-copy h2{font-size:2rem}.prompt-copy .button{font-size:.75rem;padding:13px 16px}.prompt-copy p{font-size:.61rem}.prompt-tag{font-size:.51rem}.player-bottom{align-items:flex-start;padding:10px;gap:8px}.player-bottom p{font-size:.57rem}.player-bottom>div{gap:4px}.game-sidebar{grid-template-columns:1fr}.control-card ul{grid-template-columns:1fr 1fr;gap:0 20px}.control-card li{font-size:.74rem}.control-card .game-spec{max-width:none}.game-title-row>div{min-width:0}.game-guide h2{font-size:1.5rem}.game-guide>p{font-size:.87rem}.game-guide{padding-top:28px}.tip-box{padding:20px;gap:14px}.tip-box p{font-size:.8rem}.info-page{padding-top:25px;padding-bottom:45px}.info-page h1{font-size:2.8rem}.info-intro{font-size:.95rem;margin-top:19px}.prose{margin-top:30px}.prose h2{font-size:1.35rem}.prose p,.prose li{font-size:.87rem}.contact-grid{grid-template-columns:1fr;gap:15px}.contact-form{padding:23px}.contact-form input,.contact-form textarea,.contact-form select{font-size:16px}.footer-top{gap:28px;padding-block:30px}.footer-top .brand{font-size:1.2rem;gap:7px}.footer-top .brand img{width:28px;height:28px}.footer-top p{font-size:.66rem}.footer-links{font-size:.68rem;gap:9px 17px}.footer-bottom{font-size:.59rem;flex-wrap:wrap;gap:13px}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:390px){.wrap,.header-inner{width:calc(100% - 30px)}.brand{font-size:1.25rem;gap:7px}.brand img{width:30px;height:30px}.header-actions{gap:0}.home-intro h1{font-size:2.85rem}.headline-spark{right:-55px;font-size:2.2rem;top:30px}.feature-main{min-height:340px}.feature-copy h2{font-size:1.85rem}.feature-copy{left:20px;right:20px}.mini-feature{padding:16px 12px;min-height:170px}.mini-feature h2{font-size:1.15rem}.mini-feature .eyebrow{font-size:.43rem}.mini-feature .mini-link{font-size:.54rem;max-width:100px}.card-copy{padding:13px 11px}.card-copy h3{font-size:.91rem}.card-copy p{font-size:.67rem;min-height:42px}.card-bottom>span:first-child{font-size:.49rem}.card-bottom{margin-top:10px}.section-heading h2{font-size:1.4rem}.section-heading .text-link{font-size:.58rem}.mood-chip{padding-inline:11px;font-size:.68rem}.play-note{grid-template-columns:60px 1fr;padding:23px 15px;gap:17px}.tile{width:39px;height:45px}.t2{left:22px}.player-top>span{max-width:85px;font-size:.43rem}.player-top>div{gap:4px}.player button:not(.button){font-size:.53rem}.player-stage{min-height:325px}.game-title-row h1{font-size:1.8rem}.save-detail{font-size:.62rem;gap:4px}.game-grid{gap:15px 11px}.footer-top{grid-template-columns:1fr;gap:24px}.footer-links{font-size:.76rem;gap:10px}.control-card ul{grid-template-columns:1fr}.game-sidebar{gap:16px}.page-top h1{font-size:2.3rem}.info-page h1{font-size:2.45rem}.contact-email{font-size:.85rem}.search-field input{font-size:.78rem}.library-tabs>button:not(.text-button){font-size:.68rem;padding:10px 9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.game-card,.card-image img,.button,.mini-feature img,#primary-nav,#primary-nav>a:after,.text-link .icon{transition:none!important}.game-card:hover{transform:none}.feature-main:hover>img,.game-card:hover .card-image img{transform:none}}
/* Keep the decorative spark inside the headline at the narrowest widths. */
@media(max-width:390px){.home-intro>div{width:100%;min-width:0}.headline-spark{right:4px;top:0}}
/* A phone held sideways needs its height for the game, not duplicate chrome.
   Reload/unload remain available immediately after closing the expanded view. */
@media(max-height:500px) and (orientation:landscape){.player.is-expanded .player-top{min-height:36px;padding:3px 10px}.player.is-expanded .player-top>div{gap:8px}.player.is-expanded .player-top button:not(.button){min-height:30px;padding:3px 9px}.player.is-expanded .player-bottom{display:none}}
/* Saved state shares one heart treatment across cards and detail controls.
   Keep the neutral surface so the red silhouette remains easy to recognize. */
.save-button[aria-pressed=true]{background:#fef4f7;color:var(--ink)}
.save-detail[aria-pressed=true]{background:#fef4f7;color:var(--ink)}
[data-save][aria-pressed=true] .icon{fill:#c93543;stroke:#c93543}
/* One button interaction family: tactile lift/press like Dayhop, adapted to
   this site's quiet palette. Layout sizes and game iframe nodes never move. */
button,.button,.saved-link,.header-search,.mood-chip,.category-tabs a{
  transition:transform 180ms cubic-bezier(.2,.7,.3,1),box-shadow 180ms ease,background-color 180ms ease,border-color 180ms ease,color 180ms ease;
}
button .icon,.button .icon,.saved-link .icon,.mood-chip .icon{transform-origin:center;transition:transform 180ms ease}
@media(hover:hover) and (pointer:fine){
  button:not(:disabled):hover,.button:hover,.saved-link:hover,.header-search:hover{transform:translateY(-2px);box-shadow:0 4px 0 #a8486620,0 7px 14px #a8486610}
  .button-green:hover{box-shadow:0 4px 0 #80384e,0 7px 14px #a8486618}
  .button-yellow:hover{box-shadow:0 4px 0 #dfbbc6,0 7px 14px #a8486618}
  .button:not([data-save]):hover>.icon:last-child,.mood-chip:hover>.icon{transform:translateX(3px)}
  [data-save]:hover .icon{transform:scale(1.15) rotate(-7deg)}
  [data-save]:hover{border-color:#ebc5d1;box-shadow:0 3px 0 #ae526f22,0 6px 13px #ae526f15}
  .category-tabs a:hover,.mood-chip:hover{transform:translateY(-2px);box-shadow:0 3px 0 #a8486618}
  .player button:not(:disabled):hover{background:#ffffff24;box-shadow:0 3px 0 #0003}
}
button:not(:disabled):active,.button:active,.saved-link:active,.header-search:active,.mood-chip:active,.category-tabs a:active{transform:translateY(1px) scale(.97);box-shadow:0 1px 0 #a8486620;transition-duration:70ms}
[data-save]:active .icon{transform:scale(.82)}
button:disabled{transform:none;box-shadow:none}
@media(prefers-reduced-motion:reduce){
  button,.button,.saved-link,.header-search,.mood-chip,.category-tabs a,button .icon,.button .icon,.saved-link .icon,.mood-chip .icon{transition:none!important}
  button:not(:disabled):hover,button:not(:disabled):active,.button:hover,.button:active,.saved-link:hover,.saved-link:active,.header-search:hover,.header-search:active,.mood-chip:hover,.mood-chip:active,.category-tabs a:hover,.category-tabs a:active,[data-save]:hover .icon,[data-save]:active .icon,.button:hover>.icon:last-child{transform:none}
}

/* Peach candy scrollbar: standard colors plus WebKit shaping. A wide hit area keeps
   dragging comfortable; forced colors and native overlay scrollbars remain usable. */
:root{color-scheme:light;--scroll-track:#fce8ee;--scroll-thumb:#ecbbca;--scroll-hover:#be6c86;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:auto}
*{scrollbar-color:var(--scroll-thumb) var(--scroll-track)}
::-webkit-scrollbar{width:14px;height:14px}
::-webkit-scrollbar-track{background:var(--scroll-track);border-radius:12px}
::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:3px solid var(--scroll-track);border-radius:14px;min-height:48px}
::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}
::-webkit-scrollbar-thumb:active{background:#a84866}
::-webkit-scrollbar-corner{background:var(--scroll-track)}
::selection{background:#f9d5e0;color:#592b39}
@media(forced-colors:active){:root,*{scrollbar-color:auto}::-webkit-scrollbar-thumb{background:ButtonText;border-color:Canvas}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:Canvas}}
/* Candy stickers: the surface and its offset backing share the same organic
   silhouette. Keep overflow visible on the card so keyboard focus is not cut. */
.game-card{
  --sticker-shape:29px 19px 32px 18px / 23px 29px 21px 30px;
  border-radius:var(--sticker-shape);
  border:1px solid #f3cad6;
  background:#fff8fa;
  box-shadow:3px 5px 0 #f9dce5;
  isolation:isolate;
}
.game-card:nth-child(3n+2){--sticker-shape:19px 32px 20px 29px / 30px 22px 31px 20px}
.game-card:nth-child(3n){--sticker-shape:32px 21px 28px 20px / 22px 31px 20px 29px}
.card-link{border-radius:inherit}
.card-image{border-radius:inherit;border-bottom-left-radius:15px 8px;border-bottom-right-radius:21px 10px;margin:6px 6px 0;aspect-ratio:1.6}
.card-copy{padding-top:18px;padding-bottom:16px}
.card-bottom{border-top:1px dashed #f3d4de}
.game-card .category-label{border-radius:8px 5px 8px 4px}
.game-card .save-button{top:15px;right:15px;border:1px solid #f2d6df;box-shadow:0 2px 0 #ebc4d135}
.game-card .play-corner{border:1px solid #f2d6df}
@media(hover:hover) and (pointer:fine){
  .game-card:hover{transform:translateY(-5px) rotate(-.35deg);box-shadow:4px 8px 0 #f6d5e0,0 13px 22px #88415712;border-color:#e8b9c8}
  .game-card:nth-child(even):hover{transform:translateY(-5px) rotate(.35deg)}
}
@media(max-width:760px){
  .game-card{--sticker-shape:23px 16px 25px 16px / 19px 24px 17px 23px;box-shadow:2px 4px 0 #f9dce5}
  .game-card:nth-child(3n+2){--sticker-shape:16px 25px 17px 23px / 23px 18px 24px 17px}
  .game-card:nth-child(3n){--sticker-shape:25px 17px 23px 16px / 18px 24px 17px 23px}
  .card-image{margin:5px 5px 0}
  .game-card .save-button{top:11px;right:11px}
}
@media(prefers-reduced-motion:reduce){.game-card:hover,.game-card:nth-child(even):hover{transform:none}}
/* Featured scrapbook: photo mounts, translucent tape and a paper ticket.
   Decorations are pseudo-elements with no pointer targets or reading content. */
.featured-row{gap:27px;padding:12px 0 10px;align-items:stretch}
.feature-main{border:9px solid #fff6f9;border-bottom-width:12px;border-radius:34px 24px 31px 23px;min-height:430px;overflow:visible;box-shadow:0 0 0 1px #f3d2dc,5px 7px 0 #f8dce5;isolation:isolate}
.feature-main>img,.feature-shade{border-radius:25px 15px 20px 14px}
.feature-main>img{object-position:center 40%}
.feature-shade{background:linear-gradient(180deg,#50273430,transparent 42%,#50273420)}
.feature-main::before{content:"";position:absolute;z-index:4;top:-19px;left:35%;width:104px;height:31px;background:repeating-linear-gradient(90deg,#f3c5d499 0 5px,#fad5e180 5px 10px);border:1px solid #f3c8d680;transform:rotate(-5deg);clip-path:polygon(3% 0,97% 0,100% 20%,97% 40%,100% 60%,97% 80%,100% 100%,0 100%,3% 80%,0 60%,3% 40%,0 20%);pointer-events:none}
.feature-main::after{content:"✳";position:absolute;right:20px;bottom:22px;z-index:3;width:49px;height:49px;display:grid;place-items:center;background:#fac8d8;color:#9c4762;border:2px dashed #c86a87;border-radius:50%;font-size:30px;line-height:1;transform:rotate(13deg);pointer-events:none}
.feature-kicker{padding:19px 20px;color:#fff6f9;text-shadow:0 1px 5px #421e2990}
.feature-kicker>span{border-radius:7px 11px 6px 10px;transform:rotate(4deg);text-shadow:none;background:#feecf2;box-shadow:2px 2px 0 #6a33441a}
.feature-copy{left:19px;bottom:19px;right:auto;width:min(80%,510px);padding:20px 24px 19px;background:#fdd9e4;color:var(--ink);border:1px solid #f0bfce;border-radius:17px 24px 18px 10px;box-shadow:3px 4px 0 #89425825}
.feature-copy::before{content:"";position:absolute;left:13px;right:13px;top:8px;border-top:1px dashed #e7b6c6;pointer-events:none}
.feature-copy h2{font-size:2.15rem;margin-top:7px;letter-spacing:-.045em}
.feature-copy p{color:#77394c;font-size:.8rem;margin-top:8px}
.feature-sticker{font-size:.59rem;letter-spacing:.08em;color:#8c435a}
.feature-copy .button{background:#fef1f5;border:1px solid #e8b5c5;box-shadow:0 3px 0 #c6728c50;margin-top:15px;padding:10px 17px;min-height:41px;color:#6b3345}
.feature-main:hover>img{transform:none}
.feature-side{gap:24px;padding:3px 1px}
.mini-feature{border:7px solid #fff6f9;border-radius:23px 17px 25px 16px;min-height:196px;overflow:visible;padding:23px 18px;box-shadow:0 0 0 1px #f3d2dc,4px 5px 0 #f8dce5;isolation:isolate}
.mini-feature::before{content:"";position:absolute;z-index:4;top:-15px;left:24px;width:66px;height:23px;background:#f5c7d5aa;border-inline:2px dashed #fef0f570;transform:rotate(-9deg);pointer-events:none}
.mini-feature.peach::before{left:auto;right:35px;background:#f7d9e2ba;transform:rotate(8deg)}
.mini-feature>div{max-width:56%}
.mini-feature>img{right:13px;top:21px;width:39%;height:calc(100% - 37px);border:5px solid #fef7f9;border-bottom-width:18px;border-radius:5px;object-fit:cover;transform:rotate(7deg);box-shadow:2px 4px 8px #7b3b4f26;transition:transform .28s ease,box-shadow .28s ease}
.mini-feature.peach>img{right:13px;top:17px;width:39%;height:calc(100% - 33px);transform:rotate(-6deg)}
.mini-feature h2{font-size:1.6rem;line-height:1.12;letter-spacing:-.04em}
.mini-feature .eyebrow{font-size:.52rem;margin-bottom:10px}
.mini-link{font-size:.65rem;line-height:1.5;gap:7px;margin-top:16px;border-bottom:1px dashed #bd768c;padding-bottom:3px}
.mini-flower{right:39%;top:auto;bottom:13px;z-index:3;color:#b5627c;font-size:1.9rem;transform:rotate(10deg)}
@media(hover:hover) and (pointer:fine){
 .feature-main:hover{box-shadow:0 0 0 1px #eabdcb,5px 9px 0 #f6d5e0}
 .mini-feature:hover>img{transform:translateY(-4px) rotate(3deg);box-shadow:3px 7px 10px #7b3b4f2b}
 .mini-feature.peach:hover>img{transform:translateY(-4px) rotate(-2deg)}
}
@media(max-width:1150px){.featured-row{gap:23px}.feature-main{min-height:414px}.feature-copy{width:85%;padding:19px}.feature-copy h2{font-size:1.85rem}.mini-feature{padding:20px 14px}.mini-feature h2{font-size:1.4rem}.mini-feature>img,.mini-feature.peach>img{width:38%;right:10px}}
@media(max-width:760px){
 .featured-row{gap:23px;padding-top:12px}
 .feature-main{min-height:385px;border-width:7px;border-bottom-width:10px}
 .feature-main::before{width:85px;height:27px;top:-17px;left:37%}
 .feature-main::after{width:35px;height:35px;font-size:23px;right:11px;bottom:15px;border-width:1px}
 .feature-kicker{padding:15px 12px;font-size:.48rem}
 .feature-copy{left:10px;bottom:13px;width:calc(100% - 55px);padding:19px 15px 15px}
 .feature-copy h2{font-size:1.8rem}.feature-copy p{font-size:.72rem}.feature-sticker{font-size:.52rem}
 .feature-copy .button{font-size:.71rem;min-height:38px;margin-top:12px;padding:9px 14px}
 .feature-side{grid-template-columns:1fr;gap:24px;padding:0 2px}
 .mini-feature{min-height:185px;padding:25px 20px;border-width:7px;border-radius:23px 17px 25px 16px}
 .mini-feature>div{max-width:54%}.mini-feature h2{font-size:1.65rem}
 .mini-feature .eyebrow{font-size:.52rem}.mini-feature .mini-link{font-size:.66rem;display:inline-flex;max-width:none}
 .mini-feature>img,.mini-feature.peach>img{width:36%;height:calc(100% - 25px);top:12px;right:13px;opacity:1}
 .mini-flower{right:39%;top:auto;bottom:12px;font-size:1.8rem}
}
@media(max-width:390px){.feature-main{min-height:365px}.feature-copy h2{font-size:1.55rem}.feature-copy p{font-size:.66rem}.feature-copy{width:calc(100% - 47px);padding-inline:13px}.mini-feature{padding:23px 14px;min-height:175px}.mini-feature h2{font-size:1.4rem}.mini-feature .mini-link{font-size:.59rem}.mini-feature .eyebrow{font-size:.47rem}}
@media(prefers-reduced-motion:reduce){.mini-feature>img{transition:none}.mini-feature:hover>img{transform:rotate(7deg)}.mini-feature.peach:hover>img{transform:rotate(-6deg)}}
/* Separate the featured photograph from its caption ticket. Both remain one
   semantic link, while the image keeps its native ratio without text overlap. */
.feature-main{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;min-height:0;align-content:start;background:#fff6f9}
.feature-main>img{position:relative;inset:auto;grid-area:1/1;width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;border-radius:25px 15px 17px 13px}
.feature-main>.feature-shade{display:none}
.feature-main>.feature-kicker{grid-area:1/1;align-self:start;z-index:2;pointer-events:none}
.feature-main>.feature-copy{position:relative;left:auto;right:auto;bottom:auto;width:auto;grid-area:2/1;margin:12px 5px 2px;padding:20px 24px;box-shadow:2px 3px 0 #89425818}
.feature-main::after{bottom:22px;right:21px;width:38px;height:38px;font-size:25px}
.feature-copy{padding-right:73px!important}
/* The right pair shares the main card's total height on wider screens. */
.featured-row>.feature-side{grid-template-rows:1fr 1fr}
@media(max-width:760px){
 .feature-main{min-height:0}
 .feature-main>img{border-radius:25px 15px 17px 13px}
 .feature-main>.feature-copy{margin:10px 3px 0;padding:19px 15px 16px}
 .feature-main::after{bottom:20px;right:14px;width:31px;height:31px;font-size:21px}
 .feature-copy{padding-right:54px!important}
}

/* Strawberry milkshake: explicit identity tokens override earlier themes. */
:root{--paper:#fff2f6;--ink:#502c3b;--muted:#795365;--green:#b82f65;--mint:#ffe5ee;--yellow:#ffd3e3;--peach:#ffeaf2;--line:#f6d5e2;--scroll-track:#ffedf5;--scroll-thumb:#d76794;--scroll-hover:#b82f65}
body,.site-header{background:var(--paper)}
.home-intro h1>span:not(.headline-spark){color:#be3e74}
.game-card,.feature-main,.mini-feature{border-color:#f2cbdb}
.game-card{background:#fff8fb;box-shadow:3px 5px 0 #f8d5e3}
.button-green{background:#b82f65;color:#fff}
.button-green:hover{background:#9f2455}
.button-yellow{background:#ffd3e3;color:#502c3b}
.feature-copy .button{background:#fff5fa;color:#71334d;border-color:#ebbdd0}
.feature-copy{background:#ffe0ec;color:#502c3b}
.feature-copy p{color:#75485b}
.mini-feature.mint{background:#ffe5f0}
.mini-feature.peach{background:#ffedf4}
.site-footer{background:#ffeaf2}
.play-note{background:#ffeaf2}
.feature-main::before{background:repeating-linear-gradient(90deg,#f5bed599 0 5px,#ffdbeb99 5px 10px)}
.feature-main::after{background:#ffe4ef;color:#a23e69;border-color:#cf769a}
::selection{background:#facde1;color:#502c3b}

/* A lighter milkshake: near-white pink fields, berry actions retained. */
:root{--paper:#fff5f8;--mint:#ffedf4;--yellow:#ffd7e6;--peach:#fff0f5;--line:#efd4df;--scroll-track:#fff0f6;--scroll-thumb:#dda2ba;--scroll-hover:#bd6489}
.site-footer,.play-note{background:#ffedf3}
.feature-copy{background:#ffe5ef}
.mini-feature.mint{background:#ffe8f1}
.mini-feature.peach{background:#fff0f5}
.game-card{background:#fffdfd;box-shadow:3px 5px 0 #f5dce6}
.game-card:hover{box-shadow:4px 8px 0 #efd1de,0 13px 22px #87504212}
/* Decorative background is noninteractive and never overlays content or frames.
   Transparent page gaps reveal it; solid cards keep text and gameplay clear. */
body{position:relative;isolation:isolate;background:transparent}
.candy-background{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
@media(hover:hover) and (pointer:fine){
 body{cursor:url('/assets/brand/candy-cursor.svg') 5 3,auto}
 a,button,select,summary,[role=button]{cursor:url('/assets/brand/candy-pointer.svg') 13 4,pointer}
 input,textarea,[contenteditable=true]{cursor:text}
 button:disabled,select:disabled{cursor:not-allowed}
 iframe{cursor:auto}
}
@media(forced-colors:active){.candy-background{display:none}}
/* Audit repairs: touch targets must remain comfortable and the open menu must
   fit a short landscape viewport instead of extending below its reachable area. */
@media(hover:none),(pointer:coarse){
 .game-card .save-button{width:44px;height:44px;top:10px;right:10px}
 .game-card .save-button .icon{width:20px;height:20px}
 .player button:not(.button){min-height:44px;min-width:44px}
}
@media(max-width:760px){
 #primary-nav.is-open{max-height:calc(100dvh - var(--header));overflow-y:auto;overscroll-behavior:contain}
 .header-search,.menu-toggle,.saved-link{min-width:44px;min-height:44px}
}
@media(max-width:390px){.header-inner{gap:5px}.header-actions{gap:0}.brand{font-size:1.18rem}}
/* Text enlargement may require a second header row; never clip navigation. */
@media(max-width:760px){.header-inner{flex-wrap:wrap;row-gap:4px;padding-block:8px}.header-inner>.brand{max-width:100%;white-space:normal}.header-inner>.brand>span{overflow-wrap:anywhere}.header-actions{flex-shrink:0}#primary-nav.is-open{max-height:calc(100dvh - 150px)}}
/* Enlarged headings may contain a word wider than a narrow phone. */
h1,h2,h3{overflow-wrap:anywhere}
/* Homepage 2026-10-26: a curated game room using the established strawberry
   palette. Styles stay scoped so catalogue, player and legal layouts do not drift. */
.home-room{padding-bottom:70px}.home-welcome{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:46px 0 28px}.home-welcome h1{font-size:clamp(2.5rem,5vw,4.3rem);line-height:1.06;letter-spacing:-.055em;margin:16px 0}.home-welcome h1 span{color:#b83c70}.home-welcome p{max-width:540px;color:var(--muted);line-height:1.7;font-size:1rem}.home-welcome-actions{display:flex;flex-direction:column;align-items:flex-start;gap:17px;flex-shrink:0}.home-welcome-actions>span{font-size:.73rem;color:var(--muted)}.home-jumps{display:flex;flex-wrap:wrap;gap:9px;padding:0 0 34px}.home-jumps a{padding:10px 17px;background:#fffdfd;border:1px solid var(--line);border-radius:30px;font-size:.78rem;font-weight:650}.home-jumps a:hover{background:#ffe5ef}.home-room section[id]{scroll-margin-top:120px}
.home-spotlights{display:grid;grid-template-columns:1.45fr 1fr;gap:30px;padding:12px 0 25px;align-items:stretch}.home-photo{display:block;position:relative;background:#fffdfd;border:1px solid #ebcbd9;border-radius:29px 20px 26px 18px;padding:13px;box-shadow:4px 6px 0 #f2dce5;color:var(--ink);text-decoration:none;min-width:0}.home-photo-main::before{content:'';position:absolute;top:-14px;left:35%;width:100px;height:27px;transform:rotate(-5deg);background:repeating-linear-gradient(90deg,#efbed6bb 0 7px,#ffdce9bb 7px 14px);z-index:2}.home-photo>img{display:block;width:100%;aspect-ratio:8/5;object-fit:contain;border-radius:19px 13px 17px 12px;background:#fff5f8}.home-photo-label{display:block;padding:8px 8px 14px;font-size:.64rem;font-weight:750;letter-spacing:.1em}.home-photo-caption{padding:22px 15px 16px}.home-photo-caption h2{font-size:2.1rem;letter-spacing:-.04em;line-height:1.15;margin:10px 0}.home-photo-caption p{font-size:.87rem;line-height:1.6;color:var(--muted);margin-bottom:18px}.home-photo-pair{display:grid;gap:24px;grid-template-rows:1fr 1fr}.home-photo-small{display:grid;grid-template-columns:44% minmax(0,1fr);gap:8px;align-items:center;transform:rotate(1deg)}.home-photo-small:nth-child(2){transform:rotate(-1deg)}.home-photo-small .home-photo-caption{padding:15px 8px}.home-photo-small h2{font-size:1.5rem}.home-photo-small .eyebrow{font-size:.53rem;line-height:1.7}.home-photo-small p{font-size:.78rem;margin-bottom:12px}.home-photo-small .text-link{font-size:.73rem}.home-photo:hover{box-shadow:5px 9px 0 #eecddd}.home-photo:focus-visible{outline:3px solid #b82f65;outline-offset:5px}
.home-moods{display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:center;padding:35px 0 38px;border-bottom:1px solid var(--line)}.home-moods h2{font-size:1.9rem;letter-spacing:-.04em;margin:10px 0}.home-moods p{color:var(--muted);font-size:.85rem}.home-mood-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.home-mood-grid>a{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:17px 22px 15px 20px;background:#fffdfd;padding:16px;text-decoration:none}.home-mood-grid>a>span{font-size:1.65rem;color:#ba4b7a}.home-mood-grid strong{display:block;font-size:.88rem}.home-mood-grid small{display:block;color:var(--muted);font-size:.7rem;margin-top:3px}.home-mood-grid .icon{margin-left:auto;width:15px;flex-shrink:0}.home-mood-grid a:hover{background:#ffeaf2}
.home-shelf{padding-top:54px}.home-shelf-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px}.home-shelf-heading h2{font-size:2rem;letter-spacing:-.04em;line-height:1.2;margin:10px 0}.home-shelf-heading p{max-width:680px;color:var(--muted);font-size:.9rem;line-height:1.6}.home-shelf-heading>.text-link{flex-shrink:0;padding-bottom:7px}.home-guide-strip{display:flex;gap:23px;align-items:center;background:#ffebf3;border:1px dashed #dfaec2;border-radius:27px 18px 24px 18px;padding:28px 30px;margin-top:42px}.home-guide-strip>span{font-size:3rem;color:#c16d90}.home-guide-strip h2{font-size:1.3rem;margin:0 0 10px;letter-spacing:-.02em}.home-guide-strip p{max-width:690px;color:var(--muted);font-size:.86rem;line-height:1.7;margin:0}.home-guide-strip>a{margin-left:auto;flex-shrink:0}
.home-play-guide{display:grid;grid-template-columns:1fr 1.6fr;gap:50px;margin-top:60px;padding:38px;background:#ffedf3;border:1px solid var(--line);border-radius:30px 20px 35px 20px}.home-guide-intro h2{font-size:2rem;line-height:1.15;letter-spacing:-.04em;margin:12px 0}.home-guide-intro p{font-size:.87rem;color:var(--muted);line-height:1.7;margin-bottom:20px}.home-guide-steps{display:grid;gap:18px}.home-guide-steps article{position:relative;padding-left:48px}.home-guide-steps article>span{position:absolute;left:0;top:2px;font-size:.75rem;font-weight:750;padding:8px;background:#fffdfd;border-radius:50%;color:#b5366b}.home-guide-steps h3{font-size:1rem;margin:0 0 7px}.home-guide-steps p{font-size:.85rem;line-height:1.65;color:var(--muted);margin:0}.home-last-stop{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:45px 0 0}.home-last-stop h2{font-size:1.9rem;letter-spacing:-.04em;margin:12px 0}.home-last-stop p{font-size:.86rem;color:var(--muted);line-height:1.65}.home-last-stop .button{flex-shrink:0}
@media(max-width:1050px){.home-spotlights{grid-template-columns:1.2fr 1fr;gap:20px}.home-photo-small{grid-template-columns:1fr;gap:0}.home-photo-small>img{aspect-ratio:2.6}.home-photo-small .home-photo-caption{padding:12px 8px}.home-photo-small h2{font-size:1.25rem;margin:6px 0}.home-photo-small p{margin:0 0 6px}.home-moods{grid-template-columns:1fr}.home-guide-strip{flex-wrap:wrap}.home-guide-strip>div{flex:1;min-width:200px}.home-guide-strip>a{margin-left:65px}.home-shelf-heading{align-items:flex-start}.home-shelf-heading>.text-link{max-width:150px}.home-play-guide{gap:25px;padding:30px}}
@media(max-width:760px){.home-room{padding-bottom:40px}.home-welcome{display:block;padding:30px 0 22px}.home-welcome h1{font-size:clamp(2.4rem,8vw,3.5rem)}.home-welcome p{font-size:.9rem}.home-welcome-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px;margin-top:22px}.home-welcome-actions>span{flex-basis:100%;font-size:.7rem}.home-jumps{gap:8px;padding-bottom:25px}.home-jumps a{padding:11px 13px;font-size:.72rem}.home-spotlights{grid-template-columns:1fr;gap:25px}.home-photo-pair{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:16px}.home-photo-caption{padding:18px 10px 10px}.home-photo-caption h2{font-size:1.8rem}.home-photo-small{padding:9px}.home-photo-small>img{aspect-ratio:8/5}.home-photo-small .home-photo-caption{padding:12px 5px}.home-photo-small h2{font-size:1.2rem}.home-photo-small p{font-size:.75rem}.home-moods{padding-block:25px;gap:17px}.home-mood-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-mood-grid>a{padding:13px 11px;gap:10px}.home-mood-grid strong{font-size:.8rem}.home-moods h2{font-size:1.65rem}.home-shelf{padding-top:35px}.home-shelf-heading{display:block;margin-bottom:18px}.home-shelf-heading h2{font-size:1.65rem}.home-shelf-heading p{font-size:.83rem;margin-bottom:12px}.home-shelf-heading>.text-link{max-width:none;font-size:.78rem}.home-guide-strip{margin-top:30px;padding:22px 18px;gap:13px}.home-guide-strip>span{font-size:2rem}.home-guide-strip h2{font-size:1.15rem}.home-guide-strip p{font-size:.8rem}.home-guide-strip>a{margin-left:0;font-size:.78rem}.home-play-guide{grid-template-columns:1fr;margin-top:38px;padding:24px 20px;gap:25px}.home-guide-intro h2{font-size:1.75rem}.home-guide-intro h2 br{display:none}.home-guide-steps article{padding-left:43px}.home-guide-steps p{font-size:.81rem}.home-last-stop{display:block;padding-top:32px}.home-last-stop h2{font-size:1.6rem}.home-last-stop .button{margin-top:15px}}
@media(max-width:420px){.home-photo-pair{grid-template-columns:1fr;gap:20px}.home-photo-small{grid-template-columns:40% minmax(0,1fr);gap:8px}.home-photo-small h2{font-size:1.15rem}.home-photo-small>img{aspect-ratio:1;object-fit:contain}.home-photo-small .eyebrow{font-size:.49rem}.home-welcome-actions{align-items:flex-start;flex-direction:column}.home-welcome-actions>span{flex-basis:auto}.home-mood-grid>a>span{font-size:1.3rem}.home-mood-grid .icon{width:12px}.home-guide-strip>div{min-width:0;flex-basis:calc(100% - 50px)}}
@media(prefers-reduced-motion:reduce){.home-photo-small,.home-photo-small:nth-child(2){transform:none}}
/* Allow enlarged discovery labels to wrap without pushing a narrow viewport. */
.home-room .text-link{white-space:normal;max-width:100%;flex-wrap:wrap}.home-welcome-actions{min-width:0}.home-room .button{max-width:100%;white-space:normal}.home-room .text-link .icon{flex-shrink:0}
@media(max-width:420px){.home-photo-small{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}.home-mood-grid>a{min-width:0;flex-wrap:wrap}.home-mood-grid>a>div{min-width:0}}
@media(max-width:760px){.home-guide-strip>a{flex-shrink:1;flex-basis:100%;min-width:0}}
/* Complete collection: an indexed scrapbook, scoped away from home cards and
   category pages. Chapter rows stay in normal document flow at every width. */
.game-album{padding-bottom:60px}.album-heading{padding-top:28px}.album-heading .breadcrumb{margin-bottom:25px}.album-title-line{display:flex;align-items:center;justify-content:space-between;gap:30px}.album-heading h1{font-size:clamp(2.7rem,5.2vw,4.6rem);line-height:1.03;letter-spacing:-.055em;margin:14px 0 0}.album-heading h1 em{font-family:Georgia,serif;font-weight:400;color:#b33e71}.album-heading>p{max-width:650px;font-size:.93rem;line-height:1.7;color:var(--muted);margin:21px 0 30px}.album-stamp{display:flex;align-items:center;gap:17px;border:2px dashed #d59ab4;border-radius:45% 50% 43% 48%;padding:25px 30px;transform:rotate(5deg);color:#a94370;flex-shrink:0}.album-stamp strong{font-size:3.2rem;line-height:1;font-family:Georgia,serif}.album-stamp span{font-size:.75rem;line-height:1.5}.album-toolbar{display:flex;gap:18px;align-items:flex-end;background:#fffdfd;border:1px solid var(--line);border-radius:18px;padding:18px 22px;box-shadow:0 4px 0 #f5e2eb}.album-toolbar>label:not(.album-search){display:flex;flex-direction:column;gap:7px;font-size:.68rem;font-weight:650;color:var(--muted);min-width:155px}.album-toolbar select{min-height:42px;border:0;border-bottom:1px solid #dfb9cb;background:#fff7fa;border-radius:6px;padding:8px 28px 8px 10px;color:var(--ink);width:100%;font-size:.8rem}.album-search{display:flex;align-items:center;gap:12px;flex:1;min-width:0;min-height:49px}.album-search input{border:0;background:transparent;width:100%;min-width:0;font-size:.94rem;padding:12px 0;color:var(--ink)}.album-search input:focus{outline-offset:4px}.album-search .icon{flex-shrink:0;width:21px}.album-index{display:flex;align-items:center;flex-wrap:wrap;gap:9px 20px;padding:24px 0;border-bottom:1px solid var(--line)}.album-index>span{font-size:.58rem;letter-spacing:.12em;color:var(--muted);margin-right:7px}.album-index a{display:flex;align-items:center;gap:8px;min-height:40px;font-size:.79rem;text-decoration:none}.album-index a b{font-size:.6rem;font-weight:500;color:#ad5b7f}.album-index a small{color:var(--muted);font-size:.62rem}.album-index a:hover{color:#b82f65;text-decoration:underline;text-underline-offset:5px}.album-results{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0 4px}.album-results p{font-size:.78rem;color:var(--muted);margin:0}.album-chapter{position:relative;margin-top:25px;padding:28px 30px 32px;background:#fffdfb;border:1px solid #ecd4de;border-radius:5px 24px 24px 5px;box-shadow:5px 5px 0 #f1dfe8;scroll-margin-top:110px}.album-chapter::before{content:'';position:absolute;left:13px;top:0;bottom:0;border-left:1px dashed #ecc6d8;pointer-events:none}.album-chapter-heading{display:flex;gap:20px;align-items:center;margin-bottom:23px;padding:0 7px 20px;border-bottom:1px solid #f0dfe6}.album-chapter-number{font-family:Georgia,serif;font-size:3.3rem;color:#e2b5c9;font-style:italic;line-height:1}.album-chapter-heading h2{font-size:1.85rem;letter-spacing:-.035em;margin:7px 0}.album-chapter-heading p{font-size:.8rem;color:var(--muted);line-height:1.5;margin:0}.album-chapter-count{margin-left:auto;align-self:flex-end;flex-shrink:0;font-size:.72rem;color:var(--muted);padding-bottom:3px}.album-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px}.album-entry{position:relative;min-width:0;border-bottom:1px dashed #ead1dd;padding:16px 0 22px}.album-entry-link{display:grid;grid-template-columns:minmax(0,43%) minmax(0,1fr);gap:20px;color:var(--ink);text-decoration:none;align-items:center;padding-right:2px;min-height:145px}.album-snapshot{position:relative;background:#fff;padding:7px 7px 23px;border:1px solid #ecd9e0;box-shadow:1px 3px 5px #703e5310;transform:rotate(-2deg);transition:transform .2s ease}.album-entry:nth-child(even) .album-snapshot{transform:rotate(2deg)}.album-snapshot img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;background:#fff5f8;border-radius:3px}.album-number{position:absolute;right:9px;bottom:6px;font-size:.6rem;color:#a0788a;letter-spacing:.1em;font-family:monospace}.album-entry-copy{min-width:0;padding-right:28px}.album-language{font-size:.61rem;color:#9c5e7d}.album-entry h3{font-size:1.1rem;line-height:1.25;letter-spacing:-.02em;margin:7px 0}.album-entry p{font-size:.76rem;line-height:1.6;color:var(--muted);margin:0 0 10px}.album-controls{display:block;font-size:.6rem;color:var(--muted);margin-bottom:10px}.album-play{display:inline-flex;align-items:center;gap:9px;font-size:.68rem;color:#ab3469;font-weight:650}.album-play .icon{width:14px;height:14px}.album-save{position:absolute;right:0;top:15px;display:grid;place-items:center;width:40px;height:40px;background:#fff1f6;border:1px solid #efd6e1;border-radius:50%;color:#9d5574}.album-save .icon{width:18px;height:18px}.album-save[aria-pressed=true]{color:#c93543;background:#fff0f2}.album-save[aria-pressed=true] .icon{fill:#c93543}.album-entry-link:focus-visible{outline:3px solid #b82f65;outline-offset:4px;border-radius:5px}.album-entry-link:hover h3{color:#b82f65}.album-entry-link:hover .album-snapshot{transform:rotate(0) translateY(-2px)}.album-end{display:flex;align-items:center;gap:20px;margin:35px 0 0;padding:25px 5px}.album-end>span{font-size:2.6rem;color:#c27c9b}.album-end h2{font-size:1.35rem;margin:0 0 9px;letter-spacing:-.03em}.album-end p{font-size:.8rem;color:var(--muted);line-height:1.7;margin:0}.album-end>.text-link{margin-left:auto;white-space:normal}.game-album [hidden]{display:none!important}
@media(max-width:1050px){.album-entries{gap:9px 23px}.album-chapter{padding:25px}.album-entry-link{gap:12px;grid-template-columns:42% minmax(0,1fr)}.album-entry h3{font-size:1rem}.album-entry-copy{padding-right:24px}.album-save{width:35px;height:35px}.album-entry p{font-size:.72rem}.album-toolbar{gap:12px}.album-toolbar>label:not(.album-search){min-width:130px}}
@media(max-width:760px){.album-heading{padding-top:23px}.album-title-line{gap:15px;align-items:flex-start}.album-heading h1{font-size:2.7rem}.album-stamp{padding:17px 19px;gap:10px;margin-top:22px}.album-stamp strong{font-size:2.2rem}.album-stamp span{font-size:.6rem}.album-heading>p{font-size:.83rem}.album-toolbar{flex-wrap:wrap;padding:14px 16px;gap:14px}.album-search{flex-basis:100%;min-height:40px}.album-search input{font-size:16px;padding:8px 0}.album-toolbar>label:not(.album-search){flex:1;min-width:0}.album-toolbar select{font-size:.75rem;min-height:44px}.album-index{gap:3px 19px;padding:17px 0}.album-index>span{flex-basis:100%;margin-bottom:6px}.album-index a{font-size:.76rem;min-height:44px}.album-results{padding-top:20px}.album-results .text-button{font-size:.72rem}.album-chapter{padding:23px 20px 20px;margin-top:22px;scroll-margin-top:115px}.album-chapter::before{left:8px}.album-chapter-heading{gap:13px;flex-wrap:wrap;padding-inline:0;margin-bottom:9px}.album-chapter-number{font-size:2.6rem}.album-chapter-heading h2{font-size:1.6rem}.album-chapter-heading p{font-size:.73rem}.album-chapter-count{font-size:.65rem}.album-entries{grid-template-columns:1fr;gap:0}.album-entry{padding:20px 0 23px}.album-entry-link{grid-template-columns:minmax(0,40%) minmax(0,1fr);gap:17px;min-height:135px}.album-entry h3{font-size:1.12rem}.album-entry p{font-size:.78rem}.album-entry-copy{padding-right:24px}.album-save{width:44px;height:44px;right:-7px;top:14px}.album-language{font-size:.6rem}.album-end{flex-wrap:wrap;gap:15px}.album-end>div{flex:1;min-width:180px}.album-end>.text-link{margin-left:0;font-size:.78rem}}
@media(max-width:420px){.album-stamp{display:none}.album-heading h1{font-size:2.65rem}.album-entry-link{grid-template-columns:1fr;gap:17px;min-height:0}.album-snapshot{width:78%;margin:0 0 0 8px}.album-entry-copy{padding:0 36px 0 5px}.album-entry h3{font-size:1.2rem}.album-entry p{font-size:.83rem;margin-bottom:9px}.album-controls{display:inline-block;margin:0 18px 0 0;font-size:.65rem}.album-play{font-size:.73rem}.album-save{top:24px;right:0}.album-chapter-count{flex-basis:100%;margin-left:52px}.album-toolbar{border-radius:13px}.album-chapter-heading .eyebrow{font-size:.53rem}.album-heading>p{font-size:.85rem}.album-index a{gap:6px}.album-end>div{min-width:0;flex-basis:calc(100% - 55px)}}
@media(prefers-reduced-motion:reduce){.album-snapshot,.album-entry:nth-child(even) .album-snapshot,.album-entry-link:hover .album-snapshot{transform:none;transition:none}}
/* Keep discovery tools near the top; the collection itself is the main content. */
.album-heading h1{font-size:clamp(2.5rem,4vw,3.5rem)}.album-heading h1 br{display:none}.album-heading>p{margin-block:16px 24px}.album-heading .breadcrumb{margin-bottom:20px}.album-stamp{padding:17px 25px}.album-stamp strong{font-size:2.7rem}
@media(max-width:760px){.album-heading h1{font-size:2.6rem}.album-heading h1 br{display:block}}
@media(max-width:420px){.album-chapter-count{flex-basis:calc(100% - 52px);flex-shrink:1}}
/* FAQ uses native disclosure so answers remain accessible without scripts. */
.faq-page{padding-block:28px 60px}.faq-header{max-width:760px}.faq-header .breadcrumb{margin-bottom:25px}.faq-header h1{font-size:clamp(2.5rem,4.4vw,3.8rem);letter-spacing:-.045em;line-height:1.12;margin:16px 0 20px}.faq-header h1 em{font-family:Georgia,serif;color:#b33e71;font-weight:400}.faq-header>p{font-size:.97rem;color:var(--muted);line-height:1.7;max-width:600px}.faq-index{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 38px}.faq-index a{display:inline-flex;align-items:center;gap:13px;padding:13px 17px;border:1px solid var(--line);background:#fffdfd;border-radius:17px 23px 16px 20px;font-size:.8rem;text-decoration:none;min-height:44px}.faq-index .icon{width:14px;height:14px}.faq-index a:hover{background:#ffeaf2}.faq-group{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:45px;padding:32px 0;border-top:1px solid var(--line);scroll-margin-top:115px}.faq-group-title>span{font-family:Georgia,serif;font-size:2.5rem;color:#d69bb5;font-style:italic}.faq-group-title h2{font-size:1.6rem;letter-spacing:-.03em;margin:8px 0 12px}.faq-group-title p{font-size:.85rem;color:var(--muted);line-height:1.7;max-width:260px}.faq-answers{min-width:0}.faq-item{border:1px solid #ecd5df;border-radius:15px 19px 13px 18px;background:#fffdfd;margin-bottom:12px;box-shadow:2px 3px 0 #f4e2eb}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 23px;font-size:.95rem;line-height:1.5;font-weight:650;list-style:none;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-toggle{position:relative;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:#ffeaf2}.faq-toggle::before,.faq-toggle::after{content:'';position:absolute;inset:11px 6px auto;height:2px;background:#a94370}.faq-toggle::after{transform:rotate(90deg)}.faq-item[open] .faq-toggle::after{transform:rotate(0)}.faq-item[open] summary{color:#a12f60}.faq-answer{padding:0 23px 21px}.faq-answer p{margin:0;font-size:.87rem;line-height:1.85;color:var(--muted)}.faq-answer a{text-decoration:underline;text-underline-offset:3px;color:#a32f62}.faq-item summary:focus-visible{outline:3px solid #b82f65;outline-offset:4px;border-radius:14px}.faq-contact{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;background:#ffedf3;border:1px solid var(--line);border-radius:23px 17px 27px 18px;padding:30px;margin-top:15px}.faq-contact>div{flex:1;min-width:220px}.faq-contact h2{font-size:1.5rem;margin:0 0 12px}.faq-contact p{font-size:.85rem;color:var(--muted);line-height:1.7;margin:0;max-width:580px}.faq-contact>.text-link{white-space:normal;font-size:.8rem}
@media(max-width:760px){.faq-page{padding-block:23px 38px}.faq-header h1{font-size:2.55rem}.faq-header>p{font-size:.87rem}.faq-index{gap:9px;margin-block:22px 28px}.faq-index a{font-size:.73rem;padding:12px}.faq-group{grid-template-columns:1fr;gap:12px;padding-block:25px}.faq-group-title{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:13px;align-items:center}.faq-group-title>span{font-size:2rem;grid-row:span 2}.faq-group-title h2{font-size:1.45rem;margin:0 0 6px}.faq-group-title p{max-width:none;margin:0;font-size:.8rem}.faq-item summary{padding:17px 16px;font-size:.88rem;gap:15px}.faq-answer{padding:0 16px 18px}.faq-answer p{font-size:.83rem}.faq-contact{padding:23px 20px;gap:20px}.faq-contact>div{min-width:0;flex-basis:100%}.faq-contact .button{max-width:100%;white-space:normal}.faq-header h1 em{overflow-wrap:anywhere}}
