:root{color-scheme:light;--paper:#fff;--ink:#242825;--muted:#616761;--line:#e0e5dd;--yellow:#ffda55;--pale:#f6f8f1;--blue:#e2eeff;--green:#e0efcd;--max:1260px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #567aa1;outline-offset:5px}button:disabled{cursor:default;opacity:.4}[hidden]{display:none!important}::selection{background:var(--yellow);color:var(--ink)}.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 0}.wordmark{font-size:2rem;font-weight:900;letter-spacing:-.08em;line-height:1;white-space:nowrap;display:inline-flex;align-items:baseline}.wordmark span{font-weight:400;font-size:1.1rem;letter-spacing:-.055em;margin-left:4px}.wordmark i{color:#bd6b13;font-style:normal;font-size:2.6rem;line-height:0}.header nav{display:flex;align-items:center;gap:30px;font-size:.9375rem}.header nav a{padding-block:10px}.header nav a:hover{color:#596d35}.nav-contact{border:1px solid var(--ink);border-radius:30px;padding:12px 18px!important}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--yellow);padding:14px 20px}.skip-link:focus{top:15px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:600;line-height:1.6;margin:0 0 25px}h1,h2,h3,p{margin-top:0}
.hero{position:relative;display:grid;grid-template-columns:1.08fr 1fr;column-gap:42px;padding-top:60px}.hero-copy{padding-top:14px;padding-bottom:32px}.hero .eyebrow{letter-spacing:.115em}h1{font-size:clamp(3.5rem,6.35vw,6.1rem);font-weight:700;line-height:1.045;letter-spacing:-.065em;margin-bottom:30px}.highlight{position:relative;isolation:isolate;white-space:nowrap}.highlight:after{content:'';position:absolute;z-index:-1;height:.23em;bottom:.07em;left:-.015em;right:-.055em;background:var(--yellow);border-radius:50% 20% 35% 20%;transform:rotate(-1.7deg)}.hero-intro{font-size:1.125rem;line-height:1.65;color:var(--muted);margin-bottom:29px}.hero-actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center}.button{min-height:53px;display:inline-flex;align-items:center;justify-content:center;gap:26px;border-radius:30px;font-weight:500;font-size:.9375rem;padding:16px 23px;line-height:1.4;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#414d38}.text-link{font-size:.875rem;text-decoration:underline;text-underline-offset:6px}
.hero-piru{position:relative;min-height:570px;background:var(--blue);border-radius:48% 48% 12px 12px;align-self:stretch;margin:4px 3px 5px 0;isolation:isolate}.hello-sticker{position:absolute;top:28px;right:-18px;display:block;width:118px;height:118px;padding:28px 10px;text-align:center;border-radius:50%;background:var(--yellow);transform:rotate(12deg);font-size:.9375rem;line-height:1.25;z-index:2}.hello-sticker strong{font-size:1.6rem;font-weight:600;letter-spacing:-.045em}.hero-cat-area{position:absolute;inset:30px 0 55px;display:flex;align-items:center;justify-content:center}.hero-cat-button{display:block;background:none;border:0;padding:0;width:100%;height:100%;transition:transform .2s}.hero-cat-button:hover{transform:rotate(-2deg)}#hero-cat{display:block;width:100%;height:100%;object-fit:contain}.hero-photo-fallback{height:85%;width:75%;object-fit:cover;border-radius:45%;object-position:center 30%}.piru-name{position:absolute;bottom:32px;left:0;width:100%;text-align:center;display:flex;flex-direction:column;gap:8px}.piru-name strong{font-size:1.45rem;letter-spacing:-.04em}.piru-name span{font-size:.8125rem;color:#415367}.pat-hint{position:absolute;left:-35px;top:55%;font-size:.8125rem;max-width:95px;line-height:1.35;transform:rotate(-8deg)}.pat-hint span{display:block;margin-top:5px;font-size:2rem;text-align:right}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-block:33px;color:var(--muted);font-size:.8125rem;line-height:1.5}
.projects{position:relative;padding-block:91px 100px}.anchor-alias{position:absolute;top:0}.section-heading{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:65px;margin-bottom:37px}h2{font-size:clamp(2.25rem,3.6vw,3.5rem);font-weight:600;line-height:1.1;letter-spacing:-.055em;margin-bottom:0}.section-heading .eyebrow{margin-bottom:18px}.section-heading>p{color:var(--muted);font-size:1rem;line-height:1.7;max-width:440px;margin:0 0 3px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.project-card{min-width:0;border:1px solid var(--line);border-radius:15px;overflow:hidden;display:flex;flex-direction:column}.project-art{height:320px;position:relative;overflow:hidden}.pill{position:absolute;top:21px;left:21px;border:1px solid currentColor;border-radius:30px;padding:7px 11px;font-size:.75rem;line-height:1.3;z-index:2}.market-art{background:#122f2b;color:#eafbda}.market-wordmark{position:absolute;top:83px;left:25px;font-size:2.45rem;letter-spacing:-.055em;font-weight:900;line-height:.9;z-index:1}.market-wordmark span{display:block;font-size:.75rem;font-weight:500;letter-spacing:.1em;margin-top:9px}.market-art img{position:absolute;bottom:-27px;right:-37px;width:76%;height:auto;transform:rotate(-5deg)}.cooking-art{background:var(--yellow)}.cooking-type{position:absolute;left:25px;right:25px;top:105px;transform:rotate(-7deg);display:flex;flex-direction:column;align-items:center;font-size:2.1rem;line-height:1.1;letter-spacing:-.06em}.cooking-type strong{font-family:Georgia,'Times New Roman',serif;font-size:3.25rem;font-weight:400;font-style:italic;letter-spacing:-.08em}.cooking-underline{width:160px;height:5px;border-bottom:3px solid var(--ink);border-radius:50%;margin-top:8px;transform:rotate(-2deg)}.movement-art{background:var(--green)}.movement-type{position:absolute;top:111px;left:27px;right:20px;display:flex;flex-direction:column;align-items:center;gap:1px;font-size:1.35rem;letter-spacing:-.04em;line-height:1.2;transform:rotate(4deg)}.movement-type strong{font-size:3.35rem;font-weight:600;letter-spacing:-.07em}.movement-type span:last-child{font-size:.875rem;letter-spacing:0;margin-top:11px}.art-footnote{position:absolute;bottom:24px;left:20px;right:20px;font-size:.75rem;text-align:center;line-height:1.4}.project-copy{padding:25px 24px 27px;display:flex;flex-direction:column;flex:1}.project-type{font-size:.75rem;color:var(--muted);margin-bottom:13px}.project-copy h3{font-size:1.6rem;letter-spacing:-.045em;font-weight:600;margin-bottom:15px}.project-copy>p:not(.project-type):not(.small-note):not(.project-stage){font-size:1rem;line-height:1.65;color:var(--muted);margin-bottom:18px}.project-stage{font-size:.8125rem;border-top:1px solid var(--line);padding-top:18px;margin:auto 0 0;color:var(--muted)}.project-link{font-size:.875rem;display:flex;justify-content:space-between;gap:12px;line-height:1.5;border-top:1px solid var(--line);padding-top:17px}.project-link:hover{text-decoration:underline;text-underline-offset:4px}.small-note{font-size:.75rem;line-height:1.5;color:var(--muted);margin:9px 0 0}.game-details{font-size:.875rem;line-height:1.5;margin:0 0 20px}.game-details summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.game-details ul{padding-left:19px;color:var(--muted);margin-top:13px}.game-details li{margin-bottom:8px}.game-details p{font-size:.8125rem;color:var(--muted);margin-bottom:0}
.story{background:var(--pale);border-block:1px solid var(--line)}.story-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:86px 91px}.story-heading h2{font-size:clamp(2.9rem,5.2vw,5rem);line-height:1.08}.story-heading h2>span{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic}.word-note{border-top:1px solid #cbd3c3;margin-top:40px;padding-top:25px;display:flex;gap:25px;align-items:start;max-width:360px}.word-note>span{font-family:Georgia,'Times New Roman',serif;font-size:2rem;line-height:1;letter-spacing:-.04em}.word-note p{font-size:.8125rem;line-height:1.6;margin:0}.word-note em{font-style:normal;color:var(--muted)}.story-copy{padding-top:3px}.story-copy>p{font-size:1rem;line-height:1.8;color:var(--muted);margin-bottom:19px}.story-copy>.story-lead{font-size:1.25rem;color:var(--ink);line-height:1.55;letter-spacing:-.02em;margin-bottom:24px}.story-copy strong{color:var(--ink)}.welcome-line{display:flex;align-items:center;gap:20px;margin:27px 0}.welcome-line>span{font-size:3.5rem;line-height:1;color:#648343}.welcome-line strong{font-size:1.5rem;font-weight:500;letter-spacing:-.04em;line-height:1.25}.story-copy>.story-signature{font-size:.8125rem;margin-bottom:0}
.piru-section{padding-block:85px 78px}.photo-heading{display:flex;justify-content:space-between;gap:20px;font-size:.8125rem;color:var(--muted);margin:10px 0 20px}.photo-heading p{margin:0}.photo-reel{display:flex;gap:21px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 2px 20px;scrollbar-width:thin;scrollbar-color:#cdd5c5 transparent}.photo-card{flex:0 0 255px;width:255px;min-width:0;padding:0 0 16px;border:1px solid #e3e5df;background:#fff;border-radius:10px;overflow:hidden;scroll-snap-align:start;text-align:left;transition:transform .2s}.photo-card:hover{transform:translateY(-5px)}.photo-card img{display:block;width:100%;height:235px;object-fit:cover}.photo-card:nth-child(3) img{object-position:50% 27%}.photo-card>span{display:block;padding:16px 15px 0;font-size:.875rem;line-height:1.5}.album-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:17px}.album-controls>span{font-size:.8125rem;color:var(--muted);margin-right:9px}.round-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #bac1b4;background:transparent;width:44px;height:44px;min-width:44px;border-radius:50%;font-size:1.2rem}.round-button:hover{background:var(--pale)}
.contact{background:var(--yellow)}.contact-inner{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:70px;padding-block:66px 71px}.contact h2{font-size:clamp(2.75rem,4.5vw,4.3rem);margin-bottom:23px}.contact p:last-child{font-size:1rem;line-height:1.6;margin-bottom:0}.contact-link{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-block:20px;border-bottom:1px solid var(--ink);font-size:clamp(1.1rem,2.1vw,1.85rem);letter-spacing:-.04em}.contact-link>span:last-child{font-size:1.8rem;transition:transform .2s}.contact-link:hover>span:last-child{transform:translate(3px,-3px)}.contact-right>p:last-child{font-size:.8125rem;margin-top:14px;color:#534a2d}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:38px 100px}.footer .wordmark{font-size:1.75rem}.footer .wordmark span{font-size:1rem}.footer>p{font-size:.875rem;line-height:1.8;margin:0}.footer>p>span{font-size:.75rem;color:var(--muted)}.footer>a:last-child{font-size:.8125rem}
.piru-controls,#piru-show{position:fixed;right:18px;bottom:max(12px,env(safe-area-inset-bottom));z-index:30;background:#ffffffee;border:1px solid #d5ddd1;border-radius:30px;box-shadow:0 4px 15px #1926140a;backdrop-filter:blur(8px)}.piru-controls{display:flex;align-items:center}.piru-controls button,#piru-show{min-height:42px;padding:10px 15px;font-size:.8125rem}.piru-controls button{border:0;background:none}.piru-controls button:first-child{border-radius:30px 0 0 30px}.piru-controls button:last-child{font-size:1.3rem;padding:5px 14px;border-left:1px solid #d5ddd1;border-radius:0 30px 30px 0}.piru-controls button:hover,#piru-show:hover{background:var(--pale)}#piru-wanderer{position:fixed;left:0;bottom:52px;width:180px;height:180px;z-index:25;pointer-events:none;will-change:transform}#piru-pet{display:block;pointer-events:auto;background:none;border:0;padding:0;width:100%;height:100%;border-radius:50%}#piru-canvas{width:100%;height:100%;display:block}.piru-speech{position:absolute;left:50%;bottom:92%;transform:translateX(-50%);width:max-content;max-width:170px;padding:9px 13px;border-radius:15px 15px 15px 2px;box-shadow:0 3px 10px #00000010;background:#fff;border:1px solid var(--line);font-size:.8125rem;line-height:1.4;opacity:0;transition:opacity .2s}.piru-speech.visible{opacity:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#photo-dialog{border:0;border-radius:12px;padding:0;background:#fff;color:var(--ink);max-width:min(1000px,calc(100vw - 28px));width:max-content;max-height:calc(100dvh - 32px);overflow:auto}#photo-dialog::backdrop{background:#152016db;backdrop-filter:blur(4px)}.photo-dialog-inner{position:relative;padding:16px}.dialog-close{position:absolute;top:23px;right:23px;z-index:2;border:1px solid #ddd;border-radius:50%;width:44px;height:44px;background:#fffffff0;font-size:1.6rem}#full-photo{display:block;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 170px);object-fit:contain;margin:auto;border-radius:6px}.dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:16px}.dialog-bottom>div{text-align:center}.dialog-bottom p{font-size:1rem;line-height:1.5;margin:0 0 3px}.dialog-bottom span{font-size:.75rem;color:var(--muted)}
@media(min-width:1500px){.hero-piru{min-height:605px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.header nav{gap:22px}.hero{column-gap:30px;padding-top:38px}.hero-piru{min-height:525px}.hero .eyebrow{font-size:.75rem;letter-spacing:.06em}.hero-actions{gap:18px}.pat-hint{left:-20px;max-width:68px;font-size:.75rem}.project-grid{gap:17px}.project-art{height:290px}.project-copy{padding:23px 20px}.market-wordmark{font-size:2.05rem;left:20px}.market-art img{width:86%;bottom:-7px;right:-35px}.cooking-type{left:12px;right:12px;font-size:1.7rem}.cooking-type strong{font-size:2.9rem}.movement-type{left:10px;right:10px}.movement-type strong{font-size:2.8rem}.art-footnote{font-size:.75rem;left:13px;right:13px}.section-heading{gap:40px}.story-inner{gap:55px}.contact-inner{gap:40px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{padding-block:22px;gap:18px}.wordmark{font-size:1.7rem}.wordmark span{font-size:1rem}.header nav{gap:17px;font-size:.875rem}.header nav .nav-contact{display:none}.hero{grid-template-columns:1fr;padding-top:26px;gap:31px}.hero-copy{padding:0}.hero .eyebrow{font-size:.75rem;letter-spacing:.065em;margin-bottom:21px}h1{font-size:clamp(3.2rem,10.3vw,5.5rem);line-height:1.035;margin-bottom:24px}.hero-intro{font-size:1.0625rem}.hero-piru{min-height:0;width:min(480px,93%);aspect-ratio:1/1.03;margin:8px auto 0;border-radius:48% 48% 12px 12px}.hero-cat-area{inset:14px 0 40px}.hello-sticker{width:100px;height:100px;padding:22px 10px;right:-12px;top:15px;font-size:.875rem}.hello-sticker strong{font-size:1.4rem}.piru-name{bottom:24px;gap:6px}.piru-name strong{font-size:1.35rem}.piru-name span{font-size:.75rem}.pat-hint{left:-15px;top:48%;font-size:.75rem;max-width:65px}.hero-foot{padding:0 0 24px;flex-wrap:wrap;gap:7px;font-size:.75rem}.projects{padding-block:58px 65px}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:28px}.section-heading>p{max-width:550px;font-size:1rem}.section-heading .eyebrow{margin-bottom:16px}h2{font-size:2.5rem}.project-grid{grid-template-columns:1fr;gap:25px}.project-card{display:grid;grid-template-columns:1fr 1fr}.project-art{height:100%;min-height:355px}.project-copy{padding:25px}.project-copy h3{font-size:1.5rem}.pill{left:17px;top:18px}.cooking-type{top:132px}.movement-type{top:137px}.market-wordmark{top:95px;font-size:2.15rem}.market-art img{width:110%;right:-30%;bottom:5px}.project-stage{margin-top:20px}.story-inner{grid-template-columns:1fr;padding-block:60px;gap:40px}.story-heading h2{font-size:3.5rem}.word-note{margin-top:28px;padding-top:20px}.story-copy{padding:0}.story-copy>.story-lead{font-size:1.2rem}.piru-section{padding-block:57px 50px}.photo-heading{font-size:.75rem;line-height:1.5;flex-wrap:wrap;gap:6px;margin-bottom:10px}.photo-card{flex-basis:235px;width:235px}.photo-card img{height:215px}.photo-reel{gap:16px}.contact-inner{grid-template-columns:1fr;padding-block:49px 48px;gap:25px}.contact h2{font-size:3rem}.contact-link{font-size:clamp(1.1rem,5.8vw,1.85rem);padding-block:16px}.footer{display:grid;grid-template-columns:1fr auto;gap:22px;padding-block:30px 95px}.footer .wordmark{grid-column:1/-1}.footer>p{font-size:.8125rem}#piru-wanderer{width:135px;height:135px;bottom:50px}.piru-speech{font-size:.75rem;max-width:125px}.piru-controls,#piru-show{right:12px}.piru-controls button,#piru-show{font-size:.75rem}.pat-hint span{font-size:1.5rem}}
@media(max-width:560px){.header nav{gap:15px;font-size:.8125rem}.header nav a:nth-child(2){display:none}.wordmark{font-size:1.65rem}.wordmark span{font-size:.9375rem}.hero-actions{gap:18px}.button{padding:14px 18px;gap:15px;font-size:.875rem}.text-link{font-size:.8125rem}.hero-piru{margin-top:8px}.project-card{display:flex}.project-art{height:295px;min-height:295px}.market-wordmark{top:85px;font-size:2.6rem;left:24px}.market-art img{width:74%;right:-10%;bottom:-24px}.cooking-type{top:95px;font-size:2rem}.cooking-type strong{font-size:3.4rem}.movement-type{top:108px}.movement-type strong{font-size:3.3rem}.project-copy{padding:25px}.project-copy h3{font-size:1.65rem}.story-heading h2{font-size:3.2rem}.welcome-line strong{font-size:1.4rem}.story-copy>p{font-size:1rem}.dialog-bottom{gap:10px}.dialog-bottom p{font-size:.875rem}.photo-dialog-inner{padding:10px}.dialog-close{top:17px;right:17px}.dialog-bottom .round-button{width:42px;height:42px;min-width:42px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}h1{font-size:2.9rem}.hero .eyebrow{font-size:.75rem;letter-spacing:0}.header nav{gap:12px}.wordmark{font-size:1.45rem}.wordmark span{font-size:.8125rem}.hero-actions{gap:20px}.hero-piru{width:94%}.hello-sticker{width:85px;height:85px;padding-top:19px;font-size:.75rem}.hello-sticker strong{font-size:1.2rem}.pat-hint{left:-11px;font-size:.75rem;max-width:60px}.story-heading h2{font-size:2.85rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Compact mascot, with a finger-sized grab target. */
#piru-wanderer{width:57px;height:57px;bottom:58px}#piru-pet{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;min-width:0;min-height:0}#piru-pet.is-dragging{cursor:grabbing}#piru-canvas{pointer-events:none}.piru-speech{bottom:110%;max-width:130px}
@media(max-width:800px){#piru-wanderer{width:43px;height:43px;bottom:58px}.piru-speech{max-width:120px}}

@font-face{font-family:"Piru Hand";src:url("assets/fonts/PatrickHand-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
.piru-speech,.piru-name-tag{position:absolute;pointer-events:none;font-family:"Piru Hand","Comic Sans MS",cursive;font-weight:400;color:#515c67;text-shadow:0 1px 2px #fff,0 0 4px #fff;line-height:1.15;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;opacity:1;transition:none;text-align:center;transform:translateX(-50%)}.piru-speech{bottom:calc(100% + 7px);left:50%;width:max-content;max-width:145px;font-size:.875rem;line-height:1.25}.piru-name-tag{top:calc(100% + 2px);left:50%;font-size:.8125rem;letter-spacing:.04em;white-space:nowrap}

#piru-pet::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,44px);height:max(100%,44px)}

/* Frame the original1536x864 photo at x390,y70,width830,height630. */
.photo-card-cropped{width:calc(235px * 830 / 630);flex-basis:calc(235px * 830 / 630)}.photo-crop{position:relative;overflow:hidden;width:100%;aspect-ratio:830/630}.photo-crop img,#photo-frame.is-cropped #full-photo{position:absolute;left:-46.987952%;top:-11.111111%;width:185.060241%;height:137.142857%;max-width:none;max-height:none;object-fit:fill;object-position:center;margin:0;border-radius:0}#photo-frame{display:contents}#photo-frame.is-cropped{display:block;position:relative;overflow:hidden;width:min(830px,calc(100vw - 80px),calc((100dvh - 170px) * 830 / 630));aspect-ratio:830/630;margin-inline:auto;border-radius:6px}
@media(max-width:800px){.photo-card-cropped{width:calc(215px * 830 / 630);flex-basis:calc(215px * 830 / 630)}}

.maintenance-status{display:inline-flex;align-items:center;width:fit-content;border-radius:30px;background:var(--yellow);color:var(--ink);font-size:.875rem;font-weight:600;line-height:1.3;padding:9px 14px;margin:0 0 19px}.playground-teaser{display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--blue);border-radius:18px;padding:34px 38px;margin-bottom:78px}.playground-teaser h2{font-size:2.2rem;margin-bottom:14px}.playground-teaser p:last-child{max-width:600px;margin-bottom:0;line-height:1.65;color:#415367}.playground-teaser .button{flex-shrink:0}.header nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px}
.playground-main{padding-block:55px 80px}.playground-notice{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:75px}.playground-notice h1{font-size:clamp(3rem,5.9vw,5.5rem);margin-bottom:27px}.playground-notice-copy>p:not(.maintenance-status){max-width:540px;font-size:1rem;line-height:1.7;color:var(--muted)}.playground-notice-copy>.playground-lead{font-size:1.3rem!important;color:var(--ink)!important;margin-bottom:17px}.playground-notice .button{margin-top:13px}.playground-nap{margin:0;overflow:hidden;border-radius:48% 48% 18px 18px;background:var(--blue);padding:42px 25px 23px;transform:rotate(2deg)}.playground-nap img{display:block;width:100%;height:auto;aspect-ratio:1/1.08;object-fit:cover;object-position:37% 50%;border-radius:48% 48% 10px 10px}.playground-nap figcaption{font-family:"Piru Hand",cursive;font-size:1.3rem;text-align:center;line-height:1.4;color:#415367;padding:20px 3px 0}.playground-plan{margin-top:85px;padding-top:46px;border-top:1px solid var(--line)}.playground-plan .eyebrow{margin-bottom:16px}.playground-plan h2{font-size:clamp(2rem,3.4vw,3rem)}.playground-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;margin-top:36px}.feature-number{display:block;font-family:"Piru Hand",cursive;font-size:1.4rem;color:#526274;margin-bottom:18px}.playground-features h3{font-size:1.2rem;letter-spacing:-.03em;margin-bottom:14px}.playground-features p{font-size:1rem;line-height:1.7;color:var(--muted);margin:0}.playground-footer{border-top:1px solid var(--line)}
@media(max-width:1100px){.header nav{gap:19px}.playground-notice{gap:40px}.playground-teaser{gap:25px}}
@media(max-width:800px){.header{flex-wrap:wrap}.header nav{width:100%;flex-wrap:wrap;gap:9px 22px;font-size:.875rem}.header nav a{min-height:44px;display:inline-flex;align-items:center}.playground-teaser{padding:27px 25px;flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:55px}.playground-teaser h2{font-size:2rem}.playground-main{padding-block:28px 52px}.playground-notice{grid-template-columns:1fr;gap:40px}.playground-notice h1{font-size:clamp(3rem,12vw,5rem)}.playground-nap{width:min(400px,92%);margin-inline:auto;padding:28px 19px 19px}.playground-nap img{aspect-ratio:1.2/1}.playground-plan{margin-top:53px;padding-top:34px}.playground-features{grid-template-columns:1fr;gap:25px;margin-top:29px}.playground-features article{border-bottom:1px solid var(--line);padding-bottom:25px}.playground-features article:last-child{border-bottom:0;padding-bottom:0}.feature-number{margin-bottom:9px}}

/* Compact navigation keeps every destination available on smaller screens. */
.nav-toggle{display:none;align-items:center;justify-content:center;gap:11px;min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:24px;background:var(--paper);font-size:.875rem}
.nav-toggle-icon{position:relative;display:block;width:17px;height:12px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor}
.nav-toggle-icon::after{content:"";position:absolute;top:4px;left:0;right:0;border-top:1.5px solid currentColor}
.nav-toggle[aria-expanded="true"]{background:var(--yellow);border-color:var(--yellow)}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon{height:17px;border:0}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon::before,.nav-toggle[aria-expanded="true"] .nav-toggle-icon::after{content:"";position:absolute;top:8px;left:0;right:0;border-top:1.5px solid currentColor;transform:rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon::after{transform:rotate(-45deg)}
.piru-controls button,#piru-show{min-height:44px;font-size:.875rem}
.photo-card:focus-visible{outline-offset:-4px}
.contact-link>span:first-child{min-width:0;overflow-wrap:anywhere}
.contact-link>span:last-child{flex-shrink:0}
@media(max-width:800px){
  .nav-enhanced{gap:0 16px;align-items:center}
  .nav-enhanced .nav-toggle{display:inline-flex;margin-left:auto}
  .nav-enhanced nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;padding:14px;margin-top:16px;background:var(--pale);border:1px solid var(--line);border-radius:16px}
  .nav-enhanced nav a{font-size:1rem;min-height:48px;padding:12px;border-radius:9px;line-height:1.4;overflow-wrap:anywhere}
  .nav-enhanced nav a:hover,.nav-enhanced nav a[aria-current="page"]{background:var(--blue);color:var(--ink)}
  .nav-enhanced nav .nav-contact{display:flex;grid-column:1/-1;justify-content:center;background:var(--yellow);border-color:transparent;margin-top:4px}
  .header:not(.nav-enhanced) nav .nav-contact{display:inline-flex}
}
@media(max-width:380px){.nav-enhanced nav{grid-template-columns:1fr}.nav-enhanced .wordmark{font-size:1.5rem}.nav-enhanced .wordmark span{font-size:.9375rem}}

.development-link{display:inline-block;color:var(--muted);font-size:.8125rem;line-height:1.5;text-underline-offset:4px}.development-link:hover{color:var(--ink)}
