@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Nunito:wght@600;700;800;900&display=swap');

:root{color-scheme:light;--olive:#2B300A;--olive-2:#414a16;--gold:#C8963A;--cream:#fff9e9;--paper:#fffdf7;--ink:#202211;--muted:#64664f;--leaf:#77a93b;--sky:#dff3f3;--coral:#df6a45;--line:#e7e2d1;--shadow:0 16px 44px rgba(43,48,10,.11);--radius:24px;--font: 'DM Sans',system-ui,sans-serif;--display:'Nunito',var(--font)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.skip-link{position:absolute;left:-10000px;top:8px;z-index:30;padding:10px;background:#fff}.skip-link:focus{left:8px}.topbar{height:76px;padding:0 max(22px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--paper)}.brand{display:block;width:62px;height:68px;overflow:hidden}.brand img{width:100%;height:100%;object-fit:contain}.top-link{font-size:14px;font-weight:800;text-decoration:none;padding:12px 20px;border-radius:999px;background:var(--olive);color:#fff}.hero{min-height:590px;position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);align-items:center;padding:55px max(24px,calc((100vw - 1200px)/2)) 70px;background:linear-gradient(130deg,#fff5d9 0%,#fff9e9 48%,#f3f0d4 100%)}.hero:before{content:"";position:absolute;z-index:-1;width:530px;height:530px;right:4%;top:30px;border-radius:50%;background:#f5e6b7;opacity:.72}.hero-copy{max-width:590px;z-index:1}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 17px;color:var(--olive);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.sun-dot{width:11px;height:11px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(200,150,58,.18)}h1,h2,h3,p{margin-top:0}.hero h1,.section-heading h2,.ticket-intro h2,.confirmation h2{font-family:var(--display);font-weight:900;letter-spacing:-.04em;line-height:1.02}.hero h1{max-width:610px;margin:0;color:var(--olive);font-size:clamp(46px,6.2vw,80px)}.hero-intro{max-width:470px;margin:22px 0;color:#4a4d36;font-size:18px}.hero-facts{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 27px}.hero-facts span{display:inline-flex;gap:9px;align-items:center;border:1px solid rgba(43,48,10,.13);border-radius:999px;background:rgba(255,255,255,.65);padding:9px 14px;font-size:13px;font-weight:700}.hero-facts b{color:var(--coral);font-size:17px}.button{display:inline-flex;min-height:54px;align-items:center;justify-content:center;gap:18px;border:0;border-radius:999px;padding:14px 23px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer;transition:transform .18s,box-shadow .18s}.button:hover{transform:translateY(-2px);box-shadow:0 9px 18px #0002}.button:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #2386aa;outline-offset:3px}.button-sun{background:var(--gold);color:#231d0e}.hero-scene{position:relative;align-self:end;z-index:0;max-width:540px;margin:-5px 0 -22px auto}.farm-art{width:100%;height:auto;overflow:visible;filter:drop-shadow(0 18px 12px rgba(43,48,10,.12))}.scene-sticker{position:absolute;display:grid;place-items:center;border:3px solid var(--olive);box-shadow:0 5px 0 var(--olive);font-family:var(--display);font-weight:900}.sticker-sun{top:12%;left:10%;width:95px;height:95px;border-radius:50%;background:#f5c843;transform:rotate(-10deg);font-size:12px;text-align:center}.sticker-leaf{right:5%;bottom:11%;width:54px;height:54px;border-radius:50%;background:#82b846;color:var(--olive);font-size:26px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;height:18px;display:flex}.hero-bottom span{flex:1;background:var(--coral);clip-path:polygon(50% 0,100% 100%,0 100%)}.hero-bottom span:nth-child(3n+1){background:#e9bc40}.hero-bottom span:nth-child(3n+2){background:#6f9e3d}
.section-wrap{width:min(1120px,calc(100% - 48px));margin-inline:auto}.experience{padding-top:92px;padding-bottom:72px}.section-heading{max-width:690px;margin-bottom:34px}.eyebrow-green{color:#56752c}.section-heading h2,.ticket-intro h2,.confirmation h2{margin:0 0 15px;color:var(--olive);font-size:clamp(34px,4.5vw,55px)}.section-heading>p:last-child{max-width:600px;color:var(--muted);font-size:17px}.activity-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:16px}.activity-card{min-height:218px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:#f4f6e7}.activity-card h3{margin:15px 0 7px;color:var(--olive);font-family:var(--display);font-size:22px;font-weight:900;line-height:1.15}.activity-card p{margin:0;color:#525541;font-size:14px}.activity-emoji{font-size:30px}.activity-gold{background:#fff1cf}.activity-blue{background:#e5f3f0}.lunch-strip{display:grid;grid-template-columns:.75fr 1fr;gap:30px;align-items:center;margin-top:20px;padding:23px 26px;border-radius:20px;background:var(--olive);color:#fff}.lunch-strip .eyebrow{margin-bottom:4px;color:#edc86f}.lunch-strip h3{margin:0;font-family:var(--display);font-size:25px;font-weight:900}.lunch-strip>p{margin:0;color:#f1f0e6;font-size:14px}.rules-note{display:flex;gap:10px;margin:19px 0 0;color:#5a5d47;font-size:13px}.rules-note span{color:var(--coral)}
.tickets{padding:77px 0;background:#eff1dc}.ticket-layout{display:grid;grid-template-columns:.82fr 1.18fr;align-items:start;gap:54px}.ticket-intro{position:sticky;top:30px}.eyebrow-light{color:#748c4c}.ticket-intro h2{max-width:450px}.ticket-intro>p:last-of-type{max-width:420px;color:#555a42}.count-card,.ticket-form,.details-card,.review-card{border:1px solid #e3e3ce;border-radius:var(--radius);background:#fffef9;box-shadow:var(--shadow)}.count-card{margin-top:25px;padding:8px 21px}.counter-line{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 0}.counter-line+.counter-line{border-top:1px solid var(--line)}.counter-line b{display:block;color:var(--olive);font-size:16px}.counter-line small{display:block;color:var(--muted);font-size:12px}.stepper{display:flex;align-items:center;gap:13px}.stepper button{width:40px;height:40px;border:1px solid #c9cfb3;border-radius:50%;background:#f5f7ea;color:var(--olive);font-size:23px;line-height:1;cursor:pointer}.stepper output{min-width:18px;text-align:center;font-weight:800;font-variant-numeric:tabular-nums}.ticket-form{padding:23px}.people-list{display:grid;gap:12px}.person-card{padding:17px;border:1px solid #e6e3d4;border-radius:17px;background:#fff}.person-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:13px;color:var(--olive);font-weight:800}.person-head small{color:#767963;font-size:12px;font-weight:600}.person-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.field-label{display:grid;gap:6px;color:#565944;font-size:12px;font-weight:700}.field-label select,form input,form textarea{width:100%;min-height:45px;padding:10px 12px;border:1px solid #d5d7c7;border-radius:10px;background:#fff;color:var(--ink)}.field-label select:disabled{background:#f5f4ec;color:#777}.age-field{grid-column:1/-1}.price-hint{margin:10px 0 0;color:#667444;font-size:12px}.total-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 14px;padding:15px 2px;border-top:1px solid var(--line)}.total-bar span,.review-total span{display:block;color:var(--olive);font-size:14px;font-weight:800}.total-bar small{display:block;color:#747762;font-size:12px}.total-bar strong,.review-total strong{color:var(--olive);font-family:var(--display);font-size:31px;font-weight:900;font-variant-numeric:tabular-nums}.button-olive{width:100%;background:var(--olive);color:#fff}.safe-note{margin:12px 0 0;color:#777a67;font-size:12px;text-align:center}
.checkout,.review,.confirmation{padding-top:80px;padding-bottom:80px}.checkout[hidden],.review[hidden],.confirmation[hidden]{display:none}.details-card{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:25px;margin-bottom:19px}.details-card label{display:grid;gap:7px;color:var(--olive);font-size:13px;font-weight:800}.details-card label span{color:#767963;font-size:12px;font-weight:500}.details-card .full-field{grid-column:1/-1}.details-card textarea{resize:vertical}.review-card{max-width:720px;padding:24px}.review-item{display:flex;justify-content:space-between;gap:20px;padding:12px 0;color:#545742}.review-item+.review-item{border-top:1px solid var(--line)}.review-item strong{color:var(--olive);white-space:nowrap}.review-total{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:18px;border-top:2px solid var(--olive)}.check-row{display:flex;align-items:flex-start;gap:11px;max-width:720px;margin:20px 0;color:#4e523a;font-size:14px}.check-row input{width:19px;height:19px;min-height:19px;accent-color:var(--olive)}.review>.button{min-width:260px}.form-error{max-width:720px;color:#a33d24;font-weight:700}.confirmation-card{max-width:720px;margin:auto;padding:42px;border:1px solid var(--line);border-radius:30px;background:#fffef9;box-shadow:var(--shadow);text-align:center}.confirm-mark{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 21px;border-radius:50%;background:#dfefc3;color:#355720;font-size:32px;font-weight:900}.confirmation-card .eyebrow{justify-content:center}.confirmation-card>p:not(.eyebrow){color:#62654e}.payment-status{margin:22px 0;padding:14px;border-radius:14px;background:#f2f3e5;color:var(--olive);font-weight:800}.confirmation-order{color:#676a55;font-size:14px}.footer{display:grid;justify-items:center;padding:34px 24px;background:var(--olive);color:#fff;text-align:center}.footer img{width:45px;height:54px;object-fit:contain;filter:brightness(0) invert(1)}.footer p{margin:12px 0 4px;color:#f3e9c9}.footer small{max-width:750px;color:#d7d8c9;font-size:11px}.toast{position:fixed;right:18px;bottom:18px;z-index:10;max-width:min(380px,calc(100% - 36px));padding:14px 18px;border-radius:14px;background:#8a301d;color:#fff;font-weight:700;box-shadow:var(--shadow)}.toast[hidden]{display:none}
@media(min-width:1440px){.hero{min-height:640px}.hero-scene{max-width:590px}}
@media(max-width:820px){.topbar{height:68px}.hero{grid-template-columns:1fr 1fr;min-height:540px;padding-top:40px}.hero h1{font-size:clamp(43px,8vw,64px)}.hero-intro{font-size:16px}.hero-scene{width:115%;margin-right:-14%;align-self:center}.sticker-sun{width:76px;height:76px}.section-wrap{width:min(100% - 40px,720px)}.experience{padding-top:68px}.activity-grid{grid-template-columns:1fr 1fr}.activity-wide{grid-column:1/-1;min-height:175px}.ticket-layout{grid-template-columns:1fr;gap:28px}.ticket-intro{position:static}.count-card{display:grid;grid-template-columns:1fr 1fr;gap:20px}.counter-line{border:0!important}.lunch-strip{gap:18px}}
@media(max-width:560px){body{font-size:15px}.topbar{height:62px;padding:0 17px}.brand{width:49px;height:56px}.top-link{padding:10px 15px;font-size:12px}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:45px 21px 39px}.hero:before{width:330px;height:330px;right:-110px;top:auto;bottom:50px}.hero h1{max-width:440px;font-size:49px}.hero-intro{margin:16px 0;font-size:16px}.hero-facts{gap:7px;margin:17px 0 20px}.hero-facts span{padding:8px 10px;font-size:11px}.hero .button{width:100%}.hero-scene{width:min(100%,400px);margin:14px auto -27px;align-self:center}.sticker-sun{top:7%;left:8%;width:69px;height:69px;font-size:10px}.sticker-leaf{right:3%;bottom:12%;width:43px;height:43px;font-size:21px}.hero-bottom{height:13px}.section-wrap{width:calc(100% - 36px)}.experience{padding-top:61px;padding-bottom:51px}.section-heading{margin-bottom:22px}.section-heading h2,.ticket-intro h2,.confirmation h2{font-size:37px}.section-heading>p:last-child{font-size:15px}.activity-grid{grid-template-columns:1fr;gap:10px}.activity-card,.activity-wide{grid-column:auto;min-height:0;padding:19px}.activity-card h3{margin:8px 0 5px;font-size:20px}.activity-card p{font-size:13px}.activity-emoji{font-size:25px}.lunch-strip{grid-template-columns:1fr;gap:10px;padding:20px}.lunch-strip h3{font-size:23px}.tickets{padding:57px 0}.ticket-layout{gap:23px}.ticket-intro>p:last-of-type{font-size:14px}.count-card{grid-template-columns:1fr;gap:0;margin-top:18px;padding:3px 17px}.counter-line{padding:14px 0}.stepper button{width:38px;height:38px}.ticket-form{padding:15px}.person-card{padding:14px}.person-options{grid-template-columns:1fr}.age-field{grid-column:auto}.total-bar strong,.review-total strong{font-size:28px}.checkout,.review,.confirmation{padding-top:58px;padding-bottom:58px}.details-card{grid-template-columns:1fr;gap:14px;padding:18px}.details-card .full-field{grid-column:auto}.review-card{padding:17px}.review-item{font-size:13px}.review>.button{width:100%}.confirmation-card{padding:29px 19px;border-radius:23px}.footer{padding:28px 20px}.footer small{line-height:1.6}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.hero h1,.eyebrow,.section-heading h2,.ticket-intro h2,.activity-card h3,.lunch-strip h3,.confirmation-card{overflow-wrap:anywhere}
.faq{padding-top:76px;padding-bottom:76px}.faq-list{max-width:850px;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:18px 2px}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--olive);font-weight:800;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eff1dc;color:var(--olive);font-size:20px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{max-width:760px;margin:12px 45px 0 0;color:var(--muted);font-size:14px}.age-note{margin:0 0 14px;color:#59623e;font-size:13px;font-weight:600}.confirmation-items{max-width:490px;margin:17px auto;padding-left:23px;text-align:left;color:#62654e;font-size:13px}.button:disabled{cursor:wait;opacity:.55;transform:none;box-shadow:none}
.brand{width:64px;height:72px;overflow:visible;flex:none}.brand img{display:block}.total-value{text-align:right}.total-value strong{display:block;font-size:30px}.total-value small{display:block;max-width:200px;margin-top:2px;color:#747762;font-size:11px}.total-copy span{font-size:14px}@media(max-width:560px){.topbar{height:68px}.brand{width:58px;height:64px}}
[hidden]{display:none!important}
