:root{--accent:#006d68;--ink:#163e3d;--paper:#fff4d9;--soft:#ffbca0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-underline-offset:4px}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em;text-wrap:balance}h1{font-size:clamp(2.8rem,5.7vw,5.8rem)}h2{font-size:clamp(2rem,3.5vw,3.6rem)}h3{font-size:1.35rem}p{max-width:66ch}p+p{margin-top:1rem}img{display:block;width:100%;height:auto}svg{width:1.5rem;height:1.5rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}button{border:1px solid currentColor;border-radius:99px;padding:.7rem 1.15rem;background:transparent;color:inherit;font-weight:700}button:hover,.button:hover{filter:brightness(.95)}.button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.85rem 1.35rem;border-radius:99px;background:var(--accent);color:#fff;text-decoration:none;font-weight:700;border:2px solid var(--accent)}.button.secondary{background:transparent;color:var(--ink);border-color:currentColor}.actions{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.6rem}.eyebrow{font-size:.73rem;letter-spacing:.15em;text-transform:uppercase;font-weight:800;margin-bottom:1rem}.lead{font-size:1.15rem;line-height:1.7;margin-top:1.4rem}.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid color-mix(in srgb,var(--ink) 18%,transparent)}.header-inner{max-width:1360px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:16px 32px}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-size:1.35rem;font-weight:900;letter-spacing:-.04em}.brand img{width:34px;height:34px}.nav{display:flex;gap:1.6rem;align-items:center;font-size:.88rem;font-weight:700}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline}.menu-toggle{display:none;border-radius:12px;padding:8px}.wrap{max-width:1240px;margin:auto;padding-left:40px;padding-right:40px}.section{padding-top:74px;padding-bottom:74px}.section p{margin-top:1.1rem}.section-heading{margin-bottom:2rem}.photo{overflow:hidden;border-radius:28px;background:var(--soft)}.photo img{aspect-ratio:3/2;object-fit:cover}.photo figcaption{padding:12px 18px;font-size:.8rem;font-weight:700}.copy{padding:32px}.note{border:1px solid color-mix(in srgb,var(--ink) 25%,transparent);padding:24px;border-radius:20px}.note p{font-size:.95rem}.two{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.pill{display:inline-block;border:1px solid currentColor;border-radius:99px;padding:5px 13px;font-size:.75rem;font-weight:700}.game-section{scroll-margin-top:95px}.game-shell{background:#fff;border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);border-radius:32px;padding:32px;box-shadow:0 15px 0 color-mix(in srgb,var(--accent) 12%,transparent)}.game-shell h2{font-size:2rem}.game-intro{max-width:45ch}.game-meter{font-size:.83rem;font-weight:800;padding:12px 0}.game-stage{display:grid;gap:8px;max-width:540px;margin:12px auto;background:var(--soft);padding:12px;border-radius:24px}.game-stage button{min-width:0;min-height:44px;border-radius:12px;padding:7px;border:2px solid transparent;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px}.game-stage button:hover{border-color:var(--accent)}.game-stage svg{width:70%;height:70%;max-width:44px;max-height:44px;stroke-width:2;fill:currentColor;fill-opacity:.16}.game-stage button[aria-pressed=true]{outline:3px solid var(--accent);outline-offset:-4px;background:var(--paper)}.board-six{grid-template-columns:repeat(6,1fr)}.board-four{grid-template-columns:repeat(4,1fr)}.board-five{grid-template-columns:repeat(5,1fr)}.board-six button,.board-four button,.board-five button{aspect-ratio:1}.colour-0{color:#a51f4e!important}.colour-1{color:#8a4c00!important}.colour-2{color:#176846!important}.colour-3{color:#65369c!important}.colour-4{color:#876000!important}.game-notice{min-height:3.5rem;font-size:.94rem;padding-top:10px;line-height:1.5}.game-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.game-controls button{font-size:.82rem;padding:9px 14px}.pads{grid-template-columns:1fr 1fr}.pads button{aspect-ratio:1.3}.pads button.lit{background:var(--accent);color:#fff!important;outline:5px solid var(--ink)}.pads span{font-size:.85rem}.jars{grid-template-columns:repeat(5,1fr);padding:10px;gap:6px}.jars button{padding:6px 3px;font-size:.7rem;background:transparent}.jar-glass{display:flex;flex-direction:column;justify-content:flex-end;width:100%;height:166px;border:2px solid var(--ink);border-top:0;border-radius:0 0 24px 24px;padding:8px 3px;gap:5px;background:#ffffff80}.jar-glass .sweet{height:42px;display:flex;justify-content:center;align-items:center}.jar-glass svg{width:32px;height:32px}.empty{margin:auto;font-size:.64rem}.lanterns button{background:#382347;color:#d6c5e7}.lanterns button[aria-pressed=true]{background:#ffe599;color:#6c4c00;outline:0}.channels button svg{width:100%;height:100%;max-width:none;max-height:none;fill:none;stroke-width:5}.channels button.flowing{background:#b2e8dc;color:#185646}.number-tile{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:#ffffffa8;border-radius:12px;font-size:clamp(1.3rem,3vw,2.1rem);font-weight:900}.level-8,.level-16{background:#ffd59a}.level-32,.level-64{background:#bb3d2f;color:#fff}.level-128,.level-256{background:#6c3522;color:#fff}.code-game{grid-template-columns:repeat(3,1fr)}.code-game>button{min-height:105px}.code-game>button span{font-size:.8rem}.clue-log{grid-column:1/-1;margin:10px 0;padding-left:26px;font-size:.83rem}.clue-log li{padding:5px}.hole{width:60%;height:60%;border:2px dashed currentColor;border-radius:50%;opacity:.45}.recipe-board button span{font-size:.9rem}.four-board{grid-template-columns:repeat(7,1fr);gap:5px;padding:9px}.four-board .piece{aspect-ratio:1;min-height:0;padding:5px}.four-board .drop-column{font-size:.8rem;min-height:42px}.player-1{color:#a71e52!important}.player-2{color:#795500!important}.four-board button:disabled{opacity:1}.steps{counter-reset:steps;list-style:none;padding:0;margin:0;display:grid;gap:16px}.steps li{counter-increment:steps;padding:24px;border-top:1px solid currentColor}.steps li:before{content:counter(steps,decimal-leading-zero);display:block;font-size:.8rem;font-weight:800;margin-bottom:14px}.steps p{font-size:.95rem;margin-top:12px}.faq details{border-top:1px solid color-mix(in srgb,var(--ink) 25%,transparent);padding:20px 0}.faq summary{font-weight:800;cursor:pointer;font-size:1.1rem}.faq details p{margin:12px 0;max-width:65ch}.footer{background:var(--ink);color:var(--paper);padding:50px 0 25px;margin-top:30px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}.footer h2{font-size:1.8rem}.footer p{font-size:.85rem;max-width:45ch}.footer nav{display:grid;gap:9px;font-size:.85rem}.footer button{border:0;padding:0;text-align:left;font-size:inherit;text-decoration:underline;font-weight:400}.footer small{display:block;margin-top:35px;border-top:1px solid #ffffff40;padding-top:20px}.skip{position:fixed;left:15px;top:-90px;z-index:100;background:#fff;color:#111;padding:12px}.skip:focus{top:15px}.cookie-banner{position:fixed;bottom:18px;left:18px;z-index:40;width:min(440px,calc(100% - 36px));background:#fff;color:var(--ink);box-shadow:0 10px 50px #0003;border:1px solid #ddd;border-radius:22px;padding:22px}.cookie-banner h2{font-size:1.2rem;letter-spacing:-.02em}.cookie-banner p{font-size:.81rem;margin-top:8px}.cookie-banner .actions{margin-top:13px;gap:7px}.cookie-banner button{font-size:.7rem;padding:9px 12px}.cookie-banner button:last-child{background:var(--accent);color:#fff;border-color:var(--accent)}[hidden]{display:none!important}dialog{border:1px solid #ddd;border-radius:25px;padding:30px;width:min(510px,calc(100% - 32px));color:var(--ink);background:#fff}dialog::backdrop{background:#1b152b99}dialog h2{font-size:1.7rem}dialog p{font-size:.9rem;margin:15px 0}dialog label{display:flex;gap:10px;align-items:center;margin:18px 0}dialog button{font-size:.8rem}dialog .close-dialog{float:right;padding:5px 12px}.document{max-width:1100px;margin:auto;padding:60px 40px}.document-header{padding:20px 0 45px}.document h1{font-size:clamp(2.4rem,5vw,4.5rem);max-width:16ch}.document-content{max-width:790px}.document-content h2{font-size:1.55rem;line-height:1.3;margin:30px 0 15px}.document-content p{margin:20px 0}.document .breadcrumb{font-size:.8rem;margin-bottom:25px}.document .steps{margin-top:25px}.document aside{padding:25px;background:var(--soft);border-radius:22px;margin:25px 0}.document .callout{font-size:1.2rem;font-weight:700}.contact-form{display:grid;gap:18px;padding:30px;background:#fff;border:1px solid color-mix(in srgb,var(--ink) 20%,transparent);border-radius:24px}.contact-form label{display:grid;gap:6px;font-size:.9rem;font-weight:700}.contact-form input,.contact-form textarea{width:100%;min-width:0;padding:12px;border:1px solid #756d73;border-radius:8px;color:var(--ink);background:#fff}.contact-form textarea{min-height:160px;resize:vertical}.contact-form .trap{position:absolute;left:-9999px}.contact-form .consent{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.82rem}.consent input{width:18px;margin-top:5px;flex-shrink:0}.form-status{padding:12px 0;font-size:.9rem}.document.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px}.contact-layout .document-header{grid-column:1/-1}.guide-layout .steps{grid-template-columns:1fr 1fr}.about-layout .document-content{padding-left:35px;border-left:6px solid var(--accent)}.legal-layout .document-content{border-top:5px solid var(--accent);padding-top:15px}.motif{padding:30px;background:var(--soft);border-radius:25px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.motif svg{width:50px;height:50px}.motion-off *{scroll-behavior:auto!important;animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}@media(max-width:800px){h1{font-size:3.2rem}.header-inner{padding:13px 20px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px;background:var(--paper);border-bottom:1px solid currentColor;flex-direction:column;align-items:flex-start;gap:20px}.nav.open{display:flex}.wrap{padding-left:22px;padding-right:22px}.section{padding-top:45px;padding-bottom:45px}.two,.three{grid-template-columns:1fr}.photo{border-radius:20px}.copy{padding:23px}.game-shell{padding:20px;border-radius:24px}.game-shell h2{font-size:1.8rem}.game-stage{gap:6px;padding:8px}.game-stage button{padding:5px}.board-six button{min-height:38px}.jars{gap:4px}.jar-glass{height:150px}.jars button{font-size:.64rem}.four-board{gap:4px}.four-board .drop-column{min-height:36px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div{grid-column:1/-1}.document{padding:35px 22px}.document.contact-layout{display:block}.guide-layout .steps{grid-template-columns:1fr}.contact-form{padding:22px}.about-layout .document-content{padding-left:20px}.document-header{padding-bottom:25px}.cookie-banner{padding:18px}.cookie-banner .actions{gap:5px}.cookie-banner button{padding:8px 9px}}@media(max-width:360px){h1{font-size:2.8rem}.game-shell{padding:14px}.wrap{padding-left:16px;padding-right:16px}.game-stage{gap:4px}.board-six button{min-height:34px}}
.concert-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center}.concert-art{position:relative;padding-bottom:90px}.concert-art .scene-0{border-radius:180px 180px 24px 24px}.concert-art .scene-0 img{aspect-ratio:.87}.concert-art .scene-1{position:absolute;bottom:0;left:-45px;width:62%;border:8px solid var(--paper);transform:rotate(-6deg)}.concert-stamp{display:inline-block;margin-top:25px;border:2px dashed var(--accent);padding:15px;border-radius:50%;font-size:.78rem;text-align:center;transform:rotate(-10deg)}.concert-opening{background:var(--accent);color:var(--paper)}.concert-opening .wrap{display:flex;gap:50px;align-items:center}.giant{font-size:8rem;line-height:1;font-weight:900;letter-spacing:-.08em}.concert-play{display:grid;grid-template-columns:1fr .8fr;gap:38px;align-items:start}.ribbon-stage{background:var(--soft)}.ribbon-stage .wrap>div{max-width:760px;margin-bottom:30px}.ribbon-stage img{aspect-ratio:2.4}.echo-guide{display:grid;grid-template-columns:.9fr 1.1fr;gap:45px}.echo-guide h2{margin-top:24px}.lime-score{display:grid;grid-template-columns:1fr 1fr;gap:30px}.lime-score .callout{grid-column:1/-1;font-size:2rem;text-align:center;letter-spacing:.1em}.concert-pause{border-top:3px solid var(--accent);display:grid;grid-template-columns:1fr 1fr;gap:25px}.concert-pause .button{justify-self:start}.melon-finale{position:relative}.melon-finale>div{padding:35px;background:var(--soft);max-width:800px;margin:-60px auto 0;position:relative;border-radius:25px}@media(max-width:800px){.river-title h1,.night-title h1{max-width:none}.river-hero .photo img,.night-hero>.photo img,.ribbon-stage img,.rapids .photo img,.aqueduct-section img,.dawn-study img{aspect-ratio:1.5}.harbour-strip,.river-play,.festival,.garden-end,.concert-hero,.concert-play,.echo-guide,.lime-score,.concert-pause,.glass-hero,.shelf-intro,.nursery-play .wrap,.potting-section,.glass-garden,.orchard-close,.sky-intro,.lantern-study,.sky-play .wrap,.moon-study,.comet-study,.terrace-study .wrap,.arcade-hero,.cabinet-intro,.cipher-clue,.cipher-play .wrap,.plum-passage,.library-section,.courtyard-close .wrap,.canal-hero,.canal-intro,.waterwheel-note,.canal-play .wrap,.harbour-section,.mint-close,.grove-hero,.plot-intro,.canyon-section .wrap,.grove-play,.terrace-lesson,.cherry-break,.meadow-close .wrap,.lily-notes,.lagoon-play .wrap,.blueberry-route,.cloud-picnic,.recipe-intro,.grove-notes,.recipe-play .wrap,.sherbet-lesson,.market-notes,.peach-close .wrap,.picnic-hero,.table-intro,.picnic-play .wrap,.blueberry-look,.opponent-notes,.pavilion-lesson,.sundae-break .wrap,.sunset-picnic{display:grid;grid-template-columns:1fr;gap:25px}.river-manual .steps,.botany-manual .steps,.canal-manual .steps,.grove-manual .steps,.crossing-guide .steps,.recipe-method .steps,.field-notes dl,.clue-example{grid-template-columns:1fr}.garden-end>a,.lime-score .callout,.route-key{grid-column:auto}.rapids,.aqueduct-section{padding-bottom:45px}.rapids .note,.aqueduct-section .note{position:static;width:auto;margin-top:20px}.concert-art .scene-1{left:-10px;width:60%}.concert-opening .wrap{gap:25px}.giant{font-size:5rem}.concert-pause .button{grid-column:auto}.melon-finale>div{margin:20px 0 0;padding:25px}.glass-hero img{aspect-ratio:1.15}.potting-section .note,.blueberry-route .note{margin:0}.sky-intro .motif{aspect-ratio:auto;border-radius:25px}.case-tag{position:static;width:fit-content;justify-self:end;margin-top:-55px;z-index:1}.case-margin{writing-mode:initial}.route-marker{width:75px}.route-key{gap:12px;font-size:.65rem;padding:15px}.port-diagram{padding:25px}.canal-play .photo img{aspect-ratio:1.5}.plot-fact{display:flex;gap:20px;align-items:center}.plot-fact strong{font-size:3rem}.grove-hero .photo{box-shadow:9px 9px 0 var(--soft)}.lagoon-window .photo{border-radius:100px 100px 35px 35px}.lagoon-window img{aspect-ratio:1.4}.lily-notes .photo{border-radius:80px}.floating-note{position:static;justify-self:end;margin-top:-10px}.crossing-pause{display:block}.island-number{width:120px;min-width:120px;height:120px;margin-bottom:25px}.quiet-cove .photo{border-radius:80px 80px 20px 20px}.atelier-collage{grid-template-columns:1fr 1fr;gap:10px}.atelier-collage .scene-0{grid-column:1/-1}.atelier-collage .scene-1{grid-column:2;width:100%;margin-top:-30px}.recipe-seal{left:12px;top:auto;bottom:30px;padding:22px}.recipe-number{font-size:5rem}.picnic-hero>div:first-child img{aspect-ratio:1.4}.picnic-hero>.photo{max-width:70%;justify-self:end;margin:0}.picnic-hero>.photo img{aspect-ratio:1.5}.picnic-hero>.photo figcaption{display:block}.picnic-invitation h1{font-size:3.2rem}.picnic-pair span{padding:25px 12px}.night-hero{padding-top:40px}.harbour-strip .copy{border-radius:25px}.concert-art .scene-0 img{aspect-ratio:1.2}.arcade-hero img,.grove-hero img,.canal-hero img{aspect-ratio:1.25}}.sequence-accent{color:var(--accent)}.photo figcaption{color:var(--ink)}.night-hero figcaption{color:#fff8df}.guide-layout .document-header{background:var(--accent);color:#fff;padding:30px;border-radius:80px 15px 15px 15px}.guide-layout .document-content{max-width:none}.guide-layout .steps{grid-template-columns:repeat(4,1fr);margin:35px 0}.about-layout{display:grid;grid-template-columns:1fr .7fr;gap:30px}.about-layout .document-header{grid-column:1/-1}.about-layout>.motif{border-radius:50%;align-self:center;aspect-ratio:1}@media(max-width:800px){.guide-layout,.about-layout{display:block}.guide-layout .steps{grid-template-columns:1fr}.guide-layout .steps li:nth-child(even){transform:none;margin-left:0}.guide-layout>.motif{aspect-ratio:auto;border-radius:25px;margin:25px 0}.about-layout .document-content{columns:1;padding:25px 15px}.about-layout>.motif{aspect-ratio:auto;border-radius:25px}.guide-layout .document-header{padding:25px 15px}.guide-layout .document-content{padding-left:0;padding-right:0}.about-layout .document-header{padding:25px 15px}.guide-layout .steps li{padding:25px}}