@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Cormorant+Garamond:wght@500;600;700&display=swap');
:root{--navy:#0c2343;--ink:#102a48;--sky:#e7f5f8;--gold:#dfac49;--paper:#fffefa;--line:#d9e6e8;font-family:'DM Sans',Arial,sans-serif;color:var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff}button{font:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:4px solid #efb640;outline-offset:3px}.skip{position:absolute;left:-999px;top:10px;z-index:100;background:#fff;padding:12px}.skip:focus{left:10px}p,h1,h2,h3{margin-top:0}[hidden]{display:none!important}
.site-ribbon{background:var(--navy);color:#dce9f4;display:flex;justify-content:space-between;padding:7px clamp(15px,4vw,60px);font-size:10px;font-weight:800;letter-spacing:.18em}.game-header{min-height:93px;padding:13px clamp(18px,4vw,60px);display:flex;align-items:center;gap:22px;background:#fff;box-shadow:0 3px 15px #0c234317;position:relative;z-index:20}.church-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);line-height:1}.brand-icon{font-size:33px;color:#5275b3}.church-brand strong{display:block;font:700 31px/.8 'Cormorant Garamond',Georgia,serif}.church-brand small{display:block;font-size:8px;letter-spacing:.15em;font-weight:800;margin-top:6px}.game-mark{font:700 25px 'Cormorant Garamond',Georgia,serif;color:var(--navy);margin:auto;white-space:nowrap}.game-mark span{color:#af7732}.header-actions{display:flex;align-items:center;gap:12px}.discovery-count{font-size:12px;font-weight:800;color:#466480;white-space:nowrap}.utility-button{border:1px solid #b7c8d5;border-radius:999px;background:white;color:var(--navy);font-size:12px;font-weight:800;padding:9px 13px;white-space:nowrap}.utility-button:hover{background:#e7f5f8}
main{max-width:1500px;margin:0 auto;min-height:calc(100vh - 165px)}.screen{display:none}.screen.active{display:block}.overline{text-transform:uppercase;letter-spacing:.18em;color:#8b6434;font-size:11px;font-weight:800;margin-bottom:10px}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;color:var(--navy);font-weight:700;line-height:.99}h1{font-size:clamp(62px,6vw,108px);letter-spacing:-.055em;margin-bottom:24px}h1 em{color:#9a6731;font-style:normal}h2{font-size:clamp(48px,5vw,78px);letter-spacing:-.04em;margin-bottom:10px}.screen-heading{text-align:center;padding:40px 20px 24px;position:relative}.screen-heading p:last-child{color:#53677d;font-size:17px}.screen-heading .path-link{position:absolute;left:4%;top:42px}.path-link{border:0;background:transparent;color:var(--navy);font-weight:800;font-size:14px;text-decoration:underline;text-decoration-color:#d1a25a;text-underline-offset:6px}.text-action{border:0;background:transparent;color:var(--navy);font-weight:800;text-decoration:underline;text-decoration-color:#dfac49;text-underline-offset:5px;padding:10px}.text-action:hover,.path-link:hover{color:#97672f}
#launch{min-height:calc(100svh - 165px);background:#163b62 url('assets/barnyard-open.webp') center/cover no-repeat}
.launch-landscape{min-height:calc(100svh - 165px);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:38px 18px;background:linear-gradient(90deg,#07203bc4,#11394e79,#07203bc4)}
.launch-plaque{display:block;position:relative;width:min(780px,94vw);aspect-ratio:3/2;border:0;background:transparent;padding:0;filter:drop-shadow(0 26px 20px #00152792);transition:transform .25s ease,filter .25s ease}
.launch-plaque:hover,.launch-plaque:focus-visible{transform:translateY(-8px) scale(1.015);filter:drop-shadow(0 32px 24px #001527aa)}
.launch-plaque>img{display:block;width:100%;height:100%;object-fit:contain}
.launch-copy{position:absolute;inset:15% 12% 16%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#173452;text-shadow:0 1px 0 #ffdfa6;pointer-events:none}
.launch-copy small{font-size:clamp(9px,1.3vw,14px);font-weight:800;letter-spacing:.16em;color:#593a18}.launch-copy strong{font:700 clamp(52px,8vw,104px)/.86 'Cormorant Garamond',Georgia,serif;letter-spacing:-.04em;margin:10px 0 6px}.launch-copy em{font:700 clamp(16px,2.4vw,27px)/1.1 'DM Sans',Arial,sans-serif;font-style:normal;color:#5c341b}.launch-invitation{display:block;background:#0c4a62;color:#fff7d9;border:3px solid #e9bd5d;border-radius:999px;box-shadow:0 7px 0 #784a1b,0 12px 15px #4b251b88;text-shadow:none;padding:9px 28px;font-weight:800;font-size:clamp(16px,2vw,23px);margin-top:17px}.launch-invitation b{margin-left:7px}.launch-note{margin:18px 0 0;color:#fff;font-size:14px;font-weight:700;text-align:center;text-shadow:0 2px 5px #092f45}
@media(max-width:700px){#launch,.launch-landscape{min-height:calc(100svh - 68px)}.launch-landscape{padding:16px 5px}.launch-plaque{width:min(98vw,600px)}.launch-copy{inset:16% 13% 14%}.launch-copy small{font-size:7px;letter-spacing:.1em}.launch-copy strong{font-size:clamp(40px,9vw,65px);margin:5px 0}.launch-copy em{font-size:clamp(12px,3vw,19px)}.launch-invitation{font-size:13px;padding:5px 14px;margin-top:8px;border-width:2px;box-shadow:0 4px 0 #784a1b}.launch-note{font-size:12px}}
.yard-shell{position:relative;min-height:calc(100svh - 165px);background:#123f55}.yard-top{display:flex;justify-content:space-between;align-items:center;padding:14px clamp(16px,3vw,40px);background:#123b54;color:#fff3d2;gap:12px}.yard-top small{display:block;font-size:10px;font-weight:800;letter-spacing:.15em;color:#edc878}.yard-top strong{display:block;font:700 clamp(30px,3.2vw,48px)/1 'Cormorant Garamond',Georgia,serif}.yard-top>span{font-weight:800;font-size:13px;color:#f4e6b8}.open-yard-scroll{width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:#c48440 #102a3c}.open-yard{position:relative;width:max(1200px,100%);aspect-ratio:1672/941;background:#a5d573 url('assets/barnyard-open.webp') center/100% 100% no-repeat;overflow:hidden}.open-yard-animals{position:absolute;inset:0}.yard-animal{position:absolute;transform:translate(-50%,-100%);display:block;width:var(--animal-size,9%);height:var(--animal-size,9%);min-width:72px;min-height:72px;border:0;background:transparent;padding:0;filter:drop-shadow(0 8px 5px #253e246b);z-index:2;transition:transform .2s ease,filter .2s ease;touch-action:manipulation}.yard-animal:hover,.yard-animal:focus-visible{transform:translate(-50%,-100%) scale(1.13);filter:drop-shadow(0 10px 8px #193522aa)}.yard-animal img{width:100%;height:100%;object-fit:contain;pointer-events:none}.yard-animal.met:after{content:'✓';position:absolute;right:-4px;top:8px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#256e3c;color:white;border:2px solid #e2d698;font-weight:800;font-size:14px}.yard-sprout{position:absolute;width:7.5%;height:23%;object-fit:contain;left:47%;bottom:-1%;z-index:2;filter:drop-shadow(0 10px 6px #27432d77)}.yard-paths{display:flex;justify-content:center;align-items:center;gap:clamp(4px,1vw,12px);flex-wrap:wrap;padding:10px;background:#123b54}.yard-paths .wood-button{font-size:clamp(12px,1.4vw,17px);min-height:58px}.animal-focus{position:absolute;inset:0;z-index:12;background:#0b2d3c;animation:focus-appear .6s ease both}.focus-landscape{position:relative;min-height:calc(100svh - 165px);overflow:hidden;background:linear-gradient(#052a4580,#062832c2),url('assets/barnyard-open.webp') center/cover no-repeat;color:#fff}.focus-landscape:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 52%,#ffffff00 20%,#06283d88 100%);pointer-events:none}.focus-back{position:absolute;left:3%;top:20px;z-index:5;min-height:55px}.focus-kicker{position:relative;text-align:center;margin:16px 0 0;font-size:12px;font-weight:800;letter-spacing:.2em;color:#f7d783;text-transform:uppercase}.focus-landscape h2{position:relative;text-align:center;color:#fff5d2;font-size:clamp(55px,7vw,95px);text-shadow:0 5px 8px #16331c;margin:0}.focus-friends{position:relative;display:flex;justify-content:center;align-items:end;height:clamp(250px,45vh,450px);gap:2vw}.focus-friends #focus-animal{height:96%;width:min(39vw,440px);background:transparent;border:0;padding:0;filter:drop-shadow(0 18px 12px #051d2b9c);animation:focus-walk-in .65s cubic-bezier(.2,.8,.2,1) both}.focus-friends #focus-animal img{height:100%;width:100%;object-fit:contain}.focus-friends .focus-sprout{height:78%;width:min(24vw,250px);object-fit:contain;filter:drop-shadow(0 12px 8px #051d2b9c);animation:focus-walk-in .75s .12s cubic-bezier(.2,.8,.2,1) both}.focus-story{position:relative;width:min(850px,92%);min-height:150px;margin:0 auto 20px;padding:16px 25px 20px;background:#fff9e9f4;border:4px solid #e1b255;border-radius:25px;box-shadow:0 15px 35px #001b27aa;color:#17324b;text-align:center}.focus-sound{position:absolute;left:-19px;top:-35px;background:#e8a73f;border:3px solid white;border-radius:50%;width:90px;height:70px;display:grid;place-items:center;transform:rotate(-12deg);font-weight:900;color:#17324b;box-shadow:0 6px 8px #001b2766}.focus-story #focus-story-text{margin:2px 0 14px;font-size:clamp(17px,2.1vw,24px);font-weight:700;line-height:1.35}.focus-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.focus-actions .wood-button{min-height:50px;font-size:14px}.focus-actions .wood-button span{padding:0 4px}@keyframes focus-appear{from{opacity:0;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes focus-walk-in{from{opacity:0;transform:translateY(30px) scale(.84)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:700px){.yard-shell{min-height:calc(100svh - 68px)}.yard-top{padding:10px 13px}.yard-top strong{font-size:29px}.yard-top>span{font-size:10px}.open-yard{width:1200px}.yard-paths{padding:7px}.yard-paths .wood-button{min-height:49px}.animal-focus{position:fixed;inset:0;overflow-y:auto}.focus-landscape{min-height:100svh;padding:86px 8px 20px}.focus-back{top:13px;left:12px}.focus-kicker{margin:0}.focus-landscape h2{font-size:61px}.focus-friends{height:34svh;min-height:220px;gap:0}.focus-friends #focus-animal{width:55vw}.focus-friends .focus-sprout{width:33vw}.focus-story{width:96%;margin-top:6px;padding:24px 13px 16px}.focus-sound{left:8px;top:-31px;width:72px;height:55px;font-size:13px}.focus-story #focus-story-text{font-size:18px}.focus-actions .wood-button{font-size:12px;min-height:46px}}
.wood-button{border:0;background:transparent url('assets/wood-sign.png') center/100% 100% no-repeat;color:#2a3440;text-shadow:0 1px #ffe2a7;min-width:168px;min-height:65px;padding:12px 28px;font-weight:800;font-size:17px;filter:drop-shadow(0 6px 5px #0e304035);transition:transform .18s,filter .18s}.wood-button span{position:relative;z-index:1}.wood-button:hover{transform:translateY(-4px) rotate(-1deg);filter:drop-shadow(0 10px 7px #0e304045)}.wood-button:active{transform:translateY(1px)}.wood-button.large{min-width:240px;min-height:83px;font-size:21px}.wood-button.small{min-width:115px;min-height:48px;font-size:14px;padding:8px 18px}.wood-button.selected{filter:drop-shadow(0 0 8px #ffdb70) drop-shadow(0 5px 5px #0e304040)}
.welcome{min-height:615px;position:relative;display:flex;align-items:center;overflow:hidden;background:linear-gradient(90deg,#f7fbfc 0%,#e8f4f6 48%,#ffffff00 70%),url('assets/farm-map.png') center/cover no-repeat}.welcome:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f8fcfcef 0%,#f8fcfce5 33%,#f8fcfc00 67%);pointer-events:none}.welcome-copy{position:relative;z-index:2;width:55%;padding:35px 0 35px clamp(30px,6vw,95px)}.welcome-copy>p:not(.overline){font-size:20px;line-height:1.5;max-width:490px;color:#3e5870}.welcome-copy .wood-button{display:block}.welcome-copy .text-action{display:block;margin-top:8px}.welcome-sprout{position:absolute;z-index:2;bottom:-14px;right:5%;height:min(85%,580px);width:auto;filter:drop-shadow(0 13px 18px #152a4470)}.welcome-instruction{display:flex;justify-content:center;gap:clamp(15px,5vw,75px);padding:23px 15px 32px;border-top:3px solid #e5d4ad;color:#557083;font-size:15px}.welcome-instruction span{display:flex;gap:8px}.welcome-instruction b{color:var(--navy)}
#map{background:linear-gradient(#fff,#eaf4f5);padding-bottom:35px}.map-stage{width:min(93%,1260px);position:relative;margin:auto;border:7px solid #fff;outline:1px solid #ccdadd;box-shadow:0 20px 50px #0c234335;overflow:hidden;aspect-ratio:3/2}.map-stage>img:first-child{display:block;width:100%;height:100%;object-fit:cover}.map-spots{position:absolute;inset:0}.map-spot{position:absolute;transform:translate(-50%,-50%);min-width:18%;min-height:68px;font-size:17px}.map-spot:hover{transform:translate(-50%,-57%) rotate(-2deg)}.map-sprout{position:absolute;bottom:4%;left:47%;height:30%;max-width:17%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 9px 8px #0007)}.map-extras{text-align:center;margin:20px 0}.map-extras .wood-button{margin:0 8px}
#place{background:#f8fcfc;padding-bottom:35px}.place-top{display:grid;grid-template-columns:170px 1fr 170px;align-items:center;text-align:center;gap:14px;padding:28px 4% 20px}.place-top h2{margin:0}.place-top p{margin:0}.place-top #place-prompt{font-size:15px;color:#536b7e;margin-top:6px}.place-progress{font-size:13px;color:#6a7e85;font-weight:800}.place-stage{position:relative;width:min(94%,1260px);margin:auto;box-shadow:0 22px 55px #0c23433a}.scene-canvas{position:relative;aspect-ratio:3/2;overflow:hidden;border:7px solid #fff;background:#e7f5f8}.scene-canvas>img{display:block;width:100%;height:100%;object-fit:cover}.animal-areas{position:absolute;inset:0}.animal-target{position:absolute;transform:translate(-50%,-50%);background:transparent;border:2px solid transparent;border-radius:45%;color:transparent;cursor:pointer}.animal-target:hover,.animal-target:focus-visible{border:3px dashed #fff4b2;box-shadow:0 0 0 4px #0c234380,0 0 22px #fff6a8;outline:none}.animal-target:active{background:#ffffff33}.sound-word{position:absolute;transform:translate(-50%,-50%) rotate(-6deg);background:#fff8df;color:#0c2343;border:3px solid #d2a94d;box-shadow:0 8px 18px #0005;border-radius:22px 22px 22px 5px;padding:9px 17px;font:800 clamp(16px,2.6vw,30px) 'DM Sans',sans-serif;pointer-events:none;z-index:7;animation:pop .25s ease-out}.guide{position:absolute;transform:translate(-50%,-55%);width:clamp(90px,13%,165px);border:0;background:transparent;padding:0;z-index:8;filter:drop-shadow(0 8px 7px #0007);animation:arrive .35s ease-out}.guide img{display:block;width:100%;height:auto}.guide-label{display:block;position:absolute;bottom:-3%;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--navy);border:2px solid #fff3c8;border-radius:16px;padding:5px 9px;color:white;font-size:12px;font-weight:800}.guide:hover{filter:drop-shadow(0 0 10px #fff4a3) drop-shadow(0 8px 7px #0007)}.speech{position:absolute;right:1.5%;bottom:2%;z-index:10;width:min(46%,560px);min-height:275px;padding:37px 52px 42px 60px;background:transparent url('assets/sprout-speech.png') center/100% 100% no-repeat;filter:drop-shadow(0 13px 15px #001b324e)}.speech-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#956632;margin:0 0 9px}.speech-text{font-size:clamp(16px,1.55vw,21px);line-height:1.42;font-weight:700;color:var(--navy);margin:0 0 8px}.speech-close{position:absolute;right:11%;top:11%;border:0;background:transparent;color:var(--navy);font-size:30px;font-weight:800}.speech-actions{display:flex;align-items:center;gap:8px;justify-content:space-between}.speech-page{position:absolute;bottom:19px;right:9%;color:#7c6a50;font-size:11px;font-weight:800}.place-bottom{width:min(94%,1260px);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 5px;font-size:14px;color:#566c74}.place-bottom>span{max-width:650px}
#garden{background:linear-gradient(#f9fdfb,#eaf4f1);padding-bottom:20px}.garden-tools{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:17px}.garden-stage{width:min(94%,1260px);aspect-ratio:3/2;position:relative;margin:auto;box-shadow:0 22px 55px #0c23433a;border:7px solid white;overflow:hidden}.garden-stage>img{width:100%;height:100%;object-fit:cover;display:block}.plots{position:absolute;inset:0}.plot{position:absolute;transform:translate(-50%,-50%);width:29%;height:52%;border:2px solid transparent;background:transparent;padding:0;cursor:pointer}.plot:hover,.plot:focus-visible{border:3px dashed #fff4ac;border-radius:45%;outline:none;box-shadow:0 0 0 3px #18385880}.plot-art{position:absolute;left:50%;bottom:10%;transform:translateX(-50%);width:58%;height:80%;object-fit:contain;filter:drop-shadow(0 6px 5px #0005);transition:transform .45s,opacity .45s}.plot-art.seed{width:15%;height:15%;bottom:22%;background:radial-gradient(ellipse,#f1cf75 30%,#966735 70%);border:2px solid #664926;border-radius:50%}.plot-art.sprout{width:20%;height:25%;bottom:25%;background:none}.plot-art.young{width:38%;height:55%}.plot-art.mature{width:70%;height:90%;bottom:5%}.plot-label{position:absolute;bottom:2%;left:50%;transform:translateX(-50%);width:75%;min-height:43px;background:url('assets/wood-sign.png') center/100% 100% no-repeat;display:grid;place-items:center;color:#263a39;font-size:clamp(11px,1.5vw,18px);font-weight:800;text-shadow:0 1px #ffe9bd}.garden-info{width:min(94%,1260px);margin:15px auto 0;display:flex;justify-content:center;align-items:center;gap:15px;min-height:115px}.garden-info p{background:#fff;box-shadow:0 5px 22px #0c234315;border-left:4px solid #d5a64f;padding:18px 22px;margin:0;font-weight:800;color:var(--navy);font-size:18px}.garden-sprout{border:0;background:transparent;position:relative;display:flex;align-items:end;gap:3px;color:var(--navy);font-weight:800}.garden-sprout img{width:78px;height:100px;object-fit:contain}.garden-sprout span{font-size:13px;text-decoration:underline;text-decoration-color:var(--gold)}.garden-footer{display:flex;justify-content:space-between;max-width:1120px;margin:auto;padding:10px 20px;color:#677c82;font-size:13px;font-weight:800}
#hunt,#care{padding-bottom:40px;background:#f7fbfc}.activity-scene,.care-scene{position:relative;width:min(94%,1100px);min-height:610px;margin:auto;overflow:hidden;border:7px solid #fff;box-shadow:0 20px 50px #0c234333;background:#dfe8e2}.activity-scene>img,.care-scene>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.7)}.activity-inner,.care-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:610px;padding:30px}.picture-choices{display:flex;gap:17px;justify-content:center;width:100%}.picture-choice{width:min(28%,210px);min-height:225px;border:4px solid #fffbef;border-radius:20px;overflow:hidden;background:#fff8e8;box-shadow:0 12px 22px #071e3899;padding:0;transition:transform .17s}.picture-choice:hover{transform:translateY(-5px)}.picture-choice.correct{outline:6px solid #8be2a2}.picture-choice.wrong{outline:6px solid #f4bd78}.picture-choice .choice-image{display:block;width:100%;height:165px;background-repeat:no-repeat;background-size:300%;border-bottom:3px solid #d4ad5c}.picture-choice .choice-name{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;font-weight:700;padding:7px}.activity-message{background:#fffdf2;border:3px solid #d4ad5c;border-radius:16px;padding:12px 20px;color:var(--navy);font-weight:800;min-width:260px;text-align:center;margin:0}.care-scene{background:#d8ede3}.care-scene>img:first-child{filter:brightness(.6)}.care-content{align-items:start;width:70%;margin-left:7%}.care-content>p:first-child{color:#fff9db;font:700 clamp(35px,4vw,60px) 'Cormorant Garamond',Georgia,serif;text-shadow:0 4px 7px #0018}.care-options{display:flex;gap:10px;flex-wrap:wrap}.care-options .wood-button{min-width:155px}.care-content #care-message{color:white;font-weight:800;text-shadow:0 3px 5px #001a}.care-sprout{position:absolute;right:2%;bottom:0;width:24%;height:75%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 10px 12px #0019)}
.game-footer{background:var(--navy);color:#dce9f4;padding:25px clamp(20px,5vw,70px);display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px}.game-footer>div{display:flex;gap:20px}.game-footer a,.footer-link{color:white;font:700 12px 'DM Sans',sans-serif}.footer-link{border:0;background:transparent;text-decoration:underline;cursor:pointer}dialog{border:3px solid #d0a45c;border-radius:18px;max-width:min(640px,92vw);max-height:84vh;padding:30px;background:#fffefa;color:var(--navy);box-shadow:0 20px 65px #0018}dialog::backdrop{background:#0c2343a8}dialog h2{font-size:44px}#credits-close{float:right;border:0;background:transparent;font-size:32px;color:var(--navy)}#credits-list{max-height:35vh;overflow:auto;font-size:13px}#credits-list p{margin:8px 0}#toast{position:fixed;bottom:15px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:50;background:var(--navy);border:2px solid #d4ad5c;border-radius:16px;color:white;padding:10px 17px;font-weight:800;max-width:85vw;text-align:center;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}
@keyframes pop{from{transform:translate(-50%,-50%) scale(.5)}to{transform:translate(-50%,-50%) rotate(-6deg) scale(1)}}@keyframes arrive{from{opacity:0;transform:translate(-50%,-35%) scale(.6)}to{opacity:1;transform:translate(-50%,-55%) scale(1)}}
@media(max-width:950px){.game-mark{display:none}.header-actions{margin-left:auto}.welcome-copy{width:62%}.welcome-sprout{right:-5%;height:73%}.place-top{grid-template-columns:100px 1fr 100px}.speech{width:55%;min-height:245px;padding:31px 42px 31px 50px}.speech-text{font-size:16px}.speech-close{right:10%;top:9%}}
@media(max-width:700px){.site-ribbon{font-size:8px;gap:10px}.site-ribbon span:first-child{display:none}.game-header{min-height:66px;padding:8px 13px}.church-brand strong{font-size:25px}.brand-icon{font-size:25px}.church-brand small{font-size:6px}.discovery-count{display:none}.welcome{min-height:650px;align-items:start;background-position:65% center}.welcome:after{background:linear-gradient(#f8fcfcf9 0%,#f8fcfcd9 44%,#f8fcfc00 72%)}.welcome-copy{width:100%;padding:39px 24px 260px}.welcome-copy p:not(.overline){font-size:17px;max-width:360px}.welcome-sprout{height:300px;right:6%;bottom:-14px}.welcome-instruction{display:block;padding:18px 25px}.welcome-instruction span{padding:5px 0}.screen-heading{padding:32px 15px 18px}.screen-heading .path-link{position:static;display:block;text-align:left;margin-bottom:16px}.screen-heading p:last-child{font-size:15px}.map-stage{width:96%;aspect-ratio:3/2;overflow:visible}.map-stage>img:first-child{height:auto}.map-sprout{display:none}.map-spots{position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;padding:10px 0;background:#f6fbfb}.map-spot,.map-spot:hover{position:static;transform:none;width:100%;min-width:0;font-size:13px;min-height:60px;padding:7px}.map-extras{margin-top:330px}.map-extras .wood-button{margin:3px}.place-top{display:block;text-align:center;padding:17px 15px}.place-top .path-link{display:block;text-align:left}.place-top h2{font-size:49px}.place-progress{display:block;margin-top:5px}.place-stage{width:96%}.scene-canvas{border-width:4px}.guide{width:75px}.guide-label{font-size:9px;padding:3px 5px}.sound-word{font-size:15px;padding:5px 9px}.speech{position:relative;width:100%;min-height:225px;right:auto;bottom:auto;margin-top:8px;padding:30px 36px 35px 42px}.speech-text{font-size:16px}.speech-kicker{font-size:10px}.speech-actions .wood-button{min-width:100px}.place-bottom{width:96%;display:block;text-align:center}.place-bottom .wood-button{display:block;margin:10px auto}.garden-stage{width:96%;border-width:4px}.garden-tools{gap:1px}.garden-tools .wood-button{min-width:30%;font-size:12px;min-height:52px;padding:7px}.plot-label{min-height:30px;font-size:10px}.garden-info{width:96%;margin-top:8px}.garden-info p{font-size:14px;padding:12px}.garden-sprout img{width:48px;height:67px}.garden-sprout span{display:none}.activity-scene,.care-scene{width:96%;min-height:550px}.activity-inner,.care-content{min-height:550px;padding:20px}.picture-choices{gap:5px}.picture-choice{width:33%;min-height:150px;border-width:2px}.picture-choice .choice-image{height:100px}.picture-choice .choice-name{font-size:19px}.care-content{width:82%;margin-left:0}.care-content>p:first-child{font-size:38px}.care-sprout{opacity:.7;width:37%;height:45%}.care-options .wood-button{min-width:40%;font-size:14px}.game-footer{display:block}.game-footer>div{margin-top:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:700px){.map-stage{aspect-ratio:auto}.map-stage>img:first-child{display:block;width:100%;height:auto}.map-extras{margin-top:15px}}

/* The farm crossroads is a direction chooser. The artwork turns toward each path. */
.map-stage{aspect-ratio:auto;overflow:visible;border:0;outline:0;background:transparent;box-shadow:none;text-align:center}
.map-window{height:clamp(360px,50vw,610px);position:relative;overflow:hidden;border:7px solid white;outline:1px solid #ccdadd;box-shadow:0 20px 50px #0c234335;background:#cde6e7}
#map-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s ease,transform-origin .65s ease}
.map-window:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0c23436e);pointer-events:none}
.map-sprout{z-index:2;bottom:-2%;left:50%;transform:translateX(-50%);height:43%;max-width:24%}
.compass-controls{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:clamp(10px,3vw,35px);width:min(94%,820px);margin:-29px auto 0}
.compass-controls .wood-button{flex:0 0 auto;min-width:145px}
.compass-destination{min-width:260px;flex:1;min-height:118px;padding:15px 24px;background:#fffdf3;border:3px solid #d2aa66;box-shadow:0 8px 20px #0c234330;border-radius:30px;color:var(--navy)}
.compass-destination small{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:800;color:#916c3d}
.compass-destination strong{display:block;font:700 clamp(31px,3.5vw,48px) 'Cormorant Garamond',Georgia,serif;line-height:1}
.compass-destination span{display:block;font-size:13px;font-weight:700;margin-top:5px}
.go-looking{margin:12px auto 0}
.map-extras{margin:16px auto 0}
.map-extras p{font-size:12px;font-weight:700;color:#506d7b;margin:9px 20px}
.map-extras .ending-path{filter:drop-shadow(0 0 8px #efc973)}
.ending-scene{position:relative;min-height:690px;overflow:hidden;background:#e9f2ef}
.ending-scene>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.74)}
.ending-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0c2343ed 0%,#0c2343be 43%,transparent 84%);pointer-events:none}
.ending-copy{position:relative;z-index:2;width:min(62%,700px);padding:clamp(48px,6vw,90px) 0 40px clamp(30px,6vw,95px);color:white}
.ending-copy h2{color:#fff6d7;font-size:clamp(54px,6vw,86px)}
.ending-copy .overline{color:#f1c873}
.ending-speech{background:#fffdf3;border:4px solid #d5aa58;border-radius:28px;padding:25px 30px;box-shadow:0 14px 24px #0016;margin:30px 0 16px;color:var(--navy)}
.ending-speech p{font-size:clamp(18px,2.1vw,27px);line-height:1.43;font-weight:700;margin:0 0 10px}
.ending-speech small{font-weight:800;color:#93672c}
.ending-actions{display:flex;gap:10px;flex-wrap:wrap}
.ending-copy>.text-action{color:white;margin-top:16px}
.ending-sprout{position:absolute;z-index:2;bottom:-2%;right:0;width:37%;max-height:90%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 12px 20px #001b)}
@media(max-width:700px){
 .map-window{height:360px;border-width:4px}
 .map-sprout{display:block;height:42%;max-width:37%}
 .compass-controls{width:100%;gap:0;margin:-20px auto 0}
 .compass-controls .wood-button{min-width:77px;min-height:54px;padding:6px;font-size:12px}
 .compass-destination{min-width:0;min-height:111px;padding:13px 6px;border-radius:18px}
 .compass-destination strong{font-size:30px}
 .compass-destination span{font-size:11px}
 .go-looking{display:block;margin:10px auto}
 .map-extras{margin-top:10px}
 .ending-scene{min-height:760px}
 .ending-scene:after{background:linear-gradient(#0c2343e9 0%,#0c2343d9 57%,transparent 100%)}
 .ending-copy{width:100%;padding:38px 22px 230px}
 .ending-copy h2{font-size:58px}
 .ending-speech{margin:20px 0 10px;padding:18px}
 .ending-speech p{font-size:18px}
 .ending-sprout{width:50%;height:290px;right:2%}
}

/* Crossroads: a full-scene view rather than an introductory card. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#home{display:none!important}
#map{padding:0;background:#0c2343}
#map .map-stage{width:100%;max-width:none;margin:0;border:0;box-shadow:none}
#map .map-window{height:clamp(610px,calc(100svh - 106px),890px);border:0;outline:0;box-shadow:none}
#map .map-window:after{display:none}
#map-image{width:100%;height:100%;object-fit:cover;transform:translate3d(var(--parallax-x,0px),var(--parallax-y,0px),0) scale(1.07);filter:saturate(1.06);transition:transform .35s ease,filter .45s ease,opacity .35s ease}
.depth-sky,.depth-ground{position:absolute;inset:0;pointer-events:none}
.depth-sky{background:linear-gradient(#0b234355 0%,transparent 25%,transparent 65%,#07243b55 100%);z-index:1}
.depth-ground{background:radial-gradient(ellipse at 50% 110%,#001c3377,transparent 55%);z-index:1}
.sprout-3d{position:absolute;width:clamp(190px,23vw,285px);height:clamp(260px,36vw,420px);bottom:-3%;left:50%;transform:translateX(-50%);z-index:4;pointer-events:none}
.sprout-3d canvas{display:block;width:100%;height:100%}
#map-sprout{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:clamp(240px,34vw,390px);width:clamp(170px,22vw,275px);max-width:none;border:0;background:transparent;padding:0;z-index:4;filter:drop-shadow(0 15px 10px #041c3699);cursor:pointer}
#map-sprout img{display:block;width:100%;height:100%;object-fit:contain}
.sprout-3d.ready~#map-sprout{opacity:0;pointer-events:auto}
.turn-help{position:absolute;z-index:5;bottom:11px;left:50%;transform:translateX(-50%);color:white;text-align:center;font-size:12px;font-weight:800;letter-spacing:.06em;text-shadow:0 2px 6px #001c38;margin:0;white-space:nowrap}
#map .compass-controls{position:absolute;z-index:6;inset:0;width:100%;height:100%;margin:0;display:block;pointer-events:none}
#map .compass-controls .wood-button{position:absolute;top:50%;min-width:clamp(110px,13vw,190px);min-height:66px;pointer-events:auto;transform:translateY(-50%);font-size:17px}
#map .compass-controls .wood-button:hover{transform:translateY(-57%)}
#turn-left{left:2%}#turn-right{right:2%}
#map .compass-destination{position:absolute;top:5%;left:4%;width:min(400px,45%);min-width:0;min-height:0;padding:19px 22px;background:#0c2343c9;backdrop-filter:blur(13px);border:1px solid #fff6d5a8;border-radius:22px;box-shadow:0 15px 30px #001a3666;color:white;text-align:left;pointer-events:none}
#map .compass-destination small{color:#efcf88}
#map .compass-destination strong{font-size:clamp(34px,4vw,58px);color:white;margin:2px 0}
#map .compass-destination span{font-size:14px;color:#e4f3f6}
#map .go-looking{position:absolute;z-index:5;top:42%;left:50%;margin:0;transform:translateX(-50%);min-width:260px;min-height:92px;filter:drop-shadow(0 13px 8px #001a3699)}
#map .go-looking:hover{transform:translateX(-50%) translateY(-7px) scale(1.04)}
#map .map-extras{background:#0c2343;color:#e8f4f8;margin:0;padding:18px 10px 24px}
#map .map-extras p{color:#d8e9ef;margin:7px 10px}
#map-window.is-turning #map-image{animation:camera-turn .46s ease both}
#map-window.is-walking #map-image{animation:walk-into-scene 1.25s ease-in forwards}
#map-window.is-walking .sprout-3d,#map-window.is-walking #map-sprout{animation:sprout-walk-away 1.25s ease-in forwards}
#map-window.is-walking .compass-controls,#map-window.is-walking .go-looking,#map-window.is-walking .turn-help{opacity:0;pointer-events:none}
@keyframes camera-turn{0%{opacity:.55;filter:blur(12px);transform:scale(1.1)}100%{opacity:1;filter:blur(0);transform:scale(1.02)}}
@keyframes walk-into-scene{0%{transform:scale(1.02);filter:blur(0)}70%{transform:scale(1.43);filter:blur(1px)}100%{transform:scale(1.78);filter:blur(8px)}}
@keyframes sprout-walk-away{0%{opacity:1;scale:1}35%{translate:0 -12px}70%{translate:0 -23px}100%{opacity:0;scale:.55;translate:0 -80px}}
#place .place-stage{width:min(100%,1500px)}
#place .scene-canvas{border:0;box-shadow:0 25px 55px #0c23433e}
#place .scene-canvas>img{transition:transform .55s ease,filter .55s ease}
#place .scene-canvas.is-exploring>img{transform:scale(1.09);filter:saturate(1.15)}
.yard-controls{display:flex;align-items:center;justify-content:center;gap:20px;padding:13px 10px;background:linear-gradient(#e2f1f2,#fff);text-align:center}
.yard-controls strong{min-width:190px;color:var(--navy);font:700 30px 'Cormorant Garamond',Georgia,serif}
.yard-controls .wood-button{min-width:150px}
@media(max-width:700px){
 #map .map-window{height:calc(100svh - 68px);min-height:570px}
 #map .compass-destination{left:4%;top:4%;width:72%;padding:13px 15px}
 #map .compass-destination strong{font-size:35px}
 #map .compass-destination span{font-size:11px}
 #map .compass-controls .wood-button{top:63%;min-width:91px;min-height:58px;padding:5px;font-size:12px}
 #turn-left{left:1%}#turn-right{right:1%}
 #map .go-looking{top:38%;min-width:218px;min-height:76px;font-size:17px}
 .sprout-3d{height:270px;width:185px;bottom:0}
 #map-sprout{height:265px;width:180px;bottom:0}
 .turn-help{font-size:10px}
 .yard-controls{gap:2px}
 .yard-controls .wood-button{min-width:100px;min-height:50px;font-size:11px;padding:6px}
 .yard-controls strong{min-width:0;flex:1;font-size:20px}
}
/* Sprout's supplied GLB moves between the open yard and the close-up. */
.open-yard .sprout-3d{position:absolute;left:46.5%;bottom:-1%;width:8.5%;height:25%;transform:none;z-index:3;pointer-events:none}
.open-yard .sprout-3d.ready + .yard-sprout{opacity:0}
#focus-sprout-mount{height:78%;width:min(24vw,250px);position:relative}
#focus-sprout-mount .sprout-3d{position:absolute;inset:0;width:100%;height:100%;transform:none;pointer-events:none}
#focus-sprout-mount:has(.sprout-3d.ready) + .focus-sprout{display:none}
@media(max-width:700px){#focus-sprout-mount{width:33vw;height:85%}}
#focus-sprout-mount:not(:has(.sprout-3d.ready)){display:none}
.yard-animal img{animation:animal-breathe 4s ease-in-out infinite;animation-delay:calc(var(--animal-delay,0) * -1s)}
@keyframes animal-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.animal-focus{transform-origin:var(--zoom-x,50%) var(--zoom-y,50%);animation:animal-zoom-in .55s cubic-bezier(.2,.75,.2,1) both}
.animal-focus.closing{animation:animal-zoom-out .36s ease-in both;pointer-events:none}
@keyframes animal-zoom-in{from{opacity:0;transform:scale(.72)}to{opacity:1;transform:scale(1)}}
@keyframes animal-zoom-out{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.72)}}
.picture-choice{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible;min-height:205px;padding:0;filter:drop-shadow(0 9px 6px #001c3499)}
.picture-choice .choice-image{display:block;height:165px;width:100%;object-fit:contain;border:0;background:none;filter:drop-shadow(0 8px 5px #142b3688)}
.picture-choice .choice-name{display:grid;place-items:center;min-height:50px;background:url('assets/wood-sign.png') center/100% 100% no-repeat;color:#15374b;text-shadow:0 1px #fff1c7;font-size:23px;padding:8px 14px}
@media(max-width:700px){.picture-choice{min-height:150px}.picture-choice .choice-image{height:100px}.picture-choice .choice-name{min-height:42px;font-size:18px;padding:5px}}
.yard-scroll-hint{display:none;margin:0;padding:8px;text-align:center;background:#123b54;color:#fff0c7;font-weight:800;font-size:13px}
@media(max-width:700px){.yard-scroll-hint{display:block}}
#map.active .open-yard{animation:walk-into-yard 1.1s cubic-bezier(.15,.7,.2,1) both}
@keyframes walk-into-yard{from{transform:scale(1.12);filter:blur(3px) brightness(1.12)}to{transform:scale(1);filter:blur(0) brightness(1)}}
.picture-choice.correct,.picture-choice.wrong{outline:none;box-shadow:none;border:0}
.picture-choice:focus-visible{outline:none}
.picture-choice:hover .choice-image,.picture-choice:focus-visible .choice-image{filter:drop-shadow(0 0 10px #fff9b9) drop-shadow(0 0 20px #f6bc56)}
.picture-choice.correct .choice-image{animation:animal-found-glow .7s ease-in-out 2;filter:drop-shadow(0 0 10px #faffb4) drop-shadow(0 0 28px #b4ff69) drop-shadow(0 0 42px #4bd978)}
.picture-choice.wrong .choice-image{filter:drop-shadow(0 0 8px #ffe5a0) drop-shadow(0 0 20px #ec9f55)}
@keyframes animal-found-glow{50%{transform:scale(1.1);filter:drop-shadow(0 0 15px #fff9c5) drop-shadow(0 0 42px #b1ff6a) drop-shadow(0 0 70px #41dd81)}}
/* Match the church site's Dark / Light switch and saved theme key. */
.theme-picker{display:flex;flex:none;gap:2px;padding:3px;border:1px solid #c8d4e3;border-radius:20px;background:#eef3f9}
.theme-picker button{border:0;border-radius:16px;padding:6px 10px;min-width:44px;min-height:34px;background:transparent;color:#61758d;font-size:10px;font-weight:800}
.theme-picker button[aria-pressed="true"]{background:#173d69;color:white;box-shadow:0 2px 5px #0b20351a}
html[data-theme="dark"]{color-scheme:dark;--ink:#e4ecf8;--paper:#132b49;--line:#2b4362}
html[data-theme="dark"] body{background:#0b1b33;color:#e4ecf8}
html[data-theme="dark"] .game-header{background:#0b1b33;box-shadow:0 3px 15px #020b1d88}
html[data-theme="dark"] .church-brand,html[data-theme="dark"] .game-mark,html[data-theme="dark"] .discovery-count{color:#e4ecf8}
html[data-theme="dark"] .theme-picker{border-color:#355174;background:#142d4c}
html[data-theme="dark"] .theme-picker button{color:#a9bfdc}
html[data-theme="dark"] .theme-picker button[aria-pressed="true"]{background:#d6e7ff;color:#0d2a4e}
html[data-theme="dark"] .utility-button{background:#142d4c;border-color:#355174;color:#e4ecf8}
html[data-theme="dark"] .utility-button:hover{background:#22466f}
html[data-theme="dark"] #launch .launch-landscape{background:linear-gradient(90deg,#031323e0,#0c2a3bbd,#031323e0)}
html[data-theme="dark"] .yard-top,html[data-theme="dark"] .yard-paths,html[data-theme="dark"] .yard-scroll-hint{background:#081d34}
html[data-theme="dark"] .focus-landscape{background:linear-gradient(#031629bd,#041621e3),url('assets/barnyard-open.webp') center/cover no-repeat}
html[data-theme="dark"] .focus-story,html[data-theme="dark"] .ending-speech{background:#173452f2;border-color:#b88d46;color:#f1f6ff}
html[data-theme="dark"] .focus-story #focus-story-text,html[data-theme="dark"] .ending-speech p{color:#f1f6ff}
html[data-theme="dark"] #garden,html[data-theme="dark"] #hunt,html[data-theme="dark"] #care{background:#0e223e}
html[data-theme="dark"] .screen-heading h2,html[data-theme="dark"] .screen-heading .path-link,html[data-theme="dark"] .screen-heading .text-action{color:#f1f6ff}
html[data-theme="dark"] .screen-heading p:last-child,html[data-theme="dark"] .garden-footer{color:#b5c9e2}
html[data-theme="dark"] .screen-heading .overline{color:#edc878}
html[data-theme="dark"] .garden-stage,html[data-theme="dark"] .activity-scene,html[data-theme="dark"] .care-scene{border-color:#315273;box-shadow:0 20px 50px #020b1d88}
html[data-theme="dark"] .garden-stage>img{filter:brightness(.78)}
html[data-theme="dark"] .garden-info p,html[data-theme="dark"] .activity-message{background:#173452;color:#f1f6ff;border-color:#b88d46}
html[data-theme="dark"] .garden-sprout,html[data-theme="dark"] .garden-footer .text-action{color:#cfe4ff}
html[data-theme="dark"] .game-footer{background:#08172b}
html[data-theme="dark"] dialog{background:#142d4b;color:#e3efff;border-color:#b88d46}
html[data-theme="dark"] dialog h2,html[data-theme="dark"] #credits-close{color:#e3efff}
@media(max-width:700px){.header-actions{gap:5px}.theme-picker button{min-width:38px;min-height:36px;padding:5px}.utility-button{padding:7px 8px;font-size:10px}}

/* Keep the longer game name inside its illustrated wooden plaque. */
#launch-title{font-size:clamp(32px,5vw,62px);line-height:.94;letter-spacing:-.035em}
@media(max-width:700px){#launch-title{font-size:clamp(26px,7.2vw,42px)}}
